summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--arm9/arm9.lsf1
-rw-r--r--arm9/asm/unk_020040F4.s98
-rw-r--r--arm9/asm/unk_020051F4.s14
-rw-r--r--arm9/asm/unk_02029EC4.s57
-rw-r--r--arm9/global.inc14
-rw-r--r--arm9/lib/include/NNS_SND_arc.h2
-rw-r--r--arm9/lib/include/NNS_SND_heap.h6
-rw-r--r--arm9/src/sav_chatot.c49
-rw-r--r--arm9/src/sound.c64
-rw-r--r--include/sound.h18
10 files changed, 158 insertions, 165 deletions
diff --git a/arm9/arm9.lsf b/arm9/arm9.lsf
index 5d1426c3..b89ac7ce 100644
--- a/arm9/arm9.lsf
+++ b/arm9/arm9.lsf
@@ -111,6 +111,7 @@ Static arm9
Object seal_case.o
Object unk_02029CEC.o
Object igt.o
+ Object sav_chatot.o
Object unk_02029EC4.o
Object unk_02029FB0.o
Object unk_0202A1E0.o
diff --git a/arm9/asm/unk_020040F4.s b/arm9/asm/unk_020040F4.s
index 5e62cb80..86e069f9 100644
--- a/arm9/asm/unk_020040F4.s
+++ b/arm9/asm/unk_020040F4.s
@@ -203,133 +203,133 @@ _0200421A: ; jump table (using 16-bit offset)
.short _020042AE - _0200421A - 2; case 3
_02004222:
mov r0, #0x1
- bl FUN_02003F78
+ bl GF_Snd_LoadGroup
add r1, r0, #0x0
b _0200432C
_0200422C:
mov r0, #0x2
- bl FUN_02003F78
+ bl GF_Snd_LoadGroup
add r1, r0, #0x0
b _0200432C
_02004236:
mov r0, #0xd
- bl FUN_02003F78
+ bl GF_Snd_LoadGroup
add r1, r0, #0x0
b _0200432C
_02004240:
mov r0, #0x1
- bl FUN_02003F78
+ bl GF_Snd_LoadGroup
add r1, r0, #0x0
b _0200432C
_0200424A:
mov r0, #0x2
- bl FUN_02003F78
+ bl GF_Snd_LoadGroup
add r1, r0, #0x0
b _0200432C
_02004254:
mov r0, #0x1
- bl FUN_02003F78
+ bl GF_Snd_LoadGroup
add r1, r0, #0x0
b _0200432C
_0200425E:
mov r0, #0xb
- bl FUN_02003F78
+ bl GF_Snd_LoadGroup
add r1, r0, #0x0
b _0200432C
_02004268:
mov r0, #0x1
- bl FUN_02003F78
+ bl GF_Snd_LoadGroup
add r1, r0, #0x0
b _0200432C
_02004272:
mov r0, #0xe
- bl FUN_02003F78
+ bl GF_Snd_LoadGroup
add r1, r0, #0x0
b _0200432C
_0200427C:
mov r0, #0x3
- bl FUN_02003F78
+ bl GF_Snd_LoadGroup
add r1, r0, #0x0
b _0200432C
_02004286:
mov r0, #0x6
- bl FUN_02003F78
+ bl GF_Snd_LoadGroup
add r1, r0, #0x0
b _0200432C
_02004290:
mov r0, #0x5
- bl FUN_02003F78
+ bl GF_Snd_LoadGroup
add r1, r0, #0x0
b _0200432C
_0200429A:
mov r0, #0x9
- bl FUN_02003F78
+ bl GF_Snd_LoadGroup
add r1, r0, #0x0
b _0200432C
_020042A4:
mov r0, #0xa
- bl FUN_02003F78
+ bl GF_Snd_LoadGroup
add r1, r0, #0x0
b _0200432C
_020042AE:
ldr r0, _02004330 ; =0x000005E5
- bl FUN_02003FDC
+ bl GF_Snd_LoadBank
ldr r0, _02004330 ; =0x000005E5
- bl FUN_02003FC4
+ bl GF_Snd_LoadWaveArc
add r1, r0, #0x0
b _0200432C
_020042BE:
mov r0, #0xc
- bl FUN_02003F78
+ bl GF_Snd_LoadGroup
add r1, r0, #0x0
b _0200432C
_020042C8:
mov r0, #0x7
- bl FUN_02003F78
+ bl GF_Snd_LoadGroup
add r1, r0, #0x0
b _0200432C
_020042D2:
mov r0, #0x8
- bl FUN_02003F78
+ bl GF_Snd_LoadGroup
add r1, r0, #0x0
b _0200432C
_020042DC:
mov r0, #0xf
- bl FUN_02003F78
+ bl GF_Snd_LoadGroup
add r1, r0, #0x0
b _0200432C
_020042E6:
mov r0, #0x3
- bl FUN_02003F78
+ bl GF_Snd_LoadGroup
add r1, r0, #0x0
b _0200432C
_020042F0:
mov r0, #0x5
- bl FUN_02003F78
+ bl GF_Snd_LoadGroup
add r1, r0, #0x0
b _0200432C
_020042FA:
mov r0, #0xf
- bl FUN_02003F78
+ bl GF_Snd_LoadGroup
add r1, r0, #0x0
b _0200432C
_02004304:
mov r0, #0x4
- bl FUN_02003F78
+ bl GF_Snd_LoadGroup
add r1, r0, #0x0
b _0200432C
_0200430E:
ldr r0, _02004334 ; =0x000005ED
- bl FUN_02003FDC
+ bl GF_Snd_LoadBank
ldr r0, _02004334 ; =0x000005ED
- bl FUN_02003FC4
+ bl GF_Snd_LoadWaveArc
add r1, r0, #0x0
b _0200432C
_0200431E:
ldr r0, _02004338 ; =0x000005EC
- bl FUN_02003FDC
+ bl GF_Snd_LoadBank
ldr r0, _02004338 ; =0x000005EC
- bl FUN_02003FC4
+ bl GF_Snd_LoadWaveArc
add r1, r0, #0x0
_0200432C:
add r0, r1, #0x0
@@ -536,15 +536,15 @@ FUN_020044A8: ; 0x020044A8
mov r0, #0x17
bl FUN_02003D38
ldr r0, [r0, #0x0]
- bl FUN_02003F64
+ bl GF_Snd_RestoreState
mov r0, #0x18
bl FUN_02003D38
- bl FUN_02003F3C
+ bl GF_Snd_SaveState
add r0, r4, #0x0
bl FUN_02004180
mov r0, #0x19
bl FUN_02003D38
- bl FUN_02003F3C
+ bl GF_Snd_SaveState
pop {r4, pc}
thumb_func_start FUN_020044D4
@@ -588,12 +588,12 @@ _02004528:
bne _02004560
mov r0, #0x2
bl FUN_02004748
- bl FUN_02003F64
+ bl GF_Snd_RestoreState
mov r0, #0x4
bl FUN_02004180
mov r0, #0x19
bl FUN_02003D38
- bl FUN_02003F3C
+ bl GF_Snd_SaveState
cmp r4, r5
beq _02004554
mov r0, #0x1
@@ -628,17 +628,17 @@ FUN_02004568: ; 0x02004568
beq _02004594
add r0, r5, #0x0
mov r1, #0x4
- bl FUN_02003FA8
+ bl GF_Snd_LoadSeqEx
bl ErrorHandling
b _0200459C
_02004594:
ldrh r0, [r4, #0x0]
mov r1, #0x6
- bl FUN_02003FA8
+ bl GF_Snd_LoadSeqEx
_0200459C:
mov r0, #0x1a
bl FUN_02003D38
- bl FUN_02003F3C
+ bl GF_Snd_SaveState
mov r0, #0x1
mov r1, #0x0
bl FUN_020047C8
@@ -671,18 +671,18 @@ FUN_020045C4: ; 0x020045C4
_020045E4:
mov r0, #0x1
bl FUN_02004748
- bl FUN_02003F64
+ bl GF_Snd_RestoreState
ldrh r0, [r4, #0x0]
mov r1, #0x2
- bl FUN_02003FA8
+ bl GF_Snd_LoadSeqEx
mov r0, #0x18
bl FUN_02003D38
- bl FUN_02003F3C
+ bl GF_Snd_SaveState
mov r0, #0x4
bl FUN_02004180
mov r0, #0x19
bl FUN_02003D38
- bl FUN_02003F3C
+ bl GF_Snd_SaveState
ldrh r0, [r4, #0x0]
bl FUN_02004900
ldr r1, _02004644 ; =0x000003E9
@@ -693,17 +693,17 @@ _020045E4:
beq _02004630
add r0, r7, #0x0
mov r1, #0x4
- bl FUN_02003FA8
+ bl GF_Snd_LoadSeqEx
bl ErrorHandling
b _02004638
_02004630:
ldrh r0, [r4, #0x0]
mov r1, #0x4
- bl FUN_02003FA8
+ bl GF_Snd_LoadSeqEx
_02004638:
mov r0, #0x1a
bl FUN_02003D38
- bl FUN_02003F3C
+ bl GF_Snd_SaveState
_02004642:
pop {r3-r7, pc}
.balign 4
@@ -718,12 +718,12 @@ FUN_02004648: ; 0x02004648
bl FUN_020051AC
mov r0, #0x2
bl FUN_02004748
- bl FUN_02003F64
+ bl GF_Snd_RestoreState
mov r0, #0x5
bl FUN_02004180
mov r0, #0x19
bl FUN_02003D38
- bl FUN_02003F3C
+ bl GF_Snd_SaveState
mov r0, #0x1
bl FUN_02004DBC
add r0, r4, #0x0
@@ -786,7 +786,7 @@ FUN_020046E8: ; 0x020046E8
bl FUN_02004180
mov r0, #0x1b
bl FUN_02003D38
- bl FUN_02003F3C
+ bl GF_Snd_SaveState
pop {r4, pc}
.balign 4
@@ -820,7 +820,7 @@ FUN_02004738: ; 0x02004738
push {r3, lr}
mov r0, #0x4
bl FUN_02004748
- bl FUN_02003F64
+ bl GF_Snd_RestoreState
pop {r3, pc}
.balign 4
@@ -1824,7 +1824,7 @@ FUN_02004E98: ; 0x02004E98
add r5, r0, #0x0
mov r0, #0x5
bl FUN_02004748
- bl FUN_02003F64
+ bl GF_Snd_RestoreState
lsl r0, r5, #0x10
lsr r4, r0, #0x10
ldr r0, _02004ECC ; =0x000001B9
@@ -1839,7 +1839,7 @@ _02004EBA:
mov r4, #0x1
_02004EBC:
add r0, r4, #0x0
- bl FUN_02003FC4
+ bl GF_Snd_LoadWaveArc
add r0, r4, #0x0
bl FUN_02004ED0
pop {r3-r5, pc}
diff --git a/arm9/asm/unk_020051F4.s b/arm9/asm/unk_020051F4.s
index 12b0c8cb..843ae7b6 100644
--- a/arm9/asm/unk_020051F4.s
+++ b/arm9/asm/unk_020051F4.s
@@ -81,12 +81,12 @@ FUN_02005288: ; 0x02005288
mov r0, #0x3
add r4, r2, #0x0
bl FUN_02004748
- bl FUN_02003F64
+ bl GF_Snd_RestoreState
add r0, r5, #0x0
- bl FUN_02003F90
+ bl GF_Snd_LoadSeq
mov r0, #0x1a
bl FUN_02003D38
- bl FUN_02003F3C
+ bl GF_Snd_SaveState
add r0, r4, #0x0
bl FUN_02003FF4
add r1, r5, #0x0
@@ -148,7 +148,7 @@ _02005318:
_0200532A:
add r0, r5, #0x0
mov r1, #0x1
- bl FUN_02003FA8
+ bl GF_Snd_LoadSeqEx
mov r0, #0x7
bl FUN_02003FF4
add r1, r5, #0x0
@@ -1232,10 +1232,10 @@ PlayBGM: ; 0x02005C28
_02005C48:
mov r0, #0x1c
bl FUN_02003D38
- bl FUN_02003F3C
+ bl GF_Snd_SaveState
add r0, r5, #0x0
mov r1, #0x3
- bl FUN_02003FA8
+ bl GF_Snd_LoadSeqEx
mov r0, #0x2
bl FUN_02003FF4
add r1, r5, #0x0
@@ -1282,7 +1282,7 @@ FUN_02005CA0: ; 0x02005CA0
bl NNS_SndPlayerStopSeq
mov r0, #0x6
bl FUN_02004748
- bl FUN_02003F64
+ bl GF_Snd_RestoreState
pop {r4, pc}
thumb_func_start FUN_02005CBC
diff --git a/arm9/asm/unk_02029EC4.s b/arm9/asm/unk_02029EC4.s
index 03893fab..2c4bdd91 100644
--- a/arm9/asm/unk_02029EC4.s
+++ b/arm9/asm/unk_02029EC4.s
@@ -3,63 +3,6 @@
.text
- thumb_func_start FUN_02029EC4
-FUN_02029EC4: ; 0x02029EC4
- mov r0, #0xfb
- lsl r0, r0, #0x2
- bx lr
- .balign 4
-
- thumb_func_start FUN_02029ECC
-FUN_02029ECC: ; 0x02029ECC
- push {r4, lr}
- add r4, r0, #0x0
- mov r2, #0xfb
- mov r0, #0x0
- add r1, r4, #0x0
- lsl r2, r2, #0x2
- bl MIi_CpuClear32
- mov r0, #0x0
- str r0, [r4, #0x0]
- pop {r4, pc}
- .balign 4
-
- thumb_func_start FUN_02029EE4
-FUN_02029EE4: ; 0x02029EE4
- push {r4, lr}
- mov r1, #0xfb
- lsl r1, r1, #0x2
- bl AllocFromHeap
- add r4, r0, #0x0
- bl FUN_02029ECC
- add r0, r4, #0x0
- pop {r4, pc}
-
- thumb_func_start FUN_02029EF8
-FUN_02029EF8: ; 0x02029EF8
- ldr r3, _02029F00 ; =SavArray_get
- mov r1, #0x16
- bx r3
- nop
-_02029F00: .word SavArray_get
-
- thumb_func_start FUN_02029F04
-FUN_02029F04: ; 0x02029F04
- ldr r0, [r0, #0x0]
- bx lr
-
- thumb_func_start FUN_02029F08
-FUN_02029F08: ; 0x02029F08
- mov r1, #0x0
- str r1, [r0, #0x0]
- bx lr
- .balign 4
-
- thumb_func_start FUN_02029F10
-FUN_02029F10: ; 0x02029F10
- add r0, r0, #0x4
- bx lr
-
thumb_func_start FUN_02029F14
FUN_02029F14: ; 0x02029F14
push {r4-r7}
diff --git a/arm9/global.inc b/arm9/global.inc
index f389ad93..6a3b9a32 100644
--- a/arm9/global.inc
+++ b/arm9/global.inc
@@ -269,13 +269,13 @@
.extern DoSoundUpdateFrame
.extern FUN_02003CE8
.extern FUN_02003D38
-.extern FUN_02003F3C
-.extern FUN_02003F64
-.extern FUN_02003F78
-.extern FUN_02003F90
-.extern FUN_02003FA8
-.extern FUN_02003FC4
-.extern FUN_02003FDC
+.extern GF_Snd_SaveState
+.extern GF_Snd_RestoreState
+.extern GF_Snd_LoadGroup
+.extern GF_Snd_LoadSeq
+.extern GF_Snd_LoadSeqEx
+.extern GF_Snd_LoadWaveArc
+.extern GF_Snd_LoadBank
.extern FUN_02003FF4
.extern FUN_02004018
.extern FUN_020040F4
diff --git a/arm9/lib/include/NNS_SND_arc.h b/arm9/lib/include/NNS_SND_arc.h
index 656c8728..95b33141 100644
--- a/arm9/lib/include/NNS_SND_arc.h
+++ b/arm9/lib/include/NNS_SND_arc.h
@@ -32,7 +32,7 @@ void NNS_SndArcInit(NNSSndArc *, const char *, void *, u32);
void NNS_SndArcPlayerSetup(void *);
void NNS_SndMain(void);
void NNS_SndHandleInit(u32 *);
-void NNS_SndPlayerStopSeqByPlayerNo(int, int);
+void NNS_SndPlayerStopSeqByPlayerNo(int playerNo, int fadeFrame);
void NNS_SndHandleReleaseSeq(void);
#endif //GUARD_NNS_SND_ARC_H
diff --git a/arm9/lib/include/NNS_SND_heap.h b/arm9/lib/include/NNS_SND_heap.h
index 9dc06a24..2929d1bb 100644
--- a/arm9/lib/include/NNS_SND_heap.h
+++ b/arm9/lib/include/NNS_SND_heap.h
@@ -4,8 +4,8 @@
struct NNSSndHeap;
typedef struct NNSSndHeap* NNSSndHeapHandle;
-NNSSndHeapHandle * NNS_SndHeapCreate(void *, u32);
-int NNS_SndHeapSaveState(NNSSndHeapHandle *);
-void NNS_SndHeapLoadState(NNSSndHeapHandle *, int);
+NNSSndHeapHandle * NNS_SndHeapCreate(void * start, u32 size);
+int NNS_SndHeapSaveState(NNSSndHeapHandle * heap);
+void NNS_SndHeapLoadState(NNSSndHeapHandle * heap, int level);
#endif //GUARD_NNS_SND_HEAP_H
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);
diff --git a/include/sound.h b/include/sound.h
index 9e171634..adefe938 100644
--- a/include/sound.h
+++ b/include/sound.h
@@ -12,7 +12,7 @@ struct SoundData
NNSSndArc header;
NNSSndHeapHandle * heap; // 0x00090
u8 unk_00094[0xBBC00];
- u32 unk_BBC94[9];
+ u32 players[9];
u32 unk_BBCB8;
u32 unk_BBCBC;
u8 unk_BBCC0[0x20];
@@ -54,14 +54,14 @@ struct SoundData
struct SoundData * GetSoundDataPointer(void);
void InitSoundData(void * a0, struct Options * a1);
void * FUN_02003D38(u32 a0);
-int FUN_02003F3C(int * a0);
-void FUN_02003F64(int a0);
-BOOL FUN_02003F78(int a0);
-BOOL FUN_02003F90(int a0);
-BOOL FUN_02003FA8(int a0, u32 a1);
-BOOL FUN_02003FC4(int a0);
-BOOL FUN_02003FDC(int a0);
-u32 * FUN_02003FF4(int a0);
+int GF_Snd_SaveState(int * level_p);
+void GF_Snd_RestoreState(int level);
+BOOL GF_Snd_LoadGroup(int groupNo);
+BOOL GF_Snd_LoadSeq(int seqNo);
+BOOL GF_Snd_LoadSeqEx(int seqNo, u32 loadFlag);
+BOOL GF_Snd_LoadWaveArc(int waveArcNo);
+BOOL GF_Snd_LoadBank(int bankNo);
+u32 * FUN_02003FF4(int playerNo);
u32 FUN_02004018(u32 a0);
void DoSoundUpdateFrame(void);