From f27b60d4fef5d3d081a2fe231169219416c877c8 Mon Sep 17 00:00:00 2001 From: Yanis002 <35189056+Yanis002@users.noreply.github.com> Date: Sat, 8 Feb 2025 22:25:31 +0100 Subject: [PATCH 01/37] match most of OverlayManager.cpp --- config/eur/arm9/delinks.txt | 3 + include/System/OverlayManager.hpp | 1 + libs/nds/include/nds/Overlay.h | 8 +++ src/Main/System/OverlayManager.cpp | 90 ++++++++++++++++++++++++++++-- 4 files changed, 97 insertions(+), 5 deletions(-) diff --git a/config/eur/arm9/delinks.txt b/config/eur/arm9/delinks.txt index 97a31c17..7e3f8e58 100644 --- a/config/eur/arm9/delinks.txt +++ b/config/eur/arm9/delinks.txt @@ -10,6 +10,9 @@ src/Main/Actor/ActorType.cpp: .text start:0x0203e784 end:0x0203e8a0 .bss start:0x02069180 end:0x02069188 +src/Main/System/OverlayManager.cpp: + .text start:0x0202ff44 end:0x0203003c + libs/cpp/src/__register_global_object.cpp: complete .text start:0x0204f8d4 end:0x0204f8f4 diff --git a/include/System/OverlayManager.hpp b/include/System/OverlayManager.hpp index 636208fc..4c83bbe4 100644 --- a/include/System/OverlayManager.hpp +++ b/include/System/OverlayManager.hpp @@ -6,6 +6,7 @@ typedef u32 OverlayId; enum OverlayId_ { + OverlayId_None = -1, OverlayId_Core, OverlayId_01, OverlayId_02, diff --git a/libs/nds/include/nds/Overlay.h b/libs/nds/include/nds/Overlay.h index 7a8c6fa9..5339a9d7 100644 --- a/libs/nds/include/nds/Overlay.h +++ b/libs/nds/include/nds/Overlay.h @@ -1,6 +1,10 @@ #ifndef _NDS_OVERLAY_H #define _NDS_OVERLAY_H +#ifdef __cplusplus +extern "C" { +#endif + typedef struct Overlay { /* 00 */ unk32 mId; /* 04 */ void *mBaseAddress; @@ -27,4 +31,8 @@ bool Overlay_Destroy(Overlay *overlay); bool Overlay_Load(Overlay *overlay, unk32 param2); bool Overlay_Unload(Overlay *overlay, unk32 param2); +#ifdef __cplusplus +} +#endif + #endif diff --git a/src/Main/System/OverlayManager.cpp b/src/Main/System/OverlayManager.cpp index 9c50ebb6..8446eaa8 100644 --- a/src/Main/System/OverlayManager.cpp +++ b/src/Main/System/OverlayManager.cpp @@ -1,7 +1,87 @@ +#include "global.h" #include "System/OverlayManager.hpp" +#include "nds/Overlay.h" -void OverlayManager::Load(OverlayIndex index, OverlayId id) {} -void OverlayManager::LoadIfNotLoaded(OverlayIndex index, OverlayId id) {} -void OverlayManager::Unload(OverlayIndex index) {} -void OverlayManager::LoadOverlaySetup(s32 index) {} -void OverlayManager::UnloadOverlaySetup() {} +struct UnkStruct_020ee698 { + /* 00 */ unk8 mUnk_00[0x2C]; + /* 2c */ unk32 mUnk_2c; + /* 30 */ +}; +extern UnkStruct_020ee698 data_ov000_020ee698; + +struct OverlaySetup { + /* 00 */ unk8 mUnk_00; + /* 01 */ unk8 mUnk_01; + /* 02 */ unk8 mUnk_02; + /* 03 */ unk8 mUnk_03; + /* 04 */ OverlayId slot1Overlay; + /* 08 */ OverlayId slot2Overlay; + /* 0c */ OverlayId slot3Overlay; + /* 10 */ OverlayId slot12Overlay; + /* 14 */ void* mUnk_14; + /* 18 */ void* mUnk_18; + /* 1c */ +}; +extern OverlaySetup gOverlaySetups[]; + +extern u32 *data_027e0ce0[]; +extern "C" void func_ov007_02102850(u32**); +extern "C" void func_ov007_021028a0(u32**); + +THUMB void OverlayManager::Load(OverlayIndex index, OverlayId id) { + if (id != OverlayId_None) { + Overlay_Load(NULL, id); + } + + this->mLoadedOverlays[index] = id; +} + +// non-matching (regalloc) +THUMB void OverlayManager::LoadIfNotLoaded(OverlayIndex index, OverlayId id) { + if (this->mLoadedOverlays[index] != id) { + this->Unload(index); + this->Load(index, id); + } +} + +THUMB void OverlayManager::Unload(OverlayIndex index) { + if (this->mLoadedOverlays[index] != OverlayId_None) { + Overlay_Unload(NULL, this->mLoadedOverlays[index]); + this->mLoadedOverlays[index] = OverlayId_None; + } +} + +//! TODO: solve the .word issue with the overlay IDs +//! both functions should match otherwise +THUMB void OverlayManager::LoadOverlaySetup(s32 index) { + OverlayId overlayId; + OverlaySetup* pSetup; + + pSetup = &gOverlaySetups[index]; + + this->LoadIfNotLoaded(OverlayIndex_1, pSetup->slot1Overlay); + this->LoadIfNotLoaded(OverlayIndex_2, pSetup->slot2Overlay); + + if (index == 5) { + func_ov007_02102850(data_027e0ce0); + } else { + overlayId = pSetup->slot12Overlay; + + if (index == 6 && data_ov000_020ee698.mUnk_2c == 2) { + overlayId = OverlayId_61; + } + + this->Load(OverlayIndex_3, pSetup->slot3Overlay); + this->Load(OverlayIndex_12, overlayId); + } +} + +THUMB void OverlayManager::UnloadOverlaySetup() { + this->Unload(OverlayIndex_12); + this->Unload(OverlayIndex_3); + + if (this->mLoadedOverlays[2] == OverlayId_07) { + func_ov007_021028a0(data_027e0ce0); + this->Unload(OverlayIndex_2); + } +} From 25fef6bba19b0c3b016dc09c3aa9490d6ee2cddd Mon Sep 17 00:00:00 2001 From: Yanis002 <35189056+Yanis002@users.noreply.github.com> Date: Sat, 8 Feb 2025 22:31:43 +0100 Subject: [PATCH 02/37] format? --- src/Main/System/OverlayManager.cpp | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/Main/System/OverlayManager.cpp b/src/Main/System/OverlayManager.cpp index 8446eaa8..8ba3f925 100644 --- a/src/Main/System/OverlayManager.cpp +++ b/src/Main/System/OverlayManager.cpp @@ -1,5 +1,5 @@ -#include "global.h" #include "System/OverlayManager.hpp" +#include "global.h" #include "nds/Overlay.h" struct UnkStruct_020ee698 { @@ -18,15 +18,15 @@ struct OverlaySetup { /* 08 */ OverlayId slot2Overlay; /* 0c */ OverlayId slot3Overlay; /* 10 */ OverlayId slot12Overlay; - /* 14 */ void* mUnk_14; - /* 18 */ void* mUnk_18; + /* 14 */ void *mUnk_14; + /* 18 */ void *mUnk_18; /* 1c */ }; extern OverlaySetup gOverlaySetups[]; extern u32 *data_027e0ce0[]; -extern "C" void func_ov007_02102850(u32**); -extern "C" void func_ov007_021028a0(u32**); +extern "C" void func_ov007_02102850(u32 **); +extern "C" void func_ov007_021028a0(u32 **); THUMB void OverlayManager::Load(OverlayIndex index, OverlayId id) { if (id != OverlayId_None) { @@ -55,7 +55,7 @@ THUMB void OverlayManager::Unload(OverlayIndex index) { //! both functions should match otherwise THUMB void OverlayManager::LoadOverlaySetup(s32 index) { OverlayId overlayId; - OverlaySetup* pSetup; + OverlaySetup *pSetup; pSetup = &gOverlaySetups[index]; @@ -66,11 +66,11 @@ THUMB void OverlayManager::LoadOverlaySetup(s32 index) { func_ov007_02102850(data_027e0ce0); } else { overlayId = pSetup->slot12Overlay; - + if (index == 6 && data_ov000_020ee698.mUnk_2c == 2) { overlayId = OverlayId_61; } - + this->Load(OverlayIndex_3, pSetup->slot3Overlay); this->Load(OverlayIndex_12, overlayId); } From 222f3f7daaa5787ff967a1db78876cdfc3f8aa10 Mon Sep 17 00:00:00 2001 From: Yanis002 <35189056+Yanis002@users.noreply.github.com> Date: Sat, 8 Feb 2025 23:07:14 +0100 Subject: [PATCH 03/37] match OverlayManager::LoadIfNotLoaded (thanks to Maide) --- src/Main/System/OverlayManager.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/Main/System/OverlayManager.cpp b/src/Main/System/OverlayManager.cpp index 8ba3f925..8fff1fc6 100644 --- a/src/Main/System/OverlayManager.cpp +++ b/src/Main/System/OverlayManager.cpp @@ -36,9 +36,10 @@ THUMB void OverlayManager::Load(OverlayIndex index, OverlayId id) { this->mLoadedOverlays[index] = id; } -// non-matching (regalloc) THUMB void OverlayManager::LoadIfNotLoaded(OverlayIndex index, OverlayId id) { - if (this->mLoadedOverlays[index] != id) { + OverlayId loadedId = this->mLoadedOverlays[index]; + + if (loadedId != id) { this->Unload(index); this->Load(index, id); } From 10db9067430c77b2b6cd2b14da018b81a5f43c84 Mon Sep 17 00:00:00 2001 From: Aetias Date: Sun, 9 Feb 2025 13:13:49 +0100 Subject: [PATCH 04/37] Add MapOverworld --- config/eur/arm9/overlays/ov018/symbols.txt | 74 +++++++++---------- config/usa/arm9/overlays/ov018/symbols.txt | 74 +++++++++---------- include/Map/MapBase.hpp | 3 +- include/Map/MapOverworld.hpp | 75 ++++++++++++++++++++ include/Unknown/UnkStruct_ov000_020c0c08.hpp | 21 ++++++ src/18_Overworld/Map/MapOverworld.cpp | 38 ++++++++++ 6 files changed, 209 insertions(+), 76 deletions(-) create mode 100644 include/Map/MapOverworld.hpp create mode 100644 include/Unknown/UnkStruct_ov000_020c0c08.hpp create mode 100644 src/18_Overworld/Map/MapOverworld.cpp diff --git a/config/eur/arm9/overlays/ov018/symbols.txt b/config/eur/arm9/overlays/ov018/symbols.txt index e5840916..605800d5 100644 --- a/config/eur/arm9/overlays/ov018/symbols.txt +++ b/config/eur/arm9/overlays/ov018/symbols.txt @@ -1,39 +1,39 @@ -func_ov018_0215b4a0 kind:function(arm,size=0x1ac) addr:0x215b4a0 -func_ov018_0215b64c kind:function(arm,size=0x10c) addr:0x215b64c -func_ov018_0215b758 kind:function(arm,size=0x114) addr:0x215b758 -func_ov018_0215b86c kind:function(arm,size=0x518) addr:0x215b86c -func_ov018_0215bd84 kind:function(arm,size=0x134) addr:0x215bd84 -func_ov018_0215beb8 kind:function(arm,size=0x110) addr:0x215beb8 -func_ov018_0215bfc8 kind:function(arm,size=0x17c) addr:0x215bfc8 -func_ov018_0215c144 kind:function(arm,size=0x84) addr:0x215c144 -func_ov018_0215c1c8 kind:function(arm,size=0xb4) addr:0x215c1c8 -func_ov018_0215c27c kind:function(arm,size=0x8) addr:0x215c27c -func_ov018_0215c284 kind:function(arm,size=0xc) addr:0x215c284 -func_ov018_0215c290 kind:function(arm,size=0x20) addr:0x215c290 -func_ov018_0215c2b0 kind:function(arm,size=0x30) addr:0x215c2b0 -func_ov018_0215c2e0 kind:function(arm,size=0x20) addr:0x215c2e0 -func_ov018_0215c300 kind:function(arm,size=0x2c) addr:0x215c300 -func_ov018_0215c32c kind:function(arm,size=0x20) addr:0x215c32c -func_ov018_0215c34c kind:function(arm,size=0x1c) addr:0x215c34c -func_ov018_0215c368 kind:function(arm,size=0x18) addr:0x215c368 -func_ov018_0215c380 kind:function(arm,size=0x20) addr:0x215c380 -func_ov018_0215c3a0 kind:function(arm,size=0x20) addr:0x215c3a0 -func_ov018_0215c3c0 kind:function(arm,size=0x68) addr:0x215c3c0 -func_ov018_0215c428 kind:function(arm,size=0x20) addr:0x215c428 -func_ov018_0215c448 kind:function(arm,size=0x18) addr:0x215c448 -func_ov018_0215c460 kind:function(arm,size=0x164) addr:0x215c460 -func_ov018_0215c5c4 kind:function(arm,size=0x44) addr:0x215c5c4 -func_ov018_0215c608 kind:function(arm,size=0x48) addr:0x215c608 -func_ov018_0215c650 kind:function(arm,size=0x5c) addr:0x215c650 -func_ov018_0215c6ac kind:function(arm,size=0x24) addr:0x215c6ac -func_ov018_0215c6d0 kind:function(arm,size=0x24c) addr:0x215c6d0 -func_ov018_0215c91c kind:function(arm,size=0x48) addr:0x215c91c -func_ov018_0215c964 kind:function(arm,size=0x48) addr:0x215c964 -func_ov018_0215c9ac kind:function(arm,size=0x78) addr:0x215c9ac -func_ov018_0215ca24 kind:function(arm,size=0x18) addr:0x215ca24 -func_ov018_0215ca3c kind:function(arm,size=0x50) addr:0x215ca3c -func_ov018_0215ca8c kind:function(arm,size=0x18) addr:0x215ca8c -func_ov018_0215caa4 kind:function(arm,size=0x8) addr:0x215caa4 +_ZN12MapOverworldC2Ejj kind:function(arm,size=0x1ac) addr:0x215b4a0 +_ZN12MapOverworldD1Ev kind:function(arm,size=0x10c) addr:0x215b64c +_ZN12MapOverworldD0Ev kind:function(arm,size=0x114) addr:0x215b758 +_ZN12MapOverworld8vfunc_08EjjP6Course kind:function(arm,size=0x518) addr:0x215b86c +_ZN12MapOverworld8vfunc_14Ev kind:function(arm,size=0x134) addr:0x215bd84 +_ZN12MapOverworld8vfunc_1cEb kind:function(arm,size=0x110) addr:0x215beb8 +_ZN12MapOverworld19func_ov018_0215bfc8Ev kind:function(arm,size=0x17c) addr:0x215bfc8 +_ZN12MapOverworld8vfunc_20Ei kind:function(arm,size=0x84) addr:0x215c144 +_ZN12MapOverworld8vfunc_2cEv kind:function(arm,size=0xb4) addr:0x215c1c8 +_ZN12MapOverworld8vfunc_94Ev kind:function(arm,size=0x8) addr:0x215c27c +_ZN12MapOverworld8vfunc_a4Ev kind:function(arm,size=0xc) addr:0x215c284 +_ZN12MapOverworld8vfunc_54Ev kind:function(arm,size=0x20) addr:0x215c290 +_ZN12MapOverworld8vfunc_58Ev kind:function(arm,size=0x30) addr:0x215c2b0 +_ZN12MapOverworld8vfunc_5cEv kind:function(arm,size=0x20) addr:0x215c2e0 +_ZN12MapOverworld8vfunc_60Ev kind:function(arm,size=0x2c) addr:0x215c300 +_ZN12MapOverworld8vfunc_64Ev kind:function(arm,size=0x20) addr:0x215c32c +_ZN12MapOverworld19func_ov018_0215c34cEv kind:function(arm,size=0x1c) addr:0x215c34c +_ZN12MapOverworld19func_ov018_0215c368Ev kind:function(arm,size=0x18) addr:0x215c368 +_ZN12MapOverworld19func_ov018_0215c380EPh kind:function(arm,size=0x20) addr:0x215c380 +_ZN12MapOverworld8vfunc_bcEv kind:function(arm,size=0x20) addr:0x215c3a0 +_ZN12MapOverworld8vfunc_98Ev kind:function(arm,size=0x68) addr:0x215c3c0 +_ZN12MapOverworld8vfunc_c0Ev kind:function(arm,size=0x20) addr:0x215c428 +_ZN12MapOverworld8vfunc_78Ev kind:function(arm,size=0x18) addr:0x215c448 +_ZN12MapOverworld8vfunc_7cEv kind:function(arm,size=0x164) addr:0x215c460 +_ZN12MapOverworld8vfunc_80Ev kind:function(arm,size=0x44) addr:0x215c5c4 +_ZN12MapOverworld8vfunc_b0Eii kind:function(arm,size=0x48) addr:0x215c608 +_ZN12MapOverworld19func_ov018_0215c650Ev kind:function(arm,size=0x5c) addr:0x215c650 +_ZN12MapOverworld19func_ov018_0215c6acEv kind:function(arm,size=0x24) addr:0x215c6ac +_ZN12MapOverworld19func_ov018_0215c6d0Ev kind:function(arm,size=0x24c) addr:0x215c6d0 +_ZN17MapOverworld_Unk1C2EjPhi kind:function(arm,size=0x48) addr:0x215c91c +_ZN17MapOverworld_Unk1C1EjPhi kind:function(arm,size=0x48) addr:0x215c964 +_ZN12MapOverworld19func_ov018_0215c9acEv kind:function(arm,size=0x78) addr:0x215c9ac +_Z19func_ov018_0215ca24i kind:function(arm,size=0x18) addr:0x215ca24 +_Z19func_ov018_0215ca3ciiii kind:function(arm,size=0x50) addr:0x215ca3c +_Z19func_ov018_0215ca8ci kind:function(arm,size=0x18) addr:0x215ca8c +_ZN12MapOverworld8vfunc_4cEv kind:function(arm,size=0x8) addr:0x215caa4 func_ov018_0215caac kind:function(arm,size=0x7c) addr:0x215caac func_ov018_0215cb28 kind:function(arm,size=0x4c) addr:0x215cb28 func_ov018_0215cb74 kind:function(arm,size=0xcc) addr:0x215cb74 @@ -514,7 +514,7 @@ __sinit_ov018_0216bf54 kind:function(arm,size=0x38) addr:0x216bf54 __sinit_ov018_0216bf8c kind:function(arm,size=0x80) addr:0x216bf8c __sinit_ov018_0216c00c kind:function(arm,size=0x40) addr:0x216c00c data_ov018_0216c0c0 kind:data(any) addr:0x216c0c0 -data_ov018_0216c0e0 kind:data(any) addr:0x216c0e0 +_ZTV12MapOverworld kind:data(any) addr:0x216c0e0 data_ov018_0216c1a4 kind:data(any) addr:0x216c1a4 data_ov018_0216c1a8 kind:data(any) addr:0x216c1a8 data_ov018_0216c1bc kind:data(any) addr:0x216c1bc diff --git a/config/usa/arm9/overlays/ov018/symbols.txt b/config/usa/arm9/overlays/ov018/symbols.txt index 69fde2ee..d16200b2 100644 --- a/config/usa/arm9/overlays/ov018/symbols.txt +++ b/config/usa/arm9/overlays/ov018/symbols.txt @@ -1,39 +1,39 @@ -func_ov018_0215b4a0 kind:function(arm,size=0x1ac) addr:0x215b400 -func_ov018_0215b64c kind:function(arm,size=0x10c) addr:0x215b5ac -func_ov018_0215b758 kind:function(arm,size=0x114) addr:0x215b6b8 -func_ov018_0215b86c kind:function(arm,size=0x518) addr:0x215b7cc -func_ov018_0215bd84 kind:function(arm,size=0x134) addr:0x215bce4 -func_ov018_0215beb8 kind:function(arm,size=0x110) addr:0x215be18 -func_ov018_0215bfc8 kind:function(arm,size=0x17c) addr:0x215bf28 -func_ov018_0215c144 kind:function(arm,size=0x84) addr:0x215c0a4 -func_ov018_0215c1c8 kind:function(arm,size=0xb4) addr:0x215c128 -func_ov018_0215c27c kind:function(arm,size=0x8) addr:0x215c1dc -func_ov018_0215c284 kind:function(arm,size=0xc) addr:0x215c1e4 -func_ov018_0215c290 kind:function(arm,size=0x20) addr:0x215c1f0 -func_ov018_0215c2b0 kind:function(arm,size=0x30) addr:0x215c210 -func_ov018_0215c2e0 kind:function(arm,size=0x20) addr:0x215c240 -func_ov018_0215c300 kind:function(arm,size=0x2c) addr:0x215c260 -func_ov018_0215c32c kind:function(arm,size=0x20) addr:0x215c28c -func_ov018_0215c34c kind:function(arm,size=0x1c) addr:0x215c2ac -func_ov018_0215c368 kind:function(arm,size=0x18) addr:0x215c2c8 -func_ov018_0215c380 kind:function(arm,size=0x20) addr:0x215c2e0 -func_ov018_0215c3a0 kind:function(arm,size=0x20) addr:0x215c300 -func_ov018_0215c3c0 kind:function(arm,size=0x68) addr:0x215c320 -func_ov018_0215c428 kind:function(arm,size=0x20) addr:0x215c388 -func_ov018_0215c448 kind:function(arm,size=0x18) addr:0x215c3a8 -func_ov018_0215c460 kind:function(arm,size=0x164) addr:0x215c3c0 -func_ov018_0215c5c4 kind:function(arm,size=0x44) addr:0x215c524 -func_ov018_0215c608 kind:function(arm,size=0x48) addr:0x215c568 -func_ov018_0215c650 kind:function(arm,size=0x5c) addr:0x215c5b0 -func_ov018_0215c6ac kind:function(arm,size=0x24) addr:0x215c60c -func_ov018_0215c6d0 kind:function(arm,size=0x24c) addr:0x215c630 -func_ov018_0215c91c kind:function(arm,size=0x48) addr:0x215c87c -func_ov018_0215c964 kind:function(arm,size=0x48) addr:0x215c8c4 -func_ov018_0215c9ac kind:function(arm,size=0x78) addr:0x215c90c -func_ov018_0215ca24 kind:function(arm,size=0x18) addr:0x215c984 -func_ov018_0215ca3c kind:function(arm,size=0x50) addr:0x215c99c -func_ov018_0215ca8c kind:function(arm,size=0x18) addr:0x215c9ec -func_ov018_0215caa4 kind:function(arm,size=0x8) addr:0x215ca04 +_ZN12MapOverworldC2Ejj kind:function(arm,size=0x1ac) addr:0x215b400 +_ZN12MapOverworldD1Ev kind:function(arm,size=0x10c) addr:0x215b5ac +_ZN12MapOverworldD0Ev kind:function(arm,size=0x114) addr:0x215b6b8 +_ZN12MapOverworld8vfunc_08EjjP6Course kind:function(arm,size=0x518) addr:0x215b7cc +_ZN12MapOverworld8vfunc_14Ev kind:function(arm,size=0x134) addr:0x215bce4 +_ZN12MapOverworld8vfunc_1cEb kind:function(arm,size=0x110) addr:0x215be18 +_ZN12MapOverworld19func_ov018_0215bfc8Ev kind:function(arm,size=0x17c) addr:0x215bf28 +_ZN12MapOverworld8vfunc_20Ei kind:function(arm,size=0x84) addr:0x215c0a4 +_ZN12MapOverworld8vfunc_2cEv kind:function(arm,size=0xb4) addr:0x215c128 +_ZN12MapOverworld8vfunc_94Ev kind:function(arm,size=0x8) addr:0x215c1dc +_ZN12MapOverworld8vfunc_a4Ev kind:function(arm,size=0xc) addr:0x215c1e4 +_ZN12MapOverworld8vfunc_54Ev kind:function(arm,size=0x20) addr:0x215c1f0 +_ZN12MapOverworld8vfunc_58Ev kind:function(arm,size=0x30) addr:0x215c210 +_ZN12MapOverworld8vfunc_5cEv kind:function(arm,size=0x20) addr:0x215c240 +_ZN12MapOverworld8vfunc_60Ev kind:function(arm,size=0x2c) addr:0x215c260 +_ZN12MapOverworld8vfunc_64Ev kind:function(arm,size=0x20) addr:0x215c28c +_ZN12MapOverworld19func_ov018_0215c34cEv kind:function(arm,size=0x1c) addr:0x215c2ac +_ZN12MapOverworld19func_ov018_0215c368Ev kind:function(arm,size=0x18) addr:0x215c2c8 +_ZN12MapOverworld19func_ov018_0215c380EPh kind:function(arm,size=0x20) addr:0x215c2e0 +_ZN12MapOverworld8vfunc_bcEv kind:function(arm,size=0x20) addr:0x215c300 +_ZN12MapOverworld8vfunc_98Ev kind:function(arm,size=0x68) addr:0x215c320 +_ZN12MapOverworld8vfunc_c0Ev kind:function(arm,size=0x20) addr:0x215c388 +_ZN12MapOverworld8vfunc_78Ev kind:function(arm,size=0x18) addr:0x215c3a8 +_ZN12MapOverworld8vfunc_7cEv kind:function(arm,size=0x164) addr:0x215c3c0 +_ZN12MapOverworld8vfunc_80Ev kind:function(arm,size=0x44) addr:0x215c524 +_ZN12MapOverworld8vfunc_b0Eii kind:function(arm,size=0x48) addr:0x215c568 +_ZN12MapOverworld19func_ov018_0215c650Ev kind:function(arm,size=0x5c) addr:0x215c5b0 +_ZN12MapOverworld19func_ov018_0215c6acEv kind:function(arm,size=0x24) addr:0x215c60c +_ZN12MapOverworld19func_ov018_0215c6d0Ev kind:function(arm,size=0x24c) addr:0x215c630 +_ZN17MapOverworld_Unk1C2EjPhi kind:function(arm,size=0x48) addr:0x215c87c +_ZN17MapOverworld_Unk1C1EjPhi kind:function(arm,size=0x48) addr:0x215c8c4 +_ZN12MapOverworld19func_ov018_0215c9acEv kind:function(arm,size=0x78) addr:0x215c90c +_Z19func_ov018_0215ca24i kind:function(arm,size=0x18) addr:0x215c984 +_Z19func_ov018_0215ca3ciiii kind:function(arm,size=0x50) addr:0x215c99c +_Z19func_ov018_0215ca8ci kind:function(arm,size=0x18) addr:0x215c9ec +_ZN12MapOverworld8vfunc_4cEv kind:function(arm,size=0x8) addr:0x215ca04 func_ov018_0215caac kind:function(arm,size=0x7c) addr:0x215ca0c func_ov018_0215cb28 kind:function(arm,size=0x4c) addr:0x215ca88 func_ov018_0215cb74 kind:function(arm,size=0xcc) addr:0x215cad4 @@ -514,7 +514,7 @@ __sinit_ov018_0216bf54 kind:function(arm,size=0x38) addr:0x216beb4 __sinit_ov018_0216bf8c kind:function(arm,size=0x80) addr:0x216beec __sinit_ov018_0216c00c kind:function(arm,size=0x40) addr:0x216bf6c data_ov018_0216c0c0 kind:data(any) addr:0x216c020 -data_ov018_0216c0e0 kind:data(any) addr:0x216c040 +_ZTV12MapOverworld kind:data(any) addr:0x216c040 data_ov018_0216c1a4 kind:data(any) addr:0x216c104 data_ov018_0216c1a8 kind:data(any) addr:0x216c108 data_ov018_0216c1bc kind:data(any) addr:0x216c11c diff --git a/include/Map/MapBase.hpp b/include/Map/MapBase.hpp index c92060a3..4c061620 100644 --- a/include/Map/MapBase.hpp +++ b/include/Map/MapBase.hpp @@ -113,8 +113,7 @@ public: /* 188 */ unk8 mUnk_188[0x14]; /* 19c */ unk32 mUnk_19c; /* 1a0 */ unk8 mUnk_1a0[0xc]; - /* 1ac */ s16 mUnk_1ac; - /* 1ae */ unk8 mUnk_1ae[2]; + /* 1ac */ unk32 mUnk_1ac; /* 1b0 */ /* 00 */ virtual ~MapBase(); diff --git a/include/Map/MapOverworld.hpp b/include/Map/MapOverworld.hpp new file mode 100644 index 00000000..482b3ad1 --- /dev/null +++ b/include/Map/MapOverworld.hpp @@ -0,0 +1,75 @@ +#pragma once + +#include "global.h" +#include "types.h" + +#include "Map/MapBase.hpp" +#include "Render/ModelRender.hpp" +#include "Unknown/UnkStruct_ov000_020c0c08.hpp" + +class MapOverworld_Unk1 : public UnkStruct_ov000_020c0c08 { +public: + /* 00 (base) */ + /* 24 */ + + MapOverworld_Unk1(u32 param1, u8 *param2, unk32 param3); +}; + +class MapOverworld : public MapBase { +public: + /* 000 (base) */ + /* 1b0 */ void *mUnk_1b0; + /* 1b4 */ unk8 mUnk_1b4; + /* 1b5 */ unk8 mUnk_1b5; + /* 1b6 */ unk8 mUnk_1b6; + /* 1b7 */ unk8 mUnk_1b7; + /* 1b8 */ u8 mUnk_1b8; + /* 1b9 */ unk8 mUnk_1b9; + /* 1ba */ unk8 mUnk_1ba; + /* 1bb */ unk8 mUnk_1bb; + /* 1bc */ s32 mUnk_1bc; + /* 1c0 */ ModelRender *mUnk_1c0; + /* 1c4 */ void *mUnk_1c4; + /* 1c8 */ void *mUnk_1c8; + /* 1cc */ unk8 mUnk_1cc; + /* 1cd */ unk8 mUnk_1cd; + /* 1ce */ unk8 mUnk_1ce[0x2]; + /* 1d0 */ unk32 mUnk_1d0; + /* 1d4 */ unk32 mUnk_1d4; + /* 1d8 */ s16 mUnk_1d8; + /* 1da */ s16 mUnk_1da; + /* 1dc */ + + /* 00 */ virtual ~MapOverworld() override; + /* 08 */ virtual void vfunc_08(u32 param_2, u32 param_3, Course *param_4) override; + /* 14 */ virtual void vfunc_14() override; + /* 1c */ virtual void vfunc_1c(bool param_2) override; + /* 20 */ virtual void vfunc_20(s32 param_2) override; + /* 2c */ virtual void vfunc_2c() override; + /* 4c */ virtual void vfunc_4c() override; + /* 54 */ virtual unk32 vfunc_54() override; + /* 58 */ virtual unk32 vfunc_58() override; + /* 5c */ virtual unk32 vfunc_5c() override; + /* 60 */ virtual unk32 vfunc_60() override; + /* 64 */ virtual unk32 vfunc_64() override; + /* 78 */ virtual unk32 vfunc_78() override; + /* 7c */ virtual unk32 vfunc_7c() override; + /* 80 */ virtual unk32 vfunc_80() override; + /* 94 */ virtual void vfunc_94() override; + /* 98 */ virtual void vfunc_98() override; + /* a4 */ virtual unk32 vfunc_a4() override; + /* b0 */ virtual unk8 vfunc_b0(unk32 param_2, unk32 param_3) override; + /* bc */ virtual void vfunc_bc() override; + /* c0 */ virtual void vfunc_c0() override; + /* c4 */ + + MapOverworld(u32 width, u32 height); + void func_ov018_0215bfc8(); + u32 func_ov018_0215c34c(); + u32 func_ov018_0215c368(); + s32 func_ov018_0215c380(u8 *param1); + void func_ov018_0215c650(); + void func_ov018_0215c6ac(); + void func_ov018_0215c6d0(); + void func_ov018_0215c9ac(); +}; diff --git a/include/Unknown/UnkStruct_ov000_020c0c08.hpp b/include/Unknown/UnkStruct_ov000_020c0c08.hpp new file mode 100644 index 00000000..69054538 --- /dev/null +++ b/include/Unknown/UnkStruct_ov000_020c0c08.hpp @@ -0,0 +1,21 @@ +#pragma once + +#include "global.h" +#include "types.h" + +#include "System/SysNew.hpp" +#include "Unknown/UnkStruct_0202e1a0.hpp" + +class UnkStruct_ov000_020c0c08 : public SysObject { +public: + /* 00 (vtable) */ + /* 04 */ unk32 mUnk_04; + /* 08 */ u8 *mUnk_08; + /* 0c */ UnkStruct_0202e1a0 mUnk_0c; + /* 24 */ + + /* 00 */ virtual ~UnkStruct_ov000_020c0c08(); + /* 08 */ + + UnkStruct_ov000_020c0c08(unk32 param1, u8 *param2); +}; diff --git a/src/18_Overworld/Map/MapOverworld.cpp b/src/18_Overworld/Map/MapOverworld.cpp new file mode 100644 index 00000000..5737ea54 --- /dev/null +++ b/src/18_Overworld/Map/MapOverworld.cpp @@ -0,0 +1,38 @@ +#include "Map/MapOverworld.hpp" + +MapOverworld::MapOverworld(u32 width, u32 height) : + MapBase(width, height) {} +MapOverworld::~MapOverworld() {} +void MapOverworld::vfunc_08(u32 param_2, u32 param_3, Course *param_4) {} +void MapOverworld::vfunc_14() {} +void MapOverworld::vfunc_1c(bool param_2) {} +void MapOverworld::func_ov018_0215bfc8() {} +void MapOverworld::vfunc_20(s32 param_2) {} +void MapOverworld::vfunc_2c() {} +void MapOverworld::vfunc_94() {} +unk32 MapOverworld::vfunc_a4() {} +unk32 MapOverworld::vfunc_54() {} +unk32 MapOverworld::vfunc_58() {} +unk32 MapOverworld::vfunc_5c() {} +unk32 MapOverworld::vfunc_60() {} +unk32 MapOverworld::vfunc_64() {} +u32 MapOverworld::func_ov018_0215c34c() {} +u32 MapOverworld::func_ov018_0215c368() {} +s32 MapOverworld::func_ov018_0215c380(u8 *param1) {} +void MapOverworld::vfunc_bc() {} +void MapOverworld::vfunc_98() {} +void MapOverworld::vfunc_c0() {} +unk32 MapOverworld::vfunc_78() {} +unk32 MapOverworld::vfunc_7c() {} +unk32 MapOverworld::vfunc_80() {} +unk8 MapOverworld::vfunc_b0(unk32 param_2, unk32 param_3) {} +void MapOverworld::func_ov018_0215c650() {} +void MapOverworld::func_ov018_0215c6ac() {} +void MapOverworld::func_ov018_0215c6d0() {} +MapOverworld_Unk1::MapOverworld_Unk1(u32 param1, u8 *param2, unk32 param3) : + UnkStruct_ov000_020c0c08(0, param2) {} +void MapOverworld::func_ov018_0215c9ac() {} +void func_ov018_0215ca24(s32 param1) {} +void func_ov018_0215ca3c(s32 param1, s32 param2, unk32 param3, unk32 param4) {} +void func_ov018_0215ca8c(s32 param1) {} +void MapOverworld::vfunc_4c() {} From 6c45752f48e84fc338f80f5b818ea8d8c5b86810 Mon Sep 17 00:00:00 2001 From: Aetias Date: Sun, 9 Feb 2025 13:14:03 +0100 Subject: [PATCH 05/37] Update overlays.md --- docs/overlays.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/overlays.md b/docs/overlays.md index d966dd91..00eecb0d 100644 --- a/docs/overlays.md +++ b/docs/overlays.md @@ -18,11 +18,11 @@ contribute to this list! `11` | --- | 3 | `12` | Battle | 3 | Handles battle mode. `13` | --- | 3 | -`14` | Land | 4 | Link and essential land-based actors -`15` | --- | 4 | +`14` | Land | 4 | Link and essential land-based actors. +`15` | Sea | 4 | Handles the sea, Linebeck's ship, and sea-based actors. `16` | Startup | N/A | Exists briefly on game startup. Initializes RNG, messages, and more. -`17` | --- | 5 | -`18` | --- | 5 | +`17` | Dungeon | 5 | Handles courses for caves and dungeons. +`18` | Overworld | 5 | Handles overworld courses on land. `19` | --- | 6 | `20` | --- | 6 | `21` | --- | 6 | From 910df5dd0ca1624fa8d481f776724e818035ffd7 Mon Sep 17 00:00:00 2001 From: Aetias Date: Sun, 16 Feb 2025 11:41:35 +0100 Subject: [PATCH 06/37] Delink OverlayManager for US version --- config/usa/arm9/delinks.txt | 3 +++ 1 file changed, 3 insertions(+) diff --git a/config/usa/arm9/delinks.txt b/config/usa/arm9/delinks.txt index 5c30acbc..14d31538 100644 --- a/config/usa/arm9/delinks.txt +++ b/config/usa/arm9/delinks.txt @@ -10,6 +10,9 @@ src/Main/Actor/ActorType.cpp: .text start:0x0203e740 end:0x0203e85c .bss start:0x02069120 end:0x02069128 +src/Main/System/OverlayManager.cpp: + .text start:0x0202ff40 end:0x02030038 + libs/cpp/src/__register_global_object.cpp: complete .text start:0x0204f890 end:0x0204f8b0 From 9d82f34f530a0795089b704662f2b11a4361a045 Mon Sep 17 00:00:00 2001 From: LagoLunatic Date: Thu, 20 Feb 2025 16:01:07 -0500 Subject: [PATCH 07/37] Fix shebangs and permissions --- tools/configure.py | 2 +- tools/m2ctx.py | 2 +- tools/ninja_syntax.py | 2 -- tools/setup.py | 2 ++ tools/sha1.py | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) mode change 100644 => 100755 tools/configure.py mode change 100644 => 100755 tools/setup.py mode change 100644 => 100755 tools/sha1.py diff --git a/tools/configure.py b/tools/configure.py old mode 100644 new mode 100755 index f3c34311..45d9824a --- a/tools/configure.py +++ b/tools/configure.py @@ -1,4 +1,4 @@ -#!/usr/bin/python3 +#!/usr/bin/env python3 import os from pathlib import Path diff --git a/tools/m2ctx.py b/tools/m2ctx.py index f2275e33..7c20c34a 100755 --- a/tools/m2ctx.py +++ b/tools/m2ctx.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 import sys import pyperclip diff --git a/tools/ninja_syntax.py b/tools/ninja_syntax.py index 2aa8456e..e0716e8a 100644 --- a/tools/ninja_syntax.py +++ b/tools/ninja_syntax.py @@ -1,5 +1,3 @@ -#!/usr/bin/python - # Copyright 2011 Google Inc. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); diff --git a/tools/setup.py b/tools/setup.py old mode 100644 new mode 100755 index f81ca25d..6e83c64a --- a/tools/setup.py +++ b/tools/setup.py @@ -1,3 +1,5 @@ +#!/usr/bin/env python3 + import requests import zipfile import io diff --git a/tools/sha1.py b/tools/sha1.py old mode 100644 new mode 100755 index 8cd6edd8..fd1cbda8 --- a/tools/sha1.py +++ b/tools/sha1.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 from pathlib import Path import argparse From 80be00c0562f89c20f1cd82d4210924e40e144a3 Mon Sep 17 00:00:00 2001 From: Ozero4 <114027116+Ozero4@users.noreply.github.com> Date: Sat, 22 Feb 2025 00:48:25 +0100 Subject: [PATCH 08/37] Fixed "issue tracker" link The link redirected to the AetiasHax's fork --- docs/decompiling.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/decompiling.md b/docs/decompiling.md index 3ec8f682..e9f9c3b1 100644 --- a/docs/decompiling.md +++ b/docs/decompiling.md @@ -8,7 +8,7 @@ stuck or need assistance. - [The Ghidra project](#the-ghidra-project) ## Pick a source file -See the `decomp` tag in the [issue tracker](https://github.com/AetiasHax/ph/issues?q=is%3Aopen+is%3Aissue+label%3Adecomp) for +See the `decomp` tag in the [issue tracker](https://github.com/zeldaret/ph/issues?q=is%3Aopen+is%3Aissue+label%3Adecomp) for a list of delinked source files that are ready to be decompiled. This list grows as more source files are delinked from the rest of the base ROM. From 97b32438e62b2a4282b477b6a9d9ff5ee289388c Mon Sep 17 00:00:00 2001 From: Aetias Date: Tue, 4 Mar 2025 20:34:44 +0100 Subject: [PATCH 09/37] Bump dsd to v0.5.0 --- tools/setup.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/setup.py b/tools/setup.py index 6e83c64a..8e5f9c0d 100755 --- a/tools/setup.py +++ b/tools/setup.py @@ -7,7 +7,7 @@ from pathlib import Path import platform import stat -DSD_VERSION = 'v0.4.0' +DSD_VERSION = 'v0.5.0' WIBO_VERSION = '0.6.16' From e91c270a6a6b15f55fdbea532c9ebfd4c4b1d742 Mon Sep 17 00:00:00 2001 From: Aetias Date: Tue, 4 Mar 2025 20:35:19 +0100 Subject: [PATCH 10/37] Mark .rodata and .ctor as `rodata` sections --- config/eur/arm9/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov000/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov001/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov002/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov003/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov004/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov005/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov006/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov007/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov008/delinks.txt | 2 +- config/eur/arm9/overlays/ov009/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov010/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov011/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov012/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov013/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov014/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov015/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov016/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov017/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov018/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov019/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov020/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov021/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov022/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov023/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov024/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov025/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov026/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov027/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov028/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov029/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov030/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov031/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov032/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov033/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov034/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov035/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov036/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov037/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov038/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov039/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov040/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov041/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov042/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov043/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov044/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov045/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov046/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov047/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov048/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov049/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov050/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov051/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov052/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov053/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov054/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov055/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov056/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov057/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov058/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov059/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov060/delinks.txt | 4 ++-- config/eur/arm9/overlays/ov061/delinks.txt | 4 ++-- config/usa/arm9/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov000/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov001/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov002/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov003/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov004/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov005/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov006/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov007/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov008/delinks.txt | 2 +- config/usa/arm9/overlays/ov009/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov010/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov011/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov012/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov013/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov014/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov015/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov016/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov017/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov018/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov019/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov020/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov021/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov022/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov023/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov024/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov025/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov026/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov027/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov028/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov029/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov030/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov031/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov032/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov033/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov034/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov035/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov036/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov037/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov038/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov039/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov040/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov041/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov042/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov043/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov044/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov045/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov046/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov047/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov048/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov049/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov050/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov051/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov052/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov053/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov054/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov055/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov056/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov057/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov058/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov059/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov060/delinks.txt | 4 ++-- config/usa/arm9/overlays/ov061/delinks.txt | 4 ++-- 126 files changed, 250 insertions(+), 250 deletions(-) diff --git a/config/eur/arm9/delinks.txt b/config/eur/arm9/delinks.txt index 7e3f8e58..bea20dd6 100644 --- a/config/eur/arm9/delinks.txt +++ b/config/eur/arm9/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02000000 end:0x02050ca0 kind:code align:32 .init start:0x02050ca0 end:0x02050f54 kind:code align:4 - .rodata start:0x02050f54 end:0x0205725c kind:data align:4 - .ctor start:0x0205725c end:0x020572c4 kind:data align:4 + .rodata start:0x02050f54 end:0x0205725c kind:rodata align:4 + .ctor start:0x0205725c end:0x020572c4 kind:rodata align:4 .data start:0x020572e0 end:0x02058e20 kind:data align:32 .bss start:0x02058e20 end:0x020773c0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov000/delinks.txt b/config/eur/arm9/overlays/ov000/delinks.txt index 78534402..75d6e12c 100644 --- a/config/eur/arm9/overlays/ov000/delinks.txt +++ b/config/eur/arm9/overlays/ov000/delinks.txt @@ -1,7 +1,7 @@ .text start:0x020773c0 end:0x020d8770 kind:code align:32 - .rodata start:0x020d8770 end:0x020df338 kind:data align:4 + .rodata start:0x020d8770 end:0x020df338 kind:rodata align:4 .init start:0x020df338 end:0x020e1e88 kind:code align:4 - .ctor start:0x020e1e88 end:0x020e1f6c kind:data align:4 + .ctor start:0x020e1e88 end:0x020e1f6c kind:rodata align:4 .data start:0x020e1f80 end:0x020e9320 kind:data align:32 .bss start:0x020e9320 end:0x020ec81c kind:bss align:32 .sbss start:0x020ec81c end:0x020eed40 kind:bss align:4 diff --git a/config/eur/arm9/overlays/ov001/delinks.txt b/config/eur/arm9/overlays/ov001/delinks.txt index 40006dbe..020be41c 100644 --- a/config/eur/arm9/overlays/ov001/delinks.txt +++ b/config/eur/arm9/overlays/ov001/delinks.txt @@ -1,6 +1,6 @@ .text start:0x020eed40 end:0x020f86b4 kind:code align:32 - .rodata start:0x020f86b4 end:0x020f88f4 kind:data align:4 - .ctor start:0x020f88f4 end:0x020f88f8 kind:data align:4 + .rodata start:0x020f86b4 end:0x020f88f4 kind:rodata align:4 + .ctor start:0x020f88f4 end:0x020f88f8 kind:rodata align:4 .data start:0x020f8900 end:0x020f8b60 kind:data align:32 .bss start:0x020f8b60 end:0x020ff1a0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov002/delinks.txt b/config/eur/arm9/overlays/ov002/delinks.txt index 884d78b3..f533848b 100644 --- a/config/eur/arm9/overlays/ov002/delinks.txt +++ b/config/eur/arm9/overlays/ov002/delinks.txt @@ -1,7 +1,7 @@ .text start:0x020eed40 end:0x020f672c kind:code align:32 - .rodata start:0x020f672c end:0x020f6978 kind:data align:4 + .rodata start:0x020f672c end:0x020f6978 kind:rodata align:4 .init start:0x020f6978 end:0x020f69a4 kind:code align:4 - .ctor start:0x020f69a4 end:0x020f69ac kind:data align:4 + .ctor start:0x020f69a4 end:0x020f69ac kind:rodata align:4 .data start:0x020f69c0 end:0x020f7160 kind:data align:32 .bss start:0x020f7160 end:0x02100180 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov003/delinks.txt b/config/eur/arm9/overlays/ov003/delinks.txt index a7c88d15..7016907a 100644 --- a/config/eur/arm9/overlays/ov003/delinks.txt +++ b/config/eur/arm9/overlays/ov003/delinks.txt @@ -1,7 +1,7 @@ .text start:0x020eed40 end:0x020fc454 kind:code align:32 - .rodata start:0x020fc454 end:0x020ffe28 kind:data align:4 + .rodata start:0x020fc454 end:0x020ffe28 kind:rodata align:4 .init start:0x020ffe28 end:0x020fffcc kind:code align:4 - .ctor start:0x020fffcc end:0x020ffff4 kind:data align:4 + .ctor start:0x020fffcc end:0x020ffff4 kind:rodata align:4 .data start:0x02100000 end:0x02100a80 kind:data align:32 .bss start:0x02100a80 end:0x02100ae0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov004/delinks.txt b/config/eur/arm9/overlays/ov004/delinks.txt index 3df0adbc..7d3bb7ad 100644 --- a/config/eur/arm9/overlays/ov004/delinks.txt +++ b/config/eur/arm9/overlays/ov004/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02100ae0 end:0x0210f824 kind:code align:32 - .rodata start:0x0210f824 end:0x0210fd58 kind:data align:4 + .rodata start:0x0210f824 end:0x0210fd58 kind:rodata align:4 .init start:0x0210fd58 end:0x0210fd90 kind:code align:4 - .ctor start:0x0210fd90 end:0x0210fd9c kind:data align:4 + .ctor start:0x0210fd90 end:0x0210fd9c kind:rodata align:4 .data start:0x0210fda0 end:0x021113e0 kind:data align:32 .bss start:0x021113e0 end:0x021113e0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov005/delinks.txt b/config/eur/arm9/overlays/ov005/delinks.txt index 37358df1..cd744ee4 100644 --- a/config/eur/arm9/overlays/ov005/delinks.txt +++ b/config/eur/arm9/overlays/ov005/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02100ae0 end:0x021122a0 kind:code align:32 - .rodata start:0x021122a0 end:0x021123bc kind:data align:4 + .rodata start:0x021122a0 end:0x021123bc kind:rodata align:4 .init start:0x021123bc end:0x02112464 kind:code align:4 - .ctor start:0x02112464 end:0x02112478 kind:data align:4 + .ctor start:0x02112464 end:0x02112478 kind:rodata align:4 .data start:0x02112480 end:0x02112c20 kind:data align:32 .bss start:0x02112c20 end:0x02112c20 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov006/delinks.txt b/config/eur/arm9/overlays/ov006/delinks.txt index 4d3863bd..bcf568d7 100644 --- a/config/eur/arm9/overlays/ov006/delinks.txt +++ b/config/eur/arm9/overlays/ov006/delinks.txt @@ -1,6 +1,6 @@ .text start:0x02100ae0 end:0x02102ffc kind:code align:32 - .rodata start:0x02102ffc end:0x021039ac kind:data align:4 - .ctor start:0x021039ac end:0x021039b0 kind:data align:4 + .rodata start:0x02102ffc end:0x021039ac kind:rodata align:4 + .ctor start:0x021039ac end:0x021039b0 kind:rodata align:4 .data start:0x021039c0 end:0x02104000 kind:data align:32 .bss start:0x02104000 end:0x02104020 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov007/delinks.txt b/config/eur/arm9/overlays/ov007/delinks.txt index 5de92741..48eb7448 100644 --- a/config/eur/arm9/overlays/ov007/delinks.txt +++ b/config/eur/arm9/overlays/ov007/delinks.txt @@ -1,6 +1,6 @@ .text start:0x02100ae0 end:0x021028c8 kind:code align:32 - .rodata start:0x021028c8 end:0x02102938 kind:data align:4 - .ctor start:0x02102938 end:0x0210293c kind:data align:4 + .rodata start:0x021028c8 end:0x02102938 kind:rodata align:4 + .ctor start:0x02102938 end:0x0210293c kind:rodata align:4 .data start:0x02102940 end:0x02102aa0 kind:data align:32 .bss start:0x02102aa0 end:0x0210eb40 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov008/delinks.txt b/config/eur/arm9/overlays/ov008/delinks.txt index 84cf4871..0abc0500 100644 --- a/config/eur/arm9/overlays/ov008/delinks.txt +++ b/config/eur/arm9/overlays/ov008/delinks.txt @@ -1,5 +1,5 @@ .text start:0x02112c20 end:0x02113af4 kind:code align:32 - .ctor start:0x02113af4 end:0x02113af8 kind:data align:4 + .ctor start:0x02113af4 end:0x02113af8 kind:rodata align:4 .data start:0x02113b00 end:0x02113b80 kind:data align:32 .bss start:0x02113b80 end:0x02113b80 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov009/delinks.txt b/config/eur/arm9/overlays/ov009/delinks.txt index be6e1916..9ed9eb3f 100644 --- a/config/eur/arm9/overlays/ov009/delinks.txt +++ b/config/eur/arm9/overlays/ov009/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02112c20 end:0x0211d98c kind:code align:32 - .rodata start:0x0211d98c end:0x0211e4a4 kind:data align:4 + .rodata start:0x0211d98c end:0x0211e4a4 kind:rodata align:4 .init start:0x0211e4a4 end:0x0211e660 kind:code align:4 - .ctor start:0x0211e660 end:0x0211e680 kind:data align:4 + .ctor start:0x0211e660 end:0x0211e680 kind:rodata align:4 .data start:0x0211e680 end:0x0211f520 kind:data align:32 .bss start:0x0211f520 end:0x0211f640 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov010/delinks.txt b/config/eur/arm9/overlays/ov010/delinks.txt index db92de38..885e1605 100644 --- a/config/eur/arm9/overlays/ov010/delinks.txt +++ b/config/eur/arm9/overlays/ov010/delinks.txt @@ -1,6 +1,6 @@ .text start:0x02112c20 end:0x0211e750 kind:code align:32 - .rodata start:0x0211e750 end:0x0211ea18 kind:data align:4 - .ctor start:0x0211ea18 end:0x0211ea1c kind:data align:4 + .rodata start:0x0211e750 end:0x0211ea18 kind:rodata align:4 + .ctor start:0x0211ea18 end:0x0211ea1c kind:rodata align:4 .data start:0x0211ea20 end:0x0211f400 kind:data align:32 .bss start:0x0211f400 end:0x0211f460 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov011/delinks.txt b/config/eur/arm9/overlays/ov011/delinks.txt index 7b8a3367..f15ef98a 100644 --- a/config/eur/arm9/overlays/ov011/delinks.txt +++ b/config/eur/arm9/overlays/ov011/delinks.txt @@ -1,6 +1,6 @@ .text start:0x02112c20 end:0x0212ba0c kind:code align:32 - .rodata start:0x0212ba0c end:0x0212ed00 kind:data align:4 - .ctor start:0x0212ed00 end:0x0212ed04 kind:data align:4 + .rodata start:0x0212ba0c end:0x0212ed00 kind:rodata align:4 + .ctor start:0x0212ed00 end:0x0212ed04 kind:rodata align:4 .data start:0x0212ed20 end:0x02130820 kind:data align:32 .bss start:0x02130820 end:0x02132ee0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov012/delinks.txt b/config/eur/arm9/overlays/ov012/delinks.txt index 33d2d934..756c7714 100644 --- a/config/eur/arm9/overlays/ov012/delinks.txt +++ b/config/eur/arm9/overlays/ov012/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02112c20 end:0x021344ac kind:code align:32 - .rodata start:0x021344ac end:0x021354cc kind:data align:4 + .rodata start:0x021344ac end:0x021354cc kind:rodata align:4 .init start:0x021354cc end:0x021358f4 kind:code align:4 - .ctor start:0x021358f4 end:0x02135920 kind:data align:4 + .ctor start:0x021358f4 end:0x02135920 kind:rodata align:4 .data start:0x02135920 end:0x02137c60 kind:data align:32 .bss start:0x02137c60 end:0x0213dec0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov013/delinks.txt b/config/eur/arm9/overlays/ov013/delinks.txt index 7d9da21e..8731e1f2 100644 --- a/config/eur/arm9/overlays/ov013/delinks.txt +++ b/config/eur/arm9/overlays/ov013/delinks.txt @@ -1,6 +1,6 @@ .text start:0x02112c20 end:0x02116004 kind:code align:32 - .rodata start:0x02116004 end:0x021160ec kind:data align:4 - .ctor start:0x021160ec end:0x021160f4 kind:data align:4 + .rodata start:0x02116004 end:0x021160ec kind:rodata align:4 + .ctor start:0x021160ec end:0x021160f4 kind:rodata align:4 .data start:0x02116100 end:0x02116200 kind:data align:32 .bss start:0x02116200 end:0x021163a0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov014/delinks.txt b/config/eur/arm9/overlays/ov014/delinks.txt index 07c0b3f4..60aa7fc6 100644 --- a/config/eur/arm9/overlays/ov014/delinks.txt +++ b/config/eur/arm9/overlays/ov014/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0211f640 end:0x02153b50 kind:code align:32 - .rodata start:0x02153b50 end:0x021541ec kind:data align:4 + .rodata start:0x02153b50 end:0x021541ec kind:rodata align:4 .init start:0x021541ec end:0x0215584c kind:code align:4 - .ctor start:0x0215584c end:0x0215598c kind:data align:4 + .ctor start:0x0215584c end:0x0215598c kind:rodata align:4 .data start:0x021559a0 end:0x0215abc0 kind:data align:32 .bss start:0x0215abc0 end:0x0215b4a0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov015/delinks.txt b/config/eur/arm9/overlays/ov015/delinks.txt index 67672a0b..60df5596 100644 --- a/config/eur/arm9/overlays/ov015/delinks.txt +++ b/config/eur/arm9/overlays/ov015/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0211f640 end:0x02185b1c kind:code align:32 - .rodata start:0x02185b1c end:0x02187384 kind:data align:4 + .rodata start:0x02185b1c end:0x02187384 kind:rodata align:4 .init start:0x02187384 end:0x021892d0 kind:code align:4 - .ctor start:0x021892d0 end:0x02189420 kind:data align:4 + .ctor start:0x021892d0 end:0x02189420 kind:rodata align:4 .data start:0x02189420 end:0x0218ebe0 kind:data align:32 .bss start:0x0218ebe0 end:0x021904a0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov016/delinks.txt b/config/eur/arm9/overlays/ov016/delinks.txt index 8c4b2e68..5ab20a36 100644 --- a/config/eur/arm9/overlays/ov016/delinks.txt +++ b/config/eur/arm9/overlays/ov016/delinks.txt @@ -1,6 +1,6 @@ .text start:0x0211f640 end:0x02120134 kind:code align:32 - .rodata start:0x02120134 end:0x02120150 kind:data align:4 - .ctor start:0x02120150 end:0x02120154 kind:data align:4 + .rodata start:0x02120134 end:0x02120150 kind:rodata align:4 + .ctor start:0x02120150 end:0x02120154 kind:rodata align:4 .data start:0x02120160 end:0x021201a0 kind:data align:32 .bss start:0x021201a0 end:0x021201a0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov017/delinks.txt b/config/eur/arm9/overlays/ov017/delinks.txt index b91c64bb..4c6e3c89 100644 --- a/config/eur/arm9/overlays/ov017/delinks.txt +++ b/config/eur/arm9/overlays/ov017/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0215b4a0 end:0x0216b098 kind:code align:32 - .rodata start:0x0216b098 end:0x0216b2c4 kind:data align:4 + .rodata start:0x0216b098 end:0x0216b2c4 kind:rodata align:4 .init start:0x0216b2c4 end:0x0216b964 kind:code align:4 - .ctor start:0x0216b964 end:0x0216b9d4 kind:data align:4 + .ctor start:0x0216b964 end:0x0216b9d4 kind:rodata align:4 .data start:0x0216b9e0 end:0x0216cea0 kind:data align:32 .bss start:0x0216cea0 end:0x0216d120 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov018/delinks.txt b/config/eur/arm9/overlays/ov018/delinks.txt index 7c6e4a27..cd18e2d7 100644 --- a/config/eur/arm9/overlays/ov018/delinks.txt +++ b/config/eur/arm9/overlays/ov018/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0215b4a0 end:0x0216b42c kind:code align:32 - .rodata start:0x0216b42c end:0x0216b780 kind:data align:4 + .rodata start:0x0216b42c end:0x0216b780 kind:rodata align:4 .init start:0x0216b780 end:0x0216c04c kind:code align:4 - .ctor start:0x0216c04c end:0x0216c0ac kind:data align:4 + .ctor start:0x0216c04c end:0x0216c0ac kind:rodata align:4 .data start:0x0216c0c0 end:0x0216d440 kind:data align:32 .bss start:0x0216d440 end:0x0216d6a0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov019/delinks.txt b/config/eur/arm9/overlays/ov019/delinks.txt index c5693aaa..d8d542da 100644 --- a/config/eur/arm9/overlays/ov019/delinks.txt +++ b/config/eur/arm9/overlays/ov019/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0216d6a0 end:0x02175c50 kind:code align:32 - .rodata start:0x02175c50 end:0x02175f04 kind:data align:4 + .rodata start:0x02175c50 end:0x02175f04 kind:rodata align:4 .init start:0x02175f04 end:0x021762d4 kind:code align:4 - .ctor start:0x021762d4 end:0x021762fc kind:data align:4 + .ctor start:0x021762d4 end:0x021762fc kind:rodata align:4 .data start:0x02176300 end:0x02176e80 kind:data align:32 .bss start:0x02176e80 end:0x02177680 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov020/delinks.txt b/config/eur/arm9/overlays/ov020/delinks.txt index 10bd7e54..3d4742f0 100644 --- a/config/eur/arm9/overlays/ov020/delinks.txt +++ b/config/eur/arm9/overlays/ov020/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0216d6a0 end:0x02177868 kind:code align:32 - .rodata start:0x02177868 end:0x02177af4 kind:data align:4 + .rodata start:0x02177868 end:0x02177af4 kind:rodata align:4 .init start:0x02177af4 end:0x02178298 kind:code align:4 - .ctor start:0x02178298 end:0x021782e0 kind:data align:4 + .ctor start:0x02178298 end:0x021782e0 kind:rodata align:4 .data start:0x021782e0 end:0x02179500 kind:data align:32 .bss start:0x02179500 end:0x02179740 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov021/delinks.txt b/config/eur/arm9/overlays/ov021/delinks.txt index 6402c9ca..3eb325b9 100644 --- a/config/eur/arm9/overlays/ov021/delinks.txt +++ b/config/eur/arm9/overlays/ov021/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0216d6a0 end:0x02170bd4 kind:code align:32 - .rodata start:0x02170bd4 end:0x02170cec kind:data align:4 + .rodata start:0x02170bd4 end:0x02170cec kind:rodata align:4 .init start:0x02170cec end:0x02170f64 kind:code align:4 - .ctor start:0x02170f64 end:0x02170f84 kind:data align:4 + .ctor start:0x02170f64 end:0x02170f84 kind:rodata align:4 .data start:0x02170fa0 end:0x02171ae0 kind:data align:32 .bss start:0x02171ae0 end:0x02171cc0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov022/delinks.txt b/config/eur/arm9/overlays/ov022/delinks.txt index cde2c294..58ef429a 100644 --- a/config/eur/arm9/overlays/ov022/delinks.txt +++ b/config/eur/arm9/overlays/ov022/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0216d6a0 end:0x021785b8 kind:code align:32 - .rodata start:0x021785b8 end:0x021789c8 kind:data align:4 + .rodata start:0x021785b8 end:0x021789c8 kind:rodata align:4 .init start:0x021789c8 end:0x02178ff4 kind:code align:4 - .ctor start:0x02178ff4 end:0x0217903c kind:data align:4 + .ctor start:0x02178ff4 end:0x0217903c kind:rodata align:4 .data start:0x02179040 end:0x0217a400 kind:data align:32 .bss start:0x0217a400 end:0x0217a640 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov023/delinks.txt b/config/eur/arm9/overlays/ov023/delinks.txt index ad04c7fa..5edf281b 100644 --- a/config/eur/arm9/overlays/ov023/delinks.txt +++ b/config/eur/arm9/overlays/ov023/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0216d6a0 end:0x02179030 kind:code align:32 - .rodata start:0x02179030 end:0x02179698 kind:data align:4 + .rodata start:0x02179030 end:0x02179698 kind:rodata align:4 .init start:0x02179698 end:0x02179ce0 kind:code align:4 - .ctor start:0x02179ce0 end:0x02179d18 kind:data align:4 + .ctor start:0x02179ce0 end:0x02179d18 kind:rodata align:4 .data start:0x02179d20 end:0x0217ab60 kind:data align:32 .bss start:0x0217ab60 end:0x0217ad80 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov024/delinks.txt b/config/eur/arm9/overlays/ov024/delinks.txt index ed85c2d1..68d1e512 100644 --- a/config/eur/arm9/overlays/ov024/delinks.txt +++ b/config/eur/arm9/overlays/ov024/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0216d6a0 end:0x021791d4 kind:code align:32 - .rodata start:0x021791d4 end:0x021795d0 kind:data align:4 + .rodata start:0x021791d4 end:0x021795d0 kind:rodata align:4 .init start:0x021795d0 end:0x02179e1c kind:code align:4 - .ctor start:0x02179e1c end:0x02179e5c kind:data align:4 + .ctor start:0x02179e1c end:0x02179e5c kind:rodata align:4 .data start:0x02179e60 end:0x0217af60 kind:data align:32 .bss start:0x0217af60 end:0x0217b160 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov025/delinks.txt b/config/eur/arm9/overlays/ov025/delinks.txt index 4426b815..df4aadeb 100644 --- a/config/eur/arm9/overlays/ov025/delinks.txt +++ b/config/eur/arm9/overlays/ov025/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0216d6a0 end:0x0217933c kind:code align:32 - .rodata start:0x0217933c end:0x02179680 kind:data align:4 + .rodata start:0x0217933c end:0x02179680 kind:rodata align:4 .init start:0x02179680 end:0x02179b98 kind:code align:4 - .ctor start:0x02179b98 end:0x02179bc8 kind:data align:4 + .ctor start:0x02179b98 end:0x02179bc8 kind:rodata align:4 .data start:0x02179be0 end:0x0217a880 kind:data align:32 .bss start:0x0217a880 end:0x0217aa20 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov026/delinks.txt b/config/eur/arm9/overlays/ov026/delinks.txt index fcbc09d6..fe99e306 100644 --- a/config/eur/arm9/overlays/ov026/delinks.txt +++ b/config/eur/arm9/overlays/ov026/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0216d6a0 end:0x02179260 kind:code align:32 - .rodata start:0x02179260 end:0x021797dc kind:data align:4 + .rodata start:0x02179260 end:0x021797dc kind:rodata align:4 .init start:0x021797dc end:0x0217a020 kind:code align:4 - .ctor start:0x0217a020 end:0x0217a060 kind:data align:4 + .ctor start:0x0217a020 end:0x0217a060 kind:rodata align:4 .data start:0x0217a060 end:0x0217b2c0 kind:data align:32 .bss start:0x0217b2c0 end:0x0217b5c0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov027/delinks.txt b/config/eur/arm9/overlays/ov027/delinks.txt index 7cdc16db..3bd15fdf 100644 --- a/config/eur/arm9/overlays/ov027/delinks.txt +++ b/config/eur/arm9/overlays/ov027/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0216d6a0 end:0x02178cfc kind:code align:32 - .rodata start:0x02178cfc end:0x0217913c kind:data align:4 + .rodata start:0x02178cfc end:0x0217913c kind:rodata align:4 .init start:0x0217913c end:0x02179474 kind:code align:4 - .ctor start:0x02179474 end:0x02179498 kind:data align:4 + .ctor start:0x02179474 end:0x02179498 kind:rodata align:4 .data start:0x021794a0 end:0x0217a0c0 kind:data align:32 .bss start:0x0217a0c0 end:0x0217a1c0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov028/delinks.txt b/config/eur/arm9/overlays/ov028/delinks.txt index c82b0263..7a4401e4 100644 --- a/config/eur/arm9/overlays/ov028/delinks.txt +++ b/config/eur/arm9/overlays/ov028/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0216d6a0 end:0x0217807c kind:code align:32 - .rodata start:0x0217807c end:0x02178504 kind:data align:4 + .rodata start:0x0217807c end:0x02178504 kind:rodata align:4 .init start:0x02178504 end:0x02178894 kind:code align:4 - .ctor start:0x02178894 end:0x021788c8 kind:data align:4 + .ctor start:0x02178894 end:0x021788c8 kind:rodata align:4 .data start:0x021788e0 end:0x02179b00 kind:data align:32 .bss start:0x02179b00 end:0x02179ce0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov029/delinks.txt b/config/eur/arm9/overlays/ov029/delinks.txt index 4d29edf6..f067ea1b 100644 --- a/config/eur/arm9/overlays/ov029/delinks.txt +++ b/config/eur/arm9/overlays/ov029/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0216d6a0 end:0x02179298 kind:code align:32 - .rodata start:0x02179298 end:0x021794b0 kind:data align:4 + .rodata start:0x02179298 end:0x021794b0 kind:rodata align:4 .init start:0x021794b0 end:0x02179824 kind:code align:4 - .ctor start:0x02179824 end:0x0217985c kind:data align:4 + .ctor start:0x02179824 end:0x0217985c kind:rodata align:4 .data start:0x02179860 end:0x0217a4a0 kind:data align:32 .bss start:0x0217a4a0 end:0x0217bd80 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov030/delinks.txt b/config/eur/arm9/overlays/ov030/delinks.txt index 1f43f935..4ab40a5e 100644 --- a/config/eur/arm9/overlays/ov030/delinks.txt +++ b/config/eur/arm9/overlays/ov030/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0217bd80 end:0x021885d4 kind:code align:32 - .rodata start:0x021885d4 end:0x02188824 kind:data align:4 + .rodata start:0x021885d4 end:0x02188824 kind:rodata align:4 .init start:0x02188824 end:0x02188a2c kind:code align:4 - .ctor start:0x02188a2c end:0x02188a38 kind:data align:4 + .ctor start:0x02188a2c end:0x02188a38 kind:rodata align:4 .data start:0x02188a40 end:0x021894a0 kind:data align:32 .bss start:0x021894a0 end:0x02189560 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov031/delinks.txt b/config/eur/arm9/overlays/ov031/delinks.txt index 4f9880d0..6e0c2bbe 100644 --- a/config/eur/arm9/overlays/ov031/delinks.txt +++ b/config/eur/arm9/overlays/ov031/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0217bd80 end:0x021818a0 kind:code align:32 - .rodata start:0x021818a0 end:0x02181b6c kind:data align:4 + .rodata start:0x021818a0 end:0x02181b6c kind:rodata align:4 .init start:0x02181b6c end:0x02182080 kind:code align:4 - .ctor start:0x02182080 end:0x02182094 kind:data align:4 + .ctor start:0x02182080 end:0x02182094 kind:rodata align:4 .data start:0x021820a0 end:0x02183e80 kind:data align:32 .bss start:0x02183e80 end:0x02184200 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov032/delinks.txt b/config/eur/arm9/overlays/ov032/delinks.txt index 2ca78f8f..4937f85c 100644 --- a/config/eur/arm9/overlays/ov032/delinks.txt +++ b/config/eur/arm9/overlays/ov032/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0217bd80 end:0x02184ba8 kind:code align:32 - .rodata start:0x02184ba8 end:0x02184d3c kind:data align:4 + .rodata start:0x02184ba8 end:0x02184d3c kind:rodata align:4 .init start:0x02184d3c end:0x021853c8 kind:code align:4 - .ctor start:0x021853c8 end:0x021853ec kind:data align:4 + .ctor start:0x021853c8 end:0x021853ec kind:rodata align:4 .data start:0x02185400 end:0x021861e0 kind:data align:32 .bss start:0x021861e0 end:0x02186320 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov033/delinks.txt b/config/eur/arm9/overlays/ov033/delinks.txt index c8391dfd..5c38ed26 100644 --- a/config/eur/arm9/overlays/ov033/delinks.txt +++ b/config/eur/arm9/overlays/ov033/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0217bd80 end:0x0217facc kind:code align:32 - .rodata start:0x0217facc end:0x0217fb90 kind:data align:4 + .rodata start:0x0217facc end:0x0217fb90 kind:rodata align:4 .init start:0x0217fb90 end:0x0217fe94 kind:code align:4 - .ctor start:0x0217fe94 end:0x0217feac kind:data align:4 + .ctor start:0x0217fe94 end:0x0217feac kind:rodata align:4 .data start:0x0217fec0 end:0x02180580 kind:data align:32 .bss start:0x02180580 end:0x02180640 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov034/delinks.txt b/config/eur/arm9/overlays/ov034/delinks.txt index 3ea2d481..d1364a8b 100644 --- a/config/eur/arm9/overlays/ov034/delinks.txt +++ b/config/eur/arm9/overlays/ov034/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0217bd80 end:0x02185740 kind:code align:32 - .rodata start:0x02185740 end:0x02185818 kind:data align:4 + .rodata start:0x02185740 end:0x02185818 kind:rodata align:4 .init start:0x02185818 end:0x02185a64 kind:code align:4 - .ctor start:0x02185a64 end:0x02185a74 kind:data align:4 + .ctor start:0x02185a64 end:0x02185a74 kind:rodata align:4 .data start:0x02185a80 end:0x021861a0 kind:data align:32 .bss start:0x021861a0 end:0x021863c0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov035/delinks.txt b/config/eur/arm9/overlays/ov035/delinks.txt index 4fcb63a7..776671d5 100644 --- a/config/eur/arm9/overlays/ov035/delinks.txt +++ b/config/eur/arm9/overlays/ov035/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0217bd80 end:0x0218512c kind:code align:32 - .rodata start:0x0218512c end:0x02185668 kind:data align:4 + .rodata start:0x0218512c end:0x02185668 kind:rodata align:4 .init start:0x02185668 end:0x02185900 kind:code align:4 - .ctor start:0x02185900 end:0x02185914 kind:data align:4 + .ctor start:0x02185900 end:0x02185914 kind:rodata align:4 .data start:0x02185920 end:0x02185ec0 kind:data align:32 .bss start:0x02185ec0 end:0x02187020 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov036/delinks.txt b/config/eur/arm9/overlays/ov036/delinks.txt index 3d0a7186..c310fd44 100644 --- a/config/eur/arm9/overlays/ov036/delinks.txt +++ b/config/eur/arm9/overlays/ov036/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0217bd80 end:0x02186698 kind:code align:32 - .rodata start:0x02186698 end:0x02186bb4 kind:data align:4 + .rodata start:0x02186698 end:0x02186bb4 kind:rodata align:4 .init start:0x02186bb4 end:0x02186c34 kind:code align:4 - .ctor start:0x02186c34 end:0x02186c40 kind:data align:4 + .ctor start:0x02186c34 end:0x02186c40 kind:rodata align:4 .data start:0x02186c40 end:0x02186fa0 kind:data align:32 .bss start:0x02186fa0 end:0x02186fe0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov037/delinks.txt b/config/eur/arm9/overlays/ov037/delinks.txt index a679b136..62529715 100644 --- a/config/eur/arm9/overlays/ov037/delinks.txt +++ b/config/eur/arm9/overlays/ov037/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0217bd80 end:0x02187dc8 kind:code align:32 - .rodata start:0x02187dc8 end:0x02188690 kind:data align:4 + .rodata start:0x02187dc8 end:0x02188690 kind:rodata align:4 .init start:0x02188690 end:0x021889b4 kind:code align:4 - .ctor start:0x021889b4 end:0x021889cc kind:data align:4 + .ctor start:0x021889b4 end:0x021889cc kind:rodata align:4 .data start:0x021889e0 end:0x02189160 kind:data align:32 .bss start:0x02189160 end:0x02189240 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov038/delinks.txt b/config/eur/arm9/overlays/ov038/delinks.txt index 5cca0d2c..44c4aca1 100644 --- a/config/eur/arm9/overlays/ov038/delinks.txt +++ b/config/eur/arm9/overlays/ov038/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0217bd80 end:0x02188908 kind:code align:32 - .rodata start:0x02188908 end:0x02188ae4 kind:data align:4 + .rodata start:0x02188908 end:0x02188ae4 kind:rodata align:4 .init start:0x02188ae4 end:0x02188c60 kind:code align:4 - .ctor start:0x02188c60 end:0x02188c6c kind:data align:4 + .ctor start:0x02188c60 end:0x02188c6c kind:rodata align:4 .data start:0x02188c80 end:0x021891e0 kind:data align:32 .bss start:0x021891e0 end:0x021894a0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov039/delinks.txt b/config/eur/arm9/overlays/ov039/delinks.txt index 87fd8241..9463b213 100644 --- a/config/eur/arm9/overlays/ov039/delinks.txt +++ b/config/eur/arm9/overlays/ov039/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0217bd80 end:0x02186124 kind:code align:32 - .rodata start:0x02186124 end:0x02186968 kind:data align:4 + .rodata start:0x02186124 end:0x02186968 kind:rodata align:4 .init start:0x02186968 end:0x021869bc kind:code align:4 - .ctor start:0x021869bc end:0x021869c4 kind:data align:4 + .ctor start:0x021869bc end:0x021869c4 kind:rodata align:4 .data start:0x021869e0 end:0x02186cc0 kind:data align:32 .bss start:0x02186cc0 end:0x02186d00 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov040/delinks.txt b/config/eur/arm9/overlays/ov040/delinks.txt index d716794f..0d19381b 100644 --- a/config/eur/arm9/overlays/ov040/delinks.txt +++ b/config/eur/arm9/overlays/ov040/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0217bd80 end:0x02187ffc kind:code align:32 - .rodata start:0x02187ffc end:0x02188360 kind:data align:4 + .rodata start:0x02187ffc end:0x02188360 kind:rodata align:4 .init start:0x02188360 end:0x02188604 kind:code align:4 - .ctor start:0x02188604 end:0x02188630 kind:data align:4 + .ctor start:0x02188604 end:0x02188630 kind:rodata align:4 .data start:0x02188640 end:0x02189ac0 kind:data align:32 .bss start:0x02189ac0 end:0x0219a1a0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov041/delinks.txt b/config/eur/arm9/overlays/ov041/delinks.txt index b4d097d7..b3c949d8 100644 --- a/config/eur/arm9/overlays/ov041/delinks.txt +++ b/config/eur/arm9/overlays/ov041/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02189560 end:0x0218dec4 kind:code align:32 - .rodata start:0x0218dec4 end:0x0218e098 kind:data align:4 + .rodata start:0x0218dec4 end:0x0218e098 kind:rodata align:4 .init start:0x0218e098 end:0x0218e30c kind:code align:4 - .ctor start:0x0218e30c end:0x0218e328 kind:data align:4 + .ctor start:0x0218e30c end:0x0218e328 kind:rodata align:4 .data start:0x0218e340 end:0x0218ea80 kind:data align:32 .bss start:0x0218ea80 end:0x0218eb60 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov042/delinks.txt b/config/eur/arm9/overlays/ov042/delinks.txt index 07530a75..744eb0ca 100644 --- a/config/eur/arm9/overlays/ov042/delinks.txt +++ b/config/eur/arm9/overlays/ov042/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02189560 end:0x0218c6f4 kind:code align:32 - .rodata start:0x0218c6f4 end:0x0218c744 kind:data align:4 + .rodata start:0x0218c6f4 end:0x0218c744 kind:rodata align:4 .init start:0x0218c744 end:0x0218c7f8 kind:code align:4 - .ctor start:0x0218c7f8 end:0x0218c804 kind:data align:4 + .ctor start:0x0218c7f8 end:0x0218c804 kind:rodata align:4 .data start:0x0218c820 end:0x0218cd20 kind:data align:32 .bss start:0x0218cd20 end:0x0218cda0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov043/delinks.txt b/config/eur/arm9/overlays/ov043/delinks.txt index 7ddd6d6d..69562b42 100644 --- a/config/eur/arm9/overlays/ov043/delinks.txt +++ b/config/eur/arm9/overlays/ov043/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02189560 end:0x0218d340 kind:code align:32 - .rodata start:0x0218d340 end:0x0218d414 kind:data align:4 + .rodata start:0x0218d340 end:0x0218d414 kind:rodata align:4 .init start:0x0218d414 end:0x0218d5c0 kind:code align:4 - .ctor start:0x0218d5c0 end:0x0218d5cc kind:data align:4 + .ctor start:0x0218d5c0 end:0x0218d5cc kind:rodata align:4 .data start:0x0218d5e0 end:0x0218db00 kind:data align:32 .bss start:0x0218db00 end:0x0218db80 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov044/delinks.txt b/config/eur/arm9/overlays/ov044/delinks.txt index 1f307847..188fb140 100644 --- a/config/eur/arm9/overlays/ov044/delinks.txt +++ b/config/eur/arm9/overlays/ov044/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02189560 end:0x0218e984 kind:code align:32 - .rodata start:0x0218e984 end:0x0218ea9c kind:data align:4 + .rodata start:0x0218e984 end:0x0218ea9c kind:rodata align:4 .init start:0x0218ea9c end:0x0218f1cc kind:code align:4 - .ctor start:0x0218f1cc end:0x0218f1f0 kind:data align:4 + .ctor start:0x0218f1cc end:0x0218f1f0 kind:rodata align:4 .data start:0x0218f200 end:0x0218fee0 kind:data align:32 .bss start:0x0218fee0 end:0x02190040 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov045/delinks.txt b/config/eur/arm9/overlays/ov045/delinks.txt index 266968cc..359004dd 100644 --- a/config/eur/arm9/overlays/ov045/delinks.txt +++ b/config/eur/arm9/overlays/ov045/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02189560 end:0x0218e278 kind:code align:32 - .rodata start:0x0218e278 end:0x0218e3e8 kind:data align:4 + .rodata start:0x0218e278 end:0x0218e3e8 kind:rodata align:4 .init start:0x0218e3e8 end:0x0218e4a8 kind:code align:4 - .ctor start:0x0218e4a8 end:0x0218e4b8 kind:data align:4 + .ctor start:0x0218e4a8 end:0x0218e4b8 kind:rodata align:4 .data start:0x0218e4c0 end:0x0218ed80 kind:data align:32 .bss start:0x0218ed80 end:0x0218ee00 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov046/delinks.txt b/config/eur/arm9/overlays/ov046/delinks.txt index df810b40..aeeafe31 100644 --- a/config/eur/arm9/overlays/ov046/delinks.txt +++ b/config/eur/arm9/overlays/ov046/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02190040 end:0x021942f4 kind:code align:32 - .rodata start:0x021942f4 end:0x021944ac kind:data align:4 + .rodata start:0x021942f4 end:0x021944ac kind:rodata align:4 .init start:0x021944ac end:0x0219463c kind:code align:4 - .ctor start:0x0219463c end:0x02194650 kind:data align:4 + .ctor start:0x0219463c end:0x02194650 kind:rodata align:4 .data start:0x02194660 end:0x02194ba0 kind:data align:32 .bss start:0x02194ba0 end:0x02194ca0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov047/delinks.txt b/config/eur/arm9/overlays/ov047/delinks.txt index 19a45f1c..608eaf50 100644 --- a/config/eur/arm9/overlays/ov047/delinks.txt +++ b/config/eur/arm9/overlays/ov047/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02190040 end:0x021941f0 kind:code align:32 - .rodata start:0x021941f0 end:0x021942f0 kind:data align:4 + .rodata start:0x021941f0 end:0x021942f0 kind:rodata align:4 .init start:0x021942f0 end:0x021944e8 kind:code align:4 - .ctor start:0x021944e8 end:0x021944fc kind:data align:4 + .ctor start:0x021944e8 end:0x021944fc kind:rodata align:4 .data start:0x02194500 end:0x02194a00 kind:data align:32 .bss start:0x02194a00 end:0x02194aa0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov048/delinks.txt b/config/eur/arm9/overlays/ov048/delinks.txt index e267f969..bc429bc7 100644 --- a/config/eur/arm9/overlays/ov048/delinks.txt +++ b/config/eur/arm9/overlays/ov048/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02190040 end:0x0219465c kind:code align:32 - .rodata start:0x0219465c end:0x021946c0 kind:data align:4 + .rodata start:0x0219465c end:0x021946c0 kind:rodata align:4 .init start:0x021946c0 end:0x02194ad4 kind:code align:4 - .ctor start:0x02194ad4 end:0x02194af0 kind:data align:4 + .ctor start:0x02194ad4 end:0x02194af0 kind:rodata align:4 .data start:0x02194b00 end:0x02195400 kind:data align:32 .bss start:0x02195400 end:0x02195500 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov049/delinks.txt b/config/eur/arm9/overlays/ov049/delinks.txt index b4fdabac..f15c743c 100644 --- a/config/eur/arm9/overlays/ov049/delinks.txt +++ b/config/eur/arm9/overlays/ov049/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02195500 end:0x021981e0 kind:code align:32 - .rodata start:0x021981e0 end:0x021982c8 kind:data align:4 + .rodata start:0x021981e0 end:0x021982c8 kind:rodata align:4 .init start:0x021982c8 end:0x02198474 kind:code align:4 - .ctor start:0x02198474 end:0x02198484 kind:data align:4 + .ctor start:0x02198474 end:0x02198484 kind:rodata align:4 .data start:0x021984a0 end:0x02198920 kind:data align:32 .bss start:0x02198920 end:0x021989a0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov050/delinks.txt b/config/eur/arm9/overlays/ov050/delinks.txt index 7f715155..c2053033 100644 --- a/config/eur/arm9/overlays/ov050/delinks.txt +++ b/config/eur/arm9/overlays/ov050/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02195500 end:0x021987cc kind:code align:32 - .rodata start:0x021987cc end:0x0219882c kind:data align:4 + .rodata start:0x021987cc end:0x0219882c kind:rodata align:4 .init start:0x0219882c end:0x021989a8 kind:code align:4 - .ctor start:0x021989a8 end:0x021989b4 kind:data align:4 + .ctor start:0x021989a8 end:0x021989b4 kind:rodata align:4 .data start:0x021989c0 end:0x02198ca0 kind:data align:32 .bss start:0x02198ca0 end:0x02198d00 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov051/delinks.txt b/config/eur/arm9/overlays/ov051/delinks.txt index d870fbf0..52689ec7 100644 --- a/config/eur/arm9/overlays/ov051/delinks.txt +++ b/config/eur/arm9/overlays/ov051/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02195500 end:0x02198268 kind:code align:32 - .rodata start:0x02198268 end:0x021982a0 kind:data align:4 + .rodata start:0x02198268 end:0x021982a0 kind:rodata align:4 .init start:0x021982a0 end:0x021984b0 kind:code align:4 - .ctor start:0x021984b0 end:0x021984c8 kind:data align:4 + .ctor start:0x021984b0 end:0x021984c8 kind:rodata align:4 .data start:0x021984e0 end:0x02198a60 kind:data align:32 .bss start:0x02198a60 end:0x02198b20 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov052/delinks.txt b/config/eur/arm9/overlays/ov052/delinks.txt index 88e1edf0..6614fab2 100644 --- a/config/eur/arm9/overlays/ov052/delinks.txt +++ b/config/eur/arm9/overlays/ov052/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02195500 end:0x02197888 kind:code align:32 - .rodata start:0x02197888 end:0x021978d4 kind:data align:4 + .rodata start:0x02197888 end:0x021978d4 kind:rodata align:4 .init start:0x021978d4 end:0x02197954 kind:code align:4 - .ctor start:0x02197954 end:0x02197960 kind:data align:4 + .ctor start:0x02197954 end:0x02197960 kind:rodata align:4 .data start:0x02197960 end:0x02197c40 kind:data align:32 .bss start:0x02197c40 end:0x02197ca0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov053/delinks.txt b/config/eur/arm9/overlays/ov053/delinks.txt index 0852c01d..4bc4c519 100644 --- a/config/eur/arm9/overlays/ov053/delinks.txt +++ b/config/eur/arm9/overlays/ov053/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02198d00 end:0x02199fb8 kind:code align:32 - .rodata start:0x02199fb8 end:0x02199fc4 kind:data align:4 + .rodata start:0x02199fb8 end:0x02199fc4 kind:rodata align:4 .init start:0x02199fc4 end:0x0219a070 kind:code align:4 - .ctor start:0x0219a070 end:0x0219a078 kind:data align:4 + .ctor start:0x0219a070 end:0x0219a078 kind:rodata align:4 .data start:0x0219a080 end:0x0219a180 kind:data align:32 .bss start:0x0219a180 end:0x0219a6a0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov054/delinks.txt b/config/eur/arm9/overlays/ov054/delinks.txt index 00b36bb6..2f7ed216 100644 --- a/config/eur/arm9/overlays/ov054/delinks.txt +++ b/config/eur/arm9/overlays/ov054/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02198d00 end:0x02199914 kind:code align:32 - .rodata start:0x02199914 end:0x02199924 kind:data align:4 + .rodata start:0x02199914 end:0x02199924 kind:rodata align:4 .init start:0x02199924 end:0x02199954 kind:code align:4 - .ctor start:0x02199954 end:0x0219995c kind:data align:4 + .ctor start:0x02199954 end:0x0219995c kind:rodata align:4 .data start:0x02199960 end:0x02199a20 kind:data align:32 .bss start:0x02199a20 end:0x02199aa0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov055/delinks.txt b/config/eur/arm9/overlays/ov055/delinks.txt index 815d5a56..8eeb83ee 100644 --- a/config/eur/arm9/overlays/ov055/delinks.txt +++ b/config/eur/arm9/overlays/ov055/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02198d00 end:0x021997b0 kind:code align:32 - .rodata start:0x021997b0 end:0x021997ec kind:data align:4 + .rodata start:0x021997b0 end:0x021997ec kind:rodata align:4 .init start:0x021997ec end:0x0219981c kind:code align:4 - .ctor start:0x0219981c end:0x02199824 kind:data align:4 + .ctor start:0x0219981c end:0x02199824 kind:rodata align:4 .data start:0x02199840 end:0x021998a0 kind:data align:32 .bss start:0x021998a0 end:0x02199920 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov056/delinks.txt b/config/eur/arm9/overlays/ov056/delinks.txt index 04bb0a92..20159d47 100644 --- a/config/eur/arm9/overlays/ov056/delinks.txt +++ b/config/eur/arm9/overlays/ov056/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02198d00 end:0x0219931c kind:code align:32 - .rodata start:0x0219931c end:0x02199328 kind:data align:4 + .rodata start:0x0219931c end:0x02199328 kind:rodata align:4 .init start:0x02199328 end:0x0219937c kind:code align:4 - .ctor start:0x0219937c end:0x02199384 kind:data align:4 + .ctor start:0x0219937c end:0x02199384 kind:rodata align:4 .data start:0x021993a0 end:0x02199400 kind:data align:32 .bss start:0x02199400 end:0x02199500 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov057/delinks.txt b/config/eur/arm9/overlays/ov057/delinks.txt index 71435e87..a6315de5 100644 --- a/config/eur/arm9/overlays/ov057/delinks.txt +++ b/config/eur/arm9/overlays/ov057/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02198d00 end:0x0219a994 kind:code align:32 - .rodata start:0x0219a994 end:0x0219a9a0 kind:data align:4 + .rodata start:0x0219a994 end:0x0219a9a0 kind:rodata align:4 .init start:0x0219a9a0 end:0x0219aa10 kind:code align:4 - .ctor start:0x0219aa10 end:0x0219aa1c kind:data align:4 + .ctor start:0x0219aa10 end:0x0219aa1c kind:rodata align:4 .data start:0x0219aa20 end:0x0219ab00 kind:data align:32 .bss start:0x0219ab00 end:0x0219ab40 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov058/delinks.txt b/config/eur/arm9/overlays/ov058/delinks.txt index fe87a28e..f53e0902 100644 --- a/config/eur/arm9/overlays/ov058/delinks.txt +++ b/config/eur/arm9/overlays/ov058/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02198d00 end:0x0219ad68 kind:code align:32 - .rodata start:0x0219ad68 end:0x0219ad80 kind:data align:4 + .rodata start:0x0219ad68 end:0x0219ad80 kind:rodata align:4 .init start:0x0219ad80 end:0x0219ae7c kind:code align:4 - .ctor start:0x0219ae7c end:0x0219ae84 kind:data align:4 + .ctor start:0x0219ae7c end:0x0219ae84 kind:rodata align:4 .data start:0x0219aea0 end:0x0219afc0 kind:data align:32 .bss start:0x0219afc0 end:0x0219b120 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov059/delinks.txt b/config/eur/arm9/overlays/ov059/delinks.txt index 4554202b..ff7e5c38 100644 --- a/config/eur/arm9/overlays/ov059/delinks.txt +++ b/config/eur/arm9/overlays/ov059/delinks.txt @@ -1,6 +1,6 @@ .text start:0x02198d00 end:0x0219b110 kind:code align:32 - .rodata start:0x0219b110 end:0x0219b124 kind:data align:4 - .ctor start:0x0219b124 end:0x0219b128 kind:data align:4 + .rodata start:0x0219b110 end:0x0219b124 kind:rodata align:4 + .ctor start:0x0219b124 end:0x0219b128 kind:rodata align:4 .data start:0x0219b140 end:0x0219b1c0 kind:data align:32 .bss start:0x0219b1c0 end:0x0219b1c0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov060/delinks.txt b/config/eur/arm9/overlays/ov060/delinks.txt index 6b3ab4cc..ffeee978 100644 --- a/config/eur/arm9/overlays/ov060/delinks.txt +++ b/config/eur/arm9/overlays/ov060/delinks.txt @@ -1,6 +1,6 @@ .text start:0x0213dec0 end:0x021476b8 kind:code align:32 - .rodata start:0x021476b8 end:0x021476ec kind:data align:4 - .ctor start:0x021476ec end:0x021476f0 kind:data align:4 + .rodata start:0x021476b8 end:0x021476ec kind:rodata align:4 + .ctor start:0x021476ec end:0x021476f0 kind:rodata align:4 .data start:0x02147700 end:0x021477e0 kind:data align:32 .bss start:0x021477e0 end:0x021485a0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov061/delinks.txt b/config/eur/arm9/overlays/ov061/delinks.txt index ee44ae97..8903a646 100644 --- a/config/eur/arm9/overlays/ov061/delinks.txt +++ b/config/eur/arm9/overlays/ov061/delinks.txt @@ -1,6 +1,6 @@ .text start:0x0213dec0 end:0x0217a210 kind:code align:32 - .rodata start:0x0217a210 end:0x0217a608 kind:data align:4 - .ctor start:0x0217a608 end:0x0217a60c kind:data align:4 + .rodata start:0x0217a210 end:0x0217a608 kind:rodata align:4 + .ctor start:0x0217a608 end:0x0217a60c kind:rodata align:4 .data start:0x0217a620 end:0x0217ea20 kind:data align:32 .bss start:0x0217ea20 end:0x021819e0 kind:bss align:32 diff --git a/config/usa/arm9/delinks.txt b/config/usa/arm9/delinks.txt index 14d31538..d3ab3589 100644 --- a/config/usa/arm9/delinks.txt +++ b/config/usa/arm9/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02000000 end:0x02050c5c kind:code align:32 .init start:0x02050c5c end:0x02050f10 kind:code align:4 - .rodata start:0x02050f10 end:0x02057214 kind:data align:4 - .ctor start:0x02057214 end:0x0205727c kind:data align:4 + .rodata start:0x02050f10 end:0x02057214 kind:rodata align:4 + .ctor start:0x02057214 end:0x0205727c kind:rodata align:4 .data start:0x02057280 end:0x02058dc0 kind:data align:32 .bss start:0x02058dc0 end:0x02077360 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov000/delinks.txt b/config/usa/arm9/overlays/ov000/delinks.txt index 356452b7..15a58b97 100644 --- a/config/usa/arm9/overlays/ov000/delinks.txt +++ b/config/usa/arm9/overlays/ov000/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02077360 end:0x020d8710 kind:code align:32 - .rodata start:0x020d8710 end:0x020df2d8 kind:data align:4 + .rodata start:0x020d8710 end:0x020df2d8 kind:rodata align:4 .init start:0x020df2d8 end:0x020e1e28 kind:code align:4 - .ctor start:0x020e1e28 end:0x020e1f0c kind:data align:4 + .ctor start:0x020e1e28 end:0x020e1f0c kind:rodata align:4 .data start:0x020e1f20 end:0x020e92c0 kind:data align:32 .bss start:0x020e92c0 end:0x020ec718 kind:bss align:32 .sbss start:0x020ec718 end:0x020eece0 kind:bss align:4 diff --git a/config/usa/arm9/overlays/ov001/delinks.txt b/config/usa/arm9/overlays/ov001/delinks.txt index 24709b61..12545356 100644 --- a/config/usa/arm9/overlays/ov001/delinks.txt +++ b/config/usa/arm9/overlays/ov001/delinks.txt @@ -1,6 +1,6 @@ .text start:0x020eece0 end:0x020f8654 kind:code align:32 - .rodata start:0x020f8654 end:0x020f8894 kind:data align:4 - .ctor start:0x020f8894 end:0x020f8898 kind:data align:4 + .rodata start:0x020f8654 end:0x020f8894 kind:rodata align:4 + .ctor start:0x020f8894 end:0x020f8898 kind:rodata align:4 .data start:0x020f88a0 end:0x020f8b00 kind:data align:32 .bss start:0x020f8b00 end:0x020ff140 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov002/delinks.txt b/config/usa/arm9/overlays/ov002/delinks.txt index 539058e7..bb08ad8c 100644 --- a/config/usa/arm9/overlays/ov002/delinks.txt +++ b/config/usa/arm9/overlays/ov002/delinks.txt @@ -1,7 +1,7 @@ .text start:0x020eece0 end:0x020f66cc kind:code align:32 - .rodata start:0x020f66cc end:0x020f6918 kind:data align:4 + .rodata start:0x020f66cc end:0x020f6918 kind:rodata align:4 .init start:0x020f6918 end:0x020f6944 kind:code align:4 - .ctor start:0x020f6944 end:0x020f694c kind:data align:4 + .ctor start:0x020f6944 end:0x020f694c kind:rodata align:4 .data start:0x020f6960 end:0x020f7100 kind:data align:32 .bss start:0x020f7100 end:0x02100120 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov003/delinks.txt b/config/usa/arm9/overlays/ov003/delinks.txt index fc653fb6..a19cf6ed 100644 --- a/config/usa/arm9/overlays/ov003/delinks.txt +++ b/config/usa/arm9/overlays/ov003/delinks.txt @@ -1,7 +1,7 @@ .text start:0x020eece0 end:0x020fc3c8 kind:code align:32 - .rodata start:0x020fc3c8 end:0x020ffd9c kind:data align:4 + .rodata start:0x020fc3c8 end:0x020ffd9c kind:rodata align:4 .init start:0x020ffd9c end:0x020fff40 kind:code align:4 - .ctor start:0x020fff40 end:0x020fff68 kind:data align:4 + .ctor start:0x020fff40 end:0x020fff68 kind:rodata align:4 .data start:0x020fff80 end:0x02100a00 kind:data align:32 .bss start:0x02100a00 end:0x02100a60 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov004/delinks.txt b/config/usa/arm9/overlays/ov004/delinks.txt index 4d0af9ea..70de7a14 100644 --- a/config/usa/arm9/overlays/ov004/delinks.txt +++ b/config/usa/arm9/overlays/ov004/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02100a60 end:0x0210f7a4 kind:code align:32 - .rodata start:0x0210f7a4 end:0x0210fcd8 kind:data align:4 + .rodata start:0x0210f7a4 end:0x0210fcd8 kind:rodata align:4 .init start:0x0210fcd8 end:0x0210fd10 kind:code align:4 - .ctor start:0x0210fd10 end:0x0210fd1c kind:data align:4 + .ctor start:0x0210fd10 end:0x0210fd1c kind:rodata align:4 .data start:0x0210fd20 end:0x02111360 kind:data align:32 .bss start:0x02111360 end:0x02111360 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov005/delinks.txt b/config/usa/arm9/overlays/ov005/delinks.txt index 6183b59c..54366dda 100644 --- a/config/usa/arm9/overlays/ov005/delinks.txt +++ b/config/usa/arm9/overlays/ov005/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02100a60 end:0x02112220 kind:code align:32 - .rodata start:0x02112220 end:0x0211233c kind:data align:4 + .rodata start:0x02112220 end:0x0211233c kind:rodata align:4 .init start:0x0211233c end:0x021123e4 kind:code align:4 - .ctor start:0x021123e4 end:0x021123f8 kind:data align:4 + .ctor start:0x021123e4 end:0x021123f8 kind:rodata align:4 .data start:0x02112400 end:0x02112ba0 kind:data align:32 .bss start:0x02112ba0 end:0x02112ba0 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov006/delinks.txt b/config/usa/arm9/overlays/ov006/delinks.txt index ac21294c..09230c08 100644 --- a/config/usa/arm9/overlays/ov006/delinks.txt +++ b/config/usa/arm9/overlays/ov006/delinks.txt @@ -1,6 +1,6 @@ .text start:0x02100a60 end:0x02102f7c kind:code align:32 - .rodata start:0x02102f7c end:0x0210392c kind:data align:4 - .ctor start:0x0210392c end:0x02103930 kind:data align:4 + .rodata start:0x02102f7c end:0x0210392c kind:rodata align:4 + .ctor start:0x0210392c end:0x02103930 kind:rodata align:4 .data start:0x02103940 end:0x02103f80 kind:data align:32 .bss start:0x02103f80 end:0x02103fa0 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov007/delinks.txt b/config/usa/arm9/overlays/ov007/delinks.txt index 53c6f3e7..3b0f2764 100644 --- a/config/usa/arm9/overlays/ov007/delinks.txt +++ b/config/usa/arm9/overlays/ov007/delinks.txt @@ -1,6 +1,6 @@ .text start:0x02100a60 end:0x02102848 kind:code align:32 - .rodata start:0x02102848 end:0x021028b8 kind:data align:4 - .ctor start:0x021028b8 end:0x021028bc kind:data align:4 + .rodata start:0x02102848 end:0x021028b8 kind:rodata align:4 + .ctor start:0x021028b8 end:0x021028bc kind:rodata align:4 .data start:0x021028c0 end:0x02102a20 kind:data align:32 .bss start:0x02102a20 end:0x0210eac0 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov008/delinks.txt b/config/usa/arm9/overlays/ov008/delinks.txt index 9ab2fc95..2dcabb64 100644 --- a/config/usa/arm9/overlays/ov008/delinks.txt +++ b/config/usa/arm9/overlays/ov008/delinks.txt @@ -1,5 +1,5 @@ .text start:0x02112ba0 end:0x02113a74 kind:code align:32 - .ctor start:0x02113a74 end:0x02113a78 kind:data align:4 + .ctor start:0x02113a74 end:0x02113a78 kind:rodata align:4 .data start:0x02113a80 end:0x02113b00 kind:data align:32 .bss start:0x02113b00 end:0x02113b00 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov009/delinks.txt b/config/usa/arm9/overlays/ov009/delinks.txt index 96d38eb9..0c4bafd7 100644 --- a/config/usa/arm9/overlays/ov009/delinks.txt +++ b/config/usa/arm9/overlays/ov009/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02112ba0 end:0x0211d90c kind:code align:32 - .rodata start:0x0211d90c end:0x0211e424 kind:data align:4 + .rodata start:0x0211d90c end:0x0211e424 kind:rodata align:4 .init start:0x0211e424 end:0x0211e5e0 kind:code align:4 - .ctor start:0x0211e5e0 end:0x0211e600 kind:data align:4 + .ctor start:0x0211e5e0 end:0x0211e600 kind:rodata align:4 .data start:0x0211e600 end:0x0211f4a0 kind:data align:32 .bss start:0x0211f4a0 end:0x0211f5c0 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov010/delinks.txt b/config/usa/arm9/overlays/ov010/delinks.txt index 6b71d392..f715f316 100644 --- a/config/usa/arm9/overlays/ov010/delinks.txt +++ b/config/usa/arm9/overlays/ov010/delinks.txt @@ -1,6 +1,6 @@ .text start:0x02112ba0 end:0x0211e6d0 kind:code align:32 - .rodata start:0x0211e6d0 end:0x0211e998 kind:data align:4 - .ctor start:0x0211e998 end:0x0211e99c kind:data align:4 + .rodata start:0x0211e6d0 end:0x0211e998 kind:rodata align:4 + .ctor start:0x0211e998 end:0x0211e99c kind:rodata align:4 .data start:0x0211e9a0 end:0x0211f380 kind:data align:32 .bss start:0x0211f380 end:0x0211f3e0 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov011/delinks.txt b/config/usa/arm9/overlays/ov011/delinks.txt index 6a3b17a5..3d3d51db 100644 --- a/config/usa/arm9/overlays/ov011/delinks.txt +++ b/config/usa/arm9/overlays/ov011/delinks.txt @@ -1,6 +1,6 @@ .text start:0x02112ba0 end:0x0212b98c kind:code align:32 - .rodata start:0x0212b98c end:0x0212ec80 kind:data align:4 - .ctor start:0x0212ec80 end:0x0212ec84 kind:data align:4 + .rodata start:0x0212b98c end:0x0212ec80 kind:rodata align:4 + .ctor start:0x0212ec80 end:0x0212ec84 kind:rodata align:4 .data start:0x0212eca0 end:0x021307a0 kind:data align:32 .bss start:0x021307a0 end:0x02132e60 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov012/delinks.txt b/config/usa/arm9/overlays/ov012/delinks.txt index c056e809..42eb8bf6 100644 --- a/config/usa/arm9/overlays/ov012/delinks.txt +++ b/config/usa/arm9/overlays/ov012/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02112ba0 end:0x0213442c kind:code align:32 - .rodata start:0x0213442c end:0x0213544c kind:data align:4 + .rodata start:0x0213442c end:0x0213544c kind:rodata align:4 .init start:0x0213544c end:0x02135874 kind:code align:4 - .ctor start:0x02135874 end:0x021358a0 kind:data align:4 + .ctor start:0x02135874 end:0x021358a0 kind:rodata align:4 .data start:0x021358a0 end:0x02137be0 kind:data align:32 .bss start:0x02137be0 end:0x0213de40 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov013/delinks.txt b/config/usa/arm9/overlays/ov013/delinks.txt index ac1c6866..47b516c9 100644 --- a/config/usa/arm9/overlays/ov013/delinks.txt +++ b/config/usa/arm9/overlays/ov013/delinks.txt @@ -1,6 +1,6 @@ .text start:0x02112ba0 end:0x02115f84 kind:code align:32 - .rodata start:0x02115f84 end:0x0211606c kind:data align:4 - .ctor start:0x0211606c end:0x02116074 kind:data align:4 + .rodata start:0x02115f84 end:0x0211606c kind:rodata align:4 + .ctor start:0x0211606c end:0x02116074 kind:rodata align:4 .data start:0x02116080 end:0x02116180 kind:data align:32 .bss start:0x02116180 end:0x02116320 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov014/delinks.txt b/config/usa/arm9/overlays/ov014/delinks.txt index 744a0f4e..c0472e4a 100644 --- a/config/usa/arm9/overlays/ov014/delinks.txt +++ b/config/usa/arm9/overlays/ov014/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0211f5c0 end:0x02153aac kind:code align:32 - .rodata start:0x02153aac end:0x02154148 kind:data align:4 + .rodata start:0x02153aac end:0x02154148 kind:rodata align:4 .init start:0x02154148 end:0x021557a8 kind:code align:4 - .ctor start:0x021557a8 end:0x021558e8 kind:data align:4 + .ctor start:0x021557a8 end:0x021558e8 kind:rodata align:4 .data start:0x02155900 end:0x0215ab20 kind:data align:32 .bss start:0x0215ab20 end:0x0215b400 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov015/delinks.txt b/config/usa/arm9/overlays/ov015/delinks.txt index 615e2e60..29a20f05 100644 --- a/config/usa/arm9/overlays/ov015/delinks.txt +++ b/config/usa/arm9/overlays/ov015/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0211f5c0 end:0x02185a9c kind:code align:32 - .rodata start:0x02185a9c end:0x02187304 kind:data align:4 + .rodata start:0x02185a9c end:0x02187304 kind:rodata align:4 .init start:0x02187304 end:0x02189250 kind:code align:4 - .ctor start:0x02189250 end:0x021893a0 kind:data align:4 + .ctor start:0x02189250 end:0x021893a0 kind:rodata align:4 .data start:0x021893a0 end:0x0218eb60 kind:data align:32 .bss start:0x0218eb60 end:0x02190420 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov016/delinks.txt b/config/usa/arm9/overlays/ov016/delinks.txt index 92145fbe..9eb4dec8 100644 --- a/config/usa/arm9/overlays/ov016/delinks.txt +++ b/config/usa/arm9/overlays/ov016/delinks.txt @@ -1,6 +1,6 @@ .text start:0x0211f5c0 end:0x021200b4 kind:code align:32 - .rodata start:0x021200b4 end:0x021200d0 kind:data align:4 - .ctor start:0x021200d0 end:0x021200d4 kind:data align:4 + .rodata start:0x021200b4 end:0x021200d0 kind:rodata align:4 + .ctor start:0x021200d0 end:0x021200d4 kind:rodata align:4 .data start:0x021200e0 end:0x02120120 kind:data align:32 .bss start:0x02120120 end:0x02120120 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov017/delinks.txt b/config/usa/arm9/overlays/ov017/delinks.txt index f83b6084..639891ca 100644 --- a/config/usa/arm9/overlays/ov017/delinks.txt +++ b/config/usa/arm9/overlays/ov017/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0215b400 end:0x0216aff8 kind:code align:32 - .rodata start:0x0216aff8 end:0x0216b224 kind:data align:4 + .rodata start:0x0216aff8 end:0x0216b224 kind:rodata align:4 .init start:0x0216b224 end:0x0216b8c4 kind:code align:4 - .ctor start:0x0216b8c4 end:0x0216b934 kind:data align:4 + .ctor start:0x0216b8c4 end:0x0216b934 kind:rodata align:4 .data start:0x0216b940 end:0x0216ce00 kind:data align:32 .bss start:0x0216ce00 end:0x0216d080 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov018/delinks.txt b/config/usa/arm9/overlays/ov018/delinks.txt index fe52c01c..31547a43 100644 --- a/config/usa/arm9/overlays/ov018/delinks.txt +++ b/config/usa/arm9/overlays/ov018/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0215b400 end:0x0216b38c kind:code align:32 - .rodata start:0x0216b38c end:0x0216b6e0 kind:data align:4 + .rodata start:0x0216b38c end:0x0216b6e0 kind:rodata align:4 .init start:0x0216b6e0 end:0x0216bfac kind:code align:4 - .ctor start:0x0216bfac end:0x0216c00c kind:data align:4 + .ctor start:0x0216bfac end:0x0216c00c kind:rodata align:4 .data start:0x0216c020 end:0x0216d3a0 kind:data align:32 .bss start:0x0216d3a0 end:0x0216d600 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov019/delinks.txt b/config/usa/arm9/overlays/ov019/delinks.txt index ae33a171..130697bc 100644 --- a/config/usa/arm9/overlays/ov019/delinks.txt +++ b/config/usa/arm9/overlays/ov019/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0216d600 end:0x02175bb0 kind:code align:32 - .rodata start:0x02175bb0 end:0x02175e64 kind:data align:4 + .rodata start:0x02175bb0 end:0x02175e64 kind:rodata align:4 .init start:0x02175e64 end:0x02176234 kind:code align:4 - .ctor start:0x02176234 end:0x0217625c kind:data align:4 + .ctor start:0x02176234 end:0x0217625c kind:rodata align:4 .data start:0x02176260 end:0x02176de0 kind:data align:32 .bss start:0x02176de0 end:0x021775e0 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov020/delinks.txt b/config/usa/arm9/overlays/ov020/delinks.txt index 1bb412ab..4c659bc5 100644 --- a/config/usa/arm9/overlays/ov020/delinks.txt +++ b/config/usa/arm9/overlays/ov020/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0216d600 end:0x021777c8 kind:code align:32 - .rodata start:0x021777c8 end:0x02177a54 kind:data align:4 + .rodata start:0x021777c8 end:0x02177a54 kind:rodata align:4 .init start:0x02177a54 end:0x021781f8 kind:code align:4 - .ctor start:0x021781f8 end:0x02178240 kind:data align:4 + .ctor start:0x021781f8 end:0x02178240 kind:rodata align:4 .data start:0x02178240 end:0x02179460 kind:data align:32 .bss start:0x02179460 end:0x021796a0 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov021/delinks.txt b/config/usa/arm9/overlays/ov021/delinks.txt index f309a1f4..e5d6d72e 100644 --- a/config/usa/arm9/overlays/ov021/delinks.txt +++ b/config/usa/arm9/overlays/ov021/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0216d600 end:0x02170b34 kind:code align:32 - .rodata start:0x02170b34 end:0x02170c4c kind:data align:4 + .rodata start:0x02170b34 end:0x02170c4c kind:rodata align:4 .init start:0x02170c4c end:0x02170ec4 kind:code align:4 - .ctor start:0x02170ec4 end:0x02170ee4 kind:data align:4 + .ctor start:0x02170ec4 end:0x02170ee4 kind:rodata align:4 .data start:0x02170f00 end:0x02171a40 kind:data align:32 .bss start:0x02171a40 end:0x02171c20 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov022/delinks.txt b/config/usa/arm9/overlays/ov022/delinks.txt index 459a705a..9d1dd8ac 100644 --- a/config/usa/arm9/overlays/ov022/delinks.txt +++ b/config/usa/arm9/overlays/ov022/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0216d600 end:0x02178518 kind:code align:32 - .rodata start:0x02178518 end:0x02178928 kind:data align:4 + .rodata start:0x02178518 end:0x02178928 kind:rodata align:4 .init start:0x02178928 end:0x02178f54 kind:code align:4 - .ctor start:0x02178f54 end:0x02178f9c kind:data align:4 + .ctor start:0x02178f54 end:0x02178f9c kind:rodata align:4 .data start:0x02178fa0 end:0x0217a360 kind:data align:32 .bss start:0x0217a360 end:0x0217a5a0 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov023/delinks.txt b/config/usa/arm9/overlays/ov023/delinks.txt index fe652033..fccccda0 100644 --- a/config/usa/arm9/overlays/ov023/delinks.txt +++ b/config/usa/arm9/overlays/ov023/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0216d600 end:0x02178f90 kind:code align:32 - .rodata start:0x02178f90 end:0x021795f8 kind:data align:4 + .rodata start:0x02178f90 end:0x021795f8 kind:rodata align:4 .init start:0x021795f8 end:0x02179c40 kind:code align:4 - .ctor start:0x02179c40 end:0x02179c78 kind:data align:4 + .ctor start:0x02179c40 end:0x02179c78 kind:rodata align:4 .data start:0x02179c80 end:0x0217aac0 kind:data align:32 .bss start:0x0217aac0 end:0x0217ace0 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov024/delinks.txt b/config/usa/arm9/overlays/ov024/delinks.txt index d4a712de..4e11395e 100644 --- a/config/usa/arm9/overlays/ov024/delinks.txt +++ b/config/usa/arm9/overlays/ov024/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0216d600 end:0x02179134 kind:code align:32 - .rodata start:0x02179134 end:0x02179530 kind:data align:4 + .rodata start:0x02179134 end:0x02179530 kind:rodata align:4 .init start:0x02179530 end:0x02179d7c kind:code align:4 - .ctor start:0x02179d7c end:0x02179dbc kind:data align:4 + .ctor start:0x02179d7c end:0x02179dbc kind:rodata align:4 .data start:0x02179dc0 end:0x0217aec0 kind:data align:32 .bss start:0x0217aec0 end:0x0217b0c0 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov025/delinks.txt b/config/usa/arm9/overlays/ov025/delinks.txt index e367a3e8..e0aac9bd 100644 --- a/config/usa/arm9/overlays/ov025/delinks.txt +++ b/config/usa/arm9/overlays/ov025/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0216d600 end:0x0217929c kind:code align:32 - .rodata start:0x0217929c end:0x021795e0 kind:data align:4 + .rodata start:0x0217929c end:0x021795e0 kind:rodata align:4 .init start:0x021795e0 end:0x02179af8 kind:code align:4 - .ctor start:0x02179af8 end:0x02179b28 kind:data align:4 + .ctor start:0x02179af8 end:0x02179b28 kind:rodata align:4 .data start:0x02179b40 end:0x0217a7e0 kind:data align:32 .bss start:0x0217a7e0 end:0x0217a980 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov026/delinks.txt b/config/usa/arm9/overlays/ov026/delinks.txt index 3ab32f34..f8a4ba5e 100644 --- a/config/usa/arm9/overlays/ov026/delinks.txt +++ b/config/usa/arm9/overlays/ov026/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0216d600 end:0x021791c0 kind:code align:32 - .rodata start:0x021791c0 end:0x0217973c kind:data align:4 + .rodata start:0x021791c0 end:0x0217973c kind:rodata align:4 .init start:0x0217973c end:0x02179f80 kind:code align:4 - .ctor start:0x02179f80 end:0x02179fc0 kind:data align:4 + .ctor start:0x02179f80 end:0x02179fc0 kind:rodata align:4 .data start:0x02179fc0 end:0x0217b220 kind:data align:32 .bss start:0x0217b220 end:0x0217b520 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov027/delinks.txt b/config/usa/arm9/overlays/ov027/delinks.txt index 8d117180..8e317728 100644 --- a/config/usa/arm9/overlays/ov027/delinks.txt +++ b/config/usa/arm9/overlays/ov027/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0216d600 end:0x02178c5c kind:code align:32 - .rodata start:0x02178c5c end:0x0217909c kind:data align:4 + .rodata start:0x02178c5c end:0x0217909c kind:rodata align:4 .init start:0x0217909c end:0x021793d4 kind:code align:4 - .ctor start:0x021793d4 end:0x021793f8 kind:data align:4 + .ctor start:0x021793d4 end:0x021793f8 kind:rodata align:4 .data start:0x02179400 end:0x0217a020 kind:data align:32 .bss start:0x0217a020 end:0x0217a120 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov028/delinks.txt b/config/usa/arm9/overlays/ov028/delinks.txt index dfc678ce..100044c6 100644 --- a/config/usa/arm9/overlays/ov028/delinks.txt +++ b/config/usa/arm9/overlays/ov028/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0216d600 end:0x02177fdc kind:code align:32 - .rodata start:0x02177fdc end:0x02178464 kind:data align:4 + .rodata start:0x02177fdc end:0x02178464 kind:rodata align:4 .init start:0x02178464 end:0x021787f4 kind:code align:4 - .ctor start:0x021787f4 end:0x02178828 kind:data align:4 + .ctor start:0x021787f4 end:0x02178828 kind:rodata align:4 .data start:0x02178840 end:0x02179a60 kind:data align:32 .bss start:0x02179a60 end:0x02179c40 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov029/delinks.txt b/config/usa/arm9/overlays/ov029/delinks.txt index 54da6f6c..e72660a5 100644 --- a/config/usa/arm9/overlays/ov029/delinks.txt +++ b/config/usa/arm9/overlays/ov029/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0216d600 end:0x021791f8 kind:code align:32 - .rodata start:0x021791f8 end:0x02179410 kind:data align:4 + .rodata start:0x021791f8 end:0x02179410 kind:rodata align:4 .init start:0x02179410 end:0x02179784 kind:code align:4 - .ctor start:0x02179784 end:0x021797bc kind:data align:4 + .ctor start:0x02179784 end:0x021797bc kind:rodata align:4 .data start:0x021797c0 end:0x0217a400 kind:data align:32 .bss start:0x0217a400 end:0x0217bce0 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov030/delinks.txt b/config/usa/arm9/overlays/ov030/delinks.txt index 779c0b53..9319f307 100644 --- a/config/usa/arm9/overlays/ov030/delinks.txt +++ b/config/usa/arm9/overlays/ov030/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0217bce0 end:0x02188534 kind:code align:32 - .rodata start:0x02188534 end:0x02188784 kind:data align:4 + .rodata start:0x02188534 end:0x02188784 kind:rodata align:4 .init start:0x02188784 end:0x0218898c kind:code align:4 - .ctor start:0x0218898c end:0x02188998 kind:data align:4 + .ctor start:0x0218898c end:0x02188998 kind:rodata align:4 .data start:0x021889a0 end:0x02189400 kind:data align:32 .bss start:0x02189400 end:0x021894c0 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov031/delinks.txt b/config/usa/arm9/overlays/ov031/delinks.txt index f2a4b933..525b38b1 100644 --- a/config/usa/arm9/overlays/ov031/delinks.txt +++ b/config/usa/arm9/overlays/ov031/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0217bce0 end:0x02181800 kind:code align:32 - .rodata start:0x02181800 end:0x02181acc kind:data align:4 + .rodata start:0x02181800 end:0x02181acc kind:rodata align:4 .init start:0x02181acc end:0x02181fe0 kind:code align:4 - .ctor start:0x02181fe0 end:0x02181ff4 kind:data align:4 + .ctor start:0x02181fe0 end:0x02181ff4 kind:rodata align:4 .data start:0x02182000 end:0x02183de0 kind:data align:32 .bss start:0x02183de0 end:0x02184160 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov032/delinks.txt b/config/usa/arm9/overlays/ov032/delinks.txt index a93059a7..198ebf1e 100644 --- a/config/usa/arm9/overlays/ov032/delinks.txt +++ b/config/usa/arm9/overlays/ov032/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0217bce0 end:0x02184b08 kind:code align:32 - .rodata start:0x02184b08 end:0x02184c9c kind:data align:4 + .rodata start:0x02184b08 end:0x02184c9c kind:rodata align:4 .init start:0x02184c9c end:0x02185328 kind:code align:4 - .ctor start:0x02185328 end:0x0218534c kind:data align:4 + .ctor start:0x02185328 end:0x0218534c kind:rodata align:4 .data start:0x02185360 end:0x02186140 kind:data align:32 .bss start:0x02186140 end:0x02186280 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov033/delinks.txt b/config/usa/arm9/overlays/ov033/delinks.txt index 287e400c..7e5a59a7 100644 --- a/config/usa/arm9/overlays/ov033/delinks.txt +++ b/config/usa/arm9/overlays/ov033/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0217bce0 end:0x0217fa2c kind:code align:32 - .rodata start:0x0217fa2c end:0x0217faf0 kind:data align:4 + .rodata start:0x0217fa2c end:0x0217faf0 kind:rodata align:4 .init start:0x0217faf0 end:0x0217fdf4 kind:code align:4 - .ctor start:0x0217fdf4 end:0x0217fe0c kind:data align:4 + .ctor start:0x0217fdf4 end:0x0217fe0c kind:rodata align:4 .data start:0x0217fe20 end:0x021804e0 kind:data align:32 .bss start:0x021804e0 end:0x021805a0 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov034/delinks.txt b/config/usa/arm9/overlays/ov034/delinks.txt index 6e5e7169..173a34b0 100644 --- a/config/usa/arm9/overlays/ov034/delinks.txt +++ b/config/usa/arm9/overlays/ov034/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0217bce0 end:0x021856a0 kind:code align:32 - .rodata start:0x021856a0 end:0x02185778 kind:data align:4 + .rodata start:0x021856a0 end:0x02185778 kind:rodata align:4 .init start:0x02185778 end:0x021859c4 kind:code align:4 - .ctor start:0x021859c4 end:0x021859d4 kind:data align:4 + .ctor start:0x021859c4 end:0x021859d4 kind:rodata align:4 .data start:0x021859e0 end:0x02186100 kind:data align:32 .bss start:0x02186100 end:0x02186320 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov035/delinks.txt b/config/usa/arm9/overlays/ov035/delinks.txt index c34458f0..38d572bf 100644 --- a/config/usa/arm9/overlays/ov035/delinks.txt +++ b/config/usa/arm9/overlays/ov035/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0217bce0 end:0x0218508c kind:code align:32 - .rodata start:0x0218508c end:0x021855c8 kind:data align:4 + .rodata start:0x0218508c end:0x021855c8 kind:rodata align:4 .init start:0x021855c8 end:0x02185860 kind:code align:4 - .ctor start:0x02185860 end:0x02185874 kind:data align:4 + .ctor start:0x02185860 end:0x02185874 kind:rodata align:4 .data start:0x02185880 end:0x02185e20 kind:data align:32 .bss start:0x02185e20 end:0x02186f80 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov036/delinks.txt b/config/usa/arm9/overlays/ov036/delinks.txt index 7a26caf3..59ce0b05 100644 --- a/config/usa/arm9/overlays/ov036/delinks.txt +++ b/config/usa/arm9/overlays/ov036/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0217bce0 end:0x021865f8 kind:code align:32 - .rodata start:0x021865f8 end:0x02186b14 kind:data align:4 + .rodata start:0x021865f8 end:0x02186b14 kind:rodata align:4 .init start:0x02186b14 end:0x02186b94 kind:code align:4 - .ctor start:0x02186b94 end:0x02186ba0 kind:data align:4 + .ctor start:0x02186b94 end:0x02186ba0 kind:rodata align:4 .data start:0x02186ba0 end:0x02186f00 kind:data align:32 .bss start:0x02186f00 end:0x02186f40 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov037/delinks.txt b/config/usa/arm9/overlays/ov037/delinks.txt index f21a1cd1..41bbe760 100644 --- a/config/usa/arm9/overlays/ov037/delinks.txt +++ b/config/usa/arm9/overlays/ov037/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0217bce0 end:0x02187d28 kind:code align:32 - .rodata start:0x02187d28 end:0x021885f0 kind:data align:4 + .rodata start:0x02187d28 end:0x021885f0 kind:rodata align:4 .init start:0x021885f0 end:0x02188914 kind:code align:4 - .ctor start:0x02188914 end:0x0218892c kind:data align:4 + .ctor start:0x02188914 end:0x0218892c kind:rodata align:4 .data start:0x02188940 end:0x021890c0 kind:data align:32 .bss start:0x021890c0 end:0x021891a0 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov038/delinks.txt b/config/usa/arm9/overlays/ov038/delinks.txt index cbee1e6a..4a6f1167 100644 --- a/config/usa/arm9/overlays/ov038/delinks.txt +++ b/config/usa/arm9/overlays/ov038/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0217bce0 end:0x02188868 kind:code align:32 - .rodata start:0x02188868 end:0x02188a44 kind:data align:4 + .rodata start:0x02188868 end:0x02188a44 kind:rodata align:4 .init start:0x02188a44 end:0x02188bc0 kind:code align:4 - .ctor start:0x02188bc0 end:0x02188bcc kind:data align:4 + .ctor start:0x02188bc0 end:0x02188bcc kind:rodata align:4 .data start:0x02188be0 end:0x02189140 kind:data align:32 .bss start:0x02189140 end:0x02189400 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov039/delinks.txt b/config/usa/arm9/overlays/ov039/delinks.txt index cb44cebd..247c76cf 100644 --- a/config/usa/arm9/overlays/ov039/delinks.txt +++ b/config/usa/arm9/overlays/ov039/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0217bce0 end:0x02186084 kind:code align:32 - .rodata start:0x02186084 end:0x021868c8 kind:data align:4 + .rodata start:0x02186084 end:0x021868c8 kind:rodata align:4 .init start:0x021868c8 end:0x0218691c kind:code align:4 - .ctor start:0x0218691c end:0x02186924 kind:data align:4 + .ctor start:0x0218691c end:0x02186924 kind:rodata align:4 .data start:0x02186940 end:0x02186c20 kind:data align:32 .bss start:0x02186c20 end:0x02186c60 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov040/delinks.txt b/config/usa/arm9/overlays/ov040/delinks.txt index 61f0dac7..53cef88b 100644 --- a/config/usa/arm9/overlays/ov040/delinks.txt +++ b/config/usa/arm9/overlays/ov040/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0217bce0 end:0x02187f5c kind:code align:32 - .rodata start:0x02187f5c end:0x021882c0 kind:data align:4 + .rodata start:0x02187f5c end:0x021882c0 kind:rodata align:4 .init start:0x021882c0 end:0x02188594 kind:code align:4 - .ctor start:0x02188594 end:0x021885c0 kind:data align:4 + .ctor start:0x02188594 end:0x021885c0 kind:rodata align:4 .data start:0x021885c0 end:0x02189a40 kind:data align:32 .bss start:0x02189a40 end:0x0219a120 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov041/delinks.txt b/config/usa/arm9/overlays/ov041/delinks.txt index d643a3a0..80f119c9 100644 --- a/config/usa/arm9/overlays/ov041/delinks.txt +++ b/config/usa/arm9/overlays/ov041/delinks.txt @@ -1,7 +1,7 @@ .text start:0x021894c0 end:0x0218de24 kind:code align:32 - .rodata start:0x0218de24 end:0x0218dff8 kind:data align:4 + .rodata start:0x0218de24 end:0x0218dff8 kind:rodata align:4 .init start:0x0218dff8 end:0x0218e26c kind:code align:4 - .ctor start:0x0218e26c end:0x0218e288 kind:data align:4 + .ctor start:0x0218e26c end:0x0218e288 kind:rodata align:4 .data start:0x0218e2a0 end:0x0218e9e0 kind:data align:32 .bss start:0x0218e9e0 end:0x0218eac0 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov042/delinks.txt b/config/usa/arm9/overlays/ov042/delinks.txt index 513b4174..07142e34 100644 --- a/config/usa/arm9/overlays/ov042/delinks.txt +++ b/config/usa/arm9/overlays/ov042/delinks.txt @@ -1,7 +1,7 @@ .text start:0x021894c0 end:0x0218c654 kind:code align:32 - .rodata start:0x0218c654 end:0x0218c6a4 kind:data align:4 + .rodata start:0x0218c654 end:0x0218c6a4 kind:rodata align:4 .init start:0x0218c6a4 end:0x0218c758 kind:code align:4 - .ctor start:0x0218c758 end:0x0218c764 kind:data align:4 + .ctor start:0x0218c758 end:0x0218c764 kind:rodata align:4 .data start:0x0218c780 end:0x0218cc80 kind:data align:32 .bss start:0x0218cc80 end:0x0218cd00 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov043/delinks.txt b/config/usa/arm9/overlays/ov043/delinks.txt index 8abf85b1..4fb4329b 100644 --- a/config/usa/arm9/overlays/ov043/delinks.txt +++ b/config/usa/arm9/overlays/ov043/delinks.txt @@ -1,7 +1,7 @@ .text start:0x021894c0 end:0x0218d2a0 kind:code align:32 - .rodata start:0x0218d2a0 end:0x0218d374 kind:data align:4 + .rodata start:0x0218d2a0 end:0x0218d374 kind:rodata align:4 .init start:0x0218d374 end:0x0218d520 kind:code align:4 - .ctor start:0x0218d520 end:0x0218d52c kind:data align:4 + .ctor start:0x0218d520 end:0x0218d52c kind:rodata align:4 .data start:0x0218d540 end:0x0218da60 kind:data align:32 .bss start:0x0218da60 end:0x0218dae0 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov044/delinks.txt b/config/usa/arm9/overlays/ov044/delinks.txt index 583e6963..c219ce27 100644 --- a/config/usa/arm9/overlays/ov044/delinks.txt +++ b/config/usa/arm9/overlays/ov044/delinks.txt @@ -1,7 +1,7 @@ .text start:0x021894c0 end:0x0218e8e4 kind:code align:32 - .rodata start:0x0218e8e4 end:0x0218e9fc kind:data align:4 + .rodata start:0x0218e8e4 end:0x0218e9fc kind:rodata align:4 .init start:0x0218e9fc end:0x0218f12c kind:code align:4 - .ctor start:0x0218f12c end:0x0218f150 kind:data align:4 + .ctor start:0x0218f12c end:0x0218f150 kind:rodata align:4 .data start:0x0218f160 end:0x0218fe40 kind:data align:32 .bss start:0x0218fe40 end:0x0218ffa0 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov045/delinks.txt b/config/usa/arm9/overlays/ov045/delinks.txt index 9b23c36f..4caa3734 100644 --- a/config/usa/arm9/overlays/ov045/delinks.txt +++ b/config/usa/arm9/overlays/ov045/delinks.txt @@ -1,7 +1,7 @@ .text start:0x021894c0 end:0x0218e1d8 kind:code align:32 - .rodata start:0x0218e1d8 end:0x0218e348 kind:data align:4 + .rodata start:0x0218e1d8 end:0x0218e348 kind:rodata align:4 .init start:0x0218e348 end:0x0218e408 kind:code align:4 - .ctor start:0x0218e408 end:0x0218e418 kind:data align:4 + .ctor start:0x0218e408 end:0x0218e418 kind:rodata align:4 .data start:0x0218e420 end:0x0218ece0 kind:data align:32 .bss start:0x0218ece0 end:0x0218ed60 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov046/delinks.txt b/config/usa/arm9/overlays/ov046/delinks.txt index fe75cf88..58f28a71 100644 --- a/config/usa/arm9/overlays/ov046/delinks.txt +++ b/config/usa/arm9/overlays/ov046/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0218ffa0 end:0x02194254 kind:code align:32 - .rodata start:0x02194254 end:0x0219440c kind:data align:4 + .rodata start:0x02194254 end:0x0219440c kind:rodata align:4 .init start:0x0219440c end:0x0219459c kind:code align:4 - .ctor start:0x0219459c end:0x021945b0 kind:data align:4 + .ctor start:0x0219459c end:0x021945b0 kind:rodata align:4 .data start:0x021945c0 end:0x02194b00 kind:data align:32 .bss start:0x02194b00 end:0x02194c00 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov047/delinks.txt b/config/usa/arm9/overlays/ov047/delinks.txt index 547aa996..522e4e82 100644 --- a/config/usa/arm9/overlays/ov047/delinks.txt +++ b/config/usa/arm9/overlays/ov047/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0218ffa0 end:0x02194150 kind:code align:32 - .rodata start:0x02194150 end:0x02194250 kind:data align:4 + .rodata start:0x02194150 end:0x02194250 kind:rodata align:4 .init start:0x02194250 end:0x02194448 kind:code align:4 - .ctor start:0x02194448 end:0x0219445c kind:data align:4 + .ctor start:0x02194448 end:0x0219445c kind:rodata align:4 .data start:0x02194460 end:0x02194960 kind:data align:32 .bss start:0x02194960 end:0x02194a00 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov048/delinks.txt b/config/usa/arm9/overlays/ov048/delinks.txt index 5543605f..e4997ce2 100644 --- a/config/usa/arm9/overlays/ov048/delinks.txt +++ b/config/usa/arm9/overlays/ov048/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0218ffa0 end:0x021945bc kind:code align:32 - .rodata start:0x021945bc end:0x02194620 kind:data align:4 + .rodata start:0x021945bc end:0x02194620 kind:rodata align:4 .init start:0x02194620 end:0x02194a34 kind:code align:4 - .ctor start:0x02194a34 end:0x02194a50 kind:data align:4 + .ctor start:0x02194a34 end:0x02194a50 kind:rodata align:4 .data start:0x02194a60 end:0x02195360 kind:data align:32 .bss start:0x02195360 end:0x02195460 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov049/delinks.txt b/config/usa/arm9/overlays/ov049/delinks.txt index d91a80f4..850dc935 100644 --- a/config/usa/arm9/overlays/ov049/delinks.txt +++ b/config/usa/arm9/overlays/ov049/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02195460 end:0x02198140 kind:code align:32 - .rodata start:0x02198140 end:0x02198228 kind:data align:4 + .rodata start:0x02198140 end:0x02198228 kind:rodata align:4 .init start:0x02198228 end:0x021983d4 kind:code align:4 - .ctor start:0x021983d4 end:0x021983e4 kind:data align:4 + .ctor start:0x021983d4 end:0x021983e4 kind:rodata align:4 .data start:0x02198400 end:0x02198880 kind:data align:32 .bss start:0x02198880 end:0x02198900 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov050/delinks.txt b/config/usa/arm9/overlays/ov050/delinks.txt index 82f413d7..8a3e5fe9 100644 --- a/config/usa/arm9/overlays/ov050/delinks.txt +++ b/config/usa/arm9/overlays/ov050/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02195460 end:0x0219872c kind:code align:32 - .rodata start:0x0219872c end:0x0219878c kind:data align:4 + .rodata start:0x0219872c end:0x0219878c kind:rodata align:4 .init start:0x0219878c end:0x02198908 kind:code align:4 - .ctor start:0x02198908 end:0x02198914 kind:data align:4 + .ctor start:0x02198908 end:0x02198914 kind:rodata align:4 .data start:0x02198920 end:0x02198c00 kind:data align:32 .bss start:0x02198c00 end:0x02198c60 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov051/delinks.txt b/config/usa/arm9/overlays/ov051/delinks.txt index 78f849f8..92d82868 100644 --- a/config/usa/arm9/overlays/ov051/delinks.txt +++ b/config/usa/arm9/overlays/ov051/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02195460 end:0x021981c8 kind:code align:32 - .rodata start:0x021981c8 end:0x02198200 kind:data align:4 + .rodata start:0x021981c8 end:0x02198200 kind:rodata align:4 .init start:0x02198200 end:0x02198410 kind:code align:4 - .ctor start:0x02198410 end:0x02198428 kind:data align:4 + .ctor start:0x02198410 end:0x02198428 kind:rodata align:4 .data start:0x02198440 end:0x021989c0 kind:data align:32 .bss start:0x021989c0 end:0x02198a80 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov052/delinks.txt b/config/usa/arm9/overlays/ov052/delinks.txt index 80cbd4fb..29cd027a 100644 --- a/config/usa/arm9/overlays/ov052/delinks.txt +++ b/config/usa/arm9/overlays/ov052/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02195460 end:0x021977e8 kind:code align:32 - .rodata start:0x021977e8 end:0x02197834 kind:data align:4 + .rodata start:0x021977e8 end:0x02197834 kind:rodata align:4 .init start:0x02197834 end:0x021978b4 kind:code align:4 - .ctor start:0x021978b4 end:0x021978c0 kind:data align:4 + .ctor start:0x021978b4 end:0x021978c0 kind:rodata align:4 .data start:0x021978c0 end:0x02197ba0 kind:data align:32 .bss start:0x02197ba0 end:0x02197c00 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov053/delinks.txt b/config/usa/arm9/overlays/ov053/delinks.txt index 3101bdcd..8573e183 100644 --- a/config/usa/arm9/overlays/ov053/delinks.txt +++ b/config/usa/arm9/overlays/ov053/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02198c60 end:0x02199f18 kind:code align:32 - .rodata start:0x02199f18 end:0x02199f24 kind:data align:4 + .rodata start:0x02199f18 end:0x02199f24 kind:rodata align:4 .init start:0x02199f24 end:0x02199fd0 kind:code align:4 - .ctor start:0x02199fd0 end:0x02199fd8 kind:data align:4 + .ctor start:0x02199fd0 end:0x02199fd8 kind:rodata align:4 .data start:0x02199fe0 end:0x0219a0e0 kind:data align:32 .bss start:0x0219a0e0 end:0x0219a600 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov054/delinks.txt b/config/usa/arm9/overlays/ov054/delinks.txt index 46bcf150..7c33369b 100644 --- a/config/usa/arm9/overlays/ov054/delinks.txt +++ b/config/usa/arm9/overlays/ov054/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02198c60 end:0x02199874 kind:code align:32 - .rodata start:0x02199874 end:0x02199884 kind:data align:4 + .rodata start:0x02199874 end:0x02199884 kind:rodata align:4 .init start:0x02199884 end:0x021998b4 kind:code align:4 - .ctor start:0x021998b4 end:0x021998bc kind:data align:4 + .ctor start:0x021998b4 end:0x021998bc kind:rodata align:4 .data start:0x021998c0 end:0x02199980 kind:data align:32 .bss start:0x02199980 end:0x02199a00 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov055/delinks.txt b/config/usa/arm9/overlays/ov055/delinks.txt index 561f1408..14fc782b 100644 --- a/config/usa/arm9/overlays/ov055/delinks.txt +++ b/config/usa/arm9/overlays/ov055/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02198c60 end:0x02199710 kind:code align:32 - .rodata start:0x02199710 end:0x0219974c kind:data align:4 + .rodata start:0x02199710 end:0x0219974c kind:rodata align:4 .init start:0x0219974c end:0x0219977c kind:code align:4 - .ctor start:0x0219977c end:0x02199784 kind:data align:4 + .ctor start:0x0219977c end:0x02199784 kind:rodata align:4 .data start:0x021997a0 end:0x02199800 kind:data align:32 .bss start:0x02199800 end:0x02199880 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov056/delinks.txt b/config/usa/arm9/overlays/ov056/delinks.txt index 95d4a142..e9189783 100644 --- a/config/usa/arm9/overlays/ov056/delinks.txt +++ b/config/usa/arm9/overlays/ov056/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02198c60 end:0x0219927c kind:code align:32 - .rodata start:0x0219927c end:0x02199288 kind:data align:4 + .rodata start:0x0219927c end:0x02199288 kind:rodata align:4 .init start:0x02199288 end:0x021992dc kind:code align:4 - .ctor start:0x021992dc end:0x021992e4 kind:data align:4 + .ctor start:0x021992dc end:0x021992e4 kind:rodata align:4 .data start:0x02199300 end:0x02199360 kind:data align:32 .bss start:0x02199360 end:0x02199460 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov057/delinks.txt b/config/usa/arm9/overlays/ov057/delinks.txt index a7639a2b..5c6d006d 100644 --- a/config/usa/arm9/overlays/ov057/delinks.txt +++ b/config/usa/arm9/overlays/ov057/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02198c60 end:0x0219a8f4 kind:code align:32 - .rodata start:0x0219a8f4 end:0x0219a900 kind:data align:4 + .rodata start:0x0219a8f4 end:0x0219a900 kind:rodata align:4 .init start:0x0219a900 end:0x0219a970 kind:code align:4 - .ctor start:0x0219a970 end:0x0219a97c kind:data align:4 + .ctor start:0x0219a970 end:0x0219a97c kind:rodata align:4 .data start:0x0219a980 end:0x0219aa60 kind:data align:32 .bss start:0x0219aa60 end:0x0219aaa0 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov058/delinks.txt b/config/usa/arm9/overlays/ov058/delinks.txt index 5ac60591..d3d63fe3 100644 --- a/config/usa/arm9/overlays/ov058/delinks.txt +++ b/config/usa/arm9/overlays/ov058/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02198c60 end:0x0219acc8 kind:code align:32 - .rodata start:0x0219acc8 end:0x0219ace0 kind:data align:4 + .rodata start:0x0219acc8 end:0x0219ace0 kind:rodata align:4 .init start:0x0219ace0 end:0x0219addc kind:code align:4 - .ctor start:0x0219addc end:0x0219ade4 kind:data align:4 + .ctor start:0x0219addc end:0x0219ade4 kind:rodata align:4 .data start:0x0219ae00 end:0x0219af20 kind:data align:32 .bss start:0x0219af20 end:0x0219b080 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov059/delinks.txt b/config/usa/arm9/overlays/ov059/delinks.txt index 1dd419d1..10677e25 100644 --- a/config/usa/arm9/overlays/ov059/delinks.txt +++ b/config/usa/arm9/overlays/ov059/delinks.txt @@ -1,6 +1,6 @@ .text start:0x02198c60 end:0x0219b070 kind:code align:32 - .rodata start:0x0219b070 end:0x0219b084 kind:data align:4 - .ctor start:0x0219b084 end:0x0219b088 kind:data align:4 + .rodata start:0x0219b070 end:0x0219b084 kind:rodata align:4 + .ctor start:0x0219b084 end:0x0219b088 kind:rodata align:4 .data start:0x0219b0a0 end:0x0219b120 kind:data align:32 .bss start:0x0219b120 end:0x0219b120 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov060/delinks.txt b/config/usa/arm9/overlays/ov060/delinks.txt index e07d6eaa..36114eea 100644 --- a/config/usa/arm9/overlays/ov060/delinks.txt +++ b/config/usa/arm9/overlays/ov060/delinks.txt @@ -1,6 +1,6 @@ .text start:0x0213de40 end:0x02147638 kind:code align:32 - .rodata start:0x02147638 end:0x0214766c kind:data align:4 - .ctor start:0x0214766c end:0x02147670 kind:data align:4 + .rodata start:0x02147638 end:0x0214766c kind:rodata align:4 + .ctor start:0x0214766c end:0x02147670 kind:rodata align:4 .data start:0x02147680 end:0x02147760 kind:data align:32 .bss start:0x02147760 end:0x02148520 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov061/delinks.txt b/config/usa/arm9/overlays/ov061/delinks.txt index 199936f3..1293bb6a 100644 --- a/config/usa/arm9/overlays/ov061/delinks.txt +++ b/config/usa/arm9/overlays/ov061/delinks.txt @@ -1,6 +1,6 @@ .text start:0x0213de40 end:0x0217a190 kind:code align:32 - .rodata start:0x0217a190 end:0x0217a588 kind:data align:4 - .ctor start:0x0217a588 end:0x0217a58c kind:data align:4 + .rodata start:0x0217a190 end:0x0217a588 kind:rodata align:4 + .ctor start:0x0217a588 end:0x0217a58c kind:rodata align:4 .data start:0x0217a5a0 end:0x0217e9a0 kind:data align:32 .bss start:0x0217e9a0 end:0x02181960 kind:bss align:32 From 046c7d7ac8bcac7d8bfea833c624557260ab5ab5 Mon Sep 17 00:00:00 2001 From: Aetias Date: Tue, 4 Mar 2025 20:59:04 +0100 Subject: [PATCH 11/37] Delink `ActorEventIcon` --- config/eur/arm9/overlays/ov000/delinks.txt | 7 +++++++ config/eur/arm9/overlays/ov000/symbols.txt | 4 ++-- config/usa/arm9/overlays/ov000/delinks.txt | 7 +++++++ config/usa/arm9/overlays/ov000/symbols.txt | 4 ++-- src/00_Core/Actor/Dungeon/ActorEventIcon.cpp | 2 +- 5 files changed, 19 insertions(+), 5 deletions(-) diff --git a/config/eur/arm9/overlays/ov000/delinks.txt b/config/eur/arm9/overlays/ov000/delinks.txt index 75d6e12c..7c1d2eb9 100644 --- a/config/eur/arm9/overlays/ov000/delinks.txt +++ b/config/eur/arm9/overlays/ov000/delinks.txt @@ -16,6 +16,13 @@ src/00_Core/Actor/ActorManager.cpp: .text start:0x020c33d4 end:0x020c3e54 .data start:0x020e72a8 end:0x020e72f4 +src/00_Core/Actor/Dungeon/ActorEventIcon.cpp: + .text start:0x020904f4 end:0x020908f8 + .init start:0x020df6f8 end:0x020df738 + .ctor start:0x020e1ecc end:0x020e1ed0 + .data start:0x020e2aa0 end:0x020e2b5c + .sbss start:0x020ecda4 end:0x020ecdc4 + src/00_Core/Item/Item.cpp: .text start:0x020ad020 end:0x020ad090 .rodata start:0x020dc574 end:0x020dc6c4 diff --git a/config/eur/arm9/overlays/ov000/symbols.txt b/config/eur/arm9/overlays/ov000/symbols.txt index 539b6f97..5e28fe07 100644 --- a/config/eur/arm9/overlays/ov000/symbols.txt +++ b/config/eur/arm9/overlays/ov000/symbols.txt @@ -965,7 +965,7 @@ _ZN14ActorEventIcon8vfunc_08Ev kind:function(arm,size=0xb0) addr:0x2090580 _ZN14ActorEventIcon8vfunc_14Ej kind:function(arm,size=0xc) addr:0x2090630 _ZN14ActorEventIcon8vfunc_18Ej kind:function(arm,size=0xc) addr:0x209063c _ZN14ActorEventIcon19func_ov000_02090648Ej kind:function(arm,size=0x12c) addr:0x2090648 -_Z19func_ov000_02090774j kind:function(arm,size=0x2c) addr:0x2090774 +_ZN14ActorEventIcon19func_ov000_02090774Ej kind:function(arm,size=0x2c) addr:0x2090774 _ZN14ActorEventIcon8vfunc_1cEPt kind:function(arm,size=0x110) addr:0x20907a0 _ZN14ActorEventIconD1Ev kind:function(arm,size=0x20) addr:0x20908b0 _ZN14ActorEventIconD0Ev kind:function(arm,size=0x28) addr:0x20908d0 @@ -4038,7 +4038,7 @@ __sinit_ov000_020df4cc kind:function(arm,size=0x174) addr:0x20df4cc __sinit_ov000_020df640 kind:function(arm,size=0x38) addr:0x20df640 __sinit_ActorSwitchObject.cpp kind:function(arm,size=0x40) addr:0x20df678 __sinit_ov000_020df6b8 kind:function(arm,size=0x40) addr:0x20df6b8 -__sinit_ov000_020df6f8 kind:function(arm,size=0x40) addr:0x20df6f8 +__sinit_ActorEventIcon.cpp kind:function(arm,size=0x40) addr:0x20df6f8 __sinit_ov000_020df738 kind:function(arm,size=0x38) addr:0x20df738 __sinit_ov000_020df770 kind:function(arm,size=0x20) addr:0x20df770 __sinit_ov000_020df790 kind:function(arm,size=0x1718) addr:0x20df790 diff --git a/config/usa/arm9/overlays/ov000/delinks.txt b/config/usa/arm9/overlays/ov000/delinks.txt index 15a58b97..9eb5b647 100644 --- a/config/usa/arm9/overlays/ov000/delinks.txt +++ b/config/usa/arm9/overlays/ov000/delinks.txt @@ -16,6 +16,13 @@ src/00_Core/Actor/ActorManager.cpp: .text start:0x020c3374 end:0x020c3df4 .data start:0x020e7248 end:0x020e7294 +src/00_Core/Actor/Dungeon/ActorEventIcon.cpp: + .text start:0x02090494 end:0x02090898 + .init start:0x020df698 end:0x020df6d8 + .ctor start:0x020e1e6c end:0x020e1e70 + .data start:0x020e2a40 end:0x020e2afc + .sbss start:0x020ecd44 end:0x020ecd64 + src/00_Core/Item/Item.cpp: .text start:0x020acfc0 end:0x020ad030 .rodata start:0x020dc514 end:0x020dc664 diff --git a/config/usa/arm9/overlays/ov000/symbols.txt b/config/usa/arm9/overlays/ov000/symbols.txt index 6a5f320f..1b9d2f65 100644 --- a/config/usa/arm9/overlays/ov000/symbols.txt +++ b/config/usa/arm9/overlays/ov000/symbols.txt @@ -965,7 +965,7 @@ _ZN14ActorEventIcon8vfunc_08Ev kind:function(arm,size=0xb0) addr:0x2090520 _ZN14ActorEventIcon8vfunc_14Ej kind:function(arm,size=0xc) addr:0x20905d0 _ZN14ActorEventIcon8vfunc_18Ej kind:function(arm,size=0xc) addr:0x20905dc _ZN14ActorEventIcon19func_ov000_02090648Ej kind:function(arm,size=0x12c) addr:0x20905e8 -_Z19func_ov000_02090774j kind:function(arm,size=0x2c) addr:0x2090714 +_ZN14ActorEventIcon19func_ov000_02090774Ej kind:function(arm,size=0x2c) addr:0x2090714 _ZN14ActorEventIcon8vfunc_1cEPt kind:function(arm,size=0x110) addr:0x2090740 _ZN14ActorEventIconD1Ev kind:function(arm,size=0x20) addr:0x2090850 _ZN14ActorEventIconD0Ev kind:function(arm,size=0x28) addr:0x2090870 @@ -3940,7 +3940,7 @@ __sinit_ov000_020df4cc kind:function(arm,size=0x174) addr:0x20df46c __sinit_ov000_020df640 kind:function(arm,size=0x38) addr:0x20df5e0 __sinit_ActorSwitchObject.cpp kind:function(arm,size=0x40) addr:0x20df618 __sinit_ov000_020df6b8 kind:function(arm,size=0x40) addr:0x20df658 -__sinit_ov000_020df6f8 kind:function(arm,size=0x40) addr:0x20df698 +__sinit_ActorEventIcon.cpp kind:function(arm,size=0x40) addr:0x20df698 __sinit_ov000_020df738 kind:function(arm,size=0x38) addr:0x20df6d8 __sinit_ov000_020df770 kind:function(arm,size=0x20) addr:0x20df710 __sinit_ov000_020df790 kind:function(arm,size=0x1718) addr:0x20df730 diff --git a/src/00_Core/Actor/Dungeon/ActorEventIcon.cpp b/src/00_Core/Actor/Dungeon/ActorEventIcon.cpp index 8e943095..94e7381d 100644 --- a/src/00_Core/Actor/Dungeon/ActorEventIcon.cpp +++ b/src/00_Core/Actor/Dungeon/ActorEventIcon.cpp @@ -8,6 +8,6 @@ bool ActorEventIcon::vfunc_08() {} void ActorEventIcon::vfunc_14(u32 param1) {} void ActorEventIcon::vfunc_18(u32 param1) {} u32 ActorEventIcon::func_ov000_02090648(u32 param1) {} -bool func_ov000_02090774(u32 param1) {} +bool ActorEventIcon::func_ov000_02090774(u32 param1) {} void ActorEventIcon::vfunc_1c(u16 *param1) {} ActorEventIcon::~ActorEventIcon() {} From 13b4acb5771c918432cb26327e365f0611f64d7b Mon Sep 17 00:00:00 2001 From: Aetias Date: Tue, 4 Mar 2025 21:09:46 +0100 Subject: [PATCH 12/37] Delink `ActorSwitchObject` --- config/eur/arm9/overlays/ov000/delinks.txt | 7 +++++++ config/usa/arm9/overlays/ov000/delinks.txt | 7 +++++++ 2 files changed, 14 insertions(+) diff --git a/config/eur/arm9/overlays/ov000/delinks.txt b/config/eur/arm9/overlays/ov000/delinks.txt index 7c1d2eb9..3e06cc47 100644 --- a/config/eur/arm9/overlays/ov000/delinks.txt +++ b/config/eur/arm9/overlays/ov000/delinks.txt @@ -16,6 +16,13 @@ src/00_Core/Actor/ActorManager.cpp: .text start:0x020c33d4 end:0x020c3e54 .data start:0x020e72a8 end:0x020e72f4 +src/00_Core/Actor/Dungeon/ActorSwitchObject.cpp: + .text start:0x0208fa70 end:0x020903a8 + .init start:0x020df678 end:0x020df6b8 + .ctor start:0x020e1ec4 end:0x020e1ec8 + .data start:0x020e2928 end:0x020e29e4 + .sbss start:0x020ecd64 end:0x020ecd84 + src/00_Core/Actor/Dungeon/ActorEventIcon.cpp: .text start:0x020904f4 end:0x020908f8 .init start:0x020df6f8 end:0x020df738 diff --git a/config/usa/arm9/overlays/ov000/delinks.txt b/config/usa/arm9/overlays/ov000/delinks.txt index 9eb5b647..2ae64955 100644 --- a/config/usa/arm9/overlays/ov000/delinks.txt +++ b/config/usa/arm9/overlays/ov000/delinks.txt @@ -16,6 +16,13 @@ src/00_Core/Actor/ActorManager.cpp: .text start:0x020c3374 end:0x020c3df4 .data start:0x020e7248 end:0x020e7294 +src/00_Core/Actor/Dungeon/ActorSwitchObject.cpp: + .text start:0x0208fa10 end:0x02090348 + .init start:0x020df618 end:0x020df658 + .ctor start:0x020e1e64 end:0x020e1e68 + .data start:0x020e28c8 end:0x020e2984 + .sbss start:0x020ecd04 end:0x020ecd24 + src/00_Core/Actor/Dungeon/ActorEventIcon.cpp: .text start:0x02090494 end:0x02090898 .init start:0x020df698 end:0x020df6d8 From 91b0782a4ab635ec7aaa777389c8c7d70cc82da1 Mon Sep 17 00:00:00 2001 From: Aetias Date: Tue, 4 Mar 2025 21:26:39 +0100 Subject: [PATCH 13/37] Delink `ActorNaviBase` --- config/eur/arm9/overlays/ov000/delinks.txt | 6 ++ config/eur/arm9/overlays/ov000/symbols.txt | 98 ---------------------- config/usa/arm9/overlays/ov000/delinks.txt | 6 ++ 3 files changed, 12 insertions(+), 98 deletions(-) diff --git a/config/eur/arm9/overlays/ov000/delinks.txt b/config/eur/arm9/overlays/ov000/delinks.txt index 3e06cc47..46f9a7dc 100644 --- a/config/eur/arm9/overlays/ov000/delinks.txt +++ b/config/eur/arm9/overlays/ov000/delinks.txt @@ -30,6 +30,12 @@ src/00_Core/Actor/Dungeon/ActorEventIcon.cpp: .data start:0x020e2aa0 end:0x020e2b5c .sbss start:0x020ecda4 end:0x020ecdc4 +src/00_Core/Actor/Navi/ActorNaviBase.cpp: + .text start:0x020b885c end:0x020bb118 + .rodata start:0x020dc81c end:0x020dc858 + .data start:0x020e676c end:0x020e68d4 + .sbss start:0x020ee1f8 end:0x020ee1fc + src/00_Core/Item/Item.cpp: .text start:0x020ad020 end:0x020ad090 .rodata start:0x020dc574 end:0x020dc6c4 diff --git a/config/eur/arm9/overlays/ov000/symbols.txt b/config/eur/arm9/overlays/ov000/symbols.txt index 5e28fe07..56f493dd 100644 --- a/config/eur/arm9/overlays/ov000/symbols.txt +++ b/config/eur/arm9/overlays/ov000/symbols.txt @@ -2502,104 +2502,6 @@ _ZN15ItemModelLoader19func_ov000_020bb3f4EPc kind:function(thumb,size=0x20) addr _ZN15ItemModelLoader19func_ov000_020bb414Ei kind:function(thumb,size=0xc) addr:0x20bb414 _ZN15ItemModelLoader19func_ov000_020bb420Ei kind:function(thumb,size=0xc) addr:0x20bb420 _ZN15ItemModelLoader19func_ov000_020bb42cEi kind:function(thumb,size=0x20) addr:0x20bb42c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - _ZN14PlayerLinkBase12GetMaxHealthEv kind:function(arm,size=0x20) addr:0x20bb44c _ZN14PlayerLinkBase8vfunc_10EP8Cylinder kind:function(arm,size=0x70) addr:0x20bb46c _ZN14PlayerLinkBase8vfunc_14EP8Cylinder kind:function(arm,size=0x30) addr:0x20bb4dc diff --git a/config/usa/arm9/overlays/ov000/delinks.txt b/config/usa/arm9/overlays/ov000/delinks.txt index 2ae64955..ddb30117 100644 --- a/config/usa/arm9/overlays/ov000/delinks.txt +++ b/config/usa/arm9/overlays/ov000/delinks.txt @@ -30,6 +30,12 @@ src/00_Core/Actor/Dungeon/ActorEventIcon.cpp: .data start:0x020e2a40 end:0x020e2afc .sbss start:0x020ecd44 end:0x020ecd64 +src/00_Core/Actor/Navi/ActorNaviBase.cpp: + .text start:0x020b87fc end:0x020bb0b8 + .rodata start:0x020dc7bc end:0x020dc7f8 + .data start:0x020e670c end:0x020e6874 + .sbss start:0x020ee198 end:0x020ee19c + src/00_Core/Item/Item.cpp: .text start:0x020acfc0 end:0x020ad030 .rodata start:0x020dc514 end:0x020dc664 From 3c223d570c19e1b244705bfb5893d51f30a17f80 Mon Sep 17 00:00:00 2001 From: Aetias Date: Thu, 6 Mar 2025 00:14:06 +0100 Subject: [PATCH 14/37] Delink `ActorNavi` --- config/eur/arm9/overlays/ov000/delinks.txt | 7 +++ config/eur/arm9/overlays/ov000/symbols.txt | 66 +++++++++++----------- config/usa/arm9/overlays/ov000/delinks.txt | 7 +++ config/usa/arm9/overlays/ov000/symbols.txt | 66 +++++++++++----------- include/Actor/Navi/ActorNavi.hpp | 64 ++++++++++++++++++++- include/Actor/Navi/ActorNaviBase.hpp | 18 +----- src/00_Core/Actor/Navi/ActorNavi.cpp | 32 +++++++++++ src/04_Load/Actor/Navi/ActorNavi.cpp | 3 + 8 files changed, 180 insertions(+), 83 deletions(-) create mode 100644 src/00_Core/Actor/Navi/ActorNavi.cpp create mode 100644 src/04_Load/Actor/Navi/ActorNavi.cpp diff --git a/config/eur/arm9/overlays/ov000/delinks.txt b/config/eur/arm9/overlays/ov000/delinks.txt index 46f9a7dc..612ebc21 100644 --- a/config/eur/arm9/overlays/ov000/delinks.txt +++ b/config/eur/arm9/overlays/ov000/delinks.txt @@ -30,6 +30,13 @@ src/00_Core/Actor/Dungeon/ActorEventIcon.cpp: .data start:0x020e2aa0 end:0x020e2b5c .sbss start:0x020ecda4 end:0x020ecdc4 +src/00_Core/Actor/Navi/ActorNavi.cpp: + .text start:0x020b80e0 end:0x020b85d8 + .init start:0x020e12d8 end:0x020e133c + .ctor start:0x020e1f08 end:0x020e1f0c + .data start:0x020e6514 end:0x020e6674 + .sbss start:0x020ee1a0 end:0x020ee1d8 + src/00_Core/Actor/Navi/ActorNaviBase.cpp: .text start:0x020b885c end:0x020bb118 .rodata start:0x020dc81c end:0x020dc858 diff --git a/config/eur/arm9/overlays/ov000/symbols.txt b/config/eur/arm9/overlays/ov000/symbols.txt index 56f493dd..ad3278f9 100644 --- a/config/eur/arm9/overlays/ov000/symbols.txt +++ b/config/eur/arm9/overlays/ov000/symbols.txt @@ -2397,33 +2397,33 @@ func_ov000_020b7fe8 kind:function(arm,size=0x14) addr:0x20b7fe8 _ZN13PlayerManager4SaveEP15SaveItemManager kind:function(thumb,size=0x50) addr:0x20b7ffc _ZN13PlayerManager17IncreaseMaxHealthEs kind:function(thumb,size=0x14) addr:0x20b804c _ZN13PlayerManager19UpdateShipMaxHealthEv kind:function(thumb,size=0x80) addr:0x20b8060 -func_ov000_020b80e0 kind:function(arm,size=0x30) addr:0x20b80e0 -func_ov000_020b8110 kind:function(arm,size=0x24) addr:0x20b8110 -func_ov000_020b8134 kind:function(arm,size=0x14) addr:0x20b8134 -func_ov000_020b8148 kind:function(arm,size=0x1c) addr:0x20b8148 -func_ov000_020b8164 kind:function(arm,size=0x50) addr:0x20b8164 -func_ov000_020b81b4 kind:function(arm,size=0x40) addr:0x20b81b4 -func_ov000_020b81f4 kind:function(arm,size=0xc) addr:0x20b81f4 -func_ov000_020b8200 kind:function(arm,size=0x10) addr:0x20b8200 -func_ov000_020b8210 kind:function(arm,size=0x38) addr:0x20b8210 -func_ov000_020b8248 kind:function(arm,size=0x38) addr:0x20b8248 -func_ov000_020b8280 kind:function(arm,size=0x8) addr:0x20b8280 -func_ov000_020b8288 kind:function(arm,size=0x8) addr:0x20b8288 -func_ov000_020b8290 kind:function(arm,size=0x2c) addr:0x20b8290 -func_ov000_020b82bc kind:function(arm,size=0x2c) addr:0x20b82bc -func_ov000_020b82e8 kind:function(arm,size=0x58) addr:0x20b82e8 -func_ov000_020b8340 kind:function(arm,size=0xb8) addr:0x20b8340 -func_ov000_020b83f8 kind:function(arm,size=0x20) addr:0x20b83f8 -func_ov000_020b8418 kind:function(arm,size=0x3c) addr:0x20b8418 -func_ov000_020b8454 kind:function(arm,size=0x24) addr:0x20b8454 -func_ov000_020b8478 kind:function(arm,size=0x24) addr:0x20b8478 -func_ov000_020b849c kind:function(arm,size=0x34) addr:0x20b849c -func_ov000_020b84d0 kind:function(arm,size=0x8) addr:0x20b84d0 -func_ov000_020b84d8 kind:function(arm,size=0x54) addr:0x20b84d8 -func_ov000_020b852c kind:function(arm,size=0x10) addr:0x20b852c -func_ov000_020b853c kind:function(arm,size=0x14) addr:0x20b853c -func_ov000_020b8550 kind:function(arm,size=0x48) addr:0x20b8550 -func_ov000_020b8598 kind:function(arm,size=0x40) addr:0x20b8598 +_ZN9ActorNavi6CreateEv kind:function(arm,size=0x30) addr:0x20b80e0 +_ZN24UnkStruct_ov000_020b8110C2Ev kind:function(arm,size=0x24) addr:0x20b8110 +_ZN24UnkStruct_ov000_020b8110D1Ev kind:function(arm,size=0x14) addr:0x20b8134 +_ZN24UnkStruct_ov000_020b8110D0Ev kind:function(arm,size=0x1c) addr:0x20b8148 +_ZN24UnkStruct_ov000_020b81108vfunc_08EPs kind:function(arm,size=0x50) addr:0x20b8164 +_ZN24UnkStruct_ov000_020b81108vfunc_18EPi kind:function(arm,size=0x40) addr:0x20b81b4 +_ZN24UnkStruct_ov000_020b81108vfunc_14EPt kind:function(arm,size=0xc) addr:0x20b81f4 +_ZN9ActorNavi19func_ov000_020b8200Ev kind:function(arm,size=0x10) addr:0x20b8200 +_ZN9ActorNavi8vfunc_c4Ev kind:function(arm,size=0x38) addr:0x20b8210 +_ZN9ActorNavi8vfunc_c8Ev kind:function(arm,size=0x38) addr:0x20b8248 +_ZN9ActorNavi8vfunc_b4Ev kind:function(arm,size=0x8) addr:0x20b8280 +_ZN9ActorNavi8vfunc_b8Ev kind:function(arm,size=0x8) addr:0x20b8288 +_ZN9ActorNavi8vfunc_d4Ev kind:function(arm,size=0x2c) addr:0x20b8290 +_ZN9ActorNavi8vfunc_d0Ev kind:function(arm,size=0x2c) addr:0x20b82bc +_ZN9ActorNavi9SetActiveEb kind:function(arm,size=0x58) addr:0x20b82e8 +_ZN9ActorNavi8vfunc_e0Ev kind:function(arm,size=0xb8) addr:0x20b8340 +_ZN9ActorNavi8vfunc_d8Ev kind:function(arm,size=0x20) addr:0x20b83f8 +_ZN9ActorNavi8vfunc_20Eb kind:function(arm,size=0x3c) addr:0x20b8418 +_ZN9ActorNavi8vfunc_ccEPi kind:function(arm,size=0x24) addr:0x20b8454 +_ZN9ActorNavi8vfunc_c0EP5Vec3p kind:function(arm,size=0x24) addr:0x20b8478 +_ZN9ActorNavi8vfunc_e8Ev kind:function(arm,size=0x34) addr:0x20b849c +_ZN9ActorNavi8vfunc_8cEv kind:function(arm,size=0x8) addr:0x20b84d0 +_ZN9ActorNavi8vfunc_ecEv kind:function(arm,size=0x54) addr:0x20b84d8 +_Z14GetEquipHammerv kind:function(arm,size=0x10) addr:0x20b852c local +_ZN9ActorNavi19func_ov000_020b853cEv kind:function(arm,size=0x14) addr:0x20b853c +_ZN9ActorNaviD1Ev kind:function(arm,size=0x48) addr:0x20b8550 +_ZN9ActorNaviD0Ev kind:function(arm,size=0x40) addr:0x20b8598 func_ov000_020b85d8 kind:function(thumb,size=0x28) addr:0x20b85d8 func_ov000_020b8600 kind:function(arm,size=0x10) addr:0x20b8600 func_ov000_020b8610 kind:function(arm,size=0x1c) addr:0x20b8610 @@ -3955,7 +3955,7 @@ __sinit_ov000_020e11d8 kind:function(arm,size=0x34) addr:0x20e11d8 __sinit_ov000_020e120c kind:function(arm,size=0x44) addr:0x20e120c __sinit_ov000_020e1250 kind:function(arm,size=0x40) addr:0x20e1250 __sinit_ov000_020e1290 kind:function(arm,size=0x48) addr:0x20e1290 -__sinit_ov000_020e12d8 kind:function(arm,size=0x64) addr:0x20e12d8 +__sinit_ActorNavi.cpp kind:function(arm,size=0x64) addr:0x20e12d8 __sinit_ov000_020e133c kind:function(arm,size=0x40) addr:0x20e133c __sinit_ov000_020e137c kind:function(arm,size=0x798) addr:0x20e137c __sinit_ov000_020e1b14 kind:function(arm,size=0x40) addr:0x20e1b14 @@ -4956,8 +4956,8 @@ data_ov000_020e6528 kind:data(any) addr:0x20e6528 data_ov000_020e652c kind:data(any) addr:0x20e652c data_ov000_020e6530 kind:data(any) addr:0x20e6530 data_ov000_020e6534 kind:data(any) addr:0x20e6534 -data_ov000_020e6560 kind:data(any) addr:0x20e6560 -data_ov000_020e6658 kind:data(any) addr:0x20e6658 +_ZTV9ActorNavi kind:data(any) addr:0x20e6560 +_ZTV24UnkStruct_ov000_020b8110 kind:data(any) addr:0x20e6658 data_ov000_020e667c kind:data(any) addr:0x20e667c data_ov000_020e676c kind:data(any) addr:0x20e676c data_ov000_020e6770 kind:data(any) addr:0x20e6770 @@ -5875,9 +5875,9 @@ data_ov000_020ee16c kind:bss addr:0x20ee16c data_ov000_020ee178 kind:bss addr:0x20ee178 data_ov000_020ee184 kind:bss addr:0x20ee184 data_ov000_020ee198 kind:bss addr:0x20ee198 -data_ov000_020ee1a0 kind:bss addr:0x20ee1a0 -data_ov000_020ee1ac kind:bss addr:0x20ee1ac -data_ov000_020ee1c0 kind:bss addr:0x20ee1c0 +@418 kind:bss addr:0x20ee1a0 +_ZN9ActorNavi5gTypeE kind:bss addr:0x20ee1ac +@419 kind:bss addr:0x20ee1c0 data_ov000_020ee1cc kind:bss addr:0x20ee1cc data_ov000_020ee1d8 kind:bss addr:0x20ee1d8 data_ov000_020ee1e4 kind:bss addr:0x20ee1e4 diff --git a/config/usa/arm9/overlays/ov000/delinks.txt b/config/usa/arm9/overlays/ov000/delinks.txt index ddb30117..bf023a36 100644 --- a/config/usa/arm9/overlays/ov000/delinks.txt +++ b/config/usa/arm9/overlays/ov000/delinks.txt @@ -30,6 +30,13 @@ src/00_Core/Actor/Dungeon/ActorEventIcon.cpp: .data start:0x020e2a40 end:0x020e2afc .sbss start:0x020ecd44 end:0x020ecd64 +src/00_Core/Actor/Navi/ActorNavi.cpp: + .text start:0x020b8080 end:0x020b8578 + .init start:0x020e1278 end:0x020e12dc + .ctor start:0x020e1ea8 end:0x020e1eac + .data start:0x020e64b4 end:0x020e6614 + .sbss start:0x020ee140 end:0x020ee178 + src/00_Core/Actor/Navi/ActorNaviBase.cpp: .text start:0x020b87fc end:0x020bb0b8 .rodata start:0x020dc7bc end:0x020dc7f8 diff --git a/config/usa/arm9/overlays/ov000/symbols.txt b/config/usa/arm9/overlays/ov000/symbols.txt index 1b9d2f65..4b641f48 100644 --- a/config/usa/arm9/overlays/ov000/symbols.txt +++ b/config/usa/arm9/overlays/ov000/symbols.txt @@ -2397,33 +2397,33 @@ func_ov000_020b7fe8 kind:function(arm,size=0x14) addr:0x20b7f88 _ZN13PlayerManager4SaveEP15SaveItemManager kind:function(thumb,size=0x50) addr:0x20b7f9c _ZN13PlayerManager17IncreaseMaxHealthEs kind:function(thumb,size=0x14) addr:0x20b7fec _ZN13PlayerManager19UpdateShipMaxHealthEv kind:function(thumb,size=0x80) addr:0x20b8000 -func_ov000_020b80e0 kind:function(arm,size=0x30) addr:0x20b8080 -func_ov000_020b8110 kind:function(arm,size=0x24) addr:0x20b80b0 -func_ov000_020b8134 kind:function(arm,size=0x14) addr:0x20b80d4 -func_ov000_020b8148 kind:function(arm,size=0x1c) addr:0x20b80e8 -func_ov000_020b8164 kind:function(arm,size=0x50) addr:0x20b8104 -func_ov000_020b81b4 kind:function(arm,size=0x40) addr:0x20b8154 -func_ov000_020b81f4 kind:function(arm,size=0xc) addr:0x20b8194 -func_ov000_020b8200 kind:function(arm,size=0x10) addr:0x20b81a0 -func_ov000_020b8210 kind:function(arm,size=0x38) addr:0x20b81b0 -func_ov000_020b8248 kind:function(arm,size=0x38) addr:0x20b81e8 -func_ov000_020b8280 kind:function(arm,size=0x8) addr:0x20b8220 -func_ov000_020b8288 kind:function(arm,size=0x8) addr:0x20b8228 -func_ov000_020b8290 kind:function(arm,size=0x2c) addr:0x20b8230 -func_ov000_020b82bc kind:function(arm,size=0x2c) addr:0x20b825c -func_ov000_020b82e8 kind:function(arm,size=0x58) addr:0x20b8288 -func_ov000_020b8340 kind:function(arm,size=0xb8) addr:0x20b82e0 -func_ov000_020b83f8 kind:function(arm,size=0x20) addr:0x20b8398 -func_ov000_020b8418 kind:function(arm,size=0x3c) addr:0x20b83b8 -func_ov000_020b8454 kind:function(arm,size=0x24) addr:0x20b83f4 -func_ov000_020b8478 kind:function(arm,size=0x24) addr:0x20b8418 -func_ov000_020b849c kind:function(arm,size=0x34) addr:0x20b843c -func_ov000_020b84d0 kind:function(arm,size=0x8) addr:0x20b8470 -func_ov000_020b84d8 kind:function(arm,size=0x54) addr:0x20b8478 -func_ov000_020b852c kind:function(arm,size=0x10) addr:0x20b84cc -func_ov000_020b853c kind:function(arm,size=0x14) addr:0x20b84dc -func_ov000_020b8550 kind:function(arm,size=0x48) addr:0x20b84f0 -func_ov000_020b8598 kind:function(arm,size=0x40) addr:0x20b8538 +_ZN9ActorNavi6CreateEv kind:function(arm,size=0x30) addr:0x20b8080 +_ZN24UnkStruct_ov000_020b8110C2Ev kind:function(arm,size=0x24) addr:0x20b80b0 +_ZN24UnkStruct_ov000_020b8110D1Ev kind:function(arm,size=0x14) addr:0x20b80d4 +_ZN24UnkStruct_ov000_020b8110D0Ev kind:function(arm,size=0x1c) addr:0x20b80e8 +_ZN24UnkStruct_ov000_020b81108vfunc_08EPs kind:function(arm,size=0x50) addr:0x20b8104 +_ZN24UnkStruct_ov000_020b81108vfunc_18EPi kind:function(arm,size=0x40) addr:0x20b8154 +_ZN24UnkStruct_ov000_020b81108vfunc_14EPt kind:function(arm,size=0xc) addr:0x20b8194 +_ZN9ActorNavi19func_ov000_020b8200Ev kind:function(arm,size=0x10) addr:0x20b81a0 +_ZN9ActorNavi8vfunc_c4Ev kind:function(arm,size=0x38) addr:0x20b81b0 +_ZN9ActorNavi8vfunc_c8Ev kind:function(arm,size=0x38) addr:0x20b81e8 +_ZN9ActorNavi8vfunc_b4Ev kind:function(arm,size=0x8) addr:0x20b8220 +_ZN9ActorNavi8vfunc_b8Ev kind:function(arm,size=0x8) addr:0x20b8228 +_ZN9ActorNavi8vfunc_d4Ev kind:function(arm,size=0x2c) addr:0x20b8230 +_ZN9ActorNavi8vfunc_d0Ev kind:function(arm,size=0x2c) addr:0x20b825c +_ZN9ActorNavi9SetActiveEb kind:function(arm,size=0x58) addr:0x20b8288 +_ZN9ActorNavi8vfunc_e0Ev kind:function(arm,size=0xb8) addr:0x20b82e0 +_ZN9ActorNavi8vfunc_d8Ev kind:function(arm,size=0x20) addr:0x20b8398 +_ZN9ActorNavi8vfunc_20Eb kind:function(arm,size=0x3c) addr:0x20b83b8 +_ZN9ActorNavi8vfunc_ccEPi kind:function(arm,size=0x24) addr:0x20b83f4 +_ZN9ActorNavi8vfunc_c0EP5Vec3p kind:function(arm,size=0x24) addr:0x20b8418 +_ZN9ActorNavi8vfunc_e8Ev kind:function(arm,size=0x34) addr:0x20b843c +_ZN9ActorNavi8vfunc_8cEv kind:function(arm,size=0x8) addr:0x20b8470 +_ZN9ActorNavi8vfunc_ecEv kind:function(arm,size=0x54) addr:0x20b8478 +_Z14GetEquipHammerv kind:function(arm,size=0x10) addr:0x20b84cc local +_ZN9ActorNavi19func_ov000_020b853cEv kind:function(arm,size=0x14) addr:0x20b84dc +_ZN9ActorNaviD1Ev kind:function(arm,size=0x48) addr:0x20b84f0 +_ZN9ActorNaviD0Ev kind:function(arm,size=0x40) addr:0x20b8538 func_ov000_020b85d8 kind:function(thumb,size=0x28) addr:0x20b8578 func_ov000_020b8600 kind:function(arm,size=0x10) addr:0x20b85a0 func_ov000_020b8610 kind:function(arm,size=0x1c) addr:0x20b85b0 @@ -3955,7 +3955,7 @@ __sinit_ov000_020e11d8 kind:function(arm,size=0x34) addr:0x20e1178 __sinit_ov000_020e120c kind:function(arm,size=0x44) addr:0x20e11ac __sinit_ov000_020e1250 kind:function(arm,size=0x40) addr:0x20e11f0 __sinit_ov000_020e1290 kind:function(arm,size=0x48) addr:0x20e1230 -__sinit_ov000_020e12d8 kind:function(arm,size=0x64) addr:0x20e1278 +__sinit_ActorNavi.cpp kind:function(arm,size=0x64) addr:0x20e1278 __sinit_ov000_020e133c kind:function(arm,size=0x40) addr:0x20e12dc __sinit_ov000_020e137c kind:function(arm,size=0x798) addr:0x20e131c __sinit_ov000_020e1b14 kind:function(arm,size=0x40) addr:0x20e1ab4 @@ -4956,8 +4956,8 @@ data_ov000_020e6528 kind:data(any) addr:0x20e64c8 data_ov000_020e652c kind:data(any) addr:0x20e64cc data_ov000_020e6530 kind:data(any) addr:0x20e64d0 data_ov000_020e6534 kind:data(any) addr:0x20e64d4 -data_ov000_020e6560 kind:data(any) addr:0x20e6500 -data_ov000_020e6658 kind:data(any) addr:0x20e65f8 +_ZTV9ActorNavi kind:data(any) addr:0x20e6500 +_ZTV24UnkStruct_ov000_020b8110 kind:data(any) addr:0x20e65f8 data_ov000_020e667c kind:data(any) addr:0x20e661c data_ov000_020e676c kind:data(any) addr:0x20e670c data_ov000_020e6770 kind:data(any) addr:0x20e6710 @@ -5875,9 +5875,9 @@ data_ov000_020ee16c kind:bss addr:0x20ee10c data_ov000_020ee178 kind:bss addr:0x20ee118 data_ov000_020ee184 kind:bss addr:0x20ee124 data_ov000_020ee198 kind:bss addr:0x20ee138 -data_ov000_020ee1a0 kind:bss addr:0x20ee140 -data_ov000_020ee1ac kind:bss addr:0x20ee14c -data_ov000_020ee1c0 kind:bss addr:0x20ee160 +@418 kind:bss addr:0x20ee140 +_ZN9ActorNavi5gTypeE kind:bss addr:0x20ee14c +@419 kind:bss addr:0x20ee160 data_ov000_020ee1cc kind:bss addr:0x20ee16c data_ov000_020ee1d8 kind:bss addr:0x20ee178 data_ov000_020ee1e4 kind:bss addr:0x20ee184 diff --git a/include/Actor/Navi/ActorNavi.hpp b/include/Actor/Navi/ActorNavi.hpp index 98ebcf51..0d0b2fb5 100644 --- a/include/Actor/Navi/ActorNavi.hpp +++ b/include/Actor/Navi/ActorNavi.hpp @@ -1,3 +1,65 @@ #pragma once -class ActorNavi; +#include "Actor/Navi/ActorNaviBase.hpp" +#include "Unknown/UnkStruct_ov000_020beba8.hpp" + +class UnkStruct_ov000_020b8110 : public UnkStruct_ov000_020beba8 { +public: + /* 0 (base) */ + /* c */ + + /* 00 */ virtual ~UnkStruct_ov000_020b8110() override; + /* 08 */ virtual void vfunc_08(unk16 *param1) override; + /* 14 */ virtual void vfunc_14(u16 *param1) override; + /* 18 */ virtual void vfunc_18(s32 *param1) override; + /* 1c */ + + UnkStruct_ov000_020b8110(); +}; + +class ActorNavi : public ActorNaviBase { +public: + static ActorType gType; + + /* 000 (base) */ + /* 294 */ ModelRender mUnk_294; + /* 2f0 */ void *mUnk_2f0; + /* 2f4 */ unk8 mUnk_2f4[0x40]; + /* 334 */ unk32 mUnk_334; + /* 338 */ unk32 mUnk_338; + /* 33c */ unk32 mUnk_33c; + /* 340 */ unk16 mUnk_340; + /* 342 */ unk8 mUnk_342[0x2]; + /* 344 */ unk32 mUnk_344; + /* 348 */ unk32 mUnk_348; + /* 34c */ unk8 mUnk_34c[0x68]; + /* 3b4 */ EquipHammer *mHammer; + /* 3b8 */ unk32 mUnk_3b8; + /* 3bc */ unk32 mUnk_3bc; + /* 3c0 */ unk8 mUnk_3c0[0x8]; + /* 3c8 */ + + /* 00 */ virtual ~ActorNavi() override; + /* 08 */ virtual bool vfunc_08() override; + /* 20 */ virtual void vfunc_20(bool param1) override; + /* 8c */ virtual bool vfunc_8c() override; + /* b4 */ virtual void vfunc_b4() override; + /* b8 */ virtual s32 vfunc_b8() override; + /* c0 */ virtual bool vfunc_c0(Vec3p *param1) override; + /* c4 */ virtual void vfunc_c4() override; + /* c8 */ virtual void vfunc_c8() override; + /* cc */ virtual bool vfunc_cc(unk32 *param1) override; + /* d0 */ virtual void vfunc_d0() override; + /* d4 */ virtual void vfunc_d4() override; + /* d8 */ virtual void vfunc_d8() override; + /* dc */ virtual void SetActive(bool active) override; + /* e0 */ virtual void vfunc_e0() override; + /* e8 */ virtual void vfunc_e8() override; + /* ec */ virtual void vfunc_ec() override; + + static ActorNavi *Create(); + void func_ov000_020b8200(); + void func_ov000_020b853c(); + + ActorNavi(); +}; diff --git a/include/Actor/Navi/ActorNaviBase.hpp b/include/Actor/Navi/ActorNaviBase.hpp index f3a45e8a..2af8acdf 100644 --- a/include/Actor/Navi/ActorNaviBase.hpp +++ b/include/Actor/Navi/ActorNaviBase.hpp @@ -10,6 +10,7 @@ class ActorNaviBase_Unk1 {}; class ActorNaviBase : public Actor { +public: /* 000 (base) */ /* 158 */ Vec3p mUnk_158; /* 164 */ unk32 mUnk_164; @@ -33,22 +34,7 @@ class ActorNaviBase : public Actor { /* 288 */ unk8 mUnk_288[0x2]; /* 28a */ unk16 mUnk_28a; /* 28c */ unk8 mUnk_28c[0x8]; - /* 294 */ ModelRender mUnk_294; - /* 2f0 */ void *mUnk_2f0; - /* 2f4 */ unk8 mUnk_2f4[0x40]; - /* 334 */ unk32 mUnk_334; - /* 338 */ unk32 mUnk_338; - /* 33c */ unk32 mUnk_33c; - /* 340 */ unk16 mUnk_340; - /* 342 */ unk8 mUnk_342[0x2]; - /* 344 */ unk32 mUnk_344; - /* 348 */ unk32 mUnk_348; - /* 34c */ unk8 mUnk_34c[0x68]; - /* 3b4 */ EquipHammer *mHammer; - /* 3b8 */ unk32 mUnk_3b8; - /* 3bc */ unk32 mUnk_3bc; - /* 3c0 */ unk8 mUnk_3c0[0x8]; - /* 3c8 */ + /* 294 */ /* 00 */ virtual ~ActorNaviBase() override; /* 08 */ virtual bool vfunc_08() override; diff --git a/src/00_Core/Actor/Navi/ActorNavi.cpp b/src/00_Core/Actor/Navi/ActorNavi.cpp new file mode 100644 index 00000000..5c4c18f4 --- /dev/null +++ b/src/00_Core/Actor/Navi/ActorNavi.cpp @@ -0,0 +1,32 @@ +#include "Actor/Navi/ActorNavi.hpp" +#include "Player/EquipHammer.hpp" + +ActorType ActorNavi::gType = ActorType(ActorTypeId_Navi, (ActorCreateFunc) ActorNavi::Create, NULL); +UnkStruct_ov000_020b8110 data_ov000_020ee1cc; + +ActorNavi *ActorNavi::Create() {} +UnkStruct_ov000_020b8110::UnkStruct_ov000_020b8110() : + UnkStruct_ov000_020beba8(7) {} +UnkStruct_ov000_020b8110::~UnkStruct_ov000_020b8110() {} +void UnkStruct_ov000_020b8110::vfunc_08(unk16 *param1) {} +void UnkStruct_ov000_020b8110::vfunc_18(s32 *param1) {} +void UnkStruct_ov000_020b8110::vfunc_14(u16 *param1) {} +void ActorNavi::func_ov000_020b8200() {} +void ActorNavi::vfunc_c4() {} +void ActorNavi::vfunc_c8() {} +void ActorNavi::vfunc_b4() {} +s32 ActorNavi::vfunc_b8() {} +void ActorNavi::vfunc_d4() {} +void ActorNavi::vfunc_d0() {} +void ActorNavi::SetActive(bool active) {} +void ActorNavi::vfunc_e0() {} +void ActorNavi::vfunc_d8() {} +void ActorNavi::vfunc_20(bool param1) {} +bool ActorNavi::vfunc_cc(unk32 *param1) {} +bool ActorNavi::vfunc_c0(Vec3p *param1) {} +void ActorNavi::vfunc_e8() {} +bool ActorNavi::vfunc_8c() {} +void ActorNavi::vfunc_ec() {} +EquipHammer *GetEquipHammer() {} +void ActorNavi::func_ov000_020b853c() {} +ActorNavi::~ActorNavi() {} diff --git a/src/04_Load/Actor/Navi/ActorNavi.cpp b/src/04_Load/Actor/Navi/ActorNavi.cpp new file mode 100644 index 00000000..12939c04 --- /dev/null +++ b/src/04_Load/Actor/Navi/ActorNavi.cpp @@ -0,0 +1,3 @@ +#include "Actor/Navi/ActorNavi.hpp" + +ActorNavi::ActorNavi() {} From 1998ff3444b3a264cdaace5b10194ca0270ce260 Mon Sep 17 00:00:00 2001 From: Aetias Date: Thu, 6 Mar 2025 20:34:34 +0100 Subject: [PATCH 15/37] Delink `ActorForceNavi` --- config/eur/arm9/overlays/ov000/delinks.txt | 7 +++++++ config/eur/arm9/overlays/ov000/symbols.txt | 16 ++++++++-------- config/usa/arm9/overlays/ov000/delinks.txt | 7 +++++++ config/usa/arm9/overlays/ov000/symbols.txt | 16 ++++++++-------- include/Actor/Navi/ActorForceNavi.hpp | 16 ++++++++++++++++ src/00_Core/Actor/Navi/ActorForceNavi.cpp | 7 +++++++ 6 files changed, 53 insertions(+), 16 deletions(-) create mode 100644 include/Actor/Navi/ActorForceNavi.hpp create mode 100644 src/00_Core/Actor/Navi/ActorForceNavi.cpp diff --git a/config/eur/arm9/overlays/ov000/delinks.txt b/config/eur/arm9/overlays/ov000/delinks.txt index 612ebc21..0849ccdc 100644 --- a/config/eur/arm9/overlays/ov000/delinks.txt +++ b/config/eur/arm9/overlays/ov000/delinks.txt @@ -37,6 +37,13 @@ src/00_Core/Actor/Navi/ActorNavi.cpp: .data start:0x020e6514 end:0x020e6674 .sbss start:0x020ee1a0 end:0x020ee1d8 +src/00_Core/Actor/Navi/ActorForceNavi.cpp: + .text start:0x020b862c end:0x020b86a4 + .init start:0x020e133c end:0x020e137c + .ctor start:0x020e1f0c end:0x020e1f10 + .data start:0x020e6674 end:0x020e676c + .sbss start:0x020ee1d8 end:0x020ee1f8 + src/00_Core/Actor/Navi/ActorNaviBase.cpp: .text start:0x020b885c end:0x020bb118 .rodata start:0x020dc81c end:0x020dc858 diff --git a/config/eur/arm9/overlays/ov000/symbols.txt b/config/eur/arm9/overlays/ov000/symbols.txt index ad3278f9..893b1f66 100644 --- a/config/eur/arm9/overlays/ov000/symbols.txt +++ b/config/eur/arm9/overlays/ov000/symbols.txt @@ -2427,10 +2427,10 @@ _ZN9ActorNaviD0Ev kind:function(arm,size=0x40) addr:0x20b8598 func_ov000_020b85d8 kind:function(thumb,size=0x28) addr:0x20b85d8 func_ov000_020b8600 kind:function(arm,size=0x10) addr:0x20b8600 func_ov000_020b8610 kind:function(arm,size=0x1c) addr:0x20b8610 -func_ov000_020b862c kind:function(arm,size=0x40) addr:0x20b862c -func_ov000_020b866c kind:function(arm,size=0x8) addr:0x20b866c -func_ov000_020b8674 kind:function(arm,size=0x1c) addr:0x20b8674 -func_ov000_020b8690 kind:function(arm,size=0x14) addr:0x20b8690 +_ZN14ActorForceNavi6CreateEv kind:function(arm,size=0x40) addr:0x20b862c +_ZN14ActorForceNavi8vfunc_b4Ev kind:function(arm,size=0x8) addr:0x20b866c +_ZN14ActorForceNaviD1Ev kind:function(arm,size=0x1c) addr:0x20b8674 +_ZN14ActorForceNaviD0Ev kind:function(arm,size=0x14) addr:0x20b8690 func_ov000_020b86a4 kind:function(arm,size=0x44) addr:0x20b86a4 func_ov000_020b86e8 kind:function(arm,size=0x30) addr:0x20b86e8 func_ov000_020b8718 kind:function(arm,size=0x8) addr:0x20b8718 @@ -3956,7 +3956,7 @@ __sinit_ov000_020e120c kind:function(arm,size=0x44) addr:0x20e120c __sinit_ov000_020e1250 kind:function(arm,size=0x40) addr:0x20e1250 __sinit_ov000_020e1290 kind:function(arm,size=0x48) addr:0x20e1290 __sinit_ActorNavi.cpp kind:function(arm,size=0x64) addr:0x20e12d8 -__sinit_ov000_020e133c kind:function(arm,size=0x40) addr:0x20e133c +__sinit_ActorForceNavi.cpp kind:function(arm,size=0x40) addr:0x20e133c __sinit_ov000_020e137c kind:function(arm,size=0x798) addr:0x20e137c __sinit_ov000_020e1b14 kind:function(arm,size=0x40) addr:0x20e1b14 __sinit_ov000_020e1b54 kind:function(arm,size=0x40) addr:0x20e1b54 @@ -4958,7 +4958,7 @@ data_ov000_020e6530 kind:data(any) addr:0x20e6530 data_ov000_020e6534 kind:data(any) addr:0x20e6534 _ZTV9ActorNavi kind:data(any) addr:0x20e6560 _ZTV24UnkStruct_ov000_020b8110 kind:data(any) addr:0x20e6658 -data_ov000_020e667c kind:data(any) addr:0x20e667c +_ZTV14ActorForceNavi kind:data(any) addr:0x20e667c data_ov000_020e676c kind:data(any) addr:0x20e676c data_ov000_020e6770 kind:data(any) addr:0x20e6770 data_ov000_020e6774 kind:data(any) addr:0x20e6774 @@ -5879,8 +5879,8 @@ data_ov000_020ee198 kind:bss addr:0x20ee198 _ZN9ActorNavi5gTypeE kind:bss addr:0x20ee1ac @419 kind:bss addr:0x20ee1c0 data_ov000_020ee1cc kind:bss addr:0x20ee1cc -data_ov000_020ee1d8 kind:bss addr:0x20ee1d8 -data_ov000_020ee1e4 kind:bss addr:0x20ee1e4 +@405 kind:bss addr:0x20ee1d8 +_ZN14ActorForceNavi5gTypeE kind:bss addr:0x20ee1e4 data_ov000_020ee1f8 kind:bss addr:0x20ee1f8 data_ov000_020ee1fc kind:bss addr:0x20ee1fc data_ov000_020ee208 kind:bss addr:0x20ee208 diff --git a/config/usa/arm9/overlays/ov000/delinks.txt b/config/usa/arm9/overlays/ov000/delinks.txt index bf023a36..9fe997fb 100644 --- a/config/usa/arm9/overlays/ov000/delinks.txt +++ b/config/usa/arm9/overlays/ov000/delinks.txt @@ -37,6 +37,13 @@ src/00_Core/Actor/Navi/ActorNavi.cpp: .data start:0x020e64b4 end:0x020e6614 .sbss start:0x020ee140 end:0x020ee178 +src/00_Core/Actor/Navi/ActorForceNavi.cpp: + .text start:0x020b85cc end:0x020b8644 + .init start:0x020e12dc end:0x020e131c + .ctor start:0x020e1eac end:0x020e1eb0 + .data start:0x020e6614 end:0x020e670c + .sbss start:0x020ee178 end:0x020ee198 + src/00_Core/Actor/Navi/ActorNaviBase.cpp: .text start:0x020b87fc end:0x020bb0b8 .rodata start:0x020dc7bc end:0x020dc7f8 diff --git a/config/usa/arm9/overlays/ov000/symbols.txt b/config/usa/arm9/overlays/ov000/symbols.txt index 4b641f48..0b2c4428 100644 --- a/config/usa/arm9/overlays/ov000/symbols.txt +++ b/config/usa/arm9/overlays/ov000/symbols.txt @@ -2427,10 +2427,10 @@ _ZN9ActorNaviD0Ev kind:function(arm,size=0x40) addr:0x20b8538 func_ov000_020b85d8 kind:function(thumb,size=0x28) addr:0x20b8578 func_ov000_020b8600 kind:function(arm,size=0x10) addr:0x20b85a0 func_ov000_020b8610 kind:function(arm,size=0x1c) addr:0x20b85b0 -func_ov000_020b862c kind:function(arm,size=0x40) addr:0x20b85cc -func_ov000_020b866c kind:function(arm,size=0x8) addr:0x20b860c -func_ov000_020b8674 kind:function(arm,size=0x1c) addr:0x20b8614 -func_ov000_020b8690 kind:function(arm,size=0x14) addr:0x20b8630 +_ZN14ActorForceNavi6CreateEv kind:function(arm,size=0x40) addr:0x20b85cc +_ZN14ActorForceNavi8vfunc_b4Ev kind:function(arm,size=0x8) addr:0x20b860c +_ZN14ActorForceNaviD1Ev kind:function(arm,size=0x1c) addr:0x20b8614 +_ZN14ActorForceNaviD0Ev kind:function(arm,size=0x14) addr:0x20b8630 func_ov000_020b86a4 kind:function(arm,size=0x44) addr:0x20b8644 func_ov000_020b86e8 kind:function(arm,size=0x30) addr:0x20b8688 func_ov000_020b8718 kind:function(arm,size=0x8) addr:0x20b86b8 @@ -3956,7 +3956,7 @@ __sinit_ov000_020e120c kind:function(arm,size=0x44) addr:0x20e11ac __sinit_ov000_020e1250 kind:function(arm,size=0x40) addr:0x20e11f0 __sinit_ov000_020e1290 kind:function(arm,size=0x48) addr:0x20e1230 __sinit_ActorNavi.cpp kind:function(arm,size=0x64) addr:0x20e1278 -__sinit_ov000_020e133c kind:function(arm,size=0x40) addr:0x20e12dc +__sinit_ActorForceNavi.cpp kind:function(arm,size=0x40) addr:0x20e12dc __sinit_ov000_020e137c kind:function(arm,size=0x798) addr:0x20e131c __sinit_ov000_020e1b14 kind:function(arm,size=0x40) addr:0x20e1ab4 __sinit_ov000_020e1b54 kind:function(arm,size=0x40) addr:0x20e1af4 @@ -4958,7 +4958,7 @@ data_ov000_020e6530 kind:data(any) addr:0x20e64d0 data_ov000_020e6534 kind:data(any) addr:0x20e64d4 _ZTV9ActorNavi kind:data(any) addr:0x20e6500 _ZTV24UnkStruct_ov000_020b8110 kind:data(any) addr:0x20e65f8 -data_ov000_020e667c kind:data(any) addr:0x20e661c +_ZTV14ActorForceNavi kind:data(any) addr:0x20e661c data_ov000_020e676c kind:data(any) addr:0x20e670c data_ov000_020e6770 kind:data(any) addr:0x20e6710 data_ov000_020e6774 kind:data(any) addr:0x20e6714 @@ -5879,8 +5879,8 @@ data_ov000_020ee198 kind:bss addr:0x20ee138 _ZN9ActorNavi5gTypeE kind:bss addr:0x20ee14c @419 kind:bss addr:0x20ee160 data_ov000_020ee1cc kind:bss addr:0x20ee16c -data_ov000_020ee1d8 kind:bss addr:0x20ee178 -data_ov000_020ee1e4 kind:bss addr:0x20ee184 +@405 kind:bss addr:0x20ee178 +_ZN14ActorForceNavi5gTypeE kind:bss addr:0x20ee184 data_ov000_020ee1f8 kind:bss addr:0x20ee198 data_ov000_020ee1fc kind:bss addr:0x20ee19c data_ov000_020ee208 kind:bss addr:0x20ee1a8 diff --git a/include/Actor/Navi/ActorForceNavi.hpp b/include/Actor/Navi/ActorForceNavi.hpp new file mode 100644 index 00000000..1623e705 --- /dev/null +++ b/include/Actor/Navi/ActorForceNavi.hpp @@ -0,0 +1,16 @@ +#pragma once + +#include "Actor/Navi/ActorNaviBase.hpp" + +class ActorForceNavi : public ActorNaviBase { +public: + static ActorType gType; + + /* 000 (base) */ + /* 294 */ + + /* 00 */ virtual ~ActorForceNavi() override; + /* b4 */ virtual void vfunc_b4() override; + + static ActorForceNavi *Create(); +}; diff --git a/src/00_Core/Actor/Navi/ActorForceNavi.cpp b/src/00_Core/Actor/Navi/ActorForceNavi.cpp new file mode 100644 index 00000000..6037082d --- /dev/null +++ b/src/00_Core/Actor/Navi/ActorForceNavi.cpp @@ -0,0 +1,7 @@ +#include "Actor/Navi/ActorForceNavi.hpp" + +ActorType ActorForceNavi::gType = ActorType(ActorTypeId_ForceNavi, (ActorCreateFunc) ActorForceNavi::Create, NULL); + +ActorForceNavi *ActorForceNavi::Create() {} +void ActorForceNavi::vfunc_b4() {} +ActorForceNavi::~ActorForceNavi() {} From 656ec5779cccb3f8e2146299ab9af1d4bb95d7c4 Mon Sep 17 00:00:00 2001 From: Aetias Date: Fri, 7 Mar 2025 19:25:02 +0100 Subject: [PATCH 16/37] Delink `ActorWisdomNavi` --- config/eur/arm9/overlays/ov000/delinks.txt | 7 +++++++ config/eur/arm9/overlays/ov000/symbols.txt | 22 +++++++++++----------- config/usa/arm9/overlays/ov000/delinks.txt | 7 +++++++ config/usa/arm9/overlays/ov000/symbols.txt | 22 +++++++++++----------- include/Actor/Navi/ActorWisdomNavi.hpp | 16 ++++++++++++++++ src/00_Core/Actor/Navi/ActorWisdomNavi.cpp | 7 +++++++ 6 files changed, 59 insertions(+), 22 deletions(-) create mode 100644 include/Actor/Navi/ActorWisdomNavi.hpp create mode 100644 src/00_Core/Actor/Navi/ActorWisdomNavi.cpp diff --git a/config/eur/arm9/overlays/ov000/delinks.txt b/config/eur/arm9/overlays/ov000/delinks.txt index 0849ccdc..3cea47c4 100644 --- a/config/eur/arm9/overlays/ov000/delinks.txt +++ b/config/eur/arm9/overlays/ov000/delinks.txt @@ -50,6 +50,13 @@ src/00_Core/Actor/Navi/ActorNaviBase.cpp: .data start:0x020e676c end:0x020e68d4 .sbss start:0x020ee1f8 end:0x020ee1fc +src/00_Core/Actor/Navi/ActorWisdomNavi.cpp: + .text start:0x020c0b64 end:0x020c0bdc + .init start:0x020e1b54 end:0x020e1b94 + .ctor start:0x020e1f18 end:0x020e1f1c + .data start:0x020e7098 end:0x020e7190 + .sbss start:0x020ee590 end:0x020ee5b0 + src/00_Core/Item/Item.cpp: .text start:0x020ad020 end:0x020ad090 .rodata start:0x020dc574 end:0x020dc6c4 diff --git a/config/eur/arm9/overlays/ov000/symbols.txt b/config/eur/arm9/overlays/ov000/symbols.txt index 893b1f66..b3642fb1 100644 --- a/config/eur/arm9/overlays/ov000/symbols.txt +++ b/config/eur/arm9/overlays/ov000/symbols.txt @@ -2696,10 +2696,10 @@ _ZN11EquipShield8vfunc_1cEv kind:function(arm,size=0xc) addr:0x20c07f8 _ZN11EquipShield8vfunc_30Ev kind:function(arm,size=0x68) addr:0x20c0804 _ZN11EquipShield8vfunc_38Ei kind:function(arm,size=0x21c) addr:0x20c086c _ZNK11EquipShield9GetHitboxEP8Cylinder kind:function(arm,size=0xdc) addr:0x20c0a88 -func_ov000_020c0b64 kind:function(arm,size=0x40) addr:0x20c0b64 -func_ov000_020c0ba4 kind:function(arm,size=0x8) addr:0x20c0ba4 -func_ov000_020c0bac kind:function(arm,size=0x1c) addr:0x20c0bac -func_ov000_020c0bc8 kind:function(arm,size=0x14) addr:0x20c0bc8 +_ZN15ActorWisdomNavi6CreateEv kind:function(arm,size=0x40) addr:0x20c0b64 +_ZN15ActorWisdomNavi8vfunc_b4Ev kind:function(arm,size=0x8) addr:0x20c0ba4 +_ZN15ActorWisdomNaviD1Ev kind:function(arm,size=0x1c) addr:0x20c0bac +_ZN15ActorWisdomNaviD0Ev kind:function(arm,size=0x14) addr:0x20c0bc8 func_ov000_020c0bdc kind:function(arm,size=0x2c) addr:0x20c0bdc func_ov000_020c0c08 kind:function(thumb,size=0x28) addr:0x20c0c08 func_ov000_020c0c30 kind:function(thumb,size=0x4) addr:0x20c0c30 @@ -3959,7 +3959,7 @@ __sinit_ActorNavi.cpp kind:function(arm,size=0x64) addr:0x20e12d8 __sinit_ActorForceNavi.cpp kind:function(arm,size=0x40) addr:0x20e133c __sinit_ov000_020e137c kind:function(arm,size=0x798) addr:0x20e137c __sinit_ov000_020e1b14 kind:function(arm,size=0x40) addr:0x20e1b14 -__sinit_ov000_020e1b54 kind:function(arm,size=0x40) addr:0x20e1b54 +__sinit_ActorWisdomNavi.cpp kind:function(arm,size=0x40) addr:0x20e1b54 __sinit_ov000_020e1b94 kind:function(arm,size=0x40) addr:0x20e1b94 __sinit_ov000_020e1bd4 kind:function(arm,size=0x40) addr:0x20e1bd4 __sinit_ov000_020e1c14 kind:function(arm,size=0x40) addr:0x20e1c14 @@ -5057,7 +5057,7 @@ data_ov000_020e7014 kind:data(any) addr:0x20e7014 data_ov000_020e7018 kind:data(any) addr:0x20e7018 data_ov000_020e701c kind:data(any) addr:0x20e701c data_ov000_020e7048 kind:data(any) addr:0x20e7048 -data_ov000_020e70a0 kind:data(any) addr:0x20e70a0 +_ZTV15ActorWisdomNavi kind:data(any) addr:0x20e70a0 data_ov000_020e7198 kind:data(any) addr:0x20e7198 data_ov000_020e71a0 kind:data(any) addr:0x20e71a0 data_ov000_020e71a4 kind:data(any) addr:0x20e71a4 @@ -5875,11 +5875,11 @@ data_ov000_020ee16c kind:bss addr:0x20ee16c data_ov000_020ee178 kind:bss addr:0x20ee178 data_ov000_020ee184 kind:bss addr:0x20ee184 data_ov000_020ee198 kind:bss addr:0x20ee198 -@418 kind:bss addr:0x20ee1a0 +@418 kind:bss addr:0x20ee1a0 local _ZN9ActorNavi5gTypeE kind:bss addr:0x20ee1ac -@419 kind:bss addr:0x20ee1c0 +@419 kind:bss addr:0x20ee1c0 local data_ov000_020ee1cc kind:bss addr:0x20ee1cc -@405 kind:bss addr:0x20ee1d8 +@405 kind:bss addr:0x20ee1d8 local _ZN14ActorForceNavi5gTypeE kind:bss addr:0x20ee1e4 data_ov000_020ee1f8 kind:bss addr:0x20ee1f8 data_ov000_020ee1fc kind:bss addr:0x20ee1fc @@ -5943,8 +5943,8 @@ data_ov000_020ee55c kind:bss addr:0x20ee55c data_ov000_020ee568 kind:bss addr:0x20ee568 gPlayerAnimHandler kind:bss addr:0x20ee57c data_ov000_020ee588 kind:bss addr:0x20ee588 -data_ov000_020ee590 kind:bss addr:0x20ee590 -data_ov000_020ee59c kind:bss addr:0x20ee59c +@405 kind:bss addr:0x20ee590 local +_ZN15ActorWisdomNavi5gTypeE kind:bss addr:0x20ee59c data_ov000_020ee5b0 kind:bss addr:0x20ee5b0 data_ov000_020ee5bc kind:bss addr:0x20ee5bc data_ov000_020ee5d0 kind:bss addr:0x20ee5d0 diff --git a/config/usa/arm9/overlays/ov000/delinks.txt b/config/usa/arm9/overlays/ov000/delinks.txt index 9fe997fb..95a103c2 100644 --- a/config/usa/arm9/overlays/ov000/delinks.txt +++ b/config/usa/arm9/overlays/ov000/delinks.txt @@ -50,6 +50,13 @@ src/00_Core/Actor/Navi/ActorNaviBase.cpp: .data start:0x020e670c end:0x020e6874 .sbss start:0x020ee198 end:0x020ee19c +src/00_Core/Actor/Navi/ActorWisdomNavi.cpp: + .text start:0x020c0b04 end:0x020c0b7c + .init start:0x020e1af4 end:0x020e1b34 + .ctor start:0x020e1eb8 end:0x020e1ebc + .data start:0x020e7038 end:0x020e7130 + .sbss start:0x020ee530 end:0x020ee53c + src/00_Core/Item/Item.cpp: .text start:0x020acfc0 end:0x020ad030 .rodata start:0x020dc514 end:0x020dc664 diff --git a/config/usa/arm9/overlays/ov000/symbols.txt b/config/usa/arm9/overlays/ov000/symbols.txt index 0b2c4428..3de717bc 100644 --- a/config/usa/arm9/overlays/ov000/symbols.txt +++ b/config/usa/arm9/overlays/ov000/symbols.txt @@ -2696,10 +2696,10 @@ _ZN11EquipShield8vfunc_1cEv kind:function(arm,size=0xc) addr:0x20c0798 _ZN11EquipShield8vfunc_30Ev kind:function(arm,size=0x68) addr:0x20c07a4 _ZN11EquipShield8vfunc_38Ei kind:function(arm,size=0x21c) addr:0x20c080c _ZNK11EquipShield9GetHitboxEP8Cylinder kind:function(arm,size=0xdc) addr:0x20c0a28 -func_ov000_020c0b64 kind:function(arm,size=0x40) addr:0x20c0b04 -func_ov000_020c0ba4 kind:function(arm,size=0x8) addr:0x20c0b44 -func_ov000_020c0bac kind:function(arm,size=0x1c) addr:0x20c0b4c -func_ov000_020c0bc8 kind:function(arm,size=0x14) addr:0x20c0b68 +_ZN15ActorWisdomNavi6CreateEv kind:function(arm,size=0x40) addr:0x20c0b04 +_ZN15ActorWisdomNavi8vfunc_b4Ev kind:function(arm,size=0x8) addr:0x20c0b44 +_ZN15ActorWisdomNaviD1Ev kind:function(arm,size=0x1c) addr:0x20c0b4c +_ZN15ActorWisdomNaviD0Ev kind:function(arm,size=0x14) addr:0x20c0b68 func_ov000_020c0bdc kind:function(arm,size=0x2c) addr:0x20c0b7c func_ov000_020c0c08 kind:function(thumb,size=0x28) addr:0x20c0ba8 func_ov000_020c0c30 kind:function(thumb,size=0x4) addr:0x20c0bd0 @@ -3959,7 +3959,7 @@ __sinit_ActorNavi.cpp kind:function(arm,size=0x64) addr:0x20e1278 __sinit_ActorForceNavi.cpp kind:function(arm,size=0x40) addr:0x20e12dc __sinit_ov000_020e137c kind:function(arm,size=0x798) addr:0x20e131c __sinit_ov000_020e1b14 kind:function(arm,size=0x40) addr:0x20e1ab4 -__sinit_ov000_020e1b54 kind:function(arm,size=0x40) addr:0x20e1af4 +__sinit_ActorWisdomNavi.cpp kind:function(arm,size=0x40) addr:0x20e1af4 __sinit_ov000_020e1b94 kind:function(arm,size=0x40) addr:0x20e1b34 __sinit_ov000_020e1bd4 kind:function(arm,size=0x40) addr:0x20e1b74 __sinit_ov000_020e1c14 kind:function(arm,size=0x40) addr:0x20e1bb4 @@ -5057,7 +5057,7 @@ data_ov000_020e7014 kind:data(any) addr:0x20e6fb4 data_ov000_020e7018 kind:data(any) addr:0x20e6fb8 data_ov000_020e701c kind:data(any) addr:0x20e6fbc data_ov000_020e7048 kind:data(any) addr:0x20e6fe8 -data_ov000_020e70a0 kind:data(any) addr:0x20e7040 +_ZTV15ActorWisdomNavi kind:data(any) addr:0x20e7040 data_ov000_020e7198 kind:data(any) addr:0x20e7138 data_ov000_020e71a0 kind:data(any) addr:0x20e7140 data_ov000_020e71a4 kind:data(any) addr:0x20e7144 @@ -5875,11 +5875,11 @@ data_ov000_020ee16c kind:bss addr:0x20ee10c data_ov000_020ee178 kind:bss addr:0x20ee118 data_ov000_020ee184 kind:bss addr:0x20ee124 data_ov000_020ee198 kind:bss addr:0x20ee138 -@418 kind:bss addr:0x20ee140 +@418 kind:bss addr:0x20ee140 local _ZN9ActorNavi5gTypeE kind:bss addr:0x20ee14c -@419 kind:bss addr:0x20ee160 +@419 kind:bss addr:0x20ee160 local data_ov000_020ee1cc kind:bss addr:0x20ee16c -@405 kind:bss addr:0x20ee178 +@405 kind:bss addr:0x20ee178 local _ZN14ActorForceNavi5gTypeE kind:bss addr:0x20ee184 data_ov000_020ee1f8 kind:bss addr:0x20ee198 data_ov000_020ee1fc kind:bss addr:0x20ee19c @@ -5943,8 +5943,8 @@ data_ov000_020ee55c kind:bss addr:0x20ee4fc data_ov000_020ee568 kind:bss addr:0x20ee508 gPlayerAnimHandler kind:bss addr:0x20ee51c data_ov000_020ee588 kind:bss addr:0x20ee528 -data_ov000_020ee590 kind:bss addr:0x20ee530 -data_ov000_020ee59c kind:bss addr:0x20ee53c +@405 kind:bss addr:0x20ee530 local +_ZN15ActorWisdomNavi5gTypeE kind:bss addr:0x20ee53c data_ov000_020ee5b0 kind:bss addr:0x20ee550 data_ov000_020ee5bc kind:bss addr:0x20ee55c data_ov000_020ee5d0 kind:bss addr:0x20ee570 diff --git a/include/Actor/Navi/ActorWisdomNavi.hpp b/include/Actor/Navi/ActorWisdomNavi.hpp new file mode 100644 index 00000000..85bce572 --- /dev/null +++ b/include/Actor/Navi/ActorWisdomNavi.hpp @@ -0,0 +1,16 @@ +#pragma once + +#include "Actor/Navi/ActorNaviBase.hpp" + +class ActorWisdomNavi : public ActorNaviBase { +public: + static ActorType gType; + + /* 000 (base) */ + /* 294 */ + + /* 00 */ virtual ~ActorWisdomNavi() override; + /* b4 */ virtual void vfunc_b4() override; + + static ActorWisdomNavi *Create(); +}; diff --git a/src/00_Core/Actor/Navi/ActorWisdomNavi.cpp b/src/00_Core/Actor/Navi/ActorWisdomNavi.cpp new file mode 100644 index 00000000..2567dc03 --- /dev/null +++ b/src/00_Core/Actor/Navi/ActorWisdomNavi.cpp @@ -0,0 +1,7 @@ +#include "Actor/Navi/ActorWisdomNavi.hpp" + +ActorType ActorWisdomNavi::gType = ActorType(ActorTypeId_WisdomNavi, (ActorCreateFunc) ActorWisdomNavi::Create, NULL); + +ActorWisdomNavi *ActorWisdomNavi::Create() {} +void ActorWisdomNavi::vfunc_b4() {} +ActorWisdomNavi::~ActorWisdomNavi() {} From 35d8fa6f103a93dad0de6b7adb5181d6882db3f9 Mon Sep 17 00:00:00 2001 From: Aetias Date: Sat, 8 Mar 2025 11:46:11 +0100 Subject: [PATCH 17/37] Add `offsetof` macro --- libs/c/include/stddef.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/libs/c/include/stddef.h b/libs/c/include/stddef.h index 4986043a..b0c76af3 100644 --- a/libs/c/include/stddef.h +++ b/libs/c/include/stddef.h @@ -5,4 +5,6 @@ typedef unsigned int size_t; +#define offsetof(type, member) (size_t) &((type *) NULL)->member + #endif From 44ba14e823fd9d67fd92166f5370683fad56f428 Mon Sep 17 00:00:00 2001 From: Aetias Date: Sat, 8 Mar 2025 11:46:49 +0100 Subject: [PATCH 18/37] Decomp `ActorForceNavi` and `ActorWisdomNavi` 100% --- config/eur/arm9/overlays/ov000/delinks.txt | 2 ++ config/eur/arm9/overlays/ov000/symbols.txt | 14 +++++++------- config/usa/arm9/overlays/ov000/delinks.txt | 4 +++- config/usa/arm9/overlays/ov000/symbols.txt | 14 +++++++------- include/Actor/Navi/ActorForceNavi.hpp | 3 +-- include/Actor/Navi/ActorNavi.hpp | 2 +- include/Actor/Navi/ActorNaviBase.hpp | 19 +++++++++++++------ include/Actor/Navi/ActorWisdomNavi.hpp | 3 +-- include/Item/ItemManager.hpp | 15 +++------------ src/00_Core/Actor/Navi/ActorForceNavi.cpp | 13 ++++++++++--- src/00_Core/Actor/Navi/ActorNavi.cpp | 2 +- src/00_Core/Actor/Navi/ActorWisdomNavi.cpp | 13 ++++++++++--- src/00_Core/Item/ItemManager.cpp | 2 +- 13 files changed, 60 insertions(+), 46 deletions(-) diff --git a/config/eur/arm9/overlays/ov000/delinks.txt b/config/eur/arm9/overlays/ov000/delinks.txt index 3cea47c4..10c98e22 100644 --- a/config/eur/arm9/overlays/ov000/delinks.txt +++ b/config/eur/arm9/overlays/ov000/delinks.txt @@ -38,6 +38,7 @@ src/00_Core/Actor/Navi/ActorNavi.cpp: .sbss start:0x020ee1a0 end:0x020ee1d8 src/00_Core/Actor/Navi/ActorForceNavi.cpp: + complete .text start:0x020b862c end:0x020b86a4 .init start:0x020e133c end:0x020e137c .ctor start:0x020e1f0c end:0x020e1f10 @@ -51,6 +52,7 @@ src/00_Core/Actor/Navi/ActorNaviBase.cpp: .sbss start:0x020ee1f8 end:0x020ee1fc src/00_Core/Actor/Navi/ActorWisdomNavi.cpp: + complete .text start:0x020c0b64 end:0x020c0bdc .init start:0x020e1b54 end:0x020e1b94 .ctor start:0x020e1f18 end:0x020e1f1c diff --git a/config/eur/arm9/overlays/ov000/symbols.txt b/config/eur/arm9/overlays/ov000/symbols.txt index b3642fb1..094ec935 100644 --- a/config/eur/arm9/overlays/ov000/symbols.txt +++ b/config/eur/arm9/overlays/ov000/symbols.txt @@ -2407,7 +2407,7 @@ _ZN24UnkStruct_ov000_020b81108vfunc_14EPt kind:function(arm,size=0xc) addr:0x20b _ZN9ActorNavi19func_ov000_020b8200Ev kind:function(arm,size=0x10) addr:0x20b8200 _ZN9ActorNavi8vfunc_c4Ev kind:function(arm,size=0x38) addr:0x20b8210 _ZN9ActorNavi8vfunc_c8Ev kind:function(arm,size=0x38) addr:0x20b8248 -_ZN9ActorNavi8vfunc_b4Ev kind:function(arm,size=0x8) addr:0x20b8280 +_ZN9ActorNavi10GetFairyIdEv kind:function(arm,size=0x8) addr:0x20b8280 _ZN9ActorNavi8vfunc_b8Ev kind:function(arm,size=0x8) addr:0x20b8288 _ZN9ActorNavi8vfunc_d4Ev kind:function(arm,size=0x2c) addr:0x20b8290 _ZN9ActorNavi8vfunc_d0Ev kind:function(arm,size=0x2c) addr:0x20b82bc @@ -2428,9 +2428,9 @@ func_ov000_020b85d8 kind:function(thumb,size=0x28) addr:0x20b85d8 func_ov000_020b8600 kind:function(arm,size=0x10) addr:0x20b8600 func_ov000_020b8610 kind:function(arm,size=0x1c) addr:0x20b8610 _ZN14ActorForceNavi6CreateEv kind:function(arm,size=0x40) addr:0x20b862c -_ZN14ActorForceNavi8vfunc_b4Ev kind:function(arm,size=0x8) addr:0x20b866c -_ZN14ActorForceNaviD1Ev kind:function(arm,size=0x1c) addr:0x20b8674 -_ZN14ActorForceNaviD0Ev kind:function(arm,size=0x14) addr:0x20b8690 +_ZN14ActorForceNavi10GetFairyIdEv kind:function(arm,size=0x8) addr:0x20b866c +_ZN14ActorForceNaviD0Ev kind:function(arm,size=0x1c) addr:0x20b8674 +_ZN14ActorForceNaviD1Ev kind:function(arm,size=0x14) addr:0x20b8690 func_ov000_020b86a4 kind:function(arm,size=0x44) addr:0x20b86a4 func_ov000_020b86e8 kind:function(arm,size=0x30) addr:0x20b86e8 func_ov000_020b8718 kind:function(arm,size=0x8) addr:0x20b8718 @@ -2697,9 +2697,9 @@ _ZN11EquipShield8vfunc_30Ev kind:function(arm,size=0x68) addr:0x20c0804 _ZN11EquipShield8vfunc_38Ei kind:function(arm,size=0x21c) addr:0x20c086c _ZNK11EquipShield9GetHitboxEP8Cylinder kind:function(arm,size=0xdc) addr:0x20c0a88 _ZN15ActorWisdomNavi6CreateEv kind:function(arm,size=0x40) addr:0x20c0b64 -_ZN15ActorWisdomNavi8vfunc_b4Ev kind:function(arm,size=0x8) addr:0x20c0ba4 -_ZN15ActorWisdomNaviD1Ev kind:function(arm,size=0x1c) addr:0x20c0bac -_ZN15ActorWisdomNaviD0Ev kind:function(arm,size=0x14) addr:0x20c0bc8 +_ZN15ActorWisdomNavi10GetFairyIdEv kind:function(arm,size=0x8) addr:0x20c0ba4 +_ZN15ActorWisdomNaviD0Ev kind:function(arm,size=0x1c) addr:0x20c0bac +_ZN15ActorWisdomNaviD1Ev kind:function(arm,size=0x14) addr:0x20c0bc8 func_ov000_020c0bdc kind:function(arm,size=0x2c) addr:0x20c0bdc func_ov000_020c0c08 kind:function(thumb,size=0x28) addr:0x20c0c08 func_ov000_020c0c30 kind:function(thumb,size=0x4) addr:0x20c0c30 diff --git a/config/usa/arm9/overlays/ov000/delinks.txt b/config/usa/arm9/overlays/ov000/delinks.txt index 95a103c2..38c29926 100644 --- a/config/usa/arm9/overlays/ov000/delinks.txt +++ b/config/usa/arm9/overlays/ov000/delinks.txt @@ -38,6 +38,7 @@ src/00_Core/Actor/Navi/ActorNavi.cpp: .sbss start:0x020ee140 end:0x020ee178 src/00_Core/Actor/Navi/ActorForceNavi.cpp: + complete .text start:0x020b85cc end:0x020b8644 .init start:0x020e12dc end:0x020e131c .ctor start:0x020e1eac end:0x020e1eb0 @@ -51,11 +52,12 @@ src/00_Core/Actor/Navi/ActorNaviBase.cpp: .sbss start:0x020ee198 end:0x020ee19c src/00_Core/Actor/Navi/ActorWisdomNavi.cpp: + complete .text start:0x020c0b04 end:0x020c0b7c .init start:0x020e1af4 end:0x020e1b34 .ctor start:0x020e1eb8 end:0x020e1ebc .data start:0x020e7038 end:0x020e7130 - .sbss start:0x020ee530 end:0x020ee53c + .sbss start:0x020ee530 end:0x020ee550 src/00_Core/Item/Item.cpp: .text start:0x020acfc0 end:0x020ad030 diff --git a/config/usa/arm9/overlays/ov000/symbols.txt b/config/usa/arm9/overlays/ov000/symbols.txt index 3de717bc..d93ee38b 100644 --- a/config/usa/arm9/overlays/ov000/symbols.txt +++ b/config/usa/arm9/overlays/ov000/symbols.txt @@ -2407,7 +2407,7 @@ _ZN24UnkStruct_ov000_020b81108vfunc_14EPt kind:function(arm,size=0xc) addr:0x20b _ZN9ActorNavi19func_ov000_020b8200Ev kind:function(arm,size=0x10) addr:0x20b81a0 _ZN9ActorNavi8vfunc_c4Ev kind:function(arm,size=0x38) addr:0x20b81b0 _ZN9ActorNavi8vfunc_c8Ev kind:function(arm,size=0x38) addr:0x20b81e8 -_ZN9ActorNavi8vfunc_b4Ev kind:function(arm,size=0x8) addr:0x20b8220 +_ZN9ActorNavi10GetFairyIdEv kind:function(arm,size=0x8) addr:0x20b8220 _ZN9ActorNavi8vfunc_b8Ev kind:function(arm,size=0x8) addr:0x20b8228 _ZN9ActorNavi8vfunc_d4Ev kind:function(arm,size=0x2c) addr:0x20b8230 _ZN9ActorNavi8vfunc_d0Ev kind:function(arm,size=0x2c) addr:0x20b825c @@ -2428,9 +2428,9 @@ func_ov000_020b85d8 kind:function(thumb,size=0x28) addr:0x20b8578 func_ov000_020b8600 kind:function(arm,size=0x10) addr:0x20b85a0 func_ov000_020b8610 kind:function(arm,size=0x1c) addr:0x20b85b0 _ZN14ActorForceNavi6CreateEv kind:function(arm,size=0x40) addr:0x20b85cc -_ZN14ActorForceNavi8vfunc_b4Ev kind:function(arm,size=0x8) addr:0x20b860c -_ZN14ActorForceNaviD1Ev kind:function(arm,size=0x1c) addr:0x20b8614 -_ZN14ActorForceNaviD0Ev kind:function(arm,size=0x14) addr:0x20b8630 +_ZN14ActorForceNavi10GetFairyIdEv kind:function(arm,size=0x8) addr:0x20b860c +_ZN14ActorForceNaviD0Ev kind:function(arm,size=0x1c) addr:0x20b8614 +_ZN14ActorForceNaviD1Ev kind:function(arm,size=0x14) addr:0x20b8630 func_ov000_020b86a4 kind:function(arm,size=0x44) addr:0x20b8644 func_ov000_020b86e8 kind:function(arm,size=0x30) addr:0x20b8688 func_ov000_020b8718 kind:function(arm,size=0x8) addr:0x20b86b8 @@ -2697,9 +2697,9 @@ _ZN11EquipShield8vfunc_30Ev kind:function(arm,size=0x68) addr:0x20c07a4 _ZN11EquipShield8vfunc_38Ei kind:function(arm,size=0x21c) addr:0x20c080c _ZNK11EquipShield9GetHitboxEP8Cylinder kind:function(arm,size=0xdc) addr:0x20c0a28 _ZN15ActorWisdomNavi6CreateEv kind:function(arm,size=0x40) addr:0x20c0b04 -_ZN15ActorWisdomNavi8vfunc_b4Ev kind:function(arm,size=0x8) addr:0x20c0b44 -_ZN15ActorWisdomNaviD1Ev kind:function(arm,size=0x1c) addr:0x20c0b4c -_ZN15ActorWisdomNaviD0Ev kind:function(arm,size=0x14) addr:0x20c0b68 +_ZN15ActorWisdomNavi10GetFairyIdEv kind:function(arm,size=0x8) addr:0x20c0b44 +_ZN15ActorWisdomNaviD0Ev kind:function(arm,size=0x1c) addr:0x20c0b4c +_ZN15ActorWisdomNaviD1Ev kind:function(arm,size=0x14) addr:0x20c0b68 func_ov000_020c0bdc kind:function(arm,size=0x2c) addr:0x20c0b7c func_ov000_020c0c08 kind:function(thumb,size=0x28) addr:0x20c0ba8 func_ov000_020c0c30 kind:function(thumb,size=0x4) addr:0x20c0bd0 diff --git a/include/Actor/Navi/ActorForceNavi.hpp b/include/Actor/Navi/ActorForceNavi.hpp index 1623e705..18a124f4 100644 --- a/include/Actor/Navi/ActorForceNavi.hpp +++ b/include/Actor/Navi/ActorForceNavi.hpp @@ -9,8 +9,7 @@ public: /* 000 (base) */ /* 294 */ - /* 00 */ virtual ~ActorForceNavi() override; - /* b4 */ virtual void vfunc_b4() override; + /* b4 */ virtual FairyId GetFairyId() override; static ActorForceNavi *Create(); }; diff --git a/include/Actor/Navi/ActorNavi.hpp b/include/Actor/Navi/ActorNavi.hpp index 0d0b2fb5..86774de4 100644 --- a/include/Actor/Navi/ActorNavi.hpp +++ b/include/Actor/Navi/ActorNavi.hpp @@ -43,7 +43,7 @@ public: /* 08 */ virtual bool vfunc_08() override; /* 20 */ virtual void vfunc_20(bool param1) override; /* 8c */ virtual bool vfunc_8c() override; - /* b4 */ virtual void vfunc_b4() override; + /* b4 */ virtual FairyId GetFairyId() override; /* b8 */ virtual s32 vfunc_b8() override; /* c0 */ virtual bool vfunc_c0(Vec3p *param1) override; /* c4 */ virtual void vfunc_c4() override; diff --git a/include/Actor/Navi/ActorNaviBase.hpp b/include/Actor/Navi/ActorNaviBase.hpp index 2af8acdf..4c2a20cf 100644 --- a/include/Actor/Navi/ActorNaviBase.hpp +++ b/include/Actor/Navi/ActorNaviBase.hpp @@ -7,6 +7,15 @@ #include "Player/EquipHammer.hpp" #include "Render/ModelRender.hpp" +typedef s32 FairyId; +enum FairyId_ { + FairyId_None = -1, + FairyId_Courage = 0, + FairyId_Power = 1, + FairyId_Wisdom = 2, + FairyId_COUNT = 3, +}; + class ActorNaviBase_Unk1 {}; class ActorNaviBase : public Actor { @@ -16,12 +25,12 @@ public: /* 164 */ unk32 mUnk_164; /* 168 */ ModelRender mUnk_168; /* 1c4 */ unk8 mUnk_1c4[0xc]; - /* 1d0 */ void *mUnk_1d0; - /* 1d4 */ unk8 mUnk_1d4[0x30]; + /* 1d0 */ unk8 mUnk_1d0[0x24]; + /* 1f4 */ unk8 mUnk_1f4[0x20]; /* 214 */ unk16 mUnk_214; /* 216 */ unk8 mUnk_216[0xc]; /* 222 */ unk16 mUnk_222; - /* 224 */ unk8 mUnk_224[0x18]; + /* 224 */ unk8 mUnk_224[0x28]; /* 24c */ unk32 mUnk_24c; /* 250 */ unk32 mUnk_250; /* 254 */ unk32 mUnk_254; @@ -51,9 +60,7 @@ public: /* 84 */ virtual void vfunc_84() override; /* 90 */ virtual bool vfunc_90() override; /* 94 */ virtual void vfunc_94() override; - /* a0 */ virtual bool TrySetTransform(Transform *transform) override; - /* b0 */ virtual void SetTransform(Transform *transform) override; - /* b4 */ virtual void vfunc_b4() = 0; + /* b4 */ virtual FairyId GetFairyId() = 0; /* b8 */ virtual s32 vfunc_b8(); /* bc */ virtual bool vfunc_bc(unk32 param1, unk8 param2, s32 param3); /* c0 */ virtual bool vfunc_c0(Vec3p *param1); diff --git a/include/Actor/Navi/ActorWisdomNavi.hpp b/include/Actor/Navi/ActorWisdomNavi.hpp index 85bce572..fb6d2641 100644 --- a/include/Actor/Navi/ActorWisdomNavi.hpp +++ b/include/Actor/Navi/ActorWisdomNavi.hpp @@ -9,8 +9,7 @@ public: /* 000 (base) */ /* 294 */ - /* 00 */ virtual ~ActorWisdomNavi() override; - /* b4 */ virtual void vfunc_b4() override; + /* b4 */ virtual FairyId GetFairyId() override; static ActorWisdomNavi *Create(); }; diff --git a/include/Item/ItemManager.hpp b/include/Item/ItemManager.hpp index c0a84aa7..9e473fc2 100644 --- a/include/Item/ItemManager.hpp +++ b/include/Item/ItemManager.hpp @@ -8,7 +8,7 @@ extern "C" { #include "nds/math.h" #include "types.h" -#include "Actor/Navi/ActorNavi.hpp" +#include "Actor/Navi/ActorNaviBase.hpp" #include "Item/Item.hpp" #include "Player/EquipItem.hpp" #include "Render/ModelRender.hpp" @@ -20,15 +20,6 @@ extern "C" { #define MAX_AMMO_UPGRADE 2 #define MAX_UNK_0BA 9 -typedef s32 FairyId; -enum FairyId_ { - FairyId_None = -1, - FairyId_Courage = 0, - FairyId_Power = 1, - FairyId_Wisdom = 2, - FairyId_COUNT = 3, -}; - typedef u32 ItemModelId; enum ItemModelId_ { ItemModelId_OshusSword, // swA @@ -66,7 +57,7 @@ private: /* 008 */ ItemFlag mForcedItem; // game crashes when any item besides this one is equipped /* 00c */ u32 mHourglassSandFrames; /* 010 */ FairyId mEquippedFairy; - /* 014 */ ActorNavi *mFairies[FairyId_COUNT]; + /* 014 */ ActorNaviBase *mFairies[FairyId_COUNT]; /* 020 */ u16 mEquipLoadTimer; /* 022 */ u16 mNumRupees; /* 024 */ u8 mNumGems[Gem_COUNT]; @@ -114,7 +105,7 @@ public: // Fairy FairyId GetEquippedFairy() const; - ActorNavi *GetFairy(FairyId id) const; + ActorNaviBase *GetFairy(FairyId id) const; u32 GetActiveFairyLevel(FairyId id) const; u32 GetFairyLevel(FairyId id) const; void SpawnFairies(); diff --git a/src/00_Core/Actor/Navi/ActorForceNavi.cpp b/src/00_Core/Actor/Navi/ActorForceNavi.cpp index 6037082d..04b83c13 100644 --- a/src/00_Core/Actor/Navi/ActorForceNavi.cpp +++ b/src/00_Core/Actor/Navi/ActorForceNavi.cpp @@ -1,7 +1,14 @@ #include "Actor/Navi/ActorForceNavi.hpp" +#pragma section sbss begin ActorType ActorForceNavi::gType = ActorType(ActorTypeId_ForceNavi, (ActorCreateFunc) ActorForceNavi::Create, NULL); +#pragma section sbss end -ActorForceNavi *ActorForceNavi::Create() {} -void ActorForceNavi::vfunc_b4() {} -ActorForceNavi::~ActorForceNavi() {} +extern u32 **data_027e0fe0[]; +ActorForceNavi *ActorForceNavi::Create() { + return new(*data_027e0fe0[0], 4) ActorForceNavi(); +} + +ARM FairyId ActorForceNavi::GetFairyId() { + return FairyId_Power; +} diff --git a/src/00_Core/Actor/Navi/ActorNavi.cpp b/src/00_Core/Actor/Navi/ActorNavi.cpp index 5c4c18f4..7c195178 100644 --- a/src/00_Core/Actor/Navi/ActorNavi.cpp +++ b/src/00_Core/Actor/Navi/ActorNavi.cpp @@ -14,7 +14,7 @@ void UnkStruct_ov000_020b8110::vfunc_14(u16 *param1) {} void ActorNavi::func_ov000_020b8200() {} void ActorNavi::vfunc_c4() {} void ActorNavi::vfunc_c8() {} -void ActorNavi::vfunc_b4() {} +FairyId ActorNavi::GetFairyId() {} s32 ActorNavi::vfunc_b8() {} void ActorNavi::vfunc_d4() {} void ActorNavi::vfunc_d0() {} diff --git a/src/00_Core/Actor/Navi/ActorWisdomNavi.cpp b/src/00_Core/Actor/Navi/ActorWisdomNavi.cpp index 2567dc03..84c02e33 100644 --- a/src/00_Core/Actor/Navi/ActorWisdomNavi.cpp +++ b/src/00_Core/Actor/Navi/ActorWisdomNavi.cpp @@ -1,7 +1,14 @@ #include "Actor/Navi/ActorWisdomNavi.hpp" +#pragma section sbss begin ActorType ActorWisdomNavi::gType = ActorType(ActorTypeId_WisdomNavi, (ActorCreateFunc) ActorWisdomNavi::Create, NULL); +#pragma section sbss end -ActorWisdomNavi *ActorWisdomNavi::Create() {} -void ActorWisdomNavi::vfunc_b4() {} -ActorWisdomNavi::~ActorWisdomNavi() {} +extern u32 **data_027e0fe0[]; +ARM ActorWisdomNavi *ActorWisdomNavi::Create() { + return new(*data_027e0fe0[0], 4) ActorWisdomNavi(); +} + +ARM FairyId ActorWisdomNavi::GetFairyId() { + return FairyId_Wisdom; +} diff --git a/src/00_Core/Item/ItemManager.cpp b/src/00_Core/Item/ItemManager.cpp index 96fbad4c..3344c74e 100644 --- a/src/00_Core/Item/ItemManager.cpp +++ b/src/00_Core/Item/ItemManager.cpp @@ -126,7 +126,7 @@ ARM FairyId ItemManager::GetEquippedFairy() const { return fairy; } -ARM ActorNavi *ItemManager::GetFairy(FairyId id) const { +ARM ActorNaviBase *ItemManager::GetFairy(FairyId id) const { return mFairies[id]; } From a8dc7ef705f777cc725e1ec08918fc8c2d61b60a Mon Sep 17 00:00:00 2001 From: Aetias Date: Sat, 8 Mar 2025 12:35:55 +0100 Subject: [PATCH 19/37] Delink and 81% decomp `ActorActionObject` --- config/eur/arm9/overlays/ov000/delinks.txt | 7 ++ config/eur/arm9/overlays/ov000/symbols.txt | 24 +++--- config/usa/arm9/overlays/ov000/delinks.txt | 7 ++ config/usa/arm9/overlays/ov000/symbols.txt | 24 +++--- include/Actor/Actor.hpp | 2 +- include/Actor/ActorType.hpp | 1 + include/Actor/Dungeon/ActorActionObject.hpp | 20 +++++ include/Player/PlayerBase.hpp | 2 +- include/Player/PlayerLinkBase.hpp | 2 +- src/00_Core/Actor/Actor.cpp | 4 +- .../Actor/Dungeon/ActorActionObject.cpp | 85 +++++++++++++++++++ src/00_Core/Player/PlayerLinkBase.cpp | 2 +- 12 files changed, 150 insertions(+), 30 deletions(-) create mode 100644 include/Actor/Dungeon/ActorActionObject.hpp create mode 100644 src/00_Core/Actor/Dungeon/ActorActionObject.cpp diff --git a/config/eur/arm9/overlays/ov000/delinks.txt b/config/eur/arm9/overlays/ov000/delinks.txt index 10c98e22..558720d1 100644 --- a/config/eur/arm9/overlays/ov000/delinks.txt +++ b/config/eur/arm9/overlays/ov000/delinks.txt @@ -51,6 +51,13 @@ src/00_Core/Actor/Navi/ActorNaviBase.cpp: .data start:0x020e676c end:0x020e68d4 .sbss start:0x020ee1f8 end:0x020ee1fc +src/00_Core/Actor/Dungeon/ActorActionObject.cpp: + .text start:0x020be198 end:0x020be418 + .init start:0x020e1b14 end:0x020e1b54 + .ctor start:0x020e1f14 end:0x020e1f18 + .data start:0x020e6d3c end:0x020e6df8 + .sbss start:0x020ee55c end:0x020ee57c + src/00_Core/Actor/Navi/ActorWisdomNavi.cpp: complete .text start:0x020c0b64 end:0x020c0bdc diff --git a/config/eur/arm9/overlays/ov000/symbols.txt b/config/eur/arm9/overlays/ov000/symbols.txt index 094ec935..76633bcd 100644 --- a/config/eur/arm9/overlays/ov000/symbols.txt +++ b/config/eur/arm9/overlays/ov000/symbols.txt @@ -2617,13 +2617,13 @@ func_ov000_020bd958 kind:function(arm,size=0x4fc) addr:0x20bd958 func_ov000_020bde54 kind:function(arm,size=0x60) addr:0x20bde54 func_ov000_020bdeb4 kind:function(arm,size=0x10c) addr:0x20bdeb4 func_ov000_020bdfc0 kind:function(arm,size=0x1d8) addr:0x20bdfc0 -func_ov000_020be198 kind:function(arm,size=0x30) addr:0x20be198 -func_ov000_020be1c8 kind:function(arm,size=0x20) addr:0x20be1c8 -func_ov000_020be1e8 kind:function(arm,size=0x14) addr:0x20be1e8 -func_ov000_020be1fc kind:function(arm,size=0x1c) addr:0x20be1fc -func_ov000_020be218 kind:function(arm,size=0x7c) addr:0x20be218 -func_ov000_020be294 kind:function(arm,size=0x178) addr:0x20be294 -func_ov000_020be40c kind:function(arm,size=0xc) addr:0x20be40c +_ZN17ActorActionObject6CreateEv kind:function(arm,size=0x30) addr:0x20be198 +_ZN17ActorActionObjectC1Ev kind:function(arm,size=0x20) addr:0x20be1c8 +_ZN17ActorActionObjectD1Ev kind:function(arm,size=0x14) addr:0x20be1e8 +_ZN17ActorActionObjectD0Ev kind:function(arm,size=0x1c) addr:0x20be1fc +_ZN17ActorActionObject8vfunc_08Ev kind:function(arm,size=0x7c) addr:0x20be218 +_ZN17ActorActionObject8vfunc_14Ej kind:function(arm,size=0x178) addr:0x20be294 +_ZN17ActorActionObject8vfunc_18Ej kind:function(arm,size=0xc) addr:0x20be40c func_ov000_020be418 kind:function(arm,size=0x4c) addr:0x20be418 func_ov000_020be464 kind:function(arm,size=0x78) addr:0x20be464 func_ov000_020be4dc kind:function(arm,size=0x64) addr:0x20be4dc @@ -2745,7 +2745,7 @@ _ZN5Actor8vfunc_30Ev kind:function(arm,size=0x8) addr:0x20c17b0 _ZN5Actor8vfunc_14Ej kind:function(arm,size=0x4) addr:0x20c17b8 _ZN5Actor8vfunc_18Ej kind:function(arm,size=0x18) addr:0x20c17bc _ZN5Actor8vfunc_1cEPt kind:function(arm,size=0xc0) addr:0x20c17d4 -_ZN5Actor8vfunc_20Ei kind:function(arm,size=0x4) addr:0x20c1894 +_ZN5Actor8vfunc_20Eb kind:function(arm,size=0x4) addr:0x20c1894 _ZN5Actor10SetUnk_129Eb kind:function(arm,size=0x10) addr:0x20c1898 _ZN5Actor10SetUnk_11bEv kind:function(arm,size=0x1c) addr:0x20c18a8 _ZN5Actor11SetVelocityEP5Vec3p kind:function(arm,size=0x38) addr:0x20c18c4 @@ -3958,7 +3958,7 @@ __sinit_ov000_020e1290 kind:function(arm,size=0x48) addr:0x20e1290 __sinit_ActorNavi.cpp kind:function(arm,size=0x64) addr:0x20e12d8 __sinit_ActorForceNavi.cpp kind:function(arm,size=0x40) addr:0x20e133c __sinit_ov000_020e137c kind:function(arm,size=0x798) addr:0x20e137c -__sinit_ov000_020e1b14 kind:function(arm,size=0x40) addr:0x20e1b14 +__sinit_ActorActionObject.cpp kind:function(arm,size=0x40) addr:0x20e1b14 __sinit_ActorWisdomNavi.cpp kind:function(arm,size=0x40) addr:0x20e1b54 __sinit_ov000_020e1b94 kind:function(arm,size=0x40) addr:0x20e1b94 __sinit_ov000_020e1bd4 kind:function(arm,size=0x40) addr:0x20e1bd4 @@ -5017,7 +5017,7 @@ data_ov000_020e6c58 kind:data(any) addr:0x20e6c58 data_ov000_020e6c5c kind:data(any) addr:0x20e6c5c _ZTV14PlayerLinkBase kind:data(any) addr:0x20e6c88 data_ov000_020e6d18 kind:data(any) addr:0x20e6d18 -data_ov000_020e6d44 kind:data(any) addr:0x20e6d44 +_ZTV17ActorActionObject kind:data(any) addr:0x20e6d44 data_ov000_020e6df8 kind:data(any) addr:0x20e6df8 data_ov000_020e6dfc kind:data(any) addr:0x20e6dfc data_ov000_020e6e08 kind:data(any) addr:0x20e6e08 @@ -5939,8 +5939,8 @@ data_ov000_020ee50c kind:bss addr:0x20ee50c data_ov000_020ee520 kind:bss addr:0x20ee520 data_ov000_020ee534 kind:bss addr:0x20ee534 data_ov000_020ee548 kind:bss addr:0x20ee548 -data_ov000_020ee55c kind:bss addr:0x20ee55c -data_ov000_020ee568 kind:bss addr:0x20ee568 +@360 kind:bss addr:0x20ee55c local +_ZN17ActorActionObject5gTypeE kind:bss addr:0x20ee568 gPlayerAnimHandler kind:bss addr:0x20ee57c data_ov000_020ee588 kind:bss addr:0x20ee588 @405 kind:bss addr:0x20ee590 local diff --git a/config/usa/arm9/overlays/ov000/delinks.txt b/config/usa/arm9/overlays/ov000/delinks.txt index 38c29926..442437bd 100644 --- a/config/usa/arm9/overlays/ov000/delinks.txt +++ b/config/usa/arm9/overlays/ov000/delinks.txt @@ -51,6 +51,13 @@ src/00_Core/Actor/Navi/ActorNaviBase.cpp: .data start:0x020e670c end:0x020e6874 .sbss start:0x020ee198 end:0x020ee19c +src/00_Core/Actor/Dungeon/ActorActionObject.cpp: + .text start:0x020be138 end:0x020be3b8 + .init start:0x020e1ab4 end:0x020e1af4 + .ctor start:0x020e1eb4 end:0x020e1eb8 + .data start:0x020e6cdc end:0x020e6d98 + .sbss start:0x020ee4fc end:0x020ee51c + src/00_Core/Actor/Navi/ActorWisdomNavi.cpp: complete .text start:0x020c0b04 end:0x020c0b7c diff --git a/config/usa/arm9/overlays/ov000/symbols.txt b/config/usa/arm9/overlays/ov000/symbols.txt index d93ee38b..9d463b23 100644 --- a/config/usa/arm9/overlays/ov000/symbols.txt +++ b/config/usa/arm9/overlays/ov000/symbols.txt @@ -2617,13 +2617,13 @@ func_ov000_020bd958 kind:function(arm,size=0x4fc) addr:0x20bd8f8 func_ov000_020bde54 kind:function(arm,size=0x60) addr:0x20bddf4 func_ov000_020bdeb4 kind:function(arm,size=0x10c) addr:0x20bde54 func_ov000_020bdfc0 kind:function(arm,size=0x1d8) addr:0x20bdf60 -func_ov000_020be198 kind:function(arm,size=0x30) addr:0x20be138 -func_ov000_020be1c8 kind:function(arm,size=0x20) addr:0x20be168 -func_ov000_020be1e8 kind:function(arm,size=0x14) addr:0x20be188 -func_ov000_020be1fc kind:function(arm,size=0x1c) addr:0x20be19c -func_ov000_020be218 kind:function(arm,size=0x7c) addr:0x20be1b8 -func_ov000_020be294 kind:function(arm,size=0x178) addr:0x20be234 -func_ov000_020be40c kind:function(arm,size=0xc) addr:0x20be3ac +_ZN17ActorActionObject6CreateEv kind:function(arm,size=0x30) addr:0x20be138 +_ZN17ActorActionObjectC1Ev kind:function(arm,size=0x20) addr:0x20be168 +_ZN17ActorActionObjectD1Ev kind:function(arm,size=0x14) addr:0x20be188 +_ZN17ActorActionObjectD0Ev kind:function(arm,size=0x1c) addr:0x20be19c +_ZN17ActorActionObject8vfunc_08Ev kind:function(arm,size=0x7c) addr:0x20be1b8 +_ZN17ActorActionObject8vfunc_14Ej kind:function(arm,size=0x178) addr:0x20be234 +_ZN17ActorActionObject8vfunc_18Ej kind:function(arm,size=0xc) addr:0x20be3ac func_ov000_020be418 kind:function(arm,size=0x4c) addr:0x20be3b8 func_ov000_020be464 kind:function(arm,size=0x78) addr:0x20be404 func_ov000_020be4dc kind:function(arm,size=0x64) addr:0x20be47c @@ -2745,7 +2745,7 @@ _ZN5Actor8vfunc_30Ev kind:function(arm,size=0x8) addr:0x20c1750 _ZN5Actor8vfunc_14Ej kind:function(arm,size=0x4) addr:0x20c1758 _ZN5Actor8vfunc_18Ej kind:function(arm,size=0x18) addr:0x20c175c _ZN5Actor8vfunc_1cEPt kind:function(arm,size=0xc0) addr:0x20c1774 -_ZN5Actor8vfunc_20Ei kind:function(arm,size=0x4) addr:0x20c1834 +_ZN5Actor8vfunc_20Eb kind:function(arm,size=0x4) addr:0x20c1834 _ZN5Actor10SetUnk_129Eb kind:function(arm,size=0x10) addr:0x20c1838 _ZN5Actor10SetUnk_11bEv kind:function(arm,size=0x1c) addr:0x20c1848 _ZN5Actor11SetVelocityEP5Vec3p kind:function(arm,size=0x38) addr:0x20c1864 @@ -3958,7 +3958,7 @@ __sinit_ov000_020e1290 kind:function(arm,size=0x48) addr:0x20e1230 __sinit_ActorNavi.cpp kind:function(arm,size=0x64) addr:0x20e1278 __sinit_ActorForceNavi.cpp kind:function(arm,size=0x40) addr:0x20e12dc __sinit_ov000_020e137c kind:function(arm,size=0x798) addr:0x20e131c -__sinit_ov000_020e1b14 kind:function(arm,size=0x40) addr:0x20e1ab4 +__sinit_ActorActionObject.cpp kind:function(arm,size=0x40) addr:0x20e1ab4 __sinit_ActorWisdomNavi.cpp kind:function(arm,size=0x40) addr:0x20e1af4 __sinit_ov000_020e1b94 kind:function(arm,size=0x40) addr:0x20e1b34 __sinit_ov000_020e1bd4 kind:function(arm,size=0x40) addr:0x20e1b74 @@ -5017,7 +5017,7 @@ data_ov000_020e6c58 kind:data(any) addr:0x20e6bf8 data_ov000_020e6c5c kind:data(any) addr:0x20e6bfc _ZTV14PlayerLinkBase kind:data(any) addr:0x20e6c28 data_ov000_020e6d18 kind:data(any) addr:0x20e6cb8 -data_ov000_020e6d44 kind:data(any) addr:0x20e6ce4 +_ZTV17ActorActionObject kind:data(any) addr:0x20e6ce4 data_ov000_020e6df8 kind:data(any) addr:0x20e6d98 data_ov000_020e6dfc kind:data(any) addr:0x20e6d9c data_ov000_020e6e08 kind:data(any) addr:0x20e6da8 @@ -5939,8 +5939,8 @@ data_ov000_020ee50c kind:bss addr:0x20ee4ac data_ov000_020ee520 kind:bss addr:0x20ee4c0 data_ov000_020ee534 kind:bss addr:0x20ee4d4 data_ov000_020ee548 kind:bss addr:0x20ee4e8 -data_ov000_020ee55c kind:bss addr:0x20ee4fc -data_ov000_020ee568 kind:bss addr:0x20ee508 +@360 kind:bss addr:0x20ee4fc local +_ZN17ActorActionObject5gTypeE kind:bss addr:0x20ee508 gPlayerAnimHandler kind:bss addr:0x20ee51c data_ov000_020ee588 kind:bss addr:0x20ee528 @405 kind:bss addr:0x20ee530 local diff --git a/include/Actor/Actor.hpp b/include/Actor/Actor.hpp index 2a30a7c1..837ca862 100644 --- a/include/Actor/Actor.hpp +++ b/include/Actor/Actor.hpp @@ -227,7 +227,7 @@ public: bool func_ov00_020c195c(); bool func_ov00_020c198c(); void KillPickupItemActors(); - void func_Ov00_020c1bfc(s32 param1); + bool func_Ov00_020c1bfc(s32 param1); void func_ov00_020c1c20(s32 param1, unk32 param2); bool IsNearLink(); void func_ov00_020c1cf8(); diff --git a/include/Actor/ActorType.hpp b/include/Actor/ActorType.hpp index 7842da14..f71c533b 100644 --- a/include/Actor/ActorType.hpp +++ b/include/Actor/ActorType.hpp @@ -41,6 +41,7 @@ enum ActorTypeId_ { ActorTypeId_SmallKey = 'NKEY', ActorTypeId_SwitchObject = 'SWOB', ActorTypeId_EventIcon = 'EVIC', + ActorTypeId_ActionObject = 'ACOB', ActorTypeId_Sandworm = 'MLDW', ActorTypeId_Tektite = 'TEKT', diff --git a/include/Actor/Dungeon/ActorActionObject.hpp b/include/Actor/Dungeon/ActorActionObject.hpp new file mode 100644 index 00000000..0bf35dfb --- /dev/null +++ b/include/Actor/Dungeon/ActorActionObject.hpp @@ -0,0 +1,20 @@ +#pragma once + +#include "Actor/Actor.hpp" + +class ActorActionObject : public Actor { +public: + static ActorType gType; + + /* 000 (base) */ + /* 158 */ + + /* 00 */ virtual ~ActorActionObject() override; + /* 08 */ virtual bool vfunc_08() override; + /* 14 */ virtual void vfunc_14(u32 param1) override; + /* 18 */ virtual void vfunc_18(u32 param1) override; + /* b4 */ + + static ActorActionObject *Create(); + ActorActionObject(); +}; diff --git a/include/Player/PlayerBase.hpp b/include/Player/PlayerBase.hpp index 354e1078..ba4b3deb 100644 --- a/include/Player/PlayerBase.hpp +++ b/include/Player/PlayerBase.hpp @@ -29,7 +29,7 @@ public: /* 0c */ virtual bool CanMove(); /* 10 */ virtual void vfunc_10(Cylinder *param1) = 0; /* 14 */ virtual void vfunc_14(Cylinder *param1) = 0; - /* 18 */ virtual void vfunc_18() = 0; + /* 18 */ virtual bool vfunc_18(s32 param1) = 0; /* 1c */ virtual void Init() = 0; /* 20 */ virtual void vfunc_20() = 0; /* 24 */ virtual void UpdatePos() = 0; diff --git a/include/Player/PlayerLinkBase.hpp b/include/Player/PlayerLinkBase.hpp index 2a208365..b5bf77ed 100644 --- a/include/Player/PlayerLinkBase.hpp +++ b/include/Player/PlayerLinkBase.hpp @@ -50,7 +50,7 @@ public: /* 0c */ virtual bool CanMove() override; /* 10 */ virtual void vfunc_10(Cylinder *param1) override; /* 14 */ virtual void vfunc_14(Cylinder *param1) override; - /* 18 */ virtual void vfunc_18(s32 param1) override; + /* 18 */ virtual bool vfunc_18(s32 param1) override; /* 1c */ virtual void Init() override; /* 20 */ virtual void vfunc_20() override; /* 24 */ virtual void UpdatePos() override; diff --git a/src/00_Core/Actor/Actor.cpp b/src/00_Core/Actor/Actor.cpp index f008064d..572ead78 100644 --- a/src/00_Core/Actor/Actor.cpp +++ b/src/00_Core/Actor/Actor.cpp @@ -318,8 +318,8 @@ ARM void Actor::SetTransform(Transform *transform) { ARM void Actor::vfunc_a8() {} -ARM void Actor::func_Ov00_020c1bfc(s32 param1) { - gMapManager->func_ov00_02084be0(mUnk_020.mUnk_0a[param1], mUnk_020.mUnk_08[param1]); +ARM bool Actor::func_Ov00_020c1bfc(s32 param1) { + return gMapManager->func_ov00_02084be0(mUnk_020.mUnk_0a[param1], mUnk_020.mUnk_08[param1]); } ARM void Actor::func_ov00_020c1c20(s32 param1, unk32 param2) { diff --git a/src/00_Core/Actor/Dungeon/ActorActionObject.cpp b/src/00_Core/Actor/Dungeon/ActorActionObject.cpp new file mode 100644 index 00000000..fdef3d9e --- /dev/null +++ b/src/00_Core/Actor/Dungeon/ActorActionObject.cpp @@ -0,0 +1,85 @@ +#include "Actor/Dungeon/ActorActionObject.hpp" +#include "Map/MapManager.hpp" +#include "Player/LinkStateBase.hpp" +#include "Player/PlayerLinkBase.hpp" +#include "Save/AdventureFlags.hpp" + +#pragma section sbss begin +ActorType ActorActionObject::gType = ActorType(ActorTypeId_ActionObject, (ActorCreateFunc) ActorActionObject::Create, NULL); +#pragma section sbss end + +extern u32 **data_027e0fe0[]; +ARM ActorActionObject *ActorActionObject::Create() { + return new(*data_027e0fe0[0], 4) ActorActionObject(); +} + +ARM ActorActionObject::ActorActionObject() {} + +ARM ActorActionObject::~ActorActionObject() {} + +// non-matching +ARM bool ActorActionObject::vfunc_08() { + mGravity = 0; + mHitbox.pos = gVec3p_ZERO; + mHitbox.size = -1; + mUnk_08c.pos = mHitbox.pos; + mUnk_08c.size = mHitbox.size; + mUnk_0a4.mUnk_04 = gVec3p_ZERO; + mUnk_0a4.mUnk_10 = -1; + mVisible = false; + mUnk_130 = 0; + return true; +} + +ARM void ActorActionObject::vfunc_14(u32 param1) { + if (!this->func_ov00_020c313c(param1)) { + return; + } + + u32 flag = mUnk_020.mUnk_00[2]; + bool bVar3; + switch (mUnk_020.mUnk_00[0]) { + case 0: bVar3 = true; break; + case 1: + if (gPlayerLink->mGrabActor.id != -1 && gPlayerLink->GetStateId() == LinkStateId_Move) { + bVar3 = true; + } else { + bVar3 = false; + } + break; + case 2: + if (gPlayerLink->mGrabActor.id == -1 && gPlayerLink->GetStateId() == LinkStateId_Move) { + bVar3 = true; + } else { + bVar3 = false; + } + break; + default: bVar3 = false; break; + } + + if (!bVar3) { + return; + } + if (!gMapManager->func_ov00_020836dc((u32) mUnk_020.mUnk_00[1], 0)) { + return; + } + if (mUnk_020.mUnk_0a[0] != 0 && !this->func_Ov00_020c1bfc(0)) { + return; + } + if (flag != 0 && !gAdventureFlags->Get(flag)) { + return; + } + + PlayerLinkBase *link = gPlayerLink; + if (link != NULL && link->vfunc_18(7)) { + if (mUnk_020.mUnk_00[3] == 1) { + link->func_ov000_020bcf50(&mPos, 0x800); + } + this->func_ov00_020c1c20(1, 1); + this->Kill(); + } +} + +ARM void ActorActionObject::vfunc_18(u32 param1) { + this->func_ov00_020c313c(param1); +} diff --git a/src/00_Core/Player/PlayerLinkBase.cpp b/src/00_Core/Player/PlayerLinkBase.cpp index 897932c8..bc248044 100644 --- a/src/00_Core/Player/PlayerLinkBase.cpp +++ b/src/00_Core/Player/PlayerLinkBase.cpp @@ -20,7 +20,7 @@ bool PlayerLinkBase::func_ov000_020bba00() {} bool PlayerLinkBase::func_ov000_020bba14() {} bool PlayerLinkBase::func_ov000_020bba28() {} void PlayerLinkBase::func_ov000_020bba48() {} -void PlayerLinkBase::vfunc_18(s32 param1) {} +bool PlayerLinkBase::vfunc_18(s32 param1) {} bool PlayerLinkBase::CanMove() {} bool PlayerLinkBase::vfunc_58() {} bool PlayerLinkBase::vfunc_5c() {} From 5523f03c9992fb9bc610cbf071d8a8114b9eaed2 Mon Sep 17 00:00:00 2001 From: Aetias Date: Sun, 9 Mar 2025 09:53:46 +0100 Subject: [PATCH 20/37] Parentheses around offsetof --- libs/c/include/stddef.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libs/c/include/stddef.h b/libs/c/include/stddef.h index b0c76af3..4858fe46 100644 --- a/libs/c/include/stddef.h +++ b/libs/c/include/stddef.h @@ -5,6 +5,6 @@ typedef unsigned int size_t; -#define offsetof(type, member) (size_t) &((type *) NULL)->member +#define offsetof(type, member) ((size_t) &((type *) NULL)->member) #endif From 59648074067128dbe6306b9fdb80af3f6abfa91b Mon Sep 17 00:00:00 2001 From: Aetias Date: Sun, 9 Mar 2025 09:57:20 +0100 Subject: [PATCH 21/37] Fix accidental capital letter in `func_Ov00_020c1bfc` --- config/eur/arm9/overlays/ov000/symbols.txt | 2 +- config/usa/arm9/overlays/ov000/symbols.txt | 2 +- include/Actor/Actor.hpp | 2 +- src/00_Core/Actor/Actor.cpp | 2 +- src/00_Core/Actor/Dungeon/ActorActionObject.cpp | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/config/eur/arm9/overlays/ov000/symbols.txt b/config/eur/arm9/overlays/ov000/symbols.txt index 76633bcd..d2968311 100644 --- a/config/eur/arm9/overlays/ov000/symbols.txt +++ b/config/eur/arm9/overlays/ov000/symbols.txt @@ -2773,7 +2773,7 @@ _ZN5Actor20KillPickupItemActorsEv kind:function(arm,size=0x54) addr:0x20c1b18 _ZN5Actor15TrySetTransformEP9Transform kind:function(arm,size=0x48) addr:0x20c1b6c _ZN5Actor12SetTransformEP9Transform kind:function(arm,size=0x44) addr:0x20c1bb4 _ZN5Actor8vfunc_a8Ev kind:function(arm,size=0x4) addr:0x20c1bf8 -_ZN5Actor18func_Ov00_020c1bfcEi kind:function(arm,size=0x24) addr:0x20c1bfc +_ZN5Actor18func_ov00_020c1bfcEi kind:function(arm,size=0x24) addr:0x20c1bfc _ZN5Actor18func_ov00_020c1c20Eii kind:function(arm,size=0x28) addr:0x20c1c20 _ZN5Actor8vfunc_48EP9Knockback kind:function(arm,size=0x8) addr:0x20c1c48 _ZN5Actor8vfunc_4cEPi kind:function(arm,size=0x44) addr:0x20c1c50 diff --git a/config/usa/arm9/overlays/ov000/symbols.txt b/config/usa/arm9/overlays/ov000/symbols.txt index 9d463b23..82bfe5cf 100644 --- a/config/usa/arm9/overlays/ov000/symbols.txt +++ b/config/usa/arm9/overlays/ov000/symbols.txt @@ -2773,7 +2773,7 @@ _ZN5Actor20KillPickupItemActorsEv kind:function(arm,size=0x54) addr:0x20c1ab8 _ZN5Actor15TrySetTransformEP9Transform kind:function(arm,size=0x48) addr:0x20c1b0c _ZN5Actor12SetTransformEP9Transform kind:function(arm,size=0x44) addr:0x20c1b54 _ZN5Actor8vfunc_a8Ev kind:function(arm,size=0x4) addr:0x20c1b98 -_ZN5Actor18func_Ov00_020c1bfcEi kind:function(arm,size=0x24) addr:0x20c1b9c +_ZN5Actor18func_ov00_020c1bfcEi kind:function(arm,size=0x24) addr:0x20c1b9c _ZN5Actor18func_ov00_020c1c20Eii kind:function(arm,size=0x28) addr:0x20c1bc0 _ZN5Actor8vfunc_48EP9Knockback kind:function(arm,size=0x8) addr:0x20c1be8 _ZN5Actor8vfunc_4cEPi kind:function(arm,size=0x44) addr:0x20c1bf0 diff --git a/include/Actor/Actor.hpp b/include/Actor/Actor.hpp index 837ca862..c22f086e 100644 --- a/include/Actor/Actor.hpp +++ b/include/Actor/Actor.hpp @@ -227,7 +227,7 @@ public: bool func_ov00_020c195c(); bool func_ov00_020c198c(); void KillPickupItemActors(); - bool func_Ov00_020c1bfc(s32 param1); + bool func_ov00_020c1bfc(s32 param1); void func_ov00_020c1c20(s32 param1, unk32 param2); bool IsNearLink(); void func_ov00_020c1cf8(); diff --git a/src/00_Core/Actor/Actor.cpp b/src/00_Core/Actor/Actor.cpp index 572ead78..74f0da25 100644 --- a/src/00_Core/Actor/Actor.cpp +++ b/src/00_Core/Actor/Actor.cpp @@ -318,7 +318,7 @@ ARM void Actor::SetTransform(Transform *transform) { ARM void Actor::vfunc_a8() {} -ARM bool Actor::func_Ov00_020c1bfc(s32 param1) { +ARM bool Actor::func_ov00_020c1bfc(s32 param1) { return gMapManager->func_ov00_02084be0(mUnk_020.mUnk_0a[param1], mUnk_020.mUnk_08[param1]); } diff --git a/src/00_Core/Actor/Dungeon/ActorActionObject.cpp b/src/00_Core/Actor/Dungeon/ActorActionObject.cpp index fdef3d9e..0a2c3970 100644 --- a/src/00_Core/Actor/Dungeon/ActorActionObject.cpp +++ b/src/00_Core/Actor/Dungeon/ActorActionObject.cpp @@ -63,7 +63,7 @@ ARM void ActorActionObject::vfunc_14(u32 param1) { if (!gMapManager->func_ov00_020836dc((u32) mUnk_020.mUnk_00[1], 0)) { return; } - if (mUnk_020.mUnk_0a[0] != 0 && !this->func_Ov00_020c1bfc(0)) { + if (mUnk_020.mUnk_0a[0] != 0 && !this->func_ov00_020c1bfc(0)) { return; } if (flag != 0 && !gAdventureFlags->Get(flag)) { From 989ac3a16ee2d350d2254c51c34e63cc4570ef27 Mon Sep 17 00:00:00 2001 From: Aetias Date: Sun, 9 Mar 2025 14:46:56 +0100 Subject: [PATCH 22/37] Download tools with Ninja instead of `setup.py` --- tools/configure.py | 113 +++++++++++++++++++++++++++++------------ tools/download_tool.py | 49 ++++++++++++++++++ tools/get_platform.py | 31 +++++++++++ tools/setup.py | 56 -------------------- 4 files changed, 160 insertions(+), 89 deletions(-) create mode 100644 tools/download_tool.py create mode 100644 tools/get_platform.py delete mode 100755 tools/setup.py diff --git a/tools/configure.py b/tools/configure.py index 45d9824a..b73207bd 100755 --- a/tools/configure.py +++ b/tools/configure.py @@ -2,21 +2,27 @@ import os from pathlib import Path -import platform import argparse import sys import ninja_syntax +from get_platform import get_platform + + +DEFAULT_WIBO_PATH = "./wibo" parser = argparse.ArgumentParser(description="Generates build.ninja") -parser.add_argument('-w', type=str, default="./wibo", dest="wine", required=False, help="Path to Wine/Wibo (linux only)") +parser.add_argument('-w', type=str, default=DEFAULT_WIBO_PATH, dest="wine", required=False, help="Path to Wine/Wibo (linux only)") +parser.add_argument("--compiler", type=Path, required=False, help="Path to compiler root directory") parser.add_argument('version', help='Game version') args = parser.parse_args() # Config GAME = "ph" +DSD_VERSION = 'v0.5.0' +WIBO_VERSION = '0.6.16' MWCC_VERSION = "2.0/sp1p5" DECOMP_ME_COMPILER = "mwcc_30_131" CC_FLAGS = " ".join([ @@ -65,7 +71,8 @@ src_path = root_path / "src" libs_path = root_path / "libs" extract_path = root_path / "extract" tools_path = root_path / "tools" -mwcc_path = tools_path / "mwccarm" / MWCC_VERSION +mwcc_root = args.compiler or tools_path / "mwccarm" +mwcc_path = mwcc_root / MWCC_VERSION # Includes @@ -80,25 +87,14 @@ CC_INCLUDES = " ".join(f"-i {include}" for include in includes) # Platform info -EXE = "" -WINE = "" -system = platform.system() -if system == "Windows": - system = "windows" - EXE = ".exe" -elif system == "Linux": - system = "linux" - WINE = args.wine -else: - print(f"Unknown system '{system}'") +platform = get_platform() +if platform is None: exit(1) -match platform.machine().lower(): - case "amd64" | "x86_64": machine = "x86_64" - case machine: - print(f"Unknown machine: {machine}") - exit(1) - - +EXE = platform.exe +WINE = args.wine if platform.system != "windows" else "" +DSD = str(root_path / f"dsd{EXE}") +CC = str(mwcc_path / "mwccarm.exe") +LD = str(mwcc_path / "mwldarm.exe") PYTHON = sys.executable @@ -112,6 +108,12 @@ def main(): with build_ninja_path.open("w") as file: n = ninja_syntax.Writer(file) + n.rule( + name="download_tool", + command=f'{PYTHON} tools/download_tool.py $tool $tag --path $path' + ) + n.newline() + if arm7_bios_path.is_file(): n.variable("arm7_bios_flag", f"--arm7-bios {arm7_bios_path.relative_to(root_path)}") else: @@ -120,20 +122,20 @@ def main(): n.rule( name="extract", - command="./dsd rom extract --rom $in --output-path $output_path $arm7_bios_flag" + command=f"{DSD} rom extract --rom $in --output-path $output_path $arm7_bios_flag" ) n.newline() n.rule( name="delink", - command="./dsd delink --config-path $config_path" + command=f"{DSD} delink --config-path $config_path" ) n.newline() # -MMD excludes all includes instead of just system includes for some reason, so use -MD instead. - mwcc_cmd = f'{WINE} "{mwcc_path}/mwccarm.exe" {CC_FLAGS} {CC_INCLUDES} $cc_flags -d $game_version -MD -c $in -o $basedir' - mwcc_implicit = [] - if system != "windows": + mwcc_cmd = f'{WINE} "{CC}" {CC_FLAGS} {CC_INCLUDES} $cc_flags -d $game_version -MD -c $in -o $basedir' + mwcc_implicit = [CC] + if platform.system != "windows": transform_dep = "tools/transform_dep.py" mwcc_cmd += f" && $python {transform_dep} $basefile.d $basefile.d" mwcc_implicit.append(transform_dep) @@ -146,31 +148,31 @@ def main(): n.rule( name="lcf", - command="./dsd lcf -c $config_path --lcf-file $lcf_file --objects-file $objects_file" + command=f"{DSD} lcf -c $config_path --lcf-file $lcf_file --objects-file $objects_file" ) n.newline() n.rule( name="mwld", - command=f'{WINE} "{mwcc_path}/mwldarm.exe" {LD_FLAGS} @$objects_file $lcf_file -o $out' + command=f'{WINE} "{LD}" {LD_FLAGS} @$objects_file $lcf_file -o $out' ) n.newline() n.rule( name="rom_config", - command="./dsd rom config --elf $in --config $config_path" + command=f"{DSD} rom config --elf $in --config $config_path" ) n.newline() n.rule( name="rom_build", - command="./dsd rom build --config $in --rom $out $arm7_bios_flag" + command=f"{DSD} rom build --config $in --rom $out $arm7_bios_flag" ) n.newline() n.rule( name="objdiff", - command=f"./dsd objdiff --config-path $config_path {DSD_OBJDIFF_ARGS}" + command=f"{DSD} objdiff --config-path $config_path {DSD_OBJDIFF_ARGS}" ) n.newline() @@ -189,17 +191,56 @@ def main(): game_build = build_path / game_version game_extract = extract_path / game_version + add_download_tool_builds(n) add_extract_build(n, game_extract, game_version) add_delink_and_lcf_builds(n, game_config, game_build, game_extract) add_mwcc_builds(n, game_version, game_build, mwcc_implicit) add_mwld_and_rom_builds(n, game_build, game_config, game_version) +def add_download_tool_builds(n: ninja_syntax.Writer): + n.build( + rule="download_tool", + outputs=DSD, + variables={ + "tool": "dsd", + "tag": DSD_VERSION, + "path": DSD, + }, + ) + n.newline() + + if args.compiler is None: + n.build( + rule="download_tool", + outputs=[CC, LD], + variables={ + "tool": "mwccarm", + "tag": "latest", + "path": tools_path, + }, + ) + n.newline() + + if platform.system != "windows" and WINE == DEFAULT_WIBO_PATH: + n.build( + rule="download_tool", + outputs=WINE, + variables={ + "tool": "wibo", + "tag": WIBO_VERSION, + "path": WINE, + }, + ) + n.newline() + + def add_extract_build(n: ninja_syntax.Writer, game_extract: Path, game_version: str): rom_path = extract_path / f'baserom_{GAME}_{game_version}.nds' rom_config = game_extract / 'config.yaml' n.build( inputs=str(rom_path), + implicit=DSD, rule="extract", outputs=str(rom_config), variables={ @@ -220,6 +261,7 @@ def add_mwld_and_rom_builds(n: ninja_syntax.Writer, game_build: Path, game_confi elf_file = str(game_build / "arm9.o") n.build( inputs=source_object_files + [lcf_file, objects_file, delink_file], + implicit=LD, rule="mwld", outputs=elf_file, variables={ @@ -233,6 +275,7 @@ def add_mwld_and_rom_builds(n: ninja_syntax.Writer, game_build: Path, game_confi rom_config_file = str(game_build / "build" / "rom_config.yaml") n.build( inputs=elf_file, + implicit=DSD, rule="rom_config", outputs=rom_config_file, variables={ @@ -243,7 +286,8 @@ def add_mwld_and_rom_builds(n: ninja_syntax.Writer, game_build: Path, game_confi rom_file = f"{GAME}_{game_version}.nds" n.build( - inputs=[rom_config_file], + inputs=rom_config_file, + implicit=DSD, rule="rom_build", outputs=rom_file, ) @@ -275,6 +319,7 @@ def add_mwcc_builds(n: ninja_syntax.Writer, game_version: str, game_build: Path, elif is_c(source_file): cc_flags.append("-lang=c") n.build( inputs=str(source_file), + implicit=mwcc_implicit, rule="mwcc", outputs=str(src_obj_path.with_suffix(".o")), variables={ @@ -283,7 +328,6 @@ def add_mwcc_builds(n: ninja_syntax.Writer, game_version: str, game_build: Path, "basedir": os.path.dirname(src_obj_path), "basefile": str(src_obj_path.with_suffix("")), }, - implicit=mwcc_implicit, ) n.newline() @@ -323,6 +367,7 @@ def add_delink_and_lcf_builds(n: ninja_syntax.Writer, game_config: Path, game_bu delinks_path = game_build / "delinks" n.build( inputs=delinks_files + relocs_files + symbols_files + [rom_config], + implicit=DSD, rule="delink", outputs=str(delinks_path / "delink.yaml"), variables={ @@ -342,6 +387,7 @@ def add_delink_and_lcf_builds(n: ninja_syntax.Writer, game_config: Path, game_bu objects_file = game_build / "objects.txt" n.build( inputs=delinks_files + [str(rom_config)], + implicit=DSD, rule="lcf", outputs=[str(lcf_file), str(objects_file)], variables={ @@ -354,6 +400,7 @@ def add_delink_and_lcf_builds(n: ninja_syntax.Writer, game_config: Path, game_bu n.build( inputs=delinks_files + relocs_files + symbols_files, + implicit=DSD, rule="objdiff", outputs="objdiff.json", variables={ diff --git a/tools/download_tool.py b/tools/download_tool.py new file mode 100644 index 00000000..183cf66b --- /dev/null +++ b/tools/download_tool.py @@ -0,0 +1,49 @@ +import argparse +from pathlib import Path +from get_platform import get_platform +import zipfile +import io +import requests +import stat + +root_path = Path(__file__).parent.parent + + +platform = get_platform() +if platform is None: + exit(1) + +parser = argparse.ArgumentParser() +parser.add_argument("tool") +parser.add_argument("tag") +parser.add_argument("--path", type=Path, required=True) +args = parser.parse_args() + + +def dsd_url(tag: str) -> str: + return f'https://github.com/AetiasHax/ds-decomp/releases/download/{tag}/dsd-{platform.system}-{platform.machine}{platform.exe}' + +def mwccarm_url(tag: str) -> str: + return 'http://decomp.aetias.com/files/mwccarm.zip' + +def wibo_url(tag: str) -> str: + return f'https://github.com/decompals/wibo/releases/download/{tag}/wibo' + +TOOLS = { + "dsd": dsd_url, + "mwccarm": mwccarm_url, + "wibo": wibo_url, +} + + +download_url = TOOLS[args.tool](args.tag) +print(f'\nDownloading {args.tool} {args.tag}...') +response = requests.get(download_url) +if download_url.endswith('.zip'): + zip_file = zipfile.ZipFile(io.BytesIO(response.content)) + zip_file.extractall(args.path) +else: + out_path: Path = args.path + with out_path.open('wb') as f: + f.write(response.content) + out_path.chmod(out_path.stat().st_mode | stat.S_IEXEC) diff --git a/tools/get_platform.py b/tools/get_platform.py new file mode 100644 index 00000000..a4fe40d8 --- /dev/null +++ b/tools/get_platform.py @@ -0,0 +1,31 @@ +import platform + + +class Platform: + def __init__(self, *, system: str, machine: str, exe: str): + self.system = system + '''Name of operating system: "windows" or "linux"''' + self.machine = machine + '''Name of machine architecture: "x86_64"''' + self.exe = exe + '''Executable file extension: ".exe" for Windows, "" otherwise''' + + +def get_platform() -> Platform | None: + exe = "" + system = platform.system() + if system == "Windows": + system = "windows" + exe = ".exe" + elif system == "Linux": + system = "linux" + else: + print(f"Unknown system '{system}'") + return None + match platform.machine().lower(): + case "amd64" | "x86_64": machine = "x86_64" + case machine: + print(f"Unknown machine: {machine}") + return None + + return Platform(system=system, machine=machine, exe=exe) diff --git a/tools/setup.py b/tools/setup.py deleted file mode 100755 index 8e5f9c0d..00000000 --- a/tools/setup.py +++ /dev/null @@ -1,56 +0,0 @@ -#!/usr/bin/env python3 - -import requests -import zipfile -import io -from pathlib import Path -import platform -import stat - -DSD_VERSION = 'v0.5.0' -WIBO_VERSION = '0.6.16' - - -tools_path = Path(__file__).parent -root_path = tools_path.parent - - -EXE = "" -system = platform.system() -if system == "Windows": - system = "windows" - EXE = ".exe" -elif system == "Linux": - system = "linux" -else: - print(f"Unknown system '{system}'") - exit(1) -match platform.machine().lower(): - case 'amd64' | 'x86_64': machine = 'x86_64' - case machine: - print(f'Unknown machine: {machine}') - exit(1) - - -print('\nInstalling dsd...') -response = requests.get(f'https://github.com/AetiasHax/ds-decomp/releases/download/{DSD_VERSION}/dsd-{system}-{machine}{EXE}') -dsd_path = root_path / f'dsd{EXE}' -with open(dsd_path, 'wb') as f: - f.write(response.content) -dsd_path.chmod(dsd_path.stat().st_mode | stat.S_IEXEC) - - -print('\nInstalling toolchain...') -response = requests.get('http://decomp.aetias.com/files/mwccarm.zip') -zip_file = zipfile.ZipFile(io.BytesIO(response.content)) -zip_file.extractall(tools_path) - - -if system == "linux": - print('\nInstalling wibo...') - response = requests.get(f'https://github.com/decompals/wibo/releases/download/{WIBO_VERSION}/wibo') - wibo_path = root_path / 'wibo' - with open(wibo_path, 'wb') as f: - f.write(response.content) - wibo_path.chmod(wibo_path.stat().st_mode | stat.S_IEXEC) - From 3439ade1a70491b0bf7661b4f960393175772fcd Mon Sep 17 00:00:00 2001 From: Aetias Date: Sun, 9 Mar 2025 16:55:31 +0100 Subject: [PATCH 23/37] ninja: Download objdiff-cli and generate report --- .gitignore | 2 + tools/configure.py | 182 +++++++++++++++++++++++++++++------------ tools/download_tool.py | 4 + 3 files changed, 137 insertions(+), 51 deletions(-) diff --git a/.gitignore b/.gitignore index b510ca5d..6ee4c378 100644 --- a/.gitignore +++ b/.gitignore @@ -7,6 +7,8 @@ ph_*/ *.sav *.xMAP objdiff.json +/objdiff-cli +/objdiff-cli.exe /dsd /dsd.exe /dsd.pdb diff --git a/tools/configure.py b/tools/configure.py index b73207bd..a1996b85 100755 --- a/tools/configure.py +++ b/tools/configure.py @@ -23,6 +23,7 @@ args = parser.parse_args() GAME = "ph" DSD_VERSION = 'v0.5.0' WIBO_VERSION = '0.6.16' +OBJDIFF_VERSION = 'v2.7.1' MWCC_VERSION = "2.0/sp1p5" DECOMP_ME_COMPILER = "mwcc_30_131" CC_FLAGS = " ".join([ @@ -93,17 +94,80 @@ if platform is None: EXE = platform.exe WINE = args.wine if platform.system != "windows" else "" DSD = str(root_path / f"dsd{EXE}") +OBJDIFF = str(root_path / f"objdiff-cli{EXE}") CC = str(mwcc_path / "mwccarm.exe") LD = str(mwcc_path / "mwldarm.exe") PYTHON = sys.executable +class Project: + def __init__(self, game_version: str): + self.game_version = game_version + '''Version of the game''' + self.game_config = config_path / game_version + '''Root directory for dsd configs''' + + if not self.game_config.is_dir(): + print(f"Version '{game_version}' not recognized") + exit(1) + + self.game_build = build_path / game_version + '''Path to build directory''' + self.game_extract = extract_path / game_version + '''Path to extract directory''' + + self.delinks_files = get_config_files(self.game_config, "delinks.txt") + '''Paths to every delinks.txt file''' + self.relocs_files = get_config_files(self.game_config, "relocs.txt") + '''Paths to every relocs.txt file''' + self.symbols_files = get_config_files(self.game_config, "symbols.txt") + '''Paths to every symbols.txt file''' + + def dsd_configs(self) -> list[str]: + return self.delinks_files + self.relocs_files + self.symbols_files + + def arm9_config_yaml(self) -> Path: + return self.game_config / "arm9" / "config.yaml" + + def baserom(self) -> Path: + return extract_path / f'baserom_{GAME}_{self.game_version}.nds' + + def build_rom(self) -> str: + return f"{GAME}_{self.game_version}.nds" + + def baserom_config(self) -> Path: + return self.game_extract / 'config.yaml' + + def build_rom_config(self) -> Path: + return self.game_build / "build" / "rom_config.yaml" + + def source_object_files(self) -> list[str]: + return [ + str(self.game_build / source_file.with_suffix(".o")) + for source_file in get_c_cpp_files([src_path, libs_path]) + ] + + def arm9_lcf(self) -> Path: + return self.game_build / "linker_script.lcf" + + def arm9_objects_txt(self) -> Path: + return self.game_build / "objects.txt" + + def arm9_delink_yaml(self) -> Path: + return self.game_build / "delinks" / "delink.yaml" + + def arm9_o(self) -> Path: + return self.game_build / "arm9.o" + + def arm9_delinks(self) -> Path: + return self.game_build / "delinks" + + def objdiff_report(self) -> Path: + return self.game_build / "report.json" + + def main(): - game_version: str = args.version - game_config = config_path / game_version - if not game_config.is_dir(): - print(f"Version '{game_version}' not recognized") - return + project = Project(args.version) with build_ninja_path.open("w") as file: n = ninja_syntax.Writer(file) @@ -176,6 +240,12 @@ def main(): ) n.newline() + n.rule( + name="objdiff_report", + command=f"{OBJDIFF} report generate -o $out" + ) + n.newline() + n.rule( name="m2ctx", command=f"{PYTHON} tools/m2ctx.py -f $out $in" @@ -188,14 +258,12 @@ def main(): ) n.newline() - game_build = build_path / game_version - game_extract = extract_path / game_version - add_download_tool_builds(n) - add_extract_build(n, game_extract, game_version) - add_delink_and_lcf_builds(n, game_config, game_build, game_extract) - add_mwcc_builds(n, game_version, game_build, mwcc_implicit) - add_mwld_and_rom_builds(n, game_build, game_config, game_version) + add_extract_build(n, project) + add_delink_and_lcf_builds(n, project) + add_mwcc_builds(n, project, mwcc_implicit) + add_mwld_and_rom_builds(n, project) + add_objdiff_builds(n, project) def add_download_tool_builds(n: ninja_syntax.Writer): @@ -210,6 +278,17 @@ def add_download_tool_builds(n: ninja_syntax.Writer): ) n.newline() + n.build( + rule="download_tool", + outputs=OBJDIFF, + variables={ + "tool": "objdiff", + "tag": OBJDIFF_VERSION, + "path": OBJDIFF, + } + ) + n.newline() + if args.compiler is None: n.build( rule="download_tool", @@ -235,56 +314,50 @@ def add_download_tool_builds(n: ninja_syntax.Writer): n.newline() -def add_extract_build(n: ninja_syntax.Writer, game_extract: Path, game_version: str): - rom_path = extract_path / f'baserom_{GAME}_{game_version}.nds' - rom_config = game_extract / 'config.yaml' +def add_extract_build(n: ninja_syntax.Writer, project: Project): n.build( - inputs=str(rom_path), + inputs=str(project.baserom()), implicit=DSD, rule="extract", - outputs=str(rom_config), + outputs=str(project.baserom_config()), variables={ - "output_path": str(game_extract) + "output_path": str(project.game_extract) } ) n.newline() -def add_mwld_and_rom_builds(n: ninja_syntax.Writer, game_build: Path, game_config: Path, game_version: str): - source_object_files = [ - str(game_build / source_file.with_suffix(".o")) - for source_file in get_c_cpp_files([src_path, libs_path]) - ] - lcf_file = str(game_build / "linker_script.lcf") - objects_file = str(game_build / "objects.txt") - delink_file = str(game_build / "delinks" / "delink.yaml") - elf_file = str(game_build / "arm9.o") +def add_mwld_and_rom_builds(n: ninja_syntax.Writer, project: Project): + lcf_file = str(project.arm9_lcf()) + objects_file = str(project.arm9_objects_txt()) + delink_file = str(project.arm9_delink_yaml()) + elf_file = str(project.arm9_o()) n.build( - inputs=source_object_files + [lcf_file, objects_file, delink_file], + inputs=project.source_object_files() + [lcf_file, objects_file, delink_file], implicit=LD, rule="mwld", outputs=elf_file, variables={ - "target_dir": game_build, + "target_dir": project.game_build, "objects_file": objects_file, "lcf_file": lcf_file, } ) n.newline() - rom_config_file = str(game_build / "build" / "rom_config.yaml") + rom_config_file = str(project.build_rom_config()) n.build( inputs=elf_file, implicit=DSD, rule="rom_config", outputs=rom_config_file, variables={ - "config_path": game_config / "arm9" / "config.yaml", + "config_path": project.arm9_config_yaml(), } ) n.newline() - rom_file = f"{GAME}_{game_version}.nds" + rom_file = project.build_rom() n.build( inputs=rom_config_file, implicit=DSD, @@ -311,9 +384,9 @@ def add_mwld_and_rom_builds(n: ninja_syntax.Writer, game_build: Path, game_confi n.newline() -def add_mwcc_builds(n: ninja_syntax.Writer, game_version: str, game_build: Path, mwcc_implicit: list[Path]): +def add_mwcc_builds(n: ninja_syntax.Writer, project: Project, mwcc_implicit: list[Path]): for source_file in get_c_cpp_files([src_path, libs_path]): - src_obj_path = game_build / source_file + src_obj_path = project.game_build / source_file cc_flags = [] if is_cpp(source_file): cc_flags.append("-lang=c++") elif is_c(source_file): cc_flags.append("-lang=c") @@ -323,7 +396,7 @@ def add_mwcc_builds(n: ninja_syntax.Writer, game_version: str, game_build: Path, rule="mwcc", outputs=str(src_obj_path.with_suffix(".o")), variables={ - "game_version": game_version, + "game_version": project.game_version, "cc_flags": " ".join(cc_flags), "basedir": os.path.dirname(src_obj_path), "basefile": str(src_obj_path.with_suffix("")), @@ -332,7 +405,7 @@ def add_mwcc_builds(n: ninja_syntax.Writer, game_version: str, game_build: Path, n.newline() extension = source_file.suffix - ctx_file = str(game_build / source_file.with_suffix(f".ctx{extension}")) + ctx_file = str(project.game_build / source_file.with_suffix(f".ctx{extension}")) n.build( inputs=str(source_file), rule="m2ctx", @@ -358,20 +431,17 @@ def is_c(name: str): return Path(name).suffix in [".c"] -def add_delink_and_lcf_builds(n: ninja_syntax.Writer, game_config: Path, game_build: Path, game_extract: Path): +def add_delink_and_lcf_builds(n: ninja_syntax.Writer, project: Project): n.comment("Delink ELF binaries when any delinks.txt file is modified") - delinks_files = get_config_files(game_config, "delinks.txt") - relocs_files = get_config_files(game_config, "relocs.txt") - symbols_files = get_config_files(game_config, "symbols.txt") - rom_config = str(game_extract / 'config.yaml') - delinks_path = game_build / "delinks" + rom_config = str(project.baserom_config()) + delinks_path = project.arm9_delinks() n.build( - inputs=delinks_files + relocs_files + symbols_files + [rom_config], + inputs=project.dsd_configs() + [rom_config], implicit=DSD, rule="delink", outputs=str(delinks_path / "delink.yaml"), variables={ - "config_path": game_config / "arm9" / "config.yaml", + "config_path": project.arm9_config_yaml(), } ) n.newline() @@ -383,28 +453,30 @@ def add_delink_and_lcf_builds(n: ninja_syntax.Writer, game_config: Path, game_bu ) n.newline() - lcf_file = game_build / "linker_script.lcf" - objects_file = game_build / "objects.txt" + lcf_file = project.arm9_lcf() + objects_file = project.arm9_objects_txt() n.build( - inputs=delinks_files + [str(rom_config)], + inputs=project.delinks_files + [str(rom_config)], implicit=DSD, rule="lcf", outputs=[str(lcf_file), str(objects_file)], variables={ - "config_path": game_config / "arm9" / "config.yaml", + "config_path": project.arm9_config_yaml(), "lcf_file": lcf_file, "objects_file": objects_file, } ) n.newline() + +def add_objdiff_builds(n: ninja_syntax.Writer, project: Project): n.build( - inputs=delinks_files + relocs_files + symbols_files, + inputs=project.dsd_configs(), implicit=DSD, rule="objdiff", outputs="objdiff.json", variables={ - "config_path": game_config / "arm9" / "config.yaml", + "config_path": project.arm9_config_yaml(), } ) n.newline() @@ -416,8 +488,16 @@ def add_delink_and_lcf_builds(n: ninja_syntax.Writer, game_config: Path, game_bu ) n.newline() + n.build( + inputs=["objdiff.json"], + implicit=[OBJDIFF] + project.source_object_files(), + rule="objdiff_report", + outputs=str(project.objdiff_report()), + ) + n.newline() -def get_config_files(game_config: Path, name: str): + +def get_config_files(game_config: Path, name: str) -> list[str]: return [ f"{root}/{file}" for root, _, files in os.walk(game_config) diff --git a/tools/download_tool.py b/tools/download_tool.py index 183cf66b..755acd8f 100644 --- a/tools/download_tool.py +++ b/tools/download_tool.py @@ -29,10 +29,14 @@ def mwccarm_url(tag: str) -> str: def wibo_url(tag: str) -> str: return f'https://github.com/decompals/wibo/releases/download/{tag}/wibo' +def objdiff_url(tag: str) -> str: + return f'https://github.com/encounter/objdiff/releases/download/{tag}/objdiff-cli-{platform.system}-{platform.machine}{platform.exe}' + TOOLS = { "dsd": dsd_url, "mwccarm": mwccarm_url, "wibo": wibo_url, + "objdiff": objdiff_url, } From 1e1600cec707d62e2c854c7222b2ea8a4283658d Mon Sep 17 00:00:00 2001 From: Aetias Date: Sun, 9 Mar 2025 17:10:52 +0100 Subject: [PATCH 24/37] ninja: Phonies for `arm9` and `report` --- tools/configure.py | 57 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) diff --git a/tools/configure.py b/tools/configure.py index a1996b85..056682e9 100755 --- a/tools/configure.py +++ b/tools/configure.py @@ -252,6 +252,18 @@ def main(): ) n.newline() + n.rule( + name="check_modules", + command=f"{DSD} check modules --config-path $config_path" + ) + n.newline() + + n.rule( + name="check_symbols", + command=f"{DSD} check symbols --config-path $config_path --elf-path $elf_path" + ) + n.newline() + n.rule( name="sha1", command=f"{PYTHON} tools/sha1.py $in -c $sha1_file" @@ -263,6 +275,7 @@ def main(): add_delink_and_lcf_builds(n, project) add_mwcc_builds(n, project, mwcc_implicit) add_mwld_and_rom_builds(n, project) + add_check_builds(n, project) add_objdiff_builds(n, project) @@ -345,6 +358,13 @@ def add_mwld_and_rom_builds(n: ninja_syntax.Writer, project: Project): ) n.newline() + n.build( + inputs=elf_file, + rule="phony", + outputs="arm9", + ) + n.newline() + rom_config_file = str(project.build_rom_config()) n.build( inputs=elf_file, @@ -469,6 +489,36 @@ def add_delink_and_lcf_builds(n: ninja_syntax.Writer, project: Project): n.newline() +def add_check_builds(n: ninja_syntax.Writer, project: Project): + n.build( + inputs=str(project.arm9_o()), + rule="check_modules", + outputs="check_modules", + variables={ + "config_path": project.arm9_config_yaml(), + }, + ) + n.newline() + + n.build( + inputs=str(project.arm9_o()), + rule="check_symbols", + outputs="check_symbols", + variables={ + "config_path": project.arm9_config_yaml(), + "elf_path": project.arm9_o(), + }, + ) + n.newline() + + n.build( + inputs=["check_modules", "check_symbols"], + rule="phony", + outputs="check", + ) + n.newline() + + def add_objdiff_builds(n: ninja_syntax.Writer, project: Project): n.build( inputs=project.dsd_configs(), @@ -496,6 +546,13 @@ def add_objdiff_builds(n: ninja_syntax.Writer, project: Project): ) n.newline() + n.build( + inputs=str(project.objdiff_report()), + rule="phony", + outputs="report", + ) + n.newline() + def get_config_files(game_config: Path, name: str) -> list[str]: return [ From f7e2705e6bb4141cdab475d4ff0fe59282ba177f Mon Sep 17 00:00:00 2001 From: Aetias Date: Sun, 9 Mar 2025 17:11:01 +0100 Subject: [PATCH 25/37] Update INSTALL.md --- INSTALL.md | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/INSTALL.md b/INSTALL.md index 91c4a96c..525f22f6 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -24,23 +24,19 @@ python -m pip install -r tools/requirements.txt ```shell pre-commit install ``` -5. Run the setup script: -```shell -python tools/setup.py -``` -6. Run the Ninja configure script: +5. Run the Ninja configure script: ```shell python tools/configure.py ``` +6. Put one or more base ROMs in the [`/extract/`](/extract/README.md) directory of this repository. + +Now you can run `ninja` to build a ROM for the chosen version. > [!IMPORTANT] > Rerun `configure.py` often to ensure that all C/C++ code gets compiled. > [!NOTE] > For Linux users: Wibo is used by default. If you want to use Wine instead, run `configure.py` with `-w `. -7. Put one or more base ROMs in the [`/extract/`](/extract/README.md) directory of this repository. - -Now you can run `ninja` to build a ROM for the chosen version. ### Matching the base ROM From e0281e00fdf11c4b784ef8bd43358ee65b9cbd86 Mon Sep 17 00:00:00 2001 From: Aetias Date: Sun, 9 Mar 2025 17:11:54 +0100 Subject: [PATCH 26/37] Add build.yml --- .github/workflows/build.yml | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 .github/workflows/build.yml diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml new file mode 100644 index 00000000..427a94e2 --- /dev/null +++ b/.github/workflows/build.yml @@ -0,0 +1,30 @@ +name: Build + +on: + push: + pull_request: + +jobs: + build: + container: ghcr.io/aetiashax/ph-build:main + + runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + version: [eur, usa] + + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Build + run: | + python tools/configure.py ${{ matrix.version }} -w wibo --compiler /mwccarm + ninja arm9 report check + + - name: Upload report + uses: actions/upload-artifact@v4 + with: + name: ${{ matrix.version }}_report + path: build/${{ matrix.version }}/report.json From 89d2c9ce4638779480352f25c16efc478f6cfa51 Mon Sep 17 00:00:00 2001 From: Aetias Date: Sat, 15 Mar 2025 16:06:44 +0100 Subject: [PATCH 27/37] ci: Provide path to extract directory --- .github/workflows/build.yml | 4 +++- tools/configure.py | 26 ++++++++++++++------------ 2 files changed, 17 insertions(+), 13 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 427a94e2..64ea7f68 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -2,6 +2,8 @@ name: Build on: push: + branches: + - main pull_request: jobs: @@ -20,7 +22,7 @@ jobs: - name: Build run: | - python tools/configure.py ${{ matrix.version }} -w wibo --compiler /mwccarm + python tools/configure.py ${{ matrix.version }} -w wibo --compiler /mwccarm --extract /extract ninja arm9 report check - name: Upload report diff --git a/tools/configure.py b/tools/configure.py index 056682e9..df8e8843 100755 --- a/tools/configure.py +++ b/tools/configure.py @@ -14,7 +14,8 @@ DEFAULT_WIBO_PATH = "./wibo" parser = argparse.ArgumentParser(description="Generates build.ninja") parser.add_argument('-w', type=str, default=DEFAULT_WIBO_PATH, dest="wine", required=False, help="Path to Wine/Wibo (linux only)") -parser.add_argument("--compiler", type=Path, required=False, help="Path to compiler root directory") +parser.add_argument("--compiler", type=Path, required=False, help="Path to pre-installed compiler root directory") +parser.add_argument("--extract", type=Path, required=False, help="Path to pre-made extract directory") parser.add_argument('version', help='Game version') args = parser.parse_args() @@ -70,7 +71,7 @@ config_path = root_path / "config" build_path = root_path / "build" src_path = root_path / "src" libs_path = root_path / "libs" -extract_path = root_path / "extract" +extract_path = args.extract or root_path / "extract" tools_path = root_path / "tools" mwcc_root = args.compiler or tools_path / "mwccarm" mwcc_path = mwcc_root / MWCC_VERSION @@ -328,16 +329,17 @@ def add_download_tool_builds(n: ninja_syntax.Writer): def add_extract_build(n: ninja_syntax.Writer, project: Project): - n.build( - inputs=str(project.baserom()), - implicit=DSD, - rule="extract", - outputs=str(project.baserom_config()), - variables={ - "output_path": str(project.game_extract) - } - ) - n.newline() + if args.extract is None: + n.build( + inputs=str(project.baserom()), + implicit=DSD, + rule="extract", + outputs=str(project.baserom_config()), + variables={ + "output_path": str(project.game_extract) + } + ) + n.newline() def add_mwld_and_rom_builds(n: ninja_syntax.Writer, project: Project): From 993f1420df139945419a38b7487d23c7d4434290 Mon Sep 17 00:00:00 2001 From: Aetias Date: Sat, 15 Mar 2025 16:31:18 +0100 Subject: [PATCH 28/37] Replace `--extract` with `--no-extract` --- tools/configure.py | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/tools/configure.py b/tools/configure.py index df8e8843..50779107 100755 --- a/tools/configure.py +++ b/tools/configure.py @@ -15,7 +15,7 @@ DEFAULT_WIBO_PATH = "./wibo" parser = argparse.ArgumentParser(description="Generates build.ninja") parser.add_argument('-w', type=str, default=DEFAULT_WIBO_PATH, dest="wine", required=False, help="Path to Wine/Wibo (linux only)") parser.add_argument("--compiler", type=Path, required=False, help="Path to pre-installed compiler root directory") -parser.add_argument("--extract", type=Path, required=False, help="Path to pre-made extract directory") +parser.add_argument("--no-extract", type=bool, required=False, help="Skip extract step") parser.add_argument('version', help='Game version') args = parser.parse_args() @@ -71,7 +71,7 @@ config_path = root_path / "config" build_path = root_path / "build" src_path = root_path / "src" libs_path = root_path / "libs" -extract_path = args.extract or root_path / "extract" +extract_path = root_path / "extract" tools_path = root_path / "tools" mwcc_root = args.compiler or tools_path / "mwccarm" mwcc_path = mwcc_root / MWCC_VERSION @@ -94,10 +94,10 @@ if platform is None: exit(1) EXE = platform.exe WINE = args.wine if platform.system != "windows" else "" -DSD = str(root_path / f"dsd{EXE}") -OBJDIFF = str(root_path / f"objdiff-cli{EXE}") -CC = str(mwcc_path / "mwccarm.exe") -LD = str(mwcc_path / "mwldarm.exe") +DSD = os.path.join('.', str(root_path / f"dsd{EXE}")) +OBJDIFF = os.path.join('.', str(root_path / f"objdiff-cli{EXE}")) +CC = os.path.join('.', str(mwcc_path / "mwccarm.exe")) +LD = os.path.join('.', str(mwcc_path / "mwldarm.exe")) PYTHON = sys.executable @@ -329,7 +329,7 @@ def add_download_tool_builds(n: ninja_syntax.Writer): def add_extract_build(n: ninja_syntax.Writer, project: Project): - if args.extract is None: + if not args.no_extract: n.build( inputs=str(project.baserom()), implicit=DSD, From 4392bb30ebabf312bb23b733f96afbc3462e1d38 Mon Sep 17 00:00:00 2001 From: Aetias Date: Sat, 15 Mar 2025 16:40:31 +0100 Subject: [PATCH 29/37] Add `--dsd` option --- tools/configure.py | 24 +++++++++++++----------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/tools/configure.py b/tools/configure.py index 50779107..d8681804 100755 --- a/tools/configure.py +++ b/tools/configure.py @@ -15,7 +15,8 @@ DEFAULT_WIBO_PATH = "./wibo" parser = argparse.ArgumentParser(description="Generates build.ninja") parser.add_argument('-w', type=str, default=DEFAULT_WIBO_PATH, dest="wine", required=False, help="Path to Wine/Wibo (linux only)") parser.add_argument("--compiler", type=Path, required=False, help="Path to pre-installed compiler root directory") -parser.add_argument("--no-extract", type=bool, required=False, help="Skip extract step") +parser.add_argument("--no-extract", action="store_true", help="Skip extract step") +parser.add_argument("--dsd", type=Path, required=False, help="Path to pre-installed dsd CLI") parser.add_argument('version', help='Game version') args = parser.parse_args() @@ -281,16 +282,17 @@ def main(): def add_download_tool_builds(n: ninja_syntax.Writer): - n.build( - rule="download_tool", - outputs=DSD, - variables={ - "tool": "dsd", - "tag": DSD_VERSION, - "path": DSD, - }, - ) - n.newline() + if args.dsd is None: + n.build( + rule="download_tool", + outputs=DSD, + variables={ + "tool": "dsd", + "tag": DSD_VERSION, + "path": DSD, + }, + ) + n.newline() n.build( rule="download_tool", From 5a69a0816934044dfa9ea152732e029d2b3f2d2b Mon Sep 17 00:00:00 2001 From: Aetias Date: Sat, 15 Mar 2025 16:42:04 +0100 Subject: [PATCH 30/37] Use `--dsd` path correctly --- tools/configure.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/configure.py b/tools/configure.py index d8681804..df5996d8 100755 --- a/tools/configure.py +++ b/tools/configure.py @@ -95,7 +95,7 @@ if platform is None: exit(1) EXE = platform.exe WINE = args.wine if platform.system != "windows" else "" -DSD = os.path.join('.', str(root_path / f"dsd{EXE}")) +DSD = args.dsd or os.path.join('.', str(root_path / f"dsd{EXE}")) OBJDIFF = os.path.join('.', str(root_path / f"objdiff-cli{EXE}")) CC = os.path.join('.', str(mwcc_path / "mwccarm.exe")) LD = os.path.join('.', str(mwcc_path / "mwldarm.exe")) From 73e59758244454facb08a36781304cfac449baf5 Mon Sep 17 00:00:00 2001 From: Aetias Date: Sat, 15 Mar 2025 16:44:39 +0100 Subject: [PATCH 31/37] Fix configuring builds when `--dsd` is used --- tools/configure.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/configure.py b/tools/configure.py index df5996d8..1dc90b3d 100755 --- a/tools/configure.py +++ b/tools/configure.py @@ -95,7 +95,7 @@ if platform is None: exit(1) EXE = platform.exe WINE = args.wine if platform.system != "windows" else "" -DSD = args.dsd or os.path.join('.', str(root_path / f"dsd{EXE}")) +DSD = str(args.dsd) or os.path.join('.', str(root_path / f"dsd{EXE}")) OBJDIFF = os.path.join('.', str(root_path / f"objdiff-cli{EXE}")) CC = os.path.join('.', str(mwcc_path / "mwccarm.exe")) LD = os.path.join('.', str(mwcc_path / "mwldarm.exe")) From c82adb4ea4db5ea5e4edd38fc16fc80f43b0ba8c Mon Sep 17 00:00:00 2001 From: Aetias Date: Sun, 16 Mar 2025 12:22:34 +0100 Subject: [PATCH 32/37] Bump dsd; test build workflow --- .github/workflows/build.yml | 5 ++--- tools/configure.py | 2 +- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 64ea7f68..4a59c256 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -2,8 +2,6 @@ name: Build on: push: - branches: - - main pull_request: jobs: @@ -22,7 +20,8 @@ jobs: - name: Build run: | - python tools/configure.py ${{ matrix.version }} -w wibo --compiler /mwccarm --extract /extract + mv -r /extract . + python tools/configure.py ${{ matrix.version }} -w wibo --compiler /mwccarm --no-extract ninja arm9 report check - name: Upload report diff --git a/tools/configure.py b/tools/configure.py index 1dc90b3d..2824d4dd 100755 --- a/tools/configure.py +++ b/tools/configure.py @@ -23,7 +23,7 @@ args = parser.parse_args() # Config GAME = "ph" -DSD_VERSION = 'v0.5.0' +DSD_VERSION = 'v0.6.0' WIBO_VERSION = '0.6.16' OBJDIFF_VERSION = 'v2.7.1' MWCC_VERSION = "2.0/sp1p5" From 0a03d5129c68f918a701dc4dffb098a31538da80 Mon Sep 17 00:00:00 2001 From: Aetias Date: Sun, 16 Mar 2025 12:27:28 +0100 Subject: [PATCH 33/37] ci: Move extract directory from root --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 4a59c256..9edcaec0 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -20,7 +20,7 @@ jobs: - name: Build run: | - mv -r /extract . + mv /extract/* ./extract python tools/configure.py ${{ matrix.version }} -w wibo --compiler /mwccarm --no-extract ninja arm9 report check From 96921cb237fef6f45b875532e376213b87ce8fcf Mon Sep 17 00:00:00 2001 From: Aetias Date: Sun, 16 Mar 2025 12:28:57 +0100 Subject: [PATCH 34/37] Fix `DSD` path --- tools/configure.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/configure.py b/tools/configure.py index 2824d4dd..6989472b 100755 --- a/tools/configure.py +++ b/tools/configure.py @@ -95,7 +95,7 @@ if platform is None: exit(1) EXE = platform.exe WINE = args.wine if platform.system != "windows" else "" -DSD = str(args.dsd) or os.path.join('.', str(root_path / f"dsd{EXE}")) +DSD = str(args.dsd or os.path.join('.', str(root_path / f"dsd{EXE}"))) OBJDIFF = os.path.join('.', str(root_path / f"objdiff-cli{EXE}")) CC = os.path.join('.', str(mwcc_path / "mwccarm.exe")) LD = os.path.join('.', str(mwcc_path / "mwldarm.exe")) From 0fd501c68642bb095a490ce15bdf5fee5fa75df2 Mon Sep 17 00:00:00 2001 From: Aetias Date: Sun, 16 Mar 2025 12:33:20 +0100 Subject: [PATCH 35/37] Add `--fail` flag to `ninja check` --- tools/configure.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tools/configure.py b/tools/configure.py index 6989472b..3ae6286c 100755 --- a/tools/configure.py +++ b/tools/configure.py @@ -256,13 +256,13 @@ def main(): n.rule( name="check_modules", - command=f"{DSD} check modules --config-path $config_path" + command=f"{DSD} check modules --config-path $config_path --fail" ) n.newline() n.rule( name="check_symbols", - command=f"{DSD} check symbols --config-path $config_path --elf-path $elf_path" + command=f"{DSD} check symbols --config-path $config_path --elf-path $elf_path --fail" ) n.newline() From 48500e51f0d9062c0dbded7fbe5e2626136d09f4 Mon Sep 17 00:00:00 2001 From: Aetias Date: Sun, 16 Mar 2025 12:47:08 +0100 Subject: [PATCH 36/37] Fix symbols --- config/eur/arm9/overlays/ov000/relocs.txt | 4 +-- config/eur/arm9/overlays/ov000/symbols.txt | 34 +++++++++++----------- config/eur/arm9/overlays/ov004/relocs.txt | 2 +- config/usa/arm9/overlays/ov000/relocs.txt | 4 +-- config/usa/arm9/overlays/ov000/symbols.txt | 34 +++++++++++----------- config/usa/arm9/overlays/ov004/relocs.txt | 2 +- 6 files changed, 40 insertions(+), 40 deletions(-) diff --git a/config/eur/arm9/overlays/ov000/relocs.txt b/config/eur/arm9/overlays/ov000/relocs.txt index 6ec33322..5513c2e0 100644 --- a/config/eur/arm9/overlays/ov000/relocs.txt +++ b/config/eur/arm9/overlays/ov000/relocs.txt @@ -6526,7 +6526,7 @@ from:0x020b8628 kind:load to:0x020dc7f8 module:overlay(0) from:0x020b8644 kind:arm_call to:0x0202e9dc module:main from:0x020b8650 kind:arm_call_thumb to:0x02107810 module:overlay(4) from:0x020b8664 kind:load to:0x027e0fe0 module:dtcm -from:0x020b8668 kind:load to:0x020e667c module:overlay(0) +from:0x020b8668 kind:load to:0x020e6674 add:8 module:overlay(0) from:0x020b867c kind:arm_call_thumb to:0x02107994 module:overlay(4) from:0x020b8684 kind:arm_call to:0x0202ea0c module:main from:0x020b8698 kind:arm_call_thumb to:0x02107994 module:overlay(4) @@ -7436,7 +7436,7 @@ from:0x020c0b5c kind:load to:0x02050f54 module:main from:0x020c0b7c kind:arm_call to:0x0202e9dc module:main from:0x020c0b88 kind:arm_call_thumb to:0x02107810 module:overlay(4) from:0x020c0b9c kind:load to:0x027e0fe0 module:dtcm -from:0x020c0ba0 kind:load to:0x020e70a0 module:overlay(0) +from:0x020c0ba0 kind:load to:0x020e7098 add:8 module:overlay(0) from:0x020c0bb4 kind:arm_call_thumb to:0x02107994 module:overlay(4) from:0x020c0bbc kind:arm_call to:0x0202ea0c module:main from:0x020c0bd0 kind:arm_call_thumb to:0x02107994 module:overlay(4) diff --git a/config/eur/arm9/overlays/ov000/symbols.txt b/config/eur/arm9/overlays/ov000/symbols.txt index d2968311..07ca6e05 100644 --- a/config/eur/arm9/overlays/ov000/symbols.txt +++ b/config/eur/arm9/overlays/ov000/symbols.txt @@ -3955,11 +3955,11 @@ __sinit_ov000_020e11d8 kind:function(arm,size=0x34) addr:0x20e11d8 __sinit_ov000_020e120c kind:function(arm,size=0x44) addr:0x20e120c __sinit_ov000_020e1250 kind:function(arm,size=0x40) addr:0x20e1250 __sinit_ov000_020e1290 kind:function(arm,size=0x48) addr:0x20e1290 -__sinit_ActorNavi.cpp kind:function(arm,size=0x64) addr:0x20e12d8 -__sinit_ActorForceNavi.cpp kind:function(arm,size=0x40) addr:0x20e133c +__sinit_ActorNavi.cpp kind:function(arm,size=0x64) addr:0x20e12d8 local +__sinit_ActorForceNavi.cpp kind:function(arm,size=0x40) addr:0x20e133c local __sinit_ov000_020e137c kind:function(arm,size=0x798) addr:0x20e137c -__sinit_ActorActionObject.cpp kind:function(arm,size=0x40) addr:0x20e1b14 -__sinit_ActorWisdomNavi.cpp kind:function(arm,size=0x40) addr:0x20e1b54 +__sinit_ActorActionObject.cpp kind:function(arm,size=0x40) addr:0x20e1b14 local +__sinit_ActorWisdomNavi.cpp kind:function(arm,size=0x40) addr:0x20e1b54 local __sinit_ov000_020e1b94 kind:function(arm,size=0x40) addr:0x20e1b94 __sinit_ov000_020e1bd4 kind:function(arm,size=0x40) addr:0x20e1bd4 __sinit_ov000_020e1c14 kind:function(arm,size=0x40) addr:0x20e1c14 @@ -4768,7 +4768,7 @@ data_ov000_020e59fc kind:data(any) addr:0x20e59fc data_ov000_020e5a0c kind:data(any) addr:0x20e5a0c data_ov000_020e5a20 kind:data(any) addr:0x20e5a20 data_ov000_020e5a34 kind:data(any) addr:0x20e5a34 -_ZTV13LinkStateItem kind:data(any) addr:0x20e5a48 +_ZTV13LinkStateItem kind:data(any) addr:0x20e5a40 data_ov000_020e5a8c kind:data(any) addr:0x20e5a8c data_ov000_020e5a90 kind:data(any) addr:0x20e5a90 data_ov000_020e5a94 kind:data(any) addr:0x20e5a94 @@ -4958,7 +4958,7 @@ data_ov000_020e6530 kind:data(any) addr:0x20e6530 data_ov000_020e6534 kind:data(any) addr:0x20e6534 _ZTV9ActorNavi kind:data(any) addr:0x20e6560 _ZTV24UnkStruct_ov000_020b8110 kind:data(any) addr:0x20e6658 -_ZTV14ActorForceNavi kind:data(any) addr:0x20e667c +_ZTV14ActorForceNavi kind:data(any) addr:0x20e6674 data_ov000_020e676c kind:data(any) addr:0x20e676c data_ov000_020e6770 kind:data(any) addr:0x20e6770 data_ov000_020e6774 kind:data(any) addr:0x20e6774 @@ -5057,7 +5057,7 @@ data_ov000_020e7014 kind:data(any) addr:0x20e7014 data_ov000_020e7018 kind:data(any) addr:0x20e7018 data_ov000_020e701c kind:data(any) addr:0x20e701c data_ov000_020e7048 kind:data(any) addr:0x20e7048 -_ZTV15ActorWisdomNavi kind:data(any) addr:0x20e70a0 +_ZTV15ActorWisdomNavi kind:data(any) addr:0x20e7098 data_ov000_020e7198 kind:data(any) addr:0x20e7198 data_ov000_020e71a0 kind:data(any) addr:0x20e71a0 data_ov000_020e71a4 kind:data(any) addr:0x20e71a4 @@ -5070,14 +5070,14 @@ data_ov000_020e71bc kind:data(any) addr:0x20e71bc sShipTypes kind:data(any) addr:0x20e71c0 _ZTV17KillPickupsFilter kind:data(any) addr:0x20e71e8 _ZTV5Actor kind:data(any) addr:0x20e71f4 -data_ov000_020e72a8 kind:data(any) addr:0x20e72a8 -data_ov000_020e72ac kind:data(any) addr:0x20e72ac -data_ov000_020e72b0 kind:data(any) addr:0x20e72b0 -data_ov000_020e72b4 kind:data(any) addr:0x20e72b4 -data_ov000_020e72b8 kind:data(any) addr:0x20e72b8 -data_ov000_020e72bc kind:data(any) addr:0x20e72bc -data_ov000_020e72c0 kind:data(any) addr:0x20e72c0 -data_ov000_020e72c4 kind:data(any) addr:0x20e72c4 +@965 kind:data(any) addr:0x20e72a8 local +@964 kind:data(any) addr:0x20e72ac local +@963 kind:data(any) addr:0x20e72b0 local +@962 kind:data(any) addr:0x20e72b4 local +@961 kind:data(any) addr:0x20e72b8 local +@960 kind:data(any) addr:0x20e72bc local +@959 kind:data(any) addr:0x20e72c0 local +@958 kind:data(any) addr:0x20e72c4 local _ZTV11FilterActor kind:data(any) addr:0x20e72e8 data_ov000_020e72fc kind:data(any) addr:0x20e72fc data_ov000_020e7300 kind:data(any) addr:0x20e7300 @@ -5879,7 +5879,7 @@ data_ov000_020ee198 kind:bss addr:0x20ee198 _ZN9ActorNavi5gTypeE kind:bss addr:0x20ee1ac @419 kind:bss addr:0x20ee1c0 local data_ov000_020ee1cc kind:bss addr:0x20ee1cc -@405 kind:bss addr:0x20ee1d8 local +@403 kind:bss addr:0x20ee1d8 local _ZN14ActorForceNavi5gTypeE kind:bss addr:0x20ee1e4 data_ov000_020ee1f8 kind:bss addr:0x20ee1f8 data_ov000_020ee1fc kind:bss addr:0x20ee1fc @@ -5943,7 +5943,7 @@ data_ov000_020ee548 kind:bss addr:0x20ee548 _ZN17ActorActionObject5gTypeE kind:bss addr:0x20ee568 gPlayerAnimHandler kind:bss addr:0x20ee57c data_ov000_020ee588 kind:bss addr:0x20ee588 -@405 kind:bss addr:0x20ee590 local +@403 kind:bss addr:0x20ee590 local _ZN15ActorWisdomNavi5gTypeE kind:bss addr:0x20ee59c data_ov000_020ee5b0 kind:bss addr:0x20ee5b0 data_ov000_020ee5bc kind:bss addr:0x20ee5bc diff --git a/config/eur/arm9/overlays/ov004/relocs.txt b/config/eur/arm9/overlays/ov004/relocs.txt index ce85e811..d277363f 100644 --- a/config/eur/arm9/overlays/ov004/relocs.txt +++ b/config/eur/arm9/overlays/ov004/relocs.txt @@ -1960,7 +1960,7 @@ from:0x02109a4c kind:thumb_call_arm to:0x020d0530 module:overlay(0) from:0x02109a52 kind:thumb_call to:0x021099b0 module:overlay(4) from:0x02109a5e kind:thumb_call to:0x0210add4 module:overlay(4) from:0x02109aba kind:thumb_call_arm to:0x0204f614 module:main -from:0x02109ad8 kind:load to:0x020e5a48 add:8 module:overlay(0) +from:0x02109ad8 kind:load to:0x020e5a40 add:8 module:overlay(0) from:0x02109adc kind:load to:0x021079d5 module:overlay(4) from:0x02109ae0 kind:load to:0x02057200 module:main from:0x02109ae4 kind:load to:0x020b7d74 module:overlay(0) diff --git a/config/usa/arm9/overlays/ov000/relocs.txt b/config/usa/arm9/overlays/ov000/relocs.txt index eb606487..5ae92103 100644 --- a/config/usa/arm9/overlays/ov000/relocs.txt +++ b/config/usa/arm9/overlays/ov000/relocs.txt @@ -6526,7 +6526,7 @@ from:0x020b85c8 kind:load to:0x020dc798 module:overlay(0) from:0x020b85e4 kind:arm_call to:0x0202e9d8 module:main from:0x020b85f0 kind:arm_call_thumb to:0x02107790 module:overlay(4) from:0x020b8604 kind:load to:0x027e0fe0 module:dtcm -from:0x020b8608 kind:load to:0x020e661c module:overlay(0) +from:0x020b8608 kind:load to:0x020e6614 add:8 module:overlay(0) from:0x020b861c kind:arm_call_thumb to:0x02107914 module:overlay(4) from:0x020b8624 kind:arm_call to:0x0202ea08 module:main from:0x020b8638 kind:arm_call_thumb to:0x02107914 module:overlay(4) @@ -7436,7 +7436,7 @@ from:0x020c0afc kind:load to:0x02050f10 module:main from:0x020c0b1c kind:arm_call to:0x0202e9d8 module:main from:0x020c0b28 kind:arm_call_thumb to:0x02107790 module:overlay(4) from:0x020c0b3c kind:load to:0x027e0fe0 module:dtcm -from:0x020c0b40 kind:load to:0x020e7040 module:overlay(0) +from:0x020c0b40 kind:load to:0x020e7038 add:8 module:overlay(0) from:0x020c0b54 kind:arm_call_thumb to:0x02107914 module:overlay(4) from:0x020c0b5c kind:arm_call to:0x0202ea08 module:main from:0x020c0b70 kind:arm_call_thumb to:0x02107914 module:overlay(4) diff --git a/config/usa/arm9/overlays/ov000/symbols.txt b/config/usa/arm9/overlays/ov000/symbols.txt index 82bfe5cf..84b9f721 100644 --- a/config/usa/arm9/overlays/ov000/symbols.txt +++ b/config/usa/arm9/overlays/ov000/symbols.txt @@ -3955,11 +3955,11 @@ __sinit_ov000_020e11d8 kind:function(arm,size=0x34) addr:0x20e1178 __sinit_ov000_020e120c kind:function(arm,size=0x44) addr:0x20e11ac __sinit_ov000_020e1250 kind:function(arm,size=0x40) addr:0x20e11f0 __sinit_ov000_020e1290 kind:function(arm,size=0x48) addr:0x20e1230 -__sinit_ActorNavi.cpp kind:function(arm,size=0x64) addr:0x20e1278 -__sinit_ActorForceNavi.cpp kind:function(arm,size=0x40) addr:0x20e12dc +__sinit_ActorNavi.cpp kind:function(arm,size=0x64) addr:0x20e1278 local +__sinit_ActorForceNavi.cpp kind:function(arm,size=0x40) addr:0x20e12dc local __sinit_ov000_020e137c kind:function(arm,size=0x798) addr:0x20e131c -__sinit_ActorActionObject.cpp kind:function(arm,size=0x40) addr:0x20e1ab4 -__sinit_ActorWisdomNavi.cpp kind:function(arm,size=0x40) addr:0x20e1af4 +__sinit_ActorActionObject.cpp kind:function(arm,size=0x40) addr:0x20e1ab4 local +__sinit_ActorWisdomNavi.cpp kind:function(arm,size=0x40) addr:0x20e1af4 local __sinit_ov000_020e1b94 kind:function(arm,size=0x40) addr:0x20e1b34 __sinit_ov000_020e1bd4 kind:function(arm,size=0x40) addr:0x20e1b74 __sinit_ov000_020e1c14 kind:function(arm,size=0x40) addr:0x20e1bb4 @@ -4768,7 +4768,7 @@ data_ov000_020e59fc kind:data(any) addr:0x20e599c data_ov000_020e5a0c kind:data(any) addr:0x20e59ac data_ov000_020e5a20 kind:data(any) addr:0x20e59c0 data_ov000_020e5a34 kind:data(any) addr:0x20e59d4 -_ZTV13LinkStateItem kind:data(any) addr:0x20e59e8 +_ZTV13LinkStateItem kind:data(any) addr:0x20e59e0 data_ov000_020e5a8c kind:data(any) addr:0x20e5a2c data_ov000_020e5a90 kind:data(any) addr:0x20e5a30 data_ov000_020e5a94 kind:data(any) addr:0x20e5a34 @@ -4958,7 +4958,7 @@ data_ov000_020e6530 kind:data(any) addr:0x20e64d0 data_ov000_020e6534 kind:data(any) addr:0x20e64d4 _ZTV9ActorNavi kind:data(any) addr:0x20e6500 _ZTV24UnkStruct_ov000_020b8110 kind:data(any) addr:0x20e65f8 -_ZTV14ActorForceNavi kind:data(any) addr:0x20e661c +_ZTV14ActorForceNavi kind:data(any) addr:0x20e6614 data_ov000_020e676c kind:data(any) addr:0x20e670c data_ov000_020e6770 kind:data(any) addr:0x20e6710 data_ov000_020e6774 kind:data(any) addr:0x20e6714 @@ -5057,7 +5057,7 @@ data_ov000_020e7014 kind:data(any) addr:0x20e6fb4 data_ov000_020e7018 kind:data(any) addr:0x20e6fb8 data_ov000_020e701c kind:data(any) addr:0x20e6fbc data_ov000_020e7048 kind:data(any) addr:0x20e6fe8 -_ZTV15ActorWisdomNavi kind:data(any) addr:0x20e7040 +_ZTV15ActorWisdomNavi kind:data(any) addr:0x20e7038 data_ov000_020e7198 kind:data(any) addr:0x20e7138 data_ov000_020e71a0 kind:data(any) addr:0x20e7140 data_ov000_020e71a4 kind:data(any) addr:0x20e7144 @@ -5070,14 +5070,14 @@ data_ov000_020e71bc kind:data(any) addr:0x20e715c sShipTypes kind:data(any) addr:0x20e7160 _ZTV17KillPickupsFilter kind:data(any) addr:0x20e7188 _ZTV5Actor kind:data(any) addr:0x20e7194 -data_ov000_020e72a8 kind:data(any) addr:0x20e7248 -data_ov000_020e72ac kind:data(any) addr:0x20e724c -data_ov000_020e72b0 kind:data(any) addr:0x20e7250 -data_ov000_020e72b4 kind:data(any) addr:0x20e7254 -data_ov000_020e72b8 kind:data(any) addr:0x20e7258 -data_ov000_020e72bc kind:data(any) addr:0x20e725c -data_ov000_020e72c0 kind:data(any) addr:0x20e7260 -data_ov000_020e72c4 kind:data(any) addr:0x20e7264 +@965 kind:data(any) addr:0x20e7248 local +@964 kind:data(any) addr:0x20e724c local +@963 kind:data(any) addr:0x20e7250 local +@962 kind:data(any) addr:0x20e7254 local +@961 kind:data(any) addr:0x20e7258 local +@960 kind:data(any) addr:0x20e725c local +@959 kind:data(any) addr:0x20e7260 local +@958 kind:data(any) addr:0x20e7264 local _ZTV11FilterActor kind:data(any) addr:0x20e7288 data_ov000_020e72fc kind:data(any) addr:0x20e729c data_ov000_020e7300 kind:data(any) addr:0x20e72a0 @@ -5879,7 +5879,7 @@ data_ov000_020ee198 kind:bss addr:0x20ee138 _ZN9ActorNavi5gTypeE kind:bss addr:0x20ee14c @419 kind:bss addr:0x20ee160 local data_ov000_020ee1cc kind:bss addr:0x20ee16c -@405 kind:bss addr:0x20ee178 local +@403 kind:bss addr:0x20ee178 local _ZN14ActorForceNavi5gTypeE kind:bss addr:0x20ee184 data_ov000_020ee1f8 kind:bss addr:0x20ee198 data_ov000_020ee1fc kind:bss addr:0x20ee19c @@ -5943,7 +5943,7 @@ data_ov000_020ee548 kind:bss addr:0x20ee4e8 _ZN17ActorActionObject5gTypeE kind:bss addr:0x20ee508 gPlayerAnimHandler kind:bss addr:0x20ee51c data_ov000_020ee588 kind:bss addr:0x20ee528 -@405 kind:bss addr:0x20ee530 local +@403 kind:bss addr:0x20ee530 local _ZN15ActorWisdomNavi5gTypeE kind:bss addr:0x20ee53c data_ov000_020ee5b0 kind:bss addr:0x20ee550 data_ov000_020ee5bc kind:bss addr:0x20ee55c diff --git a/config/usa/arm9/overlays/ov004/relocs.txt b/config/usa/arm9/overlays/ov004/relocs.txt index 76d78e03..13a0063b 100644 --- a/config/usa/arm9/overlays/ov004/relocs.txt +++ b/config/usa/arm9/overlays/ov004/relocs.txt @@ -1960,7 +1960,7 @@ from:0x021099cc kind:thumb_call_arm to:0x020d04d0 module:overlay(0) from:0x021099d2 kind:thumb_call to:0x02109930 module:overlay(4) from:0x021099de kind:thumb_call to:0x0210ad54 module:overlay(4) from:0x02109a3a kind:thumb_call_arm to:0x0204f5d0 module:main -from:0x02109a58 kind:load to:0x020e59e8 add:8 module:overlay(0) +from:0x02109a58 kind:load to:0x020e59e0 add:8 module:overlay(0) from:0x02109a5c kind:load to:0x02107955 module:overlay(4) from:0x02109a60 kind:load to:0x020571b8 module:main from:0x02109a64 kind:load to:0x020b7d14 module:overlay(0) From 11944e8fa5ca7c02bb08fabb23d8827404ab722b Mon Sep 17 00:00:00 2001 From: Aetias Date: Mon, 17 Mar 2025 21:29:42 +0100 Subject: [PATCH 37/37] build.yml: Use zeldaret CI image, recurse Git submodules --- .github/workflows/build.yml | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 9edcaec0..ab144e57 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -6,7 +6,7 @@ on: jobs: build: - container: ghcr.io/aetiashax/ph-build:main + container: ghcr.io/zeldaret/ph-build:main runs-on: ubuntu-latest strategy: @@ -17,10 +17,15 @@ jobs: steps: - name: Checkout uses: actions/checkout@v4 + with: + submodules: recursive + + - name: Prepare + run: | + mv /extract/* ./extract - name: Build run: | - mv /extract/* ./extract python tools/configure.py ${{ matrix.version }} -w wibo --compiler /mwccarm --no-extract ninja arm9 report check