Fix issue with rooms $0124-$0127 at Tavern Back

This commit is contained in:
Catobat
2023-08-26 00:52:13 +02:00
parent 8d0585ec33
commit 6980d36d27
2 changed files with 18 additions and 1 deletions

View File

@@ -75,3 +75,16 @@ WalkUpOnOverworld:
.normal .normal
LDA #$0002 : STA $2F ; what we overwrote LDA #$0002 : STA $2F ; what we overwrote
RTL RTL
;--------------------------------------------------------------------------------
; CheckStairsAdjustment
;--------------------------------------------------------------------------------
CheckStairsAdjustment:
LDA.b $A0
CMP.w #$0124 ; vanilla check, rooms $0124 to $0127 have a lower exit position (currently ER ignores the entrance location)
BCC .done
LDA.w #$FFFF-1
CMP.w $0696 ; tavern back ($0696 == #$FFFF) should always have carry cleared
.done
RTL
; if carry cleared, shift position up

View File

@@ -2923,5 +2923,9 @@ org $02E297 ; LDA.w #$0002 : STA.b $2F
JSL WalkUpOnOverworld JSL WalkUpOnOverworld
NOP NOP
org $02E36F
JSL CheckStairsAdjustment
NOP
org $02D7D2 ; BEQ .face_up org $02D7D2 ; BEQ .face_up
NOP #2 ; this fixes Link's direction after mirroring and falling after entering through back of tavern NOP #2 ; this fixes Link's direction after mirroring and falling after entering through back of tavern