Merge remote-tracking branch 'upstream/main'

This commit is contained in:
M0liusX 2024-04-01 10:21:21 -05:00
commit 299866766c
200 changed files with 51340 additions and 6907 deletions

View file

@ -0,0 +1,50 @@
#ifndef REL_MODELTEST_H
#define REL_MODELTEST_H
#include "game/hsfdraw.h"
#include "game/objsub.h"
#include "game/object.h"
// -------------------------------------------------------------------------- //
#define US_PER_60TH_SEC (1000000.0f / 60.0f)
#define US_TO_60TH_SEC(us) ((us) / US_PER_60TH_SEC)
#define FB_SIZE(width, height) width * height * 2
#define ABS(x) ((x) < 0 ? -(x) : (x))
// -------------------------------------------------------------------------- //
typedef struct
{
s16 unk0[7];
} HuUnkF9C2;
typedef struct
{
Point3d pos; // 0000
Point3d rot; // 000C
Point3d scale; // 0018
s32 unk24;
s32 unk28;
s32 unk2C;
HsfObject * obj; // 0030
} HuObjUnk;
extern Point3d CRot;
extern Point3d Center;
extern f32 CZoom;
void fn_1_29C();
void fn_1_28F8(Point3d * arg0, Point3d * arg1);
extern void omOutView();
void fn_1_37DC(omObjData*);
void fn_1_439C(omObjData*);
void fn_1_46F0();
s16 MGSeqCreate(s16, ...);
void MGSeqParamSet(s16, s16, s16);
typedef void (omObjFunc2)(struct om_obj_data *);
omObjFunc2 fn_1_F9C;
#endif
// -------------------------------------------------------------------------- //

85
include/REL/option.h Executable file
View file

@ -0,0 +1,85 @@
#ifndef REL_OPTION_H
#define REL_OPTION_H
#include "game/object.h"
#include "dolphin/types.h"
typedef struct {
/* 0x00 */ Process *unk00;
/* 0x04 */ s16 unk04;
/* 0x06 */ char unk06[2];
/* 0x08 */ s32 unk08;
/* 0x0C */ s32 unk0C;
/* 0x10 */ s32 unk10;
/* 0x14 */ s32 unk14;
/* 0x18 */ u32 unk18;
/* 0x1C */ s32 unk1C;
/* 0x20 */ s32 unk20;
} UnkWindowDataStruct; // Size 0x24
void fn_1_160(s16 arg0, s32 arg1, s32 arg2);
s32 fn_1_550(u16 arg0);
s32 fn_1_584(u16 arg0);
s32 fn_1_5B8(u16 arg0);
omObjData *fn_1_7F8(void);
void fn_1_A3C(omObjData *arg0);
void fn_1_A6C(omObjData *arg0, float arg1, float arg2, float arg3, s32 arg4);
void fn_1_AF0(omObjData *arg0, float arg1, float arg2, float arg3, s32 arg4);
void fn_1_B74(omObjData *arg0, float arg1, float arg2, float arg3, s32 arg4);
float fn_1_BF8(omObjData *arg0);
float fn_1_C28(omObjData *arg0);
void fn_1_C88(omObjData *arg0, float *arg1, float *arg2, float *arg3);
s32 fn_1_CB8(omObjData *arg0);
omObjData *fn_1_15A4(void);
void fn_1_1798(omObjData *arg0);
void fn_1_1A2C(omObjData *arg0, s32 arg1);
s32 fn_1_1A70(omObjData *arg0);
omObjData *fn_1_21F8(void);
void fn_1_241C(omObjData *arg0);
void fn_1_2508(omObjData *arg0, float arg1, float arg2, s32 arg3);
omObjData *fn_1_2E04(void);
void fn_1_2F4C(omObjData *arg0);
omObjData *fn_1_3158(void);
void fn_1_322C(omObjData *arg0);
void fn_1_3290(omObjData *arg0, s32 arg1);
s32 fn_1_32D4(omObjData *arg0);
void fn_1_3D54(omObjData *arg0);
void fn_1_3E1C(omObjData *arg0);
s32 fn_1_3ED0(omObjData *arg0);
omObjData *fn_1_4028(void);
void fn_1_42DC(omObjData *arg0);
void fn_1_4388(omObjData *arg0, s32 arg1);
s32 fn_1_43CC(omObjData *arg0);
omObjData *fn_1_80E4(void);
void fn_1_825C(omObjData *arg0);
void fn_1_82B0(omObjData *arg0, s32 arg1);
s32 fn_1_82F4(omObjData *arg0);
UnkWindowDataStruct *fn_1_A44C(s32 arg0);
void fn_1_A6AC(UnkWindowDataStruct *arg0);
void fn_1_A6EC(UnkWindowDataStruct *arg0);
void fn_1_A704(UnkWindowDataStruct *arg0);
void fn_1_A71C(UnkWindowDataStruct *arg0, s32 arg1);
void fn_1_A7B0(UnkWindowDataStruct *arg0, float arg1, float arg2);
void fn_1_A7F0(UnkWindowDataStruct *arg0);
void fn_1_A828(UnkWindowDataStruct *arg0);
void fn_1_A880(UnkWindowDataStruct *arg0, s32 arg1);
extern Process *lbl_1_bss_8;
extern omObjData *lbl_1_bss_10;
extern omObjData *lbl_1_bss_18;
extern omObjData *lbl_1_bss_20;
extern omObjData *lbl_1_bss_28;
extern omObjData *lbl_1_bss_30;
extern omObjData *lbl_1_bss_38;
extern omObjData *lbl_1_bss_40;
#endif

