Match a variety of functions, identify a struct type and some related variables, regenerated some mips_to_c code (#129)

* Meaningful commit message

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>

* Identify another struct and array

Regenerated a lot of mips_to_c code based on these identifications

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
This commit is contained in:
Tyler McGavran
2022-01-03 02:07:24 -05:00
committed by GitHub
parent 5fbfc21512
commit c3def3e91f
15 changed files with 231 additions and 342 deletions
+11
View File
@@ -481,4 +481,15 @@ typedef struct {
/* 0x06 */ u16 alpha;
} RGBA16; // size = 0x08
typedef struct {
/* 0x00 */ segment_address_t textureData;
/**
* Its hard to tell what exactly what this is meant to be,
* but it appears to be used as some sort of offset/index from the address stored in D_8018D9B0.
* This value is (roughly) the sum of (width * height) of the
* textures in all the previous entries in D_8018E118
*/
/* 0x04 */ s32 offset;
} struct_8018E118_entry; // size = 0x08
#endif
+5
View File
@@ -7,16 +7,19 @@
extern s32 gCCSelection;
extern s8 gCharacterIdByGPOverallRank[8]; // D_8018D9D0
extern s8 gCharacterGridSelections[4]; // D_8018EDE4
extern s32 gControllerPakNumPagesFree; // D_8018EB80
extern s8 gControllerPakSelectedTableRow; // D_800E86C0
extern f32 gCourseCompletionPercentByPlayerId[8]; // D_801644D0
extern f32 gCourseCompletionPercentByRank[8]; // D_80162FD8
extern s16 gCupCourseOrder[NUM_CUPS][NUM_COURSES_PER_CUP]; // D_800F2BB4
extern s8 gCupCourseSelection; // D_8018EE0B
extern char *gCupNames[]; // D_800E7500
extern s8 gCupSelection; // D_8018EE09
// Maps course IDs (as defined in the COURSES enum) to the cup they belong to
extern u8 gCupSelectionByCourseId[NUM_COURSES]; // D_800E7664
extern s16 gCurrentCourseId;
extern s32 gD_8018E118TotalSize; // D_8018E110
extern char *gDebugSoundModeNames[NUM_SOUND_MODES]; // D_800E7700
extern s32 gGlobalTimer; // D_800DC54C
extern s8 gGPPointsByCharacterId[8]; // D_8018D9C8
@@ -29,6 +32,7 @@ extern s8 gControllerPakMenuSelection; // D_8018EDF0
extern s32 gModeSelection;
// Indicates the ID of the next title screen demo that will be played
extern u8 gNextDemoId; // D_800E86BC
extern s32 gNumD_8018E118Entries; // D_8018E758
// Maps course IDs (as defined in the COURSES enum) to an index in a given cup's track order
extern u8 gPerCupIndexByCourseId[NUM_COURSES]; // D_800EFD50
extern s32 gPlayerCountSelection1;
@@ -43,6 +47,7 @@ extern s8 gTimeTrialDataCourseIndex; // D_8018EDF7
extern struct_8018D9E0_entry D_8018D9E0[32]; // D_8018D9E0
extern struct_8018DEE0_entry D_8018DEE0[16]; // D_8018DEE0
extern struct_8018E118_entry D_8018E118[200]; // D_8018E118
extern struct_D_802874D8 D_802874D8;
extern s16 D_801650D0[4][8];
extern s16 D_80165110[4][8];