Renamed VERSION_JPN to VERSION_JP
Added the new game versions to the readme
This commit is contained in:
parent
0c3008d2e3
commit
9f21fff0bd
10 changed files with 47 additions and 44 deletions
|
|
@ -19,6 +19,9 @@ Supported versions:
|
||||||
|
|
||||||
- `GMPE01_00`: Rev 0 (USA)
|
- `GMPE01_00`: Rev 0 (USA)
|
||||||
- `GMPE01_01`: Rev 1 (USA)
|
- `GMPE01_01`: Rev 1 (USA)
|
||||||
|
- `GMPP01_00`, Rev 0 (PAL)
|
||||||
|
- `GMPP01_02`, REV 2 (PAL)
|
||||||
|
- `GMPJ01_00`, REV 0 (JP)
|
||||||
|
|
||||||
Dependencies
|
Dependencies
|
||||||
============
|
============
|
||||||
|
|
|
||||||
|
|
@ -71,7 +71,7 @@ OVL_DEFINE(OVL_M461, "dll/m461dll.rel")
|
||||||
OVL_DEFINE(OVL_M462, "dll/m462dll.rel")
|
OVL_DEFINE(OVL_M462, "dll/m462dll.rel")
|
||||||
OVL_DEFINE(OVL_M463, "dll/m463dll.rel")
|
OVL_DEFINE(OVL_M463, "dll/m463dll.rel")
|
||||||
OVL_DEFINE(OVL_MENT, "dll/mentdll.rel")
|
OVL_DEFINE(OVL_MENT, "dll/mentdll.rel")
|
||||||
#if VERSION_JPN
|
#if VERSION_JP
|
||||||
OVL_DEFINE(OVL_MGMODE, "dll/mgmodedll.rel")
|
OVL_DEFINE(OVL_MGMODE, "dll/mgmodedll.rel")
|
||||||
OVL_DEFINE(OVL_MODELTEST, "dll/modeltestdll.rel")
|
OVL_DEFINE(OVL_MODELTEST, "dll/modeltestdll.rel")
|
||||||
OVL_DEFINE(OVL_MODESEL, "dll/modeseldll.rel")
|
OVL_DEFINE(OVL_MODESEL, "dll/modeseldll.rel")
|
||||||
|
|
|
||||||
|
|
@ -5,14 +5,14 @@
|
||||||
#define VERSION_NO_ENG1 1
|
#define VERSION_NO_ENG1 1
|
||||||
#define VERSION_NO_PAL0 2
|
#define VERSION_NO_PAL0 2
|
||||||
#define VERSION_NO_PAL2 3
|
#define VERSION_NO_PAL2 3
|
||||||
#define VERSION_NO_JAP 4
|
#define VERSION_NO_JP 4
|
||||||
|
|
||||||
#define VERSION_ENG (VERSION == VERSION_NO_ENG0 || VERSION == VERSION_NO_ENG1)
|
#define VERSION_ENG (VERSION == VERSION_NO_ENG0 || VERSION == VERSION_NO_ENG1)
|
||||||
#define VERSION_PAL (VERSION == VERSION_NO_PAL0 || VERSION == VERSION_NO_PAL2)
|
#define VERSION_PAL (VERSION == VERSION_NO_PAL0 || VERSION == VERSION_NO_PAL2)
|
||||||
#define VERSION_JPN (VERSION == VERSION_NO_JAP)
|
#define VERSION_JP (VERSION == VERSION_NO_JP)
|
||||||
#define VERSION_NTSC (!VERSION_PAL)
|
#define VERSION_NTSC (!VERSION_PAL)
|
||||||
|
|
||||||
#define VERSION_REV0 (VERSION == VERSION_NO_ENG0 || VERSION == VERSION_NO_PAL0 || VERSION == VERSION_NO_JAP)
|
#define VERSION_REV0 (VERSION == VERSION_NO_ENG0 || VERSION == VERSION_NO_PAL0 || VERSION == VERSION_NO_JP)
|
||||||
#define VERSION_REV1 (!VERSION_REV0)
|
#define VERSION_REV1 (!VERSION_REV0)
|
||||||
|
|
||||||
#if VERSION_PAL
|
#if VERSION_PAL
|
||||||
|
|
|
||||||
|
|
@ -1988,7 +1988,7 @@ void BoardLast5GfxInit(void)
|
||||||
} else {
|
} else {
|
||||||
prio = 1400;
|
prio = 1400;
|
||||||
}
|
}
|
||||||
#if !VERSION_JPN
|
#if !VERSION_JP
|
||||||
spr_file = last5GfxSprTbl[i];
|
spr_file = last5GfxSprTbl[i];
|
||||||
if(i == 2 && work->is_last && GWLanguageGet() != 0) {
|
if(i == 2 && work->is_last && GWLanguageGet() != 0) {
|
||||||
spr_file = DATA_MAKE_NUM(DATADIR_BOARD, 98);
|
spr_file = DATA_MAKE_NUM(DATADIR_BOARD, 98);
|
||||||
|
|
|
||||||
|
|
@ -137,7 +137,7 @@ static s32 bowserSuitCharMdlTbl[] = {
|
||||||
static s32 bowserSuitMotTbl[] = { DATA_MAKE_NUM(DATADIR_BKOOPASUIT, 0x19), DATA_MAKE_NUM(DATADIR_BKOOPASUIT, 0x1A),
|
static s32 bowserSuitMotTbl[] = { DATA_MAKE_NUM(DATADIR_BKOOPASUIT, 0x19), DATA_MAKE_NUM(DATADIR_BKOOPASUIT, 0x1A),
|
||||||
DATA_MAKE_NUM(DATADIR_BKOOPASUIT, 0x1B), DATA_MAKE_NUM(DATADIR_BKOOPASUIT, 0x1E), DATA_MAKE_NUM(DATADIR_BKOOPASUIT, 0x1F) };
|
DATA_MAKE_NUM(DATADIR_BKOOPASUIT, 0x1B), DATA_MAKE_NUM(DATADIR_BKOOPASUIT, 0x1E), DATA_MAKE_NUM(DATADIR_BKOOPASUIT, 0x1F) };
|
||||||
|
|
||||||
#if VERSION_JPN
|
#if VERSION_JP
|
||||||
static s32 sparkMotTbl[] = {
|
static s32 sparkMotTbl[] = {
|
||||||
DATA_MAKE_NUM(DATADIR_BOARD, 0x94),
|
DATA_MAKE_NUM(DATADIR_BOARD, 0x94),
|
||||||
DATA_MAKE_NUM(DATADIR_BOARD, 0x95),
|
DATA_MAKE_NUM(DATADIR_BOARD, 0x95),
|
||||||
|
|
@ -2512,7 +2512,7 @@ static s32 DoSparkSpace(s32 player, s32 pause_cam)
|
||||||
BoardCameraMotionWait();
|
BoardCameraMotionWait();
|
||||||
BoardCameraTargetPlayerSet(player);
|
BoardCameraTargetPlayerSet(player);
|
||||||
BoardPlayerIdleSet(player);
|
BoardPlayerIdleSet(player);
|
||||||
temp_r28 = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BOARD, VERSION_JPN ? 0x73 : 0x74), NULL, 0);
|
temp_r28 = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BOARD, VERSION_JP ? 0x73 : 0x74), NULL, 0);
|
||||||
BoardModelMotionStart(temp_r28, 0, 0x40000002);
|
BoardModelMotionStart(temp_r28, 0, 0x40000002);
|
||||||
BoardModelMotionTimeSet(temp_r28, 30.0f);
|
BoardModelMotionTimeSet(temp_r28, 30.0f);
|
||||||
BoardModelAttrSet(temp_r28, 0x40000002);
|
BoardModelAttrSet(temp_r28, 0x40000002);
|
||||||
|
|
@ -2520,7 +2520,7 @@ static s32 DoSparkSpace(s32 player, s32 pause_cam)
|
||||||
BoardModelScaleSet(temp_r28, 2.0f, 2.0f, 2.0f);
|
BoardModelScaleSet(temp_r28, 2.0f, 2.0f, 2.0f);
|
||||||
BoardModelVisibilitySet(temp_r28, 0);
|
BoardModelVisibilitySet(temp_r28, 0);
|
||||||
BoardModelLayerSet(temp_r28, 1);
|
BoardModelLayerSet(temp_r28, 1);
|
||||||
sp2E = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BOARD, VERSION_JPN ? 0x66 : 0x67), NULL, 0);
|
sp2E = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BOARD, VERSION_JP ? 0x66 : 0x67), NULL, 0);
|
||||||
BoardModelLayerSet(sp2E, 1);
|
BoardModelLayerSet(sp2E, 1);
|
||||||
BoardModelMotionStart(sp2E, 0, 0);
|
BoardModelMotionStart(sp2E, 0, 0);
|
||||||
HuAudFXPlay(796);
|
HuAudFXPlay(796);
|
||||||
|
|
|
||||||
|
|
@ -54,7 +54,7 @@ void GWInit(void)
|
||||||
_InitFlag();
|
_InitFlag();
|
||||||
GWErase();
|
GWErase();
|
||||||
InitPlayerConfig();
|
InitPlayerConfig();
|
||||||
#if VERSION_JPN
|
#if VERSION_JP
|
||||||
GWGameStat.language = 0;
|
GWGameStat.language = 0;
|
||||||
#elif VERSION_ENG
|
#elif VERSION_ENG
|
||||||
GWGameStat.language = 1;
|
GWGameStat.language = 1;
|
||||||
|
|
@ -131,7 +131,7 @@ void GWGameStatReset(void)
|
||||||
GameStat *game_stat = &GWGameStatDefault;
|
GameStat *game_stat = &GWGameStatDefault;
|
||||||
memset(game_stat, 0, sizeof(GameStat));
|
memset(game_stat, 0, sizeof(GameStat));
|
||||||
game_stat->unk_00 = 0;
|
game_stat->unk_00 = 0;
|
||||||
#if VERSION_JPN
|
#if VERSION_JP
|
||||||
game_stat->language = 0;
|
game_stat->language = 0;
|
||||||
#elif VERSION_ENG
|
#elif VERSION_ENG
|
||||||
game_stat->language = 1;
|
game_stat->language = 1;
|
||||||
|
|
|
||||||
|
|
@ -808,7 +808,7 @@ static s32 SeqMakeWord(SeqWork *work, char *str, s16 flags)
|
||||||
s16 x;
|
s16 x;
|
||||||
s16 i;
|
s16 i;
|
||||||
s16 grp_idx;
|
s16 grp_idx;
|
||||||
#if VERSION_JPN
|
#if VERSION_JP
|
||||||
char *str_ptr;
|
char *str_ptr;
|
||||||
AnimData **char_anim;
|
AnimData **char_anim;
|
||||||
s16 *char_pos;
|
s16 *char_pos;
|
||||||
|
|
@ -832,7 +832,7 @@ static s32 SeqMakeWord(SeqWork *work, char *str, s16 flags)
|
||||||
x = 0;
|
x = 0;
|
||||||
len = 0;
|
len = 0;
|
||||||
while (*str_ptr != '\0') {
|
while (*str_ptr != '\0') {
|
||||||
#if VERSION_JPN
|
#if VERSION_JP
|
||||||
if (*str_ptr == ' ') {
|
if (*str_ptr == ' ') {
|
||||||
x += 56;
|
x += 56;
|
||||||
}
|
}
|
||||||
|
|
@ -876,26 +876,26 @@ static AnimData *SeqLoadFontChar(char *str, s16 flags)
|
||||||
if (c == 222 || c == 223) {
|
if (c == 222 || c == 223) {
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
#if !VERSION_JPN
|
#if !VERSION_JP
|
||||||
if (c == 32) {
|
if (c == 32) {
|
||||||
return HuSprAnimRead(SeqReadFile(DATA_MAKE_NUM(DATADIR_GAMEMES, 10)));
|
return HuSprAnimRead(SeqReadFile(DATA_MAKE_NUM(DATADIR_GAMEMES, 10)));
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
for (id = 0, list = seqFontAlphaTbl; *list != 0; id++, list++) {
|
for (id = 0, list = seqFontAlphaTbl; *list != 0; id++, list++) {
|
||||||
if (*list == c) {
|
if (*list == c) {
|
||||||
data_num = DATA_MAKE_NUM(DATADIR_GAMEMES, id + (VERSION_JPN ? 20 : 21));
|
data_num = DATA_MAKE_NUM(DATADIR_GAMEMES, id + (VERSION_JP ? 20 : 21));
|
||||||
return HuSprAnimRead(SeqReadFile(data_num));
|
return HuSprAnimRead(SeqReadFile(data_num));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
for (id = 0, list = seqFontNumTbl; *list != 0; id++, list++) {
|
for (id = 0, list = seqFontNumTbl; *list != 0; id++, list++) {
|
||||||
if (*list == c) {
|
if (*list == c) {
|
||||||
data_num = DATA_MAKE_NUM(DATADIR_GAMEMES, id + (VERSION_JPN ? 10 : 11));
|
data_num = DATA_MAKE_NUM(DATADIR_GAMEMES, id + (VERSION_JP ? 10 : 11));
|
||||||
return HuSprAnimRead(SeqReadFile(data_num));
|
return HuSprAnimRead(SeqReadFile(data_num));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
for (id = 0, list = seqPunctTbl; *list != 0; id++, list++) {
|
for (id = 0, list = seqPunctTbl; *list != 0; id++, list++) {
|
||||||
if (*list == c) {
|
if (*list == c) {
|
||||||
data_num = DATA_MAKE_NUM(DATADIR_GAMEMES, id + (VERSION_JPN ? 153 : 154));
|
data_num = DATA_MAKE_NUM(DATADIR_GAMEMES, id + (VERSION_JP ? 153 : 154));
|
||||||
return HuSprAnimRead(SeqReadFile(data_num));
|
return HuSprAnimRead(SeqReadFile(data_num));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -916,10 +916,10 @@ static AnimData *SeqLoadFontChar(char *str, s16 flags)
|
||||||
while (*list != 0) {
|
while (*list != 0) {
|
||||||
if (*list == c) {
|
if (*list == c) {
|
||||||
if (flags & 0x1) {
|
if (flags & 0x1) {
|
||||||
data_num = DATA_MAKE_NUM(DATADIR_GAMEMES, id + (VERSION_JPN ? 155 : 156));
|
data_num = DATA_MAKE_NUM(DATADIR_GAMEMES, id + (VERSION_JP ? 155 : 156));
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
data_num = DATA_MAKE_NUM(DATADIR_GAMEMES, id + (VERSION_JPN ? 72 : 73));
|
data_num = DATA_MAKE_NUM(DATADIR_GAMEMES, id + (VERSION_JP ? 72 : 73));
|
||||||
}
|
}
|
||||||
return HuSprAnimRead(SeqReadFile(data_num));
|
return HuSprAnimRead(SeqReadFile(data_num));
|
||||||
}
|
}
|
||||||
|
|
@ -2685,7 +2685,7 @@ static char *winCharNameTbl[] = {
|
||||||
"ワリオ",
|
"ワリオ",
|
||||||
"WARIO",
|
"WARIO",
|
||||||
"ドンキー",
|
"ドンキー",
|
||||||
VERSION_JPN ? "DK" : " DK ",
|
VERSION_JP ? "DK" : " DK ",
|
||||||
"デイジー",
|
"デイジー",
|
||||||
"DAISY",
|
"DAISY",
|
||||||
"ワルイージ",
|
"ワルイージ",
|
||||||
|
|
@ -2695,21 +2695,21 @@ static char *winCharNameTbl[] = {
|
||||||
"キノピオ",
|
"キノピオ",
|
||||||
"TOAD",
|
"TOAD",
|
||||||
"ヘイホー",
|
"ヘイホー",
|
||||||
VERSION_JPN ? "HEHOH" : "SHY GUY",
|
VERSION_JP ? "HEHOH" : "SHY GUY",
|
||||||
"テレサ",
|
"テレサ",
|
||||||
VERSION_JPN ? "TERETHA" : "BOO",
|
VERSION_JP ? "TERETHA" : "BOO",
|
||||||
"ノコノコ",
|
"ノコノコ",
|
||||||
VERSION_JPN ? "NOKONOKO" : "KOOPA",
|
VERSION_JP ? "NOKONOKO" : "KOOPA",
|
||||||
"ミニクッパ",
|
"ミニクッパ",
|
||||||
VERSION_NTSC ? (VERSION_ENG ? "KOOPA KID" : "BABYBOWSER") : "MINI BOWSER",
|
VERSION_NTSC ? (VERSION_ENG ? "KOOPA KID" : "BABYBOWSER") : "MINI BOWSER",
|
||||||
"クリボー",
|
"クリボー",
|
||||||
VERSION_JPN ? "KURIBO" : "GOOMBA",
|
VERSION_JP ? "KURIBO" : "GOOMBA",
|
||||||
};
|
};
|
||||||
|
|
||||||
static char *winWordTbl[] = { "カチ", "WON!", "ハイボク", "LOSE", "ユウショウ!", "CHAMPION!" };
|
static char *winWordTbl[] = { "カチ", "WON!", "ハイボク", "LOSE", "ユウショウ!", "CHAMPION!" };
|
||||||
|
|
||||||
static s16 winPosOfs[][5][2] = {
|
static s16 winPosOfs[][5][2] = {
|
||||||
{ { VERSION_JPN ? 144 : 114, 0 }, { -144, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 } },
|
{ { VERSION_JP ? 144 : 114, 0 }, { -144, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 } },
|
||||||
{ { 0, 35 }, { -144, -35 }, { 144, -35 }, { 0, 0 }, { 0, 0 } },
|
{ { 0, 35 }, { -144, -35 }, { 144, -35 }, { 0, 0 }, { 0, 0 } },
|
||||||
{ { 0, 105 }, { 0, -105 }, { -144, 0 }, { 144, 0 }, { 0, 0 } },
|
{ { 0, 105 }, { 0, -105 }, { -144, 0 }, { 144, 0 }, { 0, 0 } },
|
||||||
{ { 0, 105 }, { -144, -105 }, { 144, -105 }, { -144, 0 }, { 144, 0 } },
|
{ { 0, 105 }, { -144, -105 }, { 144, -105 }, { -144, 0 }, { 144, 0 } },
|
||||||
|
|
@ -2745,15 +2745,15 @@ s32 MGSeqInitWin(SeqWork *work, va_list params)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
word_grp = SeqMakeWord(work, winWordTbl[word_idx], GET_WIN_KANAF());
|
word_grp = SeqMakeWord(work, winWordTbl[word_idx], GET_WIN_KANAF());
|
||||||
winnerNameW[0] = work->word_len * (VERSION_JPN ? 56 : 50);
|
winnerNameW[0] = work->word_len * (VERSION_JP ? 56 : 50);
|
||||||
#if !VERSION_JPN
|
#if !VERSION_JP
|
||||||
for (i = 0; i < work->word_len; i++) {
|
for (i = 0; i < work->word_len; i++) {
|
||||||
HuSprPosSet(work->spr_grp[word_grp], i, 25.0f + ((i * 50) - (0.5f * (work->word_len * 50))), 0.0f);
|
HuSprPosSet(work->spr_grp[word_grp], i, 25.0f + ((i * 50) - (0.5f * (work->word_len * 50))), 0.0f);
|
||||||
HuSprAttrSet(work->spr_grp[word_grp], i, HUSPR_ATTR_LINEAR);
|
HuSprAttrSet(work->spr_grp[word_grp], i, HUSPR_ATTR_LINEAR);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
num_winners = 0;
|
num_winners = 0;
|
||||||
#if !VERSION_JPN
|
#if !VERSION_JP
|
||||||
work->win_scale = 1.0f;
|
work->win_scale = 1.0f;
|
||||||
#endif
|
#endif
|
||||||
for (j = 0; j < 4; j++) {
|
for (j = 0; j < 4; j++) {
|
||||||
|
|
@ -2855,7 +2855,7 @@ s32 MGSeqInitWin(SeqWork *work, va_list params)
|
||||||
work->type = 0;
|
work->type = 0;
|
||||||
for (j = 0; j < num_winners + 1; j++) {
|
for (j = 0; j < num_winners + 1; j++) {
|
||||||
if (num_winners == 1) {
|
if (num_winners == 1) {
|
||||||
#if VERSION_JPN
|
#if VERSION_JP
|
||||||
word_x = 32 + (winnerNameW[1] + winnerNameW[0]);
|
word_x = 32 + (winnerNameW[1] + winnerNameW[0]);
|
||||||
#else
|
#else
|
||||||
word_x = 32.0f + ((float)winnerNameW[0] + (winnerNameW[1] * work->win_scale));
|
word_x = 32.0f + ((float)winnerNameW[0] + (winnerNameW[1] * work->win_scale));
|
||||||
|
|
|
||||||
|
|
@ -35,7 +35,7 @@ s32 saveExecF;
|
||||||
u8 curBoxNo;
|
u8 curBoxNo;
|
||||||
s16 curSlotNo;
|
s16 curSlotNo;
|
||||||
|
|
||||||
#if VERSION_JPN
|
#if VERSION_JP
|
||||||
static u8 commentTbl[2][32] = { "マリオパーティ4", "??月??日 データ?です。" };
|
static u8 commentTbl[2][32] = { "マリオパーティ4", "??月??日 データ?です。" };
|
||||||
static u8 sjisNumTbl[20] = "0123456789";
|
static u8 sjisNumTbl[20] = "0123456789";
|
||||||
#else
|
#else
|
||||||
|
|
@ -48,7 +48,7 @@ s32 SaveEnableF = 1;
|
||||||
|
|
||||||
static char *SlotNameTbl[] = { "A", "B" };
|
static char *SlotNameTbl[] = { "A", "B" };
|
||||||
|
|
||||||
#if VERSION_JPN
|
#if VERSION_JP
|
||||||
static char *slotIconMesTbl[] = { "\x0E\x16", "\x0E\x17" };
|
static char *slotIconMesTbl[] = { "\x0E\x16", "\x0E\x17" };
|
||||||
static u8 sjisSpace[] = " ";
|
static u8 sjisSpace[] = " ";
|
||||||
#endif
|
#endif
|
||||||
|
|
@ -498,7 +498,7 @@ s32 SLSave(void)
|
||||||
#define SAVEWIN_POS 120
|
#define SAVEWIN_POS 120
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if VERSION_JPN
|
#if VERSION_JP
|
||||||
#define SAVEWIN_MESS slotIconMesTbl
|
#define SAVEWIN_MESS slotIconMesTbl
|
||||||
#else
|
#else
|
||||||
#define SAVEWIN_MESS SlotNameTbl
|
#define SAVEWIN_MESS SlotNameTbl
|
||||||
|
|
|
||||||
|
|
@ -22,7 +22,7 @@ extern s32 HuDvdErrWait;
|
||||||
|
|
||||||
static s32 SR_PreRstChk[4] = {};
|
static s32 SR_PreRstChk[4] = {};
|
||||||
|
|
||||||
#if VERSION_JPN
|
#if VERSION_JP
|
||||||
static s32 padding[4] = {};
|
static s32 padding[4] = {};
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -91,7 +91,7 @@ u8 charWETbl[] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 0
|
||||||
17, 13, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20,
|
17, 13, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20,
|
||||||
20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 16, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20,
|
20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 16, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20,
|
||||||
20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20 };
|
20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20 };
|
||||||
#elif VERSION_JPN
|
#elif VERSION_JP
|
||||||
u8 charWETbl[] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
u8 charWETbl[] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
0, 0, 0, 0, 0, 13, 8, 11, 12, 13, 12, 11, 11, 12, 11, 18, 20, 12, 12, 11, 14, 8, 13, 12, 12, 12, 12, 12, 12, 12, 9, 11, 12, 11, 15, 12, 13, 12,
|
0, 0, 0, 0, 0, 13, 8, 11, 12, 13, 12, 11, 11, 12, 11, 18, 20, 12, 12, 11, 14, 8, 13, 12, 12, 12, 12, 12, 12, 12, 9, 11, 12, 11, 15, 12, 13, 12,
|
||||||
13, 12, 12, 11, 12, 11, 15, 12, 13, 11, 12, 6, 8, 8, 12, 20, 12, 11, 12, 11, 11, 9, 12, 11, 4, 8, 11, 4, 14, 11, 12, 11, 12, 9, 11, 9, 11, 11, 15,
|
13, 12, 12, 11, 12, 11, 15, 12, 13, 11, 12, 6, 8, 8, 12, 20, 12, 11, 12, 11, 11, 9, 12, 11, 4, 8, 11, 4, 14, 11, 12, 11, 12, 9, 11, 9, 11, 11, 15,
|
||||||
|
|
@ -257,7 +257,7 @@ s16 HuWinCreate(float x, float y, s16 w, s16 h, s16 frame)
|
||||||
sprite_ptr->work[0] = window_id;
|
sprite_ptr->work[0] = window_id;
|
||||||
HuSprGrpMemberSet(group, 1, sprite);
|
HuSprGrpMemberSet(group, 1, sprite);
|
||||||
window->num_chars = 0;
|
window->num_chars = 0;
|
||||||
#if VERSION_JPN
|
#if VERSION_JP
|
||||||
window->max_chars = (w / 20) * (h / 24) * 3;
|
window->max_chars = (w / 20) * (h / 24) * 3;
|
||||||
#else
|
#else
|
||||||
window->max_chars = (w / 8) * (h / 24) * 4;
|
window->max_chars = (w / 8) * (h / 24) * 4;
|
||||||
|
|
@ -290,7 +290,7 @@ s16 HuWinCreate(float x, float y, s16 w, s16 h, s16 frame)
|
||||||
window->scissor_h = 0x1E0;
|
window->scissor_h = 0x1E0;
|
||||||
window->tab_w = 24;
|
window->tab_w = 24;
|
||||||
window->push_key = 0x300;
|
window->push_key = 0x300;
|
||||||
#if !VERSION_JPN
|
#if !VERSION_JP
|
||||||
window->key_auto = 0;
|
window->key_auto = 0;
|
||||||
#endif
|
#endif
|
||||||
if (frame == 0 || frame == 2) {
|
if (frame == 0 || frame == 2) {
|
||||||
|
|
@ -425,12 +425,12 @@ static void MesDispFunc(HuSprite *sprite)
|
||||||
MTXConcat(*sprite->group_mtx, modelview, modelview);
|
MTXConcat(*sprite->group_mtx, modelview, modelview);
|
||||||
GXLoadPosMtxImm(modelview, 0);
|
GXLoadPosMtxImm(modelview, 0);
|
||||||
GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD0, GX_TEXMAP0, GX_COLOR0A0);
|
GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD0, GX_TEXMAP0, GX_COLOR0A0);
|
||||||
HuSprTexLoad(fontAnim, 0, 0, GX_CLAMP, GX_CLAMP, VERSION_JPN ? GX_NEAR : GX_LINEAR);
|
HuSprTexLoad(fontAnim, 0, 0, GX_CLAMP, GX_CLAMP, VERSION_JP ? GX_NEAR : GX_LINEAR);
|
||||||
GXBegin(GX_QUADS, GX_VTXFMT0, window->num_chars * 4);
|
GXBegin(GX_QUADS, GX_VTXFMT0, window->num_chars * 4);
|
||||||
char_uv_h = (LanguageNo == 0) ? (24.0f / 408.0f) : (24.0f / 312.0f);
|
char_uv_h = (LanguageNo == 0) ? (24.0f / 408.0f) : (24.0f / 312.0f);
|
||||||
for (i = 0; i < window->num_chars; i++) {
|
for (i = 0; i < window->num_chars; i++) {
|
||||||
char_w = fontWidthP[window->char_data[i].character + 48];
|
char_w = fontWidthP[window->char_data[i].character + 48];
|
||||||
#if VERSION_JPN
|
#if VERSION_JP
|
||||||
uv_minx = 0.003125 + (20.0f / 320.0f) * (window->char_data[i].character % 16);
|
uv_minx = 0.003125 + (20.0f / 320.0f) * (window->char_data[i].character % 16);
|
||||||
#else
|
#else
|
||||||
uv_minx = (20.0f / 320.0f) * (window->char_data[i].character % 16);
|
uv_minx = (20.0f / 320.0f) * (window->char_data[i].character % 16);
|
||||||
|
|
@ -605,9 +605,9 @@ static void HuWinDrawMes(s16 window)
|
||||||
s16 color;
|
s16 color;
|
||||||
s16 mess_w;
|
s16 mess_w;
|
||||||
|
|
||||||
window_ptr->mess_time += VERSION_JPN ? 1 : 3;
|
window_ptr->mess_time += VERSION_JP ? 1 : 3;
|
||||||
while (window_ptr->mess_time >= window_ptr->speed || (window_ptr->attr & 0x2000)) {
|
while (window_ptr->mess_time >= window_ptr->speed || (window_ptr->attr & 0x2000)) {
|
||||||
#if VERSION_JPN
|
#if VERSION_JP
|
||||||
window_ptr->mess_time = 0;
|
window_ptr->mess_time = 0;
|
||||||
#else
|
#else
|
||||||
window_ptr->mess_time -= window_ptr->speed;
|
window_ptr->mess_time -= window_ptr->speed;
|
||||||
|
|
@ -634,7 +634,7 @@ static void HuWinDrawMes(s16 window)
|
||||||
}
|
}
|
||||||
window_ptr->mess_stackptr--;
|
window_ptr->mess_stackptr--;
|
||||||
window_ptr->mess = window_ptr->mess_stack[window_ptr->mess_stackptr];
|
window_ptr->mess = window_ptr->mess_stack[window_ptr->mess_stackptr];
|
||||||
#if !VERSION_JPN
|
#if !VERSION_JP
|
||||||
window_ptr->mess_time = 0;
|
window_ptr->mess_time = 0;
|
||||||
#endif
|
#endif
|
||||||
break;
|
break;
|
||||||
|
|
@ -1108,14 +1108,14 @@ static void HuWinChoice(WindowData *window)
|
||||||
window->choice = choice_next;
|
window->choice = choice_next;
|
||||||
HuAudFXPlay(0);
|
HuAudFXPlay(0);
|
||||||
}
|
}
|
||||||
else if (key & (VERSION_JPN ? PAD_BUTTON_A : (window->key_auto | PAD_BUTTON_A))) {
|
else if (key & (VERSION_JP ? PAD_BUTTON_A : (window->key_auto | PAD_BUTTON_A))) {
|
||||||
HuAudFXPlay(2);
|
HuAudFXPlay(2);
|
||||||
window->key_down = key;
|
window->key_down = key;
|
||||||
window->stat = 0;
|
window->stat = 0;
|
||||||
}
|
}
|
||||||
else if ((key & PAD_BUTTON_B) && !(window->attr & 0x10)) {
|
else if ((key & PAD_BUTTON_B) && !(window->attr & 0x10)) {
|
||||||
HuAudFXPlay(3);
|
HuAudFXPlay(3);
|
||||||
#if !VERSION_JPN
|
#if !VERSION_JP
|
||||||
window->key_down = key;
|
window->key_down = key;
|
||||||
#else
|
#else
|
||||||
(void)key; // hack to match Japanese version
|
(void)key; // hack to match Japanese version
|
||||||
|
|
@ -1324,7 +1324,7 @@ void HuWinMesSet(s16 window, u32 mess)
|
||||||
window_ptr->mess = MessData_MesPtrGet(messDataPtr, mess);
|
window_ptr->mess = MessData_MesPtrGet(messDataPtr, mess);
|
||||||
if (window_ptr->mess == 0) {
|
if (window_ptr->mess == 0) {
|
||||||
OSReport("Error: No Message data\n");
|
OSReport("Error: No Message data\n");
|
||||||
#if !VERSION_JPN
|
#if !VERSION_JP
|
||||||
HuWinMesSet(window, 0);
|
HuWinMesSet(window, 0);
|
||||||
return;
|
return;
|
||||||
#endif
|
#endif
|
||||||
|
|
@ -1335,7 +1335,7 @@ void HuWinMesSet(s16 window, u32 mess)
|
||||||
}
|
}
|
||||||
if (!(window_ptr->attr & 0x80)) {
|
if (!(window_ptr->attr & 0x80)) {
|
||||||
window_ptr->mess_color = 7;
|
window_ptr->mess_color = 7;
|
||||||
#if !VERSION_JPN
|
#if !VERSION_JP
|
||||||
window_ptr->mess_time = 0;
|
window_ptr->mess_time = 0;
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue