From ab6ef2535e044df4421a13817bfa936e11abcbbb Mon Sep 17 00:00:00 2001 From: engineer124 <47598039+engineer124@users.noreply.github.com> Date: Mon, 11 Jul 2022 23:14:07 -0400 Subject: Match and Document code_80172BC0.c (#909) * Match code_80172BC0.c * Better match * brackets * Fix --- src/code/code_80172BC0.c | 14 +++++++++++++- src/code/game.c | 2 +- 2 files changed, 14 insertions(+), 2 deletions(-) (limited to 'src/code') diff --git a/src/code/code_80172BC0.c b/src/code/code_80172BC0.c index 93aee323f..2ea9e6c67 100644 --- a/src/code/code_80172BC0.c +++ b/src/code/code_80172BC0.c @@ -1,3 +1,15 @@ #include "global.h" -#pragma GLOBAL_ASM("asm/non_matchings/code/code_80172BC0/func_80172BC0.s") +const u8 sSfxBankIds[] = { + BANK_PLAYER, BANK_ITEM, BANK_ENV, BANK_ENEMY, BANK_SYSTEM, BANK_OCARINA, BANK_VOICE, +}; + +void AudioMgr_StopAllSfxExceptSystem(void) { + volatile const u8* bankIdPtr; + + for (bankIdPtr = sSfxBankIds; bankIdPtr < (sSfxBankIds + ARRAY_COUNT(sSfxBankIds)); bankIdPtr++) { + if (*bankIdPtr != BANK_SYSTEM) { + func_801A7084(*bankIdPtr); + } + } +} diff --git a/src/code/game.c b/src/code/game.c index 60bebd967..84743b8c5 100644 --- a/src/code/game.c +++ b/src/code/game.c @@ -224,7 +224,7 @@ void GameState_Init(GameState* gameState, GameStateFunc init, GraphicsContext* g } void GameState_Destroy(GameState* gameState) { - func_80172BC0(); + AudioMgr_StopAllSfxExceptSystem(); func_8019E014(); osRecvMesg(&gameState->gfxCtx->queue, NULL, OS_MESG_BLOCK); -- cgit v1.2.3