marioparty4/include/REL/m409Dll.h
dbalatoni13 887cb00c5b
Cleanup and get rid of many warnings when compiling with stricter warnings (#578)
* Mini improvements

* Fix some splits

* Remove last comma from enums

* Fix symbols

* Fix some headers and missing prototypes

* Replace most of f32 with float

* Replace most of Point3d with Vec

* Add missing esprite include with guard

* Add HuSetVecF to ext_math behind a guard

* More includes
2025-04-01 00:11:31 -05:00

371 lines
8 KiB
C

#ifndef M409DLL_H
#define M409DLL_H
#include "dolphin.h"
#include "game/animdata.h"
#include "game/hsfanim.h"
#include "game/object.h"
extern s32 rand8(void);
// types
typedef void (*m409Func6)(ModelData *, struct _unkStruct6 *, Mtx);
typedef void (*m409PlayerFunc8)(struct _unkStruct8 *);
typedef struct _unkStruct {
float zoom;
Vec center;
Vec rot;
} unkStruct;
typedef struct _unkStruct2 {
GXColor unk0;
Vec unk4;
} unkStruct2; // sizeof 0x10
typedef struct _unkStruct3 {
s8 unk0;
s8 unk1;
s16 unk2;
struct _unkStruct4 *unk4;
s16 unk8;
s16 unkA;
s16 unkC;
s16 unkE;
s16 unk10;
s16 unk12;
float unk14;
} unkStruct3;
typedef struct _unkStruct4 {
union {
u16 unk0;
u8 unk0b;
};
s16 unk2;
s16 unk4;
s16 unk6;
s16 unk8;
s16 unkA;
s16 unkC;
s16 unkE;
float unk10;
s16 unk14;
s16 unk16;
float unk18;
float unk1C;
struct _unkStruct4 *unk20;
} unkStruct4; // sizeof 0x24
typedef struct _unkStruct5 {
Vec unk0;
Vec unkC;
float unk18;
float unk1C;
float unk20;
float unk24;
s16 unk28;
s16 unk2A;
s16 unk2C;
s16 unk2E;
float unk30;
Vec unk34;
Vec unk40;
s16 unk4C;
s8 unk4E;
} unkStruct5; // sizeof 0x50
typedef struct _unkStruct6 {
s16 unk0;
s16 unk2;
u32 unk4;
u8 unk8;
m409Func6 unkC;
AnimData *unk10;
s16 unk14;
unkStruct5 *unk18;
Vec *unk1C;
HsfVector2f *unk20;
GXColor *unk24;
void *unk28;
Vec unk2C;
Vec unk38;
Vec unk44;
Vec unk50;
HsfVector2f *unk5C;
float unk60;
float unk64;
} unkStruct6; // sizeof 0x68
typedef struct _unkStruct7 {
u8 unk0;
u8 unk1;
u8 unk2;
u8 unk3;
u8 unk4;
u8 unk5;
u8 unk6;
char unk7[0x3];
s16 unkA;
s16 unkC;
s16 unkE;
s16 unk10;
char unk12[0x1];
s8 unk13;
s8 unk14;
char unk15[0x3];
s32 unk18;
s16 unk1C;
char unk1E[0x6];
Vec unk24;
Vec unk30;
Vec unk3C;
Vec unk48;
u8 unk54;
u8 unk55;
u8 unk56;
u8 unk57;
u8 unk58;
u8 unk59;
u8 unk5A[3][2];
u8 unk60;
u8 unk61;
u8 unk62;
u8 unk63;
u8 unk64;
char unk65[0x3];
Vec unk68;
} unkStruct7; // sizeof 0x74
typedef struct _unkStruct8Sub {
Vec unk0;
Vec unkC;
Vec unk18;
char unk24[0xC];
u8 unk30;
u8 unk31;
u8 unk32;
u32 unk34;
s16 unk38;
void *unk3C;
void *unk40;
void *unk44;
Vec *unk48;
GXColor unk4C;
GXColor unk50;
struct _unkStruct12 *unk54;
Vec unk58;
Vec unk64;
union {
s16 unk70[0x10];
struct {
s16 unk70s;
float unk74;
float unk78;
float unk7C;
};
};
} unkStruct8Sub; // sizeof 0x90
typedef struct _unkStruct8 {
s16 unk0;
s16 unk2;
u8 unk4;
s16 unk6;
u32 unk8;
Vec unkC;
Vec unk18;
Vec unk24;
m409PlayerFunc8 unk30;
s16 *unk34;
char unk38[0x4];
unkStruct8Sub *unk3C;
char unk40[0x8];
Vec unk48;
Vec unk54;
s16 unk60[0x20];
} unkStruct8; // sizeof 0xA0
typedef struct _unkStruct9Sub {
AnimData *unk0;
s16 unk4;
s16 unk6;
u32 unk8;
Vec unkC;
Mtx unk18;
GXColor unk48;
u8 unk4C;
s16 unk4E;
s16 unk50;
float unk54;
float unk58;
float unk5C;
float unk60;
} unkStruct9Sub; // sizeof 0x64
typedef struct _unkStruct9 {
s16 unk0;
s16 unk2;
s16 unk4;
s16 unk6;
s16 unk8;
s16 unkA;
unkStruct9Sub *unkC;
unkStruct8 *unk10;
} unkStruct9; // sizeof 0x14
typedef struct _unkStruct10 {
u8 unk0;
u8 unk1;
u8 unk2;
u8 unk3;
u8 unk4;
char unk5[0x3];
float unk8;
Vec unkC;
Vec unk18;
Vec unk24;
Vec unk30;
Vec unk3C;
s8 unk48;
char unk49[0x3];
float unk4C;
} unkStruct10; // sizeof 0x50
typedef struct unkStruct11 {
Vec unk0;
Vec unkC;
Vec unk18;
Vec unk24;
} unkStruct11; // sizeof 0x30
typedef struct _unkStruct12 {
s8 unk0;
s8 unk1;
s16 unk2;
HsfVector2f *unk4;
u8 unk8;
s16 unkA;
float unkC;
float unk10;
} unkStruct12;
// bss
extern unkStruct9 lbl_1_bss_F0;
// prototypes
void ObjectSetup(void);
void fn_1_434(omObjData *object);
void fn_1_4DC(omObjData *object);
s8 fn_1_524(void);
s8 fn_1_B80(void);
void fn_1_DDC(omObjData *object);
void fn_1_F70(omObjData *object);
s8 fn_1_10E8(omObjData *object);
s8 fn_1_1B74(omObjData *object);
void fn_1_2098(omObjData *object);
void fn_1_23EC(s16);
void fn_1_2414(u16, u16);
u16 fn_1_2454(u16);
void fn_1_2484(omObjData *object);
void fn_1_2DCC(omObjData *object);
void fn_1_3840(void);
void fn_1_3988(unkStruct4 *, s16, s16);
s32 fn_1_3AD8(s32, float, float, float, float, float, float);
void fn_1_40A4(Mtx, Mtx);
float fn_1_4120(float, float, float, float);
void fn_1_417C(void);
void fn_1_44F0(s16, float, float, float, s8, s16);
void fn_1_4FFC(s16, float, float, float, s16);
void fn_1_5408(ModelData *, unkStruct6 *, Mtx);
void fn_1_55E0(ModelData *, unkStruct6 *, Mtx);
void fn_1_57DC(ModelData *, unkStruct6 *, Mtx);
unkStruct5 *fn_1_58E0(s16, Vec *, Vec *, float, GXColor *);
s16 fn_1_5A18(AnimData *, s16, float, s16, s16);
void fn_1_5F5C(s16);
void fn_1_5FBC(s16, m409Func6);
void fn_1_5FF4(s16, u8);
void fn_1_602C(ModelData *, Mtx);
void fn_1_6608(HsfVector2f *, s16, s16, float, float);
void fn_1_66D4(HsfVector2f *, HsfVector2f *, s16, float, float);
void fn_1_6778(Vec *, Vec *, Vec *, s16);
// player.c
void fn_1_67E0(Process *);
void fn_1_6900(void);
void fn_1_6928(omObjData *);
void fn_1_7344(omObjData *);
void fn_1_7FE8(omObjData *);
void fn_1_8838(unkStruct8 *);
s8 fn_1_8D08(u8);
void fn_1_8D6C(unkStruct8 *);
void fn_1_91C0(omObjData *);
void fn_1_962C(omObjData *);
s32 fn_1_A584(unkStruct10 *);
s8 fn_1_A9C0(Vec *, float *);
s32 fn_1_ABB4(void);
void fn_1_AC08(s32 *, s32);
float fn_1_AD40(float, float, float);
float fn_1_AE94(float, float, float, float);
void fn_1_AF0C(float *, float *, float *, float *, float);
float fn_1_B028(float, float, float, float);
void fn_1_B0A0(float *, float *, float *, float *, float);
float fn_1_B378(Vec *);
float fn_1_B6A4(Vec *, Vec *, Vec *);
float fn_1_B9E0(Vec *, Vec *, Vec *, Vec *, Vec *);
float fn_1_BF38(s16);
// cursor.c
void fn_1_BF88(s16, s16);
void fn_1_C0C0(void);
void fn_1_C164(unkStruct8 *);
void fn_1_CB98(ModelData *model, Mtx matrix);
unkStruct8 *fn_1_CCB0(s16 idx);
unkStruct8Sub *fn_1_CCCC(s16, s16);
void fn_1_CCF8(unkStruct11 **, s16, float, float);
void fn_1_CE7C(Vec **, s16, Vec *);
void fn_1_CF1C(GXColor **, s16, GXColor *);
void fn_1_CFC4(Vec **, s16, Vec *);
void fn_1_D050(HsfVector2f **, s16, HsfVector2f *);
void fn_1_D0E8(unkStruct8Sub *);
void fn_1_D430(unkStruct8 *);
s16 fn_1_DA48(u8, u8);
void fn_1_DDB8(s16);
void fn_1_DEF4(s16, s16, u8);
s16 fn_1_DF20(u32, s16, s16);
void fn_1_E228(s16);
s32 fn_1_E2A8(s16, u8, u32, s16, s16);
s32 fn_1_E7C8(s16, u8, u32);
void fn_1_E818(s16, float, float, float);
void fn_1_E85C(s16, s16, float, float, float);
void fn_1_E8CC(s16, float, float, float);
void fn_1_E940(s16, float, float, float);
void fn_1_E99C(s16, s16, float, float, float);
void fn_1_E940(s16, float, float, float);
void fn_1_EA24(s16, float, float, float);
void fn_1_EAB0(s16, float, float, float);
void fn_1_EAF4(s16, s16, float, float, float);
void fn_1_EB64(s16, float, float, float);
void fn_1_EBD8(s16, float, float, float);
void fn_1_EC1C(s16, s16, float, float, float);
void fn_1_EC8C(s16, float, float, float);
void fn_1_ED00(s16, s32);
void fn_1_ED44(s16, s16, s32);
void fn_1_EDB4(s16, s32);
void fn_1_EE24(s16, u32);
void fn_1_EE68(s16, s16, u32);
void fn_1_EED8(s16, u32);
s32 fn_1_EF48(s16, s32);
s32 fn_1_EFA4(s16, s16, s32);
void fn_1_F024(s16, s16, u8, u8, u8, u8);
void fn_1_F098(s16, u8, u8, u8, u8);
void fn_1_F110(s16, s16, u8);
void fn_1_F17C(s16, s16, u8, u8);
void fn_1_F1F4(s16, u8);
void fn_1_F28C(s16, s16, float);
void fn_1_F2F8(s16, s16, u8, float);
void fn_1_F370(s16, float);
void fn_1_F408(s16, s16, u8);
void fn_1_F478(s16, s16, u8, u8);
void fn_1_F4F0(s16, u8);
#endif