Add support for PAL version (#464)

* Initial setup for PAL version

* Add hashes to config.yml
Set REL/empty.c to matching for every version
Turn off quick-analysis for PAL

* Set nisDll matching only for the US version

* More config.yml fixes and reran auto-analysis

* Split PAL to sprput

* Add more symbols

* Split a lot more code in PAL

* Split more

Also introduce version.h header

* Split to board stuff

* Port early board TUs to PAL

* More board PAL ports

* Split rest of board code

* Board RELs porting to PAL

* Match w06Dll/fire.c in PAL

* Match w04 big boo for PAL

---------

Co-authored-by: dbalatoni13 <stubiflex.junior@gmail.com>
This commit is contained in:
Liam Coleman 2024-11-16 12:35:24 -06:00 committed by GitHub
parent 80015a6e5e
commit d0a5c85d3e
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
236 changed files with 40998 additions and 390 deletions

View file

@ -913,9 +913,13 @@ static void fn_1_8A60(void) {
HuPrcVSleep();
}
fn_1_7300();
#if VERSION_NTSC
sprintf(sp10, "%d", var_r29);
BoardWinCreate(2, MAKE_MESSID(32, 11), 9);
BoardWinInsertMesSet(MAKE_MESSID_PTR(sp10), 0);
#else
BoardWinCreate(2, MAKE_MESSID(32, 11), 9);
#endif
BoardWinWait();
BoardWinKill();
BoardAudSeqFadeOut(1, 1000);

View file

@ -49,6 +49,24 @@ static s16 lbl_1_data_22A = -1;
static s16 lbl_1_data_22C = -1;
static s16 lbl_1_data_22E = -1;
#if VERSION_PAL
static s32 lbl_1_data_230[] = {
MAKE_MESSID(8, 0),
MAKE_MESSID(8, 1),
MAKE_MESSID(8, 2),
MAKE_MESSID(8, 3),
MAKE_MESSID(8, 4),
MAKE_MESSID(8, 5),
MAKE_MESSID(8, 6),
MAKE_MESSID(8, 7),
MAKE_MESSID(8, 8),
MAKE_MESSID(8, 9),
MAKE_MESSID(8, 10),
MAKE_MESSID(8, 11),
MAKE_MESSID(8, 12),
MAKE_MESSID(8, 13)
};
#else
static s32 lbl_1_data_230[] = {
MAKE_MESSID(8, 14),
MAKE_MESSID(8, 15),
@ -65,7 +83,7 @@ static s32 lbl_1_data_230[] = {
MAKE_MESSID(8, 26),
MAKE_MESSID(8, 27)
};
#endif
void fn_1_6EF0(void) {
BoardRollDispSet(0);
lbl_1_bss_90 = HuPrcChildCreate(fn_1_6F80, 0x2003, 0x3800, 0, boardMainProc);
@ -203,9 +221,12 @@ static void fn_1_74BC(s32 arg0) {
static void fn_1_7574(void) {
s32 temp_r3;
s32 temp_r29;
#if VERSION_PAL
s32 playerNo = GWSystem.player_curr;
#endif
s32 temp_r28;
s32 i;
for (i = 0; i < 4; i++) {
if (lbl_1_bss_C2[i] == 0) {
continue;
@ -218,11 +239,17 @@ static void fn_1_7574(void) {
BoardWinCreate(0, MAKE_MESSID(48, 16), -1);
BoardWinInsertMesSet(temp_r28, 0);
BoardWinInsertMesSet(lbl_1_data_230[temp_r29], 1);
#if VERSION_PAL
GWSystem.player_curr = i;
#endif
BoardWinPlayerSet(i);
BoardWinWait();
BoardWinKill();
}
}
#if VERSION_PAL
GWSystem.player_curr = playerNo;
#endif
}
static void fn_1_7674(s32 arg0) {