migrate rodata, bss, sbss of Main.c

This commit is contained in:
alessamothdream
2026-07-31 20:20:06 -05:00
committed by Timothy O'Barr
parent d970d4eaaa
commit 30d048e28c
5 changed files with 100 additions and 2095 deletions
+43 -39
View File
@@ -1,48 +1,52 @@
#ifndef GAME_H
#define GAME_H
extern struct {
#include "typedefs.h"
typedef struct {
// Members
unsigned int SystemCounter; // offset 0x0, size 0x4
unsigned char ControlMode; // offset 0x4, size 0x1
unsigned char GameMode; // offset 0x5, size 0x1
unsigned char GameModePrev; // offset 0x6, size 0x1
unsigned char DebugMode; // offset 0x7, size 0x1
unsigned char StopMode; // offset 0x8, size 0x1
unsigned char sceneNo; // offset 0x9, size 0x1
unsigned char padport; // offset 0xA, size 0x1
unsigned char ShadowTest; // offset 0xB, size 0x1
unsigned char DepthTest; // offset 0xC, size 0x1
unsigned char ScriptMode; // offset 0xD, size 0x1
unsigned char DizzyTest; // offset 0xE, size 0x1
unsigned char Pause; // offset 0xF, size 0x1
unsigned char EnePause; // offset 0x10, size 0x1
unsigned char EnemyOff; // offset 0x11, size 0x1
unsigned char FadedTest; // offset 0x12, size 0x1
unsigned char PeepMask; // offset 0x13, size 0x1
unsigned char PlayerId; // offset 0x14, size 0x1
unsigned char PadVib; // offset 0x15, size 0x1
unsigned char KeyConfType; // offset 0x16, size 0x1
unsigned char EneSearchOff; // offset 0x17, size 0x1
unsigned char GameLevel; // offset 0x18, size 0x1
unsigned char StartEquip; // offset 0x19, size 0x1
unsigned char PenanceMode; // offset 0x1A, size 0x1
unsigned char NineHitNum; // offset 0x1B, size 0x1
unsigned char NegaPosi; // offset 0x1C, size 0x1
unsigned char LoadStart; // offset 0x1D, size 0x1
u_int SystemCounter; // offset 0x0, size 0x4
u_char ControlMode; // offset 0x4, size 0x1
u_char GameMode; // offset 0x5, size 0x1
u_char GameModePrev; // offset 0x6, size 0x1
u_char DebugMode; // offset 0x7, size 0x1
u_char StopMode; // offset 0x8, size 0x1
u_char sceneNo; // offset 0x9, size 0x1
u_char padport; // offset 0xA, size 0x1
u_char ShadowTest; // offset 0xB, size 0x1
u_char DepthTest; // offset 0xC, size 0x1
u_char ScriptMode; // offset 0xD, size 0x1
u_char DizzyTest; // offset 0xE, size 0x1
u_char Pause; // offset 0xF, size 0x1
u_char EnePause; // offset 0x10, size 0x1
u_char EnemyOff; // offset 0x11, size 0x1
u_char FadedTest; // offset 0x12, size 0x1
u_char PeepMask; // offset 0x13, size 0x1
u_char PlayerId; // offset 0x14, size 0x1
u_char PadVib; // offset 0x15, size 0x1
u_char KeyConfType; // offset 0x16, size 0x1
u_char EneSearchOff; // offset 0x17, size 0x1
u_char GameLevel; // offset 0x18, size 0x1
u_char StartEquip; // offset 0x19, size 0x1
u_char PenanceMode; // offset 0x1A, size 0x1
u_char NineHitNum; // offset 0x1B, size 0x1
u_char NegaPosi; // offset 0x1C, size 0x1
u_char LoadStart; // offset 0x1D, size 0x1
char Brightness; // offset 0x1E, size 0x1
unsigned char GlareId; // offset 0x1F, size 0x1
unsigned char MyAllAttack; // offset 0x20, size 0x1
unsigned char DebugMenuOn; // offset 0x21, size 0x1
unsigned char Sugoroku; // offset 0x22, size 0x1
unsigned char TutorialOff; // offset 0x23, size 0x1
u_char GlareId; // offset 0x1F, size 0x1
u_char MyAllAttack; // offset 0x20, size 0x1
u_char DebugMenuOn; // offset 0x21, size 0x1
u_char Sugoroku; // offset 0x22, size 0x1
u_char TutorialOff; // offset 0x23, size 0x1
float AmbRate; // offset 0x24, size 0x4
unsigned char ClearCount[3]; // offset 0x28, size 0x3
unsigned char ExtraClear; // offset 0x2B, size 0x1
unsigned char VoiceLanguage; // offset 0x2C, size 0x1
unsigned char LastLanguage; // offset 0x2D, size 0x1
unsigned char unused[2]; // offset 0x2E, size 0x2
} GameSt; // size: 0x30, address: 0x3A5E10
u_char ClearCount[3]; // offset 0x28, size 0x3
u_char ExtraClear; // offset 0x2B, size 0x1
u_char VoiceLanguage; // offset 0x2C, size 0x1
u_char LastLanguage; // offset 0x2D, size 0x1
u_char unused[2]; // offset 0x2E, size 0x2
} GameState;
extern GameState GameSt; // size: 0x30, address: 0x3A5E10
int GameLoop();
+7 -3
View File
@@ -24,7 +24,11 @@
int gTime;
int GoToEndingFlag;
int GoToTitleFlag;
struct _TMP_MENU_MNG_ST g_TmpMenuMng;
sceVu0FVECTOR V0;
GameState GameSt;
extern TMP_MENU_MNG_ST g_TmpMenuMng;
void SetGoToEndingFade(void) {
SetFadeMng(1, (sceVu0IVECTOR){0}, 30, NULL, SetGoToEndingFlag, 0, 0);
@@ -62,7 +66,7 @@ static void InitGameSt(signed int argc /* r18 */, char **argv /* r17 */) {
SetPadVibFlag(1);
for (i = 0; i < argc; i++) {
if (strcmp(argv[i], "xxxxxxxx") == 0) {
if (strcmp(argv[i], "@padviboff") == 0) {
SetPadVibFlag(0);
}
}
@@ -193,7 +197,7 @@ void Timer0Handler(void) {
static inline void WaitIop(void) {
char sp50[0x80];
memset(&sp50, 0, sizeof(sp50));
sprintf(sp50, "xxxxxxxx1", "xxxxxxxx2");
sprintf(sp50, "%s", "cdrom0:\\iop\\ioprp280.img;1");
StringCorrectPath4Disc(sp50, 1);
while (!sceSifRebootIop(sp50))
;
+17 -17
View File
@@ -1,35 +1,35 @@
#ifndef UNK_H
#define UNK_H
struct _MNG_STATE_ST {
typedef struct _MNG_STATE_ST {
// Members
signed int state; // offset 0x0, size 0x4
unsigned int flag; // offset 0x4, size 0x4
unsigned int calc_total_time; // offset 0x8, size 0x4
unsigned int total_time; // offset 0xC, size 0x4
unsigned int get_time; // offset 0x10, size 0x4
unsigned int dmy[3]; // offset 0x14, size 0xC
};
int state; // offset 0x0, size 0x4
u_int flag; // offset 0x4, size 0x4
u_int calc_total_time; // offset 0x8, size 0x4
u_int total_time; // offset 0xC, size 0x4
u_int get_time; // offset 0x10, size 0x4
u_int dmy[3]; // offset 0x14, size 0xC
} MNG_STATE_ST;
struct _TMP_MENU_MNG_ST {
typedef struct _TMP_MENU_MNG_ST {
// Members
struct _MNG_STATE_ST mng_state; // offset 0x0, size 0x20
signed int DrawState; // offset 0x20, size 0x4
unsigned char * * pTmpMenuFileBuf; // offset 0x24, size 0x4
MNG_STATE_ST mng_state; // offset 0x0, size 0x20
int DrawState; // offset 0x20, size 0x4
u_char** pTmpMenuFileBuf; // offset 0x24, size 0x4
float draw_up_rate; // offset 0x28, size 0x4
unsigned char dmy[12]; // offset 0x2C, size 0xC
};
u_char dmy[12]; // offset 0x2C, size 0xC
} TMP_MENU_MNG_ST;
extern struct _TMP_MENU_MNG_ST g_TmpMenuMng; // size: 0x38, address: 0xA00C70
extern TMP_MENU_MNG_ST g_TmpMenuMng; // size: 0x38, address: 0xA00C70
struct /* @anon0 */ {
extern struct /* @anon0 */ {
// Members
unsigned char bLoad; // offset 0x0, size 0x1
unsigned char movie_id; // offset 0x1, size 0x1
unsigned char unused[2]; // offset 0x2, size 0x2
unsigned short scene_id; // offset 0x4, size 0x2
unsigned short cam_id; // offset 0x6, size 0x2
} * lpSceneLoad; // size: 0x4, address: 0x257530
}* lpSceneLoad; // size: 0x4, address: 0x257530