2020-10-03 15:22:44 +00:00
|
|
|
#include "global.h"
|
2020-04-04 16:12:59 +00:00
|
|
|
|
2022-10-02 15:38:09 +00:00
|
|
|
#define GAMESTATE_OVERLAY(name, init, destroy, size) \
|
|
|
|
{ \
|
|
|
|
NULL, (uintptr_t)_ovl_##name##SegmentRomStart, (uintptr_t)_ovl_##name##SegmentRomEnd, \
|
|
|
|
_ovl_##name##SegmentStart, _ovl_##name##SegmentEnd, NULL, init, destroy, NULL, NULL, 0, size \
|
2020-04-04 16:12:59 +00:00
|
|
|
}
|
2020-04-04 16:38:05 +00:00
|
|
|
#define GAMESTATE_OVERLAY_INTERNAL(init, destroy, size) \
|
2022-06-05 16:48:44 +00:00
|
|
|
{ NULL, 0, 0, NULL, NULL, NULL, init, destroy, NULL, NULL, 0, size }
|
2020-04-04 16:12:59 +00:00
|
|
|
|
2020-04-04 16:38:05 +00:00
|
|
|
GameStateOverlay gGameStateOverlayTable[] = {
|
2022-06-23 21:34:26 +00:00
|
|
|
GAMESTATE_OVERLAY_INTERNAL(Setup_Init, Setup_Destroy, sizeof(SetupState)),
|
|
|
|
GAMESTATE_OVERLAY(select, MapSelect_Init, MapSelect_Destroy, sizeof(MapSelectState)),
|
|
|
|
GAMESTATE_OVERLAY(title, ConsoleLogo_Init, ConsoleLogo_Destroy, sizeof(ConsoleLogoState)),
|
2022-05-21 18:23:43 +00:00
|
|
|
GAMESTATE_OVERLAY_INTERNAL(Play_Init, Play_Destroy, sizeof(PlayState)),
|
2022-06-23 21:34:26 +00:00
|
|
|
GAMESTATE_OVERLAY(opening, TitleSetup_Init, TitleSetup_Destroy, sizeof(TitleSetupState)),
|
|
|
|
GAMESTATE_OVERLAY(file_choose, FileSelect_Init, FileSelect_Destroy, sizeof(FileSelectState)),
|
2020-04-04 16:38:05 +00:00
|
|
|
};
|