summaryrefslogtreecommitdiff
path: root/libs/JSystem/JAudio2/JASWSParser.cpp
blob: 6326120c936e5c9cab12bfc31254c459b50bc751 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
//
// Generated By: dol2asm
// Translation Unit: JASWSParser
//

#include "JSystem/JAudio2/JASWSParser.h"
#include "JSystem/JAudio2/JASBasicWaveBank.h"
#include "JSystem/JKernel/JKRHeap.h"
#include "dolphin/types.h"

//
// Forward References:
//

extern "C" void getGroupCount__11JASWSParserFPCv();
extern "C" void createWaveBank__11JASWSParserFPCvP7JKRHeap();
extern "C" void createBasicWaveBank__11JASWSParserFPCvP7JKRHeap();
extern "C" void createSimpleWaveBank__11JASWSParserFPCvP7JKRHeap();
extern "C" void func_80299490(void* _this, void const*, u32);
extern "C" void func_802994A8(void* _this, void const*, u32);
extern "C" void func_802994C0(void* _this, void const*, u32);
extern "C" void func_802994D8(void* _this, void const*, u32);
extern "C" void func_802994F0(void* _this, void const*, u32);
extern "C" void func_80299508(void* _this, void const*, u32);
extern "C" void func_80299520(void* _this, void const*, u32);
extern "C" u8 sUsedHeapSize__11JASWSParser[4 + 4 /* padding */];

//
// External References:
//

extern "C" void __ct__16JASBasicWaveBankFv();
extern "C" void getWaveGroup__16JASBasicWaveBankFUl();
extern "C" void setGroupCount__16JASBasicWaveBankFUlP7JKRHeap();
extern "C" void setWaveTableSize__16JASBasicWaveBankFUlP7JKRHeap();
extern "C" void
setWaveInfo__16JASBasicWaveBankFPQ216JASBasicWaveBank10TWaveGroupiUsRC11JASWaveInfo();
extern "C" void setWaveCount__Q216JASBasicWaveBank10TWaveGroupFUlP7JKRHeap();
extern "C" void __ct__17JASSimpleWaveBankFv();
extern "C" void setWaveTableSize__17JASSimpleWaveBankFUlP7JKRHeap();
extern "C" void setWaveInfo__17JASSimpleWaveBankFUlRC11JASWaveInfo();
extern "C" void setFileName__10JASWaveArcFPCc();
extern "C" void getFreeSize__7JKRHeapFv();
extern "C" void* __nw__FUlP7JKRHeapi();
extern "C" void _savegpr_20();
extern "C" void _savegpr_23();
extern "C" void _restgpr_20();
extern "C" void _restgpr_23();
extern "C" u32 one__11JASWaveInfo[1 + 1 /* padding */];

//
// Declarations:
//

/* 80298FB0-80298FD8 2938F0 0028+00 1/1 0/0 0/0 .text            getGroupCount__11JASWSParserFPCv */
// Matches with JSUConvertOffsetToPtr
#ifdef NONMATCHING
u32 JASWSParser::getGroupCount(void const* stream) {
	THeader* header = (THeader*)stream;
	return ((TOffset<TCtrlGroup>*)&header->mCtrlGroupOffset)->ptr(header)->mCtrlGroupCount;
}
#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm u32 JASWSParser::getGroupCount(void const* param_0) {
    nofralloc
#include "asm/JSystem/JAudio2/JASWSParser/getGroupCount__11JASWSParserFPCv.s"
}
#pragma pop
#endif

/* 80298FD8-80299034 293918 005C+00 0/0 1/1 0/0 .text createWaveBank__11JASWSParserFPCvP7JKRHeap
 */
JASWaveBank* JASWSParser::createWaveBank(void const* param_0, JKRHeap* param_1) {
    if (getGroupCount(param_0) == 1) {
        return (JASWaveBank*)createSimpleWaveBank(param_0, param_1);
    } else {
        return (JASWaveBank*) createBasicWaveBank(param_0, param_1);
    }
}

