diff --git a/config/GMPP01_00/rels/w04Dll/splits.txt b/config/GMPP01_00/rels/w04Dll/splits.txt index d977e9ab..afc4b596 100644 --- a/config/GMPP01_00/rels/w04Dll/splits.txt +++ b/config/GMPP01_00/rels/w04Dll/splits.txt @@ -42,6 +42,6 @@ REL/w04Dll/mg_item.c: REL/w04Dll/mg_coin.c: .text start:0x0000C784 end:0x0000E9F0 - .rodata start:0x000003A0 end:0x00000428 + .rodata start:0x000003A0 end:0x0000042C .data start:0x00000588 end:0x0000063F .bss start:0x000002B0 end:0x00000328 diff --git a/configure.py b/configure.py index cd766eff..c7a4f2e5 100644 --- a/configure.py +++ b/configure.py @@ -1454,8 +1454,8 @@ config.libs = [ "w01Dll", # Toad's Midway Madness objects={ Object(Matching, "REL/w01Dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w01Dll/mg_coin.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w01Dll/mg_item.c"), + Object(Matching, "REL/w01Dll/mg_coin.c"), + Object(Matching, "REL/w01Dll/mg_item.c"), }, ), Rel( @@ -1464,8 +1464,8 @@ config.libs = [ Object(Matching, "REL/w02Dll/main.c"), Object(Matching, "REL/w02Dll/gendice.c"), Object(Matching, "REL/w02Dll/gamble.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w02Dll/mg_coin.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w02Dll/mg_item.c"), + Object(Matching, "REL/w02Dll/mg_coin.c"), + Object(Matching, "REL/w02Dll/mg_item.c"), Object(Matching, "REL/w02Dll/shuffleboard.c"), Object(Matching, "REL/w02Dll/roulette.c"), }, @@ -1489,8 +1489,8 @@ config.libs = [ Object(Matching, "REL/w04Dll/bridge.c"), Object(Matching, "REL/w04Dll/boo_event.c"), Object(Matching, "REL/w04Dll/big_boo.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w04Dll/mg_item.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w04Dll/mg_coin.c"), + Object(Matching, "REL/w04Dll/mg_item.c"), + Object(Matching, "REL/w04Dll/mg_coin.c"), }, ), Rel( @@ -1500,8 +1500,8 @@ config.libs = [ Object(Matching, "REL/w05Dll/hotel.c"), Object(Matching, "REL/w05Dll/monkey.c"), Object(Matching, "REL/w05Dll/dolphin.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w05Dll/mg_item.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w05Dll/mg_coin.c"), + Object(Matching, "REL/w05Dll/mg_item.c"), + Object(Matching, "REL/w05Dll/mg_coin.c"), }, ), Rel( diff --git a/src/REL/w01Dll/mg_coin.c b/src/REL/w01Dll/mg_coin.c index 6a7c12b8..c24ee595 100755 --- a/src/REL/w01Dll/mg_coin.c +++ b/src/REL/w01Dll/mg_coin.c @@ -248,7 +248,7 @@ void fn_1_9DD8(void) } lbl_1_bss_72C = 0; lbl_1_bss_74C = 5; - lbl_1_bss_748 = 0x3C; + lbl_1_bss_748 = REFRESH_RATE; lbl_1_bss_72A = 0; fn_1_CEC4(); lbl_1_bss_788 = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W01, 17), NULL, 0); @@ -566,11 +566,11 @@ static void fn_1_B478(omObjData *arg0) u16 var_r29; temp_r31 = arg0->data; - if ((lbl_1_bss_748 -= 1) == 0) { - if ((lbl_1_bss_74C -= 1) >= 0) { + if ((--lbl_1_bss_748) == 0) { + if ((--lbl_1_bss_74C) >= 0) { MGSeqParamSet(lbl_1_bss_744, 1, lbl_1_bss_74C); } - lbl_1_bss_748 = 60; + lbl_1_bss_748 = REFRESH_RATE; } if (GWPlayerCfg[lbl_1_bss_798].iscom == 1) { fn_1_B1CC(arg0, &var_r29, &var_r27); diff --git a/src/REL/w01Dll/mg_item.c b/src/REL/w01Dll/mg_item.c index ab932863..99d31a68 100755 --- a/src/REL/w01Dll/mg_item.c +++ b/src/REL/w01Dll/mg_item.c @@ -342,7 +342,7 @@ static void fn_1_ECD4(omObjData *arg0) lbl_1_bss_7E8 = 4.0f; arg0->func = fn_1_EED8; lbl_1_bss_7D2 = 5; - lbl_1_bss_7D0 = 60; + lbl_1_bss_7D0 = REFRESH_RATE; lbl_1_bss_7D4 = MGSeqTimerCreateXY(lbl_1_bss_7D2, 288, 64); } BoardModelMotionSpeedSet(lbl_1_bss_6C4[17], lbl_1_bss_7EC); @@ -368,11 +368,11 @@ static void fn_1_EED8(omObjData *arg0) fn_1_10CF0(arg0->work[2]); temp_r29 = GWPlayer[lbl_1_bss_7E4].port; - if ((lbl_1_bss_7D0 -= 1) == 0) { - if ((lbl_1_bss_7D2 -= 1) >= 0) { + if ((--lbl_1_bss_7D0) == 0) { + if ((--lbl_1_bss_7D2) >= 0) { MGSeqParamSet(lbl_1_bss_7D4, 1, lbl_1_bss_7D2); } - lbl_1_bss_7D0 = 60; + lbl_1_bss_7D0 = REFRESH_RATE; } if (GWPlayerCfg[lbl_1_bss_7E4].iscom == 1) { fn_1_EEA0(arg0, &var_r30); diff --git a/src/REL/w02Dll/mg_coin.c b/src/REL/w02Dll/mg_coin.c index d8678d53..054d750b 100644 --- a/src/REL/w02Dll/mg_coin.c +++ b/src/REL/w02Dll/mg_coin.c @@ -253,7 +253,7 @@ void fn_1_4378(omObjData *object) HuAudFXPlay(1067); object->work[0] &= ~temp_r28; temp_r31->unkC[temp_r30] = 0; - lbl_1_bss_A8->work[2] = 60; + lbl_1_bss_A8->work[2] = REFRESH_RATE; if (temp_r30 != 2) { lbl_1_bss_A8->func = fn_1_5290; } @@ -468,7 +468,7 @@ void fn_1_5290(omObjData *object) if (object->work[2] == 0) { temp_r31 = object->data; temp_r31->unk18 = 5; - temp_r31->unk1A = 60; + temp_r31->unk1A = REFRESH_RATE; temp_r31->unk1C = MGSeqTimerCreateXY(temp_r31->unk18, 288, 64); HuWinMesMaxSizeGet(1, sp8, MAKE_MESSID(0x13, 0x15)); temp_r31->unk1E = HuWinCreate(-10000, 400, sp8[0], sp8[1], 0); @@ -495,7 +495,7 @@ void fn_1_53B8(omObjData *object) temp_r31 = object->data; temp_r28 = GWPlayer[lbl_1_bss_86].port; if (--temp_r31->unk1A == 0) { - temp_r31->unk1A = 60; + temp_r31->unk1A = REFRESH_RATE; if (--temp_r31->unk18 >= 0) { MGSeqParamSet(temp_r31->unk1C, 1, temp_r31->unk18); } diff --git a/src/REL/w02Dll/mg_item.c b/src/REL/w02Dll/mg_item.c index 9429bc92..d51268e8 100644 --- a/src/REL/w02Dll/mg_item.c +++ b/src/REL/w02Dll/mg_item.c @@ -92,11 +92,11 @@ void fn_1_5D28(void) HuPrcVSleep(); } BoardPlayerIdleSet(lbl_1_bss_196); - HuPrcSleep(120); + HuPrcSleep(REFRESH_RATE*2); BoardAudSeqPause(0, 1, 1000); HuAudFXPlay(781); fn_1_8570(); - HuPrcSleep(60); + HuPrcSleep(REFRESH_RATE); lbl_1_bss_104 = omAddObjEx(boardObjMan, 257, 0, 0, -1, fn_1_5F08); lbl_1_bss_108 = omAddObjEx(boardObjMan, 257, 0, 0, -1, fn_1_606C); lbl_1_bss_10C = omAddObjEx(boardObjMan, 257, 0, 0, -1, NULL); @@ -155,7 +155,7 @@ void fn_1_606C(omObjData *object) temp_r31->unk44[1].x += lbl_1_bss_110; BoardModelPosGet(lbl_1_bss_18A[1], &temp_r31->unk44[2]); BoardMusStart(1, 19, 127, 0); - object->work[0] = 300; + object->work[0] = REFRESH_RATE*5; object->work[1] = 0; object->func = fn_1_6248; } @@ -199,7 +199,7 @@ void fn_1_6248(omObjData *object) temp_r31->unk2A[1] = temp_r31->unk24[1]; sp28 = lbl_1_bss_160[0]; sp34 = lbl_1_bss_160[1]; - temp_f31 = 15; + temp_f31 = (VERSION_PAL) ? 13 : 15; break; case 1: @@ -207,13 +207,13 @@ void fn_1_6248(omObjData *object) temp_r31->unk2A[1] = temp_r31->unk24[2]; sp28 = lbl_1_bss_160[1]; sp34 = lbl_1_bss_160[2]; - temp_f31 = 15; + temp_f31 = (VERSION_PAL) ? 13 : 15; break; case 2: temp_r31->unk2A[0] = temp_r31->unk24[0]; temp_r31->unk2A[1] = temp_r31->unk24[2]; - temp_f31 = 22.5f; + temp_f31 = (VERSION_PAL) ? 19.5f : 22.5f; break; } temp_r31->unk68 = temp_r28; @@ -429,8 +429,8 @@ void fn_1_6EA8(void) sp20.y = sp2C.y = 0; VECSubtract(&sp20, &sp2C, &sp14); temp_f30 = VECMag(&sp14); - VECScale(&sp14, &sp14, 1.0f / 60.0f); - for (temp_r30 = 0; temp_r30 < 60; temp_r30++) { + VECScale(&sp14, &sp14, 1.0f / REFRESH_RATE); + for (temp_r30 = 0; temp_r30 < REFRESH_RATE; temp_r30++) { BoardModelPosGet(lbl_1_bss_184[temp_r31], &sp2C); VECAdd(&sp2C, &sp14, &sp2C); BoardModelPosSetV(lbl_1_bss_184[temp_r31], &sp2C); @@ -452,9 +452,9 @@ void fn_1_6EA8(void) BoardModelScaleGet(lbl_1_bss_184[temp_r31], &sp8); temp_f31 = sp8.x; temp_f29 = -0.04f; - temp_f30 = (sp20.y - sp2C.y) / 30.0f; + temp_f30 = (sp20.y - sp2C.y) / (REFRESH_RATE/2); temp_r29 = 0; - HuAudFXFadeOut(lbl_1_bss_D8, 499); + HuAudFXFadeOut(lbl_1_bss_D8, (VERSION_PAL) ? 416 : 500); while (!temp_r29) { sp2C.y += temp_f30; temp_f31 += temp_f29; @@ -476,7 +476,7 @@ void fn_1_6EA8(void) while (!BoardPlayerMotionEndCheck(lbl_1_bss_196)) { HuPrcVSleep(); } - HuPrcSleep(30); + HuPrcSleep(REFRESH_RATE/2); while (HuAudSStreamStatGet(temp_r28)) { HuPrcVSleep(); } @@ -505,7 +505,7 @@ void fn_1_732C(s32 arg0) void fn_1_7358(WorkMGItem *arg0) { if (--arg0->unk2 == 0) { - arg0->unk2 = 60; + arg0->unk2 = REFRESH_RATE; if (--arg0->unk0 >= 0) { MGSeqParamSet(arg0->unk4, 1, arg0->unk0); } @@ -520,7 +520,7 @@ void fn_1_73C8(omObjData *object) WorkMGItem *temp_r31; temp_r31 = object->data; temp_r31->unk0 = 5; - temp_r31->unk2 = 60; + temp_r31->unk2 = REFRESH_RATE; temp_r31->unk4 = MGSeqTimerCreateXY(temp_r31->unk0, 288, 64); HuWinMesMaxSizeGet(1, sp8, MAKE_MESSID(0x13, 0x1B)); temp_r31->unk6 = HuWinCreate(-10000, 368, sp8[0], sp8[1], 0); @@ -564,14 +564,14 @@ void fn_1_74E4(omObjData *object) else if (spC & PAD_BUTTON_LEFT) { if (temp_r31->unk8 != 0) { temp_r31->unk8--; - BoardPlayerPosLerpStart(lbl_1_bss_196, &lbl_1_bss_DC[temp_r31->unk8 + 1], &lbl_1_bss_DC[temp_r31->unk8], 12); + BoardPlayerPosLerpStart(lbl_1_bss_196, &lbl_1_bss_DC[temp_r31->unk8 + 1], &lbl_1_bss_DC[temp_r31->unk8], REFRESH_RATE/5); object->func = fn_1_7750; } } else if (spC & PAD_BUTTON_RIGHT) { if (temp_r31->unk8 != 2) { temp_r31->unk8++; - BoardPlayerPosLerpStart(lbl_1_bss_196, &lbl_1_bss_DC[temp_r31->unk8 - 1], &lbl_1_bss_DC[temp_r31->unk8], 12); + BoardPlayerPosLerpStart(lbl_1_bss_196, &lbl_1_bss_DC[temp_r31->unk8 - 1], &lbl_1_bss_DC[temp_r31->unk8], REFRESH_RATE/5); object->func = fn_1_7750; } } diff --git a/src/REL/w04Dll/mg_coin.c b/src/REL/w04Dll/mg_coin.c index 11ce6a4e..72baaaff 100755 --- a/src/REL/w04Dll/mg_coin.c +++ b/src/REL/w04Dll/mg_coin.c @@ -273,7 +273,7 @@ static void fn_1_D2A4(omObjData *arg0) { sp8 = BoardModelRotYGet(lbl_1_bss_14[9]); BoardModelPosGet(lbl_1_bss_14[9], &spC); if (arg0->scale.x != 0.0f) { - arg0->scale.x -= 8.5f; + arg0->scale.x -= 510.0f/REFRESH_RATE; if (arg0->scale.x < 0.0f) { arg0->scale.x = 0.0f; } @@ -294,7 +294,7 @@ static void fn_1_D2A4(omObjData *arg0) { Hu3DMotionExec(BoardModelIDGet(lbl_1_bss_2F8), temp_r30->unk_08, temp_r30->unk_64, 0); } lbl_1_bss_31C->work[0] = 60; - lbl_1_bss_31C->unk10 = frandmod(40) + 10; + lbl_1_bss_31C->unk10 = frandmod((REFRESH_RATE*2)/3) + (REFRESH_RATE/6); lbl_1_bss_31C->work[1] = arg0->work[1]; lbl_1_bss_31C->func = fn_1_E18C; } @@ -304,7 +304,7 @@ static void fn_1_D554(omObjData *arg0) { float sp8; sp8 = BoardModelRotYGet(lbl_1_bss_14[9]); - arg0->scale.x += 8.5f; + arg0->scale.x += 510.0f/REFRESH_RATE; if (arg0->scale.x > 255.0f) { arg0->scale.x = 255.0f; } @@ -567,7 +567,7 @@ static void fn_1_E4C0(omObjData *arg0) { sp14.z = arg0->scale.z; sp20.x = arg0->trans.x; sp20.z = arg0->trans.z; - sp20.y = arg0->trans.y - arg0->rot.x * arg0->rot.x * 0.25f * 0.075f; + sp20.y = arg0->trans.y - arg0->rot.x * arg0->rot.x * 0.25f * ((VERSION_PAL) ? 0.1125f : 0.075f); arg0->rot.x += 1.0f; VECAdd(&sp2C, &sp20, &sp2C); sp8 = sp2C; diff --git a/src/REL/w04Dll/mg_item.c b/src/REL/w04Dll/mg_item.c index 6f22fb6b..fe8464a2 100755 --- a/src/REL/w04Dll/mg_item.c +++ b/src/REL/w04Dll/mg_item.c @@ -130,9 +130,9 @@ void fn_1_A1F0(void) { BoardAudSeqPause(0, 1, 1000); BoardModelMotionTimeSet(lbl_1_bss_14[6], 0.0f); BoardModelAttrReset(lbl_1_bss_14[6], 0x40000002); - HuPrcSleep(20); + HuPrcSleep((REFRESH_RATE+2)/3); HuAudFXPlay(0x469); - HuPrcSleep(50); + HuPrcSleep(((REFRESH_RATE*5)+3)/6); BoardMusStart(1, 0x1E, 0x7F, 0); HuAudFXPlay(0x46C); while (BoardModelMotionTimeGet(lbl_1_bss_14[6]) < 202.0f) { @@ -349,7 +349,7 @@ static void fn_1_A7E8(void) { } BoardModelHookSet(lbl_1_bss_14[6], lbl_1_data_51C[1], lbl_1_bss_298[temp_r29]); BoardModelAttrReset(lbl_1_bss_14[6], 0x40000002); - HuPrcSleep(30); + HuPrcSleep(REFRESH_RATE/2); HuAudFXPlay(0x310); while (BoardModelMotionTimeGet(lbl_1_bss_14[6]) < BoardModelMotionMaxTimeGet(lbl_1_bss_14[6])) { HuPrcVSleep(); @@ -471,7 +471,7 @@ static void fn_1_A7E8(void) { HuPrcVSleep(); } BoardModelRotYSet(lbl_1_bss_14[10], 0.0f); - HuPrcSleep(30); + HuPrcSleep(REFRESH_RATE/2); while (HuAudSStreamStatGet(sp8) != 0) { HuPrcVSleep(); } diff --git a/src/REL/w05Dll/mg_item.c b/src/REL/w05Dll/mg_item.c index 4a58d846..f0f6c031 100644 --- a/src/REL/w05Dll/mg_item.c +++ b/src/REL/w05Dll/mg_item.c @@ -80,7 +80,7 @@ void fn_1_6B7C(void) BoardModelAttrReset(lbl_1_bss_14[0], 0x40000002); BoardMusStart(1, 0x22, 0x7F, 0); BoardPlayerMotionShiftSet(lbl_1_bss_B6, lbl_1_bss_9E[0], 0.0f, 30.0f, HU3D_MOTATTR_LOOP); - HuPrcSleep(0x1E); + HuPrcSleep(REFRESH_RATE/2); BoardModelVisibilitySet(lbl_1_bss_A2, 1); BoardModelHookSet(BoardPlayerModelGet(lbl_1_bss_B6), "a-itemhook-r", lbl_1_bss_A2); Hu3DModelObjPosGet(BoardModelIDGet(*lbl_1_bss_14), "chara1", &sp10); @@ -353,7 +353,7 @@ void fn_1_799C(void) while (BoardPlayerMotionEndCheck(lbl_1_bss_B6) == 0) { HuPrcVSleep(); } - HuPrcSleep(0x1E); + HuPrcSleep(REFRESH_RATE/2); while (HuAudSStreamStatGet(temp_r27) != 0) { HuPrcVSleep(); @@ -605,10 +605,10 @@ void fn_1_896C(void) } } if ((temp_r30 & 0x80) != 0) { - HuPrcSleep(0x19); + HuPrcSleep(((REFRESH_RATE*5)+6)/12); } else { - HuPrcSleep(0xF); + HuPrcSleep((REFRESH_RATE+2)/4); } spC.x = spC.y = spC.z = 0.0f; @@ -706,7 +706,7 @@ void fn_1_896C(void) for (var_r31 = 0; var_r31 < 3; var_r31++) { BoardModelMotionStartEndSet(lbl_1_bss_AA[var_r31], 0x28, 0x46); } - HuPrcSleep(13); + HuPrcSleep((REFRESH_RATE*2)/9); var_f31 = -8.0f; while (1) { for (var_r28 = 0, var_r31 = 0; var_r31 < 3; var_r31++) {