diff --git a/README.md b/README.md
index f218b69e..7865f4b5 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,4 @@
-# banjo (97.2554%)
+# banjo (97.2689%)
diff --git a/progress/progress_core2.svg b/progress/progress_core2.svg
index d0e05c94..600ed47d 100644
--- a/progress/progress_core2.svg
+++ b/progress/progress_core2.svg
@@ -9,7 +9,7 @@
-
+
@@ -17,7 +17,7 @@
core2
- 96.0858%
- 96.0858%
+ 96.1093%
+ 96.1093%
\ No newline at end of file
diff --git a/progress/progress_total.svg b/progress/progress_total.svg
index 51370b10..685a579e 100644
--- a/progress/progress_total.svg
+++ b/progress/progress_total.svg
@@ -17,7 +17,7 @@
Banjo-Kazooie (us.v10)
- 97.2554%
- 97.2554%
+ 97.2689%
+ 97.2689%
\ No newline at end of file
diff --git a/src/core2/code_A5BC0.c b/src/core2/code_A5BC0.c
index 0d77b3dc..82ad1c30 100644
--- a/src/core2/code_A5BC0.c
+++ b/src/core2/code_A5BC0.c
@@ -11,7 +11,7 @@ extern void spawnQueue_func_802C39D4(void);
extern bool func_80340020(s32, f32[3], f32[3], f32, s32, BKVertexList *, f32[3], f32[3]);
extern void func_80340200(s32, f32[3], f32[3], f32, s32, s32, BKVertexList *, s32);
extern s32 func_802E9DD8(BKCollisionList *collisionList, BKVertexList *vtxList, f32 arg2[3], f32 *arg3, f32 arg4, f32 arg5[3], f32 arg6, f32 arg7[3], s32 arg8);
-
+extern void *func_802EBAE0(UNK_TYPE(s32), f32 position[3], f32 rotation[3], f32 scale, UNK_TYPE(s32), UNK_TYPE(s32), UNK_TYPE(s32), f32, UNK_TYPE(s32));
extern f32 func_8030A590(void);
@@ -44,6 +44,8 @@ typedef bool( *Method_Core2_A5BC0)(NodeProp *, s32);
s32 func_80330974(ActorMarker *marker, s32 arg1, f32 arg2, s32 arg3);
s32 func_80320DB0(f32[3], f32, f32[3], u32);
+BKModelBin *func_80330DE4(ActorMarker *this);
+
extern void func_80320EB0(ActorMarker *, f32, s32);
extern void func_80320ED8(ActorMarker *, f32, s32);
f32 func_8033229C(ActorMarker *marker);
@@ -1346,34 +1348,34 @@ void func_803306C8(s32 arg0) {
}
}
-extern void *func_802EBAE0(UNK_TYPE(s32), f32 position[3], f32 rotation[3], f32 scale, UNK_TYPE(s32), UNK_TYPE(s32), UNK_TYPE(s32), f32, UNK_TYPE(s32));
-BKModelBin *func_80330DE4(ActorMarker *this);
-
-#ifndef NONMATCHING
-#pragma GLOBAL_ASM("asm/nonmatchings/core2/code_A5BC0/func_803308A0.s")
-#else
-void assetcache_release(BKModelBin *);
-void func_8033B388(BKSprite **, BKSpriteDisplayData**);
-void func_80349CD8(void *);
-void func_803308A0(void){
+void func_803308A0(void) {
s32 i;
- for(i = 0; i < AssetCacheSize; i++){
- if(modelCache[i].modelPtr){
- assetcache_release(modelCache[i].modelPtr);
- modelCache[i].modelPtr = NULL;
+ ModelCache *var_s0;
+ void *var_a1;
+
+ for (i = 0; i < 0x3D5; i++) {
+ var_s0 = &modelCache[i];
+ if (var_s0->modelPtr) {
+ assetcache_release(var_s0->modelPtr);
+ modelCache[i].modelPtr = 0;
}
- if(modelCache[i].unk4){
- func_8033B388(&modelCache[i].unk4, &modelCache[i].unk8);
+
+ var_s0 = &modelCache[i];
+ if (var_s0->unk4) {
+ func_8033B388(&var_s0->unk4, &var_s0->unk8);
}
- if(modelCache[i].unkC){
- func_80349CD8(modelCache[i].unkC);
- modelCache[i].unkC = NULL;
+
+ var_s0 = &modelCache[i];
+ var_a1 = var_s0->unkC;
+ if (var_a1) {
+ func_80349CD8(var_a1);
+ modelCache[i].unkC = 0;
}
}
+
free(modelCache);
- modelCache = NULL;
+ modelCache = 0;
}
-#endif
s32 func_80330974(ActorMarker *marker, s32 arg1, f32 arg2, s32 arg3) {
BKModelBin *model;