fileScreen.c OK

This commit is contained in:
theo3
2021-02-03 17:38:27 -08:00
parent 32fc754306
commit be1598afbb
120 changed files with 1751 additions and 2066 deletions
+17 -5
View File
@@ -40,12 +40,21 @@ typedef struct {
typedef struct {
u8 filler0[0x4];
} struct_020227E8;
extern struct_020227E8 gUnk_020227E8;
extern SaveFile gSaveFiles[];
extern u32 gUsedPalettes;
extern u8 gUnk_02000D00[];
typedef struct {
/*0x00*/ u8 isTransitioning;
/*0x01*/ u8 unk1;
/*0x02*/ u8 unk2;
/*0x03*/ u8 unk3;
/*0x04*/ u8 unk4;
/*0x05*/ u8 unk5;
/*0x06*/ u8 unk6;
/*0x07*/ u8 unk7;
/*0x08*/ s8 saveStatus[3];
/*0x0b*/ SaveFile saves[3];
} struct_02019EE0;
extern struct_02019EE0 gUnk_02019EE0;
struct OAMCommand {
u16 x;
@@ -70,8 +79,11 @@ extern void sub_08050AFC(u32);
extern const struct_080FC844 gUnk_080FC844;
extern const u16 gUnk_080FC85C[][3];
extern void (*const gUnk_080FC908[])(void);
extern const u16 gUnk_080FC8DE[];
extern const u8 gGlobalGfxAndPalettes[];
extern void (*const gUnk_080FC93C[])();
extern u32 gUsedPalettes;
extern u8 gUnk_02000D00[];
extern u8 gUnk_02001B40;
extern u8 gUnk_02022030;
#endif
-2
View File
@@ -250,7 +250,6 @@ extern void sub_08097B24(Entity*);
extern u32 sub_08079F8C(void);
extern void sub_080787CC(Entity*);
extern void sub_080526F8(s32);
extern int sub_0807CF28(u32, SaveFile*);
extern u32 sub_080044EC(Entity*, u32);
extern u32 sub_080002B8(Entity*);
extern u32 sub_08049F84(Entity*, u32);
@@ -315,7 +314,6 @@ extern void sub_08008790(Entity*, u32);
extern void sub_0804ACF8();
extern void sub_08073904(Entity*);
extern u32 sub_08056134(void);
extern u32 sub_0807CF30(SaveFile*);
extern void sub_08004484(Entity*, Entity*);
extern void sub_080564C8(u32);
extern void sub_08056F70(void);
+6 -8
View File
@@ -17,11 +17,6 @@ typedef struct {
u32 filler3[3];
} MenuControls;
typedef struct {
u8 key;
u8 value;
} KeySetting;
typedef struct {
u8 aButtonX;
u8 aButtonY;
@@ -32,8 +27,7 @@ typedef struct {
u8 rButtonX;
u8 rButtonY;
u8 rButtonText;
KeySetting settingDict[0];
u8 eof;
u8 settingDict[0];
} PACKED KeyButtonLayout;
extern void sub_080A70AC(const KeyButtonLayout*);
@@ -56,7 +50,11 @@ typedef struct {
u8 unk14;
u8 unk15;
u8 unk16;
u8 filler17[0x13];
// While struct offsets are usually loaded indirectly, this one is often loaded
// directly in the code. This happens when you take the address off the field with '&`.
// Perhaps they had a macro to cast this to different sized arrays.
u8 selectMtx;
u8 filler18[0x12];
u8 unk2a;
int field_0x2c;
} Menu;
+1 -1
View File
@@ -6,4 +6,4 @@ typedef struct {
u8 unk7;
} Input;
extern Input gUnk_03000FF0;
extern Input gInput;
+30 -2
View File
@@ -7,10 +7,12 @@
#include "menu.h"
#include "structures.h"
#define FILENAME_LENGTH 6
typedef enum {
SAVE_BUSY = 0,
SAVE_OK = 1,
SAVE_ERROR = 0xFFFFFFFF,
SAVE_ERROR = -1,
} SaveResult;
typedef enum {
@@ -19,6 +21,32 @@ typedef enum {
SAVE_DONE,
} SaveState;
extern u32 sub_0807CDA4(SaveState state);
extern SaveResult sub_0807CDA4(SaveState state);
typedef struct {
/*0x000*/ u8 filler0[0x2];
/*0x002*/ u8 messageSpeed;
/*0x003*/ u8 brightnessPref;
/*0x004*/ u8 filler4[0x2];
/*0x006*/ u8 unk6;
/*0x007*/ u8 unk7;
/*0x008*/ u8 unk8;
/*0x009*/ u8 field_0x9[0x34];
/*0x040*/ u32 windcrests;
/*0x044*/ u8 filler44[0xC];
/*0x050*/ u32 unk50;
/*0x054*/ u8 filler54[0x2C];
/*0x080*/ u8 playerName[FILENAME_LENGTH];
/*0x086*/ u8 filler86[0x22];
/*0x0A8*/ Stats stats;
/*0x0D0*/ u8 fillerD0[0x3c0];
/*0x490*/ u32 unk490;
/*0x494*/ u8 filler494[0x20];
} SaveFile;
extern SaveFile gSave;
s32 sub_0807CF28(u32, SaveFile*);
u32 sub_0807CF30(SaveFile*);
#endif
-37
View File
@@ -42,29 +42,6 @@ typedef struct {
extern struct_02000010 gUnk_02000010;
typedef struct {
/*0x000*/ u8 filler0[0x2];
/*0x002*/ u8 messageSpeed;
/*0x003*/ u8 brightnessPref;
/*0x004*/ u8 filler4[0x2];
/*0x006*/ u8 unk6;
/*0x007*/ u8 unk7;
/*0x008*/ u8 unk8;
/*0x009*/ u8 field_0x9[0x34];
/*0x040*/ u32 windcrests;
/*0x044*/ u8 filler44[0xC];
/*0x050*/ u32 unk50;
/*0x054*/ u8 filler54[0x2C];
/*0x080*/ u8 playerName[6];
/*0x086*/ u8 filler86[0x22];
/*0x0A8*/ Stats stats;
/*0x0D0*/ u8 fillerD0[0x3c0];
/*0x490*/ u32 unk490;
/*0x494*/ u8 filler494[0x20];
} SaveFile;
extern SaveFile gUnk_02002A40;
typedef struct {
u32 frameCount; // regular frame count? does anything reset it?
u8 field_0x4[0x4];
@@ -113,20 +90,6 @@ typedef struct {
u16 transitionSFX;
} ScreenTransitionData;
typedef struct {
/*0x00*/ u8 isTransitioning;
/*0x01*/ u8 unk1;
/*0x02*/ u8 unk2;
/*0x03*/ u8 unk3;
/*0x04*/ u8 filler4[0x2];
/*0x06*/ u8 unk6;
/*0x07*/ u8 unk7;
/*0x08*/ s8 saveStatus[3];
/*0x0b*/ u8 unkB[0xE1D];
} struct_02019EE0;
extern struct_02019EE0 gUnk_02019EE0;
typedef struct {
u8 active;
u8 field_0x1;