summaryrefslogtreecommitdiff
path: root/arm9/src
diff options
context:
space:
mode:
Diffstat (limited to 'arm9/src')
-rw-r--r--arm9/src/sav_chatot.c49
-rw-r--r--arm9/src/sound.c64
2 files changed, 81 insertions, 32 deletions
diff --git a/arm9/src/sav_chatot.c b/arm9/src/sav_chatot.c
new file mode 100644
index 00000000..f2707821
--- /dev/null
+++ b/arm9/src/sav_chatot.c
@@ -0,0 +1,49 @@
+#include "global.h"
+#include "MI_memory.h"
+#include "heap.h"
+#include "save_block_2.h"
+
+struct SaveChatotSoundClip
+{
+ // TODO: Fill this in
+ BOOL exists;
+ s8 data[1000];
+};
+
+THUMB_FUNC u32 FUN_02029EC4(void)
+{
+ return sizeof(struct SaveChatotSoundClip);
+}
+
+THUMB_FUNC void FUN_02029ECC(struct SaveChatotSoundClip * chatot)
+{
+ MIi_CpuClear32(0, chatot, sizeof(struct SaveChatotSoundClip));
+ chatot->exists = FALSE;
+}
+
+THUMB_FUNC struct SaveChatotSoundClip * FUN_02029EE4(u32 heap_id)
+{
+ struct SaveChatotSoundClip * ret = (struct SaveChatotSoundClip *)AllocFromHeap(heap_id, sizeof(struct SaveChatotSoundClip));
+ FUN_02029ECC(ret);
+ return ret;
+}
+
+THUMB_FUNC struct SaveChatotSoundClip * FUN_02029EF8(struct SaveBlock2 * sav2)
+{
+ return (struct SaveChatotSoundClip *) SavArray_get(sav2, 22);
+}
+
+THUMB_FUNC u32 FUN_02029F04(struct SaveChatotSoundClip * chatot)
+{
+ return chatot->exists;
+}
+
+THUMB_FUNC void FUN_02029F08(struct SaveChatotSoundClip * chatot)
+{
+ chatot->exists = FALSE;
+}
+
+THUMB_FUNC s8 * FUN_02029F10(struct SaveChatotSoundClip * chatot)
+{
+ return chatot->data;
+}
diff --git a/arm9/src/sound.c b/arm9/src/sound.c
index 95d14c64..79eb21f0 100644
--- a/arm9/src/sound.c
+++ b/arm9/src/sound.c
@@ -11,8 +11,8 @@ static u32 UNK_02107074;
void FUN_02003C40(void);
BOOL FUN_02003D04(void);
-void FUN_020040C8(void);
-void FUN_02004064(struct SoundData *);
+void GF_InitMic(void);
+void GF_SoundDataInit(struct SoundData *);
void FUN_02004088(struct SoundData *);
void FUN_020040A4(struct SoundData *);
void FUN_02003CE8(int);
@@ -30,8 +30,8 @@ void InitSoundData(void * a0, struct Options * a1)
{
struct SoundData * sdat = GetSoundDataPointer();
NNS_SndInit();
- FUN_020040C8();
- FUN_02004064(sdat);
+ GF_InitMic();
+ GF_SoundDataInit(sdat);
sdat->heap = NNS_SndHeapCreate(sdat->unk_00094, sizeof(sdat->unk_00094));
NNS_SndArcInit(&sdat->header, "data/sound/sound_data.sdat", sdat->heap, 0);
NNS_SndArcPlayerSetup(sdat->heap);
@@ -200,61 +200,61 @@ void * FUN_02003D38(u32 a0)
}
}
-int FUN_02003F3C(int * a0)
+int GF_Snd_SaveState(int * level_p)
{
struct SoundData * sdat = GetSoundDataPointer();
- int r4 = NNS_SndHeapSaveState(sdat->heap);
- GF_ASSERT(r4 != -1);
- if (a0 != NULL)
- *a0 = r4;
- return r4;
+ int level = NNS_SndHeapSaveState(sdat->heap);
+ GF_ASSERT(level != -1);
+ if (level_p != NULL)
+ *level_p = level;
+ return level;
}
-void FUN_02003F64(int a0)
+void GF_Snd_RestoreState(int level)
{
struct SoundData * sdat = GetSoundDataPointer();
- NNS_SndHeapLoadState(sdat->heap, a0);
+ NNS_SndHeapLoadState(sdat->heap, level);
}
-BOOL FUN_02003F78(int a0)
+BOOL GF_Snd_LoadGroup(int groupNo)
{
struct SoundData * sdat = GetSoundDataPointer();
- return NNS_SndArcLoadGroup(a0, sdat->heap);
+ return NNS_SndArcLoadGroup(groupNo, sdat->heap);
}
-BOOL FUN_02003F90(int a0)
+BOOL GF_Snd_LoadSeq(int seqNo)
{
struct SoundData * sdat = GetSoundDataPointer();
- return NNS_SndArcLoadSeq(a0, sdat->heap);
+ return NNS_SndArcLoadSeq(seqNo, sdat->heap);
}
-BOOL FUN_02003FA8(int a0, u32 a1)
+BOOL GF_Snd_LoadSeqEx(int seqNo, u32 loadFlag)
{
struct SoundData * sdat = GetSoundDataPointer();
- return NNS_SndArcLoadSeqEx(a0, a1, sdat->heap);
+ return NNS_SndArcLoadSeqEx(seqNo, loadFlag, sdat->heap);
}
-BOOL FUN_02003FC4(int a0)
+BOOL GF_Snd_LoadWaveArc(int waveArcNo)
{
struct SoundData * sdat = GetSoundDataPointer();
- return NNS_SndArcLoadWaveArc(a0, sdat->heap);
+ return NNS_SndArcLoadWaveArc(waveArcNo, sdat->heap);
}
-BOOL FUN_02003FDC(int a0)
+BOOL GF_Snd_LoadBank(int bankNo)
{
struct SoundData * sdat = GetSoundDataPointer();
- return NNS_SndArcLoadBank(a0, sdat->heap);
+ return NNS_SndArcLoadBank(bankNo, sdat->heap);
}
-u32 * FUN_02003FF4(int a0)
+u32 * FUN_02003FF4(int playerNo)
{
struct SoundData * sdat = GetSoundDataPointer();
- if (a0 >= 9)
+ if (playerNo >= (s32)NELEMS(sdat->players))
{
GF_ASSERT(0);
- a0 = 0;
+ playerNo = 0;
}
- return &sdat->unk_BBC94[a0];
+ return &sdat->players[playerNo];
}
u32 FUN_02004018(u32 a0)
@@ -283,7 +283,7 @@ u32 FUN_02004018(u32 a0)
}
}
-void FUN_02004064(struct SoundData * sdat)
+void GF_SoundDataInit(struct SoundData * sdat)
{
int i;
memset(sdat, 0, sizeof(*sdat));
@@ -296,18 +296,18 @@ void FUN_02004088(struct SoundData * sdat)
int i;
for (i = 0; i < 9; i++)
{
- NNS_SndHandleInit(&sdat->unk_BBC94[i]);
+ NNS_SndHandleInit(&sdat->players[i]);
}
}
void FUN_020040A4(struct SoundData * sdat)
{
- FUN_02003F3C(&sdat->unk_BCD1C[0]);
- FUN_02003F78(0);
- FUN_02003F3C(&sdat->unk_BCD1C[1]);
+ GF_Snd_SaveState(&sdat->unk_BCD1C[0]);
+ GF_Snd_LoadGroup(0);
+ GF_Snd_SaveState(&sdat->unk_BCD1C[1]);
}
-void FUN_020040C8(void)
+void GF_InitMic(void)
{
MIC_Init();
PM_SetAmp(1);