/* ############################################################################################## */
/* 80451280-80451288 000780 0004+04 2/2 0/0 0/0 .sbss            sUsedHeapSize__11JASWSParser */
u8 JASWSParser::sUsedHeapSize[4 + 4 /* padding */];

/* 80299034-80299264 293974 0230+00 1/1 0/0 0/0 .text
 * createBasicWaveBank__11JASWSParserFPCvP7JKRHeap              */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm JASBasicWaveBank* JASWSParser::createBasicWaveBank(void const* param_0, JKRHeap* param_1) {
    nofralloc
#include "asm/JSystem/JAudio2/JASWSParser/createBasicWaveBank__11JASWSParserFPCvP7JKRHeap.s"
}
#pragma pop

/* 80299264-80299490 293BA4 022C+00 1/1 0/0 0/0 .text
 * createSimpleWaveBank__11JASWSParserFPCvP7JKRHeap             */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm JASSimpleWaveBank* JASWSParser::createSimpleWaveBank(void const* param_0, JKRHeap* param_1) {
    nofralloc
#include "asm/JSystem/JAudio2/JASWSParser/createSimpleWaveBank__11JASWSParserFPCvP7JKRHeap.s"
}
#pragma pop

/* 80299490-802994A8 293DD0 0018+00 2/2 0/0 0/0 .text
 * JSUConvertOffsetToPtr<Q211JASWSParser9TCtrlWave>__FPCvUl     */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
extern "C" asm void func_80299490(void* _this, void const* param_0, u32 param_1) {
    nofralloc
#include "asm/JSystem/JAudio2/JASWSParser/func_80299490.s"
}
#pragma pop

/* 802994A8-802994C0 293DE8 0018+00 2/2 0/0 0/0 .text
 * JSUConvertOffsetToPtr<Q211JASWSParser5TWave>__FPCvUl         */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
extern "C" asm void func_802994A8(void* _this, void const* param_0, u32 param_1) {
    nofralloc
#include "asm/JSystem/JAudio2/JASWSParser/func_802994A8.s"
}
#pragma pop

/* 802994C0-802994D8 293E00 0018+00 2/2 0/0 0/0 .text
 * JSUConvertOffsetToPtr<Q211JASWSParser12TWaveArchive>__FPCvUl */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
extern "C" asm void func_802994C0(void* _this, void const* param_0, u32 param_1) {
    nofralloc
#include "asm/JSystem/JAudio2/JASWSParser/func_802994C0.s"
}
#pragma pop

/* 802994D8-802994F0 293E18 0018+00 2/2 0/0 0/0 .text
 * JSUConvertOffsetToPtr<Q211JASWSParser16TWaveArchiveBank>__FPCvUl */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
extern "C" asm void func_802994D8(void* _this, void const* param_0, u32 param_1) {
    nofralloc
#include "asm/JSystem/JAudio2/JASWSParser/func_802994D8.s"
}
#pragma pop

/* 802994F0-80299508 293E30 0018+00 2/2 0/0 0/0 .text
 * JSUConvertOffsetToPtr<Q211JASWSParser5TCtrl>__FPCvUl         */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
extern "C" asm void func_802994F0(void* _this, void const* param_0, u32 param_1) {
    nofralloc
#include "asm/JSystem/JAudio2/JASWSParser/func_802994F0.s"
}
#pragma pop

/* 80299508-80299520 293E48 0018+00 2/2 0/0 0/0 .text
 * JSUConvertOffsetToPtr<Q211JASWSParser10TCtrlScene>__FPCvUl   */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
extern "C" asm void func_80299508(void* _this, void const* param_0, u32 param_1) {
    nofralloc
#include "asm/JSystem/JAudio2/JASWSParser/func_80299508.s"
}
#pragma pop

/* 80299520-80299538 293E60 0018+00 3/3 0/0 0/0 .text
 * JSUConvertOffsetToPtr<Q211JASWSParser10TCtrlGroup>__FPCvUl   */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
extern "C" asm void func_80299520(void* _this, void const* param_0, u32 param_1) {
    nofralloc
#include "asm/JSystem/JAudio2/JASWSParser/func_80299520.s"
}
#pragma pop