diff --git a/README.md b/README.md index 3c2b20f2..402eb620 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# banjo (95.9391%) +# banjo (95.9562%) diff --git a/decompressed.us.v10.yaml b/decompressed.us.v10.yaml index c4a253ce..6e4b4b53 100644 --- a/decompressed.us.v10.yaml +++ b/decompressed.us.v10.yaml @@ -622,7 +622,7 @@ segments: - [0xF8A0F0, c, code_34790] #DONE - [0xF8AE80, c, code_35520] #DONE - [0xF8B010, c, code_356B0] #DONE - - [0xF8D310, c, code_379B0] + - [0xF8D310, c, code_379B0] #DONE - [0xF8D630, c, code_37CD0] #DONE - [0xF8D7B0, c, code_37E50] #DONE - [0xF8DAB0, c, code_38150] #DONE diff --git a/progress/progress_core2.svg b/progress/progress_core2.svg index a07cfa0c..8fc56783 100644 --- a/progress/progress_core2.svg +++ b/progress/progress_core2.svg @@ -17,7 +17,7 @@ core2 - 94.6580% - 94.6580% + 94.6877% + 94.6877% \ No newline at end of file diff --git a/progress/progress_total.svg b/progress/progress_total.svg index ff4530d3..372d3283 100644 --- a/progress/progress_total.svg +++ b/progress/progress_total.svg @@ -17,7 +17,7 @@ Banjo-Kazooie (us.v10) - 95.9391% - 95.9391% + 95.9562% + 95.9562% \ No newline at end of file diff --git a/src/core2/code_379B0.c b/src/core2/code_379B0.c index 847ed2d5..3c5a1f1b 100644 --- a/src/core2/code_379B0.c +++ b/src/core2/code_379B0.c @@ -10,45 +10,37 @@ f32 D_8037DA30[3]; f32 D_8037DA40[3]; /* .code */ -#ifndef NONMATCHING -#pragma GLOBAL_ASM("asm/nonmatchings/core2/code_379B0/func_802BE940.s") -#else -void func_802BE940(void) { - f32 sp3C[3]; - f32 sp38; - f32 sp34; - f32 sp30; - f32 sp24[3]; - f32 sp1C; +void func_802BE940(void) +{ + f32 sp3C[3]; + f32 sp30[2]; + f32 new_var; + f32 sp24[3]; - sp3C[0] = sp3C[1] = sp3C[2] = 0.0f; - sp3C[1] = -1.0f; - ml_vec3f_pitch_rotate_copy(sp24, sp3C, 68.0f); - sp1C = 0.0f; - sp34 = sp24[1] * ((f32) framebuffer_width / (f32) framebuffer_height); - D_8037DA40[0] = sp24[0]; - D_8037DA40[1] = sp24[1]; - D_8037DA40[2] = sp24[2]; + sp3C[0] = (sp3C[1] = (sp3C[2] = 0.0f)); + sp3C[1] = -1.0f; + ml_vec3f_pitch_rotate_copy(sp24, sp3C, 68.0f); + sp30[0] = sp24[1] * ((f32) framebuffer_width / framebuffer_height); + sp30[1] = 0; + + D_8037DA40[1] = sp24[1]; + D_8037DA40[2] = sp24[2]; + D_8037DA40[0] = sp24[0]; - D_8037DA00[0] = (f32) (sp24[0] + sp34); - D_8037DA00[1] = (f32) (sp24[1] + sp1C); - D_8037DA00[2] = sp24[2]; - - D_8037DA10[0] = (f32) (sp34 - sp24[0]); - D_8037DA10[1] = (f32) (sp1C - sp24[1]); - D_8037DA10[2] = sp24[2]; - - sp30 = -sp34; - sp38 = -0.0f; - D_8037DA20[0] = (f32) (sp30 - sp24[0]); - D_8037DA20[1] = (f32) (sp38 - sp24[1]); - D_8037DA20[2] = sp24[2]; - - D_8037DA30[0] = (f32) (sp24[0] + sp30); - D_8037DA30[1] = (f32) (sp24[1] + sp38); - D_8037DA30[2] = sp24[2]; + D_8037DA00[0] = (sp30[0] + sp24[0]); + D_8037DA00[1] = (sp30[1] + sp24[1]); + D_8037DA00[2] = sp24[2]; + D_8037DA10[0] = (sp30[0] -sp24[0]); + D_8037DA10[1] = (sp30[1] -sp24[1]); + D_8037DA10[2] = sp24[2]; + new_var = -sp30[0]; + D_8037DA20[0] = (new_var -sp24[0]); + D_8037DA20[1] = (-sp30[1] -sp24[1]); + D_8037DA20[2] = sp24[2]; + D_8037DA30[0] = (new_var + sp24[0]); + D_8037DA30[1] = (-sp30[1] + sp24[1]); + D_8037DA30[2] = sp24[2]; } -#endif void func_802BEA4C(f32 arg0[3], f32 arg1[3], f32 arg2, f32 arg3[3]) { f32 sp24[3];