From 125bcf4c6972e172b690e8310057a53977aff42b Mon Sep 17 00:00:00 2001 From: Yanis002 <35189056+Yanis002@users.noreply.github.com> Date: Thu, 17 Jul 2025 23:10:08 +0200 Subject: [PATCH] OverlayManager::Unload improvements --- config/eur/arm9/symbols.txt | 6 +++--- include/System/OverlayManager.hpp | 2 +- src/Main/System/OverlayManager.cpp | 8 ++++---- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/config/eur/arm9/symbols.txt b/config/eur/arm9/symbols.txt index d258d28b..40e1ff6b 100644 --- a/config/eur/arm9/symbols.txt +++ b/config/eur/arm9/symbols.txt @@ -709,9 +709,9 @@ func_0201478c kind:function(arm,size=0x1c) addr:0x0201478c func_020147a8 kind:function(arm,size=0x1c) addr:0x020147a8 func_020147c4 kind:function(arm,size=0x1c) addr:0x020147c4 func_020147e0 kind:function(thumb,size=0x1c) addr:0x020147e0 -OverlayManager_LoadIfNotLoaded kind:function(thumb,size=0x28) addr:0x020147fc -OverlayManager_Load kind:function(thumb,size=0x2c) addr:0x02014824 -OverlayManager_Unload kind:function(thumb,size=0x28) addr:0x02014850 +_ZN14OverlayManager15LoadIfNotLoadedEjj kind:function(thumb,size=0x28) addr:0x020147fc +_ZN14OverlayManager4LoadEjj kind:function(thumb,size=0x2c) addr:0x02014824 +_ZN14OverlayManager6UnloadEj kind:function(thumb,size=0x28) addr:0x02014850 func_02014878 kind:function(thumb,size=0x58) addr:0x02014878 func_020148d0 kind:function(thumb,size=0x46) addr:0x020148d0 func_02014918 kind:function(thumb,size=0x2c) addr:0x02014918 diff --git a/include/System/OverlayManager.hpp b/include/System/OverlayManager.hpp index 531f9e2a..fe9a3e63 100644 --- a/include/System/OverlayManager.hpp +++ b/include/System/OverlayManager.hpp @@ -394,5 +394,5 @@ class OverlayManager { }; extern OverlayManager gOverlayManager; -extern u32 data_0203e0e8[OverlayIndex_COUNT]; +extern OverlayIndex data_0203e0e8[OverlayIndex_COUNT]; extern char* data_02043c88[OverlayIndex_COUNT]; diff --git a/src/Main/System/OverlayManager.cpp b/src/Main/System/OverlayManager.cpp index 508d9eaf..7bdc50cd 100644 --- a/src/Main/System/OverlayManager.cpp +++ b/src/Main/System/OverlayManager.cpp @@ -46,11 +46,11 @@ THUMB void OverlayManager::Load(OverlaySlot index, OverlayId id) { } THUMB void OverlayManager::Unload(OverlaySlot index) { - OverlayId loadedId = gOverlayManager.mLoadedOverlays[index]; + OverlayManager* pOverlayManager = &gOverlayManager; - if (loadedId != OverlayId_None) { - FS_UnloadOverlay(NULL, data_0203e0e8[index]); - gOverlayManager.mLoadedOverlays[index] = OverlayId_None; + if (pOverlayManager->mLoadedOverlays[index] != OverlayId_None) { + FS_UnloadOverlay(NULL, data_0203e0e8[pOverlayManager->mLoadedOverlays[index]]); + pOverlayManager->mLoadedOverlays[index] = OverlayId_None; } }