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
This commit is contained in:
dbalatoni13 2025-04-01 07:11:31 +02:00 committed by GitHub
parent 4b0737d49c
commit 887cb00c5b
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
67 changed files with 1662 additions and 1545 deletions

View file

@ -531,8 +531,8 @@ lbl_1_bss_2CC = .bss:0x000002CC; // type:object size:0x2 data:2byte
lbl_1_bss_2CE = .bss:0x000002CE; // type:object size:0x2 data:2byte lbl_1_bss_2CE = .bss:0x000002CE; // type:object size:0x2 data:2byte
lbl_1_bss_2D0 = .bss:0x000002D0; // type:object size:0x4 data:4byte lbl_1_bss_2D0 = .bss:0x000002D0; // type:object size:0x4 data:4byte
lbl_1_bss_2D4 = .bss:0x000002D4; // type:object size:0x4 data:4byte lbl_1_bss_2D4 = .bss:0x000002D4; // type:object size:0x4 data:4byte
lbl_1_bss_2D8 = .bss:0x000002D8; // type:object size:0x4 data:4byte objman = .bss:0x000002D8; // type:object size:0x4 data:4byte
lbl_1_bss_2DC = .bss:0x000002DC; // type:object size:0x4 data:4byte outViewObj = .bss:0x000002DC; // type:object size:0x4 data:4byte
lbl_1_bss_2E2 = .bss:0x000002E2; // type:object size:0x2 data:2byte lbl_1_bss_2E2 = .bss:0x000002E2; // type:object size:0x2 data:2byte
lbl_1_bss_2E4 = .bss:0x000002E4; // type:object size:0x2 data:2byte lbl_1_bss_2E4 = .bss:0x000002E4; // type:object size:0x2 data:2byte
lbl_1_bss_2E6 = .bss:0x000002E6; // type:object size:0x2 data:2byte lbl_1_bss_2E6 = .bss:0x000002E6; // type:object size:0x2 data:2byte

View file

@ -12,7 +12,7 @@ extern "C" {
typedef enum { typedef enum {
HARDWARE_AMC_DDH = 0, HARDWARE_AMC_DDH = 0,
HARDWARE_GDEV = 1, HARDWARE_GDEV = 1,
HARDWARE_BBA = 2, HARDWARE_BBA = 2
} HardwareType; } HardwareType;
// DS Error returns. // DS Error returns.
@ -37,7 +37,7 @@ enum {
DS_InvalidThreadID = 0x705, DS_InvalidThreadID = 0x705,
DS_OSError = 0x706, DS_OSError = 0x706,
DS_Error800 = 0x800, DS_Error800 = 0x800
}; };
typedef int DSError; typedef int DSError;
@ -46,14 +46,14 @@ typedef int DSError;
typedef enum { typedef enum {
DS_Stdin = 0, DS_Stdin = 0,
DS_Stdout = 1, DS_Stdout = 1,
DS_Stderr = 2, DS_Stderr = 2
} DSFileHandle; } DSFileHandle;
// IO returns. // IO returns.
typedef enum { typedef enum {
DS_IONoError = 0, DS_IONoError = 0,
DS_IOError = 1, DS_IOError = 1,
DS_IOEOF = 2, DS_IOEOF = 2
} DSIOResult; } DSIOResult;
// Message command IDs // Message command IDs
@ -86,7 +86,7 @@ typedef enum {
DSMSG_CloseFile = 0xD3, DSMSG_CloseFile = 0xD3,
DSMSG_PositionFile = 0xD4, DSMSG_PositionFile = 0xD4,
DSMSG_ReplyNAK = 0xFF, DSMSG_ReplyNAK = 0xFF
} MessageCommandID; } MessageCommandID;
// Register commands. // Register commands.
@ -94,7 +94,7 @@ typedef enum {
DSREG_Default = 0, DSREG_Default = 0,
DSREG_FP = 1, DSREG_FP = 1,
DSREG_Extended1 = 2, DSREG_Extended1 = 2,
DSREG_Extended2 = 3, DSREG_Extended2 = 3
} DSMessageRegisterOptions; } DSMessageRegisterOptions;
// Step commands. // Step commands.
@ -102,7 +102,7 @@ typedef enum {
DSSTEP_IntoCount = 0x0, DSSTEP_IntoCount = 0x0,
DSSTEP_IntoRange = 0x1, DSSTEP_IntoRange = 0x1,
DSSTEP_OverCount = 0x10, DSSTEP_OverCount = 0x10,
DSSTEP_OverRange = 0x11, DSSTEP_OverRange = 0x11
} DSMessageStepOptions; } DSMessageStepOptions;
typedef enum { typedef enum {
@ -128,14 +128,14 @@ typedef enum {
DSREPLY_OSError = 0x20, DSREPLY_OSError = 0x20,
DSREPLY_InvalidProcessID = 0x21, DSREPLY_InvalidProcessID = 0x21,
DSREPLY_InvalidThreadID = 0x22, DSREPLY_InvalidThreadID = 0x22,
DSREPLY_DebugSecurityError = 0x23, DSREPLY_DebugSecurityError = 0x23
} DSReplyError; } DSReplyError;
typedef enum { typedef enum {
DSRECV_Wait = 0, DSRECV_Wait = 0,
DSRECV_Found = 1, DSRECV_Found = 1,
DSRECV_InFrame = 2, DSRECV_InFrame = 2,
DSRECV_FrameOverflow = 3, DSRECV_FrameOverflow = 3
} ReceiverState; } ReceiverState;
typedef enum { typedef enum {
@ -154,17 +154,17 @@ typedef enum {
NUBEVENT_Request = 2, NUBEVENT_Request = 2,
NUBEVENT_Breakpoint = 3, NUBEVENT_Breakpoint = 3,
NUBEVENT_Exception = 4, NUBEVENT_Exception = 4,
NUBEVENT_Support = 5, NUBEVENT_Support = 5
} NubEventType; } NubEventType;
typedef enum { typedef enum {
VALIDMEM_Readable = 0, VALIDMEM_Readable = 0,
VALIDMEM_Writeable = 1, VALIDMEM_Writeable = 1
} ValidMemoryOptions; } ValidMemoryOptions;
typedef enum { typedef enum {
MEMACCESS_UserMemory = 0, MEMACCESS_UserMemory = 0,
MEMACCESS_DebuggerMemory = 1, MEMACCESS_DebuggerMemory = 1
} MemoryAccessOptions; } MemoryAccessOptions;
typedef int UARTError; typedef int UARTError;
@ -174,7 +174,7 @@ typedef enum {
UART_UnknownBaudRate = 1, UART_UnknownBaudRate = 1,
UART_ConfigurationError = 2, UART_ConfigurationError = 2,
UART_BufferOverflow = 3, // specified buffer was too small UART_BufferOverflow = 3, // specified buffer was too small
UART_NoData = 4, // no data available from polling UART_NoData = 4 // no data available from polling
} UARTErrorOptions; } UARTErrorOptions;
typedef enum { typedef enum {

View file

@ -28,13 +28,13 @@ enum __file_kinds {
__disk_file, __disk_file,
__console_file, __console_file,
__string_file, __string_file,
__unavailable_file, __unavailable_file
}; };
enum __file_orientation { enum __file_orientation {
/* 0x0 */ UNORIENTED, /* 0x0 */ UNORIENTED,
/* 0x1 */ CHAR_ORIENTED, /* 0x1 */ CHAR_ORIENTED,
/* 0x2 */ WIDE_ORIENTED, /* 0x2 */ WIDE_ORIENTED
}; };
typedef struct _file_modes { typedef struct _file_modes {
@ -50,20 +50,20 @@ enum __io_modes {
__read = 1, __read = 1,
__write = 2, __write = 2,
__read_write = 3, __read_write = 3,
__append = 4, __append = 4
}; };
enum __io_states { enum __io_states {
__neutral, __neutral,
__writing, __writing,
__reading, __reading,
__rereading, __rereading
}; };
enum __io_results { enum __io_results {
__no_io_error, __no_io_error,
__io_error, __io_error,
__io_EOF, __io_EOF
}; };
typedef struct _file_states { typedef struct _file_states {

View file

@ -5,6 +5,53 @@
#define ARRAY_COUNT(arr) (s32)(sizeof(arr) / sizeof(arr[0])) #define ARRAY_COUNT(arr) (s32)(sizeof(arr) / sizeof(arr[0]))
typedef void (*ObjFuncs)(omObjData*); typedef void (*VoidFuncs)(void);
typedef void (*ObjFuncs)(omObjData *);
void fn_1_F4(Process *arg0);
void fn_1_194(void);
void fn_1_1E4(void);
void fn_1_238(void);
void fn_1_28C(void);
void fn_1_2E0(void);
void fn_1_334(void);
void fn_1_388(u8, s32);
void fn_1_3C4(u8);
void fn_1_404(void);
s32 fn_1_508(u8);
s32 fn_1_53C(u8);
void fn_1_568(s16, s16, s16);
void fn_1_14F0(Process *arg0, s32 arg1);
void fn_1_15D8(void);
void fn_1_1B1C(Process *arg0);
void fn_1_1CA8(void);
void fn_1_1CAC(float, float, float);
void fn_1_1CD4(float *arg0, float *arg1, float *arg2);
s32 fn_1_1D88(void);
void fn_1_1DB0(Vec *arg0, Vec *arg1, float *arg2, s32 arg3, s32 arg4);
void fn_1_2354(Process *arg0);
void fn_1_2564(void);
void fn_1_25C0(void);
s32 fn_1_2880(void);
#ifndef __MWERKS__
s16 fn_1_28B8(u8 arg0);
s16 fn_1_28D4(void);
#endif
void fn_1_3AC8(Process *arg0);
void fn_1_3B68(void);
void fn_1_41CC(Process *arg0);
void fn_1_44F4(void);
void fn_1_4980(Process *arg0);
void fn_1_4C6C(omObjData *obj);
void fn_1_5C5C(Process *arg0, s16 arg1);
void fn_1_5ECC(void);
void fn_1_5F40(s32 arg0);
#endif #endif

View file

@ -3,17 +3,18 @@
#include "dolphin.h" #include "dolphin.h"
#include "game/object.h"
#include "game/animdata.h" #include "game/animdata.h"
#include "game/hsfanim.h" #include "game/hsfanim.h"
#include "game/object.h"
extern s32 rand8(void); extern s32 rand8(void);
// types // types
typedef void (*m409Func6)(ModelData*, struct _unkStruct6*, Mtx); typedef void (*m409Func6)(ModelData *, struct _unkStruct6 *, Mtx);
typedef void (*m409PlayerFunc8)(struct _unkStruct8*); typedef void (*m409PlayerFunc8)(struct _unkStruct8 *);
typedef struct _unkStruct { typedef struct _unkStruct {
f32 zoom; float zoom;
Vec center; Vec center;
Vec rot; Vec rot;
} unkStruct; } unkStruct;
@ -27,14 +28,14 @@ typedef struct _unkStruct3 {
s8 unk0; s8 unk0;
s8 unk1; s8 unk1;
s16 unk2; s16 unk2;
struct _unkStruct4* unk4; struct _unkStruct4 *unk4;
s16 unk8; s16 unk8;
s16 unkA; s16 unkA;
s16 unkC; s16 unkC;
s16 unkE; s16 unkE;
s16 unk10; s16 unk10;
s16 unk12; s16 unk12;
f32 unk14; float unk14;
} unkStruct3; } unkStruct3;
typedef struct _unkStruct4 { typedef struct _unkStruct4 {
@ -49,26 +50,26 @@ typedef struct _unkStruct4 {
s16 unkA; s16 unkA;
s16 unkC; s16 unkC;
s16 unkE; s16 unkE;
f32 unk10; float unk10;
s16 unk14; s16 unk14;
s16 unk16; s16 unk16;
f32 unk18; float unk18;
f32 unk1C; float unk1C;
struct _unkStruct4* unk20; struct _unkStruct4 *unk20;
} unkStruct4; // sizeof 0x24 } unkStruct4; // sizeof 0x24
typedef struct _unkStruct5 { typedef struct _unkStruct5 {
Vec unk0; Vec unk0;
Vec unkC; Vec unkC;
f32 unk18; float unk18;
f32 unk1C; float unk1C;
f32 unk20; float unk20;
f32 unk24; float unk24;
s16 unk28; s16 unk28;
s16 unk2A; s16 unk2A;
s16 unk2C; s16 unk2C;
s16 unk2E; s16 unk2E;
f32 unk30; float unk30;
Vec unk34; Vec unk34;
Vec unk40; Vec unk40;
s16 unk4C; s16 unk4C;
@ -81,20 +82,20 @@ typedef struct _unkStruct6 {
u32 unk4; u32 unk4;
u8 unk8; u8 unk8;
m409Func6 unkC; m409Func6 unkC;
AnimData* unk10; AnimData *unk10;
s16 unk14; s16 unk14;
unkStruct5* unk18; unkStruct5 *unk18;
Vec* unk1C; Vec *unk1C;
HsfVector2f* unk20; HsfVector2f *unk20;
GXColor* unk24; GXColor *unk24;
void* unk28; void *unk28;
Vec unk2C; Vec unk2C;
Vec unk38; Vec unk38;
Vec unk44; Vec unk44;
Vec unk50; Vec unk50;
HsfVector2f* unk5C; HsfVector2f *unk5C;
f32 unk60; float unk60;
f32 unk64; float unk64;
} unkStruct6; // sizeof 0x68 } unkStruct6; // sizeof 0x68
typedef struct _unkStruct7 { typedef struct _unkStruct7 {
@ -147,22 +148,22 @@ typedef struct _unkStruct8Sub {
u8 unk32; u8 unk32;
u32 unk34; u32 unk34;
s16 unk38; s16 unk38;
void* unk3C; void *unk3C;
void* unk40; void *unk40;
void* unk44; void *unk44;
Vec* unk48; Vec *unk48;
GXColor unk4C; GXColor unk4C;
GXColor unk50; GXColor unk50;
struct _unkStruct12* unk54; struct _unkStruct12 *unk54;
Vec unk58; Vec unk58;
Vec unk64; Vec unk64;
union { union {
s16 unk70[0x10]; s16 unk70[0x10];
struct { struct {
s16 unk70s; s16 unk70s;
f32 unk74; float unk74;
f32 unk78; float unk78;
f32 unk7C; float unk7C;
}; };
}; };
} unkStruct8Sub; // sizeof 0x90 } unkStruct8Sub; // sizeof 0x90
@ -177,9 +178,9 @@ typedef struct _unkStruct8 {
Vec unk18; Vec unk18;
Vec unk24; Vec unk24;
m409PlayerFunc8 unk30; m409PlayerFunc8 unk30;
s16* unk34; s16 *unk34;
char unk38[0x4]; char unk38[0x4];
unkStruct8Sub* unk3C; unkStruct8Sub *unk3C;
char unk40[0x8]; char unk40[0x8];
Vec unk48; Vec unk48;
Vec unk54; Vec unk54;
@ -187,7 +188,7 @@ typedef struct _unkStruct8 {
} unkStruct8; // sizeof 0xA0 } unkStruct8; // sizeof 0xA0
typedef struct _unkStruct9Sub { typedef struct _unkStruct9Sub {
AnimData* unk0; AnimData *unk0;
s16 unk4; s16 unk4;
s16 unk6; s16 unk6;
u32 unk8; u32 unk8;
@ -197,10 +198,10 @@ typedef struct _unkStruct9Sub {
u8 unk4C; u8 unk4C;
s16 unk4E; s16 unk4E;
s16 unk50; s16 unk50;
f32 unk54; float unk54;
f32 unk58; float unk58;
f32 unk5C; float unk5C;
f32 unk60; float unk60;
} unkStruct9Sub; // sizeof 0x64 } unkStruct9Sub; // sizeof 0x64
typedef struct _unkStruct9 { typedef struct _unkStruct9 {
@ -210,8 +211,8 @@ typedef struct _unkStruct9 {
s16 unk6; s16 unk6;
s16 unk8; s16 unk8;
s16 unkA; s16 unkA;
unkStruct9Sub* unkC; unkStruct9Sub *unkC;
unkStruct8* unk10; unkStruct8 *unk10;
} unkStruct9; // sizeof 0x14 } unkStruct9; // sizeof 0x14
typedef struct _unkStruct10 { typedef struct _unkStruct10 {
@ -221,7 +222,7 @@ typedef struct _unkStruct10 {
u8 unk3; u8 unk3;
u8 unk4; u8 unk4;
char unk5[0x3]; char unk5[0x3];
f32 unk8; float unk8;
Vec unkC; Vec unkC;
Vec unk18; Vec unk18;
Vec unk24; Vec unk24;
@ -229,7 +230,7 @@ typedef struct _unkStruct10 {
Vec unk3C; Vec unk3C;
s8 unk48; s8 unk48;
char unk49[0x3]; char unk49[0x3];
f32 unk4C; float unk4C;
} unkStruct10; // sizeof 0x50 } unkStruct10; // sizeof 0x50
typedef struct unkStruct11 { typedef struct unkStruct11 {
@ -243,11 +244,11 @@ typedef struct _unkStruct12 {
s8 unk0; s8 unk0;
s8 unk1; s8 unk1;
s16 unk2; s16 unk2;
HsfVector2f* unk4; HsfVector2f *unk4;
u8 unk8; u8 unk8;
s16 unkA; s16 unkA;
f32 unkC; float unkC;
f32 unk10; float unk10;
} unkStruct12; } unkStruct12;
// bss // bss
@ -255,78 +256,78 @@ extern unkStruct9 lbl_1_bss_F0;
// prototypes // prototypes
void ObjectSetup(void); void ObjectSetup(void);
void fn_1_434(omObjData* object); void fn_1_434(omObjData *object);
void fn_1_4DC(omObjData* object); void fn_1_4DC(omObjData *object);
s8 fn_1_524(void); s8 fn_1_524(void);
s8 fn_1_B80(void); s8 fn_1_B80(void);
void fn_1_DDC(omObjData* object); void fn_1_DDC(omObjData *object);
void fn_1_F70(omObjData* object); void fn_1_F70(omObjData *object);
s8 fn_1_10E8(omObjData* object); s8 fn_1_10E8(omObjData *object);
s8 fn_1_1B74(omObjData* object); s8 fn_1_1B74(omObjData *object);
void fn_1_2098(omObjData* object); void fn_1_2098(omObjData *object);
void fn_1_23EC(s16); void fn_1_23EC(s16);
void fn_1_2414(u16, u16); void fn_1_2414(u16, u16);
u16 fn_1_2454(u16); u16 fn_1_2454(u16);
void fn_1_2484(omObjData* object); void fn_1_2484(omObjData *object);
void fn_1_2DCC(omObjData* object); void fn_1_2DCC(omObjData *object);
void fn_1_3840(void); void fn_1_3840(void);
void fn_1_3988(unkStruct4*, s16, s16); void fn_1_3988(unkStruct4 *, s16, s16);
s32 fn_1_3AD8(s32, f32, f32, f32, f32, f32, f32); s32 fn_1_3AD8(s32, float, float, float, float, float, float);
void fn_1_40A4(Mtx, Mtx); void fn_1_40A4(Mtx, Mtx);
f32 fn_1_4120(f32, f32, f32, f32); float fn_1_4120(float, float, float, float);
void fn_1_417C(void); void fn_1_417C(void);
void fn_1_44F0(s16, f32, f32, f32, s8, s16); void fn_1_44F0(s16, float, float, float, s8, s16);
void fn_1_4FFC(s16, f32, f32, f32, s16); void fn_1_4FFC(s16, float, float, float, s16);
void fn_1_5408(ModelData*, unkStruct6*, Mtx); void fn_1_5408(ModelData *, unkStruct6 *, Mtx);
void fn_1_55E0(ModelData*, unkStruct6*, Mtx); void fn_1_55E0(ModelData *, unkStruct6 *, Mtx);
void fn_1_57DC(ModelData*, unkStruct6*, Mtx); void fn_1_57DC(ModelData *, unkStruct6 *, Mtx);
unkStruct5* fn_1_58E0(s16, Vec*, Vec*, f32, GXColor*); unkStruct5 *fn_1_58E0(s16, Vec *, Vec *, float, GXColor *);
s16 fn_1_5A18(AnimData*, s16, f32, s16, s16); s16 fn_1_5A18(AnimData *, s16, float, s16, s16);
void fn_1_5F5C(s16); void fn_1_5F5C(s16);
void fn_1_5FBC(s16, m409Func6); void fn_1_5FBC(s16, m409Func6);
void fn_1_5FF4(s16, u8); void fn_1_5FF4(s16, u8);
void fn_1_602C(ModelData*, Mtx); void fn_1_602C(ModelData *, Mtx);
void fn_1_6608(HsfVector2f*, s16, s16, f32, f32); void fn_1_6608(HsfVector2f *, s16, s16, float, float);
void fn_1_66D4(HsfVector2f*, HsfVector2f*, s16, f32, f32); void fn_1_66D4(HsfVector2f *, HsfVector2f *, s16, float, float);
void fn_1_6778(Vec*, Vec*, Vec*, s16); void fn_1_6778(Vec *, Vec *, Vec *, s16);
// player.c // player.c
void fn_1_67E0(Process*); void fn_1_67E0(Process *);
void fn_1_6900(void); void fn_1_6900(void);
void fn_1_6928(omObjData*); void fn_1_6928(omObjData *);
void fn_1_7344(omObjData*); void fn_1_7344(omObjData *);
void fn_1_7FE8(omObjData*); void fn_1_7FE8(omObjData *);
void fn_1_8838(unkStruct8*); void fn_1_8838(unkStruct8 *);
s8 fn_1_8D08(u8); s8 fn_1_8D08(u8);
void fn_1_8D6C(unkStruct8*); void fn_1_8D6C(unkStruct8 *);
void fn_1_91C0(omObjData*); void fn_1_91C0(omObjData *);
void fn_1_962C(omObjData*); void fn_1_962C(omObjData *);
s32 fn_1_A584(unkStruct10*); s32 fn_1_A584(unkStruct10 *);
s8 fn_1_A9C0(Vec*, f32*); s8 fn_1_A9C0(Vec *, float *);
s32 fn_1_ABB4(void); s32 fn_1_ABB4(void);
void fn_1_AC08(s32*, s32); void fn_1_AC08(s32 *, s32);
f32 fn_1_AD40(f32, f32, f32); float fn_1_AD40(float, float, float);
f32 fn_1_AE94(f32, f32, f32, f32); float fn_1_AE94(float, float, float, float);
void fn_1_AF0C(f32*, f32*, f32*, f32*, f32); void fn_1_AF0C(float *, float *, float *, float *, float);
f32 fn_1_B028(f32, f32, f32, f32); float fn_1_B028(float, float, float, float);
void fn_1_B0A0(f32*, f32*, f32*, f32*, f32); void fn_1_B0A0(float *, float *, float *, float *, float);
f32 fn_1_B378(Vec*); float fn_1_B378(Vec *);
f32 fn_1_B6A4(Vec*, Vec*, Vec*); float fn_1_B6A4(Vec *, Vec *, Vec *);
f32 fn_1_B9E0(Vec*, Vec*, Vec*, Vec*, Vec*); float fn_1_B9E0(Vec *, Vec *, Vec *, Vec *, Vec *);
f32 fn_1_BF38(s16); float fn_1_BF38(s16);
// cursor.c // cursor.c
void fn_1_BF88(s16, s16); void fn_1_BF88(s16, s16);
void fn_1_C0C0(void); void fn_1_C0C0(void);
void fn_1_C164(unkStruct8*); void fn_1_C164(unkStruct8 *);
void fn_1_CB98(ModelData* model, Mtx matrix); void fn_1_CB98(ModelData *model, Mtx matrix);
unkStruct8* fn_1_CCB0(s16 idx); unkStruct8 *fn_1_CCB0(s16 idx);
unkStruct8Sub* fn_1_CCCC(s16, s16); unkStruct8Sub *fn_1_CCCC(s16, s16);
void fn_1_CCF8(unkStruct11**, s16, f32, f32); void fn_1_CCF8(unkStruct11 **, s16, float, float);
void fn_1_CE7C(Vec**, s16, Vec*); void fn_1_CE7C(Vec **, s16, Vec *);
void fn_1_CF1C(GXColor**, s16, GXColor*); void fn_1_CF1C(GXColor **, s16, GXColor *);
void fn_1_CFC4(Vec**, s16, Vec*); void fn_1_CFC4(Vec **, s16, Vec *);
void fn_1_D050(HsfVector2f**, s16, HsfVector2f*); void fn_1_D050(HsfVector2f **, s16, HsfVector2f *);
void fn_1_D0E8(unkStruct8Sub*); void fn_1_D0E8(unkStruct8Sub *);
void fn_1_D430(unkStruct8*); void fn_1_D430(unkStruct8 *);
s16 fn_1_DA48(u8, u8); s16 fn_1_DA48(u8, u8);
void fn_1_DDB8(s16); void fn_1_DDB8(s16);
void fn_1_DEF4(s16, s16, u8); void fn_1_DEF4(s16, s16, u8);
@ -334,19 +335,19 @@ s16 fn_1_DF20(u32, s16, s16);
void fn_1_E228(s16); void fn_1_E228(s16);
s32 fn_1_E2A8(s16, u8, u32, s16, s16); s32 fn_1_E2A8(s16, u8, u32, s16, s16);
s32 fn_1_E7C8(s16, u8, u32); s32 fn_1_E7C8(s16, u8, u32);
void fn_1_E818(s16, f32, f32, f32); void fn_1_E818(s16, float, float, float);
void fn_1_E85C(s16, s16, f32, f32, f32); void fn_1_E85C(s16, s16, float, float, float);
void fn_1_E8CC(s16, f32, f32, f32); void fn_1_E8CC(s16, float, float, float);
void fn_1_E940(s16, f32, f32, f32); void fn_1_E940(s16, float, float, float);
void fn_1_E99C(s16, s16, f32, f32, f32); void fn_1_E99C(s16, s16, float, float, float);
void fn_1_E940(s16, f32, f32, f32); void fn_1_E940(s16, float, float, float);
void fn_1_EA24(s16, f32, f32, f32); void fn_1_EA24(s16, float, float, float);
void fn_1_EAB0(s16, f32, f32, f32); void fn_1_EAB0(s16, float, float, float);
void fn_1_EAF4(s16, s16, f32, f32, f32); void fn_1_EAF4(s16, s16, float, float, float);
void fn_1_EB64(s16, f32, f32, f32); void fn_1_EB64(s16, float, float, float);
void fn_1_EBD8(s16, f32, f32, f32); void fn_1_EBD8(s16, float, float, float);
void fn_1_EC1C(s16, s16, f32, f32, f32); void fn_1_EC1C(s16, s16, float, float, float);
void fn_1_EC8C(s16, f32, f32, f32); void fn_1_EC8C(s16, float, float, float);
void fn_1_ED00(s16, s32); void fn_1_ED00(s16, s32);
void fn_1_ED44(s16, s16, s32); void fn_1_ED44(s16, s16, s32);
void fn_1_EDB4(s16, s32); void fn_1_EDB4(s16, s32);
@ -360,9 +361,9 @@ void fn_1_F098(s16, u8, u8, u8, u8);
void fn_1_F110(s16, s16, u8); void fn_1_F110(s16, s16, u8);
void fn_1_F17C(s16, s16, u8, u8); void fn_1_F17C(s16, s16, u8, u8);
void fn_1_F1F4(s16, u8); void fn_1_F1F4(s16, u8);
void fn_1_F28C(s16, s16, f32); void fn_1_F28C(s16, s16, float);
void fn_1_F2F8(s16, s16, u8, f32); void fn_1_F2F8(s16, s16, u8, float);
void fn_1_F370(s16, f32); void fn_1_F370(s16, float);
void fn_1_F408(s16, s16, u8); void fn_1_F408(s16, s16, u8);
void fn_1_F478(s16, s16, u8, u8); void fn_1_F478(s16, s16, u8, u8);
void fn_1_F4F0(s16, u8); void fn_1_F4F0(s16, u8);

View file

@ -3,8 +3,9 @@
#include "dolphin.h" #include "dolphin.h"
#include "game/object.h"
#include "game/hsfman.h" #include "game/hsfman.h"
#include "game/object.h"
// types // types
typedef struct _unkStruct { typedef struct _unkStruct {
@ -18,8 +19,8 @@ typedef struct _unkStruct {
Vec unk10; Vec unk10;
HsfVector2f unk1C; HsfVector2f unk1C;
Vec unk24; Vec unk24;
f32 unk30; float unk30;
f32 unk34; float unk34;
} unkStruct; } unkStruct;
typedef struct _unkStruct2 { typedef struct _unkStruct2 {
@ -58,7 +59,7 @@ typedef struct _unkStruct3 {
HsfVector2f unk4C; HsfVector2f unk4C;
Vec unk54; Vec unk54;
Vec unk60; Vec unk60;
f32 unk6C; float unk6C;
char unk70[0xC]; char unk70[0xC];
Vec unk7C; Vec unk7C;
s8 unk88; s8 unk88;
@ -68,7 +69,7 @@ typedef struct _unkStruct3 {
u16 unk8C; u16 unk8C;
u16 unk8E; u16 unk8E;
HsfVector2f unk90; HsfVector2f unk90;
f32 unk98; float unk98;
s32 unk9C; s32 unk9C;
s32 unkA0; s32 unkA0;
s32 unkA4; s32 unkA4;
@ -83,38 +84,38 @@ typedef struct _unkStruct4 {
// prototypes // prototypes
void ObjectSetup(void); void ObjectSetup(void);
void* fn_1_6EC(f32, f32, f32, s32); void *fn_1_6EC(float, float, float, s32);
void fn_1_73C(void); void fn_1_73C(void);
void fn_1_7BC(void); void fn_1_7BC(void);
void fn_1_894(omObjData* object); void fn_1_894(omObjData *object);
void fn_1_898(omObjData* object); void fn_1_898(omObjData *object);
void fn_1_8BC(void); void fn_1_8BC(void);
f32 fn_1_1D08(f32); float fn_1_1D08(float);
void fn_1_1D88(void); void fn_1_1D88(void);
void fn_1_1DBC(void); void fn_1_1DBC(void);
void fn_1_2014(void); void fn_1_2014(void);
void fn_1_2064(void); void fn_1_2064(void);
s32 fn_1_2708(void); s32 fn_1_2708(void);
f32 fn_1_27C4(s32, f32, f32); float fn_1_27C4(s32, float, float);
void fn_1_2A1C(void); void fn_1_2A1C(void);
void fn_1_3950(void); void fn_1_3950(void);
s8 fn_1_4BE4(s32, s32); s8 fn_1_4BE4(s32, s32);
void fn_1_4C9C(Vec*, f32, f32); void fn_1_4C9C(Vec *, float, float);
s8 fn_1_4E58(s32, s32); s8 fn_1_4E58(s32, s32);
u8 fn_1_525C(s32, s32); u8 fn_1_525C(s32, s32);
u16 fn_1_531C(s32); u16 fn_1_531C(s32);
u16 fn_1_5388(s32); u16 fn_1_5388(s32);
s32 fn_1_53F4(unkStruct3*, f32, f32, f32); s32 fn_1_53F4(unkStruct3 *, float, float, float);
s32 fn_1_561C(unkStruct3*, s32*); s32 fn_1_561C(unkStruct3 *, s32 *);
void fn_1_5838(unkStruct3*); void fn_1_5838(unkStruct3 *);
f32 fn_1_6594(f32, f32, f32); float fn_1_6594(float, float, float);
f32 fn_1_6698(f32, f32, unkStruct3*); float fn_1_6698(float, float, unkStruct3 *);
void fn_1_6814(unkStruct3*); void fn_1_6814(unkStruct3 *);
void fn_1_7C60(void); void fn_1_7C60(void);
void fn_1_A01C(ModelData* model, ParticleData* particle, Mtx matrix); void fn_1_A01C(ModelData *model, ParticleData *particle, Mtx matrix);
void fn_1_A618(ModelData* model, ParticleData* particle, Mtx matrix); void fn_1_A618(ModelData *model, ParticleData *particle, Mtx matrix);
//... //...
void fn_1_AA88(ModelData* model, ParticleData* particle, Mtx matrix); // * void fn_1_AA88(ModelData *model, ParticleData *particle, Mtx matrix); // *
void fn_1_B160(void); // * void fn_1_B160(void); // *
void fn_1_B1C0(void); // * void fn_1_B1C0(void); // *

View file

@ -53,10 +53,10 @@ typedef struct _unkStruct3 {
s16 unk16; s16 unk16;
s16 unk18; s16 unk18;
s16 unk1A; s16 unk1A;
f32 unk1C; float unk1C;
f32 unk20; float unk20;
f32 unk24; float unk24;
f32 unk28; float unk28;
Vec unk2C; Vec unk2C;
Vec unk38; Vec unk38;
Vec unk44; Vec unk44;
@ -64,7 +64,7 @@ typedef struct _unkStruct3 {
u8 unk5C; u8 unk5C;
u8 unk5D; u8 unk5D;
union { union {
s32* unk60; s32 *unk60;
struct { struct {
s16 unk60s; s16 unk60s;
s16 unk62s; s16 unk62s;
@ -90,18 +90,18 @@ typedef struct _unkStruct4 {
Vec unk88[3]; Vec unk88[3];
Vec unkAC[3]; Vec unkAC[3];
Vec unkD0[3]; Vec unkD0[3];
f32 unkF4[3]; float unkF4[3];
f32 unk100[3]; float unk100[3];
f32 unk10C[3]; float unk10C[3];
f32 unk118[3]; float unk118[3];
f32 unk124[3]; float unk124[3];
f32 unk130; float unk130;
f32 unk134; float unk134;
f32 unk138; float unk138;
f32 unk13C; float unk13C;
f32 unk140; float unk140;
f32 unk144; float unk144;
f32 unk148; float unk148;
} unkStruct4; } unkStruct4;
typedef struct _unkSubStruct4 { typedef struct _unkSubStruct4 {
@ -111,8 +111,8 @@ typedef struct _unkSubStruct4 {
HsfVector2f unk4[4]; HsfVector2f unk4[4];
u8 unk24; u8 unk24;
char unk25[0x3]; char unk25[0x3];
f32 unk28; float unk28;
f32 unk2C; float unk2C;
} unkSubStruct4; } unkSubStruct4;
// taken from m438 // taken from m438
@ -127,24 +127,24 @@ typedef struct _unkSubStruct {
u8 unk33; u8 unk33;
u32 unk34; u32 unk34;
s16 unk38; s16 unk38;
void* unk3C; void *unk3C;
Vec* unk40; Vec *unk40;
GXColor* unk44; GXColor *unk44;
Vec* unk48; Vec *unk48;
GXColor unk4C; GXColor unk4C;
GXColor unk50; GXColor unk50;
unkSubStruct4* unk54; unkSubStruct4 *unk54;
u8 unk58; u8 unk58;
char unk59[0x3]; char unk59[0x3];
Vec unk5C; Vec unk5C;
Vec unk68; Vec unk68;
s16 unk74[2]; s16 unk74[2];
s16* unk78; s16 *unk78;
s16* unk7C; s16 *unk7C;
char unk80[0x14]; char unk80[0x14];
} unkSubStruct; /* size = 0x94 */ } unkSubStruct; /* size = 0x94 */
typedef void (*unkSubStruct2Func)(struct _unkSubStruct2*); typedef void (*unkSubStruct2Func)(struct _unkSubStruct2 *);
typedef struct _unkSubStruct2 { typedef struct _unkSubStruct2 {
s16 unk0; s16 unk0;
@ -154,18 +154,18 @@ typedef struct _unkSubStruct2 {
Vec unkC; Vec unkC;
Vec unk18; Vec unk18;
Vec unk24; Vec unk24;
void (*unk30)(struct _unkSubStruct2*); void (*unk30)(struct _unkSubStruct2 *);
s16* unk34; s16 *unk34;
s16 unk38; s16 unk38;
char unk3A[2]; char unk3A[2];
unkSubStruct *unk3C; unkSubStruct *unk3C;
char unk40[0x8]; char unk40[0x8];
s16 unk48; s16 unk48;
char* unk4C; char *unk4C;
Vec* unk50; Vec *unk50;
GXColor* unk54; GXColor *unk54;
Vec* unk58; Vec *unk58;
unkSubStruct4* unk5C; unkSubStruct4 *unk5C;
u8 unk60; u8 unk60;
char unk61[0x3]; char unk61[0x3];
Vec unk64; Vec unk64;
@ -186,7 +186,7 @@ typedef struct _unkSubStruct2 {
} unkSubStruct2; /* size = 0xBC */ } unkSubStruct2; /* size = 0xBC */
typedef struct _unkSubStruct3 { typedef struct _unkSubStruct3 {
AnimData* unk0; AnimData *unk0;
s16 unk4; s16 unk4;
s16 unk6; s16 unk6;
u32 unk8; u32 unk8;
@ -198,10 +198,10 @@ typedef struct _unkSubStruct3 {
s16 unk4E; s16 unk4E;
s16 unk50; s16 unk50;
char unk52[0x2]; char unk52[0x2];
f32 unk54; float unk54;
f32 unk58; float unk58;
f32 unk5C; float unk5C;
f32 unk60; float unk60;
} unkSubStruct3; /* size = 0x64 */ } unkSubStruct3; /* size = 0x64 */
typedef struct _unkStruct5 { typedef struct _unkStruct5 {
@ -228,38 +228,38 @@ extern unkStruct5 lbl_1_bss_36C;
// prototypes // prototypes
// main.c // main.c
void fn_1_43C(omObjData* object); void fn_1_43C(omObjData *object);
void fn_1_4B0(omObjData* object); void fn_1_4B0(omObjData *object);
void fn_1_7D8(omObjData* object); void fn_1_7D8(omObjData *object);
void fn_1_14C0(omObjData* object); void fn_1_14C0(omObjData *object);
void fn_1_15D0(omObjData* object); void fn_1_15D0(omObjData *object);
void fn_1_1960(omObjData* object); void fn_1_1960(omObjData *object);
void fn_1_2B18(omObjData* object); void fn_1_2B18(omObjData *object);
void fn_1_2C14(omObjData* object); void fn_1_2C14(omObjData *object);
void fn_1_2E88(f32, Vec*, Vec*, f32); void fn_1_2E88(float, Vec *, Vec *, float);
void fn_1_3208(omObjData* object); void fn_1_3208(omObjData *object);
void fn_1_3640(omObjData* object); void fn_1_3640(omObjData *object);
void fn_1_3764(omObjData* object); void fn_1_3764(omObjData *object);
void fn_1_3B44(omObjData* object); void fn_1_3B44(omObjData *object);
void fn_1_4660(omObjData* object); void fn_1_4660(omObjData *object);
void fn_1_5B20(unkSubStruct2*); void fn_1_5B20(unkSubStruct2 *);
void fn_1_6304(omObjData* object); void fn_1_6304(omObjData *object);
void fn_1_6368(void); void fn_1_6368(void);
void* fn_1_63A8(s32); void *fn_1_63A8(s32);
void fn_1_64DC(void); void fn_1_64DC(void);
AnimBmpData* fn_1_668C(s16); AnimBmpData *fn_1_668C(s16);
s16 fn_1_66AC(void); s16 fn_1_66AC(void);
s32 fn_1_679C(void); s32 fn_1_679C(void);
f32 fn_1_67F0(f32, f32, f32); float fn_1_67F0(float, float, float);
void fn_1_6A78(Mtx, Vec*); void fn_1_6A78(Mtx, Vec *);
void fn_1_7268(f32*, f32*, f32*, s32); void fn_1_7268(float *, float *, float *, s32);
f32 fn_1_7520(f32, f32*, f32*, f32*, s32); float fn_1_7520(float, float *, float *, float *, s32);
void fn_1_7674(f32*, Vec*, Vec*, s32); void fn_1_7674(float *, Vec *, Vec *, s32);
void fn_1_7A54(f32, Vec*, f32*, Vec*, Vec*, s32); void fn_1_7A54(float, Vec *, float *, Vec *, Vec *, s32);
// map.c // map.c
void fn_1_95C0(ModelData*, Mtx); void fn_1_95C0(ModelData *, Mtx);
AnimData** fn_1_9734(s16); AnimData **fn_1_9734(s16);
void fn_1_9DC8(unkSubStruct2*); void fn_1_9DC8(unkSubStruct2 *);
s16 fn_1_A2D0(u8, u8); s16 fn_1_A2D0(u8, u8);
void fn_1_A800(s16); void fn_1_A800(s16);
s16 fn_1_A94C(u32, s16, s16); s16 fn_1_A94C(u32, s16, s16);
@ -267,12 +267,12 @@ void fn_1_ACF4(s16, s16, s16, s16, s16, s16);
void fn_1_AF48(s16); void fn_1_AF48(s16);
u8 fn_1_AFC8(s16, u8, s32, s16, s16); u8 fn_1_AFC8(s16, u8, s32, s16, s16);
s32 fn_1_B0B8(s16, u8, s16); s32 fn_1_B0B8(s16, u8, s16);
void fn_1_B864(s16, f32, f32, f32); void fn_1_B864(s16, float, float, float);
void fn_1_BB4C(s16, f32, f32, f32); void fn_1_BB4C(s16, float, float, float);
void fn_1_BC9C(s16, f32, f32, f32); void fn_1_BC9C(s16, float, float, float);
void fn_1_BD08(s16, s16, f32, f32, f32); void fn_1_BD08(s16, s16, float, float, float);
void fn_1_C264(s16, u8); void fn_1_C264(s16, u8);
void fn_1_C2D0(s16, s16, u8); void fn_1_C2D0(s16, s16, u8);
void fn_1_C410(s16, s16, u8, u8); void fn_1_C410(s16, s16, u8, u8);
void fn_1_C58C(s16, s16, u8, f32); void fn_1_C58C(s16, s16, u8, float);
void fn_1_C81C(s16, u8); void fn_1_C81C(s16, u8);

View file

@ -18,10 +18,10 @@ typedef struct M418DllUnkStruct {
Vec unk10; // sequence center Vec unk10; // sequence center
Vec rot; Vec rot;
Vec unk28; // sequence rot Vec unk28; // sequence rot
f32 zoom; float zoom;
f32 unk38; // sequence zoom float unk38; // sequence zoom
f32 unk3C[3]; float unk3C[3];
f32 unk48; float unk48;
} M418DllUnkStruct; // sizeof 0x4C } M418DllUnkStruct; // sizeof 0x4C
typedef struct M418DllUnkStruct8 { typedef struct M418DllUnkStruct8 {
@ -32,27 +32,27 @@ typedef struct M418DllUnkStruct8 {
typedef struct M418DllUnkStruct7 { typedef struct M418DllUnkStruct7 {
s32 unk0; s32 unk0;
M418DllUnkStruct8* unk4; M418DllUnkStruct8 *unk4;
s32 unk8; s32 unk8;
s32 unkC; s32 unkC;
M418DllFunc unk10; M418DllFunc unk10;
M418DllRetFunc unk14; M418DllRetFunc unk14;
} M418DllUnkStruct7; // sizeof 0x18 } M418DllUnkStruct7; // sizeof 0x18
f32 fn_1_A920(f32, f32, f32); float fn_1_A920(float, float, float);
f32 fn_1_A940(f32, f32, f32, f32); float fn_1_A940(float, float, float, float);
f32 fn_1_AA30(f32, f32, f32, f32); float fn_1_AA30(float, float, float, float);
void fn_1_ABC4(omObjData*, s32, s32, s32, s32); void fn_1_ABC4(omObjData *, s32, s32, s32, s32);
void fn_1_AD14(omObjData*, s32, s32, s32, s32); void fn_1_AD14(omObjData *, s32, s32, s32, s32);
void fn_1_AEDC(M418DllUnkStruct7*, M418DllUnkStruct8*); void fn_1_AEDC(M418DllUnkStruct7 *, M418DllUnkStruct8 *);
s32 fn_1_AF38(M418DllUnkStruct7*); s32 fn_1_AF38(M418DllUnkStruct7 *);
s32 fn_1_B034(M418DllUnkStruct7*, s32); s32 fn_1_B034(M418DllUnkStruct7 *, s32);
s32 fn_1_B0C8(M418DllUnkStruct7*, s32); s32 fn_1_B0C8(M418DllUnkStruct7 *, s32);
void fn_1_B104(M418DllUnkStruct*, Vec, Vec); void fn_1_B104(M418DllUnkStruct *, Vec, Vec);
void fn_1_B41C(M418DllUnkStruct*); void fn_1_B41C(M418DllUnkStruct *);
void fn_1_B458(M418DllUnkStruct*); void fn_1_B458(M418DllUnkStruct *);
void fn_1_BEAC(M418DllUnkStruct*, M418DllUnkStruct*, f32, f32, f32); void fn_1_BEAC(M418DllUnkStruct *, M418DllUnkStruct *, float, float, float);
void fn_1_CBF8(M418DllUnkStruct*, M418DllUnkStruct*, f32, f32, f32); void fn_1_CBF8(M418DllUnkStruct *, M418DllUnkStruct *, float, float, float);
void fn_1_DC10(M418DllUnkStruct*, M418DllUnkStruct*, f32, f32, f32); void fn_1_DC10(M418DllUnkStruct *, M418DllUnkStruct *, float, float, float);
#endif #endif

View file

@ -5,11 +5,11 @@
typedef struct _M424DllMainStruct { typedef struct _M424DllMainStruct {
Vec rot; Vec rot;
Vec center; Vec center;
f32 zoom; float zoom;
} M424DllMainStruct; // sizeof 1C } M424DllMainStruct; // sizeof 1C
typedef struct _M424DllBallStruct2 { typedef struct _M424DllBallStruct2 {
omObjData* unk0; omObjData *unk0;
u8 unk4; u8 unk4;
u8 unk5; u8 unk5;
u8 unk6; u8 unk6;
@ -31,18 +31,18 @@ extern M424DllBallStruct2 lbl_1_bss_60[9];
extern u8 lbl_1_bss_58; extern u8 lbl_1_bss_58;
extern s16 lbl_1_bss_24[4]; extern s16 lbl_1_bss_24[4];
f32 fn_1_1358(f32, f32); float fn_1_1358(float, float);
f32 fn_1_1470(f32, f32, f32); float fn_1_1470(float, float, float);
omObjData* fn_1_1AB8(Process*); omObjData *fn_1_1AB8(Process *);
void fn_1_1B8C(void); void fn_1_1B8C(void);
f32 fn_1_213C(void); float fn_1_213C(void);
void fn_1_252C(f32, s32); void fn_1_252C(float, s32);
void fn_1_2670(s32, s32); void fn_1_2670(s32, s32);
void fn_1_2720(Process*); void fn_1_2720(Process *);
void fn_1_2880(void); void fn_1_2880(void);
Vec* fn_1_8A00(u8); Vec *fn_1_8A00(u8);
s32 fn_1_8A2C(void); s32 fn_1_8A2C(void);
omObjData* fn_1_93F0(Process*); omObjData *fn_1_93F0(Process *);
void fn_1_94A4(void); void fn_1_94A4(void);
s32 fn_1_B804(void); s32 fn_1_B804(void);
s32 fn_1_B888(void); s32 fn_1_B888(void);

View file

@ -21,9 +21,9 @@ void fn_1_EC54(void);
s32 fn_1_10FE8(s32 arg0, s32 *arg1); s32 fn_1_10FE8(s32 arg0, s32 *arg1);
void fn_1_110E8(s32, s32 *); void fn_1_110E8(s32, s32 *);
void fn_1_111C0(s32, s32 *); void fn_1_111C0(s32, s32 *);
void fn_1_11298(f32); void fn_1_11298(float);
s32 fn_1_113F0(s32); s32 fn_1_113F0(s32);
f32 fn_1_168FC(f32, f32, f32); float fn_1_168FC(float, float, float);
s32 fn_1_15F10(Vec arg0, Vec arg1, s32 arg2, s32 arg3, s32 arg4); s32 fn_1_15F10(Vec arg0, Vec arg1, s32 arg2, s32 arg3, s32 arg4);
s32 fn_1_15FD0(Vec arg0, float arg8, s32 arg1, s32 arg2, s32 arg3); s32 fn_1_15FD0(Vec arg0, float arg8, s32 arg1, s32 arg2, s32 arg3);

View file

@ -22,14 +22,14 @@ typedef struct M438UnkSubStruct {
s8 unk_00; s8 unk_00;
s8 unk_01; s8 unk_01;
char unk02[0x2]; char unk02[0x2];
f32 unk_04; float unk_04;
f32 unk_08; float unk_08;
f32 unk_0C; float unk_0C;
f32 unk_10; float unk_10;
f32 unk_14; float unk_14;
f32 unk_18; float unk_18;
f32 unk_1C; float unk_1C;
f32 unk_20; float unk_20;
u8 unk_24; u8 unk_24;
float unk_28; float unk_28;
float unk_2C; float unk_2C;
@ -47,13 +47,13 @@ typedef struct M438UnkStruct {
u8 unk_34; u8 unk_34;
u32 unk_38; u32 unk_38;
s16 unk_3C; s16 unk_3C;
void* unk_40; void *unk_40;
Vec* unk_44; Vec *unk_44;
GXColor* unk_48; GXColor *unk_48;
Vec* unk_4C; Vec *unk_4C;
GXColor unk_50; GXColor unk_50;
GXColor unk_54; GXColor unk_54;
M438UnkSubStruct* unk_58; M438UnkSubStruct *unk_58;
u8 unk_5C; u8 unk_5C;
char unk5D[0x3]; char unk5D[0x3];
Vec unk_60; Vec unk_60;
@ -90,17 +90,17 @@ typedef struct M438UnkStruct2 {
Vec unk_0C; Vec unk_0C;
Vec unk_18; Vec unk_18;
Vec unk_24; Vec unk_24;
void (*unk_30)(struct M438UnkStruct2*); void (*unk_30)(struct M438UnkStruct2 *);
s16* unk_34; s16 *unk_34;
char unk_38[0x4]; char unk_38[0x4];
M438UnkStruct *unk_3C; M438UnkStruct *unk_3C;
char unk40[0x8]; char unk40[0x8];
s16 unk_48; s16 unk_48;
void* unk_4C; void *unk_4C;
Vec* unk_50; Vec *unk_50;
GXColor* unk_54; GXColor *unk_54;
Vec* unk_58; Vec *unk_58;
M438UnkSubStruct* unk_5C; M438UnkSubStruct *unk_5C;
u8 unk_60; u8 unk_60;
char unk61[0x3]; char unk61[0x3];
Vec unk_64; Vec unk_64;
@ -121,7 +121,7 @@ typedef struct M438UnkStruct2 {
} M438UnkStruct2; /* size = 0xBC */ } M438UnkStruct2; /* size = 0xBC */
typedef struct M438UnkStruct3 { typedef struct M438UnkStruct3 {
AnimData* unk_00; AnimData *unk_00;
s16 unk_04; s16 unk_04;
s16 unk_06; s16 unk_06;
u32 unk_08; u32 unk_08;
@ -133,10 +133,10 @@ typedef struct M438UnkStruct3 {
s16 unk_4E; s16 unk_4E;
s16 unk_50; s16 unk_50;
char unk52[0x2]; char unk52[0x2];
f32 unk_54; float unk_54;
f32 unk_58; float unk_58;
f32 unk_5C; float unk_5C;
f32 unk_60; float unk_60;
} M438UnkStruct3; /* size = 0x64 */ } M438UnkStruct3; /* size = 0x64 */
typedef struct M438StructBssDE4 { typedef struct M438StructBssDE4 {

View file

@ -10,12 +10,12 @@
extern s32 rand8(void); extern s32 rand8(void);
////// TYPES ////// ////// TYPES //////
typedef void (*m440Func5)(ModelData*, struct _unkStruct5*, Mtx); typedef void (*m440Func5)(ModelData *, struct _unkStruct5 *, Mtx);
typedef void (*m440Func6)(struct _unkStruct6*); typedef void (*m440Func6)(struct _unkStruct6 *);
typedef void (*m440Func14)(struct _unkStruct14*); typedef void (*m440Func14)(struct _unkStruct14 *);
typedef struct _unkStruct { typedef struct _unkStruct {
f32 zoom; float zoom;
Vec center; Vec center;
Vec rot; Vec rot;
} unkStruct; } unkStruct;
@ -30,37 +30,37 @@ typedef struct _unkStruct2 {
char unk10[0xC]; char unk10[0xC];
s16 unk1C; s16 unk1C;
char unk20[0x4]; char unk20[0x4];
f32 unk24; float unk24;
char unk28[0x4]; char unk28[0x4];
s16 unk2C; s16 unk2C;
s16 unk2E; s16 unk2E;
f32 unk30; float unk30;
} unkStruct2; } unkStruct2;
typedef struct _unkStruct3 { typedef struct _unkStruct3 {
char unk0[0x34]; char unk0[0x34];
f32 unk34; float unk34;
char unk38[0x8]; char unk38[0x8];
f32 unk40; float unk40;
} unkStruct3; } unkStruct3;
typedef struct _unkStruct4 { typedef struct _unkStruct4 {
Vec unk0; Vec unk0;
char unkC[0xC]; char unkC[0xC];
f32 unk18; float unk18;
f32 unk1C; float unk1C;
char unk20[0x4]; char unk20[0x4];
f32 unk24; float unk24;
f32 unk28; float unk28;
f32 unk2C; float unk2C;
f32 unk30; float unk30;
s16 unk34; s16 unk34;
s16 unk36; s16 unk36;
char unk38[0x4]; char unk38[0x4];
s32 unk3C; s32 unk3C;
s16 unk40; s16 unk40;
s16 unk42; s16 unk42;
f32 unk44; float unk44;
Vec unk48; Vec unk48;
Vec unk54; Vec unk54;
s16 unk60; s16 unk60;
@ -73,20 +73,20 @@ typedef struct _unkStruct5 {
u32 unk4; u32 unk4;
u8 unk8; u8 unk8;
m440Func5 unkC; m440Func5 unkC;
AnimData* unk10; AnimData *unk10;
s16 unk14; s16 unk14;
unkStruct4* unk18; unkStruct4 *unk18;
Vec* unk1C; Vec *unk1C;
HsfVector2f* unk20; HsfVector2f *unk20;
GXColor* unk24; GXColor *unk24;
void* unk28; void *unk28;
Vec unk2C; Vec unk2C;
Vec unk38; Vec unk38;
Vec unk44; Vec unk44;
Vec unk50; Vec unk50;
HsfVector2f* unk5C; HsfVector2f *unk5C;
f32 unk60; float unk60;
f32 unk64; float unk64;
} unkStruct5; } unkStruct5;
typedef struct _unkStruct6 { typedef struct _unkStruct6 {
@ -95,16 +95,16 @@ typedef struct _unkStruct6 {
s16 unk4; s16 unk4;
s16 unk6; s16 unk6;
u32 unk8; u32 unk8;
Vec* unkC; Vec *unkC;
Vec* unk10; Vec *unk10;
Vec* unk14; Vec *unk14;
Vec* unk18; Vec *unk18;
HsfVector2f* unk1C; HsfVector2f *unk1C;
s32 unk20; s32 unk20;
struct _unkStruct8* unk24; struct _unkStruct8 *unk24;
HsfMaterial* unk28; HsfMaterial *unk28;
HsfAttribute* unk2C; HsfAttribute *unk2C;
void* unk30; void *unk30;
u32 unk34; u32 unk34;
m440Func6 unk38; m440Func6 unk38;
s16 unk3C; s16 unk3C;
@ -129,7 +129,7 @@ typedef struct _unkStruct8 {
s16 unk1E; s16 unk1E;
unkStruct11 unk20[3]; unkStruct11 unk20[3];
char unk38[0x30]; char unk38[0x30];
f32 unk68[5]; float unk68[5];
Vec unk7C; Vec unk7C;
Vec unk88; Vec unk88;
Vec unk94; Vec unk94;
@ -144,7 +144,7 @@ typedef struct _unkStruct10 {
s16 unk2; s16 unk2;
unkStruct11 unk4[3]; unkStruct11 unk4[3];
u32 unk1C; u32 unk1C;
unkStruct11* unk20; unkStruct11 *unk20;
char unk24[0xC]; char unk24[0xC];
} unkStruct10; // sizeof 0x30 } unkStruct10; // sizeof 0x30
@ -154,41 +154,41 @@ typedef struct _unkStruct12 {
u8 unkB[3]; u8 unkB[3];
u8 unkE[3]; u8 unkE[3];
char unk12[0x2]; char unk12[0x2];
f32 unk14; float unk14;
char unk18[0x4]; char unk18[0x4];
f32 unk1C; float unk1C;
char unk20[0x10]; char unk20[0x10];
u32 unk30; u32 unk30;
u32 unk34; u32 unk34;
s32* unk38; s32 *unk38;
} unkStruct12; } unkStruct12;
typedef struct _unkStruct13 { typedef struct _unkStruct13 {
char unk0[0xA]; char unk0[0xA];
u8 unkA; u8 unkA;
char unkB[0x15]; char unkB[0x15];
f32 unk20; float unk20;
char unk24[0x40]; char unk24[0x40];
u32 unk64; u32 unk64;
u32 unk68; u32 unk68;
char unk6C[0x14]; char unk6C[0x14];
struct _unkStruct15* unk80; struct _unkStruct15 *unk80;
} unkStruct13; // sizeof 0x84 } unkStruct13; // sizeof 0x84
typedef struct _unkStruct14 { typedef struct _unkStruct14 {
s16 unk0; s16 unk0;
s16 unk2; s16 unk2;
char unk4[0x8]; char unk4[0x8];
void* unkC; void *unkC;
char unk10[0x4]; char unk10[0x4];
void* unk14; void *unk14;
unkStruct4* unk18; unkStruct4 *unk18;
void* unk1C; void *unk1C;
char unk20[0x4]; char unk20[0x4];
GXColor* unk24; GXColor *unk24;
unkStruct12* unk28; unkStruct12 *unk28;
unkStruct13* unk2C; unkStruct13 *unk2C;
void* unk30; void *unk30;
u32 unk34; u32 unk34;
m440Func14 unk38; m440Func14 unk38;
s16 unk3C; s16 unk3C;
@ -202,9 +202,9 @@ typedef struct _unkStruct15 {
s16 unkC; s16 unkC;
s16 unkE; s16 unkE;
char unk10[0x4]; char unk10[0x4];
void* unk14; void *unk14;
char unk18[0x4]; char unk18[0x4];
void* unk1C; void *unk1C;
} unkStruct15; } unkStruct15;
// object.c // object.c
@ -226,20 +226,20 @@ typedef struct _unkObjStruct {
Vec unk3C; Vec unk3C;
u8 unk48; u8 unk48;
s16 unk4A; s16 unk4A;
f32 unk4C; float unk4C;
s16 unk50; s16 unk50;
s16 unk52; s16 unk52;
s16 unk54; s16 unk54;
s16 unk56; s16 unk56;
s16 unk58; s16 unk58;
s16 unk5A; s16 unk5A;
f32 unk5C; float unk5C;
s16 unk60; s16 unk60;
s16 unk62; s16 unk62;
char unk64[0x4]; char unk64[0x4];
f32 unk68; float unk68;
f32 unk6C; float unk6C;
f32 unk70; float unk70;
} unkObjStruct; } unkObjStruct;
#if VERSION_NTSC #if VERSION_NTSC
@ -249,11 +249,11 @@ typedef struct _unkObjStruct {
#endif #endif
////// BSS ////// ////// BSS //////
extern omObjData* lbl_1_bss_C0[4]; extern omObjData *lbl_1_bss_C0[4];
////// DATA ////// ////// DATA //////
// main.c // main.c
extern f32 lbl_1_data_0[5]; extern float lbl_1_data_0[5];
extern s16 lbl_1_data_14[6]; extern s16 lbl_1_data_14[6];
// object.c // object.c
extern s16 lbl_1_data_1D8; extern s16 lbl_1_data_1D8;
@ -261,14 +261,14 @@ extern s16 lbl_1_data_1D8;
////// FUNCTIONS ////// ////// FUNCTIONS //////
// main.c // main.c
void ObjectSetup(void); void ObjectSetup(void);
void fn_1_3C4(omObjData* object); void fn_1_3C4(omObjData *object);
void fn_1_434(omObjData* object); void fn_1_434(omObjData *object);
s32 fn_1_4A4(void); s32 fn_1_4A4(void);
s32 fn_1_6C8(void); s32 fn_1_6C8(void);
void fn_1_8F0(omObjData* object); void fn_1_8F0(omObjData *object);
void fn_1_AE0(omObjData* object); void fn_1_AE0(omObjData *object);
u8 fn_1_E14(omObjData* object); u8 fn_1_E14(omObjData *object);
u8 fn_1_1138(omObjData* object); u8 fn_1_1138(omObjData *object);
void fn_1_16D8(void); void fn_1_16D8(void);
void fn_1_1708(void); void fn_1_1708(void);
void fn_1_1768(void); void fn_1_1768(void);
@ -280,82 +280,82 @@ void fn_1_18E0(void);
u8 fn_1_1954(void); u8 fn_1_1954(void);
void fn_1_19B0(void); void fn_1_19B0(void);
void fn_1_1CAC(void); void fn_1_1CAC(void);
void fn_1_2240(ModelData* data, unkStruct5*, Mtx); void fn_1_2240(ModelData *data, unkStruct5 *, Mtx);
u16 fn_1_23E4(u16); u16 fn_1_23E4(u16);
void fn_1_2428(u16, u16); void fn_1_2428(u16, u16);
void fn_1_2470(omObjData* object); void fn_1_2470(omObjData *object);
void fn_1_2A74(omObjData* object); void fn_1_2A74(omObjData *object);
void fn_1_2AB4(omObjData* object); void fn_1_2AB4(omObjData *object);
void fn_1_2B04(omObjData* object); void fn_1_2B04(omObjData *object);
void fn_1_2CA8(omObjData* object); void fn_1_2CA8(omObjData *object);
void fn_1_2D28(omObjData* object); void fn_1_2D28(omObjData *object);
void fn_1_33D4(omObjData* object); void fn_1_33D4(omObjData *object);
void fn_1_3DD8(omObjData* object); void fn_1_3DD8(omObjData *object);
void fn_1_4558(omObjData* object); void fn_1_4558(omObjData *object);
void fn_1_45BC(omObjData* object); void fn_1_45BC(omObjData *object);
void fn_1_4660(omObjData* object); void fn_1_4660(omObjData *object);
void fn_1_46E0(omObjData* object); void fn_1_46E0(omObjData *object);
void fn_1_4A20(omObjData* object); void fn_1_4A20(omObjData *object);
void fn_1_4B44(omObjData* object); void fn_1_4B44(omObjData *object);
void fn_1_4E00(s16, f32); void fn_1_4E00(s16, float);
s16 fn_1_4E2C(void); s16 fn_1_4E2C(void);
s16 fn_1_4E54(s16); s16 fn_1_4E54(s16);
u16 fn_1_4EA8(u16); u16 fn_1_4EA8(u16);
void fn_1_4EEC(u16, u16); void fn_1_4EEC(u16, u16);
void fn_1_4F34(unkStruct6*); void fn_1_4F34(unkStruct6 *);
void fn_1_5010(unkStruct6*, Vec*, f32); void fn_1_5010(unkStruct6 *, Vec *, float);
void fn_1_57B4(unkStruct6*); void fn_1_57B4(unkStruct6 *);
void fn_1_5C2C(s16, HsfObject*, unkStruct6*, u16); void fn_1_5C2C(s16, HsfObject *, unkStruct6 *, u16);
void fn_1_6554(unkStruct6*, HsfObject*); void fn_1_6554(unkStruct6 *, HsfObject *);
void fn_1_6B58(unkStruct6*, HsfObject*); void fn_1_6B58(unkStruct6 *, HsfObject *);
void fn_1_71FC(unkStruct6*, Vec*, s16, Vec); void fn_1_71FC(unkStruct6 *, Vec *, s16, Vec);
void fn_1_7934(unkStruct6*, unkStruct8*, Vec*); void fn_1_7934(unkStruct6 *, unkStruct8 *, Vec *);
void fn_1_7D60(unkStruct15*, unkStruct13*, s16); void fn_1_7D60(unkStruct15 *, unkStruct13 *, s16);
void fn_1_806C(ModelData*, Mtx); void fn_1_806C(ModelData *, Mtx);
void fn_1_8470(unkStruct12*, unkStruct13*); void fn_1_8470(unkStruct12 *, unkStruct13 *);
void fn_1_8AC4(Mtx); void fn_1_8AC4(Mtx);
void fn_1_8D1C(void); void fn_1_8D1C(void);
void fn_1_91A4(Vec*, Vec*, Vec*, f32[5]); void fn_1_91A4(Vec *, Vec *, Vec *, float[5]);
f32 fn_1_927C(f32, f32, f32); float fn_1_927C(float, float, float);
void fn_1_9344(Mtx, Mtx); void fn_1_9344(Mtx, Mtx);
f32 fn_1_93C0(f32, f32, f32); float fn_1_93C0(float, float, float);
f32 fn_1_93D0(f32, f32, f32, f32); float fn_1_93D0(float, float, float, float);
unkStruct4* fn_1_942C(s16, Vec*, Vec*, f32, GXColor*); unkStruct4 *fn_1_942C(s16, Vec *, Vec *, float, GXColor *);
s16 fn_1_956C(AnimData*, s16, f32, s16, s16); s16 fn_1_956C(AnimData *, s16, float, s16, s16);
void fn_1_9AB0(s16); void fn_1_9AB0(s16);
unkStruct5* fn_1_9B10(s16); unkStruct5 *fn_1_9B10(s16);
unkStruct4* fn_1_9B3C(s16, s16); unkStruct4 *fn_1_9B3C(s16, s16);
void fn_1_9B94(s16, m440Func5); void fn_1_9B94(s16, m440Func5);
void fn_1_9BCC(s16, u8); void fn_1_9BCC(s16, u8);
void fn_1_9C04(ModelData*, Mtx); void fn_1_9C04(ModelData *, Mtx);
void fn_1_A1B8(HsfVector2f*, s16, s16, f32, f32); void fn_1_A1B8(HsfVector2f *, s16, s16, float, float);
void fn_1_A284(HsfVector2f*, HsfVector2f*, s16, f32, f32); void fn_1_A284(HsfVector2f *, HsfVector2f *, s16, float, float);
void fn_1_A328(Vec*, Vec*, Vec*, s16); void fn_1_A328(Vec *, Vec *, Vec *, s16);
void fn_1_A390(ModelData*, Mtx); void fn_1_A390(ModelData *, Mtx);
void fn_1_AA94(void); void fn_1_AA94(void);
// object.c // object.c
void fn_1_AE08(Process*); void fn_1_AE08(Process *);
void fn_1_AEE4(omObjData*); void fn_1_AEE4(omObjData *);
void fn_1_B17C(omObjData*); void fn_1_B17C(omObjData *);
void fn_1_B180(omObjData*); void fn_1_B180(omObjData *);
void fn_1_B3A4(omObjData*); void fn_1_B3A4(omObjData *);
void fn_1_B884(omObjData*, unkObjStruct*); void fn_1_B884(omObjData *, unkObjStruct *);
void fn_1_C1D4(omObjData*, unkObjStruct*); void fn_1_C1D4(omObjData *, unkObjStruct *);
void fn_1_C944(omObjData*, unkObjStruct*); void fn_1_C944(omObjData *, unkObjStruct *);
s16 fn_1_CFAC(unkObjStruct*, u8); s16 fn_1_CFAC(unkObjStruct *, u8);
void fn_1_D24C(unkObjStruct*, f32, f32); void fn_1_D24C(unkObjStruct *, float, float);
void fn_1_D34C(omObjData*, unkObjStruct*); void fn_1_D34C(omObjData *, unkObjStruct *);
void fn_1_D7F8(omObjData*, unkObjStruct*); void fn_1_D7F8(omObjData *, unkObjStruct *);
void fn_1_E034(omObjData*, unkObjStruct*); void fn_1_E034(omObjData *, unkObjStruct *);
u8 fn_1_E8AC(omObjData*, unkObjStruct*); u8 fn_1_E8AC(omObjData *, unkObjStruct *);
s32 fn_1_ED88(omObjData*, s16, u32); s32 fn_1_ED88(omObjData *, s16, u32);
void fn_1_EE78(void); void fn_1_EE78(void);
void fn_1_EF50(void); void fn_1_EF50(void);
s16 fn_1_F0FC(void); s16 fn_1_F0FC(void);
void fn_1_F168(void); void fn_1_F168(void);
void fn_1_F228(void); void fn_1_F228(void);
u16 fn_1_F4C0(unkObjStruct*, u16); u16 fn_1_F4C0(unkObjStruct *, u16);
void fn_1_F4D4(unkObjStruct*, u16, u16); void fn_1_F4D4(unkObjStruct *, u16, u16);
s32 fn_1_F4FC(s32); s32 fn_1_F4FC(s32);
#endif #endif

View file

@ -3,8 +3,9 @@
#include "dolphin/types.h" #include "dolphin/types.h"
#include "game/process.h"
#include "game/object.h" #include "game/object.h"
#include "game/process.h"
////// TYPES ////// ////// TYPES //////
typedef struct _unkStruct { typedef struct _unkStruct {
@ -17,26 +18,26 @@ typedef struct _unkStruct {
s32 unk14; s32 unk14;
s32 unk18; s32 unk18;
s32 unk1C; s32 unk1C;
struct _unkStruct6* unk20; struct _unkStruct6 *unk20;
struct _unkStruct9* unk24; struct _unkStruct9 *unk24;
struct _unkStruct5* unk28; struct _unkStruct5 *unk28;
struct _unkStruct8* unk2C[2]; struct _unkStruct8 *unk2C[2];
struct _unkStruct4* unk34; struct _unkStruct4 *unk34;
struct _unkStruct4* unk38[23]; struct _unkStruct4 *unk38[23];
s32 unk94; s32 unk94;
Process* unk98; Process *unk98;
} unkStruct; } unkStruct;
typedef struct _unkStruct2 { typedef struct _unkStruct2 {
void** unk0; void **unk0;
s32 unk4; s32 unk4;
s32 unk8; s32 unk8;
} unkStruct2; } unkStruct2;
typedef struct _unkStruct3 { typedef struct _unkStruct3 {
void* unk0; void *unk0;
struct _unkStruct3* unk4; struct _unkStruct3 *unk4;
struct _unkStruct3* unk8; struct _unkStruct3 *unk8;
} unkStruct3; } unkStruct3;
typedef struct _unkStruct4 { typedef struct _unkStruct4 {
@ -52,9 +53,9 @@ typedef struct _unkStruct4 {
Vec unk34; Vec unk34;
Vec unk40; Vec unk40;
Vec unk4C; Vec unk4C;
f32 unk58; float unk58;
f32 unk5C; float unk5C;
f32 unk60; float unk60;
s32 unk64; s32 unk64;
s32 unk68; s32 unk68;
s32 unk6C; s32 unk6C;
@ -62,24 +63,24 @@ typedef struct _unkStruct4 {
s32 unk74; s32 unk74;
s32 unk78; s32 unk78;
s32 unk7C; s32 unk7C;
f32 unk80; float unk80;
f32 unk84; float unk84;
f32 unk88; float unk88;
f32 unk8C; float unk8C;
f32 unk90; float unk90;
f32 unk94; float unk94;
} unkStruct4; } unkStruct4;
typedef struct _unkStruct5 { typedef struct _unkStruct5 {
unkStruct2* unk0; unkStruct2 *unk0;
Vec unk4; Vec unk4;
} unkStruct5; } unkStruct5;
typedef struct _unkStruct6 { typedef struct _unkStruct6 {
struct _unkStruct7* unk0; struct _unkStruct7 *unk0;
s16 unk4; s16 unk4;
s16 unk6; s16 unk6;
unkStruct4* unk8[21]; unkStruct4 *unk8[21];
s32 unk5C; s32 unk5C;
s32 unk60; s32 unk60;
s32 unk64; s32 unk64;
@ -100,16 +101,16 @@ typedef struct _unkStruct7 {
Vec unk20; Vec unk20;
Vec unk2C; Vec unk2C;
Vec unk38; Vec unk38;
f32 unk44; float unk44;
u8 unk48; u8 unk48;
f32 unk4C; float unk4C;
f32 unk50; float unk50;
} unkStruct7; } unkStruct7;
typedef struct _unkStruct8 { typedef struct _unkStruct8 {
s32 unk0; s32 unk0;
unkStruct6* unk4; unkStruct6 *unk4;
unkStruct7* unk8; unkStruct7 *unk8;
s32 unkC; s32 unkC;
s32 unk10; s32 unk10;
s32 unk14; s32 unk14;
@ -118,13 +119,13 @@ typedef struct _unkStruct8 {
s32 unk20; s32 unk20;
s32 unk24; s32 unk24;
s32 unk28; s32 unk28;
unkStruct4* unk2C[3]; unkStruct4 *unk2C[3];
s32 unk38; s32 unk38;
s16 unk3C[2]; s16 unk3C[2];
s16 unk40[4]; s16 unk40[4];
Vec unk48; Vec unk48;
Vec unk54; Vec unk54;
f32 unk60; float unk60;
u8 unk64; u8 unk64;
u8 unk65; u8 unk65;
u8 unk66; u8 unk66;
@ -141,10 +142,10 @@ typedef struct _unkStruct8 {
Vec unk9C; Vec unk9C;
Vec unkA8; Vec unkA8;
s32 unkB4; s32 unkB4;
f32 unkB8; float unkB8;
f32 unkBC; float unkBC;
f32 unkC0; float unkC0;
f32 unkC4; float unkC4;
s32 unkC8; s32 unkC8;
} unkStruct8; } unkStruct8;
@ -152,8 +153,8 @@ typedef struct _unkStruct9 {
s16 unk0[5]; s16 unk0[5];
s16 unkA[2]; s16 unkA[2];
s16 unkE; s16 unkE;
f32 unk10; float unk10;
f32 unk14; float unk14;
s32 unk18; s32 unk18;
s32 unk1C; s32 unk1C;
s32 unk20; s32 unk20;
@ -169,141 +170,141 @@ typedef struct _unkStruct10 {
} unkStruct10; } unkStruct10;
typedef void (*m446Func)(s32); typedef void (*m446Func)(s32);
typedef void (*m446Func1)(unkStruct*); typedef void (*m446Func1)(unkStruct *);
typedef void (*m446Func4)(unkStruct4*); typedef void (*m446Func4)(unkStruct4 *);
typedef void (*m446Func8)(unkStruct8*); typedef void (*m446Func8)(unkStruct8 *);
////// PROTOTYPES ////// ////// PROTOTYPES //////
// main.c // main.c
void ObjectSetup(void); void ObjectSetup(void);
void fn_1_13C(omObjData*); void fn_1_13C(omObjData *);
unkStruct* m446FlowCreate(void); unkStruct *m446FlowCreate(void);
void fn_1_3FC(unkStruct*); void fn_1_3FC(unkStruct *);
void fn_1_4B4(unkStruct*); void fn_1_4B4(unkStruct *);
void fn_1_53C(unkStruct*); void fn_1_53C(unkStruct *);
void fn_1_958(unkStruct*); void fn_1_958(unkStruct *);
void fn_1_B78(unkStruct*); void fn_1_B78(unkStruct *);
void fn_1_C0C(unkStruct*); void fn_1_C0C(unkStruct *);
void fn_1_CA0(unkStruct*); void fn_1_CA0(unkStruct *);
s32 fn_1_17FC(unkStruct*); s32 fn_1_17FC(unkStruct *);
void fn_1_183C(unkStruct*); void fn_1_183C(unkStruct *);
void fn_1_1874(unkStruct*); void fn_1_1874(unkStruct *);
void fn_1_18B0(unkStruct*); void fn_1_18B0(unkStruct *);
void fn_1_19D4(void); void fn_1_19D4(void);
// card.c // card.c
unkStruct2* fn_1_1C64(s32); unkStruct2 *fn_1_1C64(s32);
void fn_1_1CF8(unkStruct2*); void fn_1_1CF8(unkStruct2 *);
s32 fn_1_1D30(unkStruct2*, void*); s32 fn_1_1D30(unkStruct2 *, void *);
s32 fn_1_1D6C(unkStruct2*, unkStruct4**); s32 fn_1_1D6C(unkStruct2 *, unkStruct4 **);
s32 fn_1_1DA8(unkStruct2*, void**); s32 fn_1_1DA8(unkStruct2 *, void **);
BOOL fn_1_1DDC(unkStruct2*); BOOL fn_1_1DDC(unkStruct2 *);
s32 fn_1_1DEC(unkStruct2*); s32 fn_1_1DEC(unkStruct2 *);
unkStruct3* fn_1_1DF4(void*); unkStruct3 *fn_1_1DF4(void *);
void fn_1_1E5C(unkStruct3*); void fn_1_1E5C(unkStruct3 *);
void fn_1_1E84(unkStruct3**); void fn_1_1E84(unkStruct3 **);
void fn_1_1EC8(unkStruct3*, unkStruct3*); void fn_1_1EC8(unkStruct3 *, unkStruct3 *);
void fn_1_1F04(unkStruct3*); void fn_1_1F04(unkStruct3 *);
void fn_1_1F38(u8*, u8*, s32); void fn_1_1F38(u8 *, u8 *, s32);
void fn_1_1F84(u8*, s8, s32); void fn_1_1F84(u8 *, s8, s32);
void fn_1_1FC0(u8*, s32); void fn_1_1FC0(u8 *, s32);
s32 fn_1_1FFC(s8*, s8*, s32); s32 fn_1_1FFC(s8 *, s8 *, s32);
s32 fn_1_2064(void); s32 fn_1_2064(void);
void fn_1_207C(void); void fn_1_207C(void);
void fn_1_20D4(void); void fn_1_20D4(void);
unkStruct4* m446CardCreate(s32); unkStruct4 *m446CardCreate(s32);
void fn_1_2688(unkStruct4*); void fn_1_2688(unkStruct4 *);
void fn_1_272C(unkStruct4*); void fn_1_272C(unkStruct4 *);
void fn_1_2794(unkStruct4*); void fn_1_2794(unkStruct4 *);
void fn_1_27FC(unkStruct4*, Vec*, s32); void fn_1_27FC(unkStruct4 *, Vec *, s32);
void fn_1_2890(unkStruct4*, Vec*, s32, s32); void fn_1_2890(unkStruct4 *, Vec *, s32, s32);
void fn_1_2928(unkStruct4*, Vec*, s32); void fn_1_2928(unkStruct4 *, Vec *, s32);
void fn_1_29B4(unkStruct4*, f32, s32); void fn_1_29B4(unkStruct4 *, float, s32);
void fn_1_2A1C(unkStruct4*); void fn_1_2A1C(unkStruct4 *);
void fn_1_2A58(unkStruct4*); void fn_1_2A58(unkStruct4 *);
void fn_1_2A94(unkStruct4*); void fn_1_2A94(unkStruct4 *);
void fn_1_2AA8(unkStruct4*); void fn_1_2AA8(unkStruct4 *);
void fn_1_2D94(unkStruct4*); void fn_1_2D94(unkStruct4 *);
void fn_1_2DA8(unkStruct4*); void fn_1_2DA8(unkStruct4 *);
void fn_1_2EC0(unkStruct4*, s32); void fn_1_2EC0(unkStruct4 *, s32);
void fn_1_2F64(unkStruct4*); void fn_1_2F64(unkStruct4 *);
// deck.c // deck.c
unkStruct5* fn_1_3064(void); unkStruct5 *fn_1_3064(void);
void fn_1_3180(unkStruct2**); void fn_1_3180(unkStruct2 **);
void fn_1_31D8(unkStruct2**, unkStruct4**, s32*, s32); void fn_1_31D8(unkStruct2 **, unkStruct4 **, s32 *, s32);
void fn_1_34A0(unkStruct5*, unkStruct4**, s32, s32); void fn_1_34A0(unkStruct5 *, unkStruct4 **, s32, s32);
s32 m446DeckPushCard(unkStruct5*, unkStruct4*, s32); s32 m446DeckPushCard(unkStruct5 *, unkStruct4 *, s32);
s32 m446DeckPopCard(unkStruct2**, unkStruct4**); s32 m446DeckPopCard(unkStruct2 **, unkStruct4 **);
void fn_1_38B0(unkStruct2**); void fn_1_38B0(unkStruct2 **);
s32 fn_1_38F0(void); s32 fn_1_38F0(void);
// table.c // table.c
s32 fn_1_3924(void); s32 fn_1_3924(void);
void fn_1_393C(void); void fn_1_393C(void);
void fn_1_3994(void); void fn_1_3994(void);
unkStruct6* fn_1_39D0(void); unkStruct6 *fn_1_39D0(void);
void fn_1_3B4C(unkStruct6*); void fn_1_3B4C(unkStruct6 *);
s32 fn_1_3BF0(unkStruct6*, unkStruct4*, s32); s32 fn_1_3BF0(unkStruct6 *, unkStruct4 *, s32);
s32 fn_1_3EB4(unkStruct6*, unkStruct4*, s32); s32 fn_1_3EB4(unkStruct6 *, unkStruct4 *, s32);
s32 fn_1_3FD0(unkStruct6*, s32, unkStruct4**); s32 fn_1_3FD0(unkStruct6 *, s32, unkStruct4 **);
void fn_1_4000(unkStruct6*, s32); void fn_1_4000(unkStruct6 *, s32);
s32 fn_1_4088(unkStruct6*, u8, u8, s32, unkStruct4**, s32); s32 fn_1_4088(unkStruct6 *, u8, u8, s32, unkStruct4 **, s32);
void fn_1_46AC(unkStruct6*); void fn_1_46AC(unkStruct6 *);
void fn_1_46D0(unkStruct6*); void fn_1_46D0(unkStruct6 *);
s32 fn_1_4720(unkStruct6*, s32); s32 fn_1_4720(unkStruct6 *, s32);
void fn_1_4798(unkStruct6*); void fn_1_4798(unkStruct6 *);
// player.c // player.c
s32 fn_1_480C(void); s32 fn_1_480C(void);
void fn_1_4824(void); void fn_1_4824(void);
void fn_1_487C(void); void fn_1_487C(void);
unkStruct8* m446PlayerCreate(s32, unkStruct6*); unkStruct8 *m446PlayerCreate(s32, unkStruct6 *);
void fn_1_509C(unkStruct8*); void fn_1_509C(unkStruct8 *);
s32 m446PlayerAppendCard(unkStruct8*, unkStruct4*, s32); s32 m446PlayerAppendCard(unkStruct8 *, unkStruct4 *, s32);
s32 m446PlayerRemoveCard(unkStruct8*, unkStruct4*, s32); s32 m446PlayerRemoveCard(unkStruct8 *, unkStruct4 *, s32);
s32 fn_1_5648(unkStruct8*, s32, unkStruct4**); s32 fn_1_5648(unkStruct8 *, s32, unkStruct4 **);
s32 fn_1_5678(unkStruct8*, unkStruct4**, s32); s32 fn_1_5678(unkStruct8 *, unkStruct4 **, s32);
void fn_1_5B34(unkStruct8*); void fn_1_5B34(unkStruct8 *);
void fn_1_5B48(unkStruct8*); void fn_1_5B48(unkStruct8 *);
void fn_1_5C10(unkStruct8*); void fn_1_5C10(unkStruct8 *);
void fn_1_5C24(unkStruct8*); void fn_1_5C24(unkStruct8 *);
void fn_1_5CEC(unkStruct8*); void fn_1_5CEC(unkStruct8 *);
void fn_1_5D00(unkStruct8*); void fn_1_5D00(unkStruct8 *);
void fn_1_5E54(unkStruct8*, s32); void fn_1_5E54(unkStruct8 *, s32);
void fn_1_6074(unkStruct8*); void fn_1_6074(unkStruct8 *);
void fn_1_6264(unkStruct8*, Vec*, s32); void fn_1_6264(unkStruct8 *, Vec *, s32);
void fn_1_62F0(unkStruct8*, Vec*, s32); void fn_1_62F0(unkStruct8 *, Vec *, s32);
void fn_1_637C(unkStruct8*, s32); void fn_1_637C(unkStruct8 *, s32);
void fn_1_64BC(unkStruct8*, s32, s32); void fn_1_64BC(unkStruct8 *, s32, s32);
void fn_1_6578(unkStruct8*); void fn_1_6578(unkStruct8 *);
void fn_1_6620(unkStruct8*); void fn_1_6620(unkStruct8 *);
// camera.c // camera.c
s32 fn_1_6778(void); s32 fn_1_6778(void);
void fn_1_68D8(void); void fn_1_68D8(void);
void fn_1_68DC(void); void fn_1_68DC(void);
void fn_1_6EA0(Vec*); void fn_1_6EA0(Vec *);
void fn_1_6EC4(Vec*); void fn_1_6EC4(Vec *);
void fn_1_6EE8(f32); void fn_1_6EE8(float);
void fn_1_6EF8(Vec*, Vec*, f32*, s32); void fn_1_6EF8(Vec *, Vec *, float *, s32);
s32 fn_1_708C(void); s32 fn_1_708C(void);
void fn_1_709C(void); void fn_1_709C(void);
// cursor.c // cursor.c
s32 fn_1_72E0(void); s32 fn_1_72E0(void);
void fn_1_72F8(void); void fn_1_72F8(void);
void fn_1_7350(void); void fn_1_7350(void);
unkStruct7* m446CursorCreate(s32); unkStruct7 *m446CursorCreate(s32);
void fn_1_76E8(unkStruct7*); void fn_1_76E8(unkStruct7 *);
void fn_1_77C8(unkStruct7*, u8); void fn_1_77C8(unkStruct7 *, u8);
void fn_1_7884(unkStruct7*); void fn_1_7884(unkStruct7 *);
void fn_1_7908(unkStruct7*, Vec*, s32); void fn_1_7908(unkStruct7 *, Vec *, s32);
void fn_1_799C(unkStruct7*); void fn_1_799C(unkStruct7 *);
void fn_1_7A38(unkStruct7*); void fn_1_7A38(unkStruct7 *);
void fn_1_7AB4(unkStruct7*); void fn_1_7AB4(unkStruct7 *);
// stage.c // stage.c
s32 fn_1_7BF0(void); s32 fn_1_7BF0(void);
void fn_1_7C08(void); void fn_1_7C08(void);
void fn_1_7C60(void); void fn_1_7C60(void);
unkStruct9* m446StageCreate(void); unkStruct9 *m446StageCreate(void);
void fn_1_83F0(unkStruct9*); void fn_1_83F0(unkStruct9 *);
void fn_1_84AC(unkStruct9*); void fn_1_84AC(unkStruct9 *);
void fn_1_852C(unkStruct9*); void fn_1_852C(unkStruct9 *);
void fn_1_860C(unkStruct9*); void fn_1_860C(unkStruct9 *);
#endif #endif

View file

@ -4,16 +4,16 @@
#include "game/object.h" #include "game/object.h"
extern s32 lbl_1_data_0[][4]; extern s32 lbl_1_data_0[][4];
//the prev and current struct member might be vice versa // the prev and current struct member might be vice versa
typedef struct MentDllUnkBss64Struct { typedef struct MentDllUnkBss64Struct {
/* 0x00 */ void (*func)(void); /* 0x00 */ void (*func)(void);
/* 0x04 */ void (*func2)(f32 arg9); /* 0x04 */ void (*func2)(float arg9);
/* 0x08 */ Vec center; /* 0x08 */ Vec center;
/* 0x14 */ Vec prevCenter; /* 0x14 */ Vec prevCenter;
/* 0x20 */ Vec rot; /* 0x20 */ Vec rot;
/* 0x2C */ Vec prevRot; /* 0x2C */ Vec prevRot;
/* 0x38 */ float zoom; /* 0x38 */ float zoom;
/* 0x3C */ f32 prevZoom; /* 0x3C */ float prevZoom;
/* 0x40 */ s32 unk_40; /* 0x40 */ s32 unk_40;
} MentDllUnkBss64Struct; /* size = 0x44 */ } MentDllUnkBss64Struct; /* size = 0x44 */
extern MentDllUnkBss64Struct lbl_1_bss_64; extern MentDllUnkBss64Struct lbl_1_bss_64;
@ -36,10 +36,10 @@ s32 fn_1_1DD8(s32 arg0, s32 arg1, s32 arg2);
s32 fn_1_2154(s32 arg0); s32 fn_1_2154(s32 arg0);
void fn_1_2318(s32 arg0); void fn_1_2318(s32 arg0);
void fn_1_2808(void (*arg0)(void)); void fn_1_2808(void (*arg0)(void));
void fn_1_2844(Process* arg0, void (*arg1)(void)); void fn_1_2844(Process *arg0, void (*arg1)(void));
void fn_1_29A0(MentDllUnkBss64Struct* arg0); void fn_1_29A0(MentDllUnkBss64Struct *arg0);
void fn_1_4138(MentDllUnkBss64Struct* arg0, MentDllUnkBss64Struct* arg1, f32 arg8, f32 arg9, f32 argA); void fn_1_4138(MentDllUnkBss64Struct *arg0, MentDllUnkBss64Struct *arg1, float arg8, float arg9, float argA);
void fn_1_5150(MentDllUnkBss64Struct* arg0, MentDllUnkBss64Struct* arg1, f32 arg8, f32 arg9, f32 argA); void fn_1_5150(MentDllUnkBss64Struct *arg0, MentDllUnkBss64Struct *arg1, float arg8, float arg9, float argA);
void fn_1_5818(omObjData *arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4); void fn_1_5818(omObjData *arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4);
void fn_1_59A0(omObjData *arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4); void fn_1_59A0(omObjData *arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4);
void fn_1_5C08(omObjData *arg0); void fn_1_5C08(omObjData *arg0);

View file

@ -2,8 +2,8 @@
#define REL_MODELTEST_H #define REL_MODELTEST_H
#include "game/hsfdraw.h" #include "game/hsfdraw.h"
#include "game/objsub.h"
#include "game/object.h" #include "game/object.h"
#include "game/objsub.h"
#include "ext_math.h" #include "ext_math.h"
@ -11,36 +11,34 @@
#define US_PER_60TH_SEC (1000000.0f / 60.0f) #define US_PER_60TH_SEC (1000000.0f / 60.0f)
#define US_TO_60TH_SEC(us) ((us) / US_PER_60TH_SEC) #define US_TO_60TH_SEC(us) ((us) / US_PER_60TH_SEC)
#define FB_SIZE(width, height) width * height * 2 #define FB_SIZE(width, height) width *height * 2
// -------------------------------------------------------------------------- // // -------------------------------------------------------------------------- //
typedef struct typedef struct {
{
s16 unk0[7]; s16 unk0[7];
} HuUnkF9C2; } HuUnkF9C2;
typedef struct typedef struct {
{ Vec pos; // 0000
Point3d pos; // 0000 Vec rot; // 000C
Point3d rot; // 000C Vec scale; // 0018
Point3d scale; // 0018
s32 unk24; s32 unk24;
s32 unk28; s32 unk28;
s32 unk2C; s32 unk2C;
HsfObject * obj; // 0030 HsfObject *obj; // 0030
} HuObjUnk; } HuObjUnk;
extern Point3d CRot; extern Vec CRot;
extern Point3d Center; extern Vec Center;
extern f32 CZoom; extern float CZoom;
void fn_1_29C(); void fn_1_29C();
void fn_1_28F8(Point3d * arg0, Point3d * arg1); void fn_1_28F8(Vec *arg0, Vec *arg1);
void fn_1_37DC(omObjData*); void fn_1_37DC(omObjData *);
void fn_1_439C(omObjData*); void fn_1_439C(omObjData *);
void fn_1_46F0(); void fn_1_46F0();
typedef void (omObjFunc2)(struct om_obj_data *); typedef void(omObjFunc2)(struct om_obj_data *);
omObjFunc2 fn_1_F9C; omObjFunc2 fn_1_F9C;
#endif #endif

View file

@ -1,17 +1,16 @@
#ifndef W02DLL #ifndef W02DLL
#define W02DLL #define W02DLL
#include "math.h"
#include "dolphin.h" #include "dolphin.h"
#include "game/process.h"
#include "game/gamework_data.h"
#include "game/board/model.h"
#include "game/board/space.h"
#include "game/board/main.h" #include "game/board/main.h"
#include "game/board/player.h"
#include "game/board/window.h"
#include "game/board/map_object.h" #include "game/board/map_object.h"
#include "game/board/model.h"
#include "game/board/player.h"
#include "game/board/space.h"
#include "game/board/window.h"
#include "game/gamework_data.h"
#include "game/process.h"
#include "math.h"
/* STRUCTS*/ /* STRUCTS*/
typedef struct m02_dice { typedef struct m02_dice {
@ -24,7 +23,7 @@ typedef struct m02_dice {
/* 0x1A */ s16 unk1A; /* 0x1A */ s16 unk1A;
/* 0x1C */ u16 unk1C[3]; /* 0x1C */ u16 unk1C[3];
/* 0x22 */ s16 unk22; /* 0x22 */ s16 unk22;
/* 0x24 */ f32 unk24; /* 0x24 */ float unk24;
/* 0x28 */ s16 unk28; /* 0x28 */ s16 unk28;
/* 0x2A */ u8 unk2A[0x2]; /* 0x2A */ u8 unk2A[0x2];
/* 0x2C */ Process *unk2C; /* 0x2C */ Process *unk2C;
@ -40,11 +39,10 @@ typedef struct m02_dice {
/* 0x88 */ s32 unk88[3]; /* 0x88 */ s32 unk88[3];
/* 0x94 */ s16 unk94; /* 0x94 */ s16 unk94;
/* 0x96 */ s16 unk96; /* 0x96 */ s16 unk96;
/* 0x98 */ f32 unk98; /* 0x98 */ float unk98;
/* 0x9C */ s16 unk9C; /* 0x9C */ s16 unk9C;
} m02GenDice; } m02GenDice;
extern s16 lbl_1_bss_2E; extern s16 lbl_1_bss_2E;
extern s16 lbl_1_bss_2C; extern s16 lbl_1_bss_2C;
extern Vec lbl_1_bss_20; extern Vec lbl_1_bss_20;
@ -61,9 +59,9 @@ extern void fn_1_92C();
extern s32 fn_1_1128(); extern s32 fn_1_1128();
extern void fn_1_121C(u32); extern void fn_1_121C(u32);
void fn_1_1254(m02GenDice* arg0); void fn_1_1254(m02GenDice *arg0);
void fn_1_1518(m02GenDice* arg0); void fn_1_1518(m02GenDice *arg0);
s32 fn_1_17F4(m02GenDice* arg0); s32 fn_1_17F4(m02GenDice *arg0);
// roulette.c // roulette.c
extern void fn_1_D3AC(); extern void fn_1_D3AC();
@ -86,4 +84,4 @@ extern s32 fn_1_C108(s32);
extern void fn_1_CD04(s32); extern void fn_1_CD04(s32);
void fn_1_E41C(void); void fn_1_E41C(void);
#endif //W02DLL #endif // W02DLL

View file

@ -51,7 +51,7 @@ void fn_1_D84(void);
void fn_1_E04(void); void fn_1_E04(void);
void fn_1_E40(void); void fn_1_E40(void);
s32 fn_1_1114(void); s32 fn_1_1114(void);
s32 fn_1_1208(s16, f32, f32); s32 fn_1_1208(s16, float, float);
void fn_1_13D4(void); void fn_1_13D4(void);
void fn_1_14D0(void); void fn_1_14D0(void);
@ -70,64 +70,64 @@ void fn_1_3E8C(void);
void fn_1_3F74(void); void fn_1_3F74(void);
void fn_1_3FD8(void); void fn_1_3FD8(void);
void fn_1_4034(s32); void fn_1_4034(s32);
void fn_1_4EB4(s32, s32, Vec*); void fn_1_4EB4(s32, s32, Vec *);
void fn_1_5648(void); void fn_1_5648(void);
void fn_1_5794(s32, s32, Vec*); void fn_1_5794(s32, s32, Vec *);
void fn_1_6670(void); void fn_1_6670(void);
omObjData* fn_1_66C0(u32, Vec*); omObjData *fn_1_66C0(u32, Vec *);
void fn_1_6914(omObjData*); void fn_1_6914(omObjData *);
void fn_1_62AC(s32, Vec*); void fn_1_62AC(s32, Vec *);
void fn_1_64BC(void); void fn_1_64BC(void);
void fn_1_65E8(void); void fn_1_65E8(void);
void fn_1_6670(void); void fn_1_6670(void);
omObjData* fn_1_66C0(u32, Vec*); omObjData *fn_1_66C0(u32, Vec *);
void fn_1_6914(omObjData*); void fn_1_6914(omObjData *);
void fn_1_6B28(void); void fn_1_6B28(void);
void fn_1_6B7C(void); void fn_1_6B7C(void);
void fn_1_7284(omObjData*); void fn_1_7284(omObjData *);
void fn_1_72E4(void); void fn_1_72E4(void);
void fn_1_7314(void); void fn_1_7314(void);
void fn_1_73C0(void); void fn_1_73C0(void);
void fn_1_74D0(s16[3]); void fn_1_74D0(s16[3]);
void fn_1_77B0(void); void fn_1_77B0(void);
void fn_1_78A0(omObjData*); void fn_1_78A0(omObjData *);
void fn_1_7928(omObjData*); void fn_1_7928(omObjData *);
void fn_1_799C(void); void fn_1_799C(void);
void fn_1_7E4C(omObjData*); void fn_1_7E4C(omObjData *);
void fn_1_7E94(dataCopy*); void fn_1_7E94(dataCopy *);
void fn_1_7F04(omObjData*); void fn_1_7F04(omObjData *);
void fn_1_80D8(omObjData*); void fn_1_80D8(omObjData *);
void fn_1_8410(omObjData*); void fn_1_8410(omObjData *);
void fn_1_850C(omObjData*); void fn_1_850C(omObjData *);
void fn_1_8668(omObjData*); void fn_1_8668(omObjData *);
void fn_1_8798(dataCopy*, s32*, s32*, s32*); void fn_1_8798(dataCopy *, s32 *, s32 *, s32 *);
void* fn_1_8884(void); void *fn_1_8884(void);
void fn_1_88B8(void); void fn_1_88B8(void);
void fn_1_896C(void); void fn_1_896C(void);
void fn_1_91DC(void); void fn_1_91DC(void);
void fn_1_9268(ModelData*, ParticleData*, f32[3][4]); void fn_1_9268(ModelData *, ParticleData *, float[3][4]);
void fn_1_9680(void); void fn_1_9680(void);
void fn_1_96B4(void); void fn_1_96B4(void);
void fn_1_9760(void); void fn_1_9760(void);
void fn_1_97AC(void); void fn_1_97AC(void);
void fn_1_9A68(omObjData*); void fn_1_9A68(omObjData *);
void fn_1_9AC0(void); void fn_1_9AC0(void);
void fn_1_9AF0(void); void fn_1_9AF0(void);
void fn_1_9B74(void); void fn_1_9B74(void);
void fn_1_9C24(omObjData*); void fn_1_9C24(omObjData *);
void fn_1_9C98(dataCopy2*); void fn_1_9C98(dataCopy2 *);
void fn_1_9D0C(omObjData*); void fn_1_9D0C(omObjData *);
void fn_1_9F24(omObjData*); void fn_1_9F24(omObjData *);
void fn_1_A224(omObjData*); void fn_1_A224(omObjData *);
void fn_1_A4F8(omObjData*); void fn_1_A4F8(omObjData *);
void fn_1_A5B0(omObjData*); void fn_1_A5B0(omObjData *);
void fn_1_A990(omObjData*); void fn_1_A990(omObjData *);
void fn_1_AB24(void); void fn_1_AB24(void);
void fn_1_B214(omObjData*); void fn_1_B214(omObjData *);
void fn_1_B2B0(omObjData*, u16*, s16*); void fn_1_B2B0(omObjData *, u16 *, s16 *);
void fn_1_B3C4(omObjData*); void fn_1_B3C4(omObjData *);
// data // data
extern BoardMapObject lbl_1_data_0[7]; extern BoardMapObject lbl_1_data_0[7];
@ -164,7 +164,7 @@ extern char *lbl_1_data_330[3];
extern s32 lbl_1_data_350[14]; extern s32 lbl_1_data_350[14];
extern s32 lbl_1_data_350[14]; extern s32 lbl_1_data_350[14];
extern s16 lbl_1_data_388[92]; extern s16 lbl_1_data_388[92];
extern f32 lbl_1_data_440[3]; extern float lbl_1_data_440[3];
extern char *lbl_1_data_464[3]; extern char *lbl_1_data_464[3];
extern s32 lbl_1_data_470[3]; extern s32 lbl_1_data_470[3];
@ -179,9 +179,9 @@ extern s16 lbl_1_bss_100;
extern s16 lbl_1_bss_FE; extern s16 lbl_1_bss_FE;
extern s16 lbl_1_bss_D6[20]; extern s16 lbl_1_bss_D6[20];
extern s16 lbl_1_bss_D4; extern s16 lbl_1_bss_D4;
extern omObjData* lbl_1_bss_D0; extern omObjData *lbl_1_bss_D0;
extern omObjData* lbl_1_bss_CC; extern omObjData *lbl_1_bss_CC;
extern omObjData* lbl_1_bss_C8; extern omObjData *lbl_1_bss_C8;
extern s16 lbl_1_bss_C6; extern s16 lbl_1_bss_C6;
extern s16 lbl_1_bss_C4; extern s16 lbl_1_bss_C4;
extern s16 lbl_1_bss_C2; extern s16 lbl_1_bss_C2;
@ -196,13 +196,13 @@ extern s16 lbl_1_bss_A4[3];
extern s16 lbl_1_bss_A2; extern s16 lbl_1_bss_A2;
extern s16 lbl_1_bss_9E[2]; extern s16 lbl_1_bss_9E[2];
extern s16 lbl_1_bss_9C; extern s16 lbl_1_bss_9C;
extern Process* lbl_1_bss_98; extern Process *lbl_1_bss_98;
extern omObjData* lbl_1_bss_94; extern omObjData *lbl_1_bss_94;
extern omObjData* lbl_1_bss_90; extern omObjData *lbl_1_bss_90;
extern omObjData* lbl_1_bss_8C; extern omObjData *lbl_1_bss_8C;
extern s32 lbl_1_bss_88; extern s32 lbl_1_bss_88;
extern s32 lbl_1_bss_7C[3]; extern s32 lbl_1_bss_7C[3];
extern AnimData* lbl_1_bss_78; extern AnimData *lbl_1_bss_78;
extern s16 lbl_1_bss_72[2]; extern s16 lbl_1_bss_72[2];
extern s16 lbl_1_bss_6C[3]; extern s16 lbl_1_bss_6C[3];
@ -221,9 +221,9 @@ extern s16 lbl_1_bss_30[4];
extern s16 lbl_1_bss_28; extern s16 lbl_1_bss_28;
extern s16 lbl_1_bss_14[7]; extern s16 lbl_1_bss_14[7];
extern s32* lbl_1_bss_10; extern s32 *lbl_1_bss_10;
extern s16 lbl_1_bss_8[4]; extern s16 lbl_1_bss_8[4];
extern Process* lbl_1_bss_4; extern Process *lbl_1_bss_4;
extern bitcopy* lbl_1_bss_0; extern bitcopy *lbl_1_bss_0;
#endif #endif

View file

@ -9,7 +9,7 @@
enum { enum {
MAPOBJ_MELON = 0, MAPOBJ_MELON = 0,
MAPOBJ_MAX, MAPOBJ_MAX
}; };
typedef struct w10_board_work { typedef struct w10_board_work {

View file

@ -20,7 +20,7 @@ enum {
TITLE_COPYRIGHT_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 10), TITLE_COPYRIGHT_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 10),
TITLE_CHAR_HSF = DATA_MAKE_NUM(DATADIR_TITLE, 11), TITLE_CHAR_HSF = DATA_MAKE_NUM(DATADIR_TITLE, 11),
TITLE_CUBE_HSF = DATA_MAKE_NUM(DATADIR_TITLE, 12), TITLE_CUBE_HSF = DATA_MAKE_NUM(DATADIR_TITLE, 12),
TITLE_SKY_HSF = DATA_MAKE_NUM(DATADIR_TITLE, 13), TITLE_SKY_HSF = DATA_MAKE_NUM(DATADIR_TITLE, 13)
}; };
#else #else
@ -54,7 +54,7 @@ enum {
TITLE_LANGUAGE_GE_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 25), TITLE_LANGUAGE_GE_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 25),
TITLE_LANGUAGE_FR_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 26), TITLE_LANGUAGE_FR_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 26),
TITLE_LANGUAGE_IT_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 27), TITLE_LANGUAGE_IT_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 27),
TITLE_LANGUAGE_ES_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 28), TITLE_LANGUAGE_ES_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 28)
}; };
#endif #endif

View file

@ -36,7 +36,7 @@ enum {
WIN_CARD_BOX2_ICON_ANM = DATA_MAKE_NUM(DATADIR_WIN, 29), WIN_CARD_BOX2_ICON_ANM = DATA_MAKE_NUM(DATADIR_WIN, 29),
WIN_CARD_BOX3_ICON_ANM = DATA_MAKE_NUM(DATADIR_WIN, 30), WIN_CARD_BOX3_ICON_ANM = DATA_MAKE_NUM(DATADIR_WIN, 30),
WIN_CARD_BANNER_ANM = DATA_MAKE_NUM(DATADIR_WIN, 31), WIN_CARD_BANNER_ANM = DATA_MAKE_NUM(DATADIR_WIN, 31),
WIN_SAVE_BG_ANM = DATA_MAKE_NUM(DATADIR_WIN, 32), WIN_SAVE_BG_ANM = DATA_MAKE_NUM(DATADIR_WIN, 32)
}; };
#endif #endif

View file

@ -5,7 +5,7 @@
typedef enum { typedef enum {
DMTF_POINTSAMPLE, DMTF_POINTSAMPLE,
DMTF_BILERP, DMTF_BILERP
} DMTexFlt; } DMTexFlt;
typedef enum { DM_FT_OPQ, DM_FT_RVS, DM_FT_XLU } DMFontType; typedef enum { DM_FT_OPQ, DM_FT_RVS, DM_FT_XLU } DMFontType;

View file

@ -11,7 +11,7 @@ typedef enum DEMO_STAT_TYPE {
DEMO_STAT_TBW = 6, DEMO_STAT_TBW = 6,
DEMO_STAT_TBP = 7, DEMO_STAT_TBP = 7,
DEMO_STAT_MYC = 8, DEMO_STAT_MYC = 8,
DEMO_STAT_MYR = 9, DEMO_STAT_MYR = 9
} DEMO_STAT_TYPE; } DEMO_STAT_TYPE;
typedef struct DemoStatData { typedef struct DemoStatData {
@ -26,7 +26,7 @@ typedef enum {
DEMO_STAT_BL = 1, DEMO_STAT_BL = 1,
DEMO_STAT_TLD = 2, DEMO_STAT_TLD = 2,
DEMO_STAT_BLD = 3, DEMO_STAT_BLD = 3,
DEMO_STAT_IO = 4, DEMO_STAT_IO = 4
} DEMO_STAT_DISP; } DEMO_STAT_DISP;
extern unsigned char DemoStatEnable; extern unsigned char DemoStatEnable;

View file

@ -23,7 +23,7 @@ typedef u8 GXBool;
typedef enum _GXProjectionType { typedef enum _GXProjectionType {
GX_PERSPECTIVE, GX_PERSPECTIVE,
GX_ORTHOGRAPHIC, GX_ORTHOGRAPHIC
} GXProjectionType; } GXProjectionType;
typedef enum _GXCompare { typedef enum _GXCompare {
@ -34,7 +34,7 @@ typedef enum _GXCompare {
GX_GREATER, GX_GREATER,
GX_NEQUAL, GX_NEQUAL,
GX_GEQUAL, GX_GEQUAL,
GX_ALWAYS, GX_ALWAYS
} GXCompare; } GXCompare;
typedef enum _GXAlphaOp { typedef enum _GXAlphaOp {
@ -42,20 +42,20 @@ typedef enum _GXAlphaOp {
GX_AOP_OR, GX_AOP_OR,
GX_AOP_XOR, GX_AOP_XOR,
GX_AOP_XNOR, GX_AOP_XNOR,
GX_MAX_ALPHAOP, GX_MAX_ALPHAOP
} GXAlphaOp; } GXAlphaOp;
typedef enum _GXZFmt16 { typedef enum _GXZFmt16 {
GX_ZC_LINEAR, GX_ZC_LINEAR,
GX_ZC_NEAR, GX_ZC_NEAR,
GX_ZC_MID, GX_ZC_MID,
GX_ZC_FAR, GX_ZC_FAR
} GXZFmt16; } GXZFmt16;
typedef enum _GXGamma { typedef enum _GXGamma {
GX_GM_1_0, GX_GM_1_0,
GX_GM_1_7, GX_GM_1_7,
GX_GM_2_2, GX_GM_2_2
} GXGamma; } GXGamma;
typedef enum _GXPixelFmt { typedef enum _GXPixelFmt {
@ -66,7 +66,7 @@ typedef enum _GXPixelFmt {
GX_PF_Y8, GX_PF_Y8,
GX_PF_U8, GX_PF_U8,
GX_PF_V8, GX_PF_V8,
GX_PF_YUV420, GX_PF_YUV420
} GXPixelFmt; } GXPixelFmt;
typedef enum _GXPrimitive { typedef enum _GXPrimitive {
@ -76,7 +76,7 @@ typedef enum _GXPrimitive {
GX_TRIANGLEFAN = 0xA0, GX_TRIANGLEFAN = 0xA0,
GX_LINES = 0xA8, GX_LINES = 0xA8,
GX_LINESTRIP = 0xB0, GX_LINESTRIP = 0xB0,
GX_POINTS = 0xB8, GX_POINTS = 0xB8
} GXPrimitive; } GXPrimitive;
typedef enum _GXVtxFmt { typedef enum _GXVtxFmt {
@ -88,7 +88,7 @@ typedef enum _GXVtxFmt {
GX_VTXFMT5, GX_VTXFMT5,
GX_VTXFMT6, GX_VTXFMT6,
GX_VTXFMT7, GX_VTXFMT7,
GX_MAX_VTXFMT, GX_MAX_VTXFMT
} GXVtxFmt; } GXVtxFmt;
typedef enum _GXAttr { typedef enum _GXAttr {
@ -119,7 +119,7 @@ typedef enum _GXAttr {
GX_LIGHT_ARRAY, GX_LIGHT_ARRAY,
GX_VA_NBT, GX_VA_NBT,
GX_VA_MAX_ATTR, GX_VA_MAX_ATTR,
GX_VA_NULL = 0xFF, GX_VA_NULL = 0xFF
} GXAttr; } GXAttr;
#define GX_MAX_VTXDESCLIST_SZ (GX_VA_MAX_ATTR + 1) #define GX_MAX_VTXDESCLIST_SZ (GX_VA_MAX_ATTR + 1)
@ -128,7 +128,7 @@ typedef enum _GXAttrType {
GX_NONE, GX_NONE,
GX_DIRECT, GX_DIRECT,
GX_INDEX8, GX_INDEX8,
GX_INDEX16, GX_INDEX16
} GXAttrType; } GXAttrType;
#define _GX_TF_CTF 0x20 #define _GX_TF_CTF 0x20
@ -164,20 +164,20 @@ typedef enum _GXTexFmt {
GX_CTF_Z8L = 0xA | _GX_TF_ZTF | _GX_TF_CTF, GX_CTF_Z8L = 0xA | _GX_TF_ZTF | _GX_TF_CTF,
GX_CTF_Z16L = 0xC | _GX_TF_ZTF | _GX_TF_CTF, GX_CTF_Z16L = 0xC | _GX_TF_ZTF | _GX_TF_CTF,
GX_TF_A8 = GX_CTF_A8, GX_TF_A8 = GX_CTF_A8
} GXTexFmt; } GXTexFmt;
typedef enum _GXCITexFmt { typedef enum _GXCITexFmt {
GX_TF_C4 = 0x8, GX_TF_C4 = 0x8,
GX_TF_C8 = 0x9, GX_TF_C8 = 0x9,
GX_TF_C14X2 = 0xa, GX_TF_C14X2 = 0xa
} GXCITexFmt; } GXCITexFmt;
typedef enum _GXTexWrapMode { typedef enum _GXTexWrapMode {
GX_CLAMP, GX_CLAMP,
GX_REPEAT, GX_REPEAT,
GX_MIRROR, GX_MIRROR,
GX_MAX_TEXWRAPMODE, GX_MAX_TEXWRAPMODE
} GXTexWrapMode; } GXTexWrapMode;
typedef enum _GXTexFilter { typedef enum _GXTexFilter {
@ -186,14 +186,14 @@ typedef enum _GXTexFilter {
GX_NEAR_MIP_NEAR, GX_NEAR_MIP_NEAR,
GX_LIN_MIP_NEAR, GX_LIN_MIP_NEAR,
GX_NEAR_MIP_LIN, GX_NEAR_MIP_LIN,
GX_LIN_MIP_LIN, GX_LIN_MIP_LIN
} GXTexFilter; } GXTexFilter;
typedef enum _GXAnisotropy { typedef enum _GXAnisotropy {
GX_ANISO_1, GX_ANISO_1,
GX_ANISO_2, GX_ANISO_2,
GX_ANISO_4, GX_ANISO_4,
GX_MAX_ANISOTROPY, GX_MAX_ANISOTROPY
} GXAnisotropy; } GXAnisotropy;
typedef enum _GXTexMapID { typedef enum _GXTexMapID {
@ -207,7 +207,7 @@ typedef enum _GXTexMapID {
GX_TEXMAP7, GX_TEXMAP7,
GX_MAX_TEXMAP, GX_MAX_TEXMAP,
GX_TEXMAP_NULL = 0xFF, GX_TEXMAP_NULL = 0xFF,
GX_TEX_DISABLE = 0x100, GX_TEX_DISABLE = 0x100
} GXTexMapID; } GXTexMapID;
typedef enum _GXTexCoordID { typedef enum _GXTexCoordID {
@ -220,7 +220,7 @@ typedef enum _GXTexCoordID {
GX_TEXCOORD6, GX_TEXCOORD6,
GX_TEXCOORD7, GX_TEXCOORD7,
GX_MAX_TEXCOORD, GX_MAX_TEXCOORD,
GX_TEXCOORD_NULL = 0xFF, GX_TEXCOORD_NULL = 0xFF
} GXTexCoordID; } GXTexCoordID;
typedef enum _GXTevStageID { typedef enum _GXTevStageID {
@ -240,7 +240,7 @@ typedef enum _GXTevStageID {
GX_TEVSTAGE13, GX_TEVSTAGE13,
GX_TEVSTAGE14, GX_TEVSTAGE14,
GX_TEVSTAGE15, GX_TEVSTAGE15,
GX_MAX_TEVSTAGE, GX_MAX_TEVSTAGE
} GXTevStageID; } GXTevStageID;
typedef enum _GXTevMode { typedef enum _GXTevMode {
@ -248,12 +248,12 @@ typedef enum _GXTevMode {
GX_DECAL, GX_DECAL,
GX_BLEND, GX_BLEND,
GX_REPLACE, GX_REPLACE,
GX_PASSCLR, GX_PASSCLR
} GXTevMode; } GXTevMode;
typedef enum _GXTexMtxType { typedef enum _GXTexMtxType {
GX_MTX3x4, GX_MTX3x4,
GX_MTX2x4, GX_MTX2x4
} GXTexMtxType; } GXTexMtxType;
typedef enum _GXTexGenType { typedef enum _GXTexGenType {
@ -267,7 +267,7 @@ typedef enum _GXTexGenType {
GX_TG_BUMP5, GX_TG_BUMP5,
GX_TG_BUMP6, GX_TG_BUMP6,
GX_TG_BUMP7, GX_TG_BUMP7,
GX_TG_SRTG, GX_TG_SRTG
} GXTexGenType; } GXTexGenType;
typedef enum _GXPosNrmMtx { typedef enum _GXPosNrmMtx {
@ -280,7 +280,7 @@ typedef enum _GXPosNrmMtx {
GX_PNMTX6 = 18, GX_PNMTX6 = 18,
GX_PNMTX7 = 21, GX_PNMTX7 = 21,
GX_PNMTX8 = 24, GX_PNMTX8 = 24,
GX_PNMTX9 = 27, GX_PNMTX9 = 27
} GXPosNrmMtx; } GXPosNrmMtx;
typedef enum _GXTexMtx { typedef enum _GXTexMtx {
@ -294,7 +294,7 @@ typedef enum _GXTexMtx {
GX_TEXMTX7 = 51, GX_TEXMTX7 = 51,
GX_TEXMTX8 = 54, GX_TEXMTX8 = 54,
GX_TEXMTX9 = 57, GX_TEXMTX9 = 57,
GX_IDENTITY = 60, GX_IDENTITY = 60
} GXTexMtx; } GXTexMtx;
typedef enum _GXChannelID { typedef enum _GXChannelID {
@ -307,7 +307,7 @@ typedef enum _GXChannelID {
GX_COLOR_ZERO, GX_COLOR_ZERO,
GX_ALPHA_BUMP, GX_ALPHA_BUMP,
GX_ALPHA_BUMPN, GX_ALPHA_BUMPN,
GX_COLOR_NULL = 0xFF, GX_COLOR_NULL = 0xFF
} GXChannelID; } GXChannelID;
typedef enum _GXTexGenSrc { typedef enum _GXTexGenSrc {
@ -332,7 +332,7 @@ typedef enum _GXTexGenSrc {
GX_TG_TEXCOORD6, GX_TG_TEXCOORD6,
GX_TG_COLOR0, GX_TG_COLOR0,
GX_TG_COLOR1, GX_TG_COLOR1,
GX_MAX_TEXGENSRC, GX_MAX_TEXGENSRC
} GXTexGenSrc; } GXTexGenSrc;
typedef enum _GXBlendMode { typedef enum _GXBlendMode {
@ -340,7 +340,7 @@ typedef enum _GXBlendMode {
GX_BM_BLEND, GX_BM_BLEND,
GX_BM_LOGIC, GX_BM_LOGIC,
GX_BM_SUBTRACT, GX_BM_SUBTRACT,
GX_MAX_BLENDMODE, GX_MAX_BLENDMODE
} GXBlendMode; } GXBlendMode;
typedef enum _GXBlendFactor { typedef enum _GXBlendFactor {
@ -353,7 +353,7 @@ typedef enum _GXBlendFactor {
GX_BL_DSTALPHA, GX_BL_DSTALPHA,
GX_BL_INVDSTALPHA, GX_BL_INVDSTALPHA,
GX_BL_DSTCLR = GX_BL_SRCCLR, GX_BL_DSTCLR = GX_BL_SRCCLR,
GX_BL_INVDSTCLR = GX_BL_INVSRCCLR, GX_BL_INVDSTCLR = GX_BL_INVSRCCLR
} GXBlendFactor; } GXBlendFactor;
typedef enum _GXLogicOp { typedef enum _GXLogicOp {
@ -372,7 +372,7 @@ typedef enum _GXLogicOp {
GX_LO_INVCOPY, GX_LO_INVCOPY,
GX_LO_INVOR, GX_LO_INVOR,
GX_LO_NAND, GX_LO_NAND,
GX_LO_SET, GX_LO_SET
} GXLogicOp; } GXLogicOp;
typedef enum _GXCompCnt { typedef enum _GXCompCnt {
@ -384,7 +384,7 @@ typedef enum _GXCompCnt {
GX_CLR_RGB = 0, GX_CLR_RGB = 0,
GX_CLR_RGBA = 1, GX_CLR_RGBA = 1,
GX_TEX_S = 0, GX_TEX_S = 0,
GX_TEX_ST = 1, GX_TEX_ST = 1
} GXCompCnt; } GXCompCnt;
typedef enum _GXCompType { typedef enum _GXCompType {
@ -398,7 +398,7 @@ typedef enum _GXCompType {
GX_RGBX8 = 2, GX_RGBX8 = 2,
GX_RGBA4 = 3, GX_RGBA4 = 3,
GX_RGBA6 = 4, GX_RGBA6 = 4,
GX_RGBA8 = 5, GX_RGBA8 = 5
} GXCompType; } GXCompType;
typedef enum _GXPTTexMtx { typedef enum _GXPTTexMtx {
@ -422,7 +422,7 @@ typedef enum _GXPTTexMtx {
GX_PTTEXMTX17 = 115, GX_PTTEXMTX17 = 115,
GX_PTTEXMTX18 = 118, GX_PTTEXMTX18 = 118,
GX_PTTEXMTX19 = 121, GX_PTTEXMTX19 = 121,
GX_PTIDENTITY = 125, GX_PTIDENTITY = 125
} GXPTTexMtx; } GXPTTexMtx;
typedef enum _GXTevRegID { typedef enum _GXTevRegID {
@ -430,24 +430,24 @@ typedef enum _GXTevRegID {
GX_TEVREG0, GX_TEVREG0,
GX_TEVREG1, GX_TEVREG1,
GX_TEVREG2, GX_TEVREG2,
GX_MAX_TEVREG, GX_MAX_TEVREG
} GXTevRegID; } GXTevRegID;
typedef enum _GXDiffuseFn { typedef enum _GXDiffuseFn {
GX_DF_NONE, GX_DF_NONE,
GX_DF_SIGN, GX_DF_SIGN,
GX_DF_CLAMP, GX_DF_CLAMP
} GXDiffuseFn; } GXDiffuseFn;
typedef enum _GXColorSrc { typedef enum _GXColorSrc {
GX_SRC_REG, GX_SRC_REG,
GX_SRC_VTX, GX_SRC_VTX
} GXColorSrc; } GXColorSrc;
typedef enum _GXAttnFn { typedef enum _GXAttnFn {
GX_AF_SPEC, GX_AF_SPEC,
GX_AF_SPOT, GX_AF_SPOT,
GX_AF_NONE, GX_AF_NONE
} GXAttnFn; } GXAttnFn;
typedef enum _GXLightID { typedef enum _GXLightID {
@ -460,7 +460,7 @@ typedef enum _GXLightID {
GX_LIGHT6 = 0x040, GX_LIGHT6 = 0x040,
GX_LIGHT7 = 0x080, GX_LIGHT7 = 0x080,
GX_MAX_LIGHT = 0x100, GX_MAX_LIGHT = 0x100,
GX_LIGHT_NULL = 0, GX_LIGHT_NULL = 0
} GXLightID; } GXLightID;
typedef enum _GXTexOffset { typedef enum _GXTexOffset {
@ -470,7 +470,7 @@ typedef enum _GXTexOffset {
GX_TO_FOURTH, GX_TO_FOURTH,
GX_TO_HALF, GX_TO_HALF,
GX_TO_ONE, GX_TO_ONE,
GX_MAX_TEXOFFSET, GX_MAX_TEXOFFSET
} GXTexOffset; } GXTexOffset;
typedef enum _GXSpotFn { typedef enum _GXSpotFn {
@ -480,21 +480,21 @@ typedef enum _GXSpotFn {
GX_SP_COS2, GX_SP_COS2,
GX_SP_SHARP, GX_SP_SHARP,
GX_SP_RING1, GX_SP_RING1,
GX_SP_RING2, GX_SP_RING2
} GXSpotFn; } GXSpotFn;
typedef enum _GXDistAttnFn { typedef enum _GXDistAttnFn {
GX_DA_OFF, GX_DA_OFF,
GX_DA_GENTLE, GX_DA_GENTLE,
GX_DA_MEDIUM, GX_DA_MEDIUM,
GX_DA_STEEP, GX_DA_STEEP
} GXDistAttnFn; } GXDistAttnFn;
typedef enum _GXCullMode { typedef enum _GXCullMode {
GX_CULL_NONE, GX_CULL_NONE,
GX_CULL_FRONT, GX_CULL_FRONT,
GX_CULL_BACK, GX_CULL_BACK,
GX_CULL_ALL, GX_CULL_ALL
} GXCullMode; } GXCullMode;
typedef enum _GXTevSwapSel { typedef enum _GXTevSwapSel {
@ -502,14 +502,14 @@ typedef enum _GXTevSwapSel {
GX_TEV_SWAP1, GX_TEV_SWAP1,
GX_TEV_SWAP2, GX_TEV_SWAP2,
GX_TEV_SWAP3, GX_TEV_SWAP3,
GX_MAX_TEVSWAP, GX_MAX_TEVSWAP
} GXTevSwapSel; } GXTevSwapSel;
typedef enum _GXTevColorChan { typedef enum _GXTevColorChan {
GX_CH_RED = 0, GX_CH_RED = 0,
GX_CH_GREEN, GX_CH_GREEN,
GX_CH_BLUE, GX_CH_BLUE,
GX_CH_ALPHA, GX_CH_ALPHA
} GXTevColorChan; } GXTevColorChan;
typedef enum _GXFogType { typedef enum _GXFogType {
@ -528,7 +528,7 @@ typedef enum _GXFogType {
GX_FOG_EXP = GX_FOG_PERSP_EXP, GX_FOG_EXP = GX_FOG_PERSP_EXP,
GX_FOG_EXP2 = GX_FOG_PERSP_EXP2, GX_FOG_EXP2 = GX_FOG_PERSP_EXP2,
GX_FOG_REVEXP = GX_FOG_PERSP_REVEXP, GX_FOG_REVEXP = GX_FOG_PERSP_REVEXP,
GX_FOG_REVEXP2 = GX_FOG_PERSP_REVEXP2, GX_FOG_REVEXP2 = GX_FOG_PERSP_REVEXP2
} GXFogType; } GXFogType;
typedef enum _GXTevColorArg { typedef enum _GXTevColorArg {
@ -547,7 +547,7 @@ typedef enum _GXTevColorArg {
GX_CC_ONE, GX_CC_ONE,
GX_CC_HALF, GX_CC_HALF,
GX_CC_KONST, GX_CC_KONST,
GX_CC_ZERO, GX_CC_ZERO
} GXTevColorArg; } GXTevColorArg;
typedef enum _GXTevAlphaArg { typedef enum _GXTevAlphaArg {
@ -558,7 +558,7 @@ typedef enum _GXTevAlphaArg {
GX_CA_TEXA, GX_CA_TEXA,
GX_CA_RASA, GX_CA_RASA,
GX_CA_KONST, GX_CA_KONST,
GX_CA_ZERO, GX_CA_ZERO
} GXTevAlphaArg; } GXTevAlphaArg;
typedef enum _GXTevOp { typedef enum _GXTevOp {
@ -573,14 +573,14 @@ typedef enum _GXTevOp {
GX_TEV_COMP_RGB8_GT = 14, GX_TEV_COMP_RGB8_GT = 14,
GX_TEV_COMP_RGB8_EQ = 15, GX_TEV_COMP_RGB8_EQ = 15,
GX_TEV_COMP_A8_GT = GX_TEV_COMP_RGB8_GT, GX_TEV_COMP_A8_GT = GX_TEV_COMP_RGB8_GT,
GX_TEV_COMP_A8_EQ = GX_TEV_COMP_RGB8_EQ, GX_TEV_COMP_A8_EQ = GX_TEV_COMP_RGB8_EQ
} GXTevOp; } GXTevOp;
typedef enum _GXTevBias { typedef enum _GXTevBias {
GX_TB_ZERO, GX_TB_ZERO,
GX_TB_ADDHALF, GX_TB_ADDHALF,
GX_TB_SUBHALF, GX_TB_SUBHALF,
GX_MAX_TEVBIAS, GX_MAX_TEVBIAS
} GXTevBias; } GXTevBias;
typedef enum _GXTevScale { typedef enum _GXTevScale {
@ -588,7 +588,7 @@ typedef enum _GXTevScale {
GX_CS_SCALE_2, GX_CS_SCALE_2,
GX_CS_SCALE_4, GX_CS_SCALE_4,
GX_CS_DIVIDE_2, GX_CS_DIVIDE_2,
GX_MAX_TEVSCALE, GX_MAX_TEVSCALE
} GXTevScale; } GXTevScale;
typedef enum _GXTevKColorSel { typedef enum _GXTevKColorSel {
@ -623,7 +623,7 @@ typedef enum _GXTevKColorSel {
GX_TEV_KCSEL_K0_A = 0x1C, GX_TEV_KCSEL_K0_A = 0x1C,
GX_TEV_KCSEL_K1_A = 0x1D, GX_TEV_KCSEL_K1_A = 0x1D,
GX_TEV_KCSEL_K2_A = 0x1E, GX_TEV_KCSEL_K2_A = 0x1E,
GX_TEV_KCSEL_K3_A = 0x1F, GX_TEV_KCSEL_K3_A = 0x1F
} GXTevKColorSel; } GXTevKColorSel;
typedef enum _GXTevKAlphaSel { typedef enum _GXTevKAlphaSel {
@ -654,7 +654,7 @@ typedef enum _GXTevKAlphaSel {
GX_TEV_KASEL_K0_A = 0x1C, GX_TEV_KASEL_K0_A = 0x1C,
GX_TEV_KASEL_K1_A = 0x1D, GX_TEV_KASEL_K1_A = 0x1D,
GX_TEV_KASEL_K2_A = 0x1E, GX_TEV_KASEL_K2_A = 0x1E,
GX_TEV_KASEL_K3_A = 0x1F, GX_TEV_KASEL_K3_A = 0x1F
} GXTevKAlphaSel; } GXTevKAlphaSel;
typedef enum _GXTevKColorID { typedef enum _GXTevKColorID {
@ -662,14 +662,14 @@ typedef enum _GXTevKColorID {
GX_KCOLOR1, GX_KCOLOR1,
GX_KCOLOR2, GX_KCOLOR2,
GX_KCOLOR3, GX_KCOLOR3,
GX_MAX_KCOLOR, GX_MAX_KCOLOR
} GXTevKColorID; } GXTevKColorID;
typedef enum _GXZTexOp { typedef enum _GXZTexOp {
GX_ZT_DISABLE, GX_ZT_DISABLE,
GX_ZT_ADD, GX_ZT_ADD,
GX_ZT_REPLACE, GX_ZT_REPLACE,
GX_MAX_ZTEXOP, GX_MAX_ZTEXO
} GXZTexOp; } GXZTexOp;
typedef enum _GXIndTexFormat { typedef enum _GXIndTexFormat {
@ -677,7 +677,7 @@ typedef enum _GXIndTexFormat {
GX_ITF_5, GX_ITF_5,
GX_ITF_4, GX_ITF_4,
GX_ITF_3, GX_ITF_3,
GX_MAX_ITFORMAT, GX_MAX_ITFORMAT
} GXIndTexFormat; } GXIndTexFormat;
typedef enum _GXIndTexBiasSel { typedef enum _GXIndTexBiasSel {
@ -689,7 +689,7 @@ typedef enum _GXIndTexBiasSel {
GX_ITB_SU, GX_ITB_SU,
GX_ITB_TU, GX_ITB_TU,
GX_ITB_STU, GX_ITB_STU,
GX_MAX_ITBIAS, GX_MAX_ITBIAS
} GXIndTexBiasSel; } GXIndTexBiasSel;
typedef enum _GXIndTexAlphaSel { typedef enum _GXIndTexAlphaSel {
@ -697,7 +697,7 @@ typedef enum _GXIndTexAlphaSel {
GX_ITBA_S, GX_ITBA_S,
GX_ITBA_T, GX_ITBA_T,
GX_ITBA_U, GX_ITBA_U,
GX_MAX_ITBALPHA, GX_MAX_ITBALPHA
} GXIndTexAlphaSel; } GXIndTexAlphaSel;
typedef enum _GXIndTexMtxID { typedef enum _GXIndTexMtxID {
@ -710,7 +710,7 @@ typedef enum _GXIndTexMtxID {
GX_ITM_S2, GX_ITM_S2,
GX_ITM_T0 = 9, GX_ITM_T0 = 9,
GX_ITM_T1, GX_ITM_T1,
GX_ITM_T2, GX_ITM_T2
} GXIndTexMtxID; } GXIndTexMtxID;
typedef enum _GXIndTexWrap { typedef enum _GXIndTexWrap {
@ -721,7 +721,7 @@ typedef enum _GXIndTexWrap {
GX_ITW_32, GX_ITW_32,
GX_ITW_16, GX_ITW_16,
GX_ITW_0, GX_ITW_0,
GX_MAX_ITWRAP, GX_MAX_ITWRAP
} GXIndTexWrap; } GXIndTexWrap;
typedef enum _GXIndTexStageID { typedef enum _GXIndTexStageID {
@ -729,7 +729,7 @@ typedef enum _GXIndTexStageID {
GX_INDTEXSTAGE1, GX_INDTEXSTAGE1,
GX_INDTEXSTAGE2, GX_INDTEXSTAGE2,
GX_INDTEXSTAGE3, GX_INDTEXSTAGE3,
GX_MAX_INDTEXSTAGE, GX_MAX_INDTEXSTAGE
} GXIndTexStageID; } GXIndTexStageID;
typedef enum _GXIndTexScale { typedef enum _GXIndTexScale {
@ -742,12 +742,12 @@ typedef enum _GXIndTexScale {
GX_ITS_64, GX_ITS_64,
GX_ITS_128, GX_ITS_128,
GX_ITS_256, GX_ITS_256,
GX_MAX_ITSCALE, GX_MAX_ITSCALE
} GXIndTexScale; } GXIndTexScale;
typedef enum _GXClipMode { typedef enum _GXClipMode {
GX_CLIP_ENABLE = 0, GX_CLIP_ENABLE = 0,
GX_CLIP_DISABLE = 1, GX_CLIP_DISABLE = 1
} GXClipMode; } GXClipMode;
typedef enum _GXTlut { typedef enum _GXTlut {
@ -770,21 +770,21 @@ typedef enum _GXTlut {
GX_BIGTLUT0 = 16, GX_BIGTLUT0 = 16,
GX_BIGTLUT1 = 17, GX_BIGTLUT1 = 17,
GX_BIGTLUT2 = 18, GX_BIGTLUT2 = 18,
GX_BIGTLUT3 = 19, GX_BIGTLUT3 = 19
} GXTlut; } GXTlut;
typedef enum _GXTlutFmt { typedef enum _GXTlutFmt {
GX_TL_IA8, GX_TL_IA8,
GX_TL_RGB565, GX_TL_RGB565,
GX_TL_RGB5A3, GX_TL_RGB5A3,
GX_MAX_TLUTFMT, GX_MAX_TLUTFMT
} GXTlutFmt; } GXTlutFmt;
typedef enum _GXMiscToken { typedef enum _GXMiscToken {
GX_MT_NULL = 0, GX_MT_NULL = 0,
GX_MT_XF_FLUSH = 1, GX_MT_XF_FLUSH = 1,
GX_MT_DL_SAVE_CONTEXT = 2, GX_MT_DL_SAVE_CONTEXT = 2,
GX_MT_ABORT_WAIT_COPYOUT = 3, GX_MT_ABORT_WAIT_COPYOUT = 3
} GXMiscToken; } GXMiscToken;
typedef enum _GXTexCacheSize { typedef enum _GXTexCacheSize {
@ -834,7 +834,6 @@ typedef enum _GXPerf0 {
GX_PERF0_CLOCKS, GX_PERF0_CLOCKS,
GX_PERF0_NONE GX_PERF0_NONE
} GXPerf0; } GXPerf0;
typedef enum _GXPerf1 { typedef enum _GXPerf1 {
@ -864,7 +863,6 @@ typedef enum _GXPerf1 {
GX_PERF1_CLOCKS, GX_PERF1_CLOCKS,
GX_PERF1_NONE GX_PERF1_NONE
} GXPerf1; } GXPerf1;
typedef enum _GXVCachePerf { typedef enum _GXVCachePerf {
@ -881,25 +879,24 @@ typedef enum _GXVCachePerf {
GX_VC_TEX6, GX_VC_TEX6,
GX_VC_TEX7, GX_VC_TEX7,
GX_VC_ALL = 0xf GX_VC_ALL = 0xf
} GXVCachePerf; } GXVCachePerf;
typedef enum _GXFBClamp { typedef enum _GXFBClamp {
GX_CLAMP_NONE = 0, GX_CLAMP_NONE = 0,
GX_CLAMP_TOP = 1, GX_CLAMP_TOP = 1,
GX_CLAMP_BOTTOM = 2, GX_CLAMP_BOTTOM = 2
} GXFBClamp; } GXFBClamp;
typedef enum _GXCopyMode { typedef enum _GXCopyMode {
GX_COPY_PROGRESSIVE = 0, GX_COPY_PROGRESSIVE = 0,
GX_COPY_INTLC_EVEN = 2, GX_COPY_INTLC_EVEN = 2,
GX_COPY_INTLC_ODD = 3, GX_COPY_INTLC_ODD = 3
} GXCopyMode; } GXCopyMode;
typedef enum _GXAlphaReadMode { typedef enum _GXAlphaReadMode {
GX_READ_00 = 0, GX_READ_00 = 0,
GX_READ_FF = 1, GX_READ_FF = 1,
GX_READ_NONE = 2, GX_READ_NONE = 2
} GXAlphaReadMode; } GXAlphaReadMode;

View file

@ -19,7 +19,7 @@ typedef struct {
typedef enum { typedef enum {
GX_TF_R8_PC = 0x60, GX_TF_R8_PC = 0x60,
GX_TF_RGBA8_PC = 0x61, GX_TF_RGBA8_PC = 0x61
} GXPCTexFmt; } GXPCTexFmt;
void GXDestroyTexObj(GXTexObj* obj); void GXDestroyTexObj(GXTexObj* obj);

View file

@ -89,7 +89,7 @@ typedef enum _GXTlutSize
GX_TLUT_2K = 128, GX_TLUT_2K = 128,
GX_TLUT_4K = 256, GX_TLUT_4K = 256,
GX_TLUT_8K = 512, GX_TLUT_8K = 512,
GX_TLUT_16K = 1024, GX_TLUT_16K = 1024
} GXTlutSize; } GXTlutSize;
typedef struct _GXVtxAttrFmtList { typedef struct _GXVtxAttrFmtList {

View file

@ -7,7 +7,7 @@ typedef enum {
GX_WARN_NONE, GX_WARN_NONE,
GX_WARN_SEVERE, GX_WARN_SEVERE,
GX_WARN_MEDIUM, GX_WARN_MEDIUM,
GX_WARN_ALL, GX_WARN_ALL
} GXWarningLevel; } GXWarningLevel;
#ifdef _DEBUG #ifdef _DEBUG

View file

@ -50,12 +50,12 @@ typedef enum {
// GCA // GCA
VI_TVMODE_GCA_INT = VI_TVMODE(VI_GCA, VI_INTERLACE), VI_TVMODE_GCA_INT = VI_TVMODE(VI_GCA, VI_INTERLACE),
VI_TVMODE_GCA_DS = VI_TVMODE(VI_GCA, VI_NON_INTERLACE), VI_TVMODE_GCA_DS = VI_TVMODE(VI_GCA, VI_NON_INTERLACE),
VI_TVMODE_GCA_PROG = VI_TVMODE(VI_GCA, VI_PROGRESSIVE), VI_TVMODE_GCA_PROG = VI_TVMODE(VI_GCA, VI_PROGRESSIVE)
} VITVMode; } VITVMode;
typedef enum { typedef enum {
VI_XFBMODE_SF = 0, VI_XFBMODE_SF = 0,
VI_XFBMODE_DF = 1, VI_XFBMODE_DF = 1
} VIXFBMode; } VIXFBMode;
typedef void (*VIPositionCallback)(s16 x, s16 y); typedef void (*VIPositionCallback)(s16 x, s16 y);

View file

@ -32,4 +32,8 @@ typedef struct vec2f {
#define asind(x) (180.0*(asinf((x)) / M_PI)) #define asind(x) (180.0*(asinf((x)) / M_PI))
#define atan2d(y, x) (180.0*(atan2((y), (x)) / M_PI)) #define atan2d(y, x) (180.0*(atan2((y), (x)) / M_PI))
#ifndef __MWERKS__
void HuSetVecF(Vec* arg0, f32 arg8, f32 arg9, f32 argA)
#endif
#endif #endif

View file

@ -17,7 +17,7 @@
#include "dolphin/types.h" #include "dolphin/types.h"
typedef struct data_read_stat { struct data_read_stat {
s32 dir_id; s32 dir_id;
void *dir; void *dir;
void *file; void *file;
@ -27,7 +27,7 @@ typedef struct data_read_stat {
s32 num; s32 num;
u32 status; u32 status;
DVDFileInfo file_info; DVDFileInfo file_info;
} DataReadStat; };
void HuDataInit(void); void HuDataInit(void);
s32 HuDataReadChk(s32 data_num); s32 HuDataReadChk(s32 data_num);

View file

@ -26,7 +26,7 @@ typedef struct {
/* 0x40 */ GXColor unk40; /* 0x40 */ GXColor unk40;
} HsfanimStruct01; // Size 0x44 } HsfanimStruct01; // Size 0x44
typedef struct particle_data { struct particle_data {
/* 0x00 */ s16 unk_00; /* 0x00 */ s16 unk_00;
/* 0x02 */ s16 unk_02; /* 0x02 */ s16 unk_02;
/* 0x04 */ Vec unk_04; /* 0x04 */ Vec unk_04;
@ -50,7 +50,7 @@ typedef struct particle_data {
/* 0x4C */ Vec *unk_4C; /* 0x4C */ Vec *unk_4C;
/* 0x50 */ void *unk_50; /* 0x50 */ void *unk_50;
/* 0x54 */ ParticleHook unk_54; /* 0x54 */ ParticleHook unk_54;
} ParticleData; // Size 0x58 }; // Size 0x58
typedef struct { typedef struct {
/* 0x00 */ s16 unk00; /* 0x00 */ s16 unk00;

View file

@ -1,10 +1,10 @@
#ifndef _GAME_HSFMAN_H #ifndef _GAME_HSFMAN_H
#define _GAME_HSFMAN_H #define _GAME_HSFMAN_H
#include "game/data.h"
#include "game/hsfanim.h" #include "game/hsfanim.h"
#include "game/hsfformat.h" #include "game/hsfformat.h"
#include "game/memory.h" #include "game/memory.h"
#include "game/data.h"
#define HU3D_MODEL_MAX 512 #define HU3D_MODEL_MAX 512
#define HU3D_MOTION_MAX 256 #define HU3D_MOTION_MAX 256
@ -79,11 +79,12 @@
#define Hu3DModelCreateFile(data_id) (Hu3DModelCreate(HuDataSelHeapReadNum((data_id), MEMORY_DEFAULT_NUM, HEAP_DATA))) #define Hu3DModelCreateFile(data_id) (Hu3DModelCreate(HuDataSelHeapReadNum((data_id), MEMORY_DEFAULT_NUM, HEAP_DATA)))
typedef struct model_data ModelData;
typedef struct particle_data ParticleData; typedef struct particle_data ParticleData;
typedef void (*ModelHookFunc)(struct model_data *, Mtx); typedef void (*ModelHookFunc)(struct model_data *, Mtx);
typedef struct model_data { struct model_data {
u8 unk_00; u8 unk_00;
u8 unk_01; u8 unk_01;
u8 unk_02; u8 unk_02;
@ -107,25 +108,25 @@ typedef struct model_data {
u32 unk_4C; u32 unk_4C;
u32 attr; u32 attr;
u32 motion_attr; u32 motion_attr;
Point3d unk_58; Vec unk_58;
f32 unk_64; float unk_64;
f32 unk_68; float unk_68;
f32 unk_6C; float unk_6C;
f32 unk_70; float unk_70;
f32 unk_74; float unk_74;
f32 unk_78; float unk_78;
f32 unk_7C; float unk_7C;
f32 unk_80; float unk_80;
f32 unk_84; float unk_84;
f32 unk_88; float unk_88;
f32 unk_8C; float unk_8C;
f32 unk_90; float unk_90;
f32 unk_94; float unk_94;
f32 unk_98; float unk_98;
f32 unk_9C; float unk_9C;
f32 unk_A0; float unk_A0;
f32 unk_A4[4]; float unk_A4[4];
f32 unk_B4[4]; float unk_B4[4];
union { union {
HsfData *hsfData; HsfData *hsfData;
ModelHookFunc hook; ModelHookFunc hook;
@ -136,13 +137,13 @@ typedef struct model_data {
Vec scale; Vec scale;
Mtx unk_F0; Mtx unk_F0;
void *unk_120; void *unk_120;
} ModelData; // sizeof 0x124 }; // sizeof 0x124
typedef struct camera_data { typedef struct camera_data {
f32 fov; float fov;
f32 near; float near;
f32 far; float far;
f32 aspect; float aspect;
f32 aspect_dupe; float aspect_dupe;
Vec pos; Vec pos;
Vec up; Vec up;
Vec target; Vec target;
@ -150,20 +151,20 @@ typedef struct camera_data {
s16 scissor_y; s16 scissor_y;
s16 scissor_w; s16 scissor_w;
s16 scissor_h; s16 scissor_h;
f32 viewport_x; float viewport_x;
f32 viewport_y; float viewport_y;
f32 viewport_w; float viewport_w;
f32 viewport_h; float viewport_h;
f32 near_z; float near_z;
f32 far_z; float far_z;
} CameraData; // sizeof 0x58 } CameraData; // sizeof 0x58
typedef struct ThreeDProjectionStruct { typedef struct ThreeDProjectionStruct {
u8 unk_00; u8 unk_00;
char unk_01[0x3]; char unk_01[0x3];
void *unk_04; void *unk_04;
Vec unk_08; Vec unk_08;
Point3d unk_14; Vec unk_14;
Point3d unk_20; Vec unk_20;
Vec unk_2C; Vec unk_2C;
Mtx unk_38; Mtx unk_38;
Mtx unk_68; Mtx unk_68;
@ -172,7 +173,7 @@ typedef struct shadow_data {
u8 unk_00; u8 unk_00;
u8 unk_01; u8 unk_01;
u16 unk_02; u16 unk_02;
void* unk_04; void *unk_04;
Vec unk_08; Vec unk_08;
Vec unk_14; Vec unk_14;
Vec unk_20; Vec unk_20;
@ -183,8 +184,8 @@ typedef struct shadow_data {
typedef struct light_data { typedef struct light_data {
s16 unk_00; s16 unk_00;
s16 unk_02; s16 unk_02;
f32 unk_04; float unk_04;
f32 unk_08; float unk_08;
char unk_0C[0x10]; char unk_0C[0x10];
Vec unk_1C; Vec unk_1C;
Vec unk_28; Vec unk_28;
@ -193,7 +194,7 @@ typedef struct light_data {
} LightData; } LightData;
extern void GXWaitDrawDone(); /* extern */ extern void GXWaitDrawDone(); /* extern */
extern void GXInitSpecularDir(GXLightObj*, f32, f32, f32); extern void GXInitSpecularDir(GXLightObj *, float, float, float);
void Hu3DInit(void); void Hu3DInit(void);
void Hu3DPreProc(void); void Hu3DPreProc(void);
@ -208,11 +209,11 @@ s16 Hu3DModelLink(s16);
s16 Hu3DHookFuncCreate(ModelHookFunc); s16 Hu3DHookFuncCreate(ModelHookFunc);
void Hu3DModelKill(s16); void Hu3DModelKill(s16);
void Hu3DModelAllKill(void); void Hu3DModelAllKill(void);
void Hu3DModelPosSet(s16, f32, f32, f32); void Hu3DModelPosSet(s16, float, float, float);
void Hu3DModelPosSetV(s16, Vec *); void Hu3DModelPosSetV(s16, Vec *);
void Hu3DModelRotSet(s16, f32, f32, f32); void Hu3DModelRotSet(s16, float, float, float);
void Hu3DModelRotSetV(s16, Vec *); void Hu3DModelRotSetV(s16, Vec *);
void Hu3DModelScaleSet(s16, f32, f32, f32); void Hu3DModelScaleSet(s16, float, float, float);
void Hu3DModelScaleSetV(s16, Vec *); void Hu3DModelScaleSetV(s16, Vec *);
void Hu3DModelAttrSet(s16, u32); void Hu3DModelAttrSet(s16, u32);
void Hu3DModelAttrReset(s16, u32); void Hu3DModelAttrReset(s16, u32);
@ -222,16 +223,16 @@ void Hu3DModelClusterAttrSet(s16, s16, s32);
void Hu3DModelClusterAttrReset(s16, s16, s32); void Hu3DModelClusterAttrReset(s16, s16, s32);
void Hu3DModelCameraSet(s16, u16); void Hu3DModelCameraSet(s16, u16);
void Hu3DModelLayerSet(s16, s16); void Hu3DModelLayerSet(s16, s16);
HsfObject* Hu3DModelObjPtrGet(s16, char *); HsfObject *Hu3DModelObjPtrGet(s16, char *);
void Hu3DModelTPLvlSet(s16, f32); void Hu3DModelTPLvlSet(s16, float);
void Hu3DModelHiliteMapSet(s16, AnimData*); void Hu3DModelHiliteMapSet(s16, AnimData *);
void Hu3DModelShadowSet(s16); void Hu3DModelShadowSet(s16);
void Hu3DModelShadowReset(s16); void Hu3DModelShadowReset(s16);
void Hu3DModelShadowDispOn(s16); void Hu3DModelShadowDispOn(s16);
void Hu3DModelShadowDispOff(s16); void Hu3DModelShadowDispOff(s16);
void Hu3DModelShadowMapSet(s16); void Hu3DModelShadowMapSet(s16);
void Hu3DModelShadowMapObjSet(s16, char *); void Hu3DModelShadowMapObjSet(s16, char *);
void Hu3DModelAmbSet(s16, f32, f32, f32); void Hu3DModelAmbSet(s16, float, float, float);
void Hu3DModelHookSet(s16, char *, s16); void Hu3DModelHookSet(s16, char *, s16);
void Hu3DModelHookReset(s16); void Hu3DModelHookReset(s16);
void Hu3DModelHookObjReset(s16, char *); void Hu3DModelHookObjReset(s16, char *);
@ -240,10 +241,10 @@ void Hu3DModelProjectionReset(s16, s16);
void Hu3DModelHiliteTypeSet(s16, s16); void Hu3DModelHiliteTypeSet(s16, s16);
void Hu3DModelReflectTypeSet(s16, s16); void Hu3DModelReflectTypeSet(s16, s16);
void Hu3DCameraCreate(s32); void Hu3DCameraCreate(s32);
void Hu3DCameraPerspectiveSet(s32, f32, f32, f32, f32); void Hu3DCameraPerspectiveSet(s32, float, float, float, float);
void Hu3DCameraViewportSet(s32, f32, f32, f32, f32, f32, f32); void Hu3DCameraViewportSet(s32, float, float, float, float, float, float);
void Hu3DCameraScissorSet(s32, u32, u32, u32, u32); void Hu3DCameraScissorSet(s32, u32, u32, u32, u32);
void Hu3DCameraPosSet(s32, f32, f32, f32, f32, f32, f32, f32, f32, f32); void Hu3DCameraPosSet(s32, float, float, float, float, float, float, float, float, float);
void Hu3DCameraPosSetV(s32 cam, Vec *pos, Vec *up, Vec *target); void Hu3DCameraPosSetV(s32 cam, Vec *pos, Vec *up, Vec *target);
void Hu3DCameraKill(s32); void Hu3DCameraKill(s32);
void Hu3DCameraAllKill(void); void Hu3DCameraAllKill(void);
@ -254,47 +255,47 @@ void Hu3DCameraMotionOn(s16, s8);
void Hu3DCameraMotionStart(s16, u16); void Hu3DCameraMotionStart(s16, u16);
void Hu3DCameraMotionOff(s16); void Hu3DCameraMotionOff(s16);
void Hu3DLighInit(void); void Hu3DLighInit(void);
s16 Hu3DGLightCreate(f32, f32, f32, f32, f32, f32, u8, u8, u8); s16 Hu3DGLightCreate(float, float, float, float, float, float, u8, u8, u8);
s16 Hu3DGLightCreateV(Vec*, Vec*, GXColor*); s16 Hu3DGLightCreateV(Vec *, Vec *, GXColor *);
s16 Hu3DLLightCreate(s16, f32, f32, f32, f32, f32, f32, u8, u8, u8); s16 Hu3DLLightCreate(s16, float, float, float, float, float, float, u8, u8, u8);
s16 Hu3DLLightCreateV(s16, Vec*, Vec*, GXColor*); s16 Hu3DLLightCreateV(s16, Vec *, Vec *, GXColor *);
void Hu3DGLightSpotSet(s16, f32, u16); void Hu3DGLightSpotSet(s16, float, u16);
void Hu3DLLightSpotSet(s16, s16, f32, u16); void Hu3DLLightSpotSet(s16, s16, float, u16);
void Hu3DGLightInfinitytSet(s16); void Hu3DGLightInfinitytSet(s16);
void Hu3DLLightInfinitytSet(s16, s16); void Hu3DLLightInfinitytSet(s16, s16);
void Hu3DGLightPointSet(s16, f32, f32, u16); void Hu3DGLightPointSet(s16, float, float, u16);
void Hu3DLLightPointSet(s16, s16, f32, f32, u16); void Hu3DLLightPointSet(s16, s16, float, float, u16);
void Hu3DGLightKill(s16); void Hu3DGLightKill(s16);
void Hu3DLLightKill(s16, s16); void Hu3DLLightKill(s16, s16);
void Hu3DLightAllKill(void); void Hu3DLightAllKill(void);
void Hu3DGLightColorSet(s16, u8, u8, u8, u8); void Hu3DGLightColorSet(s16, u8, u8, u8, u8);
void Hu3DLLightColorSet(s16, s16, u8, u8, u8, u8); void Hu3DLLightColorSet(s16, s16, u8, u8, u8, u8);
void Hu3DGLightPosSetV(s16, Vec*, Point3d*); void Hu3DGLightPosSetV(s16, Vec *, Vec *);
void Hu3DLLightPosSetV(s16, s16, Vec*, Point3d*); void Hu3DLLightPosSetV(s16, s16, Vec *, Vec *);
void Hu3DGLightPosSet(s16, f32, f32, f32, f32, f32, f32); void Hu3DGLightPosSet(s16, float, float, float, float, float, float);
void Hu3DLLightPosSet(s16, s16, f32, f32, f32, f32, f32, f32); void Hu3DLLightPosSet(s16, s16, float, float, float, float, float, float);
void Hu3DGLightPosAimSetV(s16, Point3d*, Point3d*); void Hu3DGLightPosAimSetV(s16, Vec *, Vec *);
void Hu3DLLightPosAimSetV(s16, s16, Point3d*, Point3d*); void Hu3DLLightPosAimSetV(s16, s16, Vec *, Vec *);
void Hu3DGLightPosAimSet(s16, f32, f32, f32, f32, f32, f32); void Hu3DGLightPosAimSet(s16, float, float, float, float, float, float);
void Hu3DLLightPosAimSet(s16, s16, f32, f32, f32, f32, f32, f32); void Hu3DLLightPosAimSet(s16, s16, float, float, float, float, float, float);
void Hu3DGLightStaticSet(s16, s32); void Hu3DGLightStaticSet(s16, s32);
void Hu3DLLightStaticSet(s16, s16, s32); void Hu3DLLightStaticSet(s16, s16, s32);
s32 Hu3DModelLightInfoSet(s16, s16); s32 Hu3DModelLightInfoSet(s16, s16);
s16 Hu3DLightSet(ModelData*, Mtx*, Mtx*, f32); s16 Hu3DLightSet(ModelData *, Mtx *, Mtx *, float);
void lightSet(LightData* arg0, s16 arg1, Mtx *arg2, Mtx *arg3, f32 arg8); void lightSet(LightData *arg0, s16 arg1, Mtx *arg2, Mtx *arg3, float arg8);
void Hu3DReflectNoSet(s16 arg0); void Hu3DReflectNoSet(s16 arg0);
void Hu3DFogSet(f32, f32, u8, u8, u8); void Hu3DFogSet(float, float, u8, u8, u8);
void Hu3DFogClear(void); void Hu3DFogClear(void);
void Hu3DShadowCreate(f32, f32, f32); void Hu3DShadowCreate(float, float, float);
void Hu3DShadowPosSet(Vec*, Vec*, Vec*); void Hu3DShadowPosSet(Vec *, Vec *, Vec *);
void Hu3DShadowTPLvlSet(f32); void Hu3DShadowTPLvlSet(float);
void Hu3DShadowSizeSet(u16); void Hu3DShadowSizeSet(u16);
void Hu3DShadowExec(void); void Hu3DShadowExec(void);
s16 Hu3DProjectionCreate(void*, f32, f32, f32); s16 Hu3DProjectionCreate(void *, float, float, float);
void Hu3DProjectionKill(s16); void Hu3DProjectionKill(s16);
void Hu3DProjectionPosSet(s16, Vec*, Vec*, Vec*); void Hu3DProjectionPosSet(s16, Vec *, Vec *, Vec *);
void Hu3DProjectionTPLvlSet(s16, f32); void Hu3DProjectionTPLvlSet(s16, float);
void Hu3DMipMapSet(char*, s16, s32, f32); void Hu3DMipMapSet(char *, s16, s32, float);
extern ModelData Hu3DData[0x200]; extern ModelData Hu3DData[0x200];
extern CameraData Hu3DCamera[0x10]; extern CameraData Hu3DCamera[0x10];

View file

@ -48,7 +48,7 @@ typedef struct seq_work SeqWork;
typedef s32 (*SeqUpdateFunc)(SeqWork *work); typedef s32 (*SeqUpdateFunc)(SeqWork *work);
typedef s32 (*SeqInitFunc)(SeqWork *work, va_list params); typedef s32 (*SeqInitFunc)(SeqWork *work, va_list params);
typedef struct seq_work { struct seq_work {
SeqUpdateFunc update; SeqUpdateFunc update;
char *data; char *data;
float x; float x;
@ -73,7 +73,7 @@ typedef struct seq_work {
u8 stat; u8 stat;
u8 unk_7C; u8 unk_7C;
u8 unk_7D; u8 unk_7D;
} SeqWork; };
void MGSeqInit(void); void MGSeqInit(void);
void MGSeqMain(void); void MGSeqMain(void);

View file

@ -18,6 +18,10 @@
#include "ext_math.h" #include "ext_math.h"
#ifndef __MWERKS__
#include "game/esprite.h"
#endif
typedef struct { typedef struct {
/* 0x000 */ u8 unk00; /* 0x000 */ u8 unk00;
/* 0x001 */ char unk01[3]; /* 0x001 */ char unk01[3];

View file

@ -14,6 +14,11 @@
#include "string.h" #include "string.h"
#include "version.h" #include "version.h"
#ifndef __MWERKS__
#include "game/audio.h"
#include "game/esprite.h"
#endif
typedef struct UnkM404Struct { typedef struct UnkM404Struct {
s16 unk_00; s16 unk_00;
s16 unk_02[6]; s16 unk_02[6];

View file

@ -1,34 +1,36 @@
#include "game/process.h"
#include "game/object.h"
#include "game/hsfdraw.h"
#include "ext_math.h" #include "ext_math.h"
#include "game/hsfdraw.h"
#include "game/object.h"
#include "game/process.h"
typedef struct unkDominationData2 { typedef struct unkDominationData2 {
/* 0x00 */ s32 unk_00; /* 0x00 */ s32 unk_00;
/* 0x04 */ s32 unk_04; /* 0x04 */ s32 unk_04;
/* 0x08 */ Point3d unk_08; /* 0x08 */ Vec unk_08;
/* 0x14 */ Point3d unk_14; /* 0x14 */ Vec unk_14;
/* 0x20 */ f32 unk_20; /* 0x20 */ f32 unk_20;
/* 0x24 */ Point3d unk_24; /* 0x24 */ Vec unk_24;
/* 0x30 */ Point3d unk_30; /* 0x30 */ Vec unk_30;
/* 0x3C */ f32 unk_3C; /* 0x3C */ f32 unk_3C;
/* 0x40 */ s32 unk_40; /* 0x40 */ s32 unk_40;
/* 0x44 */ f32 unk_44; /* 0x44 */ f32 unk_44;
/* 0x48 */ f32 unk_48; /* 0x48 */ f32 unk_48;
} unkDominationData2; //sizeof 0x4C } unkDominationData2; // sizeof 0x4C
//function signatures // function signatures
void fn_1_1CAC(f32, f32, f32); void fn_1_1CAC(f32, f32, f32);
void fn_1_1D08(f32, f32, f32); void fn_1_1D08(f32, f32, f32);
void fn_1_1D64(f32); void fn_1_1D64(f32);
void fn_1_2024(omObjData*); void fn_1_2024(omObjData *);
//bss // bss
Process* lbl_1_bss_34; Process *lbl_1_bss_34;
omObjData* lbl_1_bss_30; omObjData *lbl_1_bss_30;
void fn_1_1B1C(Process* arg0) { void fn_1_1B1C(Process *arg0)
unkDominationData2* unkData; {
unkDominationData2 *unkData;
lbl_1_bss_34 = arg0; lbl_1_bss_34 = arg0;
Hu3DCameraViewportSet(1, 0.0f, 0.0f, 640.0f, 480.0f, 0.0f, 1.0f); Hu3DCameraViewportSet(1, 0.0f, 0.0f, 640.0f, 480.0f, 0.0f, 1.0f);
@ -42,49 +44,55 @@ void fn_1_1B1C(Process* arg0) {
fn_1_1D64(0.0f); fn_1_1D64(0.0f);
} }
void fn_1_1CA8(void) { void fn_1_1CA8(void) { }
} void fn_1_1CAC(f32 arg8, f32 arg9, f32 argA)
{
void fn_1_1CAC(f32 arg8, f32 arg9, f32 argA) {
Center.x = arg8; Center.x = arg8;
Center.y = arg9; Center.y = arg9;
Center.z = argA; Center.z = argA;
} }
void fn_1_1CD4(f32* arg0, f32* arg1, f32* arg2) { void fn_1_1CD4(f32 *arg0, f32 *arg1, f32 *arg2)
{
*arg0 = Center.x; *arg0 = Center.x;
*arg1 = Center.y; *arg1 = Center.y;
*arg2 = Center.z; *arg2 = Center.z;
} }
void fn_1_1D08(f32 arg8, f32 arg9, f32 argA) { void fn_1_1D08(f32 arg8, f32 arg9, f32 argA)
{
CRot.x = arg8; CRot.x = arg8;
CRot.y = arg9; CRot.y = arg9;
CRot.z = argA; CRot.z = argA;
} }
void fn_1_1D30(f32* arg0, f32* arg1, f32* arg2) { void fn_1_1D30(f32 *arg0, f32 *arg1, f32 *arg2)
{
*arg0 = CRot.x; *arg0 = CRot.x;
*arg1 = CRot.y; *arg1 = CRot.y;
*arg2 = CRot.z; *arg2 = CRot.z;
} }
void fn_1_1D64(f32 arg8) { void fn_1_1D64(f32 arg8)
{
CZoom = arg8; CZoom = arg8;
} }
void fn_1_1D74(f32* arg0) { void fn_1_1D74(f32 *arg0)
{
*arg0 = CZoom; *arg0 = CZoom;
} }
s32 fn_1_1D88(void) { s32 fn_1_1D88(void)
unkDominationData2* unkData = lbl_1_bss_30->data; {
unkDominationData2 *unkData = lbl_1_bss_30->data;
return unkData->unk_04; return unkData->unk_04;
} }
void fn_1_1DB0(Point3d* arg0, Point3d* arg1, f32* arg2, s32 arg3, s32 arg4) { void fn_1_1DB0(Vec *arg0, Vec *arg1, f32 *arg2, s32 arg3, s32 arg4)
unkDominationData2* temp_r31; {
unkDominationData2 *temp_r31;
temp_r31 = lbl_1_bss_30->data; temp_r31 = lbl_1_bss_30->data;
temp_r31->unk_00 = arg4; temp_r31->unk_00 = arg4;
@ -100,7 +108,8 @@ void fn_1_1DB0(Point3d* arg0, Point3d* arg1, f32* arg2, s32 arg3, s32 arg4) {
temp_r31->unk_04 = 1; temp_r31->unk_04 = 1;
} }
f32 fn_1_1F1C(f32 arg8, f32 arg9) { f32 fn_1_1F1C(f32 arg8, f32 arg9)
{
if (((arg8 > 0.0f) && (arg9 > 0.0f)) || ((arg8 < 0.0f) && (arg9 < 0.0f))) { if (((arg8 > 0.0f) && (arg9 > 0.0f)) || ((arg8 < 0.0f) && (arg9 < 0.0f))) {
return abs(arg8 - arg9); return abs(arg8 - arg9);
} }
@ -108,12 +117,13 @@ f32 fn_1_1F1C(f32 arg8, f32 arg9) {
return abs(arg8) + abs(arg9); return abs(arg8) + abs(arg9);
} }
void fn_1_2024(omObjData* arg0) { void fn_1_2024(omObjData *arg0)
{
Vec sp14; Vec sp14;
Vec sp8; Vec sp8;
f32 var_f31; f32 var_f31;
f32 cZoomTemp; f32 cZoomTemp;
unkDominationData2* temp_r31; unkDominationData2 *temp_r31;
temp_r31 = arg0->data; temp_r31 = arg0->data;
if (temp_r31->unk_04 != 0) { if (temp_r31->unk_04 != 0) {

View file

@ -2,6 +2,7 @@
#include "game/hsfmotion.h" #include "game/hsfmotion.h"
#include "game/object.h" #include "game/object.h"
#include "game/process.h" #include "game/process.h"
#include "math.h"
#include "REL/m407dll.h" #include "REL/m407dll.h"

View file

@ -1,13 +1,12 @@
#include "game/object.h" #include "game/object.h"
#include "game/gamework_data.h" #include "game/gamework_data.h"
#include "game/gamework.h"
#include "game/minigame_seq.h" #include "game/minigame_seq.h"
#include "game/wipe.h" #include "game/wipe.h"
#include "game/audio.h" #include "game/audio.h"
#include "game/hsfman.h" #include "game/hsfman.h"
#define ARRAY_COUNT(arr) (s32)(sizeof(arr) / sizeof(arr[0])) #include "REL/m407dll.h"
typedef void (*ObjFuncs)(void);
typedef struct unkDominationData5 { typedef struct unkDominationData5 {
/* 0x00 */ u32 unk_00; /* 0x00 */ u32 unk_00;
@ -27,12 +26,6 @@ typedef struct unkDominationData5 {
} unkDominationData5; //sizeof 0x48 } unkDominationData5; //sizeof 0x48
//function signatures //function signatures
void fn_1_388(u8, s32);
void fn_1_3C4(u8);
s32 fn_1_4C0(s32);
s32 fn_1_508(u8);
s32 fn_1_53C(u8);
void fn_1_568(s16, s16, s16);
void fn_1_4B7C(void); void fn_1_4B7C(void);
void fn_1_4C3C(s32); void fn_1_4C3C(s32);
void fn_1_4C6C(omObjData*); void fn_1_4C6C(omObjData*);
@ -56,7 +49,7 @@ omObjData* lbl_1_bss_397C;
s16 lbl_1_bss_3978; s16 lbl_1_bss_3978;
//data //data
ObjFuncs lbl_1_data_2A8[] = { VoidFuncs lbl_1_data_2A8[] = {
fn_1_4D0C, fn_1_4D0C,
fn_1_4D54, fn_1_4D54,
fn_1_4E8C, fn_1_4E8C,

View file

@ -3,7 +3,7 @@
#include "game/object.h" #include "game/object.h"
#include "game/process.h" #include "game/process.h"
#define ARRAY_COUNT(arr) (s32)(sizeof(arr) / sizeof(arr[0])) #include "REL/m407dll.h"
// function signatures // function signatures
void fn_1_162C(omObjData *); void fn_1_162C(omObjData *);
@ -34,10 +34,10 @@ s32 lbl_1_data_198[] = {
Vec lbl_1_data_1CC[] = { { 600.0f, 3.0f, -300.0f }, { 200.0f, 3.0f, -300.0f }, { -200.0f, 3.0f, -300.0f }, { -600.0f, 3.0f, -300.0f } }; Vec lbl_1_data_1CC[] = { { 600.0f, 3.0f, -300.0f }, { 200.0f, 3.0f, -300.0f }, { -200.0f, 3.0f, -300.0f }, { -600.0f, 3.0f, -300.0f } };
Point3d lbl_1_data_1FC = { 2000.0f, 3000.0f, 2000.0f }; Vec lbl_1_data_1FC = { 2000.0f, 3000.0f, 2000.0f };
Point3d lbl_1_data_208 = { -0.5f, -0.5f, -0.5f }; Vec lbl_1_data_208 = { -0.5f, -0.5f, -0.5f };
GXColor lbl_1_data_214 = { 255, 255, 255, 255 }; GXColor lbl_1_data_214 = { 255, 255, 255, 255 };
Point3d lbl_1_data_218 = { 0.0f, 1.0f, 0.0f }; Vec lbl_1_data_218 = { 0.0f, 1.0f, 0.0f };
void fn_1_14F0(Process *arg0, s32 arg1) void fn_1_14F0(Process *arg0, s32 arg1)
{ {
@ -117,7 +117,7 @@ void fn_1_162C(omObjData *arg0)
void fn_1_1A8C(omObjData *arg0) void fn_1_1A8C(omObjData *arg0)
{ {
Point3d sp8; Vec sp8;
sp8.x = lbl_1_data_1FC.x; sp8.x = lbl_1_data_1FC.x;
sp8.y = lbl_1_data_1FC.y; sp8.y = lbl_1_data_1FC.y;

View file

@ -1,15 +1,16 @@
#include "game/audio.h"
#include "game/chrman.h" #include "game/chrman.h"
#include "game/frand.h" #include "game/frand.h"
#include "game/gamework_data.h" #include "game/gamework_data.h"
#include "game/hsfman.h" #include "game/hsfman.h"
#include "game/hsfmotion.h"
#include "game/object.h" #include "game/object.h"
#include "game/objsub.h" #include "game/objsub.h"
#include "game/pad.h" #include "game/pad.h"
#include "game/process.h" #include "game/process.h"
#include "math.h" #include "math.h"
#define ARRAY_COUNT(arr) (s32)(sizeof(arr) / sizeof(arr[0])) #include "REL/m407dll.h"
typedef void (*ObjFuncs)(omObjData *);
typedef struct unkDominationData { typedef struct unkDominationData {
u8 unk_00; u8 unk_00;

View file

@ -3,9 +3,7 @@
#include "game/process.h" #include "game/process.h"
#include "game/sprite.h" #include "game/sprite.h"
#define ARRAY_COUNT(arr) (s32)(sizeof(arr) / sizeof(arr[0])) #include "REL/m407dll.h"
typedef void (*ObjFuncs)(void);
typedef struct unkDominationData6 { typedef struct unkDominationData6 {
/* 0x00 */ s32 unk_00; /* 0x00 */ s32 unk_00;
@ -30,7 +28,7 @@ Process *lbl_1_bss_398C;
omObjData *lbl_1_bss_3988; omObjData *lbl_1_bss_3988;
// data // data
ObjFuncs lbl_1_data_360[] = { fn_1_61A0, fn_1_6218, fn_1_62A0 }; VoidFuncs lbl_1_data_360[] = { fn_1_61A0, fn_1_6218, fn_1_62A0 };
void fn_1_5C5C(Process *arg0, s16 arg1) void fn_1_5C5C(Process *arg0, s16 arg1)
{ {

View file

@ -5,14 +5,12 @@
#include "game/object.h" #include "game/object.h"
#include "game/process.h" #include "game/process.h"
#define ARRAY_COUNT(arr) (s32)(sizeof(arr) / sizeof(arr[0])) #include "REL/m407dll.h"
#define MAX_WHOMPS_PLAYER 160 #define MAX_WHOMPS_PLAYER 160
#define MAX_WHOMPS_ALL_PLAYERS MAX_WHOMPS_PLAYER *ARRAY_COUNT(GWPlayer) #define MAX_WHOMPS_ALL_PLAYERS MAX_WHOMPS_PLAYER *ARRAY_COUNT(GWPlayer)
#define MAX_WHOMPS (MAX_WHOMPS_PLAYER + 1) * ARRAY_COUNT(GWPlayer) #define MAX_WHOMPS (MAX_WHOMPS_PLAYER + 1) * ARRAY_COUNT(GWPlayer)
typedef void (*ObjFuncs)(omObjData *);
typedef struct unkDominationData7 { typedef struct unkDominationData7 {
/* 0x00 */ u32 unk_00; /* 0x00 */ u32 unk_00;
/* 0x04 */ s32 unk_04; /* 0x04 */ s32 unk_04;

View file

@ -19,6 +19,10 @@
#include "ext_math.h" #include "ext_math.h"
#include "math.h" #include "math.h"
#ifndef __MWERKS__
#include "game/esprite.h"
#endif
s32 lbl_1_data_0[] = { s32 lbl_1_data_0[] = {
DATA_MAKE_NUM(DATADIR_MGCONST, 0x00), DATA_MAKE_NUM(DATADIR_MGCONST, 0x00),
DATA_MAKE_NUM(DATADIR_MGCONST, 0x01), DATA_MAKE_NUM(DATADIR_MGCONST, 0x01),

View file

@ -9,6 +9,10 @@
#include "game/sprite.h" #include "game/sprite.h"
#include "ext_math.h" #include "ext_math.h"
#ifndef __MWERKS__
#include "game/esprite.h"
#endif
// bss // bss
omObjData *lbl_1_bss_3A0[4]; omObjData *lbl_1_bss_3A0[4];
omObjData *lbl_1_bss_39C; omObjData *lbl_1_bss_39C;

View file

@ -11,6 +11,10 @@
#include "REL/m410Dll.h" #include "REL/m410Dll.h"
#ifndef __MWERKS__
#include "game/esprite.h"
#endif
omObjData *lbl_1_bss_74; omObjData *lbl_1_bss_74;
AnimData *lbl_1_bss_70; AnimData *lbl_1_bss_70;
s32 lbl_1_bss_60[4]; s32 lbl_1_bss_60[4];
@ -141,8 +145,6 @@ void fn_1_7E30(Process *objman)
void fn_1_806C(void) void fn_1_806C(void)
{ {
s32 var_lr;
HuSprAnimKill(lbl_1_bss_70); HuSprAnimKill(lbl_1_bss_70);
CharModelKill(-1); CharModelKill(-1);
} }

View file

@ -12,7 +12,6 @@
#include "game/sprite.h" #include "game/sprite.h"
#include "string.h" #include "string.h"
// STRUCT // STRUCT
typedef struct _M424DllBallStruct { typedef struct _M424DllBallStruct {
u8 unk0; u8 unk0;
@ -1467,7 +1466,7 @@ void fn_1_79FC(Vec *arg0, Vec *arg1, f32 arg2, Vec *arg3, Vec *arg4, f32 arg5, f
} }
} }
void fn_1_7CA0(Vec arg0, Vec arg1, f32 arg2, Point3d *arg3) void fn_1_7CA0(Vec arg0, Vec arg1, f32 arg2, Vec *arg3)
{ {
f32 var_f31; f32 var_f31;

View file

@ -10,6 +10,10 @@
#include "game/objsub.h" #include "game/objsub.h"
#include "game/wipe.h" #include "game/wipe.h"
#ifndef __MWERKS__
#include "game/esprite.h"
#endif
typedef struct M427DllStruct2 { typedef struct M427DllStruct2 {
s32 unk0[3]; s32 unk0[3];
s32 unkC; s32 unkC;

View file

@ -492,7 +492,7 @@ void fn_1_3B20(s8 arg0, s16 arg1)
Vec sp54[4] = { { 110.0f, -20.0f, 0.0f }, { -110.0f, -20.0f, 0.0f }, { 110.0f, -20.0f, 190.0f }, { -110.0f, -20.0f, 190.0f } }; Vec sp54[4] = { { 110.0f, -20.0f, 0.0f }, { -110.0f, -20.0f, 0.0f }, { 110.0f, -20.0f, 190.0f }, { -110.0f, -20.0f, 190.0f } };
Mtx sp24; Mtx sp24;
f32 sp14[4] = { 135.0f, 225.0f, 45.0f, 315.0f }; f32 sp14[4] = { 135.0f, 225.0f, 45.0f, 315.0f };
Point3d sp8; Vec sp8;
f32 temp_f31; f32 temp_f31;
s16 var_r29; s16 var_r29;
s32 var_r27; s32 var_r27;

View file

@ -13,6 +13,10 @@
#include "math.h" #include "math.h"
#include "version.h" #include "version.h"
#ifndef __MWERKS__
#include "game/esprite.h"
#endif
typedef struct camera_view { typedef struct camera_view {
float zoom; float zoom;
Vec pos; Vec pos;

View file

@ -1166,7 +1166,7 @@ static inline f32 isEven(u32 arg)
} }
} }
void fn_1_8FFC(u32 arg0, Point3d *arg1, f32 arg2, f32 arg3) void fn_1_8FFC(u32 arg0, Vec *arg1, f32 arg2, f32 arg3)
{ {
f32 temp_f31; f32 temp_f31;
f32 var_f29; f32 var_f29;

View file

@ -1,5 +1,9 @@
#include "REL/m444dll.h" #include "REL/m444dll.h"
#ifndef __MWERKS__
#include "game/esprite.h"
#endif
s16 lbl_1_bss_199C2[90]; s16 lbl_1_bss_199C2[90];
s16 lbl_1_bss_1990E[90]; s16 lbl_1_bss_1990E[90];
s16 lbl_1_bss_1990A[2]; s16 lbl_1_bss_1990A[2];

View file

@ -17,6 +17,10 @@
#include "ext_math.h" #include "ext_math.h"
#include "math.h" #include "math.h"
#ifndef __MWERKS__
#include "game/esprite.h"
#endif
typedef struct camera_view_params { typedef struct camera_view_params {
float zoom; float zoom;
Vec pos; Vec pos;

View file

@ -23,6 +23,10 @@
#include "ext_math.h" #include "ext_math.h"
#ifndef __MWERKS__
#include "game/audio.h"
#endif
#undef ABS #undef ABS
#define ABS(x) ((0 > (x)) ? -(x) : (x)) #define ABS(x) ((0 > (x)) ? -(x) : (x))

View file

@ -157,9 +157,9 @@ void fn_1_50C(void)
void fn_1_5E8(s32 arg0) void fn_1_5E8(s32 arg0)
{ {
Point3d sp24 = { 0.0f, 3000.0f, 800.0f }; Vec sp24 = { 0.0f, 3000.0f, 800.0f };
Point3d sp18 = { 0.0f, 0.0f, 640.0f }; Vec sp18 = { 0.0f, 0.0f, 640.0f };
Point3d spC = { 0.0f, 1.0f, 0.0f }; Vec spC = { 0.0f, 1.0f, 0.0f };
if (arg0 == 3) { if (arg0 == 3) {
sp24.x = sp18.x = 1200.0f; sp24.x = sp18.x = 1200.0f;

View file

@ -163,8 +163,8 @@ HsfanimStruct00 lbl_1_data_258 = {
{ /* r */ 0, /* g */ 0, /* b */ 0, /* a */ 0 }, { /* r */ 0, /* g */ 0, /* b */ 0, /* a */ 0 } }, { /* r */ 0, /* g */ 0, /* b */ 0, /* a */ 0 }, { /* r */ 0, /* g */ 0, /* b */ 0, /* a */ 0 } },
}; };
const Point3d lbl_1_rodata_38 = { 0.0f, 0.0f, 0.0f }; const Vec lbl_1_rodata_38 = { 0.0f, 0.0f, 0.0f };
const Point3d lbl_1_rodata_44 = { 0.0f, 1.0f, 0.0f }; const Vec lbl_1_rodata_44 = { 0.0f, 1.0f, 0.0f };
s16 lbl_1_bss_99C; s16 lbl_1_bss_99C;
s16 lbl_1_bss_99A; s16 lbl_1_bss_99A;
s16 lbl_1_bss_98A[8]; s16 lbl_1_bss_98A[8];
@ -196,9 +196,9 @@ static u8 unk_bss[8];
void fn_1_29C(omObjData *arg0) void fn_1_29C(omObjData *arg0)
{ {
Point3d sp20; Vec sp20;
Point3d sp14; Vec sp14;
Point3d sp8; Vec sp8;
Mtx sp2C; Mtx sp2C;
s16 var_r31; s16 var_r31;
s16 temp_r27; s16 temp_r27;
@ -337,7 +337,7 @@ void fn_1_F38(void)
// -------------------------------------------------------------------------- // // -------------------------------------------------------------------------- //
static inline void HuControlCamCenter(Point3d *sp18, Point3d *sp30) static inline void HuControlCamCenter(Vec *sp18, Vec *sp30)
{ {
s8 temp_r28; s8 temp_r28;
@ -364,10 +364,10 @@ const HuUnkF9C2 lbl_1_rodata_B8 = { { 8, 6, 4, 7, 9, 10, 11 } };
void fn_1_F9C(struct om_obj_data *omData) void fn_1_F9C(struct om_obj_data *omData)
{ {
Point3d sp3C; Vec sp3C;
Point3d sp30; Vec sp30;
Point3d sp24; Vec sp24;
Point3d sp18; Vec sp18;
f32 temp_f31; f32 temp_f31;
s32 var_r31; s32 var_r31;
s16 var_r30; s16 var_r30;
@ -643,9 +643,9 @@ void fn_1_20F4(void)
// -------------------------------------------------------------------------- // // -------------------------------------------------------------------------- //
void fn_1_28F8(Point3d *arg0, Point3d *arg1) void fn_1_28F8(Vec *arg0, Vec *arg1)
{ {
Point3d spC; Vec spC;
Mtx sp18; Mtx sp18;
CameraData *cam; CameraData *cam;
f32 temp_f31; f32 temp_f31;

View file

@ -1,25 +1,26 @@
#include "math.h"
#include "game/chrman.h" #include "game/chrman.h"
#include "game/wipe.h"
#include "game/pad.h" #include "game/pad.h"
#include "game/wipe.h"
#include "math.h"
#include "REL/modeltestDll.h" #include "REL/modeltestDll.h"
// -------------------------------------------------------------------------- // // -------------------------------------------------------------------------- //
omObjData * unk_bss_9FC; omObjData *unk_bss_9FC;
omObjData * lbl_1_bss_9F8; omObjData *lbl_1_bss_9F8;
omObjData * lbl_1_bss_9F4; omObjData *lbl_1_bss_9F4;
s16 lbl_1_bss_9EC[4]; s16 lbl_1_bss_9EC[4];
s16 lbl_1_bss_9AC[4][8]; s16 lbl_1_bss_9AC[4][8];
Process * lbl_1_bss_9A8; Process *lbl_1_bss_9A8;
u16 lbl_1_data_358[4] = {1, 2, 4, 8}; u16 lbl_1_data_358[4] = { 1, 2, 4, 8 };
// -------------------------------------------------------------------------- // // -------------------------------------------------------------------------- //
void fn_1_34B0() void fn_1_34B0()
{ {
Process * temp_r30; Process *temp_r30;
s16 var_r31; s16 var_r31;
OSReport("******* MODELTESTObjectSetup *********\n"); OSReport("******* MODELTESTObjectSetup *********\n");
@ -33,8 +34,7 @@ void fn_1_34B0()
Center.z = 0.0f; Center.z = 0.0f;
CZoom = 400.0f; CZoom = 400.0f;
for (var_r31 = 0; var_r31 < 4; ++var_r31) for (var_r31 = 0; var_r31 < 4; ++var_r31) {
{
Hu3DCameraCreate(lbl_1_data_358[var_r31]); Hu3DCameraCreate(lbl_1_data_358[var_r31]);
Hu3DCameraPerspectiveSet(lbl_1_data_358[var_r31], 45.0f, 20.0f, 20000.0f, 1.2f); Hu3DCameraPerspectiveSet(lbl_1_data_358[var_r31], 45.0f, 20.0f, 20000.0f, 1.2f);
Hu3DCameraViewportSet(lbl_1_data_358[var_r31], (var_r31 & 1) * 320, ((var_r31 & 2) != 0) ? 0xF0 : 0, 320.0f, 240.0f, 0.0f, 1.0f); Hu3DCameraViewportSet(lbl_1_data_358[var_r31], (var_r31 & 1) * 320, ((var_r31 & 2) != 0) ? 0xF0 : 0, 320.0f, 240.0f, 0.0f, 1.0f);
@ -51,7 +51,8 @@ void fn_1_34B0()
// -------------------------------------------------------------------------- // // -------------------------------------------------------------------------- //
static inline void HuControlCamCenter(Point3d *sp18, Point3d *sp30) { static inline void HuControlCamCenter(Vec *sp18, Vec *sp30)
{
s8 temp_r28; s8 temp_r28;
temp_r28 = HuPadSubStkX[0] & 0xF8; temp_r28 = HuPadSubStkX[0] & 0xF8;
@ -73,10 +74,10 @@ static inline void HuControlCamCenter(Point3d *sp18, Point3d *sp30) {
void fn_1_37DC(omObjData *) void fn_1_37DC(omObjData *)
{ {
Point3d sp3C; Vec sp3C;
Point3d sp30; Vec sp30;
Point3d sp24; Vec sp24;
Point3d sp18; Vec sp18;
float temp_f31; float temp_f31;
if ((HuPadBtnDown[0] & PAD_BUTTON_START) != 0) { if ((HuPadBtnDown[0] & PAD_BUTTON_START) != 0) {
@ -134,17 +135,16 @@ void fn_1_37DC(omObjData *)
// -------------------------------------------------------------------------- // // -------------------------------------------------------------------------- //
void fn_1_439C(omObjData * ) void fn_1_439C(omObjData *)
{ {
s16 var_r31; s16 var_r31;
f32 temp_f30; f32 temp_f30;
f32 temp_f31; f32 temp_f31;
f32 sp10; f32 sp10;
Point3d sp2C; Vec sp2C;
Point3d sp20; Vec sp20;
Point3d sp14; Vec sp14;
for (var_r31 = 0; var_r31 < 4; ++var_r31) for (var_r31 = 0; var_r31 < 4; ++var_r31) {
{
temp_f31 = CRot.x; temp_f31 = CRot.x;
temp_f30 = CRot.y + (var_r31 * 90); temp_f30 = CRot.y + (var_r31 * 90);
sp10 = CRot.z; sp10 = CRot.z;
@ -166,16 +166,16 @@ void fn_1_439C(omObjData * )
// -------------------------------------------------------------------------- // // -------------------------------------------------------------------------- //
const Point3d lbl_1_rodata_18C = {0.0f, 0.0f, 0.0f}; const Vec lbl_1_rodata_18C = { 0.0f, 0.0f, 0.0f };
const Point3d lbl_1_rodata_198 = {0.0f, 1.0f, 0.0f}; const Vec lbl_1_rodata_198 = { 0.0f, 1.0f, 0.0f };
// -------------------------------------------------------------------------- // // -------------------------------------------------------------------------- //
void fn_1_46F0(void) void fn_1_46F0(void)
{ {
Point3d sp20; Vec sp20;
Point3d sp14; Vec sp14;
Point3d sp8; Vec sp8;
s16 var_r31; s16 var_r31;
s16 var_r30; s16 var_r30;
@ -192,8 +192,7 @@ void fn_1_46F0(void)
sp20.z = 1000.0f; sp20.z = 1000.0f;
Hu3DShadowPosSet(&sp20, &sp8, &sp14); Hu3DShadowPosSet(&sp20, &sp8, &sp14);
for (var_r31 = 0; var_r31 < 4; ++var_r31) for (var_r31 = 0; var_r31 < 4; ++var_r31) {
{
var_r30 = var_r31; var_r30 = var_r31;
lbl_1_bss_9EC[var_r31] = CharModelCreate(var_r30, 8); lbl_1_bss_9EC[var_r31] = CharModelCreate(var_r30, 8);
Hu3DModelShadowSet(lbl_1_bss_9EC[var_r31]); Hu3DModelShadowSet(lbl_1_bss_9EC[var_r31]);
@ -201,7 +200,7 @@ void fn_1_46F0(void)
CharModelMotionSet(var_r30, lbl_1_bss_9AC[var_r31][0]); CharModelMotionSet(var_r30, lbl_1_bss_9AC[var_r31][0]);
Hu3DModelAttrSet(lbl_1_bss_9EC[var_r31], HU3D_MOTATTR_LOOP); Hu3DModelAttrSet(lbl_1_bss_9EC[var_r31], HU3D_MOTATTR_LOOP);
Hu3DModelCameraSet(lbl_1_bss_9EC[var_r31], lbl_1_data_358[var_r31]); Hu3DModelCameraSet(lbl_1_bss_9EC[var_r31], lbl_1_data_358[var_r31]);
Hu3DModelPosSet(lbl_1_bss_9EC[var_r31], ((( var_r31 / 4) * 200) - 100), 0.0f, (-( var_r31 % 4) * 150)); Hu3DModelPosSet(lbl_1_bss_9EC[var_r31], (((var_r31 / 4) * 200) - 100), 0.0f, (-(var_r31 % 4) * 150));
Hu3DModelPosSet(lbl_1_bss_9EC[var_r31], 0.0f, 0.0f, 0.0f); Hu3DModelPosSet(lbl_1_bss_9EC[var_r31], 0.0f, 0.0f, 0.0f);
CharModelMotionDataClose(var_r30); CharModelMotionDataClose(var_r30);
} }
@ -210,15 +209,12 @@ void fn_1_46F0(void)
Hu3DModelScaleSet(var_r31, 5.0f, 5.0f, 5.0f); Hu3DModelScaleSet(var_r31, 5.0f, 5.0f, 5.0f);
Hu3DModelShadowMapSet(var_r31); Hu3DModelShadowMapSet(var_r31);
while (TRUE) while (TRUE) {
{
if ((HuPadBtnDown[0] & PAD_BUTTON_Y) != 0) { if ((HuPadBtnDown[0] & PAD_BUTTON_Y) != 0) {
Hu3DCameraKill(2); Hu3DCameraKill(2);
Hu3DCameraKill(4); Hu3DCameraKill(4);
Hu3DCameraKill(8); Hu3DCameraKill(8);
sp20.x = sp20.x = sp20.z = sp20.y = 0.0f;
sp20.z =
sp20.y = 0.0f;
sp20.y += 200.0f; sp20.y += 200.0f;
CharModelCoinEffectCreate(4, &sp20); CharModelCoinEffectCreate(4, &sp20);
} }

View file

@ -14,6 +14,10 @@
#include "REL/modeseldll.h" #include "REL/modeseldll.h"
#ifndef __MWERKS__
#include "game/esprite.h"
#endif
s16 lbl_1_data_100 = -1; s16 lbl_1_data_100 = -1;
float lbl_1_data_104[] = { -55, 0, 0, 0, 60, -57, 806, -71, 0, 0, 0, 100, -131, 900, -87, 0, 0, 0, 46, -117, 566, -87, 0, 0, 0, 46, -117, 566, -90, 0, float lbl_1_data_104[] = { -55, 0, 0, 0, 60, -57, 806, -71, 0, 0, 0, 100, -131, 900, -87, 0, 0, 0, 46, -117, 566, -87, 0, 0, 0, 46, -117, 566, -90, 0,
0, -22, 39, -153, 432, -40, 0, 0, 0, 130, -186, 6530, -23, 0, 0, -9, 1, -70, 1318, -25, 0, 0, 0, 242, 90, 343, -30, 0, 0, 0, 223, -60, 505, -23, 0, -22, 39, -153, 432, -40, 0, 0, 0, 130, -186, 6530, -23, 0, 0, -9, 1, -70, 1318, -25, 0, 0, 0, 242, 90, 343, -30, 0, 0, 0, 223, -60, 505, -23,

View file

@ -19,6 +19,10 @@
#include "REL/resultdll.h" #include "REL/resultdll.h"
#ifndef __MWERKS__
#include "game/esprite.h"
#endif
#define COIN_EFFECT_MAX 180 #define COIN_EFFECT_MAX 180
static StageModel resultBattleModel[] = { { DATA_MAKE_NUM(DATADIR_RESULT, 0x08), 0, 0, -1, -1, { -300, 0, 0 }, { 0, 0, 0 }, { 0.9f, 0.9f, 0.9f } }, static StageModel resultBattleModel[] = { { DATA_MAKE_NUM(DATADIR_RESULT, 0x08), 0, 0, -1, -1, { -300, 0, 0 }, { 0, 0, 0 }, { 0.9f, 0.9f, 0.9f } },

View file

@ -1,5 +1,9 @@
#include "REL/resultdll.h" #include "REL/resultdll.h"
#ifndef __MWERKS__
#include "game/esprite.h"
#endif
s16 stageMdlId[32]; s16 stageMdlId[32];
s16 stageMotId[32]; s16 stageMotId[32];
s16 stageSprId[33]; s16 stageSprId[33];

View file

@ -18,6 +18,10 @@
#include "REL/resultdll.h" #include "REL/resultdll.h"
#ifndef __MWERKS__
#include "game/esprite.h"
#endif
static StageModel resultModel[] = { { DATA_MAKE_NUM(DATADIR_RESULT, 0x00), 1, 0, -1, -1, { 148, 132, 500 }, { 0, 0, 0 }, { 1, 1, 1 } }, static StageModel resultModel[] = { { DATA_MAKE_NUM(DATADIR_RESULT, 0x00), 1, 0, -1, -1, { 148, 132, 500 }, { 0, 0, 0 }, { 1, 1, 1 } },
{ DATA_MAKE_NUM(DATADIR_RESULT, 0x01), 1, 0, -1, -1, { 148, 217, 500 }, { 0, 0, 0 }, { 1, 1, 1 } }, { DATA_MAKE_NUM(DATADIR_RESULT, 0x01), 1, 0, -1, -1, { 148, 217, 500 }, { 0, 0, 0 }, { 1, 1, 1 } },
{ DATA_MAKE_NUM(DATADIR_RESULT, 0x02), 1, 0, -1, -1, { 148, 302, 500 }, { 0, 0, 0 }, { 1, 1, 1 } }, { DATA_MAKE_NUM(DATADIR_RESULT, 0x02), 1, 0, -1, -1, { 148, 302, 500 }, { 0, 0, 0 }, { 1, 1, 1 } },

View file

@ -25,30 +25,29 @@ s16 lbl_1_bss_2E;
s16 lbl_1_bss_2C; s16 lbl_1_bss_2C;
Vec lbl_1_bss_20; Vec lbl_1_bss_20;
Vec lbl_1_bss_14; Vec lbl_1_bss_14;
s32* lbl_1_bss_10; s32 *lbl_1_bss_10;
s16 lbl_1_bss_8[4]; // Item List s16 lbl_1_bss_8[4]; // Item List
Process* lbl_1_bss_4; Process *lbl_1_bss_4;
u8* lbl_1_bss_0; u8 *lbl_1_bss_0;
/* DATA */ /* DATA */
static BoardMapObject lbl_1_data_0[0x10] = { static BoardMapObject lbl_1_data_0[0x10]
{{2550.0f, 0.0f, -450.0f}, {0.0f, 0.0f, 0.0f}, {1.0f, 1.0f, 1.0f}, DATA_MAKE_NUM(DATADIR_W02, 0x000C)}, = { { { 2550.0f, 0.0f, -450.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W02, 0x000C) },
{{-3150.0f, 0.0f, -1350.0f}, {0.0f, 0.0f, 0.0f}, {1.0f, 1.0f, 1.0f}, DATA_MAKE_NUM(DATADIR_W02, 0x000D)}, { { -3150.0f, 0.0f, -1350.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W02, 0x000D) },
{{-3150.0f, 0.0f, 1650.0f}, {0.0f, 0.0f, 0.0f}, {1.0f, 1.0f, 1.0f}, DATA_MAKE_NUM(DATADIR_W02, 0x000E)}, { { -3150.0f, 0.0f, 1650.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W02, 0x000E) },
{{-150.0f, 0.0f, 900.0f}, {0.0f, 0.0f, 0.0f}, {1.0f, 1.0f, 1.0f}, DATA_MAKE_NUM(DATADIR_W02, 0x0008)}, { { -150.0f, 0.0f, 900.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W02, 0x0008) },
{{-150.0f, 0.0f, 900.0f}, {0.0f, 0.0f, 0.0f}, {1.0f, 1.0f, 1.0f}, DATA_MAKE_NUM(DATADIR_W02, 0x0009)}, { { -150.0f, 0.0f, 900.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W02, 0x0009) },
{{-150.0f, 0.0f, 900.0f}, {0.0f, 0.0f, 0.0f}, {1.0f, 1.0f, 1.0f}, DATA_MAKE_NUM(DATADIR_W02, 0x000A)}, { { -150.0f, 0.0f, 900.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W02, 0x000A) },
{{-150.0f, 0.0f, 900.0f}, {0.0f, 0.0f, 0.0f}, {1.0f, 1.0f, 1.0f}, DATA_MAKE_NUM(DATADIR_W02, 0x000B)}, { { -150.0f, 0.0f, 900.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W02, 0x000B) },
{{1350.0f, 0.0f, -300.0f}, {0.0f, 0.0f, 0.0f}, {1.0f, 1.0f, 1.0f}, DATA_MAKE_NUM(DATADIR_W02, 0x0011)}, { { 1350.0f, 0.0f, -300.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W02, 0x0011) },
{{1350.0f, 0.0f, -300.0f}, {0.0f, 0.0f, 0.0f}, {1.0f, 1.0f, 1.0f}, DATA_MAKE_NUM(DATADIR_W02, 0x0012)}, { { 1350.0f, 0.0f, -300.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W02, 0x0012) },
{{1350.0f, 0.0f, -300.0f}, {0.0f, 0.0f, 0.0f}, {1.0f, 1.0f, 1.0f}, DATA_MAKE_NUM(DATADIR_W02, 0x0015)}, { { 1350.0f, 0.0f, -300.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W02, 0x0015) },
{{-300.0f, 0.0f, -900.0f}, {0.0f, 0.0f, 0.0f}, {1.0f, 1.0f, 1.0f}, DATA_MAKE_NUM(DATADIR_W02, 0x0016)}, { { -300.0f, 0.0f, -900.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W02, 0x0016) },
{{1175.0f, 0.0f, -125.0f}, {0.0f, 0.0f, 0.0f}, {1.0f, 1.0f, 1.0f}, DATA_MAKE_NUM(DATADIR_BGUEST, 0x0005)}, { { 1175.0f, 0.0f, -125.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_BGUEST, 0x0005) },
{{-525.0f, 0.0f, -825.0f}, {0.0f, 0.0f, 0.0f}, {1.0f, 1.0f, 1.0f}, DATA_MAKE_NUM(DATADIR_BGUEST, 0x0005)}, { { -525.0f, 0.0f, -825.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_BGUEST, 0x0005) },
{{-2225.0f, 0.0f, -2100.0f}, {0.0f, 0.0f, 0.0f}, {1.0f, 1.0f, 1.0f}, DATA_MAKE_NUM(DATADIR_BGUEST, 0x0005)}, { { -2225.0f, 0.0f, -2100.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_BGUEST, 0x0005) },
{{1925.0f, 0.0f, -2100.0f}, {0.0f, 0.0f, 0.0f}, {1.0f, 1.0f, 1.0f}, DATA_MAKE_NUM(DATADIR_BGUEST, 0x0005)}, { { 1925.0f, 0.0f, -2100.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_BGUEST, 0x0005) },
{{150.0f, 0.0f, 1650.0f}, {0.0f, 0.0f, 0.0f}, {1.0f, 1.0f, 1.0f}, DATA_MAKE_NUM(DATADIR_BGUEST, 0x0005)} { { 150.0f, 0.0f, 1650.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_BGUEST, 0x0005) } };
};
// Special Models // Special Models
s16 lbl_1_data_280 = -1; s16 lbl_1_data_280 = -1;
@ -56,21 +55,15 @@ s16 lbl_1_data_282 = -1;
s16 lbl_1_data_284 = -1; s16 lbl_1_data_284 = -1;
s16 lbl_1_data_286 = -1; s16 lbl_1_data_286 = -1;
s32 lbl_1_data_288[] = { s32 lbl_1_data_288[] = { DATA_MAKE_NUM(DATADIR_W02, 0x0004), DATA_NUM_LISTEND };
DATA_MAKE_NUM(DATADIR_W02, 0x0004),
DATA_NUM_LISTEND
};
s32 lbl_1_data_290[] = { s32 lbl_1_data_290[] = {
DATA_MAKE_NUM(DATADIR_BGUEST, 0x0009), DATA_MAKE_NUM(DATADIR_BGUEST, 0x0009), DATA_MAKE_NUM(DATADIR_BGUEST, 0x0006), DATA_MAKE_NUM(DATADIR_BGUEST, 0x0007),
DATA_MAKE_NUM(DATADIR_BGUEST, 0x0006), DATA_MAKE_NUM(DATADIR_BGUEST, 0x0008), DATA_NUM_LISTEND,
DATA_MAKE_NUM(DATADIR_BGUEST, 0x0007),
DATA_MAKE_NUM(DATADIR_BGUEST, 0x0008),
DATA_NUM_LISTEND,
0x00000000 // Padding 0x00000000 // Padding
}; };
/* Functions */ /* Functions */
//Actual externs // Actual externs
extern void BoardMusStart(s32, s32, s32, s32); extern void BoardMusStart(s32, s32, s32, s32);
extern void BoardAudSeqPause(s32, s32, s32); extern void BoardAudSeqPause(s32, s32, s32);
s8 BoardComPreferItemCheck(s32, s8, s8, s8); s8 BoardComPreferItemCheck(s32, s8, s8, s8);
@ -79,13 +72,15 @@ extern void BoardComKeySetRight();
extern void CharModelDataClose(s16); extern void CharModelDataClose(s16);
// function is probably global. only inlined in rels? // function is probably global. only inlined in rels?
inline s32 get_current_board(void) { inline s32 get_current_board(void)
{
return GWSystem.board; return GWSystem.board;
} }
void BoardCreate(void) { void BoardCreate(void)
{
s32 i, boardData; s32 i, boardData;
BoardMapObject* modelTransform; BoardMapObject *modelTransform;
boardData = get_current_board(); boardData = get_current_board();
lbl_1_bss_0 = GWSystem.board_data; lbl_1_bss_0 = GWSystem.board_data;
@ -106,12 +101,13 @@ void BoardCreate(void) {
BoardModelMotionStart(lbl_1_data_286, 1, 0x40000001); BoardModelMotionStart(lbl_1_data_286, 1, 0x40000001);
BoardLightHookSet(fn_1_72C, fn_1_770); BoardLightHookSet(fn_1_72C, fn_1_770);
for(i = 0; i < 0x10; i++) { for (i = 0; i < 0x10; i++) {
modelTransform = &lbl_1_data_0[i]; modelTransform = &lbl_1_data_0[i];
if (modelTransform->data_num != -1) { if (modelTransform->data_num != -1) {
if ((i == 0xB) || (i == 0xC) || (i == 0xD) || (i == 0xE) || (i == 0xF)) { if ((i == 0xB) || (i == 0xC) || (i == 0xD) || (i == 0xE) || (i == 0xF)) {
lbl_1_bss_10 = lbl_1_data_290; lbl_1_bss_10 = lbl_1_data_290;
} else { }
else {
lbl_1_bss_10 = NULL; lbl_1_bss_10 = NULL;
} }
lbl_1_bss_30[i] = BoardModelCreate(modelTransform->data_num, lbl_1_bss_10, 0); lbl_1_bss_30[i] = BoardModelCreate(modelTransform->data_num, lbl_1_bss_10, 0);
@ -146,7 +142,8 @@ void BoardCreate(void) {
BoardJunctionMaskSet(0x30); BoardJunctionMaskSet(0x30);
} }
void BoardDestroy(void) { void BoardDestroy(void)
{
/* Kill Model List */ /* Kill Model List */
s32 i; s32 i;
for (i = 0; i < 0x10; i++) { for (i = 0; i < 0x10; i++) {
@ -176,17 +173,17 @@ void BoardDestroy(void) {
BoardSpaceDestroy(); BoardSpaceDestroy();
} }
void fn_1_72C(void) { void fn_1_72C(void)
{
s16 var = BoardModelIDGet(lbl_1_data_280); s16 var = BoardModelIDGet(lbl_1_data_280);
Hu3DModelLightInfoSet(var, 1); Hu3DModelLightInfoSet(var, 1);
} }
void fn_1_770(void) { void fn_1_770(void) { }
}
/* Decrement current space's [UNKNOWN] flag */ /* Decrement current space's [UNKNOWN] flag */
s32 fn_1_774(void) { s32 fn_1_774(void)
{
u32 unkFlag; u32 unkFlag;
u32 currPlayer; u32 currPlayer;
u32 currSpace; u32 currSpace;
@ -194,7 +191,7 @@ s32 fn_1_774(void) {
currPlayer = GWSystem.player_curr; currPlayer = GWSystem.player_curr;
currSpace = GWPlayer[currPlayer].space_curr; currSpace = GWPlayer[currPlayer].space_curr;
spaceFlags = BoardSpaceFlagGet(0, currSpace); spaceFlags = BoardSpaceFlagGet(0, currSpace);
//temp_r31 = (temp_r) // temp_r31 = (temp_r)
unkFlag = (spaceFlags & 0x1C0) >> 6; unkFlag = (spaceFlags & 0x1C0) >> 6;
if (unkFlag != 0) { if (unkFlag != 0) {
unkFlag--; unkFlag--;
@ -203,8 +200,9 @@ s32 fn_1_774(void) {
} }
/* Check if can iteract with board object? */ /* Check if can iteract with board object? */
s32 fn_1_800(void) { s32 fn_1_800(void)
BoardSpace* currSpace; {
BoardSpace *currSpace;
s32 currPlayer; s32 currPlayer;
s32 var_r29; s32 var_r29;
@ -212,7 +210,6 @@ s32 fn_1_800(void) {
currSpace = BoardSpaceGet(0, GWPlayer[currPlayer].space_curr); currSpace = BoardSpaceGet(0, GWPlayer[currPlayer].space_curr);
if ((currSpace->flag & 0x30) != 0) { if ((currSpace->flag & 0x30) != 0) {
// If mega mushroom state return // If mega mushroom state return
if (BoardPlayerSizeGet(currPlayer) == 2) { if (BoardPlayerSizeGet(currPlayer) == 2) {
return 0; return 0;
@ -224,9 +221,11 @@ s32 fn_1_800(void) {
if ((currSpace->flag & 0x20) != 0 && (currSpace->flag & 0x10) != 0) { if ((currSpace->flag & 0x20) != 0 && (currSpace->flag & 0x10) != 0) {
var_r29 = 2; var_r29 = 2;
} else if ((currSpace->flag & 0x20) != 0) { }
else if ((currSpace->flag & 0x20) != 0) {
var_r29 = 1; var_r29 = 1;
} else { }
else {
var_r29 = 0; var_r29 = 0;
} }
fn_1_394C(var_r29); fn_1_394C(var_r29);
@ -239,22 +238,23 @@ s32 fn_1_800(void) {
return 0; return 0;
} }
void fn_1_92C(void) { void fn_1_92C(void)
{
fn_1_39F4(); fn_1_39F4();
fn_1_5CF8(); fn_1_5CF8();
} }
void fn_1_950(void) { void fn_1_950(void) { }
} void fn_1_954(void)
{
void fn_1_954(void) {
HuPrcSleep(0x3C); HuPrcSleep(0x3C);
BoardMusStart(1, 0x12, 0x7F, 0); BoardMusStart(1, 0x12, 0x7F, 0);
HuPrcEnd(); HuPrcEnd();
} }
void fn_1_990(void) { void fn_1_990(void)
{
Vec rotation; Vec rotation;
Vec offset; Vec offset;
Vec boardSpacePos; Vec boardSpacePos;
@ -264,13 +264,13 @@ void fn_1_990(void) {
s32 currSpace; s32 currSpace;
s32 spaceLinkFlag; s32 spaceLinkFlag;
currPlayer = GWSystem.player_curr; currPlayer = GWSystem.player_curr;
BoardWinCreateChoice(2, MAKE_MESSID(19, 17), 4, 0); BoardWinCreateChoice(2, MAKE_MESSID(19, 17), 4, 0);
if (GWPlayer[currPlayer].com) { if (GWPlayer[currPlayer].com) {
if (frandBool() != 0) { if (frandBool() != 0) {
BoardComKeySetLeft(); BoardComKeySetLeft();
} else { }
else {
BoardComKeySetRight(); BoardComKeySetRight();
} }
} }
@ -317,7 +317,8 @@ void fn_1_990(void) {
BoardPlayerMotionStart(currPlayer, 1, 0x40000001); BoardPlayerMotionStart(currPlayer, 1, 0x40000001);
} }
void fn_1_C50(void) { void fn_1_C50(void)
{
Vec rotation; Vec rotation;
Vec offset; Vec offset;
s32 currSpace; s32 currSpace;
@ -327,7 +328,7 @@ void fn_1_C50(void) {
s32 i, j; s32 i, j;
currPlayer = GWSystem.player_curr; currPlayer = GWSystem.player_curr;
if (BoardPlayerItemCount((s32) currPlayer) == 3) { if (BoardPlayerItemCount((s32)currPlayer) == 3) {
BoardWinCreate(2, MAKE_MESSID(19, 26), 4); BoardWinCreate(2, MAKE_MESSID(19, 26), 4);
BoardWinWait(); BoardWinWait();
BoardWinKill(); BoardWinKill();
@ -361,7 +362,8 @@ void fn_1_C50(void) {
if (GWPlayer[currPlayer].com) { if (GWPlayer[currPlayer].com) {
if (BoardComPreferItemCheck(currPlayer, lbl_1_bss_8[0], lbl_1_bss_8[1], lbl_1_bss_8[2]) != -1) { if (BoardComPreferItemCheck(currPlayer, lbl_1_bss_8[0], lbl_1_bss_8[1], lbl_1_bss_8[2]) != -1) {
BoardComKeySetLeft(); BoardComKeySetLeft();
} else { }
else {
BoardComKeySetRight(); BoardComKeySetRight();
} }
} }
@ -387,14 +389,14 @@ void fn_1_C50(void) {
offset.x = 0.0f; offset.x = 0.0f;
offset.y = 0.0f; offset.y = 0.0f;
offset.z = -250.0f; offset.z = -250.0f;
BoardCameraMotionStartEx(lbl_1_bss_30[10], (Point3d* ) &rotation, (Point3d* ) &offset, 1500.0f, 25.0f, 0x15); BoardCameraMotionStartEx(lbl_1_bss_30[10], (Vec *)&rotation, (Vec *)&offset, 1500.0f, 25.0f, 0x15);
currSpace = GWPlayer[currPlayer].space_curr; currSpace = GWPlayer[currPlayer].space_curr;
spaceLinkFlags = BoardSpaceLinkFlagSearch(0, currSpace, 0x02000000U); spaceLinkFlags = BoardSpaceLinkFlagSearch(0, currSpace, 0x02000000U);
BoardPlayerMoveBetween(currPlayer, currSpace, spaceLinkFlags); BoardPlayerMoveBetween(currPlayer, currSpace, spaceLinkFlags);
while (GWPlayer[currPlayer].moving) { while (GWPlayer[currPlayer].moving) {
HuPrcVSleep(); HuPrcVSleep();
} }
BoardPlayerMotionStart((s32) currPlayer, 1, 0x40000001); BoardPlayerMotionStart((s32)currPlayer, 1, 0x40000001);
BoardPlayerMotBlendSet(currPlayer, 0xB4, 0xF); BoardPlayerMotBlendSet(currPlayer, 0xB4, 0xF);
while (BoardPlayerMotBlendCheck(currPlayer) == 0) { while (BoardPlayerMotBlendCheck(currPlayer) == 0) {
HuPrcVSleep(); HuPrcVSleep();
@ -409,17 +411,19 @@ void fn_1_C50(void) {
HuPrcVSleep(); HuPrcVSleep();
} }
fn_1_5F90(); fn_1_5F90();
BoardPlayerMotionStart((s32) currPlayer, 1, 0x40000001); BoardPlayerMotionStart((s32)currPlayer, 1, 0x40000001);
HuPrcEnd(); HuPrcEnd();
} }
void fn_1_1070(void) { void fn_1_1070(void)
{
BoardWinKill(); BoardWinKill();
CharModelDataClose(-1); CharModelDataClose(-1);
lbl_1_bss_4 = 0; lbl_1_bss_4 = 0;
} }
void fn_1_10A8(void) { void fn_1_10A8(void)
{
lbl_1_bss_4 = HuPrcChildCreate(fn_1_C50, 0x2003U, 0x2000U, 0, boardMainProc); lbl_1_bss_4 = HuPrcChildCreate(fn_1_C50, 0x2003U, 0x2000U, 0, boardMainProc);
HuPrcDestructorSet2(lbl_1_bss_4, fn_1_1070); HuPrcDestructorSet2(lbl_1_bss_4, fn_1_1070);
while (lbl_1_bss_4) { while (lbl_1_bss_4) {
@ -427,7 +431,8 @@ void fn_1_10A8(void) {
} }
} }
s32 fn_1_1128(void) { s32 fn_1_1128(void)
{
u32 spaceFlags; u32 spaceFlags;
s16 currSpace; s16 currSpace;
currSpace = GWPlayer[GWSystem.player_curr].space_curr; currSpace = GWPlayer[GWSystem.player_curr].space_curr;
@ -436,7 +441,8 @@ s32 fn_1_1128(void) {
if (spaceFlags & 0x200000) { if (spaceFlags & 0x200000) {
fn_1_990(); fn_1_990();
} else if (spaceFlags & 0x400000) { }
else if (spaceFlags & 0x400000) {
lbl_1_bss_4 = HuPrcChildCreate(fn_1_C50, 0x2003U, 0x2000U, 0, boardMainProc); lbl_1_bss_4 = HuPrcChildCreate(fn_1_C50, 0x2003U, 0x2000U, 0, boardMainProc);
HuPrcDestructorSet2(lbl_1_bss_4, fn_1_1070); HuPrcDestructorSet2(lbl_1_bss_4, fn_1_1070);
while (lbl_1_bss_4) { while (lbl_1_bss_4) {
@ -447,7 +453,8 @@ s32 fn_1_1128(void) {
BoardRollDispSet(1); BoardRollDispSet(1);
} }
void fn_1_121C(u32 mesg) { void fn_1_121C(u32 mesg)
{
BoardWinCreate(2, mesg, 4); BoardWinCreate(2, mesg, 4);
BoardWinWait(); BoardWinWait();
BoardWinKill(); BoardWinKill();

View file

@ -1,26 +1,21 @@
#include "REL/w02Dll.h" #include "REL/w02Dll.h"
#include "game/audio.h" #include "game/audio.h"
#include "game/frand.h"
#include "game/chrman.h" #include "game/chrman.h"
#include "game/frand.h"
#include "game/pad.h" #include "game/pad.h"
#include "ext_math.h" #include "ext_math.h"
/* DATA */ /* DATA */
s32 lbl_1_data_4D0[] = { s32 lbl_1_data_4D0[] = { -1, 2, 2, 2, -1, 1, 1, 1, -1, 0, 0, 0, -1, 3, 3, 3 };
-1, 2, 2, 2,
-1, 1, 1, 1,
-1, 0, 0, 0,
-1, 3, 3, 3
};
Process *lbl_1_bss_38C; Process *lbl_1_bss_38C;
s16 lbl_1_bss_388; s16 lbl_1_bss_388;
s32 lbl_1_bss_384; s32 lbl_1_bss_384;
float lbl_1_bss_380; float lbl_1_bss_380;
//Local Functions // Local Functions
void fn_1_D3AC(void); void fn_1_D3AC(void);
s32 fn_1_D8C4(void); s32 fn_1_D8C4(void);
void fn_1_DF48(void); void fn_1_DF48(void);
@ -34,10 +29,10 @@ typedef struct UnkPoint {
Vec point; Vec point;
} UnkPoint; } UnkPoint;
/* FUNCTIONS */ /* FUNCTIONS */
void fn_1_BC1C(void) { void fn_1_BC1C(void)
Point3d sp8; {
Vec sp8;
BoardModelPosGet(lbl_1_bss_30[15], &sp8); BoardModelPosGet(lbl_1_bss_30[15], &sp8);
sp8.z -= 90.0f; sp8.z -= 90.0f;
@ -50,13 +45,14 @@ void fn_1_BC1C(void) {
BoardModelRotSetV(lbl_1_bss_30[15], &sp8); BoardModelRotSetV(lbl_1_bss_30[15], &sp8);
} }
void fn_1_BCFC(void) { void fn_1_BCFC(void)
{
s32 spaceLinkFlags; s32 spaceLinkFlags;
s32 temp_r30; s32 temp_r30;
s32 temp_r29; s32 temp_r29;
BoardRollDispSet(0); BoardRollDispSet(0);
spaceLinkFlags = BoardSpaceLinkFlagSearch(0, (s32) GWPlayer[lbl_1_bss_388].space_curr, 2U); spaceLinkFlags = BoardSpaceLinkFlagSearch(0, (s32)GWPlayer[lbl_1_bss_388].space_curr, 2U);
BoardPlayerMoveToAsync(lbl_1_bss_388, spaceLinkFlags); BoardPlayerMoveToAsync(lbl_1_bss_388, spaceLinkFlags);
while (GWPlayer[lbl_1_bss_388].moving) { while (GWPlayer[lbl_1_bss_388].moving) {
HuPrcVSleep(); HuPrcVSleep();
@ -64,8 +60,8 @@ void fn_1_BCFC(void) {
BoardPlayerIdleSet(lbl_1_bss_388); BoardPlayerIdleSet(lbl_1_bss_388);
BoardCameraViewSet(2); BoardCameraViewSet(2);
BoardCameraMotionWait(); BoardCameraMotionWait();
BoardPlayerMotBlendSet((s32) lbl_1_bss_388, 0x5A, 0xF); BoardPlayerMotBlendSet((s32)lbl_1_bss_388, 0x5A, 0xF);
while (BoardPlayerMotBlendCheck((s32) lbl_1_bss_388) == 0) { while (BoardPlayerMotBlendCheck((s32)lbl_1_bss_388) == 0) {
HuPrcVSleep(); HuPrcVSleep();
} }
BoardModelRotYSet(lbl_1_bss_30[15], -90.0f); BoardModelRotYSet(lbl_1_bss_30[15], -90.0f);
@ -81,16 +77,18 @@ void fn_1_BCFC(void) {
BoardCameraMotionWait(); BoardCameraMotionWait();
BoardRollDispSet(1); BoardRollDispSet(1);
HuPrcKill(NULL); HuPrcKill(NULL);
while(TRUE) { while (TRUE) {
HuPrcVSleep(); HuPrcVSleep();
} }
} }
s32 fn_1_BE74(void) { s32 fn_1_BE74(void)
{
lbl_1_bss_38C = 0; lbl_1_bss_38C = 0;
} }
s32 fn_1_BE88(void) { s32 fn_1_BE88(void)
{
s32 coinAmount; s32 coinAmount;
s32 var_r30; s32 var_r30;
s16 playerCoinRegion; s16 playerCoinRegion;
@ -100,7 +98,7 @@ s32 fn_1_BE88(void) {
s32 mesg; s32 mesg;
var_r30 = -1; var_r30 = -1;
coinAmount = BoardPlayerCoinsGet((s32) lbl_1_bss_388); coinAmount = BoardPlayerCoinsGet((s32)lbl_1_bss_388);
if (coinAmount < 5) { if (coinAmount < 5) {
return var_r30; return var_r30;
} }
@ -112,7 +110,8 @@ s32 fn_1_BE88(void) {
if (GWPlayer[lbl_1_bss_388].com) { if (GWPlayer[lbl_1_bss_388].com) {
if (frandBool()) { if (frandBool()) {
BoardComKeySetRight(); BoardComKeySetRight();
} else { }
else {
BoardComKeySetLeft(); BoardComKeySetLeft();
} }
} }
@ -136,17 +135,18 @@ s32 fn_1_BE88(void) {
if (GWPlayer[lbl_1_bss_388].com) { if (GWPlayer[lbl_1_bss_388].com) {
if (playerCoinRegion < 2) { if (playerCoinRegion < 2) {
BoardComKeySetUp(); BoardComKeySetUp();
} else if (frandBool()) { }
else if (frandBool()) {
BoardComKeySetUp(); BoardComKeySetUp();
} else { }
else {
BoardComKeySetDown(); BoardComKeySetDown();
} }
} }
BoardWinWait(); BoardWinWait();
BoardWinKill(); BoardWinKill();
bribeChoice = BoardWinChoiceGet(); bribeChoice = BoardWinChoiceGet();
if (bribeChoice == -1 || if (bribeChoice == -1 || bribeChoice == 3) {
bribeChoice == 3) {
continue; continue;
} }
@ -170,7 +170,6 @@ s32 fn_1_BE88(void) {
} }
fn_1_121C(mesg); fn_1_121C(mesg);
for (i = 0; i < coinAmount; i++) { for (i = 0; i < coinAmount; i++) {
BoardPlayerCoinsAdd(lbl_1_bss_388, -1); BoardPlayerCoinsAdd(lbl_1_bss_388, -1);
HuAudFXPlay(0xE); HuAudFXPlay(0xE);
@ -178,7 +177,8 @@ s32 fn_1_BE88(void) {
} }
HuAudFXPlay(0xF); HuAudFXPlay(0xF);
// If chose to view map // If chose to view map
} else if (rouletteChoice == 2) { }
else if (rouletteChoice == 2) {
BoardViewMapExec(lbl_1_bss_388); BoardViewMapExec(lbl_1_bss_388);
} }
} while (rouletteChoice == 2); // While viewing map } while (rouletteChoice == 2); // While viewing map
@ -188,13 +188,13 @@ s32 fn_1_BE88(void) {
return var_r30; return var_r30;
} }
s32 fn_1_C108(s32 arg0) { s32 fn_1_C108(s32 arg0)
{
Vec sp34; Vec sp34;
Vec sp28; Vec sp28;
Vec sp1C; Vec sp1C;
Vec sp10; Vec sp10;
f32 var_f27; f32 var_f27;
f32 var_f26; f32 var_f26;
f32 var_f25; f32 var_f25;
@ -210,15 +210,16 @@ s32 fn_1_C108(s32 arg0) {
s32 var_r29; s32 var_r29;
s32 i; s32 i;
if ((s32) frandmod(0x64U) < arg0) { if ((s32)frandmod(0x64U) < arg0) {
s32 temp_r25 = fn_1_E2AC(); s32 temp_r25 = fn_1_E2AC();
var_r27 = 4; var_r27 = 4;
var_r29 = frandmod(3U); var_r29 = frandmod(3U);
if ((s32) frandmod(0x64U) < 0x14) { if ((s32)frandmod(0x64U) < 0x14) {
var_r29 += 1; var_r29 += 1;
} }
var_r29 = var_r29 + (3 - temp_r25) * 4; var_r29 = var_r29 + (3 - temp_r25) * 4;
} else { }
else {
var_r29 = frandmod(0x10U); var_r29 = frandmod(0x10U);
var_r27 = frandmod(4U); var_r27 = frandmod(4U);
} }
@ -287,7 +288,7 @@ s32 fn_1_C108(s32 arg0) {
sp1C.z = -50.0f; sp1C.z = -50.0f;
// Roulette motion and ball ? // Roulette motion and ball ?
while(TRUE) { while (TRUE) {
sp1C.y = var_f27 - (0.55833334f * (0.25f * (var_f31 * var_f31))); sp1C.y = var_f27 - (0.55833334f * (0.25f * (var_f31 * var_f31)));
var_f31 += 1.0f; var_f31 += 1.0f;
BoardModelPosGet(lbl_1_bss_30[6], &sp28); BoardModelPosGet(lbl_1_bss_30[6], &sp28);
@ -295,11 +296,11 @@ s32 fn_1_C108(s32 arg0) {
var_f25 = VECDistanceXZ(&sp28, &sp10); var_f25 = VECDistanceXZ(&sp28, &sp10);
if (var_f25 >= 430.0f) { if (var_f25 >= 430.0f) {
if (sp28.y <= (55.0f + sp10.y)) { if (sp28.y <= (55.0f + sp10.y)) {
VECSubtract(&sp28, &sp10, (Vec* ) &sp1C); VECSubtract(&sp28, &sp10, (Vec *)&sp1C);
VECNormalize((Vec* ) &sp1C, (Vec* ) &sp1C); VECNormalize((Vec *)&sp1C, (Vec *)&sp1C);
sp1C.y = 0.0f; sp1C.y = 0.0f;
VECScale((Vec* ) &sp1C, (Vec* ) &sp1C, 429.0f); VECScale((Vec *)&sp1C, (Vec *)&sp1C, 429.0f);
VECAdd((Vec* ) &sp1C, &sp10, (Vec* ) &sp1C); VECAdd((Vec *)&sp1C, &sp10, (Vec *)&sp1C);
sp28.x = sp1C.x; sp28.x = sp1C.x;
sp28.z = sp1C.z; sp28.z = sp1C.z;
sp1C.x = -5.0f; sp1C.x = -5.0f;
@ -312,31 +313,31 @@ s32 fn_1_C108(s32 arg0) {
if (var_r27 >= 3) { if (var_r27 >= 3) {
break; break;
} }
//var_f31 = ((1.0f/255.0f) * (6.0f * frand8())); // var_f31 = ((1.0f/255.0f) * (6.0f * frand8()));
var_f27 = 6.0f + ((1.0f/255.0f) * (6.0f * frand8())); var_f27 = 6.0f + ((1.0f / 255.0f) * (6.0f * frand8()));
var_f31 = 1.0f; var_f31 = 1.0f;
var_r27 += 1; var_r27 += 1;
//var_f31 = ((1.0f/255.0f) * (5.0f * frand8())); // var_f31 = ((1.0f/255.0f) * (5.0f * frand8()));
sp1C.x = 15.0f + ((1.0f/255.0f) * (5.0f * frand8())); sp1C.x = 15.0f + ((1.0f / 255.0f) * (5.0f * frand8()));
sp1C.z = 15.0f + ((1.0f/255.0f) * (5.0f * frand8())); sp1C.z = 15.0f + ((1.0f / 255.0f) * (5.0f * frand8()));
HuAudFXPlay(0x41E); HuAudFXPlay(0x41E);
} }
BoardModelPosSetV(lbl_1_bss_30[6], (Vec* ) &sp28); BoardModelPosSetV(lbl_1_bss_30[6], (Vec *)&sp28);
fn_1_E310(var_f29); fn_1_E310(var_f29);
HuPrcVSleep(); HuPrcVSleep();
} }
HuAudFXPlay(0x41E); HuAudFXPlay(0x41E);
VECSubtract(&sp28, &sp10, (Vec* ) &sp1C); VECSubtract(&sp28, &sp10, (Vec *)&sp1C);
VECNormalize((Vec* ) &sp1C, (Vec* ) &sp1C); VECNormalize((Vec *)&sp1C, (Vec *)&sp1C);
var_f31 = atan2d(-sp1C.z, sp1C.x); var_f31 = atan2d(-sp1C.z, sp1C.x);
BoardModelRotGet(lbl_1_bss_30[4], &sp34); BoardModelRotGet(lbl_1_bss_30[4], &sp34);
var_f31 = var_f31 - sp34.y; var_f31 = var_f31 - sp34.y;
if (var_f31 < 0.0f) { if (var_f31 < 0.0f) {
var_f31 += 360.0f; var_f31 += 360.0f;
} }
var_r30 = (s32) (var_f31 / 22.5f); var_r30 = (s32)(var_f31 / 22.5f);
if (fmod(var_f31, 22.5) > 11.25) { if (fmod(var_f31, 22.5) > 11.25) {
var_r30 += 1; var_r30 += 1;
} }
@ -345,7 +346,7 @@ s32 fn_1_C108(s32 arg0) {
} }
sp1C.y = 0.0f; sp1C.y = 0.0f;
while(TRUE) { while (TRUE) {
fn_1_E310(var_f29); fn_1_E310(var_f29);
BoardModelRotGet(lbl_1_bss_30[4], &sp34); BoardModelRotGet(lbl_1_bss_30[4], &sp34);
var_f31 = (22.5f * var_r30) + sp34.y; // TODO: Update rodata for asm change var_f31 = (22.5f * var_r30) + sp34.y; // TODO: Update rodata for asm change
@ -356,8 +357,7 @@ s32 fn_1_C108(s32 arg0) {
sp28.x = sp1C.x; sp28.x = sp1C.x;
sp28.z = sp1C.z; sp28.z = sp1C.z;
BoardModelPosSetV(lbl_1_bss_30[6], &sp28); BoardModelPosSetV(lbl_1_bss_30[6], &sp28);
if (sp34.y >= 292.5f && if (sp34.y >= 292.5f && sp34.y < 315.0f) {
sp34.y < 315.0f) {
break; break;
} }
HuPrcVSleep(); HuPrcVSleep();
@ -367,14 +367,14 @@ s32 fn_1_C108(s32 arg0) {
var_f29 += 0.375f; var_f29 += 0.375f;
fn_1_E310(var_f29); fn_1_E310(var_f29);
BoardModelRotGet(lbl_1_bss_30[4], &sp34); BoardModelRotGet(lbl_1_bss_30[4], &sp34);
var_f31 = (22.5f * (f32) var_r30) + sp34.y; var_f31 = (22.5f * (f32)var_r30) + sp34.y;
sp1C.x = cosd(var_f31); sp1C.x = cosd(var_f31);
sp1C.z = -sind(var_f31); sp1C.z = -sind(var_f31);
VECScale(&sp1C, &sp1C, 429.0f); VECScale(&sp1C, &sp1C, 429.0f);
VECAdd((Vec* ) &sp1C, &sp10, (Vec* ) &sp1C); VECAdd((Vec *)&sp1C, &sp10, (Vec *)&sp1C);
sp28.x = sp1C.x; sp28.x = sp1C.x;
sp28.z = sp1C.z; sp28.z = sp1C.z;
BoardModelPosSetV(lbl_1_bss_30[6], (Vec* ) &sp28); BoardModelPosSetV(lbl_1_bss_30[6], (Vec *)&sp28);
var_r28 += -136.51666f; var_r28 += -136.51666f;
HuAudFXPitchSet(lbl_1_bss_384, var_r28); HuAudFXPitchSet(lbl_1_bss_384, var_r28);
HuPrcVSleep(); HuPrcVSleep();
@ -385,7 +385,8 @@ s32 fn_1_C108(s32 arg0) {
} }
// Place player on space post roulette? // Place player on space post roulette?
void fn_1_CD04(s32 arg0) { void fn_1_CD04(s32 arg0)
{
Vec sp24; Vec sp24;
Vec sp18; Vec sp18;
Vec spC; Vec spC;
@ -400,7 +401,7 @@ void fn_1_CD04(s32 arg0) {
s32 var_r29; s32 var_r29;
s32 var_r28; s32 var_r28;
s32 var_r30; s32 var_r30;
BoardSpace* temp_r31; BoardSpace *temp_r31;
if (arg0 < 0) { if (arg0 < 0) {
fn_1_D3AC(); fn_1_D3AC();
@ -410,8 +411,8 @@ void fn_1_CD04(s32 arg0) {
for (var_r28 = 0; var_r28 < temp_r31->link_cnt; var_r28++) { for (var_r28 = 0; var_r28 < temp_r31->link_cnt; var_r28++) {
var_r29 = temp_r31->link[var_r28]; var_r29 = temp_r31->link[var_r28];
var_r26 = ( (BoardSpaceFlagGet(0, var_r29) & 0xE) >> 1U); var_r26 = ((BoardSpaceFlagGet(0, var_r29) & 0xE) >> 1U);
if ( var_r26 == (arg0 + 2)) { if (var_r26 == (arg0 + 2)) {
break; break;
} }
} }
@ -427,7 +428,7 @@ void fn_1_CD04(s32 arg0) {
while (BoardModelMotionTimeGet(lbl_1_bss_30[5]) < 30.0f) { while (BoardModelMotionTimeGet(lbl_1_bss_30[5]) < 30.0f) {
spC.x -= 0.25f; spC.x -= 0.25f;
spC.y -= 0.25f; spC.y -= 0.25f;
//temp_f1 = spC.z; // temp_f1 = spC.z;
spC.z = spC.z - 0.25f; spC.z = spC.z - 0.25f;
BoardPlayerScaleSetV(lbl_1_bss_388, &spC); BoardPlayerScaleSetV(lbl_1_bss_388, &spC);
HuPrcVSleep(); HuPrcVSleep();
@ -443,7 +444,8 @@ void fn_1_CD04(s32 arg0) {
if (GWPlayer[lbl_1_bss_388].bowser_suit) { if (GWPlayer[lbl_1_bss_388].bowser_suit) {
BoardModelVisibilitySet(BoardBowserSuitModelGet(), 0); BoardModelVisibilitySet(BoardBowserSuitModelGet(), 0);
BoardModelVisibilitySet(BoardBowserSuitPlayerModelGet(), 0); BoardModelVisibilitySet(BoardBowserSuitPlayerModelGet(), 0);
} else { }
else {
BoardModelVisibilitySet(BoardPlayerModelGet(lbl_1_bss_388), 0); BoardModelVisibilitySet(BoardPlayerModelGet(lbl_1_bss_388), 0);
} }
HuAudFXPlay(0x421); HuAudFXPlay(0x421);
@ -454,7 +456,7 @@ void fn_1_CD04(s32 arg0) {
} }
BoardModelPosGet(lbl_1_bss_30[5], &sp18); BoardModelPosGet(lbl_1_bss_30[5], &sp18);
temp_f30 = atan2d(sp24.x - sp18.x, sp24.z - sp18.z)/30; temp_f30 = atan2d(sp24.x - sp18.x, sp24.z - sp18.z) / 30;
while (BoardModelMotionTimeGet(lbl_1_bss_30[5]) < 90.0f) { while (BoardModelMotionTimeGet(lbl_1_bss_30[5]) < 90.0f) {
BoardModelRotYSet(lbl_1_bss_30[5], temp_f30 + BoardModelRotYGet(lbl_1_bss_30[5])); BoardModelRotYSet(lbl_1_bss_30[5], temp_f30 + BoardModelRotYGet(lbl_1_bss_30[5]));
@ -464,22 +466,23 @@ void fn_1_CD04(s32 arg0) {
omVibrate(lbl_1_bss_388, 0xC, 4, 2); omVibrate(lbl_1_bss_388, 0xC, 4, 2);
if (GWPlayer[lbl_1_bss_388].bowser_suit) { if (GWPlayer[lbl_1_bss_388].bowser_suit) {
BoardModelVisibilitySet(BoardBowserSuitModelGet(),1); BoardModelVisibilitySet(BoardBowserSuitModelGet(), 1);
BoardModelVisibilitySet(BoardBowserSuitPlayerModelGet(),1); BoardModelVisibilitySet(BoardBowserSuitPlayerModelGet(), 1);
} else { }
else {
BoardModelVisibilitySet(BoardPlayerModelGet(lbl_1_bss_388), 1); BoardModelVisibilitySet(BoardPlayerModelGet(lbl_1_bss_388), 1);
} }
GWPlayer[lbl_1_bss_388].space_curr =(s16) var_r29; GWPlayer[lbl_1_bss_388].space_curr = (s16)var_r29;
BoardPlayerPosSetV(lbl_1_bss_388, &sp24); BoardPlayerPosSetV(lbl_1_bss_388, &sp24);
temp_r31 = BoardSpaceGet(0, var_r29); temp_r31 = BoardSpaceGet(0, var_r29);
for ( var_r30 = 0; var_r30 < (s32) temp_r31->link_cnt; var_r30++) { for (var_r30 = 0; var_r30 < (s32)temp_r31->link_cnt; var_r30++) {
if (BoardSpaceTypeGet(0, temp_r31->link[var_r30])) { if (BoardSpaceTypeGet(0, temp_r31->link[var_r30])) {
break; break;
} }
} }
if (var_r30 != (s32) temp_r31->link_cnt) { if (var_r30 != (s32)temp_r31->link_cnt) {
BoardSpacePosGet(0, temp_r31->link[var_r30], &sp18); BoardSpacePosGet(0, temp_r31->link[var_r30], &sp18);
BoardPlayerRotYSet(lbl_1_bss_388, atan2d(sp18.x - sp24.x, sp18.z - sp24.z)); BoardPlayerRotYSet(lbl_1_bss_388, atan2d(sp18.x - sp24.x, sp18.z - sp24.z));
} }
@ -520,22 +523,22 @@ void fn_1_D3AC(void)
BoardStatusShowSetAll(1); BoardStatusShowSetAll(1);
BoardPlayerMotBlendSet(lbl_1_bss_388, 0, 15); BoardPlayerMotBlendSet(lbl_1_bss_388, 0, 15);
BoardPlayerPosGet(lbl_1_bss_388, &sp14); BoardPlayerPosGet(lbl_1_bss_388, &sp14);
for(temp_r31=0; temp_r31<20; temp_r31++) { for (temp_r31 = 0; temp_r31 < 20; temp_r31++) {
sp38[temp_r31] = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BOARD, 0x0A), NULL, 1); sp38[temp_r31] = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BOARD, 0x0A), NULL, 1);
sp2C.x = (sp14.x-25.0f)+((1.0f/255.0f)*(frand8()*50.0f)); sp2C.x = (sp14.x - 25.0f) + ((1.0f / 255.0f) * (frand8() * 50.0f));
sp2C.y = (sp14.y+1200.0f)+(temp_r31*130.0f)+((1.0f/255.0f)*(frand8()*60.0f)); sp2C.y = (sp14.y + 1200.0f) + (temp_r31 * 130.0f) + ((1.0f / 255.0f) * (frand8() * 60.0f));
sp2C.z = (sp14.z-25.0f)+((1.0f/255.0f)*(frand8()*50.0f)); sp2C.z = (sp14.z - 25.0f) + ((1.0f / 255.0f) * (frand8() * 50.0f));
BoardModelPosSetV(sp38[temp_r31], &sp2C); BoardModelPosSetV(sp38[temp_r31], &sp2C);
sp20.x = sp20.z = 0; sp20.x = sp20.z = 0;
sp20.y = (1.0f/255.0f)*(frand8()*360.0f); sp20.y = (1.0f / 255.0f) * (frand8() * 360.0f);
BoardModelRotSetV(sp38[temp_r31], &sp20); BoardModelRotSetV(sp38[temp_r31], &sp20);
} }
temp_f31 = -4; temp_f31 = -4;
temp_r30 = 0; temp_r30 = 0;
temp_f30 = sp8[BoardPlayerSizeGet(lbl_1_bss_388)]; temp_f30 = sp8[BoardPlayerSizeGet(lbl_1_bss_388)];
while(1) { while (1) {
for(temp_r31=0; temp_r31<20; temp_r31++) { for (temp_r31 = 0; temp_r31 < 20; temp_r31++) {
if(temp_r31 < temp_r30) { if (temp_r31 < temp_r30) {
continue; continue;
} }
BoardModelPosGet(sp38[temp_r31], &sp2C); BoardModelPosGet(sp38[temp_r31], &sp2C);
@ -544,36 +547,35 @@ void fn_1_D3AC(void)
sp20.y += 45.0f; sp20.y += 45.0f;
BoardModelPosSetV(sp38[temp_r31], &sp2C); BoardModelPosSetV(sp38[temp_r31], &sp2C);
BoardModelRotSetV(sp38[temp_r31], &sp20); BoardModelRotSetV(sp38[temp_r31], &sp20);
if(sp2C.y <= sp14.y+(180.0f*temp_f30)) { if (sp2C.y <= sp14.y + (180.0f * temp_f30)) {
CharModelCoinEffectCreate(1, &sp2C); CharModelCoinEffectCreate(1, &sp2C);
BoardModelVisibilitySet(sp38[temp_r31], 0); BoardModelVisibilitySet(sp38[temp_r31], 0);
temp_r30++; temp_r30++;
BoardPlayerCoinsAdd(lbl_1_bss_388, 1); BoardPlayerCoinsAdd(lbl_1_bss_388, 1);
HuAudFXPlay(7); HuAudFXPlay(7);
omVibrate(lbl_1_bss_388, 12, 6, 6); omVibrate(lbl_1_bss_388, 12, 6, 6);
} }
} }
temp_f31 *= 1.05f; temp_f31 *= 1.05f;
if(temp_f31 < -40.0f) { if (temp_f31 < -40.0f) {
temp_f31 = -40.0f; temp_f31 = -40.0f;
} }
if(temp_r30 == 20) { if (temp_r30 == 20) {
BoardPlayerMotionShiftSet(lbl_1_bss_388, 7, 0, 10, HU3D_MOTATTR_NONE); BoardPlayerMotionShiftSet(lbl_1_bss_388, 7, 0, 10, HU3D_MOTATTR_NONE);
break; break;
} }
HuPrcVSleep(); HuPrcVSleep();
} }
while(!BoardPlayerMotionEndCheck(lbl_1_bss_388)) { while (!BoardPlayerMotionEndCheck(lbl_1_bss_388)) {
HuPrcVSleep(); HuPrcVSleep();
} }
for(temp_r31=0; temp_r31<20; temp_r31++) { for (temp_r31 = 0; temp_r31 < 20; temp_r31++) {
BoardModelKill(sp38[temp_r31]); BoardModelKill(sp38[temp_r31]);
} }
HuPrcSleep(60); HuPrcSleep(60);
BoardPlayerMotBlendSet(lbl_1_bss_388, 180, 15); BoardPlayerMotBlendSet(lbl_1_bss_388, 180, 15);
BoardStatusShowSetAll(0); BoardStatusShowSetAll(0);
while(!BoardPlayerMotBlendCheck(lbl_1_bss_388)) { while (!BoardPlayerMotBlendCheck(lbl_1_bss_388)) {
HuPrcVSleep(); HuPrcVSleep();
} }
} }
@ -606,12 +608,12 @@ s32 fn_1_D8C4(void)
fn_1_121C(MAKE_MESSID(0x13, 0x09)); fn_1_121C(MAKE_MESSID(0x13, 0x09));
temp_r29 = BoardSpaceGet(0, BoardSpaceFlagSearch(0, 0x800)); temp_r29 = BoardSpaceGet(0, BoardSpaceFlagSearch(0, 0x800));
BoardModelPosGet(lbl_1_bss_30[3], &sp40); BoardModelPosGet(lbl_1_bss_30[3], &sp40);
for(temp_r31=0; temp_r31<4; temp_r31++) { for (temp_r31 = 0; temp_r31 < 4; temp_r31++) {
sp14[temp_r31] = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BOARD, 0x00), NULL, 1); sp14[temp_r31] = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BOARD, 0x00), NULL, 1);
BoardModelLayerSet(sp14[temp_r31], 2); BoardModelLayerSet(sp14[temp_r31], 2);
for(temp_r28=0; temp_r28<temp_r29->link_cnt; temp_r28++) { for (temp_r28 = 0; temp_r28 < temp_r29->link_cnt; temp_r28++) {
temp_r21 = (BoardSpaceFlagGet(0, temp_r29->link[temp_r28]) & 0xE) >> 1; temp_r21 = (BoardSpaceFlagGet(0, temp_r29->link[temp_r28]) & 0xE) >> 1;
if(temp_r21 == temp_r31+2) { if (temp_r21 == temp_r31 + 2) {
break; break;
} }
} }
@ -634,16 +636,17 @@ s32 fn_1_D8C4(void)
HuWinMesSpeedSet(temp_r30, 0); HuWinMesSpeedSet(temp_r30, 0);
temp_r23 = GWPlayer[lbl_1_bss_388].port; temp_r23 = GWPlayer[lbl_1_bss_388].port;
temp_f30 = 0; temp_f30 = 0;
temp_r22 = frandmod(20)+20; temp_r22 = frandmod(20) + 20;
restart: restart:
while(1) { while (1) {
if(GWPlayer[lbl_1_bss_388].com) { if (GWPlayer[lbl_1_bss_388].com) {
temp_r27 = 0; temp_r27 = 0;
temp_r26 = 0; temp_r26 = 0;
if(temp_r22) { if (temp_r22) {
temp_r22--; temp_r22--;
temp_r24 = 0; temp_r24 = 0;
} else { }
else {
temp_r24 = PAD_BUTTON_A; temp_r24 = PAD_BUTTON_A;
} }
break; break;
@ -651,60 +654,60 @@ s32 fn_1_D8C4(void)
temp_r24 = HuPadBtnDown[temp_r23]; temp_r24 = HuPadBtnDown[temp_r23];
temp_r27 = HuPadStkX[temp_r23]; temp_r27 = HuPadStkX[temp_r23];
temp_r26 = HuPadStkY[temp_r23]; temp_r26 = HuPadStkY[temp_r23];
if(!(temp_r24 & PAD_TRIGGER_Z)) { if (!(temp_r24 & PAD_TRIGGER_Z)) {
break; break;
} }
HuAudFXPlay(1); HuAudFXPlay(1);
for(temp_r31=0; temp_r31<4; temp_r31++) { for (temp_r31 = 0; temp_r31 < 4; temp_r31++) {
BoardModelVisibilitySet(sp14[temp_r31], 0); BoardModelVisibilitySet(sp14[temp_r31], 0);
} }
HuWinDispOff(temp_r30); HuWinDispOff(temp_r30);
BoardViewMapExec(lbl_1_bss_388); BoardViewMapExec(lbl_1_bss_388);
HuWinDispOn(temp_r30); HuWinDispOn(temp_r30);
for(temp_r31=0; temp_r31<4; temp_r31++) { for (temp_r31 = 0; temp_r31 < 4; temp_r31++) {
BoardModelVisibilitySet(sp14[temp_r31], 1); BoardModelVisibilitySet(sp14[temp_r31], 1);
} }
} }
if(!(temp_r24 & PAD_BUTTON_A)) { if (!(temp_r24 & PAD_BUTTON_A)) {
if(abs(temp_r27) < 10) { if (abs(temp_r27) < 10) {
temp_r27 = 0; temp_r27 = 0;
} }
if(abs(temp_r26) < 10) { if (abs(temp_r26) < 10) {
temp_r26 = 0; temp_r26 = 0;
} }
if(temp_r27 != 0 || temp_r26 != 0) { if (temp_r27 != 0 || temp_r26 != 0) {
temp_f31 = atan2d(-temp_r27, -temp_r26); temp_f31 = atan2d(-temp_r27, -temp_r26);
if(temp_f31 < 0.0f) { if (temp_f31 < 0.0f) {
temp_f31 += 360.0f; temp_f31 += 360.0f;
} }
temp_r31 = temp_f31/90.0f; temp_r31 = temp_f31 / 90.0f;
temp_f31 = fmod(temp_f31, 90.0); temp_f31 = fmod(temp_f31, 90.0);
if(temp_r31 != temp_r25 && temp_f31 >= 20.0f && temp_f31 <= 70.0f){ if (temp_r31 != temp_r25 && temp_f31 >= 20.0f && temp_f31 <= 70.0f) {
temp_f30 = 0; temp_f30 = 0;
temp_r25 = temp_r31; temp_r25 = temp_r31;
HuAudFXPlay(0); HuAudFXPlay(0);
} }
} }
for(temp_r31=0; temp_r31<4; temp_r31++) { for (temp_r31 = 0; temp_r31 < 4; temp_r31++) {
if(temp_r31 == temp_r25) { if (temp_r31 == temp_r25) {
sp1C.x = sp1C.y = sp1C.z = sind(temp_f30)+3.0; sp1C.x = sp1C.y = sp1C.z = sind(temp_f30) + 3.0;
temp_f30 += 8.0f; temp_f30 += 8.0f;
if(temp_f30 > 180.0f) { if (temp_f30 > 180.0f) {
temp_f30 -= 180.0f; temp_f30 -= 180.0f;
} }
} else { }
else {
sp1C.x = sp1C.y = sp1C.z = 3.0f; sp1C.x = sp1C.y = sp1C.z = 3.0f;
} }
BoardModelScaleSetV(sp14[temp_r31], &sp1C); BoardModelScaleSetV(sp14[temp_r31], &sp1C);
} }
HuPrcVSleep(); HuPrcVSleep();
goto restart; goto restart;
} else { }
else {
HuAudFXPlay(2); HuAudFXPlay(2);
for(temp_r31=0; temp_r31<4; temp_r31++) { for (temp_r31 = 0; temp_r31 < 4; temp_r31++) {
BoardModelKill(sp14[temp_r31]); BoardModelKill(sp14[temp_r31]);
} }
HuWinKill(temp_r30); HuWinKill(temp_r30);
@ -724,13 +727,13 @@ void fn_1_DF48(void)
BoardModelMotionTimeSet(lbl_1_bss_30[5], 0); BoardModelMotionTimeSet(lbl_1_bss_30[5], 0);
BoardModelAttrSet(lbl_1_bss_30[5], 0x40000002); BoardModelAttrSet(lbl_1_bss_30[5], 0x40000002);
temp_f31 = BoardModelRotYGet(lbl_1_bss_30[5]); temp_f31 = BoardModelRotYGet(lbl_1_bss_30[5]);
temp_f29 = -temp_f31/20.0f; temp_f29 = -temp_f31 / 20.0f;
temp_f30 = BoardModelRotYGet(lbl_1_bss_30[15]); temp_f30 = BoardModelRotYGet(lbl_1_bss_30[15]);
temp_f28 = -temp_f30/20.0f; temp_f28 = -temp_f30 / 20.0f;
BoardModelScaleGet(lbl_1_bss_30[6], &sp14); BoardModelScaleGet(lbl_1_bss_30[6], &sp14);
for(temp_r31=0; temp_r31<10; temp_r31++) { for (temp_r31 = 0; temp_r31 < 10; temp_r31++) {
sp14.x = sp14.y = sp14.z = 1.0f-(temp_r31*0.1f); sp14.x = sp14.y = sp14.z = 1.0f - (temp_r31 * 0.1f);
if(sp14.x < 0.0f) { if (sp14.x < 0.0f) {
sp14.x = sp14.y = sp14.z = 0.0f; sp14.x = sp14.y = sp14.z = 0.0f;
} }
BoardModelScaleSetV(lbl_1_bss_30[6], &sp14); BoardModelScaleSetV(lbl_1_bss_30[6], &sp14);
@ -744,9 +747,9 @@ void fn_1_DF48(void)
sp8.z -= 90.0f; sp8.z -= 90.0f;
sp8.y += 50.0f; sp8.y += 50.0f;
BoardModelPosSetV(lbl_1_bss_30[6], &sp8); BoardModelPosSetV(lbl_1_bss_30[6], &sp8);
for(temp_r31=0; temp_r31<10; temp_r31++) { for (temp_r31 = 0; temp_r31 < 10; temp_r31++) {
sp14.x = sp14.y = sp14.z = temp_r31*0.1f; sp14.x = sp14.y = sp14.z = temp_r31 * 0.1f;
if(sp14.x > 1.0f) { if (sp14.x > 1.0f) {
sp14.x = sp14.y = sp14.z = 1.0f; sp14.x = sp14.y = sp14.z = 1.0f;
} }
BoardModelScaleSetV(lbl_1_bss_30[6], &sp14); BoardModelScaleSetV(lbl_1_bss_30[6], &sp14);
@ -765,7 +768,7 @@ void fn_1_DF48(void)
s32 fn_1_E2AC(void) s32 fn_1_E2AC(void)
{ {
switch(GWSystem.star_pos) { switch (GWSystem.star_pos) {
case 0: case 0:
return 3; return 3;
@ -788,8 +791,9 @@ s32 fn_1_E2AC(void)
} }
/* Rotate (yaw) of model 4 */ /* Rotate (yaw) of model 4 */
void fn_1_E310(f32 degrees) { void fn_1_E310(f32 degrees)
Point3d spC; {
Vec spC;
lbl_1_bss_380 += degrees; lbl_1_bss_380 += degrees;
if (lbl_1_bss_380 >= 360.0f) { if (lbl_1_bss_380 >= 360.0f) {
lbl_1_bss_380 -= 360.0f; lbl_1_bss_380 -= 360.0f;
@ -807,8 +811,8 @@ void fn_1_E41C(void)
lbl_1_bss_388 = GWSystem.player_curr; lbl_1_bss_388 = GWSystem.player_curr;
OSReport("Roulette Player %d\n", lbl_1_bss_388); OSReport("Roulette Player %d\n", lbl_1_bss_388);
lbl_1_bss_38C = HuPrcChildCreate(fn_1_BCFC, 8195, 8192, 0, boardMainProc); lbl_1_bss_38C = HuPrcChildCreate(fn_1_BCFC, 8195, 8192, 0, boardMainProc);
HuPrcDestructorSet2(lbl_1_bss_38C, (void *)fn_1_BE74); //fn_1_BE74 requires implicit return HuPrcDestructorSet2(lbl_1_bss_38C, (void *)fn_1_BE74); // fn_1_BE74 requires implicit return
while(lbl_1_bss_38C) { while (lbl_1_bss_38C) {
HuPrcVSleep(); HuPrcVSleep();
} }
} }

View file

@ -134,9 +134,9 @@ void fn_1_7C98(void)
s32 fn_1_7D18(s32 arg0) s32 fn_1_7D18(s32 arg0)
{ {
Point3d sp38; Vec sp38;
Point3d sp2C; Vec sp2C;
Point3d sp20; Vec sp20;
Vec sp14; Vec sp14;
Vec sp8; Vec sp8;
f32 var_f31; f32 var_f31;
@ -259,7 +259,7 @@ s32 lbl_1_data_490[] = {
void fn_1_81E0(s32 arg0) void fn_1_81E0(s32 arg0)
{ {
Point3d sp8; Vec sp8;
omObjData *temp_r3; omObjData *temp_r3;
f32 temp_f31; f32 temp_f31;
s32 temp_r28; s32 temp_r28;
@ -499,7 +499,7 @@ s32 lbl_1_data_4B4[] = { 0x00000440, 0x00000441, 0x00000442, 0x00000443, 0x00000
void fn_1_8C08(omObjData *arg0, someBits3 *arg1) void fn_1_8C08(omObjData *arg0, someBits3 *arg1)
{ {
Point3d spC; Vec spC;
f32 temp_f31; f32 temp_f31;
f32 temp_f30; f32 temp_f30;
s8 temp_r27; s8 temp_r27;
@ -535,7 +535,7 @@ void fn_1_8C08(omObjData *arg0, someBits3 *arg1)
void fn_1_8E44(omObjData *arg0, someBits3 *arg1) void fn_1_8E44(omObjData *arg0, someBits3 *arg1)
{ {
Point3d sp8; Vec sp8;
f32 temp_f1; f32 temp_f1;
f32 temp_f31; f32 temp_f31;
@ -611,9 +611,9 @@ void fn_1_91B8(void)
void fn_1_9230(s32 arg0) void fn_1_9230(s32 arg0)
{ {
Point3d sp20; Vec sp20;
Point3d sp14; Vec sp14;
Point3d sp8; Vec sp8;
s16 temp_r30; s16 temp_r30;
f32 rotY; f32 rotY;
@ -747,7 +747,7 @@ void fn_1_95B8(omObjData *arg0)
void fn_1_97F8(s32 arg0) void fn_1_97F8(s32 arg0)
{ {
Point3d sp8; Vec sp8;
f32 temp_f2; f32 temp_f2;
f32 var_f31; f32 var_f31;
f64 temp_f1; f64 temp_f1;

View file

@ -794,9 +794,9 @@ void fn_1_B350(omObjData *arg0)
void fn_1_B4AC(omObjData *arg0, someBits2 *arg1) void fn_1_B4AC(omObjData *arg0, someBits2 *arg1)
{ {
Point3d sp20; Vec sp20;
Point3d sp14; Vec sp14;
Point3d sp8; Vec sp8;
f32 temp_f31; f32 temp_f31;
s8 temp_r0; s8 temp_r0;
s32 i; s32 i;
@ -827,7 +827,7 @@ void fn_1_B4AC(omObjData *arg0, someBits2 *arg1)
void fn_1_B688(omObjData *arg0, someBits2 *arg1) void fn_1_B688(omObjData *arg0, someBits2 *arg1)
{ {
Point3d sp8; Vec sp8;
if (arg1->unk1-- != 0) { if (arg1->unk1-- != 0) {
BoardModelPosGet(arg1->unk_06[arg1->unk2], &sp8); BoardModelPosGet(arg1->unk_06[arg1->unk2], &sp8);
@ -844,7 +844,7 @@ void fn_1_B688(omObjData *arg0, someBits2 *arg1)
void fn_1_B748(omObjData *arg0, someBits2 *arg1) void fn_1_B748(omObjData *arg0, someBits2 *arg1)
{ {
Vec sp14; Vec sp14;
Point3d sp8; Vec sp8;
f32 temp_f0; f32 temp_f0;
s16 temp_r29; s16 temp_r29;
@ -877,8 +877,8 @@ void fn_1_B748(omObjData *arg0, someBits2 *arg1)
void fn_1_B8E8(s32 arg0) void fn_1_B8E8(s32 arg0)
{ {
Point3d sp14; Vec sp14;
Point3d sp8; Vec sp8;
f32 temp_f31; f32 temp_f31;
someBits2 *temp_r31; someBits2 *temp_r31;
f32 temp; f32 temp;
@ -975,7 +975,7 @@ void fn_1_BDAC(void)
void fn_1_BE30(ModelData *model, ParticleData *particle, Mtx matrix) void fn_1_BE30(ModelData *model, ParticleData *particle, Mtx matrix)
{ {
Point3d sp8; Vec sp8;
f32 temp_f30; f32 temp_f30;
f32 temp_f29; f32 temp_f29;
f32 temp_f31; f32 temp_f31;

View file

@ -1,28 +1,29 @@
#include "dolphin.h"
#include "game/object.h"
#include "REL/w03Dll.h" #include "REL/w03Dll.h"
#include "dolphin.h"
#include "game/board/main.h" #include "game/board/main.h"
#include "game/board/model.h" #include "game/board/model.h"
#include "game/board/player.h" #include "game/board/player.h"
#include "game/hsfdraw.h" #include "game/hsfdraw.h"
#include "game/object.h"
#include "ext_math.h" #include "ext_math.h"
//BSS // BSS
char lbl_1_bss_130[8]; char lbl_1_bss_130[8];
omObjData* lbl_1_bss_12C; omObjData *lbl_1_bss_12C;
s16 lbl_1_bss_128; s16 lbl_1_bss_128;
s32 lbl_1_bss_124; s32 lbl_1_bss_124;
Process* lbl_1_bss_120; Process *lbl_1_bss_120;
//function signatures // function signatures
void fn_1_67F8(void); void fn_1_67F8(void);
void fn_1_6884(void); void fn_1_6884(void);
void fn_1_767C(omObjData* arg0); void fn_1_767C(omObjData *arg0);
s32 fn_1_6898(s32 arg0); s32 fn_1_6898(s32 arg0);
void fn_1_6B98(s32 arg0); void fn_1_6B98(s32 arg0);
void fn_1_6F9C(s32 arg0); void fn_1_6F9C(s32 arg0);
void fn_1_767C(omObjData* arg0); void fn_1_767C(omObjData *arg0);
void fn_1_735C(s32 arg0); void fn_1_735C(s32 arg0);
void fn_1_77E4(s32 arg0); void fn_1_77E4(s32 arg0);
@ -34,43 +35,37 @@ typedef struct unkWorkStruct {
f32 unk_04; f32 unk_04;
} unkWorkStruct; } unkWorkStruct;
//data // data
s32 lbl_1_data_368[] = { s32 lbl_1_data_368[] = { 0x00000105, 0x00000145, 0x00000185, 0x000001C5, 0x00000205, 0x00000245, 0x00000285, 0x000002C5 };
0x00000105, 0x00000145, 0x00000185,
0x000001C5, 0x00000205, 0x00000245,
0x00000285, 0x000002C5
};
s16 lbl_1_data_388 = -1; s16 lbl_1_data_388 = -1;
s16 lbl_1_data_38A = -1; s16 lbl_1_data_38A = -1;
s16 lbl_1_data_38C = -1; s16 lbl_1_data_38C = -1;
s32 lbl_1_data_390[] = { s32 lbl_1_data_390[] = { DATA_MAKE_NUM(DATADIR_W03, 0x26), DATA_MAKE_NUM(DATADIR_W03, 0x27), DATA_MAKE_NUM(DATADIR_W03, 0x28), DATA_NUM_LISTEND };
DATA_MAKE_NUM(DATADIR_W03, 0x26),
DATA_MAKE_NUM(DATADIR_W03, 0x27),
DATA_MAKE_NUM(DATADIR_W03, 0x28),
DATA_NUM_LISTEND
};
void fn_1_63F4(s32 arg0) { void fn_1_63F4(s32 arg0)
{
Vec spC; Vec spC;
unkWorkStruct* work = OM_GET_WORK_PTR(lbl_1_bss_12C, unkWorkStruct); unkWorkStruct *work = OM_GET_WORK_PTR(lbl_1_bss_12C, unkWorkStruct);
work->unk_04 = 0.0f; work->unk_04 = 0.0f;
BoardModelPosGet(lbl_1_data_388, &spC); BoardModelPosGet(lbl_1_data_388, &spC);
if (arg0 != 0) { if (arg0 != 0) {
spC.y = -185.0f; spC.y = -185.0f;
} else { }
else {
spC.y = 10.0f; spC.y = 10.0f;
} }
BoardModelPosSetV(lbl_1_data_388, &spC); BoardModelPosSetV(lbl_1_data_388, &spC);
} }
void fn_1_6494(void) { void fn_1_6494(void)
{
Vec sp14; Vec sp14;
Vec sp8; Vec sp8;
unkWorkStruct* temp_r31; unkWorkStruct *temp_r31;
lbl_1_data_388 = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W03, 0x0E), NULL, 0); lbl_1_data_388 = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W03, 0x0E), NULL, 0);
lbl_1_data_38C = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W03, 0x0F), NULL, 0); lbl_1_data_38C = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W03, 0x0F), NULL, 0);
@ -83,14 +78,15 @@ void fn_1_6494(void) {
sp14.x = sp8.x + (400.0 * sin(-(M_PI / 2))); sp14.x = sp8.x + (400.0 * sin(-(M_PI / 2)));
sp14.z = sp8.z + (400.0 * cos(-(M_PI / 2))); sp14.z = sp8.z + (400.0 * cos(-(M_PI / 2)));
BoardModelPosSetV(lbl_1_data_388, &sp14); BoardModelPosSetV(lbl_1_data_388, &sp14);
lbl_1_bss_12C = omAddObjEx(boardObjMan, 0x101, 0, 0, -1, (void*)fn_1_767C); lbl_1_bss_12C = omAddObjEx(boardObjMan, 0x101, 0, 0, -1, (void *)fn_1_767C);
temp_r31 = OM_GET_WORK_PTR(lbl_1_bss_12C, unkWorkStruct); temp_r31 = OM_GET_WORK_PTR(lbl_1_bss_12C, unkWorkStruct);
temp_r31->temp1 = 0; temp_r31->temp1 = 0;
temp_r31->unk_04 = 0.0f; temp_r31->unk_04 = 0.0f;
lbl_1_bss_124 = 0; lbl_1_bss_124 = 0;
} }
s32 fn_1_6698(void) { s32 fn_1_6698(void)
{
Vec sp14; Vec sp14;
Vec sp8; Vec sp8;
@ -98,11 +94,12 @@ s32 fn_1_6698(void) {
BoardSpaceFlagPosGet(0, 0x200, &sp8); BoardSpaceFlagPosGet(0, 0x200, &sp8);
sp14.x = sp8.x + (400.0 * sin(-(M_PI / 2))); sp14.x = sp8.x + (400.0 * sin(-(M_PI / 2)));
sp14.z = sp8.z + (400.0 * cos(-(M_PI / 2))); sp14.z = sp8.z + (400.0 * cos(-(M_PI / 2)));
BoardModelPosSetV(lbl_1_data_388, (Point3d* ) &sp14); BoardModelPosSetV(lbl_1_data_388, (Vec *)&sp14);
return 1; return 1;
} }
s16 fn_1_675C(void) { s16 fn_1_675C(void)
{
BoardRollDispSet(0); BoardRollDispSet(0);
lbl_1_bss_120 = HuPrcChildCreate(fn_1_67F8, 0x2003, 0x2000, 0, boardMainProc); lbl_1_bss_120 = HuPrcChildCreate(fn_1_67F8, 0x2003, 0x2000, 0, boardMainProc);
HuPrcDestructorSet2(lbl_1_bss_120, fn_1_6884); HuPrcDestructorSet2(lbl_1_bss_120, fn_1_6884);
@ -115,7 +112,8 @@ s16 fn_1_675C(void) {
return lbl_1_bss_128; return lbl_1_bss_128;
} }
void fn_1_67F8(void) { void fn_1_67F8(void)
{
s32 temp_r31; s32 temp_r31;
temp_r31 = GWSystem.player_curr; temp_r31 = GWSystem.player_curr;
@ -133,7 +131,8 @@ void fn_1_67F8(void) {
HuPrcEnd(); HuPrcEnd();
} }
void fn_1_6884(void) { void fn_1_6884(void)
{
lbl_1_bss_120 = 0; lbl_1_bss_120 = 0;
} }
@ -144,15 +143,16 @@ typedef struct unkPos {
} unkPos; } unkPos;
unkPos lbl_1_data_3B8[6] = { unkPos lbl_1_data_3B8[6] = {
{5, 20, 5}, { 5, 20, 5 },
{21, 35, 7}, { 21, 35, 7 },
{31, 50, 10}, { 31, 50, 10 },
{51, 80, 15}, { 51, 80, 15 },
{81, 100, 17}, { 81, 100, 17 },
{101, 999, 20}, { 101, 999, 20 },
}; };
s32 fn_1_6898(s32 arg0) { s32 fn_1_6898(s32 arg0)
{
Vec sp20; Vec sp20;
Vec sp14; Vec sp14;
Vec sp8; Vec sp8;
@ -245,11 +245,12 @@ s32 fn_1_6898(s32 arg0) {
s32 BoardDAngleCalcRange(float *value, float min, float range); s32 BoardDAngleCalcRange(float *value, float min, float range);
void fn_1_6B98(s32 arg0) { void fn_1_6B98(s32 arg0)
{
Vec sp30; Vec sp30;
Point3d sp24; Vec sp24;
Vec sp18; Vec sp18;
Point3d spC; Vec spC;
f32 sp8; f32 sp8;
f32 temp_f1; f32 temp_f1;
f32 temp_f31; f32 temp_f31;
@ -287,12 +288,12 @@ void fn_1_6B98(s32 arg0) {
VECAdd(&spC, &sp24, &sp24); VECAdd(&spC, &sp24, &sp24);
temp_f1 = BoardModelMotionTimeGet(lbl_1_data_38A); temp_f1 = BoardModelMotionTimeGet(lbl_1_data_38A);
if ((temp_f1 >= 5.0f) && (temp_f1 < 15.0f) && ((s16) var_r31 == 0)) { if ((temp_f1 >= 5.0f) && (temp_f1 < 15.0f) && ((s16)var_r31 == 0)) {
HuAudFXPlay(0x451); HuAudFXPlay(0x451);
var_r31 = 1; var_r31 = 1;
} }
if ((BoardModelMotionTimeGet(lbl_1_data_38A) >= 21.0f) && ((s16) var_r31 != 0)) { if ((BoardModelMotionTimeGet(lbl_1_data_38A) >= 21.0f) && ((s16)var_r31 != 0)) {
var_r31 = 0; var_r31 = 0;
} }
@ -321,7 +322,8 @@ void fn_1_6B98(s32 arg0) {
extern s32 lbl_1_data_368[]; extern s32 lbl_1_data_368[];
// extern w03State* lbl_1_bss_0; // extern w03State* lbl_1_bss_0;
void fn_1_6F9C(s32 arg0) { void fn_1_6F9C(s32 arg0)
{
Vec sp20; Vec sp20;
Vec sp14; Vec sp14;
Vec sp8; Vec sp8;
@ -344,7 +346,8 @@ void fn_1_6F9C(s32 arg0) {
var_f30 = 10.0f; var_f30 = 10.0f;
var_f29 = 0.21f; var_f29 = 0.21f;
sp14.y += sp20.y; sp14.y += sp20.y;
} else { }
else {
var_f30 = 0.0f; var_f30 = 0.0f;
var_f29 = 0.15f; var_f29 = 0.15f;
} }
@ -373,7 +376,8 @@ void fn_1_6F9C(s32 arg0) {
if (GWPlayer[arg0].bowser_suit != 0) { if (GWPlayer[arg0].bowser_suit != 0) {
BoardModelHookSet(lbl_1_data_388, "chara01", BoardPlayerModelGet(arg0)); BoardModelHookSet(lbl_1_data_388, "chara01", BoardPlayerModelGet(arg0));
} else { }
else {
BoardModelHookSet(lbl_1_data_388, "chara01", BoardPlayerModelGet(arg0)); BoardModelHookSet(lbl_1_data_388, "chara01", BoardPlayerModelGet(arg0));
} }
@ -381,10 +385,11 @@ void fn_1_6F9C(s32 arg0) {
lbl_1_bss_124 = 0; lbl_1_bss_124 = 0;
} }
void fn_1_735C(s32 arg0) { void fn_1_735C(s32 arg0)
{
Vec sp20; Vec sp20;
Vec sp14; Vec sp14;
Point3d sp8; Vec sp8;
f32 temp_f1; f32 temp_f1;
f32 var_f30; f32 var_f30;
f32 var_f31; f32 var_f31;
@ -406,7 +411,8 @@ void fn_1_735C(s32 arg0) {
BoardPlayerMotionShiftSet(arg0, 4, 0.0f, 10.0f, HU3D_MOTATTR_NONE); BoardPlayerMotionShiftSet(arg0, 4, 0.0f, 10.0f, HU3D_MOTATTR_NONE);
if (lbl_1_bss_0->unk0 != 0) { if (lbl_1_bss_0->unk0 != 0) {
var_f30 = 0.25f; var_f30 = 0.25f;
} else { }
else {
var_f30 = 0.2f; var_f30 = 0.2f;
} }
@ -441,15 +447,15 @@ void fn_1_735C(s32 arg0) {
BoardWinKill(); BoardWinKill();
} }
void fn_1_767C(omObjData *arg0)
void fn_1_767C(omObjData* arg0) { {
Point3d sp8; Vec sp8;
s32 temp_r30; s32 temp_r30;
unkWorkStruct* temp_r31; unkWorkStruct *temp_r31;
temp_r31 = OM_GET_WORK_PTR(arg0, unkWorkStruct); temp_r31 = OM_GET_WORK_PTR(arg0, unkWorkStruct);
if ( (temp_r31->temp1 != 0) || (BoardIsKill() != 0)) { if ((temp_r31->temp1 != 0) || (BoardIsKill() != 0)) {
lbl_1_bss_12C = NULL; lbl_1_bss_12C = NULL;
omDelObjEx(HuPrcCurrentGet(), arg0); omDelObjEx(HuPrcCurrentGet(), arg0);
return; return;
@ -466,7 +472,8 @@ void fn_1_767C(omObjData* arg0) {
} }
} }
void fn_1_77E4(s32 arg0) { void fn_1_77E4(s32 arg0)
{
s32 boardIndex; s32 boardIndex;
s32 var_r30 = 0; s32 var_r30 = 0;

View file

@ -13,7 +13,6 @@
#include "game/objsub.h" #include "game/objsub.h"
#include "game/process.h" #include "game/process.h"
#include "ext_math.h" #include "ext_math.h"
void fn_1_1358(void); void fn_1_1358(void);
@ -142,11 +141,11 @@ s32 fn_1_15E8(void)
s32 fn_1_1650(s32 arg0) s32 fn_1_1650(s32 arg0)
{ {
Point3d sp38; Vec sp38;
Point3d sp2C; Vec sp2C;
Point3d sp20; Vec sp20;
Point3d sp14; Vec sp14;
Point3d sp8; Vec sp8;
f32 temp; f32 temp;
s32 temp2; s32 temp2;
@ -356,7 +355,7 @@ s32 fn_1_1D1C(void)
void fn_1_1ED4(s32 arg0) void fn_1_1ED4(s32 arg0)
{ {
Point3d spC; Vec spC;
f32 sp8; f32 sp8;
lbl_1_data_284 = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W03, 0x0C), NULL, 0); lbl_1_data_284 = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W03, 0x0C), NULL, 0);
@ -400,9 +399,9 @@ void fn_1_1ED4(s32 arg0)
void fn_1_20E0(s32 arg0) void fn_1_20E0(s32 arg0)
{ {
Point3d sp24; Vec sp24;
Point3d sp18; Vec sp18;
Point3d spC; Vec spC;
f32 sp8; f32 sp8;
f32 var_f31; f32 var_f31;
s32 i; s32 i;
@ -520,9 +519,9 @@ void fn_1_20E0(s32 arg0)
void fn_1_26E0(s32 arg0) void fn_1_26E0(s32 arg0)
{ {
Point3d sp20; Vec sp20;
Point3d sp14; Vec sp14;
Point3d sp8; Vec sp8;
f32 temp; f32 temp;
BoardSpacePosGet(0, GWPlayer[arg0].space_curr, &sp20); BoardSpacePosGet(0, GWPlayer[arg0].space_curr, &sp20);

View file

@ -1202,7 +1202,7 @@ void PSMTXReflect(register Mtx m, const register Vec *p, const register Vec *n)
} }
#endif #endif
void C_MTXLookAt(Mtx m, const Point3d *camPos, const Vec *camUp, const Point3d *target) void C_MTXLookAt(Mtx m, const Vec *camPos, const Vec *camUp, const Vec *target)
{ {
Vec vLook, vRight, vUp; Vec vLook, vRight, vUp;

View file

@ -1,3 +1,4 @@
#include "ext_math.h"
#include "game/board/main.h" #include "game/board/main.h"
#include "game/board/model.h" #include "game/board/model.h"
#include "game/board/player.h" #include "game/board/player.h"
@ -6,7 +7,7 @@
#include "game/flag.h" #include "game/flag.h"
#include "game/objsub.h" #include "game/objsub.h"
#include "game/process.h" #include "game/process.h"
#include "ext_math.h"
#define BLOCK_SPAWN 0 #define BLOCK_SPAWN 0
#define BLOCK_HIT 2 #define BLOCK_HIT 2
@ -89,7 +90,7 @@ static void BlockProc(void)
s32 sp14[8] = { DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x60), DATA_MAKE_NUM(DATADIR_LUIGIMOT, 0x60), DATA_MAKE_NUM(DATADIR_PEACHMOT, 0x60), s32 sp14[8] = { DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x60), DATA_MAKE_NUM(DATADIR_LUIGIMOT, 0x60), DATA_MAKE_NUM(DATADIR_PEACHMOT, 0x60),
DATA_MAKE_NUM(DATADIR_YOSHIMOT, 0x60), DATA_MAKE_NUM(DATADIR_WARIOMOT, 0x60), DATA_MAKE_NUM(DATADIR_DONKEYMOT, 0x60), DATA_MAKE_NUM(DATADIR_YOSHIMOT, 0x60), DATA_MAKE_NUM(DATADIR_WARIOMOT, 0x60), DATA_MAKE_NUM(DATADIR_DONKEYMOT, 0x60),
DATA_MAKE_NUM(DATADIR_DAISYMOT, 0x60), DATA_MAKE_NUM(DATADIR_WALUIGIMOT, 0x60) }; DATA_MAKE_NUM(DATADIR_DAISYMOT, 0x60), DATA_MAKE_NUM(DATADIR_WALUIGIMOT, 0x60) };
Point3d sp8; Vec sp8;
s32 var_r28; s32 var_r28;
s32 i; s32 i;
s32 player; s32 player;
@ -191,7 +192,7 @@ static void DestroyBlock(void)
static void CreateBlockObj(s32 arg0) static void CreateBlockObj(s32 arg0)
{ {
Point3d player_pos; Vec player_pos;
BlockWork *work; BlockWork *work;
s8 contains_star; s8 contains_star;
@ -422,7 +423,7 @@ static inline s32 FindCoinModel(s16 *out_model)
static void PopupCoin(void) static void PopupCoin(void)
{ {
Point3d star_pos; Vec star_pos;
omObjData *coinObj; omObjData *coinObj;
s32 model_index; s32 model_index;
s16 model; s16 model;
@ -451,8 +452,8 @@ static void PopupCoin(void)
static void PopupCoinExec(omObjData *obj) static void PopupCoinExec(omObjData *obj)
{ {
Point3d coin_pos; Vec coin_pos;
Point3d coin_rot; Vec coin_rot;
CoinWork *work; CoinWork *work;
work = OM_GET_WORK_PTR(obj, CoinWork); work = OM_GET_WORK_PTR(obj, CoinWork);