diff --git a/LTTP_RND_GeneralBugfixes.asm b/LTTP_RND_GeneralBugfixes.asm index 920214f..f187bce 100644 --- a/LTTP_RND_GeneralBugfixes.asm +++ b/LTTP_RND_GeneralBugfixes.asm @@ -80,6 +80,8 @@ db #$20, #$19, #$08, #$31 ; year/month/day !REG_MSU_DELAYED_COMMAND = $7F50A9 !REG_MSU_PACK_COUNT = $7F50AA !REG_MSU_PACK_CURRENT = $7F50AB +!REG_MSU_PACK_PREVIOUS = $7F50AC +!REG_SPC_LOADING = $7F50AD !REG_MUSIC_CONTROL = $012B ;!REG_MUSIC_CONTROL = $012C !REG_MUSIC_CONTROL_REQUEST = $012C diff --git a/msu.asm b/msu.asm index 1b9689c..25eb07e 100644 --- a/msu.asm +++ b/msu.asm @@ -260,6 +260,8 @@ CheckMusicLoadRequest: .load REP #$10 JSL Sound_LoadLightWorldSongBank_do_load + + LDA.b #$01 : STA !REG_SPC_LOADING ; Re-enable NMI and joypad LDA.b #$81 : STA $4200 @@ -510,12 +512,14 @@ pendant_fanfare: LDA !REG_MSU_STATUS : BIT !FLAG_MSU_STATUS_TRACK_MISSING : BNE .spc LDA !REG_MSU_DELAYED_COMMAND : BNE .continue LDA !REG_MSU_STATUS : BIT !FLAG_MSU_STATUS_AUDIO_PLAYING : BEQ .done +.playing + LDA #$00 : STA !REG_SPC_LOADING .continue jml pendant_continue .spc SEP #$20 - - : LDA !REG_SPC_CONTROL : BEQ - ; Wait for the track to finish loading - LDA !REG_SPC_CONTROL : BNE .continue + LDA !REG_SPC_CONTROL : BNE .playing + LDA !REG_SPC_LOADING : BNE .continue .done jml pendant_done @@ -530,12 +534,14 @@ crystal_fanfare: LDA !REG_MSU_STATUS : BIT !FLAG_MSU_STATUS_TRACK_MISSING : BNE .spc LDA !REG_MSU_DELAYED_COMMAND : BNE .continue LDA !REG_MSU_STATUS : BIT !FLAG_MSU_STATUS_AUDIO_PLAYING : BEQ .done +.playing + LDA #$00 : STA !REG_SPC_LOADING .continue jml crystal_continue .spc SEP #$20 - - : LDA !REG_SPC_CONTROL : BEQ - ; Wait for the track to finish loading - LDA !REG_SPC_CONTROL : BNE .continue + LDA !REG_SPC_CONTROL : BNE .playing + LDA !REG_SPC_LOADING : BNE .continue .done jml crystal_done