diff options
| author | fig02 <fig02srl@gmail.com> | 2020-04-07 08:50:36 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-04-07 08:50:36 -0400 |
| commit | b71d74d20c74026fd2fceb668f53681a7e737c42 (patch) | |
| tree | 00b721f7737331f8cf255a6d003af197b03e3251 /src/code | |
| parent | ec5ba3ec987c826b018aec935d75bf7bddbd4a8d (diff) | |
| parent | 5c5fa61d4e83bc2a9815dcb765345d51b0d60f00 (diff) | |
Merge pull request #59 from pixel-stuck/master
fix 3 non-matchings in z_demo.c
Diffstat (limited to 'src/code')
| -rw-r--r-- | src/code/z_demo.c | 32 |
1 files changed, 10 insertions, 22 deletions
diff --git a/src/code/z_demo.c b/src/code/z_demo.c index c2cad2206..5735a5689 100644 --- a/src/code/z_demo.c +++ b/src/code/z_demo.c @@ -1,5 +1,6 @@ #include <ultra64.h> #include <global.h> +#include <PR/os_cont.h> u16 D_8011E1C0 = 0; u16 D_8011E1C4 = 0; @@ -95,19 +96,17 @@ void func_80064558(GlobalContext* globalCtx, CutsceneContext* csCtx) { } } -#ifdef NON_MATCHING -// minor ordering and regalloc differences void func_800645A0(GlobalContext* globalCtx, CutsceneContext* csCtx) { - CutsceneStateHandler handler; + Input* pad1 = &globalCtx->state.input[0]; - if (!~(globalCtx->state.input[0].padPressed | -0x201) && (csCtx->state == CS_STATE_IDLE) && + if (!~(pad1->padPressed | ~L_JPAD) && (csCtx->state == CS_STATE_IDLE) && (gSaveContext.scene_setup_index >= 4)) { D_8015FCC8 = 0; gSaveContext.cutscene_index = 0xFFFD; gSaveContext.cutscene_trigger = 1; } - if (!~(globalCtx->state.input[0].padPressed | -0x801) && (csCtx->state == CS_STATE_IDLE) && + if (!~(pad1->padPressed | ~U_JPAD) && (csCtx->state == CS_STATE_IDLE) && (gSaveContext.scene_setup_index >= 4) && (D_8011D394 == 0)) { D_8015FCC8 = 1; gSaveContext.cutscene_index = 0xFFFD; @@ -127,13 +126,9 @@ void func_800645A0(GlobalContext* globalCtx, CutsceneContext* csCtx) { if (gSaveContext.cutscene_index >= 0xFFF0) { func_80068ECC(globalCtx, csCtx); - handler = sCsStateHandlers2[csCtx->state]; - handler(globalCtx, csCtx); + sCsStateHandlers2[csCtx->state](globalCtx, csCtx); } } -#else -#pragma GLOBAL_ASM("asm/non_matchings/code/z_demo/func_800645A0.s") -#endif void func_80064720(GlobalContext* globalCtx, CutsceneContext* csCtx) { } @@ -164,8 +159,6 @@ void func_800647C0(GlobalContext* globalCtx, CutsceneContext* csCtx) { } // Command 3: Misc. Actions -#ifdef NON_MATCHING -// regalloc and minor ordering differences void func_80064824(GlobalContext* globalCtx, CutsceneContext* csCtx, CsCmdBase* cmd) { Player* player = PLAYER; f32 temp; @@ -195,6 +188,7 @@ void func_80064824(GlobalContext* globalCtx, CutsceneContext* csCtx, CsCmdBase* if (sp3F != 0) { func_800F6D58(0xF, 0, 0); func_800753C4(globalCtx, 3); + if (1) {} D_8015FD70 = 1; } break; @@ -320,7 +314,7 @@ void func_80064824(GlobalContext* globalCtx, CutsceneContext* csCtx, CsCmdBase* break; case 25: gSaveContext.day_time += 30; - if ((gSaveContext.day_time & 0xFFFF) > 0xCAAA) { + if ((gSaveContext.day_time) > 0xCAAA) { gSaveContext.day_time = 0xCAAA; } break; @@ -384,9 +378,6 @@ void func_80064824(GlobalContext* globalCtx, CutsceneContext* csCtx, CsCmdBase* break; } } -#else -#pragma GLOBAL_ASM("asm/non_matchings/code/z_demo/func_80064824.s") -#endif // Command 4: Set Environment Lighting void Cutscene_Command_SetLighting(GlobalContext* globalCtx, CutsceneContext* csCtx, CsCmdEnvLighting* cmd) { @@ -433,8 +424,6 @@ void Cutscene_Command_09(GlobalContext* globalCtx, CutsceneContext* csCtx, CsCmd } // Command 0x8C: Set Time of Day & Environment Time -#ifdef NON_MATCHING -// regalloc differences void func_80065134(GlobalContext* globalCtx, CutsceneContext* csCtx, CsCmdDayTime* cmd) { s16 temp1; s16 temp2; @@ -442,12 +431,11 @@ void func_80065134(GlobalContext* globalCtx, CutsceneContext* csCtx, CsCmdDayTim if (csCtx->frames == cmd->startFrame) { temp1 = (cmd->hour * 60.0f) / 0.021972656f; temp2 = (cmd->minute + 1) / 0.021972656f; - gSaveContext.environment_time = gSaveContext.day_time = temp1 + temp2; + + gSaveContext.day_time = temp1 + temp2; + gSaveContext.environment_time = temp1 + temp2; } } -#else -#pragma GLOBAL_ASM("asm/non_matchings/code/z_demo/func_80065134.s") -#endif // Command 0x3E8: Code Execution (& Terminates Cutscene?) void Cutscene_Command_Terminator(GlobalContext* globalCtx, CutsceneContext* csCtx, CsCmdBase* cmd) { |
