mirror of
https://github.com/zeldaret/mm.git
synced 2026-07-09 05:43:18 -04:00
Demo_Syoten (#672)
* Demo_Syoten * Fix build, use UNK_PTR * Use Vtx * Keyframe stuff * PR * BSS * PR * Fix fix
This commit is contained in:
+8
-6
@@ -1586,7 +1586,7 @@ void func_800FE658(f32 arg0);
|
||||
// void func_800FE778(void);
|
||||
// void func_800FE788(void);
|
||||
// void func_800FE798(void);
|
||||
// void func_800FE7A8(void);
|
||||
void func_800FE7A8(Color_RGBA8* arg0, Color_RGBA8* arg1);
|
||||
s32 func_800FE9B4(GlobalContext* globalCtx);
|
||||
// void func_800FEA50(void);
|
||||
void func_800FEAB0(void);
|
||||
@@ -3191,12 +3191,12 @@ void func_80183070(void);
|
||||
// void func_801832B0(void);
|
||||
// void func_8018332C(void);
|
||||
// void func_8018340C(void);
|
||||
// void func_80183430(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_8018349C(void);
|
||||
void func_80183430(SkeletonInfo* skeletonInfo, void* arg1, void* arg2, Vec3s* arg3, s16* arg4, UnkKeyframeCallback* callbacks);
|
||||
void func_8018349C(UNK_PTR arg0);
|
||||
// void func_801834A8(void);
|
||||
// void func_80183510(void);
|
||||
// void func_80183580(void);
|
||||
// void func_801835EC(void);
|
||||
void func_801835EC(UNK_PTR arg0, UNK_PTR arg1);
|
||||
// void func_80183658(void);
|
||||
// void func_801836CC(void);
|
||||
// void func_8018373C(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);
|
||||
@@ -3206,9 +3206,11 @@ void func_80183070(void);
|
||||
// void func_80183A3C(void);
|
||||
// void func_80183B08(void);
|
||||
// void func_80183B68(void);
|
||||
// void func_80183DE0(void);
|
||||
s32 func_80183DE0(SkeletonInfo* skeletonInfo);
|
||||
// void func_8018410C(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);
|
||||
// void func_8018450C(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_8018450C(GlobalContext* globalCtx, SkeletonInfo* skeleton, Mtx* mtx,
|
||||
OverrideKeyframeDrawScaled overrideKeyframeDraw, PostKeyframeDrawScaled postKeyframeDraw,
|
||||
Actor* actor);
|
||||
// void func_801845A4(void);
|
||||
// void func_801845C8(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5);
|
||||
// void func_80184638(void);
|
||||
|
||||
+1
-1
@@ -3285,9 +3285,9 @@ extern ShrinkWindowContext gShrinkWindowContext;
|
||||
extern ShrinkWindowContext* gShrinkWindowContextPtr;
|
||||
// extern UNK_TYPE4 D_801F6B50;
|
||||
// extern UNK_TYPE1 D_801F6B58;
|
||||
extern FaultAddrConvClient sKaleidoAreaFaultClient;
|
||||
extern void (*sKaleidoScopeUpdateFunc)(GlobalContext* globalCtx);
|
||||
extern void (*sKaleidoScopeDrawFunc)(GlobalContext* globalCtx);
|
||||
extern FaultAddrConvClient sKaleidoAreaFaultClient;
|
||||
// extern UNK_TYPE1 D_801F6C10;
|
||||
extern Input D_801F6C18;
|
||||
// extern UNK_TYPE1 D_801F6C30;
|
||||
|
||||
@@ -296,4 +296,73 @@ typedef struct AnimationSpeedInfo {
|
||||
/* 0x0C */ f32 morphFrames;
|
||||
} AnimationSpeedInfo; // size = 0x10
|
||||
|
||||
struct SkeletonInfo;
|
||||
|
||||
typedef s32 (*UnkKeyframeCallback)(struct GlobalContext* globalCtx, struct SkeletonInfo* skeletonInfo, s32* arg2, Gfx** dList,
|
||||
u8* arg4, void* arg5);
|
||||
|
||||
// Keyframe limb?
|
||||
typedef struct {
|
||||
/* 0x00 */ Gfx* dList;
|
||||
/* 0x04 */ u8 unk_4;
|
||||
/* 0x05 */ u8 flags;
|
||||
/* 0x06 */ Vec3s root;
|
||||
} Struct_801BFA14_Arg1_Field4; // size = 0xC
|
||||
|
||||
// Other limb type?
|
||||
typedef struct {
|
||||
/* 0x00 */ Gfx* dList;
|
||||
/* 0x04 */ u8 unk_4;
|
||||
/* 0x05 */ u8 flags;
|
||||
/* 0x06 */ u8 unk_6; // transform limb draw index
|
||||
} Struct_801BFA14_Arg1_Field4_2; // size = 0x8
|
||||
|
||||
typedef struct {
|
||||
/* 0x00 */ u8 limbCount;
|
||||
/* 0x01 */ u8 unk_1; // non-zero in object files, number of non-null-dlist limbs?
|
||||
/* 0x04 */ union {
|
||||
Struct_801BFA14_Arg1_Field4* unk_4; // arrays
|
||||
Struct_801BFA14_Arg1_Field4_2* unk_4_2;
|
||||
};
|
||||
/* 0x08 */ s16* unk_8;
|
||||
/* 0x0C */ s16* unk_C;
|
||||
/* 0x0C */ char unk_10[0x2];
|
||||
/* 0x12 */ s16 unk_12;
|
||||
} Struct_801BFA14_Arg1;
|
||||
|
||||
typedef struct {
|
||||
/* 0x00 */ u16* unk_0;
|
||||
/* 0x04 */ s16* unk_4;
|
||||
/* 0x08 */ s16* unk_8;
|
||||
/* 0x0C */ s16* unk_C;
|
||||
/* 0x0C */ char unk_10[0x2];
|
||||
/* 0x12 */ s16 unk_12;
|
||||
} SkeletonInfo_1C;
|
||||
|
||||
typedef struct {
|
||||
/* 0x00 */ f32 unk_0;
|
||||
/* 0x04 */ f32 unk_4;
|
||||
/* 0x08 */ f32 unk_8;
|
||||
/* 0x0C */ f32 unk_C;
|
||||
/* 0x10 */ f32 unk_10;
|
||||
/* 0x14 */ s32 unk_14;
|
||||
} FrameControl;
|
||||
|
||||
// FlexKeyframeSkeleton ?
|
||||
typedef struct SkeletonInfo {
|
||||
/* 0x00 */ FrameControl frameCtrl;
|
||||
/* 0x18 */ Struct_801BFA14_Arg1* unk_18; // array
|
||||
/* 0x1C */ SkeletonInfo_1C* unk_1C;
|
||||
/* 0x20 */ UnkKeyframeCallback* unk_20; // pointer to array of functions
|
||||
/* 0x24 */ f32 unk_24; // duration? current time?
|
||||
/* 0x28 */ Vec3s* frameData; // array of 3 Vec3s
|
||||
/* 0x2C */ s16* unk_2C;
|
||||
} SkeletonInfo;
|
||||
|
||||
typedef s32 (*OverrideKeyframeDrawScaled)(struct GlobalContext* globalCtx, SkeletonInfo* skeletonInfo, s32 limbIndex, Gfx** dList,
|
||||
u8* flags, struct Actor* actor, Vec3f* scale, Vec3s* rot, Vec3f* pos);
|
||||
|
||||
typedef void (*PostKeyframeDrawScaled)(struct GlobalContext* globalCtx, SkeletonInfo* skeleton, s32 limbIndex, Gfx** dList,
|
||||
u8* flags, struct Actor* actor, Vec3f* scale, Vec3s* rot, Vec3f* pos);
|
||||
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user