Merge branch 'main' of https://github.com/abnormalhare/marioparty4
This commit is contained in:
commit
a674e7c916
298 changed files with 49092 additions and 4634 deletions
|
|
@ -3,113 +3,116 @@
|
|||
|
||||
#include "game/object.h"
|
||||
|
||||
#define rand16() ((rand8() << 8)|(rand8()))
|
||||
|
||||
#define rand16() ((rand8() << 8) | (rand8()))
|
||||
|
||||
typedef struct bss_12C_inner {
|
||||
Vec unk0;
|
||||
float unkC;
|
||||
s8 unk10;
|
||||
Vec unk0;
|
||||
float unkC;
|
||||
s8 unk10;
|
||||
} Bss12CInner;
|
||||
|
||||
typedef struct bss_12c_struct {
|
||||
s16 unk0[2];
|
||||
s16 unk4;
|
||||
s16 unk6;
|
||||
s16 unk8;
|
||||
Vec unkC;
|
||||
float unk18;
|
||||
Bss12CInner unk1C[10];
|
||||
float unkE4[10][2];
|
||||
s16 unk134[2];
|
||||
s16 unk138[2];
|
||||
s16 unk0[2];
|
||||
s16 unk4;
|
||||
s16 unk6;
|
||||
s16 unk8;
|
||||
Vec unkC;
|
||||
float unk18;
|
||||
Bss12CInner unk1C[10];
|
||||
float unkE4[10][2];
|
||||
s16 unk134[2];
|
||||
s16 unk138[2];
|
||||
} Bss12CStruct;
|
||||
|
||||
typedef struct bss_61C_work {
|
||||
u32 unk0;
|
||||
s16 unk4;
|
||||
s16 unk6;
|
||||
s16 unk8;
|
||||
s16 unkA;
|
||||
s16 unkC;
|
||||
float unk10;
|
||||
struct bss_61C_work *unk14;
|
||||
Vec unk18;
|
||||
Vec unk24;
|
||||
float unk30;
|
||||
omObjFunc unk34;
|
||||
s16 unk38;
|
||||
s16 unk3A;
|
||||
u32 unk3C;
|
||||
s16 unk40;
|
||||
s16 unk42;
|
||||
Vec unk44;
|
||||
s16 unk50;
|
||||
s8 unk52;
|
||||
u32 unk54;
|
||||
s16 unk58;
|
||||
s16 unk5A;
|
||||
s16 unk5C;
|
||||
s16 unk5E[8];
|
||||
s16 unk6E;
|
||||
s16 unk70;
|
||||
s16 unk72;
|
||||
u32 unk74;
|
||||
s16 unk78;
|
||||
s16 unk7A;
|
||||
s16 unk7C;
|
||||
s16 unk7E;
|
||||
s16 unk80;
|
||||
s16 unk82;
|
||||
s16 unk84;
|
||||
s16 unk86;
|
||||
float unk88;
|
||||
Vec unk8C;
|
||||
float unk98;
|
||||
Vec unk9C;
|
||||
float unkA8;
|
||||
s32 unkAC;
|
||||
s16 unkB0;
|
||||
s16 unkB2;
|
||||
s8 unkB4;
|
||||
s8 unkB5;
|
||||
u32 unk0;
|
||||
s16 unk4;
|
||||
s16 unk6;
|
||||
s16 unk8;
|
||||
s16 unkA;
|
||||
s16 unkC;
|
||||
float unk10;
|
||||
struct bss_61C_work *unk14;
|
||||
Vec unk18;
|
||||
Vec unk24;
|
||||
float unk30;
|
||||
omObjFunc unk34;
|
||||
s16 unk38;
|
||||
s16 unk3A;
|
||||
#if VERSION_PAL
|
||||
s16 unk3C_pal;
|
||||
s16 unk3E_pal;
|
||||
#endif
|
||||
u32 unk3C;
|
||||
s16 unk40;
|
||||
s16 unk42;
|
||||
Vec unk44;
|
||||
s16 unk50;
|
||||
s8 unk52;
|
||||
u32 unk54;
|
||||
s16 unk58;
|
||||
s16 unk5A;
|
||||
s16 unk5C;
|
||||
s16 unk5E[8];
|
||||
s16 unk6E;
|
||||
s16 unk70;
|
||||
s16 unk72;
|
||||
u32 unk74;
|
||||
s16 unk78;
|
||||
s16 unk7A;
|
||||
s16 unk7C;
|
||||
s16 unk7E;
|
||||
s16 unk80;
|
||||
s16 unk82;
|
||||
s16 unk84;
|
||||
s16 unk86;
|
||||
float unk88;
|
||||
Vec unk8C;
|
||||
float unk98;
|
||||
Vec unk9C;
|
||||
float unkA8;
|
||||
s32 unkAC;
|
||||
s16 unkB0;
|
||||
s16 unkB2;
|
||||
s8 unkB4;
|
||||
s8 unkB5;
|
||||
} Bss61CWork;
|
||||
|
||||
typedef void (*unkHook72B4Data18)(struct unk_72B4_data_18 *);
|
||||
typedef void (*unkHook72B4)(ModelData *, struct work_72B4 *, Mtx);
|
||||
|
||||
typedef struct unk_72B4_data_18 {
|
||||
Vec unk0;
|
||||
Vec unkC;
|
||||
char unk18[16];
|
||||
s16 unk28;
|
||||
s16 unk2A;
|
||||
s16 unk2C;
|
||||
unkHook72B4Data18 unk30;
|
||||
s16 unk34;
|
||||
float unk38;
|
||||
Vec unk3C;
|
||||
Vec unk48;
|
||||
s16 unk54;
|
||||
s8 unk56;
|
||||
Vec unk0;
|
||||
Vec unkC;
|
||||
char unk18[16];
|
||||
s16 unk28;
|
||||
s16 unk2A;
|
||||
s16 unk2C;
|
||||
unkHook72B4Data18 unk30;
|
||||
s16 unk34;
|
||||
float unk38;
|
||||
Vec unk3C;
|
||||
Vec unk48;
|
||||
s16 unk54;
|
||||
s8 unk56;
|
||||
} Unk72B4Data18;
|
||||
|
||||
typedef struct work_72B4 {
|
||||
s16 unk0;
|
||||
u32 unk4;
|
||||
u8 unk8;
|
||||
unkHook72B4 unkC;
|
||||
AnimData *unk10;
|
||||
s16 unk14;
|
||||
Unk72B4Data18 *unk18;
|
||||
Vec *unk1C;
|
||||
HsfVector2f *unk20;
|
||||
GXColor *unk24;
|
||||
void *unk28;
|
||||
Vec unk2C[4];
|
||||
HsfVector2f *unk5C;
|
||||
float unk60;
|
||||
float unk64;
|
||||
s16 unk0;
|
||||
u32 unk4;
|
||||
u8 unk8;
|
||||
unkHook72B4 unkC;
|
||||
AnimData *unk10;
|
||||
s16 unk14;
|
||||
Unk72B4Data18 *unk18;
|
||||
Vec *unk1C;
|
||||
HsfVector2f *unk20;
|
||||
GXColor *unk24;
|
||||
void *unk28;
|
||||
Vec unk2C[4];
|
||||
HsfVector2f *unk5C;
|
||||
float unk60;
|
||||
float unk64;
|
||||
} Work72B4;
|
||||
|
||||
extern s32 lbl_1_bss_4;
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@
|
|||
#include "datadir_enum.h"
|
||||
#include "dolphin.h"
|
||||
#include "game/hsfanim.h"
|
||||
#include "version.h"
|
||||
|
||||
typedef struct UnkM432DllBss0SubStruct {
|
||||
char *unk_00;
|
||||
|
|
@ -1202,10 +1203,10 @@ UnkM432DllBss0SubStruct lbl_1_data_EDC[0x1F] = {
|
|||
},
|
||||
};
|
||||
|
||||
UnkM432DllData1794Struct lbl_1_data_1794 = { 6300.0f, 0.7f, 10.0f, 0.4f, 1.0f, 0, 2, 6 };
|
||||
UnkM432DllData1794Struct lbl_1_data_17B4 = { 5700.0f, 0.8f, 8.0f, 0.6f, 1.0f, 0, 4, 5 };
|
||||
UnkM432DllData1794Struct lbl_1_data_17D4 = { 5100.0f, 0.9f, 6.0f, 0.8f, 1.0f, 0, 6, 4 };
|
||||
UnkM432DllData1794Struct lbl_1_data_17F4 = { 4500.0f, 1.0f, 4.0f, 1.0f, 1.0f, 0, 8, 3 };
|
||||
UnkM432DllData1794Struct lbl_1_data_1794 = { 105.0f * REFRESH_RATE, 0.7f, 10.0f, 0.4f, 1.0f, 0, 2, 6 };
|
||||
UnkM432DllData1794Struct lbl_1_data_17B4 = { 95.0f * REFRESH_RATE, 0.8f, 8.0f, 0.6f, 1.0f, 0, 4, 5 };
|
||||
UnkM432DllData1794Struct lbl_1_data_17D4 = { 85.0f * REFRESH_RATE, 0.9f, 6.0f, 0.8f, 1.0f, 0, 6, 4 };
|
||||
UnkM432DllData1794Struct lbl_1_data_17F4 = { 75.0f * REFRESH_RATE, 1.0f, 4.0f, 1.0f, 1.0f, 0, 8, 3 };
|
||||
HsfanimStruct00 lbl_1_data_1814 = {
|
||||
0x1E,
|
||||
{ 0, 0 },
|
||||
|
|
|
|||
|
|
@ -4,6 +4,8 @@
|
|||
#include "dolphin/types.h"
|
||||
#include "game/hsfman.h"
|
||||
|
||||
#include "version.h"
|
||||
|
||||
#include "game/object.h"
|
||||
extern s32 rand8(void);
|
||||
|
||||
|
|
@ -240,6 +242,11 @@ typedef struct _unkObjStruct {
|
|||
f32 unk70;
|
||||
} unkObjStruct;
|
||||
|
||||
#if VERSION_NTSC
|
||||
#define REFRESH_RATE_F 60.0f
|
||||
#else
|
||||
#define REFRESH_RATE_F 49.998f
|
||||
#endif
|
||||
|
||||
////// BSS //////
|
||||
extern omObjData* lbl_1_bss_C0[4];
|
||||
|
|
|
|||
64
include/REL/m460Dll.h
Normal file
64
include/REL/m460Dll.h
Normal file
|
|
@ -0,0 +1,64 @@
|
|||
#ifndef M460DLL_H
|
||||
#define M460DLL_H
|
||||
|
||||
#include "game/object.h"
|
||||
|
||||
typedef struct UnkM460DllStruct {
|
||||
float unk_00;
|
||||
float unk_04;
|
||||
float unk_08;
|
||||
float unk_0C;
|
||||
} UnkM460DllStruct;
|
||||
|
||||
typedef struct M460DllCameraStruct {
|
||||
s32 unk_00;
|
||||
s32 unk_04;
|
||||
s32 unk_08;
|
||||
u32 unk_0C;
|
||||
float unk_10;
|
||||
float unk_14;
|
||||
float unk_18;
|
||||
Vec unk_1C;
|
||||
Vec unk_28;
|
||||
float unk_34;
|
||||
s32 unk_38;
|
||||
s32 unk_3C;
|
||||
float unk_40;
|
||||
UnkM460DllStruct unk_44;
|
||||
char unk54[0x30];
|
||||
float unk_84;
|
||||
char unk88[0x4];
|
||||
float unk_8C;
|
||||
float unk_90;
|
||||
s32 unk_94;
|
||||
char unk98[0xC];
|
||||
} M460DllCameraStruct; /* size = 0xA4 */ // same as M443DllCameraStruct // TODO does this have to be here?
|
||||
|
||||
void fn_1_3E68(u32 arg0);
|
||||
M460DllCameraStruct *fn_1_3E90(s32 arg0);
|
||||
M460DllCameraStruct *fn_1_3F2C(s32 arg0);
|
||||
u32 fn_1_414C(void);
|
||||
u32 fn_1_4164(void);
|
||||
s32 fn_1_419C(void);
|
||||
void fn_1_41B4(s32 arg0, s32 arg1, s32 arg2);
|
||||
void fn_1_41F4(s32 arg0);
|
||||
void fn_1_4224(s32 arg0);
|
||||
void fn_1_42BC(u32 arg0);
|
||||
s32 fn_1_42F0(void);
|
||||
void fn_1_4308(void);
|
||||
s32 fn_1_4324(void);
|
||||
void fn_1_433C(void);
|
||||
s32 fn_1_4358(void);
|
||||
u32 fn_1_4370(void);
|
||||
float fn_1_47D0(float arg8, float arg9, float argA);
|
||||
|
||||
void fn_1_49A0(Process *process);
|
||||
void fn_1_4BE4(void);
|
||||
void fn_1_67B4(Process *process);
|
||||
void fn_1_6814(void);
|
||||
void fn_1_8BA0(float arg8);
|
||||
void fn_1_8CAC(Process *process, s16 arg1);
|
||||
void fn_1_8F38(void);
|
||||
void fn_1_8FAC(s32 arg0);
|
||||
|
||||
#endif
|
||||
|
|
@ -2,6 +2,9 @@
|
|||
#define DATANUM_TITLE_H
|
||||
|
||||
#include "datadir_enum.h"
|
||||
#include "version.h"
|
||||
|
||||
#if VERSION_NTSC
|
||||
|
||||
enum {
|
||||
TITLE_NINTENDO_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 0),
|
||||
|
|
@ -20,4 +23,40 @@ enum {
|
|||
TITLE_SKY_HSF = DATA_MAKE_NUM(DATADIR_TITLE, 13),
|
||||
};
|
||||
|
||||
#else
|
||||
|
||||
enum {
|
||||
TITLE_HUDSON_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 0),
|
||||
TITLE_PROGRESSIVE_CHOOSE_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 1),
|
||||
TITLE_PROGRESSIVE_ON_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 2),
|
||||
TITLE_PROGRESSIVE_OFF_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 3),
|
||||
TITLE_PROGRESSIVE_CURSOR_ON_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 4),
|
||||
TITLE_PROGRESSIVE_CURSOR_OFF_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 5),
|
||||
TITLE_BG_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 6),
|
||||
TITLE_LOGO_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 7),
|
||||
TITLE_COPYRIGHT_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 8),
|
||||
TITLE_CHAR_HSF = DATA_MAKE_NUM(DATADIR_TITLE, 9),
|
||||
TITLE_CUBE_HSF = DATA_MAKE_NUM(DATADIR_TITLE, 10),
|
||||
TITLE_SKY_HSF = DATA_MAKE_NUM(DATADIR_TITLE, 11),
|
||||
TITLE_LANGUAGEBG_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 12),
|
||||
TITLE_FLAG_HSF = DATA_MAKE_NUM(DATADIR_TITLE, 13),
|
||||
TITLE_FLAG_EN_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 14),
|
||||
TITLE_FLAG_GE_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 15),
|
||||
TITLE_FLAG_FR_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 16),
|
||||
TITLE_FLAG_IT_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 17),
|
||||
TITLE_FLAG_ES_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 18),
|
||||
TITLE_PRESS_START_EN_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 19),
|
||||
TITLE_PRESS_START_GE_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 20),
|
||||
TITLE_PRESS_START_FR_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 21),
|
||||
TITLE_PRESS_START_IT_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 22),
|
||||
TITLE_PRESS_START_ES_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 23),
|
||||
TITLE_LANGUAGE_EN_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 24),
|
||||
TITLE_LANGUAGE_GE_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 25),
|
||||
TITLE_LANGUAGE_FR_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 26),
|
||||
TITLE_LANGUAGE_IT_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 27),
|
||||
TITLE_LANGUAGE_ES_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 28),
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
|
@ -47,6 +47,7 @@ void GXCopyDisp(void* dest, GXBool clear);
|
|||
void GXSetDispCopyGamma(GXGamma gamma);
|
||||
void GXSetDispCopySrc(u16 left, u16 top, u16 wd, u16 ht);
|
||||
void GXSetDispCopyDst(u16 wd, u16 ht);
|
||||
f32 GXGetYScaleFactor(u16 efbHeight, u16 xfbHeight);
|
||||
u32 GXSetDispCopyYScale(f32 vscale);
|
||||
void GXSetCopyFilter(GXBool aa, u8 sample_pattern[12][2], GXBool vf, u8 vfilter[7]);
|
||||
void GXSetPixelFmt(GXPixelFmt pix_fmt, GXZFmt16 z_fmt);
|
||||
|
|
|
|||
|
|
@ -31,5 +31,6 @@ s32 BoardWinPortraitGetStar(void);
|
|||
void BoardWinPlayerSet(s32 player);
|
||||
void BoardWinStartComKeySet(void);
|
||||
void BoardWinComKeyFuncSet(BoardWinComKeyFunc func);
|
||||
s16 BoardWinIDGet(void);
|
||||
|
||||
#endif
|
||||
|
|
@ -3,6 +3,7 @@
|
|||
|
||||
#include "dolphin.h"
|
||||
#include "game/flag.h"
|
||||
#include "version.h"
|
||||
|
||||
//HACK: to prevent prototype errors
|
||||
extern void HuPadRumbleAllStop(void);
|
||||
|
|
@ -143,6 +144,9 @@ typedef struct game_stat {
|
|||
/* 0x110 */ PauseBackupConfig party_pause;
|
||||
} GameStat;
|
||||
|
||||
extern s16 GwLanguage;
|
||||
extern s16 GwLanguageSave;
|
||||
|
||||
extern PlayerConfig GWPlayerCfg[4];
|
||||
extern PlayerState GWPlayer[4];
|
||||
extern SystemState GWSystem;
|
||||
|
|
@ -168,6 +172,11 @@ static inline s32 GWPartyGet(void)
|
|||
return GWSystem.party;
|
||||
}
|
||||
|
||||
static inline void GWLanguageSet(s16 language)
|
||||
{
|
||||
GWGameStat.language = language;
|
||||
}
|
||||
|
||||
static inline s32 GWLanguageGet(void)
|
||||
{
|
||||
return GWGameStat.language;
|
||||
|
|
@ -235,6 +244,7 @@ static inline s32 GWMessSpeedGet(void)
|
|||
|
||||
static inline void GWMessSpeedSet(s32 value)
|
||||
{
|
||||
#if VERSION_NTSC
|
||||
GWSystem.mess_speed = value;
|
||||
switch(value) {
|
||||
case 0:
|
||||
|
|
@ -249,6 +259,26 @@ static inline void GWMessSpeedSet(s32 value)
|
|||
GWSystem.mess_delay = 32;
|
||||
break;
|
||||
}
|
||||
#else
|
||||
GWSystem.mess_speed = value;
|
||||
switch(value) {
|
||||
case 0:
|
||||
GWSystem.mess_delay = 32;
|
||||
break;
|
||||
|
||||
case 2:
|
||||
GWSystem.mess_delay = 64;
|
||||
break;
|
||||
|
||||
case 1:
|
||||
GWSystem.mess_delay = 48;
|
||||
break;
|
||||
|
||||
default:
|
||||
GWSystem.mess_delay = 120;
|
||||
break;
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
static inline void GWSaveModeSet(s32 value)
|
||||
|
|
|
|||
24
include/version.h
Normal file
24
include/version.h
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
#ifndef _VERSION_H
|
||||
#define _VERSION_H
|
||||
|
||||
#define VERSION_NO_ENG0 0
|
||||
#define VERSION_NO_ENG1 1
|
||||
#define VERSION_NO_PAL0 2
|
||||
#define VERSION_NO_PAL2 3
|
||||
#define VERSION_NO_JAP 4
|
||||
|
||||
#define VERSION_ENG (VERSION == VERSION_NO_ENG0 || VERSION == VERSION_NO_ENG1)
|
||||
#define VERSION_PAL (VERSION == VERSION_NO_PAL0 || VERSION == VERSION_NO_PAL2)
|
||||
#define VERSION_JAP (VERSION == VERSION_NO_JAP)
|
||||
#define VERSION_NTSC (!VERSION_PAL)
|
||||
|
||||
#define VERSION_REV0 (VERSION == VERSION_NO_ENG0 || VERSION == VERSION_NO_PAL0 || VERSION == VERSION_NO_JAP)
|
||||
#define VERSION_REV1 (!VERSION_REV0)
|
||||
|
||||
#if VERSION_PAL
|
||||
#define REFRESH_RATE 50
|
||||
#else
|
||||
#define REFRESH_RATE 60
|
||||
#endif
|
||||
|
||||
#endif
|
||||
Loading…
Add table
Add a link
Reference in a new issue