Fix for Hera music silence

This commit is contained in:
codemann8
2023-04-07 11:48:53 -05:00
committed by aerinon
parent c424cf4311
commit 653f66e57a
2 changed files with 19 additions and 4 deletions

View File

@@ -101,6 +101,11 @@ StairCleanup: {
rts rts
} }
LookupSpiralOffset_long:
PHB : PHK : PLB
JSR LookupSpiralOffset
PLB : RTL
;Sets the offset in A ;Sets the offset in A
LookupSpiralOffset: { LookupSpiralOffset: {
;where link currently is in $a2: quad in a8 & #$03 ;where link currently is in $a2: quad in a8 & #$03

18
msu.asm
View File

@@ -370,8 +370,15 @@ CheckMusicLoadRequest:
; Fade out music if we're changing tracks on a stair transition ; Fade out music if we're changing tracks on a stair transition
;-------------------------------------------------------------------------------- ;--------------------------------------------------------------------------------
SpiralStairsPreCheck: SpiralStairsPreCheck:
REP #$20 ; thing we wrote over LDA.l DRMode : BEQ + ; if door rando enabled
LDA.l DRMode : BNE .done ; exit if door rando enabled JSL LookupSpiralOffset_long
REP #$30 : AND.w #$00FF : ASL #2 : TAX
LDA.l SpiralTable,X
SEP #$10 : TAX : CPX.b #$07 : BNE .done ; check if hera boss
JSL CheckHeraBossDefeated : BCS .done
LDX.b #$F1 : STX !REG_MUSIC_CONTROL_REQUEST
BRA .done
+ REP #$20 ; thing we wrote over
LDA $A0 LDA $A0
CMP.w #$000C : BNE + CMP.w #$000C : BNE +
LDA !REG_CURRENT_MSU_TRACK : AND.w #$00FF : CMP.w #59 : BNE .done LDA !REG_CURRENT_MSU_TRACK : AND.w #$00FF : CMP.w #59 : BNE .done
@@ -401,8 +408,11 @@ SpiralStairsPreCheck:
; Change music on stair transition (ToH/GT) ; Change music on stair transition (ToH/GT)
;-------------------------------------------------------------------------------- ;--------------------------------------------------------------------------------
SpiralStairsPostCheck: SpiralStairsPostCheck:
LDA.l DRMode : BNE .done ; exit if door rando enabled LDA.l DRMode : BEQ + ; if door rando enabled
LDA $A0 LDA.b $A2 : CMP.w #$0007 : BNE .done
LDX.b #$16 : STX !REG_MUSIC_CONTROL_REQUEST
BRA .done
+ LDA $A0
CMP.w #$000C : BNE + CMP.w #$000C : BNE +
; Ganon's tower entrance ; Ganon's tower entrance
LDX $0130 : CPX.b #$F1 : BNE .done ; Check that we were fading out LDX $0130 : CPX.b #$F1 : BNE .done ; Check that we were fading out