summaryrefslogtreecommitdiff
path: root/src/egg/core/eggController.cpp
diff options
context:
space:
mode:
authorrobojumper <robojumper@gmail.com>2024-05-04 23:31:48 +0200
committerrobojumper <robojumper@gmail.com>2024-05-06 21:59:42 +0200
commita0a5d634081ccd841c14d7fb421ea8df45de6383 (patch)
treec79a8fa636eba6c70a1fe1fa71c5f4b5e9073c3d /src/egg/core/eggController.cpp
parent126d5bc7b3771a59cbdc9f23a6234ea54f8ea0de (diff)
I love vtables
Diffstat (limited to 'src/egg/core/eggController.cpp')
-rw-r--r--src/egg/core/eggController.cpp12
1 files changed, 4 insertions, 8 deletions
diff --git a/src/egg/core/eggController.cpp b/src/egg/core/eggController.cpp
index 4ec96e43..bb032446 100644
--- a/src/egg/core/eggController.cpp
+++ b/src/egg/core/eggController.cpp
@@ -2,13 +2,7 @@
#include "MSL_C/string.h"
#include "rvl/VI.h"
-extern EGG::CoreControllerMgr *lbl_805767AC;
-
EGG::NullController null_controller;
-
-// TODO vtable order in this TU is still messed up
-// TODO NullController implementation
-
namespace EGG {
CoreControllerMgr *CoreControllerMgr::sInstance;
@@ -165,14 +159,14 @@ extern "C" void fn_803DB1E0(s32 channel, bool arg);
if (CoreControllerMgr::sInstance == nullptr) {
CoreControllerMgr *mgr = new CoreControllerMgr();
CoreControllerMgr::sInstance = mgr;
- lbl_805767AC = mgr;
+ CoreControllerMgr::T__Disposer::sStaticDisposer = &mgr->mDisposer;
}
return CoreControllerMgr::sInstance;
}
/* 0x80499BD0 */ void CoreControllerMgr::deleteInstance() {
CoreControllerMgr::sInstance = nullptr;
- lbl_805767AC = nullptr;
+ CoreControllerMgr::T__Disposer::sStaticDisposer = nullptr;
}
/* 0x80499BE0 */ EGG::CoreController *CoreControllerMgr::getNthController(s32 n) {
@@ -196,6 +190,8 @@ extern "C" void fn_803DB1E0(s32 channel, bool arg);
/* 0x80499D10 */ CoreControllerMgr::CoreControllerMgr() {
const int idxes[] = {0, 1, 2, 3};
if (sUseBuiltinWpadAllocator == false) {
+ // TODO I just want the string in .data already
+ TODO_Allocator = (void*)"EGG::CoreControllerMgr";
// TODO create heap, register allocator thunks
}
// init KPAD