Files
dusklight/libs/JSystem/JAudio2/JASHeapCtrl.cpp
T
2021-03-31 23:22:38 +02:00

741 lines
20 KiB
C++

//
// Generated By: dol2asm
// Translation Unit: JASHeapCtrl
//
#include "dol2asm.h"
#include "dolphin/types.h"
#include "JSystem/JAudio2/JASHeapCtrl.h"
//
// Types:
//
struct JSUPtrLink {
/* 802DBDFC */ // False False
// void* False
// void False
JSUPtrLink(void*);
/* 802DBE14 */ // False False
~JSUPtrLink();
};
struct JSUPtrList {
/* 802DBEAC */ // False False
~JSUPtrList();
/* 802DBF14 */ // False False
void initiate();
/* 802DC094 */ // False False
// JSUPtrLink* False
// JSUPtrLink False
// JSUPtrLink* False
// JSUPtrLink False
void insert(JSUPtrLink*, JSUPtrLink*);
/* 802DC15C */ // False False
// JSUPtrLink* False
// JSUPtrLink False
void remove(JSUPtrLink*);
};
struct JKRSolidHeap {
};
struct JKRHeap {
};
struct JKRExpHeap {
/* 802CEE2C */ // False False
// u32 False
// JKRHeap* False
// JKRHeap False
// bool False
void create(u32, JKRHeap*, bool);
};
struct JASKernel {
/* 802909B8 */ // False False
// JKRSolidHeap* False
// JKRSolidHeap False
// u32 False
void setupRootHeap(JKRSolidHeap*, u32);
/* 80290AC0 */ // False False
void getSystemHeap();
/* 80290AC8 */ // False False
void getCommandHeap();
/* 80290AD0 */ // False False
// u32 False
// u32 False
void setupAramHeap(u32, u32);
/* 80290B08 */ // False False
void getAramHeap();
};
struct JASDisposer {
/* 80290BCC */ // False False
// void False
void onDispose();
};
struct JASHeap {
/* 80290140 */ // False False
// JASDisposer* False
// JASDisposer False
JASHeap(JASDisposer*);
/* 802901AC */ // True False
// void* False
// void False
// u32 False
void initRootHeap(void*, u32);
/* 8029021C */ // False False
// JASHeap* False
// JASHeap False
// u32 False
void alloc(JASHeap*, u32);
/* 802903F4 */ // False False
// JASHeap* False
// JASHeap False
// u32 False
void allocTail(JASHeap*, u32);
/* 802904E4 */ // False False
void free();
/* 80290608 */ // True False
// JASHeap* False
// JASHeap False
// JASHeap* False
// JASHeap False
// void* False
// void False
// u32 False
// bool False
void insertChild(JASHeap*, JASHeap*, void*, u32, bool);
/* 802906F0 */ // True False
void getTailHeap();
/* 8029077C */ // True False
void getTailOffset();
/* 802907E0 */ // True False
void getCurOffset();
/* 80290B54 */ // False False
~JASHeap();
};
struct JASGenericMemPool {
/* 80290848 */ // False False
JASGenericMemPool();
/* 80290860 */ // False False
~JASGenericMemPool();
/* 802908C8 */ // False False
// u32 False
// int False
void newMemPool(u32, int);
/* 80290948 */ // False False
// u32 False
void alloc(u32);
/* 80290994 */ // False False
// void* False
// void False
// u32 False
void free(void*, u32);
};
//
// Forward References:
//
// False False
// JASDisposer* False
// JASDisposer False
extern "C" void __ct__7JASHeapFP11JASDisposer();
// True False
// void* False
// void False
// u32 False
extern "C" void initRootHeap__7JASHeapFPvUl();
// False False
// JASHeap* False
// JASHeap False
// u32 False
extern "C" void alloc__7JASHeapFP7JASHeapUl();
// False False
// JASHeap* False
// JASHeap False
// u32 False
extern "C" void allocTail__7JASHeapFP7JASHeapUl();
// False False
extern "C" void free__7JASHeapFv();
// True False
// JASHeap* False
// JASHeap False
// JASHeap* False
// JASHeap False
// void* False
// void False
// u32 False
// bool False
extern "C" void insertChild__7JASHeapFP7JASHeapP7JASHeapPvUlb();
// True False
extern "C" void getTailHeap__7JASHeapFv();
// True False
extern "C" void getTailOffset__7JASHeapFv();
// True False
extern "C" void getCurOffset__7JASHeapFv();
// False False
extern "C" void __ct__17JASGenericMemPoolFv();
// False False
extern "C" void __dt__17JASGenericMemPoolFv();
// False False
// u32 False
// int False
extern "C" void newMemPool__17JASGenericMemPoolFUli();
// False False
// u32 False
extern "C" void alloc__17JASGenericMemPoolFUl();
// False False
// void* False
// void False
// u32 False
extern "C" void free__17JASGenericMemPoolFPvUl();
// False False
// JKRSolidHeap* False
// JKRSolidHeap False
// u32 False
extern "C" void setupRootHeap__9JASKernelFP12JKRSolidHeapUl();
// False False
extern "C" void getSystemHeap__9JASKernelFv();
// False False
extern "C" void getCommandHeap__9JASKernelFv();
// False False
// u32 False
// u32 False
extern "C" void setupAramHeap__9JASKernelFUlUl();
// False False
extern "C" void getAramHeap__9JASKernelFv();
// False False
extern "C" void __sinit_JASHeapCtrl_cpp();
// False False
extern "C" void __dt__7JASHeapFv();
// False False
// void False
extern "C" void onDispose__11JASDisposerFv();
extern "C" extern u8 JASDram[4];
//
// External References:
//
// False False
// void* False
// void False
// u32 False
// JKRHeap* False
// JKRHeap False
// int False
void* operator new(u32, JKRHeap*, int);
// False False
// void* False
// void False
// u32 False
// JKRHeap* False
// JKRHeap False
// int False
void* operator new[](u32, JKRHeap*, int);
// False False
// void False
// void* False
// void False
void operator delete(void*);
// False False
// void False
// void* False
// void False
void operator delete[](void*);
// False False
// void* False
// void False
// u32 False
// JKRHeap* False
// JKRHeap False
// int False
extern "C" void* __nw__FUlP7JKRHeapi();
// False False
// void* False
// void False
// u32 False
// JKRHeap* False
// JKRHeap False
// int False
extern "C" void* __nwa__FUlP7JKRHeapi();
// False False
// void False
// void* False
// void False
extern "C" void __dl__FPv();
// False False
// void False
// void* False
// void False
extern "C" void __dla__FPv();
// False False
// u32 False
// JKRHeap* False
// JKRHeap False
// bool False
extern "C" void create__10JKRExpHeapFUlP7JKRHeapb();
// False False
// void* False
// void False
extern "C" void __ct__10JSUPtrLinkFPv();
// False False
extern "C" void __dt__10JSUPtrLinkFv();
// False False
extern "C" void __dt__10JSUPtrListFv();
// False False
extern "C" void initiate__10JSUPtrListFv();
// False False
// JSUPtrLink* False
// JSUPtrLink False
// JSUPtrLink* False
// JSUPtrLink False
extern "C" void insert__10JSUPtrListFP10JSUPtrLinkP10JSUPtrLink();
// False False
// JSUPtrLink* False
// JSUPtrLink False
extern "C" void remove__10JSUPtrListFP10JSUPtrLink();
// False False
extern "C" void OSInitMutex();
// False False
extern "C" void OSLockMutex();
// False False
extern "C" void OSUnlockMutex();
// False False
extern "C" void __register_global_object();
// False False
extern "C" void _savegpr_26();
// False False
extern "C" void _savegpr_27();
// False False
extern "C" void _savegpr_28();
// False False
extern "C" void _savegpr_29();
// False False
extern "C" void _restgpr_26();
// False False
extern "C" void _restgpr_27();
// False False
extern "C" void _restgpr_28();
// False False
extern "C" void _restgpr_29();
extern "C" extern u8 sSystemHeap__7JKRHeap[4];
//
// Declarations:
//
/* 80290140-802901AC 006C+00 s=1 e=2 z=0 None .text __ct__7JASHeapFP11JASDisposer */
// 80290150: 803621DC (_savegpr_29)
// 80290164: 802DBF14 (initiate__10JSUPtrListFv)
// 80290170: 802DBDFC (__ct__10JSUPtrLinkFPv)
// 8029018C: 8033F008 (OSInitMutex)
// 80290198: 80362228 (_restgpr_29)
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// False False
// JASDisposer* False
// JASDisposer False
asm JASHeap::JASHeap(JASDisposer* param_0) {
nofralloc
#include "asm/JSystem/JAudio2/JASHeapCtrl/__ct__7JASHeapFP11JASDisposer.s"
}
#pragma pop
/* 802901AC-8029021C 0070+00 s=1 e=0 z=0 None .text initRootHeap__7JASHeapFPvUl */
// 802901BC: 803621DC (_savegpr_29)
// 802901D4: 8033F040 (OSLockMutex)
// 80290200: 8033F11C (OSUnlockMutex)
// 80290208: 80362228 (_restgpr_29)
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// True False
// void* False
// void False
// u32 False
asm void JASHeap::initRootHeap(void* param_0, u32 param_1) {
nofralloc
#include "asm/JSystem/JAudio2/JASHeapCtrl/initRootHeap__7JASHeapFPvUl.s"
}
#pragma pop
/* 8029021C-802903F4 01D8+00 s=0 e=2 z=0 None .text alloc__7JASHeapFP7JASHeapUl */
// 8029022C: 803621D4 (_savegpr_27)
// 80290244: 8033F040 (OSLockMutex)
// 80290258: 8033F11C (OSUnlockMutex)
// 80290274: 8033F11C (OSUnlockMutex)
// 8029028C: 802907E0 (getCurOffset__7JASHeapFv)
// 80290298: 8029077C (getTailOffset__7JASHeapFv)
// 802902AC: 802906F0 (getTailHeap__7JASHeapFv)
// 802902CC: 80290608 (insertChild__7JASHeapFP7JASHeapP7JASHeapPvUlb)
// 802902D4: 8033F11C (OSUnlockMutex)
// 802903AC: 8033F11C (OSUnlockMutex)
// 802903CC: 80290608 (insertChild__7JASHeapFP7JASHeapP7JASHeapPvUlb)
// 802903D4: 8033F11C (OSUnlockMutex)
// 802903E0: 80362220 (_restgpr_27)
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// False False
// JASHeap* False
// JASHeap False
// u32 False
asm void JASHeap::alloc(JASHeap* param_0, u32 param_1) {
nofralloc
#include "asm/JSystem/JAudio2/JASHeapCtrl/alloc__7JASHeapFP7JASHeapUl.s"
}
#pragma pop
/* 802903F4-802904E4 00F0+00 s=0 e=1 z=0 None .text allocTail__7JASHeapFP7JASHeapUl */
// 80290404: 803621D4 (_savegpr_27)
// 8029041C: 8033F040 (OSLockMutex)
// 80290430: 8033F11C (OSUnlockMutex)
// 8029044C: 8033F11C (OSUnlockMutex)
// 80290464: 802907E0 (getCurOffset__7JASHeapFv)
// 80290470: 8029077C (getTailOffset__7JASHeapFv)
// 80290488: 8033F11C (OSUnlockMutex)
// 80290498: 802906F0 (getTailHeap__7JASHeapFv)
// 802904BC: 80290608 (insertChild__7JASHeapFP7JASHeapP7JASHeapPvUlb)
// 802904C4: 8033F11C (OSUnlockMutex)
// 802904D0: 80362220 (_restgpr_27)
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// False False
// JASHeap* False
// JASHeap False
// u32 False
asm void JASHeap::allocTail(JASHeap* param_0, u32 param_1) {
nofralloc
#include "asm/JSystem/JAudio2/JASHeapCtrl/allocTail__7JASHeapFP7JASHeapUl.s"
}
#pragma pop
/* 802904E4-80290608 0124+00 s=0 e=4 z=0 None .text free__7JASHeapFv */
// 80290504: 8033F040 (OSLockMutex)
// 80290518: 8033F11C (OSUnlockMutex)
// 802905B4: 802DC15C (remove__10JSUPtrListFP10JSUPtrLink)
// 802905E8: 8033F11C (OSUnlockMutex)
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// False False
asm void JASHeap::free() {
nofralloc
#include "asm/JSystem/JAudio2/JASHeapCtrl/free__7JASHeapFv.s"
}
#pragma pop
/* 80290608-802906F0 00E8+00 s=2 e=0 z=0 None .text insertChild__7JASHeapFP7JASHeapP7JASHeapPvUlb */
// 80290618: 803621D0 (_savegpr_26)
// 8029063C: 8033F040 (OSLockMutex)
// 802906CC: 802DC094 (insert__10JSUPtrListFP10JSUPtrLinkP10JSUPtrLink)
// 802906D4: 8033F11C (OSUnlockMutex)
// 802906DC: 8036221C (_restgpr_26)
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// True False
// JASHeap* False
// JASHeap False
// JASHeap* False
// JASHeap False
// void* False
// void False
// u32 False
// bool False
asm void JASHeap::insertChild(JASHeap* param_0, JASHeap* param_1, void* param_2, u32 param_3, bool param_4) {
nofralloc
#include "asm/JSystem/JAudio2/JASHeapCtrl/insertChild__7JASHeapFP7JASHeapP7JASHeapPvUlb.s"
}
#pragma pop
/* 802906F0-8029077C 008C+00 s=3 e=0 z=0 None .text getTailHeap__7JASHeapFv */
// 8029070C: 8033F040 (OSLockMutex)
// 8029074C: 8033F11C (OSUnlockMutex)
// 80290760: 8033F11C (OSUnlockMutex)
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// True False
asm void JASHeap::getTailHeap() {
nofralloc
#include "asm/JSystem/JAudio2/JASHeapCtrl/getTailHeap__7JASHeapFv.s"
}
#pragma pop
/* 8029077C-802907E0 0064+00 s=2 e=0 z=0 None .text getTailOffset__7JASHeapFv */
// 80290798: 8033F040 (OSLockMutex)
// 802907A0: 802906F0 (getTailHeap__7JASHeapFv)
// 802907C4: 8033F11C (OSUnlockMutex)
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// True False
asm void JASHeap::getTailOffset() {
nofralloc
#include "asm/JSystem/JAudio2/JASHeapCtrl/getTailOffset__7JASHeapFv.s"
}
#pragma pop
/* 802907E0-80290848 0068+00 s=2 e=0 z=0 None .text getCurOffset__7JASHeapFv */
// 802907FC: 8033F040 (OSLockMutex)
// 8029082C: 8033F11C (OSUnlockMutex)
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// True False
asm void JASHeap::getCurOffset() {
nofralloc
#include "asm/JSystem/JAudio2/JASHeapCtrl/getCurOffset__7JASHeapFv.s"
}
#pragma pop
/* 80290848-80290860 0018+00 s=0 e=32 z=0 None .text __ct__17JASGenericMemPoolFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// False False
asm JASGenericMemPool::JASGenericMemPool() {
nofralloc
#include "asm/JSystem/JAudio2/JASHeapCtrl/__ct__17JASGenericMemPoolFv.s"
}
#pragma pop
/* 80290860-802908C8 0068+00 s=0 e=9 z=0 None .text __dt__17JASGenericMemPoolFv */
// 80290870: 803621DC (_savegpr_29)
// 8029088C: 802CED60 (__dla__FPv)
// 802908A8: 802CED3C (__dl__FPv)
// 802908B4: 80362228 (_restgpr_29)
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// False False
asm JASGenericMemPool::~JASGenericMemPool() {
nofralloc
#include "asm/JSystem/JAudio2/JASHeapCtrl/__dt__17JASGenericMemPoolFv.s"
}
#pragma pop
/* ############################################################################################## */
/* 80451210-80451214 0004+00 s=2 e=15 z=0 None .sbss JASDram */
u8 JASDram[4];
/* 802908C8-80290948 0080+00 s=0 e=4 z=0 None .text newMemPool__17JASGenericMemPoolFUli */
// 802908D8: 803621D8 (_savegpr_28)
// 802908F4: 80451210 (JASDram)
// 802908FC: 802CED10 (__nwa__FUlP7JKRHeapi)
// 80290934: 80362224 (_restgpr_28)
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// False False
// u32 False
// int False
asm void JASGenericMemPool::newMemPool(u32 param_0, int param_1) {
nofralloc
#include "asm/JSystem/JAudio2/JASHeapCtrl/newMemPool__17JASGenericMemPoolFUli.s"
}
#pragma pop
/* 80290948-80290994 004C+00 s=0 e=13 z=0 None .text alloc__17JASGenericMemPoolFUl */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// False False
// u32 False
asm void JASGenericMemPool::alloc(u32 param_0) {
nofralloc
#include "asm/JSystem/JAudio2/JASHeapCtrl/alloc__17JASGenericMemPoolFUl.s"
}
#pragma pop
/* 80290994-802909B8 0024+00 s=0 e=15 z=0 None .text free__17JASGenericMemPoolFPvUl */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// False False
// void* False
// void False
// u32 False
asm void JASGenericMemPool::free(void* param_0, u32 param_1) {
nofralloc
#include "asm/JSystem/JAudio2/JASHeapCtrl/free__17JASGenericMemPoolFPvUl.s"
}
#pragma pop
/* ############################################################################################## */
/* 80451214-80451218 0004+00 s=1 e=0 z=0 None .sbss sAramBase__9JASKernel */
static u8 sAramBase__9JASKernel[4];
/* 80451218-8045121C 0004+00 s=2 e=0 z=0 None .sbss sSystemHeap__9JASKernel */
static u8 sSystemHeap__9JASKernel[4];
/* 8045121C-80451220 0004+00 s=2 e=0 z=0 None .sbss sCommandHeap__9JASKernel */
static u8 sCommandHeap__9JASKernel[4];
/* 802909B8-80290AC0 0108+00 s=0 e=1 z=0 None .text setupRootHeap__9JASKernelFP12JKRSolidHeapUl */
// 802909C8: 803621DC (_savegpr_29)
// 802909DC: 802CEE2C (create__10JKRExpHeapFUlP7JKRHeapb)
// 802909E0: 80451218 (sSystemHeap__9JASKernel)
// 802909F0: 802CEC98 (__nw__FUlP7JKRHeapi)
// 802909FC: 8033F008 (OSInitMutex)
// 80290A28: 80290AC0 (getSystemHeap__9JASKernelFv)
// 80290A38: 802CEC98 (__nw__FUlP7JKRHeapi)
// 80290A68: 80451370 (sSystemHeap__7JKRHeap)
// 80290A70: 802CEC98 (__nw__FUlP7JKRHeapi)
// 80290AA0: 8045121C (sCommandHeap__9JASKernel)
// 80290AA4: 80451210 (JASDram)
// 80290AAC: 80362228 (_restgpr_29)
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// False False
// JKRSolidHeap* False
// JKRSolidHeap False
// u32 False
asm void JASKernel::setupRootHeap(JKRSolidHeap* param_0, u32 param_1) {
nofralloc
#include "asm/JSystem/JAudio2/JASHeapCtrl/setupRootHeap__9JASKernelFP12JKRSolidHeapUl.s"
}
#pragma pop
/* 80290AC0-80290AC8 0008+00 s=1 e=3 z=0 None .text getSystemHeap__9JASKernelFv */
// 80290AC0: 80451218 (sSystemHeap__9JASKernel)
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// False False
asm void JASKernel::getSystemHeap() {
nofralloc
#include "asm/JSystem/JAudio2/JASHeapCtrl/getSystemHeap__9JASKernelFv.s"
}
#pragma pop
/* 80290AC8-80290AD0 0008+00 s=0 e=6 z=0 None .text getCommandHeap__9JASKernelFv */
// 80290AC8: 8045121C (sCommandHeap__9JASKernel)
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// False False
asm void JASKernel::getCommandHeap() {
nofralloc
#include "asm/JSystem/JAudio2/JASHeapCtrl/getCommandHeap__9JASKernelFv.s"
}
#pragma pop
/* ############################################################################################## */
/* 804315D0-804315DC 000C+00 s=1 e=0 z=0 None .bss @313 */
static u8 lit_313[12];
/* 804315DC-80431620 0044+00 s=3 e=0 z=0 None .bss audioAramHeap__9JASKernel */
static u8 audioAramHeap__9JASKernel[68];
/* 80290AD0-80290B08 0038+00 s=0 e=1 z=0 None .text setupAramHeap__9JASKernelFUlUl */
// 80290AE4: 80451214 (sAramBase__9JASKernel)
// 80290AE8: 804315DC (audioAramHeap__9JASKernel)
// 80290AEC: 804315DC (audioAramHeap__9JASKernel)
// 80290AF4: 802901AC (initRootHeap__7JASHeapFPvUl)
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// False False
// u32 False
// u32 False
asm void JASKernel::setupAramHeap(u32 param_0, u32 param_1) {
nofralloc
#include "asm/JSystem/JAudio2/JASHeapCtrl/setupAramHeap__9JASKernelFUlUl.s"
}
#pragma pop
/* 80290B08-80290B14 000C+00 s=0 e=3 z=0 None .text getAramHeap__9JASKernelFv */
// 80290B08: 804315DC (audioAramHeap__9JASKernel)
// 80290B0C: 804315DC (audioAramHeap__9JASKernel)
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// False False
asm void JASKernel::getAramHeap() {
nofralloc
#include "asm/JSystem/JAudio2/JASHeapCtrl/getAramHeap__9JASKernelFv.s"
}
#pragma pop
/* 80290B14-80290B54 0040+00 s=0 e=0 z=0 None .text __sinit_JASHeapCtrl_cpp */
// 80290B20: 804315DC (audioAramHeap__9JASKernel)
// 80290B24: 804315DC (audioAramHeap__9JASKernel)
// 80290B2C: 80290140 (__ct__7JASHeapFP11JASDisposer)
// 80290B30: 80290B54 (__dt__7JASHeapFv)
// 80290B34: 80290B54 (__dt__7JASHeapFv)
// 80290B38: 804315D0 (lit_313)
// 80290B3C: 804315D0 (lit_313)
// 80290B40: 80361C24 (__register_global_object)
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// False False
extern "C" asm void __sinit_JASHeapCtrl_cpp() {
nofralloc
#include "asm/JSystem/JAudio2/JASHeapCtrl/__sinit_JASHeapCtrl_cpp.s"
}
#pragma pop
#pragma push
#pragma force_active on
#pragma section ".ctors$15"
__declspec(section ".ctors$15") void* const _ctors_80290B14 = (void*)__sinit_JASHeapCtrl_cpp;
#pragma pop
/* 80290B54-80290BCC 0078+00 s=1 e=3 z=0 None .text __dt__7JASHeapFv */
// 80290B88: 802DBE14 (__dt__10JSUPtrLinkFv)
// 80290B9C: 802DBEAC (__dt__10JSUPtrListFv)
// 80290BAC: 802CED3C (__dl__FPv)
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// False False
asm JASHeap::~JASHeap() {
nofralloc
#include "asm/JSystem/JAudio2/JASHeapCtrl/__dt__7JASHeapFv.s"
}
#pragma pop
/* 80290BCC-80290BD0 0004+00 s=0 e=1 z=0 None .text onDispose__11JASDisposerFv */
// False False
// void False
void JASDisposer::onDispose() {
/* empty function */
}