27
include/REL/w01Dll.h Executable file
View file

@ -0,0 +1,27 @@
#ifndef REL_W01_H
#define REL_W01_H
#include "dolphin/types.h"
enum {
MAPOBJ_MAX = 33
};
typedef struct {
/* 0x00 */ struct {
u8 unk00_field0 : 1;
};
/* 0x01 */ s8 unk01[2];
} UnkBoardDataStruct; // Size unknown
extern void fn_1_9D00(s32 arg0);
extern void fn_1_9DD8(void);
extern void fn_1_D740(s16 *arg0);
extern void fn_1_DD84(void);
extern void fn_1_DE94(void);
extern s16 lbl_1_bss_6C4[MAPOBJ_MAX];
extern UnkBoardDataStruct *lbl_1_bss_0;
#endif

View file

@ -7,12 +7,9 @@
#define ARRAY_COUNT(arr) (s32)(sizeof(arr) / sizeof(arr[0]))
typedef struct w03StructUnk0 {
/* 0x00 */ Vec unk_00;
/* 0x0C */ Vec unk_0C;
/* 0x18 */ Vec unk_18;
/* 0x24 */ s32 datanum;
} w03StructUnk0;
enum {
MAPOBJ_MAX = 12
};
typedef struct w03UnkStruct2{
u8 unk0 : 1;
@ -26,4 +23,7 @@ typedef struct w03State {
u16 unk4;
u16 unk6;
s16 unk8;
} w03State;
} w03State;
extern w03State* lbl_1_bss_0;
extern s16 lbl_1_bss_C[MAPOBJ_MAX];

36
include/REL/w06Dll.h Executable file
View file

@ -0,0 +1,36 @@
#ifndef REL_W06_H
#define REL_W06_H
#include "dolphin/types.h"
enum {
MAPOBJ_MAX = 6
};
extern void fn_1_D70(void);
extern void fn_1_F6C(void);
extern void fn_1_1054(void); // return s32?
extern void fn_1_4878(void);
extern void fn_1_4A10(void);
extern void fn_1_4A60(void); // return s32?
extern void fn_1_6EF0(void); // return s32?
extern void fn_1_7BB0(void);
extern void fn_1_7F3C(void);
extern void fn_1_8264(s32 arg0, s16 arg1);
extern void fn_1_8F20(void);
extern void fn_1_91D8(void);
extern void fn_1_9294(s32 arg0, s32 arg1);
extern s32 fn_1_92D8(s32 arg0, s32 arg1);
extern void fn_1_C108(s32 arg0);
extern void fn_1_C2B4(void);
extern void fn_1_CC90(void);
extern void fn_1_CD0C(void);
extern s16 lbl_1_bss_C[MAPOBJ_MAX];
extern void *lbl_1_bss_0;
#endif

View file

