From af3d512ba77f0be7e660f69314b83c7875c8150b Mon Sep 17 00:00:00 2001 From: Banjo Kazooie Date: Tue, 8 Nov 2022 15:37:09 -0600 Subject: [PATCH] core1/code_5650.c func_24324C() done --- README.md | 2 +- progress/progress_core1.svg | 4 ++-- progress/progress_total.svg | 4 ++-- src/core1/code_5650.c | 39 ++++++++++++++++++++----------------- 4 files changed, 26 insertions(+), 23 deletions(-) diff --git a/README.md b/README.md index 24c9e251..a4404f61 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# banjo (93.5289%) +# banjo (93.5398%) diff --git a/progress/progress_core1.svg b/progress/progress_core1.svg index 1249385c..023e2dde 100644 --- a/progress/progress_core1.svg +++ b/progress/progress_core1.svg @@ -17,7 +17,7 @@ core1 - 88.1315% - 88.1315% + 88.2069% + 88.2069% \ No newline at end of file diff --git a/progress/progress_total.svg b/progress/progress_total.svg index d10f4bba..f8bc3880 100644 --- a/progress/progress_total.svg +++ b/progress/progress_total.svg @@ -17,7 +17,7 @@ Banjo-Kazooie (us.v10) - 93.5289% - 93.5289% + 93.5398% + 93.5398% \ No newline at end of file diff --git a/src/core1/code_5650.c b/src/core1/code_5650.c index 674223ea..f4d51521 100644 --- a/src/core1/code_5650.c +++ b/src/core1/code_5650.c @@ -61,25 +61,28 @@ void func_80243070(Struct87s *arg0) { D_802758CC->nextDelta = alEvtqNextEvent(&D_802758CC->evtq, &D_802758CC->nextEvent); } -#ifndef NONMATCHING -#pragma GLOBAL_ASM("asm/nonmatchings/core1/code_5650/func_8024324C.s") -#else -void func_8024324C(N_ALSndPlayer *arg0) { - N_ALEvent sp3C; - - do { - if (arg0->nextEvent.type == 0x20) { - sp3C.type = 0x20; - alEvtqPostEvent(&arg0->evtq, (ALEvent *) &sp3C, arg0->frameTime); - func_80244190(arg0); - } else { - func_802432F8(arg0, &arg0->nextEvent); - } - arg0->nextDelta = alEvtqNextEvent(&arg0->evtq, &arg0->nextEvent); - } while (arg0->nextDelta == 0); - arg0->curTime += arg0->nextDelta; +void func_8024324C(N_ALSndPlayer *arg0) +{ + N_ALSndPlayer *new_var = (N_ALSndPlayer *)arg0; + N_ALEvent sp3C; + + do + { + if ((new_var->nextEvent.type & 0xFFFFFFFF) == 0x20) + { + sp3C.type = 0x20; + alEvtqPostEvent(&new_var->evtq, (ALEvent *) (&sp3C), new_var->frameTime); + func_80244190(new_var); + } + else + { + func_802432F8(new_var, &arg0->nextEvent); + } + new_var->nextDelta = alEvtqNextEvent(&new_var->evtq, &arg0->nextEvent); + } + while (arg0->nextDelta == 0); + new_var->curTime += new_var->nextDelta; } -#endif #pragma GLOBAL_ASM("asm/nonmatchings/core1/code_5650/func_802432F8.s")