diff --git a/LTTP_RND_GeneralBugfixes.asm b/LTTP_RND_GeneralBugfixes.asm index 3f8eaf5..f10b726 100644 --- a/LTTP_RND_GeneralBugfixes.asm +++ b/LTTP_RND_GeneralBugfixes.asm @@ -6,25 +6,25 @@ lorom ;================================================================================ ;org $00FFC0 ; <- 7FC0 - Bank00.asm : 9173 (db "THE LEGEND OF ZELDA " ; 21 bytes) -;db #$23, $4E +;db $23, $4E org $00FFD5 ; <- 7FD5 - Bank00.asm : 9175 (db $20 ; rom layout) -db #$30 ; set fast lorom +db $30 ; set fast lorom ;org $00FFD6 ; <- 7FD6 - Bank00.asm : 9176 (db $02 ; cartridge type) -;db #$55 ; enable S-RTC +;db $55 ; enable S-RTC org $00FFD7 ; <- 7FD7 - Bank00.asm : 9177 (db $0A ; rom size) -db #$0B ; mark rom as 16mbit +db $0B ; mark rom as 16mbit org $00FFD8 ; <- 7FD8 - Bank00.asm : 9178 (db $03 ; ram size (sram size)) -db #$05 ; mark sram as 32k +db $05 ; mark sram as 32k -org $3FFFFF ; <- 1FFFFF -db #$00 ; expand file to 2mb +org $BFFFFF ; <- 1FFFFF +db $00 ; expand file to 2mb org $1FFFF8 ; <- FFFF8 timestamp rom -db #$20, #$19, #$08, #$31 ; year/month/day +db $20, $19, $08, $31 ; year/month/day ;================================================================================ !ROM_VERSION_LOW ?= 1 ; ROM version (two 16-bit integers) @@ -57,8 +57,7 @@ incsrc sram.asm incsrc registers.asm incsrc vanillalabels.asm -;org $208000 ; bank #$20 -org $A08000 ; bank #$A0 +org $A08000 ; bank $20 incsrc itemdowngrade.asm incsrc bugfixes.asm incsrc darkworldspawn.asm @@ -97,7 +96,7 @@ incsrc roomloading.asm incsrc icepalacegraphics.asm warnpc $A18000 -org $1C8000 ; text tables for translation +org $9C8000 ; text tables for translation incbin "data/i18n_en.bin" warnpc $1CF356 @@ -154,8 +153,9 @@ incsrc darkroomitems.asm incsrc fastcredits.asm incsrc msu.asm incsrc dungeonmap.asm + if !FEATURE_NEW_TEXT - incsrc textrenderer.asm + incsrc textrenderer.asm endif warnpc $A58000 @@ -167,101 +167,102 @@ incsrc utilities.asm org $A38000 incsrc stats/main.asm -org $308000 ; bank #$30 +org $B08000 ; bank $30 incsrc tables.asm -org $348000 +org $B48000 incsrc spc.asm -org $318000 ; bank #$31 +org $B18000 ; bank $31 GFX_Mire_Bombos: incbin "data/99ff1_bombos.gfx" -warnpc $318800 +warnpc $B18800 -org $318800 +org $B18800 GFX_Mire_Quake: incbin "data/99ff1_quake.gfx" -warnpc $319000 +warnpc $B19000 -org $319000 +org $B19000 GFX_TRock_Bombos: incbin "data/a6fc4_bombos.gfx" -warnpc $319800 +warnpc $B19800 -org $319800 +org $B19800 GFX_TRock_Ether: incbin "data/a6fc4_ether.gfx" -warnpc $31A000 +warnpc $B1A000 -org $31A000 +org $B1A000 GFX_HUD_Items: incbin "data/c2807_v4.gfx" -warnpc $31A800 +warnpc $B1A800 -org $31A800 +org $B1A800 -warnpc $31B000 +warnpc $B1B000 -org $31B000 +org $B1B000 GFX_HUD_Main: incbin "data/c2e3e.gfx" -warnpc $31B800 +warnpc $B1B800 -org $31C000 +org $B1C000 IcePalaceFloorGfx: incbin "data/ice_palace_floor.bin" -warnpc $31C801 +warnpc $B1C801 -org $31C800 +org $B1C800 Damage_Table: incbin "data/damage_table.bin" -warnpc $31D001 +warnpc $B1D001 -org $31D000 +org $B1D000 FileSelectNewGraphics: incbin "data/fileselect.chr.gfx" -warnpc $31E001 +warnpc $B1E001 -org $31E000 +org $B1E000 InvertedCastleHole: ;address used by front end. DO NOT MOVE! incbin "data/sheet73.gfx" -warnpc $31E501 +warnpc $B1E501 -org $338000 +org $B38000 GFX_HUD_Palette: incbin "data/hudpalette.pal" -warnpc $338041 +warnpc $B38041 -org $339000 +org $B39000 +ExpandedTrinexx: incbin "data/sheet178.gfx" -warnpc $339600 +warnpc $B39600 -org $339600 +org $B39600 BossMapIconGFX: incbin "data/bossicons.4bpp" if !FEATURE_NEW_TEXT - org $339C00 - NewFont: - incbin "data/newfont.bin" - NewFontInverted: - incbin "data/newfont_inverted.bin" + org $B39C00 + NewFont: + incbin "data/newfont.bin" + NewFontInverted: + incbin "data/newfont_inverted.bin" - org $0CD7DF - incbin "data/text_unscramble1.bin" - org $0CE4D5 - incbin "data/text_unscramble2.bin" + org $0CD7DF + incbin "data/text_unscramble1.bin" + org $0CE4D5 + incbin "data/text_unscramble2.bin" endif -org $328000 +org $B28000 Extra_Text_Table: incsrc itemtext.asm incsrc externalhooks.asm ;================================================================================ -org $119100 ; PC 0x89100 +org $919100 ; PC 0x89100 incbin "data/map_icons.gfx" -warnpc $119401 +warnpc $919401 ;================================================================================ org $AF8000 ; PC 0x178000 Static_RNG: ; each line below is 512 bytes of rng diff --git a/accessibility.asm b/accessibility.asm index d02de7e..32ecb34 100644 --- a/accessibility.asm +++ b/accessibility.asm @@ -153,7 +153,7 @@ RestoreBgEther: INX #2 : CPX.b #$10 : BNE - BRA ++ ++ -JML $02FF51 ; Bank0E.asm : 3936 vanilla restore routine after loop which RTLs +JML $82FF51 ; Bank0E.asm : 3936 vanilla restore routine after loop which RTLs ;================================================================================ DDMConditionalLightning: LDA.l DisableFlashing @@ -161,7 +161,7 @@ DDMConditionalLightning: BNE + LDA.w Scrap LDX.b #$02 - JML $07FA7F ; Bank0E.asm : 4738 vanilla loop equivalent to below beginning at LDY #$00 + JML $87FA7F ; Bank0E.asm : 4738 vanilla loop equivalent to below beginning at LDY #$00 + LDA.b Scrap00 : LDX.b #$02 : LDY.b #$00 - @@ -172,7 +172,7 @@ DDMConditionalLightning: LDA.w $F523, Y : LDA.l PaletteBuffer+$F0, X INY #2 INX #2 : CPX.b #$10 : BNE - - JML $07FAAC ; Bank0E.asm : 4754 both branches converge here + JML $87FAAC ; Bank0E.asm : 4754 both branches converge here ;================================================================================ ConditionalGTFlash: LDA.l DisableFlashing : REP #$20 : BNE + @@ -222,17 +222,17 @@ LoadElectroPalette: LDA.w #$0404 : STA.b Scrap0E LDA.w #$001B : STA.b Scrap02 SEP #$10 - LDX.b Scrap0C : LDA.l $1BEBB4, X : AND.w #$00FF : ADC.w #$D630 + LDX.b Scrap0C : LDA.l $9BEBB4, X : AND.w #$00FF : ADC.w #$D630 REP #$10 : LDX.w #$01B2 : LDY.w #$0002 JSR ConditionalLoadGearPalette SEP #$10 LDX.b Scrap0D - LDA.l $1BEBC1, X : AND.w #$00FF : ADC.w #$D648 + LDA.l $9BEBC1, X : AND.w #$00FF : ADC.w #$D648 REP #$10 : LDX.w #$01B8 : LDY.w #$0003 JSR ConditionalLoadGearPalette SEP #$10 LDX.b Scrap0E - LDA.l $1BEC06, X : AND.w #$00FF : ASL A : ADC.w #$D308 + LDA.l $9BEC06, X : AND.w #$00FF : ASL A : ADC.w #$D308 REP #$10 : LDX.w #$01E2 : LDY.w #$000E JSR ConditionalLoadGearPalette SEP #$30 diff --git a/controllerjank.asm b/controllerjank.asm index 5ff3da7..b243d3c 100644 --- a/controllerjank.asm +++ b/controllerjank.asm @@ -119,5 +119,5 @@ HandleOneMindController: .no_onemind STZ.b NMIDoneFlag - JML $008034 ; reset frame loop + JML $808034 ; reset frame loop diff --git a/decompresseditemgraphics.asm b/decompresseditemgraphics.asm index 841b14e..eb026cc 100644 --- a/decompresseditemgraphics.asm +++ b/decompresseditemgraphics.asm @@ -255,9 +255,9 @@ endmacro FastSpriteDecomp: SEP #$30 - LDA.l $00CFC0,X : PHA : PLB ; bank - LDA.l $00D09F,X : XBA ; high - LDA.l $00D17E,X ; low + LDA.l $80CFC0,X : PHA : PLB ; bank + LDA.l $80D09F,X : XBA ; high + LDA.l $80D17E,X ; low REP #$10 @@ -334,7 +334,6 @@ FastSpriteDecomp: ASL ASL ASL - AND.b #$E0 STA.b DecompTestByte LDA.b DecompCommand @@ -395,19 +394,24 @@ FastSpriteDecomp: STY.b DecompSaveY LDY.b DecompSize + DEY .next_word STA.l DecompBuffer2,X INX - DEY - BEQ .done_restore_y - INX - DEY - BNE .next_word -.done_restore_y + DEY + DEY + BPL .next_word + + INY + BEQ .not_too_far + + DEX + +.not_too_far SEP #$20 LDY.b DecompSaveY diff --git a/dialog.asm b/dialog.asm index a8d35cf..35d1098 100644 --- a/dialog.asm +++ b/dialog.asm @@ -341,7 +341,7 @@ AgahnimAsksAboutPed: STA.w TextID .vanilla - JML $05FA8E ; Sprite_ShowMessageMinimal + JML $85FA8E ; Sprite_ShowMessageMinimal ;-------------------------------------------------------------------------------- Main_ShowTextMessage_Alt: ; Are we in text mode? If so then end the routine. @@ -433,7 +433,7 @@ Sprite_ShowSolicitedMessageIfPlayerFacing_Alt: ; Make sure that the sprite is facing towards the player, otherwise ; talking can't happen. (What sprites actually use this???) - LDA.l $05E1A3, X : PLX : CMP.b LinkDirection : BNE .not_facing_each_other + LDA.l $85E1A3, X : PLX : CMP.b LinkDirection : BNE .not_facing_each_other PHY @@ -490,7 +490,7 @@ Sprite_ShowSolicitedMessageIfPlayerFacing_PreserveMessage: ; Make sure that the sprite is facing towards the player, otherwise ; talking can't happen. (What sprites actually use this???) - LDA.l $05E1A3, X : PLX : CMP.b LinkDirection : BNE .not_facing_each_other + LDA.l $85E1A3, X : PLX : CMP.b LinkDirection : BNE .not_facing_each_other PLA : XBA : PLA diff --git a/doorframefixes.asm b/doorframefixes.asm index 4e73ab2..1c7648a 100644 --- a/doorframefixes.asm +++ b/doorframefixes.asm @@ -8,7 +8,7 @@ StoreLastOverworldDoorID: TXA : INC STA.l PreviousOverworldDoor - LDA.l $1BBB73, X : STA.w EntranceIndex + LDA.l $9BBB73, X : STA.w EntranceIndex RTL ;-------------------------------------------------------------------------------- diff --git a/dungeondrops.asm b/dungeondrops.asm index aaeb8f7..b5d1e03 100644 --- a/dungeondrops.asm +++ b/dungeondrops.asm @@ -3,7 +3,7 @@ ;-------------------------------------------------------------------------------- DropSafeDungeon: LDA.w DungeonID : CMP.b #$08 : BEQ + - LDA.l $01C6FC, X : JML Sprite_SpawnFallingItem + LDA.l $81C6FC, X : JML Sprite_SpawnFallingItem + RTL ;-------------------------------------------------------------------------------- diff --git a/elder.asm b/elder.asm index f66817d..7967a0c 100644 --- a/elder.asm +++ b/elder.asm @@ -2,7 +2,7 @@ NewElderCode: { LDA.b OverworldIndex : CMP.b #$1B : BEQ .newCodeContinue ;Restore Jump we can keep the RTL so JML -JML $05F0CD +JML $85F0CD .newCodeContinue PHB : PHK : PLB LDA.b #$07 : STA.w SpriteOAMProp, X ; Palette diff --git a/entrances.asm b/entrances.asm index 8bd634b..c14a30b 100644 --- a/entrances.asm +++ b/entrances.asm @@ -29,7 +29,7 @@ LockAgahnimDoors: LDA.w #$0001 : RTL ;Keep the door locked ++ SEP #$30 - JSL $099B6F ;Add tower break seal + JSL $899B6F ;Add tower break seal REP #$30 LDA.w #$0001 ;Prevent door from opening that frame otherwise it glitchy RTL @@ -142,11 +142,11 @@ JML.l AllowStartFromExitReturn .doStart - LDA.l $028481, X ;Module_LocationMenu_starting_points + LDA.l $828481, X ;Module_LocationMenu_starting_points ASL : TAX - LDA.l $02D8D2, X : STA.b RoomIndex - LDA.l $02D8D3, X : STA.b RoomIndex+1 + LDA.l $82D8D2, X : STA.b RoomIndex + LDA.l $82D8D3, X : STA.b RoomIndex+1 ; Go to pre-overworld mode LDA.b #$08 : STA.b GameMode @@ -165,9 +165,9 @@ RTL CheckHole: LDX.w #$0024 .nextHoleClassic - LDA.b Scrap00 : CMP.l $1BB800, X + LDA.b Scrap00 : CMP.l $9BB800, X BNE .wrongMap16Classic - LDA.b OverworldIndex : CMP.l $1BB826, X + LDA.b OverworldIndex : CMP.l $9BB826, X BEQ .matchedHoleClassic .wrongMap16Classic DEX #2 : BPL .nextHoleClassic diff --git a/externalhooks.asm b/externalhooks.asm index c3f751e..aec6a49 100644 --- a/externalhooks.asm +++ b/externalhooks.asm @@ -1,4 +1,4 @@ -org $298000 ; 0x148000 +org $A98000 ; 0x148000 Ext_OnFileCreate: ;x RTL : RTL : RTL : RTL : RTL Ext_OnFileLoad: ;x immediately after load diff --git a/failure.asm b/failure.asm index d5e07b8..6a6776a 100644 --- a/failure.asm +++ b/failure.asm @@ -1,3 +1,18 @@ +CheckZSNES: + SEP #$28 + LDA.b #$FF + CLC + ADC.b #$FF + CMP.b #$64 + REP #$28 + BEQ .zsnes + LDA.w #$01FF : TCS ; thing we wrote over - initialize stack + JML ReturnCheckZSNES +.zsnes + JML DontUseZSNES + +;=================================================================================================== + pushtable table "data/bsodencode.txt" diff --git a/fastcredits.asm b/fastcredits.asm index 4d39a83..c8aaf28 100644 --- a/fastcredits.asm +++ b/fastcredits.asm @@ -49,10 +49,10 @@ FastCreditsCutsceneScrollY: FastCreditsCutsceneScroll: LDA.w $00E2,Y - CMP.l $0EC308,X ; compare to target + CMP.l $8EC308,X ; compare to target ROL.b Scrap00 ; put carry in here - LDA.l $0EC348,X ; get movement + LDA.l $8EC348,X ; get movement BPL ++ ; if positive, leave saved carry alone INC.b Scrap00 ; otherwise, flip it ++ ROR.b Scrap00 ; recover carry diff --git a/flipperkill.asm b/flipperkill.asm index e32b5a5..d321c97 100644 --- a/flipperkill.asm +++ b/flipperkill.asm @@ -4,10 +4,10 @@ ; Written over and used by OnEnterWater hook. UnequipCapeQuiet: - LDA.b #$20 : STA.w PoofTimer - STZ.w NoDamage - STZ.b CapeOn - STZ.w LinkZap + LDA.b #$20 : STA.w PoofTimer + STZ.w NoDamage + STZ.b CapeOn + STZ.w LinkZap RTL protectff: @@ -43,7 +43,7 @@ protectff: BMI .special_overworld AND.b #$3F - CMP.l $02A4E3,X + CMP.l $82A4E3,X BEQ ++ .protect diff --git a/framehook.asm b/framehook.asm index dc7751c..d889082 100644 --- a/framehook.asm +++ b/framehook.asm @@ -2,7 +2,7 @@ ; Frame Hook ;-------------------------------------------------------------------------------- FrameHookAction: - JSL $0080B5 ; Module_MainRouting + JSL $8080B5 ; Module_MainRouting JSL CheckMusicLoadRequest PHP : REP #$30 : PHA SEP #$20 diff --git a/hardmode.asm b/hardmode.asm index 97dde1b..de3e776 100644 --- a/hardmode.asm +++ b/hardmode.asm @@ -81,7 +81,7 @@ GetItemDamageValue: CPX.b #$3d : BEQ .hookshot .normal - LDA.l $0db8f1,x ;what we wrote over + LDA.l $8DB8F1,x ;what we wrote over RTL .boomerang LDA.l StunItemAction : AND.b #$01 : BNE .normal diff --git a/hashalphabethooks.asm b/hashalphabethooks.asm index f2e094a..3838653 100644 --- a/hashalphabethooks.asm +++ b/hashalphabethooks.asm @@ -55,76 +55,76 @@ !FSTILE_Y_TOP = $1D82 !FSTILE_Y_BOTTOM = $1D92 ;-------------------------------------------------------------------------------- -org $0CDE60 ; <- 65E60 +org $8CDE60 ; <- 65E60 FileSelect_CopyFile_Top: db $62, $A5, $00, $15 dw !FSTILE_SPACE,!FSTILE_SPACE,!FSTILE_SPACE,!FSTILE_SPACE,!FSTILE_SPACE,!FSTILE_SPACE,!FSTILE_SPACE,!FSTILE_SPACE,!FSTILE_SPACE,!FSTILE_SPACE,!FSTILE_SPACE ;-------------------------------------------------------------------------------- -org $0CDE7A ; <- 65E7A +org $8CDE7A ; <- 65E7A FileSelect_CopyFile_Bottom: db $62, $C5, $00, $15 dw !FSTILE_SPACE,!FSTILE_SPACE,!FSTILE_SPACE,!FSTILE_SPACE,!FSTILE_SPACE,!FSTILE_SPACE,!FSTILE_SPACE,!FSTILE_SPACE,!FSTILE_SPACE,!FSTILE_SPACE,!FSTILE_SPACE ;-------------------------------------------------------------------------------- -org $0CDE94 ; <- 65E94 +org $8CDE94 ; <- 65E94 FileSelect_KillFile_Top: db $63, $25, $00, $19 dw !FSTILE_D_TOP, !FSTILE_E_TOP, !FSTILE_L_TOP, !FSTILE_E_TOP, !FSTILE_T_TOP, !FSTILE_E_TOP, !FSTILE_SPACE, !FSTILE_F_TOP, !FSTILE_I_TOP, !FSTILE_L_TOP, !FSTILE_E_TOP, !FSTILE_SPACE, !FSTILE_SPACE -org $0CDEB2 ; <- 65EB2 +org $8CDEB2 ; <- 65EB2 FileSelect_KillFile_Bottom: db $63, $45, $00, $19 dw !FSTILE_D_BOTTOM, !FSTILE_E_BOTTOM, !FSTILE_L_BOTTOM, !FSTILE_E_BOTTOM, !FSTILE_T_BOTTOM, !FSTILE_E_BOTTOM, !FSTILE_SPACE, !FSTILE_F_BOTTOM, !FSTILE_I_BOTTOM, !FSTILE_L_BOTTOM, !FSTILE_E_BOTTOM, !FSTILE_SPACE, !FSTILE_SPACE ;CopyFile_Header: -org $0CE228 ; <- 66228 +org $8CE228 ; <- 66228 dw !FSTILE_BRACKET_OPEN_TOP, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_C_TOP, !FSTILE_O_TOP, !FSTILE_P_TOP, !FSTILE_Y_TOP, !FSTILE_SPACE, !FSTILE_F_TOP, !FSTILE_I_TOP, !FSTILE_L_TOP, !FSTILE_E_TOP, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_BRACKET_CLOSE_TOP -org $0CE24A ; <- 6624A +org $8CE24A ; <- 6624A dw !FSTILE_BRACKET_OPEN_BOTTOM, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_C_BOTTOM, !FSTILE_O_BOTTOM, !FSTILE_P_BOTTOM, !FSTILE_Y_BOTTOM, !FSTILE_SPACE, !FSTILE_F_BOTTOM, !FSTILE_I_BOTTOM, !FSTILE_L_BOTTOM, !FSTILE_E_BOTTOM, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_BRACKET_CLOSE_BOTTOM ;CopyFile_Which: -org $0CE2DB ; <- 662DB +org $8CE2DB ; <- 662DB dw $0D80, $0D61, $0D62, $0D4C, $0D61, $0D86, !FSTILE_SPACE -org $0CE2ED ; <- 662ED +org $8CE2ED ; <- 662ED dw $0D90, $0D71, $0D72, $0D5C, $0D71, $0D96, !FSTILE_SPACE ;CopyFile_Where: -org $0CE39C ; <- 6639C +org $8CE39C ; <- 6639C dw $0D80, $0D61, $0D4E, $0D6B, $0D4E, $0D86, !FSTILE_SPACE -org $0CE3AE ; <- 663AE +org $8CE3AE ; <- 663AE dw $0D90, $0D71, $0D5E, $0D7B, $0D5E, $0D96, !FSTILE_SPACE ;CopyFile_Execute: -org $0CD13A ; <- 6513A +org $8CD13A ; <- 6513A dw !FSTILE_C_TOP, !FSTILE_SPACE, !FSTILE_O_TOP, !FSTILE_SPACE, !FSTILE_P_TOP, !FSTILE_SPACE, !FSTILE_Y_TOP, !FSTILE_SPACE, !FSTILE_SPACE -org $0CD150 ; <- 65150 +org $8CD150 ; <- 65150 dw !FSTILE_C_BOTTOM, !FSTILE_SPACE, !FSTILE_O_BOTTOM, !FSTILE_SPACE, !FSTILE_P_BOTTOM, !FSTILE_SPACE, !FSTILE_Y_BOTTOM, !FSTILE_SPACE, !FSTILE_SPACE ;CopyFile_Cancel: -org $0CE29A ; <- 6629A +org $8CE29A ; <- 6629A dw !FSTILE_C_TOP, !FSTILE_SPACE, !FSTILE_A_TOP, !FSTILE_SPACE, !FSTILE_N_TOP, !FSTILE_SPACE, !FSTILE_C_TOP, !FSTILE_SPACE, !FSTILE_E_TOP, !FSTILE_SPACE, !FSTILE_L_TOP, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE -org $0CE2BA ; <- 662BA +org $8CE2BA ; <- 662BA dw !FSTILE_C_BOTTOM, !FSTILE_SPACE, !FSTILE_A_BOTTOM, !FSTILE_SPACE, !FSTILE_N_BOTTOM, !FSTILE_SPACE, !FSTILE_C_BOTTOM, !FSTILE_SPACE, !FSTILE_E_BOTTOM, !FSTILE_SPACE, !FSTILE_L_BOTTOM, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE ;KillFile_Header: -org $0CE002 ; <- 66002 +org $8CE002 ; <- 66002 dw !FSTILE_BRACKET_OPEN_TOP, !FSTILE_SPACE, !FSTILE_D_TOP, !FSTILE_E_TOP, !FSTILE_L_TOP, !FSTILE_E_TOP, !FSTILE_T_TOP, !FSTILE_E_TOP, !FSTILE_SPACE, !FSTILE_F_TOP, !FSTILE_I_TOP, !FSTILE_L_TOP, !FSTILE_E_TOP, !FSTILE_SPACE, !FSTILE_BRACKET_CLOSE_TOP, !FSTILE_SPACE, !FSTILE_SPACE -org $0CE028 ; <- 66028 +org $8CE028 ; <- 66028 dw !FSTILE_BRACKET_OPEN_BOTTOM, !FSTILE_SPACE, !FSTILE_D_BOTTOM, !FSTILE_E_BOTTOM, !FSTILE_L_BOTTOM, !FSTILE_E_BOTTOM, !FSTILE_T_BOTTOM, !FSTILE_E_BOTTOM, !FSTILE_SPACE, !FSTILE_F_BOTTOM, !FSTILE_I_BOTTOM, !FSTILE_L_BOTTOM, !FSTILE_E_BOTTOM, !FSTILE_SPACE, !FSTILE_BRACKET_CLOSE_BOTTOM, !FSTILE_SPACE, !FSTILE_SPACE ;KillFile_Which: -org $0CE04E ; <- 6604E +org $8CE04E ; <- 6604E dw !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE -org $0CE084 ; <- 66084 +org $8CE084 ; <- 66084 dw !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE ;KillFile_Execute: -org $0CD328 ; <- 65328 +org $8CD328 ; <- 65328 dw !FSTILE_D_TOP, !FSTILE_E_TOP, !FSTILE_L_TOP, !FSTILE_E_TOP, !FSTILE_T_TOP, !FSTILE_E_TOP, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE -org $0CD344 ; <- 65344 +org $8CD344 ; <- 65344 dw !FSTILE_D_BOTTOM, !FSTILE_E_BOTTOM, !FSTILE_L_BOTTOM, !FSTILE_E_BOTTOM, !FSTILE_T_BOTTOM, !FSTILE_E_BOTTOM, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE ;KillFile_Cancel: -org $0CE0BA ; <- 660BA +org $8CE0BA ; <- 660BA dw !FSTILE_C_TOP, !FSTILE_A_TOP, !FSTILE_N_TOP, !FSTILE_C_TOP, !FSTILE_E_TOP, !FSTILE_L_TOP, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE -org $0CE0DA ; <- 660DA +org $8CE0DA ; <- 660DA dw !FSTILE_C_BOTTOM, !FSTILE_A_BOTTOM, !FSTILE_N_BOTTOM, !FSTILE_C_BOTTOM, !FSTILE_E_BOTTOM, !FSTILE_L_BOTTOM, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE diff --git a/heartpieces.asm b/heartpieces.asm index d591acb..26f07d7 100644 --- a/heartpieces.asm +++ b/heartpieces.asm @@ -19,7 +19,7 @@ HeartPieceGet: .notHeart .giveItem - JSL.l $0791B3 ; Player_HaltDashAttackLong + JSL.l $8791B3 ; Player_HaltDashAttackLong STZ.w ItemReceiptMethod ; 0 = Receiving item from an NPC or message JSL.l Link_ReceiveItem @@ -155,7 +155,7 @@ LoadHeartPieceRoomValue: RTL ;-------------------------------------------------------------------------------- HPItemReset: - JSL $09AD58 ; GiveRupeeGift - thing we wrote over + JSL $89AD58 ; GiveRupeeGift - thing we wrote over PHA : LDA.b #$01 : STA.l RedrawFlag : PLA RTL ;-------------------------------------------------------------------------------- @@ -378,9 +378,9 @@ RTL ;#13 - Ganon's Tower - Agahnim II ;#0 - Pyramid of Power - Ganon ;-------------------------------------------------------------------------------- -;JSL $06DD40 ; DashKey_Draw -;JSL $06DBF8 ; Sprite_PrepAndDrawSingleLargeLong -;JSL $06DC00 ; Sprite_PrepAndDrawSingleSmallLong ; draw first cell correctly -;JSL $00D51B ; GetAnimatedSpriteTile -;JSL $00D52D ; GetAnimatedSpriteTile.variable +;JSL $86DD40 ; DashKey_Draw +;JSL $86DBF8 ; Sprite_PrepAndDrawSingleLargeLong +;JSL $86DC00 ; Sprite_PrepAndDrawSingleSmallLong ; draw first cell correctly +;JSL $80D51B ; GetAnimatedSpriteTile +;JSL $80D52D ; GetAnimatedSpriteTile.variable ;================================================================================ diff --git a/hooks.asm b/hooks.asm index 1cc5625..a3fa313 100755 --- a/hooks.asm +++ b/hooks.asm @@ -2,7 +2,7 @@ ; Init Hook ;-------------------------------------------------------------------------------- org $00802F ; <- 2F - Bank00.asm : 45 -JSL.l Init_Primary +JSL Init_Primary NOP org $0CC1AC ; <- 63 D4 00 - Bank0C.asm:8 (dl Tagalong_LoadGfx) dl Init_PostRAMClear @@ -12,7 +12,7 @@ dl Init_PostRAMClear ; Frame Hook ;-------------------------------------------------------------------------------- org $008056 ; <- 56 - Bank00.asm : 77 -JSL.l FrameHookAction +JSL FrameHookAction ;-------------------------------------------------------------------------------- org $00805D JML HandleOneMindController @@ -21,20 +21,20 @@ JML HandleOneMindController ; NMI Hook ;-------------------------------------------------------------------------------- org $0080CC ; <- CC - Bank00.asm : 164 (PHA : PHX : PHY : PHD : PHB) -JML.l NMIHookAction -org $0080D0 ; <- D0 - Bank00.asm : 164 (PHA : PHX : PHY : PHD : PHB) -NMIHookReturn: +JML NMIHookAction + +NMIHookReturn = $8080D0 ;-------------------------------------------------------------------------------- -org $00821B ; <- 21B - Bank00.asm : 329 (LDA $13 : STA $2100) -JML.l PostNMIHookAction : NOP +org $80821B ; <- 21B - Bank00.asm : 329 (LDA $13 : STA $2100) +JML PostNMIHookAction : NOP PostNMIHookReturn: ;-------------------------------------------------------------------------------- ;================================================================================ ; Anti-ZSNES Hook ;-------------------------------------------------------------------------------- -org $008023 ;<- 23 - Bank00.asm : 36 (LDA.w #$01FF : TCS) -JML.l CheckZSNES +org $808023 ;<- 23 - Bank00.asm : 36 (LDA.w #$01FF : TCS) +JML CheckZSNES ReturnCheckZSNES: ;-------------------------------------------------------------------------------- @@ -67,14 +67,14 @@ dw SoftwareInterrupt ; Dungeon Entrance Hook (works, but not needed at the moment) ;-------------------------------------------------------------------------------- org $02D8C7 ; <- 158C7 - Bank02.asm : 10981 (STA $7EC172) -JSL.l OnDungeonEntrance +JSL OnDungeonEntrance ;-------------------------------------------------------------------------------- ;================================================================================ ; D-Pad Invert ;-------------------------------------------------------------------------------- -org $0083D1 ; <- 3D1 - Bank00.asm (STZ.w JOYPAD - useless instruction here) -JML.l InvertDPad : SKIP 9 +org $8083D1 ; <- 3D1 - Bank00.asm (STZ.w JOYPAD - useless instruction here) +JML InvertDPad : SKIP 9 InvertDPadReturn: ;-------------------------------------------------------------------------------- @@ -82,35 +82,35 @@ InvertDPadReturn: ; Enable/Disable Boots ;-------------------------------------------------------------------------------- org $079C22 ; <- 39222 - Bank07.asm : 4494 (AND $7EF379 : BEQ .cantDoAction) -JSL.l ModifyBoots +JSL ModifyBoots ;-------------------------------------------------------------------------------- ;================================================================================ ; Enable/Disable Bonk Tremors ;-------------------------------------------------------------------------------- org $079202 ; 39202 <- Bank07.asm : 2859 (JSL AddDashTremor : JSL Player_ApplyRumbleToSprites) -JSL.l AddBonkTremors : NOP #4 +JSL AddBonkTremors : NOP #4 ;-------------------------------------------------------------------------------- ;================================================================================ ; Bonk Breakable Walls ;-------------------------------------------------------------------------------- org $01CF8E ; CF8E <- Bank01.asm : 11641 (LDA $0372 : AND.w #$00FF) -JSL.l BonkBreakableWall : NOP #2 +JSL BonkBreakableWall : NOP #2 ;-------------------------------------------------------------------------------- ;================================================================================ ; Bonk Rock Pile ;-------------------------------------------------------------------------------- org $07C196 ; 3C196 <- Bank07.asm : 10310 (LDA $02EF : AND.b #$70) -JSL.l BonkRockPile : NOP +JSL BonkRockPile : NOP ;-------------------------------------------------------------------------------- ;================================================================================ ; Move Gravestone ;-------------------------------------------------------------------------------- -org $07C0FD ; 3C0FD <- Bank07.asm : 10197 (LDA $0372 : BNE .moveGravestone) -JML.l GravestoneHook : NOP +org $87C0FD ; 3C0FD <- Bank07.asm : 10197 (LDA $0372 : BNE .moveGravestone) +JML GravestoneHook : NOP GravestoneHook_continue: org $07C106 moveGravestone: @@ -120,48 +120,47 @@ moveGravestone: ; Jump Down Ledge ;-------------------------------------------------------------------------------- org $078966 ; 38966 <- Bank07.asm : 1618 (LDA $1B : BNE .indoors : LDA.b #$02 : STA $EE) -JSL.l JumpDownLedge : NOP #4 +JSL JumpDownLedge : NOP #4 ;-------------------------------------------------------------------------------- ;================================================================================ ; Bonk Recoil ;-------------------------------------------------------------------------------- org $07922C ; 3922C <- Bank07.asm : 2869 (LDA.b #$24 : STA $29) -JSL.l BonkRecoil +JSL BonkRecoil ;-------------------------------------------------------------------------------- ;================================================================================ ; Dungeon Exit Hook ;-------------------------------------------------------------------------------- org $02E21B ; <- 1621B - Bank02.asm : 11211 (STA $040C) -JSL.l OnDungeonExit : NOP #2 +JSL OnDungeonExit : NOP #2 ;-------------------------------------------------------------------------------- ;================================================================================ ; Quit Hook (for both types of save and quit) ;-------------------------------------------------------------------------------- org $09F60B ; <- 4F60B - module_death.asm : 530 (LDA.b #$10 : STA $1C) -JSL.l OnQuit +JSL OnQuit ;-------------------------------------------------------------------------------- ;================================================================================ ; Title Screen ;-------------------------------------------------------------------------------- org $0CCDA5 ; <- Bank0C.asm : 1650 (JSL Palette_SelectScreen) -JSL.l SetFileSelectPalette +JSL SetFileSelectPalette ;-------------------------------------------------------------------------------- -org $0CCE41 ; <- 64E41 - Bank0C.asm : 1907 (DEC $C8 : BPL .done) +org $8CCE41 ; <- 64E41 - Bank0C.asm : 1907 (DEC $C8 : BPL .done) JSL FSCursorUp : NOP #4 ; set cursor to only select first file and erase -org $0CCE50 ; <- 64E50 - Bank0C.asm : 1918 (INC $C8) +org $8CCE50 ; <- 64E50 - Bank0C.asm : 1918 (INC $C8) JSL FSCursorDown : NOP #6 ; set cursor to only select first file and erase -org $0CCE0F ; < 64E0F - Bank0C.asm : 1880 (LDX $00 : INX #2 : CPX.w #$0006 : BCC .nextFile) +org $8CCE0F ; < 64E0F - Bank0C.asm : 1880 (LDX $00 : INX #2 : CPX.w #$0006 : BCC .nextFile) NOP #9 ; don't draw the other two save files ;-------------------------------------------------------------------------------- -org $0CCE71 ; <- Bank0C.asm : 1941 (LDA.b #$F1 : STA $012C) -JML.l FSSelectFile : NOP +org $8CCE71 ; <- Bank0C.asm : 1941 (LDA.b #$F1 : STA $012C) +JML FSSelectFile : NOP FSSelectFile_continue: -org $0CCEB1 ; <- Bank0C.asm : 2001 (.return) -FSSelectFile_return: +FSSelectFile_return = $8CCEB1 ;-------------------------------------------------------------------------------- ; Replace copy file module with a fully custom module org $008061+$02 ; <- Bank00.asm : 103 (dl Module_CopyFile) @@ -172,24 +171,24 @@ org $008099+$02 ; <- Bank00.asm : 103 (dl Module_CopyFile) db Module_Password>>16 ; Hook up password screen tilemap -org $00937a+$07 +org $00937A+$07 db Password_Tilemap org $009383+$07 db Password_Tilemap>>8 -org $00938c+$07 +org $00938C+$07 db Password_Tilemap>>16 ;-------------------------------------------------------------------------------- org $0CD527 ; <- 65527 : Bank0C.asm : 2913 (LDA.w #$0004 : STA $02) [LDA.w #$0006 : STA $02] -JSL.l DrawPlayerFile : NOP ; hijack hearts draw routine to draw a full inventory +JSL DrawPlayerFile : NOP ; hijack hearts draw routine to draw a full inventory -org $0ccdd5 ; Bank0C.asm:1881 (LDX.w #$00FD) -JSL.l AltBufferTable : NOP #8 ; Selection screen -org $0cd393 ; Bank0c.asm:2674 (LDX.w #$00FD) -JSL.l AltBufferTable : NOP #8 ; Delete screen +org $0CCDD5 ; Bank0C.asm:1881 (LDX.w #$00FD) +JSL AltBufferTable : NOP #8 ; Selection screen +org $0CD393 ; Bank0c.asm:2674 (LDX.w #$00FD) +JSL AltBufferTable : NOP #8 ; Delete screen ;-------------------------------------------------------------------------------- org $0CCCCC ;<- 64CCC - Bank0C.asm : 1628 (JSL Intro_ValidateSram) / Bank02.asm : 75 (REP #$30) ; Explanation: In JP 1.0 the code for Intro_ValidateSram was inline in Bank 0C -JML.l ValidateSRAM ;(Return via RTL. Original code JML'd to Intro_LoadSpriteStats which returns with RTL, but we want to skip that) +JML ValidateSRAM ;(Return via RTL. Original code JML'd to Intro_LoadSpriteStats which returns with RTL, but we want to skip that) org $0CCD57 ;<- 64D57 - Bank0C.asm : RTL ;Just in case anybody ever removes the previous hook ;-------------------------------------------------------------------------------- @@ -209,12 +208,12 @@ NOP #2 ; Remove space between name characters org $0CD571 ; <- 65571 : Bank0c.asm : 2943 (LDA $04 : ADD.w #$002A : TAY) [... : ADD.w #$0032 : ...] ADC.w #$0040 ;make Hearts line up properly ;-------------------------------------------------------------------------------- -org $0CCC67 ; <- (Not in disassembly, would be in bank0c.asm if it were) Y position table for File select fairy +org $0CCC67 ; <- Y position table for File select fairy db $42, $00, $00, $AF, $C7 -org $0CD308 ; <- (Not in disassembly, would be in bank0c.asm if it were) Y position table for File Delete fairy +org $0CD308 ; <- Y position table for File Delete fairy db $42, $00, $00, $C7 org $0CD57E ; <- Y position table for File select link sprite -db $3d +db $3D org $0CD6BD ; <- Y position table for Death Counts db $51 ;-------------------------------------------------------------------------------- @@ -223,18 +222,18 @@ db $51 ; Name Entry Screen ;-------------------------------------------------------------------------------- org $0CD7BE ; <- 657BE : Bank0C.asm : 3353 (STA $7003D9, X) -JSL.l WriteBlanksToPlayerName +JSL WriteBlanksToPlayerName org $0CDB11 ; <- 65B11 : Bank0C.asm : 3605 (LDA $00 : AND.w #$FFF0 : ASL A : ORA $02 : STA $7003D9, X) -JSL.l WriteCharacterToPlayerName +JSL WriteCharacterToPlayerName org $0CDCA9 ; <- 65CA9 : Bank0C.asm : 3853 (LDA $7003D9, X) -JSL.l ReadCharacterFromPlayerName +JSL ReadCharacterFromPlayerName org $0CDC90 ; <- 65C90 : Bank0C.asm : 3847 (ORA $DD24, Y) [ORA $DC82, Y] -JSL.l GetCharacterPosition -org $0CDA79 ; <- 65A79 : Bank0C.asm : 3518 (LDA $0CDA13, X : STA $0800, Y) [LDA $0CD98f, X : ...] +JSL GetCharacterPosition +org $0CDA79 ; <- 65A79 : Bank0C.asm : 3518 (LDA $0CDA13, X : STA $0800, Y) [LDA $0CD98F, X : ...] LDA.l HeartCursorPositions, X org $0CDAEB ; <- 65AEB : Bank0C.asm : 3571-3575,3581-3587 (...) [LDA $0B12 : AND #$03] ; JP here is different. Indicated line number implement the US version of the same functionality -JSL.l WrapCharacterPosition : NOP +JSL WrapCharacterPosition : NOP org $0CD75E ; bank_0C.asm (dl NameFile_MakeScreenVisible) dl MaybeForceFileName ;-------------------------------------------------------------------------------- @@ -251,11 +250,11 @@ db $8D, $40, $1E org $0CE46E db $AD, $40, $1E ;-------------------------------------------------------------------------------- -org $0CE41A ; No assembly source. +org $0CE41A ; Fix name screen background to use the not-overwritten copy of its graphics db $09 : SKIP 5 : db $09 : SKIP 5 : db $09 : SKIP 5 : db $09 : SKIP 5 : db $09 : SKIP 5 db $09 : SKIP 5 : db $49 : SKIP 1 : db $49 : SKIP 1 : db $49 : SKIP 1 : db $49 : SKIP 1 -db $c9 : SKIP 5 : db $09 : SKIP 5 : db $09 : SKIP 1 : db $09 : SKIP 1 : db $09 : SKIP 1 +db $C9 : SKIP 5 : db $09 : SKIP 5 : db $09 : SKIP 1 : db $09 : SKIP 1 : db $09 : SKIP 1 db $09 : SKIP 1 : db $89 : SKIP 4 : db $80, $09 : SKIP 4 : db $80, $09 : SKIP 4 db $80, $09 : SKIP 5 : db $89 : SKIP 5 db $49 : SKIP 5 : db $09 : SKIP 5 : db $09 : SKIP 5 : db $49 : SKIP 5 : db $09 : SKIP 5 @@ -289,7 +288,7 @@ SKIP 7 : NOP #3 ;-------------------------------------------------------------------------------- ; remove Clearing mirrored copy on file erase, instead clearing the extended save file too org $0CD4E3 ; <- Bank0C.asm : 2282 (STA $700400, X : STA $700F00, X : STA $701000, X : STA $701100, X) -JSL.l ClearExtendedSaveFile +JSL ClearExtendedSaveFile BRA + : NOP #18 : + ;-------------------------------------------------------------------------------- @@ -308,27 +307,27 @@ PLA : SEP #$30 : PLB : RTL padbyte $FF : pad $0089C2 ; Fill adjacent free rom forward. See bank_00.asm: #_0089C2 ;-------------------------------------------------------------------------------- org $0CD7AB ; <- Bank0C.asm : 3342 (STA $700400, X) -JSL.l ClearExtendedSaveFile +JSL ClearExtendedSaveFile ;-------------------------------------------------------------------------------- org $0CC2EB ; <- Bank0C.asm : 348 (STA $7EF000, X : STA $7EF100, X : STA $7EF200, X : STA $7EF300, X : STA $7EF400, X) -JSL.l ClearExtendedWRAMSaveFile +JSL ClearExtendedWRAMSaveFile ;-------------------------------------------------------------------------------- org $09F653 ; <- module_death.asm : 556 (STA $7EF400, X) -JSL.l ClearExtendedWRAMSaveFile +JSL ClearExtendedWRAMSaveFile ;-------------------------------------------------------------------------------- ;================================================================================ ; Remove storage of selected file index from end of vanilla SRAM ;-------------------------------------------------------------------------------- -org $0087EB ; <- Bank00.asm : 986 (STA $7EC500 : STA $701FFE) +org $8087EB ; <- Bank00.asm : 986 (STA $7EC500 : STA $701FFE) BRA AfterFileWrittenChecks ;Also skip totally redundant checking and clearing the "file written" marker, ;since it is not even useful in the original code, much less with only one save slot -org $00881f ; <- Bank00.asm : 1011 (STY $01FE) +org $80881F ; <- Bank00.asm : 1011 (STY $01FE) AfterFileWrittenChecks: ;-------------------------------------------------------------------------------- org $008951 ; <- Bank00.asm : 1278 (LDX $1FFE : LDA $00848A, X : TAY : PHY) -LDX #$0002 +LDX.w #$0002 ;-------------------------------------------------------------------------------- org $0CCE85 ; <- Bank0C.asm : 1953 (LDA $C8 : ASL A : INC #2 : STA $701FFE) NOP #4 @@ -347,14 +346,14 @@ LDA.w #$0002 : NOP ; Cross World Damage fixes ;-------------------------------------------------------------------------------- org $068891 ; Sprite_Prep.asm : 378 //LDA .damage_class, Y : STA $0CD2, X -nop #$08 -JSL.l NewBatInit +NOP #8 +JSL NewBatInit ;================================================================================ ; Damage table Relocation from WRAM ;-------------------------------------------------------------------------------- org $06EDB5 ;<- 36DBE - Bank06.asm : 4882 (LDA $7F6000, X : STA $02) -JSL.l LookupDamageLevel +JSL LookupDamageLevel ;-------------------------------------------------------------------------------- org $1EAB5E ;<- F2B5E - sprite_stalfos_knight.asm : 135 (LDA.b #$00 : STA $7F6918) STA.l StalfosBombDamage @@ -366,36 +365,36 @@ STA.l StalfosBombDamage ; Duck Map Load Hook ;-------------------------------------------------------------------------------- org $0AB76E ; <- 5376E - Bank0A.asm : 30 (JSL OverworldMap_InitGfx) -JSL.l OnLoadDuckMap +JSL OnLoadDuckMap ;-------------------------------------------------------------------------------- ;================================================================================ ; Infinite Bombs / Arrows / Magic ;-------------------------------------------------------------------------------- org $08A17A ; <- 4217A - ancilla_arrow.asm : 42 (AND.b #$04 : BEQ .dont_spawn_sparkle) -CMP.b #$03 : db #$90 ; !BLT +CMP.b #$03 : db $90 ; !BLT org $08A40E ; <- 4240E - ancilla_arrow.asm : 331 (AND.b #$04 : BNE .use_silver_palette) -CMP.b #$03 : db #$B0 ; !BGE +CMP.b #$03 : db $B0 ; !BGE ;-------------------------------------------------------------------------------- org $098127 ; <- 48127 - ancilla_init.asm : 202 (LDA $7EF343 : BNE .player_has_bombs) -JSL.l LoadBombCount +JSL LoadBombCount org $098133 ; <- 48133 - ancilla_init.asm : 211 (STA $7EF343 : BNE .bombs_left_over) -JSL.l StoreBombCount +JSL StoreBombCount ;-------------------------------------------------------------------------------- org $0DE4BF ; <- 6E4BF - equipment.asm : 1249 (LDA $7EF343 : AND.w #$00FF : BEQ .gotNoBombs) -JSL.l LoadBombCount16 +JSL LoadBombCount16 ;-------------------------------------------------------------------------------- org $0DDEB3 ; <- 6DEB3 - equipment.asm : 328 (LDA $7EF33F, X) -JSL.l IsItemAvailable +JSL IsItemAvailable ;-------------------------------------------------------------------------------- org $0DDDE8 ; <- 6DDE8 - equipment.asm : 148 (LDA $7EF340) -JSL.l SearchForEquippedItem +JSL SearchForEquippedItem ;-------------------------------------------------------------------------------- org $0DDE70 ; <- 6DE70 - equipment.asm : 273 (LDA $7EF340) -JSL.l SearchForEquippedItem +JSL SearchForEquippedItem ;-------------------------------------------------------------------------------- org $0DE39D ; <- 6E39D - equipment.asm : 1109 (LDA $7EF340) -JSL.l SearchForEquippedItem +JSL SearchForEquippedItem ;-------------------------------------------------------------------------------- ;================================================================================ @@ -403,26 +402,26 @@ JSL.l SearchForEquippedItem ;-------------------------------------------------------------------------------- org $028413 ; <- 10413 - Bank02.asm : 853 (LDA $7EF357 : BNE .notBunny) NOP #6 -JSL.l DecideIfBunny : db #$D0 ; BNE +JSL DecideIfBunny : db $D0 ; BNE ;-------------------------------------------------------------------------------- org $07AA44 ; <- 3AA44 - Bank07.asm : 853 (LDA $7EF357 : BNE .playerHasMoonPearl) NOP #6 -JSL.l DecideIfBunnyByScreenIndex : db #$D0 ; BNE +JSL DecideIfBunnyByScreenIndex : db $D0 ; BNE ;-------------------------------------------------------------------------------- org $02D9B9 ; <- 159B9 - Bank02.asm : 11089 (LDA $7EF3C8) JSL AllowStartFromSingleEntranceCave ;-------------------------------------------------------------------------------- -org $028496 ; <- 15496 - Bank02.asm : 959 (LDA $7EF3C8 : PHA) -JML.l AllowStartFromExit +org $828496 ; <- 15496 - Bank02.asm : 959 (LDA $7EF3C8 : PHA) +JML AllowStartFromExit AllowStartFromExitReturn: ;-------------------------------------------------------------------------------- -org $1bc2a7 ; <- DC2A7 - Bank1B.asm : 1143 (Overworld_CreatePyramidHole:) -JSL.l Overworld_CreatePyramidHoleModified : RTL +org $9BC2A7 ; <- DC2A7 - Bank1B.asm : 1143 (Overworld_CreatePyramidHole:) +JSL Overworld_CreatePyramidHoleModified : RTL C9DE_LONG: -JSR $C9DE : RTL ; surprisingly same address as US +JSR.w $1BC9DE : RTL ; surprisingly same address as US ;-------------------------------------------------------------------------------- -org $07ff5f ; <- 3ff5f - Bank0E.asm : 5252 (LDA.w #$0E3F : STA $23BC) -JSL.l Draw_PyramidOverlay : RTS +org $07FF5F ; <- 3ff5f - Bank0E.asm : 5252 (LDA.w #$0E3F : STA $23BC) +JSL Draw_PyramidOverlay : RTS ;-------------------------------------------------------------------------------- ;Remove Electric Barrier Hook org $06891E ; <- sprite_prep.asm : 537 (LDA $7EF280, X : PLX : AND.b #$40 : BEQ .not_dead) @@ -438,25 +437,25 @@ org $02EC8D ; <- bank02.asm : 11981 (LDA.w #$020F : LDX $8A : CPX.w #$0033 : BNE JSL HardcodedRocks : NOP #19 ;23 bytes removed with the JSL ;-------------------------------------------------------------------------------- org $04E7AE ; <- bank0E.asm : 4230 (LDA $7EF287 : AND.w #$0020) -JSL.l TurtleRockPegSolved +JSL TurtleRockPegSolved -org $04E7B9 ; <- bank0E.asm : 4237 (LDX $04C8) +org $84E7B9 ; <- bank0E.asm : 4237 (LDX $04C8) JMP.w TurtleRockTrollPegs TurtleRockPegCheck: -org $04E7C9 +org $84E7C9 TurtleRockPegSuccess: -org $04E7F5 +org $84E7F5 TurtleRockPegFail: -org $04E96F +org $84E96F PegProbability: db $00 ; Probability out of 255. 0 = Vanilla behavior TurtleRockTrollPegs: SEP #$20 LDX.w $04C8 : CPX.w #$FFFF : BEQ .vanilla -JSL.l GetRandomInt +JSL GetRandomInt LDA.l PegProbability : BEQ .vanilla : CMP.l $7E0FA1 REP #$20 : !BGE .succeed .fail @@ -466,10 +465,10 @@ JMP.w TurtleRockPegSuccess .vanilla REP #$20 : JMP.w TurtleRockPegCheck ;-------------------------------------------------------------------------------- -org $1BBD05 ; <- bank1B.asm : 261 (TYA : STA $00) ; hook starts at the STA -JML.l PreventEnterOnBonk : NOP +org $9BBD05 ; <- bank1B.asm : 261 (TYA : STA $00) ; hook starts at the STA +JML PreventEnterOnBonk : NOP PreventEnterOnBonk_return: -org $1BBD77 ; <- bank1B.asm : 308 (SEP #$30) +org $9BBD77 ; <- bank1B.asm : 308 (SEP #$30) PreventEnterOnBonk_BRANCH_IX: ;-------------------------------------------------------------------------------- @@ -477,25 +476,25 @@ PreventEnterOnBonk_BRANCH_IX: ; Crystals Mode ;-------------------------------------------------------------------------------- org $099B7B ; <- ancilla_init.asm : 4136 (LDA $7EF37A : AND.b #$7F : CMP.b #$7F) -JSL.l CheckEnoughCrystalsForTower : NOP #4 -db #$90 ; BCC +JSL CheckEnoughCrystalsForTower : NOP #4 +db $90 ; BCC ;-------------------------------------------------------------------------------- -org $08CE0C ; <- 44E0C - ancilla_break_tower_seal.asm : 168 (BEQ #$03 : JSR BreakTowerSeal_ExecuteSparkles : LDX.b #$06) -JML.l GetRequiredCrystalsForTower : NOP #3 +org $88CE0C ; <- 44E0C - ancilla_break_tower_seal.asm : 168 (BEQ #$03 : JSR BreakTowerSeal_ExecuteSparkles : LDX.b #$06) +JML GetRequiredCrystalsForTower : NOP #3 GetRequiredCrystalsForTower_continue: ;-------------------------------------------------------------------------------- org $08CF19 ; <- 44F19 - ancilla_break_tower_seal.asm : 336 (TXA : AND.b #$07 : TAX) -JSL.l GetRequiredCrystalsInX +JSL GetRequiredCrystalsInX ;-------------------------------------------------------------------------------- org $08CFC9 ; <- 44FC9 - ancilla_break_tower_seal.asm : 414 (RTS) -db #$6B +RTL ;-------------------------------------------------------------------------------- ;================================================================================ ; Hash Key Display ;-------------------------------------------------------------------------------- org $0CCDB5 ; <- 64DB5 - Bank0C.asm : 1776 (LDA.b #$06 : STA $14) -JSL.l OnPrepFileSelect +JSL OnPrepFileSelect ;================================================================================ ; Light speed @@ -508,7 +507,6 @@ JSL AgahnimAsksAboutPed org $1ED6E8 JSL CheckAgaForPed : NOP - ; kill ganon when aga dies in light speed org $00F970 JSL KillGanon @@ -517,115 +515,101 @@ JSL KillGanon ; Zelda Sprite Fixes ;-------------------------------------------------------------------------------- org $05EBCF ; <- 2EBCF - sprite_zelda.asm : 23 (LDA $7EF359 : CMP.b #$02 : BCS .hasMasterSword) -JSL.l SpawnZelda : NOP #2 +JSL SpawnZelda : NOP #2 ;================================================================================ ; Alternate Goal ;-------------------------------------------------------------------------------- ;Invincible Ganon org $06F2C8 ; <- 372C8 - Bank06.asm : 5776 (LDA $44 : CMP.b #$80 : BEQ .no_collision) -JSL.l GoalItemGanonCheck +JSL GoalItemGanonCheck ;-------------------------------------------------------------------------------- ;Hammerable Ganon org $06F2EA ; <- 372EA - Bank06.asm : 5791 (LDA $0E20, X : CMP.b #$D6 : BCS .no_collision) -JSL.l CheckGanonHammerDamage : NOP +JSL CheckGanonHammerDamage : NOP ;-------------------------------------------------------------------------------- ;================================================================================ ; Stat Hooks ;-------------------------------------------------------------------------------- org $02B797 ; <- 13797 - Bank02.asm : 8712 (LDA.b #$19 : STA $10) -JSL.l StatsFinalPrep +JSL StatsFinalPrep ;-------------------------------------------------------------------------------- org $07A95B ; <- 3A95B - Bank07.asm : 6565 (JSL Dungeon_SaveRoomDataWRAM) -JSL.l IncrementUWMirror +JSL IncrementUWMirror ;-------------------------------------------------------------------------------- org $0288D1 ; <- 108D1 - Bank02.asm : 1690 (STZ $0646) -JSL.l IndoorSubtileTransitionCounter : NOP #2 +JSL IndoorSubtileTransitionCounter : NOP #2 org $06D192 ; <- 35192 - sprite_absorbable.asm : 274 (STA $7EF36F) -JSL.l IncrementSmallKeysNoPrimary +JSL IncrementSmallKeysNoPrimary ;-------------------------------------------------------------------------------- org $00F945 ; <- 7945 - Bank00.asm : 8557 (JSL SavePalaceDeaths) -JSL.l StatTransitionCounter ; we're not bothering to restore the instruction we wrote over +JSL StatTransitionCounter ; we're not bothering to restore the instruction we wrote over ;-------------------------------------------------------------------------------- org $09F443 ; <- 4F443 - module_death.asm : 257 (STA $7EF35C, X) -JSL.l IncrementFairyRevivalCounter +JSL IncrementFairyRevivalCounter ;-------------------------------------------------------------------------------- org $02B6F3 ; <- 136F3 - Bank02.asm : 8600 (LDA.b #$0F : STA $10) -JSL.l DungeonExitTransition +JSL DungeonExitTransition ;-------------------------------------------------------------------------------- org $1BBD6A ; <- DBD6A - Bank1B.asm : 301 (LDA.b #$0F : STA $10) -JSL.l DungeonExitTransition +JSL DungeonExitTransition ;-------------------------------------------------------------------------------- org $01C3A7 ; <- C3A7 - Bank01.asm : 9733 (JSL Dungeon_SaveRoomQuadrantData) -JSL.l DungeonStairsTransition +JSL DungeonStairsTransition ;-------------------------------------------------------------------------------- org $0BFFAC ; <- 5FFAC - Bank0B.asm : 170 (JSL Dungeon_SaveRoomQuadrantData) -JSL.l DungeonStairsTransition +JSL DungeonStairsTransition ;-------------------------------------------------------------------------------- org $029A17 ; <- 11A17 - Bank02.asm : 4770 (JSL EnableForceBlank) -JSL.l DungeonHoleEntranceTransition +JSL DungeonHoleEntranceTransition ;-------------------------------------------------------------------------------- org $0794EB ; <- 394EB - Bank07.asm : 3325 (LDA $01C31F, X : STA $0476) -JSL.l DungeonHoleWarpTransition +JSL DungeonHoleWarpTransition ;-------------------------------------------------------------------------------- org $0CC999 ; <- 64999 - Bank0C.asm : 1087 (LDA.b #$0F : STA $13) NOP #4 ;-------------------------------------------------------------------------------- org $01ED75 ; <- ED75 - Bank01.asm : 13963 (JSL Dungeon_SaveRoomQuadrantData) -JSL.l IncrementBigChestCounter +JSL IncrementBigChestCounter ;-------------------------------------------------------------------------------- ;================================================================================ -; Dialog Override +; DialogOverride ;-------------------------------------------------------------------------------- -org $0EF1FF ; 0x771FF <- vwf.asm : 1212 (LDA $7F1200, X : AND.w #$007F : SUB.w #$0066 : BPL .commandByte) -JSL.l DialogOverride -org $0EF2DC ; every other LDA $7F1200, X in vwf.asm -JSL.l DialogOverride -org $0EF315 -JSL.l DialogOverride -org $0EF332 -JSL.l DialogOverride -org $0EF375 -JSL.l DialogOverride -org $0EF394 -JSL.l DialogOverride -org $0EF511 -JSL.l DialogOverride -org $0EF858 -JSL.l DialogOverride -org $0EFA26 -JSL.l DialogOverride -org $0EFA4C -JSL.l DialogOverride -org $0EFAB4 -JSL.l DialogOverride -org $0EFAC8 -JSL.l DialogOverride -org $0EFAE1 -JSL.l DialogOverride -org $0EFB11 -JSL.l DialogOverride +org $0EF1FF : JSL DialogOverride ; DialogOverride +org $0EF2DC : JSL DialogOverride ; DialogOverride +org $0EF315 : JSL DialogOverride ; DialogOverride +org $0EF332 : JSL DialogOverride ; DialogOverride +org $0EF375 : JSL DialogOverride ; DialogOverride +org $0EF394 : JSL DialogOverride ; DialogOverride +org $0EF511 : JSL DialogOverride ; DialogOverride +org $0EF858 : JSL DialogOverride ; DialogOverride +org $0EFA26 : JSL DialogOverride ; DialogOverride +org $0EFA4C : JSL DialogOverride ; DialogOverride +org $0EFAB4 : JSL DialogOverride ; DialogOverride +org $0EFAC8 : JSL DialogOverride ; DialogOverride +org $0EFAE1 : JSL DialogOverride ; DialogOverride +org $0EFB11 : JSL DialogOverride ; DialogOverride ;-------------------------------------------------------------------------------- org $0EFBC6 ; <- 77BC6 - vwf.asm : 2717 (LDA.b #$1C : STA $1CE9) -JSL.l ResetDialogPointer : RTS +JSL ResetDialogPointer : RTS ;-------------------------------------------------------------------------------- org $0EED0B ; <- PC 0x76D0B - Bank0E.asm : 3276 (LDA $E924, Y : STA $1008, X) -JSL.l EndingSequenceTableOverride : NOP #2 +JSL EndingSequenceTableOverride : NOP #2 ;-------------------------------------------------------------------------------- org $0EED15 ; <- PC 0x76D15 - Bank0E.asm : 3282 (LDA $E924, Y : STA $1008, X) -JSL.l EndingSequenceTableOverride : NOP #2 +JSL EndingSequenceTableOverride : NOP #2 ;-------------------------------------------------------------------------------- org $0EED2A ; <- PC 0x76D2A - Bank0E.asm : 3295 (LDA $E924, Y : AND.w #$00FF) -JSL.l EndingSequenceTableLookupOverride : NOP #2 +JSL EndingSequenceTableLookupOverride : NOP #2 ;-------------------------------------------------------------------------------- ;================================================================================ ; Master Sword Overlay Fix ;-------------------------------------------------------------------------------- org $0987B2 ; <- ancilla_init.asm : 1051 (LDA.b #$09) -JSL.l PedestalPullOverlayFix +JSL PedestalPullOverlayFix org $0987B8 ; <- ancilla_init.asm : 1055 (STA $039F, X) NOP #3 @@ -638,13 +622,14 @@ NOP #3 ; File Select Init Event ;-------------------------------------------------------------------------------- org $0CCC89 ; <- 0x64C89 Bank0C.asm : 1598 (JSL EnableForceBlank) -JSL.l OnInitFileSelect +JSL OnInitFileSelect ;================================================================================ ; Hyrule Castle Rain Sequence Guards (allowing Gloves in Link's house) ;-------------------------------------------------------------------------------- org $09C8B7 ; <- 4C8B7 -dw #CastleRainSpriteData +dw CastleRainSpriteData + org $09F7BD ; <- 4F7BD CastleRainSpriteData: db $06, $1F, $40, $12, $01, $3F, $14, $01, $3F, $13, $1F, $42, $1A, $1F, $4B, $1A, $20, $4B, $25, $2D, $3F, $29, $20, $3F, $2A, $3C, $3F, $FF @@ -654,50 +639,50 @@ db $06, $1F, $40, $12, $01, $3F, $14, $01, $3F, $13, $1F, $42, $1A, $1F, $4B, $1 ; Sprite_DrawMultiple ;-------------------------------------------------------------------------------- org $05DFB1 ; <- 2DFB1 - Bank05.asm : 2499 -JSL.l SkipDrawEOR +JSL SkipDrawEOR ;================================================================================ ; Kiki Big Bomb Fix ;-------------------------------------------------------------------------------- org $1EE4AF ; <- f64af sprite_kiki.asm : 285 (LDA.b #$0A : STA $7EF3CC) -JSL.l AssignKiki : NOP #2 +JSL AssignKiki : NOP #2 ;================================================================================ ; Wallmaster camera fix ;-------------------------------------------------------------------------------- org $1EAF77 ; <- F2F77 sprite_wallmaster.asm : 141 (LDA.b #$2A : JSL Sound_SetSfx3PanLong) -JSL.l WallmasterCameraFix +JSL WallmasterCameraFix ;================================================================================ ; Hard & Masochist Mode Fixes ;-------------------------------------------------------------------------------- org $07D22B ; <- 3D22B - Bank05.asm : 12752 (LDA $D055, Y : STA $0373) -JSL.l CalculateSpikeFloorDamage : NOP #2 +JSL CalculateSpikeFloorDamage : NOP #2 ;-------------------------------------------------------------------------------- org $08DCC3 ; <- 45CC3 - ancilla_cane_spark.asm : 272 (LDA $7EF36E) -JSL.l CalculateByrnaUsage +JSL CalculateByrnaUsage ;-------------------------------------------------------------------------------- org $07AE17 ; <- 3AE17 - Bank07.asm : 7285 (LDA $7EF36E) -JSL.l CalculateCapeUsage +JSL CalculateCapeUsage ;-------------------------------------------------------------------------------- org $07AE98 ; <- 3AE98 - Bank07.asm : 7380 (LDA $7EF36E) -JSL.l CalculateCapeUsage +JSL CalculateCapeUsage ;-------------------------------------------------------------------------------- org $08DCA7 ; <- 45CA7 - ancilla_cane_spark.asm : 256 (LDA.b #$01 : STA $037B) -JSL.l ActivateInvulnerabilityOrDont : NOP +JSL ActivateInvulnerabilityOrDont : NOP ;-------------------------------------------------------------------------------- -ORG $06EDC6 ; <- 36DC6 - Bank06.asm : 4890 (LDA $0DB8F1, X) -JSL.l GetItemDamageValue +org $06EDC6 ; <- 36DC6 - Bank06.asm : 4890 (LDA $0DB8F1, X) +JSL GetItemDamageValue ;-------------------------------------------------------------------------------- ;================================================================================ ; Misc Stats ;-------------------------------------------------------------------------------- org $029E2E ; <- 11E2E - module_ganon_emerges.asm : 59 (JSL Dungeon_SaveRoomDataWRAM.justKeys) -JSL.l OnAga2Defeated +JSL OnAga2Defeated ;-------------------------------------------------------------------------------- org $0DDBDE ; <- 6DBDE - headsup_display.asm : 105 (DEC A : BPL .subtractRupees) -JSL.l IncrementSpentRupees : NOP #6 +JSL IncrementSpentRupees : NOP #6 ;================================================================================ ; Remove Item Menu Text @@ -720,21 +705,20 @@ LDA.w $0042, Y : STA.w GFXStripes+$0234 ;-------------------------------------------------------------------------------- org $0DE2DC ; <- 6E2DC - equipment.asm : 989 (LDA $F449, X : STA $122C, Y) JMP UpdateBottleMenu_return -org $0DE2F1 ; <- 6E2F1 - equipment.asm : 1000 (SEP #$30) -UpdateBottleMenu_return: +UpdateBottleMenu_return = $8DE2F1 ; <- 6E2F1 - equipment.asm : 1000 (SEP #$30) ;-------------------------------------------------------------------------------- org $0DE6F4 ; <- 6E6F4 - equipment.asm : 1474 (BCC .lacksAbility) -db #$80 ; BRA +db $80 ; BRA org $0DE81A ; <- 6E81A - equipment.asm : 1597 (STA $00) RTS org $0DE7B9 ; <- 6E7B9 - equipment.asm : 1548 (LDA.w #$16D0 : STA $00) -JSL.l DrawGlovesInMenuLocation : NOP +JSL DrawGlovesInMenuLocation : NOP org $0DE7CF ; <- 6E7CF - equipment.asm : 1554 (LDA.w #$16C8 : STA $00) -JSL.l DrawBootsInMenuLocation : NOP +JSL DrawBootsInMenuLocation : NOP org $0DE7E5 ; <- 6E7E5 - equipment.asm : 1560 (LDA.w #$16D8 : STA $00) -JSL.l DrawFlippersInMenuLocation : NOP +JSL DrawFlippersInMenuLocation : NOP org $0DECEB ; <- 6ECEB - equipment.asm : 1946 (LDA.w #$16E0 : STA $00) -JSL.l DrawMoonPearlInMenuLocation : NOP +JSL DrawMoonPearlInMenuLocation : NOP ;================================================================================ ; Zelda S&Q Mirror Fix @@ -747,113 +731,116 @@ dw $0000, $0002, $0004, $0032, $0004, $0006, $0030 ;-------------------------------------------------------------------------------- org $02A3F4 ; <- 123F4 - Bank02.asm : 6222 (LDA.b #$72 : BRA .setBrightness) BRA + : NOP #2 : + -org $02A3FD ; <- 123FD - Bank02.asm : 6233 (LDA.b #$32 : STA $9a) -JSL.l ConditionalLightning +org $02A3FD ; <- 123FD - Bank02.asm : 6233 (LDA.b #$32 : STA $9A) +JSL ConditionalLightning ;-------------------------------------------------------------------------------- org $1DE9CD ; <- EE9CD - Bank1D.asm : 568 (JSL Filter_Majorly_Whiten_Bg) -JSL.l ConditionalWhitenBg +JSL ConditionalWhitenBg ;-------------------------------------------------------------------------------- org $08AAE9 ; <- 042AE9 - ancilla_ether_spell.asm : 34 (JSL Palette_ElectroThemedGear) -JSL.l LoadElectroPalette +JSL LoadElectroPalette ;-------------------------------------------------------------------------------- org $08AAF5 ; <- 042AF5 - ancilla_ether_spell.asm : 45 (JSL LoadActualGearPalettes) -JSL.l RestoreElectroPalette +JSL RestoreElectroPalette ;-------------------------------------------------------------------------------- org $08AAF9 ; -< 42AF9 - ancilla_ether_spell.asm : 46 (JSL Palette_Restore_BG_From_Flash) -JSL.l RestoreBgEther +JSL RestoreBgEther ;-------------------------------------------------------------------------------- org $08AAED ; <- 42AED - ancilla_ether_spell.asm : 35 (JSL Filter_Majorly_Whiten_Bg) -JSL.l ConditionalWhitenBg +JSL ConditionalWhitenBg ;-------------------------------------------------------------------------------- org $02FEE6 ; <- 17EE6 - Bank0E.asm : 3907 (RTS) -RTL ; the whiten color routine is only JSL-ed to +RTL ; the whiten color routine is only JSL-ed to ;-------------------------------------------------------------------------------- org $07FA7B ; <- 3FA7B - Bank0E.asm : 4735 (REP #$20 : LDX.b #$02) JML DDMConditionalLightning ;-------------------------------------------------------------------------------- org $07FACB ; <- 3FACB - Bank0E.asm : 4773 (REP #$20 : LDA #$F531, Y) -JSL.l ConditionalGTFlash : BRA + : NOP #11 : + +JSL ConditionalGTFlash : BRA + : NOP #11 : + ;-------------------------------------------------------------------------------- org $0AFF48 ; <- 57F48 - Bank0A.asm : 4935 (REP #$20 : LDA $7EC3DA) -JSL.l ConditionalRedFlash : BRA + : NOP #13 : + +JSL ConditionalRedFlash : BRA + : NOP #13 : + ;-------------------------------------------------------------------------------- org $08C2A1 ; <- 442A3 - ancilla_sword_ceremony.asm : 54 (REP #$20) -JSL.l ConditionalPedAncilla : BRA + : NOP #4 : + +JSL ConditionalPedAncilla : BRA + : NOP #4 : + ;-------------------------------------------------------------------------------- org $079976 ; <- 039976 - Bank07.asm : 4009 (JSL Palette_ElectroThemedGear) -JSL.l LoadElectroPalette +JSL LoadElectroPalette ;-------------------------------------------------------------------------------- org $07997C ; <- 03997C - Bank07.asm : 4015 (JSL LoadActualGearPalettes) -JSL.l RestoreElectroPalette +JSL RestoreElectroPalette ;================================================================================ ; Ice Floor Toggle ;-------------------------------------------------------------------------------- org $07D234 ; <- 3D234 - Bank07.asm : 12758 (LDA $0348 : AND.b #$11 : BEQ .notWalkingOnIce) -JSL.l LoadModifiedIceFloorValue_a11 : NOP +JSL LoadModifiedIceFloorValue_a11 : NOP ;-------------------------------------------------------------------------------- org $07D26E ; <- 3D26E - Bank07.asm : 12786 (LDA $0348 : AND.b #$01 : BNE BRANCH_RESH) -JSL.l LoadModifiedIceFloorValue_a01 : NOP +JSL LoadModifiedIceFloorValue_a01 : NOP ;================================================================================ ; Sword Upgrade Randomization ;-------------------------------------------------------------------------------- org $03FC16 ; <- 1FC16 ($A8, $B8, $3D, $D0, $B8, $3D) db $B1, $C6, $F9, $C9, $C6, $F9 ; data insert - 2 chests, fat fairy room -org $01E97E ; <- E97E ($280016, $250016) -dl $080116, $070116; <- E97E + +; unused item receipts +org $01E97E +dw $0116 : $08 +dw $0116 : $25 + ;-------------------------------------------------------------------------------- -org $06C936 ; <- 34936 - sprite_ponds.asm : 952 -PyramidFairy_BRANCH_IOTA: -org $06C948 ; <- 34948 - sprite_ponds.asm : 961 -PyramidFairy_BRANCH_GAMMA: +PyramidFairy_BRANCH_IOTA = $86C936 +PyramidFairy_BRANCH_GAMMA = $86C948 + ;-------------------------------------------------------------------------------- org $1EE16E ; <- F616E - sprite_bomb_shop_entity.asm : 73 NOP #8 ; fix bomb shop dialog for dwarfless big bomb org $068A14 ; <- 30A14 - sprite_prep.asm : 716 NOP #8 ; fix bomb shop spawn for dwarfless big bomb ;-------------------------------------------------------------------------------- -org $06B489 ; <- 33489 - sprite_smithy_bros.asm : 473 (LDA $7EF359 : CMP.b #$03 : BCS .tempered_sword_or_better) -JML.l GetSmithSword : NOP #4 +org $86B489 ; <- 33489 - sprite_smithy_bros.asm : 473 (LDA $7EF359 : CMP.b #$03 : BCS .tempered_sword_or_better) +JML GetSmithSword : NOP #4 Smithy_DoesntHaveSword: -org $06B49D ; <- 3349D - sprite_smithy_bros.asm : 485 (.tempered_sword_or_better) +org $86B49D ; <- 3349D - sprite_smithy_bros.asm : 485 (.tempered_sword_or_better) Smithy_AlreadyGotSword: ;-------------------------------------------------------------------------------- org $06ED55 ; <- 36D55 - Bank06.asm : 4817 -JSL.l LoadSwordForDamage ; moth gold sword fix +JSL LoadSwordForDamage ; moth gold sword fix ;-------------------------------------------------------------------------------- org $08C5F7 ; <- 445F7 - ancilla_receive_item.asm : 400 (LDA.b #$09 : STA $012D) NOP #5 ; remove spooky telepathy sound ;-------------------------------------------------------------------------------- org $08C431 ; <- 44431 - ancilla_receive_item.asm : 125 (LDA $0C5E, X : CMP.b #$01 : BNE .notMasterSword2) -JSL.l MSMusicReset : NOP +JSL MSMusicReset : NOP ;================================================================================ ; Temporary Nerfs and Buffs ;-------------------------------------------------------------------------------- org $06F400 ; <- 37F400 - Bank06.asm : 5963 (CLC : ADC $7EF35B) -JSL.l LoadModifiedArmorLevel : NOP +JSL LoadModifiedArmorLevel : NOP ;-------------------------------------------------------------------------------- org $07ADDB ; <- 3ADDB - Bank07.asm : 7251 (LDA $7EF37B : TAY) -JSL.l LoadModifiedMagicLevel +JSL LoadModifiedMagicLevel ;-------------------------------------------------------------------------------- org $07AE0D ; <- 3AE0D - Bank07.asm : 7279 (LDA $7EF37B : TAY) -JSL.l LoadModifiedMagicLevel +JSL LoadModifiedMagicLevel ;-------------------------------------------------------------------------------- org $07AE8E ; <- 3AE8E - Bank07.asm : 7376 (LDA $7EF37B : TAY) -JSL.l LoadModifiedMagicLevel +JSL LoadModifiedMagicLevel ;-------------------------------------------------------------------------------- org $08DCB9 ; <- 45CB9 - ancilla_cane_spark.asm : 256 (LDA $7EF37B : TAY) -JSL.l LoadModifiedMagicLevel +JSL LoadModifiedMagicLevel ;-------------------------------------------------------------------------------- org $07B08B LinkItem_MagicCostBaseIndices: ;-------------------------------------------------------------------------------- org $07B096 ; <- 3B096 - Bank07.asm : 7731 (LDA LinkItem_MagicCostBaseIndices, X : CLC : ADC $7EF37B : TAX) -JSL.l LoadModifiedMagicLevel : !ADD.w LinkItem_MagicCostBaseIndices, X +JSL LoadModifiedMagicLevel : !ADD.w LinkItem_MagicCostBaseIndices, X ;-------------------------------------------------------------------------------- org $07B0D5 ; <- 3B0D5 - Bank07.asm : 7783 (LDA LinkItem_MagicCostBaseIndices, X : CLC : ADC $7EF37B : TAX) -JSL.l LoadModifiedMagicLevel : !ADD.w LinkItem_MagicCostBaseIndices, X +JSL LoadModifiedMagicLevel : !ADD.w LinkItem_MagicCostBaseIndices, X ;================================================================================ ; Faster Great Fairies @@ -870,21 +857,21 @@ db $03 ; fade out speed. Should be power of 2 minus 1 ; New Items ;-------------------------------------------------------------------------------- org $07B574 ; <- 3B574 - Bank07.asm : 8519 (LDA.b #$01 : STA $02E9) -JSL.l ChestPrep : NOP #3 +JSL ChestPrep : NOP #3 db $90 ; !BCC .cantOpen ;-------------------------------------------------------------------------------- org $00D531 ; 5531 - Bank00.asm:3451 (LDY.b #$5D) -JML.l GetAnimatedSpriteGfxFile +JML GetAnimatedSpriteGfxFile -org $00D547 ; 5547 - Bank00.asm:3467 (JSR Decomp_spr_high) +org $80D547 ; 5547 - Bank00.asm:3467 (JSR Decomp_spr_high) GetAnimatedSpriteGfxFile_return: org $00D557 ; 5557 - Bank00.asm:3486 (LDA $00 : ADC $D469, X) -JSL.l GetAnimatedSpriteBufferPointer : NOP +JSL GetAnimatedSpriteBufferPointer : NOP org $0799F7 ; 399F7 - Bank07.asm:4107 (JSL AddReceivedItem) -JSL.l AddReceivedItemLong -;JSL.l AddReceivedItemExpanded +JSL AddReceivedItemLong +;JSL AddReceivedItemExpanded org $098611 ; 48611 - ancilla_init.asm:720 (LDA .item_target_addr+0, X) LDA.w ItemReceipts_target+0, X @@ -929,13 +916,13 @@ org $08C6F9 ; 446F9 - ancilla_receive_item.asm:570 (LDA AddReceiveItem.propertie JSL CheckReceivedItemPropertiesBeforeLoad ;org $08C70F ; 4470F - ancilla_receive_item.asm : 582 - (LDA.b #$00 : STA ($92), Y) -;JSL.l LoadNarrowObject +;JSL LoadNarrowObject org $0985ED ; 485ED - ancilla_init.asm:693 (LDA $02E9 : CMP.b #$01) -JSL.l AddReceivedItemExpandedGetItem : NOP +JSL AddReceivedItemExpandedGetItem : NOP org $07B57D ; 3B57D - Bank07.asm:8527 (LDA Link_ReceiveItemAlternates, Y : STA $03) -JSL.l Link_ReceiveItemAlternatesExpanded_loadAlternate : NOP +JSL Link_ReceiveItemAlternatesExpanded_loadAlternate : NOP ;-------------------------------------------------------------------------------- org $09892E ; 4892E - ancilla_init.asm:1307 (LDA BottleList, X) LDA.w BottleListExpanded, X @@ -950,7 +937,7 @@ JSL HandleBombAbsorbtion ; Kholdstare Shell Fix ;-------------------------------------------------------------------------------- org $00EC88 ; <- 6C88 - Bank00.asm:6671 - (LDA $7EC380, X : STA $7EC580, X) -LDA $7EC3A0, X : STA $7EC5A0, X +LDA.l $7EC3A0, X : STA.l $7EC5A0, X ;-------------------------------------------------------------------------------- org $00ECEB ; <- 6CEB - Bank00.asm:6730 - (LDX.w #$0080) LDX.w #$00A0 : LDA.w #$00B0 @@ -959,22 +946,22 @@ LDX.w #$00A0 : LDA.w #$00B0 ; Potion Refill Fixes ;-------------------------------------------------------------------------------- org $00F8FB ; <- 78FB - Bank00.asm:8507 - (JSL HUD.RefillHealth : BCC BRANCH_ALPHA) -JSL.l RefillHealth +JSL RefillHealth ;-------------------------------------------------------------------------------- org $00F911 ; <- 7911 - Bank00.asm:8528 - (JSL HUD.RefillMagicPower : BCS BRANCH_$7901) -JSL.l RefillMagic +JSL RefillMagic ;-------------------------------------------------------------------------------- org $00F918 ; <- 7918 - Bank00.asm:8537 - (JSL HUD.RefillHealth : BCC .alpha) -JSL.l RefillHealth +JSL RefillHealth ;-------------------------------------------------------------------------------- org $00F922 ; <- 7922 - Bank00.asm:8543 - (JSL HUD.RefillMagicPower : BCC .beta) -JSL.l RefillMagic +JSL RefillMagic ;================================================================================ ; Early Bottle Fix ;-------------------------------------------------------------------------------- org $09894C ; <- 4894C - ancilla_init.asm:1327 -JSL.l InitializeBottles +JSL InitializeBottles ;================================================================================ ; Agahnim Doors Fix @@ -983,82 +970,82 @@ org $099BBA JSL FlagAgahnimDoor org $1BBC94 ; <- DBC94 - Bank1B.asm : 201 (LDA $7EF3C5 : AND.w #$000F : CMP.w #$0003 : BCS BRANCH_EPSILON) -JSL.l LockAgahnimDoors : BNE Overworld_Entrance_BRANCH_EPSILON : NOP #6 +JSL LockAgahnimDoors : BNE Overworld_Entrance_BRANCH_EPSILON : NOP #6 -org $1BBCC1 ; <- DBCC1 - Bank1B.asm : 223 (LDA $0F8004, X : AND.w #$01FF : STA $00) +org $9BBCC1 ; <- DBCC1 - Bank1B.asm : 223 (LDA $0F8004, X : AND.w #$01FF : STA $00) Overworld_Entrance_BRANCH_EPSILON: ; go here to lock doors ;-------------------------------------------------------------------------------- ; -- HOOK THIS LATER TO FUCK WITH BOSS DROPS -- org $01C73E ; <- C73E - Bank01.asm : 10377 (LDA $01C6FC, X : JSL Sprite_SpawnFallingItem) -JSL.l DropSafeDungeon : NOP #4 +JSL DropSafeDungeon : NOP #4 ;-------------------------------------------------------------------------------- ;================================================================================ ; Uncle / Sage Fixes - Old Man Fixes - Link's House Fixes ;-------------------------------------------------------------------------------- org $05DA4F ; <- 2DA4F - sprite_uncle_and_priest.asm : 45 (BCC .agahnim_not_defeated) -db 80 ; BRA +db $80 ; BRA ;-------------------------------------------------------------------------------- org $05DA61 ; <- 2DA61 - sprite_uncle_and_priest.asm : 51 (BEQ .priest_not_already_dead) -db 80 ; BRA +db $80 ; BRA ;-------------------------------------------------------------------------------- org $05DA81 ; <- 2DA81 - sprite_uncle_and_priest.asm : 65 (BCC .dontHaveMasterSword) -db 80 ; BRA +db $80 ; BRA ;-------------------------------------------------------------------------------- org $05DEF8 ; <- 2DEF8 - sprite_uncle_and_priest.asm : 917 (LDA.b #$05) LDA.b #$00 ;-------------------------------------------------------------------------------- ;0xFE465 -> 0x1E -org $1FE465 -db #$1E +org $1FE465 ; changes key door in tr pipes to a normal door +db $1E ;-------------------------------------------------------------------------------- ;================================================================================ ; Bomb & Arrow Capacity Updates ;-------------------------------------------------------------------------------- org $0DDC27 ; <- 6DC27 - headsup_display.asm:151 (LDA $7EF370 : TAY) -JSL.l IncrementBombs : NOP #15 +JSL IncrementBombs : NOP #15 ;-------------------------------------------------------------------------------- org $0DDC49 ; <- 6DC49 - headsup_display.asm:169 (LDA $7EF371 : TAY) -JSL.l IncrementArrows : NOP #15 +JSL IncrementArrows : NOP #15 ;-------------------------------------------------------------------------------- org $1EE199 ; <- F6199 - sprite_bomb_shop_entity.asm:102 (LDA $7EF370 : PHX : TAX) -JSL.l CompareBombsToMax : NOP #11 +JSL CompareBombsToMax : NOP #11 ;================================================================================ ; Bonk Items ;-------------------------------------------------------------------------------- org $05FC7E ; <- 2FC7E - sprite_dash_item.asm : 118 (LDA $7EF36F : INC A : STA $7EF36F) -JSL.l GiveBonkItem : NOP #5 +JSL GiveBonkItem : NOP #5 org $05FC97 ; <- 2FC97 - sprite_dash_item.asm : 126 (LDA.b #$2F : JSL Sound_SetSfx3PanLong) NOP #6 ;-------------------------------------------------------------------------------- org $068D39 ; <- 30D39 - sprite_prep.asm : 1435 - (LDA.b #$08 : STA $0F50, X) -JSL.l LoadBonkItemGFX +JSL LoadBonkItemGFX ;-------------------------------------------------------------------------------- org $05FC04 ; <- 2FC04 - sprite_dash_item.asm : 38 - (JSL DashKey_Draw) -JSL.l DrawBonkItemGFX +JSL DrawBonkItemGFX ;================================================================================ ; Library Item ;-------------------------------------------------------------------------------- org $05FD44 ; <- 2FD44 - sprite_dash_item.asm : 244 - (JSL Link_ReceiveItem) -JSL.l SetLibraryItem +JSL SetLibraryItem ;-------------------------------------------------------------------------------- org $068D1B ; <- 30D1B - sprite_prep.asm : 1414 - (JSL GetAnimatedSpriteTile.variable) -JSL.l LoadLibraryItemGFX +JSL LoadLibraryItemGFX ;-------------------------------------------------------------------------------- org $05FC9E ; <- 2FC9E - sprite_dash_item.asm : 138 - (JSL Sprite_PrepAndDrawSingleLargeLong) -JSL.l DrawLibraryItemGFX +JSL DrawLibraryItemGFX ;-------------------------------------------------------------------------------- org $068D0E ; <- 30D0E - sprite_prep.asm : 1401 - (LDA $7EF34E : BEQ .book_of_mudora) -JSL.l ItemCheck_Library +JSL ItemCheck_Library ;================================================================================ ; Inventory Updates ;-------------------------------------------------------------------------------- -org $0DDF38 ; <- 6DF38 - equipment.asm : 480 -JSL.l ProcessMenuButtons +org $8DDF38 ; <- 6DF38 - equipment.asm : 480 +JSL ProcessMenuButtons BCC _equipment_497 JMP.w _equipment_544 ResetEquipment: @@ -1066,78 +1053,78 @@ JSR.w RestoreNormalMenu ; (short) RTL NOP #3 -warnpc $0DDF49 -org $0DDF49 ; <- 6DF49 - equipment.asm : 497 +warnpc $8DDF49 +org $8DDF49 ; <- 6DF49 - equipment.asm : 497 _equipment_497: ; LDA $F4 : AND.b #$08 : BEQ .notPressingUp - NO BUTTON CAPTURE -org $0DDF88 ; <- 6DF88 - equipment.asm : 544 +org $8DDF88 ; <- 6DF88 - equipment.asm : 544 _equipment_544: ;-------------------------------------------------------------------------------- org $0DEB98 ; <- 6EB98 - equipment.asm : 1803 LDA.w #$3C60 : STA $FFBE, Y ORA.w #$8000 : STA $007E, Y ORA.w #$4000 : STA $0084, Y -JSL.l AddYMarker : NOP #2 +JSL AddYMarker : NOP #2 ;-------------------------------------------------------------------------------- org $0DF789+6 ; <- 6F789+6 (not in disassembly) - red bottle hud tile, lower right -dw #$2413 ; (Orig: #$24E3) +dw $2413 ; (Orig: #$24E3) org $0DF789+6+8 ; green bottle hud tile, lower right -dw #$3C12 ; (Orig: #$3CE3) +dw $3C12 ; (Orig: #$3CE3) org $0DF789+6+16 ; blue bottle hud tile, lower right -dw #$2C14 ; (Orig: #$2CD2) +dw $2C14 ; (Orig: #$2CD2) org $0DF789+6+40 ; good bee hud tile, lower right -dw #$2815 ; (Orig: #$283A) +dw $2815 ; (Orig: #$283A) org $0DF8A1+6 ; <- 6F8A1+6 (not in disassembly) - green mail tile, lower right -dw #$3C4B ; (Orig: #$7C78) +dw $3C4B ; (Orig: #$7C78) org $0DF8A1+6+8 ; blue mail tile tile, lower right -dw #$2C4F ; (Orig: #$6C78) +dw $2C4F ; (Orig: #$6C78) org $0DF8A1+6+16 ; red mail tile, lower right -dw #$242F ; (Orig: #$6478) +dw $242F ; (Orig: #$6478) ;-------------------------------------------------------------------------------- org $0DDE9F ; <- 6DE9F equipment.asm:300 - LDA.b #$0A : STA $0200 LDA.b #$04 ;-------------------------------------------------------------------------------- org $0DDE59 ; <- 6DE59 equipment.asm:247 - REP #$20 -JSL.l BringMenuDownEnhanced : RTS +JSL BringMenuDownEnhanced : RTS ;-------------------------------------------------------------------------------- org $0DDFBC ; <- 6DFBC equipment.asm:599 - LDA $EA : ADD.w #$0008 : STA $EA : SEP #$20 : BNE .notDoneScrolling -JSL.l RaiseHudMenu : NOP #3 +JSL RaiseHudMenu : NOP #3 ;-------------------------------------------------------------------------------- org $0DDE3D ; <- 6DE3D equipment.asm:217 - BNE .equippedItemIsntBottle db $80 ; BRA ;-------------------------------------------------------------------------------- org $0DDF9A ; <- 6DF9A - equipment.asm : 554 -JSL.l OpenBottleMenu : NOP +JSL OpenBottleMenu : NOP ;-------------------------------------------------------------------------------- org $0DE12D ; <- 6E12D - equipment.asm : 828 -JSL.l CloseBottleMenu +JSL CloseBottleMenu ;-------------------------------------------------------------------------------- org $0DDF1E ; <- 6DF1E - equipment.asm : 462 - LDA $F4 : AND.b #$10 : BEQ .dontLeaveMenu -JSL.l CheckCloseItemMenu +JSL CheckCloseItemMenu ;-------------------------------------------------------------------------------- org $0DEE70 ; <- 6EE70 - equipment.asm : 2137 -JSL.l PrepItemScreenBigKey : NOP +JSL PrepItemScreenBigKey : NOP ;-------------------------------------------------------------------------------- org $08D395 ; <- 45395 - ancilla_bird_travel_intro.asm : 253 -JSL.l UpgradeFlute : NOP #2 +JSL UpgradeFlute : NOP #2 ;-------------------------------------------------------------------------------- org $05E4D7 ; <- 2E4D7 - sprite_witch.asm : 213 -JSL.l RemoveMushroom : NOP #2 +JSL RemoveMushroom : NOP #2 ;-------------------------------------------------------------------------------- org $05F55F ; <- 2F55F - sprite_potion_shop.asm : 59 -JSL.l LoadPowder +JSL LoadPowder ;-------------------------------------------------------------------------------- org $05F681 ; <- 2F681 - sprite_potion_shop.asm : 234 -JSL.l DrawPowder : RTS +JSL DrawPowder : RTS NOP #8 ;-------------------------------------------------------------------------------- org $05F65D ; <- 2F65D - sprite_potion_shop.asm : 198 -JSL.l CollectPowder : NOP #5 +JSL CollectPowder : NOP #5 ;-------------------------------------------------------------------------------- org $05EE5F ; <- 2EE5F - sprite_mushroom.asm : 30 -JSL.l LoadMushroom : NOP +JSL LoadMushroom : NOP ;-------------------------------------------------------------------------------- org $05EE78 ; <- 2EE78 - sprite_mushroom.asm : 58 -JSL.l DrawMushroom +JSL DrawMushroom ;-------------------------------------------------------------------------------- org $05EE97 ; <- 2EE97 - sprite_mushroom.asm : 81 NOP #14 @@ -1145,47 +1132,47 @@ NOP #14 org $07A36F ; <- 3A36F - Bank07.asm : 5679 NOP #5 org $07A379 ; <- 3A379 - Bank07.asm : 5687 -JSL.l SpawnHauntedGroveItem +JSL SpawnHauntedGroveItem ;-------------------------------------------------------------------------------- -org $07A3A2 ; 3A3A2 - Bank07.asm : 5720 - JSL DiggingGameGuy_AttemptPrizeSpawn -JSL.l SpawnShovelItem +org $87A3A2 ; 3A3A2 - Bank07.asm : 5720 - JSL DiggingGameGuy_AttemptPrizeSpawn +JSL SpawnShovelItem BRA _Bank07_5726 -org $07A3AB ; 3A3AB - Bank07.asm : 5726 - LDA.b #$12 : JSR Player_DoSfx2 +org $87A3AB ; 3A3AB - Bank07.asm : 5726 - LDA.b #$12 : JSR Player_DoSfx2 _Bank07_5726: ;-------------------------------------------------------------------------------- org $079A0E ; 39A0E - Bank07.asm : 4117 - JSL HUD.RefreshIconLong -JSL.l Link_ReceiveItem_HUDRefresh +JSL Link_ReceiveItem_HUDRefresh ;================================================================================ ; Swordless Mode ;-------------------------------------------------------------------------------- org $07A49F ; <- 3A49F - Bank07.asm:5903 (LDA $7EF359 : INC A : AND.b #$FE : BEQ .cant_cast_play_sound) - Ether -JSL.l CheckMedallionSword +JSL CheckMedallionSword ;-------------------------------------------------------------------------------- org $07A574 ; <- 3A574 - Bank07.asm:6025 (LDA $7EF359 : INC A : AND.b #$FE : BEQ BRANCH_BETA) - Bombos -JSL.l CheckMedallionSword +JSL CheckMedallionSword ;-------------------------------------------------------------------------------- org $07A656 ; <- 3A656 - Bank07.asm:6133 (LDA $7EF359 : INC A : AND.b #$FE : BEQ BRANCH_BETA) - Quake -JSL.l CheckMedallionSword +JSL CheckMedallionSword ;-------------------------------------------------------------------------------- org $05F3A0 ; <- 2F3A0 - sprite_medallion_tablet.asm:240 (LDA $7EF359 : BMI .zeta) -JSL.l CheckTabletSword +JSL CheckTabletSword ;-------------------------------------------------------------------------------- org $05F40A ; <- 2F40A - sprite_medallion_tablet.asm:303 (LDA $7EF359 : BMI .show_hylian_script) -JSL.l CheckTabletSword +JSL CheckTabletSword ;-------------------------------------------------------------------------------- org $1DF086 ; <- EF086 - sprite_evil_barrier.asm:303 (LDA $7EF359 : CMP.b #$02 : BCS .anozap_from_player_attack) -JSL.l GetSwordLevelForEvilBarrier +JSL GetSwordLevelForEvilBarrier ;-------------------------------------------------------------------------------- ;================================================================================ ; Medallion Tablets ;-------------------------------------------------------------------------------- org $05F274 ; <- 2F274 -JSL.l ItemCheck_BombosTablet +JSL ItemCheck_BombosTablet ;-------------------------------------------------------------------------------- org $05F285 ; <- 2F285 -JSL.l ItemCheck_EtherTablet +JSL ItemCheck_EtherTablet ;-------------------------------------------------------------------------------- org $07859F ; <- 3859F - Bank07.asm : 965 (JSL AddPendantOrCrystal) JSL SpawnTabletItem @@ -1199,23 +1186,23 @@ JSL CheckTabletItem : NOP #2 ; Medallion Entrances ;-------------------------------------------------------------------------------- org $08B504 ; <- 43504 - ancilla_bombos_spell.asm : 671 -JSL.l MedallionTrigger_Bombos : NOP +JSL MedallionTrigger_Bombos : NOP ;-------------------------------------------------------------------------------- -org $08ACC8 ; <- 42CC8 - ancilla_ether_spell.asm : 350 -JSL.l MedallionTrigger_Ether +org $88ACC8 ; <- 42CC8 - ancilla_ether_spell.asm : 350 +JSL MedallionTrigger_Ether JMP _ancilla_ether_spell_363 -warnpc $08ACE6 -org $08ACE6 ; <- 42CE6 - ancilla_quake_spell.asm : 363 +warnpc $88ACE6 +org $88ACE6 ; <- 42CE6 - ancilla_quake_spell.asm : 363 _ancilla_ether_spell_363: ;-------------------------------------------------------------------------------- -org $08B6EA ; <- 436EA - ancilla_quake_spell.asm : 67 -JSL.l MedallionTrigger_Quake +org $88B6EA ; <- 436EA - ancilla_quake_spell.asm : 67 +JSL MedallionTrigger_Quake JMP _ancilla_quake_spell_83 Ancilla_CheckIfEntranceTriggered: JSR $F856 RTL -warnpc $08B708 -org $08B708 ; <- 43708 - ancilla_quake_spell.asm : 83 +warnpc $88B708 +org $88B708 ; <- 43708 - ancilla_quake_spell.asm : 83 _ancilla_quake_spell_83: ;================================================================================ @@ -1232,10 +1219,10 @@ BNE + ; Big & Great Fairies ;-------------------------------------------------------------------------------- org $1DC475 ; <- EC475 - sprite_big_fairie.asm : 70 (LDA.w #$00A0 : ADD $7EF372 : STA $7EF372) -JSL.l RefillHealthPlusMagic : NOP #8 +JSL RefillHealthPlusMagic : NOP #8 org $1DC489 ; <- EC489 - sprite_big_fairie.asm : 88 (LDA $7EF36D : CMP $7EF36C : BNE .player_hp_not_full_yet) -NOP #4 : JSL.l CheckFullHealth +NOP #4 : JSL CheckFullHealth ;-------------------------------------------------------------------------------- ;================================================================================ @@ -1245,14 +1232,14 @@ org $1DFD9E ; <- EFD9E - sprite_diggin_guy.asm : 307 NOP #8 ;-------------------------------------------------------------------------------- org $1DFD67 ; <- EFD67 - sprite_diggin_guy.asm : 242 -JSL.l RigDigRNG +JSL RigDigRNG ;-------------------------------------------------------------------------------- org $01EE94 ; <- EE94 - Bank01.asm : 14121 -JSL.l RigChestRNG +JSL RigChestRNG org $01EEF5 ; <- EEF5 - Bank01.asm -JSL.l FixChestCounterForChestGame +JSL FixChestCounterForChestGame org $01EEFD ; <- EEFD - Bank01.asm -JSL.l FixChestCounterForChestGame +JSL FixChestCounterForChestGame ;-------------------------------------------------------------------------------- org $1ED63E ; <- F563E - sprite_agahnim.asm JSL RNG_Agahnim1 @@ -1264,117 +1251,117 @@ org $1D9488 ; <- E9488 - sprite_ganon.asm JSL RNG_Ganon ;-------------------------------------------------------------------------------- org $05A3F4 ; <- 2A3F4 - sprite_lanmola.asm : 112 (JSL GetRandomInt : AND.b #$07 : TAY) -JSL.l RNG_Lanmolas1 +JSL RNG_Lanmolas1 org $05A401 ; <- 2A401 - sprite_lanmola.asm : 116 (JSL GetRandomInt : AND.b #$07 : TAY) -JSL.l RNG_Lanmolas1 +JSL RNG_Lanmolas1 org $05A4FA ; <- 2A4FA - sprite_lanmola.asm : 241 (JSL GetRandomInt : AND.b #$07 : TAY) -JSL.l RNG_Lanmolas1 +JSL RNG_Lanmolas1 org $05A507 ; <- 2A507 - sprite_lanmola.asm : 245 (JSL GetRandomInt : AND.b #$07 : TAY) -JSL.l RNG_Lanmolas1 +JSL RNG_Lanmolas1 ;-------------------------------------------------------------------------------- org $1DD817 ; <- ED817 - sprite_giant_moldorm.asm : 187 (JSL GetRandomInt : AND.b #$02 : DEC A : STA $0EB0, X) -JSL.l RNG_Moldorm1 +JSL RNG_Moldorm1 org $1DD821 ; <- ED821 - sprite_giant_moldorm.asm : 189 (JSL GetRandomInt : AND.b #$1F : ADC.b #$20 : STA !timer_0, X) -JSL.l RNG_Moldorm1 +JSL RNG_Moldorm1 org $1DD832 ; <- ED832 - sprite_giant_moldorm.asm : 203 (JSL GetRandomInt : AND.b #$0F : ADC.b #$08 : STA !timer_0, X) -JSL.l RNG_Moldorm1 +JSL RNG_Moldorm1 ;-------------------------------------------------------------------------------- org $1E81A9 ; <- F01A9 - sprite_helmasaur_king.asm : 247 (JSL GetRandomInt : AND.b #$07 : TAY) -JSL.l RNG_Helmasaur +JSL RNG_Helmasaur org $1E8262 ; <- F0262 - sprite_helmasaur_king.asm : 373 (JSL GetRandomInt : AND.b #$01 : BEQ BRANCH_BETA) -JSL.l RNG_Helmasaur +JSL RNG_Helmasaur org $1DEEE1 ; <- EEEE1 - sprite_helmasaur_fireball.asm : 236 (JSL GetRandomInt : STA $0FB6) -JSL.l RNG_Helmasaur +JSL RNG_Helmasaur ;-------------------------------------------------------------------------------- org $1EB5F7 ; <- F35F7 - sprite_arrghus.asm : 328 (JSL GetRandomInt : AND.b #$3F : ADC.b #$30 : STA $0DF0, X) -JSL.l RNG_Arrghus +JSL RNG_Arrghus ;-------------------------------------------------------------------------------- org $1EBF4D ; <- F3F4D - sprite_mothula.asm : 180 (JSL GetRandomInt : AND.b #$07 : TAY) -JSL.l RNG_Mothula +JSL RNG_Mothula org $1EBF60 ; <- F3F60 - sprite_mothula.asm : 187 (JSL GetRandomInt : AND.b #$1F : ADC.b #$40 : STA $0DF0, X) -JSL.l RNG_Mothula +JSL RNG_Mothula org $1EBFBE ; <- F3FBE - sprite_mothula.asm : 261 (JSL GetRandomInt : AND.b #$1F : ORA.b #$40 : STA !beam_timer, X) -JSL.l RNG_Mothula +JSL RNG_Mothula org $1EC095 ; <- F4095 - sprite_mothula.asm : 373 (JSL GetRandomInt : AND.b #$1F : CMP #$1E : BCC .already_in_range) -JSL.l RNG_Mothula +JSL RNG_Mothula ;-------------------------------------------------------------------------------- org $1E957A ; <- F157A - sprite_kholdstare.asm : 209 (JSL GetRandomInt : AND.b #$3F : ADC.b #$20 : STA $0DF0, X) -JSL.l RNG_Kholdstare +JSL RNG_Kholdstare org $1E95F0 ; <- F15F0 - sprite_kholdstare.asm : 289 (JSL GetRandomInt : AND.b #$3F : ADC.b #$60 : STA $0DF0, X) -JSL.l RNG_Kholdstare +JSL RNG_Kholdstare org $1E95FB ; <- F15FB - sprite_kholdstare.asm : 291 (JSL GetRandomInt : PHA : AND.b #$03 : TAY) -JSL.l RNG_Kholdstare +JSL RNG_Kholdstare org $1E96C9 ; <- F16C9 - sprite_kholdstare.asm : 453 (JSL GetRandomInt : AND.b #$07 : TAY) -JSL.l RNG_Kholdstare +JSL RNG_Kholdstare org $1E96E5 ; <- F16E5 - sprite_kholdstare.asm : 458 (JSL GetRandomInt : AND.b #$07 : TAY) -JSL.l RNG_Kholdstare +JSL RNG_Kholdstare org $1E97D5 ; <- F17D5 - sprite_kholdstare.asm : 605 (JSL GetRandomInt : AND.b #$04 : STA $0D) -JSL.l RNG_Kholdstare +JSL RNG_Kholdstare ;-------------------------------------------------------------------------------- org $1DE5E4 ; <- EE5E4 - sprite_vitreous.asm : 207 (JSL GetRandomInt : AND.b #$0F : TAY) -JSL.l RNG_Vitreous +JSL RNG_Vitreous org $1DE626 ; <- EE626 - sprite_vitreous.asm : 255 (JSL GetRandomInt : AND.b #$07 : STA $0D90, Y) -JSL.l RNG_Vitreous +JSL RNG_Vitreous ;-------------------------------------------------------------------------------- org $1DB16C ; <- EB16C - sprite_trinexx.asm : 530 (JSL GetRandomInt : AND.b #$07 : TAY) -JSL.l RNG_Trinexx +JSL RNG_Trinexx org $1DB186 ; <- EB186 - sprite_trinexx.asm : 535 (JSL GetRandomInt : AND.b #$07 : TAY) -JSL.l RNG_Trinexx +JSL RNG_Trinexx org $1DB25E ; <- EB25E - sprite_trinexx.asm : 643 (JSL GetRandomInt : AND.b #$03 : TAY : CMP $00 : BEQ BRANCH_ALPHA) -JSL.l RNG_Trinexx +JSL RNG_Trinexx org $1DB28D ; <- EB28D - sprite_trinexx.asm : 661 (JSL GetRandomInt : AND.b #$03 : CMP.b #$01 : TYA : BCS BRANCH_GAMMA) -JSL.l RNG_Trinexx +JSL RNG_Trinexx org $1DB9B0 ; <- EB9B0 - sprite_sidenexx.asm : 165 (JSL GetRandomInt : AND.b #$07 : INC A : CMP.b #$05 : BCS BRANCH_ALPHA) -JSL.l RNG_Trinexx +JSL RNG_Trinexx org $1DB9CC ; <- EB9CC - sprite_sidenexx.asm : 175 (JSL GetRandomInt : LSR A : BCS BRANCH_ALPHA) -JSL.l RNG_Trinexx +JSL RNG_Trinexx org $1DBA5D ; <- EBA5D - sprite_sidenexx.asm : 270 (JSL GetRandomInt : AND.b #$0F : STA $0DF0, X) -JSL.l RNG_Trinexx +JSL RNG_Trinexx org $1DBAB1 ; <- EBAB1 - sprite_sidenexx.asm : 314 (JSL GetRandomInt : AND.b #$0F : LDY.b #$00 : SUB.b #$03) -JSL.l RNG_Trinexx +JSL RNG_Trinexx org $1DBAC3 ; <- EBAC3 - sprite_sidenexx.asm : 323 (JSL GetRandomInt : AND.b #$0F : ADD.b #$0C : STA $02 : STZ $03) -JSL.l RNG_Trinexx +JSL RNG_Trinexx ;-------------------------------------------------------------------------------- org $6F9B8 ; <- 379B8 - bank06.asm : 6693 (JSL GetRandomInt : PLY : AND $FA5C, Y : BNE BRANCH_MU) -JSL.l RNG_Enemy_Drops +JSL RNG_Enemy_Drops ;================================================================================ ; HUD Changes ;-------------------------------------------------------------------------------- -org $0DFC4C ; <- 6FC4C - headsup_display.asm : 836 (LDA $7EF36E : AND.w #$00FF : ADD.w #$0007 : AND.w #$FFF8 : TAX) -JML.l OnDrawHud : NOP #197 +org $8DFC4C ; <- 6FC4C - headsup_display.asm : 836 (LDA $7EF36E : AND.w #$00FF : ADD.w #$0007 : AND.w #$FFF8 : TAX) +JML OnDrawHud : NOP #197 ; why? it's not hurting anyone lol ReturnFromOnDrawHud: SEP #$30 LDX.b #$FF ; vanilla hud code ends with #$FF in X, and it's required for unknown reasons. -org $0DFC37 ; <- 6FC37 - headsup_display.asm : 828 (LDA.w #$28F7) -JSL.l DrawMagicHeader +org $8DFC37 ; <- 6FC37 - headsup_display.asm : 828 (LDA.w #$28F7) +JSL DrawMagicHeader BRA + : NOP #15 : + ;-------------------------------------------------------------------------------- org $0DFB29 ; <- headsup_display.asm : 688 (LDA.b #$86 : STA $7EC71E) -JSL.l DrawHUDArrows : BRA + +JSL DrawHUDArrows : BRA + NOP #18 + ;-------------------------------------------------------------------------------- org $01CF67 ; <- CF67 - Bank01.asm : 11625 (STA $7EF36F) -JSL.l DecrementSmallKeys +JSL DecrementSmallKeys ;-------------------------------------------------------------------------------- org $0DED04 ; <- 6ED04 - equipment.asm : 1963 (REP #$30) -JSL.l DrawHUDDungeonItems +JSL DrawHUDDungeonItems ;-------------------------------------------------------------------------------- ; Insert our version of the hud tilemap org $0DFA96 ; <- 6FA96 - headsup_display.asm : 626 (LDX.w #.hud_tilemap) LDX.w #HUD_TileMap org $0DFA9C ; <- 6FA9C - headsup_display.asm : 629 (MVN $0D, $7E ; $Transfer 0x014A bytes from $6FE77 -> $7EC700) -MVN $217E +MVN $A17E ;-------------------------------------------------------------------------------- org $0DFB1F ; 6FB1F - headsup_display.asm : 681 (LDA $7EF340 : BEQ .hastNoBow) -JSL.l CheckHUDSilverArrows +JSL CheckHUDSilverArrows ;================================================================================ ; 300 Rupee NPC ;-------------------------------------------------------------------------------- org $1EF060 ; <- F7060 - sprite_shopkeeper.asm:242 (INC $0D80, X) -JSL.l Set300RupeeNPCItem : NOP +JSL Set300RupeeNPCItem : NOP ;================================================================================ ; Tree Kid Fix @@ -1383,41 +1370,41 @@ org $06B12B ; <- 3312B - tree status set - 418 - LDA NpcFlagsVanilla : ORA.b #$0 LDA.l NpcFlagsVanilla : AND.b #$F7 : STA.l NpcFlagsVanilla ; unset arboration instead of setting it ;-------------------------------------------------------------------------------- org $06B072 ; <- 33072 - FluteAardvark_InitialStateFromFluteState - 418 : dw FluteAardvark_AlreadyArborated -db #$8B +dw $06B08B ;================================================================================ ;================================================================================ ; Glitched Mode Fixes ;-------------------------------------------------------------------------------- org $0691AC ; <- 311AC - sprite_prep.asm:2453 (LDY $0FFF) -JSL.l GetAgahnimPalette : NOP #2 +JSL GetAgahnimPalette : NOP #2 ;-------------------------------------------------------------------------------- org $06F0DD ; <- 370DD - Bank06.asm:5399 (STA $0BA0, X) -JSL.l GetAgahnimDeath : NOP #2 +JSL GetAgahnimDeath : NOP #2 ;-------------------------------------------------------------------------------- org $1ED4E6 ; <- F54E6 - sprite_agahnim.asm:314 (LDY $0FFF) -JSL.l GetAgahnimType : NOP #2 +JSL GetAgahnimType : NOP #2 ;-------------------------------------------------------------------------------- -org $1ED577 ; <- F5577 - sprite_agahnim.asm:418 (PHX) -JML.l GetAgahnimSlot +org $9ED577 ; <- F5577 - sprite_agahnim.asm:418 (PHX) +JML GetAgahnimSlot GetAgahnimSlotReturn: ;-------------------------------------------------------------------------------- org $1ED678 ; <- F5678 - sprite_agahnim.asm:587 (INC $0E30, X) -NOP #2 : JSL.l GetAgahnimLightning +NOP #2 : JSL GetAgahnimLightning ;-------------------------------------------------------------------------------- org $0287E0 ; <- 107E0 - Bnak02.asm:1507 (LDA $0112 : ORA $02E4 : ORA $0FFC : BEQ .allowJoypadInput) -JSL.l AllowJoypadInput : NOP #5 +JSL AllowJoypadInput : BRA ++ : NOP #3 : ++ ;================================================================================ ; Half Magic Bat ;-------------------------------------------------------------------------------- org $05FBD3 ; <- 2FBD3 - sprite_mad_batter.asm:209 - (STA $7EF37B) -JSL.l GetMagicBatItem +JSL GetMagicBatItem ;================================================================================ ; MSU Music ;-------------------------------------------------------------------------------- -org $0080D7 ; <- D7 - Bank00.asm:172 (SEP #$30) +org $8080D7 ; <- D7 - Bank00.asm:172 (SEP #$30) JML MSUMain : NOP SPCContinue: @@ -1430,28 +1417,28 @@ JSL SpiralStairsPostCheck org $02D6E8 ; <- 9C0A01 - Bank02.asm:10811 (STZ $010A) NOP #3 -org $08C421 ; <- AD4021 F005 - ancilla_receive_item.asm:108 (LDA $2140 : BEQ .wait_for_music) +org $88C421 ; <- AD4021 F005 - ancilla_receive_item.asm:108 (LDA $2140 : BEQ .wait_for_music) JML PendantFanfareWait : NOP PendantFanfareContinue: -org $08C42B +org $88C42B PendantFanfareDone: -org $08C62A ; <- AD4021 D008 - ancilla_receive_item.asm:442 (LDA $2140 : BNE .waitForSilence) +org $88C62A ; <- AD4021 D008 - ancilla_receive_item.asm:442 (LDA $2140 : BNE .waitForSilence) JML CrystalFanfareWait : NOP CrystalFanfareDone: -org $08C637 +org $88C637 CrystalFanfareContinue: org $0988A0 ; <- 8D2C01 8009 - ancilla_init.asm:1179 (STA $012C : BRA .doneWithSoundEffects) JML FanfarePreload : NOP org $09F2A7 ; <- 8F27C27E - module_death.asm:56 (STA $7EC227) -JSL.l StoreMusicOnDeath +JSL StoreMusicOnDeath org $0EE6EC ; <- E220 A922 - Bank0E.asm:2892 (SEP #$20 : LDA.b #$22 : STA $012C) -JSL.l EndingMusicWait +JSL EndingMusicWait ; Process music commands in NMI from new location after muting is processed org $0080DD @@ -1469,31 +1456,31 @@ dw MusicControl ;================================================================================ ; Replacement Shopkeeper ;-------------------------------------------------------------------------------- -org $068BEB ; <- 30BEB - sprite_prep.asm:1125 - (INC $0BA0, X) -JSL.l SpritePrep_ShopKeeper : RTS : NOP +org $868BEB ; <- 30BEB - sprite_prep.asm:1125 - (INC $0BA0, X) +JSL SpritePrep_ShopKeeper : RTS : NOP ShopkeeperFinishInit: ;-------------------------------------------------------------------------------- -org $1EEEE3 ; <- F6EE3 - sprite_shopkeeper.asm:7 - (LDA $0E80, X) -JSL.l Sprite_ShopKeeper : RTS : NOP +org $9EEEE3 ; <- F6EE3 - sprite_shopkeeper.asm:7 - (LDA $0E80, X) +JSL Sprite_ShopKeeper : RTS : NOP ShopkeeperJumpTable: ;================================================================================ ; Tile Target Loader ;-------------------------------------------------------------------------------- org $00D55E ; <- 555E - Bank00.asm:3491 (LDX.w #$2D40) -JSL.l LoadModifiedTileBufferAddress : NOP #2 +JSL LoadModifiedTileBufferAddress : NOP #2 ;================================================================================ ; Permabunny Fix ;-------------------------------------------------------------------------------- org $078F32 ; <- 38F32 - Bank07.asm:2420 - (LDA $7EF357) -JSL.l DecideIfBunny ; for bunny beams +JSL DecideIfBunny ; for bunny beams ;================================================================================ ; Other bunny Fixes ;-------------------------------------------------------------------------------- org $029E7C; <- 11E7C - module_ganon_emerges.asm:127 - (LDA.b #$09 : STA $012C) -JSL.l FixAga2Bunny : NOP +JSL FixAga2Bunny : NOP ;================================================================================ ; Open Mode Fixes @@ -1502,68 +1489,68 @@ org $05DF65 ; <- 2DF65 - sprite_uncle_and_priest.asm:994 - (LDA.b #$01 : STA $7E NOP #6 ;-------------------------------------------------------------------------------- org $05EDDF ; <- 2EDDF - sprite_zelda.asm:398 - (LDA.b #$02 : STA $7EF3C5) -JSL.l EndRainState : NOP #2 +JSL EndRainState : NOP #2 ;-------------------------------------------------------------------------------- org $05DF49 ; <- 2DF49 - sprite_uncle_and_priest.asm:984 - (JSL Link_ReceiveItem) -JSL.l OnUncleItemGet +JSL OnUncleItemGet ;================================================================================ ; Generic Keys ;-------------------------------------------------------------------------------- org $028157 ; <- 10157 - Bank02.asm:381 - (LDA $040C : CMP.b #$FF : BEQ .notPalace) -JSL.l CheckKeys : NOP +JSL CheckKeys : NOP ;-------------------------------------------------------------------------------- org $028166 ; <- 10166 - Bank02.asm:396 - (LDA $7EF37C, X) -JSL.l LoadKeys +JSL LoadKeys ;-------------------------------------------------------------------------------- org $029A31 ; <- 11A31 - Bank02.asm:4785 - (LDA $7EF37C, X) -JSL.l LoadKeys +JSL LoadKeys ;-------------------------------------------------------------------------------- org $02A0D1 ; <- 120D1 - Bank02.asm:5841 - (STA $7EF37C, X) -JSL.l SaveKeys +JSL SaveKeys ;-------------------------------------------------------------------------------- org $09F584 ; <- 4F584 - module_death.asm:447 - (STA $7EF37C, X) -JSL.l SaveKeys +JSL SaveKeys ;-------------------------------------------------------------------------------- org $0282EC ; <- 102EC - Bank02.asm:650 - (STA $7EF36F) -JSL.l ClearOWKeys +JSL ClearOWKeys ;-------------------------------------------------------------------------------- org $0DFA80 ; <- 6FA80 : headsup_display.asm:596 - (LDA.b #$00 : STA $7EC017) -JSL.l HUDRebuildIndoor : NOP #4 +JSL HUDRebuildIndoor : NOP #4 ;-------------------------------------------------------------------------------- org $029A35 ; <- 11A35 : Bank02.asm:4789 - (JSL HUD.RebuildIndoor.palace) -JSL.l HUDRebuildIndoorHole +JSL HUDRebuildIndoorHole ;================================================================================ ; Pendant / Crystal Fixes ;-------------------------------------------------------------------------------- ;================================================================================ org $098BB0 ; <- 048BB0 - ancilla_init.asm:1663 - (STX $02D8 : JSR AddAncilla) -JSL.l TryToSpawnCrystalUntilSuccess : NOP +JSL TryToSpawnCrystalUntilSuccess : NOP org $01C74B ; <- 00C74B - bank01.asm:10368 - (STZ $AE, X) NOP #2 ; this STZ is what makes the crystal never spawn if it fails to spawn on the first try ;================================================================================ org $0DE9C8 ; <- 6E9C8 - equipment.asm:1623 - (LDA $7EF3C5 : CMP.b #$03 : BCC .beforeAgahnim) -JSL.l DrawPendantCrystalDiagram : RTS +JSL DrawPendantCrystalDiagram : RTS ;================================================================================ org $0DEDCC ; <- 6EDCC - equipment.asm:2043 - (LDA $040C : AND.w #$00FF : CMP.w #$00FF : BNE .inSpecificDungeon) -JSL.l ShowDungeonItems : NOP #5 +JSL ShowDungeonItems : NOP #5 org $0DEE59 ; <- 6EE59 - equipment.asm:2126 - (LDA $040C : AND.w #$00FF : CMP.w #$00FF : BEQ .notInPalace) -JSL.l ShowDungeonItems : NOP #5 +JSL ShowDungeonItems : NOP #5 org $0DEE8A ; <- 6EE8A - equipment.asm:2151 - (LDA $040C : AND.w #$00FF : CMP.w #$00FF : BEQ .notInPalaceAgain) -JSL.l ShowDungeonItems : NOP #5 +JSL ShowDungeonItems : NOP #5 org $0DEF3B ; <- 6EF3B - equipment.asm:2290 - (LDA $040C : AND.w #$00FF : CMP.w #$00FF : BEQ .notInPalace) -JSL.l ShowDungeonItems : NOP #5 +JSL ShowDungeonItems : NOP #5 ;================================================================================ org $00F97E ; <- 797E - Bank00.asm:8586 - (LDA $7EF3CA : EOR.b #$40 : STA $7EF3CA) -JSL.l FlipLWDWFlag : NOP #6 +JSL FlipLWDWFlag : NOP #6 ;================================================================================ org $02B15C ; <- 1315C - Bank02.asm:7672 - (LDA $7EF3CA : EOR.b #$40 : STA $7EF3CA) -JSL.l IncrementOWMirror -JSL.l FlipLWDWFlag : NOP #2 +JSL IncrementOWMirror +JSL FlipLWDWFlag : NOP #2 ;================================================================================ ;Clear level to open doors org $01C50D ; 0xC50D - Bank01.asm:10032 - (LDA $7EF3CA : BNE .inDarkWorld) @@ -1574,78 +1561,49 @@ org $01C715 ; <- C715 - Bank01.asm:10358 - (LDA $7EF3CA : BNE .inDarkWorld) LDA CrystalPendantFlags_2, X ;================================================================================ org $0AC5BB ; < 545BB - Bank0A.asm:1856 - (LDA $7EF3C7 : CMP.b #$03 : BNE .fail) -JSL.l OverworldMap_CheckObject : RTS +JSL OverworldMap_CheckObject : RTS org $0AC5D8 ; < 545D8 - Bank0A.asm:1885 - (LDA $7EF3C7 : CMP.b #$07 : BNE OverworldMap_CheckPendant_fail) -JSL.l OverworldMap_CheckObject : RTS +JSL OverworldMap_CheckObject : RTS ;================================================================================ -org $0AC53e ; <- 5453E - Bank0A.asm:1771 - (LDA $0AC50D, X : STA $0D) -JSL.l GetCrystalNumber +org $0AC53E ; <- 5453E - Bank0A.asm:1771 - (LDA $0AC50D, X : STA $0D) +JSL GetCrystalNumber ;================================================================================ ; EVERY INSTANCE OF STA $7EF3C7 IN THE ENTIRE CODEBASE -org $029D51 ; <- 11D51 -JSL.l SetLWDWMap -org $0589BB ; <- 289BB -JSL.l SetLWDWMap -org $05DD9A ; <- 2DD9A -JSL.l SetLWDWMap +org $029D51 : JSL SetLWDWMap +org $0589BB : JSL SetLWDWMap +org $05DD9A : JSL SetLWDWMap -org $05F1F6 ; <- 2F1F6 -JSL.l SetLWDWMap -org $05F209 ; <- 2F209 -JSL.l SetLWDWMap -org $05FF91 ; <- 2FF91 -JSL.l SetLWDWMap +org $05F1F6 : JSL SetLWDWMap +org $05F209 : JSL SetLWDWMap +org $05FF91 : JSL SetLWDWMap -org $098687 ; <- 48687 -JSL.l SetLWDWMap -org $1ECEDD ; <- F4EDD -JSL.l SetLWDWMap -org $1ECF0D ; <- F4F0D -JSL.l SetLWDWMap +org $098687 : JSL SetLWDWMap +org $1ECEDD : JSL SetLWDWMap +org $1ECF0D : JSL SetLWDWMap ;================================================================================ ; EVERY INSTANCE OF LDA $7EF3C7 IN THE ENTIRE CODEBASE -org $05DDFE ; <- 2DDFE -JSL.l GetMapMode -org $05EE25 ; <- 2EE25 -JSL.l GetMapMode -org $05F17D ; <- 2F17D -JSL.l GetMapMode -org $05FF7D ; <- 2FF7D -JSL.l GetMapMode +org $05DDFE : JSL GetMapMode +org $05EE25 : JSL GetMapMode +org $05F17D : JSL GetMapMode +org $05FF7D : JSL GetMapMode -org $0AC01A ; <- 5401A -JSL.l GetMapMode -org $0AC037 ; <- 54037 -JSL.l GetMapMode -org $0AC079 ; <- 54079 -JSL.l GetMapMode -org $0AC0B8 ; <- 540B8 x -JSL.l GetMapMode -org $0AC0F8 ; <- 540F8 -JSL.l GetMapMode -org $0AC137 ; <- 54137 -JSL.l GetMapMode -org $0AC179 ; <- 54179 -JSL.l GetMapMode -org $0AC1B3 ; <- 541B3 -JSL.l GetMapMode -org $0AC1F5 ; <- 541F5 -JSL.l GetMapMode -org $0AC22F ; <- 5422F -JSL.l GetMapMode -org $0AC271 ; <- 54271 -JSL.l GetMapMode -org $0AC2AB ; <- 542AB -JSL.l GetMapMode -org $0AC2ED ; <- 542ED -JSL.l GetMapMode -org $0AC327 ; <- 54327 -JSL.l GetMapMode -org $0AC369 ; <- 54369 -JSL.l GetMapMode +org $0AC01A : JSL GetMapMode +org $0AC037 : JSL GetMapMode +org $0AC079 : JSL GetMapMode +org $0AC0B8 : JSL GetMapMode +org $0AC0F8 : JSL GetMapMode +org $0AC137 : JSL GetMapMode +org $0AC179 : JSL GetMapMode +org $0AC1B3 : JSL GetMapMode +org $0AC1F5 : JSL GetMapMode +org $0AC22F : JSL GetMapMode +org $0AC271 : JSL GetMapMode +org $0AC2AB : JSL GetMapMode +org $0AC2ED : JSL GetMapMode +org $0AC327 : JSL GetMapMode +org $0AC369 : JSL GetMapMode -org $0DC849 ; <- 6C849 -JSL.l GetMapMode +org $0DC849 : JSL GetMapMode ;================================================================================ org $0AC012 ; <- 54012 - Bank0A.asm:1039 (LDA $7EF2DB : AND.b #$20 : BNE BRANCH_DELTA) NOP #8 @@ -1668,37 +1626,37 @@ NOP #6 ; remove crystal room cutscene check that causes softlocks ; Text Changes ;-------------------------------------------------------------------------------- org $06C7BB ; <- 347BB - sprite_ponds.asm:702 (JSL Sprite_ShowMessageFromPlayerContact : BCC BRANCH_ALPHA) -JSL.l FairyPond_Init +JSL FairyPond_Init ;-------------------------------------------------------------------------------- org $1D92EC ; <- E92EC - sprite_ganon.asm:947 (JSL Sprite_ShowMessageMinimal) -JSL.l DialogGanon1 +JSL DialogGanon1 ;-------------------------------------------------------------------------------- org $1D9078 ; <- E9078 - sprite_ganon.asm:552 (LDA.b #$70 : STA $1CF0) -JSL.l DialogGanon2 : RTS +JSL DialogGanon2 : RTS ;-------------------------------------------------------------------------------- ;-- Convert Capitalism fairy to shop org $06C4BD ; <- 34C4BD - sprite_ponds.asm:107 (LDA $A0 : CMP.b #$15 : BEQ Sprite_HappinessPond) -JSL.l HappinessPond_Check +JSL HappinessPond_Check ;-------------------------------------------------------------------------------- ;-- Sahasrahla (no green pendant) org $05F16C ; <- 2F16C sprite_elder.asm:137 (JSL Sprite_ShowSolicitedMessageIfPlayerFacing) -JSL.l Sprite_ShowSolicitedMessageIfPlayerFacing_Alt +JSL Sprite_ShowSolicitedMessageIfPlayerFacing_Alt ;-------------------------------------------------------------------------------- ;-- Sahasrahla (have boots) org $05F1A8 ; <- 2F1A8 sprite_elder.asm:170 (JSL Sprite_ShowSolicitedMessageIfPlayerFacing) -JSL.l Sprite_ShowSolicitedMessageIfPlayerFacing_Alt +JSL Sprite_ShowSolicitedMessageIfPlayerFacing_Alt ;-------------------------------------------------------------------------------- ;-- Sahasrahla (have boots, have ice rod) org $05F1BC ; <- 2F1BC sprite_elder.asm:182 (JSL Sprite_ShowSolicitedMessageIfPlayerFacing) -JSL.l Sprite_ShowSolicitedMessageIfPlayerFacing_Alt +JSL Sprite_ShowSolicitedMessageIfPlayerFacing_Alt ;-------------------------------------------------------------------------------- ;-- Sahasrahla (have boots, have ice rod, have 3 pendants) org $05F1CE ; <- 2F1CE sprite_elder.asm:194 (JSL Sprite_ShowSolicitedMessageIfPlayerFacing) -JSL.l Sprite_ShowSolicitedMessageIfPlayerFacing_Alt +JSL Sprite_ShowSolicitedMessageIfPlayerFacing_Alt ;-------------------------------------------------------------------------------- ;-- Sahasrahla (have boots, have ice rod, have 3 pendants, have master sword) org $05F1D8 ; <- 2F1D8 sprite_elder.asm:204 (JSL Sprite_ShowSolicitedMessageIfPlayerFacing) -JSL.l Sprite_ShowSolicitedMessageIfPlayerFacing_Alt +JSL Sprite_ShowSolicitedMessageIfPlayerFacing_Alt ;---------------------------------------------------------- ;-- Bomb shop guy (talking to him before and after big bomb is available) org $1EE181 ; <- F6181 sprite_bomb_shop_entity.asm : 85 (JSL Sprite_ShowSolicitedMessageIfPlayerFacing) @@ -1706,34 +1664,34 @@ JSL Sprite_ShowSolicitedMessageIfPlayerFacing_Alt ;---------------------------------------------------- ;-- Bombos tablet org $05F3BF ; <- 2F3BF sprite_medallion_tablet.asm : 254 (JSL Sprite_ShowMessageUnconditional) -JSL.l DialogBombosTablet +JSL DialogBombosTablet ;---------------------------------------------------- ;-- Ether tablet org $05F429 ; <- 2F429 sprite_medallion_tablet.asm : 317 (JSL Sprite_ShowMessageUnconditional) -JSL.l DialogEtherTablet +JSL DialogEtherTablet ;---------------------------------------------------- ;-- Thrown fish (move to different text ID) org $1D82B2 ; <- 0xE82B2 low byte of message -db #$8F +db $8F ;================================================================================ ;================================================================================ ; Text Removal ;-------------------------------------------------------------------------------- -org $05FA8E +org $85FA8E Sprite_ShowMessageMinimal: -JML.l Sprite_ShowMessageMinimal_Alt +JML Sprite_ShowMessageMinimal_Alt ;-------------------------------------------------------------------------------- -org $07b0cc ; <- 3b0d0 - Bank 07.asm : 7767 (JSL Main_ShowTextMessage) -JSL.l Main_ShowTextMessage_Alt +org $87B0CC ; <- 3b0d0 - Bank 07.asm : 7767 (JSL Main_ShowTextMessage) +JSL Main_ShowTextMessage_Alt ;-------------------------------------------------------------------------------- -org $08c5fe ; <- 445FE - ancilla_receive_item.asm : 408 (JSL Main_ShowTextMessage) -JSL.l Main_ShowTextMessage_Alt +org $88C5FE ; <- 445FE - ancilla_receive_item.asm : 408 (JSL Main_ShowTextMessage) +JSL Main_ShowTextMessage_Alt ;-------------------------------------------------------------------------------- -org $05E21F ; <- 2E21F - Bank05.asm : 2691 (STZ $0223) -JSL.l Sprite_ShowMessageMinimal_Alt +org $85E21F ; <- 2E21F - Bank05.asm : 2691 (STZ $0223) +JSL Sprite_ShowMessageMinimal_Alt BRA Sprite_ShowMessageUnconditional_Rest -org $05E232 ; <- 2E232 - Bank05.asm : 2700 (PHX) +org $85E232 ; <- 2E232 - Bank05.asm : 2700 (PHX) Sprite_ShowMessageUnconditional_Rest: ;-------------------------------------------------------------------------------- ;-- Music restarting at zelda fix @@ -1741,19 +1699,19 @@ org $05ED10 ; <- 2ED10 - sprite_zelda.asm : 233 - (LDA.b #$19 : STA $012C) NOP #5 ;-------------------------------------------------------------------------------- org $1ECE47 ; <- F4E47 - sprite_crystal_maiden.asm : 220 -JML.l MaidenCrystalScript +JML MaidenCrystalScript ;-------------------------------------------------------------------------------- org $1ECCEB ; <- F4CEB - sprite_crystal_maiden.asm : 25 ; skip all palette nonsense -JML.l SkipCrystalPalette -org $1ECD39 +JML SkipCrystalPalette +org $9ECD39 SkipCrystalPalette: ;-------------------------------------------------------------------------------- org $08C3FD ; <- 443FD - ancilla_receive_item.asm : 89 BRA + : NOP #4 : + ;-------------------------------------------------------------------------------- org $08C5E5 ; <- 445ED - ancilla_receive_item.asm:395 (LDA .item_messages, Y : CMP.w #$FFFF : BEQ .handleGraphics) -JSL.l DialogItemReceive : NOP #2 -org $08C301 ; <- 44301 - ancilla_receive_item.asm:8 (.item_messages) +JSL DialogItemReceive : NOP #2 +org $88C301 ; <- 44301 - ancilla_receive_item.asm:8 (.item_messages) Ancilla_ReceiveItem_item_messages: ;---------------------------------------------------------- ;-- Shopkeepers @@ -1762,11 +1720,11 @@ NOP #4 ;Just remove the rapid terminate call ;-------------------------------------------------------------------------------- ;-- Reset Dialog Selection index for each new message org $0EEE5D ; <- 76E5D - vwf.asm:84 (JSL Attract_DecompressStoryGfx) -JSL.l DialogResetSelectionIndex +JSL DialogResetSelectionIndex ;---------------------------------------------------- ;-- Agahnim 1 Defeated org $068475 ; <- 30475 Bank06.asm : 762 - (JSL Sprite_ShowMessageMinimal) -JSL.l AddInventory_incrementBossSwordLong +JSL AddInventory_incrementBossSwordLong ;---------------------------------------------------------- ;-- We'll take your sword org $06B4F3 ; <- 334F3 sprite_smithy_bros.asm : 556 (JSL Sprite_ShowMessageUnconditional) @@ -1792,21 +1750,21 @@ dw $1520, $167C, $0001, $0122, $00F0 ; Blind (maiden) "don't take me outside!" dw $05AC, $04FC, $0001, $0027, $00F0 ; Zelda in the water room ;---------------------------------------------------------- ;-- New Sign table offet calculation -org $07b4fe ; <- 3b4fe - bank07.asm : 8454 (LDA $8A : ASL A : TAY) +org $07B4FE ; <- 3b4fe - bank07.asm : 8454 (LDA $8A : ASL A : TAY) JSL CalculateSignIndex ;================================================================================ ; Dark World Spawn Location Fix & Follower Fixes ;-------------------------------------------------------------------------------- org $00894A ; <- 94A -PHB : JSL.l DarkWorldSaveFix +PHB : JSL DarkWorldSaveFix ;-------------------------------------------------------------------------------- org $028046 ; <- 10046 - Bank02.asm : 217 (JSL EnableForceBlank) (Start of Module_LoadFile) -JSL.l OnFileLoad +JSL OnFileLoad ;-------------------------------------------------------------------------------- org $09F520 ; <- 4F520 - module_death.asm : 401 (LDA $7EF3C5 : CMP.b #$03 : BCS BRANCH_THETA) -JSL.l OnPlayerDead -JSL.l IncrementDeathCounter : NOP #6 +JSL OnPlayerDead +JSL IncrementDeathCounter : NOP #6 ;-------------------------------------------------------------------------------- org $1ED379 ; <- F5379 - sprite_agahnim.asm:75 - JSL PrepDungeonExit JSL FixAgahnimFollowers @@ -1816,150 +1774,150 @@ JSL FixAgahnimFollowers ; Randomize NPC Items ;-------------------------------------------------------------------------------- org $028823 ; <- 10823 - Bank02.asm:1560 (LDA $7EF3C5 : BEQ .ignoreInput) -JSL.l AllowSQ +JSL AllowSQ ;-------------------------------------------------------------------------------- org $08C45F ; <- 4445F - ancilla_recieve_item.asm:157 (STZ $02E9) -JSL.l PostItemAnimation : NOP #2 +JSL PostItemAnimation : NOP #2 ;-------------------------------------------------------------------------------- org $1EE90A ; <- F690A -JSL.l ItemCheck_OldMan : NOP #2 +JSL ItemCheck_OldMan : NOP #2 ;-------------------------------------------------------------------------------- org $0280F2 ; <- 100F2 -JSL.l ItemCheck_OldMan : NOP #2 +JSL ItemCheck_OldMan : NOP #2 ;-------------------------------------------------------------------------------- org $1EE9FE ; <- F69FE -JSL.l ItemSet_OldMan +JSL ItemSet_OldMan ;-------------------------------------------------------------------------------- org $068F16 ; <- 30F16 -JSL.l ItemCheck_ZoraKing +JSL ItemCheck_ZoraKing ;-------------------------------------------------------------------------------- org $059ACA ; <- 29ACA -JSL $1DE1AA ; Sprite_SpawnFlippersItem +JSL $9DE1AA ; Sprite_SpawnFlippersItem ;-------------------------------------------------------------------------------- org $1DE1E4 ; <- EE1E4 - sprite_great_catfish.asm : 489 -JSL.l LoadZoraKingItemGFX : NOP #2 +JSL LoadZoraKingItemGFX : NOP #2 ;-------------------------------------------------------------------------------- org $068D86 ; <- 30D86 -JSL.l ItemCheck_SickKid +JSL ItemCheck_SickKid ;-------------------------------------------------------------------------------- org $06B9D4 ; <- 339D4 - sprite_bug_net_kid.asm : 111 (JSL Link_ReceiveItem) -JSL.l ItemSet_SickKid +JSL ItemSet_SickKid ;-------------------------------------------------------------------------------- org $068BAC ; <- 30BAC - SpritePrep_FluteBoy : 1068 -JSL.l ItemCheck_TreeKid2 +JSL ItemCheck_TreeKid2 org $06908D ; <- 3108D - SpritePrep_FluteBoy : 2175 -JSL.l ItemCheck_TreeKid : CMP.b #$08 : BEQ $0A +JSL ItemCheck_TreeKid : CMP.b #$08 : BEQ $0A org $069095 ; <- 31095 - SpritePrep_FluteBoy : 2177 -JSL.l ItemCheck_TreeKid : CMP.b #$08 +JSL ItemCheck_TreeKid : CMP.b #$08 org $0690BD ; <- 310BD - SpritePrep_FluteBoy : 2202 -JSL.l ItemCheck_TreeKid2 +JSL ItemCheck_TreeKid2 org $06AF9B ; <- 32F9B - FluteBoy_Chillin : 73 : LDA $7EF34C : CMP.b #$02 : BCS .player_has_flute LDA HasGroveItem : AND.b #$01 -db #$D0 ; BNE +db $D0 ; BNE org $06B062 ; <- 33062 - FluteAardvark_InitialStateFromFluteState : 225 : LDA $7EF34C : AND.b #$03 : !BGE #$05 -JSL.l ItemCheck_TreeKid2 : NOP #$02 ; remove pointless AND +JSL ItemCheck_TreeKid2 : NOP #$02 ; remove pointless AND org $06B048 ; <- 33048 -JSL.l ItemCheck_TreeKid3 +JSL ItemCheck_TreeKid3 -org $06AF59 ; <- 32F59 - sprite_flute_boy.asm : 36 (LDA $0D80, X : CMP.b #$03 : BEQ .invisible) -JML.l FluteBoy +org $86AF59 ; <- 32F59 - sprite_flute_boy.asm : 36 (LDA $0D80, X : CMP.b #$03 : BEQ .invisible) +JML FluteBoy FluteBoy_Abort: RTS FluteBoy_Continue: ;-------------------------------------------------------------------------------- org $06B0C9 ; <- 330C9 -JSL.l ItemSet_TreeKid +JSL ItemSet_TreeKid ;-------------------------------------------------------------------------------- org $05F177 ; <- 2F177 -JSL.l ItemCheck_Sahasrala +JSL ItemCheck_Sahasrala ;-------------------------------------------------------------------------------- org $05F200 ; <- 2F200 -JSL.l ItemSet_Sahasrala +JSL ItemSet_Sahasrala ;-------------------------------------------------------------------------------- org $1DE102 ; <- EE102 -JSL.l ItemCheck_Catfish +JSL ItemCheck_Catfish org $1DE11C ; <- EE11C -JSL.l ItemCheck_Catfish +JSL ItemCheck_Catfish ;-------------------------------------------------------------------------------- org $1DE1A1 ; <- EE1A1 - sprite_great_catfish.asm : 445 -JSL.l LoadCatfishItemGFX : NOP #2 +JSL LoadCatfishItemGFX : NOP #2 ;-------------------------------------------------------------------------------- org $1DDF49 ; <- EDF49 - sprite_great_catfish.asm : 19 -JML.l JumpToSplashItemTarget : NOP -org $1DDF4E ; <- EDF4E - sprite_great_catfish.asm : 21 +JML JumpToSplashItemTarget : NOP +org $9DDF4E ; <- EDF4E - sprite_great_catfish.asm : 21 SplashItem_SpawnSplash: -org $1DDF52 ; <- EDF52 - sprite_great_catfish.asm : 27 +org $9DDF52 ; <- EDF52 - sprite_great_catfish.asm : 27 SplashItem_SpawnOther: org $1DE228 ; <- EE228 - sprite_great_catfish.asm : 290 LDA.b #$FF ;-------------------------------------------------------------------------------- org $1DDF81 ; <- EDF81 - sprite_great_catfish.asm : 61 -JSL.l DrawThrownItem +JSL DrawThrownItem ;-------------------------------------------------------------------------------- org $05EE53 ; <- 2EE53 - mushroom.asm : 22 -JSL.l ItemCheck_Mushroom : NOP #2 +JSL ItemCheck_Mushroom : NOP #2 ;-------------------------------------------------------------------------------- org $05EE8C ; <- 2EE8C - mushroom.asm : 69 -JSL.l ItemSet_Mushroom : NOP +JSL ItemSet_Mushroom : NOP ;-------------------------------------------------------------------------------- org $05F53E ; <- 2F53E - sprite_potion_shop.asm : 40 -JSL.l ItemCheck_Powder : CMP.b #$20 +JSL ItemCheck_Powder : CMP.b #$20 ;-------------------------------------------------------------------------------- ; the quake medallion AND FLIPPERS org $1DDF71 ; <- EDF71 - sprite_great_catfish.asm : 47 -JSL.l MarkThrownItem +JSL MarkThrownItem ;-------------------------------------------------------------------------------- org $05FAFF ; <- 2FAFF - sprite_mad_batter.asm:57 (LDA $7EF37B : CMP.b #$01 : BCS .magic_already_doubled) -JSL.l ItemCheck_MagicBat : BEQ + : RTS : NOP : + +JSL ItemCheck_MagicBat : BEQ + : RTS : NOP : + ;================================================================================ ;================================================================================ ; Boss Hearts ;-------------------------------------------------------------------------------- org $05EF5D ; <- 2EF5D - sprite_heart_upgrades.asm:110 (JSL GetAnimatedSpriteTile.variable) -JSL.l HeartContainerSpritePrep +JSL HeartContainerSpritePrep ;-------------------------------------------------------------------------------- org $05EF79 ; <- 2EF79 - sprite_heart_upgrades.asm:128 (JSL Sprite_PrepAndDrawSingleLargeLong) -JSL.l DrawHeartContainerGFX +JSL DrawHeartContainerGFX ;-------------------------------------------------------------------------------- org $05EFCE ; <- 2EFCE - sprite_heart_upgrades.asm:176 (JSL Link_ReceiveItem) -JSL.l HeartContainerGet +JSL HeartContainerGet ;-------------------------------------------------------------------------------- ;-------------------------------------------------------------------------------- org $0799B1 ; 399B1 - Bank07.asm:4063 (CPY.b #$3E : BNE .notHeartContainer) -JSL.l HeartContainerSound : BCC Link_ReceiveItem_notHeartContainer -org $0799BA ; 399BA - Bank07.asm:4070 (LDA.b #$60 : STA $02D9) +JSL HeartContainerSound : BCC Link_ReceiveItem_notHeartContainer +org $8799BA ; 399BA - Bank07.asm:4070 (LDA.b #$60 : STA $02D9) Link_ReceiveItem_notHeartContainer: ;-------------------------------------------------------------------------------- org $09887F ; <- 4887F - ancilla_init.asm : 1163 (LDA $0C5E, X : CMP.b #$3E : BEQ .doneWithSoundEffects) JSL NormalItemSkipSound : NOP : BCS AddReceivedItem_doneWithSoundEffects -org $0988AE ; <- 488AE - ancilla_init.asm : 1193 (LDA.b #$0A : STA $02) +org $8988AE ; <- 488AE - ancilla_init.asm : 1193 (LDA.b #$0A : STA $02) AddReceivedItem_doneWithSoundEffects: ;================================================================================ ; Heart Pieces ;-------------------------------------------------------------------------------- org $05F030 ; <- 2F030 - display item -JSL.l DrawHeartPieceGFX +JSL DrawHeartPieceGFX ;-------------------------------------------------------------------------------- org $05F08A ; <- 2F08A - sprite_heart_upgrades.asm : 324 - (LDA $7EF36B : INC A : AND.b #$03 : STA $7EF36B : BNE .got_4_piecese) item determination -JSL.l HeartPieceGet -JSL.l DynamicDrawCleanup -JSL.l IsMedallion +JSL HeartPieceGet +JSL DynamicDrawCleanup +JSL IsMedallion BCS + : BRA Sprite_EB_HeartPiece_handle_flags : + ; Don't change OW flags if we're -STZ.w SpriteAITable, X : RTS ; getting a tablet item +STZ.w SpriteAITable, X : RTS ; getting a tablet item ;-------------------------------------------------------------------------------- org $06C0B0 ; <- 340B0 - sprite prep -JSL.l HeartPieceSpritePrep +JSL HeartPieceSpritePrep ;-------------------------------------------------------------------------------- org $08C45B ; <- 4445B - ancilla_receive_item.asm : 152 -JSL.l HPItemReset +JSL HPItemReset ;================================================================================ ;================================================================================ @@ -1970,60 +1928,60 @@ LDA.w DamageReceived : STA.b Scrap00 : STZ.w DamageReceived ; store and zero dam LDA.w NoDamage : BNE LinkDamaged_linkNotDamaged ; skip if immune ;-------------------------------------------------------------------------------- org $0780C6 ; <- 380C6 - Bank07.asm:174 (LDA $7EF36D) -JSL.l OnLinkDamaged +JSL OnLinkDamaged ;-------------------------------------------------------------------------------- -org $0780FB ; <- 380FB - Bank07.asm:207 (.linkNotDamaged) +org $8780FB ; <- 380FB - Bank07.asm:207 (.linkNotDamaged) LinkDamaged_linkNotDamaged: ;-------------------------------------------------------------------------------- org $0794FB ; <- 394FB - Bank07.asm:3336 (LDA.b #$14 : STA $11) -JSL.l OnLinkDamagedFromPit +JSL OnLinkDamagedFromPit ;-------------------------------------------------------------------------------- org $01FFE7 ; <- FFE7 - Bank01.asm:16375 (LDA $7EF36D) -JSL.l OnLinkDamagedFromPitOutdoors +JSL OnLinkDamagedFromPitOutdoors ;-------------------------------------------------------------------------------- -org $02B468 +org $82B468 dw FakeFlipperProtection -org $02FFC7 +org $82FFC7 FakeFlipperProtection: JSR.w $029485 JSL protectff RTS ;-------------------------------------------------------------------------------- ;org $078F51 ; <- 38F51 - Bank07.asm:2444 (JSR $AE54 ; $3AE54 IN ROM) -;JSL.l OnEnterWater : NOP +;JSL OnEnterWater : NOP ;================================================================================ ; Floodgate Softlock Fix ;-------------------------------------------------------------------------------- org $0AB8E5 ; <- 538E5 -JSL.l FloodGateAndMasterSwordFollowerReset -JSL.l IncrementFlute +JSL FloodGateAndMasterSwordFollowerReset +JSL IncrementFlute STZ.w GFXStripes : STZ.w GFXStripes+1 -NOP #26 +BRA ++ : NOP #24 : ++ ;-------------------------------------------------------------------------------- org $02AA87 ; <- 12A87 -JSL.l OnOWTransition : NOP #36 +JSL OnOWTransition : BRA ++ : NOP #34 : ++ ;================================================================================ ;Inverted mode tile map update (executed right after the original tile load) ;-------------------------------------------------------------------------------- org $02ED51 ; <- 16D51 -JSL.l Overworld_LoadNewTiles : NOP #$02 +JSL Overworld_LoadNewTiles : NOP #2 ;-------------------------------------------------------------------------------- ;Same as above org $02EC2E ;<- 016C2E -JSL.l Overworld_LoadNewTiles : NOP #$02 +JSL Overworld_LoadNewTiles : NOP #2 ;================================================================================ org $07A3E2 ;<- 3A3E2 Bank07.asm:5764 (LDA.b #$80 : STA $03F0) -JSL.l FreeDuckCheck : BEQ + +JSL FreeDuckCheck : BEQ + NOP skip 3 ; a JSR we need to keep + ;================================================================================ -org $07A9AC ; <- 3A9AC - Bank07.asm:6628 (LDA $0C : ORA $0E : STA $00 : AND.b #$0C : BEQ BRANCH_BETA) -JML.l MirrorBonk +org $87A9AC ; <- 3A9AC - Bank07.asm:6628 (LDA $0C : ORA $0E : STA $00 : AND.b #$0C : BEQ BRANCH_BETA) +JML MirrorBonk MirrorBonk_NormalReturn: -org $07A9D1 ; <- 3A9D1 - Bank07.asm:6649 (BRANCH_GAMMA:) +org $87A9D1 ; <- 3A9D1 - Bank07.asm:6649 (BRANCH_GAMMA:) MirrorBonk_BranchGamma: ;================================================================================ @@ -2031,46 +1989,46 @@ MirrorBonk_BranchGamma: ; Add SFX ;-------------------------------------------------------------------------------- org $1DFDA8 ; <- EFDA9 - sprite_digging_game_guy.asm:309 (STA $7FFE00) -JSL.l SpawnShovelGamePrizeSFX +JSL SpawnShovelGamePrizeSFX ;-------------------------------------------------------------------------------- org $01EECD ; <- EECD - Bank01.asm:14160 (LDA.b #$0E : STA $012F) -JSL.l SpawnChestGamePrizeSFX : NOP +JSL SpawnChestGamePrizeSFX : NOP ;================================================================================ ;================================================================================ ; Heart Beep Timer ;-------------------------------------------------------------------------------- org $0DDC9B ; <- 6DC9B -JSL.l BeepLogic : NOP #6 +JSL BeepLogic : NOP #6 ;================================================================================ ;================================================================================ ; Item Downgrade Fix ;-------------------------------------------------------------------------------- org $09865E ; <- 4865E -JSL.l $1BEE1B ; fix something i wrote over i shouldn't have +JSL $9BEE1B ; fix something i wrote over i shouldn't have ;-------------------------------------------------------------------------------- org $098638 ; <- 48638 - ancilla_init.asm:737 - LDA .item_values, Y : BMI .dontWrite (BMI) -JSL.l ItemDowngradeFix +JSL ItemDowngradeFix ;================================================================================ ;================================================================================ ; Lamp Mantle & Light Cone Fix ;-------------------------------------------------------------------------------- org $1AFC4D ; <- D7C4D - sprite_movable_mantle.asm:31 (LDA $7EF3CC : CMP.b #$01 : BNE .return) -JSL.l CheckForZelda +JSL CheckForZelda ;-------------------------------------------------------------------------------- org $1AFC55 ; <- D7C55 - sprite_movable_mantle.asm:34 (LDA $7EF34A : BEQ .return) NOP #6 ; remove check ;-------------------------------------------------------------------------------- org $068841 ; <- 30841 - sprite_prep.asm:269 (LDA $0D00, X : ADD.b #$03 : STA $0D00, X) -JSL.l Mantle_CorrectPosition : NOP #2 +JSL Mantle_CorrectPosition : NOP #2 ;-------------------------------------------------------------------------------- org $0DFA53 ; <- 6FA53 - hud check for lantern -JSL.l LampCheck +JSL LampCheck ;-------------------------------------------------------------------------------- org $01F503 ; <- F503 - Bank01.asm:14994 (LDA.b #$01 : STA $1D) -JSL.l SetOverlayIfLamp +JSL SetOverlayIfLamp ;================================================================================ ;================================================================================ @@ -2082,25 +2040,25 @@ JSL.l SetOverlayIfLamp ; identify the tavern entrance to determine whether link should walk up or down. ;-------------------------------------------------------------------------------- org $1BBD5F ; <- Bank1b.asm:296 (LDA $1BBB73, X : STA $010E) -JSL.l StoreLastOverworldDoorID : NOP #3 +JSL StoreLastOverworldDoorID : NOP #3 ;-------------------------------------------------------------------------------- org $02D754 ; <- Bank02.asm:10847 (LDA $D724, X : STA $0696 : STZ $0698) -JSL.l CacheDoorFrameData : NOP #5 +JSL CacheDoorFrameData : NOP #5 ;-------------------------------------------------------------------------------- org $0298AD ; <- Bank02.asm:4495 (LDA $010E : CMP.b #$43) -JSL.l WalkDownIntoTavern : NOP #1 +JSL WalkDownIntoTavern : NOP #1 ;================================================================================ ;================================================================================ ; Hole fixes ;-------------------------------------------------------------------------------- -org $1BB88E ; <- DB88E - Bank1B.asm:59 (LDX.w #$0024) -JML.l CheckHole -org $1BB8A4 ; <- DB8A4 - Bank1B.asm:78 (LDX.w #$0026) +org $9BB88E ; <- DB88E - Bank1B.asm:59 (LDX.w #$0024) +JML CheckHole +org $9BB8A4 ; <- DB8A4 - Bank1B.asm:78 (LDX.w #$0026) Overworld_Hole_GotoHoulihan: -org $1BB8AF ; <- DB8AF - Bank1B.asm:85 (.matchedHole) +org $9BB8AF ; <- DB8AF - Bank1B.asm:85 (.matchedHole) Overworld_Hole_matchedHole: -org $1BB8BD ; <- DB8BD - Bank1B.asm:85 (PLB) +org $9BB8BD ; <- DB8BD - Bank1B.asm:85 (PLB) Overworld_Hole_End: ;================================================================================ @@ -2115,9 +2073,9 @@ LDA.l Aga2Duck : NOP #2 ;================================================================================ ; Music fixes ;-------------------------------------------------------------------------------- -org $0282F4 ; <- Bank02.asm:654 (LDY.b #$58 ...) -JML.l PreOverworld_LoadProperties_ChooseMusic -org $028389 ; <- Bank02.asm:763 +org $8282F4 ; <- Bank02.asm:654 (LDY.b #$58 ...) +JML PreOverworld_LoadProperties_ChooseMusic +org $828389 ; <- Bank02.asm:763 PreOverworld_LoadProperties_SetSong: ;-------------------------------------------------------------------------------- ; Remove Aga1 check for Kakariko music, always play track 7 @@ -2159,7 +2117,7 @@ JSL LoadRoomHook_noStats ;================================================================================ ; Hooks into the "Reloading all graphics" routine ;-------------------------------------------------------------------------------- -org $00E64D ; <- Bank00.asm:5656 (STZ $00 : STX $01 : STA $02) +org $80E64D ; <- Bank00.asm:5656 (STZ $00 : STX $01 : STA $02) JML BgGraphicsLoading BgGraphicsLoadingCancel: RTS : NOP @@ -2169,10 +2127,10 @@ BgGraphicsLoadingResume: ;================================================================================ ; Hook when updating the floor tileset in dungeons (such as between floors) ;-------------------------------------------------------------------------------- -org $00DF62 ; <- Bank00.asm:4672 (LDX.w #$0000 : LDY.w #$0040) +org $80DF62 ; <- Bank00.asm:4672 (LDX.w #$0000 : LDY.w #$0040) JML ReloadingFloors : NOP #2 ReloadingFloorsResume: -org $00DF6E ; <- A few instructions later, right after JSR Do3To.high16Bit +org $80DF6E ; <- A few instructions later, right after JSR Do3To.high16Bit ReloadingFloorsCancel: ;================================================================================ @@ -2180,20 +2138,20 @@ ReloadingFloorsCancel: ; Hook bow use - to use rupees instead of actual arrows ;-------------------------------------------------------------------------------- org $07A055 ; <- Bank07.asm:5205 (LDA $0B99 : BEQ BRANCH_DELTA) -JSL.l ArrowGame : NOP #14 +JSL ArrowGame : BRA ++ : NOP #12 : ++ org $07A06C ; <- Bank07.asm:5215 (LDA $7EF377 : BEQ BRANCH_EPSILON) -JSL.l DecrementArrows : SKIP 2 : NOP : LDA CurrentArrows +JSL DecrementArrows : SKIP 2 : NOP : LDA CurrentArrows ;================================================================================ ;================================================================================ ; Quick Swap ;-------------------------------------------------------------------------------- org $0287FB ; <- 107FB - Bank02.asm:1526 (LDA $F6 : AND.b #$40 : BEQ .dontActivateMap) -JSL.l QuickSwap +JSL QuickSwap org $02A451 ; <- 12451 - Bank02.asm:6283 (LDA $F6 : AND.b #$40 : BEQ .xButtonNotDown) -JSL.l QuickSwap +JSL QuickSwap ;================================================================================ ;================================================================================ @@ -2202,25 +2160,25 @@ JSL.l QuickSwap org $0689AB ; <- 309AB - sprite_prep.asm: 647 (LDA $7EF3CC : CMP.b #$06 : BEQ .killSprite) ; Note: In JP 1.0 we have: (CMP.b #$00 : BNE .killSprite) appling US bugfix ; Prevent followers from causing blind/maiden to despawn: -CMP.b #$06 : db #$F0 ; BEQ +CMP.b #$06 : db $F0 ; BEQ ;-------------------------------------------------------------------------------- ; Fix old man purple chest issues using the same method as above org $1EE906 ; <- F6906 - sprite_old_mountain_man.asm : 31 (LDA $7EF3CC : CMP.b #$00 : BNE .already_have_tagalong) -CMP.b #$04 : db #$F0 ; BEQ +CMP.b #$04 : db $F0 ; BEQ ;-------------------------------------------------------------------------------- ;Control which doors frog/smith can enter -org $1BBCF0 ; <- DBCF0 - Bank1B.asm: 248 (LDA $04B8 : BNE BRANCH_MU) +org $9BBCF0 ; <- DBCF0 - Bank1B.asm: 248 (LDA $04B8 : BNE BRANCH_MU) Overworld_Entrance_BRANCH_LAMBDA: ; Branch here to show Cannot Enter with Follower message -org $1BBD55 ; <- DBD55 - Bank1B.asm: 290 (CPX.w #$0076 : BCC BRANCH_LAMBDA) -JML.l SmithDoorCheck : NOP +org $9BBD55 ; <- DBD55 - Bank1B.asm: 290 (CPX.w #$0076 : BCC BRANCH_LAMBDA) +JML SmithDoorCheck : NOP Overworld_Entrance_BRANCH_RHO: ; branch here to continue into door ;================================================================================ ;================================================================================ ; Paradox Cave Shopkeeper Fixes ;-------------------------------------------------------------------------------- -org $008C19 ; Bank00.asm@1633 (LDA.b #$01 : STA MDMAEN) +org $008C19 ; Bank00.asm 1633 (LDA.b #$01 : STA MDMAEN) JSL ParadoxCaveGfxFix : NOP ;================================================================================ @@ -2262,15 +2220,15 @@ JSL LoadGearPalette_safe_for_bunny : RTS ;================================================================================ ; Chest Encryption ;-------------------------------------------------------------------------------- -org $01EBEB ; <- 0EBEB - bank01.asm : 13760 (INC $0E) -JML.l GetChestData : NOP -org $01EBDE ; <- 0EBDE - bank01.asm : 13740 (.couldntFindChest) +org $81EBEB ; <- 0EBEB - bank01.asm : 13760 (INC $0E) +JML GetChestData : NOP +org $81EBDE ; <- 0EBDE - bank01.asm : 13740 (.couldntFindChest) Dungeon_OpenKeyedObject_couldntFindChest: -org $01EBF0 ; <- 0EBF0 - bank01.asm : 13764 (.nextChest) +org $81EBF0 ; <- 0EBF0 - bank01.asm : 13764 (.nextChest) Dungeon_OpenKeyedObject_nextChest: -org $01EC14 ; <- 0EC14 - bank01.asm : 13783 (LDX $040C) +org $81EC14 ; <- 0EC14 - bank01.asm : 13783 (LDX $040C) Dungeon_OpenKeyedObject_bigChest: -org $01EC38 ; <- 0EC38 - bank01.asm : 13809 (.smallChest) +org $81EC38 ; <- 0EC38 - bank01.asm : 13809 (.smallChest) Dungeon_OpenKeyedObject_smallChest: ;================================================================================ @@ -2283,26 +2241,26 @@ JSL NewElderCode ; Add him to Castle Map post-rain, and post aga1 ;-------------------------------------------------------------------------------- org $09D0AC -db #$18, #$0F, #$43, #$FF ;remove heart from tree adjancent map [LW1] -db #$12, #$19, #$16 ;add sahasrala in castle Y, X, Sprite ID +db $18, $0F, $43, $FF ; remove heart from tree adjancent map [LW1] +db $12, $19, $16 ; add sahasrala in castle Y, X, Sprite ID org $09C937 -db #$B0, #$D0 ;change [LW1] map 01C pointers +db $B0, $D0 ; change [LW1] map 01C pointers org $09D421 -db #$18, #$0F, #$45, #$FF;remove heart from tree adjancent map [LW2] -db #$12, #$19, #$16 ;add sahasrala in castle Y, X, Sprite ID +db $18, $0F, $45, $FF ; remove heart from tree adjancent map [LW2] +db $12, $19, $16 ; add sahasrala in castle Y, X, Sprite ID org $09CA57 -db #$25, #$D4 ;change [LW2] map 01C pointers +db $25, $D4 ; change [LW2] map 01C pointers ;-------------------------------------------------------------------------------- ; Expanded trinexx sheet gfx. ;-------------------------------------------------------------------------------- -org $00CFC0+178 : db #$33 -org $00D09F+178 : db #$90 -org $00D17E+178 : db #$00 +org $00CFC0+178 : db ExpandedTrinexx>>16 +org $00D09F+178 : db ExpandedTrinexx>>8 +org $00D17E+178 : db ExpandedTrinexx>>0 ; Use above sheet in Hyrule castle courtyard after rain state. org $00DB9E ; Hyrule Castle GFX Sprite Sheet 4 on [LW1] -db #$3F +db $3F org $00DC0A ; Hyrule Castle GFX Sprite Sheet 4 on [LW2] -db #$3F +db $3F ;-------------------------------------------------------------------------------- ; Updated evil barrier animation table ;-------------------------------------------------------------------------------- @@ -2382,16 +2340,17 @@ CheckIfReading: ;================================================================================ -org $0DB4CA : db $40, $40 ; fire bar statis -org $0DB4A9 : db $50, $50, $6E, $6E ; roller statis -org $0DB4B2 : db $40, $40, $40, $40 ; cannon statis -org $0DB4C3 : db $C0 ; anti fairy statis -org $0DB516 : db $40 ; chain chomp statis +; remove kill room requirements +org $0DB4CA : db $40, $40 ; fire bar +org $0DB4A9 : db $50, $50, $6E, $6E ; roller +org $0DB4B2 : db $40, $40, $40, $40 ; cannon +org $0DB4C3 : db $C0 ; anti fairy +org $0DB516 : db $40 ; chain chomp ;-------------------------------------------------------------------------------- ; Keep Firebar Damage on Same Layer ;-------------------------------------------------------------------------------- -org $06F425 +org $86F425 Sprite_AttemptDamageToPlayerPlusRecoilLong: org $1ED1B6 @@ -2459,33 +2418,33 @@ JSL FixJingleGlitch ; Text Renderer ;-------------------------------------------------------------------------------- if !FEATURE_NEW_TEXT - org $0EF51B - JML RenderCharExtended - org $0EF520 - RenderCharExtended_returnOriginal: - org $0EF567 - RenderCharExtended_returnUncompressed: + org $8EF51B + JML RenderCharExtended + org $8EF520 + RenderCharExtended_returnOriginal: + org $8EF567 + RenderCharExtended_returnUncompressed: - org $0EF356 - JSL RenderCharLookupWidth - org $0EF3BA - JSL RenderCharLookupWidth - org $0EF48E - JML RenderCharLookupWidthDraw - org $0EF499 - RenderCharLookupWidthDraw_return: + org $8EF356 + JSL RenderCharLookupWidth + org $8EF3BA + JSL RenderCharLookupWidth + org $8EF48E + JML RenderCharLookupWidthDraw + org $8EF499 + RenderCharLookupWidthDraw_return: - org $0EF6AA - JML RenderCharToMapExtended - org $0EF6C2 - RenderCharToMapExtended_return: + org $8EF6AA + JML RenderCharToMapExtended + org $8EF6C2 + RenderCharToMapExtended_return: - org $0EFA50 - JSL RenderCharSetColorExtended - org $0EEE5D - JSL RenderCharSetColorExtended_init - org $0EF285 - JSL RenderCharSetColorExtended_close : NOP + org $8EFA50 + JSL RenderCharSetColorExtended + org $8EEE5D + JSL RenderCharSetColorExtended_init + org $8EF285 + JSL RenderCharSetColorExtended_close : NOP endif ;=================================================================================================== diff --git a/hud.asm b/hud.asm index 06904ae..b42c326 100644 --- a/hud.asm +++ b/hud.asm @@ -1,47 +1,47 @@ ;org $0DFE97 ; <- 6FE97 - headsup_display.asm:1009 (.hud_tilemap) ; DO NOT EXCEED 0x150 HUD_TileMap: - dw $207F, $207F, $2850, $A856 - dw $2852, $285B, $285B, $285C - ;dw $207F, $3CA8, $207F, $207F, $207F + dw $207F, $207F, $2850, $A856 + dw $2852, $285B, $285B, $285C + ;dw $207F, $3CA8, $207F, $207F, $207F dw $207F, $3C02, $3C03, $207F, $207F ; normal mode ;dw $3C02, $3C03, $207F, $207F, $207F ; rupee arrows - dw $2C88, $2C89, $207F, $20A7 - dw $20A9, $207F, $2871 ;, $207F - dw $207F, $207F, $288B, $288F - dw $24AB, $24AC, $688F, $688B - dw $207F, $207F, $207F, $207F - dw $207F, $207F, $2854, $2871 - dw $2858, $207F, $207F, $285D - dw $207F, $207F, $207F, $207F - dw $207F, $207F, $207F, $207F - dw $207F, $207F, $207F, $207F - dw $207F, $207F, $207F, $207F - dw $207F, $207F, $207F, $207F - dw $207F, $207F, $207F, $207F - dw $207F, $207F, $2854, $304E - dw $2858, $207F, $207F, $285D - dw $207F, $207F, $207F, $207F - dw $207F, $207F, $207F, $207F - dw $207F, $207F, $207F, $207F - dw $207F, $207F, $207F, $207F - dw $207F, $207F, $207F, $207F - dw $207F, $207F, $207F, $207F - dw $207F, $207F, $2854, $305E - dw $2859, $A85B, $A85B, $A85C - dw $207F, $207F, $207F, $207F - dw $207F, $207F, $207F, $207F - dw $207F, $207F, $207F, $207F - dw $207F, $207F, $207F, $207F - dw $207F, $207F, $207F, $207F - dw $207F, $207F, $207F, $207F - dw $207F, $207F, $2854, $305E - dw $6854, $207F, $207F, $207F - dw $207F, $207F, $207F, $207F - dw $207F, $207F, $207F, $207F - dw $207F, $207F, $207F, $207F - dw $207F, $207F, $207F, $207F - dw $207F, $207F, $207F, $207F - dw $207F, $207F, $207F, $207F - dw $207F, $207F, $A850, $2856 - dw $E850 + dw $2C88, $2C89, $207F, $20A7 + dw $20A9, $207F, $2871 ;, $207F + dw $207F, $207F, $288B, $288F + dw $24AB, $24AC, $688F, $688B + dw $207F, $207F, $207F, $207F + dw $207F, $207F, $2854, $2871 + dw $2858, $207F, $207F, $285D + dw $207F, $207F, $207F, $207F + dw $207F, $207F, $207F, $207F + dw $207F, $207F, $207F, $207F + dw $207F, $207F, $207F, $207F + dw $207F, $207F, $207F, $207F + dw $207F, $207F, $207F, $207F + dw $207F, $207F, $2854, $304E + dw $2858, $207F, $207F, $285D + dw $207F, $207F, $207F, $207F + dw $207F, $207F, $207F, $207F + dw $207F, $207F, $207F, $207F + dw $207F, $207F, $207F, $207F + dw $207F, $207F, $207F, $207F + dw $207F, $207F, $207F, $207F + dw $207F, $207F, $2854, $305E + dw $2859, $A85B, $A85B, $A85C + dw $207F, $207F, $207F, $207F + dw $207F, $207F, $207F, $207F + dw $207F, $207F, $207F, $207F + dw $207F, $207F, $207F, $207F + dw $207F, $207F, $207F, $207F + dw $207F, $207F, $207F, $207F + dw $207F, $207F, $2854, $305E + dw $6854, $207F, $207F, $207F + dw $207F, $207F, $207F, $207F + dw $207F, $207F, $207F, $207F + dw $207F, $207F, $207F, $207F + dw $207F, $207F, $207F, $207F + dw $207F, $207F, $207F, $207F + dw $207F, $207F, $207F, $207F + dw $207F, $207F, $A850, $2856 + dw $E850 diff --git a/init.asm b/init.asm index 648d1b8..bd3ddad 100644 --- a/init.asm +++ b/init.asm @@ -71,7 +71,7 @@ Init_PostRAMClear: JSL DecompressAllItemGraphics -JML $00D463 ; The original target of the jump table that we hijacked +JML $80D463 ; The original target of the jump table that we hijacked ;--------------------------------------------------------------------------------------------------- diff --git a/initsramtable.asm b/initsramtable.asm index 68d27ec..a507ca4 100644 --- a/initsramtable.asm +++ b/initsramtable.asm @@ -14,30 +14,30 @@ fillword $0000 ; Zero out the table fill $500 ; -org $30B000 ; PC 0x183000 +org $B0B000 ; PC 0x183000 InitSRAMTable: InitRoomDataWRAM: -org $30B060 ; PC 0x183060 +org $B0B060 ; PC 0x183060 InitATAltarRoom: dw $0000 ; aga curtains -org $30B092 ; PC 0x183092 +org $B0B092 ; PC 0x183092 InitSWBackEntryRoom: dw $0000 ; skull woods curtains -org $30B20C +org $B0B20C dw $F000, $F000 ; Pre-open kak bomb hut & brewery -org $30B280 ; PC 0x183280 - 0x1832FF +org $B0B280 ; PC 0x183280 - 0x1832FF InitOverworldEvents: -org $30B282 ; PC 0x183282 - Lumberjacks +org $B0B282 ; PC 0x183282 - Lumberjacks InitLumberjackOW: db $00 -org $30B29B ; PC 0x18329B - Open castle gate +org $B0B29B ; PC 0x18329B - Open castle gate InitHyruleCastleOW: db $20 -org $30B2DB ; PC 0x1832DB - Pyramid hole +org $B0B2DB ; PC 0x1832DB - Pyramid hole InitPyramidOW: db $00 -org $30B2C3 ; PC 0x1832C3 - GT +org $B0B2C3 ; PC 0x1832C3 - GT InitDDMWestOW: db $00 -org $30B340 ; PC 0x183340 +org $B0B340 ; PC 0x183340 StartingEquipment: StartingBow: skip 1 ; PC 0x183340 StartingBoomerang: skip 1 ; PC 0x183341 @@ -129,13 +129,13 @@ InitDroppedFollowerIndoors: skip 1 ; PC 0x1833D1 InitDroppedFollowerLayer: skip 1 ; PC 0x1833D2 InitFollowerDropped: skip 1 ; PC 0x1833D3 -org $30B3D9 ; PC 0x1833D9 - 0x1833F0 +org $B0B3D9 ; PC 0x1833D9 - 0x1833F0 StaticFileName: ; The validity value ($55AA) must be written manually on SRAM init at $7003E1 dw $0181, $0162, $0168, $018C dw $0166, $014E, $0162, $018C dw $0165, $0162, $0167, $018C -org $30B401 ; PC 0x183401 +org $B0B401 ; PC 0x183401 InitDeathCounter: dw $FFFF @@ -147,29 +147,29 @@ dw $FFFF ; excluding ~28 bytes (File name, validity value, and checksum.) ;-------------------------------------------------------------------------------- -org $30B414 ; PC 0x183414-0x183416 +org $B0B414 ; PC 0x183414-0x183416 InitMapOverlay: dw $0000 -org $30B417 ; PC 0x183417 +org $B0B417 ; PC 0x183417 InitHighestSword: db $00 -org $30B414 ; PC 0x183418-0x183419 +org $B0B414 ; PC 0x183418-0x183419 InitGoalCounter: dw $0000 -org $30B422 ; PC 0x183422 +org $B0B422 ; PC 0x183422 InitHighestShield: db $00 -org $30B428 ; PC 0x183428 +org $B0B428 ; PC 0x183428 InitMapsCompasses: db $00 -org $30B429 ; PC 0x183429 +org $B0B429 ; PC 0x183429 InitPendantCounter: db $00 -org $30B454 ; PC 0x183454-0x183457 +org $B0B454 ; PC 0x183454-0x183457 InitChallengeTimer: dw $0000, $0000 -org $30B46E ; PC 0x18346E +org $B0B46E ; PC 0x18346E InitHighestMail: db $00 -org $30B471 ; PC 0x183471 +org $B0B471 ; PC 0x183471 InitCrystalCounter: db $00 diff --git a/itemtext.asm b/itemtext.asm index f4d32c1..452bd1b 100644 --- a/itemtext.asm +++ b/itemtext.asm @@ -1,4 +1,4 @@ -org $328000 +org $B28000 ; You have found ; the map of Notice_MapOf: diff --git a/maidencrystals.asm b/maidencrystals.asm index 1ee421d..dc6a553 100644 --- a/maidencrystals.asm +++ b/maidencrystals.asm @@ -14,5 +14,5 @@ MaidenCrystalScript: LDA.l CrystalsField : AND.b #$7F : CMP.b #$7F : BNE + ; check if we have all crystals LDA.b #$08 : STA.l MapIcons ; Update the map icon to just be Ganon's Tower + -JML.l $1ECF35 ; <- F4F35 - sprite_crystal_maiden.asm : 426 +JML.l $9ECF35 ; <- F4F35 - sprite_crystal_maiden.asm : 426 ;-------------------------------------------------------------------------------- diff --git a/music.asm b/music.asm index 94992eb..adfe68b 100644 --- a/music.asm +++ b/music.asm @@ -103,7 +103,7 @@ Overworld_FinishMirrorWarp: LDA.w #$0000 : STA.l FadeTimer : STA.l FadeDirection SEP #$20 - JSL $00D7C8 + JSL $80D7C8 LDA.b #$80 : STA.b HDMAENQ LDX.b #$04 ; bunny theme @@ -245,10 +245,10 @@ RTL ; ; On entry, A = $8A (overworld area being loaded) Overworld_MosaicDarkWorldChecks: - CMP.b #$40 : beq .checkCrystals - CMP.b #$42 : beq .checkCrystals - CMP.b #$50 : beq .checkCrystals - CMP.b #$51 : bne .doFade + CMP.b #$40 : BEQ .checkCrystals + CMP.b #$42 : BEQ .checkCrystals + CMP.b #$50 : BEQ .checkCrystals + CMP.b #$51 : BNE .doFade .checkCrystals LDA.l CrystalsField : CMP.b #$7F : BEQ .done diff --git a/npcitems.asm b/npcitems.asm index 06b4aab..eaf6971 100644 --- a/npcitems.asm +++ b/npcitems.asm @@ -55,7 +55,7 @@ ItemCheck_TreeKid2: RTL ItemCheck_TreeKid3: - JSL $0DD030 ; FluteAardvark_Draw - thing we wrote over + JSL $8DD030 ; FluteAardvark_Draw - thing we wrote over LDA.l NpcFlags : AND.b #$08 BNE .done @@ -176,7 +176,7 @@ RTL ; Randomize Zora King ;-------------------------------------------------------------------------------- LoadZoraKingItemGFX: - LDA.l $1DE1C3 ; location randomizer writes zora item to + LDA.l $9DE1C3 ; location randomizer writes zora item to JML.l PrepDynamicTile ;-------------------------------------------------------------------------------- JumpToSplashItemTarget: @@ -188,17 +188,17 @@ JumpToSplashItemTarget: ; Randomize Catfish ;-------------------------------------------------------------------------------- LoadCatfishItemGFX: - LDA.l $1DE185 ; location randomizer writes catfish item to + LDA.l $9DE185 ; location randomizer writes catfish item to JML PrepDynamicTile ;-------------------------------------------------------------------------------- DrawThrownItem: LDA.b OverworldIndex : CMP.b #$81 : BNE .catfish .zora LDA.b #$01 : STA.l RedrawFlag - LDA.l $1DE1C3 ; location randomizer writes zora item to + LDA.l $9DE1C3 ; location randomizer writes zora item to BRA .draw .catfish - LDA.l $1DE185 ; location randomizer writes catfish item to + LDA.l $9DE185 ; location randomizer writes catfish item to .draw JML DrawDynamicTile ;-------------------------------------------------------------------------------- diff --git a/password.asm b/password.asm index edf77c7..d56936a 100644 --- a/password.asm +++ b/password.asm @@ -1,7 +1,7 @@ Module_Password: LDA.b GameSubMode - JSL.l UseImplicitRegIndexedLongJumpTable + JSL.l JumpTableLong dl Password_BeginInit ; 0 dl Password_EndInit ; 1 diff --git a/rngfixes.asm b/rngfixes.asm index f8c33db..32a3bc6 100644 --- a/rngfixes.asm +++ b/rngfixes.asm @@ -35,9 +35,8 @@ RTL RTL ;-------------------------------------------------------------------------------- FixChestCounterForChestGame: - JSL.l DecrementItemCounter - JSL.l $0DBA71 -RTL + JSL DecrementItemCounter + JML $8DBA71 ;-------------------------------------------------------------------------------- RNG_Lanmolas1: LDA.b #$00 : BRA _rng_done @@ -129,20 +128,20 @@ InitRNGPointerTable: PLP : PLX RTL .rngDefaults -dw #$0000 ; 00 = Lanmolas 1 -dw #$0040 ; 01 = Moldorm 1 -dw #$0080 ; 02 = Agahnim 1 -dw #$00C0 ; 03 = Helmasaur -dw #$0100 ; 04 = Arrghus -dw #$0140 ; 05 = Mothula -dw #$0180 ; 06 = Kholdstare -dw #$01C0 ; 07 = Vitreous -dw #$0200 ; 08 = Trinexx -dw #$0240 ; 09 = Lanmolas 2 -dw #$0280 ; 10 = Moldorm 2 -dw #$02C0 ; 11 = Agahnim 2 -dw #$0300 ; 12 = Agahnim 2 Phantoms -dw #$0340 ; 13 = Ganon -dw #$0380 ; 14 = Ganon Extra Warp -dw #$03C0 ; 15 = Standard Escape Enemy Drops +dw $0000 ; 00 = Lanmolas 1 +dw $0040 ; 01 = Moldorm 1 +dw $0080 ; 02 = Agahnim 1 +dw $00C0 ; 03 = Helmasaur +dw $0100 ; 04 = Arrghus +dw $0140 ; 05 = Mothula +dw $0180 ; 06 = Kholdstare +dw $01C0 ; 07 = Vitreous +dw $0200 ; 08 = Trinexx +dw $0240 ; 09 = Lanmolas 2 +dw $0280 ; 10 = Moldorm 2 +dw $02C0 ; 11 = Agahnim 2 +dw $0300 ; 12 = Agahnim 2 Phantoms +dw $0340 ; 13 = Ganon +dw $0380 ; 14 = Ganon Extra Warp +dw $03C0 ; 15 = Standard Escape Enemy Drops ;-------------------------------------------------------------------------------- diff --git a/roomloading.asm b/roomloading.asm index db4b709..0170980 100644 --- a/roomloading.asm +++ b/roomloading.asm @@ -7,7 +7,7 @@ LoadRoomHook: LDX.b RoomIndex ; Room ID LDA.l RoomCallbackTable, X SEP #$10 ; 8 bit XY - JSL UseImplicitRegIndexedLongJumpTable + JSL JumpTableLong ; Callback routines: dl NoCallback ; 00 dl IcePalaceBombosSE ; 01 diff --git a/shopkeeper.asm b/shopkeeper.asm index a95cc15..149a9ba 100644 --- a/shopkeeper.asm +++ b/shopkeeper.asm @@ -332,7 +332,7 @@ Shopkepeer_CallOriginal: LDA.b #ShopkeeperJumpTable>>8 : PHA LDA.b #ShopkeeperJumpTable : PHA LDA.w SpriteItemType, X - JML.l UseImplicitRegIndexedLocalJumpTable + JML.l JumpTableLocal ;-------------------------------------------------------------------------------- Sprite_ShopKeeper: diff --git a/spriteswap.asm b/spriteswap.asm index f122af4..06cd613 100644 --- a/spriteswap.asm +++ b/spriteswap.asm @@ -2,23 +2,23 @@ org $008A01 ; 0xA01 - Bank00.asm (LDA.b #$10 : STA $4304 : STA $4314 : STA $4324 LDA.b PlayerSpriteBank org $1BEDF9 -JSL SpriteSwap_Palette_ArmorAndGloves ;4bytes -RTL ;1byte -NOP #$01 +JSL SpriteSwap_Palette_ArmorAndGloves ; 4bytes +RTL ; 1byte +NOP org $1BEE1B JSL SpriteSwap_Palette_ArmorAndGloves_part_two RTL -!BANK_BASE = $29 +!BANK_BASE = $A9 org $BF8000 SwapSpriteIfNecessary: PHP SEP #$20 ; set 8-bit accumulator - LDA.l SpriteSwapper : BEQ + : !ADD #!BANK_BASE : CMP.b PlayerSpriteBank : BEQ + + LDA.l SpriteSwapper : BEQ + : CLC : ADC.b #!BANK_BASE : CMP.b PlayerSpriteBank : BEQ + STA.b PlayerSpriteBank - STZ.w SkipOAM ; Set Normal Sprite NMI + STZ.w SkipOAM ; Set Normal Sprite NMI JSL.l SpriteSwap_Palette_ArmorAndGloves_part_two + PLP @@ -26,57 +26,57 @@ RTL SpriteSwap_Palette_ArmorAndGloves: { - ;DEDF9 - LDA.l SpriteSwapper : BNE .continue - LDA.b #$10 : STA.b PlayerSpriteBank ; Load Original Sprite Location - REP #$21 - LDA.l ArmorEquipment - JSL $1BEDFF ; Read Original Palette Code - RTL - .part_two - SEP #$30 - LDA.l SpriteSwapper : BNE .continue - REP #$30 - LDA.l GloveEquipment - JSL $1BEE21 ; Read Original Palette Code - RTL + ; DEDF9 + LDA.l SpriteSwapper : BNE .continue + LDA.b #$10 : STA.b PlayerSpriteBank ; Load Original Sprite Location + REP #$21 + LDA.l ArmorEquipment + JSL $9BEDFF ; Read Original Palette Code + RTL + .part_two + SEP #$30 + LDA.l SpriteSwapper : BNE .continue + REP #$30 + LDA.l GloveEquipment + JSL $9BEE21 ; Read Original Palette Code + RTL - .continue + .continue - PHX : PHY : PHA - ; Load armor palette - PHB : PHK : PLB - REP #$20 ; set 16-bit accumulator - - ; Check what Link's armor value is. - LDA.l ArmorEquipment : AND.w #$00FF : TAX - - LDA.l $1BEC06, X : AND.w #$00FF : ASL A : ADC.w #$F000 : STA.b Scrap00 - ;replace D308 by 7000 and search - REP #$10 ; set 16-bit index registers - - LDA.w #$01E2 ; Target SP-7 (sprite palette 6) - LDX.w #$000E ; Palette has 15 colors - - TXY : TAX - - LDA.b PlayerSpriteBank : AND.w #$00FF : STA.b Scrap02 + PHX : PHY : PHA + ; Load armor palette + PHB : PHK : PLB + REP #$20 ; set 16-bit accumulator + + ; Check what Link's armor value is. + LDA.l ArmorEquipment : AND.w #$00FF : TAX + + LDA.l $9BEC06, X : AND.w #$00FF : ASL A : ADC.w #$F000 : STA.b Scrap00 + ; replace D308 by 7000 and search + REP #$10 ; set 16-bit index registers + + LDA.w #$01E2 ; Target SP-7 (sprite palette 6) + LDX.w #$000E ; Palette has 15 colors + + TXY : TAX + + LDA.b PlayerSpriteBank : AND.w #$00FF : STA.b Scrap02 .loop - LDA.b [Scrap00] : STA.l PaletteBufferAux, X : STA.l PaletteBuffer, X - - INC.b Scrap00 : INC.b Scrap00 - - INX #2 - - DEY : BPL .loop + LDA.b [Scrap00] : STA.l PaletteBufferAux, X : STA.l PaletteBuffer, X - SEP #$30 - - - PLB - INC.b NMICGRAM - PLA : PLY : PLX - RTL + INC.b Scrap00 : INC.b Scrap00 + + INX #2 + + DEY : BPL .loop + + SEP #$30 + + + PLB + INC.b NMICGRAM + PLA : PLY : PLX + RTL } diff --git a/stats.asm b/stats.asm index 5f68128..3eaf2a6 100644 --- a/stats.asm +++ b/stats.asm @@ -33,7 +33,7 @@ DecrementSaveCounter: RTL ;-------------------------------------------------------------------------------- DungeonHoleWarpTransition: - LDA.l $01C31F, X + LDA.l $81C31F, X BRA StatTransitionCounter DungeonHoleEntranceTransition: JSL EnableForceBlank diff --git a/stats/main.asm b/stats/main.asm index dfb23ec..ca06a4b 100755 --- a/stats/main.asm +++ b/stats/main.asm @@ -5,7 +5,7 @@ lorom !BLT = "BCC" !BGE = "BCS" -org $238000 +org $A38000 incsrc stats/credits.asm FontGfx: @@ -41,8 +41,8 @@ PreparePointer: LDY.w #$0000 RTL -; Regular stat: XXXX X00L LLLL LLLL BBBB SSSS CCC- ---- ---- ---- AAAA AAAA AAAA AAAA AAAA AAAA -; Time stat: XXXX X01L LLLL LLLL ---- ---- ---- ---- ---- ---- AAAA AAAA AAAA AAAA AAAA AAAA +; Regular stat: XXXX X00L LLLL LLLL BBBB SSSS CCC- ---- ---- ---- AAAA AAAA AAAA AAAA AAAA AAAA +; Time stat: XXXX X01L LLLL LLLL ---- ---- ---- ---- ---- ---- AAAA AAAA AAAA AAAA AAAA AAAA ; End of data: 1111 1111 1111 1111 ; X X offset (measured in 8x8 tiles) @@ -58,55 +58,55 @@ RTL ; A Memory Address ValueCaps: - dw 0 - dw 9 - dw 99 - dw 999 - dw 9999 - dw 9999 ; TODO - 5 digits need to be fixed at a later date + dw 0 + dw 9 + dw 99 + dw 999 + dw 9999 + dw 9999 ; TODO - 5 digits need to be fixed at a later date BitMasks: - dw $FFFF - dw $0001 - dw $0003 - dw $0007 - dw $000F - dw $001F - dw $003F - dw $007F - dw $00FF - dw $01FF - dw $03FF - dw $07FF - dw $0FFF - dw $1FFF - dw $3FFF - dw $7FFF + dw $FFFF + dw $0001 + dw $0003 + dw $0007 + dw $000F + dw $001F + dw $003F + dw $007F + dw $00FF + dw $01FF + dw $03FF + dw $07FF + dw $0FFF + dw $1FFF + dw $3FFF + dw $7FFF macro StripeStart(xPos, length) - LDA.b $C8 - CLC - ADC.w # - XBA - STA.w $1002,x - - LDA.w #*2-1 - XBA - LDA.w #$0500 - STA.w $1004,x + LDA.b $C8 + CLC + ADC.w # + XBA + STA.w $1002,x + + LDA.w #*2-1 + XBA + LDA.w #$0500 + STA.w $1004,x endmacro macro StripeTile() - STA.w $1006,x - INX - INX + STA.w $1006,x + INX + INX endmacro macro StripeEnd() - INX - INX - INX - INX + INX + INX + INX + INX endmacro HexToDecStats: @@ -140,52 +140,52 @@ HexToDecStats: RTL LastHexDigit: - TYA - AND.w #$000F - PHA - TYA - LSR #4 - TAY - CLC - LDA.b StatsBottom - BNE + - ; Upper half - PLA - ADC #$3D40 - RTS -+ ; Lower half - PLA - ADC #$3D50 - RTS - -FindLine: - LDY.w #$0000 + TYA + AND.w #$000F + PHA + TYA + LSR #4 + TAY + CLC + LDA.b StatsBottom + BNE + + ; Upper half + PLA + ADC #$3D40 + RTS ++ ; Lower half + PLA + ADC #$3D50 + RTS + +FindLine: + LDY.w #$0000 + +- LDA.w CreditsStats,y + STZ.b StatsBottom + CMP #$FFFF + BEQ .noLine + + XBA + AND.w #$01FF + CMP.b LineNumber + BEQ .lineFound + + INC + INC.b StatsBottom + CMP.b LineNumber + BEQ .lineFound + + INY #8 + BRA - -- LDA.w CreditsStats,y - STZ.b StatsBottom - CMP #$FFFF - BEQ .noLine - - XBA - AND.w #$01FF - CMP.b LineNumber - BEQ .lineFound - - INC - INC.b StatsBottom - CMP.b LineNumber - BEQ .lineFound - - INY #8 - BRA - - .lineFound - SEC - RTS - + SEC + RTS + .noLine - CLC - RTS + CLC + RTS !FRAMES_PER_SECOND = 60 !FRAMES_PER_MINUTE = 60*60 @@ -193,20 +193,20 @@ FindLine: !MAX_FRAME_COUNT = 59*60+59*60+59*60+99 macro CountUnits(framesPerUnit, unitCounter) - STZ.b + STZ.b ?loop: - LDA.b ValueLow - SEC - SBC.w # - STA.b Temp - LDA.b ValueHigh - SBC.w #>>16 - BCC ?end - STA.b ValueHigh - LDA.b Temp - STA.b ValueLow - INC.b - BRA ?loop + LDA.b ValueLow + SEC + SBC.w # + STA.b Temp + LDA.b ValueHigh + SBC.w #>>16 + BCC ?end + STA.b ValueHigh + LDA.b Temp + STA.b ValueLow + INC.b + BRA ?loop ?end: endmacro @@ -215,342 +215,342 @@ endmacro BlankCreditsTile = $883D RenderCreditsStatCounter: - PHB - PHK - PLB - - JSR FindLine - BCS + - JMP .endStats -+ - - ; XXXX X00L LLLL LLLL BBBB SSSS CCC- ---- ---- ---- AAAA AAAA AAAA AAAA AAAA AAAA - - ; == Determine stat type == - LDA.w CreditsStats,y ; LLLL LLLL XXXX XTTL - LSR - AND.w #$0003 ; TT - CMP.w #$0000 - BEQ .normalStat - JMP .timeStat + PHB + PHK + PLB + + JSR FindLine + BCS + + JMP .endStats ++ + + ; XXXX X00L LLLL LLLL BBBB SSSS CCC- ---- ---- ---- AAAA AAAA AAAA AAAA AAAA AAAA + + ; == Determine stat type == + LDA.w CreditsStats,y ; LLLL LLLL XXXX XTTL + LSR + AND.w #$0003 ; TT + CMP.w #$0000 + BEQ .normalStat + JMP .timeStat .normalStat - ; == Write Stripe header (VRAM address, i.e. tile coordinates) == - LDA.w CreditsStats,y ; LLLL LLLL XXXX XTTL - LSR #3 - AND.w #$001F ; X XXXX - CLC - ADC.w $C8 - XBA - STA.w $1002,x - - ; == Write Stripe header (Length of data) == - LDA.w #4*2-1 ; 4 tiles = 8 bytes - XBA - STA.w $1004,x - PHX - - ; == Load tile base (upper or lower half of white two-line zero) == - LDA.b StatsBottom - BNE + - LDA.w #$3D40 - BRA ++ -+ LDA.w #$3D50 -++ STA.b Temp + ; == Write Stripe header (VRAM address, i.e. tile coordinates) == + LDA.w CreditsStats,y ; LLLL LLLL XXXX XTTL + LSR #3 + AND.w #$001F ; X XXXX + CLC + ADC.w $C8 + XBA + STA.w $1002,x - ; == Load the actual stat word == - LDA.w CreditsStats+5,y - STA.b StatsPtr - LDA.w CreditsStats+6,y - STA.b StatsPtr+1 - LDA.b [StatsPtr] - STA.b ValueLow - - ; == Shift value == - LDA.w CreditsStats+2,y; CCC- ---- BBBB SSSS - AND.w #$000F ; SSSS - BEQ + - TAX - LDA.b ValueLow -- LSR - DEX - BNE - - STA.b ValueLow -+ - ; == Mask value == - LDA.w CreditsStats+2,y; CCC- ---- BBBB SSSS - ;LSR #4 - ;AND.w #$000F ; BBBB + ; == Write Stripe header (Length of data) == + LDA.w #4*2-1 ; 4 tiles = 8 bytes + XBA + STA.w $1004,x + PHX + + ; == Load tile base (upper or lower half of white two-line zero) == + LDA.b StatsBottom + BNE + + LDA.w #$3D40 + BRA ++ ++ LDA.w #$3D50 +++ STA.b Temp + + ; == Load the actual stat word == + LDA.w CreditsStats+5,y + STA.b StatsPtr + LDA.w CreditsStats+6,y + STA.b StatsPtr+1 + LDA.b [StatsPtr] + STA.b ValueLow + + ; == Shift value == + LDA.w CreditsStats+2,y; CCC- ---- BBBB SSSS + AND.w #$000F ; SSSS + BEQ + + TAX + LDA.b ValueLow +- LSR + DEX + BNE - + STA.b ValueLow ++ + ; == Mask value == + LDA.w CreditsStats+2,y; CCC- ---- BBBB SSSS + ;LSR #4 + ;AND.w #$000F ; BBBB LSR #3 AND.w #$001E - TAX - LDA.l BitMasks,x - AND.b ValueLow - STA.b ValueLow - - ; == Cap value == - LDA.w CreditsStats+3,y; ---- ---- CCC- ---- - LSR #5 - AND.w #$0007 ; CCC - BEQ + - ASL : TAX - LDA.l ValueCaps,x - CMP.b ValueLow - !BGE + - STA.b ValueLow -+ - ; == Display value == - LDA.b ValueLow - JSL HexToDecStats - PLX - STZ.b RemoveZero - - LDA.l $7F5004 - AND.w #$00FF - CMP.b RemoveZero - BNE + - LDA.w #BlankCreditsTile - BRA ++ -+ DEC.b RemoveZero - CLC - ADC.b Temp -++ %StripeTile() - - LDA.l $7F5005 - AND.w #$00FF - CMP.b RemoveZero - BNE + - LDA.w #BlankCreditsTile - BRA ++ -+ DEC.b RemoveZero - CLC - ADC.b Temp -++ %StripeTile() - - LDA.l $7F5006 - AND.w #$00FF - CMP.b RemoveZero - BNE + - LDA.w #BlankCreditsTile - BRA ++ -+ DEC.b RemoveZero - CLC - ADC.b Temp -++ %StripeTile() - - LDA.l $7F5007 - AND.w #$00FF - CLC - ADC.b Temp - %StripeTile() - - %StripeEnd() + TAX + LDA.l BitMasks,x + AND.b ValueLow + STA.b ValueLow + + ; == Cap value == + LDA.w CreditsStats+3,y; ---- ---- CCC- ---- + LSR #5 + AND.w #$0007 ; CCC + BEQ + + ASL : TAX + LDA.l ValueCaps,x + CMP.b ValueLow + !BGE + + STA.b ValueLow ++ + ; == Display value == + LDA.b ValueLow + JSL HexToDecStats + PLX + STZ.b RemoveZero + + LDA.l $7F5004 + AND.w #$00FF + CMP.b RemoveZero + BNE + + LDA.w #BlankCreditsTile + BRA ++ ++ DEC.b RemoveZero + CLC + ADC.b Temp +++ %StripeTile() + + LDA.l $7F5005 + AND.w #$00FF + CMP.b RemoveZero + BNE + + LDA.w #BlankCreditsTile + BRA ++ ++ DEC.b RemoveZero + CLC + ADC.b Temp +++ %StripeTile() + + LDA.l $7F5006 + AND.w #$00FF + CMP.b RemoveZero + BNE + + LDA.w #BlankCreditsTile + BRA ++ ++ DEC.b RemoveZero + CLC + ADC.b Temp +++ %StripeTile() + + LDA.l $7F5007 + AND.w #$00FF + CLC + ADC.b Temp + %StripeTile() + + %StripeEnd() .endStats - PLB - RTL - + PLB + RTL + .timeStat - ; Output format: HH:MM:SS.FF - - ; == Write Stripe header (VRAM address, i.e. tile coordinates) == - LDA.w CreditsStats,y ; LLLL LLLL XXXX XTTL - LSR #3 - AND.w #$001F ; X XXXX - CLC - ADC.b $C8 - XBA - STA.w $1002,x - - ; == Write Stripe header (Length of data) == - LDA.w #11*2-1 ; 11 tiles = 22 bytes - XBA - STA.w $1004,x - PHX - - ; == Load the actual stat words == - LDA.w CreditsStats+5,y - STA.b StatsPtr - LDA.w CreditsStats+6,y - STA.b StatsPtr+1 - LDA.b [StatsPtr] - STA.b ValueLow - INC.b StatsPtr - INC.b StatsPtr - LDA.b [StatsPtr] - STA.b ValueHigh - - CMP.w #!MAX_FRAME_COUNT>>16+1 - !BGE ++ - - ; == Convert total frames into hours, minutes, seconds and frames == - %CountUnits(!FRAMES_PER_HOUR, Hours) - %CountUnits(!FRAMES_PER_MINUTE, Minutes) - %CountUnits(!FRAMES_PER_SECOND, Seconds) - - ; == Cap at 99:59:59.59 == - LDA.b Hours - CMP.w #100 - !BLT + -++ LDA.w #99 - STA.b Hours - LDA.w #59 - STA.b Minutes - STA.b Seconds - STA.b ValueLow + ; Output format: HH:MM:SS.FF + + ; == Write Stripe header (VRAM address, i.e. tile coordinates) == + LDA.w CreditsStats,y ; LLLL LLLL XXXX XTTL + LSR #3 + AND.w #$001F ; X XXXX + CLC + ADC.b $C8 + XBA + STA.w $1002,x + + ; == Write Stripe header (Length of data) == + LDA.w #11*2-1 ; 11 tiles = 22 bytes + XBA + STA.w $1004,x + PHX + + ; == Load the actual stat words == + LDA.w CreditsStats+5,y + STA.b StatsPtr + LDA.w CreditsStats+6,y + STA.b StatsPtr+1 + LDA.b [StatsPtr] + STA.b ValueLow + INC.b StatsPtr + INC.b StatsPtr + LDA.b [StatsPtr] + STA.b ValueHigh + + CMP.w #!MAX_FRAME_COUNT>>16+1 + !BGE ++ + + ; == Convert total frames into hours, minutes, seconds and frames == + %CountUnits(!FRAMES_PER_HOUR, Hours) + %CountUnits(!FRAMES_PER_MINUTE, Minutes) + %CountUnits(!FRAMES_PER_SECOND, Seconds) + + ; == Cap at 99:59:59.59 == + LDA.b Hours + CMP.w #100 + !BLT + +++ LDA.w #99 + STA.b Hours + LDA.w #59 + STA.b Minutes + STA.b Seconds + STA.b ValueLow + - - ; == Load tile base (upper or lower half of white two-line zero) == - LDA.b StatsBottom - BNE + - LDA.w #$3D40 - BRA ++ -+ LDA.w #$3D50 -++ STA.b Temp - - PLX - - ; == Display value == - LDA.b Hours - JSL HexToDecStats - - LDA.l $7F5006 - AND.w #$00FF - CLC - ADC.b Temp - %StripeTile() - - LDA.l $7F5007 - AND.w #$00FF - CLC - ADC.b Temp - %StripeTile() - - LDA.w #!ColonOffset - CLC - ADC.b Temp - %StripeTile() - - LDA.b Minutes - JSL HexToDecStats - LDA.l $7F5006 - AND.w #$00FF - CLC - ADC.b Temp - %StripeTile() - - LDA.l $7F5007 - AND.w #$00FF - CLC - ADC.b Temp - %StripeTile() - - LDA.w #!ColonOffset - CLC - ADC.b Temp - %StripeTile() - - LDA.b Seconds - JSL HexToDecStats - LDA.l $7F5006 - AND.w #$00FF - CLC - ADC.b Temp - %StripeTile() - - LDA.l $7F5007 - AND.w #$00FF - CLC - ADC.b Temp - %StripeTile() - - LDA.w #!PeriodOffset - CLC - ADC.b Temp - %StripeTile() - - LDA.b ValueLow - JSL HexToDecStats - LDA.l $7F5006 - AND.w #$00FF - CLC - ADC.b Temp - %StripeTile() - - LDA.l $7F5007 - AND.w #$00FF - CLC - ADC.b Temp - %StripeTile() - - %StripeEnd() - JMP .endStats - - + + ; == Load tile base (upper or lower half of white two-line zero) == + LDA.b StatsBottom + BNE + + LDA.w #$3D40 + BRA ++ ++ LDA.w #$3D50 +++ STA.b Temp + + PLX + + ; == Display value == + LDA.b Hours + JSL HexToDecStats + + LDA.l $7F5006 + AND.w #$00FF + CLC + ADC.b Temp + %StripeTile() + + LDA.l $7F5007 + AND.w #$00FF + CLC + ADC.b Temp + %StripeTile() + + LDA.w #!ColonOffset + CLC + ADC.b Temp + %StripeTile() + + LDA.b Minutes + JSL HexToDecStats + LDA.l $7F5006 + AND.w #$00FF + CLC + ADC.b Temp + %StripeTile() + + LDA.l $7F5007 + AND.w #$00FF + CLC + ADC.b Temp + %StripeTile() + + LDA.w #!ColonOffset + CLC + ADC.b Temp + %StripeTile() + + LDA.b Seconds + JSL HexToDecStats + LDA.l $7F5006 + AND.w #$00FF + CLC + ADC.b Temp + %StripeTile() + + LDA.l $7F5007 + AND.w #$00FF + CLC + ADC.b Temp + %StripeTile() + + LDA.w #!PeriodOffset + CLC + ADC.b Temp + %StripeTile() + + LDA.b ValueLow + JSL HexToDecStats + LDA.l $7F5006 + AND.w #$00FF + CLC + ADC.b Temp + %StripeTile() + + LDA.l $7F5007 + AND.w #$00FF + CLC + ADC.b Temp + %StripeTile() + + %StripeEnd() + JMP .endStats + + RenderLineNumber: - %StripeStart(0, 3) - - STZ.b StatsBottom - LDA.b $CA - TAY - AND.w #$0001 - BEQ + - DEY - INC.b StatsBottom -+ - JSR LastHexDigit - PHA - JSR LastHexDigit - PHA - JSR LastHexDigit - %StripeTile() - PLA - %StripeTile() - PLA - %StripeTile() - - %StripeEnd() - - RTS - + %StripeStart(0, 3) + + STZ.b StatsBottom + LDA.b $CA + TAY + AND.w #$0001 + BEQ + + DEY + INC.b StatsBottom ++ + JSR LastHexDigit + PHA + JSR LastHexDigit + PHA + JSR LastHexDigit + %StripeTile() + PLA + %StripeTile() + PLA + %StripeTile() + + %StripeEnd() + + RTS + LoadModifiedFont: - ; Based on CopyFontToVram(Bank00) - ; copies font graphics to VRAM (for BG3) - - ; set name base table to vram $4000 (word) - LDA.b #$02 : STA.w OBSEL - - ; increment on writes to $2119 - LDA.b #$80 : STA.w VMAIN - - ; set bank of the source address (see below) - LDA.b #FontGfx>>16 : STA.b Scrap02 - - REP #$30 - - ; vram target address is $7000 (word) - LDA.w #$7000 : STA.w VMADDL - - ; $00[3] = $0E8000 (offset for the font data) - LDA.w #FontGfx : STA.b Scrap00 - - ; going to write 0x1000 bytes (0x800 words) - LDX.w #FontGfxEnd-FontGfx/2-1 - + ; Based on CopyFontToVram(Bank00) + ; copies font graphics to VRAM (for BG3) + + ; set name base table to vram $4000 (word) + LDA.b #$02 : STA.w OBSEL + + ; increment on writes to $2119 + LDA.b #$80 : STA.w VMAIN + + ; set bank of the source address (see below) + LDA.b #FontGfx>>16 : STA.b Scrap02 + + REP #$30 + + ; vram target address is $7000 (word) + LDA.w #$7000 : STA.w VMADDL + + ; $00[3] = $0E8000 (offset for the font data) + LDA.w #FontGfx : STA.b Scrap00 + + ; going to write 0x1000 bytes (0x800 words) + LDX.w #FontGfxEnd-FontGfx/2-1 + .nextWord - ; read a word from the font data - LDA.b [$00] : STA.w VMDATAL - - ; increment source address by 2 - INC.b Scrap00 : INC.b Scrap00 - - DEX : BPL .nextWord - - SEP #$30 + ; read a word from the font data + LDA.b [$00] : STA.w VMDATAL + + ; increment source address by 2 + INC.b Scrap00 : INC.b Scrap00 + + DEX : BPL .nextWord + + SEP #$30 JSL LoadFullItemTilesCredits - RTL + RTL LoadFullItemTilesCredits: ; Based on CopyFontToVram(Bank00) @@ -584,17 +584,17 @@ LoadFullItemTilesCredits: DEX : BPL .nextWord SEP #$30 - - RTL - + + RTL + CheckFontTable: - TAY - PHB - PHK - PLB - LDA.w FontTable,Y - PLB - RTL + TAY + PHB + PHK + PLB + LDA.w FontTable,Y + PLB + RTL NearEnding: STZ.w $012A ; disable triforce helper thread @@ -602,7 +602,7 @@ NearEnding: REP #$10 JSL AltBufferTable_credits JSR DrawEndingItems -JML.l $00ec03 ; PaletteFilter_InitTheEndSprite + JML.l $80EC03 ; PaletteFilter_InitTheEndSprite EndingItems: ; This function is not strictly needed, simply updating the tracker @@ -621,20 +621,20 @@ DrawEndingItems: RTS FontTable: - incbin stats/fonttable.bin + incbin stats/fonttable.bin CreditsStats: incsrc stats/statConfig.asm dw $FFFF -org $0eedd9 - JSL EndingItems +org $0EEDD9 + JSL EndingItems -org $0eedaf +org $0EEDAF JSL NearEnding org $0EE651 - JSL LoadModifiedFont + JSL LoadModifiedFont org $0EE828 JSL PreparePointer @@ -646,13 +646,13 @@ org $0EE83F org $0EE853 LDA.b [CreditsPtr],Y NOP - AND.w #$00ff - ASL A - JSL CheckFontTable - -org $0ee86d - JSL RenderCreditsStatCounter - JMP.w AfterDeathCounterOutput - -org $0ee8fd - AfterDeathCounterOutput: + AND.w #$00FF + ASL A + JSL CheckFontTable + +org $0EE86D + JSL RenderCreditsStatCounter + JMP.w AfterDeathCounterOutput + +org $8EE8FD + AfterDeathCounterOutput: diff --git a/tables.asm b/tables.asm index b028017..a6bb7bb 100644 --- a/tables.asm +++ b/tables.asm @@ -1,138 +1,138 @@ ;================================================================================ ; Item Tables ;-------------------------------------------------------------------------------- -org $308000 ; bank #$30 ; PC 0x180000 - 0x180006 [encrypted] +org $B08000 ; bank #$30 ; PC 0x180000 - 0x180006 [encrypted] HeartPieceIndoorValues: HeartPiece_Forest_Thieves: - db #$17 ; #$17 = Heart Piece + db $17 ; #$17 = Heart Piece HeartPiece_Lumberjack_Tree: - db #$17 + db $17 HeartPiece_Spectacle_Cave: - db #$17 + db $17 HeartPiece_Circle_Bushes: - db #$17 + db $17 HeartPiece_Graveyard_Warp: - db #$17 + db $17 HeartPiece_Mire_Warp: - db #$17 + db $17 HeartPiece_Smith_Pegs: - db #$17 + db $17 ;-------------------------------------------------------------------------------- ; 0x180006 - 0x18000F (unused) [encrypted] ;-------------------------------------------------------------------------------- -org $308010 ; PC 0x180010 - 0x180017 [encrypted] +org $B08010 ; PC 0x180010 - 0x180017 [encrypted] SpriteItemValues: RupeeNPC_MoldormCave: - db #$46 ; #$46 = 300 Rupees + db $46 ; #$46 = 300 Rupees RupeeNPC_NortheastDarkSwampCave: - db #$46 ; #$46 = 300 Rupees + db $46 ; #$46 = 300 Rupees LibraryItem: - db #$1D ; #$1D = Book of Mudora + db $1D ; #$1D = Book of Mudora MushroomItem: - db #$29 ; #$29 = Mushroom + db $29 ; #$29 = Mushroom WitchItem: - db #$0D ; #$0D = Magic Powder + db $0D ; #$0D = Magic Powder MagicBatItem: - db #$4E ; #$4E = Half Magic Item (Default) - #$FF = Use Original Logic - See "HalfMagic" Below + db $4E ; #$4E = Half Magic Item (Default) - #$FF = Use Original Logic - See "HalfMagic" Below EtherItem: - db #$10 ; #$10 = Ether Medallion + db $10 ; #$10 = Ether Medallion BombosItem: - db #$0F ; #$0F = Bombos Medallion + db $0F ; #$0F = Bombos Medallion ;-------------------------------------------------------------------------------- ; 0x180017 - 0x18001F (unused) [encrypted] ;-------------------------------------------------------------------------------- -org $308020 ; PC 0x180020 +org $B08020 ; PC 0x180020 DiggingGameRNG: - db #$0F ; #$0F = 15 digs (default) (max ~30) -org $1DFD95 ; PC 0xEFD95 - db #$0F ; #$0F = 15 digs (default) (max ~30) -org $308021 ; PC 0x180021 + db $0F ; #$0F = 15 digs (default) (max ~30) +org $9DFD95 ; PC 0xEFD95 + db $0F ; #$0F = 15 digs (default) (max ~30) +org $B08021 ; PC 0x180021 ChestGameRNG: -db #$00 ; #$00 = 2nd chest (default) - #$01 = 1st chest +db $00 ; #$00 = 2nd chest (default) - #$01 = 1st chest ;-------------------------------------------------------------------------------- ;0 = Bombos ;1 = Ether ;2 = Quake -org $308022 ; PC 0x180022 +org $B08022 ; PC 0x180022 MireRequiredMedallion: -db #$01 ; #$01 = Ether (default) +db $01 ; #$01 = Ether (default) -org $308023 ; PC 0x180023 +org $B08023 ; PC 0x180023 TRockRequiredMedallion: -db #$02 ; #$02 = Quake (default) +db $02 ; #$02 = Quake (default) ;-------------------------------------------------------------------------------- -org $308024 ; PC 0x180024 - 0x180027 +org $B08024 ; PC 0x180024 - 0x180027 BigFairyHealth: -db #$A0 ; #$A0 = Refill Health (default) - #$00 = Don't Refill Health +db $A0 ; #$A0 = Refill Health (default) - #$00 = Don't Refill Health BigFairyMagic: -db #$00 ; #$80 = Refill Magic - #$00 = Don't Refill Magic (default) +db $00 ; #$80 = Refill Magic - #$00 = Don't Refill Magic (default) SpawnNPCHealth: -db #$A0 ; #$A0 = Refill Health (default) - #$00 = Don't Refill Health +db $A0 ; #$A0 = Refill Health (default) - #$00 = Don't Refill Health SpawnNPCMagic: -db #$00 ; #$80 = Refill Magic - #$00 = Don't Refill Magic (default) +db $00 ; #$80 = Refill Magic - #$00 = Don't Refill Magic (default) ;-------------------------------------------------------------------------------- -org $308028 ; PC 0x180028 +org $B08028 ; PC 0x180028 FairySword: -db #$03 ; #$03 = Golden Sword (default) +db $03 ; #$03 = Golden Sword (default) PedestalMusicCheck: -;org $08C435 ; <- 44435 - ancilla_receive_item.asm : 125 -;db #$01 ; #$01 = Master Sword (default) -org $0589B0 ; PC 0x289B0 ; sprite_master_sword.asm : 179 +;org $88C435 ; <- 44435 - ancilla_receive_item.asm : 125 +;db $01 ; #$01 = Master Sword (default) +org $8589B0 ; PC 0x289B0 ; sprite_master_sword.asm : 179 PedestalSword: -db #$01 ; #$01 = Master Sword (default) +db $01 ; #$01 = Master Sword (default) -org $308029 ; PC 0x180029 - 0x18002A +org $B08029 ; PC 0x180029 - 0x18002A SmithItemMode: -db #$01 ; #$00 = Classic Tempering Process - #$01 = Quick Item Get (default) +db $01 ; #$00 = Classic Tempering Process - #$01 = Quick Item Get (default) SmithItem: -db #$02 ; #$02 = Tempered Sword (default) +db $02 ; #$02 = Tempered Sword (default) -;org $06B48E ; PC 0x3348E ; sprite_smithy_bros.asm : 473 +;org $86B48E ; PC 0x3348E ; sprite_smithy_bros.asm : 473 ;SmithSwordCheck: -;db #$03 ; #$03 = Tempered Sword (default) ; THESE VALUES ARE +1 -org $06B55C ; PC 0x3355C ; sprite_smithy_bros.asm : 634 +;db $03 ; #$03 = Tempered Sword (default) ; THESE VALUES ARE +1 +org $86B55C ; PC 0x3355C ; sprite_smithy_bros.asm : 634 SmithSword: -db #$02 ; #$02 = Tempered Sword (default) +db $02 ; #$02 = Tempered Sword (default) ;-------------------------------------------------------------------------------- ; 0x18002B- 0x180030 (Unused) ;-------------------------------------------------------------------------------- -org $308031 ; PC 0x180031 +org $B08031 ; PC 0x180031 EnableEasterEggs: -db #$00 ; #$00 = Off (default) - #$01 = On +db $00 ; #$00 = Off (default) - #$01 = On ;-------------------------------------------------------------------------------- ; 0x180032 (unused) ;-------------------------------------------------------------------------------- -org $308033 ; PC 0x180033 +org $B08033 ; PC 0x180033 HeartBeep: -db #$20 ; #$00 = Off - #$20 = Normal (default) - #$40 = Half Speed - #$80 = Quarter Speed +db $20 ; #$00 = Off - #$20 = Normal (default) - #$40 = Half Speed - #$80 = Quarter Speed ;-------------------------------------------------------------------------------- ; 0x180034 - 0x180035 (Unused) ;-------------------------------------------------------------------------------- -org $308036 ; PC 0x180036 - 0x180037 +org $B08036 ; PC 0x180036 - 0x180037 RupoorDeduction: -dw #$000A ; #$0A - Default (10 decimal) +dw $000A ; #$0A - Default (10 decimal) ;-------------------------------------------------------------------------------- -org $308038 ; PC 0x180038 +org $B08038 ; PC 0x180038 LampConeSewers: -db #$01 ; #$00 = Off - #$01 = On (default) +db $01 ; #$00 = Off - #$01 = On (default) ;-------------------------------------------------------------------------------- ; 0x180039 - 0x18003A (Unused) ;-------------------------------------------------------------------------------- -org $30803B ; PC 0x18003B - PC 0x18003C +org $B0803B ; PC 0x18003B - PC 0x18003C MapMode: -db #$00 ; #$00 = Always On (default) - #$01 = Require Map Item +db $00 ; #$00 = Always On (default) - #$01 = Require Map Item CompassMode: -db #$00 ; #$00 = Off (default) - #$01 = Display Dungeon Count w/Compass - #$02 = Display Dungeon Count Always +db $00 ; #$00 = Off (default) - #$01 = Display Dungeon Count w/Compass - #$02 = Display Dungeon Count Always ;-------------------------------------------------------------------------------- -org $30803D ; PC 0x18003D +org $B0803D ; PC 0x18003D PersistentFloodgate: -db #$00 ; #$00 = Off (default) - #$01 = On +db $00 ; #$00 = Off (default) - #$01 = On ;-------------------------------------------------------------------------------- -org $30803E ; PC 0x18003E +org $B0803E ; PC 0x18003E InvincibleGanon: -db #$00 +db $00 ; #$00 = Off (default) ; #$01 = On ; #$02 = Require All Dungeons @@ -143,84 +143,84 @@ db #$00 ; #$07 = Require All Crystals and Crystal Bosses ; #$08 = Require All Crystal Bosses only ;-------------------------------------------------------------------------------- -org $30803F ; PC 0x18003F +org $B0803F ; PC 0x18003F HammerableGanon: -db #$00 ; #$00 = Off (default) - #$01 = On +db $00 ; #$00 = Off (default) - #$01 = On ;-------------------------------------------------------------------------------- ; 0x180040 - (unused) ;-------------------------------------------------------------------------------- -org $308041 ; PC 0x180041 +org $B08041 ; PC 0x180041 AllowSwordlessMedallionUse: -db #$00 ; #$00 = Off (default) - #$01 = Medallion Pads - #$02 = Always +db $00 ; #$00 = Off (default) - #$01 = Medallion Pads - #$02 = Always ;-------------------------------------------------------------------------------- -org $308042 ; PC 0x180042 +org $B08042 ; PC 0x180042 PermitSQFromBosses: -db #$00 ; #$00 = Off (default) - #$01 = On +db $00 ; #$00 = Off (default) - #$01 = On ;-------------------------------------------------------------------------------- ; 0x180043 (unused) ;-------------------------------------------------------------------------------- -org $308044 ; PC 0x180044 +org $B08044 ; PC 0x180044 AllowHammerTablets: -db #$00 ; #$00 = Off (default) - #$01 = On +db $00 ; #$00 = Off (default) - #$01 = On ;-------------------------------------------------------------------------------- -org $30805D ; PC 0x18005D +org $B0805D ; PC 0x18005D AllowHammerEvilBarrierWithFighterSword: -db #$00 ; #$00 = Off (default) - #$01 = On +db $00 ; #$00 = Off (default) - #$01 = On ;-------------------------------------------------------------------------------- -org $308045 ; PC 0x180045 +org $B08045 ; PC 0x180045 +; display ---edcba a: Small Keys, b: Big Key, c: Map, d: Compass, e: Bosses HUDDungeonItems: - ; display ---edcba a: Small Keys, b: Big Key, c: Map, d: Compass, e: Bosses -db #$00 +db $00 ;-------------------------------------------------------------------------------- ; 0x180046 (unused) ;-------------------------------------------------------------------------------- -org $308048 ; PC 0x180048 +org $B08048 ; PC 0x180048 MenuSpeed: -db #$08 ; #$08 (default) - higher is faster - #$E8 = instant open -org $0DDD9A ; PC 0x6DD9A (equipment.asm:95) ; Menu Down Chime -db #$11 ; #$11 = Vwoop Down (Default) - #$20 = Menu Chime -org $0DDF2A ; PC 0x6DF2A (equipment.asm:466) ; Menu Up Chime -db #$12 ; #$12 = Vwoop Up (Default) - #$20 = Menu Chime -org $0DE0E9 ; PC 0x6E0E9 (equipment.asm:780) ; Menu Up Chime -db #$12 ; #$12 = Vwoop Up (Default) - #$20 = Menu Chime +db $08 ; #$08 (default) - higher is faster - #$E8 = instant open +org $8DDD9A ; PC 0x6DD9A (equipment.asm:95) ; Menu Down Chime +db $11 ; #$11 = Vwoop Down (Default) - #$20 = Menu Chime +org $8DDF2A ; PC 0x6DF2A (equipment.asm:466) ; Menu Up Chime +db $12 ; #$12 = Vwoop Up (Default) - #$20 = Menu Chime +org $8DE0E9 ; PC 0x6E0E9 (equipment.asm:780) ; Menu Up Chime +db $12 ; #$12 = Vwoop Up (Default) - #$20 = Menu Chime ;-------------------------------------------------------------------------------- -org $308049 ; PC 0x180049 +org $B08049 ; PC 0x180049 MenuCollapse: -db #$00 ; #$00 = Press Start (default) - #$10 = Release Start +db $00 ; #$00 = Press Start (default) - #$10 = Release Start ;-------------------------------------------------------------------------------- -org $30804A ; PC 0x18004A +org $B0804A ; PC 0x18004A InvertedMode: -db #$00 ; #$00 = Normal (default) - #$01 = Inverted +db $00 ; #$00 = Normal (default) - #$01 = Inverted ;-------------------------------------------------------------------------------- -org $30804B ; PC 0x18004B +org $B0804B ; PC 0x18004B QuickSwapFlag: -db #$00 ; #$00 = Off (default) - #$01 = On +db $00 ; #$00 = Off (default) - #$01 = On ;-------------------------------------------------------------------------------- -org $30804C ; PC 0x18004C +org $B0804C ; PC 0x18004C SmithTravelsFreely: -db #$00 ; #$00 = Off (default) - #$01 = On (frog/smith can enter multi-entrance doors) +db $00 ; #$00 = Off (default) - #$01 = On (frog/smith can enter multi-entrance doors) ;-------------------------------------------------------------------------------- -org $30804D ; PC 0x18004D +org $B0804D ; PC 0x18004D EscapeAssist: ; ScrubMode: -db #$00 +db $00 ;---- -mba ;m - Infinite Magic ;b - Infinite Bombs ;a - Infinite Arrows ;-------------------------------------------------------------------------------- -org $30804E ; PC 0x18004E +org $B0804E ; PC 0x18004E UncleRefill: -db #$00 +db $00 ;---- -mba ;m - Refill Magic ;b - Refill Bombs ;a - Refill Arrows ;-------------------------------------------------------------------------------- -org $30804F ; PC 0x18004F +org $B0804F ; PC 0x18004F ByrnaInvulnerability: -db #$01 ; #$00 = Off - #$01 = On (default) +db $01 ; #$00 = Off - #$01 = On (default) ;-------------------------------------------------------------------------------- -org $308050 ; PC 0x180050 - 0x18005C +org $B08050 ; PC 0x180050 - 0x18005C CrystalPendantFlags_2: db $00 ; Sewers db $00 ; Hyrule Castle @@ -239,14 +239,14 @@ CrystalPendantFlags_2: ;Pendant: $00 ;Crystal: $40 ;-------------------------------------------------------------------------------- -org $30805E ; PC 0x18005E - Number of crystals required to enter GT +org $B0805E ; PC 0x18005E - Number of crystals required to enter GT NumberOfCrystalsRequiredForTower: -db #$07 ; #$07 = 7 Crystals -org $30805F ; PC 0x18005F - Number of crystals required to kill Ganon +db $07 ; #$07 = 7 Crystals +org $B0805F ; PC 0x18005F - Number of crystals required to kill Ganon NumberOfCrystalsRequiredForGanon: -db #$07 ; #$07 = 7 Crystals +db $07 ; #$07 = 7 Crystals ;-------------------------------------------------------------------------------- -org $308060 ; PC 0x180060 - 0x18007E +org $B08060 ; PC 0x180060 - 0x18007E ProgrammableItemLogicJump_1: JSL.l $000000 : RTL ProgrammableItemLogicJump_2: @@ -254,19 +254,19 @@ JSL.l $000000 : RTL ProgrammableItemLogicJump_3: JSL.l $000000 : RTL -org $308061 ; PC 0x180061 +org $B08061 ; PC 0x180061 ProgrammableItemLogicPointer_1: -dl #$000000 -org $308066 ; PC 0x180066 +dl $000000 +org $B08066 ; PC 0x180066 ProgrammableItemLogicPointer_2: -dl #$000000 -org $30806B ; PC 0x18006B +dl $000000 +org $B0806B ; PC 0x18006B ProgrammableItemLogicPointer_3: -dl #$000000 +dl $000000 ;-------------------------------------------------------------------------------- ; 0x18007F (unused) ;-------------------------------------------------------------------------------- -org $308070 ; PC 0x180070 - 0x18007F +org $B08070 ; PC 0x180070 - 0x18007F CrystalNumberTable: db $00 ; db $79 ; Swamp @@ -324,74 +324,74 @@ db $00 ; ;Warp BL : 7A ;Warp BR : 7B ;-------------------------------------------------------------------------------- -org $308080 ; PC 0x180080 - 0x180083 ; Default to fill on upgrade. Can be set to 0 to not fill. +org $B08080 ; PC 0x180080 - 0x180083 ; Default to fill on upgrade. Can be set to 0 to not fill. Upgrade5BombsRefill: -db #$32 +db $32 Upgrade10BombsRefill: -db #$32 +db $32 Upgrade5ArrowsRefill: -db #$46 +db $46 Upgrade10ArrowsRefill: -db #$46 +db $46 ;-------------------------------------------------------------------------------- -org $308084 ; PC 0x180084 - 0x180085 +org $B08084 ; PC 0x180084 - 0x180085 PotionHealthRefill: -db #$A0 ; #$A0 - Full Refill (Default) +db $A0 ; #$A0 - Full Refill (Default) PotionMagicRefill: -db #$80 ; #$80 - Full Refill (Default) +db $80 ; #$80 - Full Refill (Default) ;-------------------------------------------------------------------------------- -org $308086 ; PC 0x180086 +org $B08086 ; PC 0x180086 GanonAgahRNG: -db #$00 ; $00 = static rng, $01 = no extra blue balls/warps +db $00 ; $00 = static rng, $01 = no extra blue balls/warps ;-------------------------------------------------------------------------------- -org $308087 ; PC 0x180087 +org $B08087 ; PC 0x180087 IsEncrypted: -dw #$0000 ; $0000 = not encrypted, $0001 = encrypted with static key, $0002 = Encrypted w/ passcode entry screen +dw $0000 ; $0000 = not encrypted, $0001 = encrypted with static key, $0002 = Encrypted w/ passcode entry screen ;-------------------------------------------------------------------------------- -org $308089 ; PC 0x180089 +org $B08089 ; PC 0x180089 TurtleRockAutoOpenFix: -db #$00 ; #$00 - Normal, #$01 - Open TR Entrance if exiting from it +db $00 ; #$00 - Normal, #$01 - Open TR Entrance if exiting from it ;-------------------------------------------------------------------------------- -org $30808A ; PC 0x18008A +org $B0808A ; PC 0x18008A BlockCastleDoorsInRain: -db #$00 ; #$00 - Normal, $01 - Block them (Used by Entrance Rando in Standard Mode) +db $00 ; #$00 - Normal, $01 - Block them (Used by Entrance Rando in Standard Mode) ;-------------------------------------------------------------------------------- ; 0x18008B-0x18008D (unused) ;-------------------------------------------------------------------------------- -org $30808E ; PC 0x18008E +org $B0808E ; PC 0x18008E FakeBoots: db $00 ; #$00 = Off (default) - #$01 = On ;-------------------------------------------------------------------------------- ; 0x18008F (unused) ;-------------------------------------------------------------------------------- -org $308090 ; PC 0x180090 - 0x180097 +org $B08090 ; PC 0x180090 - 0x180097 ProgressiveSwordLimit: -db #$04 ; #$04 - 4 Swords (default) +db $04 ; #$04 - 4 Swords (default) ProgressiveSwordReplacement: -db #$47 ; #$47 - 20 Rupees (default) +db $47 ; #$47 - 20 Rupees (default) ProgressiveShieldLimit: -db #$03 ; #$03 - 3 Shields (default) +db $03 ; #$03 - 3 Shields (default) ProgressiveShieldReplacement: -db #$47 ; #$47 - 20 Rupees (default) +db $47 ; #$47 - 20 Rupees (default) ProgressiveArmorLimit: -db #$02 ; #$02 - 2 Armors (default) +db $02 ; #$02 - 2 Armors (default) ProgressiveArmorReplacement: -db #$47 ; #$47 - 20 Rupees (default) +db $47 ; #$47 - 20 Rupees (default) BottleLimit: -db #$04 ; #$04 - 4 Bottles (default) +db $04 ; #$04 - 4 Bottles (default) BottleLimitReplacement: -db #$47 ; #$47 - 20 Rupees (default) +db $47 ; #$47 - 20 Rupees (default) ProgressiveBowLimit: -db #$02 ; #$02 - 2 Bows (default) +db $02 ; #$02 - 2 Bows (default) ProgressiveBowReplacement: -db #$47 ; #$47 - 20 Rupees (default) +db $47 ; #$47 - 20 Rupees (default) ;-------------------------------------------------------------------------------- ; 0x18009A - 0x18009C one mind ;-------------------------------------------------------------------------------- -org $30809A ; PC 0x18009A +org $B0809A ; PC 0x18009A OneMindPlayerCount: db 0 -org $30809B ; PC 0x18009B - 0x18009C +org $B0809B ; PC 0x18009B - 0x18009C OneMindTimerInit: dw 0 ;-------------------------------------------------------------------------------- @@ -400,37 +400,37 @@ dw 0 ; ; b - boss icon ;-------------------------------------------------------------------------------- -org $30809D +org $B0809D DungeonMapIcons: db $01 ;-------------------------------------------------------------------------------- ; 0x18009E - 0x18009F (unused) ;-------------------------------------------------------------------------------- -org $3080A0 ; PC 0x1800A0 - 0x1800A4 +org $B080A0 ; PC 0x1800A0 - 0x1800A4 Bugfix_MirrorlessSQToLW: -db #$01 ; #$00 = Original Behavior - #$01 = Randomizer Behavior (Default) +db $01 ; #$00 = Original Behavior - #$01 = Randomizer Behavior (Default) Bugfix_SwampWaterLevel: -db #$01 ; #$00 = Original Behavior - #$01 = Randomizer Behavior (Default) +db $01 ; #$00 = Original Behavior - #$01 = Randomizer Behavior (Default) Bugfix_PreAgaDWDungeonDeathToFakeDW: -db #$01 ; #$00 = Original Behavior - #$01 = Randomizer Behavior (Default) +db $01 ; #$00 = Original Behavior - #$01 = Randomizer Behavior (Default) Bugfix_SetWorldOnAgahnimDeath: -db #$01 ; #$00 = Original Behavior - #$01 = Randomizer Behavior (Default) +db $01 ; #$00 = Original Behavior - #$01 = Randomizer Behavior (Default) Bugfix_PodEG: -db #$01 ; #$00 = Original Behavior - #$01 = Randomizer Behavior (Default) +db $01 ; #$00 = Original Behavior - #$01 = Randomizer Behavior (Default) ;-------------------------------------------------------------------------------- ; 0x1800A5 - 0x1800AF (unused) ;-------------------------------------------------------------------------------- -org $3080B0 ; 0x1800B0-0x1800BF +org $B080B0 ; 0x1800B0-0x1800BF StaticDecryptionKey: dd $00000000, $00000000, $00000000, $00000000 ;-------------------------------------------------------------------------------- -org $3080C0 ; 0x1800C0-0x1800C7 [encrypted] +org $B080C0 ; 0x1800C0-0x1800C7 [encrypted] KnownEncryptedValue: db $31, $41, $59, $26, $53, $58, $97, $93 ;-------------------------------------------------------------------------------- ; 0x1800C8 - 0x1800FF (unused) ;-------------------------------------------------------------------------------- -org $308100 ; PC 0x180100 (0x40 bytes) +org $B08100 ; PC 0x180100 (0x40 bytes) ShovelSpawnTable: db $B2 ; Gold Bee db $D8, $D8, $D8 ; Single Heart @@ -449,178 +449,178 @@ ShovelSpawnTable: ;-------------------------------------------------------------------------------- ; Bank 30 resumes below at HeartPieceOutdoorValues ;-------------------------------------------------------------------------------- -org $098B7C ; PC 0x48B7C +org $898B7C ; PC 0x48B7C EtherTablet: - db #$10 ; #$10 = Ether -org $08CAA9 ; PC 0x44AA9 - db #$10 ; #$10 = Ether + db $10 ; #$10 = Ether +org $88CAA9 ; PC 0x44AA9 + db $10 ; #$10 = Ether -org $098B81 ; PC 0x48B81 +org $898B81 ; PC 0x48B81 BombosTablet: - db #$0F ; #$0F = Bombos -org $08CAAE ; PC 0x44AAE - db #$0F ; #$0F = Bombos + db $0F ; #$0F = Bombos +org $88CAAE ; PC 0x44AAE + db $0F ; #$0F = Bombos ;-------------------------------------------------------------------------------- -org $05FBD2 ; PC 0x2FBD2 - sprite_mad_batter.asm:209 - (#$01) +org $85FBD2 ; PC 0x2FBD2 - sprite_mad_batter.asm:209 - (#$01) HalfMagic: db $01 ; #$01 = 1/2 Magic (default) - #$02 = 1/4 Magic ;-------------------------------------------------------------------------------- -org $07ADA7 ; PC 0x3ADA7 - Bank07.asm:7216 - (db 4, 8, 8) +org $87ADA7 ; PC 0x3ADA7 - Bank07.asm:7216 - (db 4, 8, 8) CapeMagicUse: db $04, $08, $10 ; change to db $04, $08, $08 for original cape behavior -org $08DC42 ; PC 0x45C42 - ancilla_cane_spark.asm:200 - (db 4, 2, 1) +org $88DC42 ; PC 0x45C42 - ancilla_cane_spark.asm:200 - (db 4, 2, 1) ByrnaMagicUsage: -db #$04, #$02, #$01 ; normal, 1/2, 1/4 magic +db $04, #$02, #$01 ; normal, 1/2, 1/4 magic ;-------------------------------------------------------------------------------- ;Dungeon Music -;org $02D592 ; PC 0x15592 +;org $82D592 ; PC 0x15592 ;11 - Pendant Dungeon ;16 - Crystal Dungeon -org $02D592+$03 +org $82D592+$03 Music_Castle: db $10,$10,$10 -org $02D592+$24 +org $82D592+$24 Music_AgaTower: db $10 -org $02D592+$81 +org $82D592+$81 Music_Sewer: db $10 -org $02D592+$08 +org $82D592+$08 Music_Eastern: db $11 -org $02D592+$09 +org $82D592+$09 Music_Desert: db $11, $11, $11, $11 -org $02D592+$33 +org $82D592+$33 Music_Hera: db $11 -org $02907A ; 0x1107A - Bank02.asm:3089 (#$11) +org $82907A ; 0x1107A - Bank02.asm:3089 (#$11) Music_Hera2: db $11 -org $028B8C ; 0x10B8C - Bank02.asm:2231 (#$11) +org $828B8C ; 0x10B8C - Bank02.asm:2231 (#$11) Music_Hera3: db $11 -org $02D592+$26 +org $82D592+$26 Music_Darkness: db $16 -org $02D592+$25 +org $82D592+$25 Music_Swamp: db $16 -org $02D592+$28 +org $82D592+$28 Music_Skull: db $16, $16, $16, $16 -org $02D592+$76 +org $82D592+$76 Music_Skull_Drop: db $16, $16, $16, $16 -org $02D592+$34 +org $82D592+$34 Music_Thieves: db $16 -org $02D592+$2D +org $82D592+$2D Music_Ice: db $16 -org $02D592+$27 +org $82D592+$27 Music_Mire: db $16 -org $02D592+$35 +org $82D592+$35 Music_TRock: db $16 -org $02D592+$15 +org $82D592+$15 Music_TRock2: db $16 -org $02D592+$18 +org $82D592+$18 Music_TRock3: db $16, $16 -org $02D592+$37 +org $82D592+$37 Music_GTower: db $16 ;-------------------------------------------------------------------------------- ; OWG EDM bridge sign text pointer (Message id of the upper left of map05 = map05) ;-------------------------------------------------------------------------------- -org $07F501 -dw #$018E +org $87F501 +dw $018E ;-------------------------------------------------------------------------------- ; GT sign text pointer (Message id of the upper right of map43 = map44) ;-------------------------------------------------------------------------------- -org $07F57F -dw #$0190 +org $87F57F +dw $0190 ;-------------------------------------------------------------------------------- ; Pyramid sign text pointer (Message id of the upper left of map5B = map5B) ;-------------------------------------------------------------------------------- -org $07F5AD -dw #$0191 +org $87F5AD +dw $0191 ;-------------------------------------------------------------------------------- ; HC (inverted) left sign text pointer (Message id of the upper left of map1B = map1B) ;-------------------------------------------------------------------------------- -org $07F52D -dw #$0190 +org $87F52D +dw $0190 ;-------------------------------------------------------------------------------- ; HC (inverted) right sign text pointer (Message id of the upper right of map1B = map1C) ;-------------------------------------------------------------------------------- -org $07F52F -dw #$0191 +org $87F52F +dw $0191 ;-------------------------------------------------------------------------------- ;Map Pendant / Crystal Indicators -org $0ABF2E ; PC 0x53F02 +org $8ABF2E ; PC 0x53F02 dw $0100 ; #$6234 - Master Sword -org $0ABEF8 ; PC 0x53EF8 +org $8ABEF8 ; PC 0x53EF8 MapObject_Eastern: dw $6038 ; #$6038 - Green Pendant / Courage -org $0ABF1C ; PC 0x53F1C +org $8ABF1C ; PC 0x53F1C MapObject_Desert: dw $6034 ; #$6034 - Blue Pendant / Power -org $0ABF0A ; PC 0x53F0A +org $8ABF0A ; PC 0x53F0A MapObject_Hera: dw $6032 ; #$6032 - Red Pendant / Wisdom -org $0ABF00 ; PC 0x53F00 +org $8ABF00 ; PC 0x53F00 MapObject_Darkness: dw $6434 ; #6434 - Crystal -org $0ABF6C ; PC 0x53F6C +org $8ABF6C ; PC 0x53F6C MapObject_Swamp: dw $6434 ; #6434 - Crystal -org $0ABF12 ; PC 0x53F12 +org $8ABF12 ; PC 0x53F12 MapObject_Skull: dw $6434 ; #6434 - Crystal -org $0ABF36 ; PC 0x53F36 +org $8ABF36 ; PC 0x53F36 MapObject_Thieves: dw $6434 ; #6434 - Crystal -org $0ABF5A ; PC 0x53F5A +org $8ABF5A ; PC 0x53F5A MapObject_Ice: dw $6432 ; #6434 - Crystal 5/6 -org $0ABF48 ; PC 0x53F48 +org $8ABF48 ; PC 0x53F48 MapObject_Mire: dw $6432 ; #6434 - Crystal 5/6 -org $0ABF24 ; PC 0x53F24 +org $8ABF24 ; PC 0x53F24 MapObject_TRock: dw $6434 ; #6434 - Crystal ;-------------------------------------------------------------------------------- -org $02A09B ; PC 0x1209B - Bank02.asm:5802 - (pool MilestoneItem_Flags:) +org $82A09B ; PC 0x1209B - Bank02.asm:5802 - (pool MilestoneItem_Flags:) CrystalPendantFlags: db $00 ; Sewers db $00 ; Hyrule Castle @@ -650,7 +650,7 @@ CrystalPendantFlags: ;-------------------------------------------------------------------------------- ;Dungeons with no drops should match their respective world's normal vanilla prize ;xxx ;-------------------------------------------------------------------------------- -org $01C6FC ; PC 0xC6FC - Bank01.asm:10344 - (db $00, $00, $01, $02, $00, $06, $06, $06, $06, $06, $03, $06, $06) +org $81C6FC ; PC 0xC6FC - Bank01.asm:10344 - (db $00, $00, $01, $02, $00, $06, $06, $06, $06, $06, $03, $06, $06) db $00 ; Sewers db $00 ; Hyrule Castle db $01 ; Eastern Palace @@ -672,7 +672,7 @@ org $01C6FC ; PC 0xC6FC - Bank01.asm:10344 - (db $00, $00, $01, $02, $00, $06, $ ;Bombos: $05 ;Crystal: $06 ;-------------------------------------------------------------------------------- -org $02885E ; PC 0x1085E - Bank02.asm:1606 - (dw $0006, $005A, $0029, $0090, $00DE, $00A4, $00AC, $000D) ; DEPRECATED - DISCONTINUE USE +org $82885E ; PC 0x1085E - Bank02.asm:1606 - (dw $0006, $005A, $0029, $0090, $00DE, $00A4, $00AC, $000D) ; DEPRECATED - DISCONTINUE USE dw $0006 ; Crystal 2 Location dw $005A ; Crystal 1 Location dw $0029 ; Crystal 3 Location @@ -695,28 +695,28 @@ dw $000D ; Agahnim II Location ; 0D ;AC = Blind Room ;0D = Agahnim 2 Room ;-------------------------------------------------------------------------------- -;org $098B7D ; PC 0x48B7D - ancilla_init.asm:1630 - (db $37, $39, $38) ; DEPRECATED - DISCONTINUE USE +;org $898B7D ; PC 0x48B7D - ancilla_init.asm:1630 - (db $37, $39, $38) ; DEPRECATED - DISCONTINUE USE ;PendantEastern: -;db #$37 +;db $37 ;PendantDesert: -;db #$39 +;db $39 ;PendantHera: -;db #$38 +;db $38 ;37:Pendant 1 Green / Courage ;38:Pendant 3 Red / Wisdom ;39:Pendant 2 Blue / Power ;-------------------------------------------------------------------------------- -org $07B51D ; PC 0x3B51D +org $87B51D ; PC 0x3B51D BlueBoomerangSubstitution: -db #$FF ; no substitution -org $07B53B ; PC 0x3B53B +db $FF ; no substitution +org $87B53B ; PC 0x3B53B RedBoomerangSubstitution: -db #$FF ; no substitution +db $FF ; no substitution ;-------------------------------------------------------------------------------- -;org $08D01A ; PC 0x4501A - ancilla_flute.asm - 42 +;org $88D01A ; PC 0x4501A - ancilla_flute.asm - 42 ;OldHauntedGroveItem: -; db #$14 ; #$14 = Flute +; db $14 ; #$14 = Flute ;-------------------------------------------------------------------------------- ;2B:Bottle Already Filled w/ Red Potion ;2C:Bottle Already Filled w/ Green Potion @@ -724,90 +724,90 @@ db #$FF ; no substitution ;3C:Bottle Already Filled w/ Bee ;3D:Bottle Already Filled w/ Fairy ;48:Bottle Already Filled w/ Gold Bee -org $06C8FF ; PC 0x348FF +org $86C8FF ; PC 0x348FF WaterfallPotion: ; <-------------------------- FAIRY POTION STUFF HERE - db #$2C ; #$2C = Green Potion -org $06C93B ; PC 0x3493B + db $2C ; #$2C = Green Potion +org $86C93B ; PC 0x3493B PyramidPotion: - db #$2C ; #$2C = Green Potion + db $2C ; #$2C = Green Potion ;-------------------------------------------------------------------------------- -org $308140 ; PC 0x180140 - 0x18014A [encrypted] +org $B08140 ; PC 0x180140 - 0x18014A [encrypted] HeartPieceOutdoorValues: HeartPiece_Spectacle: - db #$17 + db $17 HeartPiece_Mountain_Warp: - db #$17 + db $17 HeartPiece_Maze: - db #$17 + db $17 HeartPiece_Desert: - db #$17 + db $17 HeartPiece_Lake: - db #$17 + db $17 HeartPiece_Swamp: - db #$17 + db $17 HeartPiece_Cliffside: - db #$17 + db $17 HeartPiece_Pyramid: - db #$17 + db $17 HeartPiece_Digging: - db #$17 + db $17 HeartPiece_Zora: - db #$17 + db $17 HauntedGroveItem: - db #$14 ; #$14 = Flute + db $14 ; #$14 = Flute ;-------------------------------------------------------------------------------- ; 0x18014B - 0x18014F (unused) [encrypted] ;================================================================================ -org $308150 ; PC 0x180150 - 0x180159 [encrypted] +org $B08150 ; PC 0x180150 - 0x180159 [encrypted] HeartContainerBossValues: HeartContainer_ArmosKnights: - db #$3E ; #$3E = Boss Heart (putting pendants here causes main pendants to not drop for obvious (in retrospect) reasons) + db $3E ; #$3E = Boss Heart (putting pendants here causes main pendants to not drop for obvious (in retrospect) reasons) HeartContainer_Lanmolas: - db #$3E + db $3E HeartContainer_Moldorm: - db #$3E + db $3E HeartContainer_HelmasaurKing: - db #$3E + db $3E HeartContainer_Arrghus: - db #$3E + db $3E HeartContainer_Mothula: - db #$3E + db $3E HeartContainer_Blind: - db #$3E + db $3E HeartContainer_Kholdstare: - db #$3E + db $3E HeartContainer_Vitreous: - db #$3E + db $3E HeartContainer_Trinexx: - db #$3E + db $3E ;-------------------------------------------------------------------------------- ; 0x180159 - 0x18015F (unused) [encrypted] ;================================================================================ -org $308160 ; PC 0x180160 - 0x180162 +org $B08160 ; PC 0x180160 - 0x180162 BonkKey_Desert: - db #$24 ; #$24 = Small Key (default) + db $24 ; #$24 = Small Key (default) BonkKey_GTower: - db #$24 ; #$24 = Small Key (default) + db $24 ; #$24 = Small Key (default) StandingKey_Hera: - db #$24 ; #$24 = Small Key (default) + db $24 ; #$24 = Small Key (default) ;-------------------------------------------------------------------------------- ; 0x180163 - 0x180164 (unused) ;================================================================================ -org $308165 ; PC 0x180165 +org $B08165 ; PC 0x180165 GoalItemIcon: -dw #$280E ; #$280D = Star - #$280E = Triforce Piece (default) +dw $280E ; #$280D = Star - #$280E = Triforce Piece (default) ;================================================================================ -org $308167 ; PC 0x180167-0x180167 +org $B08167 ; PC 0x180167-0x180167 GoalItemRequirement: dw $0000 ; #$0000 = Off (default) - #$XXXX = Require $XX Goal Items - #$FFFF = Counter-Only ;================================================================================ -org $308169 ; PC 0x180169 +org $B08169 ; PC 0x180169 AgahnimDoorStyle: -db #$01 ; #00 = Never Locked - #$01 = Locked During Escape (default) - #$02 = Locked Without 7 Crystals +db $01 ; #00 = Never Locked - #$01 = Locked During Escape (default) - #$02 = Locked Without 7 Crystals ;================================================================================ -org $30816A ; PC 0x18016A +org $B0816A ; PC 0x18016A FreeItemText: -db #$00 ; #00 = Off (default) +db $00 ; #00 = Off (default) ;---o bmcs ;o - enabled for outside dungeon items ;b - enabled for inside big key items @@ -815,145 +815,145 @@ db #$00 ; #00 = Off (default) ;c - enabled for inside compass items ;s - enabled for inside small key items ;================================================================================ -org $30816B ; PC 0x18016B - 0x18016D +org $B0816B ; PC 0x18016B - 0x18016D HardModeExclusionCaneOfByrnaUsage: -db #$04, #$02, #$01 ; Normal, 1/2, 1/4 Magic -org $30816E ; PC 0x18016E - 308170 +db $04, #$02, #$01 ; Normal, 1/2, 1/4 Magic +org $B0816E ; PC 0x18016E - 308170 HardModeExclusionCapeUsage: -db #$04, #$08, #$10 ; Normal, 1/2, 1/4 Magic +db $04, #$08, #$10 ; Normal, 1/2, 1/4 Magic ;================================================================================ -org $308171 ; PC 0x180171 +org $B08171 ; PC 0x180171 GanonPyramidRespawn: -db #$01 ; #00 = Do not respawn on Pyramid after Death - #$01 = Respawn on Pyramid after Death (default) +db $01 ; #00 = Do not respawn on Pyramid after Death - #$01 = Respawn on Pyramid after Death (default) ;================================================================================ -org $308172 ; PC 0x180172 +org $B08172 ; PC 0x180172 GenericKeys: -db #$00 ; #00 = Dungeon-Specific Keys (Default) - #$01 = Generic Keys +db $00 ; #00 = Dungeon-Specific Keys (Default) - #$01 = Generic Keys ;================================================================================ -org $308173 ; PC 0x180173 +org $B08173 ; PC 0x180173 Bob: -db #$01 ; #00 = Off - #$01 = On (Default) +db $01 ; #00 = Off - #$01 = On (Default) ;================================================================================ -org $308174 ; PC 0x180174 +org $B08174 ; PC 0x180174 ; Flag to fix Fake Light World/Fake Dark World as caused by leaving the underworld ; to the other world (As can be caused by EG, Certain underworld clips, or Entance Randomizer). ; Currently, Fake Worlds triggered by other causes like YBA's Fake Flute, are not affected. FixFakeWorld: -db #$01 ; #00 = Fix Off (Default) - #$01 = Fix On +db $01 ; #00 = Fix Off (Default) - #$01 = Fix On ;================================================================================ -org $308175 ; PC 0x180175 - 0x180179 +org $B08175 ; PC 0x180175 - 0x180179 ArrowMode: -db #$00 ; #00 = Normal (Default) - #$01 = Rupees +db $00 ; #00 = Normal (Default) - #$01 = Rupees ArrowModeWoodArrowCost: ; keep these together -dw #$000A ; #$000A = 10 (Default) +dw $000A ; #$000A = 10 (Default) ArrowModeSilverArrowCost: ; keep these together -dw #$0032 ; #$0032 = 50 (Default) +dw $0032 ; #$0032 = 50 (Default) ;================================================================================ -org $30817A ; PC 0x18017A ; #$2000 for Eastern Palace +org $B0817A ; PC 0x18017A ; #$2000 for Eastern Palace MapReveal_Sahasrahla: -dw #$0000 -org $30817C ; PC 0x18017C ; #$0140 for Ice Palace and Misery Mire +dw $0000 +org $B0817C ; PC 0x18017C ; #$0140 for Ice Palace and Misery Mire MapReveal_BombShop: -dw #$0000 +dw $0000 ;================================================================================ -org $30817E ; PC 0x18017E +org $B0817E ; PC 0x18017E Restrict_Ponds: -db #$01 ; #$00 = Original Behavior - #$01 - Restrict to Bottles (Default) +db $01 ; #$00 = Original Behavior - #$01 - Restrict to Bottles (Default) ;================================================================================ -org $30817F ; PC 0x18017F +org $B0817F ; PC 0x18017F DisableFlashing: -db #$00 ; #$00 = Flashing Enabled (Default) - #$01 = Flashing Disabled +db $00 ; #$00 = Flashing Enabled (Default) - #$01 = Flashing Disabled ;================================================================================ ;---- --hb ;h - Hookshot ;b - Boomerang -org $308180 ; PC 0x180180 +org $B08180 ; PC 0x180180 StunItemAction: -db #$03 ; #$03 = Hookshot and Boomerang (Default) +db $03 ; #$03 = Hookshot and Boomerang (Default) ;================================================================================ -org $308181 ; PC 0x180181 +org $B08181 ; PC 0x180181 SilverArrowsUseRestriction: -db #$00 ; #$00 = Off (Default) - #$01 = Only At Ganon +db $00 ; #$00 = Off (Default) - #$01 = Only At Ganon ;================================================================================ -org $308182 ; PC 0x180182 +org $B08182 ; PC 0x180182 SilverArrowsAutoEquip: -db #$01 ; #$00 = Off - #$01 = Collection Time (Default) - #$02 = Entering Ganon - #$03 = Collection Time & Entering Ganon +db $01 ; #$00 = Off - #$01 = Collection Time (Default) - #$02 = Entering Ganon - #$03 = Collection Time & Entering Ganon ;================================================================================ -org $308183 ; PC 0x180183 +org $B08183 ; PC 0x180183 FreeUncleItemAmount: -dw #$12C ; 300 rupees (Default) +dw $12C ; 300 rupees (Default) ;-------------------------------------------------------------------------------- -org $308185 ; PC 0x180185 +org $B08185 ; PC 0x180185 RainDeathRefillTable: RainDeathRefillMagic_Uncle: -db #$00 +db $00 RainDeathRefillBombs_Uncle: -db #$00 +db $00 RainDeathRefillArrows_Uncle: -db #$00 +db $00 RainDeathRefillMagic_Cell: -db #$00 +db $00 RainDeathRefillBombs_Cell: -db #$00 +db $00 RainDeathRefillArrows_Cell: -db #$00 +db $00 RainDeathRefillMagic_Mantle: -db #$00 +db $00 RainDeathRefillBombs_Mantle: -db #$00 +db $00 RainDeathRefillArrows_Mantle: -db #$00 +db $00 ;================================================================================ ; 0x18018E - 0x18018F (unused) ;================================================================================ -org $308190 ; PC 0x180190 - 0x180192 +org $B08190 ; PC 0x180190 - 0x180192 TimerStyle: -db #$00 ; #$00 = Off (Default) - #$01 Countdown - #$02 = Stopwatch +db $00 ; #$00 = Off (Default) - #$01 Countdown - #$02 = Stopwatch TimeoutBehavior: -db #$00 ; #$00 = DNF (Default) - #$01 = Sign Change (Requires TimerRestart == 1) - #$02 = OHKO - #$03 = End Game +db $00 ; #$00 = DNF (Default) - #$01 = Sign Change (Requires TimerRestart == 1) - #$02 = OHKO - #$03 = End Game TimerRestart: -db #$00 ; #$00 = Locked (Default) - #$01 = Restart +db $00 ; #$00 = Locked (Default) - #$01 = Restart ;-------------------------------------------------------------------------------- -org $308193 ; PC 0x180193 +org $B08193 ; PC 0x180193 ServerRequestMode: -db #$00 ; #$00 = Off (Default) - #$01 = Synchronous - #$02 = Asychronous +db $00 ; #$00 = Off (Default) - #$01 = Synchronous - #$02 = Asychronous ;--------------------------------------------------------------------------------- -org $308194 ; PC 0x180194 +org $B08194 ; PC 0x180194 TurnInGoalItems: -db #$01 ; #$00 = Instant win if last goal item collected. $01 = (Default) must turn in goal items +db $01 ; #$00 = Instant win if last goal item collected. $01 = (Default) must turn in goal items ;-------------------------------------------------------------------------------- -org $308195 ; PC 0x180195 +org $B08195 ; PC 0x180195 ByrnaCaveSpikeDamage: -db #$08 ; #$08 = 1 Heart (default) - #$02 = 1/4 Heart +db $08 ; #$08 = 1 Heart (default) - #$02 = 1/4 Heart ;-------------------------------------------------------------------------------- ; 0x180196 - 0x1801FF (unused) ;================================================================================ -org $308200 ; PC 0x180200 - 0x18020B +org $B08200 ; PC 0x180200 - 0x18020B RedClockAmount: -dw #$4650, #$0000 ; $00004650 = +5 minutes +dw $4650, #$0000 ; $00004650 = +5 minutes BlueClockAmount: -dw #$B9B0, #$FFFF ; $FFFFB9B0 = -5 minutes +dw $B9B0, #$FFFF ; $FFFFB9B0 = -5 minutes GreenClockAmount: -dw #$0000, #$0000 +dw $0000, #$0000 ;-------------------------------------------------------------------------------- ; 0x18020C-0x18020F (unused) ;-------------------------------------------------------------------------------- ;================================================================================ -org $09E3BB ; PC 0x4E3BB +org $89E3BB ; PC 0x4E3BB db $E4 ; Hera Basement Key (Set to programmable HP $EB) (set to $E4 for original hookable/boomable key behavior) ;================================================================================ -org $308210 ; PC 0x180210 +org $B08210 ; PC 0x180210 RandomizerSeedType: -db #$00 ; #$00 = Casual (default) - #$01 = Glitched - #$02 = Speedrunner - #$A0 = Super Metroid Combo - #$FF = Not Randomizer +db $00 ; #$00 = Casual (default) - #$01 = Glitched - #$02 = Speedrunner - #$A0 = Super Metroid Combo - #$FF = Not Randomizer ;-------------------------------------------------------------------------------- -org $308211 ; PC 0x180211 +org $B08211 ; PC 0x180211 GameType: ;---- ridn ;r - room randomization ;i - item randomization ;d - door/entrance randomization ;n - enemy randomization -db #$00 ; #$00 = Not Randomized (default) +db $00 ; #$00 = Not Randomized (default) ;-------------------------------------------------------------------------------- ;dgGe mutT ;d - Nonstandard Dungeon Configuration (Not Map/Compass/BigKey/SmallKeys in same quantity as vanilla) @@ -965,30 +965,30 @@ db #$00 ; #$00 = Not Randomized (default) ;u - Contains Unreachable Items ;t - Minor Trolling (Swapped around levers, etc) ;T - Major Trolling (Forced-guess softlocks, impossible seed, etc) -org $308212 ; PC 0x180212 +org $B08212 ; PC 0x180212 WarningFlags: -db #$00 +db $00 ;-------------------------------------------------------------------------------- -org $308213 ; PC 0x180213 +org $B08213 ; PC 0x180213 TournamentSeed: -db #$00 ; #$00 = Off (default) - #$01 = On +db $00 ; #$00 = Off (default) - #$01 = On TournamentSeedInverse: -db #$01 ; #$00 = On - #$01 = Off (Default) +db $01 ; #$00 = On - #$01 = Off (Default) ;-------------------------------------------------------------------------------- -org $308215 ; PC 0x180215 +org $B08215 ; PC 0x180215 SeedHash: db $00, $01, $02, $03, $04 ;-------------------------------------------------------------------------------- -org $30821A ; PC 0x18021A +org $B0821A ; PC 0x18021A NoBGM: db $00 ; $00 = BGM enabled (default) $01 = BGM disabled -org $30821B ; PC 0x18021B +org $B0821B ; PC 0x18021B FastFanfare: db $00 ; $00 = Normal fanfare (default) $01 = Fast fanfare -org $30821C ; PC 0x18021C +org $B0821C ; PC 0x18021C MSUResumeType: db $01 ; Type of tracks to resume #$00 = Everything - #$01 = Overworld (default) -org $30821D ; PC 0x18021D +org $B0821D ; PC 0x18021D MSUResumeTimer: dw $0708 ; Number of frames on a different track until we no longer resume (0x708 = 1800 = ~30s) ;-------------------------------------------------------------------------------- @@ -996,7 +996,7 @@ dw $0708 ; Number of frames on a different track until we no longer resume (0x70 ;================================================================================ ; $308220 (0x180220) - $30823F (0x18023F) ; Plandomizer Author Name (ASCII) - Leave unused chars as 0 -org $308220 ; PC 0x180220 +org $B08220 ; PC 0x180220 ;================================================================================ ; $308240 (0x180420) - $308246 (0x180246) ; For starting areas in single entrance caves, we specify which row in the StartingAreaExitTable @@ -1009,11 +1009,11 @@ org $308220 ; PC 0x180220 ; Position 4: Mantle ; Position 5: Middle of Old Man Cave ; Position 6: Old Man's House -org $308240 ; PC 0x180240 +org $B08240 ; PC 0x180240 StartingAreaExitOffset: db $00, $00, $00, $00, $00, $00, $00 ;-------------------------------------------------------------------------------- -org $308247 ; PC 0x180247 +org $B08247 ; PC 0x180247 ; For any starting areas in single entrance caves you can specify the overworld door here ; to enable drawing the doorframes These values should be the overworld door index+1. ; A value of zero will draw no door frame. @@ -1023,7 +1023,7 @@ db $00, $00, $00, $00, $00, $00, $00 ; 0x18024E - 0x18024F (unused) ;------------------------------------------------------------------------------- ; $308250 (0x180250) - $30829F (0x18029F) -org $308250 ; PC 0x180250 +org $B08250 ; PC 0x180250 StartingAreaExitTable: ; This has the same format as the main Exit table, except ; is stored row major instead of column major @@ -1045,7 +1045,7 @@ DungeonItemMasks: ;--------------------------------------------------------------------------------- ;-------------------------------------------------------------------------------- ; $308300 (0x180300) - $30834F (0x18034F) -org $308300 ; PC 0x180300 +org $B08300 ; PC 0x180300 ExtraHole_Map16: dw $FFFF, $FFFF, $FFFF, $FFFF, $FFFF, $FFFF, $FFFF, $FFFF dw $FFFF, $FFFF, $FFFF, $FFFF, $FFFF, $FFFF, $FFFF, $FFFF @@ -1059,27 +1059,27 @@ db $00, $00, $00, $00, $00, $00, $00, $00 ; $308350 (0x180350) - $30834F (0x18034F) ; Correspond to the three start options ; do not set for a starting location that is using a single entrance cave -org $308350 ; PC 0x180350 +org $B08350 ; PC 0x180350 ShouldStartatExit: db $00, $00, $00 ;-------------------------------------------------------------------------------- ; $308358 (0x180358) fixes major glitches ; 0x00 - fix ; otherwise dont fix various major glitches -org $308358 +org $B08358 AllowAccidentalMajorGlitch: db $00 ;-------------------------------------------------------------------------------- ; GFX pointers (0x180359 - 0x18035B) ; For 3rd party sprite stuff ;-------------------------------------------------------------------------------- -org $308359 +org $B08359 dl GfxPalettes -org $30835C +org $B0835C dl ItemReceiptGraphicsOffsets -org $30835F +org $B0835F dl ItemReceiptGraphicsOffsets ; reserving up to 7F for more pointers as needed @@ -1090,7 +1090,7 @@ dl ItemReceiptGraphicsOffsets ; $309500 (0x181500) - $309FFF (0x181FFF) original 0x39C bytes ; Replacement Ending Sequence Text Data ; if you modify this table you will need to modify the pointers to it located at $0EECC0 -org $309500 ; PC 0x181500 +org $B09500 ; PC 0x181500 EndingSequenceText: ; the return of the king db $62, $65, $00, $2B, $2D, $21, $1E, $9F, $2B, $1E, $2D, $2E, $2B, $27, $9F, $28, $1F, $9F, $2D, $21, $1E, $9F, $24, $22, $27, $20 @@ -1159,10 +1159,10 @@ db $62, $A8, $00, $1D, $4A, $43, $3C, $3C, $47, $4A, $9F, $38, $3E, $38, $40, $4 db $62, $EC, $00, $0F, $62, $6B, $6E, $61, $72, $61, $6E, $78 db $63, $0C, $00, $0F, $88, $91, $94, $87, $98, $87, $94, $9E ;-------------------------------------------------------------------------------- -; org $0EECC0 ; PC 0x76CC0 poiters for above scenes +; org $8EECC0 ; PC 0x76CC0 poiters for above scenes ; dw $0000, $003C, $006A, $00AC, $00EA, $012A, $015D, $019D, $01D4, $020C, $0249, $0284, $02B7, $02F1, $0329, $0359, $039C ;================================================================================ -org $30A000 ; $30A000 (0x182000) - $30A07F (0x18007F) +org $B0A000 ; $30A000 (0x182000) - $30A07F (0x18007F) RNGSingleItemTable: db $08, $09, $0A, $0B, $FF, $FF, $FF, $FF db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF @@ -1182,7 +1182,7 @@ db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF db $FF, $FF, $FF, $FF, $FF, $FF, $FF RNGSingleTableSize: db $04 -org $30A080 ; $30A080 (0x182080) - $30A0FF (0x1820FF) +org $B0A080 ; $30A080 (0x182080) - $30A0FF (0x1820FF) RNGMultiItemTable: db $31, $36, $40, $46, $FF, $FF, $FF, $FF db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF @@ -1403,58 +1403,58 @@ db $04 ;AF - Generic Small Key ;================================================================================ ;;Residual Portal -;org $0283E0 ; PC 0x103E0 (Bank02.asm:816) (BNE) -;db #$F0 ; #$D0 - Light Only (Default), #$F0 - Dark Only -;org $02B34D ; PC 0x1334D (Bank02.asm:7902) (BNE) -;db #$F0 ; #$D0 - Light Only (Default), #$F0 - Dark Only -;org $06DB78 ; PC 0x35B78 (Bank06.asm:2186) ($24) -;db #$8B ; #$24 - Light Style, #$8B - Dark Style +;org $8283E0 ; PC 0x103E0 (Bank02.asm:816) (BNE) +;db $F0 ; #$D0 - Light Only (Default), #$F0 - Dark Only +;org $82B34D ; PC 0x1334D (Bank02.asm:7902) (BNE) +;db $F0 ; #$D0 - Light Only (Default), #$F0 - Dark Only +;org $86DB78 ; PC 0x35B78 (Bank06.asm:2186) ($24) +;db $8B ; #$24 - Light Style, #$8B - Dark Style ;;Portal indicator in dark world map -;org $0ABFBB ; Bank0a.asm:1005 (LDA $008A : CMP.b #$40 : BCS BRANCH_BETA) +;org $8ABFBB ; Bank0a.asm:1005 (LDA $008A : CMP.b #$40 : BCS BRANCH_BETA) ;db $90 ;$90 (BCC) - Show in Dark World, $B0 (BCS) normal ;;-------------------------------------------------------------------------------- ;;Vortexes -;org $05AF79 ; PC 0x2AF79 (sprite_warp_vortex.asm:18) (BNE) -;db #$F0 ; #$D0 - Light Only (Default), #$F0 - Dark Only -;org $0DB3C5 ; PC 0x6B3C5 (sprite_properties.asm:119) ($C4) -;db #$C6 ; #$C4 - Blue Portal, #$C6 - Red Portal +;org $85AF79 ; PC 0x2AF79 (sprite_warp_vortex.asm:18) (BNE) +;db $F0 ; #$D0 - Light Only (Default), #$F0 - Dark Only +;org $8DB3C5 ; PC 0x6B3C5 (sprite_properties.asm:119) ($C4) +;db $C6 ; #$C4 - Blue Portal, #$C6 - Red Portal ;;-------------------------------------------------------------------------------- ;;Duck -;org $07A3F4 ; PC 0x3A3F4 (Bank07.asm:5772) (BNE) -;db #$F0 ; #$D0 - Light Only (Default), #$F0 - Dark Only -;org $02E849 ; PC 0x16849 (Bank02.asm:11641) +;org $87A3F4 ; PC 0x3A3F4 (Bank07.asm:5772) (BNE) +;db $F0 ; #$D0 - Light Only (Default), #$F0 - Dark Only +;org $82E849 ; PC 0x16849 (Bank02.asm:11641) ;;dw $0003, $0016, $0018, $002C, $002F, $0030, $003B, $003F ; Light World Flute Spots ;dw $0043, $0056, $0058, $006C, $006F, $0070, $007B, $007F ; Dark World Flute Spots -;org $02E8D5 ; PC 0x168D5 (Bank02.asm:11661) ($07B7) +;org $82E8D5 ; PC 0x168D5 (Bank02.asm:11661) ($07B7) ;dw $07C8 ; $07B7 - Normal Location 3 Y (Default), $07C7 - Inverted Location 3 Y -;org $02E8F7; PC 0x168F7 (Bank02.asm:11661) ($07B7) +;org $82E8F7; PC 0x168F7 (Bank02.asm:11661) ($07B7) ;dw $01F8 ; $0200 - Normal Location 3 X (Default), $0200 - Inverted Location 3 X ;;-------------------------------------------------------------------------------- ;;Mirror -;org $07A943 ; PC 0x3A943 (Bank07.asm:6548) (BNE) -;db #$80 ; #$D0 - Dark-to-Light (Default), #$F0 - Light-to-Dark, #$80 - Both Directions, #$42 - Disabled +;org $87A943 ; PC 0x3A943 (Bank07.asm:6548) (BNE) +;db $80 ; #$D0 - Dark-to-Light (Default), #$F0 - Light-to-Dark, #$80 - Both Directions, #$42 - Disabled ;;-------------------------------------------------------------------------------- ;;Residual Portal -;org $07A96D ; PC 0x3A96D (Bank07.asm:6578) (BEQ) -;db #$D0 ; #$F0 - Light Side (Default), #$D0 - Dark Side +;org $87A96D ; PC 0x3A96D (Bank07.asm:6578) (BEQ) +;db $D0 ; #$F0 - Light Side (Default), #$D0 - Dark Side ;;-------------------------------------------------------------------------------- -;org $08D40C ; PC 0x4540C (ancilla_morph_poof.asm:48) (BEQ) -;db #$D0 ; #$F0 - Light Side (Default), #$D0 - Dark Side +;org $88D40C ; PC 0x4540C (ancilla_morph_poof.asm:48) (BEQ) +;db $D0 ; #$F0 - Light Side (Default), #$D0 - Dark Side ;;-------------------------------------------------------------------------------- ;; Spawn -; org $0280a6 ; <- Bank02.asm : 257 (LDA $7EF3CA : BEQ .inLightWorld) -;db #$D0 ; #F0 - default to light (Default), #$D0 - Default to dark +; org $8280a6 ; <- Bank02.asm : 257 (LDA $7EF3CA : BEQ .inLightWorld) +;db $D0 ; #F0 - default to light (Default), #$D0 - Default to dark ;;-------------------------------------------------------------------------------- -;org $06B2AA ; <- 332AA sprite_smithy_bros.asm : 152 (JSL Sprite_ShowSolicitedMessageIfPlayerFacing) +;org $86B2AA ; <- 332AA sprite_smithy_bros.asm : 152 (JSL Sprite_ShowSolicitedMessageIfPlayerFacing) ;JSL Sprite_ShowMessageFromPlayerContact ; Inverted uses Sprite_ShowMessageFromPlayerContact ;;--------------------------------------------------------------------------------- -org $00886E ; <- Bank00.asm : 1050 (LDA Overworld_TileAttr, X) +org $80886E ; <- Bank00.asm : 1050 (LDA Overworld_TileAttr, X) LDA.l Overworld_TileAttr, X ; use "JML InvertedTileAttributeLookup" for inverted Overworld_GetTileAttrAtLocation_continue: ;================================================================================ -org $0DDBEC ; <- 6DBEC +org $8DDBEC ; <- 6DBEC dw 10000 ; Rupee Limit +1 -org $0DDBF1 ; <- 6DBF1 +org $8DDBF1 ; <- 6DBF1 dw 9999 ; Rupee Limit ;================================================================================ ;2B:Bottle Already Filled w/ Red Potion @@ -1469,7 +1469,7 @@ dw 9999 ; Rupee Limit ; $7EC025 - $7EC034 - Item OAM Table ;================================================================================; -org $30A100 ; PC 0x182100 - 0x182304 +org $B0A100 ; PC 0x182100 - 0x182304 EntranceDoorFrameTable: ; data for multi-entrance caves dw $0816, $0000, $0000, $0000, $0000, $0000, $0000, $0000 @@ -1511,13 +1511,13 @@ dw $0000 ;-------------------------------------------------------------------------------- ; 0x182305 - 182FFF (unused) ;================================================================================ -org $30B000 ; PC 0x183000 - 0x1834FF +org $B0B000 ; PC 0x183000 - 0x1834FF incsrc initsramtable.asm ;-------------------------------------------------------------------------------- ; 0x183500 - 183FFF (unused) ;================================================================================ -org $30C000 ; PC 0x184000 - 0x184040 +org $B0C000 ; PC 0x184000 - 0x184040 ItemSubstitutionRules: ;db [item][quantity][substitution][pad] - CURRENT LIMIT 16 ENTRIES db $12, $01, $35, $FF @@ -1525,7 +1525,7 @@ db $51, $06, $52, $FF db $53, $06, $54, $FF db $FF, $FF, $FF, $FF -org $30C041 ; PC 0x184041 +org $B0C041 ; PC 0x184041 ForceFileName: db $00 ; $00 = Player picks name (default) - $01 = Use StaticFileName (initsramtable.asm) @@ -1542,13 +1542,13 @@ db $00 ; $00 = Player picks name (default) - $01 = Use StaticFileName (initsramt ;shopkeeper_config - ppp- -sss ; ppp - palette ; sss - sprite type -org $30C800 ; PC 0x184800 - 0x1848FF - max 32 shops ; do not exceed 36 tracked items sram_index > ($24) +org $B0C800 ; PC 0x184800 - 0x1848FF - max 32 shops ; do not exceed 36 tracked items sram_index > ($24) ShopTable: ;db [id][roomID-low][roomID-high][doorID][zero][shop_config][shopkeeper_config][sram_index] db $01, $15, $01, $5D, $00, $12, $04, $00 db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF -org $30C900 ; PC 0x184900 - 0x184FFF - max 224 entries +org $B0C900 ; PC 0x184900 - 0x184FFF - max 224 entries ShopContentsTable: ;db [id][item][price-low][price-high][max][repl_id][repl_price-low][repl_price-high] db $01, $51, $64, $00, $07, $FF, $00, $00 @@ -1558,7 +1558,7 @@ db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ;-------------------------------------------------------------------------------- ; 0x185060 - 1850FF (unused) ;-------------------------------------------------------------------------------- -org $30D100 ; PC 0x185100 - 0x18513F +org $B0D100 ; PC 0x185100 - 0x18513F UnusedTable: ; please do not move this - kkat db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF @@ -1570,7 +1570,7 @@ db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ;================================================================================ -org $30D800 ; PC 0x185800 - 0x18591F +org $B0D800 ; PC 0x185800 - 0x18591F MSUTrackList: db $01,$03,$03,$03,$03,$03,$03,$01 db $03,$01,$03,$03,$03,$03,$03,$03 @@ -1642,923 +1642,923 @@ dw $0000 ; STAIRS4 ;-------------------------------------------------------------------------------- RoomHeaders: -org $30DA00 : RoomHeader_0000: ; pc 0x185A00 +org $B0DA00 : RoomHeader_0000: ; pc 0x185A00 db $41, $21, $13, $22, $07, $3D, $00, $00, $00, $10, $C0, $00, $00, $04 -org $30DA0E : RoomHeader_0001: ; pc 0x185A0E +org $B0DA0E : RoomHeader_0001: ; pc 0x185A0E db $C0, $00, $00, $04, $00, $00, $00, $00, $00, $00, $72, $00, $50, $52 -org $30DA1C : RoomHeader_0002: ; pc 0x185A1C +org $B0DA1C : RoomHeader_0002: ; pc 0x185A1C db $C0, $1D, $04, $06, $00, $14, $00, $00, $00, $00, $11, $00, $18, $0D -org $30DA2A : RoomHeader_0003: ; pc 0x185A2A +org $B0DA2A : RoomHeader_0003: ; pc 0x185A2A db $C0, $07, $06, $19, $00, $00, $00, $00, $0C, $02, $12, $00, $00, $00 -org $30DA38 : RoomHeader_0004: ; pc 0x185A38 +org $B0DA38 : RoomHeader_0004: ; pc 0x185A38 db $00, $18, $0D, $26, $00, $26, $14, $00, $00, $00, $B5, $00, $08, $08 -org $30DA46 : RoomHeader_0005: ; pc 0x185A46 +org $B0DA46 : RoomHeader_0005: ; pc 0x185A46 db $00, $08, $08, $14, $00, $25, $00, $20, $06, $05, $0C, $00, $25, $00 -org $30DA54 : RoomHeader_0006: ; pc 0x185A54 +org $B0DA54 : RoomHeader_0006: ; pc 0x185A54 db $00, $08, $08, $14, $00, $25, $00, $20, $06, $05, $0C, $00, $25, $00 -org $30DA62 : RoomHeader_0007: ; pc 0x185A62 +org $B0DA62 : RoomHeader_0007: ; pc 0x185A62 db $20, $06, $05, $0C, $00, $25, $00, $00, $00, $17, $17, $C0, $07, $06 -org $30DA70 : RoomHeader_0008: ; pc 0x185A70 +org $B0DA70 : RoomHeader_0008: ; pc 0x185A70 db $C0, $07, $06, $07, $00, $00, $00, $00, $0F, $07, $19, $00, $27, $00 -org $30DA7E : RoomHeader_0009: ; pc 0x185A7E +org $B0DA7E : RoomHeader_0009: ; pc 0x185A7E db $00, $0F, $07, $19, $00, $27, $00, $00, $00, $4B, $4A, $4A, $00, $0F -org $30DA8C : RoomHeader_000A: ; pc 0x185A8C +org $B0DA8C : RoomHeader_000A: ; pc 0x185A8C db $00, $0F, $07, $19, $00, $27, $00, $00, $00, $09, $3A, $01, $0F, $07 -org $30DA9A : RoomHeader_000B: ; pc 0x185A9A +org $B0DA9A : RoomHeader_000B: ; pc 0x185A9A db $01, $0F, $07, $19, $00, $03, $00, $00, $00, $6A, $1B, $C0, $28, $0E -org $30DAA8 : RoomHeader_000C: ; pc 0x185AA8 +org $B0DAA8 : RoomHeader_000C: ; pc 0x185AA8 db $C0, $28, $0E, $13, $00, $00, $00, $00, $00, $00, $6B, $8C, $8C, $40 -org $30DAB6 : RoomHeader_000D: ; pc 0x185AB6 +org $B0DAB6 : RoomHeader_000D: ; pc 0x185AB6 db $40, $1B, $0E, $18, $05, $38, $00, $00, $13, $0B, $1C, $00, $08, $00 -org $30DAC4 : RoomHeader_000E: ; pc 0x185AC4 +org $B0DAC4 : RoomHeader_000E: ; pc 0x185AC4 db $00, $13, $0B, $1C, $00, $08, $00, $00, $00, $00, $1E, $00, $21, $13 -org $30DAD2 : RoomHeader_000F: ; pc 0x185AD2 +org $B0DAD2 : RoomHeader_000F: ; pc 0x185AD2 db $00, $21, $13, $22, $00, $00, $00, $00, $01, $01, $01, $00, $00, $00 -org $30DAE0 : RoomHeader_0010: ; pc 0x185AE0 +org $B0DAE0 : RoomHeader_0010: ; pc 0x185AE0 db $00, $21, $13, $22, $00, $00, $00, $00, $01, $01, $01, $00, $00, $00 -org $30DAEE : RoomHeader_0011: ; pc 0x185AEE +org $B0DAEE : RoomHeader_0011: ; pc 0x185AEE db $00, $01, $01, $01, $00, $00, $00, $08, $00, $00, $02, $C0, $1D, $04 -org $30DAFC : RoomHeader_0012: ; pc 0x185AFC +org $B0DAFC : RoomHeader_0012: ; pc 0x185AFC db $C0, $1D, $04, $06, $00, $00, $00, $00, $18, $0D, $26, $00, $00, $00 -org $30DB0A : RoomHeader_0013: ; pc 0x185B0A +org $B0DB0A : RoomHeader_0013: ; pc 0x185B0A db $00, $18, $0D, $26, $00, $00, $00, $00, $18, $0D, $1E, $00, $00, $00 -org $30DB18 : RoomHeader_0014: ; pc 0x185B18 +org $B0DB18 : RoomHeader_0014: ; pc 0x185B18 db $20, $18, $0D, $26, $00, $00, $00, $C0, $18, $0D, $26, $00, $00, $00 -org $30DB26 : RoomHeader_0015: ; pc 0x185B26 +org $B0DB26 : RoomHeader_0015: ; pc 0x185B26 db $C0, $18, $0D, $26, $00, $00, $00, $00, $00, $00, $B6, $90, $08, $08 -org $30DB34 : RoomHeader_0016: ; pc 0x185B34 +org $B0DB34 : RoomHeader_0016: ; pc 0x185B34 db $90, $08, $08, $11, $03, $00, $00, $00, $00, $00, $66, $20, $06, $05 -org $30DB42 : RoomHeader_0017: ; pc 0x185B42 +org $B0DB42 : RoomHeader_0017: ; pc 0x185B42 db $20, $06, $05, $19, $00, $35, $00, $00, $00, $27, $07, $27, $01, $0F -org $30DB50 : RoomHeader_0018: ; pc 0x185B50 +org $B0DB50 : RoomHeader_0018: ; pc 0x185B50 db $00, $07, $06, $07, $00, $00, $00, $00, $22, $12, $07, $00, $00, $00 -org $30DB5E : RoomHeader_0019: ; pc 0x185B5E +org $B0DB5E : RoomHeader_0019: ; pc 0x185B5E db $01, $0F, $07, $19, $00, $00, $00, $00, $0F, $07, $19, $00, $16, $00 -org $30DB6C : RoomHeader_001A: ; pc 0x185B6C +org $B0DB6C : RoomHeader_001A: ; pc 0x185B6C db $00, $0F, $07, $19, $00, $16, $00, $00, $00, $00, $6A, $6A, $68, $0F -org $30DB7A : RoomHeader_001B: ; pc 0x185B7A +org $B0DB7A : RoomHeader_001B: ; pc 0x185B7A db $68, $0F, $07, $08, $00, $03, $1C, $00, $00, $00, $0B, $00, $1A, $0E -org $30DB88 : RoomHeader_001C: ; pc 0x185B88 +org $B0DB88 : RoomHeader_001C: ; pc 0x185B88 db $00, $1A, $0E, $09, $00, $04, $3F, $00, $00, $00, $8C, $00, $1B, $0E -org $30DB96 : RoomHeader_001D: ; pc 0x185B96 +org $B0DB96 : RoomHeader_001D: ; pc 0x185B96 db $00, $1B, $0E, $18, $00, $00, $00, $00, $00, $00, $4C, $20, $13, $0B -org $30DBA4 : RoomHeader_001E: ; pc 0x185BA4 +org $B0DBA4 : RoomHeader_001E: ; pc 0x185BA4 db $20, $13, $0B, $1C, $00, $17, $00, $00, $00, $3E, $0E, $00, $13, $0B -org $30DBB2 : RoomHeader_001F: ; pc 0x185BB2 +org $B0DBB2 : RoomHeader_001F: ; pc 0x185BB2 db $00, $13, $0B, $29, $00, $17, $00, $00, $00, $00, $3F, $20, $0C, $02 -org $30DBC0 : RoomHeader_0020: ; pc 0x185BC0 +org $B0DBC0 : RoomHeader_0020: ; pc 0x185BC0 db $20, $0C, $02, $12, $00, $15, $25, $01, $01, $01, $01, $00, $00, $00 -org $30DBCE : RoomHeader_0021: ; pc 0x185BCE +org $B0DBCE : RoomHeader_0021: ; pc 0x185BCE db $01, $01, $01, $01, $00, $00, $00, $00, $18, $0D, $26, $00, $01, $00 -org $30DBDC : RoomHeader_0022: ; pc 0x185BDC +org $B0DBDC : RoomHeader_0022: ; pc 0x185BDC db $01, $01, $01, $01, $00, $00, $00, $00, $18, $0D, $26, $00, $01, $00 -org $30DBEA : RoomHeader_0023: ; pc 0x185BEA +org $B0DBEA : RoomHeader_0023: ; pc 0x185BEA db $00, $18, $0D, $26, $00, $00, $00, $00, $18, $0D, $1E, $00, $00, $00 -org $30DBF8 : RoomHeader_0024: ; pc 0x185BF8 +org $B0DBF8 : RoomHeader_0024: ; pc 0x185BF8 db $00, $18, $0D, $26, $00, $01, $00, $00, $0A, $08, $11, $00, $16, $00 -org $30DC06 : RoomHeader_0025: ; pc 0x185C06 +org $B0DC06 : RoomHeader_0025: ; pc 0x185C06 db $00, $0A, $08, $11, $00, $16, $00, $00, $00, $00, $76, $76, $76, $20 -org $30DC14 : RoomHeader_0026: ; pc 0x185C14 +org $B0DC14 : RoomHeader_0026: ; pc 0x185C14 db $00, $0A, $08, $11, $00, $16, $00, $00, $00, $00, $76, $76, $76, $20 -org $30DC22 : RoomHeader_0027: ; pc 0x185C22 +org $B0DC22 : RoomHeader_0027: ; pc 0x185C22 db $20, $06, $05, $19, $00, $36, $00, $00, $00, $31, $17, $31, $80, $0A -org $30DC30 : RoomHeader_0028: ; pc 0x185C30 +org $B0DC30 : RoomHeader_0028: ; pc 0x185C30 db $80, $0A, $08, $11, $00, $32, $1B, $00, $00, $00, $38, $CC, $0E, $09 -org $30DC3E : RoomHeader_0029: ; pc 0x185C3E +org $B0DC3E : RoomHeader_0029: ; pc 0x185C3E db $CC, $0E, $09, $1A, $02, $25, $00, $00, $0F, $07, $19, $00, $00, $00 -org $30DC4C : RoomHeader_002A: ; pc 0x185C4C +org $B0DC4C : RoomHeader_002A: ; pc 0x185C4C db $00, $0F, $07, $19, $00, $00, $00, $C0, $0F, $07, $2B, $00, $16, $00 -org $30DC5A : RoomHeader_002B: ; pc 0x185C5A +org $B0DC5A : RoomHeader_002B: ; pc 0x185C5A db $C0, $0F, $07, $2B, $00, $16, $00, $00, $00, $00, $3B, $00, $13, $0B -org $30DC68 : RoomHeader_002C: ; pc 0x185C68 +org $B0DC68 : RoomHeader_002C: ; pc 0x185C68 db $00, $07, $06, $07, $00, $00, $00, $00, $22, $12, $07, $00, $00, $00 -org $30DC76 : RoomHeader_002D: ; pc 0x185C76 +org $B0DC76 : RoomHeader_002D: ; pc 0x185C76 db $00, $13, $0B, $1C, $00, $2A, $00, $C0, $07, $06, $19, $00, $00, $00 -org $30DC84 : RoomHeader_002E: ; pc 0x185C84 +org $B0DC84 : RoomHeader_002E: ; pc 0x185C84 db $00, $13, $0B, $1C, $00, $2A, $00, $C0, $07, $06, $19, $00, $00, $00 -org $30DC92 : RoomHeader_002F: ; pc 0x185C92 +org $B0DC92 : RoomHeader_002F: ; pc 0x185C92 db $C0, $07, $06, $19, $00, $00, $00, $00, $0C, $02, $12, $00, $00, $00 -org $30DCA0 : RoomHeader_0030: ; pc 0x185CA0 +org $B0DCA0 : RoomHeader_0030: ; pc 0x185CA0 db $00, $0C, $02, $12, $00, $00, $00, $00, $00, $00, $40, $20, $06, $05 -org $30DCAE : RoomHeader_0031: ; pc 0x185CAE +org $B0DCAE : RoomHeader_0031: ; pc 0x185CAE db $20, $06, $05, $19, $00, $37, $04, $22, $00, $77, $27, $77, $01, $01 -org $30DCBC : RoomHeader_0032: ; pc 0x185CBC +org $B0DCBC : RoomHeader_0032: ; pc 0x185CBC db $01, $01, $01, $01, $00, $00, $00, $00, $00, $00, $42, $00, $04, $05 -org $30DCCA : RoomHeader_0033: ; pc 0x185CCA +org $B0DCCA : RoomHeader_0033: ; pc 0x185CCA db $00, $04, $05, $0B, $00, $15, $25, $80, $0A, $08, $11, $00, $00, $00 -org $30DCD8 : RoomHeader_0034: ; pc 0x185CD8 +org $B0DCD8 : RoomHeader_0034: ; pc 0x185CD8 db $80, $0A, $08, $11, $00, $00, $00, $00, $00, $00, $54, $80, $0A, $08 -org $30DCE6 : RoomHeader_0035: ; pc 0x185CE6 +org $B0DCE6 : RoomHeader_0035: ; pc 0x185CE6 db $80, $0A, $08, $11, $00, $00, $19, $80, $0A, $08, $11, $00, $00, $00 -org $30DCF4 : RoomHeader_0036: ; pc 0x185CF4 +org $B0DCF4 : RoomHeader_0036: ; pc 0x185CF4 db $80, $0A, $08, $11, $00, $00, $00, $80, $0A, $08, $11, $00, $00, $00 -org $30DD02 : RoomHeader_0037: ; pc 0x185D02 +org $B0DD02 : RoomHeader_0037: ; pc 0x185D02 db $80, $0A, $08, $11, $00, $00, $19, $80, $0A, $08, $11, $00, $00, $00 -org $30DD10 : RoomHeader_0038: ; pc 0x185D10 +org $B0DD10 : RoomHeader_0038: ; pc 0x185D10 db $80, $0A, $08, $11, $00, $00, $00, $00, $00, $00, $28, $20, $0D, $09 -org $30DD1E : RoomHeader_0039: ; pc 0x185D1E +org $B0DD1E : RoomHeader_0039: ; pc 0x185D1E db $20, $0D, $09, $13, $00, $00, $00, $00, $00, $29, $20, $0F, $07, $19 -org $30DD2C : RoomHeader_003A: ; pc 0x185D2C +org $B0DD2C : RoomHeader_003A: ; pc 0x185D2C db $20, $0F, $07, $19, $00, $00, $00, $00, $00, $0A, $0A, $00, $0F, $07 -org $30DD3A : RoomHeader_003B: ; pc 0x185D3A +org $B0DD3A : RoomHeader_003B: ; pc 0x185D3A db $00, $0F, $07, $08, $00, $00, $00, $00, $00, $00, $2B, $00, $07, $06 -org $30DD48 : RoomHeader_003C: ; pc 0x185D48 +org $B0DD48 : RoomHeader_003C: ; pc 0x185D48 db $00, $07, $06, $13, $00, $00, $00, $20, $1A, $0E, $0C, $00, $33, $00 -org $30DD56 : RoomHeader_003D: ; pc 0x185D56 +org $B0DD56 : RoomHeader_003D: ; pc 0x185D56 db $20, $1A, $0E, $0C, $00, $33, $00, $00, $00, $96, $96, $CC, $13, $0B -org $30DD64 : RoomHeader_003E: ; pc 0x185D64 +org $B0DD64 : RoomHeader_003E: ; pc 0x185D64 db $CC, $13, $0B, $29, $02, $02, $00, $00, $00, $00, $1E, $00, $13, $0B -org $30DD72 : RoomHeader_003F: ; pc 0x185D72 +org $B0DD72 : RoomHeader_003F: ; pc 0x185D72 db $00, $13, $0B, $29, $00, $27, $14, $00, $00, $00, $1F, $5F, $C0, $00 -org $30DD80 : RoomHeader_0040: ; pc 0x185D80 +org $B0DD80 : RoomHeader_0040: ; pc 0x185D80 db $C0, $00, $02, $27, $00, $00, $00, $00, $00, $00, $30, $B0, $01, $00 -org $30DD8E : RoomHeader_0041: ; pc 0x185D8E +org $B0DD8E : RoomHeader_0041: ; pc 0x185D8E db $01, $00, $00, $02, $00, $13, $00, $00, $00, $00, $42, $01, $01, $01 -org $30DD9C : RoomHeader_0042: ; pc 0x185D9C +org $B0DD9C : RoomHeader_0042: ; pc 0x185D9C db $01, $01, $01, $01, $00, $00, $00, $00, $00, $00, $41, $32, $68, $04 -org $30DDAA : RoomHeader_0043: ; pc 0x185DAA +org $B0DDAA : RoomHeader_0043: ; pc 0x185DAA db $68, $04, $05, $0A, $00, $00, $1D, $00, $17, $0A, $1B, $00, $01, $00 -org $30DDB8 : RoomHeader_0044: ; pc 0x185DB8 +org $B0DDB8 : RoomHeader_0044: ; pc 0x185DB8 db $00, $17, $0A, $1B, $00, $01, $00, $60, $17, $0A, $1B, $00, $01, $00 -org $30DDC6 : RoomHeader_0045: ; pc 0x185DC6 +org $B0DDC6 : RoomHeader_0045: ; pc 0x185DC6 db $60, $17, $0A, $1B, $00, $01, $00, $00, $00, $00, $BC, $00, $0A, $08 -org $30DDD4 : RoomHeader_0046: ; pc 0x185DD4 +org $B0DDD4 : RoomHeader_0046: ; pc 0x185DD4 db $00, $0A, $08, $11, $00, $3C, $00, $00, $0D, $09, $13, $00, $33, $34 -org $30DDE2 : RoomHeader_0047: ; pc 0x185DE2 +org $B0DDE2 : RoomHeader_0047: ; pc 0x185DE2 db $00, $0D, $09, $13, $00, $33, $34, $00, $0F, $07, $19, $00, $17, $00 -org $30DDF0 : RoomHeader_0048: ; pc 0x185DF0 +org $B0DDF0 : RoomHeader_0048: ; pc 0x185DF0 db $00, $0D, $09, $13, $00, $33, $34, $00, $0F, $07, $19, $00, $17, $00 -org $30DDFE : RoomHeader_0049: ; pc 0x185DFE +org $B0DDFE : RoomHeader_0049: ; pc 0x185DFE db $00, $0D, $09, $13, $00, $33, $34, $00, $0F, $07, $19, $00, $17, $00 -org $30DE0C : RoomHeader_004A: ; pc 0x185E0C +org $B0DE0C : RoomHeader_004A: ; pc 0x185E0C db $00, $0F, $07, $19, $00, $17, $00, $00, $00, $00, $09, $09, $00, $0F -org $30DE1A : RoomHeader_004B: ; pc 0x185E1A +org $B0DE1A : RoomHeader_004B: ; pc 0x185E1A db $00, $0F, $07, $08, $00, $01, $00, $00, $00, $09, $00, $1A, $0E, $0C -org $30DE28 : RoomHeader_004C: ; pc 0x185E28 +org $B0DE28 : RoomHeader_004C: ; pc 0x185E28 db $00, $1A, $0E, $0C, $00, $00, $00, $00, $00, $00, $1D, $20, $1A, $0E -org $30DE36 : RoomHeader_004D: ; pc 0x185E36 +org $B0DE36 : RoomHeader_004D: ; pc 0x185E36 db $20, $1A, $0E, $0C, $00, $32, $3F, $00, $00, $A6, $A6, $00, $13, $0B -org $30DE44 : RoomHeader_004E: ; pc 0x185E44 +org $B0DE44 : RoomHeader_004E: ; pc 0x185E44 db $00, $13, $0B, $29, $00, $17, $00, $00, $00, $00, $6E, $00, $13, $0B -org $30DE52 : RoomHeader_004F: ; pc 0x185E52 +org $B0DE52 : RoomHeader_004F: ; pc 0x185E52 db $00, $13, $0B, $1C, $00, $00, $00, $00, $00, $BE, $C0, $00, $00, $04 -org $30DE60 : RoomHeader_0050: ; pc 0x185E60 +org $B0DE60 : RoomHeader_0050: ; pc 0x185E60 db $C0, $00, $00, $04, $00, $00, $00, $00, $00, $00, $00, $00, $01, $01 -org $30DE6E : RoomHeader_0051: ; pc 0x185E6E +org $B0DE6E : RoomHeader_0051: ; pc 0x185E6E db $C0, $00, $00, $03, $00, $00, $00, $00, $00, $00, $61, $C0, $00, $00 -org $30DE7C : RoomHeader_0052: ; pc 0x185E7C +org $B0DE7C : RoomHeader_0052: ; pc 0x185E7C db $C0, $00, $00, $04, $00, $00, $00, $00, $00, $00, $00, $00, $01, $01 -org $30DE8A : RoomHeader_0053: ; pc 0x185E8A +org $B0DE8A : RoomHeader_0053: ; pc 0x185E8A db $C0, $04, $05, $0A, $00, $03, $00, $00, $00, $00, $63, $20, $0A, $08 -org $30DE98 : RoomHeader_0054: ; pc 0x185E98 +org $B0DE98 : RoomHeader_0054: ; pc 0x185E98 db $20, $0A, $08, $11, $00, $00, $00, $00, $00, $34, $34, $01, $01, $10 -org $30DEA6 : RoomHeader_0055: ; pc 0x185EA6 +org $B0DEA6 : RoomHeader_0055: ; pc 0x185EA6 db $01, $01, $10, $0D, $00, $00, $00, $00, $0D, $09, $13, $00, $23, $00 -org $30DEB4 : RoomHeader_0056: ; pc 0x185EB4 +org $B0DEB4 : RoomHeader_0056: ; pc 0x185EB4 db $00, $0D, $09, $13, $00, $23, $00, $00, $0D, $09, $13, $00, $16, $00 -org $30DEC2 : RoomHeader_0057: ; pc 0x185EC2 +org $B0DEC2 : RoomHeader_0057: ; pc 0x185EC2 db $00, $0D, $09, $13, $00, $16, $00, $00, $0D, $09, $13, $00, $21, $28 -org $30DED0 : RoomHeader_0058: ; pc 0x185ED0 +org $B0DED0 : RoomHeader_0058: ; pc 0x185ED0 db $00, $0D, $09, $13, $00, $21, $28, $C0, $0D, $09, $13, $00, $00, $00 -org $30DEDE : RoomHeader_0059: ; pc 0x185EDE +org $B0DEDE : RoomHeader_0059: ; pc 0x185EDE db $C0, $0D, $09, $13, $00, $00, $00, $00, $10, $07, $15, $00, $25, $00 -org $30DEEC : RoomHeader_005A: ; pc 0x185EEC +org $B0DEEC : RoomHeader_005A: ; pc 0x185EEC db $00, $10, $07, $15, $00, $25, $00, $C0, $1B, $0E, $0A, $00, $17, $00 -org $30DEFA : RoomHeader_005B: ; pc 0x185EFA +org $B0DEFA : RoomHeader_005B: ; pc 0x185EFA db $C0, $1B, $0E, $0A, $00, $17, $00, $00, $1B, $0E, $0A, $00, $00, $00 -org $30DF08 : RoomHeader_005C: ; pc 0x185F08 +org $B0DF08 : RoomHeader_005C: ; pc 0x185F08 db $00, $1B, $0E, $0A, $00, $00, $00, $00, $00, $00, $5D, $00, $24, $0E -org $30DF16 : RoomHeader_005D: ; pc 0x185F16 +org $B0DF16 : RoomHeader_005D: ; pc 0x185F16 db $00, $24, $0E, $23, $00, $09, $00, $00, $00, $00, $5C, $20, $13, $0B -org $30DF24 : RoomHeader_005E: ; pc 0x185F24 +org $B0DF24 : RoomHeader_005E: ; pc 0x185F24 db $20, $13, $0B, $1C, $00, $00, $00, $00, $00, $7E, $7E, $00, $13, $0B -org $30DF32 : RoomHeader_005F: ; pc 0x185F32 +org $B0DF32 : RoomHeader_005F: ; pc 0x185F32 db $00, $13, $0B, $1C, $00, $27, $00, $00, $00, $00, $3F, $7F, $C0, $00 -org $30DF40 : RoomHeader_0060: ; pc 0x185F40 +org $B0DF40 : RoomHeader_0060: ; pc 0x185F40 db $C0, $00, $00, $04, $00, $00, $00, $C0, $00, $00, $04, $00, $00, $00 -org $30DF4E : RoomHeader_0061: ; pc 0x185F4E +org $B0DF4E : RoomHeader_0061: ; pc 0x185F4E db $C0, $00, $00, $04, $00, $00, $00, $08, $00, $00, $51, $00, $09, $05 -org $30DF5C : RoomHeader_0062: ; pc 0x185F5C +org $B0DF5C : RoomHeader_0062: ; pc 0x185F5C db $C0, $00, $00, $04, $00, $00, $00, $C0, $00, $00, $04, $00, $00, $00 -org $30DF6A : RoomHeader_0063: ; pc 0x185F6A +org $B0DF6A : RoomHeader_0063: ; pc 0x185F6A db $00, $09, $05, $0A, $00, $0D, $00, $00, $00, $00, $53, $E0, $23, $0A -org $30DF78 : RoomHeader_0064: ; pc 0x185F78 +org $B0DF78 : RoomHeader_0064: ; pc 0x185F78 db $E0, $23, $0A, $21, $00, $17, $00, $00, $00, $00, $AB, $E0, $23, $0A -org $30DF86 : RoomHeader_0065: ; pc 0x185F86 +org $B0DF86 : RoomHeader_0065: ; pc 0x185F86 db $E0, $23, $0A, $21, $00, $00, $00, $00, $00, $AC, $C0, $0A, $08, $11 -org $30DF94 : RoomHeader_0066: ; pc 0x185F94 +org $B0DF94 : RoomHeader_0066: ; pc 0x185F94 db $C0, $0A, $08, $11, $00, $3C, $00, $00, $00, $00, $16, $00, $0D, $09 -org $30DFA2 : RoomHeader_0067: ; pc 0x185FA2 +org $B0DFA2 : RoomHeader_0067: ; pc 0x185FA2 db $00, $0D, $09, $13, $00, $22, $00, $00, $0D, $09, $13, $00, $00, $00 -org $30DFB0 : RoomHeader_0068: ; pc 0x185FB0 +org $B0DFB0 : RoomHeader_0068: ; pc 0x185FB0 db $00, $0D, $09, $13, $00, $00, $00, $01, $0F, $07, $19, $00, $00, $00 -org $30DFBE : RoomHeader_0069: ; pc 0x185FBE +org $B0DFBE : RoomHeader_0069: ; pc 0x185FBE db $01, $0F, $07, $19, $00, $00, $00, $00, $00, $00, $1A, $1A, $00, $1B -org $30DFCC : RoomHeader_006A: ; pc 0x185FCC +org $B0DFCC : RoomHeader_006A: ; pc 0x185FCC db $01, $0F, $07, $19, $00, $00, $00, $00, $00, $00, $1A, $1A, $00, $1B -org $30DFDA : RoomHeader_006B: ; pc 0x185FDA +org $B0DFDA : RoomHeader_006B: ; pc 0x185FDA db $00, $1B, $0E, $0A, $00, $08, $0B, $00, $00, $00, $0C, $00, $24, $0E -org $30DFE8 : RoomHeader_006C: ; pc 0x185FE8 +org $B0DFE8 : RoomHeader_006C: ; pc 0x185FE8 db $00, $24, $0E, $23, $00, $03, $3F, $00, $00, $00, $A5, $00, $24, $0E -org $30DFF6 : RoomHeader_006D: ; pc 0x185FF6 +org $B0DFF6 : RoomHeader_006D: ; pc 0x185FF6 db $00, $24, $0E, $23, $00, $05, $00, $00, $13, $0B, $1C, $00, $02, $00 -org $30E004 : RoomHeader_006E: ; pc 0x186004 +org $B0E004 : RoomHeader_006E: ; pc 0x186004 db $00, $13, $0B, $1C, $00, $02, $00, $00, $00, $00, $4E, $00, $01, $01 -org $30E012 : RoomHeader_006F: ; pc 0x186012 +org $B0E012 : RoomHeader_006F: ; pc 0x186012 db $00, $01, $01, $04, $00, $00, $00, $08, $00, $00, $71, $80, $C0, $01 -org $30E020 : RoomHeader_0070: ; pc 0x186020 +org $B0E020 : RoomHeader_0070: ; pc 0x186020 db $00, $01, $01, $04, $00, $00, $00, $08, $00, $00, $71, $80, $C0, $01 -org $30E02E : RoomHeader_0071: ; pc 0x18602E +org $B0E02E : RoomHeader_0071: ; pc 0x18602E db $C0, $01, $01, $04, $00, $08, $00, $00, $00, $00, $70, $C0, $01, $01 -org $30E03C : RoomHeader_0072: ; pc 0x18603C +org $B0E03C : RoomHeader_0072: ; pc 0x18603C db $C0, $01, $01, $04, $00, $00, $00, $08, $00, $00, $01, $00, $09, $05 -org $30E04A : RoomHeader_0073: ; pc 0x18604A +org $B0E04A : RoomHeader_0073: ; pc 0x18604A db $00, $09, $05, $0A, $00, $17, $00, $00, $09, $05, $0A, $00, $27, $00 -org $30E058 : RoomHeader_0074: ; pc 0x186058 +org $B0E058 : RoomHeader_0074: ; pc 0x186058 db $00, $09, $05, $0A, $00, $27, $00, $00, $09, $05, $0A, $00, $01, $00 -org $30E066 : RoomHeader_0075: ; pc 0x186066 +org $B0E066 : RoomHeader_0075: ; pc 0x186066 db $00, $09, $05, $0A, $00, $01, $00, $80, $0A, $08, $11, $00, $00, $18 -org $30E074 : RoomHeader_0076: ; pc 0x186074 +org $B0E074 : RoomHeader_0076: ; pc 0x186074 db $80, $0A, $08, $11, $00, $00, $18, $00, $00, $00, $26, $26, $26, $C0 -org $30E082 : RoomHeader_0077: ; pc 0x186082 +org $B0E082 : RoomHeader_0077: ; pc 0x186082 db $C0, $06, $05, $19, $00, $00, $00, $00, $00, $A7, $31, $87, $87, $00 -org $30E090 : RoomHeader_0078: ; pc 0x186090 +org $B0E090 : RoomHeader_0078: ; pc 0x186090 db $00, $28, $0E, $13, $00, $03, $39, $00, $00, $9D, $00, $28, $0E, $13 -org $30E09E : RoomHeader_0079: ; pc 0x18609E +org $B0E09E : RoomHeader_0079: ; pc 0x18609E db $00, $28, $0E, $13, $00, $03, $39, $00, $00, $9D, $00, $28, $0E, $13 -org $30E0AC : RoomHeader_007A: ; pc 0x1860AC +org $B0E0AC : RoomHeader_007A: ; pc 0x1860AC db $00, $28, $0E, $13, $00, $03, $39, $00, $00, $9D, $00, $28, $0E, $13 -org $30E0BA : RoomHeader_007B: ; pc 0x1860BA +org $B0E0BA : RoomHeader_007B: ; pc 0x1860BA db $00, $28, $0E, $13, $00, $03, $39, $00, $00, $9D, $00, $28, $0E, $13 -org $30E0C8 : RoomHeader_007C: ; pc 0x1860C8 +org $B0E0C8 : RoomHeader_007C: ; pc 0x1860C8 db $00, $28, $0E, $13, $00, $20, $00, $00, $28, $0E, $13, $00, $04, $3C -org $30E0D6 : RoomHeader_007D: ; pc 0x1860D6 +org $B0E0D6 : RoomHeader_007D: ; pc 0x1860D6 db $00, $28, $0E, $13, $00, $04, $3C, $00, $00, $9B, $20, $13, $0B, $1C -org $30E0E4 : RoomHeader_007E: ; pc 0x1860E4 +org $B0E0E4 : RoomHeader_007E: ; pc 0x1860E4 db $20, $13, $0B, $1C, $00, $2B, $17, $00, $00, $9E, $5E, $00, $13, $0B -org $30E0F2 : RoomHeader_007F: ; pc 0x1860F2 +org $B0E0F2 : RoomHeader_007F: ; pc 0x1860F2 db $00, $13, $0B, $1C, $00, $00, $00, $00, $00, $00, $5F, $60, $01, $01 -org $30E100 : RoomHeader_0080: ; pc 0x186100 +org $B0E100 : RoomHeader_0080: ; pc 0x186100 db $60, $01, $01, $04, $00, $00, $00, $00, $00, $00, $70, $C0, $01, $01 -org $30E10E : RoomHeader_0081: ; pc 0x18610E +org $B0E10E : RoomHeader_0081: ; pc 0x18610E db $C0, $01, $01, $04, $00, $00, $00, $00, $09, $05, $0A, $00, $0D, $00 -org $30E11C : RoomHeader_0082: ; pc 0x18611C +org $B0E11C : RoomHeader_0082: ; pc 0x18611C db $C0, $01, $01, $04, $00, $00, $00, $00, $09, $05, $0A, $00, $0D, $00 -org $30E12A : RoomHeader_0083: ; pc 0x18612A +org $B0E12A : RoomHeader_0083: ; pc 0x18612A db $00, $09, $05, $0A, $00, $0D, $00, $00, $09, $05, $0A, $00, $00, $00 -org $30E138 : RoomHeader_0084: ; pc 0x186138 +org $B0E138 : RoomHeader_0084: ; pc 0x186138 db $00, $09, $05, $0A, $00, $00, $00, $00, $09, $05, $0A, $00, $02, $00 -org $30E146 : RoomHeader_0085: ; pc 0x186146 +org $B0E146 : RoomHeader_0085: ; pc 0x186146 db $00, $09, $05, $0A, $00, $02, $00, $00, $06, $05, $19, $00, $3E, $01 -org $30E154 : RoomHeader_0086: ; pc 0x186154 +org $B0E154 : RoomHeader_0086: ; pc 0x186154 db $00, $06, $05, $19, $00, $3E, $01, $28, $00, $00, $77, $77, $00, $0B -org $30E162 : RoomHeader_0087: ; pc 0x186162 +org $B0E162 : RoomHeader_0087: ; pc 0x186162 db $00, $06, $05, $19, $00, $3E, $01, $28, $00, $00, $77, $77, $00, $0B -org $30E170 : RoomHeader_0088: ; pc 0x186170 +org $B0E170 : RoomHeader_0088: ; pc 0x186170 db $00, $0B, $05, $08, $00, $00, $00, $02, $00, $A9, $00, $28, $0E, $13 -org $30E17E : RoomHeader_0089: ; pc 0x18617E +org $B0E17E : RoomHeader_0089: ; pc 0x18617E db $00, $0B, $05, $08, $00, $00, $00, $02, $00, $A9, $00, $28, $0E, $13 -org $30E18C : RoomHeader_008A: ; pc 0x18618C +org $B0E18C : RoomHeader_008A: ; pc 0x18618C db $00, $28, $0E, $13, $00, $3A, $0C, $20, $28, $0E, $13, $00, $16, $00 -org $30E19A : RoomHeader_008B: ; pc 0x18619A +org $B0E19A : RoomHeader_008B: ; pc 0x18619A db $00, $28, $0E, $13, $00, $3A, $0C, $20, $28, $0E, $13, $00, $16, $00 -org $30E1A8 : RoomHeader_008C: ; pc 0x1861A8 +org $B0E1A8 : RoomHeader_008C: ; pc 0x1861A8 db $20, $28, $0E, $13, $00, $16, $00, $28, $00, $1C, $0C, $0C, $1C, $00 -org $30E1B6 : RoomHeader_008D: ; pc 0x1861B6 +org $B0E1B6 : RoomHeader_008D: ; pc 0x1861B6 db $00, $28, $0E, $13, $00, $33, $29, $00, $13, $0B, $1C, $00, $00, $00 -org $30E1C4 : RoomHeader_008E: ; pc 0x1861C4 +org $B0E1C4 : RoomHeader_008E: ; pc 0x1861C4 db $00, $13, $0B, $1C, $00, $00, $00, $00, $00, $00, $AE, $80, $12, $0C -org $30E1D2 : RoomHeader_008F: ; pc 0x1861D2 +org $B0E1D2 : RoomHeader_008F: ; pc 0x1861D2 db $80, $12, $0C, $16, $00, $25, $00, $00, $11, $0C, $1C, $00, $00, $00 -org $30E1E0 : RoomHeader_0090: ; pc 0x1861E0 +org $B0E1E0 : RoomHeader_0090: ; pc 0x1861E0 db $80, $12, $0C, $16, $00, $25, $00, $00, $11, $0C, $1C, $00, $00, $00 -org $30E1EE : RoomHeader_0091: ; pc 0x1861EE +org $B0E1EE : RoomHeader_0091: ; pc 0x1861EE db $00, $11, $0C, $1C, $00, $00, $00, $00, $00, $00, $A0, $01, $11, $0C -org $30E1FC : RoomHeader_0092: ; pc 0x1861FC +org $B0E1FC : RoomHeader_0092: ; pc 0x1861FC db $01, $11, $0C, $1C, $00, $00, $00, $01, $11, $0C, $1C, $00, $16, $00 -org $30E20A : RoomHeader_0093: ; pc 0x18620A +org $B0E20A : RoomHeader_0093: ; pc 0x18620A db $01, $11, $0C, $1C, $00, $16, $00, $08, $00, $00, $A2, $00, $25, $0E -org $30E218 : RoomHeader_0094: ; pc 0x186218 +org $B0E218 : RoomHeader_0094: ; pc 0x186218 db $00, $25, $0E, $24, $00, $00, $00, $00, $25, $0E, $24, $00, $33, $00 -org $30E226 : RoomHeader_0095: ; pc 0x186226 +org $B0E226 : RoomHeader_0095: ; pc 0x186226 db $00, $25, $0E, $24, $00, $00, $00, $00, $25, $0E, $24, $00, $33, $00 -org $30E234 : RoomHeader_0096: ; pc 0x186234 +org $B0E234 : RoomHeader_0096: ; pc 0x186234 db $00, $25, $0E, $24, $00, $33, $00, $00, $00, $00, $3D, $68, $11, $0C -org $30E242 : RoomHeader_0097: ; pc 0x186242 +org $B0E242 : RoomHeader_0097: ; pc 0x186242 db $68, $11, $0C, $1D, $00, $1C, $00, $00, $00, $D1, $D1, $00, $11, $0C -org $30E250 : RoomHeader_0098: ; pc 0x186250 +org $B0E250 : RoomHeader_0098: ; pc 0x186250 db $00, $11, $0C, $1C, $00, $00, $00, $00, $00, $00, $D2, $01, $0B, $05 -org $30E25E : RoomHeader_0099: ; pc 0x18625E +org $B0E25E : RoomHeader_0099: ; pc 0x18625E db $01, $0B, $05, $08, $00, $00, $00, $00, $00, $00, $DA, $00, $28, $0E -org $30E26C : RoomHeader_009A: ; pc 0x18626C +org $B0E26C : RoomHeader_009A: ; pc 0x18626C db $00, $28, $0E, $13, $00, $00, $00, $00, $00, $7D, $00, $28, $0E, $13 -org $30E27A : RoomHeader_009B: ; pc 0x18627A +org $B0E27A : RoomHeader_009B: ; pc 0x18627A db $00, $28, $0E, $13, $00, $00, $00, $00, $00, $7D, $00, $28, $0E, $13 -org $30E288 : RoomHeader_009C: ; pc 0x186288 +org $B0E288 : RoomHeader_009C: ; pc 0x186288 db $00, $28, $0E, $13, $06, $00, $00, $00, $28, $0E, $13, $06, $00, $3B -org $30E296 : RoomHeader_009D: ; pc 0x186296 +org $B0E296 : RoomHeader_009D: ; pc 0x186296 db $00, $28, $0E, $13, $06, $00, $3B, $00, $00, $7B, $20, $13, $0B, $1C -org $30E2A4 : RoomHeader_009E: ; pc 0x1862A4 +org $B0E2A4 : RoomHeader_009E: ; pc 0x1862A4 db $20, $13, $0B, $1C, $00, $00, $00, $00, $00, $BE, $BE, $00, $13, $0B -org $30E2B2 : RoomHeader_009F: ; pc 0x1862B2 +org $B0E2B2 : RoomHeader_009F: ; pc 0x1862B2 db $00, $13, $0B, $1C, $00, $17, $00, $00, $12, $0C, $1D, $00, $00, $00 -org $30E2C0 : RoomHeader_00A0: ; pc 0x1862C0 +org $B0E2C0 : RoomHeader_00A0: ; pc 0x1862C0 db $00, $12, $0C, $1D, $00, $00, $00, $00, $00, $00, $91, $00, $11, $0C -org $30E2CE : RoomHeader_00A1: ; pc 0x1862CE +org $B0E2CE : RoomHeader_00A1: ; pc 0x1862CE db $00, $11, $0C, $1D, $00, $00, $00, $C0, $11, $0C, $1D, $00, $00, $00 -org $30E2DC : RoomHeader_00A2: ; pc 0x1862DC +org $B0E2DC : RoomHeader_00A2: ; pc 0x1862DC db $C0, $11, $0C, $1D, $00, $00, $00, $00, $00, $00, $93, $60, $19, $0D -org $30E2EA : RoomHeader_00A3: ; pc 0x1862EA +org $B0E2EA : RoomHeader_00A3: ; pc 0x1862EA db $00, $11, $0C, $1D, $00, $00, $00, $C0, $11, $0C, $1D, $00, $00, $00 -org $30E2F8 : RoomHeader_00A4: ; pc 0x1862F8 +org $B0E2F8 : RoomHeader_00A4: ; pc 0x1862F8 db $60, $19, $0D, $17, $04, $25, $00, $00, $25, $0E, $24, $00, $07, $00 -org $30E306 : RoomHeader_00A5: ; pc 0x186306 +org $B0E306 : RoomHeader_00A5: ; pc 0x186306 db $00, $25, $0E, $24, $00, $07, $00, $00, $00, $00, $6C, $00, $25, $0E -org $30E314 : RoomHeader_00A6: ; pc 0x186314 +org $B0E314 : RoomHeader_00A6: ; pc 0x186314 db $00, $25, $0E, $24, $00, $00, $00, $00, $00, $00, $4D, $00, $06, $05 -org $30E322 : RoomHeader_00A7: ; pc 0x186322 +org $B0E322 : RoomHeader_00A7: ; pc 0x186322 db $00, $06, $05, $19, $00, $00, $00, $00, $00, $17, $C0, $0B, $05, $08 -org $30E330 : RoomHeader_00A8: ; pc 0x186330 +org $B0E330 : RoomHeader_00A8: ; pc 0x186330 db $C0, $0B, $05, $08, $00, $03, $00, $C0, $0B, $05, $08, $00, $17, $00 -org $30E33E : RoomHeader_00A9: ; pc 0x18633E +org $B0E33E : RoomHeader_00A9: ; pc 0x18633E db $C0, $0B, $05, $08, $00, $17, $00, $00, $00, $89, $C0, $0B, $05, $08 -org $30E34C : RoomHeader_00AA: ; pc 0x18634C +org $B0E34C : RoomHeader_00AA: ; pc 0x18634C db $C0, $0B, $05, $08, $00, $17, $00, $00, $17, $0A, $1B, $00, $00, $00 -org $30E35A : RoomHeader_00AB: ; pc 0x18635A +org $B0E35A : RoomHeader_00AB: ; pc 0x18635A db $00, $17, $0A, $1B, $00, $00, $00, $00, $00, $00, $64, $E0, $17, $0A -org $30E368 : RoomHeader_00AC: ; pc 0x186368 +org $B0E368 : RoomHeader_00AC: ; pc 0x186368 db $E0, $17, $0A, $20, $00, $25, $00, $00, $13, $0B, $1C, $00, $27, $00 -org $30E376 : RoomHeader_00AD: ; pc 0x186376 +org $B0E376 : RoomHeader_00AD: ; pc 0x186376 db $00, $13, $0B, $1C, $00, $27, $00, $00, $00, $00, $8E, $00, $13, $0B -org $30E384 : RoomHeader_00AE: ; pc 0x186384 +org $B0E384 : RoomHeader_00AE: ; pc 0x186384 db $00, $13, $0B, $1C, $00, $27, $00, $00, $00, $00, $8E, $00, $13, $0B -org $30E392 : RoomHeader_00AF: ; pc 0x186392 +org $B0E392 : RoomHeader_00AF: ; pc 0x186392 db $00, $13, $0B, $1C, $00, $00, $00, $00, $26, $02, $21, $00, $05, $02 -org $30E3A0 : RoomHeader_00B0: ; pc 0x1863A0 +org $B0E3A0 : RoomHeader_00B0: ; pc 0x1863A0 db $00, $26, $02, $21, $00, $05, $02, $08, $00, $00, $40, $C0, $00, $11 -org $30E3AE : RoomHeader_00B1: ; pc 0x1863AE +org $B0E3AE : RoomHeader_00B1: ; pc 0x1863AE db $00, $11, $0C, $1D, $00, $00, $00, $02, $00, $B2, $C0, $11, $0C, $1D -org $30E3BC : RoomHeader_00B2: ; pc 0x1863BC +org $B0E3BC : RoomHeader_00B2: ; pc 0x1863BC db $C0, $11, $0C, $1D, $00, $03, $0E, $C0, $11, $0C, $1D, $00, $27, $00 -org $30E3CA : RoomHeader_00B3: ; pc 0x1863CA +org $B0E3CA : RoomHeader_00B3: ; pc 0x1863CA db $C0, $11, $0C, $1D, $00, $27, $00, $00, $19, $0D, $17, $00, $00, $00 -org $30E3D8 : RoomHeader_00B4: ; pc 0x1863D8 +org $B0E3D8 : RoomHeader_00B4: ; pc 0x1863D8 db $00, $19, $0D, $17, $00, $00, $00, $00, $00, $00, $C4, $01, $18, $0D -org $30E3E6 : RoomHeader_00B5: ; pc 0x1863E6 +org $B0E3E6 : RoomHeader_00B5: ; pc 0x1863E6 db $01, $18, $0D, $25, $00, $17, $00, $00, $00, $00, $04, $00, $18, $0D -org $30E3F4 : RoomHeader_00B6: ; pc 0x1863F4 +org $B0E3F4 : RoomHeader_00B6: ; pc 0x1863F4 db $00, $18, $0D, $1E, $00, $04, $3C, $00, $00, $00, $15, $00, $0B, $05 -org $30E402 : RoomHeader_00B7: ; pc 0x186402 +org $B0E402 : RoomHeader_00B7: ; pc 0x186402 db $00, $18, $0D, $1E, $00, $00, $00, $20, $18, $0D, $26, $00, $00, $00 -org $30E410 : RoomHeader_00B8: ; pc 0x186410 +org $B0E410 : RoomHeader_00B8: ; pc 0x186410 db $00, $0B, $05, $08, $00, $27, $00, $C0, $0B, $05, $08, $00, $00, $00 -org $30E41E : RoomHeader_00B9: ; pc 0x18641E +org $B0E41E : RoomHeader_00B9: ; pc 0x18641E db $C0, $0B, $05, $08, $00, $00, $00, $01, $0B, $05, $08, $00, $17, $00 -org $30E42C : RoomHeader_00BA: ; pc 0x18642C +org $B0E42C : RoomHeader_00BA: ; pc 0x18642C db $01, $0B, $05, $08, $00, $17, $00, $40, $17, $0A, $1B, $00, $00, $00 -org $30E43A : RoomHeader_00BB: ; pc 0x18643A +org $B0E43A : RoomHeader_00BB: ; pc 0x18643A db $40, $17, $0A, $1B, $00, $00, $00, $00, $17, $0A, $1B, $00, $17, $00 -org $30E448 : RoomHeader_00BC: ; pc 0x186448 +org $B0E448 : RoomHeader_00BC: ; pc 0x186448 db $00, $17, $0A, $1B, $00, $17, $00, $00, $00, $00, $45, $00, $13, $0B -org $30E456 : RoomHeader_00BD: ; pc 0x186456 +org $B0E456 : RoomHeader_00BD: ; pc 0x186456 db $00, $13, $0B, $29, $00, $16, $00, $00, $00, $4F, $9E, $00, $13, $0B -org $30E464 : RoomHeader_00BE: ; pc 0x186464 +org $B0E464 : RoomHeader_00BE: ; pc 0x186464 db $00, $13, $0B, $29, $00, $16, $00, $00, $00, $4F, $9E, $00, $13, $0B -org $30E472 : RoomHeader_00BF: ; pc 0x186472 +org $B0E472 : RoomHeader_00BF: ; pc 0x186472 db $00, $13, $0B, $29, $00, $00, $00, $01, $00, $02, $27, $00, $02, $0F -org $30E480 : RoomHeader_00C0: ; pc 0x186480 +org $B0E480 : RoomHeader_00C0: ; pc 0x186480 db $01, $00, $02, $27, $00, $02, $0F, $00, $00, $00, $B0, $D0, $00, $11 -org $30E48E : RoomHeader_00C1: ; pc 0x18648E +org $B0E48E : RoomHeader_00C1: ; pc 0x18648E db $00, $11, $0C, $1D, $00, $33, $00, $C0, $11, $0C, $1D, $00, $27, $00 -org $30E49C : RoomHeader_00C2: ; pc 0x18649C +org $B0E49C : RoomHeader_00C2: ; pc 0x18649C db $C0, $11, $0C, $1D, $00, $27, $00, $C0, $11, $0C, $1D, $00, $00, $00 -org $30E4AA : RoomHeader_00C3: ; pc 0x1864AA +org $B0E4AA : RoomHeader_00C3: ; pc 0x1864AA db $C0, $11, $0C, $1D, $00, $00, $00, $00, $18, $0D, $25, $00, $00, $00 -org $30E4B8 : RoomHeader_00C4: ; pc 0x1864B8 +org $B0E4B8 : RoomHeader_00C4: ; pc 0x1864B8 db $00, $18, $0D, $25, $00, $00, $00, $00, $00, $00, $B4, $00, $18, $0D -org $30E4C6 : RoomHeader_00C5: ; pc 0x1864C6 +org $B0E4C6 : RoomHeader_00C5: ; pc 0x1864C6 db $00, $18, $0D, $25, $00, $00, $00, $00, $18, $0D, $1E, $00, $33, $00 -org $30E4D4 : RoomHeader_00C6: ; pc 0x1864D4 +org $B0E4D4 : RoomHeader_00C6: ; pc 0x1864D4 db $00, $18, $0D, $1E, $00, $00, $00, $20, $18, $0D, $26, $00, $00, $00 -org $30E4E2 : RoomHeader_00C7: ; pc 0x1864E2 +org $B0E4E2 : RoomHeader_00C7: ; pc 0x1864E2 db $00, $18, $0D, $1E, $00, $33, $00, $00, $0B, $05, $09, $00, $15, $25 -org $30E4F0 : RoomHeader_00C8: ; pc 0x1864F0 +org $B0E4F0 : RoomHeader_00C8: ; pc 0x1864F0 db $00, $0B, $05, $09, $00, $15, $25, $00, $0B, $05, $08, $00, $17, $00 -org $30E4FE : RoomHeader_00C9: ; pc 0x1864FE +org $B0E4FE : RoomHeader_00C9: ; pc 0x1864FE db $00, $0B, $05, $08, $00, $17, $00, $C0, $17, $0A, $1B, $00, $00, $00 -org $30E50C : RoomHeader_00CA: ; pc 0x18650C +org $B0E50C : RoomHeader_00CA: ; pc 0x18650C db $C0, $17, $0A, $1B, $00, $00, $00, $20, $13, $0B, $29, $00, $14, $00 -org $30E51A : RoomHeader_00CB: ; pc 0x18651A +org $B0E51A : RoomHeader_00CB: ; pc 0x18651A db $C0, $17, $0A, $1B, $00, $00, $00, $20, $13, $0B, $29, $00, $14, $00 -org $30E528 : RoomHeader_00CC: ; pc 0x186528 +org $B0E528 : RoomHeader_00CC: ; pc 0x186528 db $C0, $17, $0A, $1B, $00, $00, $00, $20, $13, $0B, $29, $00, $14, $00 -org $30E536 : RoomHeader_00CD: ; pc 0x186536 +org $B0E536 : RoomHeader_00CD: ; pc 0x186536 db $20, $13, $0B, $29, $00, $14, $00, $00, $00, $DE, $01, $00, $02, $21 -org $30E544 : RoomHeader_00CE: ; pc 0x186544 +org $B0E544 : RoomHeader_00CE: ; pc 0x186544 db $20, $13, $0B, $29, $00, $14, $00, $00, $00, $DE, $01, $00, $02, $21 -org $30E552 : RoomHeader_00CF: ; pc 0x186552 +org $B0E552 : RoomHeader_00CF: ; pc 0x186552 db $01, $00, $02, $21, $00, $0F, $00, $00, $00, $00, $C0, $E0, $00, $11 -org $30E560 : RoomHeader_00D0: ; pc 0x186560 +org $B0E560 : RoomHeader_00D0: ; pc 0x186560 db $01, $00, $02, $21, $00, $0F, $00, $00, $00, $00, $C0, $E0, $00, $11 -org $30E56E : RoomHeader_00D1: ; pc 0x18656E +org $B0E56E : RoomHeader_00D1: ; pc 0x18656E db $00, $11, $0C, $1D, $00, $00, $00, $00, $00, $B1, $97, $00, $11, $0C -org $30E57C : RoomHeader_00D2: ; pc 0x18657C +org $B0E57C : RoomHeader_00D2: ; pc 0x18657C db $00, $11, $0C, $1D, $00, $0A, $00, $00, $00, $00, $98, $00, $0B, $05 -org $30E58A : RoomHeader_00D3: ; pc 0x18658A +org $B0E58A : RoomHeader_00D3: ; pc 0x18658A db $00, $0B, $05, $08, $00, $06, $00, $00, $0B, $05, $08, $00, $17, $00 -org $30E598 : RoomHeader_00D4: ; pc 0x186598 +org $B0E598 : RoomHeader_00D4: ; pc 0x186598 db $00, $0B, $05, $08, $00, $06, $00, $00, $0B, $05, $08, $00, $17, $00 -org $30E5A6 : RoomHeader_00D5: ; pc 0x1865A6 +org $B0E5A6 : RoomHeader_00D5: ; pc 0x1865A6 db $00, $18, $0D, $25, $00, $00, $00, $00, $18, $0D, $1E, $00, $33, $00 -org $30E5B4 : RoomHeader_00D6: ; pc 0x1865B4 +org $B0E5B4 : RoomHeader_00D6: ; pc 0x1865B4 db $00, $18, $0D, $1E, $00, $00, $00, $20, $18, $0D, $26, $00, $00, $00 -org $30E5C2 : RoomHeader_00D7: ; pc 0x1865C2 +org $B0E5C2 : RoomHeader_00D7: ; pc 0x1865C2 db $00, $0B, $05, $08, $00, $06, $00, $00, $0B, $05, $08, $00, $17, $00 -org $30E5D0 : RoomHeader_00D8: ; pc 0x1865D0 +org $B0E5D0 : RoomHeader_00D8: ; pc 0x1865D0 db $00, $0B, $05, $08, $00, $06, $00, $00, $0B, $05, $08, $00, $17, $00 -org $30E5DE : RoomHeader_00D9: ; pc 0x1865DE +org $B0E5DE : RoomHeader_00D9: ; pc 0x1865DE db $00, $0B, $05, $08, $00, $17, $00, $00, $0B, $05, $08, $00, $17, $00 -org $30E5EC : RoomHeader_00DA: ; pc 0x1865EC +org $B0E5EC : RoomHeader_00DA: ; pc 0x1865EC db $00, $0B, $05, $08, $00, $17, $00, $00, $00, $00, $99, $E0, $14, $0B -org $30E5FA : RoomHeader_00DB: ; pc 0x1865FA +org $B0E5FA : RoomHeader_00DB: ; pc 0x1865FA db $C0, $17, $0A, $1B, $00, $00, $00, $20, $13, $0B, $29, $00, $14, $00 -org $30E608 : RoomHeader_00DC: ; pc 0x186608 +org $B0E608 : RoomHeader_00DC: ; pc 0x186608 db $C0, $17, $0A, $1B, $00, $00, $00, $20, $13, $0B, $29, $00, $14, $00 -org $30E616 : RoomHeader_00DD: ; pc 0x186616 +org $B0E616 : RoomHeader_00DD: ; pc 0x186616 db $E0, $14, $0B, $16, $00, $25, $00, $C0, $20, $06, $13, $00, $00, $00 -org $30E624 : RoomHeader_00DE: ; pc 0x186624 +org $B0E624 : RoomHeader_00DE: ; pc 0x186624 db $E0, $14, $0B, $16, $00, $25, $00, $C0, $20, $06, $13, $00, $00, $00 -org $30E632 : RoomHeader_00DF: ; pc 0x186632 +org $B0E632 : RoomHeader_00DF: ; pc 0x186632 db $C0, $20, $06, $13, $00, $00, $00, $00, $00, $00, $EF, $00, $26, $02 -org $30E640 : RoomHeader_00E0: ; pc 0x186640 +org $B0E640 : RoomHeader_00E0: ; pc 0x186640 db $00, $26, $02, $21, $00, $01, $2A, $00, $00, $00, $D0, $C0, $07, $06 -org $30E64E : RoomHeader_00E1: ; pc 0x18664E +org $B0E64E : RoomHeader_00E1: ; pc 0x18664E db $C0, $07, $06, $28, $00, $00, $00, $00, $20, $06, $13, $00, $00, $00 -org $30E65C : RoomHeader_00E2: ; pc 0x18665C +org $B0E65C : RoomHeader_00E2: ; pc 0x18665C db $00, $20, $06, $13, $00, $00, $00, $C0, $20, $06, $09, $00, $00, $00 -org $30E66A : RoomHeader_00E3: ; pc 0x18666A +org $B0E66A : RoomHeader_00E3: ; pc 0x18666A db $C0, $20, $06, $09, $00, $00, $00, $01, $07, $14, $01, $00, $00, $00 -org $30E678 : RoomHeader_00E4: ; pc 0x186678 +org $B0E678 : RoomHeader_00E4: ; pc 0x186678 db $01, $07, $14, $01, $00, $00, $00, $01, $07, $06, $01, $00, $00, $00 -org $30E686 : RoomHeader_00E5: ; pc 0x186686 +org $B0E686 : RoomHeader_00E5: ; pc 0x186686 db $01, $07, $14, $01, $00, $00, $00, $01, $07, $06, $01, $00, $00, $00 -org $30E694 : RoomHeader_00E6: ; pc 0x186694 +org $B0E694 : RoomHeader_00E6: ; pc 0x186694 db $01, $07, $06, $01, $00, $00, $00, $20, $07, $06, $13, $00, $00, $00 -org $30E6A2 : RoomHeader_00E7: ; pc 0x1866A2 +org $B0E6A2 : RoomHeader_00E7: ; pc 0x1866A2 db $01, $07, $06, $01, $00, $00, $00, $20, $07, $06, $13, $00, $00, $00 -org $30E6B0 : RoomHeader_00E8: ; pc 0x1866B0 +org $B0E6B0 : RoomHeader_00E8: ; pc 0x1866B0 db $20, $07, $06, $13, $00, $00, $00, $00, $00, $F8, $F8, $F8, $F8, $F8 -org $30E6BE : RoomHeader_00E9: ; pc 0x1866BE +org $B0E6BE : RoomHeader_00E9: ; pc 0x1866BE db $20, $20, $06, $13, $00, $00, $00, $00, $00, $FA, $FA, $20, $07, $06 -org $30E6CC : RoomHeader_00EA: ; pc 0x1866CC +org $B0E6CC : RoomHeader_00EA: ; pc 0x1866CC db $20, $20, $06, $13, $00, $00, $00, $00, $00, $FA, $FA, $20, $07, $06 -org $30E6DA : RoomHeader_00EB: ; pc 0x1866DA +org $B0E6DA : RoomHeader_00EB: ; pc 0x1866DA db $20, $07, $06, $19, $00, $00, $00, $00, $00, $FB, $FB, $20, $20, $06 -org $30E6E8 : RoomHeader_00EC: ; pc 0x1866E8 +org $B0E6E8 : RoomHeader_00EC: ; pc 0x1866E8 db $20, $20, $06, $13, $00, $00, $00, $00, $00, $FD, $FD, $FD, $20, $20 -org $30E6F6 : RoomHeader_00ED: ; pc 0x1866F6 +org $B0E6F6 : RoomHeader_00ED: ; pc 0x1866F6 db $20, $20, $06, $13, $00, $00, $00, $00, $00, $FD, $FD, $FD, $20, $20 -org $30E704 : RoomHeader_00EE: ; pc 0x186704 +org $B0E704 : RoomHeader_00EE: ; pc 0x186704 db $20, $20, $06, $13, $00, $00, $00, $00, $00, $FE, $20, $20, $06, $13 -org $30E712 : RoomHeader_00EF: ; pc 0x186712 +org $B0E712 : RoomHeader_00EF: ; pc 0x186712 db $20, $20, $06, $13, $00, $02, $00, $08, $00, $FF, $DF, $FF, $00, $02 -org $30E720 : RoomHeader_00F0: ; pc 0x186720 +org $B0E720 : RoomHeader_00F0: ; pc 0x186720 db $01, $07, $06, $01, $00, $00, $00, $20, $07, $06, $13, $00, $00, $00 -org $30E72E : RoomHeader_00F1: ; pc 0x18672E +org $B0E72E : RoomHeader_00F1: ; pc 0x18672E db $01, $07, $06, $01, $00, $00, $00, $20, $07, $06, $13, $00, $00, $00 -org $30E73C : RoomHeader_00F2: ; pc 0x18673C +org $B0E73C : RoomHeader_00F2: ; pc 0x18673C db $00, $02, $03, $05, $00, $00, $02, $03, $0F, $00, $00, $00, $00, $07 -org $30E74A : RoomHeader_00F3: ; pc 0x18674A +org $B0E74A : RoomHeader_00F3: ; pc 0x18674A db $00, $02, $03, $05, $00, $00, $02, $03, $0F, $00, $00, $00, $00, $07 -org $30E758 : RoomHeader_00F4: ; pc 0x186758 +org $B0E758 : RoomHeader_00F4: ; pc 0x186758 db $00, $02, $03, $0F, $00, $00, $00, $00, $07, $06, $13, $00, $00, $00 -org $30E766 : RoomHeader_00F5: ; pc 0x186766 +org $B0E766 : RoomHeader_00F5: ; pc 0x186766 db $00, $02, $03, $0F, $00, $00, $00, $00, $07, $06, $13, $00, $00, $00 -org $30E774 : RoomHeader_00F6: ; pc 0x186774 +org $B0E774 : RoomHeader_00F6: ; pc 0x186774 db $00, $07, $06, $13, $00, $00, $00, $00, $00, $00, $E8, $E8, $E8, $E8 -org $30E782 : RoomHeader_00F7: ; pc 0x186782 +org $B0E782 : RoomHeader_00F7: ; pc 0x186782 db $00, $07, $06, $13, $00, $00, $00, $00, $00, $00, $E8, $E8, $E8, $E8 -org $30E790 : RoomHeader_00F8: ; pc 0x186790 +org $B0E790 : RoomHeader_00F8: ; pc 0x186790 db $00, $07, $06, $13, $00, $00, $00, $00, $00, $00, $E8, $E8, $E8, $E8 -org $30E79E : RoomHeader_00F9: ; pc 0x18679E +org $B0E79E : RoomHeader_00F9: ; pc 0x18679E db $00, $20, $06, $13, $00, $00, $00, $C0, $20, $06, $13, $00, $00, $00 -org $30E7AC : RoomHeader_00FA: ; pc 0x1867AC +org $B0E7AC : RoomHeader_00FA: ; pc 0x1867AC db $C0, $20, $06, $13, $00, $00, $00, $00, $00, $00, $EA, $00, $07, $06 -org $30E7BA : RoomHeader_00FB: ; pc 0x1867BA +org $B0E7BA : RoomHeader_00FB: ; pc 0x1867BA db $00, $07, $06, $19, $00, $00, $00, $00, $00, $00, $EB, $00, $20, $06 -org $30E7C8 : RoomHeader_00FC: ; pc 0x1867C8 +org $B0E7C8 : RoomHeader_00FC: ; pc 0x1867C8 db $00, $20, $06, $13, $00, $00, $00, $00, $00, $00, $ED, $ED, $00, $07 -org $30E7D6 : RoomHeader_00FD: ; pc 0x1867D6 +org $B0E7D6 : RoomHeader_00FD: ; pc 0x1867D6 db $00, $20, $06, $13, $00, $00, $00, $00, $00, $00, $ED, $ED, $00, $07 -org $30E7E4 : RoomHeader_00FE: ; pc 0x1867E4 +org $B0E7E4 : RoomHeader_00FE: ; pc 0x1867E4 db $00, $20, $06, $13, $00, $00, $00, $C0, $20, $06, $13, $00, $00, $00 -org $30E7F2 : RoomHeader_00FF: ; pc 0x1867F2 +org $B0E7F2 : RoomHeader_00FF: ; pc 0x1867F2 db $00, $07, $06, $05, $00, $00, $00, $00, $00, $00, $EF, $00, $05, $03 -org $30E800 : RoomHeader_0100: ; pc 0x186800 +org $B0E800 : RoomHeader_0100: ; pc 0x186800 db $00, $05, $03, $28, $00, $00, $00, $00, $1F, $03, $05, $00, $00, $00 -org $30E80E : RoomHeader_0101: ; pc 0x18680E +org $B0E80E : RoomHeader_0101: ; pc 0x18680E db $00, $02, $03, $0F, $00, $00, $00, $00, $15, $03, $0D, $00, $00, $00 -org $30E81C : RoomHeader_0102: ; pc 0x18681C +org $B0E81C : RoomHeader_0102: ; pc 0x18681C db $00, $15, $03, $0D, $00, $00, $00, $00, $05, $03, $0F, $00, $00, $00 -org $30E82A : RoomHeader_0103: ; pc 0x18682A +org $B0E82A : RoomHeader_0103: ; pc 0x18682A db $00, $05, $03, $0F, $00, $00, $00, $01, $15, $03, $0D, $00, $00, $00 -org $30E838 : RoomHeader_0104: ; pc 0x186838 +org $B0E838 : RoomHeader_0104: ; pc 0x186838 db $01, $15, $03, $0D, $00, $00, $00, $00, $1C, $0F, $10, $00, $00, $00 -org $30E846 : RoomHeader_0105: ; pc 0x186846 +org $B0E846 : RoomHeader_0105: ; pc 0x186846 db $00, $1C, $0F, $10, $00, $00, $00, $00, $1F, $03, $0F, $00, $00, $00 -org $30E854 : RoomHeader_0106: ; pc 0x186854 +org $B0E854 : RoomHeader_0106: ; pc 0x186854 db $00, $1F, $03, $0F, $00, $00, $00, $00, $02, $03, $01, $00, $00, $00 -org $30E862 : RoomHeader_0107: ; pc 0x186862 +org $B0E862 : RoomHeader_0107: ; pc 0x186862 db $00, $02, $03, $01, $00, $00, $00, $00, $02, $03, $0E, $00, $00, $00 -org $30E870 : RoomHeader_0108: ; pc 0x186870 +org $B0E870 : RoomHeader_0108: ; pc 0x186870 db $00, $02, $03, $0E, $00, $00, $00, $01, $05, $03, $05, $00, $00, $00 -org $30E87E : RoomHeader_0109: ; pc 0x18687E +org $B0E87E : RoomHeader_0109: ; pc 0x18687E db $01, $05, $03, $05, $00, $00, $00, $01, $07, $06, $10, $00, $00, $00 -org $30E88C : RoomHeader_010A: ; pc 0x18688C +org $B0E88C : RoomHeader_010A: ; pc 0x18688C db $01, $07, $06, $10, $00, $00, $00, $80, $0A, $08, $08, $00, $00, $1A -org $30E89A : RoomHeader_010B: ; pc 0x18689A +org $B0E89A : RoomHeader_010B: ; pc 0x18689A db $80, $0A, $08, $08, $00, $00, $1A, $00, $27, $06, $08, $00, $03, $00 -org $30E8A8 : RoomHeader_010C: ; pc 0x1868A8 +org $B0E8A8 : RoomHeader_010C: ; pc 0x1868A8 db $00, $27, $06, $08, $00, $03, $00, $00, $0A, $08, $11, $00, $00, $00 -org $30E8B6 : RoomHeader_010D: ; pc 0x1868B6 +org $B0E8B6 : RoomHeader_010D: ; pc 0x1868B6 db $00, $0A, $08, $11, $00, $00, $00, $00, $07, $14, $05, $00, $00, $00 -org $30E8C4 : RoomHeader_010E: ; pc 0x1868C4 +org $B0E8C4 : RoomHeader_010E: ; pc 0x1868C4 db $00, $07, $14, $05, $00, $00, $00, $00, $1E, $11, $05, $00, $00, $00 -org $30E8D2 : RoomHeader_010F: ; pc 0x1868D2 +org $B0E8D2 : RoomHeader_010F: ; pc 0x1868D2 db $00, $1F, $03, $05, $00, $00, $00, $00, $02, $03, $0F, $00, $00, $00 -org $30E8E0 : RoomHeader_0110: ; pc 0x1868E0 +org $B0E8E0 : RoomHeader_0110: ; pc 0x1868E0 db $00, $1F, $03, $05, $00, $00, $00, $00, $02, $03, $0F, $00, $00, $00 -org $30E8EE : RoomHeader_0111: ; pc 0x1868EE +org $B0E8EE : RoomHeader_0111: ; pc 0x1868EE db $00, $1E, $11, $05, $00, $00, $00, $00, $07, $14, $05, $00, $00, $00 -org $30E8FC : RoomHeader_0112: ; pc 0x1868FC +org $B0E8FC : RoomHeader_0112: ; pc 0x1868FC db $00, $07, $14, $05, $00, $00, $00, $00, $03, $10, $08, $00, $00, $00 -org $30E90A : RoomHeader_0113: ; pc 0x18690A +org $B0E90A : RoomHeader_0113: ; pc 0x18690A db $00, $03, $10, $08, $00, $00, $00, $00, $07, $06, $07, $00, $00, $00 -org $30E918 : RoomHeader_0114: ; pc 0x186918 +org $B0E918 : RoomHeader_0114: ; pc 0x186918 db $00, $07, $06, $07, $00, $00, $00, $00, $22, $12, $07, $00, $00, $00 -org $30E926 : RoomHeader_0115: ; pc 0x186926 +org $B0E926 : RoomHeader_0115: ; pc 0x186926 db $00, $07, $06, $07, $00, $00, $00, $00, $22, $12, $07, $00, $00, $00 -org $30E934 : RoomHeader_0116: ; pc 0x186934 +org $B0E934 : RoomHeader_0116: ; pc 0x186934 db $00, $22, $12, $07, $00, $00, $00, $00, $20, $14, $05, $00, $00, $00 -org $30E942 : RoomHeader_0117: ; pc 0x186942 +org $B0E942 : RoomHeader_0117: ; pc 0x186942 db $00, $20, $14, $05, $00, $00, $00, $E0, $23, $0A, $0F, $00, $00, $00 -org $30E950 : RoomHeader_0118: ; pc 0x186950 +org $B0E950 : RoomHeader_0118: ; pc 0x186950 db $00, $05, $03, $0F, $00, $00, $00, $01, $15, $03, $0D, $00, $00, $00 -org $30E95E : RoomHeader_0119: ; pc 0x18695E +org $B0E95E : RoomHeader_0119: ; pc 0x18695E db $E0, $23, $0A, $0F, $00, $00, $00, $00, $00, $00, $1D, $00, $1C, $0F -org $30E96C : RoomHeader_011A: ; pc 0x18696C +org $B0E96C : RoomHeader_011A: ; pc 0x18696C db $00, $1C, $0F, $05, $00, $00, $00, $C0, $07, $06, $08, $00, $00, $00 -org $30E97A : RoomHeader_011B: ; pc 0x18697A +org $B0E97A : RoomHeader_011B: ; pc 0x18697A db $C0, $07, $06, $08, $00, $00, $00, $00, $23, $0A, $0F, $00, $00, $00 -org $30E988 : RoomHeader_011C: ; pc 0x186988 +org $B0E988 : RoomHeader_011C: ; pc 0x186988 db $00, $1F, $03, $05, $00, $00, $00, $00, $02, $03, $0F, $00, $00, $00 -org $30E996 : RoomHeader_011D: ; pc 0x186996 +org $B0E996 : RoomHeader_011D: ; pc 0x186996 db $00, $23, $0A, $0F, $00, $00, $00, $00, $00, $00, $19, $00, $20, $06 -org $30E9A4 : RoomHeader_011E: ; pc 0x1869A4 +org $B0E9A4 : RoomHeader_011E: ; pc 0x1869A4 db $00, $20, $06, $2A, $00, $00, $00, $00, $05, $03, $05, $00, $00, $00 -org $30E9B2 : RoomHeader_011F: ; pc 0x1869B2 +org $B0E9B2 : RoomHeader_011F: ; pc 0x1869B2 db $00, $05, $03, $05, $00, $00, $00, $00, $13, $06, $13, $00, $00, $00 -org $30E9C0 : RoomHeader_0120: ; pc 0x1869C0 +org $B0E9C0 : RoomHeader_0120: ; pc 0x1869C0 db $00, $13, $06, $13, $00, $00, $00, $00, $07, $06, $28, $00, $03, $00 -org $30E9CE : RoomHeader_0121: ; pc 0x1869CE +org $B0E9CE : RoomHeader_0121: ; pc 0x1869CE db $00, $1E, $11, $05, $00, $00, $00, $00, $07, $14, $05, $00, $00, $00 -org $30E9DC : RoomHeader_0122: ; pc 0x1869DC +org $B0E9DC : RoomHeader_0122: ; pc 0x1869DC db $00, $1E, $11, $05, $00, $00, $00, $00, $07, $14, $05, $00, $00, $00 -org $30E9EA : RoomHeader_0123: ; pc 0x1869EA +org $B0E9EA : RoomHeader_0123: ; pc 0x1869EA db $00, $07, $06, $28, $00, $03, $00, $00, $07, $06, $28, $00, $00, $00 -org $30E9F8 : RoomHeader_0124: ; pc 0x1869F8 +org $B0E9F8 : RoomHeader_0124: ; pc 0x1869F8 db $00, $07, $06, $28, $00, $00, $00, $FF, $FF, $FF, $FF, $FF, $FF, $FF -org $30EA06 : RoomHeader_0125: ; pc 0x186A06 +org $B0EA06 : RoomHeader_0125: ; pc 0x186A06 db $00, $07, $06, $28, $00, $00, $00, $FF, $FF, $FF, $FF, $FF, $FF, $FF -org $30EA14 : RoomHeader_0126: ; pc 0x186A14 +org $B0EA14 : RoomHeader_0126: ; pc 0x186A14 db $00, $07, $06, $28, $00, $00, $00, $FF, $FF, $FF, $FF, $FF, $FF, $FF -org $30EA22 : RoomHeader_0127: ; pc 0x186A22 +org $B0EA22 : RoomHeader_0127: ; pc 0x186A22 db $00, $20, $06, $2A, $00, $00, $00, $00, $05, $03, $05, $00, $00, $00 -org $30EA30 : RoomHeader_0128: ; pc 0x186A30 +org $B0EA30 : RoomHeader_0128: ; pc 0x186A30 db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF -org $30EA3E : RoomHeader_0129: ; pc 0x186A3E +org $B0EA3E : RoomHeader_0129: ; pc 0x186A3E db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF -org $30EA4C : RoomHeader_012A: ; pc 0x186A4C +org $B0EA4C : RoomHeader_012A: ; pc 0x186A4C db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF -org $30EA5A : RoomHeader_012B: ; pc 0x186A5A +org $B0EA5A : RoomHeader_012B: ; pc 0x186A5A db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF -org $30EA68 : RoomHeader_012C: ; pc 0x186A68 +org $B0EA68 : RoomHeader_012C: ; pc 0x186A68 db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF -org $30EA76 : RoomHeader_012D: ; pc 0x186A76 +org $B0EA76 : RoomHeader_012D: ; pc 0x186A76 db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF -org $30EA84 : RoomHeader_012E: ; pc 0x186A84 +org $B0EA84 : RoomHeader_012E: ; pc 0x186A84 db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ;-------------------------------------------------------------------------------- ; 0x186C00 - 186FFE (unused) ;-------------------------------------------------------------------------------- -org $30EFFF ; PC 0x186FFF +org $B0EFFF ; PC 0x186FFF BallNChainDungeon: -db #$02 +db $02 -org $30F000 ; PC 0x187000-0x18700F +org $B0F000 ; PC 0x187000-0x18700F CompassTotalsROM: db $08, $08, $06, $06, $02, $0A, $0E, $08, $08, $08, $06, $08, $0C, $1B, $00, $00 diff --git a/textrenderer.asm b/textrenderer.asm index c053dd2..0f0b8da 100644 --- a/textrenderer.asm +++ b/textrenderer.asm @@ -1,6 +1,6 @@ RenderCharSetColorExtended_init: stz.b Scrap0C - jsl $00d84e + jsl $80d84e rtl RenderCharSetColorExtended_close: diff --git a/vanillalabels.asm b/vanillalabels.asm index c967bf6..e030d98 100644 --- a/vanillalabels.asm +++ b/vanillalabels.asm @@ -1,116 +1,128 @@ -;================================================================================ +;=================================================================================================== ; Vanilla Labels -;================================================================================ +;=================================================================================================== +; EVERY LABEL SHOULD BE IN A FAST ROM BANK +;=================================================================================================== ; Labels for routines in the vanilla portion of the ROM. More or less in sequential ; order. Most of these names came from the MoN US disassembly. But we should ; refer to the JP 1.0 disassembly as that's what the randomizer is based on. -; All routines can be assumed to return long unless otherwise noted. -;================================================================================ +;=================================================================================================== +;--------------------------------------------------------------------------------------------------- +;=================================================================================================== +; Long routines (use JSL) +;=================================================================================================== +Vram_EraseTilemaps_triforce = $808333 +JumpTableLocal = $808781 +JumpTableLong = $80879C +Sound_LoadLightWorldSongBank = $808913 +Sound_LoadLightWorldSongBank_do_load = $80891D +EnableForceBlank = $80893D +DungeonMask = $8098C0 +DecompSwordGfx = $80D308 +DecompShieldGfx = $80D348 +Tagalong_LoadGfx = $80D463 +GetAnimatedSpriteTile = $80D51B +GetAnimatedSpriteTile_variable = $80D52D +Attract_DecompressStoryGfx = $80D84E +LoadSelectScreenGfx = $80E529 +PrepDungeonExit = $80F945 +Mirror_InitHdmaSettings = $80FDEE +Dungeon_LoadRoom = $81873A +Module_PreDungeon = $82821E +Module_PreDungeon_setAmbientSfx = $828296 +Dungeon_SaveRoomData = $82A0A8 +Dungeon_SaveRoomData_justKeys = $82A0BE +Dungeon_SaveRoomQuadrantData = $82B861 +LoadGearPalettes_bunny = $82FD8A +LoadGearPalettes_variable = $82FD95 +Filter_Majorly_Whiten_Color = $82FEAB +Sprite_SpawnFallingItem = $85A51D +Sprite_DrawMultiple = $85DF6C +Sprite_DrawMultiple_quantity_preset = $85DF70 +Sprite_DrawMultiple_player_deferred = $85DF75 +Sprite_ShowSolicitedMessageIfPlayerFacing = $85E1A7 +Sprite_ShowMessageFromPlayerContact = $85E1F0 +Sprite_ShowMessageUnconditional = $85E219 +Sprite_ZeldaLong = $85EC96 +Sprite_EB_HeartPiece_handle_flags = $85F0C0 +Player_ApplyRumbleToSprites = $8680FA +Utility_CheckIfHitBoxesOverlapLong = $8683E6 +Sprite_PrepAndDrawSingleLargeLong = $86DBF8 +Sprite_PrepAndDrawSingleSmallLong = $86DC00 +Sprite_DrawShadowLong = $86DC5C +DashKey_Draw = $86DD40 +Sprite_ApplySpeedTowardsPlayerLong = $86EA18 +Sprite_DirectionToFacePlayerLong = $86EAA6 +Sprite_CheckDamageToPlayerSameLayerLong = $86F12F +OAM_AllocateDeferToPlayerLong = $86F86A +Player_HaltDashAttackLong = $8791B3 +Link_ReceiveItem = $87999D +Sprite_CheckIfPlayerPreoccupied = $87F4AA +Ancilla_ReceiveItem = $88C3AE +Ancilla_BreakTowerSeal_draw_single_crystal = $88CE93 +Ancilla_BreakTowerSeal_stop_spawning_sparkles = $88CEC3 +BreakTowerSeal_ExecuteSparkles = $88CF59 +Ancilla_SetOam_XY_Long = $88F710 +AddReceivedItem = $8985E2 +AddPendantOrCrystal = $898BAD +AddWeathervaneExplosion = $898CFD +AddDashTremor = $8993DF +AddAncillaLong = $899D04 +Ancilla_CheckIfAlreadyExistsLong = $899D1A +GiveRupeeGift = $89AD58 +Sprite_SetSpawnedCoords = $89AE64 +OverworldMap_InitGfx = $8ABA4F +OverworldMap_DarkWorldTilemap = $8ABA99 +OverworldMap_LoadSprGfx = $8ABAB9 +NameFile_MakeScreenVisible = $8CD7D1 +InitializeSaveFile = $8CDB3E +InitializeSaveFile_build_checksum = $8CDBC0 +GetRandomInt = $8DBA71 +OAM_AllocateFromRegionA = $8DBA80 +OAM_AllocateFromRegionB = $8DBA84 +OAM_AllocateFromRegionC = $8DBA88 +OAM_AllocateFromRegionD = $8DBA8C +OAM_AllocateFromRegionE = $8DBA90 +OAM_AllocateFromRegionF = $8DBA94 +Sound_SetSfxPanWithPlayerCoords = $8DBB67 +Sound_SetSfx1PanLong = $8DBB6E +Sound_SetSfx2PanLong = $8DBB7C +Sound_SetSfx3PanLong = $8DBB8A +HUD_RefreshIconLong = $8DDB7F +Equipment_UpdateEquippedItemLong = $8DDD32 +BottleMenu_movingOn = $8DE01E +RestoreNormalMenu = $8DE346 +Equipment_SearchForEquippedItemLong = $8DE395 +HUD_RebuildLong = $8DFA78 +HUD_RebuildIndoor_Palace = $8DFA88 +HUD_RebuildLong2 = $8DFA88 +Messaging_Text = $8EEE10 +Overworld_TileAttr = $8FFD94 +Overworld_DrawPersistentMap16 = $9BC97C +Palette_Sword = $9BED03 +Palette_Shield = $9BED29 +Palette_ArmorAndGloves = $9BEDF9 +Palette_Hud = $9BEE52 +Palette_SelectScreen = $9BEF96 +Sprite_NullifyHookshotDrag = $9CF500 +Ancilla_CheckForAvailableSlot = $9CF537 +ShopKeeper_RapidTerminateReceiveItem = $9CFAAA +Filter_MajorWhitenMain = $9DE9B6 +Sprite_SpawnDynamically = $9DF65D +Sprite_SpawnDynamically_arbitrary = $9DF65F +DiggingGameGuy_AttemptPrizeSpawn = $9DFD4B +Sprite_GetEmptyBottleIndex = $9EDE28 +Sprite_PlayerCantPassThrough = $9EF4E7 +;=================================================================================================== +;--------------------------------------------------------------------------------------------------- +;=================================================================================================== +; Local routines (use JSR) +;=================================================================================================== +;--------------------------------------------------------------------------------------------------- +;=================================================================================================== +Chicken_SpawnAvengerChicken = $86A7DB +DrawProgressIcons = $8DE9C8 +DrawEquipment = $8DED29 -UseImplicitRegIndexedLocalJumpTable = $008781 -UseImplicitRegIndexedLongJumpTable = $00879C -Vram_EraseTilemaps_triforce = 008333 -Sound_LoadLightWorldSongBank = $008913 -Sound_LoadLightWorldSongBank_do_load = $00891D -EnableForceBlank = $00893D -DungeonMask = $0098C0 -DecompSwordGfx = $00D308 -DecompShieldGfx = $00D348 -Tagalong_LoadGfx = $00D463 -GetAnimatedSpriteTile = $00D51B -GetAnimatedSpriteTile_variable = $00D52D -Attract_DecompressStoryGfx = $00D84E -LoadSelectScreenGfx = $00E529 -PrepDungeonExit = $00F945 -Mirror_InitHdmaSettings = $00FDEE -Dungeon_LoadRoom = $01873A -Module_PreDungeon = $02821E -Module_PreDungeon_setAmbientSfx = $028296 -Dungeon_SaveRoomData = $02A0A8 -Dungeon_SaveRoomData_justKeys = $02A0BE -Dungeon_SaveRoomQuadrantData = $02B861 -LoadGearPalettes_bunny = $02FD8A -LoadGearPalettes_variable = $02FD95 -Filter_Majorly_Whiten_Color = $02FEAB -Sprite_SpawnFallingItem = $05A51D -Sprite_DrawMultiple = $05DF6C -Sprite_DrawMultiple_quantity_preset = $05DF70 -Sprite_DrawMultiple_player_deferred = $05DF75 -Sprite_ShowSolicitedMessageIfPlayerFacing = $05E1A7 -Sprite_ShowMessageFromPlayerContact = $05E1F0 -Sprite_ShowMessageUnconditional = $05E219 -Sprite_ZeldaLong = $05EC96 -Sprite_EB_HeartPiece_handle_flags = $05F0C0 -Player_ApplyRumbleToSprites = $0680FA -Utility_CheckIfHitBoxesOverlapLong = $0683E6 -Chicken_SpawnAvengerChicken = $06A7DB ; returns short -Sprite_DrawShadowLong = $06DC5C -DashKey_Draw = $06DD40 -Sprite_PrepAndDrawSingleLargeLong = $06DBF8 -Sprite_PrepAndDrawSingleSmallLong = $06DC00 -Sprite_ApplySpeedTowardsPlayerLong = $06EA18 -Sprite_DirectionToFacePlayerLong = $06EAA6 -Sprite_CheckDamageToPlayerSameLayerLong = $06F12F -OAM_AllocateDeferToPlayerLong = $06F86A -Player_HaltDashAttackLong = $0791B3 -Link_ReceiveItem = $07999D -Sprite_CheckIfPlayerPreoccupied = $07F4AA -Ancilla_ReceiveItem = $08C3AE -Ancilla_BreakTowerSeal_draw_single_crystal = $08CE93 -Ancilla_BreakTowerSeal_stop_spawning_sparkles = $08CEC3 -BreakTowerSeal_ExecuteSparkles = $08CF59 -Ancilla_SetOam_XY_Long = $08F710 -AddReceivedItem = $0985E2 -AddPendantOrCrystal = $098BAD -AddWeathervaneExplosion = $098CFD -AddDashTremor = $0993DF -AddAncillaLong = $099D04 -Ancilla_CheckIfAlreadyExistsLong = $099D1A -Sprite_SetSpawnedCoords = $09AE64 -GiveRupeeGift = $09AD58 -OverworldMap_InitGfx = $0ABA4F -OverworldMap_DarkWorldTilemap = $0ABA99 -OverworldMap_LoadSprGfx = $0ABAB9 -NameFile_MakeScreenVisible = $0CD7D1 -InitializeSaveFile = $0CDB3E -InitializeSaveFile_build_checksum = $0CDBC0 -GetRandomInt = $0DBA71 -OAM_AllocateFromRegionA = $0DBA80 -OAM_AllocateFromRegionB = $0DBA84 -OAM_AllocateFromRegionC = $0DBA88 -OAM_AllocateFromRegionD = $0DBA8C -OAM_AllocateFromRegionE = $0DBA90 -OAM_AllocateFromRegionF = $0DBA94 -Sound_SetSfxPanWithPlayerCoords = $0DBB67 -Sound_SetSfx1PanLong = $0DBB6E -Sound_SetSfx2PanLong = $0DBB7C -Sound_SetSfx3PanLong = $0DBB8A -HUD_RefreshIconLong = $0DDB7F -Equipment_UpdateEquippedItemLong = $0DDD32 -BottleMenu_movingOn = $0DE01E -RestoreNormalMenu = $0DE346 -Equipment_SearchForEquippedItemLong = $0DE395 -DrawProgressIcons = $0DE9C8 ; this returns short -DrawEquipment = $0DED29 ; this returns short -HUD_RebuildLong = $0DFA78 -HUD_RebuildIndoor_Palace = $0DFA88 -HUD_RebuildLong2 = $0DFA88 -Messaging_Text = $0EEE10 -Overworld_TileAttr = $0FFD94 -Overworld_DrawPersistentMap16 = $1BC97C -Palette_Sword = $1BED03 -Palette_Shield = $1BED29 -Palette_ArmorAndGloves = $1BEDF9 -Palette_Hud = $1BEE52 -Palette_SelectScreen = $1BEF96 -ShopKeeper_RapidTerminateReceiveItem = $1CFAAA -Sprite_NullifyHookshotDrag = $1CF500 -Ancilla_CheckForAvailableSlot = $1CF537 -Filter_MajorWhitenMain = $1DE9B6 -Sprite_SpawnDynamically = $1DF65D -Sprite_SpawnDynamically_arbitrary = $1DF65F -DiggingGameGuy_AttemptPrizeSpawn = $1DFD4B -Sprite_GetEmptyBottleIndex = $1EDE28 -Sprite_PlayerCantPassThrough = $1EF4E7 - +;=================================================================================================== diff --git a/zsnes.asm b/zsnes.asm deleted file mode 100644 index a6441bb..0000000 --- a/zsnes.asm +++ /dev/null @@ -1,15 +0,0 @@ -;-------------------------------------------------------------------------------- -CheckZSNES: - SEP #$28 - LDA.b #$FF - CLC - ADC.b #$FF - CMP.b #$64 - CLD - BEQ .zsnes - REP #$20 - LDA.w #$01FF : TCS ; thing we wrote over - initialize stack -JML.l ReturnCheckZSNES -.zsnes - JML DontUseZSNES -;--------------------------------------------------------------------------------