From c0afa143f4ddc76c65643c46710ad68d0741e961 Mon Sep 17 00:00:00 2001 From: engineer124 Date: Wed, 29 Dec 2021 23:38:11 +1100 Subject: [PATCH] 2 more functions, a few names --- include/functions.h | 10 +- include/z64save.h | 2 +- src/code/z_parameter.c | 172 ++++++++++++------ src/overlays/actors/ovl_En_Test4/z_en_test4.c | 4 +- tools/disasm/functions.txt | 10 +- tools/sizes/code_functions.csv | 10 +- 6 files changed, 131 insertions(+), 77 deletions(-) diff --git a/include/functions.h b/include/functions.h index 7adcaa490..bc14b3440 100644 --- a/include/functions.h +++ b/include/functions.h @@ -2044,7 +2044,7 @@ void func_8010E9F0(s16 arg0, s16 arg1); // void func_8010EB50(void); // void func_8010EBA0(void); // void func_8010EC54(void); -void func_8010EE74(GlobalContext* globalCtx, s32 day); +void Interface_NewDay(GlobalContext* globalCtx, s32 day); void Interface_ChangeAlpha(u16 param_1); // void func_8010EF9C(void); // void func_8010F0D4(void); @@ -2088,8 +2088,8 @@ void func_80115D5C(GameState* gamestate); // void func_80116FD8(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5); // void func_801170B8(void); // void Interface_DrawItemButtons(void); -// void func_80117A20(void); -// void func_80117BD0(void); +// void Interface_DrawItemIconTexture(void); +// void Interface_DrawAmmoCount(void); // void func_80118084(void); // void func_80118890(void); // void func_80118BA4(void); @@ -2102,9 +2102,9 @@ void func_8011B4E0(GlobalContext* globalCtx, s16 arg1); // void Interface_DrawMinigamePerfect(void); void func_8011C808(GlobalContext* globalCtx); // void func_8011C898(void); -// void func_8011CA64(void); +// void Interface_DrawTimers(void); // void func_8011E3B4(void); -// void func_8011E730(void); +// void Interface_DrawMinigame(void); // void Interface_Draw(UNK_TYPE4 ctxt); // void Interface_LoadStory(void); // void func_80121000(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5, UNK_TYPE4 param_6, UNK_TYPE4 param_7, UNK_TYPE1 param_8, UNK_TYPE1 param_9, UNK_TYPE1 param_10, UNK_TYPE4 param_11, UNK_TYPE4 param_12, UNK_TYPE4 param_13, UNK_TYPE4 param_14); diff --git a/include/z64save.h b/include/z64save.h index d5bb62829..5b0c33ab8 100644 --- a/include/z64save.h +++ b/include/z64save.h @@ -148,7 +148,7 @@ typedef struct { /* 0x3DC2 */ u8 unk_3DC2; // "pad1" /* 0x3DC8 */ OSTime unk_3DC8; // "get_time" /* 0x3DD0 */ u8 unk_3DD0[7]; // "event_fg" - /* 0x3DD7 */ u8 unk_3DD7[7]; // "calc_flag" + /* 0x3DD7 */ u8 timersNoTimeLimit[7]; // "calc_flag" /* 0x3DE0 */ OSTime unk_3DE0[7]; // "event_ostime" /* 0x3E18 */ OSTime unk_3E18[7]; // "event_sub" /* 0x3E50 */ OSTime unk_3E50[7]; // "func_time" diff --git a/src/code/z_parameter.c b/src/code/z_parameter.c index 0aa821e43..64e1c6a4f 100644 --- a/src/code/z_parameter.c +++ b/src/code/z_parameter.c @@ -36,30 +36,6 @@ extern u8 D_801E3BB0[]; } \ (void)0 -/** - * Similar to `TIMED_STEP_TO`, but will always increase `var`. If var > target, this will eventually increase `var` by - * an amount that is at most ( timeRemaining + 1 ) * | var - target |, but which depends on the amount lost to - * truncation from the divisions. - */ -#define TIMED_STEP_UP_TO(var, target, timeRemaining, stepVar) \ - { \ - stepVar = ABS_ALT(var - target) / timeRemaining; \ - var += stepVar; \ - } \ - (void)0 - -/** - * Similar to `TIMED_STEP_TO`, but will always increase `var`. If var < target, this will eventually dncrease `var` by - * an amount that is at most ( timeRemaining + 1 ) * | var - target |, but which depends on the amount lost to - * truncation from the divisions. - */ -#define TIMED_STEP_DOWN_TO(var, target, timeRemaining, stepVar) \ - { \ - stepVar = ABS_ALT(var - target) / timeRemaining; \ - var -= stepVar; \ - } \ - (void)0 - typedef struct { /* 0x00 */ u8 scene; /* 0x01 */ u8 flags1; @@ -292,9 +268,9 @@ s16 D_801BF9C8[] = { 0x16, }; -s32 D_801BF9CC[] = { - 0xC3BE0000, // f32: -380.0 - 0xC3AF0000, // f32: -350.0 +f32 D_801BF9CC[] = { + -380.0f, + -350.0f, }; s16 D_801BF9D4[] = { @@ -517,37 +493,37 @@ void func_8010E968(s32 arg0) { D_801BFA84 = btnAPressed; } -void func_8010E9F0(s16 timerId, s16 arg1) { +void func_8010E9F0(s16 timerId, s16 timeLimit) { gSaveContext.timerX[timerId] = 115; gSaveContext.timerY[timerId] = 80; D_801BF8E0 = 0; - gSaveContext.unk_3DE0[timerId] = arg1 * 100; + gSaveContext.unk_3DE0[timerId] = timeLimit * 100; gSaveContext.unk_3E18[timerId] = gSaveContext.unk_3DE0[timerId]; if (gSaveContext.unk_3DE0[timerId] != 0) { - gSaveContext.unk_3DD7[timerId] = 0; + gSaveContext.timersNoTimeLimit[timerId] = false; } else { - gSaveContext.unk_3DD7[timerId] = 1; + gSaveContext.timersNoTimeLimit[timerId] = true; } gSaveContext.unk_3DD0[timerId] = 1; } -void func_8010EA9C(s16 arg0, s16 arg1) { +void func_8010EA9C(s16 timeLimit, s16 arg1) { gSaveContext.timerX[0] = 115; gSaveContext.timerY[0] = 80; D_801BF8E4 = arg1; - gSaveContext.unk_3DE0[0] = arg0 * 100; + gSaveContext.unk_3DE0[0] = timeLimit * 100; gSaveContext.unk_3E18[0] = gSaveContext.unk_3DE0[0]; if (gSaveContext.unk_3DE0[0] != 0) { - gSaveContext.unk_3DD7[0] = 0; + gSaveContext.timersNoTimeLimit[0] = false; } else { - gSaveContext.unk_3DD7[0] = 1; + gSaveContext.timersNoTimeLimit[0] = true; } gSaveContext.unk_3DD0[0] = 13; @@ -588,15 +564,20 @@ s32 func_8010EC54(s16 timerId) { time = gSaveContext.unk_3DE0[timerId]; + // hours time -= (sp1C = time / 36000) * 36000; if (1) {} + // minutes time -= (sp1E = time / 6000) * 6000; + // seconds time -= (sp20 = time / 1000) * 1000; + // 100 milliseconds time -= (sp22 = time / 100) * 100; + // 10 miliseconds time -= (temp_a0 = time / 10) * 10; final = (sp1C << 0x14); @@ -607,23 +588,26 @@ s32 func_8010EC54(s16 timerId) { #pragma GLOBAL_ASM("asm/non_matchings/code/z_parameter/func_8010EC54.s") #endif -void func_8010EE74(GlobalContext* globalCtx, s32 arg1) { +void Interface_NewDay(GlobalContext* globalCtx, s32 day) { s32 pad; - s16 phi_t0 = arg1 - 1; + s16 i = day - 1; - if (phi_t0 < 0 || phi_t0 >= 3) { - phi_t0 = 0; + // i is used to store dayMinusOne + if (i < 0 || i >= 3) { + i = 0; } + // Loads day number from week_static for the three-day clock DmaMgr_SendRequest0((u32)globalCtx->interfaceCtx.doActionSegment + 0x780, - (u32)_week_staticSegmentRomStart + phi_t0 * 0x510, 0x510); + (u32)_week_staticSegmentRomStart + i * 0x510, 0x510); - for (phi_t0 = 0; phi_t0 < 120; phi_t0++) { - gSaveContext.save.roomInf[phi_t0][0] = gSaveContext.cycleSceneFlags[phi_t0].chest; - gSaveContext.save.roomInf[phi_t0][1] = gSaveContext.cycleSceneFlags[phi_t0].swch0; - gSaveContext.save.roomInf[phi_t0][2] = gSaveContext.cycleSceneFlags[phi_t0].swch1; - gSaveContext.save.roomInf[phi_t0][3] = gSaveContext.cycleSceneFlags[phi_t0].clearedRoom; - gSaveContext.save.roomInf[phi_t0][4] = gSaveContext.cycleSceneFlags[phi_t0].collectible; + // i is used to store sceneId + for (i = 0; i < 120; i++) { + gSaveContext.save.roomInf[i][0] = gSaveContext.cycleSceneFlags[i].chest; + gSaveContext.save.roomInf[i][1] = gSaveContext.cycleSceneFlags[i].swch0; + gSaveContext.save.roomInf[i][2] = gSaveContext.cycleSceneFlags[i].swch1; + gSaveContext.save.roomInf[i][3] = gSaveContext.cycleSceneFlags[i].clearedRoom; + gSaveContext.save.roomInf[i][4] = gSaveContext.cycleSceneFlags[i].collectible; } } @@ -2367,12 +2351,24 @@ s16 D_801BFAF8[] = { void Interface_DrawItemButtons(GlobalContext* globalCtx); #pragma GLOBAL_ASM("asm/non_matchings/code/z_parameter/Interface_DrawItemButtons.s") -s16 D_801BFAFC[] = { 30, 24, 24, 24 }; -#pragma GLOBAL_ASM("asm/non_matchings/code/z_parameter/func_80117A20.s") +void Interface_DrawItemIconTexture(GlobalContext* globalCtx, void* texture, s16 button) { + static s16 D_801BFAFC[] = { 30, 24, 24, 24 }; + + OPEN_DISPS(globalCtx->state.gfxCtx); + + gDPLoadTextureBlock(OVERLAY_DISP++, texture, G_IM_FMT_RGBA, G_IM_SIZ_32b, 32, 32, 0, G_TX_NOMIRROR | G_TX_WRAP, + G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD, G_TX_NOLOD); + + gSPTextureRectangle(OVERLAY_DISP++, D_801BF9D4[button] << 2, D_801BF9DC[button] << 2, + (D_801BF9D4[button] + D_801BFAFC[button]) << 2, (D_801BF9DC[button] + D_801BFAFC[button]) << 2, + G_TX_RENDERTILE, 0, 0, D_801BF9BC[button] << 1, D_801BF9BC[button] << 1); + + CLOSE_DISPS(globalCtx->state.gfxCtx); +} s16 D_801BFB04[] = { 0xA2, 0xE4, 0xFA, 0x110 }; s16 D_801BFB0C[] = { 0x23, 0x23, 0x33, 0x23 }; -#pragma GLOBAL_ASM("asm/non_matchings/code/z_parameter/func_80117BD0.s") +#pragma GLOBAL_ASM("asm/non_matchings/code/z_parameter/Interface_DrawAmmoCount.s") void func_80118084(GlobalContext* globalCtx); #pragma GLOBAL_ASM("asm/non_matchings/code/z_parameter/func_80118084.s") @@ -2380,8 +2376,65 @@ void func_80118084(GlobalContext* globalCtx); void func_80118890(GlobalContext* globalCtx); #pragma GLOBAL_ASM("asm/non_matchings/code/z_parameter/func_80118890.s") -void func_80118BA4(GlobalContext* globalCtx); -#pragma GLOBAL_ASM("asm/non_matchings/code/z_parameter/func_80118BA4.s") +void func_80118BA4(GlobalContext* globalCtx) { + InterfaceContext* interfaceCtx = &globalCtx->interfaceCtx; + s16 aAlpha; + + OPEN_DISPS(globalCtx->state.gfxCtx); + + aAlpha = interfaceCtx->aAlpha; + + if (aAlpha > 100) { + aAlpha = 100; + } + + func_8012C8D4(globalCtx->state.gfxCtx); + + func_80116FD8(globalCtx, gGameInfo->data[0x55F] + 0x19, gGameInfo->data[0x55F] + 0x46, 192, 237); + + gSPClearGeometryMode(OVERLAY_DISP++, G_CULL_BOTH); + gDPSetCombineMode(OVERLAY_DISP++, G_CC_MODULATEIA_PRIM, G_CC_MODULATEIA_PRIM); + gDPSetAlphaCompare(OVERLAY_DISP++, G_AC_THRESHOLD); + + Matrix_InsertTranslation(0.0f, 0.0f, -38.0f, MTXMODE_NEW); + Matrix_Scale(1.0f, 1.0f, 1.0f, MTXMODE_APPLY); + Matrix_RotateStateAroundXAxis(interfaceCtx->unk_218 / 10000.0f); + + gSPMatrix(OVERLAY_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); + gDPPipeSync(OVERLAY_DISP++); + gSPVertex(OVERLAY_DISP++, &interfaceCtx->actionVtx[4], 4, 0); + gDPSetPrimColor(OVERLAY_DISP++, 0, 0, 0, 0, 0, aAlpha); + + OVERLAY_DISP = func_8010DC58(OVERLAY_DISP, gButtonBackgroundTex, 32, 32, 0); + + gDPPipeSync(OVERLAY_DISP++); + func_80116FD8(globalCtx, gGameInfo->data[0x55F] + 0x17, gGameInfo->data[0x55F] + 0x44, 190, 235); + gSPVertex(OVERLAY_DISP++, &interfaceCtx->actionVtx[0], 4, 0); + gDPSetPrimColor(OVERLAY_DISP++, 0, 0, 100, 200, 255, interfaceCtx->aAlpha); + gSP1Quadrangle(OVERLAY_DISP++, 0, 2, 3, 1, 0); + + gDPPipeSync(OVERLAY_DISP++); + func_80116FD8(globalCtx, gGameInfo->data[0x55F] + 0x17, gGameInfo->data[0x55F] + 0x44, 190, 235); + gSPSetGeometryMode(OVERLAY_DISP++, G_CULL_BACK); + gDPSetCombineLERP(OVERLAY_DISP++, PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, TEXEL0, 0, PRIMITIVE, 0, PRIMITIVE, + ENVIRONMENT, TEXEL0, ENVIRONMENT, TEXEL0, 0, PRIMITIVE, 0); + gDPSetPrimColor(OVERLAY_DISP++, 0, 0, 255, 255, 255, interfaceCtx->aAlpha); + gDPSetEnvColor(OVERLAY_DISP++, 0, 0, 0, 0); + + Matrix_InsertTranslation(0.0f, 0.0f, D_801BF9CC[gSaveContext.options.language] / 10.0f, MTXMODE_NEW); + Matrix_Scale(1.0f, 1.0f, 1.0f, MTXMODE_APPLY); + Matrix_RotateStateAroundXAxis(interfaceCtx->unk_218 / 10000.0f); + gSPMatrix(OVERLAY_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); + gSPVertex(OVERLAY_DISP++, &interfaceCtx->actionVtx[8], 4, 0); + + if (((interfaceCtx->unk_210 < 2) || (interfaceCtx->unk_210 == 3))) { + OVERLAY_DISP = func_8010DE38(OVERLAY_DISP, interfaceCtx->doActionSegment, 3, 0x30, 0x10, 0); + } else { + OVERLAY_DISP = func_8010DE38(OVERLAY_DISP, interfaceCtx->doActionSegment + 0x180, 3, 0x30, 0x10, 0); + } + + CLOSE_DISPS(globalCtx->state.gfxCtx); +} s16 D_801BFB14[] = { 255, 100, 255, 0 }; s16 D_801BFB1C[] = { 0, 100, 255, 0 }; @@ -2480,7 +2533,8 @@ void Interface_DrawClock(GlobalContext* globalCtx) { } else if (D_801BFB34 != 0) { D_801BFB34--; } else if (D_801BFB30 != 0) { - TIMED_STEP_UP_TO(D_801BFB2C, 255, D_801BFB30, colorStep); + colorStep = ABS_ALT(D_801BFB2C - 255) / D_801BFB30; + D_801BFB2C += colorStep; if (D_801BFB2C >= 255) { D_801BFB2C = 255; @@ -3166,14 +3220,14 @@ s16 D_801BFCFC[] = { s16 D_801BFD0C[] = { 9, 9, 8, 9, 9, 8, 9, 9, }; -void func_8011CA64(GlobalContext* globalCtx); -#pragma GLOBAL_ASM("asm/non_matchings/code/z_parameter/func_8011CA64.s") +void Interface_DrawTimers(GlobalContext* globalCtx); +#pragma GLOBAL_ASM("asm/non_matchings/code/z_parameter/Interface_DrawTimers.s") void func_8011E3B4(GlobalContext* globalCtx); #pragma GLOBAL_ASM("asm/non_matchings/code/z_parameter/func_8011E3B4.s") -void func_8011E730(GlobalContext* globalCtx); -#pragma GLOBAL_ASM("asm/non_matchings/code/z_parameter/func_8011E730.s") +void Interface_DrawMinigame(GlobalContext* globalCtx); +#pragma GLOBAL_ASM("asm/non_matchings/code/z_parameter/Interface_DrawMinigame.s") // rupeeDigitsFirst s16 D_801BFD1C[] = { 1, 0, 0, 0 }; @@ -3500,8 +3554,8 @@ void Interface_Draw(GlobalContext* globalCtx) { Interface_DrawMinigamePerfect(globalCtx); } - func_8011E730(globalCtx); - func_8011CA64(globalCtx); + Interface_DrawMinigame(globalCtx); + Interface_DrawTimers(globalCtx); } // PictoBox @@ -3974,7 +4028,7 @@ void Interface_Update(GlobalContext* globalCtx) { gSaveContext.timerX[5] = 115; gSaveContext.timerY[5] = 80; D_801BF8E0 = 1; - gSaveContext.unk_3DD7[5] = 0; + gSaveContext.timersNoTimeLimit[5] = false; } } } diff --git a/src/overlays/actors/ovl_En_Test4/z_en_test4.c b/src/overlays/actors/ovl_En_Test4/z_en_test4.c index 0244e66c7..a4afa9204 100644 --- a/src/overlays/actors/ovl_En_Test4/z_en_test4.c +++ b/src/overlays/actors/ovl_En_Test4/z_en_test4.c @@ -58,7 +58,7 @@ void func_80A41D70(EnTest4* this, GlobalContext* globalCtx) { this->unk_146 = gSaveContext.save.time += CLOCK_TIME_MINUTE; } - func_8010EE74(globalCtx, CURRENT_DAY); + Interface_NewDay(globalCtx, CURRENT_DAY); D_801BDBC8 = 0xFE; func_800FB758(globalCtx); func_800FEAF4(&globalCtx->envCtx); @@ -94,7 +94,7 @@ void func_80A41FA4(EnTest4* this, GlobalContext* globalCtx) { } else if ((sCutscenes[this->unk_144] < 0) || ((globalCtx->actorCtx.unk5 & 2) != 0)) { Sram_IncrementDay(); gSaveContext.save.time = CLOCK_TIME(6, 0); - func_8010EE74(globalCtx, CURRENT_DAY); + Interface_NewDay(globalCtx, CURRENT_DAY); func_80151A68(globalCtx, sDayMessages2[CURRENT_DAY - 1]); D_801BDBC8 = 0xFE; func_800FB758(globalCtx); diff --git a/tools/disasm/functions.txt b/tools/disasm/functions.txt index a0463e658..43d8eb4d4 100644 --- a/tools/disasm/functions.txt +++ b/tools/disasm/functions.txt @@ -2099,7 +2099,7 @@ 0x8010EB50:("func_8010EB50",), 0x8010EBA0:("func_8010EBA0",), 0x8010EC54:("func_8010EC54",), - 0x8010EE74:("func_8010EE74",), + 0x8010EE74:("Interface_NewDay",), 0x8010EF68:("Interface_ChangeAlpha",), 0x8010EF9C:("func_8010EF9C",), 0x8010F0D4:("func_8010F0D4",), @@ -2144,8 +2144,8 @@ 0x80116FD8:("func_80116FD8",), 0x801170B8:("func_801170B8",), 0x80117100:("Interface_DrawItemButtons",), - 0x80117A20:("func_80117A20",), - 0x80117BD0:("func_80117BD0",), + 0x80117A20:("Interface_DrawItemIconTexture",), + 0x80117BD0:("Interface_DrawAmmoCount",), 0x80118084:("func_80118084",), 0x80118890:("func_80118890",), 0x80118BA4:("func_80118BA4",), @@ -2158,9 +2158,9 @@ 0x8011C4C4:("Interface_DrawMinigamePerfect",), 0x8011C808:("func_8011C808",), 0x8011C898:("func_8011C898",), - 0x8011CA64:("func_8011CA64",), + 0x8011CA64:("Interface_DrawTimers",), 0x8011E3B4:("func_8011E3B4",), - 0x8011E730:("func_8011E730",), + 0x8011E730:("Interface_DrawMinigame",), 0x8011F0E0:("Interface_Draw",), 0x80120F90:("Interface_LoadStory",), 0x80121064:("Interface_AllocStory",), diff --git a/tools/sizes/code_functions.csv b/tools/sizes/code_functions.csv index 7b12671ec..60e8afe3f 100644 --- a/tools/sizes/code_functions.csv +++ b/tools/sizes/code_functions.csv @@ -1613,7 +1613,7 @@ asm/non_matchings/code/z_parameter/func_8010EA9C.s,func_8010EA9C,0x8010EA9C,0x2D asm/non_matchings/code/z_parameter/func_8010EB50.s,func_8010EB50,0x8010EB50,0x14 asm/non_matchings/code/z_parameter/func_8010EBA0.s,func_8010EBA0,0x8010EBA0,0x2D asm/non_matchings/code/z_parameter/func_8010EC54.s,func_8010EC54,0x8010EC54,0x88 -asm/non_matchings/code/z_parameter/func_8010EE74.s,func_8010EE74,0x8010EE74,0x3D +asm/non_matchings/code/z_parameter/Interface_NewDay.s,Interface_NewDay,0x8010EE74,0x3D asm/non_matchings/code/z_parameter/Interface_ChangeAlpha.s,Interface_ChangeAlpha,0x8010EF68,0xD asm/non_matchings/code/z_parameter/func_8010EF9C.s,func_8010EF9C,0x8010EF9C,0x4E asm/non_matchings/code/z_parameter/func_8010F0D4.s,func_8010F0D4,0x8010F0D4,0x35 @@ -1658,8 +1658,8 @@ asm/non_matchings/code/z_parameter/Interface_DrawMagicBar.s,Interface_DrawMagicB asm/non_matchings/code/z_parameter/func_80116FD8.s,func_80116FD8,0x80116FD8,0x38 asm/non_matchings/code/z_parameter/func_801170B8.s,func_801170B8,0x801170B8,0x12 asm/non_matchings/code/z_parameter/Interface_DrawItemButtons.s,Interface_DrawItemButtons,0x80117100,0x248 -asm/non_matchings/code/z_parameter/func_80117A20.s,func_80117A20,0x80117A20,0x6C -asm/non_matchings/code/z_parameter/func_80117BD0.s,func_80117BD0,0x80117BD0,0x12D +asm/non_matchings/code/z_parameter/Interface_DrawItemIconTexture.s,Interface_DrawItemIconTexture,0x80117A20,0x6C +asm/non_matchings/code/z_parameter/Interface_DrawAmmoCount.s,Interface_DrawAmmoCount,0x80117BD0,0x12D asm/non_matchings/code/z_parameter/func_80118084.s,func_80118084,0x80118084,0x203 asm/non_matchings/code/z_parameter/func_80118890.s,func_80118890,0x80118890,0xC5 asm/non_matchings/code/z_parameter/func_80118BA4.s,func_80118BA4,0x80118BA4,0x123 @@ -1672,9 +1672,9 @@ asm/non_matchings/code/z_parameter/func_8011BF70.s,func_8011BF70,0x8011BF70,0x15 asm/non_matchings/code/z_parameter/Interface_DrawMinigamePerfect.s,Interface_DrawMinigamePerfect,0x8011C4C4,0xD1 asm/non_matchings/code/z_parameter/func_8011C808.s,func_8011C808,0x8011C808,0x24 asm/non_matchings/code/z_parameter/func_8011C898.s,func_8011C898,0x8011C898,0x73 -asm/non_matchings/code/z_parameter/func_8011CA64.s,func_8011CA64,0x8011CA64,0x654 +asm/non_matchings/code/z_parameter/Interface_DrawTimers.s,Interface_DrawTimers,0x8011CA64,0x654 asm/non_matchings/code/z_parameter/func_8011E3B4.s,func_8011E3B4,0x8011E3B4,0xDF -asm/non_matchings/code/z_parameter/func_8011E730.s,func_8011E730,0x8011E730,0x26C +asm/non_matchings/code/z_parameter/Interface_DrawMinigame.s,Interface_DrawMinigame,0x8011E730,0x26C asm/non_matchings/code/z_parameter/Interface_Draw.s,Interface_Draw,0x8011F0E0,0x7AC asm/non_matchings/code/z_parameter/Interface_LoadStory.s,Interface_LoadStory,0x80120F90,0x35 asm/non_matchings/code/z_parameter/Interface_AllocStory.s,Interface_AllocStory,0x80121064,0x1F