summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--asm/nw4r/snd/snd_MemorySoundArchive.s9
-rw-r--r--asm/nw4r/snd/snd_MidiSeqPlayer.s66
-rw-r--r--asm/text_10_6.s49
-rw-r--r--asm/text_11.s2
-rw-r--r--obj_files.mk2
5 files changed, 87 insertions, 41 deletions
diff --git a/asm/nw4r/snd/snd_MemorySoundArchive.s b/asm/nw4r/snd/snd_MemorySoundArchive.s
new file mode 100644
index 0000000..63c9634
--- /dev/null
+++ b/asm/nw4r/snd/snd_MemorySoundArchive.s
@@ -0,0 +1,9 @@
+.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+.global Shutdown__Q34nw4r3snd18MemorySoundArchiveFv
+Shutdown__Q34nw4r3snd18MemorySoundArchiveFv:
+/* 80371DEC 0036DA4C 38 00 00 00 */ li r0, 0
+/* 80371DF0 0036DA50 90 03 01 08 */ stw r0, 0x108(r3)
+/* 80371DF4 0036DA54 48 00 52 18 */ b func_8037700C
diff --git a/asm/nw4r/snd/snd_MidiSeqPlayer.s b/asm/nw4r/snd/snd_MidiSeqPlayer.s
new file mode 100644
index 0000000..eaea9e8
--- /dev/null
+++ b/asm/nw4r/snd/snd_MidiSeqPlayer.s
@@ -0,0 +1,66 @@
+.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+.global OnUpdateFrameSoundThread__Q44nw4r3snd6detail9SeqPlayerFv
+OnUpdateFrameSoundThread__Q44nw4r3snd6detail9SeqPlayerFv:
+/* 80371DF8 0036DA58 48 00 28 AC */ b lbl_803746A4
+
+.global OnShutdownSoundThread__Q44nw4r3snd6detail9SeqPlayerFv
+OnShutdownSoundThread__Q44nw4r3snd6detail9SeqPlayerFv:
+/* 80371DFC 0036DA5C 81 83 00 00 */ lwz r12, 0(r3)
+/* 80371E00 0036DA60 81 8C 00 10 */ lwz r12, 0x10(r12)
+/* 80371E04 0036DA64 7D 89 03 A6 */ mtctr r12
+/* 80371E08 0036DA68 4E 80 04 20 */ bctr
+
+.global InvalidateWaveData__Q44nw4r3snd6detail9SeqPlayerFPCvPCv
+InvalidateWaveData__Q44nw4r3snd6detail9SeqPlayerFPCvPCv:
+/* 80371E0C 0036DA6C 4E 80 00 20 */ blr
+
+.global OnUpdateVoiceSoundThread__Q54nw4r3snd6detail11SoundThread14PlayerCallbackFv
+OnUpdateVoiceSoundThread__Q54nw4r3snd6detail11SoundThread14PlayerCallbackFv:
+/* 80371E10 0036DA70 4E 80 00 20 */ blr
+
+.global IsPause__Q44nw4r3snd6detail9SeqPlayerCFv
+IsPause__Q44nw4r3snd6detail9SeqPlayerCFv:
+/* 80371E14 0036DA74 88 63 00 8E */ lbz r3, 0x8e(r3)
+/* 80371E18 0036DA78 7C 03 00 D0 */ neg r0, r3
+/* 80371E1C 0036DA7C 7C 00 1B 78 */ or r0, r0, r3
+/* 80371E20 0036DA80 54 03 0F FE */ srwi r3, r0, 0x1f
+/* 80371E24 0036DA84 4E 80 00 20 */ blr
+
+.global IsStarted__Q44nw4r3snd6detail9SeqPlayerCFv
+IsStarted__Q44nw4r3snd6detail9SeqPlayerCFv:
+/* 80371E28 0036DA88 88 63 00 8D */ lbz r3, 0x8d(r3)
+/* 80371E2C 0036DA8C 7C 03 00 D0 */ neg r0, r3
+/* 80371E30 0036DA90 7C 00 1B 78 */ or r0, r0, r3
+/* 80371E34 0036DA94 54 03 0F FE */ srwi r3, r0, 0x1f
+/* 80371E38 0036DA98 4E 80 00 20 */ blr
+
+.global IsActive__Q44nw4r3snd6detail9SeqPlayerCFv
+IsActive__Q44nw4r3snd6detail9SeqPlayerCFv:
+/* 80371E3C 0036DA9C 88 63 00 8C */ lbz r3, 0x8c(r3)
+/* 80371E40 0036DAA0 7C 03 00 D0 */ neg r0, r3
+/* 80371E44 0036DAA4 7C 00 1B 78 */ or r0, r0, r3
+/* 80371E48 0036DAA8 54 03 0F FE */ srwi r3, r0, 0x1f
+/* 80371E4C 0036DAAC 4E 80 00 20 */ blr
+
+.global $2116$2InvalidateWaveData__Q44nw4r3snd6detail9SeqPlayerFPCvPCv
+$2116$2InvalidateWaveData__Q44nw4r3snd6detail9SeqPlayerFPCvPCv:
+/* 80371E50 0036DAB0 38 63 FF 8C */ addi r3, r3, -116
+/* 80371E54 0036DAB4 4B FF FF B8 */ b InvalidateWaveData__Q44nw4r3snd6detail9SeqPlayerFPCvPCv
+
+.global $2116$2InvalidateData__Q44nw4r3snd6detail9SeqPlayerFPCvPCv
+$2116$2InvalidateData__Q44nw4r3snd6detail9SeqPlayerFPCvPCv:
+/* 80371E58 0036DAB8 38 63 FF 8C */ addi r3, r3, -116
+/* 80371E5C 0036DABC 48 00 25 AC */ b lbl_80374408
+
+.global $2128$2OnShutdownSoundThread__Q44nw4r3snd6detail9SeqPlayerFv
+$2128$2OnShutdownSoundThread__Q44nw4r3snd6detail9SeqPlayerFv:
+/* 80371E60 0036DAC0 38 63 FF 80 */ addi r3, r3, -128
+/* 80371E64 0036DAC4 4B FF FF 98 */ b OnShutdownSoundThread__Q44nw4r3snd6detail9SeqPlayerFv
+
+.global $2128$2OnUpdateFrameSoundThread__Q44nw4r3snd6detail9SeqPlayerFv
+$2128$2OnUpdateFrameSoundThread__Q44nw4r3snd6detail9SeqPlayerFv:
+/* 80371E68 0036DAC8 38 63 FF 80 */ addi r3, r3, -128
+/* 80371E6C 0036DACC 4B FF FF 8C */ b OnUpdateFrameSoundThread__Q44nw4r3snd6detail9SeqPlayerFv
diff --git a/asm/text_10_6.s b/asm/text_10_6.s
index 008bc7d..55d4bc4 100644
--- a/asm/text_10_6.s
+++ b/asm/text_10_6.s
@@ -2,45 +2,8 @@
.section .text, "ax" # 0x80006980 - 0x803E1E60
-.global func_80371DEC
-func_80371DEC:
-/* 80371DEC 0036DA4C 38 00 00 00 */ li r0, 0
-/* 80371DF0 0036DA50 90 03 01 08 */ stw r0, 0x108(r3)
-/* 80371DF4 0036DA54 48 00 52 18 */ b func_8037700C
-lbl_80371DF8:
-/* 80371DF8 0036DA58 48 00 28 AC */ b lbl_803746A4
-lbl_80371DFC:
-/* 80371DFC 0036DA5C 81 83 00 00 */ lwz r12, 0(r3)
-/* 80371E00 0036DA60 81 8C 00 10 */ lwz r12, 0x10(r12)
-/* 80371E04 0036DA64 7D 89 03 A6 */ mtctr r12
-/* 80371E08 0036DA68 4E 80 04 20 */ bctr
-lbl_80371E0C:
-/* 80371E0C 0036DA6C 4E 80 00 20 */ blr
-/* 80371E10 0036DA70 4E 80 00 20 */ blr
-/* 80371E14 0036DA74 88 63 00 8E */ lbz r3, 0x8e(r3)
-/* 80371E18 0036DA78 7C 03 00 D0 */ neg r0, r3
-/* 80371E1C 0036DA7C 7C 00 1B 78 */ or r0, r0, r3
-/* 80371E20 0036DA80 54 03 0F FE */ srwi r3, r0, 0x1f
-/* 80371E24 0036DA84 4E 80 00 20 */ blr
-/* 80371E28 0036DA88 88 63 00 8D */ lbz r3, 0x8d(r3)
-/* 80371E2C 0036DA8C 7C 03 00 D0 */ neg r0, r3
-/* 80371E30 0036DA90 7C 00 1B 78 */ or r0, r0, r3
-/* 80371E34 0036DA94 54 03 0F FE */ srwi r3, r0, 0x1f
-/* 80371E38 0036DA98 4E 80 00 20 */ blr
-/* 80371E3C 0036DA9C 88 63 00 8C */ lbz r3, 0x8c(r3)
-/* 80371E40 0036DAA0 7C 03 00 D0 */ neg r0, r3
-/* 80371E44 0036DAA4 7C 00 1B 78 */ or r0, r0, r3
-/* 80371E48 0036DAA8 54 03 0F FE */ srwi r3, r0, 0x1f
-/* 80371E4C 0036DAAC 4E 80 00 20 */ blr
-/* 80371E50 0036DAB0 38 63 FF 8C */ addi r3, r3, -116
-/* 80371E54 0036DAB4 4B FF FF B8 */ b lbl_80371E0C
-/* 80371E58 0036DAB8 38 63 FF 8C */ addi r3, r3, -116
-/* 80371E5C 0036DABC 48 00 25 AC */ b lbl_80374408
-/* 80371E60 0036DAC0 38 63 FF 80 */ addi r3, r3, -128
-/* 80371E64 0036DAC4 4B FF FF 98 */ b lbl_80371DFC
-/* 80371E68 0036DAC8 38 63 FF 80 */ addi r3, r3, -128
-/* 80371E6C 0036DACC 4B FF FF 8C */ b lbl_80371DF8
-lbl_80371E70:
+.global Parse__Q44nw4r3snd6detail9MmlParserCFPQ44nw4r3snd6detail11MmlSeqTrackb
+Parse__Q44nw4r3snd6detail9MmlParserCFPQ44nw4r3snd6detail11MmlSeqTrackb:
/* 80371E70 0036DAD0 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 80371E74 0036DAD4 7C 08 02 A6 */ mflr r0
/* 80371E78 0036DAD8 90 01 00 34 */ stw r0, 0x34(r1)
@@ -480,6 +443,8 @@ lbl_80372488:
/* 80372494 0036E0F4 7C 08 03 A6 */ mtlr r0
/* 80372498 0036E0F8 38 21 00 30 */ addi r1, r1, 0x30
/* 8037249C 0036E0FC 4E 80 00 20 */ blr
+
+
/* 803724A0 0036E100 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 803724A4 0036E104 7C 08 02 A6 */ mflr r0
/* 803724A8 0036E108 90 01 00 34 */ stw r0, 0x34(r1)
@@ -1124,7 +1089,7 @@ func_80372D5C:
/* 80372DB4 0036EA14 80 63 00 D8 */ lwz r3, 0xd8(r3)
/* 80372DB8 0036EA18 7C 85 23 78 */ mr r5, r4
/* 80372DBC 0036EA1C 7C 04 03 78 */ mr r4, r0
-/* 80372DC0 0036EA20 4B FF F0 B0 */ b lbl_80371E70
+/* 80372DC0 0036EA20 4B FF F0 B0 */ b Parse__Q44nw4r3snd6detail9MmlParserCFPQ44nw4r3snd6detail11MmlSeqTrackb
/* 80372DC4 0036EA24 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80372DC8 0036EA28 7C 08 02 A6 */ mflr r0
/* 80372DCC 0036EA2C 2C 03 00 00 */ cmpwi r3, 0
@@ -2724,6 +2689,8 @@ lbl_803743B4:
/* 803743FC 0037005C 7C 08 03 A6 */ mtlr r0
/* 80374400 00370060 38 21 00 20 */ addi r1, r1, 0x20
/* 80374404 00370064 4E 80 00 20 */ blr
+
+.global lbl_80374408
lbl_80374408:
/* 80374408 00370068 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8037440C 0037006C 7C 08 02 A6 */ mflr r0
@@ -2923,6 +2890,8 @@ lbl_80374680:
/* 80374698 003702F8 38 63 1C C8 */ addi r3, r3, lbl_80621CC8@l
/* 8037469C 003702FC 7C 63 02 14 */ add r3, r3, r0
/* 803746A0 00370300 4E 80 00 20 */ blr
+
+.global lbl_803746A4
lbl_803746A4:
/* 803746A4 00370304 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 803746A8 00370308 7C 08 02 A6 */ mflr r0
diff --git a/asm/text_11.s b/asm/text_11.s
index 8573f7e..09ebfee 100644
--- a/asm/text_11.s
+++ b/asm/text_11.s
@@ -40285,7 +40285,7 @@ lbl_803A35CC:
/* 803A35CC 0039F22C 80 7E 05 D8 */ lwz r3, 0x5d8(r30)
/* 803A35D0 0039F230 2C 03 00 00 */ cmpwi r3, 0
/* 803A35D4 0039F234 41 82 00 20 */ beq lbl_803A35F4
-/* 803A35D8 0039F238 4B FC E8 15 */ bl func_80371DEC
+/* 803A35D8 0039F238 4B FC E8 15 */ bl Shutdown__Q34nw4r3snd18MemorySoundArchiveFv
/* 803A35DC 0039F23C 80 7E 05 D8 */ lwz r3, 0x5d8(r30)
/* 803A35E0 0039F240 38 80 FF FF */ li r4, -1
/* 803A35E4 0039F244 81 83 00 00 */ lwz r12, 0(r3)
diff --git a/obj_files.mk b/obj_files.mk
index db45972..975cbbe 100644
--- a/obj_files.mk
+++ b/obj_files.mk
@@ -124,6 +124,8 @@ TEXT_O_FILES := \
$(BUILD_DIR)/asm/text_10_5.o \
$(BUILD_DIR)/asm/nw4r/snd/snd_InstancePool.o \
$(BUILD_DIR)/asm/nw4r/snd/snd_Lfo.o \
+ $(BUILD_DIR)/asm/nw4r/snd/snd_MemorySoundArchive.o \
+ $(BUILD_DIR)/asm/nw4r/snd/snd_MidiSeqPlayer.o \
$(BUILD_DIR)/asm/text_10_6.o \
$(BUILD_DIR)/asm/text_11.o