diff options
| author | Sean Miller <seanmiller999@gmail.com> | 2026-04-07 15:38:16 +0100 |
|---|---|---|
| committer | Sean Miller <seanmiller999@gmail.com> | 2026-04-07 15:38:16 +0100 |
| commit | 373e541fa6507a8552fb63a8f08b197bea4e752b (patch) | |
| tree | 0eb7dfaa06c323d34d5145c3130f4e289e4266e4 | |
| parent | b56b7cc1b037e0b35afd11d35dc50aa13ea21e15 (diff) | |
Proper setup of PerformanceView/ProcessMeter
| -rw-r--r-- | config/SOUE01/symbols.txt | 2 | ||||
| -rw-r--r-- | include/d/d_sys.h | 3 | ||||
| -rw-r--r-- | include/egg/core/eggProcessMeter.h | 14 | ||||
| -rw-r--r-- | include/egg/core/eggSystem.h | 13 |
4 files changed, 18 insertions, 14 deletions
diff --git a/config/SOUE01/symbols.txt b/config/SOUE01/symbols.txt index ab536f9c..ec6605db 100644 --- a/config/SOUE01/symbols.txt +++ b/config/SOUE01/symbols.txt @@ -30892,7 +30892,7 @@ __vt__8dScene_c = .data:0x8050DDF8; // type:object size:0x4C @25621 = .data:0x8050DE9C; // type:object size:0x15 scope:local data:string @25756 = .data:0x8050DEB4; // type:object size:0xD scope:local data:string @25757 = .data:0x8050DEC4; // type:object size:0xE scope:local data:string -__vt__Q23EGG129TSystem<Q23EGG5Video,Q23EGG12AsyncDisplay,Q23EGG10XfbManager,Q23EGG14SimpleAudioMgr,Q23EGG12SceneManager,Q23EGG15PerformanceView> = .data:0x8050DED4; // type:object size:0x3C +__vt__Q23EGG126TSystem<Q23EGG5Video,Q23EGG12AsyncDisplay,Q23EGG10XfbManager,Q23EGG14SimpleAudioMgr,Q23EGG12SceneManager,Q23EGG12ProcessMeter> = .data:0x8050DED4; // type:object size:0x3C lbl_8050DF10 = .data:0x8050DF10; // type:object size:0x18 @9033 = .data:0x8050DF28; // type:object size:0x11 scope:local data:string @9034 = .data:0x8050DF3C; // type:object size:0x11 scope:local data:string diff --git a/include/d/d_sys.h b/include/d/d_sys.h index 201a7df2..cf602af8 100644 --- a/include/d/d_sys.h +++ b/include/d/d_sys.h @@ -3,13 +3,14 @@ #include "common.h" #include "egg/core/eggHeap.h" +#include "egg/core/eggProcessMeter.h" #include "egg/core/eggSystem.h" #include "nw4r/ut/ut_Color.h" #define ROUND_UP_4KB(x) (((u32)(x) + 4096 - 1) & ~(4096 - 1)) typedef EGG::TSystem< - EGG::Video, EGG::AsyncDisplay, EGG::XfbManager, EGG::SimpleAudioMgr, EGG::SceneManager, EGG::PerformanceView> + EGG::Video, EGG::AsyncDisplay, EGG::XfbManager, EGG::SimpleAudioMgr, EGG::SceneManager, EGG::ProcessMeter> System; class dSndMgr_c; diff --git a/include/egg/core/eggProcessMeter.h b/include/egg/core/eggProcessMeter.h new file mode 100644 index 00000000..3641c43d --- /dev/null +++ b/include/egg/core/eggProcessMeter.h @@ -0,0 +1,14 @@ +#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 diff --git a/include/egg/core/eggSystem.h b/include/egg/core/eggSystem.h index 422002a4..28336391 100644 --- a/include/egg/core/eggSystem.h +++ b/include/egg/core/eggSystem.h @@ -6,13 +6,6 @@ namespace EGG { -// TODO Proper definition of PerformanceView -class PerformanceView { -public: - u8 placeholder[0x4c]; - /* 0x4c */ u32 _4c; -}; - class Display; class Heap; class PerformanceView; @@ -99,11 +92,7 @@ public: } PerformanceView *getPerfView() override { - if (!mPerfView) { - return mPerfView; - } - // TODO remove cast hack if/when more is known about PerformanceView - return static_cast<PerformanceView *>((void *)&mPerfView->_4c); + return static_cast<PerformanceView *>(mPerfView); } SceneManager *getSceneMgr() override { |
