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

420 lines
11 KiB
C++

//
// Generated By: dol2asm
// Translation Unit: JKRAramHeap
//
#include "dol2asm.h"
#include "dolphin/types.h"
#include "JSystem/JKernel/JKRAramHeap.h"
//
// Types:
//
struct JSUPtrLink {
};
struct JSUPtrList {
/* 802DBEAC */ // False False
~JSUPtrList();
/* 802DBF14 */ // False False
void initiate();
/* 802DBF4C */ // False False
// JSUPtrLink* False
// JSUPtrLink False
void append(JSUPtrLink*);
};
template <typename A0>
struct JSUList { };
/* JSUList<JKRAramBlock> */
struct JSUList__template6 {
/* 802D32B0 */ // False True
~JSUList__template6();
};
struct JKRHeap {
/* 802CE83C */ // False False
// void* False
// void False
void findFromRoot(void*);
};
struct JKRDisposer {
/* 802D147C */ // False False
JKRDisposer();
/* 802D14E4 */ // False False
~JKRDisposer();
};
struct JKRAramHeap {
struct EAllocMode {
};
/* 802D2E44 */ // False False
// u32 False
// u32 False
JKRAramHeap(u32, u32);
/* 802D2F14 */ // True False
~JKRAramHeap();
/* 802D2FBC */ // False False
// u32 False
// JKRAramHeap::EAllocMode False
void alloc(u32, JKRAramHeap::EAllocMode);
/* 802D3034 */ // True False
// u32 False
void allocFromHead(u32);
/* 802D30BC */ // True False
// u32 False
void allocFromTail(u32);
/* 802D3134 */ // False False
void getFreeSize();
/* 802D31AC */ // False False
void getTotalFreeSize();
/* 802D3218 */ // False False
void dump();
};
struct JKRAramBlock {
/* 802D3304 */ // False False
// u32 False
// u32 False
// u32 False
// u8 False
// bool False
JKRAramBlock(u32, u32, u32, u8, bool);
/* 802D3434 */ // False False
// u32 False
// u8 False
// JKRAramHeap* False
// JKRAramHeap False
void allocHead(u32, u8, JKRAramHeap*);
/* 802D34D0 */ // False False
// u32 False
// u8 False
// JKRAramHeap* False
// JKRAramHeap False
void allocTail(u32, u8, JKRAramHeap*);
};
//
// Forward References:
//
// False False
// u32 False
// u32 False
extern "C" void __ct__11JKRAramHeapFUlUl();
// True False
extern "C" void __dt__11JKRAramHeapFv();
// False False
// u32 False
// JKRAramHeap::EAllocMode False
extern "C" void alloc__11JKRAramHeapFUlQ211JKRAramHeap10EAllocMode();
// True False
// u32 False
extern "C" void allocFromHead__11JKRAramHeapFUl();
// True False
// u32 False
extern "C" void allocFromTail__11JKRAramHeapFUl();
// False False
extern "C" void getFreeSize__11JKRAramHeapFv();
// False False
extern "C" void getTotalFreeSize__11JKRAramHeapFv();
// False False
extern "C" void dump__11JKRAramHeapFv();
// False False
extern "C" void __sinit_JKRAramHeap_cpp();
// False True
extern "C" void func_802D32B0();
extern "C" extern void* __vt__11JKRAramHeap[3 + 1 /* padding */];
//
// 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
// void False
void operator delete(void*);
// False False
// void* False
// void False
extern "C" void findFromRoot__7JKRHeapFPv();
// 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
// void False
extern "C" void __dl__FPv();
// False False
extern "C" void __ct__11JKRDisposerFv();
// False False
extern "C" void __dt__11JKRDisposerFv();
// False False
// u32 False
// u32 False
// u32 False
// u8 False
// bool False
extern "C" void __ct__12JKRAramBlockFUlUlUlUcb();
// False False
// u32 False
// u8 False
// JKRAramHeap* False
// JKRAramHeap False
extern "C" void allocHead__12JKRAramBlockFUlUcP11JKRAramHeap();
// False False
// u32 False
// u8 False
// JKRAramHeap* False
// JKRAramHeap False
extern "C" void allocTail__12JKRAramBlockFUlUcP11JKRAramHeap();
// False False
extern "C" void __dt__10JSUPtrListFv();
// False False
extern "C" void initiate__10JSUPtrListFv();
// False False
// JSUPtrLink* False
// JSUPtrLink False
extern "C" void append__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_29();
// False False
extern "C" void _restgpr_29();
//
// Declarations:
//
/* ############################################################################################## */
/* 803CC168-803CC178 000C+04 s=2 e=0 z=0 None .data __vt__11JKRAramHeap */
SECTION_DATA void* __vt__11JKRAramHeap[3 + 1 /* padding */] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)__dt__11JKRAramHeapFv,
/* padding */
NULL,
};
/* 80434300-8043430C 000C+00 s=1 e=0 z=0 None .bss @297 */
static u8 lit_297[12];
/* 8043430C-80434318 000C+00 s=8 e=0 z=0 None .bss sAramList__11JKRAramHeap */
static u8 sAramList__11JKRAramHeap[12];
/* 802D2E44-802D2F14 00D0+00 s=0 e=1 z=0 None .text __ct__11JKRAramHeapFUlUl */
// 802D2E54: 803621DC (_savegpr_29)
// 802D2E64: 802D147C (__ct__11JKRDisposerFv)
// 802D2E68: 803CC168 (__vt__11JKRAramHeap)
// 802D2E6C: 803CC168 (__vt__11JKRAramHeap)
// 802D2E78: 8033F008 (OSInitMutex)
// 802D2E80: 802CE83C (findFromRoot__7JKRHeapFPv)
// 802D2EC0: 802CEC98 (__nw__FUlP7JKRHeapi)
// 802D2EE0: 802D3304 (__ct__12JKRAramBlockFUlUlUlUcb)
// 802D2EE8: 8043430C (sAramList__11JKRAramHeap)
// 802D2EEC: 8043430C (sAramList__11JKRAramHeap)
// 802D2EF4: 802DBF4C (append__10JSUPtrListFP10JSUPtrLink)
// 802D2F00: 80362228 (_restgpr_29)
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// False False
// u32 False
// u32 False
asm JKRAramHeap::JKRAramHeap(u32 param_0, u32 param_1) {
nofralloc
#include "asm/JSystem/JKernel/JKRAramHeap/__ct__11JKRAramHeapFUlUl.s"
}
#pragma pop
/* 802D2F14-802D2FBC 00A8+00 s=1 e=0 z=0 None .text __dt__11JKRAramHeapFv */
// 802D2F24: 803621DC (_savegpr_29)
// 802D2F34: 803CC168 (__vt__11JKRAramHeap)
// 802D2F38: 803CC168 (__vt__11JKRAramHeap)
// 802D2F40: 8043430C (sAramList__11JKRAramHeap)
// 802D2F44: 8043430C (sAramList__11JKRAramHeap)
// 802D2F8C: 802D14E4 (__dt__11JKRDisposerFv)
// 802D2F9C: 802CED3C (__dl__FPv)
// 802D2FA8: 80362228 (_restgpr_29)
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// True False
asm JKRAramHeap::~JKRAramHeap() {
nofralloc
#include "asm/JSystem/JKernel/JKRAramHeap/__dt__11JKRAramHeapFv.s"
}
#pragma pop
/* 802D2FBC-802D3034 0078+00 s=0 e=5 z=0 None .text alloc__11JKRAramHeapFUlQ211JKRAramHeap10EAllocMode */
// 802D2FCC: 803621DC (_savegpr_29)
// 802D2FE0: 8033F040 (OSLockMutex)
// 802D2FF4: 802D3034 (allocFromHead__11JKRAramHeapFUl)
// 802D3008: 802D30BC (allocFromTail__11JKRAramHeapFUl)
// 802D3014: 8033F11C (OSUnlockMutex)
// 802D3020: 80362228 (_restgpr_29)
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// False False
// u32 False
// JKRAramHeap::EAllocMode False
asm void JKRAramHeap::alloc(u32 param_0, JKRAramHeap::EAllocMode param_1) {
nofralloc
#include "asm/JSystem/JKernel/JKRAramHeap/alloc__11JKRAramHeapFUlQ211JKRAramHeap10EAllocMode.s"
}
#pragma pop
/* 802D3034-802D30BC 0088+00 s=1 e=0 z=0 None .text allocFromHead__11JKRAramHeapFUl */
// 802D3054: 8043430C (sAramList__11JKRAramHeap)
// 802D3058: 8043430C (sAramList__11JKRAramHeap)
// 802D30A0: 802D3434 (allocHead__12JKRAramBlockFUlUcP11JKRAramHeap)
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// True False
// u32 False
asm void JKRAramHeap::allocFromHead(u32 param_0) {
nofralloc
#include "asm/JSystem/JKernel/JKRAramHeap/allocFromHead__11JKRAramHeapFUl.s"
}
#pragma pop
/* 802D30BC-802D3134 0078+00 s=1 e=0 z=0 None .text allocFromTail__11JKRAramHeapFUl */
// 802D30D8: 8043430C (sAramList__11JKRAramHeap)
// 802D30DC: 8043430C (sAramList__11JKRAramHeap)
// 802D3118: 802D34D0 (allocTail__12JKRAramBlockFUlUcP11JKRAramHeap)
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// True False
// u32 False
asm void JKRAramHeap::allocFromTail(u32 param_0) {
nofralloc
#include "asm/JSystem/JKernel/JKRAramHeap/allocFromTail__11JKRAramHeapFUl.s"
}
#pragma pop
/* 802D3134-802D31AC 0078+00 s=0 e=1 z=0 None .text getFreeSize__11JKRAramHeapFv */
// 802D3154: 8033F040 (OSLockMutex)
// 802D3158: 8043430C (sAramList__11JKRAramHeap)
// 802D315C: 8043430C (sAramList__11JKRAramHeap)
// 802D318C: 8033F11C (OSUnlockMutex)
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// False False
asm void JKRAramHeap::getFreeSize() {
nofralloc
#include "asm/JSystem/JKernel/JKRAramHeap/getFreeSize__11JKRAramHeapFv.s"
}
#pragma pop
/* 802D31AC-802D3218 006C+00 s=0 e=2 z=0 None .text getTotalFreeSize__11JKRAramHeapFv */
// 802D31CC: 8033F040 (OSLockMutex)
// 802D31D0: 8043430C (sAramList__11JKRAramHeap)
// 802D31D4: 8043430C (sAramList__11JKRAramHeap)
// 802D31F8: 8033F11C (OSUnlockMutex)
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// False False
asm void JKRAramHeap::getTotalFreeSize() {
nofralloc
#include "asm/JSystem/JKernel/JKRAramHeap/getTotalFreeSize__11JKRAramHeapFv.s"
}
#pragma pop
/* 802D3218-802D326C 0054+00 s=0 e=2 z=0 None .text dump__11JKRAramHeapFv */
// 802D3230: 8033F040 (OSLockMutex)
// 802D3234: 8043430C (sAramList__11JKRAramHeap)
// 802D3238: 8043430C (sAramList__11JKRAramHeap)
// 802D3254: 8033F11C (OSUnlockMutex)
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// False False
asm void JKRAramHeap::dump() {
nofralloc
#include "asm/JSystem/JKernel/JKRAramHeap/dump__11JKRAramHeapFv.s"
}
#pragma pop
/* 802D326C-802D32B0 0044+00 s=0 e=0 z=0 None .text __sinit_JKRAramHeap_cpp */
// 802D3278: 8043430C (sAramList__11JKRAramHeap)
// 802D327C: 8043430C (sAramList__11JKRAramHeap)
// 802D3280: 802DBF14 (initiate__10JSUPtrListFv)
// 802D3284: 8043430C (sAramList__11JKRAramHeap)
// 802D3288: 8043430C (sAramList__11JKRAramHeap)
// 802D328C: 802D32B0 (func_802D32B0)
// 802D3290: 802D32B0 (func_802D32B0)
// 802D3294: 80434300 (lit_297)
// 802D3298: 80434300 (lit_297)
// 802D329C: 80361C24 (__register_global_object)
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// False False
extern "C" asm void __sinit_JKRAramHeap_cpp() {
nofralloc
#include "asm/JSystem/JKernel/JKRAramHeap/__sinit_JKRAramHeap_cpp.s"
}
#pragma pop
#pragma push
#pragma force_active on
#pragma section ".ctors$15"
__declspec(section ".ctors$15") void* const _ctors_802D326C = (void*)__sinit_JKRAramHeap_cpp;
#pragma pop
/* 802D32B0-802D3304 0054+00 s=1 e=0 z=0 None .text __dt__23JSUList<12JKRAramBlock>Fv */
// 802D32D4: 802DBEAC (__dt__10JSUPtrListFv)
// 802D32E4: 802CED3C (__dl__FPv)
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// False True
asm JSUList__template6::~JSUList__template6() {
nofralloc
#include "asm/JSystem/JKernel/JKRAramHeap/func_802D32B0.s"
}
#pragma pop