diff --git a/LTTP_RND_GeneralBugfixes.asm b/LTTP_RND_GeneralBugfixes.asm index d6badf8..0825a51 100644 --- a/LTTP_RND_GeneralBugfixes.asm +++ b/LTTP_RND_GeneralBugfixes.asm @@ -353,7 +353,7 @@ if !FEATURE_NEW_TEXT incsrc itemtext_lower.asm else incsrc itemtext.asm -endif +endif warnpc $32E000 org $32DFD0 ; PC 0x195FD0 diff --git a/hooks.asm b/hooks.asm index 654fe93..7fb147e 100755 --- a/hooks.asm +++ b/hooks.asm @@ -2845,6 +2845,8 @@ JSL FixTerrorpin ; 4 bytes NOP ; 1 byte ;-------------------------------------------------------------------------------- + +;================================================================================ ; Text Renderer ;-------------------------------------------------------------------------------- if !FEATURE_NEW_TEXT diff --git a/menu/overworldmap.asm b/menu/overworldmap.asm index 8ca369c..b937655 100644 --- a/menu/overworldmap.asm +++ b/menu/overworldmap.asm @@ -239,7 +239,7 @@ PHX CLC : BRA .done .checkAga2 - LDA $7EF01B : AND #$08 : BNE .fail + LDA $7EF01B : AND #$80 : BNE .fail CLC : BRA .done .fail @@ -252,16 +252,16 @@ RTS ; CLC - should not move indicator ; SEC - yep indicator can move OverworldMap_CheckForCompass: - LDA.l CompassMode : AND #$80 : BEQ .unset ; should I check for compass logic - LDA.l CompassMode : AND #$40 : BEQ .set ; compasses aren't shuffled - LDA.l CompassMode : AND #$20 : BNE + - JSR OverworldMap_CheckForMap : BCC .unset : BRA .set - + LDA.l CompassExists, X : BEQ .set ; compass doesn't exits - PHX - LDA.l MC_SRAM_Offsets, X : TAX ; put compass offset into X - LDA !INVENTORY_COMPASS, X : ORA !MAP_OVERLAY, X - PLX - AND.l MC_Masks, X : BNE .set ; is the compass obtained + LDA.l CompassMode : AND #$80 : BEQ .unset ; should I check for compass logic + LDA.l CompassMode : AND #$40 : BEQ .set ; compasses aren't shuffled + LDA.l CompassMode : AND #$20 : BNE + + JSR OverworldMap_CheckForMap : BCC .unset : BRA .set + + LDA.l CompassExists, X : BEQ .set ; compass doesn't exits + PHX + LDA.l MC_SRAM_Offsets, X : TAX ; put compass offset into X + LDA !INVENTORY_COMPASS, X : ORA !MAP_OVERLAY, X + PLX + AND.l MC_Masks, X : BNE .set ; is the compass obtained .unset CLC RTS diff --git a/music.asm b/music.asm index d69b416..ac77f53 100644 --- a/music.asm +++ b/music.asm @@ -190,7 +190,7 @@ Overworld_MosaicDarkWorldChecks: ;-------------------------------------------------------------------------------- ; This is the where the music can change due to an UW transition -; +; ; On entry, A=16bit XY=8bit, A & X safe to mod, Y unknown Underworld_DoorDown_Entry: LDX #$FF ; some junk value to be used later to determine if the below lines will change the track diff --git a/tables.asm b/tables.asm index 4ea5698..b12d353 100644 --- a/tables.asm +++ b/tables.asm @@ -140,7 +140,8 @@ 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 ; #$8x = Moves prize indicator to a special position if bit on - ; #$4x = Compasses are shuffled and must be obtained to show position if bit on + ; #$4x = Compasses or Maps are shuffled and must be obtained to show position if bit on + ; #$2x = Use Compass for position if bit on, otherwise use Map ;-------------------------------------------------------------------------------- org $30803D ; PC 0x18003D PersistentFloodgate: