mirror of
https://github.com/pret/pokeplatinum.git
synced 2026-04-25 07:29:01 -05:00
Start documenting sound capture/DSP
This commit is contained in:
parent
02cbf032db
commit
405d3a702b
|
|
@ -50,6 +50,7 @@ enum SoundSystemParam {
|
|||
SOUND_SYSTEM_PARAM_WAVE_OUT_PRIMARY_HANDLE = 0,
|
||||
SOUND_SYSTEM_PARAM_WAVE_OUT_SECONDARY_HANDLE,
|
||||
SOUND_SYSTEM_PARAM_CURRENT_BANK_INFO,
|
||||
SOUND_SYSTEM_PARAM_REVERB_BUFFER,
|
||||
|
||||
SOUND_SYSTEM_PARAM_BGM_FIXED = 5,
|
||||
|
||||
|
|
@ -92,7 +93,7 @@ typedef struct SoundSystem {
|
|||
NNSSndHandle soundHandles[SOUND_HANDLE_TYPE_COUNT];
|
||||
NNSSndWaveOutHandle waveOutHandles[2];
|
||||
const NNSSndArcBankInfo *currentBankInfo;
|
||||
u8 unk_BBD2C[SOUND_SYSTEM_CAPTURE_BUFFER_SIZE] ATTRIBUTE_ALIGN(32);
|
||||
u8 reverbBuffer[SOUND_SYSTEM_CAPTURE_BUFFER_SIZE] ATTRIBUTE_ALIGN(32);
|
||||
UnkStruct_020052C8 unk_BCD2C;
|
||||
u16 unk_BCD48;
|
||||
u8 bgmFixed; // BGM can't change if this is set
|
||||
|
|
|
|||
|
|
@ -92,10 +92,10 @@ void Sound_SetWaveOutSpeed(enum WaveOutChannel param0, u32 param1);
|
|||
void Sound_SetWaveOutVolume(enum WaveOutChannel param0, int param1);
|
||||
BOOL Sound_PlayWaveOutReversed(u16 param0, int param1, int param2, enum WaveOutChannel param3, int heapID);
|
||||
void Sound_StopWaveOutReversed(enum WaveOutChannel param0);
|
||||
BOOL sub_02004EC0(void);
|
||||
BOOL sub_02004EC8(int param0);
|
||||
void sub_02004EEC(int param0);
|
||||
void sub_02004EF4(int param0, int param1);
|
||||
BOOL Sound_IsCaptureActive(void);
|
||||
BOOL Sound_StartReverb(int param0);
|
||||
void Sound_StopReverb(int param0);
|
||||
void Sound_SetReverbVolume(int param0, int param1);
|
||||
BOOL sub_02004EFC(void);
|
||||
void sub_02004F44(void);
|
||||
void sub_02004F4C(int param0);
|
||||
|
|
|
|||
|
|
@ -1059,7 +1059,7 @@ static void ov21_021E5AD8(UnkStruct_ov21_021E51DC *param0)
|
|||
|
||||
if ((param0->unk_5C > 0) && (param0->unk_5C <= (88 / 2))) {
|
||||
if (param0->unk_50 == 1) {
|
||||
sub_02004EEC(0);
|
||||
Sound_StopReverb(0);
|
||||
}
|
||||
|
||||
if (param0->unk_50 != 2) {
|
||||
|
|
@ -1080,7 +1080,7 @@ static void ov21_021E5AD8(UnkStruct_ov21_021E51DC *param0)
|
|||
}
|
||||
|
||||
if (param0->unk_50 != 1) {
|
||||
sub_02004EC8(0);
|
||||
Sound_StartReverb(0);
|
||||
param0->unk_50 = 1;
|
||||
}
|
||||
|
||||
|
|
@ -1095,7 +1095,7 @@ static void ov21_021E5AD8(UnkStruct_ov21_021E51DC *param0)
|
|||
v0--;
|
||||
}
|
||||
|
||||
sub_02004EF4(v0, 0);
|
||||
Sound_SetReverbVolume(v0, 0);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1270,7 +1270,7 @@ static void ov21_021E5E18(UnkStruct_ov21_021E51DC *param0)
|
|||
static void ov21_021E5E28(UnkStruct_ov21_021E51DC *param0)
|
||||
{
|
||||
if (param0->unk_50 == 1) {
|
||||
sub_02004EEC(0);
|
||||
Sound_StopReverb(0);
|
||||
}
|
||||
|
||||
if (param0->unk_50 == 2) {
|
||||
|
|
|
|||
|
|
@ -167,8 +167,8 @@ void *SoundSystem_GetParam(enum SoundSystemParam param)
|
|||
return &soundSys->waveOutHandles[1];
|
||||
case SOUND_SYSTEM_PARAM_CURRENT_BANK_INFO:
|
||||
return &soundSys->currentBankInfo;
|
||||
case 3:
|
||||
return &soundSys->unk_BBD2C;
|
||||
case SOUND_SYSTEM_PARAM_REVERB_BUFFER:
|
||||
return &soundSys->reverbBuffer;
|
||||
case 4:
|
||||
return &soundSys->unk_BCD2C;
|
||||
case SOUND_SYSTEM_PARAM_FADE_COUNTER:
|
||||
|
|
|
|||
|
|
@ -35,10 +35,10 @@ void Sound_StopWaveOut(enum WaveOutChannel param0);
|
|||
BOOL Sound_IsWaveOutPlaying(enum WaveOutChannel param0);
|
||||
void Sound_StopWaveOutReversed(enum WaveOutChannel param0);
|
||||
static void Sound_Impl_ReverseBuffer(u8 *param0, u32 param1);
|
||||
BOOL sub_02004EC0(void);
|
||||
BOOL sub_02004EC8(int param0);
|
||||
void sub_02004EEC(int param0);
|
||||
void sub_02004EF4(int param0, int param1);
|
||||
BOOL Sound_IsCaptureActive(void);
|
||||
BOOL Sound_StartReverb(int param0);
|
||||
void Sound_StopReverb(int param0);
|
||||
void Sound_SetReverbVolume(int param0, int param1);
|
||||
BOOL sub_02004EFC(void);
|
||||
void sub_02004F44(void);
|
||||
void sub_02004F4C(int param0);
|
||||
|
|
@ -978,33 +978,26 @@ void Sound_StopWaveOutReversed(enum WaveOutChannel channel)
|
|||
}
|
||||
}
|
||||
|
||||
BOOL sub_02004EC0(void)
|
||||
BOOL Sound_IsCaptureActive(void)
|
||||
{
|
||||
int v0, v1;
|
||||
|
||||
v1 = NNS_SndCaptureIsActive();
|
||||
|
||||
return v1;
|
||||
return NNS_SndCaptureIsActive();
|
||||
}
|
||||
|
||||
BOOL sub_02004EC8(int param0)
|
||||
BOOL Sound_StartReverb(int volume)
|
||||
{
|
||||
SoundSystem *v0 = SoundSystem_Get();
|
||||
s8 *v1 = SoundSystem_GetParam(3);
|
||||
|
||||
return NNS_SndCaptureStartReverb(v1, 0x1000, (NNS_SND_CAPTURE_FORMAT_PCM16), 16000, param0);
|
||||
(void)SoundSystem_Get();
|
||||
void *buffer = SoundSystem_GetParam(SOUND_SYSTEM_PARAM_REVERB_BUFFER);
|
||||
return NNS_SndCaptureStartReverb(buffer, 0x1000, (NNS_SND_CAPTURE_FORMAT_PCM16), 16000, volume);
|
||||
}
|
||||
|
||||
void sub_02004EEC(int param0)
|
||||
void Sound_StopReverb(int frames)
|
||||
{
|
||||
NNS_SndCaptureStopReverb(param0);
|
||||
return;
|
||||
NNS_SndCaptureStopReverb(frames);
|
||||
}
|
||||
|
||||
void sub_02004EF4(int param0, int param1)
|
||||
void Sound_SetReverbVolume(int targetVolume, int frames)
|
||||
{
|
||||
NNS_SndCaptureSetReverbVolume(param0, param1);
|
||||
return;
|
||||
NNS_SndCaptureSetReverbVolume(targetVolume, frames);
|
||||
}
|
||||
|
||||
BOOL sub_02004EFC(void)
|
||||
|
|
@ -1012,7 +1005,14 @@ BOOL sub_02004EFC(void)
|
|||
SoundSystem *v1 = SoundSystem_Get();
|
||||
|
||||
MI_CpuClear8(SoundSystem_GetParam(4), sizeof(UnkStruct_020052C8));
|
||||
return NNS_SndCaptureStartEffect(SoundSystem_GetParam(3), 0x1000, NNS_SND_CAPTURE_FORMAT_PCM16, 22000, 2, sub_020052C8, SoundSystem_GetParam(4));
|
||||
return NNS_SndCaptureStartEffect(
|
||||
SoundSystem_GetParam(SOUND_SYSTEM_PARAM_REVERB_BUFFER),
|
||||
0x1000,
|
||||
NNS_SND_CAPTURE_FORMAT_PCM16,
|
||||
22000,
|
||||
2,
|
||||
sub_020052C8, SoundSystem_GetParam(4)
|
||||
);
|
||||
}
|
||||
|
||||
void sub_02004F44(void)
|
||||
|
|
@ -1397,11 +1397,11 @@ void sub_020053CC(int param0)
|
|||
{
|
||||
if (param0 == 0) {
|
||||
Sound_SetBGMAllocatableChannels(0x7ff);
|
||||
sub_02004EEC(0);
|
||||
Sound_StopReverb(0);
|
||||
} else if (param0 == 1) {
|
||||
Sound_SetBGMAllocatableChannels(0x7fff);
|
||||
|
||||
if (sub_02004EC8(30) == 0) {
|
||||
if (Sound_StartReverb(30) == 0) {
|
||||
(void)0;
|
||||
} else {
|
||||
(void)0;
|
||||
|
|
@ -1409,14 +1409,14 @@ void sub_020053CC(int param0)
|
|||
} else {
|
||||
Sound_SetBGMAllocatableChannels(0x7fff);
|
||||
|
||||
if (sub_02004EC8(15) == 0) {
|
||||
if (Sound_StartReverb(15) == 0) {
|
||||
(void)0;
|
||||
} else {
|
||||
(void)0;
|
||||
}
|
||||
}
|
||||
|
||||
sub_02004EC0();
|
||||
Sound_IsCaptureActive();
|
||||
|
||||
return;
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user