@ -3,130 +3,87 @@
#include "REL/executor.h"
#include "game/process.h"
#include "game/window.h"
#include "board_unsplit.h"
#include "unsplit.h"
#define ARRAY_COUNT(arr) (s32)(sizeof(arr) / sizeof(arr[0]))
enum {
MAPOBJ_MELON = 0,
MAPOBJ_MAX,
};
typedef struct w10_state {
/* 0x00 */ s32 unk0;
/* 0x04 */ u16 unk4;
/* 0x06 */ u16 unk6;
/* 0x08 */ s16 unk8;
} W10State;
typedef struct w10_board_work {
/* 0x00 */ s32 scene;
/* 0x04 */ u16 dice;
/* 0x06 */ u16 msg;
/* 0x08 */ s16 focus_mdl;
} W10BoardWork;
typedef struct unkw10Dll {
Vec unk0;
Vec unk0C;
Vec unk18;
s32 unk24;
} unkw10Dll; //sizeof 0x28
typedef void (*TutorialSceneFunc)(void);
typedef struct w10DllUnk01 {
u8 unk0;
f32 unk4;
f32 unk8;
f32 unkC;
f32 unk10;
} w10DllUnk01; //sizeof ?
typedef struct tutorial_scene {
s16 cue;
TutorialSceneFunc func;
} TutorialScene;
typedef struct w10DllUnk03 {
s16 unk0;
s16 unk2;
s16 unk4;
} w10DllUnk03;
extern s32 boardTutorialData[4];
typedef struct w10DllUnk04 {
s16 unk0;
s16 unk2;
void (*unk4)();
} w10DllUnk04;
extern s16 lbl_1_bss_20;
extern s16 lbl_1_bss_22[];
extern s16 lbl_1_bss_20;
extern s32 boardTutorialData;
void fn_1_C10(s16);
void HostPosSet(s16);
void fn_1_1FB0(void);
void fn_1_1E3C(s16, s16, s16);
void fn_1_BA0(s32);
void fn_1_C20(void);
void HostWinExec(s32);
void fn_1_6D8(void);
void fn_1_E0(void);
void fn_1_1D68(void);
void fn_1_1DEC(void);
void fn_1_AEC(void);
int fn_1_1AAC(s16, s32);
void fn_1_8C0(void);
void fn_1_904(void);
void fn_1_908(void);
s32 fn_1_90C(void);
void fn_1_91C(void);
void fn_1_13A4(void);
void fn_1_176C(void);
void fn_1_179C(void);
void fn_1_17F4(void);
void fn_1_1834(void);
void fn_1_18BC(void);
void fn_1_1908(void);
void fn_1_1930(void);
void fn_1_1958(void);
void fn_1_D2C(void);
void fn_1_D54(void);
void fn_1_D7C(void);
void fn_1_DA4(void);
void fn_1_DCC(void);
void fn_1_DF4(void);
void fn_1_E1C(void);
void fn_1_E44(void);
void fn_1_E94(void);
void fn_1_EBC(void);
void fn_1_EE4(void);
void fn_1_EE8(void);
void fn_1_F30(void);
void fn_1_F6C(void);
void fn_1_FB8(void);
void fn_1_1010(void);
void fn_1_105C(void);
void fn_1_1098(void);
void fn_1_10C0(void);
void fn_1_10F8(void);
void fn_1_1134(void);
void fn_1_1178(void);
void fn_1_11A0(void);
void fn_1_11EC(void);
void fn_1_1240(void);
void fn_1_1278(void);
void fn_1_12A0(void);
void fn_1_12DC(void);
void fn_1_1304(void);
void fn_1_132C(void);
void fn_1_1354(void);
void fn_1_137C(void);
void TutorialSprCreate(void);
void TutorialSprKill(void);
void HostCreate(void);
int TutorialHookExec(s16, s32);
extern w10DllUnk04 lbl_1_data_108[42];
extern w10DllUnk03 lbl_1_data_C6[];
extern Vec lbl_1_data_80[];
extern Process* lbl_1_bss_18;
extern s16 lbl_1_bss_1C;
extern s16 lbl_1_bss_1E;
extern s32 lbl_1_data_78[2];
extern W10State* lbl_1_bss_0;
extern s16 lbl_1_bss_10[4]; //could be incorrect size
extern void* lbl_1_bss_8; //unknown type
extern s16 lbl_1_bss_C;
extern s16 lbl_1_bss_E;
extern unkw10Dll lbl_1_data_0[1];
extern s16 lbl_1_bss_22[11];
extern s32 lbl_1_data_2A8[11];
extern s16 lbl_1_data_28;
extern s16 lbl_1_data_2A;
extern s16 lbl_1_data_2C;
extern s16 lbl_1_data_2E;
extern s16 lbl_1_data_30;
extern s16 lbl_1_data_32;
extern s32 lbl_1_data_54[2];
extern s32 lbl_1_data_5C[2];
extern s32 lbl_1_data_64[2];
extern s32 lbl_1_data_6C[2];
void TutorialStartExec(void);
void TutorialPreRollExec(void);
void TutorialOrderExec(void);
void TutorialP1StartExec(void);
void TutorialP2StartExec(void);
void TutorialP3StartExec(void);
void TutorialP4StartExec(void);
void TutorialGameStartExec(void);
void TutorialRollExec(void);
void TutorialMoveExec(void);
void TutorialLandExec(void);
void TutorialLandBlueExec(void);
void TutorialLandRedExec(void);
void TutorialLandHappenExec(void);
void TutorialLandFortuneExec(void);
void TutorialLandBowserExec(void);
void TutorialLandMushroomExec(void);
void TutorialMushroomMegaExec(void);
void TutorialMushroomMiniExec(void);
void TutorialLandBattleExec(void);
void TutorialLandWarpExec(void);
void TutorialWarpDecideExec(void);
void TutorialBlockStarExec(void);
void TutorialBlockCoinExec(void);
void TutorialMiniMegaExec(void);
void TutorialMiniUseExec(void);
void TutorialMiniStopExec(void);
void TutorialMegaUseExec(void);
void TutorialMegaDiceExec(void);
void TutorialMegaStompExec(void);
void TutorialMegaEventExec(void);
void TutorialMegaStopExec(void);
void TutorialEndExec(void);
void TutorialMGStatusExec(void);
void TutorialMG4PExec(void);
void TutorialMG2Vs2Exec(void);
void TutorialMG1Vs3Exec(void);
void TutorialMG1Vs3AltExec(void);
void TutorialShopExec(void);
void TutorialLotteryExec(void);
void TutorialBooHouseExec(void);
extern W10BoardWork *boardWork;
extern s16 boardMapObjMdl[MAPOBJ_MAX];
extern s16 tutorialDoneF;
extern s16 tutorialExitWin;
extern s16 boardStarHostMdl;
extern s16 boardShopHostMdl;
extern s16 boardLotteryHostMdl;
extern s16 boardBooHouseHostMdl;