100% eggSystem.cpp

This commit is contained in:
Sean Miller
2026-04-09 23:32:06 +01:00
parent c8b3ad05d2
commit 2b3486b05f
9 changed files with 181 additions and 24 deletions
+1 -1
View File
@@ -3,7 +3,7 @@
#include "common.h"
#include "egg/core/eggHeap.h"
#include "egg/core/eggProcessMeter.h"
#include "egg/core/eggPerformanceView.h"
#include "egg/core/eggSystem.h"
#include "nw4r/ut/ut_Color.h"
+26
View File
@@ -0,0 +1,26 @@
#ifndef EGG_PROCESS_METER_H
#define EGG_PROCESS_METER_H
#include "egg/core/eggThread.h"
namespace EGG {
class PerformanceView {
public:
// vtable at 0x0
/* 0x08 */ virtual void measureBeginFrame() = 0;
/* 0x0C */ virtual void measureEndFrame() = 0;
/* 0x10 */ virtual void measureBeginRender() = 0;
/* 0x14 */ virtual void measureEndRender() = 0;
/* 0x18 */ virtual void callbackDrawSync(u16 token) = 0;
/* 0x1C */ virtual void unused() = 0;
/* 0x20 */ virtual void draw() = 0;
/* 0x24 */ virtual void setVisible(bool visible) = 0;
/* 0x28 */ virtual bool isVisible() = 0;
};
class ProcessMeter : public Thread, public PerformanceView {};
}; // namespace EGG
#endif // EGG_PROCESS_METER_H
-14
View File
@@ -1,14 +0,0 @@
#ifndef EGG_PROCESS_METER_H
#define EGG_PROCESS_METER_H
#include "egg/core/eggThread.h"
namespace EGG {
class PerformanceView {};
class ProcessMeter : public Thread, public PerformanceView {};
};
#endif // EGG_PROCESS_METER_H
+20
View File
@@ -0,0 +1,20 @@
#ifndef EGG_SCENE_MANAGER_H
#define EGG_SCENE_MANAGER_H
namespace EGG {
class SceneManager {
public:
// vtable at 0x0
/* 0x08 */ virtual void calc();
/* 0x0C */ virtual void draw();
/* 0x10 */ virtual void calcCurrentScene();
/* 0x14 */ virtual void calcCurrentFader();
/* 0x18 */ virtual void drawCurrentScene();
/* 0x1C */ virtual void drawCurrentFader();
/* 0x20 */ virtual void createDefaultFader();
};
} // namespace EGG
#endif // EGG_SCENE_MANAGER_H
+8 -6
View File
@@ -4,6 +4,8 @@
#include "common.h"
#include "egg/core/eggVideo.h"
struct OSBootInfo;
namespace EGG {
class Display;
@@ -35,18 +37,18 @@ public:
/* vt 0x38 */ virtual void initialize() = 0;
public:
/* 0x04 */ u32 mRoot1HeapStart;
/* 0x08 */ u32 mRoot1HeapEnd;
/* 0x0C */ u32 mRoot2HeapStart;
/* 0x10 */ u32 mRoot2HeapEnd;
/* 0x04 */ void *mRoot1HeapStart;
/* 0x08 */ void *mRoot1HeapEnd;
/* 0x0C */ void *mRoot2HeapStart;
/* 0x10 */ void *mRoot2HeapEnd;
/* 0x14 */ u32 mMemSize;
/* 0x18 */ Heap *mRootHeapMem1;
/* 0x1C */ Heap *mRootHeapMem2;
/* 0x20 */ Heap *mRootHeapDebug;
/* 0x24 */ Heap *mSystemHeap;
/* 0x28 */ Thread *mSystemThread;
/* 0x2C */ u32 field_0x2C;
/* 0x30 */ u32 mSystemHeapStart;
/* 0x2C */ OSBootInfo *mBootInfo;
/* 0x30 */ void *mSystemHeapStart;
/* 0x34 */ u32 mSystemHeapSize;
};
class BaseSystem {