mirror of
https://github.com/PodeCaradox/GalaxyQuest-SteamFrame.git
synced 2026-10-18 17:01:15 +02:00
The sources of Petari (https://github.com/SMGCommunity/Petari), the Super Mario Galaxy decompilation by the SMGCommunity, at commit 0a5c6608dc3b4c44a9aa68c2535d1793dc565f02, unchanged but for LF line endings: LICENSE (as LICENSE-Petari.txt; CC0 1.0), include/, libs/ and src/. Left out: the game data Petari keeps from the original executable, the error message archive (include/Game/System/ ErrorArchive.hpp) and two tables (src/Game/System/GalaxyID.bcsv and StoryEvent.bcsv); GalaxyQuest's converter takes them from the player's own disc. The port's changes follow in the next commit, so `git diff petari-base -- decomp` shows them. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
54 lines
1.5 KiB
C++
54 lines
1.5 KiB
C++
#pragma once
|
|
|
|
#include "Game/Screen/LayoutActor.hpp"
|
|
|
|
class TriggerChecker;
|
|
class ValueControl;
|
|
|
|
class GameSystemResetAndPowerProcess : public LayoutActor {
|
|
public:
|
|
enum ResetOperation {
|
|
ResetOperation_ApplicationReset,
|
|
ResetOperation_Restart,
|
|
ResetOperation_ReturnToMenu,
|
|
ResetOperation_ShutdownSystem,
|
|
ResetOperation_RebootSystem,
|
|
};
|
|
|
|
/// @brief Creates a new `GameSystemResetAndPowerProcess`.
|
|
GameSystemResetAndPowerProcess();
|
|
|
|
virtual ~GameSystemResetAndPowerProcess();
|
|
|
|
virtual void init(const JMapInfoIter&);
|
|
virtual void draw() const;
|
|
virtual void control();
|
|
|
|
bool isActive() const NO_INLINE;
|
|
void setResetOperationApplicationReset();
|
|
void setResetOperationReturnToMenu();
|
|
void requestReset(bool);
|
|
void requestGoWiiMenu(bool);
|
|
void notifyCheckDiskResult(bool);
|
|
void exePolling();
|
|
void exeWaitResetPermitted();
|
|
void exePrepareReset();
|
|
void exeReset();
|
|
void exeWaitPrepareFadein();
|
|
void exeFadein();
|
|
void exitApplication();
|
|
bool tryPermitReset() NO_INLINE;
|
|
bool tryAcceptPowerOff();
|
|
bool isResetAcceptAudio() const;
|
|
static void handleOSPowerCallback();
|
|
static void handleCheckDiskAsync(s32, DVDCommandBlock*);
|
|
|
|
/* 0x20 */ TriggerChecker* mResetTriggerChecker;
|
|
/* 0x24 */ ValueControl* mFadeinoutControl;
|
|
/* 0x28 */ DVDCommandBlock mCommandBlock;
|
|
/* 0x58 */ volatile s32 mResetOperation;
|
|
/* 0x5C */ bool _5C;
|
|
/* 0x5D */ volatile bool mIsValidPowerOff;
|
|
/* 0x5E */ bool _5E;
|
|
};
|