Bring over progress from another branch

Co-authored-by: Maide <34639600+Kelebek1@users.noreply.github.com>
This commit is contained in:
Derek Hensley
2022-08-15 23:35:50 -07:00
parent a67571c2bf
commit 6ab0b075cd
8 changed files with 681 additions and 47 deletions
+23 -22
View File
@@ -1087,7 +1087,7 @@ s32 Camera_ChangeMode(Camera* camera, s16 mode);
// void func_800DF86C(void);
// void func_800DF8EC(void);
s32 Camera_ChangeSetting(Camera* camera, s16 setting);
u32 Camera_ChangeDataIdx(Camera* camera, u32 camDataIdx);
s32 Camera_ChangeDataIdx(Camera* camera, s32 camDataIdx);
// void func_800DFC1C(void);
// void func_800DFC40(void);
s32 Camera_GetInputDirYaw(Camera* camera);
@@ -1097,7 +1097,7 @@ s16 Camera_GetCamDirYaw(Camera* camera);
void Camera_AddQuake(Camera* camera, s32 arg1, s16 y, s32 countdown);
s32 Camera_SetViewParam(Camera* camera, s32 viewFlag, void* param);
// UNK_TYPE4 func_800DFEF0(s32 param_1, u16 param_2);
// UNK_TYPE4 func_800DFF18(Camera* iParm1, UNK_TYPE2 uParm2);
void func_800DFF18(Camera* camera, s32 arg1);
// UNK_TYPE4 func_800DFF34(s32 param_1);
// UNK_TYPE4 func_800DFF44(void);
s16 Camera_SetFlags(Camera* iParm1, s16 flags);
@@ -1431,13 +1431,13 @@ void Font_LoadMessageBoxEndIcon(Font* font, u16 icon);
void Font_LoadOrderedFont(Font* font);
// void func_800F5090(void);
// void func_800F50D4(void);
void Kankyo_Init(PlayState* play, EnvironmentContext* envCtx);
void Kankyo_Init(PlayState* play, EnvironmentContext* envCtx, s32 arg2);
u32 func_800F5954(u8* param_1, u32 param_2, u32 param_3, u8 param_4, u8 param_5);
f32 Environment_LerpWeight(u16 max, u16 min, u16 val);
// void func_800F5B10(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE2 param_5);
// void func_800F5CD0(void);
void func_800F6834(PlayState* play, s32 waterLightsIndex);
// void func_800F694C(void);
void func_800F694C(PlayState* play);
// void func_800F6A04(void);
// void func_800F6A40(void);
// void func_800F6AB8(void);
@@ -1622,7 +1622,7 @@ void* ZeldaArena_Calloc(u32 num, size_t size);
void ZeldaArena_GetSizes(size_t* maxFreeBlock, size_t* bytesFree, size_t* bytesAllocated);
s32 ZeldaArena_Check();
void ZeldaArena_Init(void* start, size_t size);
void ZeldaArena_Cleanup();
void ZeldaArena_Cleanup(void);
u8 ZeldaArena_IsInitialized();
// void func_80102E40(void);
// void func_80102E90(void);
@@ -1829,7 +1829,7 @@ void Interface_ChangeAlpha(u16 param_1);
// void func_8010F1A8(void);
// void func_80110038(void);
// void func_80111CB4(void);
// void func_801129E4(void);
void func_801129E4(PlayState* play);
void func_80112AFC(PlayState* play);
void Interface_LoadItemIconImpl(PlayState* play, u8 btn);
void Interface_LoadItemIcon(PlayState* play, u8 btn);
@@ -1887,7 +1887,7 @@ void func_8011C808(PlayState* play);
// void func_80121000(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5, UNK_TYPE4 param_6, UNK_TYPE4 param_7, UNK_TYPE1 param_8, UNK_TYPE1 param_9, UNK_TYPE1 param_10, UNK_TYPE4 param_11, UNK_TYPE4 param_12, UNK_TYPE4 param_13, UNK_TYPE4 param_14);
// void func_80121064(void);
// void func_801210E0(void);
// void func_80121F94(void);
void func_80121F94(PlayState* play);
void func_80121FC4(PlayState* play);
Path* Path_GetByIndex(PlayState* play, s16 index, s16 max);
f32 Path_OrientAndGetDistSq(Actor* actor, Path* path, s16 waypoint, s16* yaw);
@@ -2352,8 +2352,8 @@ void func_80140900(void* arg0);
void func_80140CE0(void* arg0);
void func_80140D04(void* arg0);
void func_80140D10(void* arg0, Gfx** gfx, u32 arg2);
void func_80140E80(void* param_1);
// void func_80140EA0(void);
void func_80140E80(Struct_80140E80* arg0);
void func_80140EA0(Struct_80140E80* arg0);
// void func_80140EAC(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5, UNK_TYPE4 param_6);
// void func_80141008(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5, UNK_TYPE4 param_6, UNK_TYPE4 param_7, UNK_TYPE4 param_8, UNK_TYPE4 param_9, UNK_TYPE4 param_10);
// void func_8014116C(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5, UNK_TYPE4 param_6);
@@ -2487,18 +2487,18 @@ void* KaleidoManager_FaultAddrConvFunc(void* address, void* param);
void KaleidoManager_LoadOvl(KaleidoMgrOverlay* ovl);
void KaleidoManager_ClearOvl(KaleidoMgrOverlay* ovl);
void KaleidoManager_Init(PlayState* play);
void KaleidoManager_Destroy();
void KaleidoManager_Destroy(void);
void* KaleidoManager_GetRamAddr(void* vram);
void KaleidoScopeCall_LoadPlayer(void);
void KaleidoScopeCall_Init(PlayState* play);
void KaleidoScopeCall_Destroy(PlayState* play);
void KaleidoScopeCall_Update(PlayState* play);
void KaleidoScopeCall_Draw(PlayState* play);
// void func_80163C90(void);
// void func_80163D80(void);
void func_80163C90(PlayStruct_18BF0* arg0);
void func_80163D80(PlayStruct_18BF0* arg0, PlayState* play);
// void func_80163DC0(void);
// void func_8016418C(void);
// void func_8016424C(void);
void func_8016424C(FbDemoStruct* this);
// void func_801642D8(void);
// void func_80164438(void);
// void func_8016454C(void);
@@ -2506,13 +2506,14 @@ void KaleidoScopeCall_Draw(PlayState* play);
// void func_801647AC(void);
// UNK_TYPE4 func_801647B8(void);
// void TransitionFade_Start(void);
void* TransitionFade_Init(void* param_1);
// void TransitionFade_Destroy(void);
void* TransitionFade_Init(TransitionFade* arg0);
void TransitionFade_Destroy(TransitionFade* arg0);
// void TransitionFade_Update(void);
// void TransitionFade_Draw(void);
// void TransitionFade_IsDone(void);
// void TransitionFade_SetColor(void);
// void TransitionFade_SetType(void);
void TransitionFade_SetColor(TransitionFade* arg0, u32 color);
void TransitionFade_SetType(TransitionFade* arg0, s32 arg1);
void TransitionFade_Start(TransitionFade* arg0);
// void TransitionCircle_Start(void);
// void TransitionCircle_Init(void);
// void TransitionCircle_Destroy(void);
@@ -2553,7 +2554,7 @@ void func_80167DE4(PlayState* play);
// void func_80167F0C(void);
void Play_Draw(PlayState* play);
void func_80168DAC(PlayState* play);
void Play_Main(PlayState* play);
void Play_Main(GameState* thisx);
s32 Play_InCsMode(PlayState* play);
f32 func_80169100(PlayState* play, MtxF* mtx, CollisionPoly** arg2, s32* arg3, Vec3f* feetPosPtr);
// void func_801691F0(void);
@@ -2603,8 +2604,8 @@ void Play_Init(GameState* gameState);
// void func_8016F1A8(void);
// void func_8016F4EC(void);
void func_8016F5A8(PlayState* play, s8* pcParm2, Input* iParm3);
// void func_8016FC78(void);
// void func_8016FC98(void);
void func_8016FC78(HiresoStruct* this);
void func_8016FC98(HiresoStruct* this);
void PreRender_SetValuesSave(PreRender* this, u32 width, u32 height, void* fbuf, void* zbuf, void* cvg);
void PreRender_Init(PreRender* this);
void PreRender_SetValues(PreRender* this, u32 width, u32 height, void* fbuf, void* zbuf);
@@ -2776,7 +2777,7 @@ void SpeedMeter_DrawAllocEntries(void* displayList, GraphicsContext* gfxCtx, Gam
void func_801780F0(Mtx* param_1, f32 param_2, f32 param_3, f32 param_4, f32 param_5, f32 param_6, f32 param_7);
// void func_801781EC(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5);
void func_8017842C(MtxF* arg0, f32 arg1, f32 arg2, f32 arg3, s16 arg4, f32 arg5, f32 arg6, f32 arg7, f32 arg8, f32 arg9, f32 arg10);
// void func_80178750(void);
void func_80178750(void);
// void func_80178818(void);
void func_80178978(void);
// void func_801789D4(void);
@@ -3283,7 +3284,7 @@ void func_801A3CD8(s8 param_1);
// void func_801A3CF4(void);
void func_801A3D98(s8 audioSetting);
// void func_801A3E38(void);
// void func_801A3EC0(void);
void func_801A3EC0(u8 arg0);
void Audio_SetCutsceneFlag(u8 flag);
// void func_801A3F6C(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5, UNK_TYPE4 param_6);
// void func_801A3FB4(void);
+58 -3
View File
@@ -1088,6 +1088,24 @@ typedef struct {
/* 0x0 */ u16 state;
} GameOverContext; // size = 0x2
typedef struct {
/* 0x000 */ s16 unk_00;
/* 0x002 */ s8 unk_02;
/* 0x003 */ char unk03[0x5];
/* 0x008 */ s32 unk_08;
/* 0x00C */ char unk0C[0x224];
/* 0x230 */ void (*unk_230)(s32*);
/* 0x234 */ void (*unk_234)(s32*);
/* 0x238 */ void (*unk_238)(s32*, u8);
/* 0x23C */ char unk23C[0x4];
/* 0x240 */ void (*unk_240)(s32*);
/* 0x244 */ void (*unk_244)(s32*, s32);
/* 0x248 */ void (*unk_248)(s32*, u32); // RGBA8 colour?
/* 0x24C */ void (*unk_24C)(s32*, u32); // RGBA8 colour?
/* 0x250 */ s32 (*unk_250)(s32*);
/* 0x254 */ char unk254[0x4];
} PlayStruct_18BF0; // size = 0x258 TransitionContext?
struct PlayState {
/* 0x00000 */ GameState state;
/* 0x000A4 */ s16 sceneNum;
@@ -1169,13 +1187,50 @@ struct PlayState {
/* 0x18B49 */ u8 unk_18B49;
/* 0x18B4A */ u8 transitionMode;
/* 0x18B4C */ PreRender pauseBgPreRender;
/* 0x18B9C */ char unk_18B9C[0x2B8];
/* 0x18B9C */ char unk_18B9C[0x54];
/* 0x18BF0 */ PlayStruct_18BF0 unk_18BF0;
/* 0x18E48 */ TransitionFade unk_18E48;
/* 0x18E54 */ SceneTableEntry* loadedScene;
/* 0x18E58 */ char unk_18E58[0x10];
/* 0x18E68 */ s32 unk_18E68;
/* 0x18E58 */ UNK_PTR unk_18E58;
/* 0x18E5C */ UNK_PTR unk_18E5C;
/* 0x18E60 */ UNK_PTR unk_18E60;
/* 0x18E64 */ void* unk_18E64;
/* 0x18E68 */ void* unk_18E68;
/* 0x18E6C */ char unk_18E6C[0x3EC];
}; // size = 0x19258
typedef struct {
/* 0x00 */ u8 unk_00;
/* 0x01 */ char unk_01[0x3F];
/* 0x40 */ void* unk_40;
/* 0x44 */ u32 unk_44;
/* 0x48 */ u32 unk_48;
/* 0x4C */ DmaRequest unk_4C;
/* 0x6C */ OSMesgQueue unk_6C;
/* 0x84 */ OSMesg unk_84[1];
/* 0x88 */ void* unk_88;
/* 0x8C */ uintptr_t unk_8C;
/* 0x90 */ size_t unk_90;
/* 0x94 */ s32 unk_94;
/* 0x98 */ s32 unk_98;
/* 0x9C */ s32 unk_9C;
/* 0xA0 */ char unk_A0[0x4];
/* 0xA4 */ s32 unk_A4;
/* 0xA8 */ s32 unk_A8;
} HiresoStruct; // size = 0xAC
typedef struct {
/* 0x00 */ char unk_00[0xDC];
} FbDemoStruct; // size = 0xDC
typedef struct {
/* 0x00 */ u8 mode;
/* 0x04 */ f32 scale;
/* 0x08 */ f32 lodProportion; // expected to be between 0.0f and 1.0f
/* 0x0C */ Color_RGBA8_u32 primColor;
/* 0x10 */ Color_RGBA8_u32 envColor;
} Struct_80140E80; // size = 0x14
typedef struct {
/* 0x00 */ s32 unk0;
/* 0x04 */ s32 unk4;
+1 -1
View File
@@ -121,7 +121,7 @@ typedef struct SavePlayerData {
} SavePlayerData; // size = 0x28
typedef struct Save {
/* 0x0000 */ u32 entrance; // "scene_no"
/* 0x0000 */ s32 entrance; // "scene_no"
/* 0x0004 */ u8 equippedMask; // "player_mask"
/* 0x0005 */ u8 isFirstCycle; // "opening_flag"
/* 0x0006 */ u8 unk_06;
+1
View File
@@ -342,6 +342,7 @@ typedef struct {
/* 0xA */ u8 unk_A;
/* 0xB */ u8 drawConfig;
/* 0xC */ u8 unk_C;
/* 0xD */ u8 unk_D;
} SceneTableEntry; // size = 0x10
typedef struct {
+6 -1
View File
@@ -16,7 +16,12 @@ typedef struct {
} TransitionInit; // size = 0x24
typedef struct {
/* 0x0 */ char unk_0[0xC];
/* 0x00 */ s8 unk_00;
/* 0x01 */ s8 unk_01;
/* 0x02 */ s8 unk_02;
/* 0x04 */ Color_RGBA8_u32 unk_04;
/* 0x08 */ s16 unk_08;
/* 0x0A */ char unk_0A[0x2];
} TransitionFade; // size = 0xC
extern const TransitionInit TransitionFade_InitVars;