Ovl_En_Toto OK (#163)

* Lots of progress

* OK

* Removed casts

* Run format.sh

* cleanup

* More cleanup

* Minor Doc

* More cleanup

* Format

* Add header description

* PR comments

* Convert raw pointers

* Update to new gSaveContext

* PR suggestions
This commit is contained in:
Derek Hensley
2021-06-02 18:33:16 -04:00
committed by GitHub
parent f0bad10668
commit fb84cabd4a
7 changed files with 763 additions and 58 deletions
+9 -9
View File
@@ -795,7 +795,7 @@ f32* func_800B8248(PosRot* param_1, ActorPlayer* param_2);
// void func_800B83BC(void);
// void func_800B83F8(void);
s32 func_800B84D0(Actor* actor, GlobalContext* globalCtx);
// UNK_TYPE4 func_800B8500(Actor* actor, GlobalContext* globalCtx, f32 fParm3, f32 fParm4, s32 param_5);
s32 func_800B8500(Actor* actor, GlobalContext* globalCtx, f32 fParm3, f32 fParm4, s32 param_5);
void func_800B85E0(Actor* actor, GlobalContext* globalCtx, f32 uParm3, s32 uParm4);
void func_800B8614(Actor* actor, GlobalContext* globalCtx, f32 uParm3);
void func_800B863C(Actor* actor, GlobalContext* globalCtx);
@@ -866,7 +866,7 @@ Actor* func_800BB498(ActorContext* actCtxt, Actor* actor, GlobalContext* globalC
// void func_800BB8EC(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5);
void func_800BBA88(GlobalContext* globalCtx, Actor* iParm2);
// void func_800BBAC0(void);
// void func_800BBB74(void);
void func_800BBB74(s16* arg1, UNK_TYPE1 arg2, UNK_TYPE1 arg3, UNK_TYPE4 arg4);
// void func_800BBC20(void);
// void func_800BBCEC(void);
// void func_800BBDAC(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_TYPE2 param_7, UNK_TYPE2 param_8, UNK_TYPE1 param_9);
@@ -2194,7 +2194,7 @@ s32 func_801224E0(s32 param_1, s16 param_2, s16 param_3);
// UNK_TYPE4 func_80122670(s32* param_1, Input* input);
// void func_801226E0(void);
// void func_80122744(void);
// void func_80122760(void);
s32 func_80122760(GlobalContext* globalCtx, UNK_PTR arg1, f32 arg2);
void func_80122868(GlobalContext* globalCtx, ActorPlayer* player);
void func_801229A0(GlobalContext* globalCtx, ActorPlayer* player);
// void func_801229EC(void);
@@ -2872,12 +2872,12 @@ void func_80150D08(GlobalContext* globalCtx, u32 uParm2);
void func_801518B0(GlobalContext* globalCtx, u32 uParm2, Actor* uParm3);
void func_80151938(GlobalContext* globalCtx, u16 param_2);
void func_80151A68(GlobalContext* globalCtx, u16 param_2);
void func_80151BB4(s32 iParm1, u32 uParm2);
void func_80151BB4(GlobalContext* globalCtx, u32 uParm2);
// void func_80151C9C(void);
// void func_80151DA4(void);
// void func_80152434(void);
void func_80152434(GlobalContext* globalCtx, u16 arg2);
// void func_80152464(void);
// UNK_TYPE4 func_80152498(MessageContext* msgCtx);
UNK_TYPE4 func_80152498(MessageContext* msgCtx);
// void func_8015268C(void);
// void func_80152C64(void);
// void func_80152CAC(void);
@@ -3836,7 +3836,7 @@ void play_sound(u16 param_1);
void func_8019F128(u16 param_1);
// void func_8019F170(void);
void func_8019F1C0(Vec3f* pos, u16 sfxId);
// void func_8019F208(void);
void func_8019F208(void);
void func_8019F230(void);
// void func_8019F258(void);
// void func_8019F300(void);
@@ -3910,7 +3910,7 @@ void func_801A246C(u8 param_1, u8 param_2);
// void func_801A2C44(void);
// void func_801A2C88(void);
// void func_801A2D54(void);
// void func_801A2DE0(void);
s32 func_801A2DE0(UNK_TYPE4 arg1);
// void func_801A2E54(void);
// void func_801A2ED8(void);
// void func_801A2F88(void);
@@ -3918,7 +3918,7 @@ void func_801A246C(u8 param_1, u8 param_2);
// void func_801A3038(void);
// void func_801A3098(void);
// void func_801A312C(void);
// void func_801A31EC(void);
void func_801A31EC(UNK_TYPE1 arg1, UNK_TYPE4 arg2, u8 arg3);
// void func_801A3238(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE1 param_5);
// void func_801A32CC(void);
// void func_801A3590(void);
+3 -1
View File
@@ -932,7 +932,9 @@ typedef struct {
/* 0x12020 */ u8 unk12020;
/* 0x12021 */ u8 unk12021;
/* 0x12022 */ u8 choiceIndex;
/* 0x12023 */ UNK_TYPE1 pad12023[0x21];
/* 0x12023 */ UNK_TYPE1 pad12023[0x7];
/* 0x1202A */ u16 unk1202A;
/* 0x1202C */ UNK_TYPE1 pad1202B[0x18];
/* 0x12044 */ s16 unk12044;
/* 0x12046 */ UNK_TYPE1 pad12046[0x24];
/* 0x1206A */ s16 unk1206A;
+2 -2
View File
@@ -7639,9 +7639,9 @@ SECTIONS
ovl_En_Toto : AT(RomLocation)
{
build/src/overlays/actors/ovl_En_Toto/z_en_toto.o(.text)
build/asm/overlays/ovl_En_Toto_data.o(.data)
build/src/overlays/actors/ovl_En_Toto/z_en_toto.o(.data)
build/src/overlays/actors/ovl_En_Toto/z_en_toto.o(.rodata)
build/asm/overlays/ovl_En_Toto_rodata.o(.rodata)
build/src/overlays/actors/ovl_En_Toto/z_en_toto_overlay.o(.ovl)
}
SegmentEnd = .;
SegmentSize = SegmentEnd - SegmentStart;
+18
View File
@@ -109,6 +109,24 @@ D_06009120 = 0x06009120;
D_06005458 = 0x06005458;
D_0600788C = 0x0600788C;
/* z_en_toto */
D_06000C80 = 0x06000C80;
D_06001324 = 0x06001324;
D_060016A4 = 0x060016A4;
D_06001DF0 = 0x06001DF0;
D_060022C8 = 0x060022C8;
D_060028B8 = 0x060028B8;
D_06002F20 = 0x06002F20;
D_06003AA8 = 0x06003AA8;
D_06008AE8 = 0x06008AE8;
D_0600A068 = 0x0600A068;
D_0600A468 = 0x0600A468;
D_0600A978 = 0x0600A978;
D_0600B3E0 = 0x0600B3E0;
D_0600B894 = 0x0600B894;
D_0600BC08 = 0x0600BC08;
D_0600C880 = 0x0600C880;
/* en_ginko_man */
object_ginko_skeleton = 0x0600C240;
object_ginko_limb15_dlist = 0x0600B1D8;
File diff suppressed because it is too large Load Diff
+33 -1
View File
@@ -5,9 +5,41 @@
struct EnToto;
typedef void (*EnTotoActionFunc)(struct EnToto*, GlobalContext*);
typedef s32 (*EnTotoUnkFunc)(struct EnToto*, GlobalContext*);
typedef struct EnTotoText {
/* 0x0 */ u8 unk0;
/* 0x1 */ u8 unk1;
/* 0x2 */ u16 textId;
} EnTotoText; // size = 0x4
typedef struct EnTotoUnkStruct2 {
/* 0x0 */ u16 unk0;
/* 0x2 */ u16 unk2;
/* 0x4 */ u16 unk4;
/* 0x6 */ Vec3s unk6;
} EnTotoUnkStruct2; // size = 0xC
typedef struct EnToto {
/* 0x000 */ Actor actor;
/* 0x144 */ char unk_144[0x188];
/* 0x144 */ SkelAnime skelAnime;
/* 0x188 */ Vec3s limbDrawTbl[18];
/* 0x1F4 */ Vec3s transitionDrawTbl[18];
/* 0x260 */ s16 unk260;
/* 0x264 */ ColliderCylinder collider;
/* 0x2B0 */ u8 actionFuncIndex;
/* 0x2B1 */ u8 unk2B1;
/* 0x2B2 */ s8 cutscene;
/* 0x2B3 */ u8 unk2B3;
/* 0x2B4 */ u8 unk2B4;
/* 0x2B5 */ u8 unk2B5;
/* 0x2B6 */ u8 unk2B6;
/* 0x2B7 */ u8 unk2B7;
/* 0x2B8 */ EnTotoText* text;
/* 0x2BC */ char unk2BC[0x8]; // Some z_player_lib struct size 0x8 more info from func_80122744 and func_80122760
/* 0x2C4 */ Actor* unk2C4;
/* 0x2C8 */ s32 pad2C8;
} EnToto; // size = 0x2CC
extern const ActorInit En_Toto_InitVars;
-2
View File
@@ -17245,10 +17245,8 @@
0x80BA5078:("D_80BA5078","UNK_TYPE1","",0x1),
0x80BA5088:("D_80BA5088","UNK_TYPE1","",0x1),
0x80BA50BC:("D_80BA50BC","UNK_TYPE1","",0x1),
0x80BA50D2:("D_80BA50D2","UNK_TYPE2","",0x2),
0x80BA50DC:("D_80BA50DC","UNK_TYPE1","",0x1),
0x80BA510C:("D_80BA510C","UNK_TYPE1","",0x1),
0x80BA511E:("D_80BA511E","UNK_TYPE1","",0x1),
0x80BA5120:("D_80BA5120","UNK_TYPE2","",0x2),
0x80BA5128:("D_80BA5128","UNK_TYPE1","",0x1),
0x80BA512C:("D_80BA512C","UNK_PTR","",0x4),