flg_set.c OK and documented (#335)

* Draw OK, Update very much not

* Flag table imported

* Update OK

* Actually OK this time

* Begin documenting

* Rename some stuff

* Rename functions

* spec

* Review

* Format

* Anghelo's review

* Fix lifemeter bss

* Format

* Missed one

* idle.c bss
This commit is contained in:
EllipticEllipsis
2021-10-11 19:28:16 +01:00
committed by GitHub
parent d061f1c666
commit 565b1f7579
13 changed files with 366 additions and 48 deletions
+20 -20
View File
@@ -139,22 +139,22 @@ void StackCheck_Cleanup(StackEntry* entry);
StackStatus StackCheck_GetState(StackEntry* entry);
u32 StackCheck_CheckAll(void);
u32 StackCheck_Check(StackEntry* entry);
void GfxPrint_InitDlist(GfxPrint*);
void GfxPrint_SetColor(GfxPrint*, u32, u32, u32, u32);
void GfxPrint_SetPosPx(GfxPrint*, s32, s32);
void GfxPrint_SetPos(GfxPrint*, s32, s32);
void GfxPrint_SetBasePosPx(GfxPrint* this, s32 param_2, s32 param_3);
void GfxPrint_PrintCharImpl(GfxPrint* this, u8 c);
void GfxPrint_PrintChar(GfxPrint* this, u8 c);
void GfxPrint_PrintStringWithSize(GfxPrint*, const void*, size_t, size_t);
void GfxPrint_PrintString(GfxPrint*, const char*);
GfxPrint* GfxPrint_Callback(GfxPrint*, const char*, size_t);
void GfxPrint_Init(GfxPrint*);
void GfxPrint_Destroy(GfxPrint*);
void GfxPrint_Open(GfxPrint*, Gfx*);
Gfx* GfxPrint_Close(GfxPrint*);
void GfxPrint_VPrintf(GfxPrint*, const char*, va_list);
void GfxPrint_Printf(GfxPrint*, const char*, ...);
void GfxPrint_InitDlist(GfxPrint* printer);
void GfxPrint_SetColor(GfxPrint* printer, u32 r, u32 g, u32 b, u32 a);
void GfxPrint_SetPosPx(GfxPrint* printer, s32 x, s32 y);
void GfxPrint_SetPos(GfxPrint* printer, s32 x, s32 y);
void GfxPrint_SetBasePosPx(GfxPrint* printer, s32 x, s32 y);
void GfxPrint_PrintCharImpl(GfxPrint* printer, u8 c);
void GfxPrint_PrintChar(GfxPrint* printer, u8 c);
void GfxPrint_PrintStringWithSize(GfxPrint* printer, const void* buffer, size_t charSize, size_t charCount);
void GfxPrint_PrintString(GfxPrint* printer, const char* str);
GfxPrint* GfxPrint_Callback(GfxPrint* printer, const char* str, size_t size);
void GfxPrint_Init(GfxPrint* printer);
void GfxPrint_Destroy(GfxPrint* printer);
void GfxPrint_Open(GfxPrint* printer, Gfx* dList);
Gfx* GfxPrint_Close(GfxPrint* printer);
s32 GfxPrint_VPrintf(GfxPrint* printer, const char* fmt, va_list args);
s32 GfxPrint_Printf(GfxPrint* printer, const char* fmt, ...);
// void MtxConv_F2L(void);
// void MtxConv_L2F(void);
void __assert(const char* file, u32 lineNum);
@@ -236,8 +236,8 @@ u32 __osCheckArena(Arena* heap);
void* proutSprintf(void* s, const char* buf, size_t n);
s32 vsprintf(char* dst, char* fmt, va_list args);
s32 sprintf(char* s, char* fmt, ...);
void PrintUtils_VPrintf(PrintCallback* pfn, const char* fmt, va_list args);
void PrintUtils_Printf(PrintCallback* pfn, const char* fmt, ...);
s32 PrintUtils_VPrintf(PrintCallback* pfn, const char* fmt, va_list args);
s32 PrintUtils_Printf(PrintCallback* pfn, const char* fmt, ...);
void Sleep_Cycles(OSTime time);
// void Sleep_Nsec(void);
void Sleep_Usec(s32);
@@ -681,8 +681,8 @@ void func_800B3030(GlobalContext* globalCtx, Vec3f* pos, Vec3f* velocity, Vec3f*
// void func_800B31BC(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE2 param_5, UNK_TYPE4 param_6);
void EffectSsIceSmoke_Spawn(GlobalContext* globalCtx, Vec3f* pos, Vec3f* velocity, Vec3f* accel, s16 scale);
// void EffectSsIceBlock_Spawn(UNK_TYPE4 uParm1, Vec3f* pzParm2, Vec3f* pzParm3, Vec3f* pzParm4, UNK_TYPE2 param_5);
void func_800B32D0(GameState* gamestate);
// void func_800B3644(void);
void FlagSet_Update(GameState* gamestate);
void FlagSet_Draw(GameState* gameState);
void DLF_LoadGameState(GameStateOverlay* gameState);
void DLF_FreeGameState(GameStateOverlay* gameState);
void Actor_PrintLists(ActorContext* actorCtx);
+4 -4
View File
@@ -418,10 +418,10 @@ extern EffectSsInfo EffectSS2Info;
// extern UNK_TYPE1 D_801AE48C;
// extern UNK_TYPE1 D_801AE490;
extern EffectSsOverlay particleOverlayTable[39];
extern UNK_PTR D_801AE8F0;
// extern UNK_TYPE4 D_801AEC70;
// extern UNK_TYPE4 D_801AEC74;
// extern UNK_TYPE4 D_801AEC78;
// extern FlagSetEntry sFlagEntries[];
// extern s32 sEntryIndex;
// extern u32 sCurrentBit;
// extern s32 sTimer;
extern Color_RGBA8 D_801AEC80;
extern s801AEC84 D_801AEC84[13];
extern f32 actorMovementScale;
+5
View File
@@ -1777,4 +1777,9 @@ typedef struct {
/* 0x20 */ u16 fracPart[4][4];
} MatrixInternal; // size = 0x40
typedef struct {
/* 0x00 */ u8* value;
/* 0x04 */ const char* name;
} FlagSetEntry; // size = 0x08
#endif
+3 -2
View File
@@ -175,8 +175,9 @@ typedef struct {
/* 0x3F60 */ u8 unk_3F60; // "framescale_flag"
/* 0x3F64 */ f32 unk_3F64; // "framescale_scale"
/* 0x3F68 */ u32 unk_3F68[5][120];
/* 0x48C8 */ u16 unk_48C8; // "scene_id_mix"
/* 0x48CA */ u8 unk_48CA[27];
/* 0x48C8 */ u16 unk_48C8; // "scene_id_mix"
/* 0x48CA */ u8 maskMaskBit[3]; // masks given away on the Moon
/* 0x48CD */ char unk_48CD[24];
} SaveContext; // size = 0x48C8
typedef enum {