summaryrefslogtreecommitdiff
path: root/src/audio
diff options
context:
space:
mode:
authorfig02 <fig02srl@gmail.com>2025-03-27 01:47:44 -0400
committerGitHub <noreply@github.com>2025-03-27 01:47:44 -0400
commit7416f413db78e8638bcb51bb9b4415c97a4d16c6 (patch)
tree45f1850b2e98120c7a0632c5924402907ac87146 /src/audio
parent919b78ecbe516384ee2b65b0ed2b4e3582c209cc (diff)
SoundMode -> SoundOutputMode (#2475)
* SoundOutputMode, and move SoundSetting * missed a couple * format * move SoundSetting
Diffstat (limited to 'src/audio')
-rw-r--r--src/audio/data.c10
-rw-r--r--src/audio/debug.inc.c2
-rw-r--r--src/audio/general.c42
-rw-r--r--src/audio/lib/load.c2
-rw-r--r--src/audio/lib/playback.c6
-rw-r--r--src/audio/lib/synthesis.c2
-rw-r--r--src/audio/lib/thread.c4
-rw-r--r--src/audio/sequence.c6
8 files changed, 41 insertions, 33 deletions
diff --git a/src/audio/data.c b/src/audio/data.c
index 5f8bfa71f..729af6aa3 100644
--- a/src/audio/data.c
+++ b/src/audio/data.c
@@ -59,11 +59,11 @@ u8 gStartSeqDisabled = false;
u8 gAudioDebugPrintSeqCmd = true;
#endif
-u8 gSoundModeList[] = {
- SOUNDMODE_STEREO,
- SOUNDMODE_HEADSET,
- SOUNDMODE_SURROUND,
- SOUNDMODE_MONO,
+u8 gSoundOutputModes[] = {
+ SOUND_OUTPUT_STEREO,
+ SOUND_OUTPUT_HEADSET,
+ SOUND_OUTPUT_SURROUND,
+ SOUND_OUTPUT_MONO,
};
u8 gAudioSpecId = 0;
diff --git a/src/audio/debug.inc.c b/src/audio/debug.inc.c
index a41254001..e6d2dd89c 100644
--- a/src/audio/debug.inc.c
+++ b/src/audio/debug.inc.c
@@ -847,7 +847,7 @@ void AudioDebug_ProcessInput_SndCont(void) {
&gSfxDefaultReverb);
break;
case 4:
- Audio_SetSoundMode(sAudioSndContWork[sAudioSndContSel]);
+ Audio_SetSoundOutputMode(sAudioSndContWork[sAudioSndContSel]);
break;
case 5:
SEQCMD_DISABLE_PLAY_SEQUENCES(sAudioSndContWork[sAudioSndContSel]);
diff --git a/src/audio/general.c b/src/audio/general.c
index 83572107a..8e3b6a6e7 100644
--- a/src/audio/general.c
+++ b/src/audio/general.c
@@ -141,9 +141,9 @@ f32 D_801305F4 = 1.0f;
u8 sGanonsTowerLevelsVol[8] = { 127, 80, 75, 73, 70, 68, 65, 60 };
u8 sEnterGanonsTowerTimer = 0;
#if DEBUG_FEATURES
-s8 sSoundMode = SOUNDMODE_SURROUND;
+s8 sSoundOutputMode = SOUND_OUTPUT_SURROUND;
#else
-s8 sSoundMode = SOUNDMODE_STEREO;
+s8 sSoundOutputMode = SOUND_OUTPUT_STEREO;
#endif
s8 D_80130608 = 0;
s8 sAudioCutsceneFlag = 0;
@@ -2631,7 +2631,7 @@ void Audio_SetSfxProperties(u8 bankId, u8 entryIdx, u8 channelIndex) {
case BANK_ENV:
case BANK_ENEMY:
case BANK_VOICE:
- if (sSoundMode == SOUNDMODE_SURROUND) {
+ if (sSoundOutputMode == SOUND_OUTPUT_SURROUND) {
combFilterGain = func_800F3990(*entry->posY, entry->sfxParams);
}
FALLTHROUGH;
@@ -2643,7 +2643,7 @@ void Audio_SetSfxProperties(u8 bankId, u8 entryIdx, u8 channelIndex) {
pan = Audio_ComputeSfxPanSigned(*entry->posX, *entry->posZ, entry->token);
freqScale = Audio_ComputeSfxFreqScale(bankId, entryIdx) * *entry->freqScale;
- if (sSoundMode == SOUNDMODE_SURROUND) {
+ if (sSoundOutputMode == SOUND_OUTPUT_SURROUND) {
behindScreenZ = sBehindScreenZ[(entry->sfxParams & SFX_FLAG_10) >> SFX_FLAG_10_SHIFT];
if (!(entry->sfxParams & SFX_FLAG_11)) {
if (*entry->posZ < behindScreenZ) {
@@ -2675,7 +2675,7 @@ void Audio_SetSfxProperties(u8 bankId, u8 entryIdx, u8 channelIndex) {
if ((baseFilter | sAudioExtraFilter) != 0) {
filter = (baseFilter | sAudioExtraFilter);
- } else if ((sSoundMode == SOUNDMODE_SURROUND) && !(entry->sfxParams & SFX_FLAG_13)) {
+ } else if ((sSoundOutputMode == SOUND_OUTPUT_SURROUND) && !(entry->sfxParams & SFX_FLAG_13)) {
filter = func_800F37B8(behindScreenZ, entry, pan);
}
break;
@@ -3773,32 +3773,40 @@ void Audio_SetCodeReverb(s8 reverb) {
}
}
-void Audio_SetSoundMode(s8 soundSetting) {
- s8 soundModeIndex;
+/**
+ * Sets the Sound Output Mode.
+ *
+ * This function translates the game-side `SoundSetting` to an internal `SoundOutputMode` value.
+ * The order of each value between the two enums is slightly different.
+ *
+ * Original name: Na_SetSoundOutputMode
+ */
+void Audio_SetSoundOutputMode(s8 soundSetting) {
+ s8 soundOutputMode;
switch (soundSetting) {
case SOUND_SETTING_STEREO:
- soundModeIndex = SOUNDMODE_STEREO;
- sSoundMode = SOUNDMODE_STEREO;
+ soundOutputMode = SOUND_OUTPUT_STEREO;
+ sSoundOutputMode = SOUND_OUTPUT_STEREO;
break;
case SOUND_SETTING_MONO:
- soundModeIndex = SOUNDMODE_MONO;
- sSoundMode = SOUNDMODE_MONO;
+ soundOutputMode = SOUND_OUTPUT_MONO;
+ sSoundOutputMode = SOUND_OUTPUT_MONO;
break;
case SOUND_SETTING_HEADSET:
- soundModeIndex = SOUNDMODE_HEADSET;
- sSoundMode = SOUNDMODE_HEADSET;
+ soundOutputMode = SOUND_OUTPUT_HEADSET;
+ sSoundOutputMode = SOUND_OUTPUT_HEADSET;
break;
case SOUND_SETTING_SURROUND:
- soundModeIndex = SOUNDMODE_STEREO;
- sSoundMode = SOUNDMODE_SURROUND;
+ soundOutputMode = SOUND_OUTPUT_STEREO;
+ sSoundOutputMode = SOUND_OUTPUT_SURROUND;
break;
}
- SEQCMD_SET_SOUND_MODE(soundModeIndex);
+ SEQCMD_SET_SOUND_OUTPUT_MODE(soundOutputMode);
}
void Audio_SetBaseFilter(u8 filter) {
@@ -4046,7 +4054,7 @@ void Audio_PlayNatureAmbienceSequence(u8 natureAmbienceId) {
SEQCMD_SET_CHANNEL_IO(SEQ_PLAYER_BGM_MAIN, channelIdx, ioPort, ioData);
}
- SEQCMD_SET_CHANNEL_IO(SEQ_PLAYER_BGM_MAIN, NATURE_CHANNEL_UNK, CHANNEL_IO_PORT_7, sSoundMode);
+ SEQCMD_SET_CHANNEL_IO(SEQ_PLAYER_BGM_MAIN, NATURE_CHANNEL_UNK, CHANNEL_IO_PORT_7, sSoundOutputMode);
}
}
diff --git a/src/audio/lib/load.c b/src/audio/lib/load.c
index d4c1ea864..4a0b8388e 100644
--- a/src/audio/lib/load.c
+++ b/src/audio/lib/load.c
@@ -1192,7 +1192,7 @@ void AudioLoad_Init(void* heap, u32 heapSize) {
gAudioCtx.totalTaskCount = 0;
gAudioCtx.rspTaskIndex = 0;
gAudioCtx.curAiBufIndex = 0;
- gAudioCtx.soundMode = SOUNDMODE_STEREO;
+ gAudioCtx.soundOutputMode = SOUND_OUTPUT_STEREO;
gAudioCtx.curTask = NULL;
gAudioCtx.rspTask[0].task.t.data_size = 0;
gAudioCtx.rspTask[1].task.t.data_size = 0;
diff --git a/src/audio/lib/playback.c b/src/audio/lib/playback.c
index 9c1b8126e..b84fa31df 100644
--- a/src/audio/lib/playback.c
+++ b/src/audio/lib/playback.c
@@ -31,7 +31,7 @@ void Audio_InitNoteSub(Note* note, NoteSubEu* sub, NoteSubAttributes* attrs) {
sub->bitField0.stereoStrongLeft = false;
sub->bitField0.stereoHeadsetEffects = stereoData.stereoHeadsetEffects;
sub->bitField0.usesHeadsetPanEffects = stereoData.usesHeadsetPanEffects;
- if (stereoHeadsetEffects && (gAudioCtx.soundMode == SOUNDMODE_HEADSET)) {
+ if (stereoHeadsetEffects && (gAudioCtx.soundOutputMode == SOUND_OUTPUT_HEADSET)) {
halfPanIndex = pan >> 1;
if (halfPanIndex > 0x3F) {
halfPanIndex = 0x3F;
@@ -43,7 +43,7 @@ void Audio_InitNoteSub(Note* note, NoteSubEu* sub, NoteSubAttributes* attrs) {
volLeft = gHeadsetPanVolume[pan];
volRight = gHeadsetPanVolume[0x7F - pan];
- } else if (stereoHeadsetEffects && (gAudioCtx.soundMode == SOUNDMODE_STEREO)) {
+ } else if (stereoHeadsetEffects && (gAudioCtx.soundOutputMode == SOUND_OUTPUT_STEREO)) {
strongLeft = strongRight = 0;
sub->haasEffectLeftDelaySize = 0;
sub->haasEffectRightDelaySize = 0;
@@ -80,7 +80,7 @@ void Audio_InitNoteSub(Note* note, NoteSubEu* sub, NoteSubAttributes* attrs) {
break;
}
- } else if (gAudioCtx.soundMode == SOUNDMODE_MONO) {
+ } else if (gAudioCtx.soundOutputMode == SOUND_OUTPUT_MONO) {
sub->bitField0.stereoHeadsetEffects = false;
sub->bitField0.usesHeadsetPanEffects = false;
volLeft = 0.707f; // approx 1/sqrt(2)
diff --git a/src/audio/lib/synthesis.c b/src/audio/lib/synthesis.c
index 85fb8d261..72bec4390 100644
--- a/src/audio/lib/synthesis.c
+++ b/src/audio/lib/synthesis.c
@@ -647,7 +647,7 @@ Acmd* AudioSynth_DoOneAudioUpdate(s16* aiBuf, s32 aiBufLen, Acmd* cmd, s32 updat
#if OOT_VERSION < NTSC_1_1 || !PLATFORM_N64
if ((reverb->leakRtl != 0) || (reverb->leakLtr != 0))
#else
- if (((reverb->leakRtl != 0) || (reverb->leakLtr != 0)) && (gAudioCtx.soundMode != SOUNDMODE_MONO))
+ if (((reverb->leakRtl != 0) || (reverb->leakLtr != 0)) && (gAudioCtx.soundOutputMode != SOUND_OUTPUT_MONO))
#endif
{
cmd = AudioSynth_LeakReverb(cmd, reverb);
diff --git a/src/audio/lib/thread.c b/src/audio/lib/thread.c
index f47dbade7..6bc793e3f 100644
--- a/src/audio/lib/thread.c
+++ b/src/audio/lib/thread.c
@@ -226,8 +226,8 @@ void AudioThread_ProcessGlobalCmd(AudioCmd* cmd) {
}
break;
- case AUDIOCMD_OP_GLOBAL_SET_SOUND_MODE:
- gAudioCtx.soundMode = cmd->asUInt;
+ case AUDIOCMD_OP_GLOBAL_SET_SOUND_OUTPUT_MODE:
+ gAudioCtx.soundOutputMode = cmd->asUInt;
break;
case AUDIOCMD_OP_GLOBAL_MUTE:
diff --git a/src/audio/sequence.c b/src/audio/sequence.c
index a6d5003cc..208429ead 100644
--- a/src/audio/sequence.c
+++ b/src/audio/sequence.c
@@ -370,9 +370,9 @@ void Audio_ProcessSeqCmd(u32 cmd) {
subOp = (cmd & 0xF00) >> 8;
val = cmd & 0xFF;
switch (subOp) {
- case SEQCMD_SUB_OP_GLOBAL_SET_SOUND_MODE:
- // Set sound mode
- AUDIOCMD_GLOBAL_SET_SOUND_MODE(gSoundModeList[val]);
+ case SEQCMD_SUB_OP_GLOBAL_SET_SOUND_OUTPUT_MODE:
+ // Set sound output mode
+ AUDIOCMD_GLOBAL_SET_SOUND_OUTPUT_MODE(gSoundOutputModes[val]);
break;
case SEQCMD_SUB_OP_GLOBAL_DISABLE_NEW_SEQUENCES: