mirror of https://github.com/zeldaret/tp.git
JAUSectionHeap, Z2SoundInfo, others (#1925)
* Z2SoundInfo * JAUSectionHeap * Z2EnvSeMgr * Z2AudioMgr * m_Do_audio * d_a_alink
This commit is contained in:
parent
f834379a8b
commit
287ae62349
|
@ -1,32 +0,0 @@
|
||||||
lbl_802A5F24:
|
|
||||||
/* 802A5F24 94 21 FF E0 */ stwu r1, -0x20(r1)
|
|
||||||
/* 802A5F28 7C 08 02 A6 */ mflr r0
|
|
||||||
/* 802A5F2C 90 01 00 24 */ stw r0, 0x24(r1)
|
|
||||||
/* 802A5F30 39 61 00 20 */ addi r11, r1, 0x20
|
|
||||||
/* 802A5F34 48 0B C2 A5 */ bl _savegpr_28
|
|
||||||
/* 802A5F38 7C 7C 1B 78 */ mr r28, r3
|
|
||||||
/* 802A5F3C 7C 9D 23 78 */ mr r29, r4
|
|
||||||
/* 802A5F40 48 02 84 F9 */ bl becomeCurrentHeap__7JKRHeapFv
|
|
||||||
/* 802A5F44 90 61 00 08 */ stw r3, 8(r1)
|
|
||||||
/* 802A5F48 7F 83 E3 78 */ mr r3, r28
|
|
||||||
/* 802A5F4C 48 02 87 E1 */ bl getFreeSize__7JKRHeapFv
|
|
||||||
/* 802A5F50 7C 7E 1B 78 */ mr r30, r3
|
|
||||||
/* 802A5F54 38 60 05 34 */ li r3, 0x534
|
|
||||||
/* 802A5F58 48 02 8C F5 */ bl __nw__FUl
|
|
||||||
/* 802A5F5C 7C 7F 1B 79 */ or. r31, r3, r3
|
|
||||||
/* 802A5F60 41 82 00 18 */ beq lbl_802A5F78
|
|
||||||
/* 802A5F64 7F 84 E3 78 */ mr r4, r28
|
|
||||||
/* 802A5F68 7F A5 EB 78 */ mr r5, r29
|
|
||||||
/* 802A5F6C 7F C6 F3 78 */ mr r6, r30
|
|
||||||
/* 802A5F70 48 00 00 71 */ bl __ct__14JAUSectionHeapFP12JKRSolidHeapbl
|
|
||||||
/* 802A5F74 7C 7F 1B 78 */ mr r31, r3
|
|
||||||
lbl_802A5F78:
|
|
||||||
/* 802A5F78 80 61 00 08 */ lwz r3, 8(r1)
|
|
||||||
/* 802A5F7C 48 02 84 BD */ bl becomeCurrentHeap__7JKRHeapFv
|
|
||||||
/* 802A5F80 7F E3 FB 78 */ mr r3, r31
|
|
||||||
/* 802A5F84 39 61 00 20 */ addi r11, r1, 0x20
|
|
||||||
/* 802A5F88 48 0B C2 9D */ bl _restgpr_28
|
|
||||||
/* 802A5F8C 80 01 00 24 */ lwz r0, 0x24(r1)
|
|
||||||
/* 802A5F90 7C 08 03 A6 */ mtlr r0
|
|
||||||
/* 802A5F94 38 21 00 20 */ addi r1, r1, 0x20
|
|
||||||
/* 802A5F98 4E 80 00 20 */ blr
|
|
|
@ -1,18 +0,0 @@
|
||||||
lbl_802A5F9C:
|
|
||||||
/* 802A5F9C 94 21 FF F0 */ stwu r1, -0x10(r1)
|
|
||||||
/* 802A5FA0 7C 08 02 A6 */ mflr r0
|
|
||||||
/* 802A5FA4 90 01 00 14 */ stw r0, 0x14(r1)
|
|
||||||
/* 802A5FA8 93 E1 00 0C */ stw r31, 0xc(r1)
|
|
||||||
/* 802A5FAC 7C 7F 1B 78 */ mr r31, r3
|
|
||||||
/* 802A5FB0 80 6D 8C 90 */ lwz r3, JASDram(r13)
|
|
||||||
/* 802A5FB4 48 02 87 79 */ bl getFreeSize__7JKRHeapFv
|
|
||||||
/* 802A5FB8 80 8D 8C 90 */ lwz r4, JASDram(r13)
|
|
||||||
/* 802A5FBC 38 A0 00 01 */ li r5, 1
|
|
||||||
/* 802A5FC0 48 02 AA 65 */ bl create__12JKRSolidHeapFUlP7JKRHeapb
|
|
||||||
/* 802A5FC4 7F E4 FB 78 */ mr r4, r31
|
|
||||||
/* 802A5FC8 4B FF FF 5D */ bl JAUNewSectionHeap__FP12JKRSolidHeapb
|
|
||||||
/* 802A5FCC 83 E1 00 0C */ lwz r31, 0xc(r1)
|
|
||||||
/* 802A5FD0 80 01 00 14 */ lwz r0, 0x14(r1)
|
|
||||||
/* 802A5FD4 7C 08 03 A6 */ mtlr r0
|
|
||||||
/* 802A5FD8 38 21 00 10 */ addi r1, r1, 0x10
|
|
||||||
/* 802A5FDC 4E 80 00 20 */ blr
|
|
|
@ -1,28 +0,0 @@
|
||||||
lbl_802A5DF4:
|
|
||||||
/* 802A5DF4 94 21 FF F0 */ stwu r1, -0x10(r1)
|
|
||||||
/* 802A5DF8 7C 08 02 A6 */ mflr r0
|
|
||||||
/* 802A5DFC 90 01 00 14 */ stw r0, 0x14(r1)
|
|
||||||
/* 802A5E00 93 E1 00 0C */ stw r31, 0xc(r1)
|
|
||||||
/* 802A5E04 7C 7F 1B 78 */ mr r31, r3
|
|
||||||
/* 802A5E08 38 1F 00 08 */ addi r0, r31, 8
|
|
||||||
/* 802A5E0C 90 03 00 00 */ stw r0, 0(r3)
|
|
||||||
/* 802A5E10 38 00 00 FF */ li r0, 0xff
|
|
||||||
/* 802A5E14 90 03 00 04 */ stw r0, 4(r3)
|
|
||||||
/* 802A5E18 80 63 00 00 */ lwz r3, 0(r3)
|
|
||||||
/* 802A5E1C 38 80 00 00 */ li r4, 0
|
|
||||||
/* 802A5E20 38 A0 03 FC */ li r5, 0x3fc
|
|
||||||
/* 802A5E24 4B D5 D6 35 */ bl memset
|
|
||||||
/* 802A5E28 38 7F 04 08 */ addi r3, r31, 0x408
|
|
||||||
/* 802A5E2C 48 00 0C 2D */ bl __ct__23JAUDynamicSeqDataBlocksFv
|
|
||||||
/* 802A5E30 38 00 00 00 */ li r0, 0
|
|
||||||
/* 802A5E34 90 1F 04 30 */ stw r0, 0x430(r31)
|
|
||||||
/* 802A5E38 90 1F 04 34 */ stw r0, 0x434(r31)
|
|
||||||
/* 802A5E3C 90 1F 04 38 */ stw r0, 0x438(r31)
|
|
||||||
/* 802A5E40 90 1F 04 3C */ stw r0, 0x43c(r31)
|
|
||||||
/* 802A5E44 90 1F 04 04 */ stw r0, 0x404(r31)
|
|
||||||
/* 802A5E48 7F E3 FB 78 */ mr r3, r31
|
|
||||||
/* 802A5E4C 83 E1 00 0C */ lwz r31, 0xc(r1)
|
|
||||||
/* 802A5E50 80 01 00 14 */ lwz r0, 0x14(r1)
|
|
||||||
/* 802A5E54 7C 08 03 A6 */ mtlr r0
|
|
||||||
/* 802A5E58 38 21 00 10 */ addi r1, r1, 0x10
|
|
||||||
/* 802A5E5C 4E 80 00 20 */ blr
|
|
|
@ -1,37 +0,0 @@
|
||||||
lbl_802A5160:
|
|
||||||
/* 802A5160 80 03 00 BC */ lwz r0, 0xbc(r3)
|
|
||||||
/* 802A5164 28 00 00 00 */ cmplwi r0, 0
|
|
||||||
/* 802A5168 41 82 00 38 */ beq lbl_802A51A0
|
|
||||||
/* 802A516C 80 83 00 30 */ lwz r4, 0x30(r3)
|
|
||||||
/* 802A5170 80 84 05 2C */ lwz r4, 0x52c(r4)
|
|
||||||
/* 802A5174 28 04 00 00 */ cmplwi r4, 0
|
|
||||||
/* 802A5178 41 82 00 1C */ beq lbl_802A5194
|
|
||||||
/* 802A517C 41 82 00 18 */ beq lbl_802A5194
|
|
||||||
/* 802A5180 80 0D 85 D8 */ lwz r0, __OSReport_disable-0x40(r13)
|
|
||||||
/* 802A5184 7C 00 20 40 */ cmplw r0, r4
|
|
||||||
/* 802A5188 40 82 00 0C */ bne lbl_802A5194
|
|
||||||
/* 802A518C 38 00 00 00 */ li r0, 0
|
|
||||||
/* 802A5190 90 0D 85 D8 */ stw r0, __OSReport_disable-0x40(r13)
|
|
||||||
lbl_802A5194:
|
|
||||||
/* 802A5194 38 00 00 00 */ li r0, 0
|
|
||||||
/* 802A5198 80 83 00 30 */ lwz r4, 0x30(r3)
|
|
||||||
/* 802A519C 90 04 05 2C */ stw r0, 0x52c(r4)
|
|
||||||
lbl_802A51A0:
|
|
||||||
/* 802A51A0 80 03 00 C0 */ lwz r0, 0xc0(r3)
|
|
||||||
/* 802A51A4 28 00 00 00 */ cmplwi r0, 0
|
|
||||||
/* 802A51A8 4D 82 00 20 */ beqlr
|
|
||||||
/* 802A51AC 80 83 00 30 */ lwz r4, 0x30(r3)
|
|
||||||
/* 802A51B0 80 84 05 30 */ lwz r4, 0x530(r4)
|
|
||||||
/* 802A51B4 28 04 00 00 */ cmplwi r4, 0
|
|
||||||
/* 802A51B8 41 82 00 1C */ beq lbl_802A51D4
|
|
||||||
/* 802A51BC 41 82 00 18 */ beq lbl_802A51D4
|
|
||||||
/* 802A51C0 80 0D 85 D4 */ lwz r0, __OSReport_disable-0x44(r13)
|
|
||||||
/* 802A51C4 7C 00 20 40 */ cmplw r0, r4
|
|
||||||
/* 802A51C8 40 82 00 0C */ bne lbl_802A51D4
|
|
||||||
/* 802A51CC 38 00 00 00 */ li r0, 0
|
|
||||||
/* 802A51D0 90 0D 85 D4 */ stw r0, __OSReport_disable-0x44(r13)
|
|
||||||
lbl_802A51D4:
|
|
||||||
/* 802A51D4 38 00 00 00 */ li r0, 0
|
|
||||||
/* 802A51D8 80 63 00 30 */ lwz r3, 0x30(r3)
|
|
||||||
/* 802A51DC 90 03 05 30 */ stw r0, 0x530(r3)
|
|
||||||
/* 802A51E0 4E 80 00 20 */ blr
|
|
|
@ -1,24 +0,0 @@
|
||||||
lbl_802A5D9C:
|
|
||||||
/* 802A5D9C 94 21 FF F0 */ stwu r1, -0x10(r1)
|
|
||||||
/* 802A5DA0 7C 08 02 A6 */ mflr r0
|
|
||||||
/* 802A5DA4 90 01 00 14 */ stw r0, 0x14(r1)
|
|
||||||
/* 802A5DA8 93 E1 00 0C */ stw r31, 0xc(r1)
|
|
||||||
/* 802A5DAC 7C 7F 1B 78 */ mr r31, r3
|
|
||||||
/* 802A5DB0 38 60 00 00 */ li r3, 0
|
|
||||||
/* 802A5DB4 80 9F 00 34 */ lwz r4, 0x34(r31)
|
|
||||||
/* 802A5DB8 28 04 00 00 */ cmplwi r4, 0
|
|
||||||
/* 802A5DBC 41 82 00 24 */ beq lbl_802A5DE0
|
|
||||||
/* 802A5DC0 38 7F 00 AC */ addi r3, r31, 0xac
|
|
||||||
/* 802A5DC4 4B FF EC BD */ bl func_802A4A80
|
|
||||||
/* 802A5DC8 38 00 00 00 */ li r0, 0
|
|
||||||
/* 802A5DCC 90 1F 00 34 */ stw r0, 0x34(r31)
|
|
||||||
/* 802A5DD0 80 7F 00 34 */ lwz r3, 0x34(r31)
|
|
||||||
/* 802A5DD4 28 03 00 00 */ cmplwi r3, 0
|
|
||||||
/* 802A5DD8 41 82 00 08 */ beq lbl_802A5DE0
|
|
||||||
/* 802A5DDC 38 63 00 10 */ addi r3, r3, 0x10
|
|
||||||
lbl_802A5DE0:
|
|
||||||
/* 802A5DE0 83 E1 00 0C */ lwz r31, 0xc(r1)
|
|
||||||
/* 802A5DE4 80 01 00 14 */ lwz r0, 0x14(r1)
|
|
||||||
/* 802A5DE8 7C 08 03 A6 */ mtlr r0
|
|
||||||
/* 802A5DEC 38 21 00 10 */ addi r1, r1, 0x10
|
|
||||||
/* 802A5DF0 4E 80 00 20 */ blr
|
|
|
@ -1,27 +0,0 @@
|
||||||
lbl_802A50F8:
|
|
||||||
/* 802A50F8 94 21 FF E0 */ stwu r1, -0x20(r1)
|
|
||||||
/* 802A50FC 7C 08 02 A6 */ mflr r0
|
|
||||||
/* 802A5100 90 01 00 24 */ stw r0, 0x24(r1)
|
|
||||||
/* 802A5104 93 E1 00 1C */ stw r31, 0x1c(r1)
|
|
||||||
/* 802A5108 7C 7F 1B 78 */ mr r31, r3
|
|
||||||
/* 802A510C 80 63 00 30 */ lwz r3, 0x30(r3)
|
|
||||||
/* 802A5110 80 63 00 E0 */ lwz r3, 0xe0(r3)
|
|
||||||
/* 802A5114 48 02 93 25 */ bl becomeCurrentHeap__7JKRHeapFv
|
|
||||||
/* 802A5118 90 61 00 08 */ stw r3, 8(r1)
|
|
||||||
/* 802A511C 48 02 93 1D */ bl becomeCurrentHeap__7JKRHeapFv
|
|
||||||
/* 802A5120 80 7F 00 30 */ lwz r3, 0x30(r31)
|
|
||||||
/* 802A5124 80 63 00 E0 */ lwz r3, 0xe0(r3)
|
|
||||||
/* 802A5128 48 02 96 05 */ bl getFreeSize__7JKRHeapFv
|
|
||||||
/* 802A512C 80 1F 00 D0 */ lwz r0, 0xd0(r31)
|
|
||||||
/* 802A5130 7C 03 00 50 */ subf r0, r3, r0
|
|
||||||
/* 802A5134 90 1F 00 D0 */ stw r0, 0xd0(r31)
|
|
||||||
/* 802A5138 80 7F 00 30 */ lwz r3, 0x30(r31)
|
|
||||||
/* 802A513C 80 63 00 E0 */ lwz r3, 0xe0(r3)
|
|
||||||
/* 802A5140 48 02 94 B9 */ bl freeTail__7JKRHeapFv
|
|
||||||
/* 802A5144 38 00 00 00 */ li r0, 0
|
|
||||||
/* 802A5148 98 1F 00 2C */ stb r0, 0x2c(r31)
|
|
||||||
/* 802A514C 83 E1 00 1C */ lwz r31, 0x1c(r1)
|
|
||||||
/* 802A5150 80 01 00 24 */ lwz r0, 0x24(r1)
|
|
||||||
/* 802A5154 7C 08 03 A6 */ mtlr r0
|
|
||||||
/* 802A5158 38 21 00 20 */ addi r1, r1, 0x20
|
|
||||||
/* 802A515C 4E 80 00 20 */ blr
|
|
|
@ -1,4 +0,0 @@
|
||||||
lbl_802A6094:
|
|
||||||
/* 802A6094 80 63 00 EC */ lwz r3, 0xec(r3)
|
|
||||||
/* 802A6098 80 63 00 00 */ lwz r3, 0(r3)
|
|
||||||
/* 802A609C 4E 80 00 20 */ blr
|
|
|
@ -1,45 +0,0 @@
|
||||||
lbl_802A61D0:
|
|
||||||
/* 802A61D0 94 21 FF E0 */ stwu r1, -0x20(r1)
|
|
||||||
/* 802A61D4 7C 08 02 A6 */ mflr r0
|
|
||||||
/* 802A61D8 90 01 00 24 */ stw r0, 0x24(r1)
|
|
||||||
/* 802A61DC 39 61 00 20 */ addi r11, r1, 0x20
|
|
||||||
/* 802A61E0 48 0B BF F9 */ bl _savegpr_28
|
|
||||||
/* 802A61E4 7C 7C 1B 78 */ mr r28, r3
|
|
||||||
/* 802A61E8 7C 9D 23 78 */ mr r29, r4
|
|
||||||
/* 802A61EC 7C BE 2B 78 */ mr r30, r5
|
|
||||||
/* 802A61F0 83 E3 00 E8 */ lwz r31, 0xe8(r3)
|
|
||||||
/* 802A61F4 48 00 00 3C */ b lbl_802A6230
|
|
||||||
lbl_802A61F8:
|
|
||||||
/* 802A61F8 80 1D 00 00 */ lwz r0, 0(r29)
|
|
||||||
/* 802A61FC 90 01 00 0C */ stw r0, 0xc(r1)
|
|
||||||
/* 802A6200 80 7F 00 00 */ lwz r3, 0(r31)
|
|
||||||
/* 802A6204 38 63 00 38 */ addi r3, r3, 0x38
|
|
||||||
/* 802A6208 38 81 00 0C */ addi r4, r1, 0xc
|
|
||||||
/* 802A620C 80 BC 04 F8 */ lwz r5, 0x4f8(r28)
|
|
||||||
/* 802A6210 7F C6 F3 78 */ mr r6, r30
|
|
||||||
/* 802A6214 38 E0 00 00 */ li r7, 0
|
|
||||||
/* 802A6218 48 00 08 91 */ bl getSeqData__23JAUDynamicSeqDataBlocksF10JAISoundIDP14JAISeqDataUserP10JAISeqDatab
|
|
||||||
/* 802A621C 2C 03 00 02 */ cmpwi r3, 2
|
|
||||||
/* 802A6220 40 82 00 0C */ bne lbl_802A622C
|
|
||||||
/* 802A6224 38 60 00 02 */ li r3, 2
|
|
||||||
/* 802A6228 48 00 00 30 */ b lbl_802A6258
|
|
||||||
lbl_802A622C:
|
|
||||||
/* 802A622C 83 FF 00 0C */ lwz r31, 0xc(r31)
|
|
||||||
lbl_802A6230:
|
|
||||||
/* 802A6230 28 1F 00 00 */ cmplwi r31, 0
|
|
||||||
/* 802A6234 40 82 FF C4 */ bne lbl_802A61F8
|
|
||||||
/* 802A6238 80 1D 00 00 */ lwz r0, 0(r29)
|
|
||||||
/* 802A623C 90 01 00 08 */ stw r0, 8(r1)
|
|
||||||
/* 802A6240 38 7C 04 FC */ addi r3, r28, 0x4fc
|
|
||||||
/* 802A6244 38 81 00 08 */ addi r4, r1, 8
|
|
||||||
/* 802A6248 80 BC 04 F8 */ lwz r5, 0x4f8(r28)
|
|
||||||
/* 802A624C 7F C6 F3 78 */ mr r6, r30
|
|
||||||
/* 802A6250 38 E0 00 01 */ li r7, 1
|
|
||||||
/* 802A6254 48 00 08 55 */ bl getSeqData__23JAUDynamicSeqDataBlocksF10JAISoundIDP14JAISeqDataUserP10JAISeqDatab
|
|
||||||
lbl_802A6258:
|
|
||||||
/* 802A6258 39 61 00 20 */ addi r11, r1, 0x20
|
|
||||||
/* 802A625C 48 0B BF C9 */ bl _restgpr_28
|
|
||||||
/* 802A6260 80 01 00 24 */ lwz r0, 0x24(r1)
|
|
||||||
/* 802A6264 7C 08 03 A6 */ mtlr r0
|
|
||||||
/* 802A6268 38 21 00 20 */ addi r1, r1, 0x20
|
|
||||||
/* 802A626C 4E 80 00 20 */ blr
|
|
|
@ -1,15 +0,0 @@
|
||||||
lbl_802A5EC0:
|
|
||||||
/* 802A5EC0 94 21 FF F0 */ stwu r1, -0x10(r1)
|
|
||||||
/* 802A5EC4 7C 08 02 A6 */ mflr r0
|
|
||||||
/* 802A5EC8 90 01 00 14 */ stw r0, 0x14(r1)
|
|
||||||
/* 802A5ECC 7C 66 1B 78 */ mr r6, r3
|
|
||||||
/* 802A5ED0 80 04 00 00 */ lwz r0, 0(r4)
|
|
||||||
/* 802A5ED4 90 01 00 08 */ stw r0, 8(r1)
|
|
||||||
/* 802A5ED8 38 66 04 FC */ addi r3, r6, 0x4fc
|
|
||||||
/* 802A5EDC 38 81 00 08 */ addi r4, r1, 8
|
|
||||||
/* 802A5EE0 80 C6 04 F8 */ lwz r6, 0x4f8(r6)
|
|
||||||
/* 802A5EE4 48 00 0D 35 */ bl loadDynamicSeq__23JAUDynamicSeqDataBlocksF10JAISoundIDbP14JAISeqDataUser
|
|
||||||
/* 802A5EE8 80 01 00 14 */ lwz r0, 0x14(r1)
|
|
||||||
/* 802A5EEC 7C 08 03 A6 */ mtlr r0
|
|
||||||
/* 802A5EF0 38 21 00 10 */ addi r1, r1, 0x10
|
|
||||||
/* 802A5EF4 4E 80 00 20 */ blr
|
|
|
@ -1,27 +0,0 @@
|
||||||
lbl_802A57F0:
|
|
||||||
/* 802A57F0 94 21 FF E0 */ stwu r1, -0x20(r1)
|
|
||||||
/* 802A57F4 7C 08 02 A6 */ mflr r0
|
|
||||||
/* 802A57F8 90 01 00 24 */ stw r0, 0x24(r1)
|
|
||||||
/* 802A57FC 39 61 00 20 */ addi r11, r1, 0x20
|
|
||||||
/* 802A5800 48 0B C9 DD */ bl _savegpr_29
|
|
||||||
/* 802A5804 7C 67 1B 78 */ mr r7, r3
|
|
||||||
/* 802A5808 7C 9D 23 78 */ mr r29, r4
|
|
||||||
/* 802A580C 7C BE 2B 78 */ mr r30, r5
|
|
||||||
/* 802A5810 7F C3 F3 78 */ mr r3, r30
|
|
||||||
/* 802A5814 80 87 00 30 */ lwz r4, 0x30(r7)
|
|
||||||
/* 802A5818 80 84 00 E0 */ lwz r4, 0xe0(r4)
|
|
||||||
/* 802A581C 7C C5 33 78 */ mr r5, r6
|
|
||||||
/* 802A5820 48 02 94 F1 */ bl __nwa__FUlP7JKRHeapi
|
|
||||||
/* 802A5824 7C 7F 1B 79 */ or. r31, r3, r3
|
|
||||||
/* 802A5828 41 82 00 10 */ beq lbl_802A5838
|
|
||||||
/* 802A582C 7F A4 EB 78 */ mr r4, r29
|
|
||||||
/* 802A5830 7F C5 F3 78 */ mr r5, r30
|
|
||||||
/* 802A5834 4B D5 DD 0D */ bl memcpy
|
|
||||||
lbl_802A5838:
|
|
||||||
/* 802A5838 7F E3 FB 78 */ mr r3, r31
|
|
||||||
/* 802A583C 39 61 00 20 */ addi r11, r1, 0x20
|
|
||||||
/* 802A5840 48 0B C9 E9 */ bl _restgpr_29
|
|
||||||
/* 802A5844 80 01 00 24 */ lwz r0, 0x24(r1)
|
|
||||||
/* 802A5848 7C 08 03 A6 */ mtlr r0
|
|
||||||
/* 802A584C 38 21 00 20 */ addi r1, r1, 0x20
|
|
||||||
/* 802A5850 4E 80 00 20 */ blr
|
|
|
@ -1,81 +0,0 @@
|
||||||
lbl_802A60AC:
|
|
||||||
/* 802A60AC 94 21 FF E0 */ stwu r1, -0x20(r1)
|
|
||||||
/* 802A60B0 7C 08 02 A6 */ mflr r0
|
|
||||||
/* 802A60B4 90 01 00 24 */ stw r0, 0x24(r1)
|
|
||||||
/* 802A60B8 39 61 00 20 */ addi r11, r1, 0x20
|
|
||||||
/* 802A60BC 48 0B C1 1D */ bl _savegpr_28
|
|
||||||
/* 802A60C0 7C 7C 1B 78 */ mr r28, r3
|
|
||||||
/* 802A60C4 7C 9D 23 78 */ mr r29, r4
|
|
||||||
/* 802A60C8 80 63 00 30 */ lwz r3, 0x30(r3)
|
|
||||||
/* 802A60CC 80 63 00 E0 */ lwz r3, 0xe0(r3)
|
|
||||||
/* 802A60D0 48 02 83 69 */ bl becomeCurrentHeap__7JKRHeapFv
|
|
||||||
/* 802A60D4 90 61 00 0C */ stw r3, 0xc(r1)
|
|
||||||
/* 802A60D8 38 60 00 20 */ li r3, 0x20
|
|
||||||
/* 802A60DC 48 02 8B 71 */ bl __nw__FUl
|
|
||||||
/* 802A60E0 7C 7E 1B 79 */ or. r30, r3, r3
|
|
||||||
/* 802A60E4 41 82 00 0C */ beq lbl_802A60F0
|
|
||||||
/* 802A60E8 48 00 08 0D */ bl __ct__15JAUSeqDataBlockFv
|
|
||||||
/* 802A60EC 7C 7E 1B 78 */ mr r30, r3
|
|
||||||
lbl_802A60F0:
|
|
||||||
/* 802A60F0 28 1E 00 00 */ cmplwi r30, 0
|
|
||||||
/* 802A60F4 40 82 00 14 */ bne lbl_802A6108
|
|
||||||
/* 802A60F8 80 61 00 0C */ lwz r3, 0xc(r1)
|
|
||||||
/* 802A60FC 48 02 83 3D */ bl becomeCurrentHeap__7JKRHeapFv
|
|
||||||
/* 802A6100 38 60 00 00 */ li r3, 0
|
|
||||||
/* 802A6104 48 00 00 B4 */ b lbl_802A61B8
|
|
||||||
lbl_802A6108:
|
|
||||||
/* 802A6108 38 60 00 10 */ li r3, 0x10
|
|
||||||
/* 802A610C 48 02 8B 41 */ bl __nw__FUl
|
|
||||||
/* 802A6110 7C 7F 1B 79 */ or. r31, r3, r3
|
|
||||||
/* 802A6114 41 82 00 0C */ beq lbl_802A6120
|
|
||||||
/* 802A6118 7F C4 F3 78 */ mr r4, r30
|
|
||||||
/* 802A611C 48 03 5C E1 */ bl __ct__10JSUPtrLinkFPv
|
|
||||||
lbl_802A6120:
|
|
||||||
/* 802A6120 28 1F 00 00 */ cmplwi r31, 0
|
|
||||||
/* 802A6124 40 82 00 14 */ bne lbl_802A6138
|
|
||||||
/* 802A6128 80 61 00 0C */ lwz r3, 0xc(r1)
|
|
||||||
/* 802A612C 48 02 83 0D */ bl becomeCurrentHeap__7JKRHeapFv
|
|
||||||
/* 802A6130 38 60 00 00 */ li r3, 0
|
|
||||||
/* 802A6134 48 00 00 84 */ b lbl_802A61B8
|
|
||||||
lbl_802A6138:
|
|
||||||
/* 802A6138 7F A3 EB 78 */ mr r3, r29
|
|
||||||
/* 802A613C 38 80 00 20 */ li r4, 0x20
|
|
||||||
/* 802A6140 48 02 8B AD */ bl __nwa__FUli
|
|
||||||
/* 802A6144 28 03 00 00 */ cmplwi r3, 0
|
|
||||||
/* 802A6148 40 82 00 14 */ bne lbl_802A615C
|
|
||||||
/* 802A614C 80 61 00 0C */ lwz r3, 0xc(r1)
|
|
||||||
/* 802A6150 48 02 82 E9 */ bl becomeCurrentHeap__7JKRHeapFv
|
|
||||||
/* 802A6154 38 60 00 00 */ li r3, 0
|
|
||||||
/* 802A6158 48 00 00 60 */ b lbl_802A61B8
|
|
||||||
lbl_802A615C:
|
|
||||||
/* 802A615C 90 7E 00 14 */ stw r3, 0x14(r30)
|
|
||||||
/* 802A6160 93 BE 00 18 */ stw r29, 0x18(r30)
|
|
||||||
/* 802A6164 38 00 FF FF */ li r0, -1
|
|
||||||
/* 802A6168 90 1E 00 10 */ stw r0, 0x10(r30)
|
|
||||||
/* 802A616C 48 09 75 89 */ bl OSDisableInterrupts
|
|
||||||
/* 802A6170 90 61 00 08 */ stw r3, 8(r1)
|
|
||||||
/* 802A6174 80 7C 00 30 */ lwz r3, 0x30(r28)
|
|
||||||
/* 802A6178 38 63 04 FC */ addi r3, r3, 0x4fc
|
|
||||||
/* 802A617C 7F C4 F3 78 */ mr r4, r30
|
|
||||||
/* 802A6180 48 00 0A 0D */ bl appendDynamicSeqDataBlock__23JAUDynamicSeqDataBlocksFP15JAUSeqDataBlock
|
|
||||||
/* 802A6184 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
|
||||||
/* 802A6188 41 82 00 1C */ beq lbl_802A61A4
|
|
||||||
/* 802A618C 80 61 00 08 */ lwz r3, 8(r1)
|
|
||||||
/* 802A6190 48 09 75 8D */ bl OSRestoreInterrupts
|
|
||||||
/* 802A6194 80 61 00 0C */ lwz r3, 0xc(r1)
|
|
||||||
/* 802A6198 48 02 82 A1 */ bl becomeCurrentHeap__7JKRHeapFv
|
|
||||||
/* 802A619C 38 60 00 01 */ li r3, 1
|
|
||||||
/* 802A61A0 48 00 00 18 */ b lbl_802A61B8
|
|
||||||
lbl_802A61A4:
|
|
||||||
/* 802A61A4 80 61 00 08 */ lwz r3, 8(r1)
|
|
||||||
/* 802A61A8 48 09 75 75 */ bl OSRestoreInterrupts
|
|
||||||
/* 802A61AC 80 61 00 0C */ lwz r3, 0xc(r1)
|
|
||||||
/* 802A61B0 48 02 82 89 */ bl becomeCurrentHeap__7JKRHeapFv
|
|
||||||
/* 802A61B4 38 60 00 00 */ li r3, 0
|
|
||||||
lbl_802A61B8:
|
|
||||||
/* 802A61B8 39 61 00 20 */ addi r11, r1, 0x20
|
|
||||||
/* 802A61BC 48 0B C0 69 */ bl _restgpr_28
|
|
||||||
/* 802A61C0 80 01 00 24 */ lwz r0, 0x24(r1)
|
|
||||||
/* 802A61C4 7C 08 03 A6 */ mtlr r0
|
|
||||||
/* 802A61C8 38 21 00 20 */ addi r1, r1, 0x20
|
|
||||||
/* 802A61CC 4E 80 00 20 */ blr
|
|
|
@ -1,41 +0,0 @@
|
||||||
lbl_802A5500:
|
|
||||||
/* 802A5500 94 21 FF E0 */ stwu r1, -0x20(r1)
|
|
||||||
/* 802A5504 7C 08 02 A6 */ mflr r0
|
|
||||||
/* 802A5508 90 01 00 24 */ stw r0, 0x24(r1)
|
|
||||||
/* 802A550C 39 61 00 20 */ addi r11, r1, 0x20
|
|
||||||
/* 802A5510 48 0B CC CD */ bl _savegpr_29
|
|
||||||
/* 802A5514 7C 7D 1B 78 */ mr r29, r3
|
|
||||||
/* 802A5518 7C 9E 23 78 */ mr r30, r4
|
|
||||||
/* 802A551C 28 05 00 00 */ cmplwi r5, 0
|
|
||||||
/* 802A5520 41 82 00 10 */ beq lbl_802A5530
|
|
||||||
/* 802A5524 38 C0 00 04 */ li r6, 4
|
|
||||||
/* 802A5528 48 00 02 C9 */ bl newCopy__10JAUSectionFPCvUll
|
|
||||||
/* 802A552C 7C 7E 1B 78 */ mr r30, r3
|
|
||||||
lbl_802A5530:
|
|
||||||
/* 802A5530 80 7D 00 30 */ lwz r3, 0x30(r29)
|
|
||||||
/* 802A5534 80 63 00 E0 */ lwz r3, 0xe0(r3)
|
|
||||||
/* 802A5538 48 02 8F 01 */ bl becomeCurrentHeap__7JKRHeapFv
|
|
||||||
/* 802A553C 90 61 00 08 */ stw r3, 8(r1)
|
|
||||||
/* 802A5540 38 60 00 18 */ li r3, 0x18
|
|
||||||
/* 802A5544 48 02 97 09 */ bl __nw__FUl
|
|
||||||
/* 802A5548 7C 7F 1B 79 */ or. r31, r3, r3
|
|
||||||
/* 802A554C 41 82 00 0C */ beq lbl_802A5558
|
|
||||||
/* 802A5550 48 00 12 2D */ bl __ct__27JAUSeqDataMgr_SeqCollectionFv
|
|
||||||
/* 802A5554 7C 7F 1B 78 */ mr r31, r3
|
|
||||||
lbl_802A5558:
|
|
||||||
/* 802A5558 38 7F 00 04 */ addi r3, r31, 4
|
|
||||||
/* 802A555C 7F C4 F3 78 */ mr r4, r30
|
|
||||||
/* 802A5560 48 00 11 4D */ bl init__16JAUSeqCollectionFPCv
|
|
||||||
/* 802A5564 80 7D 00 30 */ lwz r3, 0x30(r29)
|
|
||||||
/* 802A5568 93 E3 05 24 */ stw r31, 0x524(r3)
|
|
||||||
/* 802A556C 93 FD 00 B8 */ stw r31, 0xb8(r29)
|
|
||||||
/* 802A5570 80 61 00 08 */ lwz r3, 8(r1)
|
|
||||||
/* 802A5574 48 02 8E C5 */ bl becomeCurrentHeap__7JKRHeapFv
|
|
||||||
/* 802A5578 80 7D 00 30 */ lwz r3, 0x30(r29)
|
|
||||||
/* 802A557C 80 63 05 24 */ lwz r3, 0x524(r3)
|
|
||||||
/* 802A5580 39 61 00 20 */ addi r11, r1, 0x20
|
|
||||||
/* 802A5584 48 0B CC A5 */ bl _restgpr_29
|
|
||||||
/* 802A5588 80 01 00 24 */ lwz r0, 0x24(r1)
|
|
||||||
/* 802A558C 7C 08 03 A6 */ mtlr r0
|
|
||||||
/* 802A5590 38 21 00 20 */ addi r1, r1, 0x20
|
|
||||||
/* 802A5594 4E 80 00 20 */ blr
|
|
|
@ -1,84 +0,0 @@
|
||||||
lbl_802A5598:
|
|
||||||
/* 802A5598 94 21 FF D0 */ stwu r1, -0x30(r1)
|
|
||||||
/* 802A559C 7C 08 02 A6 */ mflr r0
|
|
||||||
/* 802A55A0 90 01 00 34 */ stw r0, 0x34(r1)
|
|
||||||
/* 802A55A4 39 61 00 30 */ addi r11, r1, 0x30
|
|
||||||
/* 802A55A8 48 0B CC 29 */ bl _savegpr_26
|
|
||||||
/* 802A55AC 7C 7A 1B 78 */ mr r26, r3
|
|
||||||
/* 802A55B0 7C 9B 23 78 */ mr r27, r4
|
|
||||||
/* 802A55B4 7C BC 2B 78 */ mr r28, r5
|
|
||||||
/* 802A55B8 80 63 00 30 */ lwz r3, 0x30(r3)
|
|
||||||
/* 802A55BC 80 63 00 E0 */ lwz r3, 0xe0(r3)
|
|
||||||
/* 802A55C0 48 02 8E 79 */ bl becomeCurrentHeap__7JKRHeapFv
|
|
||||||
/* 802A55C4 90 61 00 0C */ stw r3, 0xc(r1)
|
|
||||||
/* 802A55C8 38 60 00 20 */ li r3, 0x20
|
|
||||||
/* 802A55CC 48 02 96 81 */ bl __nw__FUl
|
|
||||||
/* 802A55D0 7C 7E 1B 79 */ or. r30, r3, r3
|
|
||||||
/* 802A55D4 41 82 00 0C */ beq lbl_802A55E0
|
|
||||||
/* 802A55D8 48 00 13 1D */ bl __ct__15JAUSeqDataBlockFv
|
|
||||||
/* 802A55DC 7C 7E 1B 78 */ mr r30, r3
|
|
||||||
lbl_802A55E0:
|
|
||||||
/* 802A55E0 28 1E 00 00 */ cmplwi r30, 0
|
|
||||||
/* 802A55E4 40 82 00 14 */ bne lbl_802A55F8
|
|
||||||
/* 802A55E8 80 61 00 0C */ lwz r3, 0xc(r1)
|
|
||||||
/* 802A55EC 48 02 8E 4D */ bl becomeCurrentHeap__7JKRHeapFv
|
|
||||||
/* 802A55F0 38 60 00 00 */ li r3, 0
|
|
||||||
/* 802A55F4 48 00 00 BC */ b lbl_802A56B0
|
|
||||||
lbl_802A55F8:
|
|
||||||
/* 802A55F8 38 60 00 10 */ li r3, 0x10
|
|
||||||
/* 802A55FC 48 02 96 51 */ bl __nw__FUl
|
|
||||||
/* 802A5600 7C 7F 1B 79 */ or. r31, r3, r3
|
|
||||||
/* 802A5604 41 82 00 0C */ beq lbl_802A5610
|
|
||||||
/* 802A5608 7F C4 F3 78 */ mr r4, r30
|
|
||||||
/* 802A560C 48 03 67 F1 */ bl __ct__10JSUPtrLinkFPv
|
|
||||||
lbl_802A5610:
|
|
||||||
/* 802A5610 28 1F 00 00 */ cmplwi r31, 0
|
|
||||||
/* 802A5614 40 82 00 14 */ bne lbl_802A5628
|
|
||||||
/* 802A5618 80 61 00 0C */ lwz r3, 0xc(r1)
|
|
||||||
/* 802A561C 48 02 8E 1D */ bl becomeCurrentHeap__7JKRHeapFv
|
|
||||||
/* 802A5620 38 60 00 00 */ li r3, 0
|
|
||||||
/* 802A5624 48 00 00 8C */ b lbl_802A56B0
|
|
||||||
lbl_802A5628:
|
|
||||||
/* 802A5628 7F 83 E3 78 */ mr r3, r28
|
|
||||||
/* 802A562C 38 80 00 20 */ li r4, 0x20
|
|
||||||
/* 802A5630 48 02 96 BD */ bl __nwa__FUli
|
|
||||||
/* 802A5634 7C 7D 1B 79 */ or. r29, r3, r3
|
|
||||||
/* 802A5638 40 82 00 14 */ bne lbl_802A564C
|
|
||||||
/* 802A563C 80 61 00 0C */ lwz r3, 0xc(r1)
|
|
||||||
/* 802A5640 48 02 8D F9 */ bl becomeCurrentHeap__7JKRHeapFv
|
|
||||||
/* 802A5644 38 60 00 00 */ li r3, 0
|
|
||||||
/* 802A5648 48 00 00 68 */ b lbl_802A56B0
|
|
||||||
lbl_802A564C:
|
|
||||||
/* 802A564C 93 BE 00 14 */ stw r29, 0x14(r30)
|
|
||||||
/* 802A5650 93 9E 00 18 */ stw r28, 0x18(r30)
|
|
||||||
/* 802A5654 80 1B 00 00 */ lwz r0, 0(r27)
|
|
||||||
/* 802A5658 90 1E 00 10 */ stw r0, 0x10(r30)
|
|
||||||
/* 802A565C 48 09 80 99 */ bl OSDisableInterrupts
|
|
||||||
/* 802A5660 90 61 00 08 */ stw r3, 8(r1)
|
|
||||||
/* 802A5664 38 7A 00 38 */ addi r3, r26, 0x38
|
|
||||||
/* 802A5668 7F C4 F3 78 */ mr r4, r30
|
|
||||||
/* 802A566C 48 00 15 21 */ bl appendDynamicSeqDataBlock__23JAUDynamicSeqDataBlocksFP15JAUSeqDataBlock
|
|
||||||
/* 802A5670 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
|
||||||
/* 802A5674 41 82 00 28 */ beq lbl_802A569C
|
|
||||||
/* 802A5678 38 7A 00 60 */ addi r3, r26, 0x60
|
|
||||||
/* 802A567C 7F E4 FB 78 */ mr r4, r31
|
|
||||||
/* 802A5680 48 03 68 CD */ bl append__10JSUPtrListFP10JSUPtrLink
|
|
||||||
/* 802A5684 80 61 00 08 */ lwz r3, 8(r1)
|
|
||||||
/* 802A5688 48 09 80 95 */ bl OSRestoreInterrupts
|
|
||||||
/* 802A568C 80 61 00 0C */ lwz r3, 0xc(r1)
|
|
||||||
/* 802A5690 48 02 8D A9 */ bl becomeCurrentHeap__7JKRHeapFv
|
|
||||||
/* 802A5694 7F A3 EB 78 */ mr r3, r29
|
|
||||||
/* 802A5698 48 00 00 18 */ b lbl_802A56B0
|
|
||||||
lbl_802A569C:
|
|
||||||
/* 802A569C 80 61 00 08 */ lwz r3, 8(r1)
|
|
||||||
/* 802A56A0 48 09 80 7D */ bl OSRestoreInterrupts
|
|
||||||
/* 802A56A4 80 61 00 0C */ lwz r3, 0xc(r1)
|
|
||||||
/* 802A56A8 48 02 8D 91 */ bl becomeCurrentHeap__7JKRHeapFv
|
|
||||||
/* 802A56AC 38 60 00 00 */ li r3, 0
|
|
||||||
lbl_802A56B0:
|
|
||||||
/* 802A56B0 39 61 00 30 */ addi r11, r1, 0x30
|
|
||||||
/* 802A56B4 48 0B CB 69 */ bl _restgpr_26
|
|
||||||
/* 802A56B8 80 01 00 34 */ lwz r0, 0x34(r1)
|
|
||||||
/* 802A56BC 7C 08 03 A6 */ mtlr r0
|
|
||||||
/* 802A56C0 38 21 00 30 */ addi r1, r1, 0x30
|
|
||||||
/* 802A56C4 4E 80 00 20 */ blr
|
|
|
@ -1,29 +0,0 @@
|
||||||
lbl_802A56C8:
|
|
||||||
/* 802A56C8 94 21 FF E0 */ stwu r1, -0x20(r1)
|
|
||||||
/* 802A56CC 7C 08 02 A6 */ mflr r0
|
|
||||||
/* 802A56D0 90 01 00 24 */ stw r0, 0x24(r1)
|
|
||||||
/* 802A56D4 93 E1 00 1C */ stw r31, 0x1c(r1)
|
|
||||||
/* 802A56D8 93 C1 00 18 */ stw r30, 0x18(r1)
|
|
||||||
/* 802A56DC 7C BE 2B 78 */ mr r30, r5
|
|
||||||
/* 802A56E0 7C DF 33 78 */ mr r31, r6
|
|
||||||
/* 802A56E4 80 04 00 00 */ lwz r0, 0(r4)
|
|
||||||
/* 802A56E8 90 01 00 08 */ stw r0, 8(r1)
|
|
||||||
/* 802A56EC 38 81 00 08 */ addi r4, r1, 8
|
|
||||||
/* 802A56F0 7F E5 FB 78 */ mr r5, r31
|
|
||||||
/* 802A56F4 4B FF FE A5 */ bl newStaticSeqDataBlock___10JAUSectionF10JAISoundIDUl
|
|
||||||
/* 802A56F8 28 03 00 00 */ cmplwi r3, 0
|
|
||||||
/* 802A56FC 41 82 00 18 */ beq lbl_802A5714
|
|
||||||
/* 802A5700 7F C4 F3 78 */ mr r4, r30
|
|
||||||
/* 802A5704 7F E5 FB 78 */ mr r5, r31
|
|
||||||
/* 802A5708 4B D5 DE 39 */ bl memcpy
|
|
||||||
/* 802A570C 38 60 00 01 */ li r3, 1
|
|
||||||
/* 802A5710 48 00 00 08 */ b lbl_802A5718
|
|
||||||
lbl_802A5714:
|
|
||||||
/* 802A5714 38 60 00 00 */ li r3, 0
|
|
||||||
lbl_802A5718:
|
|
||||||
/* 802A5718 83 E1 00 1C */ lwz r31, 0x1c(r1)
|
|
||||||
/* 802A571C 83 C1 00 18 */ lwz r30, 0x18(r1)
|
|
||||||
/* 802A5720 80 01 00 24 */ lwz r0, 0x24(r1)
|
|
||||||
/* 802A5724 7C 08 03 A6 */ mtlr r0
|
|
||||||
/* 802A5728 38 21 00 20 */ addi r1, r1, 0x20
|
|
||||||
/* 802A572C 4E 80 00 20 */ blr
|
|
|
@ -1,12 +0,0 @@
|
||||||
lbl_802A5EF8:
|
|
||||||
/* 802A5EF8 94 21 FF F0 */ stwu r1, -0x10(r1)
|
|
||||||
/* 802A5EFC 7C 08 02 A6 */ mflr r0
|
|
||||||
/* 802A5F00 90 01 00 14 */ stw r0, 0x14(r1)
|
|
||||||
/* 802A5F04 7C 64 1B 78 */ mr r4, r3
|
|
||||||
/* 802A5F08 38 64 04 FC */ addi r3, r4, 0x4fc
|
|
||||||
/* 802A5F0C 80 84 04 F8 */ lwz r4, 0x4f8(r4)
|
|
||||||
/* 802A5F10 48 00 0E 39 */ bl releaseIdleDynamicSeqDataBlock__23JAUDynamicSeqDataBlocksFP14JAISeqDataUser
|
|
||||||
/* 802A5F14 80 01 00 14 */ lwz r0, 0x14(r1)
|
|
||||||
/* 802A5F18 7C 08 03 A6 */ mtlr r0
|
|
||||||
/* 802A5F1C 38 21 00 10 */ addi r1, r1, 0x10
|
|
||||||
/* 802A5F20 4E 80 00 20 */ blr
|
|
|
@ -1,27 +0,0 @@
|
||||||
lbl_802A5E60:
|
|
||||||
/* 802A5E60 94 21 FF F0 */ stwu r1, -0x10(r1)
|
|
||||||
/* 802A5E64 7C 08 02 A6 */ mflr r0
|
|
||||||
/* 802A5E68 90 01 00 14 */ stw r0, 0x14(r1)
|
|
||||||
/* 802A5E6C 93 E1 00 0C */ stw r31, 0xc(r1)
|
|
||||||
/* 802A5E70 93 C1 00 08 */ stw r30, 8(r1)
|
|
||||||
/* 802A5E74 7C 7F 1B 78 */ mr r31, r3
|
|
||||||
/* 802A5E78 7C 9E 23 78 */ mr r30, r4
|
|
||||||
/* 802A5E7C 38 7F 04 FC */ addi r3, r31, 0x4fc
|
|
||||||
/* 802A5E80 48 00 0C 21 */ bl setSeqDataArchive__23JAUDynamicSeqDataBlocksFP10JKRArchive
|
|
||||||
/* 802A5E84 83 FF 00 E8 */ lwz r31, 0xe8(r31)
|
|
||||||
/* 802A5E88 48 00 00 18 */ b lbl_802A5EA0
|
|
||||||
lbl_802A5E8C:
|
|
||||||
/* 802A5E8C 80 7F 00 00 */ lwz r3, 0(r31)
|
|
||||||
/* 802A5E90 38 63 00 38 */ addi r3, r3, 0x38
|
|
||||||
/* 802A5E94 7F C4 F3 78 */ mr r4, r30
|
|
||||||
/* 802A5E98 48 00 0C 09 */ bl setSeqDataArchive__23JAUDynamicSeqDataBlocksFP10JKRArchive
|
|
||||||
/* 802A5E9C 83 FF 00 0C */ lwz r31, 0xc(r31)
|
|
||||||
lbl_802A5EA0:
|
|
||||||
/* 802A5EA0 28 1F 00 00 */ cmplwi r31, 0
|
|
||||||
/* 802A5EA4 40 82 FF E8 */ bne lbl_802A5E8C
|
|
||||||
/* 802A5EA8 83 E1 00 0C */ lwz r31, 0xc(r1)
|
|
||||||
/* 802A5EAC 83 C1 00 08 */ lwz r30, 8(r1)
|
|
||||||
/* 802A5EB0 80 01 00 14 */ lwz r0, 0x14(r1)
|
|
||||||
/* 802A5EB4 7C 08 03 A6 */ mtlr r0
|
|
||||||
/* 802A5EB8 38 21 00 10 */ addi r1, r1, 0x10
|
|
||||||
/* 802A5EBC 4E 80 00 20 */ blr
|
|
|
@ -1,4 +0,0 @@
|
||||||
lbl_802A60A0:
|
|
||||||
/* 802A60A0 90 83 04 F8 */ stw r4, 0x4f8(r3)
|
|
||||||
/* 802A60A4 38 60 00 01 */ li r3, 1
|
|
||||||
/* 802A60A8 4E 80 00 20 */ blr
|
|
|
@ -1,5 +0,0 @@
|
||||||
lbl_802C589C:
|
|
||||||
/* 802C589C 38 00 00 00 */ li r0, 0
|
|
||||||
/* 802C58A0 90 03 00 04 */ stw r0, 4(r3)
|
|
||||||
/* 802C58A4 90 83 00 00 */ stw r4, 0(r3)
|
|
||||||
/* 802C58A8 4E 80 00 20 */ blr
|
|
|
@ -1,23 +0,0 @@
|
||||||
lbl_802C5D1C:
|
|
||||||
/* 802C5D1C 94 21 FF F0 */ stwu r1, -0x10(r1)
|
|
||||||
/* 802C5D20 7C 08 02 A6 */ mflr r0
|
|
||||||
/* 802C5D24 90 01 00 14 */ stw r0, 0x14(r1)
|
|
||||||
/* 802C5D28 93 E1 00 0C */ stw r31, 0xc(r1)
|
|
||||||
/* 802C5D2C 93 C1 00 08 */ stw r30, 8(r1)
|
|
||||||
/* 802C5D30 7C 7E 1B 79 */ or. r30, r3, r3
|
|
||||||
/* 802C5D34 7C 9F 23 78 */ mr r31, r4
|
|
||||||
/* 802C5D38 41 82 00 1C */ beq lbl_802C5D54
|
|
||||||
/* 802C5D3C 38 80 00 00 */ li r4, 0
|
|
||||||
/* 802C5D40 4B FF FB 6D */ bl __dt__11Z2EnvSeBaseFv
|
|
||||||
/* 802C5D44 7F E0 07 35 */ extsh. r0, r31
|
|
||||||
/* 802C5D48 40 81 00 0C */ ble lbl_802C5D54
|
|
||||||
/* 802C5D4C 7F C3 F3 78 */ mr r3, r30
|
|
||||||
/* 802C5D50 48 00 8F ED */ bl __dl__FPv
|
|
||||||
lbl_802C5D54:
|
|
||||||
/* 802C5D54 7F C3 F3 78 */ mr r3, r30
|
|
||||||
/* 802C5D58 83 E1 00 0C */ lwz r31, 0xc(r1)
|
|
||||||
/* 802C5D5C 83 C1 00 08 */ lwz r30, 8(r1)
|
|
||||||
/* 802C5D60 80 01 00 14 */ lwz r0, 0x14(r1)
|
|
||||||
/* 802C5D64 7C 08 03 A6 */ mtlr r0
|
|
||||||
/* 802C5D68 38 21 00 10 */ addi r1, r1, 0x10
|
|
||||||
/* 802C5D6C 4E 80 00 20 */ blr
|
|
|
@ -1,95 +0,0 @@
|
||||||
lbl_802C6540:
|
|
||||||
/* 802C6540 94 21 FF F0 */ stwu r1, -0x10(r1)
|
|
||||||
/* 802C6544 7C 08 02 A6 */ mflr r0
|
|
||||||
/* 802C6548 90 01 00 14 */ stw r0, 0x14(r1)
|
|
||||||
/* 802C654C 93 E1 00 0C */ stw r31, 0xc(r1)
|
|
||||||
/* 802C6550 93 C1 00 08 */ stw r30, 8(r1)
|
|
||||||
/* 802C6554 7C 7E 1B 79 */ or. r30, r3, r3
|
|
||||||
/* 802C6558 7C 9F 23 78 */ mr r31, r4
|
|
||||||
/* 802C655C 41 82 01 38 */ beq lbl_802C6694
|
|
||||||
/* 802C6560 38 7E 02 DC */ addi r3, r30, 0x2dc
|
|
||||||
/* 802C6564 38 80 FF FF */ li r4, -1
|
|
||||||
/* 802C6568 4B FF F3 45 */ bl __dt__11Z2EnvSeBaseFv
|
|
||||||
/* 802C656C 38 7E 02 C0 */ addi r3, r30, 0x2c0
|
|
||||||
/* 802C6570 38 80 FF FF */ li r4, -1
|
|
||||||
/* 802C6574 4B FE 85 C1 */ bl __dt__12Z2MultiSeMgrFv
|
|
||||||
/* 802C6578 38 7E 02 A8 */ addi r3, r30, 0x2a8
|
|
||||||
/* 802C657C 38 80 FF FF */ li r4, -1
|
|
||||||
/* 802C6580 4B FF F3 2D */ bl __dt__11Z2EnvSeBaseFv
|
|
||||||
/* 802C6584 38 7E 02 8C */ addi r3, r30, 0x28c
|
|
||||||
/* 802C6588 38 80 FF FF */ li r4, -1
|
|
||||||
/* 802C658C 4B FE 85 A9 */ bl __dt__12Z2MultiSeMgrFv
|
|
||||||
/* 802C6590 38 7E 02 74 */ addi r3, r30, 0x274
|
|
||||||
/* 802C6594 38 80 FF FF */ li r4, -1
|
|
||||||
/* 802C6598 4B FF F3 15 */ bl __dt__11Z2EnvSeBaseFv
|
|
||||||
/* 802C659C 38 7E 02 58 */ addi r3, r30, 0x258
|
|
||||||
/* 802C65A0 38 80 FF FF */ li r4, -1
|
|
||||||
/* 802C65A4 4B FE 85 91 */ bl __dt__12Z2MultiSeMgrFv
|
|
||||||
/* 802C65A8 38 7E 02 40 */ addi r3, r30, 0x240
|
|
||||||
/* 802C65AC 38 80 FF FF */ li r4, -1
|
|
||||||
/* 802C65B0 4B FF F2 FD */ bl __dt__11Z2EnvSeBaseFv
|
|
||||||
/* 802C65B4 38 7E 02 24 */ addi r3, r30, 0x224
|
|
||||||
/* 802C65B8 38 80 FF FF */ li r4, -1
|
|
||||||
/* 802C65BC 4B FE 85 79 */ bl __dt__12Z2MultiSeMgrFv
|
|
||||||
/* 802C65C0 38 7E 02 0C */ addi r3, r30, 0x20c
|
|
||||||
/* 802C65C4 38 80 FF FF */ li r4, -1
|
|
||||||
/* 802C65C8 4B FF F2 E5 */ bl __dt__11Z2EnvSeBaseFv
|
|
||||||
/* 802C65CC 38 7E 01 F0 */ addi r3, r30, 0x1f0
|
|
||||||
/* 802C65D0 38 80 FF FF */ li r4, -1
|
|
||||||
/* 802C65D4 4B FE 85 61 */ bl __dt__12Z2MultiSeMgrFv
|
|
||||||
/* 802C65D8 38 7E 01 D8 */ addi r3, r30, 0x1d8
|
|
||||||
/* 802C65DC 38 80 FF FF */ li r4, -1
|
|
||||||
/* 802C65E0 4B FF F2 CD */ bl __dt__11Z2EnvSeBaseFv
|
|
||||||
/* 802C65E4 38 7E 01 BC */ addi r3, r30, 0x1bc
|
|
||||||
/* 802C65E8 38 80 FF FF */ li r4, -1
|
|
||||||
/* 802C65EC 4B FE 85 49 */ bl __dt__12Z2MultiSeMgrFv
|
|
||||||
/* 802C65F0 38 7E 01 80 */ addi r3, r30, 0x180
|
|
||||||
/* 802C65F4 38 80 FF FF */ li r4, -1
|
|
||||||
/* 802C65F8 4B FF F2 B5 */ bl __dt__11Z2EnvSeBaseFv
|
|
||||||
/* 802C65FC 38 7E 01 64 */ addi r3, r30, 0x164
|
|
||||||
/* 802C6600 38 80 FF FF */ li r4, -1
|
|
||||||
/* 802C6604 4B FE 85 31 */ bl __dt__12Z2MultiSeMgrFv
|
|
||||||
/* 802C6608 38 7E 01 44 */ addi r3, r30, 0x144
|
|
||||||
/* 802C660C 38 80 FF FF */ li r4, -1
|
|
||||||
/* 802C6610 4B FF F7 0D */ bl __dt__10Z2EnvSeDirFv
|
|
||||||
/* 802C6614 38 7E 01 18 */ addi r3, r30, 0x118
|
|
||||||
/* 802C6618 38 80 FF FF */ li r4, -1
|
|
||||||
/* 802C661C 4B FF F2 91 */ bl __dt__11Z2EnvSeBaseFv
|
|
||||||
/* 802C6620 38 7E 01 10 */ addi r3, r30, 0x110
|
|
||||||
/* 802C6624 38 80 FF FF */ li r4, -1
|
|
||||||
/* 802C6628 4B FF F2 85 */ bl __dt__11Z2EnvSeBaseFv
|
|
||||||
/* 802C662C 38 7E 00 88 */ addi r3, r30, 0x88
|
|
||||||
/* 802C6630 38 80 FF FF */ li r4, -1
|
|
||||||
/* 802C6634 4B FF F2 79 */ bl __dt__11Z2EnvSeBaseFv
|
|
||||||
/* 802C6638 38 7E 00 80 */ addi r3, r30, 0x80
|
|
||||||
/* 802C663C 38 80 FF FF */ li r4, -1
|
|
||||||
/* 802C6640 4B FF F2 6D */ bl __dt__11Z2EnvSeBaseFv
|
|
||||||
/* 802C6644 38 7E 00 64 */ addi r3, r30, 0x64
|
|
||||||
/* 802C6648 38 80 FF FF */ li r4, -1
|
|
||||||
/* 802C664C 4B FE 84 E9 */ bl __dt__12Z2MultiSeMgrFv
|
|
||||||
/* 802C6650 38 7E 00 1C */ addi r3, r30, 0x1c
|
|
||||||
/* 802C6654 38 80 FF FF */ li r4, -1
|
|
||||||
/* 802C6658 4B FF F8 D1 */ bl __dt__14Z2EnvSeAutoPanFv
|
|
||||||
/* 802C665C 7F C3 F3 78 */ mr r3, r30
|
|
||||||
/* 802C6660 38 80 FF FF */ li r4, -1
|
|
||||||
/* 802C6664 4B FF F8 C5 */ bl __dt__14Z2EnvSeAutoPanFv
|
|
||||||
/* 802C6668 28 1E 00 00 */ cmplwi r30, 0
|
|
||||||
/* 802C666C 41 82 00 18 */ beq lbl_802C6684
|
|
||||||
/* 802C6670 80 0D 85 BC */ lwz r0, __OSReport_disable-0x5C(r13)
|
|
||||||
/* 802C6674 7C 00 F0 40 */ cmplw r0, r30
|
|
||||||
/* 802C6678 40 82 00 0C */ bne lbl_802C6684
|
|
||||||
/* 802C667C 38 00 00 00 */ li r0, 0
|
|
||||||
/* 802C6680 90 0D 85 BC */ stw r0, __OSReport_disable-0x5C(r13)
|
|
||||||
lbl_802C6684:
|
|
||||||
/* 802C6684 7F E0 07 35 */ extsh. r0, r31
|
|
||||||
/* 802C6688 40 81 00 0C */ ble lbl_802C6694
|
|
||||||
/* 802C668C 7F C3 F3 78 */ mr r3, r30
|
|
||||||
/* 802C6690 48 00 86 AD */ bl __dl__FPv
|
|
||||||
lbl_802C6694:
|
|
||||||
/* 802C6694 7F C3 F3 78 */ mr r3, r30
|
|
||||||
/* 802C6698 83 E1 00 0C */ lwz r31, 0xc(r1)
|
|
||||||
/* 802C669C 83 C1 00 08 */ lwz r30, 8(r1)
|
|
||||||
/* 802C66A0 80 01 00 14 */ lwz r0, 0x14(r1)
|
|
||||||
/* 802C66A4 7C 08 03 A6 */ mtlr r0
|
|
||||||
/* 802C66A8 38 21 00 10 */ addi r1, r1, 0x10
|
|
||||||
/* 802C66AC 4E 80 00 20 */ blr
|
|
|
@ -1,26 +0,0 @@
|
||||||
lbl_802C58AC:
|
|
||||||
/* 802C58AC 94 21 FF F0 */ stwu r1, -0x10(r1)
|
|
||||||
/* 802C58B0 7C 08 02 A6 */ mflr r0
|
|
||||||
/* 802C58B4 90 01 00 14 */ stw r0, 0x14(r1)
|
|
||||||
/* 802C58B8 93 E1 00 0C */ stw r31, 0xc(r1)
|
|
||||||
/* 802C58BC 93 C1 00 08 */ stw r30, 8(r1)
|
|
||||||
/* 802C58C0 7C 7E 1B 79 */ or. r30, r3, r3
|
|
||||||
/* 802C58C4 7C 9F 23 78 */ mr r31, r4
|
|
||||||
/* 802C58C8 41 82 00 24 */ beq lbl_802C58EC
|
|
||||||
/* 802C58CC 34 1E 00 04 */ addic. r0, r30, 4
|
|
||||||
/* 802C58D0 41 82 00 0C */ beq lbl_802C58DC
|
|
||||||
/* 802C58D4 38 7E 00 04 */ addi r3, r30, 4
|
|
||||||
/* 802C58D8 4B FD C8 AD */ bl releaseSound__14JAISoundHandleFv
|
|
||||||
lbl_802C58DC:
|
|
||||||
/* 802C58DC 7F E0 07 35 */ extsh. r0, r31
|
|
||||||
/* 802C58E0 40 81 00 0C */ ble lbl_802C58EC
|
|
||||||
/* 802C58E4 7F C3 F3 78 */ mr r3, r30
|
|
||||||
/* 802C58E8 48 00 94 55 */ bl __dl__FPv
|
|
||||||
lbl_802C58EC:
|
|
||||||
/* 802C58EC 7F C3 F3 78 */ mr r3, r30
|
|
||||||
/* 802C58F0 83 E1 00 0C */ lwz r31, 0xc(r1)
|
|
||||||
/* 802C58F4 83 C1 00 08 */ lwz r30, 8(r1)
|
|
||||||
/* 802C58F8 80 01 00 14 */ lwz r0, 0x14(r1)
|
|
||||||
/* 802C58FC 7C 08 03 A6 */ mtlr r0
|
|
||||||
/* 802C5900 38 21 00 10 */ addi r1, r1, 0x10
|
|
||||||
/* 802C5904 4E 80 00 20 */ blr
|
|
|
@ -1,23 +0,0 @@
|
||||||
lbl_802C5F28:
|
|
||||||
/* 802C5F28 94 21 FF F0 */ stwu r1, -0x10(r1)
|
|
||||||
/* 802C5F2C 7C 08 02 A6 */ mflr r0
|
|
||||||
/* 802C5F30 90 01 00 14 */ stw r0, 0x14(r1)
|
|
||||||
/* 802C5F34 93 E1 00 0C */ stw r31, 0xc(r1)
|
|
||||||
/* 802C5F38 93 C1 00 08 */ stw r30, 8(r1)
|
|
||||||
/* 802C5F3C 7C 7E 1B 79 */ or. r30, r3, r3
|
|
||||||
/* 802C5F40 7C 9F 23 78 */ mr r31, r4
|
|
||||||
/* 802C5F44 41 82 00 1C */ beq lbl_802C5F60
|
|
||||||
/* 802C5F48 38 80 00 00 */ li r4, 0
|
|
||||||
/* 802C5F4C 4B FF F9 61 */ bl __dt__11Z2EnvSeBaseFv
|
|
||||||
/* 802C5F50 7F E0 07 35 */ extsh. r0, r31
|
|
||||||
/* 802C5F54 40 81 00 0C */ ble lbl_802C5F60
|
|
||||||
/* 802C5F58 7F C3 F3 78 */ mr r3, r30
|
|
||||||
/* 802C5F5C 48 00 8D E1 */ bl __dl__FPv
|
|
||||||
lbl_802C5F60:
|
|
||||||
/* 802C5F60 7F C3 F3 78 */ mr r3, r30
|
|
||||||
/* 802C5F64 83 E1 00 0C */ lwz r31, 0xc(r1)
|
|
||||||
/* 802C5F68 83 C1 00 08 */ lwz r30, 8(r1)
|
|
||||||
/* 802C5F6C 80 01 00 14 */ lwz r0, 0x14(r1)
|
|
||||||
/* 802C5F70 7C 08 03 A6 */ mtlr r0
|
|
||||||
/* 802C5F74 38 21 00 10 */ addi r1, r1, 0x10
|
|
||||||
/* 802C5F78 4E 80 00 20 */ blr
|
|
|
@ -1,3 +0,0 @@
|
||||||
lbl_802BB0D8:
|
|
||||||
/* 802BB0D8 88 64 00 01 */ lbz r3, 1(r4)
|
|
||||||
/* 802BB0DC 4E 80 00 20 */ blr
|
|
|
@ -1,12 +0,0 @@
|
||||||
lbl_802BB8B4:
|
|
||||||
/* 802BB8B4 94 21 FF F0 */ stwu r1, -0x10(r1)
|
|
||||||
/* 802BB8B8 7C 08 02 A6 */ mflr r0
|
|
||||||
/* 802BB8BC 90 01 00 14 */ stw r0, 0x14(r1)
|
|
||||||
/* 802BB8C0 80 04 00 00 */ lwz r0, 0(r4)
|
|
||||||
/* 802BB8C4 90 01 00 08 */ stw r0, 8(r1)
|
|
||||||
/* 802BB8C8 38 81 00 08 */ addi r4, r1, 8
|
|
||||||
/* 802BB8CC 48 00 02 7D */ bl getSoundInfo___11Z2SoundInfoCF10JAISoundIDP8JAISound
|
|
||||||
/* 802BB8D0 80 01 00 14 */ lwz r0, 0x14(r1)
|
|
||||||
/* 802BB8D4 7C 08 03 A6 */ mtlr r0
|
|
||||||
/* 802BB8D8 38 21 00 10 */ addi r1, r1, 0x10
|
|
||||||
/* 802BB8DC 4E 80 00 20 */ blr
|
|
|
@ -1,24 +0,0 @@
|
||||||
lbl_802BB090:
|
|
||||||
/* 802BB090 88 04 00 00 */ lbz r0, 0(r4)
|
|
||||||
/* 802BB094 2C 00 00 01 */ cmpwi r0, 1
|
|
||||||
/* 802BB098 41 82 00 28 */ beq lbl_802BB0C0
|
|
||||||
/* 802BB09C 40 80 00 10 */ bge lbl_802BB0AC
|
|
||||||
/* 802BB0A0 2C 00 00 00 */ cmpwi r0, 0
|
|
||||||
/* 802BB0A4 40 80 00 14 */ bge lbl_802BB0B8
|
|
||||||
/* 802BB0A8 48 00 00 28 */ b lbl_802BB0D0
|
|
||||||
lbl_802BB0AC:
|
|
||||||
/* 802BB0AC 2C 00 00 03 */ cmpwi r0, 3
|
|
||||||
/* 802BB0B0 40 80 00 20 */ bge lbl_802BB0D0
|
|
||||||
/* 802BB0B4 48 00 00 14 */ b lbl_802BB0C8
|
|
||||||
lbl_802BB0B8:
|
|
||||||
/* 802BB0B8 38 60 00 00 */ li r3, 0
|
|
||||||
/* 802BB0BC 4E 80 00 20 */ blr
|
|
||||||
lbl_802BB0C0:
|
|
||||||
/* 802BB0C0 38 60 00 01 */ li r3, 1
|
|
||||||
/* 802BB0C4 4E 80 00 20 */ blr
|
|
||||||
lbl_802BB0C8:
|
|
||||||
/* 802BB0C8 38 60 00 02 */ li r3, 2
|
|
||||||
/* 802BB0CC 4E 80 00 20 */ blr
|
|
||||||
lbl_802BB0D0:
|
|
||||||
/* 802BB0D0 38 60 FF FF */ li r3, -1
|
|
||||||
/* 802BB0D4 4E 80 00 20 */ blr
|
|
|
@ -1,19 +0,0 @@
|
||||||
lbl_802BBA88:
|
|
||||||
/* 802BBA88 94 21 FF F0 */ stwu r1, -0x10(r1)
|
|
||||||
/* 802BBA8C 7C 08 02 A6 */ mflr r0
|
|
||||||
/* 802BBA90 90 01 00 14 */ stw r0, 0x14(r1)
|
|
||||||
/* 802BBA94 80 04 00 00 */ lwz r0, 0(r4)
|
|
||||||
/* 802BBA98 90 01 00 08 */ stw r0, 8(r1)
|
|
||||||
/* 802BBA9C 38 81 00 08 */ addi r4, r1, 8
|
|
||||||
/* 802BBAA0 4B FF FF 71 */ bl getStreamFilePath__11Z2SoundInfoF10JAISoundID
|
|
||||||
/* 802BBAA4 28 03 00 00 */ cmplwi r3, 0
|
|
||||||
/* 802BBAA8 40 82 00 0C */ bne lbl_802BBAB4
|
|
||||||
/* 802BBAAC 38 60 FF FF */ li r3, -1
|
|
||||||
/* 802BBAB0 48 00 00 08 */ b lbl_802BBAB8
|
|
||||||
lbl_802BBAB4:
|
|
||||||
/* 802BBAB4 48 08 CA 75 */ bl DVDConvertPathToEntrynum
|
|
||||||
lbl_802BBAB8:
|
|
||||||
/* 802BBAB8 80 01 00 14 */ lwz r0, 0x14(r1)
|
|
||||||
/* 802BBABC 7C 08 03 A6 */ mtlr r0
|
|
||||||
/* 802BBAC0 38 21 00 10 */ addi r1, r1, 0x10
|
|
||||||
/* 802BBAC4 4E 80 00 20 */ blr
|
|
|
@ -89,6 +89,7 @@ public:
|
||||||
return mAudience;
|
return mAudience;
|
||||||
}
|
}
|
||||||
JAISeqDataMgr* getSeqDataMgr() { return mSeqDataMgr; }
|
JAISeqDataMgr* getSeqDataMgr() { return mSeqDataMgr; }
|
||||||
|
JAISoundParamsMove* getParams() { return &mParams; }
|
||||||
|
|
||||||
private:
|
private:
|
||||||
/* 0x008 */ JAIAudience* mAudience;
|
/* 0x008 */ JAIAudience* mAudience;
|
||||||
|
|
|
@ -4,6 +4,7 @@
|
||||||
#include "JSystem/JAudio2/JAISeqDataMgr.h"
|
#include "JSystem/JAudio2/JAISeqDataMgr.h"
|
||||||
#include "JSystem/JAudio2/JASGadget.h"
|
#include "JSystem/JAudio2/JASGadget.h"
|
||||||
#include "JSystem/JSupport/JSUList.h"
|
#include "JSystem/JSupport/JSUList.h"
|
||||||
|
#include "JSystem/JUtility/JUTAssert.h"
|
||||||
|
|
||||||
struct JAIAudience;
|
struct JAIAudience;
|
||||||
class JAISeq;
|
class JAISeq;
|
||||||
|
@ -25,7 +26,23 @@ public:
|
||||||
/* 802A1804 */ virtual bool isUsingSeqData(JAISeqDataRegion const&);
|
/* 802A1804 */ virtual bool isUsingSeqData(JAISeqDataRegion const&);
|
||||||
/* 802A1870 */ virtual int releaseSeqData(JAISeqDataRegion const&);
|
/* 802A1870 */ virtual int releaseSeqData(JAISeqDataRegion const&);
|
||||||
|
|
||||||
|
void setAudience(JAIAudience* param_0) { mAudience = param_0; }
|
||||||
JAISeqDataMgr* getSeqDataMgr() { return seqDataMgr_; }
|
JAISeqDataMgr* getSeqDataMgr() { return seqDataMgr_; }
|
||||||
|
void setSeqDataMgr(JAISeqDataMgr* param_0) {
|
||||||
|
JUT_ASSERT("JAISeqMgr.h", 0x7c, !isActive());
|
||||||
|
resetSeqDataMgr();
|
||||||
|
seqDataMgr_ = param_0;
|
||||||
|
seqDataMgr_->setSeqDataUser(this);
|
||||||
|
}
|
||||||
|
void resetSeqDataMgr() {
|
||||||
|
JUT_ASSERT("JAISeqMgr.h", 0x83, !isActive());
|
||||||
|
if (seqDataMgr_) {
|
||||||
|
seqDataMgr_->setSeqDataUser(NULL);
|
||||||
|
seqDataMgr_ = NULL;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
JAISoundParamsMove* getParams() { return &mMove; }
|
||||||
|
bool isActive() { return mSeqList.getNumLinks() != 0; }
|
||||||
|
|
||||||
private:
|
private:
|
||||||
/* 0x04 */ JAISoundActivity mActivity;
|
/* 0x04 */ JAISoundActivity mActivity;
|
||||||
|
|
|
@ -17,6 +17,7 @@ public:
|
||||||
JAISoundID() {}
|
JAISoundID() {}
|
||||||
|
|
||||||
bool isAnonymous() { return mId.mFullId == 0xffffffff; }
|
bool isAnonymous() { return mId.mFullId == 0xffffffff; }
|
||||||
|
void setAnonymous() { mId.mFullId = -1; }
|
||||||
|
|
||||||
union {
|
union {
|
||||||
u32 mFullId;
|
u32 mFullId;
|
||||||
|
|
|
@ -10,7 +10,7 @@ class JAISoundID;
|
||||||
class JAISoundHandle {
|
class JAISoundHandle {
|
||||||
public:
|
public:
|
||||||
JAISoundHandle() {sound_ = NULL;};
|
JAISoundHandle() {sound_ = NULL;};
|
||||||
~JAISoundHandle() {}
|
~JAISoundHandle() { releaseSound(); }
|
||||||
|
|
||||||
bool isSoundAttached() const { return sound_ != NULL; }
|
bool isSoundAttached() const { return sound_ != NULL; }
|
||||||
|
|
||||||
|
|
|
@ -4,12 +4,12 @@
|
||||||
#include "JSystem/JAudio2/JAISound.h"
|
#include "JSystem/JAudio2/JAISound.h"
|
||||||
|
|
||||||
struct JAIStreamDataMgr {
|
struct JAIStreamDataMgr {
|
||||||
virtual void getStreamFileEntry(JAISoundID) = 0;
|
virtual s32 getStreamFileEntry(JAISoundID) = 0;
|
||||||
virtual ~JAIStreamDataMgr();
|
virtual ~JAIStreamDataMgr();
|
||||||
};
|
};
|
||||||
|
|
||||||
struct JAIStreamAramMgr {
|
struct JAIStreamAramMgr {
|
||||||
virtual void newStreamAram(u32*) = 0;
|
virtual void* newStreamAram(u32*) = 0;
|
||||||
virtual void deleteStreamAram(u32) = 0;
|
virtual void deleteStreamAram(u32) = 0;
|
||||||
virtual ~JAIStreamAramMgr();
|
virtual ~JAIStreamAramMgr();
|
||||||
};
|
};
|
||||||
|
|
|
@ -4,7 +4,10 @@
|
||||||
#include "JSystem/JAudio2/JAISound.h"
|
#include "JSystem/JAudio2/JAISound.h"
|
||||||
#include "JSystem/JAudio2/JASGadget.h"
|
#include "JSystem/JAudio2/JASGadget.h"
|
||||||
#include "JSystem/JSupport/JSUList.h"
|
#include "JSystem/JSupport/JSUList.h"
|
||||||
|
#include "JSystem/JUtility/JUTAssert.h"
|
||||||
|
|
||||||
|
class JAIStreamAramMgr;
|
||||||
|
class JAIStreamDataMgr;
|
||||||
class JAIStreamMgr;
|
class JAIStreamMgr;
|
||||||
|
|
||||||
class JAIStream {
|
class JAIStream {
|
||||||
|
@ -29,13 +32,23 @@ public:
|
||||||
/* 802A4174 */ void newStream_();
|
/* 802A4174 */ void newStream_();
|
||||||
/* 802B9978 */ void isActive() const;
|
/* 802B9978 */ void isActive() const;
|
||||||
|
|
||||||
|
JAISoundParamsMove* getParams() { return &mParams; }
|
||||||
|
void setStreamDataMgr(JAIStreamDataMgr* param_0) {
|
||||||
|
JUT_ASSERT("JAIStreamMgr.h", 0x8b, !isActive());
|
||||||
|
mStreamDataMgr = param_0;
|
||||||
|
}
|
||||||
|
void setStreamAramMgr(JAIStreamAramMgr* param_0) {
|
||||||
|
JUT_ASSERT("JAIStreamMgr.h", 0x9d, !isActive());
|
||||||
|
mStreamAramMgr = param_0;
|
||||||
|
}
|
||||||
|
|
||||||
private:
|
private:
|
||||||
/* 0x00 */ JAISoundActivity mActivity;
|
/* 0x00 */ JAISoundActivity mActivity;
|
||||||
/* 0x04 */ JAISoundParamsMove mParams;
|
/* 0x04 */ JAISoundParamsMove mParams;
|
||||||
/* 0x54 */ int field_0x54;
|
/* 0x54 */ int field_0x54;
|
||||||
/* 0x58 */ JSUList<JAIStream> mStreamList;
|
/* 0x58 */ JSUList<JAIStream> mStreamList;
|
||||||
/* 0x64 */ int field_0x64;
|
/* 0x64 */ JAIStreamDataMgr * mStreamDataMgr;
|
||||||
/* 0x68 */ int field_0x68;
|
/* 0x68 */ JAIStreamAramMgr* mStreamAramMgr;
|
||||||
/* 0x6C */ int field_0x6c;
|
/* 0x6C */ int field_0x6c;
|
||||||
}; // Size: 0x70
|
}; // Size: 0x70
|
||||||
|
|
||||||
|
|
|
@ -89,9 +89,11 @@ public:
|
||||||
/* 0x1C4 */ float field_0x1c4[6];
|
/* 0x1C4 */ float field_0x1c4[6];
|
||||||
/* 0x1DC */ short field_0x1dc[6];
|
/* 0x1DC */ short field_0x1dc[6];
|
||||||
|
|
||||||
|
u32 getBlockSize() { return sBlockSize; }
|
||||||
|
|
||||||
static u8 sLoadThread[4];
|
static u8 sLoadThread[4];
|
||||||
static u8 sReadBuffer[4];
|
static u8 sReadBuffer[4];
|
||||||
static u8 sBlockSize[4];
|
static u32 sBlockSize;
|
||||||
static u8 sChannelMax[4];
|
static u8 sChannelMax[4];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,36 @@
|
||||||
#ifndef JASBNKPARSER_H
|
#ifndef JASBNKPARSER_H
|
||||||
#define JASBNKPARSER_H
|
#define JASBNKPARSER_H
|
||||||
|
|
||||||
#include "dolphin/types.h"
|
#include "JSystem/JAudio2/JASOscillator.h"
|
||||||
|
|
||||||
|
class JASBank;
|
||||||
|
class JASBasicBank;
|
||||||
|
class JKRHeap;
|
||||||
|
|
||||||
|
namespace JASBNKParser {
|
||||||
|
namespace Ver1 {
|
||||||
|
/* 80299600 */ void findChunk(void const*, u32);
|
||||||
|
/* 8029963C */ void createBasicBank(void const*, JKRHeap*);
|
||||||
|
};
|
||||||
|
|
||||||
|
namespace Ver0 {
|
||||||
|
struct THeader {};
|
||||||
|
|
||||||
|
struct TOsc {};
|
||||||
|
|
||||||
|
/* 80299A3C */ void createBasicBank(void const*, JKRHeap*);
|
||||||
|
/* 80299E68 */ void findOscPtr(JASBasicBank*, JASBNKParser::Ver0::THeader const*,
|
||||||
|
JASBNKParser::Ver0::TOsc const*);
|
||||||
|
/* 80299F8C */ void getOscTableEndPtr(JASOscillator::Point const*);
|
||||||
|
};
|
||||||
|
|
||||||
|
/* 80299538 */ JASBank* createBank(void const*, JKRHeap*);
|
||||||
|
/* 80299558 */ JASBasicBank* createBasicBank(void const*, JKRHeap*);
|
||||||
|
|
||||||
|
inline u32 getBankNumber(const void* param_0) { return ((u32*)param_0)[2]; }
|
||||||
|
|
||||||
|
extern u8 sUsedHeapSize[4];
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
#endif /* JASBNKPARSER_H */
|
#endif /* JASBNKPARSER_H */
|
||||||
|
|
|
@ -0,0 +1,13 @@
|
||||||
|
#ifndef JASBANKLIST_H
|
||||||
|
#define JASBANKLIST_H
|
||||||
|
|
||||||
|
#include "dolphin/types.h"
|
||||||
|
|
||||||
|
class JASBank;
|
||||||
|
|
||||||
|
class JASBankList {
|
||||||
|
public:
|
||||||
|
virtual JASBank* getBank(u32 param_0) const = 0;
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif /* JASBANKLIST_H */
|
|
@ -0,0 +1,22 @@
|
||||||
|
#ifndef JASBANKTABLE_H
|
||||||
|
#define JASBANKTABLE_H
|
||||||
|
|
||||||
|
#include "JSystem/JAudio2/JASBankList.h"
|
||||||
|
#include "JSystem/JAudio2/JASGadget.h"
|
||||||
|
|
||||||
|
template<size_t N>
|
||||||
|
class JASBankTable : public JASBankList {
|
||||||
|
public:
|
||||||
|
JASBank* getBank(u32 param_0) { return mArray.get(param_0); }
|
||||||
|
virtual JASBank* getBank(u32 param_0) const { return mArray.get(param_0); }
|
||||||
|
void registBank(u32 param_0, JASBank* param_1) { mArray.set(param_0, param_1); }
|
||||||
|
|
||||||
|
private:
|
||||||
|
JASPtrArray<JASBank, N> mArray;
|
||||||
|
};
|
||||||
|
|
||||||
|
class JASDefaultBankTable : public JASBankTable<256>, public JASGlobalInstance<JASDefaultBankTable> {
|
||||||
|
public:
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif /* JASBANKLIST_H */
|
|
@ -2,6 +2,7 @@
|
||||||
#define JASGADGET_H
|
#define JASGADGET_H
|
||||||
|
|
||||||
#include "JSystem/JUtility/JUTAssert.h"
|
#include "JSystem/JUtility/JUTAssert.h"
|
||||||
|
#include "MSL_C/string.h"
|
||||||
|
|
||||||
template<class T>
|
template<class T>
|
||||||
class JASGlobalInstance {
|
class JASGlobalInstance {
|
||||||
|
@ -61,7 +62,7 @@ private:
|
||||||
template<class T, size_t N>
|
template<class T, size_t N>
|
||||||
class JASPtrArray : public JASPtrTable<T> {
|
class JASPtrArray : public JASPtrTable<T> {
|
||||||
public:
|
public:
|
||||||
JASPtrArray() : JASPtrTable(mArray, N) {}
|
JASPtrArray() : JASPtrTable<T>(mArray, N) {}
|
||||||
|
|
||||||
private:
|
private:
|
||||||
/* 0x08 */ T* mArray[N];
|
/* 0x08 */ T* mArray[N];
|
||||||
|
|
|
@ -11,7 +11,7 @@ class JKRSolidHeap;
|
||||||
|
|
||||||
class JASHeap {
|
class JASHeap {
|
||||||
public:
|
public:
|
||||||
/* 80290140 */ JASHeap(JASDisposer*);
|
/* 80290140 */ JASHeap(JASDisposer* param_0 = NULL);
|
||||||
/* 802901AC */ void initRootHeap(void*, u32);
|
/* 802901AC */ void initRootHeap(void*, u32);
|
||||||
/* 8029021C */ bool alloc(JASHeap*, u32);
|
/* 8029021C */ bool alloc(JASHeap*, u32);
|
||||||
/* 802903F4 */ bool allocTail(JASHeap*, u32);
|
/* 802903F4 */ bool allocTail(JASHeap*, u32);
|
||||||
|
|
|
@ -86,6 +86,8 @@ public:
|
||||||
/* 802956B0 */ s32 parseCommand(JASTrack*, u8, u16);
|
/* 802956B0 */ s32 parseCommand(JASTrack*, u8, u16);
|
||||||
/* 80295864 */ s32 parseRegCommand(JASTrack*, int);
|
/* 80295864 */ s32 parseRegCommand(JASTrack*, int);
|
||||||
|
|
||||||
|
static void registerSeqCallback(u16 (*param_0)(JASTrack*, u16)) { sCallBackFunc = param_0; }
|
||||||
|
|
||||||
static CmdInfo sCmdInfo[96];
|
static CmdInfo sCmdInfo[96];
|
||||||
static CmdInfo sExtCmdInfo[255];
|
static CmdInfo sExtCmdInfo[255];
|
||||||
static u16 (*sCallBackFunc)(JASTrack*, u16);
|
static u16 (*sCallBackFunc)(JASTrack*, u16);
|
||||||
|
|
|
@ -0,0 +1,32 @@
|
||||||
|
#ifndef JAUAUDIBLEPARAM_H
|
||||||
|
#define JAUAUDIBLEPARAM_H
|
||||||
|
|
||||||
|
#include "dolphin/types.h"
|
||||||
|
|
||||||
|
struct JAUAudibleParam {
|
||||||
|
f32 getDopplerPower() const {
|
||||||
|
return (u32)((*(u8*)&field_0x0.raw >> 4) & 0xf) * (1.0f / 15.0f);
|
||||||
|
}
|
||||||
|
union {
|
||||||
|
struct {
|
||||||
|
u16 f0;
|
||||||
|
u16 f1;
|
||||||
|
} half;
|
||||||
|
struct {
|
||||||
|
u8 b0_0 : 1;
|
||||||
|
u8 b0_1 : 1;
|
||||||
|
u8 b0_2 : 1;
|
||||||
|
u8 b0_3 : 1;
|
||||||
|
u8 b0_4 : 1;
|
||||||
|
u8 b0_5 : 1;
|
||||||
|
u8 b0_6 : 1;
|
||||||
|
u8 b0_7 : 1;
|
||||||
|
u8 b1;
|
||||||
|
u8 b2;
|
||||||
|
u8 b3;
|
||||||
|
} bytes;
|
||||||
|
u32 raw;
|
||||||
|
} field_0x0;
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif /* JAUAUDIBLEPARAM_H */
|
|
@ -2,13 +2,28 @@
|
||||||
#define JAUBANKTABLE_H
|
#define JAUBANKTABLE_H
|
||||||
|
|
||||||
#include "JSystem/JAudio2/JASGadget.h"
|
#include "JSystem/JAudio2/JASGadget.h"
|
||||||
|
#include "JSystem/JAudio2/JASBankList.h"
|
||||||
#include "JSystem/JSupport/JSUList.h"
|
#include "JSystem/JSupport/JSUList.h"
|
||||||
|
|
||||||
struct JASBank;
|
class JASBank;
|
||||||
struct JAUBankTable {
|
class JAUBankTable /* : public JASBankList */ {
|
||||||
/* 802A4AA0 */ /*virtual*/ JASBank* getBank(u32) const;
|
public:
|
||||||
|
JAUBankTable(u32 param_0, JASBank** param_1, u32 param_2) : mBankPtrTable(param_1, param_2) {
|
||||||
|
field_0xc = param_0;
|
||||||
|
}
|
||||||
|
/* 802A4AA0 */ JASBank* getBank(u32) const;
|
||||||
|
|
||||||
|
JASBank* getBank(u32 param_0) { return mBankPtrTable.get(param_0); }
|
||||||
|
void registBank(u32 param_0, JASBank* param_1) { mBankPtrTable.set(param_0, param_1); }
|
||||||
|
|
||||||
/* 0x0 */ void* vtable;
|
/* 0x0 */ void* vtable;
|
||||||
/* 0x4 */ JASPtrTable<JASBank> mBankPtrTable;
|
/* 0x4 */ JASPtrTable<JASBank> mBankPtrTable;
|
||||||
|
/* 0xC */ u32 field_0xc;
|
||||||
|
};
|
||||||
|
|
||||||
|
class JAUBankTableLink : public JSULink<JAUBankTable>, public JAUBankTable {
|
||||||
|
public:
|
||||||
|
JAUBankTableLink(u32 param_0, JASBank** param_1, u32 param_2) : JSULink<JAUBankTable>(this), JAUBankTable(param_0, param_1, param_2) {}
|
||||||
};
|
};
|
||||||
|
|
||||||
struct JAUBankTableDictionary : JSUList<JAUBankTable> {
|
struct JAUBankTableDictionary : JSUList<JAUBankTable> {
|
||||||
|
|
|
@ -9,15 +9,19 @@
|
||||||
#include "MSL_C/bitset.h"
|
#include "MSL_C/bitset.h"
|
||||||
|
|
||||||
class JAISeqData;
|
class JAISeqData;
|
||||||
|
class JAISeqDataMgr;
|
||||||
class JAISeqDataUser;
|
class JAISeqDataUser;
|
||||||
class JAIStreamDataMgr;
|
class JAIStreamDataMgr;
|
||||||
|
class JASVoiceBank;
|
||||||
|
class JAUBankTableLink;
|
||||||
class JAUDisposer_;
|
class JAUDisposer_;
|
||||||
class JAUSectionHeap;
|
class JAUSectionHeap;
|
||||||
class JAUSeqDataMgr_SeqCollection;
|
class JAUSoundTable;
|
||||||
|
class JAUSoundNameTable;
|
||||||
class JKRArchive;
|
class JKRArchive;
|
||||||
class JKRSolidHeap;
|
class JKRSolidHeap;
|
||||||
|
|
||||||
class JAUSection /* : public JKRDisposer, JSULink<JAUSection> */ {
|
class JAUSection /* : public JKRDisposer, protected JSULink<JAUSection> */ {
|
||||||
public:
|
public:
|
||||||
struct TSectionData {
|
struct TSectionData {
|
||||||
/* 802A4EE8 */ TSectionData();
|
/* 802A4EE8 */ TSectionData();
|
||||||
|
@ -26,12 +30,12 @@ public:
|
||||||
|
|
||||||
/* 0x00 */ JAUDynamicSeqDataBlocks field_0x00;
|
/* 0x00 */ JAUDynamicSeqDataBlocks field_0x00;
|
||||||
/* 0x28 */ JSUList<JAUSeqDataBlock> field_0x28;
|
/* 0x28 */ JSUList<JAUSeqDataBlock> field_0x28;
|
||||||
/* 0x34 */ std::bitset<255> field_0x34;
|
/* 0x34 */ std::bitset<255> registeredWaveBankTables;
|
||||||
/* 0x54 */ std::bitset<255> field_0x54;
|
/* 0x54 */ std::bitset<255> registeredBankTables;
|
||||||
/* 0x74 */ JAUBankTableDictionary field_0x74;
|
/* 0x74 */ JAUBankTableDictionary field_0x74;
|
||||||
/* 0x80 */ int field_0x80;
|
/* 0x80 */ JAISeqDataMgr* field_0x80;
|
||||||
/* 0x84 */ int field_0x84;
|
/* 0x84 */ const void* mBstDst;
|
||||||
/* 0x88 */ int field_0x88;
|
/* 0x88 */ const void* mBstnDst;
|
||||||
/* 0x8C */ JSUList<JAUDisposer_> field_0x8c;
|
/* 0x8C */ JSUList<JAUDisposer_> field_0x8c;
|
||||||
/* 0x98 */ s32 field_0x98;
|
/* 0x98 */ s32 field_0x98;
|
||||||
/* 0x9C */ int field_0x9c;
|
/* 0x9C */ int field_0x9c;
|
||||||
|
@ -40,34 +44,35 @@ public:
|
||||||
|
|
||||||
/* 802A5060 */ JAUSection(JAUSectionHeap*, u32, s32);
|
/* 802A5060 */ JAUSection(JAUSectionHeap*, u32, s32);
|
||||||
/* 802A50F8 */ void finishBuild();
|
/* 802A50F8 */ void finishBuild();
|
||||||
/* 802A5160 */ void dispose();
|
/* 802A5160 */ /* virtual */ void dispose();
|
||||||
/* 802A51E4 */ void newSoundTable(void const*, u32, bool);
|
/* 802A51E4 */ JAUSoundTable* newSoundTable(void const*, u32, bool);
|
||||||
/* 802A52A0 */ void newSoundNameTable(void const*, u32, bool);
|
/* 802A52A0 */ JAUSoundNameTable* newSoundNameTable(void const*, u32, bool);
|
||||||
/* 802A535C */ void newStreamFileTable(void const*, bool);
|
/* 802A535C */ JAIStreamDataMgr* newStreamFileTable(void const*, bool);
|
||||||
/* 802A5500 */ void newSeSeqCollection(void const*, u32);
|
/* 802A5500 */ JAISeqDataMgr* newSeSeqCollection(void const*, u32);
|
||||||
/* 802A5598 */ void newStaticSeqDataBlock_(JAISoundID, u32);
|
/* 802A5598 */ u8* newStaticSeqDataBlock_(JAISoundID, u32);
|
||||||
/* 802A56C8 */ void newStaticSeqData(JAISoundID, void const*, u32);
|
/* 802A56C8 */ bool newStaticSeqData(JAISoundID, void const*, u32);
|
||||||
/* 802A5730 */ void newStaticSeqData(JAISoundID);
|
/* 802A5730 */ bool newStaticSeqData(JAISoundID);
|
||||||
/* 802A57F0 */ void newCopy(void const*, u32, s32);
|
/* 802A57F0 */ void* newCopy(void const*, u32, s32);
|
||||||
/* 802A5854 */ void newWaveBank(u32, void const*);
|
/* 802A5854 */ JASWaveBank* newWaveBank(u32, void const*);
|
||||||
/* 802A5948 */ void loadWaveArc(u32, u32);
|
/* 802A5948 */ bool loadWaveArc(u32, u32);
|
||||||
/* 802A5A50 */ void newBank(void const*, u32);
|
/* 802A5A50 */ JASBank* newBank(void const*, u32);
|
||||||
/* 802A5B84 */ void newVoiceBank(u32, u32);
|
/* 802A5B84 */ JASVoiceBank* newVoiceBank(u32, u32);
|
||||||
/* 802A5CAC */ void beginNewBankTable(u32, u32);
|
/* 802A5CAC */ bool beginNewBankTable(u32, u32);
|
||||||
/* 802A5D9C */ void endNewBankTable();
|
/* 802A5D9C */ JAUBankTable* endNewBankTable();
|
||||||
/* 802A6468 */ ~JAUSection();
|
/* 802A6468 */ /* virtual */ ~JAUSection();
|
||||||
|
|
||||||
bool isBuilding() { return field_0x2c; }
|
bool isBuilding() { return field_0x2c; }
|
||||||
//bool isOpen() { return this == sectionHeap_->getOpenSection(); }
|
bool isOpen();
|
||||||
JAUSectionHeap* asSectionHeap() { return (JAUSection*)sectionHeap_ == this ? sectionHeap_ : NULL; }
|
JAUSectionHeap* asSectionHeap() { return (JAUSection*)sectionHeap_ == this ? sectionHeap_ : NULL; }
|
||||||
|
JKRHeap* getHeap_();
|
||||||
|
|
||||||
/* 0x00 */ JKRDisposer base1;
|
/* 0x00 */ JKRDisposer base1;
|
||||||
/* 0x18 */ JSULink<JAUSection> base2;
|
/* 0x18 */ JSULink<JAUSection> base2;
|
||||||
/* 0x28 */ u32 field_0x28;
|
/* 0x28 */ u32 field_0x28;
|
||||||
/* 0x2C */ bool field_0x2c;
|
/* 0x2C */ bool field_0x2c;
|
||||||
/* 0x30 */ JAUSectionHeap* sectionHeap_;
|
/* 0x30 */ JAUSectionHeap* sectionHeap_;
|
||||||
/* 0x34 */ int field_0x34;
|
/* 0x34 */ JAUBankTableLink* buildingBankTable_;
|
||||||
/* 0x38 */ TSectionData mSectionData;
|
/* 0x38 */ TSectionData data_;
|
||||||
};
|
};
|
||||||
|
|
||||||
class JAUSectionHeap /* : public JAUSection, JASGlobalInstance<JAUSectionHeap>, JAISeqDataMgr */ {
|
class JAUSectionHeap /* : public JAUSection, JASGlobalInstance<JAUSectionHeap>, JAISeqDataMgr */ {
|
||||||
|
@ -75,34 +80,39 @@ public:
|
||||||
struct TSectionHeapData {
|
struct TSectionHeapData {
|
||||||
/* 802A5DF4 */ TSectionHeapData();
|
/* 802A5DF4 */ TSectionHeapData();
|
||||||
|
|
||||||
/* 0x000 */ JAUWaveBankTable field_0x000;
|
/* 0x000 */ JAUWaveBankTable waveBankTable;
|
||||||
/* 0x404 */ JAISeqDataUser* seqDataUser;
|
/* 0x404 */ JAISeqDataUser* seqDataUser;
|
||||||
/* 0x408 */ JAUDynamicSeqDataBlocks field_0x408;
|
/* 0x408 */ JAUDynamicSeqDataBlocks field_0x408;
|
||||||
/* 0x430 */ JAUSeqDataMgr_SeqCollection* field_0x430;
|
/* 0x430 */ JAISeqDataMgr* seSeqDataMgr_;
|
||||||
/* 0x434 */ JAIStreamDataMgr* field_0x434;
|
/* 0x434 */ JAIStreamDataMgr* streamDataMgr_;
|
||||||
/* 0x438 */ int field_0x438;
|
/* 0x438 */ JAUSoundTable* soundTable;
|
||||||
/* 0x43C */ int field_0x43c;
|
/* 0x43C */ JAUSoundNameTable* soundNameTable;
|
||||||
};
|
};
|
||||||
|
|
||||||
/* 802A5E60 */ void setSeqDataArchive(JKRArchive*);
|
/* 802A5E60 */ void setSeqDataArchive(JKRArchive*);
|
||||||
/* 802A5EC0 */ void loadDynamicSeq(JAISoundID, bool);
|
/* 802A5EC0 */ bool loadDynamicSeq(JAISoundID, bool);
|
||||||
/* 802A5EF8 */ void releaseIdleDynamicSeqDataBlock();
|
/* 802A5EF8 */ void releaseIdleDynamicSeqDataBlock();
|
||||||
/* 802A5FE0 */ JAUSectionHeap(JKRSolidHeap*, bool, s32);
|
/* 802A5FE0 */ JAUSectionHeap(JKRSolidHeap*, bool, s32);
|
||||||
/* 802A6094 */ JAUSection* getOpenSection();
|
/* 802A6094 */ JAUSection* getOpenSection();
|
||||||
/* 802A60A0 */ void setSeqDataUser(JAISeqDataUser*);
|
/* 802A60A0 */ bool setSeqDataUser(JAISeqDataUser*);
|
||||||
/* 802A60AC */ void newDynamicSeqBlock(u32);
|
/* 802A60AC */ bool newDynamicSeqBlock(u32);
|
||||||
/* 802A61D0 */ int getSeqData(JAISoundID, JAISeqData*);
|
/* 802A61D0 */ s32 getSeqData(JAISoundID, JAISeqData*);
|
||||||
/* 802A6270 */ int releaseSeqData();
|
/* 802A6270 */ int releaseSeqData();
|
||||||
/* 802A6278 */ ~JAUSectionHeap();
|
/* 802A6278 */ ~JAUSectionHeap();
|
||||||
|
|
||||||
|
JAUWaveBankTable& getWaveBankTable() { return sectionHeapData_.waveBankTable; }
|
||||||
|
|
||||||
/* 0x00 */ JAUSection base1;
|
/* 0x00 */ JAUSection base1;
|
||||||
/* 0xDC */ u8 base2[0xE0 - 0xDC]; // JAISeqDataMgr
|
/* 0xDC */ u8 base2[0xE0 - 0xDC]; // JAISeqDataMgr
|
||||||
/* 0xE0 */ JKRSolidHeap* mHeap;
|
/* 0xE0 */ JKRHeap* mHeap;
|
||||||
/* 0xE4 */ int field_0xe4;
|
/* 0xE4 */ int field_0xe4;
|
||||||
/* 0xE8 */ JSUList<JAUSection> mSectionList;
|
/* 0xE8 */ JSUList<JAUSection> mSectionList;
|
||||||
/* 0xF4 */ TSectionHeapData field_0xf4;
|
/* 0xF4 */ TSectionHeapData sectionHeapData_;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
inline JKRHeap* JAUSection::getHeap_() { return sectionHeap_->mHeap; }
|
||||||
|
inline bool JAUSection::isOpen() { return this == sectionHeap_->getOpenSection(); }
|
||||||
|
|
||||||
JAUSectionHeap* JAUNewSectionHeap(bool);
|
JAUSectionHeap* JAUNewSectionHeap(bool);
|
||||||
|
|
||||||
#endif /* JAUSECTIONHEAP_H */
|
#endif /* JAUSECTIONHEAP_H */
|
||||||
|
|
|
@ -21,7 +21,7 @@ public:
|
||||||
/* 0x0C */ int field_0xc;
|
/* 0x0C */ int field_0xc;
|
||||||
};
|
};
|
||||||
|
|
||||||
class JAUSeqDataMgr_SeqCollection : JAISeqDataMgr, JAUSeqCollection {
|
class JAUSeqDataMgr_SeqCollection : public JAISeqDataMgr, public JAUSeqCollection {
|
||||||
public:
|
public:
|
||||||
/* 802A677C */ JAUSeqDataMgr_SeqCollection();
|
/* 802A677C */ JAUSeqDataMgr_SeqCollection();
|
||||||
/* 802A67D0 */ bool setSeqDataUser(JAISeqDataUser*);
|
/* 802A67D0 */ bool setSeqDataUser(JAISeqDataUser*);
|
||||||
|
|
|
@ -10,6 +10,12 @@ class JKRArchive;
|
||||||
|
|
||||||
struct JAUSeqDataBlock {
|
struct JAUSeqDataBlock {
|
||||||
/* 802A68F4 */ JAUSeqDataBlock();
|
/* 802A68F4 */ JAUSeqDataBlock();
|
||||||
|
|
||||||
|
/* 0x00 */ JSULink<JAUSeqDataBlock> field_0x0;
|
||||||
|
/* 0x10 */ JAISoundID field_0x10;
|
||||||
|
/* 0x14 */ u8* field_0x14;
|
||||||
|
/* 0x18 */ u32 field_0x18;
|
||||||
|
/* 0x1C */ int field_0x1c;
|
||||||
};
|
};
|
||||||
|
|
||||||
class JAUSeqDataBlocks {
|
class JAUSeqDataBlocks {
|
||||||
|
@ -27,13 +33,15 @@ class JAUDynamicSeqDataBlocks {
|
||||||
public:
|
public:
|
||||||
/* 802A6A58 */ JAUDynamicSeqDataBlocks();
|
/* 802A6A58 */ JAUDynamicSeqDataBlocks();
|
||||||
/* 802A6AA0 */ void setSeqDataArchive(JKRArchive*);
|
/* 802A6AA0 */ void setSeqDataArchive(JKRArchive*);
|
||||||
/* 802A6AA8 */ void getSeqData(JAISoundID, JAISeqDataUser*, JAISeqData*, bool);
|
/* 802A6AA8 */ s32 getSeqData(JAISoundID, JAISeqDataUser*, JAISeqData*, bool);
|
||||||
/* 802A6B8C */ void appendDynamicSeqDataBlock(JAUSeqDataBlock*);
|
/* 802A6B8C */ bool appendDynamicSeqDataBlock(JAUSeqDataBlock*);
|
||||||
/* 802A6C18 */ void loadDynamicSeq(JAISoundID, bool, JAISeqDataUser*);
|
/* 802A6C18 */ bool loadDynamicSeq(JAISoundID, bool, JAISeqDataUser*);
|
||||||
/* 802A6D48 */ void releaseIdleDynamicSeqDataBlock(JAISeqDataUser*);
|
/* 802A6D48 */ void releaseIdleDynamicSeqDataBlock(JAISeqDataUser*);
|
||||||
/* 802A6E00 */ void releaseIdleDynamicSeqDataBlock_(JAISeqDataUser*, u32);
|
/* 802A6E00 */ void releaseIdleDynamicSeqDataBlock_(JAISeqDataUser*, u32);
|
||||||
/* 802A6EDC */ void rearrangeLoadingSeqs_();
|
/* 802A6EDC */ void rearrangeLoadingSeqs_();
|
||||||
|
|
||||||
|
JKRArchive* getSeqDataArchive() { return seqDataArchive_; }
|
||||||
|
|
||||||
/* 0x00 */ JAUSeqDataBlocks field_0x0;
|
/* 0x00 */ JAUSeqDataBlocks field_0x0;
|
||||||
/* 0x0C */ JAUSeqDataBlocks field_0xc;
|
/* 0x0C */ JAUSeqDataBlocks field_0xc;
|
||||||
/* 0x18 */ JAUSeqDataBlocks field_0x18;
|
/* 0x18 */ JAUSeqDataBlocks field_0x18;
|
||||||
|
|
|
@ -0,0 +1,14 @@
|
||||||
|
#ifndef JAUSOUNDINFO_H
|
||||||
|
#define JAUSOUNDINFO_H
|
||||||
|
|
||||||
|
#include "JSystem/JAudio2/JAISound.h"
|
||||||
|
#include "JSystem/JAudio2/JASGadget.h"
|
||||||
|
|
||||||
|
class JAUSoundInfo : public JASGlobalInstance<JAUSoundInfo> {
|
||||||
|
public:
|
||||||
|
JAUSoundInfo(bool param_0) : JASGlobalInstance<JAUSoundInfo>(param_0) {}
|
||||||
|
virtual void getAudibleSw(JAISoundID) const = 0;
|
||||||
|
virtual u16 getBgmSeqResourceID(JAISoundID) const = 0;
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif /* JAUSOUNDINFO_H */
|
|
@ -4,14 +4,31 @@
|
||||||
#include "JSystem/JAudio2/JAISound.h"
|
#include "JSystem/JAudio2/JAISound.h"
|
||||||
#include "JSystem/JAudio2/JASGadget.h"
|
#include "JSystem/JAudio2/JASGadget.h"
|
||||||
|
|
||||||
struct JAUSoundTable : public JASGlobalInstance<JAUSoundTable> {
|
class JAUSoundTable : public JASGlobalInstance<JAUSoundTable> {
|
||||||
|
public:
|
||||||
|
JAUSoundTable(bool param_0) : JASGlobalInstance<JAUSoundTable>(param_0) {
|
||||||
|
field_0x0 = NULL;
|
||||||
|
field_0x4 = 0;
|
||||||
|
}
|
||||||
|
~JAUSoundTable() {}
|
||||||
/* 802A7114 */ void init(void const*);
|
/* 802A7114 */ void init(void const*);
|
||||||
/* 802A7160 */ void getTypeID(JAISoundID) const;
|
/* 802A7160 */ u8 getTypeID(JAISoundID) const;
|
||||||
/* 802A728C */ void getData(JAISoundID) const;
|
/* 802A728C */ void getData(JAISoundID) const;
|
||||||
|
|
||||||
|
void* field_0x0;
|
||||||
|
int field_0x4;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct JAUSoundNameTable : public JASGlobalInstance<JAUSoundNameTable> {
|
struct JAUSoundNameTable : public JASGlobalInstance<JAUSoundNameTable> {
|
||||||
|
JAUSoundNameTable(bool param_0) : JASGlobalInstance<JAUSoundNameTable>(param_0) {
|
||||||
|
field_0x0 = NULL;
|
||||||
|
field_0x4 = 0;
|
||||||
|
}
|
||||||
|
~JAUSoundNameTable() {}
|
||||||
/* 802A73D4 */ void init(void const*);
|
/* 802A73D4 */ void init(void const*);
|
||||||
|
|
||||||
|
void* field_0x0;
|
||||||
|
int field_0x4;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif /* JAUSOUNDTABLE_H */
|
#endif /* JAUSOUNDTABLE_H */
|
||||||
|
|
|
@ -0,0 +1,92 @@
|
||||||
|
#ifndef JAUSTREAMSTATICARAMMGR_H
|
||||||
|
#define JAUSTREAMSTATICARAMMGR_H
|
||||||
|
|
||||||
|
#include "JSystem/JAudio2/JAIStreamDataMgr.h"
|
||||||
|
#include "JSystem/JAudio2/JASAramStream.h"
|
||||||
|
#include "JSystem/JAudio2/JASHeapCtrl.h"
|
||||||
|
#include "JSystem/JUtility/JUTAssert.h"
|
||||||
|
#include "MSL_C/bitset.h"
|
||||||
|
|
||||||
|
template <size_t A0>
|
||||||
|
class JAUStreamAramMgrBase_ : public JAIStreamAramMgr {
|
||||||
|
public:
|
||||||
|
JAUStreamAramMgrBase_() {
|
||||||
|
for (int i = 0; i < A0; i++) {
|
||||||
|
field_0x4.reset(0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
~JAUStreamAramMgrBase_() { releaseAram_JAUStreamAramMgrBase_(); }
|
||||||
|
bool isStreamUsingAram() { return field_0x4.any(); }
|
||||||
|
void releaseAram_JAUStreamAramMgrBase_() {
|
||||||
|
JUT_ASSERT("JAUStreamAramMgr.h", 0x26, ! isStreamUsingAram());
|
||||||
|
for (int i = 0; i >= 0; i--) {
|
||||||
|
if (mHeaps[i].isAllocated()) {
|
||||||
|
JASHeap* heap = mHeaps[i];
|
||||||
|
heap.free();
|
||||||
|
if (!heap) {
|
||||||
|
JUT_ASSERT("JAUStreamAramMgr.h", 0x2f, 0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
protected:
|
||||||
|
std::bitset<A0> field_0x4;
|
||||||
|
JASHeap mHeaps[A0];
|
||||||
|
};
|
||||||
|
|
||||||
|
template <size_t MAX_CHUNKS_>
|
||||||
|
class JAUStreamStaticAramMgr_ : public JAUStreamAramMgrBase_<MAX_CHUNKS_> {
|
||||||
|
public:
|
||||||
|
JAUStreamStaticAramMgr_() { field_0x4c = 0; }
|
||||||
|
virtual void* newStreamAram(u32* param_0) {
|
||||||
|
for (int i = 0; i < field_0x4c; i++) {
|
||||||
|
if (this->field_0x4.test(i)) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
this->field_0x4.set(i, true);
|
||||||
|
param_0 = this->mHeaps[i].getSize();
|
||||||
|
return this->mHeaps[i].getBase();
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
virtual void deleteStreamAram(u32 param_0) {
|
||||||
|
for (int i = 0; i < field_0x4c; i++) {
|
||||||
|
if (!this->field_0x4.test(i)) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
if (this->mHeaps[i].getBase() == param_0) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
this->field_0x4.reset(i);
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
bool isAramReserved() const { return field_0x4c; }
|
||||||
|
void reserveAram(JASHeap* heap, int numReserve, u32 param_2) {
|
||||||
|
JUT_ASSERT("JAUStreamAramMgr.h", 0x48, ! isAramReserved());
|
||||||
|
JUT_ASSERT("JAUStreamAramMgr.h", 0x49, ! JAUStreamAramMgrBase_ < MAX_CHUNKS_ >::isStreamUsingAram());
|
||||||
|
if (!heap) {
|
||||||
|
heap = JASKernel::getAramHeap();
|
||||||
|
}
|
||||||
|
if (numReserve < 1) {
|
||||||
|
numReserve = 1;
|
||||||
|
}
|
||||||
|
JUT_ASSERT("JAUStreamAramMgr.h", 0x53, numReserve <= MAX_CHUNKS);
|
||||||
|
int r27 = param_2 * JASAramStream::getBlockSize();
|
||||||
|
for (int i = 0; i < numReserve; i++) {
|
||||||
|
if (!this->mHeaps[i].alloc(heap, r27)) {
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
field_0x4c = i + 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private:
|
||||||
|
static const size_t MAX_CHUNKS = MAX_CHUNKS_;
|
||||||
|
|
||||||
|
int field_0x4c;
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif /* JAUSTREAMSTATICARAMMGR_H */
|
|
@ -1,7 +1,7 @@
|
||||||
#ifndef JAUSTREAMFILETABLE_H
|
#ifndef JAUSTREAMFILETABLE_H
|
||||||
#define JAUSTREAMFILETABLE_H
|
#define JAUSTREAMFILETABLE_H
|
||||||
|
|
||||||
#include "JSystem/JAudio2/JAISound.h"
|
#include "JSystem/JAudio2/JAIStreamDataMgr.h"
|
||||||
|
|
||||||
struct BinaryStreamFileTable {
|
struct BinaryStreamFileTable {
|
||||||
/* 0x0 */ char mIdentifier[4];
|
/* 0x0 */ char mIdentifier[4];
|
||||||
|
@ -15,18 +15,14 @@ struct JAUStreamFileTable {
|
||||||
/* 802A7478 */ int getNumFiles() const;
|
/* 802A7478 */ int getNumFiles() const;
|
||||||
/* 802A7484 */ const char* getFilePath(int) const;
|
/* 802A7484 */ const char* getFilePath(int) const;
|
||||||
|
|
||||||
|
bool isValid() { return mData; }
|
||||||
|
|
||||||
/* 0x0 */ const BinaryStreamFileTable* mData;
|
/* 0x0 */ const BinaryStreamFileTable* mData;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct JAIStreamDataMgr {
|
struct JAUStreamDataMgr_StreamFileTable : public JAIStreamDataMgr, JAUStreamFileTable {
|
||||||
/* 802A3AD8 */ ~JAIStreamDataMgr();
|
/* 802A74AC */ virtual s32 getStreamFileEntry(JAISoundID);
|
||||||
};
|
|
||||||
|
|
||||||
struct JAUStreamDataMgr_StreamFileTable : JAIStreamDataMgr {
|
|
||||||
/* 802A74AC */ virtual int getStreamFileEntry(JAISoundID);
|
|
||||||
/* 802A74E8 */ virtual ~JAUStreamDataMgr_StreamFileTable() {}
|
/* 802A74E8 */ virtual ~JAUStreamDataMgr_StreamFileTable() {}
|
||||||
|
|
||||||
/* 0x4 */ JAUStreamFileTable mStreamFileTable;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif /* JAUSTREAMFILETABLE_H */
|
#endif /* JAUSTREAMFILETABLE_H */
|
||||||
|
|
|
@ -223,6 +223,10 @@ inline JKRHeap* JKRGetCurrentHeap() {
|
||||||
return JKRHeap::getCurrentHeap();
|
return JKRHeap::getCurrentHeap();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
inline JKRHeap* JKRSetCurrentHeap(JKRHeap* heap) {
|
||||||
|
return heap->becomeCurrentHeap();
|
||||||
|
}
|
||||||
|
|
||||||
inline u32 JKRGetMemBlockSize(JKRHeap* heap, void* block) {
|
inline u32 JKRGetMemBlockSize(JKRHeap* heap, void* block) {
|
||||||
return JKRHeap::getSize(block, heap);
|
return JKRHeap::getSize(block, heap);
|
||||||
}
|
}
|
||||||
|
|
|
@ -57,4 +57,8 @@ public:
|
||||||
static JKRSolidHeap* create(u32, JKRHeap*, bool);
|
static JKRSolidHeap* create(u32, JKRHeap*, bool);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
inline JKRSolidHeap* JKRCreateSolidHeap(u32 param_0, JKRHeap* heap, bool param_2) {
|
||||||
|
return JKRSolidHeap::create(param_0, heap, param_2);
|
||||||
|
}
|
||||||
|
|
||||||
#endif /* JKRSOLIDHEAP_H */
|
#endif /* JKRSOLIDHEAP_H */
|
||||||
|
|
|
@ -10,6 +10,39 @@ ForwardIterator upper_bound(ForwardIterator first, ForwardIterator last, const T
|
||||||
|
|
||||||
template<class InputIt, class UnaryPredicate>
|
template<class InputIt, class UnaryPredicate>
|
||||||
InputIt find_if(InputIt first, InputIt last, UnaryPredicate p);
|
InputIt find_if(InputIt first, InputIt last, UnaryPredicate p);
|
||||||
|
|
||||||
|
/*
|
||||||
|
template<class OutputIt, class Size, int A2>
|
||||||
|
struct __fill_n {
|
||||||
|
OutputIt fill_n(OutputIt first, Size count, const unsigned long& value);
|
||||||
|
};
|
||||||
|
|
||||||
|
template<>
|
||||||
|
unsigned long* __fill_n<unsigned long, long, 0>::fill_n(unsigned long* first, long count, const unsigned long& value) {
|
||||||
|
for (; count > 0; count--) {
|
||||||
|
*first++ = value;
|
||||||
|
}
|
||||||
|
return first;
|
||||||
|
}
|
||||||
|
|
||||||
|
template<class OutputIt, class Size, class T>
|
||||||
|
OutputIt fill_n(OutputIt first, Size count, const T& value) {
|
||||||
|
return __fill_n::fill_n(first, count, value);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
template<class ForwardIt, class T>
|
||||||
|
void __fill(ForwardIt first, ForwardIt last, const T& value, std::random_access_iterator_tag param_3) {
|
||||||
|
fill_n(first, last - first, value);
|
||||||
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
|
template<class ForwardIt, class T>
|
||||||
|
void fill(ForwardIt first, ForwardIt last, const T& value) {
|
||||||
|
for (; first != last; ++first){
|
||||||
|
*first = value;
|
||||||
|
}
|
||||||
|
}
|
||||||
} // namespace std
|
} // namespace std
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -1,8 +1,17 @@
|
||||||
#ifndef MSL_BITSET_H_
|
#ifndef MSL_BITSET_H_
|
||||||
#define MSL_BITSET_H_
|
#define MSL_BITSET_H_
|
||||||
|
|
||||||
|
#include "MSL_C/algorithm.h"
|
||||||
|
#include "MSL_C/stdio.h"
|
||||||
|
#include "MSL_C/stdlib.h"
|
||||||
|
|
||||||
namespace std {
|
namespace std {
|
||||||
|
// TODO: where does this go?
|
||||||
|
inline void __msl_error(const char* param_0) {
|
||||||
|
fprintf(stderr, param_0);
|
||||||
|
abort();
|
||||||
|
}
|
||||||
|
|
||||||
template<size_t N> class __bitset_base {
|
template<size_t N> class __bitset_base {
|
||||||
public:
|
public:
|
||||||
__bitset_base();
|
__bitset_base();
|
||||||
|
@ -15,13 +24,56 @@ private:
|
||||||
size_t data[N];
|
size_t data[N];
|
||||||
};
|
};
|
||||||
|
|
||||||
template<size_t N> class bitset : private __bitset_base<(N - 1) / sizeof(size_t) + 1> {
|
template<size_t N> __bitset_base<N>::__bitset_base() {
|
||||||
public:
|
std::fill(data, data + N, 0);
|
||||||
bitset();
|
}
|
||||||
|
|
||||||
void set(size_t pos, bool val);
|
template<size_t N> bool __bitset_base<N>::test(size_t pos) const {
|
||||||
void reset(size_t pos);
|
size_t i = pos / (sizeof(size_t) * 8);
|
||||||
bool test(size_t pos) const;
|
size_t mask = 1 << (pos % (sizeof(size_t) * 8));
|
||||||
|
return data[i] & mask;
|
||||||
|
}
|
||||||
|
|
||||||
|
template<size_t N> void __bitset_base<N>::set(size_t pos, bool val) {
|
||||||
|
size_t i = pos / (sizeof(size_t) * 8);
|
||||||
|
size_t mask = 1 << (pos % (sizeof(size_t) * 8));
|
||||||
|
if (val) {
|
||||||
|
data[i] |= mask;
|
||||||
|
} else {
|
||||||
|
data[i] &= ~mask;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
template<size_t N> void __bitset_base<N>::reset(size_t pos) {
|
||||||
|
size_t i = pos / (sizeof(size_t) * 8);
|
||||||
|
size_t mask = 1 << (pos % (sizeof(size_t) * 8));
|
||||||
|
data[i] &= ~mask;
|
||||||
|
}
|
||||||
|
|
||||||
|
template<size_t N> class bitset : private __bitset_base<(N - 1) / (sizeof(size_t) * 8) + 1> {
|
||||||
|
public:
|
||||||
|
typedef __bitset_base<(N - 1) / (sizeof(size_t) * 8) + 1> base;
|
||||||
|
|
||||||
|
bitset() {};
|
||||||
|
|
||||||
|
void set(size_t pos, bool val) {
|
||||||
|
if (pos >= N) {
|
||||||
|
__msl_error("index out of range of bitset::set");
|
||||||
|
}
|
||||||
|
base::set(pos, val);
|
||||||
|
}
|
||||||
|
void reset(size_t pos) {
|
||||||
|
if (pos >= N) {
|
||||||
|
__msl_error("index out of range of bitset::reset");
|
||||||
|
}
|
||||||
|
base::reset(pos);
|
||||||
|
}
|
||||||
|
bool test(size_t pos) const {
|
||||||
|
if (pos >= N) {
|
||||||
|
__msl_error("index out of range of bitset::test");
|
||||||
|
}
|
||||||
|
return base::test(pos);
|
||||||
|
}
|
||||||
bool any() const;
|
bool any() const;
|
||||||
};
|
};
|
||||||
} // namespace std
|
} // namespace std
|
||||||
|
|
|
@ -6,37 +6,12 @@
|
||||||
#include "JSystem/JAudio2/JAIAudible.h"
|
#include "JSystem/JAudio2/JAIAudible.h"
|
||||||
#include "JSystem/JAudio2/JASSoundParams.h"
|
#include "JSystem/JAudio2/JASSoundParams.h"
|
||||||
#include "JSystem/JAudio2/JASHeapCtrl.h"
|
#include "JSystem/JAudio2/JASHeapCtrl.h"
|
||||||
|
#include "JSystem/JAudio2/JAUAudibleParam.h"
|
||||||
#include "JSystem/TPosition3.hh"
|
#include "JSystem/TPosition3.hh"
|
||||||
#include "dolphin/mtx/mtxvec.h"
|
#include "dolphin/mtx/mtxvec.h"
|
||||||
|
|
||||||
struct Z2Audible;
|
struct Z2Audible;
|
||||||
|
|
||||||
struct JAUAudibleParam {
|
|
||||||
f32 getDopplerPower() const {
|
|
||||||
return (u32)((*(u8*)&field_0x0.raw >> 4) & 0xf) * (1.0f / 15.0f);
|
|
||||||
}
|
|
||||||
union {
|
|
||||||
struct {
|
|
||||||
u16 f0;
|
|
||||||
u16 f1;
|
|
||||||
} half;
|
|
||||||
struct {
|
|
||||||
u8 b0_0 : 1;
|
|
||||||
u8 b0_1 : 1;
|
|
||||||
u8 b0_2 : 1;
|
|
||||||
u8 b0_3 : 1;
|
|
||||||
u8 b0_4 : 1;
|
|
||||||
u8 b0_5 : 1;
|
|
||||||
u8 b0_6 : 1;
|
|
||||||
u8 b0_7 : 1;
|
|
||||||
u8 b1;
|
|
||||||
u8 b2;
|
|
||||||
u8 b3;
|
|
||||||
} bytes;
|
|
||||||
u32 raw;
|
|
||||||
} field_0x0;
|
|
||||||
};
|
|
||||||
|
|
||||||
struct Z2AudibleAbsPos {
|
struct Z2AudibleAbsPos {
|
||||||
/* 802BBCDC */ void calc(JGeometry::TVec3<f32> const&);
|
/* 802BBCDC */ void calc(JGeometry::TVec3<f32> const&);
|
||||||
/* 802BBD18 */ void init(JGeometry::TVec3<f32>*, JGeometry::TVec3<f32> const&,
|
/* 802BBD18 */ void init(JGeometry::TVec3<f32>*, JGeometry::TVec3<f32> const&,
|
||||||
|
|
|
@ -3,13 +3,14 @@
|
||||||
|
|
||||||
#include "JSystem/JAudio2/JAUAudioArcLoader.h"
|
#include "JSystem/JAudio2/JAUAudioArcLoader.h"
|
||||||
|
|
||||||
class Z2AudioArcLoader {
|
class Z2AudioArcLoader : public JAUAudioArcLoader {
|
||||||
|
public:
|
||||||
Z2AudioArcLoader(JAUSection*);
|
Z2AudioArcLoader(JAUSection*);
|
||||||
~Z2AudioArcLoader();
|
virtual ~Z2AudioArcLoader();
|
||||||
|
|
||||||
void readCommandMore(u32);
|
virtual bool readCommandMore(u32);
|
||||||
void readBFCA(const void*);
|
void readBFCA(const void*);
|
||||||
void readBSTN(const void*, u32);
|
virtual void readBSTN(const void*, u32);
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif /* Z2AUDIOARCLOADER_H */
|
#endif /* Z2AUDIOARCLOADER_H */
|
||||||
|
|
|
@ -7,6 +7,7 @@
|
||||||
#include "Z2AudioLib/Z2SceneMgr.h"
|
#include "Z2AudioLib/Z2SceneMgr.h"
|
||||||
#include "Z2AudioLib/Z2SeMgr.h"
|
#include "Z2AudioLib/Z2SeMgr.h"
|
||||||
#include "Z2AudioLib/Z2SeqMgr.h"
|
#include "Z2AudioLib/Z2SeqMgr.h"
|
||||||
|
#include "Z2AudioLib/Z2SoundInfo.h"
|
||||||
#include "Z2AudioLib/Z2SoundMgr.h"
|
#include "Z2AudioLib/Z2SoundMgr.h"
|
||||||
#include "Z2AudioLib/Z2SoundObjMgr.h"
|
#include "Z2AudioLib/Z2SoundObjMgr.h"
|
||||||
#include "Z2AudioLib/Z2SpeechMgr2.h"
|
#include "Z2AudioLib/Z2SpeechMgr2.h"
|
||||||
|
@ -17,7 +18,7 @@
|
||||||
class JKRArchive;
|
class JKRArchive;
|
||||||
class JKRSolidHeap;
|
class JKRSolidHeap;
|
||||||
|
|
||||||
class Z2AudioMgr {
|
class Z2AudioMgr : public Z2SeMgr, public Z2SeqMgr, public Z2SceneMgr, public Z2StatusMgr, public Z2SoundObjMgr {
|
||||||
public:
|
public:
|
||||||
Z2AudioMgr();
|
Z2AudioMgr();
|
||||||
~Z2AudioMgr() {}
|
~Z2AudioMgr() {}
|
||||||
|
@ -33,19 +34,13 @@ public:
|
||||||
|
|
||||||
static Z2AudioMgr* mAudioMgrPtr;
|
static Z2AudioMgr* mAudioMgrPtr;
|
||||||
|
|
||||||
/* 0x0000 */ Z2SeMgr mSeMgr;
|
/* 0x0514 */ virtual int startSound(JAISoundID, JAISoundHandle*, JGeometry::TVec3<f32> const*);
|
||||||
/* 0x03D0 */ Z2SeqMgr mSeqMgr;
|
|
||||||
/* 0x04A4 */ Z2SceneMgr mSceneMgr;
|
|
||||||
/* 0x04C4 */ Z2StatusMgr mStatusMgr;
|
|
||||||
/* 0x04F4 */ Z2SoundObjMgr mSoundObjMgr;
|
|
||||||
/* 0x0514 */ virtual void startSound(JAISoundID, JAISoundHandle*, JGeometry::TVec3<f32> const*);
|
|
||||||
/* 0x0518 */ bool mResettingFlag;
|
/* 0x0518 */ bool mResettingFlag;
|
||||||
/* 0x0519 */ bool field_0x519;
|
/* 0x0519 */ bool field_0x519;
|
||||||
/* 0x051C */ JASAudioReseter mAudioReseter;
|
/* 0x051C */ JASAudioReseter mAudioReseter;
|
||||||
/* 0x052C */ Z2SoundStarter mSoundStarter;
|
/* 0x052C */ Z2SoundStarter mSoundStarter;
|
||||||
/* 0x0530 */ Z2SoundMgr mSoundMgr;
|
/* 0x0530 */ Z2SoundMgr mSoundMgr;
|
||||||
/* 0x0D40 */ // Z2SoundInfo mSoundInfo;
|
/* 0x0D40 */ Z2SoundInfo mSoundInfo;
|
||||||
/* 0x0D40 */ void* mSoundInfo[3]; // remove later
|
|
||||||
/* 0x0D4C */ Z2Audience mAudience;
|
/* 0x0D4C */ Z2Audience mAudience;
|
||||||
/* 0x0F2C */ Z2SpeechMgr2 mSpeechMgr;
|
/* 0x0F2C */ Z2SpeechMgr2 mSpeechMgr;
|
||||||
/* 0x1370 */ Z2FxLineMgr mFxLineMgr;
|
/* 0x1370 */ Z2FxLineMgr mFxLineMgr;
|
||||||
|
|
|
@ -10,6 +10,12 @@ enum CurveSign {
|
||||||
};
|
};
|
||||||
|
|
||||||
struct FNoise1f {
|
struct FNoise1f {
|
||||||
|
FNoise1f(float param_0 = 0.1f, float param_1 = 0.0f, float param_2 = 0.01f) {
|
||||||
|
unk0 = param_0;
|
||||||
|
unk4 = param_0;
|
||||||
|
unk8 = param_2;
|
||||||
|
unk12 = param_1;
|
||||||
|
}
|
||||||
void setParam(float, float, float);
|
void setParam(float, float, float);
|
||||||
float tau(float);
|
float tau(float);
|
||||||
float calcNoise1f();
|
float calcNoise1f();
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
#include "global.h"
|
#include "global.h"
|
||||||
|
|
||||||
struct Z2EnvSeBase {
|
struct Z2EnvSeBase {
|
||||||
/* 802C589C */ Z2EnvSeBase(Vec*);
|
/* 802C589C */ Z2EnvSeBase(Vec* param_0 = NULL);
|
||||||
/* 802C58AC */ ~Z2EnvSeBase();
|
/* 802C58AC */ ~Z2EnvSeBase();
|
||||||
/* 802C5908 */ void startEnvSe(JAISoundID, f32, f32, f32, f32, f32, u32);
|
/* 802C5908 */ void startEnvSe(JAISoundID, f32, f32, f32, f32, f32, u32);
|
||||||
/* 802C5AB4 */ void startEnvSeLevel(JAISoundID, f32, f32, f32, f32, f32, u32);
|
/* 802C5AB4 */ void startEnvSeLevel(JAISoundID, f32, f32, f32, f32, f32, u32);
|
||||||
|
@ -31,7 +31,7 @@ struct Z2EnvSeAutoPan : public Z2EnvSeBase {
|
||||||
}; // Size: 0x1C
|
}; // Size: 0x1C
|
||||||
|
|
||||||
struct Z2EnvSeDir : public Z2EnvSeBase {
|
struct Z2EnvSeDir : public Z2EnvSeBase {
|
||||||
/* 802C5C9C */ Z2EnvSeDir(Vec*);
|
/* 802C5C9C */ Z2EnvSeDir(Vec* param_0 = NULL);
|
||||||
/* 802C5D1C */ ~Z2EnvSeDir();
|
/* 802C5D1C */ ~Z2EnvSeDir();
|
||||||
/* 802C5D70 */ void setPanDir(Vec*);
|
/* 802C5D70 */ void setPanDir(Vec*);
|
||||||
/* 802C5D9C */ void calcPan(f32);
|
/* 802C5D9C */ void calcPan(f32);
|
||||||
|
@ -111,7 +111,7 @@ struct Z2EnvSeMgr : public JASGlobalInstance<Z2EnvSeMgr> {
|
||||||
/* 0x120 */ Z2Calc::FNoise1f field_0x120;
|
/* 0x120 */ Z2Calc::FNoise1f field_0x120;
|
||||||
/* 0x130 */ Z2Calc::FNoise1f field_0x130;
|
/* 0x130 */ Z2Calc::FNoise1f field_0x130;
|
||||||
/* 0x140 */ u8 field_0x140;
|
/* 0x140 */ u8 field_0x140;
|
||||||
/* 0x141 */ u8 field_0x141;
|
/* 0x141 */ u8 mSnowPower;
|
||||||
/* 0x144 */ Z2EnvSeDir field_0x144;
|
/* 0x144 */ Z2EnvSeDir field_0x144;
|
||||||
/* 0x160 */ u8 mWindType;
|
/* 0x160 */ u8 mWindType;
|
||||||
/* 0x164 */ Z2MultiSeMgr field_0x164;
|
/* 0x164 */ Z2MultiSeMgr field_0x164;
|
||||||
|
@ -158,7 +158,7 @@ struct Z2EnvSeMgr : public JASGlobalInstance<Z2EnvSeMgr> {
|
||||||
/* 0x2E4 */ u8 field_0x2e4;
|
/* 0x2E4 */ u8 field_0x2e4;
|
||||||
/* 0x2E8 */ Z2Calc::FNoise1f field_0x2e8;
|
/* 0x2E8 */ Z2Calc::FNoise1f field_0x2e8;
|
||||||
/* 0x2F8 */ Z2Calc::FNoise1f field_0x2f8;
|
/* 0x2F8 */ Z2Calc::FNoise1f field_0x2f8;
|
||||||
/* 0x308 */ f32 field_0x308;
|
/* 0x308 */ f32 mFogDensity;
|
||||||
}; // Size: 0x30C
|
}; // Size: 0x30C
|
||||||
|
|
||||||
STATIC_ASSERT(sizeof(Z2EnvSeMgr) == 0x30C);
|
STATIC_ASSERT(sizeof(Z2EnvSeMgr) == 0x30C);
|
||||||
|
|
|
@ -13,6 +13,8 @@ struct Z2MultiSeMgr {
|
||||||
void getPanPower();
|
void getPanPower();
|
||||||
void getDolbyPower();
|
void getDolbyPower();
|
||||||
|
|
||||||
|
void setVolumeScale(f32 param_0) { mVolumeScale = param_0; }
|
||||||
|
|
||||||
/* 0x00 */ float mVolumeScale;
|
/* 0x00 */ float mVolumeScale;
|
||||||
/* 0x04 */ float mMaxVolume;
|
/* 0x04 */ float mMaxVolume;
|
||||||
/* 0x08 */ float mMaxPowL;
|
/* 0x08 */ float mMaxPowL;
|
||||||
|
|
|
@ -2,33 +2,27 @@
|
||||||
#define Z2SOUNDINFO_H
|
#define Z2SOUNDINFO_H
|
||||||
|
|
||||||
#include "JSystem/JAudio2/JAISoundInfo.h"
|
#include "JSystem/JAudio2/JAISoundInfo.h"
|
||||||
|
#include "JSystem/JAudio2/JAIStreamDataMgr.h"
|
||||||
|
#include "JSystem/JAudio2/JAUSoundInfo.h"
|
||||||
|
|
||||||
struct JAUSoundInfo : public JASGlobalInstance<JAUSoundInfo> {
|
class Z2SoundInfo : public JAISoundInfo, public JAUSoundInfo, public JAIStreamDataMgr, public JASGlobalInstance<Z2SoundInfo> {
|
||||||
virtual void getAudibleSw(JAISoundID) const = 0;
|
public:
|
||||||
virtual void getBgmSeqResourceID(JAISoundID) const = 0;
|
Z2SoundInfo() : JAISoundInfo(true), JAUSoundInfo(true), JASGlobalInstance<Z2SoundInfo>(true) {}
|
||||||
};
|
/* 802BB448 */ virtual void getAudibleSw(JAISoundID) const;
|
||||||
|
/* 802BB00C */ virtual u16 getBgmSeqResourceID(JAISoundID) const;
|
||||||
struct JAIStreamDataMgr {
|
/* 802BBA88 */ virtual s32 getStreamFileEntry(JAISoundID);
|
||||||
virtual void getStreamFileEntry(JAISoundID) = 0;
|
/* 802BB090 */ virtual u32 getSoundType(JAISoundID) const;
|
||||||
virtual ~JAIStreamDataMgr();
|
/* 802BB0D8 */ virtual int getCategory(JAISoundID) const;
|
||||||
};
|
/* 802BB0E0 */ virtual u32 getPriority(JAISoundID) const;
|
||||||
|
/* 802BB6DC */ virtual void getSeInfo(JAISoundID, JAISe*) const;
|
||||||
struct Z2SoundInfo /* : public JAISoundInfo, public JAUSoundInfo, public JAIStreamDataMgr */ : public JASGlobalInstance<Z2SoundInfo> {
|
/* 802BB8B4 */ virtual void getSeqInfo(JAISoundID, JAISeq*) const;
|
||||||
/* 802BB00C */ void getBgmSeqResourceID(JAISoundID) const;
|
/* 802BB8E0 */ virtual void getStreamInfo(JAISoundID, JAIStream*) const;
|
||||||
/* 802BB158 */ u32 getAudibleSwFull(JAISoundID);
|
|
||||||
/* 802BB448 */ void getAudibleSw(JAISoundID) const;
|
|
||||||
/* 802BBA10 */ void getStreamFilePath(JAISoundID);
|
|
||||||
/* 802BBA88 */ void getStreamFileEntry(JAISoundID);
|
|
||||||
/* 802BBAC8 */ void getSwBit(JAISoundID) const;
|
|
||||||
/* 802BBB48 */ void getSoundInfo_(JAISoundID, JAISound*) const;
|
|
||||||
|
|
||||||
/* 802BB090 */ void getSoundType(JAISoundID) const;
|
|
||||||
/* 802BB0D8 */ void getCategory(JAISoundID) const;
|
|
||||||
/* 802BB0E0 */ void getPriority(JAISoundID) const;
|
|
||||||
/* 802BB6DC */ void getSeInfo(JAISoundID, JAISe*) const;
|
|
||||||
/* 802BB8B4 */ void getSeqInfo(JAISoundID, JAISeq*) const;
|
|
||||||
/* 802BB8E0 */ void getStreamInfo(JAISoundID, JAIStream*) const;
|
|
||||||
/* 802BBBE0 */ virtual ~Z2SoundInfo();
|
/* 802BBBE0 */ virtual ~Z2SoundInfo();
|
||||||
|
|
||||||
|
/* 802BB158 */ u32 getAudibleSwFull(JAISoundID);
|
||||||
|
/* 802BBA10 */ const char* getStreamFilePath(JAISoundID);
|
||||||
|
/* 802BBAC8 */ int getSwBit(JAISoundID) const;
|
||||||
|
/* 802BBB48 */ void getSoundInfo_(JAISoundID, JAISound*) const;
|
||||||
};
|
};
|
||||||
|
|
||||||
inline Z2SoundInfo* Z2GetSoundInfo() {
|
inline Z2SoundInfo* Z2GetSoundInfo() {
|
||||||
|
|
|
@ -6,6 +6,8 @@
|
||||||
#include "JSystem/JAudio2/JAIStreamMgr.h"
|
#include "JSystem/JAudio2/JAIStreamMgr.h"
|
||||||
#include "global.h"
|
#include "global.h"
|
||||||
|
|
||||||
|
u16 seqCallback(JASTrack* param_0, u16 param_1);
|
||||||
|
|
||||||
class Z2SoundMgr : public JASGlobalInstance<Z2SoundMgr> {
|
class Z2SoundMgr : public JASGlobalInstance<Z2SoundMgr> {
|
||||||
public:
|
public:
|
||||||
/* 802A9E80 */ Z2SoundMgr();
|
/* 802A9E80 */ Z2SoundMgr();
|
||||||
|
@ -23,10 +25,12 @@ public:
|
||||||
/* 802AA9E8 */ void multiVolumeSoundID(JAISoundID, f32);
|
/* 802AA9E8 */ void multiVolumeSoundID(JAISoundID, f32);
|
||||||
/* 802AAAC4 */ void isPlayingSoundID(JAISoundID);
|
/* 802AAAC4 */ void isPlayingSoundID(JAISoundID);
|
||||||
|
|
||||||
/* 802A9EE8 */ virtual void startSound(JAISoundID, JAISoundHandle*,
|
/* 802A9EE8 */ virtual int startSound(JAISoundID, JAISoundHandle*,
|
||||||
JGeometry::TVec3<f32> const*);
|
JGeometry::TVec3<f32> const*);
|
||||||
|
|
||||||
JAISeMgr* getSeMgr() { return &mSeMgr; }
|
JAISeMgr* getSeMgr() { return &mSeMgr; }
|
||||||
|
JAISeqMgr* getSeqMgr() { return &mSeqMgr; }
|
||||||
|
JAIStreamMgr* getStreamMgr() { return &mStreamMgr; }
|
||||||
|
|
||||||
private:
|
private:
|
||||||
/* 0x004 */ JAISeMgr mSeMgr;
|
/* 0x004 */ JAISeMgr mSeMgr;
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
#include "Z2AudioLib/Z2AudioMgr.h"
|
#include "Z2AudioLib/Z2AudioMgr.h"
|
||||||
#include "Z2AudioLib/Z2EnvSeMgr.h"
|
#include "Z2AudioLib/Z2EnvSeMgr.h"
|
||||||
|
|
||||||
class mDoAud_zelAudio_c {
|
class mDoAud_zelAudio_c : public Z2AudioMgr {
|
||||||
public:
|
public:
|
||||||
void reset();
|
void reset();
|
||||||
mDoAud_zelAudio_c() {}
|
mDoAud_zelAudio_c() {}
|
||||||
|
@ -22,8 +22,6 @@ public:
|
||||||
static bool mInitFlag;
|
static bool mInitFlag;
|
||||||
static bool mResetFlag;
|
static bool mResetFlag;
|
||||||
static bool mBgmSet;
|
static bool mBgmSet;
|
||||||
|
|
||||||
Z2AudioMgr mAudioMgr;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
extern JKRSolidHeap* g_mDoAud_audioHeap;
|
extern JKRSolidHeap* g_mDoAud_audioHeap;
|
||||||
|
@ -38,73 +36,73 @@ static void mDoAud_setLinkHp(s32 param_0, s32 param_1);
|
||||||
static void mDoAud_seStartLevel(u32 param_0, Vec const* param_1, u32 param_2, s8 param_3);
|
static void mDoAud_seStartLevel(u32 param_0, Vec const* param_1, u32 param_2, s8 param_3);
|
||||||
|
|
||||||
inline void mDoAud_bgmSetSwordUsing(s32 id) {
|
inline void mDoAud_bgmSetSwordUsing(s32 id) {
|
||||||
Z2AudioMgr::getInterface()->mSeqMgr.bgmSetSwordUsing(id);
|
Z2AudioMgr::getInterface()->bgmSetSwordUsing(id);
|
||||||
}
|
}
|
||||||
|
|
||||||
inline void mDoAud_bgmStart(u32 i_bgmID) {
|
inline void mDoAud_bgmStart(u32 i_bgmID) {
|
||||||
Z2AudioMgr::getInterface()->mSeqMgr.bgmStart(i_bgmID, 0, 0);
|
Z2AudioMgr::getInterface()->bgmStart(i_bgmID, 0, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
inline void mDoAud_subBgmStart(u32 i_bgmID) {
|
inline void mDoAud_subBgmStart(u32 i_bgmID) {
|
||||||
Z2AudioMgr::getInterface()->mSeqMgr.subBgmStart(i_bgmID);
|
Z2AudioMgr::getInterface()->subBgmStart(i_bgmID);
|
||||||
}
|
}
|
||||||
|
|
||||||
inline void mDoAud_bgmNowBattle(f32 param_0) {
|
inline void mDoAud_bgmNowBattle(f32 param_0) {
|
||||||
Z2AudioMgr::getInterface()->mSeqMgr.bgmNowBattle(param_0);
|
Z2AudioMgr::getInterface()->bgmNowBattle(param_0);
|
||||||
}
|
}
|
||||||
|
|
||||||
inline void mDoAud_bgmStreamPrepare(u32 param_0) {
|
inline void mDoAud_bgmStreamPrepare(u32 param_0) {
|
||||||
Z2AudioMgr::getInterface()->mSeqMgr.bgmStreamPrepare(param_0);
|
Z2AudioMgr::getInterface()->bgmStreamPrepare(param_0);
|
||||||
}
|
}
|
||||||
|
|
||||||
inline void mDoAud_bgmStreamPlay() {
|
inline void mDoAud_bgmStreamPlay() {
|
||||||
Z2AudioMgr::getInterface()->mSeqMgr.bgmStreamPlay();
|
Z2AudioMgr::getInterface()->bgmStreamPlay();
|
||||||
}
|
}
|
||||||
|
|
||||||
inline void mDoAud_setHour(s32 hour) {
|
inline void mDoAud_setHour(s32 hour) {
|
||||||
Z2AudioMgr::getInterface()->mStatusMgr.setHour(hour);
|
Z2AudioMgr::getInterface()->setHour(hour);
|
||||||
}
|
}
|
||||||
|
|
||||||
inline void mDoAud_setMinute(s32 min) {
|
inline void mDoAud_setMinute(s32 min) {
|
||||||
Z2AudioMgr::getInterface()->mStatusMgr.setMinute(min);
|
Z2AudioMgr::getInterface()->setMinute(min);
|
||||||
}
|
}
|
||||||
|
|
||||||
inline void mDoAud_setWeekday(s32 day) {
|
inline void mDoAud_setWeekday(s32 day) {
|
||||||
Z2AudioMgr::getInterface()->mStatusMgr.setWeekday(day);
|
Z2AudioMgr::getInterface()->setWeekday(day);
|
||||||
}
|
}
|
||||||
|
|
||||||
inline void mDoAud_setInDarkness(bool state) {
|
inline void mDoAud_setInDarkness(bool state) {
|
||||||
Z2AudioMgr::getInterface()->mSceneMgr.setInDarkness(state);
|
Z2AudioMgr::getInterface()->setInDarkness(state);
|
||||||
}
|
}
|
||||||
|
|
||||||
inline void mDoAud_seStart(u32 i_sfxID, const Vec* i_sePos, u32 param_2, s8 i_reverb) {
|
inline void mDoAud_seStart(u32 i_sfxID, const Vec* i_sePos, u32 param_2, s8 i_reverb) {
|
||||||
Z2AudioMgr::getInterface()->mSeMgr.seStart(i_sfxID, i_sePos, param_2, i_reverb, 1.0f, 1.0f,
|
Z2AudioMgr::getInterface()->seStart(i_sfxID, i_sePos, param_2, i_reverb, 1.0f, 1.0f,
|
||||||
-1.0f, -1.0f, 0);
|
-1.0f, -1.0f, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
inline void i_mDoAud_seStartLevel(u32 i_sfxID, const Vec* i_sePos, u32 param_2, s8 i_reverb) {
|
inline void i_mDoAud_seStartLevel(u32 i_sfxID, const Vec* i_sePos, u32 param_2, s8 i_reverb) {
|
||||||
Z2AudioMgr::getInterface()->mSeMgr.seStartLevel(i_sfxID, i_sePos, param_2, i_reverb, 1.0f, 1.0f,
|
Z2AudioMgr::getInterface()->seStartLevel(i_sfxID, i_sePos, param_2, i_reverb, 1.0f, 1.0f,
|
||||||
-1.0f, -1.0f, 0);
|
-1.0f, -1.0f, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
inline void mDoAud_messageSePlay(u16 param_0, Vec* position, s8 param_2) {
|
inline void mDoAud_messageSePlay(u16 param_0, Vec* position, s8 param_2) {
|
||||||
Z2AudioMgr::getInterface()->mSeMgr.messageSePlay(param_0, position, param_2);
|
Z2AudioMgr::getInterface()->messageSePlay(param_0, position, param_2);
|
||||||
}
|
}
|
||||||
|
|
||||||
inline void mDoAud_sceneBgmStart() {
|
inline void mDoAud_sceneBgmStart() {
|
||||||
Z2AudioMgr::getInterface()->mSceneMgr.sceneBgmStart();
|
Z2AudioMgr::getInterface()->sceneBgmStart();
|
||||||
}
|
}
|
||||||
|
|
||||||
inline void mDoAud_load2ndDynamicWave() {
|
inline void mDoAud_load2ndDynamicWave() {
|
||||||
Z2AudioMgr::getInterface()->mSceneMgr.load2ndDynamicWave();
|
Z2AudioMgr::getInterface()->load2ndDynamicWave();
|
||||||
}
|
}
|
||||||
|
|
||||||
inline bool mDoAud_check1stDynamicWave() {
|
inline bool mDoAud_check1stDynamicWave() {
|
||||||
return Z2AudioMgr::getInterface()->mSceneMgr.check1stDynamicWave();
|
return Z2AudioMgr::getInterface()->check1stDynamicWave();
|
||||||
}
|
}
|
||||||
|
|
||||||
inline void mDoAud_bgmStop(u32 param_0) {
|
inline void mDoAud_bgmStop(u32 param_0) {
|
||||||
Z2AudioMgr::getInterface()->mSeqMgr.bgmStop(param_0, 0);
|
Z2AudioMgr::getInterface()->bgmStop(param_0, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
inline void mDoAud_rainPlay(s32 enable) {
|
inline void mDoAud_rainPlay(s32 enable) {
|
||||||
|
@ -112,7 +110,7 @@ inline void mDoAud_rainPlay(s32 enable) {
|
||||||
}
|
}
|
||||||
|
|
||||||
inline void mDoAud_heartGaugeOn() {
|
inline void mDoAud_heartGaugeOn() {
|
||||||
Z2AudioMgr::getInterface()->mStatusMgr.heartGaugeOn();
|
Z2AudioMgr::getInterface()->heartGaugeOn();
|
||||||
}
|
}
|
||||||
|
|
||||||
inline void mDoAud_setSnowPower(s8 i_power) {
|
inline void mDoAud_setSnowPower(s8 i_power) {
|
||||||
|
|
|
@ -138,7 +138,7 @@ u8 JASAramStream::sLoadThread[4];
|
||||||
u8 JASAramStream::sReadBuffer[4];
|
u8 JASAramStream::sReadBuffer[4];
|
||||||
|
|
||||||
/* 80451258-8045125C 000758 0004+00 6/6 1/1 0/0 .sbss sBlockSize__13JASAramStream */
|
/* 80451258-8045125C 000758 0004+00 6/6 1/1 0/0 .sbss sBlockSize__13JASAramStream */
|
||||||
u8 JASAramStream::sBlockSize[4];
|
u32 JASAramStream::sBlockSize;
|
||||||
|
|
||||||
/* 8045125C-80451260 00075C 0004+00 1/1 0/0 0/0 .sbss sChannelMax__13JASAramStream */
|
/* 8045125C-80451260 00075C 0004+00 1/1 0/0 0/0 .sbss sChannelMax__13JASAramStream */
|
||||||
u8 JASAramStream::sChannelMax[4];
|
u8 JASAramStream::sChannelMax[4];
|
||||||
|
|
|
@ -14,12 +14,6 @@ struct JKRHeap {
|
||||||
/* 802CE72C */ void getFreeSize();
|
/* 802CE72C */ void getFreeSize();
|
||||||
};
|
};
|
||||||
|
|
||||||
struct JASOscillator {
|
|
||||||
struct Point {};
|
|
||||||
|
|
||||||
struct Data {};
|
|
||||||
};
|
|
||||||
|
|
||||||
template <typename A0>
|
template <typename A0>
|
||||||
struct JASMemPool_MultiThreaded {};
|
struct JASMemPool_MultiThreaded {};
|
||||||
/* JASMemPool_MultiThreaded<JASChannel> */
|
/* JASMemPool_MultiThreaded<JASChannel> */
|
||||||
|
@ -61,29 +55,6 @@ struct JASBasicBank {
|
||||||
/* 80297E80 */ void getInst(int) const;
|
/* 80297E80 */ void getInst(int) const;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct JASBNKParser {
|
|
||||||
struct Ver1 {
|
|
||||||
/* 80299600 */ void findChunk(void const*, u32);
|
|
||||||
/* 8029963C */ void createBasicBank(void const*, JKRHeap*);
|
|
||||||
};
|
|
||||||
|
|
||||||
struct Ver0 {
|
|
||||||
struct THeader {};
|
|
||||||
|
|
||||||
struct TOsc {};
|
|
||||||
|
|
||||||
/* 80299A3C */ void createBasicBank(void const*, JKRHeap*);
|
|
||||||
/* 80299E68 */ void findOscPtr(JASBasicBank*, JASBNKParser::Ver0::THeader const*,
|
|
||||||
JASBNKParser::Ver0::TOsc const*);
|
|
||||||
/* 80299F8C */ void getOscTableEndPtr(JASOscillator::Point const*);
|
|
||||||
};
|
|
||||||
|
|
||||||
/* 80299538 */ void createBank(void const*, JKRHeap*);
|
|
||||||
/* 80299558 */ void createBasicBank(void const*, JKRHeap*);
|
|
||||||
|
|
||||||
static u8 sUsedHeapSize[4];
|
|
||||||
};
|
|
||||||
|
|
||||||
//
|
//
|
||||||
// Forward References:
|
// Forward References:
|
||||||
//
|
//
|
||||||
|
@ -148,7 +119,7 @@ extern "C" extern u8 JASDram[4];
|
||||||
#pragma push
|
#pragma push
|
||||||
#pragma optimization_level 0
|
#pragma optimization_level 0
|
||||||
#pragma optimizewithasm off
|
#pragma optimizewithasm off
|
||||||
asm void JASBNKParser::createBank(void const* param_0, JKRHeap* param_1) {
|
asm JASBank* JASBNKParser::createBank(void const* param_0, JKRHeap* param_1) {
|
||||||
nofralloc
|
nofralloc
|
||||||
#include "asm/JSystem/JAudio2/JASBNKParser/createBank__12JASBNKParserFPCvP7JKRHeap.s"
|
#include "asm/JSystem/JAudio2/JASBNKParser/createBank__12JASBNKParserFPCvP7JKRHeap.s"
|
||||||
}
|
}
|
||||||
|
@ -163,7 +134,7 @@ u8 JASBNKParser::sUsedHeapSize[4];
|
||||||
#pragma push
|
#pragma push
|
||||||
#pragma optimization_level 0
|
#pragma optimization_level 0
|
||||||
#pragma optimizewithasm off
|
#pragma optimizewithasm off
|
||||||
asm void JASBNKParser::createBasicBank(void const* param_0, JKRHeap* param_1) {
|
asm JASBasicBank* JASBNKParser::createBasicBank(void const* param_0, JKRHeap* param_1) {
|
||||||
nofralloc
|
nofralloc
|
||||||
#include "asm/JSystem/JAudio2/JASBNKParser/createBasicBank__12JASBNKParserFPCvP7JKRHeap.s"
|
#include "asm/JSystem/JAudio2/JASBNKParser/createBasicBank__12JASBNKParserFPCvP7JKRHeap.s"
|
||||||
}
|
}
|
||||||
|
|
|
@ -141,7 +141,6 @@ extern "C" u32 FILTER_MODE_IIR__6JASDsp;
|
||||||
// External References:
|
// External References:
|
||||||
//
|
//
|
||||||
|
|
||||||
SECTION_INIT void memset();
|
|
||||||
extern "C" void __ct__17JASGenericMemPoolFv();
|
extern "C" void __ct__17JASGenericMemPoolFv();
|
||||||
extern "C" void __dt__17JASGenericMemPoolFv();
|
extern "C" void __dt__17JASGenericMemPoolFv();
|
||||||
extern "C" void alloc__17JASGenericMemPoolFUl();
|
extern "C" void alloc__17JASGenericMemPoolFUl();
|
||||||
|
|
|
@ -4,69 +4,70 @@
|
||||||
//
|
//
|
||||||
|
|
||||||
#include "JSystem/JAudio2/JAUSectionHeap.h"
|
#include "JSystem/JAudio2/JAUSectionHeap.h"
|
||||||
|
#include "JSystem/JAudio2/JAIStreamDataMgr.h"
|
||||||
|
#include "JSystem/JAudio2/JASBNKParser.h"
|
||||||
|
#include "JSystem/JAudio2/JASBankTable.h"
|
||||||
|
#include "JSystem/JAudio2/JASBasicWaveBank.h"
|
||||||
|
#include "JSystem/JAudio2/JASCriticalSection.h"
|
||||||
|
#include "JSystem/JAudio2/JASHeapCtrl.h"
|
||||||
|
#include "JSystem/JAudio2/JASResArcLoader.h"
|
||||||
|
#include "JSystem/JAudio2/JASVoiceBank.h"
|
||||||
|
#include "JSystem/JAudio2/JAUSeqCollection.h"
|
||||||
|
#include "JSystem/JAudio2/JAUSoundInfo.h"
|
||||||
|
#include "JSystem/JAudio2/JAUSoundTable.h"
|
||||||
|
#include "JSystem/JAudio2/JAUStreamFileTable.h"
|
||||||
|
#include "JSystem/JKernel/JKRSolidHeap.h"
|
||||||
#include "MSL_C/stdlib.h"
|
#include "MSL_C/stdlib.h"
|
||||||
#include "dol2asm.h"
|
#include "dol2asm.h"
|
||||||
|
#include "dolphin/dvd/dvd.h"
|
||||||
|
|
||||||
//
|
//
|
||||||
// Types:
|
// Types:
|
||||||
//
|
//
|
||||||
|
|
||||||
struct JKRHeap {
|
|
||||||
/* 802CE438 */ void becomeCurrentHeap();
|
|
||||||
/* 802CE5F8 */ void freeTail();
|
|
||||||
/* 802CE72C */ void getFreeSize();
|
|
||||||
};
|
|
||||||
|
|
||||||
struct JKRSolidHeap {
|
|
||||||
/* 802D0A24 */ void create(u32, JKRHeap*, bool);
|
|
||||||
};
|
|
||||||
|
|
||||||
struct JKRArchive {};
|
|
||||||
|
|
||||||
struct JAUStreamFileTable {
|
|
||||||
/* 802A7420 */ JAUStreamFileTable();
|
|
||||||
/* 802A742C */ void init(void const*);
|
|
||||||
/* 802A7478 */ void getNumFiles() const;
|
|
||||||
/* 802A7484 */ void getFilePath(int) const;
|
|
||||||
};
|
|
||||||
|
|
||||||
struct JAUSoundTable {
|
|
||||||
/* 802A7114 */ void init(void const*);
|
|
||||||
};
|
|
||||||
|
|
||||||
struct JAUSoundNameTable {
|
|
||||||
/* 802A73D4 */ void init(void const*);
|
|
||||||
};
|
|
||||||
|
|
||||||
struct JAUSeqDataMgr_SeqCollection {
|
|
||||||
/* 802A677C */ JAUSeqDataMgr_SeqCollection();
|
|
||||||
};
|
|
||||||
|
|
||||||
struct JAUSeqCollection {
|
|
||||||
/* 802A66AC */ void init(void const*);
|
|
||||||
};
|
|
||||||
|
|
||||||
struct JASHeap {};
|
|
||||||
|
|
||||||
struct JASWaveArc {
|
|
||||||
/* 8029A4C0 */ void load(JASHeap*);
|
|
||||||
};
|
|
||||||
|
|
||||||
struct JASWSParser {
|
struct JASWSParser {
|
||||||
/* 80298FD8 */ void createWaveBank(void const*, JKRHeap*);
|
/* 80298FD8 */ static JASWaveBank* createWaveBank(void const*, JKRHeap*);
|
||||||
};
|
};
|
||||||
|
|
||||||
struct JASResArcLoader {
|
namespace {
|
||||||
/* 80290BD0 */ void getResSize(JKRArchive const*, u16);
|
class TPushCurrentHeap {
|
||||||
};
|
public:
|
||||||
|
TPushCurrentHeap(JKRHeap* heap) { mHeap = JKRSetCurrentHeap(heap); }
|
||||||
|
~TPushCurrentHeap() { JKRSetCurrentHeap(mHeap); }
|
||||||
|
|
||||||
struct JASBNKParser {
|
private:
|
||||||
/* 80299538 */ void createBank(void const*, JKRHeap*);
|
JKRHeap* mHeap;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct JAIStreamDataMgr {
|
class TStreamDataMgr : public JAIStreamDataMgr {
|
||||||
/* 802A3AD8 */ ~JAIStreamDataMgr();
|
public:
|
||||||
};
|
TStreamDataMgr(const void* param_0) {
|
||||||
|
JAUStreamFileTable stack_14;
|
||||||
|
stack_14.init(param_0);
|
||||||
|
if (!stack_14.isValid()) {
|
||||||
|
field_0x4 = 0;
|
||||||
|
field_0x8 = NULL;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
field_0x4 = stack_14.getNumFiles();
|
||||||
|
field_0x8 = new s32[field_0x4];
|
||||||
|
if (!field_0x8) {
|
||||||
|
field_0x4 = NULL;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
for (u32 i = 0; i < field_0x4; i++) {
|
||||||
|
field_0x8[i] = DVDConvertPathToEntrynum(stack_14.getFilePath(i));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
virtual s32 getStreamFileEntry(JAISoundID);
|
||||||
|
virtual ~TStreamDataMgr();
|
||||||
|
|
||||||
|
bool isValid() { return field_0x4; }
|
||||||
|
|
||||||
|
s32 field_0x4;
|
||||||
|
s32* field_0x8;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Forward References:
|
// Forward References:
|
||||||
|
@ -122,8 +123,6 @@ extern "C" extern char const* const JAUSectionHeap__stringBase0;
|
||||||
// External References:
|
// External References:
|
||||||
//
|
//
|
||||||
|
|
||||||
SECTION_INIT void memset();
|
|
||||||
SECTION_INIT void memcpy();
|
|
||||||
extern "C" void getResSize__15JASResArcLoaderFPC10JKRArchiveUs();
|
extern "C" void getResSize__15JASResArcLoaderFPC10JKRArchiveUs();
|
||||||
extern "C" void createWaveBank__11JASWSParserFPCvP7JKRHeap();
|
extern "C" void createWaveBank__11JASWSParserFPCvP7JKRHeap();
|
||||||
extern "C" void createBank__12JASBNKParserFPCvP7JKRHeap();
|
extern "C" void createBank__12JASBNKParserFPCvP7JKRHeap();
|
||||||
|
@ -163,9 +162,6 @@ extern "C" void __dt__10JSUPtrLinkFv();
|
||||||
extern "C" void __dt__10JSUPtrListFv();
|
extern "C" void __dt__10JSUPtrListFv();
|
||||||
extern "C" void initiate__10JSUPtrListFv();
|
extern "C" void initiate__10JSUPtrListFv();
|
||||||
extern "C" void append__10JSUPtrListFP10JSUPtrLink();
|
extern "C" void append__10JSUPtrListFP10JSUPtrLink();
|
||||||
extern "C" void OSDisableInterrupts();
|
|
||||||
extern "C" void OSRestoreInterrupts();
|
|
||||||
extern "C" void DVDConvertPathToEntrynum();
|
|
||||||
extern "C" void _savegpr_26();
|
extern "C" void _savegpr_26();
|
||||||
extern "C" void _savegpr_27();
|
extern "C" void _savegpr_27();
|
||||||
extern "C" void _savegpr_28();
|
extern "C" void _savegpr_28();
|
||||||
|
@ -174,7 +170,6 @@ extern "C" void _restgpr_26();
|
||||||
extern "C" void _restgpr_27();
|
extern "C" void _restgpr_27();
|
||||||
extern "C" void _restgpr_28();
|
extern "C" void _restgpr_28();
|
||||||
extern "C" void _restgpr_29();
|
extern "C" void _restgpr_29();
|
||||||
extern "C" void fprintf();
|
|
||||||
extern "C" extern void* __vt__11JASBankList[3 + 1 /* padding */];
|
extern "C" extern void* __vt__11JASBankList[3 + 1 /* padding */];
|
||||||
extern "C" extern void* __vt__7JASBank[5];
|
extern "C" extern void* __vt__7JASBank[5];
|
||||||
extern "C" extern void* __vt__12JASVoiceBank[5 + 1 /* padding */];
|
extern "C" extern void* __vt__12JASVoiceBank[5 + 1 /* padding */];
|
||||||
|
@ -186,7 +181,6 @@ extern "C" extern u8 data_80450B54[4];
|
||||||
extern "C" extern u8 data_80450B58[4];
|
extern "C" extern u8 data_80450B58[4];
|
||||||
extern "C" extern u8 data_80450B90[4 + 4 /* padding */];
|
extern "C" extern u8 data_80450B90[4 + 4 /* padding */];
|
||||||
extern "C" extern u8 data_80450CC0[4 + 4 /* padding */];
|
extern "C" extern u8 data_80450CC0[4 + 4 /* padding */];
|
||||||
extern "C" extern u8 JASDram[4];
|
|
||||||
extern "C" extern u8 __OSReport_disable;
|
extern "C" extern u8 __OSReport_disable;
|
||||||
|
|
||||||
//
|
//
|
||||||
|
@ -194,6 +188,18 @@ extern "C" extern u8 __OSReport_disable;
|
||||||
//
|
//
|
||||||
|
|
||||||
/* 802A4EE8-802A4F68 29F828 0080+00 1/1 0/0 0/0 .text __ct__Q210JAUSection12TSectionDataFv */
|
/* 802A4EE8-802A4F68 29F828 0080+00 1/1 0/0 0/0 .text __ct__Q210JAUSection12TSectionDataFv */
|
||||||
|
// wild destructors appeared!
|
||||||
|
#ifdef NONMATCHING
|
||||||
|
JAUSection::TSectionData::TSectionData() {
|
||||||
|
resetRegisteredWaveBankTables();
|
||||||
|
resetRegisteredBankTables();
|
||||||
|
field_0x84 = 0;
|
||||||
|
field_0x88 = 0;
|
||||||
|
field_0x80 = 0;
|
||||||
|
field_0xa0 = 0;
|
||||||
|
field_0x9c = 0;
|
||||||
|
}
|
||||||
|
#else
|
||||||
#pragma push
|
#pragma push
|
||||||
#pragma optimization_level 0
|
#pragma optimization_level 0
|
||||||
#pragma optimizewithasm off
|
#pragma optimizewithasm off
|
||||||
|
@ -202,6 +208,7 @@ asm JAUSection::TSectionData::TSectionData() {
|
||||||
#include "asm/JSystem/JAudio2/JAUSectionHeap/__ct__Q210JAUSection12TSectionDataFv.s"
|
#include "asm/JSystem/JAudio2/JAUSectionHeap/__ct__Q210JAUSection12TSectionDataFv.s"
|
||||||
}
|
}
|
||||||
#pragma pop
|
#pragma pop
|
||||||
|
#endif
|
||||||
|
|
||||||
/* ############################################################################################## */
|
/* ############################################################################################## */
|
||||||
/* 8039B950-8039B950 027FB0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
|
/* 8039B950-8039B950 027FB0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
|
||||||
|
@ -212,6 +219,14 @@ SECTION_DEAD static char const* const stringBase_8039B950 = "index out of range
|
||||||
|
|
||||||
/* 802A4F68-802A4FE4 29F8A8 007C+00 1/1 0/0 0/0 .text
|
/* 802A4F68-802A4FE4 29F8A8 007C+00 1/1 0/0 0/0 .text
|
||||||
* resetRegisteredBankTables__Q210JAUSection12TSectionDataFv */
|
* resetRegisteredBankTables__Q210JAUSection12TSectionDataFv */
|
||||||
|
// position of std::__bitset_base<8>::reset
|
||||||
|
#ifdef NONMATCHING
|
||||||
|
void JAUSection::TSectionData::resetRegisteredBankTables() {
|
||||||
|
for (u32 i = 0; i < 255; i++) {
|
||||||
|
registeredBankTables.reset(i);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#else
|
||||||
#pragma push
|
#pragma push
|
||||||
#pragma optimization_level 0
|
#pragma optimization_level 0
|
||||||
#pragma optimizewithasm off
|
#pragma optimizewithasm off
|
||||||
|
@ -220,9 +235,18 @@ asm void JAUSection::TSectionData::resetRegisteredBankTables() {
|
||||||
#include "asm/JSystem/JAudio2/JAUSectionHeap/resetRegisteredBankTables__Q210JAUSection12TSectionDataFv.s"
|
#include "asm/JSystem/JAudio2/JAUSectionHeap/resetRegisteredBankTables__Q210JAUSection12TSectionDataFv.s"
|
||||||
}
|
}
|
||||||
#pragma pop
|
#pragma pop
|
||||||
|
#endif
|
||||||
|
|
||||||
/* 802A4FE4-802A5060 29F924 007C+00 1/1 0/0 0/0 .text
|
/* 802A4FE4-802A5060 29F924 007C+00 1/1 0/0 0/0 .text
|
||||||
* resetRegisteredWaveBankTables__Q210JAUSection12TSectionDataFv */
|
* resetRegisteredWaveBankTables__Q210JAUSection12TSectionDataFv */
|
||||||
|
// position of std::__bitset_base<8>::reset
|
||||||
|
#ifdef NONMATCHING
|
||||||
|
void JAUSection::TSectionData::resetRegisteredWaveBankTables() {
|
||||||
|
for (u32 i = 0; i < 255; i++) {
|
||||||
|
registeredWaveBankTables.reset(i);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#else
|
||||||
#pragma push
|
#pragma push
|
||||||
#pragma optimization_level 0
|
#pragma optimization_level 0
|
||||||
#pragma optimizewithasm off
|
#pragma optimizewithasm off
|
||||||
|
@ -231,6 +255,7 @@ asm void JAUSection::TSectionData::resetRegisteredWaveBankTables() {
|
||||||
#include "asm/JSystem/JAudio2/JAUSectionHeap/resetRegisteredWaveBankTables__Q210JAUSection12TSectionDataFv.s"
|
#include "asm/JSystem/JAudio2/JAUSectionHeap/resetRegisteredWaveBankTables__Q210JAUSection12TSectionDataFv.s"
|
||||||
}
|
}
|
||||||
#pragma pop
|
#pragma pop
|
||||||
|
#endif
|
||||||
|
|
||||||
/* ############################################################################################## */
|
/* ############################################################################################## */
|
||||||
/* 803C9AC0-803C9AF4 026BE0 0034+00 2/2 0/0 0/0 .data __vt__14JAUSectionHeap */
|
/* 803C9AC0-803C9AF4 026BE0 0034+00 2/2 0/0 0/0 .data __vt__14JAUSectionHeap */
|
||||||
|
@ -286,6 +311,17 @@ SECTION_DATA extern void* __vt__10JAUSection[4 + 1 /* padding */] = {
|
||||||
};
|
};
|
||||||
|
|
||||||
/* 802A5060-802A50F8 29F9A0 0098+00 1/1 0/0 0/0 .text __ct__10JAUSectionFP14JAUSectionHeapUll */
|
/* 802A5060-802A50F8 29F9A0 0098+00 1/1 0/0 0/0 .text __ct__10JAUSectionFP14JAUSectionHeapUll */
|
||||||
|
// JAUSection inheritance
|
||||||
|
#ifdef NONMATCHING
|
||||||
|
JAUSection::JAUSection(JAUSectionHeap* param_0, u32 param_1, s32 param_2) : JSULink<JAUSection>(this), field_0x28(param_1), sectionHeap_(param_0) {
|
||||||
|
buildingBankTable_ = NULL;
|
||||||
|
field_0x2c = 1;
|
||||||
|
data_.field_0x98 = param_2;
|
||||||
|
if (this != sectionHeap_) {
|
||||||
|
data_.field_0x00.setSeqDataArchive(sectionHeap_->sectionHeapData_.field_0x408.getSeqDataArchive());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#else
|
||||||
#pragma push
|
#pragma push
|
||||||
#pragma optimization_level 0
|
#pragma optimization_level 0
|
||||||
#pragma optimizewithasm off
|
#pragma optimizewithasm off
|
||||||
|
@ -294,110 +330,248 @@ asm JAUSection::JAUSection(JAUSectionHeap* param_0, u32 param_1, s32 param_2) {
|
||||||
#include "asm/JSystem/JAudio2/JAUSectionHeap/__ct__10JAUSectionFP14JAUSectionHeapUll.s"
|
#include "asm/JSystem/JAudio2/JAUSectionHeap/__ct__10JAUSectionFP14JAUSectionHeapUll.s"
|
||||||
}
|
}
|
||||||
#pragma pop
|
#pragma pop
|
||||||
|
#endif
|
||||||
|
|
||||||
/* 802A50F8-802A5160 29FA38 0068+00 0/0 1/1 0/0 .text finishBuild__10JAUSectionFv */
|
/* 802A50F8-802A5160 29FA38 0068+00 0/0 1/1 0/0 .text finishBuild__10JAUSectionFv */
|
||||||
#pragma push
|
void JAUSection::finishBuild() {
|
||||||
#pragma optimization_level 0
|
JUT_ASSERT("JAUSectionHeap.cpp", 0x8f, isOpen());
|
||||||
#pragma optimizewithasm off
|
JUT_ASSERT("JAUSectionHeap.cpp", 0x90, isBuilding());
|
||||||
asm void JAUSection::finishBuild() {
|
{
|
||||||
nofralloc
|
TPushCurrentHeap push(getHeap_());
|
||||||
#include "asm/JSystem/JAudio2/JAUSectionHeap/finishBuild__10JAUSectionFv.s"
|
}
|
||||||
|
data_.field_0x98 -= getHeap_()->getFreeSize();
|
||||||
|
getHeap_()->freeTail();
|
||||||
|
field_0x2c = 0;
|
||||||
}
|
}
|
||||||
#pragma pop
|
|
||||||
|
|
||||||
/* 802A5160-802A51E4 29FAA0 0084+00 2/0 0/0 0/0 .text dispose__10JAUSectionFv */
|
/* 802A5160-802A51E4 29FAA0 0084+00 2/0 0/0 0/0 .text dispose__10JAUSectionFv */
|
||||||
#pragma push
|
void JAUSection::dispose() {
|
||||||
#pragma optimization_level 0
|
JUT_ASSERT("JAUSectionHeap.cpp", 0x10b, ! data_.registeredBankTables.any());
|
||||||
#pragma optimizewithasm off
|
JUT_ASSERT("JAUSectionHeap.cpp", 0x10c, ! data_.registeredWaveBankTables.any());
|
||||||
asm void JAUSection::dispose() {
|
if (data_.mBstDst) {
|
||||||
nofralloc
|
sectionHeap_->sectionHeapData_.soundTable->~JAUSoundTable();
|
||||||
#include "asm/JSystem/JAudio2/JAUSectionHeap/dispose__10JAUSectionFv.s"
|
sectionHeap_->sectionHeapData_.soundTable = NULL;
|
||||||
|
}
|
||||||
|
if ((data_.mBstnDst)) {
|
||||||
|
sectionHeap_->sectionHeapData_.soundNameTable->~JAUSoundNameTable();
|
||||||
|
sectionHeap_->sectionHeapData_.soundNameTable = NULL;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
#pragma pop
|
|
||||||
|
|
||||||
/* 802A51E4-802A52A0 29FB24 00BC+00 0/0 1/1 0/0 .text newSoundTable__10JAUSectionFPCvUlb
|
/* 802A51E4-802A52A0 29FB24 00BC+00 0/0 1/1 0/0 .text newSoundTable__10JAUSectionFPCvUlb
|
||||||
*/
|
*/
|
||||||
|
// regalloc, stackalloc
|
||||||
|
#ifdef NONMATCHING
|
||||||
|
JAUSoundTable* JAUSection::newSoundTable(void const* bst, u32 param_1, bool param_2) {
|
||||||
|
JUT_ASSERT("JAUSectionHeap.cpp", 0x11d, isOpen());
|
||||||
|
JUT_ASSERT("JAUSectionHeap.cpp", 0x11e, isBuilding());
|
||||||
|
JUT_ASSERT("JAUSectionHeap.cpp", 0x11f, bst);
|
||||||
|
JUT_ASSERT("JAUSectionHeap.cpp", 0x120, asSectionHeap() == this);
|
||||||
|
JUT_ASSERT("JAUSectionHeap.cpp", 0x121, sectionHeap_->sectionHeapData_.soundTable == 0);
|
||||||
|
{
|
||||||
|
TPushCurrentHeap push(getHeap_());
|
||||||
|
void* bstDst;
|
||||||
|
if (param_1) {
|
||||||
|
bstDst = newCopy(bst, param_1, 4);
|
||||||
|
JUT_ASSERT("JAUSectionHeap.cpp", 0x128, bstDst);
|
||||||
|
}
|
||||||
|
JAUSoundTable* soundTable = new JAUSoundTable(param_2);
|
||||||
|
JUT_ASSERT("JAUSectionHeap.cpp", 299, soundTable);
|
||||||
|
soundTable->init(bst);
|
||||||
|
sectionHeap_->sectionHeapData_.soundTable = soundTable;
|
||||||
|
data_.mBstDst = bstDst;
|
||||||
|
}
|
||||||
|
return sectionHeap_->sectionHeapData_.soundTable;
|
||||||
|
}
|
||||||
|
#else
|
||||||
#pragma push
|
#pragma push
|
||||||
#pragma optimization_level 0
|
#pragma optimization_level 0
|
||||||
#pragma optimizewithasm off
|
#pragma optimizewithasm off
|
||||||
asm void JAUSection::newSoundTable(void const* param_0, u32 param_1, bool param_2) {
|
asm JAUSoundTable* JAUSection::newSoundTable(void const* param_0, u32 param_1, bool param_2) {
|
||||||
nofralloc
|
nofralloc
|
||||||
#include "asm/JSystem/JAudio2/JAUSectionHeap/newSoundTable__10JAUSectionFPCvUlb.s"
|
#include "asm/JSystem/JAudio2/JAUSectionHeap/newSoundTable__10JAUSectionFPCvUlb.s"
|
||||||
}
|
}
|
||||||
#pragma pop
|
#pragma pop
|
||||||
|
#endif
|
||||||
|
|
||||||
/* 802A52A0-802A535C 29FBE0 00BC+00 0/0 1/1 0/0 .text newSoundNameTable__10JAUSectionFPCvUlb */
|
/* 802A52A0-802A535C 29FBE0 00BC+00 0/0 1/1 0/0 .text newSoundNameTable__10JAUSectionFPCvUlb */
|
||||||
|
// regalloc, stackalloc
|
||||||
|
#ifdef NONMATCHING
|
||||||
|
JAUSoundNameTable* JAUSection::newSoundNameTable(void const* bstn, u32 param_1, bool param_2) {
|
||||||
|
JUT_ASSERT("JAUSectionHeap.cpp", 0x13b, isOpen());
|
||||||
|
JUT_ASSERT("JAUSectionHeap.cpp", 0x13c, isBuilding());
|
||||||
|
JUT_ASSERT("JAUSectionHeap.cpp", 0x13d, bstn);
|
||||||
|
JUT_ASSERT("JAUSectionHeap.cpp", 0x13e, asSectionHeap() == this);
|
||||||
|
JUT_ASSERT("JAUSectionHeap.cpp", 0x13f, sectionHeap_->sectionHeapData_.soundNameTable == 0);
|
||||||
|
{
|
||||||
|
TPushCurrentHeap push(getHeap_());
|
||||||
|
void* bstnDst;
|
||||||
|
if (param_1) {
|
||||||
|
bstnDst = newCopy(bstn, param_1, 4);
|
||||||
|
JUT_ASSERT("JAUSectionHeap.cpp", 0x146, bstnDst);
|
||||||
|
}
|
||||||
|
JAUSoundNameTable* soundNameTable = new JAUSoundNameTable(param_2);
|
||||||
|
JUT_ASSERT("JAUSectionHeap.cpp", 0x149, soundNameTable);
|
||||||
|
soundNameTable->init(bstnDst);
|
||||||
|
sectionHeap_->sectionHeapData_.soundNameTable = soundNameTable;
|
||||||
|
data_.mBstnDst = bstnDst;
|
||||||
|
}
|
||||||
|
return sectionHeap_->sectionHeapData_.soundNameTable;
|
||||||
|
}
|
||||||
|
#else
|
||||||
#pragma push
|
#pragma push
|
||||||
#pragma optimization_level 0
|
#pragma optimization_level 0
|
||||||
#pragma optimizewithasm off
|
#pragma optimizewithasm off
|
||||||
asm void JAUSection::newSoundNameTable(void const* param_0, u32 param_1, bool param_2) {
|
asm JAUSoundNameTable* JAUSection::newSoundNameTable(void const* param_0, u32 param_1, bool param_2) {
|
||||||
nofralloc
|
nofralloc
|
||||||
#include "asm/JSystem/JAudio2/JAUSectionHeap/newSoundNameTable__10JAUSectionFPCvUlb.s"
|
#include "asm/JSystem/JAudio2/JAUSectionHeap/newSoundNameTable__10JAUSectionFPCvUlb.s"
|
||||||
}
|
}
|
||||||
#pragma pop
|
#pragma pop
|
||||||
|
#endif
|
||||||
|
|
||||||
/* 802A535C-802A5500 29FC9C 01A4+00 0/0 1/1 0/0 .text newStreamFileTable__10JAUSectionFPCvb */
|
/* 802A535C-802A5500 29FC9C 01A4+00 0/0 1/1 0/0 .text newStreamFileTable__10JAUSectionFPCvb */
|
||||||
|
// JAUStreamFileTable::isValid() signed
|
||||||
|
#ifdef NONMATCHING
|
||||||
|
JAIStreamDataMgr* JAUSection::newStreamFileTable(void const* param_0, bool param_1) {
|
||||||
|
JUT_ASSERT("JAUSectionHeap.cpp", 0x159, asSectionHeap() == this);
|
||||||
|
JUT_ASSERT("JAUSectionHeap.cpp", 0x15a, isOpen());
|
||||||
|
JUT_ASSERT("JAUSectionHeap.cpp", 0x15b, isBuilding());
|
||||||
|
JUT_ASSERT("JAUSectionHeap.cpp", 0x15c, sectionHeap_->sectionHeapData_.streamDataMgr_ == 0);
|
||||||
|
{
|
||||||
|
TPushCurrentHeap push(getHeap_());
|
||||||
|
JAIStreamDataMgr* r28 = NULL;
|
||||||
|
if (param_1) {
|
||||||
|
TStreamDataMgr* r26 = new TStreamDataMgr(param_0);
|
||||||
|
if (r26->isValid()) {
|
||||||
|
r28 = r26;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
JAUStreamDataMgr_StreamFileTable* r25 = new JAUStreamDataMgr_StreamFileTable();
|
||||||
|
r25->init(param_0);
|
||||||
|
if (r25->isValid()) {
|
||||||
|
r28 = r25;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
sectionHeap_->sectionHeapData_.streamDataMgr_ = r28;
|
||||||
|
}
|
||||||
|
return sectionHeap_->sectionHeapData_.streamDataMgr_;
|
||||||
|
}
|
||||||
|
#else
|
||||||
#pragma push
|
#pragma push
|
||||||
#pragma optimization_level 0
|
#pragma optimization_level 0
|
||||||
#pragma optimizewithasm off
|
#pragma optimizewithasm off
|
||||||
asm void JAUSection::newStreamFileTable(void const* param_0, bool param_1) {
|
asm JAIStreamDataMgr* JAUSection::newStreamFileTable(void const* param_0, bool param_1) {
|
||||||
nofralloc
|
nofralloc
|
||||||
#include "asm/JSystem/JAudio2/JAUSectionHeap/newStreamFileTable__10JAUSectionFPCvb.s"
|
#include "asm/JSystem/JAudio2/JAUSectionHeap/newStreamFileTable__10JAUSectionFPCvb.s"
|
||||||
}
|
}
|
||||||
#pragma pop
|
#pragma pop
|
||||||
|
#endif
|
||||||
|
|
||||||
/* 802A5500-802A5598 29FE40 0098+00 0/0 1/1 0/0 .text newSeSeqCollection__10JAUSectionFPCvUl */
|
/* 802A5500-802A5598 29FE40 0098+00 0/0 1/1 0/0 .text newSeSeqCollection__10JAUSectionFPCvUl */
|
||||||
#pragma push
|
JAISeqDataMgr* JAUSection::newSeSeqCollection(void const* bsc, u32 param_1) {
|
||||||
#pragma optimization_level 0
|
JUT_ASSERT("JAUSectionHeap.cpp", 0x18e, asSectionHeap() == this);
|
||||||
#pragma optimizewithasm off
|
JUT_ASSERT("JAUSectionHeap.cpp", 399, sectionHeap_->sectionHeapData_.seSeqDataMgr_ == 0);
|
||||||
asm void JAUSection::newSeSeqCollection(void const* param_0, u32 param_1) {
|
if (param_1) {
|
||||||
nofralloc
|
bsc = newCopy(bsc, param_1, 4);
|
||||||
#include "asm/JSystem/JAudio2/JAUSectionHeap/newSeSeqCollection__10JAUSectionFPCvUl.s"
|
}
|
||||||
|
JUT_ASSERT("JAUSectionHeap.cpp", 0x195, "bsc");
|
||||||
|
{
|
||||||
|
TPushCurrentHeap push(getHeap_());
|
||||||
|
JAUSeqDataMgr_SeqCollection* seSeqDataMgr = new JAUSeqDataMgr_SeqCollection();
|
||||||
|
JUT_ASSERT("JAUSectionHeap.cpp", 0x199, seSeqDataMgr);
|
||||||
|
seSeqDataMgr->init(bsc);
|
||||||
|
sectionHeap_->sectionHeapData_.seSeqDataMgr_ = seSeqDataMgr;
|
||||||
|
data_.field_0x80 = seSeqDataMgr;
|
||||||
|
}
|
||||||
|
return sectionHeap_->sectionHeapData_.seSeqDataMgr_;
|
||||||
}
|
}
|
||||||
#pragma pop
|
|
||||||
|
|
||||||
/* 802A5598-802A56C8 29FED8 0130+00 2/2 0/0 0/0 .text
|
/* 802A5598-802A56C8 29FED8 0130+00 2/2 0/0 0/0 .text
|
||||||
* newStaticSeqDataBlock___10JAUSectionF10JAISoundIDUl */
|
* newStaticSeqDataBlock___10JAUSectionF10JAISoundIDUl */
|
||||||
#pragma push
|
u8* JAUSection::newStaticSeqDataBlock_(JAISoundID param_0, u32 size) {
|
||||||
#pragma optimization_level 0
|
JUT_ASSERT("JAUSectionHeap.cpp", 0x1a3, isOpen());
|
||||||
#pragma optimizewithasm off
|
JUT_ASSERT("JAUSectionHeap.cpp", 0x1a4, isBuilding());
|
||||||
asm void JAUSection::newStaticSeqDataBlock_(JAISoundID param_0, u32 param_1) {
|
JUT_ASSERT("JAUSectionHeap.cpp", 0x1a5, size);
|
||||||
nofralloc
|
{
|
||||||
#include "asm/JSystem/JAudio2/JAUSectionHeap/newStaticSeqDataBlock___10JAUSectionF10JAISoundIDUl.s"
|
TPushCurrentHeap push(getHeap_());
|
||||||
|
JAUSeqDataBlock* seqDataBlock = new JAUSeqDataBlock();
|
||||||
|
if (!seqDataBlock) {
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
JSULink<JAUSeqDataBlock>* link = new JSULink<JAUSeqDataBlock>(seqDataBlock);
|
||||||
|
if (!link) {
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
u8* r28 = new(0x20) u8[size];
|
||||||
|
if (!r28) {
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
seqDataBlock->field_0x14 = r28;
|
||||||
|
seqDataBlock->field_0x18 = size;
|
||||||
|
seqDataBlock->field_0x10 = param_0;
|
||||||
|
JASCriticalSection cs;
|
||||||
|
if(data_.field_0x00.appendDynamicSeqDataBlock(seqDataBlock)) {
|
||||||
|
data_.field_0x28.append(link);
|
||||||
|
return r28;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return NULL;
|
||||||
}
|
}
|
||||||
#pragma pop
|
|
||||||
|
|
||||||
/* 802A56C8-802A5730 2A0008 0068+00 0/0 1/1 0/0 .text
|
/* 802A56C8-802A5730 2A0008 0068+00 0/0 1/1 0/0 .text
|
||||||
* newStaticSeqData__10JAUSectionF10JAISoundIDPCvUl */
|
* newStaticSeqData__10JAUSectionF10JAISoundIDPCvUl */
|
||||||
#pragma push
|
bool JAUSection::newStaticSeqData(JAISoundID param_0, void const* param_1, u32 param_2) {
|
||||||
#pragma optimization_level 0
|
u8* r30 = newStaticSeqDataBlock_(param_0, param_2);
|
||||||
#pragma optimizewithasm off
|
if (r30) {
|
||||||
asm void JAUSection::newStaticSeqData(JAISoundID param_0, void const* param_1, u32 param_2) {
|
memcpy(r30, param_1, param_2);
|
||||||
nofralloc
|
return true;
|
||||||
#include "asm/JSystem/JAudio2/JAUSectionHeap/newStaticSeqData__10JAUSectionF10JAISoundIDPCvUl.s"
|
}
|
||||||
|
return false;
|
||||||
}
|
}
|
||||||
#pragma pop
|
|
||||||
|
|
||||||
/* 802A5730-802A57F0 2A0070 00C0+00 0/0 1/1 0/0 .text newStaticSeqData__10JAUSectionF10JAISoundID
|
/* 802A5730-802A57F0 2A0070 00C0+00 0/0 1/1 0/0 .text newStaticSeqData__10JAUSectionF10JAISoundID
|
||||||
*/
|
*/
|
||||||
|
// extra instruction JAISoundID
|
||||||
|
#ifdef NONMATCHING
|
||||||
|
bool JAUSection::newStaticSeqData(JAISoundID param_0) {
|
||||||
|
JKRArchive* seqArchive = data_.field_0x00.getSeqDataArchive();
|
||||||
|
JUT_ASSERT("JAUSectionHeap.cpp", 0x1e1, seqArchive);
|
||||||
|
JAUSoundInfo* soundInfo = JASGlobalInstance<JAUSoundInfo>::getInstance();
|
||||||
|
if (!soundInfo) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
u16 r26 = soundInfo->getBgmSeqResourceID(param_0);
|
||||||
|
u32 r25 = JASResArcLoader::getResSize(seqArchive, r26);
|
||||||
|
JAISoundID stack_2c;
|
||||||
|
stack_2c.setAnonymous();
|
||||||
|
u8* r24 = newStaticSeqDataBlock_(stack_2c, r25);
|
||||||
|
if (r24) {
|
||||||
|
data_.field_0x00.loadDynamicSeq(param_0, true, sectionHeap_->sectionHeapData_.seqDataUser);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
#else
|
||||||
#pragma push
|
#pragma push
|
||||||
#pragma optimization_level 0
|
#pragma optimization_level 0
|
||||||
#pragma optimizewithasm off
|
#pragma optimizewithasm off
|
||||||
asm void JAUSection::newStaticSeqData(JAISoundID param_0) {
|
asm bool JAUSection::newStaticSeqData(JAISoundID param_0) {
|
||||||
nofralloc
|
nofralloc
|
||||||
#include "asm/JSystem/JAudio2/JAUSectionHeap/newStaticSeqData__10JAUSectionF10JAISoundID.s"
|
#include "asm/JSystem/JAudio2/JAUSectionHeap/newStaticSeqData__10JAUSectionF10JAISoundID.s"
|
||||||
}
|
}
|
||||||
#pragma pop
|
#pragma pop
|
||||||
|
#endif
|
||||||
|
|
||||||
/* 802A57F0-802A5854 2A0130 0064+00 3/3 0/0 0/0 .text newCopy__10JAUSectionFPCvUll */
|
/* 802A57F0-802A5854 2A0130 0064+00 3/3 0/0 0/0 .text newCopy__10JAUSectionFPCvUll */
|
||||||
#pragma push
|
void* JAUSection::newCopy(void const* param_0, u32 param_1, s32 param_2) {
|
||||||
#pragma optimization_level 0
|
JUT_ASSERT("JAUSectionHeap.cpp", 0x204, isOpen());
|
||||||
#pragma optimizewithasm off
|
JUT_ASSERT("JAUSectionHeap.cpp", 0x205, isBuilding());
|
||||||
asm void JAUSection::newCopy(void const* param_0, u32 param_1, s32 param_2) {
|
u8* r31 = new(getHeap_(), param_2) u8[param_1];
|
||||||
nofralloc
|
if (r31) {
|
||||||
#include "asm/JSystem/JAudio2/JAUSectionHeap/newCopy__10JAUSectionFPCvUll.s"
|
memcpy(r31, param_0, param_1);
|
||||||
|
}
|
||||||
|
return r31;
|
||||||
}
|
}
|
||||||
#pragma pop
|
|
||||||
|
|
||||||
/* ############################################################################################## */
|
/* ############################################################################################## */
|
||||||
/* 8039B950-8039B950 027FB0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
|
/* 8039B950-8039B950 027FB0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
|
||||||
|
@ -410,130 +584,237 @@ SECTION_DEAD static char const* const pad_8039B9B9 = "\0\0\0\0\0\0";
|
||||||
#pragma pop
|
#pragma pop
|
||||||
|
|
||||||
/* 802A5854-802A5948 2A0194 00F4+00 0/0 1/1 0/0 .text newWaveBank__10JAUSectionFUlPCv */
|
/* 802A5854-802A5948 2A0194 00F4+00 0/0 1/1 0/0 .text newWaveBank__10JAUSectionFUlPCv */
|
||||||
|
// position of std::__bitset_base<8>::set
|
||||||
|
#ifdef NONMATCHING
|
||||||
|
JASWaveBank* JAUSection::newWaveBank(u32 bank_no, void const* param_1) {
|
||||||
|
JUT_ASSERT("JAUSectionHeap.cpp", 0x210, isOpen());
|
||||||
|
JUT_ASSERT("JAUSectionHeap.cpp", 0x211, isBuilding());
|
||||||
|
TPushCurrentHeap push(getHeap_());
|
||||||
|
s32 r27 = getHeap_()->getFreeSize();
|
||||||
|
JASWaveBank* waveBank = JASWSParser::createWaveBank(param_1, getHeap_());
|
||||||
|
if (waveBank) {
|
||||||
|
JUT_ASSERT("JAUSectionHeap.cpp", 0x218, sectionHeap_->getWaveBankTable().getWaveBank( bank_no ) == 0);
|
||||||
|
sectionHeap_->getWaveBankTable().registWaveBank(bank_no, waveBank);
|
||||||
|
data_.registeredWaveBankTables.set(bank_no, true);
|
||||||
|
data_.field_0xa0 += r27 - getHeap_()->getFreeSize();
|
||||||
|
return waveBank;
|
||||||
|
}
|
||||||
|
return NULL;
|
||||||
|
|
||||||
|
}
|
||||||
|
#else
|
||||||
#pragma push
|
#pragma push
|
||||||
#pragma optimization_level 0
|
#pragma optimization_level 0
|
||||||
#pragma optimizewithasm off
|
#pragma optimizewithasm off
|
||||||
asm void JAUSection::newWaveBank(u32 param_0, void const* param_1) {
|
asm JASWaveBank* JAUSection::newWaveBank(u32 param_0, void const* param_1) {
|
||||||
nofralloc
|
nofralloc
|
||||||
#include "asm/JSystem/JAudio2/JAUSectionHeap/newWaveBank__10JAUSectionFUlPCv.s"
|
#include "asm/JSystem/JAudio2/JAUSectionHeap/newWaveBank__10JAUSectionFUlPCv.s"
|
||||||
}
|
}
|
||||||
#pragma pop
|
#pragma pop
|
||||||
|
#endif
|
||||||
|
|
||||||
/* 802A5948-802A5A50 2A0288 0108+00 0/0 1/1 0/0 .text loadWaveArc__10JAUSectionFUlUl */
|
/* 802A5948-802A5A50 2A0288 0108+00 0/0 1/1 0/0 .text loadWaveArc__10JAUSectionFUlUl */
|
||||||
|
// position of std::__bitset_base<8>::test
|
||||||
|
#ifdef NONMATCHING
|
||||||
|
bool JAUSection::loadWaveArc(u32 param_0, u32 param_1) {
|
||||||
|
if (data_.registeredWaveBankTables.test(param_0)) {
|
||||||
|
JASWaveBank* waveBank = sectionHeap_->getWaveBankTable().getWaveBank(param_0);
|
||||||
|
if (waveBank) {
|
||||||
|
for (u32 i = 0; i < waveBank->getArcCount(); i++) {
|
||||||
|
if (param_1 & 1 << i) {
|
||||||
|
waveBank->getWaveArc(i)->load(NULL);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
#else
|
||||||
#pragma push
|
#pragma push
|
||||||
#pragma optimization_level 0
|
#pragma optimization_level 0
|
||||||
#pragma optimizewithasm off
|
#pragma optimizewithasm off
|
||||||
asm void JAUSection::loadWaveArc(u32 param_0, u32 param_1) {
|
asm bool JAUSection::loadWaveArc(u32 param_0, u32 param_1) {
|
||||||
nofralloc
|
nofralloc
|
||||||
#include "asm/JSystem/JAudio2/JAUSectionHeap/loadWaveArc__10JAUSectionFUlUl.s"
|
#include "asm/JSystem/JAudio2/JAUSectionHeap/loadWaveArc__10JAUSectionFUlUl.s"
|
||||||
}
|
}
|
||||||
#pragma pop
|
#pragma pop
|
||||||
|
#endif
|
||||||
|
|
||||||
/* 802A5A50-802A5B84 2A0390 0134+00 0/0 1/1 0/0 .text newBank__10JAUSectionFPCvUl */
|
/* 802A5A50-802A5B84 2A0390 0134+00 0/0 1/1 0/0 .text newBank__10JAUSectionFPCvUl */
|
||||||
|
// vtable order JAUBankTableLink
|
||||||
|
#ifdef NONMATCHING
|
||||||
|
JASBank* JAUSection::newBank(void const* param_0, u32 param_1) {
|
||||||
|
JUT_ASSERT("JAUSectionHeap.cpp", 0x287, isOpen());
|
||||||
|
JUT_ASSERT("JAUSectionHeap.cpp", 0x288, isBuilding());
|
||||||
|
JASWaveBank* waveBank = sectionHeap_->getWaveBankTable().getWaveBank(param_1);
|
||||||
|
JUT_ASSERT("JAUSectionHeap.cpp", 0x28a, waveBank != 0);
|
||||||
|
TPushCurrentHeap push(getHeap_());
|
||||||
|
u32 bank_no = JASBNKParser::getBankNumber(param_0);
|
||||||
|
s32 r25 = getHeap_()->getFreeSize();
|
||||||
|
JASBank* bank = JASBNKParser::createBank(param_0, getHeap_());
|
||||||
|
if (bank) {
|
||||||
|
if (buildingBankTable_) {
|
||||||
|
JUT_ASSERT("JAUSectionHeap.cpp", 0x294, buildingBankTable_->getBank( bank_no ) == 0);
|
||||||
|
buildingBankTable_->registBank(bank_no, bank);
|
||||||
|
} else {
|
||||||
|
JUT_ASSERT("JAUSectionHeap.cpp",0x299, JASDefaultBankTable::getInstance() ->getBank( bank_no ) == 0);
|
||||||
|
JASDefaultBankTable::getInstance()->registBank(bank_no, bank);
|
||||||
|
data_.registeredBankTables.set(bank_no, true);
|
||||||
|
}
|
||||||
|
bank->assignWaveBank(waveBank);
|
||||||
|
data_.field_0x9c += r25 - getHeap_()->getFreeSize();
|
||||||
|
return bank;
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
#else
|
||||||
#pragma push
|
#pragma push
|
||||||
#pragma optimization_level 0
|
#pragma optimization_level 0
|
||||||
#pragma optimizewithasm off
|
#pragma optimizewithasm off
|
||||||
asm void JAUSection::newBank(void const* param_0, u32 param_1) {
|
asm JASBank* JAUSection::newBank(void const* param_0, u32 param_1) {
|
||||||
nofralloc
|
nofralloc
|
||||||
#include "asm/JSystem/JAudio2/JAUSectionHeap/newBank__10JAUSectionFPCvUl.s"
|
#include "asm/JSystem/JAudio2/JAUSectionHeap/newBank__10JAUSectionFPCvUl.s"
|
||||||
}
|
}
|
||||||
#pragma pop
|
#pragma pop
|
||||||
|
#endif
|
||||||
|
|
||||||
/* 802A5B84-802A5CAC 2A04C4 0128+00 0/0 1/1 0/0 .text newVoiceBank__10JAUSectionFUlUl */
|
/* 802A5B84-802A5CAC 2A04C4 0128+00 0/0 1/1 0/0 .text newVoiceBank__10JAUSectionFUlUl */
|
||||||
|
// regalloc
|
||||||
|
#ifdef NONMATCHING
|
||||||
|
JASVoiceBank* JAUSection::newVoiceBank(u32 bank_no, u32 param_1) {
|
||||||
|
JUT_ASSERT("JAUSectionHeap.cpp", 0x2ad, isOpen());
|
||||||
|
JUT_ASSERT("JAUSectionHeap.cpp", 0x2ae, isBuilding());
|
||||||
|
JASWaveBank* waveBank = sectionHeap_->getWaveBankTable().getWaveBank(param_1);
|
||||||
|
JUT_ASSERT("JAUSectionHeap.cpp", 0x2b0, waveBank != 0);
|
||||||
|
TPushCurrentHeap push(getHeap_());
|
||||||
|
JASVoiceBank* voiceBank = new JASVoiceBank();
|
||||||
|
if (voiceBank) {
|
||||||
|
if (buildingBankTable_) {
|
||||||
|
JUT_ASSERT("JAUSectionHeap.cpp",0x2b8,buildingBankTable_->getBank( bank_no ) == 0);
|
||||||
|
buildingBankTable_->registBank(bank_no, voiceBank);
|
||||||
|
} else {
|
||||||
|
JUT_ASSERT("JAUSectionHeap.cpp",0x2bd, JASDefaultBankTable::getInstance() ->getBank( bank_no ) == 0);
|
||||||
|
JASDefaultBankTable::getInstance()->registBank(bank_no, voiceBank);
|
||||||
|
data_.registeredBankTables.set(bank_no, true);
|
||||||
|
}
|
||||||
|
voiceBank->assignWaveBank(waveBank);
|
||||||
|
return voiceBank;
|
||||||
|
}
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
#else
|
||||||
#pragma push
|
#pragma push
|
||||||
#pragma optimization_level 0
|
#pragma optimization_level 0
|
||||||
#pragma optimizewithasm off
|
#pragma optimizewithasm off
|
||||||
asm void JAUSection::newVoiceBank(u32 param_0, u32 param_1) {
|
asm JASVoiceBank* JAUSection::newVoiceBank(u32 param_0, u32 param_1) {
|
||||||
nofralloc
|
nofralloc
|
||||||
#include "asm/JSystem/JAudio2/JAUSectionHeap/newVoiceBank__10JAUSectionFUlUl.s"
|
#include "asm/JSystem/JAudio2/JAUSectionHeap/newVoiceBank__10JAUSectionFUlUl.s"
|
||||||
}
|
}
|
||||||
#pragma pop
|
#pragma pop
|
||||||
|
#endif
|
||||||
|
|
||||||
/* 802A5CAC-802A5D9C 2A05EC 00F0+00 0/0 1/1 0/0 .text beginNewBankTable__10JAUSectionFUlUl */
|
/* 802A5CAC-802A5D9C 2A05EC 00F0+00 0/0 1/1 0/0 .text beginNewBankTable__10JAUSectionFUlUl */
|
||||||
|
// JAUBankTable inheritance
|
||||||
|
#ifdef NONMATCHING
|
||||||
|
bool JAUSection::beginNewBankTable(u32 param_0, u32 param_1) {
|
||||||
|
JUT_ASSERT("JAUSectionHeap.cpp", 0x2ca, isOpen());
|
||||||
|
JUT_ASSERT("JAUSectionHeap.cpp", 0x2cb, isBuilding());
|
||||||
|
JUT_ASSERT("JAUSectionHeap.cpp", 0x2cc, buildingBankTable_ == 0);
|
||||||
|
JAUBankTableLink* bankTableLink = NULL;
|
||||||
|
{
|
||||||
|
TPushCurrentHeap push(getHeap_());
|
||||||
|
JASBank** r26 = new JASBank*[param_1];
|
||||||
|
if (r26) {
|
||||||
|
bankTableLink = new JAUBankTableLink(param_0, r26, param_1);
|
||||||
|
if (bankTableLink) {
|
||||||
|
buildingBankTable_ = bankTableLink;
|
||||||
|
} else {
|
||||||
|
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return bankTableLink;
|
||||||
|
}
|
||||||
|
#else
|
||||||
#pragma push
|
#pragma push
|
||||||
#pragma optimization_level 0
|
#pragma optimization_level 0
|
||||||
#pragma optimizewithasm off
|
#pragma optimizewithasm off
|
||||||
asm void JAUSection::beginNewBankTable(u32 param_0, u32 param_1) {
|
asm bool JAUSection::beginNewBankTable(u32 param_0, u32 param_1) {
|
||||||
nofralloc
|
nofralloc
|
||||||
#include "asm/JSystem/JAudio2/JAUSectionHeap/beginNewBankTable__10JAUSectionFUlUl.s"
|
#include "asm/JSystem/JAudio2/JAUSectionHeap/beginNewBankTable__10JAUSectionFUlUl.s"
|
||||||
}
|
}
|
||||||
#pragma pop
|
#pragma pop
|
||||||
|
#endif
|
||||||
|
|
||||||
/* 802A5D9C-802A5DF4 2A06DC 0058+00 0/0 1/1 0/0 .text endNewBankTable__10JAUSectionFv */
|
/* 802A5D9C-802A5DF4 2A06DC 0058+00 0/0 1/1 0/0 .text endNewBankTable__10JAUSectionFv */
|
||||||
#pragma push
|
JAUBankTable* JAUSection::endNewBankTable() {
|
||||||
#pragma optimization_level 0
|
JAUBankTable* r29 = NULL;
|
||||||
#pragma optimizewithasm off
|
if (buildingBankTable_) {
|
||||||
asm void JAUSection::endNewBankTable() {
|
data_.field_0x74.appendBankTable(buildingBankTable_);
|
||||||
nofralloc
|
buildingBankTable_ = NULL;
|
||||||
#include "asm/JSystem/JAudio2/JAUSectionHeap/endNewBankTable__10JAUSectionFv.s"
|
r29 = buildingBankTable_;
|
||||||
|
}
|
||||||
|
return r29;
|
||||||
}
|
}
|
||||||
#pragma pop
|
|
||||||
|
|
||||||
/* 802A5DF4-802A5E60 2A0734 006C+00 1/1 0/0 0/0 .text __ct__Q214JAUSectionHeap16TSectionHeapDataFv
|
/* 802A5DF4-802A5E60 2A0734 006C+00 1/1 0/0 0/0 .text __ct__Q214JAUSectionHeap16TSectionHeapDataFv
|
||||||
*/
|
*/
|
||||||
#pragma push
|
JAUSectionHeap::TSectionHeapData::TSectionHeapData() {
|
||||||
#pragma optimization_level 0
|
seSeqDataMgr_ = NULL;
|
||||||
#pragma optimizewithasm off
|
streamDataMgr_ = NULL;
|
||||||
asm JAUSectionHeap::TSectionHeapData::TSectionHeapData() {
|
soundTable = NULL;
|
||||||
nofralloc
|
soundNameTable = NULL;
|
||||||
#include "asm/JSystem/JAudio2/JAUSectionHeap/__ct__Q214JAUSectionHeap16TSectionHeapDataFv.s"
|
seqDataUser = NULL;
|
||||||
}
|
}
|
||||||
#pragma pop
|
|
||||||
|
|
||||||
/* 802A5E60-802A5EC0 2A07A0 0060+00 0/0 1/1 0/0 .text
|
/* 802A5E60-802A5EC0 2A07A0 0060+00 0/0 1/1 0/0 .text
|
||||||
* setSeqDataArchive__14JAUSectionHeapFP10JKRArchive */
|
* setSeqDataArchive__14JAUSectionHeapFP10JKRArchive */
|
||||||
#pragma push
|
void JAUSectionHeap::setSeqDataArchive(JKRArchive* param_0) {
|
||||||
#pragma optimization_level 0
|
sectionHeapData_.field_0x408.setSeqDataArchive(param_0);
|
||||||
#pragma optimizewithasm off
|
for (JSULink<JAUSection>* link = mSectionList.getFirst(); link; link = link->getNext()) {
|
||||||
asm void JAUSectionHeap::setSeqDataArchive(JKRArchive* param_0) {
|
link->getObject()->data_.field_0x00.setSeqDataArchive(param_0);
|
||||||
nofralloc
|
}
|
||||||
#include "asm/JSystem/JAudio2/JAUSectionHeap/setSeqDataArchive__14JAUSectionHeapFP10JKRArchive.s"
|
|
||||||
}
|
}
|
||||||
#pragma pop
|
|
||||||
|
|
||||||
/* 802A5EC0-802A5EF8 2A0800 0038+00 0/0 1/1 0/0 .text
|
/* 802A5EC0-802A5EF8 2A0800 0038+00 0/0 1/1 0/0 .text
|
||||||
* loadDynamicSeq__14JAUSectionHeapF10JAISoundIDb */
|
* loadDynamicSeq__14JAUSectionHeapF10JAISoundIDb */
|
||||||
#pragma push
|
bool JAUSectionHeap::loadDynamicSeq(JAISoundID param_0, bool param_1) {
|
||||||
#pragma optimization_level 0
|
return sectionHeapData_.field_0x408.loadDynamicSeq(param_0, param_1, sectionHeapData_.seqDataUser);
|
||||||
#pragma optimizewithasm off
|
|
||||||
asm void JAUSectionHeap::loadDynamicSeq(JAISoundID param_0, bool param_1) {
|
|
||||||
nofralloc
|
|
||||||
#include "asm/JSystem/JAudio2/JAUSectionHeap/loadDynamicSeq__14JAUSectionHeapF10JAISoundIDb.s"
|
|
||||||
}
|
}
|
||||||
#pragma pop
|
|
||||||
|
|
||||||
/* 802A5EF8-802A5F24 2A0838 002C+00 0/0 1/1 0/0 .text
|
/* 802A5EF8-802A5F24 2A0838 002C+00 0/0 1/1 0/0 .text
|
||||||
* releaseIdleDynamicSeqDataBlock__14JAUSectionHeapFv */
|
* releaseIdleDynamicSeqDataBlock__14JAUSectionHeapFv */
|
||||||
#pragma push
|
void JAUSectionHeap::releaseIdleDynamicSeqDataBlock() {
|
||||||
#pragma optimization_level 0
|
sectionHeapData_.field_0x408.releaseIdleDynamicSeqDataBlock(sectionHeapData_.seqDataUser);
|
||||||
#pragma optimizewithasm off
|
|
||||||
asm void JAUSectionHeap::releaseIdleDynamicSeqDataBlock() {
|
|
||||||
nofralloc
|
|
||||||
#include "asm/JSystem/JAudio2/JAUSectionHeap/releaseIdleDynamicSeqDataBlock__14JAUSectionHeapFv.s"
|
|
||||||
}
|
}
|
||||||
#pragma pop
|
|
||||||
|
|
||||||
/* 802A5F24-802A5F9C 2A0864 0078+00 1/1 0/0 0/0 .text JAUNewSectionHeap__FP12JKRSolidHeapb */
|
/* 802A5F24-802A5F9C 2A0864 0078+00 1/1 0/0 0/0 .text JAUNewSectionHeap__FP12JKRSolidHeapb */
|
||||||
#pragma push
|
static JAUSectionHeap* JAUNewSectionHeap(JKRSolidHeap* heap, bool param_1) {
|
||||||
#pragma optimization_level 0
|
JUT_ASSERT("JAUSectionHeap.cpp", 0x329, JKRSolidHeap_isEmpty( heap ));
|
||||||
#pragma optimizewithasm off
|
TPushCurrentHeap push(heap);
|
||||||
static asm JAUSectionHeap* JAUNewSectionHeap(JKRSolidHeap* param_0, bool param_1) {
|
s32 r29 = heap->getFreeSize();
|
||||||
nofralloc
|
return new JAUSectionHeap(heap, param_1, r29);
|
||||||
#include "asm/JSystem/JAudio2/JAUSectionHeap/JAUNewSectionHeap__FP12JKRSolidHeapb.s"
|
|
||||||
}
|
}
|
||||||
#pragma pop
|
|
||||||
|
|
||||||
/* 802A5F9C-802A5FE0 2A08DC 0044+00 0/0 1/1 0/0 .text JAUNewSectionHeap__Fb */
|
/* 802A5F9C-802A5FE0 2A08DC 0044+00 0/0 1/1 0/0 .text JAUNewSectionHeap__Fb */
|
||||||
#pragma push
|
JAUSectionHeap* JAUNewSectionHeap(bool param_0) {
|
||||||
#pragma optimization_level 0
|
s32 freeSize = JASDram->getFreeSize();
|
||||||
#pragma optimizewithasm off
|
JKRSolidHeap* sectionHeap = JKRCreateSolidHeap(freeSize, JASDram, true);
|
||||||
asm JAUSectionHeap* JAUNewSectionHeap(bool param_0) {
|
JUT_ASSERT("JAUSectionHeap.cpp", 0x335, sectionHeap);
|
||||||
nofralloc
|
return JAUNewSectionHeap(sectionHeap, param_0);
|
||||||
#include "asm/JSystem/JAudio2/JAUSectionHeap/JAUNewSectionHeap__Fb.s"
|
|
||||||
}
|
}
|
||||||
#pragma pop
|
|
||||||
|
|
||||||
/* 802A5FE0-802A6094 2A0920 00B4+00 1/1 0/0 0/0 .text __ct__14JAUSectionHeapFP12JKRSolidHeapbl */
|
/* 802A5FE0-802A6094 2A0920 00B4+00 1/1 0/0 0/0 .text __ct__14JAUSectionHeapFP12JKRSolidHeapbl */
|
||||||
|
// JAUSectionHeap inheritance
|
||||||
|
#ifdef NONMATCHING
|
||||||
|
JAUSectionHeap::JAUSectionHeap(JKRSolidHeap* param_0, bool param_1, s32 param_2) : JAUSection(this, 0, param_2), JASGlobalInstance<JAUSectionHeap>(param_1), mHeap(param_0) {
|
||||||
|
field_0xe4 = 0;
|
||||||
|
mSectionList.append(this);
|
||||||
|
}
|
||||||
|
#else
|
||||||
#pragma push
|
#pragma push
|
||||||
#pragma optimization_level 0
|
#pragma optimization_level 0
|
||||||
#pragma optimizewithasm off
|
#pragma optimizewithasm off
|
||||||
|
@ -542,49 +823,61 @@ asm JAUSectionHeap::JAUSectionHeap(JKRSolidHeap* param_0, bool param_1, s32 para
|
||||||
#include "asm/JSystem/JAudio2/JAUSectionHeap/__ct__14JAUSectionHeapFP12JKRSolidHeapbl.s"
|
#include "asm/JSystem/JAudio2/JAUSectionHeap/__ct__14JAUSectionHeapFP12JKRSolidHeapbl.s"
|
||||||
}
|
}
|
||||||
#pragma pop
|
#pragma pop
|
||||||
|
#endif
|
||||||
|
|
||||||
/* 802A6094-802A60A0 2A09D4 000C+00 0/0 1/1 0/0 .text getOpenSection__14JAUSectionHeapFv
|
/* 802A6094-802A60A0 2A09D4 000C+00 0/0 1/1 0/0 .text getOpenSection__14JAUSectionHeapFv
|
||||||
*/
|
*/
|
||||||
#pragma push
|
JAUSection* JAUSectionHeap::getOpenSection() {
|
||||||
#pragma optimization_level 0
|
return mSectionList.getLast()->getObject();
|
||||||
#pragma optimizewithasm off
|
|
||||||
asm JAUSection* JAUSectionHeap::getOpenSection() {
|
|
||||||
nofralloc
|
|
||||||
#include "asm/JSystem/JAudio2/JAUSectionHeap/getOpenSection__14JAUSectionHeapFv.s"
|
|
||||||
}
|
}
|
||||||
#pragma pop
|
|
||||||
|
|
||||||
/* 802A60A0-802A60AC 2A09E0 000C+00 2/1 0/0 0/0 .text
|
/* 802A60A0-802A60AC 2A09E0 000C+00 2/1 0/0 0/0 .text
|
||||||
* setSeqDataUser__14JAUSectionHeapFP14JAISeqDataUser */
|
* setSeqDataUser__14JAUSectionHeapFP14JAISeqDataUser */
|
||||||
#pragma push
|
bool JAUSectionHeap::setSeqDataUser(JAISeqDataUser* param_0) {
|
||||||
#pragma optimization_level 0
|
sectionHeapData_.seqDataUser = param_0;
|
||||||
#pragma optimizewithasm off
|
return true;
|
||||||
asm void JAUSectionHeap::setSeqDataUser(JAISeqDataUser* param_0) {
|
|
||||||
nofralloc
|
|
||||||
#include "asm/JSystem/JAudio2/JAUSectionHeap/setSeqDataUser__14JAUSectionHeapFP14JAISeqDataUser.s"
|
|
||||||
}
|
}
|
||||||
#pragma pop
|
|
||||||
|
|
||||||
/* 802A60AC-802A61D0 2A09EC 0124+00 0/0 2/2 0/0 .text newDynamicSeqBlock__14JAUSectionHeapFUl */
|
/* 802A60AC-802A61D0 2A09EC 0124+00 0/0 2/2 0/0 .text newDynamicSeqBlock__14JAUSectionHeapFUl */
|
||||||
#pragma push
|
bool JAUSectionHeap::newDynamicSeqBlock(u32 param_0) {
|
||||||
#pragma optimization_level 0
|
JUT_ASSERT("JAUSectionHeap.cpp", 0x3a9, isOpen());
|
||||||
#pragma optimizewithasm off
|
JUT_ASSERT("JAUSectionHeap.cpp", 0x3aa, isBuilding());
|
||||||
asm void JAUSectionHeap::newDynamicSeqBlock(u32 param_0) {
|
JUT_ASSERT("JAUSectionHeap.cpp", 0x3ab, sectionHeap_ == this);
|
||||||
nofralloc
|
TPushCurrentHeap push(base1.getHeap_());
|
||||||
#include "asm/JSystem/JAudio2/JAUSectionHeap/newDynamicSeqBlock__14JAUSectionHeapFUl.s"
|
JAUSeqDataBlock * seqDataBlock = new JAUSeqDataBlock();
|
||||||
|
if (!seqDataBlock) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
JSULink<JAUSeqDataBlock> * link = new JSULink<JAUSeqDataBlock>(seqDataBlock);
|
||||||
|
if (!link) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
u8* r25 = new(0x20) u8[param_0];
|
||||||
|
if (!r25) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
seqDataBlock->field_0x14 = r25;
|
||||||
|
seqDataBlock->field_0x18 = param_0;
|
||||||
|
seqDataBlock->field_0x10.setAnonymous();
|
||||||
|
JASCriticalSection cs;
|
||||||
|
if (base1.sectionHeap_->sectionHeapData_.field_0x408.appendDynamicSeqDataBlock(seqDataBlock)) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
return false;
|
||||||
}
|
}
|
||||||
#pragma pop
|
|
||||||
|
|
||||||
/* 802A61D0-802A6270 2A0B10 00A0+00 2/1 0/0 0/0 .text
|
/* 802A61D0-802A6270 2A0B10 00A0+00 2/1 0/0 0/0 .text
|
||||||
* getSeqData__14JAUSectionHeapF10JAISoundIDP10JAISeqData */
|
* getSeqData__14JAUSectionHeapF10JAISoundIDP10JAISeqData */
|
||||||
#pragma push
|
s32 JAUSectionHeap::getSeqData(JAISoundID param_0, JAISeqData* param_1) {
|
||||||
#pragma optimization_level 0
|
for (JSULink<JAUSection> * link = mSectionList.getFirst(); link; link = link->getNext()) {
|
||||||
#pragma optimizewithasm off
|
s32 result = link->getObject()->data_.field_0x00.getSeqData(param_0, sectionHeapData_.seqDataUser, param_1, false);
|
||||||
asm int JAUSectionHeap::getSeqData(JAISoundID param_0, JAISeqData* param_1) {
|
JUT_ASSERT("JAUSectionHeap.cpp", 0x3e2, result != JAI_ASYNC_RESULT_RETRY);
|
||||||
nofralloc
|
if (result == 2) {
|
||||||
#include "asm/JSystem/JAudio2/JAUSectionHeap/getSeqData__14JAUSectionHeapF10JAISoundIDP10JAISeqData.s"
|
return 2;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return sectionHeapData_.field_0x408.getSeqData(param_0, sectionHeapData_.seqDataUser, param_1, true);
|
||||||
}
|
}
|
||||||
#pragma pop
|
|
||||||
|
|
||||||
/* 802A6270-802A6278 2A0BB0 0008+00 2/1 0/0 0/0 .text releaseSeqData__14JAUSectionHeapFv
|
/* 802A6270-802A6278 2A0BB0 0008+00 2/1 0/0 0/0 .text releaseSeqData__14JAUSectionHeapFv
|
||||||
*/
|
*/
|
||||||
|
@ -593,6 +886,10 @@ int JAUSectionHeap::releaseSeqData() {
|
||||||
}
|
}
|
||||||
|
|
||||||
/* 802A6278-802A6440 2A0BB8 01C8+00 2/1 0/0 0/0 .text __dt__14JAUSectionHeapFv */
|
/* 802A6278-802A6440 2A0BB8 01C8+00 2/1 0/0 0/0 .text __dt__14JAUSectionHeapFv */
|
||||||
|
// JAUSectionHeap inheritance
|
||||||
|
#ifdef NONMATCHING
|
||||||
|
JAUSectionHeap::~JAUSectionHeap() {}
|
||||||
|
#else
|
||||||
#pragma push
|
#pragma push
|
||||||
#pragma optimization_level 0
|
#pragma optimization_level 0
|
||||||
#pragma optimizewithasm off
|
#pragma optimizewithasm off
|
||||||
|
@ -601,6 +898,7 @@ asm JAUSectionHeap::~JAUSectionHeap() {
|
||||||
#include "asm/JSystem/JAudio2/JAUSectionHeap/__dt__14JAUSectionHeapFv.s"
|
#include "asm/JSystem/JAudio2/JAUSectionHeap/__dt__14JAUSectionHeapFv.s"
|
||||||
}
|
}
|
||||||
#pragma pop
|
#pragma pop
|
||||||
|
#endif
|
||||||
|
|
||||||
/* 802A6440-802A6468 2A0D80 0028+00 1/0 0/0 0/0 .text
|
/* 802A6440-802A6468 2A0D80 0028+00 1/0 0/0 0/0 .text
|
||||||
* getStreamFileEntry__Q228@unnamed@JAUSectionHeap_cpp@14TStreamDataMgrF10JAISoundID */
|
* getStreamFileEntry__Q228@unnamed@JAUSectionHeap_cpp@14TStreamDataMgrF10JAISoundID */
|
||||||
|
|
|
@ -152,7 +152,7 @@ void JAUDynamicSeqDataBlocks::setSeqDataArchive(JKRArchive* param_0) {
|
||||||
#pragma push
|
#pragma push
|
||||||
#pragma optimization_level 0
|
#pragma optimization_level 0
|
||||||
#pragma optimizewithasm off
|
#pragma optimizewithasm off
|
||||||
asm void JAUDynamicSeqDataBlocks::getSeqData(JAISoundID param_0, JAISeqDataUser* param_1,
|
asm s32 JAUDynamicSeqDataBlocks::getSeqData(JAISoundID param_0, JAISeqDataUser* param_1,
|
||||||
JAISeqData* param_2, bool param_3) {
|
JAISeqData* param_2, bool param_3) {
|
||||||
nofralloc
|
nofralloc
|
||||||
#include "asm/JSystem/JAudio2/JAUSeqDataBlockMgr/func_802A6AA8.s"
|
#include "asm/JSystem/JAudio2/JAUSeqDataBlockMgr/func_802A6AA8.s"
|
||||||
|
@ -164,7 +164,7 @@ asm void JAUDynamicSeqDataBlocks::getSeqData(JAISoundID param_0, JAISeqDataUser*
|
||||||
#pragma push
|
#pragma push
|
||||||
#pragma optimization_level 0
|
#pragma optimization_level 0
|
||||||
#pragma optimizewithasm off
|
#pragma optimizewithasm off
|
||||||
asm void JAUDynamicSeqDataBlocks::appendDynamicSeqDataBlock(JAUSeqDataBlock* param_0) {
|
asm bool JAUDynamicSeqDataBlocks::appendDynamicSeqDataBlock(JAUSeqDataBlock* param_0) {
|
||||||
nofralloc
|
nofralloc
|
||||||
#include "asm/JSystem/JAudio2/JAUSeqDataBlockMgr/appendDynamicSeqDataBlock__23JAUDynamicSeqDataBlocksFP15JAUSeqDataBlock.s"
|
#include "asm/JSystem/JAudio2/JAUSeqDataBlockMgr/appendDynamicSeqDataBlock__23JAUDynamicSeqDataBlocksFP15JAUSeqDataBlock.s"
|
||||||
}
|
}
|
||||||
|
@ -186,7 +186,7 @@ static asm void JAUDynamicSeqDataBlocks_receiveLoaded_(u32 param_0, u32 param_1)
|
||||||
#pragma push
|
#pragma push
|
||||||
#pragma optimization_level 0
|
#pragma optimization_level 0
|
||||||
#pragma optimizewithasm off
|
#pragma optimizewithasm off
|
||||||
asm void JAUDynamicSeqDataBlocks::loadDynamicSeq(JAISoundID param_0, bool param_1,
|
asm bool JAUDynamicSeqDataBlocks::loadDynamicSeq(JAISoundID param_0, bool param_1,
|
||||||
JAISeqDataUser* param_2) {
|
JAISeqDataUser* param_2) {
|
||||||
nofralloc
|
nofralloc
|
||||||
#include "asm/JSystem/JAudio2/JAUSeqDataBlockMgr/loadDynamicSeq__23JAUDynamicSeqDataBlocksF10JAISoundIDbP14JAISeqDataUser.s"
|
#include "asm/JSystem/JAudio2/JAUSeqDataBlockMgr/loadDynamicSeq__23JAUDynamicSeqDataBlocksF10JAISoundIDbP14JAISeqDataUser.s"
|
||||||
|
|
|
@ -38,7 +38,7 @@ asm void JAUSoundTable::init(void const* param_0) {
|
||||||
#pragma push
|
#pragma push
|
||||||
#pragma optimization_level 0
|
#pragma optimization_level 0
|
||||||
#pragma optimizewithasm off
|
#pragma optimizewithasm off
|
||||||
asm void JAUSoundTable::getTypeID(JAISoundID param_0) const {
|
asm u8 JAUSoundTable::getTypeID(JAISoundID param_0) const {
|
||||||
nofralloc
|
nofralloc
|
||||||
#include "asm/JSystem/JAudio2/JAUSoundTable/getTypeID__13JAUSoundTableCF10JAISoundID.s"
|
#include "asm/JSystem/JAudio2/JAUSoundTable/getTypeID__13JAUSoundTableCF10JAISoundID.s"
|
||||||
}
|
}
|
||||||
|
|
|
@ -38,8 +38,8 @@ const char* JAUStreamFileTable::getFilePath(int index) const {
|
||||||
|
|
||||||
/* 802A74AC-802A74E8 2A1DEC 003C+00 1/0 0/0 0/0 .text
|
/* 802A74AC-802A74E8 2A1DEC 003C+00 1/0 0/0 0/0 .text
|
||||||
* getStreamFileEntry__32JAUStreamDataMgr_StreamFileTableF10JAISoundID */
|
* getStreamFileEntry__32JAUStreamDataMgr_StreamFileTableF10JAISoundID */
|
||||||
int JAUStreamDataMgr_StreamFileTable::getStreamFileEntry(JAISoundID soundId) {
|
s32 JAUStreamDataMgr_StreamFileTable::getStreamFileEntry(JAISoundID soundId) {
|
||||||
const char* filePath = mStreamFileTable.getFilePath(soundId.mId.mAdvancedId.mShortId);
|
const char* filePath = getFilePath(soundId.mId.mAdvancedId.mShortId);
|
||||||
if (filePath == NULL) {
|
if (filePath == NULL) {
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
|
@ -110,7 +110,7 @@ asm Z2AudioArcLoader::Z2AudioArcLoader(JAUSection* param_0) {
|
||||||
#pragma push
|
#pragma push
|
||||||
#pragma optimization_level 0
|
#pragma optimization_level 0
|
||||||
#pragma optimizewithasm off
|
#pragma optimizewithasm off
|
||||||
asm void Z2AudioArcLoader::readCommandMore(u32 param_0) {
|
asm bool Z2AudioArcLoader::readCommandMore(u32 param_0) {
|
||||||
nofralloc
|
nofralloc
|
||||||
#include "asm/Z2AudioLib/Z2AudioArcLoader/readCommandMore__16Z2AudioArcLoaderFUl.s"
|
#include "asm/Z2AudioLib/Z2AudioArcLoader/readCommandMore__16Z2AudioArcLoaderFUl.s"
|
||||||
}
|
}
|
||||||
|
|
|
@ -6,6 +6,14 @@
|
||||||
#include "Z2AudioLib/Z2AudioMgr.h"
|
#include "Z2AudioLib/Z2AudioMgr.h"
|
||||||
#include "JSystem/JAudio2/JASAiCtrl.h"
|
#include "JSystem/JAudio2/JASAiCtrl.h"
|
||||||
#include "JSystem/JAudio2/JASDriverIF.h"
|
#include "JSystem/JAudio2/JASDriverIF.h"
|
||||||
|
#include "JSystem/JAudio2/JASResArcLoader.h"
|
||||||
|
#include "JSystem/JAudio2/JASSeqParser.h"
|
||||||
|
#include "JSystem/JAudio2/JAUInitializer.h"
|
||||||
|
#include "JSystem/JAudio2/JAUSectionHeap.h"
|
||||||
|
#include "JSystem/JAudio2/JAUStreamAramMgr.h"
|
||||||
|
#include "JSystem/JKernel/JKRSolidHeap.h"
|
||||||
|
#include "Z2AudioLib/Z2AudioArcLoader.h"
|
||||||
|
#include "Z2AudioLib/Z2SoundHandles.h"
|
||||||
#include "MSL_C/stdio.h"
|
#include "MSL_C/stdio.h"
|
||||||
#include "MSL_C/stdlib.h"
|
#include "MSL_C/stdlib.h"
|
||||||
#include "dol2asm.h"
|
#include "dol2asm.h"
|
||||||
|
@ -27,73 +35,6 @@ struct Z2Param {
|
||||||
static f32 VOL_SE_ATMOSPHERE_DEFAULT;
|
static f32 VOL_SE_ATMOSPHERE_DEFAULT;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct JAUSection {
|
|
||||||
/* 802A50F8 */ void finishBuild();
|
|
||||||
};
|
|
||||||
|
|
||||||
struct Z2AudioArcLoader {
|
|
||||||
/* 802A9A34 */ Z2AudioArcLoader(JAUSection*);
|
|
||||||
};
|
|
||||||
|
|
||||||
struct JAU_JASInitializer {
|
|
||||||
/* 802A4AD0 */ JAU_JASInitializer();
|
|
||||||
/* 802A4B28 */ void initJASystem(JKRSolidHeap*);
|
|
||||||
};
|
|
||||||
|
|
||||||
struct JAU_JAIInitializer {
|
|
||||||
/* 802A4D3C */ JAU_JAIInitializer();
|
|
||||||
/* 802A4D60 */ void initJAInterface();
|
|
||||||
};
|
|
||||||
|
|
||||||
template <typename A0>
|
|
||||||
struct JAUStreamStaticAramMgr_ {};
|
|
||||||
/* JAUStreamStaticAramMgr_<1> */
|
|
||||||
struct JAUStreamStaticAramMgr___template0 {
|
|
||||||
/* 802CDB68 */ void func_802CDB68(void* _this);
|
|
||||||
/* 802CDC08 */ void func_802CDC08(void* _this, u32);
|
|
||||||
/* 802CDCEC */ void func_802CDCEC(void* _this, u32*);
|
|
||||||
};
|
|
||||||
|
|
||||||
template <typename A0>
|
|
||||||
struct JAUStreamAramMgrBase_ {};
|
|
||||||
/* JAUStreamAramMgrBase_<1> */
|
|
||||||
struct JAUStreamAramMgrBase___template0 {
|
|
||||||
/* 802CD7F8 */ void func_802CD7F8(void* _this);
|
|
||||||
};
|
|
||||||
|
|
||||||
struct JAUSectionHeap {
|
|
||||||
/* 802A5E60 */ void setSeqDataArchive(JKRArchive*);
|
|
||||||
/* 802A60AC */ void newDynamicSeqBlock(u32);
|
|
||||||
};
|
|
||||||
|
|
||||||
struct JAUAudioArcLoader {
|
|
||||||
/* 802A478C */ void load(void const*);
|
|
||||||
};
|
|
||||||
|
|
||||||
struct JAUAudioArcInterpreter {
|
|
||||||
/* 802A4260 */ ~JAUAudioArcInterpreter();
|
|
||||||
};
|
|
||||||
|
|
||||||
struct JASSeqParser {
|
|
||||||
static u8 sCallBackFunc[4];
|
|
||||||
};
|
|
||||||
|
|
||||||
struct JASResArcLoader {
|
|
||||||
/* 80290C04 */ void getResMaxSize(JKRArchive const*);
|
|
||||||
};
|
|
||||||
|
|
||||||
struct JASAramStream {
|
|
||||||
static u8 sBlockSize[4];
|
|
||||||
};
|
|
||||||
|
|
||||||
struct JAIStreamAramMgr {
|
|
||||||
/* 802A3B20 */ ~JAIStreamAramMgr();
|
|
||||||
};
|
|
||||||
|
|
||||||
struct JAISoundInfo {
|
|
||||||
/* 802A2D34 */ JAISoundInfo(bool);
|
|
||||||
};
|
|
||||||
|
|
||||||
//
|
//
|
||||||
// Forward References:
|
// Forward References:
|
||||||
//
|
//
|
||||||
|
@ -228,6 +169,14 @@ SECTION_DATA extern void* __vt__10Z2AudioMgr[3] = {
|
||||||
Z2AudioMgr* Z2AudioMgr::mAudioMgrPtr;
|
Z2AudioMgr* Z2AudioMgr::mAudioMgrPtr;
|
||||||
|
|
||||||
/* 802CD248-802CD34C 2C7B88 0104+00 0/0 1/1 0/0 .text __ct__10Z2AudioMgrFv */
|
/* 802CD248-802CD34C 2C7B88 0104+00 0/0 1/1 0/0 .text __ct__10Z2AudioMgrFv */
|
||||||
|
// wild destructors appeared!
|
||||||
|
#ifdef NONMATCHING
|
||||||
|
Z2AudioMgr::Z2AudioMgr() : mSoundStarter(true) {
|
||||||
|
mAudioMgrPtr = this;
|
||||||
|
mResettingFlag = false;
|
||||||
|
field_0x519 = false;
|
||||||
|
}
|
||||||
|
#else
|
||||||
#pragma push
|
#pragma push
|
||||||
#pragma optimization_level 0
|
#pragma optimization_level 0
|
||||||
#pragma optimizewithasm off
|
#pragma optimizewithasm off
|
||||||
|
@ -236,6 +185,7 @@ asm Z2AudioMgr::Z2AudioMgr() {
|
||||||
#include "asm/Z2AudioLib/Z2AudioMgr/__ct__10Z2AudioMgrFv.s"
|
#include "asm/Z2AudioLib/Z2AudioMgr/__ct__10Z2AudioMgrFv.s"
|
||||||
}
|
}
|
||||||
#pragma pop
|
#pragma pop
|
||||||
|
#endif
|
||||||
|
|
||||||
/* ############################################################################################## */
|
/* ############################################################################################## */
|
||||||
/* 8039CA58-8039CA58 0290B8 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
|
/* 8039CA58-8039CA58 0290B8 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
|
||||||
|
@ -277,6 +227,90 @@ SECTION_SDATA2 static f32 lit_3932 = 1.0f;
|
||||||
|
|
||||||
/* 802CD34C-802CD7F8 2C7C8C 04AC+00 0/0 1/1 0/0 .text
|
/* 802CD34C-802CD7F8 2C7C8C 04AC+00 0/0 1/1 0/0 .text
|
||||||
* init__10Z2AudioMgrFP12JKRSolidHeapUlPvP10JKRArchive */
|
* init__10Z2AudioMgrFP12JKRSolidHeapUlPvP10JKRArchive */
|
||||||
|
// JAUSectionHeap inheritance
|
||||||
|
#ifdef NONMATCHING
|
||||||
|
void Z2AudioMgr::init(JKRSolidHeap* param_0, u32 param_1, void* param_2, JKRArchive* param_3) {
|
||||||
|
JAU_JASInitializer stack_60;
|
||||||
|
stack_60.field_0x1c = 0x8c;
|
||||||
|
stack_60.field_0x2c = 1.3f;
|
||||||
|
stack_60.field_0x30 = "Audiores/Waves/";
|
||||||
|
stack_60.field_0x04 = param_1;
|
||||||
|
stack_60.initJASystem(param_0);
|
||||||
|
JAU_JAIInitializer stack_90;
|
||||||
|
stack_90.field_0x0 = 0x4e;
|
||||||
|
stack_90.field_0x4 = 4;
|
||||||
|
stack_90.field_0xc = 0x30;
|
||||||
|
stack_90.initJAInterface();
|
||||||
|
JAISeMgr *seMgr = mSoundMgr.getSeMgr();
|
||||||
|
JAISeCategoryArrangement stack_80;
|
||||||
|
stack_80.mItems[0].mMaxActiveSe = 4;
|
||||||
|
stack_80.mItems[0].mMaxInactiveSe = 2;
|
||||||
|
stack_80.mItems[1].mMaxActiveSe = 2;
|
||||||
|
stack_80.mItems[1].mMaxInactiveSe = 1;
|
||||||
|
stack_80.mItems[2].mMaxActiveSe = 6;
|
||||||
|
stack_80.mItems[2].mMaxInactiveSe = 3;
|
||||||
|
stack_80.mItems[3].mMaxActiveSe = 16;
|
||||||
|
stack_80.mItems[3].mMaxInactiveSe = 8;
|
||||||
|
stack_80.mItems[4].mMaxActiveSe = 8;
|
||||||
|
stack_80.mItems[4].mMaxInactiveSe = 4;
|
||||||
|
stack_80.mItems[5].mMaxActiveSe = 6;
|
||||||
|
stack_80.mItems[5].mMaxInactiveSe = 3;
|
||||||
|
stack_80.mItems[6].mMaxActiveSe = 6;
|
||||||
|
stack_80.mItems[6].mMaxInactiveSe = 3;
|
||||||
|
stack_80.mItems[7].mMaxActiveSe = 12;
|
||||||
|
stack_80.mItems[7].mMaxInactiveSe = 8;
|
||||||
|
stack_80.mItems[8].mMaxActiveSe = 10;
|
||||||
|
stack_80.mItems[8].mMaxInactiveSe = 5;
|
||||||
|
stack_80.mItems[9].mMaxActiveSe = 8;
|
||||||
|
stack_80.mItems[9].mMaxInactiveSe = 4;
|
||||||
|
stack_80.mItems[10].mMaxActiveSe = 4;
|
||||||
|
stack_80.mItems[10].mMaxInactiveSe = 2;
|
||||||
|
seMgr->setCategoryArrangement(stack_80);
|
||||||
|
seMgr->getCategory(0)->getParams()->moveVolume(0.9448819f, 0);
|
||||||
|
seMgr->getCategory(1)->getParams()->moveVolume(1.0f, 0);
|
||||||
|
seMgr->getCategory(2)->getParams()->moveVolume(0.9448819f, 0);
|
||||||
|
seMgr->getCategory(3)->getParams()->moveVolume(0.9448819f, 0);
|
||||||
|
seMgr->getCategory(4)->getParams()->moveVolume(0.9448819f, 0);
|
||||||
|
seMgr->getCategory(5)->getParams()->moveVolume(0.9448819f, 0);
|
||||||
|
seMgr->getCategory(6)->getParams()->moveVolume(0.9448819f, 0);
|
||||||
|
seMgr->getCategory(7)->getParams()->moveVolume(0.9448819f, 0);
|
||||||
|
seMgr->getCategory(8)->getParams()->moveVolume(0.9448819f, 0);
|
||||||
|
seMgr->getCategory(9)->getParams()->moveVolume(0.9448819f, 0);
|
||||||
|
seMgr->getCategory(10)->getParams()->moveVolume(1.0f, 0);
|
||||||
|
seMgr->getParams()->moveVolume(1.0f, 0);
|
||||||
|
JAISeqMgr* seqMgr = mSoundMgr.getSeqMgr();
|
||||||
|
seqMgr->getParams()->moveVolume(1.0f, 0);
|
||||||
|
JAIStreamMgr* streamMgr = mSoundMgr.getStreamMgr();
|
||||||
|
JAUStreamStaticAramMgr_<1>* streamStaticAramMgr = new(param_0, 0) JAUStreamStaticAramMgr_<1>();
|
||||||
|
streamStaticAramMgr->reserveAram(NULL, 0, 0x14);
|
||||||
|
streamMgr->setStreamAramMgr(streamStaticAramMgr);
|
||||||
|
streamMgr->getParams()->moveVolume(1.0f, 0);
|
||||||
|
JASPoolAllocObject<Z2Audible>::newMemPool(0x4e);
|
||||||
|
mSoundMgr.getSeMgr()->setAudience(&mAudience);
|
||||||
|
mSoundMgr.getSeqMgr()->setAudience(&mAudience);
|
||||||
|
JASPoolAllocObject<Z2SoundHandlePool>::newMemPool(0x4e);
|
||||||
|
OSReport("[Z2AudioMgr::init]before Create Section: %d\n", param_0->getFreeSize());
|
||||||
|
JAUSectionHeap* sectionHeap = JAUNewSectionHeap(true);
|
||||||
|
sectionHeap->setSeqDataArchive(param_3);
|
||||||
|
size_t resMaxSize = JASResArcLoader::getResMaxSize(param_3);
|
||||||
|
sectionHeap->newDynamicSeqBlock(0xe00);
|
||||||
|
sectionHeap->newDynamicSeqBlock(0x17e0);
|
||||||
|
sectionHeap->newDynamicSeqBlock(0x5380);
|
||||||
|
sectionHeap->newDynamicSeqBlock(resMaxSize);
|
||||||
|
Z2AudioArcLoader stack_a0(sectionHeap);
|
||||||
|
bool baaLoadResult = stack_a0.load(param_2);
|
||||||
|
JUT_ASSERT("Z2AudioMgr.cpp", 0xfc, baaLoadResult);
|
||||||
|
seqMgr->setSeqDataMgr(sectionHeap->getSeqDataMgr());
|
||||||
|
if (sectionHeap->getStreamDataMgr()) {
|
||||||
|
streamMgr->setStreamDataMgr(sectionHeap->getStreamDataMgr());
|
||||||
|
} else {
|
||||||
|
streamMgr->setStreamDataMgr(&mSoundInfo);
|
||||||
|
}
|
||||||
|
sectionHeap->finishBuild();
|
||||||
|
initSe();
|
||||||
|
JASSeqParser::registerSeqCallback(seqCallback);
|
||||||
|
}
|
||||||
|
#else
|
||||||
#pragma push
|
#pragma push
|
||||||
#pragma optimization_level 0
|
#pragma optimization_level 0
|
||||||
#pragma optimizewithasm off
|
#pragma optimizewithasm off
|
||||||
|
@ -285,6 +319,7 @@ asm void Z2AudioMgr::init(JKRSolidHeap* param_0, u32 param_1, void* param_2, JKR
|
||||||
#include "asm/Z2AudioLib/Z2AudioMgr/init__10Z2AudioMgrFP12JKRSolidHeapUlPvP10JKRArchive.s"
|
#include "asm/Z2AudioLib/Z2AudioMgr/init__10Z2AudioMgrFP12JKRSolidHeapUlPvP10JKRArchive.s"
|
||||||
}
|
}
|
||||||
#pragma pop
|
#pragma pop
|
||||||
|
#endif
|
||||||
|
|
||||||
/* 802CD7F8-802CD888 2C8138 0090+00 1/0 0/0 0/0 .text __dt__24JAUStreamAramMgrBase_<1>Fv
|
/* 802CD7F8-802CD888 2C8138 0090+00 1/0 0/0 0/0 .text __dt__24JAUStreamAramMgrBase_<1>Fv
|
||||||
*/
|
*/
|
||||||
|
@ -306,11 +341,11 @@ void Z2AudioMgr::setOutputMode(u32 mode) {
|
||||||
|
|
||||||
/* 802CD8B4-802CD904 2C81F4 0050+00 1/1 0/0 0/0 .text zeldaGFrameWork__10Z2AudioMgrFv */
|
/* 802CD8B4-802CD904 2C81F4 0050+00 1/1 0/0 0/0 .text zeldaGFrameWork__10Z2AudioMgrFv */
|
||||||
void Z2AudioMgr::zeldaGFrameWork() {
|
void Z2AudioMgr::zeldaGFrameWork() {
|
||||||
mStatusMgr.processTime();
|
processTime();
|
||||||
mSpeechMgr.framework();
|
mSpeechMgr.framework();
|
||||||
mSeMgr.processSeFramework();
|
processSeFramework();
|
||||||
mSeqMgr.processBgmFramework();
|
processBgmFramework();
|
||||||
mStatusMgr.processHeartGaugeSound();
|
processHeartGaugeSound();
|
||||||
}
|
}
|
||||||
|
|
||||||
/* 802CD904-802CD974 2C8244 0070+00 0/0 1/1 0/0 .text gframeProcess__10Z2AudioMgrFv */
|
/* 802CD904-802CD974 2C8244 0070+00 0/0 1/1 0/0 .text gframeProcess__10Z2AudioMgrFv */
|
||||||
|
@ -322,7 +357,7 @@ void Z2AudioMgr::gframeProcess() {
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
mSoundMgr.framework();
|
mSoundMgr.framework();
|
||||||
mSceneMgr.framework();
|
framework();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -378,6 +413,16 @@ asm bool Z2AudioMgr::hasReset() const {
|
||||||
|
|
||||||
/* 802CDB1C-802CDB68 2C845C 004C+00 1/0 1/0 0/0 .text
|
/* 802CDB1C-802CDB68 2C845C 004C+00 1/0 1/0 0/0 .text
|
||||||
* startSound__10Z2AudioMgrF10JAISoundIDP14JAISoundHandlePCQ29JGeometry8TVec3<f> */
|
* startSound__10Z2AudioMgrF10JAISoundIDP14JAISoundHandlePCQ29JGeometry8TVec3<f> */
|
||||||
|
// vtable order
|
||||||
|
#ifdef NONMATCHING
|
||||||
|
int Z2AudioMgr::startSound(JAISoundID param_0, JAISoundHandle* param_1,
|
||||||
|
JGeometry::TVec3<f32> const* param_2) {
|
||||||
|
if (mResettingFlag) {
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
return mSoundMgr.startSound(param_0, param_1, param_2);
|
||||||
|
}
|
||||||
|
#else
|
||||||
#pragma push
|
#pragma push
|
||||||
#pragma optimization_level 0
|
#pragma optimization_level 0
|
||||||
#pragma optimizewithasm off
|
#pragma optimizewithasm off
|
||||||
|
@ -388,6 +433,7 @@ extern "C" asm void func_802CDB1C() {
|
||||||
#include "asm/Z2AudioLib/Z2AudioMgr/func_802CDB1C.s"
|
#include "asm/Z2AudioLib/Z2AudioMgr/func_802CDB1C.s"
|
||||||
}
|
}
|
||||||
#pragma pop
|
#pragma pop
|
||||||
|
#endif
|
||||||
|
|
||||||
/* 802CDB68-802CDC08 2C84A8 00A0+00 1/0 0/0 0/0 .text __dt__26JAUStreamStaticAramMgr_<1>Fv */
|
/* 802CDB68-802CDC08 2C84A8 00A0+00 1/0 0/0 0/0 .text __dt__26JAUStreamStaticAramMgr_<1>Fv */
|
||||||
#pragma push
|
#pragma push
|
||||||
|
|
|
@ -164,24 +164,12 @@ extern "C" extern u8 __OSReport_disable;
|
||||||
//
|
//
|
||||||
|
|
||||||
/* 802C589C-802C58AC 2C01DC 0010+00 3/3 0/0 0/0 .text __ct__11Z2EnvSeBaseFP3Vec */
|
/* 802C589C-802C58AC 2C01DC 0010+00 3/3 0/0 0/0 .text __ct__11Z2EnvSeBaseFP3Vec */
|
||||||
#pragma push
|
Z2EnvSeBase::Z2EnvSeBase(Vec* param_0) {
|
||||||
#pragma optimization_level 0
|
mPos = param_0;
|
||||||
#pragma optimizewithasm off
|
|
||||||
asm Z2EnvSeBase::Z2EnvSeBase(Vec* param_0) {
|
|
||||||
nofralloc
|
|
||||||
#include "asm/Z2AudioLib/Z2EnvSeMgr/__ct__11Z2EnvSeBaseFP3Vec.s"
|
|
||||||
}
|
}
|
||||||
#pragma pop
|
|
||||||
|
|
||||||
/* 802C58AC-802C5908 2C01EC 005C+00 3/3 0/0 0/0 .text __dt__11Z2EnvSeBaseFv */
|
/* 802C58AC-802C5908 2C01EC 005C+00 3/3 0/0 0/0 .text __dt__11Z2EnvSeBaseFv */
|
||||||
#pragma push
|
Z2EnvSeBase::~Z2EnvSeBase() {}
|
||||||
#pragma optimization_level 0
|
|
||||||
#pragma optimizewithasm off
|
|
||||||
asm Z2EnvSeBase::~Z2EnvSeBase() {
|
|
||||||
nofralloc
|
|
||||||
#include "asm/Z2AudioLib/Z2EnvSeMgr/__dt__11Z2EnvSeBaseFv.s"
|
|
||||||
}
|
|
||||||
#pragma pop
|
|
||||||
|
|
||||||
/* ############################################################################################## */
|
/* ############################################################################################## */
|
||||||
/* 80455D40-80455D44 004340 0004+00 2/2 0/0 0/0 .sdata2 @3501 */
|
/* 80455D40-80455D44 004340 0004+00 2/2 0/0 0/0 .sdata2 @3501 */
|
||||||
|
@ -237,31 +225,25 @@ asm void Z2EnvSeBase::startEnvSeLevel(JAISoundID param_0, f32 param_1, f32 param
|
||||||
|
|
||||||
/* ############################################################################################## */
|
/* ############################################################################################## */
|
||||||
/* 8039C250-8039C260 0288B0 000C+04 2/2 0/0 0/0 .rodata cNullVec__6Z2Calc */
|
/* 8039C250-8039C260 0288B0 000C+04 2/2 0/0 0/0 .rodata cNullVec__6Z2Calc */
|
||||||
SECTION_RODATA static u8 const cNullVec__6Z2Calc[12 + 4 /* padding */] = {
|
SECTION_RODATA static Vec const cNullVec__6Z2Calc = {0.0f, 0.0f, 0.0f};
|
||||||
0x00,
|
|
||||||
0x00,
|
|
||||||
0x00,
|
|
||||||
0x00,
|
|
||||||
0x00,
|
|
||||||
0x00,
|
|
||||||
0x00,
|
|
||||||
0x00,
|
|
||||||
0x00,
|
|
||||||
0x00,
|
|
||||||
0x00,
|
|
||||||
0x00,
|
|
||||||
/* padding */
|
|
||||||
0x00,
|
|
||||||
0x00,
|
|
||||||
0x00,
|
|
||||||
0x00,
|
|
||||||
};
|
|
||||||
COMPILER_STRIP_GATE(0x8039C250, &cNullVec__6Z2Calc);
|
COMPILER_STRIP_GATE(0x8039C250, &cNullVec__6Z2Calc);
|
||||||
|
|
||||||
/* 80455D60-80455D64 004360 0004+00 10/10 0/0 0/0 .sdata2 @3574 */
|
/* 80455D60-80455D64 004360 0004+00 10/10 0/0 0/0 .sdata2 @3574 */
|
||||||
SECTION_SDATA2 static f32 lit_3574 = 0.5f;
|
SECTION_SDATA2 static f32 lit_3574 = 0.5f;
|
||||||
|
|
||||||
/* 802C5C9C-802C5D1C 2C05DC 0080+00 1/1 0/0 0/0 .text __ct__10Z2EnvSeDirFP3Vec */
|
/* 802C5C9C-802C5D1C 2C05DC 0080+00 1/1 0/0 0/0 .text __ct__10Z2EnvSeDirFP3Vec */
|
||||||
|
// matches with literals
|
||||||
|
#ifdef NONMATCHING
|
||||||
|
Z2EnvSeDir::Z2EnvSeDir(Vec* param_0) {
|
||||||
|
field_0x8 = 0.5f;
|
||||||
|
field_0xc = 0.5f;
|
||||||
|
if (param_0) {
|
||||||
|
setPanDir(param_0);
|
||||||
|
} else {
|
||||||
|
mPanDir = cNullVec__6Z2Calc;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#else
|
||||||
#pragma push
|
#pragma push
|
||||||
#pragma optimization_level 0
|
#pragma optimization_level 0
|
||||||
#pragma optimizewithasm off
|
#pragma optimizewithasm off
|
||||||
|
@ -270,22 +252,24 @@ asm Z2EnvSeDir::Z2EnvSeDir(Vec* param_0) {
|
||||||
#include "asm/Z2AudioLib/Z2EnvSeMgr/__ct__10Z2EnvSeDirFP3Vec.s"
|
#include "asm/Z2AudioLib/Z2EnvSeMgr/__ct__10Z2EnvSeDirFP3Vec.s"
|
||||||
}
|
}
|
||||||
#pragma pop
|
#pragma pop
|
||||||
|
#endif
|
||||||
|
|
||||||
/* 802C5D1C-802C5D70 2C065C 0054+00 1/1 0/0 0/0 .text __dt__10Z2EnvSeDirFv */
|
/* 802C5D1C-802C5D70 2C065C 0054+00 1/1 0/0 0/0 .text __dt__10Z2EnvSeDirFv */
|
||||||
#pragma push
|
Z2EnvSeDir::~Z2EnvSeDir() {}
|
||||||
#pragma optimization_level 0
|
|
||||||
#pragma optimizewithasm off
|
|
||||||
asm Z2EnvSeDir::~Z2EnvSeDir() {
|
|
||||||
nofralloc
|
|
||||||
#include "asm/Z2AudioLib/Z2EnvSeMgr/__dt__10Z2EnvSeDirFv.s"
|
|
||||||
}
|
|
||||||
#pragma pop
|
|
||||||
|
|
||||||
/* ############################################################################################## */
|
/* ############################################################################################## */
|
||||||
/* 80455D64-80455D68 004364 0004+00 1/1 0/0 0/0 .sdata2 @3585 */
|
/* 80455D64-80455D68 004364 0004+00 1/1 0/0 0/0 .sdata2 @3585 */
|
||||||
SECTION_SDATA2 static f32 lit_3585 = -1000.0f;
|
SECTION_SDATA2 static f32 lit_3585 = -1000.0f;
|
||||||
|
|
||||||
/* 802C5D70-802C5D9C 2C06B0 002C+00 2/2 0/0 0/0 .text setPanDir__10Z2EnvSeDirFP3Vec */
|
/* 802C5D70-802C5D9C 2C06B0 002C+00 2/2 0/0 0/0 .text setPanDir__10Z2EnvSeDirFP3Vec */
|
||||||
|
// matches with literals
|
||||||
|
#ifdef NONMATCHING
|
||||||
|
void Z2EnvSeDir::setPanDir(Vec* dir) {
|
||||||
|
mPanDir.x = dir->x * -1000.0f;
|
||||||
|
mPanDir.y = dir->y * -1000.0f;
|
||||||
|
mPanDir.z = dir->z * -1000.0f;
|
||||||
|
}
|
||||||
|
#else
|
||||||
#pragma push
|
#pragma push
|
||||||
#pragma optimization_level 0
|
#pragma optimization_level 0
|
||||||
#pragma optimizewithasm off
|
#pragma optimizewithasm off
|
||||||
|
@ -294,6 +278,7 @@ asm void Z2EnvSeDir::setPanDir(Vec* param_0) {
|
||||||
#include "asm/Z2AudioLib/Z2EnvSeMgr/setPanDir__10Z2EnvSeDirFP3Vec.s"
|
#include "asm/Z2AudioLib/Z2EnvSeMgr/setPanDir__10Z2EnvSeDirFP3Vec.s"
|
||||||
}
|
}
|
||||||
#pragma pop
|
#pragma pop
|
||||||
|
#endif
|
||||||
|
|
||||||
/* 802C5D9C-802C5E90 2C06DC 00F4+00 1/1 0/0 0/0 .text calcPan__10Z2EnvSeDirFf */
|
/* 802C5D9C-802C5E90 2C06DC 00F4+00 1/1 0/0 0/0 .text calcPan__10Z2EnvSeDirFf */
|
||||||
#pragma push
|
#pragma push
|
||||||
|
@ -324,6 +309,17 @@ SECTION_SDATA2 static f32 lit_3654 = 0.0018554000416770577f;
|
||||||
SECTION_SDATA2 static f32 lit_3655 = 0.0008553999941796064f;
|
SECTION_SDATA2 static f32 lit_3655 = 0.0008553999941796064f;
|
||||||
|
|
||||||
/* 802C5ECC-802C5F28 2C080C 005C+00 1/1 0/0 0/0 .text __ct__14Z2EnvSeAutoPanFv */
|
/* 802C5ECC-802C5F28 2C080C 005C+00 1/1 0/0 0/0 .text __ct__14Z2EnvSeAutoPanFv */
|
||||||
|
// matches with literals
|
||||||
|
#ifdef NONMATCHING
|
||||||
|
Z2EnvSeAutoPan::Z2EnvSeAutoPan() {
|
||||||
|
field_0x8 = 0.5f;
|
||||||
|
field_0xc = 0.5f;
|
||||||
|
field_0x10 = 0.0018554000416770577f;
|
||||||
|
field_0x14 = 0.0008553999941796064f;
|
||||||
|
field_0x18 = 1;
|
||||||
|
field_0x19 = 1;
|
||||||
|
}
|
||||||
|
#else
|
||||||
#pragma push
|
#pragma push
|
||||||
#pragma optimization_level 0
|
#pragma optimization_level 0
|
||||||
#pragma optimizewithasm off
|
#pragma optimizewithasm off
|
||||||
|
@ -332,16 +328,10 @@ asm Z2EnvSeAutoPan::Z2EnvSeAutoPan() {
|
||||||
#include "asm/Z2AudioLib/Z2EnvSeMgr/__ct__14Z2EnvSeAutoPanFv.s"
|
#include "asm/Z2AudioLib/Z2EnvSeMgr/__ct__14Z2EnvSeAutoPanFv.s"
|
||||||
}
|
}
|
||||||
#pragma pop
|
#pragma pop
|
||||||
|
#endif
|
||||||
|
|
||||||
/* 802C5F28-802C5F7C 2C0868 0054+00 1/1 0/0 0/0 .text __dt__14Z2EnvSeAutoPanFv */
|
/* 802C5F28-802C5F7C 2C0868 0054+00 1/1 0/0 0/0 .text __dt__14Z2EnvSeAutoPanFv */
|
||||||
#pragma push
|
Z2EnvSeAutoPan::~Z2EnvSeAutoPan() {}
|
||||||
#pragma optimization_level 0
|
|
||||||
#pragma optimizewithasm off
|
|
||||||
asm Z2EnvSeAutoPan::~Z2EnvSeAutoPan() {
|
|
||||||
nofralloc
|
|
||||||
#include "asm/Z2AudioLib/Z2EnvSeMgr/__dt__14Z2EnvSeAutoPanFv.s"
|
|
||||||
}
|
|
||||||
#pragma pop
|
|
||||||
|
|
||||||
/* 802C5F7C-802C5F98 2C08BC 001C+00 2/2 0/0 0/0 .text setPanParam__14Z2EnvSeAutoPanFffbbff */
|
/* 802C5F7C-802C5F98 2C08BC 001C+00 2/2 0/0 0/0 .text setPanParam__14Z2EnvSeAutoPanFffbbff */
|
||||||
#pragma push
|
#pragma push
|
||||||
|
@ -472,6 +462,41 @@ SECTION_SDATA2 static f32 lit_3776 = 0.0010000000474974513f;
|
||||||
SECTION_SDATA2 static f32 lit_3777 = 0.0037908784579485655f;
|
SECTION_SDATA2 static f32 lit_3777 = 0.0037908784579485655f;
|
||||||
|
|
||||||
/* 802C611C-802C6540 2C0A5C 0424+00 0/0 1/1 0/0 .text __ct__10Z2EnvSeMgrFv */
|
/* 802C611C-802C6540 2C0A5C 0424+00 0/0 1/1 0/0 .text __ct__10Z2EnvSeMgrFv */
|
||||||
|
// matches with literals
|
||||||
|
#ifdef NONMATCHING
|
||||||
|
Z2EnvSeMgr::Z2EnvSeMgr()
|
||||||
|
: JASGlobalInstance<Z2EnvSeMgr>(this), field_0x38(), field_0x48(1.0f), field_0x4c(1.0f),
|
||||||
|
field_0x50(1.0f), field_0x140(), mSnowPower(), mWindType(), field_0x188(), field_0x1ac(1.0f),
|
||||||
|
field_0x1b0(1.0f), field_0x1b4(1.0f), field_0x1b8(), field_0x1e0(), field_0x1e4(1.0f),
|
||||||
|
field_0x1e8(1.0f), field_0x1ec(1.0f), field_0x214(), field_0x218(1.0f), field_0x21c(1.0f),
|
||||||
|
field_0x220(1.0f), field_0x248(), field_0x24c(1.0f), field_0x250(1.0f), field_0x254(1.0f),
|
||||||
|
field_0x27c(), field_0x280(1.0f), field_0x284(1.0f), field_0x288(1.0f), field_0x2b0(),
|
||||||
|
field_0x2b4(1.0f), field_0x2b8(1.0f), field_0x2bc(1.0f), field_0x2e4(), mFogDensity() {
|
||||||
|
field_0x3c = 0.0f;
|
||||||
|
field_0x40 = 0.0f;
|
||||||
|
field_0x44 = 0.0f;
|
||||||
|
field_0x54 = 0.0f;
|
||||||
|
field_0x58 = 0.0f;
|
||||||
|
field_0x5c = 0.0f;
|
||||||
|
field_0x39 = 0;
|
||||||
|
field_0x2e8.setParam(0.1f, 0.007823764f, 0.06f);
|
||||||
|
field_0x2f8.setParam(0.2f, 0.007823764f, 0.06f);
|
||||||
|
field_0x90.setParam(0.1f, 0.02630252f, 0.005f);
|
||||||
|
field_0xa0.setParam(0.9f, 0.02331011f, 0.003f);
|
||||||
|
field_0xb0.setParam(0.2f, 0.006385157f, 0.004f);
|
||||||
|
field_0xc0.setParam(0.8f, 0.006188805f, 0.0045f);
|
||||||
|
field_0xd0.setParam(0.3f, 0.05343298f, 0.002f);
|
||||||
|
field_0xe0.setParam(0.7f, 0.04256627f, 0.0025f);
|
||||||
|
field_0xf0.setParam(0.4f, 0.01293395f, 0.006f);
|
||||||
|
field_0x100.setParam(0.6f, 0.01215741f, 0.0065f);
|
||||||
|
field_0x18c.setParam(0.1f, 0.02331011f, 0.005f);
|
||||||
|
field_0x19c.setParam(0.5f, 0.05343298f, 0.0025f);
|
||||||
|
field_0x64.setVolumeScale(1.0f);
|
||||||
|
field_0x2c0.setVolumeScale(1.0f);
|
||||||
|
field_0x120.setParam(0.5f, 0.02092357f, 0.001f);
|
||||||
|
field_0x130.setParam(0.1f, 0.003790878f, 0.005f);
|
||||||
|
}
|
||||||
|
#else
|
||||||
#pragma push
|
#pragma push
|
||||||
#pragma optimization_level 0
|
#pragma optimization_level 0
|
||||||
#pragma optimizewithasm off
|
#pragma optimizewithasm off
|
||||||
|
@ -480,16 +505,10 @@ asm Z2EnvSeMgr::Z2EnvSeMgr() {
|
||||||
#include "asm/Z2AudioLib/Z2EnvSeMgr/__ct__10Z2EnvSeMgrFv.s"
|
#include "asm/Z2AudioLib/Z2EnvSeMgr/__ct__10Z2EnvSeMgrFv.s"
|
||||||
}
|
}
|
||||||
#pragma pop
|
#pragma pop
|
||||||
|
#endif
|
||||||
|
|
||||||
/* 802C6540-802C66B0 2C0E80 0170+00 0/0 1/1 0/0 .text __dt__10Z2EnvSeMgrFv */
|
/* 802C6540-802C66B0 2C0E80 0170+00 0/0 1/1 0/0 .text __dt__10Z2EnvSeMgrFv */
|
||||||
#pragma push
|
Z2EnvSeMgr::~Z2EnvSeMgr() {}
|
||||||
#pragma optimization_level 0
|
|
||||||
#pragma optimizewithasm off
|
|
||||||
asm Z2EnvSeMgr::~Z2EnvSeMgr() {
|
|
||||||
nofralloc
|
|
||||||
#include "asm/Z2AudioLib/Z2EnvSeMgr/__dt__10Z2EnvSeMgrFv.s"
|
|
||||||
}
|
|
||||||
#pragma pop
|
|
||||||
|
|
||||||
/* ############################################################################################## */
|
/* ############################################################################################## */
|
||||||
/* 80455DEC-80455DF0 0043EC 0004+00 1/1 0/0 0/0 .sdata2 @3928 */
|
/* 80455DEC-80455DF0 0043EC 0004+00 1/1 0/0 0/0 .sdata2 @3928 */
|
||||||
|
|
|
@ -139,7 +139,6 @@ extern "C" void _savegpr_16();
|
||||||
extern "C" void _savegpr_29();
|
extern "C" void _savegpr_29();
|
||||||
extern "C" void _restgpr_16();
|
extern "C" void _restgpr_16();
|
||||||
extern "C" void _restgpr_29();
|
extern "C" void _restgpr_29();
|
||||||
extern "C" void strcmp();
|
|
||||||
extern "C" u8 saveBitLabels__16dSv_event_flag_c[1644 + 4 /* padding */];
|
extern "C" u8 saveBitLabels__16dSv_event_flag_c[1644 + 4 /* padding */];
|
||||||
extern "C" extern u8 g_dComIfG_gameInfo[122384];
|
extern "C" extern u8 g_dComIfG_gameInfo[122384];
|
||||||
extern "C" extern u8 struct_80450860[4];
|
extern "C" extern u8 struct_80450860[4];
|
||||||
|
|
|
@ -4,7 +4,12 @@
|
||||||
//
|
//
|
||||||
|
|
||||||
#include "Z2AudioLib/Z2SoundInfo.h"
|
#include "Z2AudioLib/Z2SoundInfo.h"
|
||||||
|
#include "JSystem/JAudio2/JAISeq.h"
|
||||||
|
#include "JSystem/JAudio2/JAUAudibleParam.h"
|
||||||
|
#include "JSystem/JAudio2/JAUSoundTable.h"
|
||||||
|
#include "JSystem/JUtility/JUTAssert.h"
|
||||||
#include "dol2asm.h"
|
#include "dol2asm.h"
|
||||||
|
#include "dolphin/dvd/dvd.h"
|
||||||
|
|
||||||
//
|
//
|
||||||
// Types:
|
// Types:
|
||||||
|
@ -19,11 +24,6 @@ struct JAUStdSoundTableType {
|
||||||
static u32 STRM_CH_SHIFT;
|
static u32 STRM_CH_SHIFT;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct JAUSoundTable {
|
|
||||||
/* 802A7160 */ void getTypeID(JAISoundID) const;
|
|
||||||
/* 802A728C */ void getData(JAISoundID) const;
|
|
||||||
};
|
|
||||||
|
|
||||||
//
|
//
|
||||||
// Forward References:
|
// Forward References:
|
||||||
//
|
//
|
||||||
|
@ -59,7 +59,6 @@ extern "C" void getData__13JAUSoundTableCF10JAISoundID();
|
||||||
extern "C" void linearTransform__6Z2CalcFfffffb();
|
extern "C" void linearTransform__6Z2CalcFfffffb();
|
||||||
extern "C" void getRandom_0_1__6Z2CalcFv();
|
extern "C" void getRandom_0_1__6Z2CalcFv();
|
||||||
extern "C" void __dl__FPv();
|
extern "C" void __dl__FPv();
|
||||||
extern "C" void DVDConvertPathToEntrynum();
|
|
||||||
extern "C" void _savegpr_26();
|
extern "C" void _savegpr_26();
|
||||||
extern "C" void _savegpr_27();
|
extern "C" void _savegpr_27();
|
||||||
extern "C" void _savegpr_28();
|
extern "C" void _savegpr_28();
|
||||||
|
@ -81,37 +80,35 @@ extern "C" extern u8 __OSReport_disable;
|
||||||
#pragma push
|
#pragma push
|
||||||
#pragma optimization_level 0
|
#pragma optimization_level 0
|
||||||
#pragma optimizewithasm off
|
#pragma optimizewithasm off
|
||||||
asm void Z2SoundInfo::getBgmSeqResourceID(JAISoundID param_0) const {
|
asm u16 Z2SoundInfo::getBgmSeqResourceID(JAISoundID param_0) const {
|
||||||
nofralloc
|
nofralloc
|
||||||
#include "asm/Z2AudioLib/Z2SoundInfo/getBgmSeqResourceID__11Z2SoundInfoCF10JAISoundID.s"
|
#include "asm/Z2AudioLib/Z2SoundInfo/getBgmSeqResourceID__11Z2SoundInfoCF10JAISoundID.s"
|
||||||
}
|
}
|
||||||
#pragma pop
|
#pragma pop
|
||||||
|
|
||||||
/* 802BB090-802BB0D8 2B59D0 0048+00 1/0 0/0 0/0 .text getSoundType__11Z2SoundInfoCF10JAISoundID */
|
/* 802BB090-802BB0D8 2B59D0 0048+00 1/0 0/0 0/0 .text getSoundType__11Z2SoundInfoCF10JAISoundID */
|
||||||
#pragma push
|
u32 Z2SoundInfo::getSoundType(JAISoundID param_0) const {
|
||||||
#pragma optimization_level 0
|
switch (param_0.mId.mBytes.b0) {
|
||||||
#pragma optimizewithasm off
|
case 0:
|
||||||
asm void Z2SoundInfo::getSoundType(JAISoundID param_0) const {
|
return 0;
|
||||||
nofralloc
|
case 1:
|
||||||
#include "asm/Z2AudioLib/Z2SoundInfo/getSoundType__11Z2SoundInfoCF10JAISoundID.s"
|
return 1;
|
||||||
|
case 2:
|
||||||
|
return 2;
|
||||||
|
}
|
||||||
|
return -1;
|
||||||
}
|
}
|
||||||
#pragma pop
|
|
||||||
|
|
||||||
/* 802BB0D8-802BB0E0 2B5A18 0008+00 1/0 0/0 0/0 .text getCategory__11Z2SoundInfoCF10JAISoundID */
|
/* 802BB0D8-802BB0E0 2B5A18 0008+00 1/0 0/0 0/0 .text getCategory__11Z2SoundInfoCF10JAISoundID */
|
||||||
#pragma push
|
int Z2SoundInfo::getCategory(JAISoundID param_0) const {
|
||||||
#pragma optimization_level 0
|
return param_0.mId.mBytes.b1;
|
||||||
#pragma optimizewithasm off
|
|
||||||
asm void Z2SoundInfo::getCategory(JAISoundID param_0) const {
|
|
||||||
nofralloc
|
|
||||||
#include "asm/Z2AudioLib/Z2SoundInfo/getCategory__11Z2SoundInfoCF10JAISoundID.s"
|
|
||||||
}
|
}
|
||||||
#pragma pop
|
|
||||||
|
|
||||||
/* 802BB0E0-802BB158 2B5A20 0078+00 1/0 0/0 0/0 .text getPriority__11Z2SoundInfoCF10JAISoundID */
|
/* 802BB0E0-802BB158 2B5A20 0078+00 1/0 0/0 0/0 .text getPriority__11Z2SoundInfoCF10JAISoundID */
|
||||||
#pragma push
|
#pragma push
|
||||||
#pragma optimization_level 0
|
#pragma optimization_level 0
|
||||||
#pragma optimizewithasm off
|
#pragma optimizewithasm off
|
||||||
asm void Z2SoundInfo::getPriority(JAISoundID param_0) const {
|
asm u32 Z2SoundInfo::getPriority(JAISoundID param_0) const {
|
||||||
nofralloc
|
nofralloc
|
||||||
#include "asm/Z2AudioLib/Z2SoundInfo/getPriority__11Z2SoundInfoCF10JAISoundID.s"
|
#include "asm/Z2AudioLib/Z2SoundInfo/getPriority__11Z2SoundInfoCF10JAISoundID.s"
|
||||||
}
|
}
|
||||||
|
@ -185,14 +182,9 @@ asm void Z2SoundInfo::getSeInfo(JAISoundID param_0, JAISe* param_1) const {
|
||||||
|
|
||||||
/* 802BB8B4-802BB8E0 2B61F4 002C+00 1/0 0/0 0/0 .text
|
/* 802BB8B4-802BB8E0 2B61F4 002C+00 1/0 0/0 0/0 .text
|
||||||
* getSeqInfo__11Z2SoundInfoCF10JAISoundIDP6JAISeq */
|
* getSeqInfo__11Z2SoundInfoCF10JAISoundIDP6JAISeq */
|
||||||
#pragma push
|
void Z2SoundInfo::getSeqInfo(JAISoundID param_0, JAISeq* param_1) const {
|
||||||
#pragma optimization_level 0
|
getSoundInfo_(param_0, param_1);
|
||||||
#pragma optimizewithasm off
|
|
||||||
asm void Z2SoundInfo::getSeqInfo(JAISoundID param_0, JAISeq* param_1) const {
|
|
||||||
nofralloc
|
|
||||||
#include "asm/Z2AudioLib/Z2SoundInfo/getSeqInfo__11Z2SoundInfoCF10JAISoundIDP6JAISeq.s"
|
|
||||||
}
|
}
|
||||||
#pragma pop
|
|
||||||
|
|
||||||
/* ############################################################################################## */
|
/* ############################################################################################## */
|
||||||
/* 80455A90-80455A94 004090 0004+00 1/1 0/0 0/0 .sdata2 STRM_CH_SHIFT__20JAUStdSoundTableType */
|
/* 80455A90-80455A94 004090 0004+00 1/1 0/0 0/0 .sdata2 STRM_CH_SHIFT__20JAUStdSoundTableType */
|
||||||
|
@ -217,7 +209,7 @@ asm void Z2SoundInfo::getStreamInfo(JAISoundID param_0, JAIStream* param_1) cons
|
||||||
#pragma push
|
#pragma push
|
||||||
#pragma optimization_level 0
|
#pragma optimization_level 0
|
||||||
#pragma optimizewithasm off
|
#pragma optimizewithasm off
|
||||||
asm void Z2SoundInfo::getStreamFilePath(JAISoundID param_0) {
|
asm const char* Z2SoundInfo::getStreamFilePath(JAISoundID param_0) {
|
||||||
nofralloc
|
nofralloc
|
||||||
#include "asm/Z2AudioLib/Z2SoundInfo/getStreamFilePath__11Z2SoundInfoF10JAISoundID.s"
|
#include "asm/Z2AudioLib/Z2SoundInfo/getStreamFilePath__11Z2SoundInfoF10JAISoundID.s"
|
||||||
}
|
}
|
||||||
|
@ -225,20 +217,16 @@ asm void Z2SoundInfo::getStreamFilePath(JAISoundID param_0) {
|
||||||
|
|
||||||
/* 802BBA88-802BBAC8 2B63C8 0040+00 2/1 0/0 0/0 .text
|
/* 802BBA88-802BBAC8 2B63C8 0040+00 2/1 0/0 0/0 .text
|
||||||
* getStreamFileEntry__11Z2SoundInfoF10JAISoundID */
|
* getStreamFileEntry__11Z2SoundInfoF10JAISoundID */
|
||||||
#pragma push
|
s32 Z2SoundInfo::getStreamFileEntry(JAISoundID param_0) {
|
||||||
#pragma optimization_level 0
|
const char* path = getStreamFilePath(param_0);
|
||||||
#pragma optimizewithasm off
|
return !path ? -1 : DVDConvertPathToEntrynum(path);
|
||||||
asm void Z2SoundInfo::getStreamFileEntry(JAISoundID param_0) {
|
|
||||||
nofralloc
|
|
||||||
#include "asm/Z2AudioLib/Z2SoundInfo/getStreamFileEntry__11Z2SoundInfoF10JAISoundID.s"
|
|
||||||
}
|
}
|
||||||
#pragma pop
|
|
||||||
|
|
||||||
/* 802BBAC8-802BBB48 2B6408 0080+00 3/3 4/4 0/0 .text getSwBit__11Z2SoundInfoCF10JAISoundID */
|
/* 802BBAC8-802BBB48 2B6408 0080+00 3/3 4/4 0/0 .text getSwBit__11Z2SoundInfoCF10JAISoundID */
|
||||||
#pragma push
|
#pragma push
|
||||||
#pragma optimization_level 0
|
#pragma optimization_level 0
|
||||||
#pragma optimizewithasm off
|
#pragma optimizewithasm off
|
||||||
asm void Z2SoundInfo::getSwBit(JAISoundID param_0) const {
|
asm int Z2SoundInfo::getSwBit(JAISoundID param_0) const {
|
||||||
nofralloc
|
nofralloc
|
||||||
#include "asm/Z2AudioLib/Z2SoundInfo/getSwBit__11Z2SoundInfoCF10JAISoundID.s"
|
#include "asm/Z2AudioLib/Z2SoundInfo/getSwBit__11Z2SoundInfoCF10JAISoundID.s"
|
||||||
}
|
}
|
||||||
|
|
|
@ -158,7 +158,7 @@ SECTION_SDATA2 static f32 lit_3689 = -1.0f;
|
||||||
#pragma push
|
#pragma push
|
||||||
#pragma optimization_level 0
|
#pragma optimization_level 0
|
||||||
#pragma optimizewithasm off
|
#pragma optimizewithasm off
|
||||||
asm void seqCallback(JASTrack* param_0, u16 param_1) {
|
asm u16 seqCallback(JASTrack* param_0, u16 param_1) {
|
||||||
nofralloc
|
nofralloc
|
||||||
#include "asm/Z2AudioLib/Z2SoundMgr/seqCallback__FP8JASTrackUs.s"
|
#include "asm/Z2AudioLib/Z2SoundMgr/seqCallback__FP8JASTrackUs.s"
|
||||||
}
|
}
|
||||||
|
@ -212,7 +212,7 @@ SECTION_SDATA2 static f64 lit_3909 = 4503599627370496.0 /* cast u32 to float */;
|
||||||
#pragma push
|
#pragma push
|
||||||
#pragma optimization_level 0
|
#pragma optimization_level 0
|
||||||
#pragma optimizewithasm off
|
#pragma optimizewithasm off
|
||||||
asm void Z2SoundMgr::startSound(JAISoundID param_0, JAISoundHandle* param_1,
|
asm int Z2SoundMgr::startSound(JAISoundID param_0, JAISoundHandle* param_1,
|
||||||
JGeometry::TVec3<f32> const* param_2) {
|
JGeometry::TVec3<f32> const* param_2) {
|
||||||
nofralloc
|
nofralloc
|
||||||
#include "asm/Z2AudioLib/Z2SoundMgr/func_802A9EE8.s"
|
#include "asm/Z2AudioLib/Z2SoundMgr/func_802A9EE8.s"
|
||||||
|
|
|
@ -52,7 +52,6 @@ extern "C" void _savegpr_23();
|
||||||
extern "C" void _savegpr_27();
|
extern "C" void _savegpr_27();
|
||||||
extern "C" void _restgpr_23();
|
extern "C" void _restgpr_23();
|
||||||
extern "C" void _restgpr_27();
|
extern "C" void _restgpr_27();
|
||||||
extern "C" void strcmp();
|
|
||||||
extern "C" extern u8 data_80450B80[4];
|
extern "C" extern u8 data_80450B80[4];
|
||||||
extern "C" extern Z2SeqMgr* data_80450B84;
|
extern "C" extern Z2SeqMgr* data_80450B84;
|
||||||
extern "C" u8 mLinkPtr__14Z2CreatureLink[4 + 4 /* padding */];
|
extern "C" u8 mLinkPtr__14Z2CreatureLink[4 + 4 /* padding */];
|
||||||
|
|
|
@ -533,7 +533,6 @@ extern "C" void _restgpr_26();
|
||||||
extern "C" void _restgpr_27();
|
extern "C" void _restgpr_27();
|
||||||
extern "C" void _restgpr_28();
|
extern "C" void _restgpr_28();
|
||||||
extern "C" void _restgpr_29();
|
extern "C" void _restgpr_29();
|
||||||
extern "C" void strcmp();
|
|
||||||
extern "C" extern void* g_fopAc_Method[8];
|
extern "C" extern void* g_fopAc_Method[8];
|
||||||
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
||||||
extern "C" extern void* __vt__8dCcD_Sph[36];
|
extern "C" extern void* __vt__8dCcD_Sph[36];
|
||||||
|
|
|
@ -244,7 +244,6 @@ extern "C" void _restgpr_21();
|
||||||
extern "C" void _restgpr_27();
|
extern "C" void _restgpr_27();
|
||||||
extern "C" void _restgpr_28();
|
extern "C" void _restgpr_28();
|
||||||
extern "C" void _restgpr_29();
|
extern "C" void _restgpr_29();
|
||||||
extern "C" void strcmp();
|
|
||||||
extern "C" extern void* g_fopAc_Method[8];
|
extern "C" extern void* g_fopAc_Method[8];
|
||||||
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
||||||
extern "C" extern void* __vt__8dCcD_Sph[36];
|
extern "C" extern void* __vt__8dCcD_Sph[36];
|
||||||
|
|
|
@ -459,7 +459,6 @@ extern "C" void _restgpr_26();
|
||||||
extern "C" void _restgpr_27();
|
extern "C" void _restgpr_27();
|
||||||
extern "C" void _restgpr_28();
|
extern "C" void _restgpr_28();
|
||||||
extern "C" void _restgpr_29();
|
extern "C" void _restgpr_29();
|
||||||
extern "C" void strcmp();
|
|
||||||
extern "C" extern void* __vt__19mDoExt_3DlineMat0_c[5];
|
extern "C" extern void* __vt__19mDoExt_3DlineMat0_c[5];
|
||||||
extern "C" extern void* g_fopAc_Method[8];
|
extern "C" extern void* g_fopAc_Method[8];
|
||||||
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
||||||
|
|
|
@ -564,7 +564,6 @@ extern "C" void _restgpr_26();
|
||||||
extern "C" void _restgpr_27();
|
extern "C" void _restgpr_27();
|
||||||
extern "C" void _restgpr_28();
|
extern "C" void _restgpr_28();
|
||||||
extern "C" void _restgpr_29();
|
extern "C" void _restgpr_29();
|
||||||
extern "C" void strcmp();
|
|
||||||
extern "C" extern void* __vt__19mDoExt_3DlineMat0_c[5];
|
extern "C" extern void* __vt__19mDoExt_3DlineMat0_c[5];
|
||||||
extern "C" extern void* g_fopAc_Method[8];
|
extern "C" extern void* g_fopAc_Method[8];
|
||||||
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
||||||
|
|
|
@ -207,8 +207,6 @@ extern "C" extern char const* const d_a_movie_player__stringBase0;
|
||||||
// External References:
|
// External References:
|
||||||
//
|
//
|
||||||
|
|
||||||
SECTION_INIT void memset();
|
|
||||||
SECTION_INIT void memcpy();
|
|
||||||
extern "C" void fadeOut__13mDoGph_gInf_cFf();
|
extern "C" void fadeOut__13mDoGph_gInf_cFf();
|
||||||
extern "C" void mDoExt_getArchiveHeap__Fv();
|
extern "C" void mDoExt_getArchiveHeap__Fv();
|
||||||
extern "C" void __ct__10fopAc_ac_cFv();
|
extern "C" void __ct__10fopAc_ac_cFv();
|
||||||
|
@ -250,7 +248,6 @@ extern "C" void _restgpr_26();
|
||||||
extern "C" void _restgpr_27();
|
extern "C" void _restgpr_27();
|
||||||
extern "C" void __div2i();
|
extern "C" void __div2i();
|
||||||
extern "C" void sprintf();
|
extern "C" void sprintf();
|
||||||
extern "C" void strcmp();
|
|
||||||
extern "C" extern u8 g_dComIfG_gameInfo[122384];
|
extern "C" extern u8 g_dComIfG_gameInfo[122384];
|
||||||
extern "C" extern u8 g_clearColor[4];
|
extern "C" extern u8 g_clearColor[4];
|
||||||
extern "C" extern u8 mBlureFlag__13mDoGph_gInf_c[4];
|
extern "C" extern u8 mBlureFlag__13mDoGph_gInf_c[4];
|
||||||
|
|
|
@ -474,7 +474,6 @@ extern "C" void _restgpr_26();
|
||||||
extern "C" void _restgpr_27();
|
extern "C" void _restgpr_27();
|
||||||
extern "C" void _restgpr_28();
|
extern "C" void _restgpr_28();
|
||||||
extern "C" void _restgpr_29();
|
extern "C" void _restgpr_29();
|
||||||
extern "C" void strcmp();
|
|
||||||
extern "C" extern u8 g_mDoMtx_identity[48 + 24 /* padding */];
|
extern "C" extern u8 g_mDoMtx_identity[48 + 24 /* padding */];
|
||||||
extern "C" extern void* g_fopAc_Method[8];
|
extern "C" extern void* g_fopAc_Method[8];
|
||||||
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
||||||
|
|
|
@ -402,7 +402,6 @@ extern "C" void _restgpr_26();
|
||||||
extern "C" void _restgpr_27();
|
extern "C" void _restgpr_27();
|
||||||
extern "C" void _restgpr_28();
|
extern "C" void _restgpr_28();
|
||||||
extern "C" void _restgpr_29();
|
extern "C" void _restgpr_29();
|
||||||
extern "C" void strcmp();
|
|
||||||
extern "C" extern void* g_fopAc_Method[8];
|
extern "C" extern void* g_fopAc_Method[8];
|
||||||
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
||||||
extern "C" u8 saveBitLabels__16dSv_event_flag_c[1644 + 4 /* padding */];
|
extern "C" u8 saveBitLabels__16dSv_event_flag_c[1644 + 4 /* padding */];
|
||||||
|
|
|
@ -206,7 +206,6 @@ extern "C" void PSMTXCopy();
|
||||||
extern "C" void PSMTXTrans();
|
extern "C" void PSMTXTrans();
|
||||||
extern "C" void _savegpr_29();
|
extern "C" void _savegpr_29();
|
||||||
extern "C" void _restgpr_29();
|
extern "C" void _restgpr_29();
|
||||||
extern "C" void strcmp();
|
|
||||||
extern "C" extern void* g_fopAc_Method[8];
|
extern "C" extern void* g_fopAc_Method[8];
|
||||||
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
||||||
extern "C" extern void* __vt__8dCcD_Sph[36];
|
extern "C" extern void* __vt__8dCcD_Sph[36];
|
||||||
|
|
|
@ -583,7 +583,6 @@ extern "C" void _restgpr_26();
|
||||||
extern "C" void _restgpr_27();
|
extern "C" void _restgpr_27();
|
||||||
extern "C" void _restgpr_28();
|
extern "C" void _restgpr_28();
|
||||||
extern "C" void _restgpr_29();
|
extern "C" void _restgpr_29();
|
||||||
extern "C" void strcmp();
|
|
||||||
extern "C" extern void* g_fopAc_Method[8];
|
extern "C" extern void* g_fopAc_Method[8];
|
||||||
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
||||||
extern "C" extern void* __vt__8dCcD_Cyl[36];
|
extern "C" extern void* __vt__8dCcD_Cyl[36];
|
||||||
|
|
|
@ -319,7 +319,6 @@ extern "C" void _restgpr_24();
|
||||||
extern "C" void _restgpr_25();
|
extern "C" void _restgpr_25();
|
||||||
extern "C" void _restgpr_28();
|
extern "C" void _restgpr_28();
|
||||||
extern "C" void _restgpr_29();
|
extern "C" void _restgpr_29();
|
||||||
extern "C" void strcmp();
|
|
||||||
extern "C" extern void* g_fopAc_Method[8];
|
extern "C" extern void* g_fopAc_Method[8];
|
||||||
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
||||||
extern "C" extern void* __vt__8dCcD_Cyl[36];
|
extern "C" extern void* __vt__8dCcD_Cyl[36];
|
||||||
|
|
|
@ -114,7 +114,7 @@ int daWarpBug_c::execute() {
|
||||||
if (player_p->checkMidnaWarp()) {
|
if (player_p->checkMidnaWarp()) {
|
||||||
mpBrk->play();
|
mpBrk->play();
|
||||||
mpBtk->play();
|
mpBtk->play();
|
||||||
Z2GetAudioMgr()->mSeMgr.seStartLevel(Z2SE_EN_YM_WAIT, ¤t.pos, NULL, 0, 1.0f, 1.0f,
|
Z2GetAudioMgr()->seStartLevel(Z2SE_EN_YM_WAIT, ¤t.pos, NULL, 0, 1.0f, 1.0f,
|
||||||
-1.0f, -1.0f, 0);
|
-1.0f, -1.0f, 0);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -345,7 +345,6 @@ extern "C" void _restgpr_24();
|
||||||
extern "C" void _restgpr_27();
|
extern "C" void _restgpr_27();
|
||||||
extern "C" void _restgpr_28();
|
extern "C" void _restgpr_28();
|
||||||
extern "C" void _restgpr_29();
|
extern "C" void _restgpr_29();
|
||||||
extern "C" void strcmp();
|
|
||||||
extern "C" extern void* g_fopAc_Method[8];
|
extern "C" extern void* g_fopAc_Method[8];
|
||||||
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
||||||
extern "C" extern void* __vt__8dCcD_Sph[36];
|
extern "C" extern void* __vt__8dCcD_Sph[36];
|
||||||
|
|
|
@ -427,7 +427,6 @@ extern "C" void _restgpr_26();
|
||||||
extern "C" void _restgpr_27();
|
extern "C" void _restgpr_27();
|
||||||
extern "C" void _restgpr_28();
|
extern "C" void _restgpr_28();
|
||||||
extern "C" void _restgpr_29();
|
extern "C" void _restgpr_29();
|
||||||
extern "C" void strcmp();
|
|
||||||
extern "C" extern void* g_fopAc_Method[8];
|
extern "C" extern void* g_fopAc_Method[8];
|
||||||
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
||||||
extern "C" extern void* __vt__8dCcD_Sph[36];
|
extern "C" extern void* __vt__8dCcD_Sph[36];
|
||||||
|
|
|
@ -339,7 +339,6 @@ extern "C" void _restgpr_26();
|
||||||
extern "C" void _restgpr_27();
|
extern "C" void _restgpr_27();
|
||||||
extern "C" void _restgpr_28();
|
extern "C" void _restgpr_28();
|
||||||
extern "C" void _restgpr_29();
|
extern "C" void _restgpr_29();
|
||||||
extern "C" void strcmp();
|
|
||||||
extern "C" extern void* g_fopAc_Method[8];
|
extern "C" extern void* g_fopAc_Method[8];
|
||||||
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
||||||
extern "C" u8 saveBitLabels__16dSv_event_flag_c[1644 + 4 /* padding */];
|
extern "C" u8 saveBitLabels__16dSv_event_flag_c[1644 + 4 /* padding */];
|
||||||
|
|
|
@ -393,7 +393,6 @@ extern "C" void _restgpr_26();
|
||||||
extern "C" void _restgpr_27();
|
extern "C" void _restgpr_27();
|
||||||
extern "C" void _restgpr_28();
|
extern "C" void _restgpr_28();
|
||||||
extern "C" void _restgpr_29();
|
extern "C" void _restgpr_29();
|
||||||
extern "C" void strcmp();
|
|
||||||
extern "C" extern void* g_fopAc_Method[8];
|
extern "C" extern void* g_fopAc_Method[8];
|
||||||
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
||||||
extern "C" extern void* __vt__8dCcD_Sph[36];
|
extern "C" extern void* __vt__8dCcD_Sph[36];
|
||||||
|
|
|
@ -428,7 +428,6 @@ extern "C" void _restgpr_26();
|
||||||
extern "C" void _restgpr_27();
|
extern "C" void _restgpr_27();
|
||||||
extern "C" void _restgpr_28();
|
extern "C" void _restgpr_28();
|
||||||
extern "C" void _restgpr_29();
|
extern "C" void _restgpr_29();
|
||||||
extern "C" void strcmp();
|
|
||||||
extern "C" extern void* g_fopAc_Method[8];
|
extern "C" extern void* g_fopAc_Method[8];
|
||||||
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
||||||
extern "C" extern void* __vt__8dCcD_Sph[36];
|
extern "C" extern void* __vt__8dCcD_Sph[36];
|
||||||
|
|
|
@ -390,7 +390,6 @@ extern "C" void _restgpr_26();
|
||||||
extern "C" void _restgpr_27();
|
extern "C" void _restgpr_27();
|
||||||
extern "C" void _restgpr_28();
|
extern "C" void _restgpr_28();
|
||||||
extern "C" void _restgpr_29();
|
extern "C" void _restgpr_29();
|
||||||
extern "C" void strcmp();
|
|
||||||
extern "C" extern void* g_fopAc_Method[8];
|
extern "C" extern void* g_fopAc_Method[8];
|
||||||
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
||||||
extern "C" extern void* __vt__8dCcD_Sph[36];
|
extern "C" extern void* __vt__8dCcD_Sph[36];
|
||||||
|
|
|
@ -328,7 +328,6 @@ extern "C" void _restgpr_25();
|
||||||
extern "C" void _restgpr_26();
|
extern "C" void _restgpr_26();
|
||||||
extern "C" void _restgpr_28();
|
extern "C" void _restgpr_28();
|
||||||
extern "C" void _restgpr_29();
|
extern "C" void _restgpr_29();
|
||||||
extern "C" void strcmp();
|
|
||||||
extern "C" extern void* g_fopAc_Method[8];
|
extern "C" extern void* g_fopAc_Method[8];
|
||||||
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
||||||
extern "C" extern void* __vt__8dCcD_Sph[36];
|
extern "C" extern void* __vt__8dCcD_Sph[36];
|
||||||
|
|
|
@ -345,7 +345,6 @@ extern "C" void _restgpr_26();
|
||||||
extern "C" void _restgpr_27();
|
extern "C" void _restgpr_27();
|
||||||
extern "C" void _restgpr_28();
|
extern "C" void _restgpr_28();
|
||||||
extern "C" void _restgpr_29();
|
extern "C" void _restgpr_29();
|
||||||
extern "C" void strcmp();
|
|
||||||
extern "C" extern void* g_fopAc_Method[8];
|
extern "C" extern void* g_fopAc_Method[8];
|
||||||
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
||||||
extern "C" u8 saveBitLabels__16dSv_event_flag_c[1644 + 4 /* padding */];
|
extern "C" u8 saveBitLabels__16dSv_event_flag_c[1644 + 4 /* padding */];
|
||||||
|
|
|
@ -369,7 +369,6 @@ extern "C" void _savegpr_28();
|
||||||
extern "C" void _savegpr_29();
|
extern "C" void _savegpr_29();
|
||||||
extern "C" void _restgpr_28();
|
extern "C" void _restgpr_28();
|
||||||
extern "C" void _restgpr_29();
|
extern "C" void _restgpr_29();
|
||||||
extern "C" void strcmp();
|
|
||||||
extern "C" extern void* g_fopAc_Method[8];
|
extern "C" extern void* g_fopAc_Method[8];
|
||||||
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
||||||
extern "C" extern void* __vt__8dCcD_Sph[36];
|
extern "C" extern void* __vt__8dCcD_Sph[36];
|
||||||
|
|
|
@ -525,7 +525,6 @@ extern "C" void _restgpr_26();
|
||||||
extern "C" void _restgpr_27();
|
extern "C" void _restgpr_27();
|
||||||
extern "C" void _restgpr_28();
|
extern "C" void _restgpr_28();
|
||||||
extern "C" void _restgpr_29();
|
extern "C" void _restgpr_29();
|
||||||
extern "C" void strcmp();
|
|
||||||
extern "C" extern void* g_fopAc_Method[8];
|
extern "C" extern void* g_fopAc_Method[8];
|
||||||
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
||||||
extern "C" u8 saveBitLabels__16dSv_event_flag_c[1644 + 4 /* padding */];
|
extern "C" u8 saveBitLabels__16dSv_event_flag_c[1644 + 4 /* padding */];
|
||||||
|
|
|
@ -601,7 +601,6 @@ extern "C" void _restgpr_26();
|
||||||
extern "C" void _restgpr_27();
|
extern "C" void _restgpr_27();
|
||||||
extern "C" void _restgpr_28();
|
extern "C" void _restgpr_28();
|
||||||
extern "C" void _restgpr_29();
|
extern "C" void _restgpr_29();
|
||||||
extern "C" void strcmp();
|
|
||||||
extern "C" u8 const tempBitLabels__20dSv_event_tmp_flag_c[370 + 2 /* padding */];
|
extern "C" u8 const tempBitLabels__20dSv_event_tmp_flag_c[370 + 2 /* padding */];
|
||||||
extern "C" extern void* g_fopAc_Method[8];
|
extern "C" extern void* g_fopAc_Method[8];
|
||||||
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
||||||
|
|
|
@ -418,7 +418,6 @@ extern "C" void _restgpr_26();
|
||||||
extern "C" void _restgpr_27();
|
extern "C" void _restgpr_27();
|
||||||
extern "C" void _restgpr_28();
|
extern "C" void _restgpr_28();
|
||||||
extern "C" void _restgpr_29();
|
extern "C" void _restgpr_29();
|
||||||
extern "C" void strcmp();
|
|
||||||
extern "C" extern void* g_fopAc_Method[8];
|
extern "C" extern void* g_fopAc_Method[8];
|
||||||
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
||||||
extern "C" extern void* __vt__8dCcD_Sph[36];
|
extern "C" extern void* __vt__8dCcD_Sph[36];
|
||||||
|
|
|
@ -539,7 +539,6 @@ extern "C" void _restgpr_26();
|
||||||
extern "C" void _restgpr_27();
|
extern "C" void _restgpr_27();
|
||||||
extern "C" void _restgpr_28();
|
extern "C" void _restgpr_28();
|
||||||
extern "C" void _restgpr_29();
|
extern "C" void _restgpr_29();
|
||||||
extern "C" void strcmp();
|
|
||||||
extern "C" u8 const tempBitLabels__20dSv_event_tmp_flag_c[370 + 2 /* padding */];
|
extern "C" u8 const tempBitLabels__20dSv_event_tmp_flag_c[370 + 2 /* padding */];
|
||||||
extern "C" extern u8 const j3dDefaultLightInfo[52];
|
extern "C" extern u8 const j3dDefaultLightInfo[52];
|
||||||
extern "C" extern void* g_fopAc_Method[8];
|
extern "C" extern void* g_fopAc_Method[8];
|
||||||
|
|
|
@ -419,7 +419,6 @@ extern "C" void _restgpr_26();
|
||||||
extern "C" void _restgpr_27();
|
extern "C" void _restgpr_27();
|
||||||
extern "C" void _restgpr_28();
|
extern "C" void _restgpr_28();
|
||||||
extern "C" void _restgpr_29();
|
extern "C" void _restgpr_29();
|
||||||
extern "C" void strcmp();
|
|
||||||
extern "C" extern void* __vt__19mDoExt_3DlineMat0_c[5];
|
extern "C" extern void* __vt__19mDoExt_3DlineMat0_c[5];
|
||||||
extern "C" extern void* g_fopAc_Method[8];
|
extern "C" extern void* g_fopAc_Method[8];
|
||||||
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue