mirror of https://github.com/zeldaret/tp.git
JAUAudioArcInterpreter, JAUAudioArcLoader (#1917)
* JAUAudioArcInterpreter * JAUAudioArcLoader OK
This commit is contained in:
parent
6deaa22a19
commit
64faf5012c
|
|
@ -1,8 +0,0 @@
|
|||
lbl_802A4244:
|
||||
/* 802A4244 3C 80 80 3D */ lis r4, __vt__22JAUAudioArcInterpreter@ha /* 0x803C9A30@ha */
|
||||
/* 802A4248 38 04 9A 30 */ addi r0, r4, __vt__22JAUAudioArcInterpreter@l /* 0x803C9A30@l */
|
||||
/* 802A424C 90 03 00 00 */ stw r0, 0(r3)
|
||||
/* 802A4250 38 00 00 00 */ li r0, 0
|
||||
/* 802A4254 90 03 00 08 */ stw r0, 8(r3)
|
||||
/* 802A4258 90 03 00 04 */ stw r0, 4(r3)
|
||||
/* 802A425C 4E 80 00 20 */ blr
|
||||
|
|
@ -1,20 +0,0 @@
|
|||
lbl_802A4260:
|
||||
/* 802A4260 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 802A4264 7C 08 02 A6 */ mflr r0
|
||||
/* 802A4268 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 802A426C 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 802A4270 7C 7F 1B 79 */ or. r31, r3, r3
|
||||
/* 802A4274 41 82 00 1C */ beq lbl_802A4290
|
||||
/* 802A4278 3C A0 80 3D */ lis r5, __vt__22JAUAudioArcInterpreter@ha /* 0x803C9A30@ha */
|
||||
/* 802A427C 38 05 9A 30 */ addi r0, r5, __vt__22JAUAudioArcInterpreter@l /* 0x803C9A30@l */
|
||||
/* 802A4280 90 1F 00 00 */ stw r0, 0(r31)
|
||||
/* 802A4284 7C 80 07 35 */ extsh. r0, r4
|
||||
/* 802A4288 40 81 00 08 */ ble lbl_802A4290
|
||||
/* 802A428C 48 02 AA B1 */ bl __dl__FPv
|
||||
lbl_802A4290:
|
||||
/* 802A4290 7F E3 FB 78 */ mr r3, r31
|
||||
/* 802A4294 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 802A4298 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 802A429C 7C 08 03 A6 */ mtlr r0
|
||||
/* 802A42A0 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 802A42A4 4E 80 00 20 */ blr
|
||||
|
|
@ -1,20 +0,0 @@
|
|||
lbl_802A4740:
|
||||
/* 802A4740 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 802A4744 7C 08 02 A6 */ mflr r0
|
||||
/* 802A4748 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 802A474C 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 802A4750 93 C1 00 08 */ stw r30, 8(r1)
|
||||
/* 802A4754 7C 7E 1B 78 */ mr r30, r3
|
||||
/* 802A4758 7C 9F 23 78 */ mr r31, r4
|
||||
/* 802A475C 4B FF FA E9 */ bl __ct__22JAUAudioArcInterpreterFv
|
||||
/* 802A4760 3C 60 80 3D */ lis r3, __vt__17JAUAudioArcLoader@ha /* 0x803C9A78@ha */
|
||||
/* 802A4764 38 03 9A 78 */ addi r0, r3, __vt__17JAUAudioArcLoader@l /* 0x803C9A78@l */
|
||||
/* 802A4768 90 1E 00 00 */ stw r0, 0(r30)
|
||||
/* 802A476C 93 FE 00 0C */ stw r31, 0xc(r30)
|
||||
/* 802A4770 7F C3 F3 78 */ mr r3, r30
|
||||
/* 802A4774 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 802A4778 83 C1 00 08 */ lwz r30, 8(r1)
|
||||
/* 802A477C 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 802A4780 7C 08 03 A6 */ mtlr r0
|
||||
/* 802A4784 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 802A4788 4E 80 00 20 */ blr
|
||||
|
|
@ -1,26 +0,0 @@
|
|||
lbl_802A49FC:
|
||||
/* 802A49FC 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 802A4A00 7C 08 02 A6 */ mflr r0
|
||||
/* 802A4A04 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 802A4A08 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 802A4A0C 93 C1 00 08 */ stw r30, 8(r1)
|
||||
/* 802A4A10 7C 7E 1B 79 */ or. r30, r3, r3
|
||||
/* 802A4A14 7C 9F 23 78 */ mr r31, r4
|
||||
/* 802A4A18 41 82 00 28 */ beq lbl_802A4A40
|
||||
/* 802A4A1C 3C 80 80 3D */ lis r4, __vt__17JAUAudioArcLoader@ha /* 0x803C9A78@ha */
|
||||
/* 802A4A20 38 04 9A 78 */ addi r0, r4, __vt__17JAUAudioArcLoader@l /* 0x803C9A78@l */
|
||||
/* 802A4A24 90 1E 00 00 */ stw r0, 0(r30)
|
||||
/* 802A4A28 38 80 00 00 */ li r4, 0
|
||||
/* 802A4A2C 4B FF F8 35 */ bl __dt__22JAUAudioArcInterpreterFv
|
||||
/* 802A4A30 7F E0 07 35 */ extsh. r0, r31
|
||||
/* 802A4A34 40 81 00 0C */ ble lbl_802A4A40
|
||||
/* 802A4A38 7F C3 F3 78 */ mr r3, r30
|
||||
/* 802A4A3C 48 02 A3 01 */ bl __dl__FPv
|
||||
lbl_802A4A40:
|
||||
/* 802A4A40 7F C3 F3 78 */ mr r3, r30
|
||||
/* 802A4A44 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 802A4A48 83 C1 00 08 */ lwz r30, 8(r1)
|
||||
/* 802A4A4C 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 802A4A50 7C 08 03 A6 */ mtlr r0
|
||||
/* 802A4A54 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 802A4A58 4E 80 00 20 */ blr
|
||||
|
|
@ -1,10 +0,0 @@
|
|||
lbl_802A4990:
|
||||
/* 802A4990 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 802A4994 7C 08 02 A6 */ mflr r0
|
||||
/* 802A4998 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 802A499C 80 63 00 0C */ lwz r3, 0xc(r3)
|
||||
/* 802A49A0 48 00 13 0D */ bl beginNewBankTable__10JAUSectionFUlUl
|
||||
/* 802A49A4 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 802A49A8 7C 08 03 A6 */ mtlr r0
|
||||
/* 802A49AC 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 802A49B0 4E 80 00 20 */ blr
|
||||
|
|
@ -1,10 +0,0 @@
|
|||
lbl_802A49B4:
|
||||
/* 802A49B4 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 802A49B8 7C 08 02 A6 */ mflr r0
|
||||
/* 802A49BC 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 802A49C0 80 63 00 0C */ lwz r3, 0xc(r3)
|
||||
/* 802A49C4 48 00 13 D9 */ bl endNewBankTable__10JAUSectionFv
|
||||
/* 802A49C8 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 802A49CC 7C 08 03 A6 */ mtlr r0
|
||||
/* 802A49D0 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 802A49D4 4E 80 00 20 */ blr
|
||||
|
|
@ -1,9 +0,0 @@
|
|||
lbl_802A478C:
|
||||
/* 802A478C 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 802A4790 7C 08 02 A6 */ mflr r0
|
||||
/* 802A4794 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 802A4798 4B FF FB 11 */ bl parse__22JAUAudioArcInterpreterFPCv
|
||||
/* 802A479C 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 802A47A0 7C 08 03 A6 */ mtlr r0
|
||||
/* 802A47A4 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 802A47A8 4E 80 00 20 */ blr
|
||||
|
|
@ -1,17 +0,0 @@
|
|||
lbl_802A4930:
|
||||
/* 802A4930 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 802A4934 7C 08 02 A6 */ mflr r0
|
||||
/* 802A4938 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 802A493C 80 A3 00 0C */ lwz r5, 0xc(r3)
|
||||
/* 802A4940 80 65 00 30 */ lwz r3, 0x30(r5)
|
||||
/* 802A4944 7C 03 28 40 */ cmplw r3, r5
|
||||
/* 802A4948 40 82 00 08 */ bne lbl_802A4950
|
||||
/* 802A494C 48 00 00 08 */ b lbl_802A4954
|
||||
lbl_802A4950:
|
||||
/* 802A4950 38 60 00 00 */ li r3, 0
|
||||
lbl_802A4954:
|
||||
/* 802A4954 48 00 17 59 */ bl newDynamicSeqBlock__14JAUSectionHeapFUl
|
||||
/* 802A4958 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 802A495C 7C 08 03 A6 */ mtlr r0
|
||||
/* 802A4960 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 802A4964 4E 80 00 20 */ blr
|
||||
|
|
@ -1,13 +0,0 @@
|
|||
lbl_802A4900:
|
||||
/* 802A4900 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 802A4904 7C 08 02 A6 */ mflr r0
|
||||
/* 802A4908 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 802A490C 7C 80 23 78 */ mr r0, r4
|
||||
/* 802A4910 80 63 00 0C */ lwz r3, 0xc(r3)
|
||||
/* 802A4914 7C A4 2B 78 */ mr r4, r5
|
||||
/* 802A4918 7C 05 03 78 */ mr r5, r0
|
||||
/* 802A491C 48 00 12 69 */ bl newVoiceBank__10JAUSectionFUlUl
|
||||
/* 802A4920 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 802A4924 7C 08 03 A6 */ mtlr r0
|
||||
/* 802A4928 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 802A492C 4E 80 00 20 */ blr
|
||||
|
|
@ -1,12 +0,0 @@
|
|||
lbl_802A48A8:
|
||||
/* 802A48A8 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 802A48AC 7C 08 02 A6 */ mflr r0
|
||||
/* 802A48B0 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 802A48B4 90 81 00 08 */ stw r4, 8(r1)
|
||||
/* 802A48B8 80 63 00 0C */ lwz r3, 0xc(r3)
|
||||
/* 802A48BC 38 81 00 08 */ addi r4, r1, 8
|
||||
/* 802A48C0 48 00 0E 09 */ bl newStaticSeqData__10JAUSectionF10JAISoundIDPCvUl
|
||||
/* 802A48C4 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 802A48C8 7C 08 03 A6 */ mtlr r0
|
||||
/* 802A48CC 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 802A48D0 4E 80 00 20 */ blr
|
||||
|
|
@ -1,12 +0,0 @@
|
|||
lbl_802A48D4:
|
||||
/* 802A48D4 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 802A48D8 7C 08 02 A6 */ mflr r0
|
||||
/* 802A48DC 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 802A48E0 90 81 00 08 */ stw r4, 8(r1)
|
||||
/* 802A48E4 80 63 00 0C */ lwz r3, 0xc(r3)
|
||||
/* 802A48E8 38 81 00 08 */ addi r4, r1, 8
|
||||
/* 802A48EC 48 00 0E 45 */ bl newStaticSeqData__10JAUSectionF10JAISoundID
|
||||
/* 802A48F0 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 802A48F4 7C 08 03 A6 */ mtlr r0
|
||||
/* 802A48F8 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 802A48FC 4E 80 00 20 */ blr
|
||||
|
|
@ -1,13 +0,0 @@
|
|||
lbl_802A4804:
|
||||
/* 802A4804 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 802A4808 7C 08 02 A6 */ mflr r0
|
||||
/* 802A480C 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 802A4810 7C 80 23 78 */ mr r0, r4
|
||||
/* 802A4814 80 63 00 0C */ lwz r3, 0xc(r3)
|
||||
/* 802A4818 7C A4 2B 78 */ mr r4, r5
|
||||
/* 802A481C 7C 05 03 78 */ mr r5, r0
|
||||
/* 802A4820 48 00 12 31 */ bl newBank__10JAUSectionFPCvUl
|
||||
/* 802A4824 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 802A4828 7C 08 03 A6 */ mtlr r0
|
||||
/* 802A482C 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 802A4830 4E 80 00 20 */ blr
|
||||
|
|
@ -1,10 +0,0 @@
|
|||
lbl_802A4834:
|
||||
/* 802A4834 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 802A4838 7C 08 02 A6 */ mflr r0
|
||||
/* 802A483C 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 802A4840 80 63 00 0C */ lwz r3, 0xc(r3)
|
||||
/* 802A4844 48 00 0C BD */ bl newSeSeqCollection__10JAUSectionFPCvUl
|
||||
/* 802A4848 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 802A484C 7C 08 03 A6 */ mtlr r0
|
||||
/* 802A4850 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 802A4854 4E 80 00 20 */ blr
|
||||
|
|
@ -1,11 +0,0 @@
|
|||
lbl_802A4968:
|
||||
/* 802A4968 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 802A496C 7C 08 02 A6 */ mflr r0
|
||||
/* 802A4970 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 802A4974 80 63 00 0C */ lwz r3, 0xc(r3)
|
||||
/* 802A4978 38 A0 00 01 */ li r5, 1
|
||||
/* 802A497C 48 00 09 E1 */ bl newStreamFileTable__10JAUSectionFPCvb
|
||||
/* 802A4980 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 802A4984 7C 08 03 A6 */ mtlr r0
|
||||
/* 802A4988 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 802A498C 4E 80 00 20 */ blr
|
||||
|
|
@ -1,11 +0,0 @@
|
|||
lbl_802A4880:
|
||||
/* 802A4880 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 802A4884 7C 08 02 A6 */ mflr r0
|
||||
/* 802A4888 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 802A488C 80 63 00 0C */ lwz r3, 0xc(r3)
|
||||
/* 802A4890 38 C0 00 01 */ li r6, 1
|
||||
/* 802A4894 48 00 0A 0D */ bl newSoundNameTable__10JAUSectionFPCvUlb
|
||||
/* 802A4898 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 802A489C 7C 08 03 A6 */ mtlr r0
|
||||
/* 802A48A0 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 802A48A4 4E 80 00 20 */ blr
|
||||
|
|
@ -1,11 +0,0 @@
|
|||
lbl_802A4858:
|
||||
/* 802A4858 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 802A485C 7C 08 02 A6 */ mflr r0
|
||||
/* 802A4860 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 802A4864 80 63 00 0C */ lwz r3, 0xc(r3)
|
||||
/* 802A4868 38 C0 00 01 */ li r6, 1
|
||||
/* 802A486C 48 00 09 79 */ bl newSoundTable__10JAUSectionFPCvUlb
|
||||
/* 802A4870 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 802A4874 7C 08 03 A6 */ mtlr r0
|
||||
/* 802A4878 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 802A487C 4E 80 00 20 */ blr
|
||||
|
|
@ -1,10 +0,0 @@
|
|||
lbl_802A49D8:
|
||||
/* 802A49D8 80 0D 85 EC */ lwz r0, __OSReport_disable-0x2C(r13)
|
||||
/* 802A49DC 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 802A49E0 4D 82 00 20 */ beqlr
|
||||
/* 802A49E4 1C 64 00 6C */ mulli r3, r4, 0x6c
|
||||
/* 802A49E8 38 63 00 14 */ addi r3, r3, 0x14
|
||||
/* 802A49EC 7C 60 1A 14 */ add r3, r0, r3
|
||||
/* 802A49F0 90 A3 00 68 */ stw r5, 0x68(r3)
|
||||
/* 802A49F4 90 C3 00 64 */ stw r6, 0x64(r3)
|
||||
/* 802A49F8 4E 80 00 20 */ blr
|
||||
|
|
@ -1,24 +0,0 @@
|
|||
lbl_802A47AC:
|
||||
/* 802A47AC 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 802A47B0 7C 08 02 A6 */ mflr r0
|
||||
/* 802A47B4 90 01 00 24 */ stw r0, 0x24(r1)
|
||||
/* 802A47B8 39 61 00 20 */ addi r11, r1, 0x20
|
||||
/* 802A47BC 48 0B DA 21 */ bl _savegpr_29
|
||||
/* 802A47C0 7C 7D 1B 78 */ mr r29, r3
|
||||
/* 802A47C4 7C 9E 23 78 */ mr r30, r4
|
||||
/* 802A47C8 7C DF 33 78 */ mr r31, r6
|
||||
/* 802A47CC 80 63 00 0C */ lwz r3, 0xc(r3)
|
||||
/* 802A47D0 48 00 10 85 */ bl newWaveBank__10JAUSectionFUlPCv
|
||||
/* 802A47D4 28 1F 00 00 */ cmplwi r31, 0
|
||||
/* 802A47D8 41 82 00 14 */ beq lbl_802A47EC
|
||||
/* 802A47DC 80 7D 00 0C */ lwz r3, 0xc(r29)
|
||||
/* 802A47E0 7F C4 F3 78 */ mr r4, r30
|
||||
/* 802A47E4 7F E5 FB 78 */ mr r5, r31
|
||||
/* 802A47E8 48 00 11 61 */ bl loadWaveArc__10JAUSectionFUlUl
|
||||
lbl_802A47EC:
|
||||
/* 802A47EC 39 61 00 20 */ addi r11, r1, 0x20
|
||||
/* 802A47F0 48 0B DA 39 */ bl _restgpr_29
|
||||
/* 802A47F4 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 802A47F8 7C 08 03 A6 */ mtlr r0
|
||||
/* 802A47FC 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 802A4800 4E 80 00 20 */ blr
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
#ifndef JASGADGET_H
|
||||
#define JASGADGET_H
|
||||
|
||||
#include "dolphin/types.h"
|
||||
#include "JSystem/JUtility/JUTAssert.h"
|
||||
|
||||
template<class T>
|
||||
class JASGlobalInstance {
|
||||
|
|
@ -12,6 +12,7 @@ public:
|
|||
|
||||
JASGlobalInstance(bool param_1) {
|
||||
if (param_1) {
|
||||
JUT_ASSERT("JASGadget.h", 0xba, sInstance == 0);
|
||||
sInstance = (T*)this;
|
||||
}
|
||||
}
|
||||
|
|
@ -27,4 +28,43 @@ public:
|
|||
static T* sInstance;
|
||||
};
|
||||
|
||||
template<class T>
|
||||
class JASPtrTable {
|
||||
public:
|
||||
JASPtrTable(T** param_0, u32 size) {
|
||||
mTable = param_0;
|
||||
mSize = size;
|
||||
memset(mTable, 0, size * 4);
|
||||
}
|
||||
T* get(u32 index) {
|
||||
if (index >= mSize) {
|
||||
return NULL;
|
||||
}
|
||||
return mTable[index];
|
||||
}
|
||||
T* get(u32 index) const {
|
||||
if (index >= mSize) {
|
||||
return NULL;
|
||||
}
|
||||
return mTable[index];
|
||||
}
|
||||
void set(u32 index, T* value) {
|
||||
JUT_ASSERT("JASGadget.h", 0xe5, index < mSize);
|
||||
mTable[index] = value;
|
||||
}
|
||||
|
||||
private:
|
||||
/* 0x00 */ T** mTable;
|
||||
/* 0x04 */ u32 mSize;
|
||||
};
|
||||
|
||||
template<class T, size_t N>
|
||||
class JASPtrArray : public JASPtrTable<T> {
|
||||
public:
|
||||
JASPtrArray() : JASPtrTable(mArray, N) {}
|
||||
|
||||
private:
|
||||
/* 0x08 */ T* mArray[N];
|
||||
};
|
||||
|
||||
#endif /* JASGADGET_H */
|
||||
|
|
|
|||
|
|
@ -3,4 +3,41 @@
|
|||
|
||||
#include "dolphin/types.h"
|
||||
|
||||
class JAUAudioArcInterpreter {
|
||||
public:
|
||||
/* 802A4244 */ JAUAudioArcInterpreter();
|
||||
/* 802A4260 */ virtual ~JAUAudioArcInterpreter();
|
||||
virtual void readWS(u32, void const*, u32) = 0;
|
||||
virtual void readBNK(u32, void const*) = 0;
|
||||
virtual void readBSC(void const*, u32) = 0;
|
||||
virtual void readBST(void const*, u32) = 0;
|
||||
virtual void readBSTN(void const*, u32) = 0;
|
||||
virtual void readBMS(u32, void const*, u32) = 0;
|
||||
virtual void readBMS_fromArchive(u32) = 0;
|
||||
virtual void newVoiceBank(u32, u32) = 0;
|
||||
virtual void newDynamicSeqBlock(u32) = 0;
|
||||
virtual void readBSFT(void const*) = 0;
|
||||
virtual void readMaxSeCategory(int, int, int) = 0;
|
||||
virtual void beginBNKList(u32, u32) = 0;
|
||||
virtual void endBNKList() = 0;
|
||||
/* 802A42A8 */ bool parse(void const*);
|
||||
/* 802A4314 */ virtual bool readCommandMore(u32);
|
||||
/* 802A431C */ bool readCommand_();
|
||||
|
||||
u8 readU8_() {
|
||||
return *mReadPtr++;
|
||||
}
|
||||
|
||||
u32 readU32_() {
|
||||
u32 temp = *(u32*)mReadPtr;
|
||||
mReadPtr = mReadPtr + 4;
|
||||
return temp;
|
||||
}
|
||||
const void* getContent_(u32 param_0) { return mBase + param_0; }
|
||||
|
||||
|
||||
/* 0x04 */ const u8* mReadPtr;
|
||||
/* 0x08 */ const u8* mBase;
|
||||
};
|
||||
|
||||
#endif /* JAUAUDIOARCINTERPRETER_H */
|
||||
|
|
|
|||
|
|
@ -1,8 +1,30 @@
|
|||
#ifndef JAUAUDIOARCLOADER_H
|
||||
#define JAUAUDIOARCLOADER_H
|
||||
|
||||
#include "dolphin/types.h"
|
||||
#include "JSystem/JAudio2/JAUAudioArcInterpreter.h"
|
||||
|
||||
struct JAUSection;
|
||||
|
||||
class JAUAudioArcLoader : public JAUAudioArcInterpreter {
|
||||
public:
|
||||
/* 802A4740 */ JAUAudioArcLoader(JAUSection*);
|
||||
/* 802A478C */ bool load(void const*);
|
||||
/* 802A47AC */ virtual void readWS(u32, void const*, u32);
|
||||
/* 802A4804 */ virtual void readBNK(u32, void const*);
|
||||
/* 802A4834 */ virtual void readBSC(void const*, u32);
|
||||
/* 802A4858 */ virtual void readBST(void const*, u32);
|
||||
/* 802A4880 */ virtual void readBSTN(void const*, u32);
|
||||
/* 802A48A8 */ virtual void readBMS(u32, void const*, u32);
|
||||
/* 802A48D4 */ virtual void readBMS_fromArchive(u32);
|
||||
/* 802A4900 */ virtual void newVoiceBank(u32, u32);
|
||||
/* 802A4930 */ virtual void newDynamicSeqBlock(u32);
|
||||
/* 802A4968 */ virtual void readBSFT(void const*);
|
||||
/* 802A4990 */ virtual void beginBNKList(u32, u32);
|
||||
/* 802A49B4 */ virtual void endBNKList();
|
||||
/* 802A49D8 */ virtual void readMaxSeCategory(int, int, int);
|
||||
/* 802A49FC */ virtual ~JAUAudioArcLoader();
|
||||
|
||||
/* 0x0C */ JAUSection* mSection;
|
||||
};
|
||||
|
||||
#endif /* JAUAUDIOARCLOADER_H */
|
||||
|
|
|
|||
|
|
@ -1,20 +1,9 @@
|
|||
#ifndef JAUBANKTABLE_H
|
||||
#define JAUBANKTABLE_H
|
||||
|
||||
#include "JSystem/JAudio2/JASGadget.h"
|
||||
#include "JSystem/JSupport/JSUList.h"
|
||||
|
||||
template <typename T>
|
||||
struct JASPtrTable {
|
||||
T* get(u32 value) const {
|
||||
if (value >= mLength) {
|
||||
return NULL;
|
||||
}
|
||||
return mTable[value];
|
||||
}
|
||||
T** mTable;
|
||||
u32 mLength;
|
||||
};
|
||||
|
||||
struct JASBank;
|
||||
struct JAUBankTable {
|
||||
/* 802A4AA0 */ /*virtual*/ JASBank* getBank(u32) const;
|
||||
|
|
@ -26,4 +15,12 @@ struct JAUBankTableDictionary : JSUList<JAUBankTable> {
|
|||
/* 802A4A80 */ void appendBankTable(JSULink<JAUBankTable>*);
|
||||
};
|
||||
|
||||
class JASWaveBank;
|
||||
class JAUWaveBankTable : private JASPtrArray<JASWaveBank,255> {
|
||||
public:
|
||||
JASWaveBank* getWaveBank(u32 index) { return get(index); }
|
||||
JASWaveBank* getWaveBank(u32 index) const { return get(index); }
|
||||
void registWaveBank(u32 index, JASWaveBank* bank) { set(index, bank); }
|
||||
};
|
||||
|
||||
#endif /* JAUBANKTABLE_H */
|
||||
|
|
|
|||
|
|
@ -1,6 +1,108 @@
|
|||
#ifndef JAUSECTIONHEAP_H
|
||||
#define JAUSECTIONHEAP_H
|
||||
|
||||
#include "dolphin/types.h"
|
||||
#include "JSystem/JAudio2/JAISeqDataMgr.h"
|
||||
#include "JSystem/JAudio2/JASGadget.h"
|
||||
#include "JSystem/JAudio2/JAUBankTable.h"
|
||||
#include "JSystem/JAudio2/JAUSeqDataBlockMgr.h"
|
||||
#include "JSystem/JKernel/JKRDisposer.h"
|
||||
#include "MSL_C/bitset.h"
|
||||
|
||||
class JAISeqData;
|
||||
class JAISeqDataUser;
|
||||
class JAIStreamDataMgr;
|
||||
class JAUDisposer_;
|
||||
class JAUSectionHeap;
|
||||
class JAUSeqDataMgr_SeqCollection;
|
||||
class JKRArchive;
|
||||
class JKRSolidHeap;
|
||||
|
||||
class JAUSection /* : public JKRDisposer, JSULink<JAUSection> */ {
|
||||
public:
|
||||
struct TSectionData {
|
||||
/* 802A4EE8 */ TSectionData();
|
||||
/* 802A4F68 */ void resetRegisteredBankTables();
|
||||
/* 802A4FE4 */ void resetRegisteredWaveBankTables();
|
||||
|
||||
/* 0x00 */ JAUDynamicSeqDataBlocks field_0x00;
|
||||
/* 0x28 */ JSUList<JAUSeqDataBlock> field_0x28;
|
||||
/* 0x34 */ std::bitset<255> field_0x34;
|
||||
/* 0x54 */ std::bitset<255> field_0x54;
|
||||
/* 0x74 */ JAUBankTableDictionary field_0x74;
|
||||
/* 0x80 */ int field_0x80;
|
||||
/* 0x84 */ int field_0x84;
|
||||
/* 0x88 */ int field_0x88;
|
||||
/* 0x8C */ JSUList<JAUDisposer_> field_0x8c;
|
||||
/* 0x98 */ s32 field_0x98;
|
||||
/* 0x9C */ int field_0x9c;
|
||||
/* 0xA0 */ int field_0xa0;
|
||||
};
|
||||
|
||||
/* 802A5060 */ JAUSection(JAUSectionHeap*, u32, s32);
|
||||
/* 802A50F8 */ void finishBuild();
|
||||
/* 802A5160 */ void dispose();
|
||||
/* 802A51E4 */ void newSoundTable(void const*, u32, bool);
|
||||
/* 802A52A0 */ void newSoundNameTable(void const*, u32, bool);
|
||||
/* 802A535C */ void newStreamFileTable(void const*, bool);
|
||||
/* 802A5500 */ void newSeSeqCollection(void const*, u32);
|
||||
/* 802A5598 */ void newStaticSeqDataBlock_(JAISoundID, u32);
|
||||
/* 802A56C8 */ void newStaticSeqData(JAISoundID, void const*, u32);
|
||||
/* 802A5730 */ void newStaticSeqData(JAISoundID);
|
||||
/* 802A57F0 */ void newCopy(void const*, u32, s32);
|
||||
/* 802A5854 */ void newWaveBank(u32, void const*);
|
||||
/* 802A5948 */ void loadWaveArc(u32, u32);
|
||||
/* 802A5A50 */ void newBank(void const*, u32);
|
||||
/* 802A5B84 */ void newVoiceBank(u32, u32);
|
||||
/* 802A5CAC */ void beginNewBankTable(u32, u32);
|
||||
/* 802A5D9C */ void endNewBankTable();
|
||||
/* 802A6468 */ ~JAUSection();
|
||||
|
||||
bool isBuilding() { return field_0x2c; }
|
||||
//bool isOpen() { return this == sectionHeap_->getOpenSection(); }
|
||||
JAUSectionHeap* asSectionHeap() { return (JAUSection*)sectionHeap_ == this ? sectionHeap_ : NULL; }
|
||||
|
||||
/* 0x00 */ JKRDisposer base1;
|
||||
/* 0x18 */ JSULink<JAUSection> base2;
|
||||
/* 0x28 */ u32 field_0x28;
|
||||
/* 0x2C */ bool field_0x2c;
|
||||
/* 0x30 */ JAUSectionHeap* sectionHeap_;
|
||||
/* 0x34 */ int field_0x34;
|
||||
/* 0x38 */ TSectionData mSectionData;
|
||||
};
|
||||
|
||||
class JAUSectionHeap /* : public JAUSection, JASGlobalInstance<JAUSectionHeap>, JAISeqDataMgr */ {
|
||||
public:
|
||||
struct TSectionHeapData {
|
||||
/* 802A5DF4 */ TSectionHeapData();
|
||||
|
||||
/* 0x000 */ JAUWaveBankTable field_0x000;
|
||||
/* 0x404 */ JAISeqDataUser* seqDataUser;
|
||||
/* 0x408 */ JAUDynamicSeqDataBlocks field_0x408;
|
||||
/* 0x430 */ JAUSeqDataMgr_SeqCollection* field_0x430;
|
||||
/* 0x434 */ JAIStreamDataMgr* field_0x434;
|
||||
/* 0x438 */ int field_0x438;
|
||||
/* 0x43C */ int field_0x43c;
|
||||
};
|
||||
|
||||
/* 802A5E60 */ void setSeqDataArchive(JKRArchive*);
|
||||
/* 802A5EC0 */ void loadDynamicSeq(JAISoundID, bool);
|
||||
/* 802A5EF8 */ void releaseIdleDynamicSeqDataBlock();
|
||||
/* 802A5FE0 */ JAUSectionHeap(JKRSolidHeap*, bool, s32);
|
||||
/* 802A6094 */ JAUSection* getOpenSection();
|
||||
/* 802A60A0 */ void setSeqDataUser(JAISeqDataUser*);
|
||||
/* 802A60AC */ void newDynamicSeqBlock(u32);
|
||||
/* 802A61D0 */ int getSeqData(JAISoundID, JAISeqData*);
|
||||
/* 802A6270 */ int releaseSeqData();
|
||||
/* 802A6278 */ ~JAUSectionHeap();
|
||||
|
||||
/* 0x00 */ JAUSection base1;
|
||||
/* 0xDC */ u8 base2[0xE0 - 0xDC]; // JAISeqDataMgr
|
||||
/* 0xE0 */ JKRSolidHeap* mHeap;
|
||||
/* 0xE4 */ int field_0xe4;
|
||||
/* 0xE8 */ JSUList<JAUSection> mSectionList;
|
||||
/* 0xF4 */ TSectionHeapData field_0xf4;
|
||||
};
|
||||
|
||||
JAUSectionHeap* JAUNewSectionHeap(bool);
|
||||
|
||||
#endif /* JAUSECTIONHEAP_H */
|
||||
|
|
|
|||
|
|
@ -1,5 +1,43 @@
|
|||
#ifndef JAUSEQDATABLOCKMGR_H
|
||||
#define JAUSEQDATABLOCKMGR_H
|
||||
|
||||
#include "JSystem/JAudio2/JAISound.h"
|
||||
#include "JSystem/JSupport/JSUList.h"
|
||||
|
||||
class JAISeqData;
|
||||
class JAISeqDataUser;
|
||||
class JKRArchive;
|
||||
|
||||
struct JAUSeqDataBlock {
|
||||
/* 802A68F4 */ JAUSeqDataBlock();
|
||||
};
|
||||
|
||||
class JAUSeqDataBlocks {
|
||||
public:
|
||||
/* 802A6928 */ void getSeqData(JAISoundID);
|
||||
/* 802A6974 */ void seekFreeBlock(u32);
|
||||
/* 802A69D8 */ void append(JSULink<JAUSeqDataBlock>*);
|
||||
/* 802A69F8 */ void remove(JSULink<JAUSeqDataBlock>*);
|
||||
/* 802A6A18 */ void hasFailedBlock(JAISoundID);
|
||||
|
||||
/* 0x00 */ JSUList<JAUSeqDataBlock> field_0x0;
|
||||
};
|
||||
|
||||
class JAUDynamicSeqDataBlocks {
|
||||
public:
|
||||
/* 802A6A58 */ JAUDynamicSeqDataBlocks();
|
||||
/* 802A6AA0 */ void setSeqDataArchive(JKRArchive*);
|
||||
/* 802A6AA8 */ void getSeqData(JAISoundID, JAISeqDataUser*, JAISeqData*, bool);
|
||||
/* 802A6B8C */ void appendDynamicSeqDataBlock(JAUSeqDataBlock*);
|
||||
/* 802A6C18 */ void loadDynamicSeq(JAISoundID, bool, JAISeqDataUser*);
|
||||
/* 802A6D48 */ void releaseIdleDynamicSeqDataBlock(JAISeqDataUser*);
|
||||
/* 802A6E00 */ void releaseIdleDynamicSeqDataBlock_(JAISeqDataUser*, u32);
|
||||
/* 802A6EDC */ void rearrangeLoadingSeqs_();
|
||||
|
||||
/* 0x00 */ JAUSeqDataBlocks field_0x0;
|
||||
/* 0x0C */ JAUSeqDataBlocks field_0xc;
|
||||
/* 0x18 */ JAUSeqDataBlocks field_0x18;
|
||||
/* 0x24 */ JKRArchive* seqDataArchive_;
|
||||
};
|
||||
|
||||
#endif /* JAUSEQDATABLOCKMGR_H */
|
||||
|
|
|
|||
|
|
@ -3,12 +3,26 @@
|
|||
|
||||
|
||||
namespace std {
|
||||
template<size_t N> class bitset {
|
||||
template<size_t N> class __bitset_base {
|
||||
public:
|
||||
__bitset_base();
|
||||
|
||||
bool test(size_t pos) const;
|
||||
bool any() const;
|
||||
void set(size_t pos, bool val);
|
||||
void reset(size_t pos);
|
||||
private:
|
||||
size_t data[N];
|
||||
};
|
||||
|
||||
template<size_t N> class bitset : private __bitset_base<(N - 1) / sizeof(size_t) + 1> {
|
||||
public:
|
||||
bitset();
|
||||
|
||||
void set(size_t pos, bool val);
|
||||
void reset(size_t pos);
|
||||
bool test(size_t pos) const;
|
||||
bool any() const;
|
||||
};
|
||||
} // namespace std
|
||||
|
||||
|
|
|
|||
|
|
@ -4,94 +4,51 @@
|
|||
//
|
||||
|
||||
#include "JSystem/JAudio2/JAUAudioArcInterpreter.h"
|
||||
#include "JSystem/JUtility/JUTAssert.h"
|
||||
#include "dol2asm.h"
|
||||
|
||||
//
|
||||
// Types:
|
||||
//
|
||||
|
||||
struct JAUAudioArcInterpreter {
|
||||
/* 802A4244 */ JAUAudioArcInterpreter();
|
||||
/* 802A4260 */ ~JAUAudioArcInterpreter();
|
||||
/* 802A42A8 */ void parse(void const*);
|
||||
/* 802A4314 */ bool readCommandMore(u32);
|
||||
/* 802A431C */ void readCommand_();
|
||||
};
|
||||
|
||||
//
|
||||
// Forward References:
|
||||
//
|
||||
|
||||
extern "C" void __ct__22JAUAudioArcInterpreterFv();
|
||||
extern "C" void __dt__22JAUAudioArcInterpreterFv();
|
||||
extern "C" void parse__22JAUAudioArcInterpreterFPCv();
|
||||
extern "C" bool readCommandMore__22JAUAudioArcInterpreterFUl();
|
||||
extern "C" void readCommand___22JAUAudioArcInterpreterFv();
|
||||
|
||||
//
|
||||
// External References:
|
||||
//
|
||||
|
||||
extern "C" void __dl__FPv();
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
//
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 803C9A30-803C9A78 026B50 0044+04 2/2 0/0 0/0 .data __vt__22JAUAudioArcInterpreter */
|
||||
SECTION_DATA extern void* __vt__22JAUAudioArcInterpreter[17 + 1 /* padding */] = {
|
||||
(void*)NULL /* RTTI */,
|
||||
(void*)NULL,
|
||||
(void*)__dt__22JAUAudioArcInterpreterFv,
|
||||
(void*)NULL,
|
||||
(void*)NULL,
|
||||
(void*)NULL,
|
||||
(void*)NULL,
|
||||
(void*)NULL,
|
||||
(void*)NULL,
|
||||
(void*)NULL,
|
||||
(void*)NULL,
|
||||
(void*)NULL,
|
||||
(void*)NULL,
|
||||
(void*)NULL,
|
||||
(void*)NULL,
|
||||
(void*)NULL,
|
||||
(void*)readCommandMore__22JAUAudioArcInterpreterFUl,
|
||||
/* padding */
|
||||
NULL,
|
||||
};
|
||||
|
||||
/* 802A4244-802A4260 29EB84 001C+00 0/0 1/1 0/0 .text __ct__22JAUAudioArcInterpreterFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm JAUAudioArcInterpreter::JAUAudioArcInterpreter() {
|
||||
nofralloc
|
||||
#include "asm/JSystem/JAudio2/JAUAudioArcInterpreter/__ct__22JAUAudioArcInterpreterFv.s"
|
||||
JAUAudioArcInterpreter::JAUAudioArcInterpreter() {
|
||||
mBase = NULL;
|
||||
mReadPtr = NULL;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 802A4260-802A42A8 29EBA0 0048+00 1/0 3/3 0/0 .text __dt__22JAUAudioArcInterpreterFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm JAUAudioArcInterpreter::~JAUAudioArcInterpreter() {
|
||||
nofralloc
|
||||
#include "asm/JSystem/JAudio2/JAUAudioArcInterpreter/__dt__22JAUAudioArcInterpreterFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
JAUAudioArcInterpreter::~JAUAudioArcInterpreter() {}
|
||||
|
||||
/* 802A42A8-802A4314 29EBE8 006C+00 0/0 1/1 0/0 .text parse__22JAUAudioArcInterpreterFPCv
|
||||
*/
|
||||
// regswap
|
||||
#ifdef NONMATCHING
|
||||
bool JAUAudioArcInterpreter::parse(void const* param_0) {
|
||||
mBase = (const u8*)param_0;
|
||||
mReadPtr = mBase;
|
||||
if (readU32_() != 'AA_<') {
|
||||
return false;
|
||||
}
|
||||
while (readCommand_()) {}
|
||||
return true;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void JAUAudioArcInterpreter::parse(void const* param_0) {
|
||||
asm bool JAUAudioArcInterpreter::parse(void const* param_0) {
|
||||
nofralloc
|
||||
#include "asm/JSystem/JAudio2/JAUAudioArcInterpreter/parse__22JAUAudioArcInterpreterFPCv.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 802A4314-802A431C 29EC54 0008+00 1/0 1/0 0/0 .text readCommandMore__22JAUAudioArcInterpreterFUl
|
||||
*/
|
||||
|
|
@ -100,11 +57,104 @@ bool JAUAudioArcInterpreter::readCommandMore(u32 param_0) {
|
|||
}
|
||||
|
||||
/* 802A431C-802A4740 29EC5C 0424+00 1/1 0/0 0/0 .text readCommand___22JAUAudioArcInterpreterFv */
|
||||
// regalloc
|
||||
#ifdef NONMATCHING
|
||||
bool JAUAudioArcInterpreter::readCommand_() {
|
||||
u32 cmd = readU32_();
|
||||
switch (cmd) {
|
||||
case '>_AA':
|
||||
return false;
|
||||
case 'ws ': {
|
||||
u32 var1 = readU32_();
|
||||
u32 var2 = readU32_();
|
||||
u32 var3 = readU32_();
|
||||
readWS(var1, getContent_(var2), var3);
|
||||
break;
|
||||
}
|
||||
case 'bnk ': {
|
||||
u32 var1 = readU32_();
|
||||
u32 var2 = readU32_();
|
||||
readBNK(var1, getContent_(var2));
|
||||
break;
|
||||
}
|
||||
case 'bl_<': {
|
||||
u32 var1 = readU32_();
|
||||
u32 var2 = readU32_();
|
||||
beginBNKList(var1, var2);
|
||||
break;
|
||||
}
|
||||
case '>_bl':
|
||||
endBNKList();
|
||||
break;
|
||||
case 'bsc ': {
|
||||
u32 var1 = readU32_();
|
||||
u32 var2 = readU32_();
|
||||
readBSC(getContent_(var1), var2 - var1);
|
||||
break;
|
||||
}
|
||||
case 'bst ': {
|
||||
u32 var1 = readU32_();
|
||||
u32 var2 = readU32_();
|
||||
readBST(getContent_(var1), var2 - var1);
|
||||
break;
|
||||
}
|
||||
case 'bstn': {
|
||||
u32 var1 = readU32_();
|
||||
u32 var2 = readU32_();
|
||||
readBSTN(getContent_(var1), var2 - var1);
|
||||
break;
|
||||
}
|
||||
case 'bms ': {
|
||||
u32 var1 = readU32_();
|
||||
u32 var2 = readU32_();
|
||||
u32 var3 = readU32_();
|
||||
readBMS(var1, getContent_(var2), var3 - var2);
|
||||
break;
|
||||
}
|
||||
case 'bmsa': {
|
||||
u32 var1 = readU32_();
|
||||
readBMS_fromArchive(var1);
|
||||
break;
|
||||
}
|
||||
case 'vbnk': {
|
||||
u32 var1 = readU32_();
|
||||
u32 var2 = readU32_();
|
||||
newVoiceBank(var1, var2);
|
||||
break;
|
||||
}
|
||||
case 'dsqb': {
|
||||
u32 var1 = readU32_();
|
||||
newDynamicSeqBlock(var1);
|
||||
break;
|
||||
}
|
||||
case 'bsft': {
|
||||
u32 var1 = readU32_();
|
||||
readBSFT(getContent_(var1));
|
||||
break;
|
||||
}
|
||||
case 'sect': {
|
||||
readU8_();
|
||||
u8 var1 = readU8_();
|
||||
u8 var2 = readU8_();
|
||||
u8 var3 = readU8_();
|
||||
readMaxSeCategory(var1, var2, var3);
|
||||
break;
|
||||
}
|
||||
default:
|
||||
if (!readCommandMore(cmd)) {
|
||||
JUT_ASSERT("JAUAudioArcInterpreter.cpp", 0x91, false);
|
||||
}
|
||||
break;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void JAUAudioArcInterpreter::readCommand_() {
|
||||
asm bool JAUAudioArcInterpreter::readCommand_() {
|
||||
nofralloc
|
||||
#include "asm/JSystem/JAudio2/JAUAudioArcInterpreter/readCommand___22JAUAudioArcInterpreterFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
|
@ -4,301 +4,109 @@
|
|||
//
|
||||
|
||||
#include "JSystem/JAudio2/JAUAudioArcLoader.h"
|
||||
#include "dol2asm.h"
|
||||
|
||||
//
|
||||
// Types:
|
||||
//
|
||||
|
||||
struct JAUSectionHeap {
|
||||
/* 802A60AC */ void newDynamicSeqBlock(u32);
|
||||
};
|
||||
|
||||
struct JAISoundID {};
|
||||
|
||||
struct JAUSection {
|
||||
/* 802A51E4 */ void newSoundTable(void const*, u32, bool);
|
||||
/* 802A52A0 */ void newSoundNameTable(void const*, u32, bool);
|
||||
/* 802A535C */ void newStreamFileTable(void const*, bool);
|
||||
/* 802A5500 */ void newSeSeqCollection(void const*, u32);
|
||||
/* 802A56C8 */ void newStaticSeqData(JAISoundID, void const*, u32);
|
||||
/* 802A5730 */ void newStaticSeqData(JAISoundID);
|
||||
/* 802A5854 */ void newWaveBank(u32, void const*);
|
||||
/* 802A5948 */ void loadWaveArc(u32, u32);
|
||||
/* 802A5A50 */ void newBank(void const*, u32);
|
||||
/* 802A5B84 */ void newVoiceBank(u32, u32);
|
||||
/* 802A5CAC */ void beginNewBankTable(u32, u32);
|
||||
/* 802A5D9C */ void endNewBankTable();
|
||||
};
|
||||
|
||||
struct JAUAudioArcLoader {
|
||||
/* 802A4740 */ JAUAudioArcLoader(JAUSection*);
|
||||
/* 802A478C */ void load(void const*);
|
||||
/* 802A47AC */ void readWS(u32, void const*, u32);
|
||||
/* 802A4804 */ void readBNK(u32, void const*);
|
||||
/* 802A4834 */ void readBSC(void const*, u32);
|
||||
/* 802A4858 */ void readBST(void const*, u32);
|
||||
/* 802A4880 */ void readBSTN(void const*, u32);
|
||||
/* 802A48A8 */ void readBMS(u32, void const*, u32);
|
||||
/* 802A48D4 */ void readBMS_fromArchive(u32);
|
||||
/* 802A4900 */ void newVoiceBank(u32, u32);
|
||||
/* 802A4930 */ void newDynamicSeqBlock(u32);
|
||||
/* 802A4968 */ void readBSFT(void const*);
|
||||
/* 802A4990 */ void beginBNKList(u32, u32);
|
||||
/* 802A49B4 */ void endBNKList();
|
||||
/* 802A49D8 */ void readMaxSeCategory(int, int, int);
|
||||
/* 802A49FC */ ~JAUAudioArcLoader();
|
||||
};
|
||||
|
||||
struct JAUAudioArcInterpreter {
|
||||
/* 802A4244 */ JAUAudioArcInterpreter();
|
||||
/* 802A4260 */ ~JAUAudioArcInterpreter();
|
||||
/* 802A42A8 */ void parse(void const*);
|
||||
/* 802A4314 */ bool readCommandMore(u32);
|
||||
};
|
||||
|
||||
//
|
||||
// Forward References:
|
||||
//
|
||||
|
||||
extern "C" void __ct__17JAUAudioArcLoaderFP10JAUSection();
|
||||
extern "C" void load__17JAUAudioArcLoaderFPCv();
|
||||
extern "C" void readWS__17JAUAudioArcLoaderFUlPCvUl();
|
||||
extern "C" void readBNK__17JAUAudioArcLoaderFUlPCv();
|
||||
extern "C" void readBSC__17JAUAudioArcLoaderFPCvUl();
|
||||
extern "C" void readBST__17JAUAudioArcLoaderFPCvUl();
|
||||
extern "C" void readBSTN__17JAUAudioArcLoaderFPCvUl();
|
||||
extern "C" void readBMS__17JAUAudioArcLoaderFUlPCvUl();
|
||||
extern "C" void readBMS_fromArchive__17JAUAudioArcLoaderFUl();
|
||||
extern "C" void newVoiceBank__17JAUAudioArcLoaderFUlUl();
|
||||
extern "C" void newDynamicSeqBlock__17JAUAudioArcLoaderFUl();
|
||||
extern "C" void readBSFT__17JAUAudioArcLoaderFPCv();
|
||||
extern "C" void beginBNKList__17JAUAudioArcLoaderFUlUl();
|
||||
extern "C" void endBNKList__17JAUAudioArcLoaderFv();
|
||||
extern "C" void readMaxSeCategory__17JAUAudioArcLoaderFiii();
|
||||
extern "C" void __dt__17JAUAudioArcLoaderFv();
|
||||
|
||||
//
|
||||
// External References:
|
||||
//
|
||||
|
||||
extern "C" void __ct__22JAUAudioArcInterpreterFv();
|
||||
extern "C" void __dt__22JAUAudioArcInterpreterFv();
|
||||
extern "C" void parse__22JAUAudioArcInterpreterFPCv();
|
||||
extern "C" bool readCommandMore__22JAUAudioArcInterpreterFUl();
|
||||
extern "C" void newSoundTable__10JAUSectionFPCvUlb();
|
||||
extern "C" void newSoundNameTable__10JAUSectionFPCvUlb();
|
||||
extern "C" void newStreamFileTable__10JAUSectionFPCvb();
|
||||
extern "C" void newSeSeqCollection__10JAUSectionFPCvUl();
|
||||
extern "C" void newStaticSeqData__10JAUSectionF10JAISoundIDPCvUl();
|
||||
extern "C" void newStaticSeqData__10JAUSectionF10JAISoundID();
|
||||
extern "C" void newWaveBank__10JAUSectionFUlPCv();
|
||||
extern "C" void loadWaveArc__10JAUSectionFUlUl();
|
||||
extern "C" void newBank__10JAUSectionFPCvUl();
|
||||
extern "C" void newVoiceBank__10JAUSectionFUlUl();
|
||||
extern "C" void beginNewBankTable__10JAUSectionFUlUl();
|
||||
extern "C" void endNewBankTable__10JAUSectionFv();
|
||||
extern "C" void newDynamicSeqBlock__14JAUSectionHeapFUl();
|
||||
extern "C" void __dl__FPv();
|
||||
extern "C" void _savegpr_29();
|
||||
extern "C" void _restgpr_29();
|
||||
extern "C" extern u8 data_80450B6C[4];
|
||||
extern "C" extern u8 __OSReport_disable;
|
||||
#include "JSystem/JAudio2/JAISeMgr.h"
|
||||
#include "JSystem/JAudio2/JAUSectionHeap.h"
|
||||
#include "JSystem/JUtility/JUTAssert.h"
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
//
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 803C9A78-803C9AC0 026B98 0044+04 2/2 2/2 0/0 .data __vt__17JAUAudioArcLoader */
|
||||
SECTION_DATA extern void* __vt__17JAUAudioArcLoader[17 + 1 /* padding */] = {
|
||||
(void*)NULL /* RTTI */,
|
||||
(void*)NULL,
|
||||
(void*)__dt__17JAUAudioArcLoaderFv,
|
||||
(void*)readWS__17JAUAudioArcLoaderFUlPCvUl,
|
||||
(void*)readBNK__17JAUAudioArcLoaderFUlPCv,
|
||||
(void*)readBSC__17JAUAudioArcLoaderFPCvUl,
|
||||
(void*)readBST__17JAUAudioArcLoaderFPCvUl,
|
||||
(void*)readBSTN__17JAUAudioArcLoaderFPCvUl,
|
||||
(void*)readBMS__17JAUAudioArcLoaderFUlPCvUl,
|
||||
(void*)readBMS_fromArchive__17JAUAudioArcLoaderFUl,
|
||||
(void*)newVoiceBank__17JAUAudioArcLoaderFUlUl,
|
||||
(void*)newDynamicSeqBlock__17JAUAudioArcLoaderFUl,
|
||||
(void*)readBSFT__17JAUAudioArcLoaderFPCv,
|
||||
(void*)readMaxSeCategory__17JAUAudioArcLoaderFiii,
|
||||
(void*)beginBNKList__17JAUAudioArcLoaderFUlUl,
|
||||
(void*)endBNKList__17JAUAudioArcLoaderFv,
|
||||
(void*)readCommandMore__22JAUAudioArcInterpreterFUl,
|
||||
/* padding */
|
||||
NULL,
|
||||
};
|
||||
|
||||
/* 802A4740-802A478C 29F080 004C+00 0/0 1/1 0/0 .text __ct__17JAUAudioArcLoaderFP10JAUSection */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm JAUAudioArcLoader::JAUAudioArcLoader(JAUSection* param_0) {
|
||||
nofralloc
|
||||
#include "asm/JSystem/JAudio2/JAUAudioArcLoader/__ct__17JAUAudioArcLoaderFP10JAUSection.s"
|
||||
JAUAudioArcLoader::JAUAudioArcLoader(JAUSection* section) {
|
||||
//JUT_ASSERT("JAUAudioArcLoader.cpp",0xd, section->isOpen());
|
||||
//JUT_ASSERT("JAUAudioArcLoader.cpp",0xe, section->isBuilding());
|
||||
mSection = section;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 802A478C-802A47AC 29F0CC 0020+00 0/0 1/1 0/0 .text load__17JAUAudioArcLoaderFPCv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void JAUAudioArcLoader::load(void const* param_0) {
|
||||
nofralloc
|
||||
#include "asm/JSystem/JAudio2/JAUAudioArcLoader/load__17JAUAudioArcLoaderFPCv.s"
|
||||
bool JAUAudioArcLoader::load(void const* param_0) {
|
||||
return parse(param_0);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 802A47AC-802A4804 29F0EC 0058+00 1/0 1/0 0/0 .text readWS__17JAUAudioArcLoaderFUlPCvUl
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void JAUAudioArcLoader::readWS(u32 param_0, void const* param_1, u32 param_2) {
|
||||
nofralloc
|
||||
#include "asm/JSystem/JAudio2/JAUAudioArcLoader/readWS__17JAUAudioArcLoaderFUlPCvUl.s"
|
||||
void JAUAudioArcLoader::readWS(u32 param_0, void const* param_1, u32 param_2) {
|
||||
mSection->newWaveBank(param_0, param_1);
|
||||
if (param_2) {
|
||||
mSection->loadWaveArc(param_0, param_2);
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 802A4804-802A4834 29F144 0030+00 1/0 1/0 0/0 .text readBNK__17JAUAudioArcLoaderFUlPCv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void JAUAudioArcLoader::readBNK(u32 param_0, void const* param_1) {
|
||||
nofralloc
|
||||
#include "asm/JSystem/JAudio2/JAUAudioArcLoader/readBNK__17JAUAudioArcLoaderFUlPCv.s"
|
||||
void JAUAudioArcLoader::readBNK(u32 param_0, void const* param_1) {
|
||||
mSection->newBank(param_1, param_0);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 802A4834-802A4858 29F174 0024+00 1/0 1/0 0/0 .text readBSC__17JAUAudioArcLoaderFPCvUl
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void JAUAudioArcLoader::readBSC(void const* param_0, u32 param_1) {
|
||||
nofralloc
|
||||
#include "asm/JSystem/JAudio2/JAUAudioArcLoader/readBSC__17JAUAudioArcLoaderFPCvUl.s"
|
||||
void JAUAudioArcLoader::readBSC(void const* param_0, u32 param_1) {
|
||||
mSection->newSeSeqCollection(param_0, param_1);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 802A4858-802A4880 29F198 0028+00 1/0 1/0 0/0 .text readBST__17JAUAudioArcLoaderFPCvUl
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void JAUAudioArcLoader::readBST(void const* param_0, u32 param_1) {
|
||||
nofralloc
|
||||
#include "asm/JSystem/JAudio2/JAUAudioArcLoader/readBST__17JAUAudioArcLoaderFPCvUl.s"
|
||||
void JAUAudioArcLoader::readBST(void const* param_0, u32 param_1) {
|
||||
mSection->newSoundTable(param_0, param_1, true);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 802A4880-802A48A8 29F1C0 0028+00 1/0 0/0 0/0 .text readBSTN__17JAUAudioArcLoaderFPCvUl
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void JAUAudioArcLoader::readBSTN(void const* param_0, u32 param_1) {
|
||||
nofralloc
|
||||
#include "asm/JSystem/JAudio2/JAUAudioArcLoader/readBSTN__17JAUAudioArcLoaderFPCvUl.s"
|
||||
void JAUAudioArcLoader::readBSTN(void const* param_0, u32 param_1) {
|
||||
mSection->newSoundNameTable(param_0, param_1, true);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 802A48A8-802A48D4 29F1E8 002C+00 1/0 1/0 0/0 .text readBMS__17JAUAudioArcLoaderFUlPCvUl */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void JAUAudioArcLoader::readBMS(u32 param_0, void const* param_1, u32 param_2) {
|
||||
nofralloc
|
||||
#include "asm/JSystem/JAudio2/JAUAudioArcLoader/readBMS__17JAUAudioArcLoaderFUlPCvUl.s"
|
||||
void JAUAudioArcLoader::readBMS(u32 param_0, void const* param_1, u32 param_2) {
|
||||
mSection->newStaticSeqData(param_0, param_1, param_2);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 802A48D4-802A4900 29F214 002C+00 1/0 1/0 0/0 .text readBMS_fromArchive__17JAUAudioArcLoaderFUl
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void JAUAudioArcLoader::readBMS_fromArchive(u32 param_0) {
|
||||
nofralloc
|
||||
#include "asm/JSystem/JAudio2/JAUAudioArcLoader/readBMS_fromArchive__17JAUAudioArcLoaderFUl.s"
|
||||
void JAUAudioArcLoader::readBMS_fromArchive(u32 param_0) {
|
||||
mSection->newStaticSeqData(param_0);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 802A4900-802A4930 29F240 0030+00 1/0 1/0 0/0 .text newVoiceBank__17JAUAudioArcLoaderFUlUl */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void JAUAudioArcLoader::newVoiceBank(u32 param_0, u32 param_1) {
|
||||
nofralloc
|
||||
#include "asm/JSystem/JAudio2/JAUAudioArcLoader/newVoiceBank__17JAUAudioArcLoaderFUlUl.s"
|
||||
void JAUAudioArcLoader::newVoiceBank(u32 param_0, u32 param_1) {
|
||||
mSection->newVoiceBank(param_1, param_0);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 802A4930-802A4968 29F270 0038+00 1/0 1/0 0/0 .text newDynamicSeqBlock__17JAUAudioArcLoaderFUl
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void JAUAudioArcLoader::newDynamicSeqBlock(u32 param_0) {
|
||||
nofralloc
|
||||
#include "asm/JSystem/JAudio2/JAUAudioArcLoader/newDynamicSeqBlock__17JAUAudioArcLoaderFUl.s"
|
||||
void JAUAudioArcLoader::newDynamicSeqBlock(u32 param_0) {
|
||||
JAUSectionHeap* sectionHeap = mSection->asSectionHeap();
|
||||
JUT_ASSERT("JAUAudioArcLoader.cpp", 0x48, sectionHeap);
|
||||
sectionHeap->newDynamicSeqBlock(param_0);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 802A4968-802A4990 29F2A8 0028+00 1/0 1/0 0/0 .text readBSFT__17JAUAudioArcLoaderFPCv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void JAUAudioArcLoader::readBSFT(void const* param_0) {
|
||||
nofralloc
|
||||
#include "asm/JSystem/JAudio2/JAUAudioArcLoader/readBSFT__17JAUAudioArcLoaderFPCv.s"
|
||||
void JAUAudioArcLoader::readBSFT(void const* param_0) {
|
||||
mSection->newStreamFileTable(param_0, true);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 802A4990-802A49B4 29F2D0 0024+00 1/0 1/0 0/0 .text beginBNKList__17JAUAudioArcLoaderFUlUl */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void JAUAudioArcLoader::beginBNKList(u32 param_0, u32 param_1) {
|
||||
nofralloc
|
||||
#include "asm/JSystem/JAudio2/JAUAudioArcLoader/beginBNKList__17JAUAudioArcLoaderFUlUl.s"
|
||||
void JAUAudioArcLoader::beginBNKList(u32 param_0, u32 param_1) {
|
||||
mSection->beginNewBankTable(param_0, param_1);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 802A49B4-802A49D8 29F2F4 0024+00 1/0 1/0 0/0 .text endBNKList__17JAUAudioArcLoaderFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void JAUAudioArcLoader::endBNKList() {
|
||||
nofralloc
|
||||
#include "asm/JSystem/JAudio2/JAUAudioArcLoader/endBNKList__17JAUAudioArcLoaderFv.s"
|
||||
void JAUAudioArcLoader::endBNKList() {
|
||||
mSection->endNewBankTable();
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 802A49D8-802A49FC 29F318 0024+00 1/0 1/0 0/0 .text readMaxSeCategory__17JAUAudioArcLoaderFiii
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void JAUAudioArcLoader::readMaxSeCategory(int param_0, int param_1, int param_2) {
|
||||
nofralloc
|
||||
#include "asm/JSystem/JAudio2/JAUAudioArcLoader/readMaxSeCategory__17JAUAudioArcLoaderFiii.s"
|
||||
void JAUAudioArcLoader::readMaxSeCategory(int param_0, int param_1, int param_2) {
|
||||
JAISeMgr* seMgr = JASGlobalInstance<JAISeMgr>::getInstance();
|
||||
if (seMgr) {
|
||||
seMgr->getCategory(param_0)->setMaxActiveSe(param_1);
|
||||
seMgr->getCategory(param_0)->setMaxInactiveSe(param_2);
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 802A49FC-802A4A5C 29F33C 0060+00 1/0 0/0 0/0 .text __dt__17JAUAudioArcLoaderFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm JAUAudioArcLoader::~JAUAudioArcLoader() {
|
||||
nofralloc
|
||||
#include "asm/JSystem/JAudio2/JAUAudioArcLoader/__dt__17JAUAudioArcLoaderFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
JAUAudioArcLoader::~JAUAudioArcLoader() {}
|
||||
|
|
|
|||
|
|
@ -11,35 +11,6 @@
|
|||
// Types:
|
||||
//
|
||||
|
||||
namespace std {
|
||||
template <typename A1>
|
||||
struct __bitset_base {};
|
||||
/* __bitset_base<8> */
|
||||
struct __bitset_base__template0 {
|
||||
/* 802A65D4 */ void func_802A65D4(void* _this, u32, bool);
|
||||
/* 802A6614 */ void func_802A6614(void* _this, u32);
|
||||
/* 802A6634 */ void func_802A6634(void* _this, u32) /* const */;
|
||||
/* 802A665C */ void func_802A665C(void* _this);
|
||||
};
|
||||
|
||||
}; // namespace std
|
||||
|
||||
struct JSUPtrLink {
|
||||
/* 802DBDFC */ JSUPtrLink(void*);
|
||||
/* 802DBE14 */ ~JSUPtrLink();
|
||||
};
|
||||
|
||||
struct JSUPtrList {
|
||||
/* 802DBEAC */ ~JSUPtrList();
|
||||
/* 802DBF14 */ void initiate();
|
||||
/* 802DBF4C */ void append(JSUPtrLink*);
|
||||
};
|
||||
|
||||
template <typename A0>
|
||||
struct JSULink {};
|
||||
/* JSULink<JAUBankTable> */
|
||||
struct JSULink__template0 {};
|
||||
|
||||
struct JKRHeap {
|
||||
/* 802CE438 */ void becomeCurrentHeap();
|
||||
/* 802CE5F8 */ void freeTail();
|
||||
|
|
@ -50,11 +21,6 @@ struct JKRSolidHeap {
|
|||
/* 802D0A24 */ void create(u32, JKRHeap*, bool);
|
||||
};
|
||||
|
||||
struct JKRDisposer {
|
||||
/* 802D147C */ JKRDisposer();
|
||||
/* 802D14E4 */ ~JKRDisposer();
|
||||
};
|
||||
|
||||
struct JKRArchive {};
|
||||
|
||||
struct JAUStreamFileTable {
|
||||
|
|
@ -76,80 +42,10 @@ struct JAUSeqDataMgr_SeqCollection {
|
|||
/* 802A677C */ JAUSeqDataMgr_SeqCollection();
|
||||
};
|
||||
|
||||
struct JAUSeqDataBlock {
|
||||
/* 802A68F4 */ JAUSeqDataBlock();
|
||||
};
|
||||
|
||||
struct JAUSeqCollection {
|
||||
/* 802A66AC */ void init(void const*);
|
||||
};
|
||||
|
||||
struct JAISeqDataUser {};
|
||||
|
||||
struct JAISeqData {};
|
||||
|
||||
struct JAISoundID {};
|
||||
|
||||
struct JAUSectionHeap {
|
||||
struct TSectionHeapData {
|
||||
/* 802A5DF4 */ TSectionHeapData();
|
||||
};
|
||||
|
||||
/* 802A5E60 */ void setSeqDataArchive(JKRArchive*);
|
||||
/* 802A5EC0 */ void loadDynamicSeq(JAISoundID, bool);
|
||||
/* 802A5EF8 */ void releaseIdleDynamicSeqDataBlock();
|
||||
/* 802A5FE0 */ JAUSectionHeap(JKRSolidHeap*, bool, s32);
|
||||
/* 802A6094 */ void getOpenSection();
|
||||
/* 802A60A0 */ void setSeqDataUser(JAISeqDataUser*);
|
||||
/* 802A60AC */ void newDynamicSeqBlock(u32);
|
||||
/* 802A61D0 */ void getSeqData(JAISoundID, JAISeqData*);
|
||||
/* 802A6270 */ bool releaseSeqData();
|
||||
/* 802A6278 */ ~JAUSectionHeap();
|
||||
};
|
||||
|
||||
struct JAUSection {
|
||||
struct TSectionData {
|
||||
/* 802A4EE8 */ TSectionData();
|
||||
/* 802A4F68 */ void resetRegisteredBankTables();
|
||||
/* 802A4FE4 */ void resetRegisteredWaveBankTables();
|
||||
};
|
||||
|
||||
/* 802A5060 */ JAUSection(JAUSectionHeap*, u32, s32);
|
||||
/* 802A50F8 */ void finishBuild();
|
||||
/* 802A5160 */ void dispose();
|
||||
/* 802A51E4 */ void newSoundTable(void const*, u32, bool);
|
||||
/* 802A52A0 */ void newSoundNameTable(void const*, u32, bool);
|
||||
/* 802A535C */ void newStreamFileTable(void const*, bool);
|
||||
/* 802A5500 */ void newSeSeqCollection(void const*, u32);
|
||||
/* 802A5598 */ void newStaticSeqDataBlock_(JAISoundID, u32);
|
||||
/* 802A56C8 */ void newStaticSeqData(JAISoundID, void const*, u32);
|
||||
/* 802A5730 */ void newStaticSeqData(JAISoundID);
|
||||
/* 802A57F0 */ void newCopy(void const*, u32, s32);
|
||||
/* 802A5854 */ void newWaveBank(u32, void const*);
|
||||
/* 802A5948 */ void loadWaveArc(u32, u32);
|
||||
/* 802A5A50 */ void newBank(void const*, u32);
|
||||
/* 802A5B84 */ void newVoiceBank(u32, u32);
|
||||
/* 802A5CAC */ void beginNewBankTable(u32, u32);
|
||||
/* 802A5D9C */ void endNewBankTable();
|
||||
/* 802A6468 */ ~JAUSection();
|
||||
};
|
||||
|
||||
struct JAUDynamicSeqDataBlocks {
|
||||
/* 802A6A58 */ JAUDynamicSeqDataBlocks();
|
||||
/* 802A6AA8 */ void getSeqData(JAISoundID, JAISeqDataUser*, JAISeqData*, bool);
|
||||
/* 802A6B8C */ void appendDynamicSeqDataBlock(JAUSeqDataBlock*);
|
||||
/* 802A6C18 */ void loadDynamicSeq(JAISoundID, bool, JAISeqDataUser*);
|
||||
/* 802A6D48 */ void releaseIdleDynamicSeqDataBlock(JAISeqDataUser*);
|
||||
};
|
||||
|
||||
struct JAUBankTable {
|
||||
/* 802A4AA0 */ void getBank(u32) const;
|
||||
};
|
||||
|
||||
struct JAUBankTableDictionary {
|
||||
/* 802A4A80 */ void appendBankTable(JSULink<JAUBankTable>*);
|
||||
};
|
||||
|
||||
struct JASHeap {};
|
||||
|
||||
struct JASWaveArc {
|
||||
|
|
@ -172,10 +68,6 @@ struct JAIStreamDataMgr {
|
|||
/* 802A3AD8 */ ~JAIStreamDataMgr();
|
||||
};
|
||||
|
||||
struct JAISeqDataMgr {
|
||||
/* 802A17BC */ ~JAISeqDataMgr();
|
||||
};
|
||||
|
||||
//
|
||||
// Forward References:
|
||||
//
|
||||
|
|
@ -625,7 +517,7 @@ asm void JAUSectionHeap::releaseIdleDynamicSeqDataBlock() {
|
|||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void JAUNewSectionHeap(JKRSolidHeap* param_0, bool param_1) {
|
||||
static asm JAUSectionHeap* JAUNewSectionHeap(JKRSolidHeap* param_0, bool param_1) {
|
||||
nofralloc
|
||||
#include "asm/JSystem/JAudio2/JAUSectionHeap/JAUNewSectionHeap__FP12JKRSolidHeapb.s"
|
||||
}
|
||||
|
|
@ -635,7 +527,7 @@ static asm void JAUNewSectionHeap(JKRSolidHeap* param_0, bool param_1) {
|
|||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void JAUNewSectionHeap(bool param_0) {
|
||||
asm JAUSectionHeap* JAUNewSectionHeap(bool param_0) {
|
||||
nofralloc
|
||||
#include "asm/JSystem/JAudio2/JAUSectionHeap/JAUNewSectionHeap__Fb.s"
|
||||
}
|
||||
|
|
@ -656,7 +548,7 @@ asm JAUSectionHeap::JAUSectionHeap(JKRSolidHeap* param_0, bool param_1, s32 para
|
|||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void JAUSectionHeap::getOpenSection() {
|
||||
asm JAUSection* JAUSectionHeap::getOpenSection() {
|
||||
nofralloc
|
||||
#include "asm/JSystem/JAudio2/JAUSectionHeap/getOpenSection__14JAUSectionHeapFv.s"
|
||||
}
|
||||
|
|
@ -688,7 +580,7 @@ asm void JAUSectionHeap::newDynamicSeqBlock(u32 param_0) {
|
|||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void JAUSectionHeap::getSeqData(JAISoundID param_0, JAISeqData* param_1) {
|
||||
asm int JAUSectionHeap::getSeqData(JAISoundID param_0, JAISeqData* param_1) {
|
||||
nofralloc
|
||||
#include "asm/JSystem/JAudio2/JAUSectionHeap/getSeqData__14JAUSectionHeapF10JAISoundIDP10JAISeqData.s"
|
||||
}
|
||||
|
|
@ -696,8 +588,8 @@ asm void JAUSectionHeap::getSeqData(JAISoundID param_0, JAISeqData* param_1) {
|
|||
|
||||
/* 802A6270-802A6278 2A0BB0 0008+00 2/1 0/0 0/0 .text releaseSeqData__14JAUSectionHeapFv
|
||||
*/
|
||||
bool JAUSectionHeap::releaseSeqData() {
|
||||
return false;
|
||||
int JAUSectionHeap::releaseSeqData() {
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* 802A6278-802A6440 2A0BB8 01C8+00 2/1 0/0 0/0 .text __dt__14JAUSectionHeapFv */
|
||||
|
|
|
|||
|
|
@ -10,52 +10,12 @@
|
|||
// Types:
|
||||
//
|
||||
|
||||
struct JSUPtrLink {
|
||||
/* 802DBDFC */ JSUPtrLink(void*);
|
||||
};
|
||||
|
||||
struct JSUPtrList {
|
||||
/* 802DBF14 */ void initiate();
|
||||
/* 802DBF4C */ void append(JSUPtrLink*);
|
||||
/* 802DC15C */ void remove(JSUPtrLink*);
|
||||
};
|
||||
|
||||
template <typename A0>
|
||||
struct JSULink {};
|
||||
/* JSULink<JAUSeqDataBlock> */
|
||||
struct JSULink__template1 {};
|
||||
|
||||
struct JKRArchive {};
|
||||
|
||||
struct JAISoundID {};
|
||||
|
||||
struct JAUSeqDataBlock {
|
||||
/* 802A68F4 */ JAUSeqDataBlock();
|
||||
};
|
||||
|
||||
struct JAUSeqDataBlocks {
|
||||
/* 802A6928 */ void getSeqData(JAISoundID);
|
||||
/* 802A6974 */ void seekFreeBlock(u32);
|
||||
/* 802A69D8 */ void append(JSULink<JAUSeqDataBlock>*);
|
||||
/* 802A69F8 */ void remove(JSULink<JAUSeqDataBlock>*);
|
||||
/* 802A6A18 */ void hasFailedBlock(JAISoundID);
|
||||
};
|
||||
|
||||
struct JAISeqDataUser {};
|
||||
|
||||
struct JAISeqData {};
|
||||
|
||||
struct JAUDynamicSeqDataBlocks {
|
||||
/* 802A6A58 */ JAUDynamicSeqDataBlocks();
|
||||
/* 802A6AA0 */ void setSeqDataArchive(JKRArchive*);
|
||||
/* 802A6AA8 */ void getSeqData(JAISoundID, JAISeqDataUser*, JAISeqData*, bool);
|
||||
/* 802A6B8C */ void appendDynamicSeqDataBlock(JAUSeqDataBlock*);
|
||||
/* 802A6C18 */ void loadDynamicSeq(JAISoundID, bool, JAISeqDataUser*);
|
||||
/* 802A6D48 */ void releaseIdleDynamicSeqDataBlock(JAISeqDataUser*);
|
||||
/* 802A6E00 */ void releaseIdleDynamicSeqDataBlock_(JAISeqDataUser*, u32);
|
||||
/* 802A6EDC */ void rearrangeLoadingSeqs_();
|
||||
};
|
||||
|
||||
struct JASResArcLoader {
|
||||
/* 80290BD0 */ void getResSize(JKRArchive const*, u16);
|
||||
/* 80290D18 */ void loadResourceAsync(JKRArchive*, u16, u8*, u32, void (*)(u32, u32), u32);
|
||||
|
|
|
|||
|
|
@ -28,26 +28,6 @@ struct JAUSectionHeap {
|
|||
/* 802A6094 */ void getOpenSection();
|
||||
};
|
||||
|
||||
struct JAUAudioArcLoader {
|
||||
/* 802A4740 */ JAUAudioArcLoader(JAUSection*);
|
||||
/* 802A47AC */ void readWS(u32, void const*, u32);
|
||||
/* 802A4804 */ void readBNK(u32, void const*);
|
||||
/* 802A4834 */ void readBSC(void const*, u32);
|
||||
/* 802A4858 */ void readBST(void const*, u32);
|
||||
/* 802A48A8 */ void readBMS(u32, void const*, u32);
|
||||
/* 802A48D4 */ void readBMS_fromArchive(u32);
|
||||
/* 802A4900 */ void newVoiceBank(u32, u32);
|
||||
/* 802A4930 */ void newDynamicSeqBlock(u32);
|
||||
/* 802A4968 */ void readBSFT(void const*);
|
||||
/* 802A4990 */ void beginBNKList(u32, u32);
|
||||
/* 802A49B4 */ void endBNKList();
|
||||
/* 802A49D8 */ void readMaxSeCategory(int, int, int);
|
||||
};
|
||||
|
||||
struct JAUAudioArcInterpreter {
|
||||
/* 802A4260 */ ~JAUAudioArcInterpreter();
|
||||
};
|
||||
|
||||
//
|
||||
// Forward References:
|
||||
//
|
||||
|
|
|
|||
Loading…
Reference in New Issue