mirror of
https://github.com/TwilitRealm/dusklight
synced 2026-06-02 17:48:21 -04:00
420 lines
11 KiB
C++
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
|
|
|
|
|