From b40c9e9c50086ee3fafbfe48efcd4c981babb770 Mon Sep 17 00:00:00 2001 From: Yanis <35189056+Yanis002@users.noreply.github.com> Date: Wed, 16 Sep 2026 15:19:14 +0200 Subject: [PATCH] Decompile overlay 102 (`CourseExecLand`) (#150) * fix extra cflags not being used * decomp overlay 102 + mlck "ok" * fix build and match issues * type func_01fff350 param1 * add changes report (based on dtk-template) * docs * changes_fmt implicits * fix regressions * cleanup * ninja format * CourseExecLand.cpp -> UnkStruct_027e0ce0_40_102.cpp --- CONTRIBUTING.md | 4 + config/eur/arm9/itcm/symbols.txt | 4 +- config/eur/arm9/overlays/ov000/relocs.txt | 6 +- config/eur/arm9/overlays/ov000/symbols.txt | 28 +- config/eur/arm9/overlays/ov001/relocs.txt | 4 +- config/eur/arm9/overlays/ov017/symbols.txt | 14 +- config/eur/arm9/overlays/ov019/symbols.txt | 30 +- config/eur/arm9/overlays/ov024/relocs.txt | 4 +- config/eur/arm9/overlays/ov024/symbols.txt | 110 ++--- config/eur/arm9/overlays/ov031/delinks.txt | 2 +- config/eur/arm9/overlays/ov031/relocs.txt | 6 +- config/eur/arm9/overlays/ov031/symbols.txt | 59 ++- config/eur/arm9/overlays/ov033/relocs.txt | 2 +- config/eur/arm9/overlays/ov034/relocs.txt | 2 +- config/eur/arm9/overlays/ov037/relocs.txt | 10 +- config/eur/arm9/overlays/ov040/relocs.txt | 16 +- config/eur/arm9/overlays/ov041/relocs.txt | 8 +- config/eur/arm9/overlays/ov045/relocs.txt | 2 +- config/eur/arm9/overlays/ov047/symbols.txt | 2 +- config/eur/arm9/overlays/ov049/relocs.txt | 4 +- config/eur/arm9/overlays/ov051/relocs.txt | 2 +- config/eur/arm9/overlays/ov057/relocs.txt | 2 +- config/eur/arm9/overlays/ov058/relocs.txt | 2 +- config/eur/arm9/overlays/ov059/relocs.txt | 12 +- config/eur/arm9/overlays/ov060/relocs.txt | 2 +- config/eur/arm9/overlays/ov063/relocs.txt | 4 +- config/eur/arm9/overlays/ov066/relocs.txt | 6 +- config/eur/arm9/overlays/ov068/relocs.txt | 4 +- config/eur/arm9/overlays/ov070/symbols.txt | 2 +- config/eur/arm9/overlays/ov071/relocs.txt | 2 +- config/eur/arm9/overlays/ov072/relocs.txt | 2 +- config/eur/arm9/overlays/ov073/relocs.txt | 6 +- config/eur/arm9/overlays/ov074/relocs.txt | 2 +- config/eur/arm9/overlays/ov075/relocs.txt | 8 +- config/eur/arm9/overlays/ov078/relocs.txt | 4 +- config/eur/arm9/overlays/ov080/relocs.txt | 2 +- config/eur/arm9/overlays/ov081/relocs.txt | 2 +- config/eur/arm9/overlays/ov083/relocs.txt | 8 +- config/eur/arm9/overlays/ov084/relocs.txt | 6 +- config/eur/arm9/overlays/ov087/relocs.txt | 8 +- config/eur/arm9/overlays/ov088/relocs.txt | 4 +- config/eur/arm9/overlays/ov092/relocs.txt | 2 +- config/eur/arm9/overlays/ov092/symbols.txt | 2 +- config/eur/arm9/overlays/ov093/relocs.txt | 2 +- config/eur/arm9/overlays/ov093/symbols.txt | 16 +- config/eur/arm9/overlays/ov094/relocs.txt | 4 +- config/eur/arm9/overlays/ov095/relocs.txt | 4 +- config/eur/arm9/overlays/ov096/relocs.txt | 4 +- config/eur/arm9/overlays/ov101/relocs.txt | 2 +- config/eur/arm9/overlays/ov101/symbols.txt | 2 +- config/eur/arm9/overlays/ov102/delinks.txt | 23 + config/eur/arm9/overlays/ov102/relocs.txt | 2 +- config/eur/arm9/overlays/ov102/symbols.txt | 78 ++-- config/eur/arm9/overlays/ov105/relocs.txt | 8 +- config/eur/arm9/overlays/ov107/relocs.txt | 2 +- config/eur/arm9/overlays/ov112/relocs.txt | 2 +- config/eur/arm9/relocs.txt | 2 +- config/eur/arm9/symbols.txt | 2 +- config/eur1/arm9/itcm/symbols.txt | 6 +- config/eur1/arm9/overlays/ov000/relocs.txt | 6 +- config/eur1/arm9/overlays/ov000/symbols.txt | 30 +- config/eur1/arm9/overlays/ov001/relocs.txt | 4 +- config/eur1/arm9/overlays/ov017/symbols.txt | 14 +- config/eur1/arm9/overlays/ov019/symbols.txt | 30 +- config/eur1/arm9/overlays/ov024/relocs.txt | 4 +- config/eur1/arm9/overlays/ov024/symbols.txt | 110 ++--- config/eur1/arm9/overlays/ov031/delinks.txt | 2 +- config/eur1/arm9/overlays/ov031/relocs.txt | 10 +- config/eur1/arm9/overlays/ov031/symbols.txt | 71 ++- config/eur1/arm9/overlays/ov032/relocs.txt | 4 +- config/eur1/arm9/overlays/ov033/relocs.txt | 2 +- config/eur1/arm9/overlays/ov034/relocs.txt | 2 +- config/eur1/arm9/overlays/ov037/relocs.txt | 10 +- config/eur1/arm9/overlays/ov040/relocs.txt | 16 +- config/eur1/arm9/overlays/ov041/relocs.txt | 8 +- config/eur1/arm9/overlays/ov045/relocs.txt | 2 +- config/eur1/arm9/overlays/ov047/symbols.txt | 2 +- config/eur1/arm9/overlays/ov049/relocs.txt | 4 +- config/eur1/arm9/overlays/ov051/relocs.txt | 2 +- config/eur1/arm9/overlays/ov057/relocs.txt | 2 +- config/eur1/arm9/overlays/ov058/relocs.txt | 2 +- config/eur1/arm9/overlays/ov059/relocs.txt | 12 +- config/eur1/arm9/overlays/ov060/relocs.txt | 2 +- config/eur1/arm9/overlays/ov063/relocs.txt | 4 +- config/eur1/arm9/overlays/ov066/relocs.txt | 6 +- config/eur1/arm9/overlays/ov068/relocs.txt | 4 +- config/eur1/arm9/overlays/ov070/symbols.txt | 2 +- config/eur1/arm9/overlays/ov071/relocs.txt | 2 +- config/eur1/arm9/overlays/ov072/relocs.txt | 2 +- config/eur1/arm9/overlays/ov073/relocs.txt | 6 +- config/eur1/arm9/overlays/ov074/relocs.txt | 2 +- config/eur1/arm9/overlays/ov075/relocs.txt | 8 +- config/eur1/arm9/overlays/ov078/relocs.txt | 4 +- config/eur1/arm9/overlays/ov080/relocs.txt | 2 +- config/eur1/arm9/overlays/ov081/relocs.txt | 2 +- config/eur1/arm9/overlays/ov083/relocs.txt | 8 +- config/eur1/arm9/overlays/ov084/relocs.txt | 6 +- config/eur1/arm9/overlays/ov087/relocs.txt | 8 +- config/eur1/arm9/overlays/ov088/relocs.txt | 4 +- config/eur1/arm9/overlays/ov092/relocs.txt | 2 +- config/eur1/arm9/overlays/ov092/symbols.txt | 2 +- config/eur1/arm9/overlays/ov093/relocs.txt | 2 +- config/eur1/arm9/overlays/ov093/symbols.txt | 16 +- config/eur1/arm9/overlays/ov094/relocs.txt | 4 +- config/eur1/arm9/overlays/ov095/relocs.txt | 4 +- config/eur1/arm9/overlays/ov096/relocs.txt | 4 +- config/eur1/arm9/overlays/ov101/relocs.txt | 2 +- config/eur1/arm9/overlays/ov101/symbols.txt | 2 +- config/eur1/arm9/overlays/ov102/delinks.txt | 23 + config/eur1/arm9/overlays/ov102/relocs.txt | 6 +- config/eur1/arm9/overlays/ov102/symbols.txt | 78 ++-- config/eur1/arm9/overlays/ov105/relocs.txt | 8 +- config/eur1/arm9/overlays/ov107/relocs.txt | 2 +- config/eur1/arm9/overlays/ov112/relocs.txt | 2 +- config/eur1/arm9/relocs.txt | 2 +- config/eur1/arm9/symbols.txt | 2 +- config/jp/arm9/itcm/symbols.txt | 4 +- config/jp/arm9/overlays/ov000/relocs.txt | 6 +- config/jp/arm9/overlays/ov000/symbols.txt | 30 +- config/jp/arm9/overlays/ov001/relocs.txt | 4 +- config/jp/arm9/overlays/ov017/symbols.txt | 14 +- config/jp/arm9/overlays/ov019/symbols.txt | 30 +- config/jp/arm9/overlays/ov024/relocs.txt | 4 +- config/jp/arm9/overlays/ov024/symbols.txt | 110 ++--- config/jp/arm9/overlays/ov031/delinks.txt | 4 +- config/jp/arm9/overlays/ov031/relocs.txt | 8 +- config/jp/arm9/overlays/ov031/symbols.txt | 79 ++-- config/jp/arm9/overlays/ov033/relocs.txt | 2 +- config/jp/arm9/overlays/ov034/relocs.txt | 2 +- config/jp/arm9/overlays/ov037/relocs.txt | 10 +- config/jp/arm9/overlays/ov040/relocs.txt | 16 +- config/jp/arm9/overlays/ov041/relocs.txt | 8 +- config/jp/arm9/overlays/ov045/relocs.txt | 2 +- config/jp/arm9/overlays/ov047/symbols.txt | 2 +- config/jp/arm9/overlays/ov049/relocs.txt | 4 +- config/jp/arm9/overlays/ov051/relocs.txt | 2 +- config/jp/arm9/overlays/ov057/relocs.txt | 2 +- config/jp/arm9/overlays/ov058/relocs.txt | 2 +- config/jp/arm9/overlays/ov059/relocs.txt | 12 +- config/jp/arm9/overlays/ov060/relocs.txt | 2 +- config/jp/arm9/overlays/ov063/relocs.txt | 4 +- config/jp/arm9/overlays/ov066/relocs.txt | 6 +- config/jp/arm9/overlays/ov068/relocs.txt | 4 +- config/jp/arm9/overlays/ov070/symbols.txt | 2 +- config/jp/arm9/overlays/ov071/relocs.txt | 2 +- config/jp/arm9/overlays/ov072/relocs.txt | 2 +- config/jp/arm9/overlays/ov073/relocs.txt | 6 +- config/jp/arm9/overlays/ov074/relocs.txt | 4 +- config/jp/arm9/overlays/ov075/relocs.txt | 8 +- config/jp/arm9/overlays/ov078/relocs.txt | 4 +- config/jp/arm9/overlays/ov080/relocs.txt | 4 +- config/jp/arm9/overlays/ov081/relocs.txt | 2 +- config/jp/arm9/overlays/ov083/relocs.txt | 8 +- config/jp/arm9/overlays/ov084/relocs.txt | 6 +- config/jp/arm9/overlays/ov087/relocs.txt | 8 +- config/jp/arm9/overlays/ov088/relocs.txt | 4 +- config/jp/arm9/overlays/ov092/relocs.txt | 2 +- config/jp/arm9/overlays/ov092/symbols.txt | 2 +- config/jp/arm9/overlays/ov093/relocs.txt | 2 +- config/jp/arm9/overlays/ov093/symbols.txt | 16 +- config/jp/arm9/overlays/ov094/relocs.txt | 4 +- config/jp/arm9/overlays/ov095/relocs.txt | 4 +- config/jp/arm9/overlays/ov096/relocs.txt | 4 +- config/jp/arm9/overlays/ov101/relocs.txt | 2 +- config/jp/arm9/overlays/ov101/symbols.txt | 2 +- config/jp/arm9/overlays/ov102/delinks.txt | 23 + config/jp/arm9/overlays/ov102/relocs.txt | 2 +- config/jp/arm9/overlays/ov102/symbols.txt | 78 ++-- config/jp/arm9/overlays/ov105/relocs.txt | 8 +- config/jp/arm9/overlays/ov107/relocs.txt | 2 +- config/jp/arm9/overlays/ov112/relocs.txt | 2 +- config/jp/arm9/relocs.txt | 2 +- config/jp/arm9/symbols.txt | 2 +- config/usa/arm9/itcm/symbols.txt | 6 +- config/usa/arm9/overlays/ov000/relocs.txt | 6 +- config/usa/arm9/overlays/ov000/symbols.txt | 30 +- config/usa/arm9/overlays/ov001/relocs.txt | 4 +- config/usa/arm9/overlays/ov017/symbols.txt | 14 +- config/usa/arm9/overlays/ov019/symbols.txt | 30 +- config/usa/arm9/overlays/ov024/relocs.txt | 4 +- config/usa/arm9/overlays/ov024/symbols.txt | 110 ++--- config/usa/arm9/overlays/ov031/delinks.txt | 2 +- config/usa/arm9/overlays/ov031/relocs.txt | 6 +- config/usa/arm9/overlays/ov031/symbols.txt | 71 ++- config/usa/arm9/overlays/ov032/delinks.txt | 2 +- config/usa/arm9/overlays/ov032/relocs.txt | 4 +- config/usa/arm9/overlays/ov033/relocs.txt | 2 +- config/usa/arm9/overlays/ov034/relocs.txt | 2 +- config/usa/arm9/overlays/ov037/relocs.txt | 10 +- config/usa/arm9/overlays/ov040/relocs.txt | 16 +- config/usa/arm9/overlays/ov041/relocs.txt | 8 +- config/usa/arm9/overlays/ov045/relocs.txt | 2 +- config/usa/arm9/overlays/ov047/symbols.txt | 2 +- config/usa/arm9/overlays/ov049/relocs.txt | 4 +- config/usa/arm9/overlays/ov051/relocs.txt | 2 +- config/usa/arm9/overlays/ov057/relocs.txt | 2 +- config/usa/arm9/overlays/ov058/relocs.txt | 2 +- config/usa/arm9/overlays/ov059/relocs.txt | 12 +- config/usa/arm9/overlays/ov060/relocs.txt | 2 +- config/usa/arm9/overlays/ov063/relocs.txt | 4 +- config/usa/arm9/overlays/ov066/relocs.txt | 6 +- config/usa/arm9/overlays/ov068/relocs.txt | 4 +- config/usa/arm9/overlays/ov070/symbols.txt | 2 +- config/usa/arm9/overlays/ov071/relocs.txt | 2 +- config/usa/arm9/overlays/ov072/relocs.txt | 2 +- config/usa/arm9/overlays/ov073/relocs.txt | 6 +- config/usa/arm9/overlays/ov074/relocs.txt | 2 +- config/usa/arm9/overlays/ov075/relocs.txt | 8 +- config/usa/arm9/overlays/ov078/relocs.txt | 4 +- config/usa/arm9/overlays/ov080/relocs.txt | 2 +- config/usa/arm9/overlays/ov081/relocs.txt | 2 +- config/usa/arm9/overlays/ov083/relocs.txt | 8 +- config/usa/arm9/overlays/ov084/relocs.txt | 6 +- config/usa/arm9/overlays/ov087/relocs.txt | 8 +- config/usa/arm9/overlays/ov088/relocs.txt | 4 +- config/usa/arm9/overlays/ov092/relocs.txt | 2 +- config/usa/arm9/overlays/ov092/symbols.txt | 2 +- config/usa/arm9/overlays/ov093/relocs.txt | 2 +- config/usa/arm9/overlays/ov093/symbols.txt | 16 +- config/usa/arm9/overlays/ov094/relocs.txt | 4 +- config/usa/arm9/overlays/ov095/relocs.txt | 4 +- config/usa/arm9/overlays/ov096/relocs.txt | 4 +- config/usa/arm9/overlays/ov101/relocs.txt | 2 +- config/usa/arm9/overlays/ov101/symbols.txt | 2 +- config/usa/arm9/overlays/ov102/delinks.txt | 23 + config/usa/arm9/overlays/ov102/relocs.txt | 2 +- config/usa/arm9/overlays/ov102/symbols.txt | 78 ++-- config/usa/arm9/overlays/ov105/relocs.txt | 8 +- config/usa/arm9/overlays/ov107/relocs.txt | 2 +- config/usa/arm9/overlays/ov112/relocs.txt | 2 +- config/usa/arm9/relocs.txt | 2 +- config/usa/arm9/symbols.txt | 2 +- docs/images/double_inheritance_vtable.png | Bin 0 -> 233388 bytes docs/images/double_inheritance_vthunk.png | Bin 0 -> 52968 bytes docs/tips.md | 18 +- include/Actor/ActorItemBoomerang.hpp | 2 - include/Actor/ActorManager.hpp | 3 +- include/Actor/ActorRollingStone.hpp | 2 - include/Actor/ActorShotArrow.hpp | 2 - include/Actor/ActorUnkIWTS.hpp | 3 +- include/Actor/ActorUnkMLCK.hpp | 129 +++--- include/Actor/ActorUnkROCK.hpp | 1 - include/Actor/ActorUnkTGTZ.hpp | 1 - include/Actor/ActorUnkZLSL_ZSRS.hpp | 6 - include/Actor/Actor_Derived1.hpp | 2 +- include/FileSelect/FileSelectUnkDraw.hpp | 46 +- include/Item/ItemManager.hpp | 14 + include/MainGame/AdventureMode.hpp | 238 +++++----- include/MainGame/MiscAdvManager.hpp | 2 +- include/MapObject/MapObject.hpp | 4 + include/MapObject/MapObjectDoorClick.hpp | 4 - .../MapObject/MapObjectDoorDangerSpawn.hpp | 4 - include/MapObject/MapObjectDoorKey.hpp | 4 - include/MapObject/MapObjectMiniBlocks.hpp | 3 - include/MapObject/MapObjectUnkPTFL.hpp | 37 +- include/MapObject/MapObjectUnkSAND.hpp | 32 +- include/MapObject/MapObjectUnkSKDI.hpp | 2 - include/MapObject/MapObjectUnkSTAT.hpp | 2 - include/Player/PlayerActorBase.hpp | 12 +- include/Player/PlayerLink.hpp | 17 +- include/Render/ModelRender.hpp | 11 +- include/Unknown/UnkStruct_0204a088.hpp | 5 +- include/Unknown/UnkStruct_027e0208.hpp | 4 +- include/Unknown/UnkStruct_027e09b8.hpp | 2 +- include/Unknown/UnkStruct_027e09bc.hpp | 7 +- include/Unknown/UnkStruct_027e0cd8.hpp | 8 + include/Unknown/UnkStruct_027e0ce0.hpp | 86 +++- include/Unknown/UnkStruct_027e0cec.hpp | 2 + include/Unknown/UnkStruct_027e0cf0.hpp | 20 + include/Unknown/UnkStruct_ov000_020b3000.hpp | 49 ++ include/Unknown/UnkStruct_ov000_020b51b8.hpp | 6 + include/Unknown/UnkStruct_ov000_020b51c0.hpp | 1 + include/Unknown/UnkStruct_ov000_020b5214.hpp | 4 + include/Unknown/UnkStruct_ov000_020b52e8.hpp | 2 +- include/math.hpp | 10 +- libs/nitro/include/nitro/math.h | 1 + libs/nns/include/nns/g3d/sbc.h | 8 + src/000_Second/Actor/Actor_Derived1.cpp | 4 +- .../MapObject/MapObjectMiniBlocks.cpp | 2 +- src/001_SceneInit/Item/Inventory_001.cpp | 12 +- src/001_SceneInit/UnkStruct_027e09bc_001.cpp | 42 +- .../UnkStruct_027e0ce0_1C_001.cpp | 11 +- .../UnkStruct_027e0ce0_40_Base_001.cpp | 2 +- src/019_MainSelect/FileSelectManager_160.cpp | 16 +- src/019_MainSelect/FileSelectManager_164.cpp | 14 +- src/024_MainGame/Actor/ActorUnkOBPC.cpp | 25 +- .../Actor/UnkStruct_ov024_020d8660_024.cpp | 13 +- .../Game/AdventureModeManager_024.cpp | 7 +- .../Game/AdventureModeManager_160_024.cpp | 16 +- .../Game/AdventureModeManager_170_024.cpp | 10 +- .../Game/AdventureModeManager_174_024.cpp | 14 +- .../Game/AdventureModeManager_178_024.cpp | 4 +- .../AdventureModeManager_178_Base_024.cpp | 8 +- .../Game/AdventureModeManager_180_024.cpp | 14 +- .../Game/AdventureModeManager_184_024.cpp | 16 +- .../Game/AdventureModeManager_18C_024.cpp | 19 +- .../Game/AdventureModeManager_190_024.cpp | 12 +- .../Train/UnkTrainSystem1_024.cpp | 4 +- .../Train/UnkTrainSystem2_024.cpp | 2 +- src/031_Land/Actor/ActorBlast.cpp | 2 +- src/031_Land/Actor/ActorItemBoomerang.cpp | 3 +- src/031_Land/Actor/ActorRollingStone.cpp | 3 +- src/031_Land/Actor/ActorRupee.cpp | 2 +- src/031_Land/Actor/ActorShotArrow.cpp | 4 +- src/031_Land/Actor/ActorUnkMLCK.cpp | 196 ++++---- src/031_Land/Actor/ActorUnkRMTG.cpp | 2 +- src/031_Land/Actor/ActorUnkROCK.cpp | 3 +- src/031_Land/Actor/ActorUnkTGTZ.cpp | 3 +- src/031_Land/Actor/ActorUnkZLSL_ZSRS.cpp | 13 +- src/031_Land/MapObject/MapObjectDoorClick.cpp | 2 +- .../MapObject/MapObjectDoorDangerSpawn.cpp | 11 +- src/031_Land/MapObject/MapObjectDoorKey.cpp | 3 +- src/031_Land/MapObject/MapObjectUnkSAND.cpp | 4 +- src/031_Land/MapObject/MapObjectUnkSKDI.cpp | 5 +- src/063_Shrine/MapObject/MapObjectUnkSTAT.cpp | 3 +- .../MapObject/MapObjectUnkPTFL.cpp | 6 +- .../Player/PlayerLinkActor_A0_1C_101.cpp | 13 +- src/102_CourseExecLand/ActorUnkMLCK_102.cpp | 97 ++++ .../MapObjectUnkPTFL_102.cpp | 321 +++++++++++++ .../MapObjectUnkSAND_102.cpp | 232 ++++++++++ .../UnkStruct_027e0cd8_0C_102.cpp | 21 + .../UnkStruct_027e0ce0_40_102.cpp | 423 ++++++++++++++++++ src/110_PlayerGet/PlayerGet.cpp | 4 +- .../PlayerSceneChange.cpp | 9 +- tools/changes_fmt.py | 162 +++++++ tools/configure.py | 10 + tools/project.py | 77 +++- 327 files changed, 3336 insertions(+), 1705 deletions(-) create mode 100644 docs/images/double_inheritance_vtable.png create mode 100644 docs/images/double_inheritance_vthunk.png create mode 100644 include/Unknown/UnkStruct_027e0cf0.hpp create mode 100644 include/Unknown/UnkStruct_ov000_020b3000.hpp create mode 100644 src/102_CourseExecLand/ActorUnkMLCK_102.cpp create mode 100644 src/102_CourseExecLand/MapObjectUnkPTFL_102.cpp create mode 100644 src/102_CourseExecLand/MapObjectUnkSAND_102.cpp create mode 100644 src/102_CourseExecLand/UnkStruct_027e0cd8_0C_102.cpp create mode 100644 src/102_CourseExecLand/UnkStruct_027e0ce0_40_102.cpp create mode 100755 tools/changes_fmt.py diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 55ee7923..50c175cf 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -103,3 +103,7 @@ In order, the parts are: - Other methods, grouped by overlay with a comment indicating which one. Using `private` may sometime be required to enable some inlining, so feel free to when use it you feel like you should. + +## Report Summary + +To generate a report highlighting the changes, first run `ninja baseline_{version}` (where `{version}` is one of the supported versions) from the upstream/main branch, then checkout your branch and run `ninja changes_{version}`. diff --git a/config/eur/arm9/itcm/symbols.txt b/config/eur/arm9/itcm/symbols.txt index 4628684c..b5374378 100644 --- a/config/eur/arm9/itcm/symbols.txt +++ b/config/eur/arm9/itcm/symbols.txt @@ -157,7 +157,7 @@ _ZN18UnkStruct_027e09a46IsLandEv kind:function(arm,size=0x28) addr:0x01ffd3b0 _ZN18UnkStruct_027e09a47IsTrainEv kind:function(arm,size=0x28) addr:0x01ffd3d8 _ZNK18UnkStruct_027e09a421GetCurrentCourseEntryEv kind:function(arm,size=0x20) addr:0x01ffd400 _ZN18UnkStruct_027e09b813func_01ffd420Ev kind:function(arm,size=0x1c) addr:0x01ffd420 -func_01ffd43c kind:function(arm,size=0x60) addr:0x01ffd43c +_ZN21UnkStruct_027e09bc_0C13func_01ffd43cEP5Vec2sii kind:function(arm,size=0x60) addr:0x01ffd43c func_01ffd49c kind:function(arm,size=0x1a4) addr:0x01ffd49c _ZN21UnkStruct_027e09bc_0C13func_01ffd640EP7VecFx32 kind:function(arm,size=0x128) addr:0x01ffd640 func_01ffd768 kind:function(arm,size=0x138) addr:0x01ffd768 @@ -199,7 +199,7 @@ func_01fff280 kind:function(arm,size=0x28) addr:0x01fff280 func_01fff2a8 kind:function(arm,size=0x24) addr:0x01fff2a8 func_01fff2cc kind:function(arm,size=0x30) addr:0x01fff2cc _ZN12ActorManager13func_01fff2fcEPFvP5ActortEi kind:function(arm,size=0x54) addr:0x01fff2fc -_ZN12ActorManager13func_01fff350EPvPP5Actor kind:function(arm,size=0x64) addr:0x01fff350 +_ZN12ActorManager13func_01fff350EP29UnkStruct_ov000_020b3000_BasePP5Actor kind:function(arm,size=0x64) addr:0x01fff350 _ZN12ActorManager13func_01fff3b4E8ActorRef kind:function(arm,size=0x8c) addr:0x01fff3b4 func_01fff440 kind:function(arm,size=0x18) addr:0x01fff440 _ZN5Actor10GetActorIdEv kind:function(arm,size=0xc) addr:0x01fff458 diff --git a/config/eur/arm9/overlays/ov000/relocs.txt b/config/eur/arm9/overlays/ov000/relocs.txt index 11b71b14..6bb51275 100644 --- a/config/eur/arm9/overlays/ov000/relocs.txt +++ b/config/eur/arm9/overlays/ov000/relocs.txt @@ -3438,7 +3438,7 @@ from:0x02075688 kind:load to:0x027e0d3c module:dtcm from:0x0207568c kind:load to:0x027e0ce0 module:dtcm from:0x02075690 kind:load to:0x020b23cc module:overlay(0) from:0x02075694 kind:load to:0x027e0ce4 module:dtcm -from:0x02075698 kind:load to:0x020b3000 module:overlay(0) +from:0x02075698 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x020756a8 kind:arm_call to:0x020752b4 module:overlay(0) from:0x020756c4 kind:arm_call to:0x02075404 module:overlay(0) from:0x020756e0 kind:arm_call to:0x01fff3b4 module:itcm @@ -3842,7 +3842,7 @@ from:0x020798d4 kind:load to:0x027e0cdc module:dtcm from:0x020798d8 kind:load to:0x020b25b0 module:overlay(0) from:0x020798dc kind:load to:0x027e09a4 module:dtcm from:0x020798e0 kind:load to:0x027e0ce4 module:dtcm -from:0x020798e8 kind:load to:0x020b3000 module:overlay(0) +from:0x020798e8 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x02079924 kind:load to:0x020b25b0 module:overlay(0) from:0x02079974 kind:arm_call to:0x02082a08 module:overlay(0) from:0x020799cc kind:arm_call to:0x01ffb714 module:itcm @@ -3978,7 +3978,7 @@ from:0x0207b3cc kind:arm_call to:0x020778e0 module:overlay(0) from:0x0207b400 kind:load to:0x027e0ce0 module:dtcm from:0x0207b404 kind:load to:0x027e09a4 module:dtcm from:0x0207b40c kind:load to:0x027e0ce4 module:dtcm -from:0x0207b414 kind:load to:0x020b3000 module:overlay(0) +from:0x0207b414 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x0207b424 kind:load to:0x027e09bc module:dtcm from:0x0207b430 kind:arm_call to:0x02079308 module:overlay(0) from:0x0207b444 kind:arm_call to:0x02079308 module:overlay(0) diff --git a/config/eur/arm9/overlays/ov000/symbols.txt b/config/eur/arm9/overlays/ov000/symbols.txt index d50d9dca..1875f1cd 100644 --- a/config/eur/arm9/overlays/ov000/symbols.txt +++ b/config/eur/arm9/overlays/ov000/symbols.txt @@ -456,7 +456,7 @@ _ZN23TitleScreenManager_Base8vfunc_44Ev kind:function(arm,size=0x4) addr:0x02061 func_ov000_02061040 kind:function(arm,size=0x44) addr:0x02061040 func_ov000_02061084 kind:function(arm,size=0x14) addr:0x02061084 _ZN18UnkStruct_0204a08819func_ov000_02061098Ev kind:function(arm,size=0x144) addr:0x02061098 -_ZN18UnkStruct_0204a08819func_ov000_020611dcEPvi kind:function(arm,size=0x20) addr:0x020611dc +_ZN18UnkStruct_0204a08819func_ov000_020611dcEP29FileSelectManager_UnkDrawBasei kind:function(arm,size=0x20) addr:0x020611dc _ZN18UnkStruct_0204a08819func_ov000_020611fcEi kind:function(arm,size=0x28) addr:0x020611fc _ZN18UnkStruct_0204a08819func_ov000_02061224Ev kind:function(arm,size=0xc) addr:0x02061224 _ZN18UnkStruct_0204a08819func_ov000_02061230Ev kind:function(arm,size=0xc) addr:0x02061230 @@ -469,14 +469,14 @@ _ZN29FileSelectManager_UnkDrawBaseC1Ev kind:function(arm,size=0x24) addr:0x02061 _ZN29FileSelectManager_UnkDrawBaseD1Ev kind:function(arm,size=0x18) addr:0x02061690 _ZN29FileSelectManager_UnkDrawBaseD0Ev kind:function(arm,size=0x20) addr:0x020616a8 _ZN29FileSelectManager_UnkDrawBaseD2Ev kind:function(arm,size=0x18) addr:0x020616c8 -_ZN29FileSelectManager_UnkDrawBase8vfunc_08Ei kind:function(arm,size=0x4) addr:0x020616e0 -_ZN29FileSelectManager_UnkDrawBase8vfunc_0CEi kind:function(arm,size=0x4) addr:0x020616e4 -_ZN29FileSelectManager_UnkDrawBase8vfunc_10Eii kind:function(arm,size=0x4) addr:0x020616e8 -_ZN29FileSelectManager_UnkDrawBase8vfunc_14Ei kind:function(arm,size=0x4) addr:0x020616ec -_ZN29FileSelectManager_UnkDrawBase8vfunc_18Ei kind:function(arm,size=0x4) addr:0x020616f0 -_ZN29FileSelectManager_UnkDrawBase8vfunc_1CEi kind:function(arm,size=0x4) addr:0x020616f4 -_ZN29FileSelectManager_UnkDrawBase8vfunc_20Eii kind:function(arm,size=0x4) addr:0x020616f8 -_ZN29FileSelectManager_UnkDrawBase8vfunc_24Ev kind:function(arm,size=0x4) addr:0x020616fc +_ZN29FileSelectManager_UnkDrawBase9vfunc2_08Ei kind:function(arm,size=0x4) addr:0x020616e0 +_ZN29FileSelectManager_UnkDrawBase9vfunc2_0CEi kind:function(arm,size=0x4) addr:0x020616e4 +_ZN29FileSelectManager_UnkDrawBase8vfunc_54Eii kind:function(arm,size=0x4) addr:0x020616e8 +_ZN29FileSelectManager_UnkDrawBase9vfunc2_14Ei kind:function(arm,size=0x4) addr:0x020616ec +_ZN29FileSelectManager_UnkDrawBase9vfunc2_18Ei kind:function(arm,size=0x4) addr:0x020616f0 +_ZN29FileSelectManager_UnkDrawBase8vfunc_5CEi kind:function(arm,size=0x4) addr:0x020616f4 +_ZN29FileSelectManager_UnkDrawBase8vfunc_58Eii kind:function(arm,size=0x4) addr:0x020616f8 +_ZN29FileSelectManager_UnkDrawBase8vfunc_60Ev kind:function(arm,size=0x4) addr:0x020616fc _ZN23UnkStruct_027e0998_BaseC2Ev kind:function(thumb,size=0x24) addr:0x02061700 _ZN23UnkStruct_027e0998_BaseC1Ev kind:function(thumb,size=0x24) addr:0x02061724 func_ov000_02061748 kind:function(thumb,size=0x16) addr:0x02061748 @@ -862,7 +862,7 @@ func_ov000_0206bb30 kind:function(arm,size=0xcc) addr:0x0206bb30 _ZN24UnkStruct_ov000_020b51b819func_ov000_0206bbfcEi kind:function(arm,size=0x18) addr:0x0206bbfc func_ov000_0206bc14 kind:function(arm,size=0xe4) addr:0x0206bc14 func_ov000_0206bcf8 kind:function(arm,size=0xdc) addr:0x0206bcf8 -func_ov000_0206bdd4 kind:function(arm,size=0x10) addr:0x0206bdd4 +_ZN24UnkStruct_ov000_020b51b819func_ov000_0206bdd4EP15PlayerLinkActor kind:function(arm,size=0x10) addr:0x0206bdd4 func_ov000_0206bde4 kind:function(arm,size=0xe8) addr:0x0206bde4 func_ov000_0206becc kind:function(arm,size=0x60) addr:0x0206becc func_ov000_0206bf2c kind:function(arm,size=0x10) addr:0x0206bf2c @@ -936,8 +936,8 @@ func_ov000_0206e9f8 kind:function(arm,size=0x60) addr:0x0206e9f8 func_ov000_0206ea58 kind:function(arm,size=0x100) addr:0x0206ea58 func_ov000_0206eb58 kind:function(arm,size=0xd0) addr:0x0206eb58 func_ov000_0206ec28 kind:function(arm,size=0xf4) addr:0x0206ec28 -func_ov000_0206ed1c kind:function(arm,size=0xbc) addr:0x0206ed1c -func_ov000_0206edd8 kind:function(arm,size=0x160) addr:0x0206edd8 +_ZN24UnkStruct_ov000_020b521419func_ov000_0206ed1cEP15PlayerLinkActor kind:function(arm,size=0xbc) addr:0x0206ed1c +_ZN24UnkStruct_ov000_020b521419func_ov000_0206edd8EP15PlayerLinkActor kind:function(arm,size=0x160) addr:0x0206edd8 func_ov000_0206ef38 kind:function(arm,size=0xb0) addr:0x0206ef38 func_ov000_0206efe8 kind:function(arm,size=0x26c) addr:0x0206efe8 func_ov000_0206f254 kind:function(arm,size=0x8c) addr:0x0206f254 @@ -2671,7 +2671,7 @@ func_ov000_0209fe84 kind:function(arm,size=0x1c) addr:0x0209fe84 func_ov000_0209fea0 kind:function(arm,size=0xc) addr:0x0209fea0 _ZN18UnkStruct_027e0cec19func_ov000_0209feacEiP7VecFx32iii kind:function(arm,size=0x78) addr:0x0209feac _ZN18UnkStruct_027e0cec19func_ov000_0209ff24EiP7VecFx32P7VecFx16i kind:function(arm,size=0x28) addr:0x0209ff24 -func_ov000_0209ff4c kind:function(arm,size=0x40) addr:0x0209ff4c +_ZN18UnkStruct_027e0cec19func_ov000_0209ff4cEiP7VecFx3214UnkAngleStructi kind:function(arm,size=0x40) addr:0x0209ff4c _ZN18UnkStruct_027e0cec19func_ov000_0209ff8cEP22UnkStruct_PlayerGet_eciP7VecFx32i kind:function(arm,size=0x74) addr:0x0209ff8c func_ov000_020a0000 kind:function(arm,size=0xa0) addr:0x020a0000 func_ov000_020a00a0 kind:function(arm,size=0x34) addr:0x020a00a0 @@ -3650,7 +3650,7 @@ _ZTV19data_ov000_020b2fb4 kind:data(any) addr:0x020b2fb4 data_ov000_020b2fdc kind:data(any) addr:0x020b2fdc data_ov000_020b2fe8 kind:data(any) addr:0x020b2fe8 data_ov000_020b2ff4 kind:data(any) addr:0x020b2ff4 -data_ov000_020b3000 kind:data(any) addr:0x020b3000 +_ZTV24UnkStruct_ov000_020b3000 kind:data(any) addr:0x020b2ff8 data_ov000_020b300c kind:data(any) addr:0x020b300c data_ov000_020b3018 kind:data(any) addr:0x020b3018 data_ov000_020b303c kind:data(any) addr:0x020b303c diff --git a/config/eur/arm9/overlays/ov001/relocs.txt b/config/eur/arm9/overlays/ov001/relocs.txt index 40f622cc..511f4cc1 100644 --- a/config/eur/arm9/overlays/ov001/relocs.txt +++ b/config/eur/arm9/overlays/ov001/relocs.txt @@ -1141,7 +1141,7 @@ from:0x020bba68 kind:load to:0x02043e50 module:main from:0x020bba82 kind:thumb_call_arm to:0x01fff350 module:itcm from:0x020bba9c kind:thumb_call_arm to:0x020984f0 module:overlay(0) from:0x020bbaa6 kind:thumb_call_arm to:0x01fff350 module:itcm -from:0x020bbab8 kind:load to:0x020b3000 module:overlay(0) +from:0x020bbab8 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x020bbac0 kind:load to:0x027e0ce4 module:dtcm from:0x020bbae4 kind:thumb_call_arm to:0x02011f3c module:main from:0x020bbaee kind:thumb_call to:0x02057750 module:overlay(0) @@ -1508,7 +1508,7 @@ from:0x020bd48c kind:thumb_call_arm to:0x020921e4 module:overlay(0) from:0x020bd494 kind:load to:0x027e09a4 module:dtcm from:0x020bd498 kind:load to:0x020d8660 module:overlay(24) from:0x020bd49c kind:load to:0x020aa88c add:0x4 module:overlay(0) -from:0x020bd4a0 kind:load to:0x020b3000 module:overlay(0) +from:0x020bd4a0 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x020bd4a4 kind:load to:0x027e0ce4 module:dtcm from:0x020bd4ac kind:load to:0x027e09b8 module:dtcm from:0x020bd4c4 kind:thumb_call_arm to:0x02011f3c module:main diff --git a/config/eur/arm9/overlays/ov017/symbols.txt b/config/eur/arm9/overlays/ov017/symbols.txt index 2bbcc9f1..d236cc26 100644 --- a/config/eur/arm9/overlays/ov017/symbols.txt +++ b/config/eur/arm9/overlays/ov017/symbols.txt @@ -15,8 +15,8 @@ func_ov017_020bc5fc kind:function(arm,size=0x44) addr:0x020bc5fc func_ov017_020bc640 kind:function(arm,size=0x31c) addr:0x020bc640 func_ov017_020bc95c kind:function(arm,size=0xe4) addr:0x020bc95c func_ov017_020bca40 kind:function(arm,size=0x3a8) addr:0x020bca40 -func_ov017_020bcde8 kind:function(arm,size=0x4b8) addr:0x020bcde8 -func_ov017_020bd2a0 kind:function(arm,size=0x48) addr:0x020bd2a0 +_ZN21UnkStruct_027e0ce0_4019func_ov017_020bcde8EiP11ItemManager kind:function(arm,size=0x4b8) addr:0x020bcde8 +_ZN11ItemManager19func_ov017_020bd2a0Eii kind:function(arm,size=0x48) addr:0x020bd2a0 func_ov017_020bd2e8 kind:function(arm,size=0x18) addr:0x020bd2e8 func_ov017_020bd300 kind:function(arm,size=0x178) addr:0x020bd300 func_ov017_020bd478 kind:function(arm,size=0x28) addr:0x020bd478 @@ -29,15 +29,15 @@ _ZN18UnkStruct_027e0ce019func_ov017_020bd69cEv kind:function(arm,size=0x1c) addr func_ov017_020bd6b8 kind:function(arm,size=0x28) addr:0x020bd6b8 func_ov017_020bd6e0 kind:function(arm,size=0x78) addr:0x020bd6e0 func_ov017_020bd758 kind:function(arm,size=0x30) addr:0x020bd758 -func_ov017_020bd788 kind:function(arm,size=0x56c) addr:0x020bd788 -func_ov017_020bdcf4 kind:function(arm,size=0x90) addr:0x020bdcf4 -func_ov017_020bdd84 kind:function(arm,size=0x1c4) addr:0x020bdd84 -func_ov017_020bdf48 kind:function(arm,size=0x150) addr:0x020bdf48 +_ZN15PlayerLinkActor19func_ov017_020bd788Ei kind:function(arm,size=0x56c) addr:0x020bd788 +_ZN15PlayerLinkActor19func_ov017_020bdcf4Ev kind:function(arm,size=0x90) addr:0x020bdcf4 +_ZN15PlayerLinkActor19func_ov017_020bdd84Eii kind:function(arm,size=0x1c4) addr:0x020bdd84 +_ZN15PlayerLinkActor19func_ov017_020bdf48Eiiii kind:function(arm,size=0x150) addr:0x020bdf48 func_ov017_020be098 kind:function(arm,size=0x10) addr:0x020be098 func_ov017_020be0a8 kind:function(arm,size=0x38) addr:0x020be0a8 func_ov017_020be0e0 kind:function(arm,size=0x20c) addr:0x020be0e0 func_ov017_020be2ec kind:function(arm,size=0x148) addr:0x020be2ec -func_ov017_020be434 kind:function(arm,size=0x18) addr:0x020be434 +_ZN29UnkStruct_027e0ce0_40_Base_7C19func_ov017_020be434Ev kind:function(arm,size=0x18) addr:0x020be434 func_ov017_020be44c kind:function(arm,size=0x45c) addr:0x020be44c func_ov017_020be8a8 kind:function(arm,size=0x124) addr:0x020be8a8 _ZN12CargoManager8DoUpdateEv kind:function(arm,size=0x18) addr:0x020be9cc diff --git a/config/eur/arm9/overlays/ov019/symbols.txt b/config/eur/arm9/overlays/ov019/symbols.txt index 88b1eb10..94267157 100644 --- a/config/eur/arm9/overlays/ov019/symbols.txt +++ b/config/eur/arm9/overlays/ov019/symbols.txt @@ -215,24 +215,24 @@ _ZN19FileSelectSubScreenD1Ev kind:function(arm,size=0xec) addr:0x020cfb28 _ZN21FileSelectManager_160C1EP23GameModeManagerBase_104P14FileSelectMain kind:function(arm,size=0x54) addr:0x020cfc14 _ZN21FileSelectManager_160D1Ev kind:function(arm,size=0x14) addr:0x020cfc68 _ZN21FileSelectManager_160D0Ev kind:function(arm,size=0x1c) addr:0x020cfc7c -_ZN21FileSelectManager_1608vfunc_08Ei kind:function(arm,size=0x50) addr:0x020cfc98 -_ZN21FileSelectManager_1608vfunc_0CEi kind:function(arm,size=0x64) addr:0x020cfce8 -_ZN21FileSelectManager_1608vfunc_14Ei kind:function(arm,size=0x4) addr:0x020cfd4c -_ZN21FileSelectManager_1608vfunc_10Eii kind:function(arm,size=0x8c) addr:0x020cfd50 -_ZN21FileSelectManager_1608vfunc_18Ei kind:function(arm,size=0x10) addr:0x020cfddc -_ZN21FileSelectManager_1608vfunc_1CEi kind:function(arm,size=0x64) addr:0x020cfdec -_ZN21FileSelectManager_1608vfunc_20Eii kind:function(arm,size=0xac) addr:0x020cfe50 -_ZN21FileSelectManager_1608vfunc_24Ev kind:function(arm,size=0x34) addr:0x020cfefc +_ZN21FileSelectManager_1609vfunc2_08Ei kind:function(arm,size=0x50) addr:0x020cfc98 +_ZN21FileSelectManager_1609vfunc2_0CEi kind:function(arm,size=0x64) addr:0x020cfce8 +_ZN21FileSelectManager_1609vfunc2_14Ei kind:function(arm,size=0x4) addr:0x020cfd4c +_ZN21FileSelectManager_1608vfunc_54Eii kind:function(arm,size=0x8c) addr:0x020cfd50 +_ZN21FileSelectManager_1609vfunc2_18Ei kind:function(arm,size=0x10) addr:0x020cfddc +_ZN21FileSelectManager_1608vfunc_5CEi kind:function(arm,size=0x64) addr:0x020cfdec +_ZN21FileSelectManager_1608vfunc_58Eii kind:function(arm,size=0xac) addr:0x020cfe50 +_ZN21FileSelectManager_1608vfunc_60Ev kind:function(arm,size=0x34) addr:0x020cfefc _ZN21FileSelectManager_164C1EP23GameModeManagerBase_104P14FileSelectMain kind:function(arm,size=0x4c) addr:0x020cff30 _ZN21FileSelectManager_164D1Ev kind:function(arm,size=0x3c) addr:0x020cff7c _ZN21FileSelectManager_164D0Ev kind:function(arm,size=0x44) addr:0x020cffb8 -_ZN21FileSelectManager_1648vfunc_08Ei kind:function(arm,size=0x50) addr:0x020cfffc -_ZN21FileSelectManager_1648vfunc_0CEi kind:function(arm,size=0x90) addr:0x020d004c -_ZN21FileSelectManager_1648vfunc_14Ei kind:function(arm,size=0x4) addr:0x020d00dc -_ZN21FileSelectManager_1648vfunc_10Eii kind:function(arm,size=0xa8) addr:0x020d00e0 -_ZN21FileSelectManager_1648vfunc_18Ei kind:function(arm,size=0x38) addr:0x020d0188 -_ZN21FileSelectManager_1648vfunc_1CEi kind:function(arm,size=0xa4) addr:0x020d01c0 -_ZN21FileSelectManager_1648vfunc_20Eii kind:function(arm,size=0x90) addr:0x020d0264 +_ZN21FileSelectManager_1649vfunc2_08Ei kind:function(arm,size=0x50) addr:0x020cfffc +_ZN21FileSelectManager_1649vfunc2_0CEi kind:function(arm,size=0x90) addr:0x020d004c +_ZN21FileSelectManager_1649vfunc2_14Ei kind:function(arm,size=0x4) addr:0x020d00dc +_ZN21FileSelectManager_1648vfunc_54Eii kind:function(arm,size=0xa8) addr:0x020d00e0 +_ZN21FileSelectManager_1649vfunc2_18Ei kind:function(arm,size=0x38) addr:0x020d0188 +_ZN21FileSelectManager_1648vfunc_5CEi kind:function(arm,size=0xa4) addr:0x020d01c0 +_ZN21FileSelectManager_1648vfunc_58Eii kind:function(arm,size=0x90) addr:0x020d0264 _ZN21FileSelectManager_16419func_ov019_020d02f4Ev kind:function(arm,size=0x28) addr:0x020d02f4 _ZN25UnkSystem1_ov019_Derived2C1Ev kind:function(arm,size=0x40) addr:0x020d031c _ZN25UnkSystem1_ov019_Derived28vfunc_08Ei kind:function(arm,size=0x48) addr:0x020d035c diff --git a/config/eur/arm9/overlays/ov024/relocs.txt b/config/eur/arm9/overlays/ov024/relocs.txt index 33bb7b8d..f22568c0 100644 --- a/config/eur/arm9/overlays/ov024/relocs.txt +++ b/config/eur/arm9/overlays/ov024/relocs.txt @@ -72,7 +72,7 @@ from:0x020c4c4c kind:arm_call to:0x020730ac module:overlay(0) from:0x020c4ca0 kind:arm_call to:0x02073470 module:overlay(0) from:0x020c4cb8 kind:load to:0x020d8698 module:overlay(24) from:0x020c4cbc kind:load to:0x027e0ce4 module:dtcm -from:0x020c4cc0 kind:load to:0x020b3000 module:overlay(0) +from:0x020c4cc0 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x020c4cc4 kind:load to:0x027e09b8 module:dtcm from:0x020c4d14 kind:arm_call to:0x01ffd3d8 module:itcm from:0x020c4d38 kind:arm_call to:0x02019538 module:main @@ -2515,7 +2515,7 @@ from:0x020d72a0 kind:load to:0x027e0cd8 module:dtcm from:0x020d72a4 kind:load to:0x027e09a4 module:dtcm from:0x020d72a8 kind:load to:0x027e0ce0 module:dtcm from:0x020d72ac kind:load to:0x027e0ce4 module:dtcm -from:0x020d72b4 kind:load to:0x020b3000 module:overlay(0) +from:0x020d72b4 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x020d72c8 kind:arm_call to:0x0209fb18 module:overlay(0) from:0x020d72d0 kind:arm_call to:0x02098488 module:overlay(0) from:0x020d72e8 kind:arm_call to:0x0209fb18 module:overlay(0) diff --git a/config/eur/arm9/overlays/ov024/symbols.txt b/config/eur/arm9/overlays/ov024/symbols.txt index 8feeb0f6..57d90e4e 100644 --- a/config/eur/arm9/overlays/ov024/symbols.txt +++ b/config/eur/arm9/overlays/ov024/symbols.txt @@ -143,16 +143,16 @@ _ZN24AdventureModeManager_160C1EP23GameModeManagerBase_104P24AdventureModeManage _ZN27AdventureModeManager_160_4CD1Ev kind:function(arm,size=0x14) addr:0x020c7a00 _ZN24AdventureModeManager_160D1Ev kind:function(arm,size=0x30) addr:0x020c7a14 _ZN24AdventureModeManager_160D0Ev kind:function(arm,size=0x38) addr:0x020c7a44 -_ZN24AdventureModeManager_1608vfunc_08Ei kind:function(arm,size=0x9c) addr:0x020c7a7c -_ZN24AdventureModeManager_1608vfunc_0CEi kind:function(arm,size=0x1a0) addr:0x020c7b18 -_ZN24AdventureModeManager_1608vfunc_10Eii kind:function(arm,size=0x24) addr:0x020c7cb8 -_ZN24AdventureModeManager_1608vfunc_14Ei kind:function(arm,size=0x20) addr:0x020c7cdc +_ZN24AdventureModeManager_1609vfunc2_08Ei kind:function(arm,size=0x9c) addr:0x020c7a7c +_ZN24AdventureModeManager_1609vfunc2_0CEi kind:function(arm,size=0x1a0) addr:0x020c7b18 +_ZN24AdventureModeManager_1608vfunc_54Eii kind:function(arm,size=0x24) addr:0x020c7cb8 +_ZN24AdventureModeManager_1609vfunc2_14Ei kind:function(arm,size=0x20) addr:0x020c7cdc _ZN24AdventureModeManager_16019func_ov024_020c7cfcEv kind:function(arm,size=0x50) addr:0x020c7cfc _ZN24AdventureModeManager_16019func_ov024_020c7d4cEi kind:function(arm,size=0xf0) addr:0x020c7d4c -_ZN24AdventureModeManager_1608vfunc_18Ei kind:function(arm,size=0x118) addr:0x020c7e3c -_ZN24AdventureModeManager_1608vfunc_1CEi kind:function(arm,size=0x36c) addr:0x020c7f54 -_ZN24AdventureModeManager_1608vfunc_20Eii kind:function(arm,size=0xf8) addr:0x020c82c0 -_ZN24AdventureModeManager_1608vfunc_24Ev kind:function(arm,size=0x4) addr:0x020c83b8 +_ZN24AdventureModeManager_1609vfunc2_18Ei kind:function(arm,size=0x118) addr:0x020c7e3c +_ZN24AdventureModeManager_1608vfunc_5CEi kind:function(arm,size=0x36c) addr:0x020c7f54 +_ZN24AdventureModeManager_1608vfunc_58Eii kind:function(arm,size=0xf8) addr:0x020c82c0 +_ZN24AdventureModeManager_1608vfunc_60Ev kind:function(arm,size=0x4) addr:0x020c83b8 _ZN24AdventureModeManager_16019func_ov024_020c83bcEv kind:function(arm,size=0x6c) addr:0x020c83bc _ZN24AdventureModeManager_16019func_ov024_020c8428Ev kind:function(arm,size=0x2c) addr:0x020c8428 _ZN24AdventureModeManager_16019func_ov024_020c8454Ev kind:function(arm,size=0x30) addr:0x020c8454 @@ -165,11 +165,11 @@ _ZN24AdventureModeManager_170C1EP23GameModeManagerBase_104 kind:function(arm,siz _ZN27AdventureModeManager_170_14D1Ev kind:function(arm,size=0x14) addr:0x020c8630 _ZN24AdventureModeManager_170D1Ev kind:function(arm,size=0x20) addr:0x020c8644 _ZN24AdventureModeManager_170D0Ev kind:function(arm,size=0x28) addr:0x020c8664 -_ZN24AdventureModeManager_1708vfunc_08Ei kind:function(arm,size=0x38) addr:0x020c868c -_ZN24AdventureModeManager_1708vfunc_0CEi kind:function(arm,size=0x74) addr:0x020c86c4 -_ZN24AdventureModeManager_1708vfunc_10Eii kind:function(arm,size=0xd4) addr:0x020c8738 -_ZN24AdventureModeManager_1708vfunc_18Ei kind:function(arm,size=0xc) addr:0x020c880c -_ZN24AdventureModeManager_1708vfunc_24Ev kind:function(arm,size=0x2c) addr:0x020c8818 +_ZN24AdventureModeManager_1709vfunc2_08Ei kind:function(arm,size=0x38) addr:0x020c868c +_ZN24AdventureModeManager_1709vfunc2_0CEi kind:function(arm,size=0x74) addr:0x020c86c4 +_ZN24AdventureModeManager_1708vfunc_54Eii kind:function(arm,size=0xd4) addr:0x020c8738 +_ZN24AdventureModeManager_1709vfunc2_18Ei kind:function(arm,size=0xc) addr:0x020c880c +_ZN24AdventureModeManager_1708vfunc_60Ev kind:function(arm,size=0x2c) addr:0x020c8818 _ZN27AdventureModeManager_170_14D0Ev kind:function(arm,size=0x1c) addr:0x020c8844 _ZN32AdventureModeManager_174_Base_108vfunc_0CEv kind:function(thumb,size=0x10) addr:0x020c8860 _ZN32AdventureModeManager_174_Base_108vfunc_10Ev kind:function(thumb,size=0x10) addr:0x020c8870 @@ -181,25 +181,25 @@ _ZN32AdventureModeManager_174_Base_10D0Ev kind:function(arm,size=0x1c) addr:0x02 _ZN29AdventureModeManager_174_BaseD1Ev kind:function(arm,size=0x20) addr:0x020c8d1c _ZN29AdventureModeManager_174_BaseD0Ev kind:function(arm,size=0x28) addr:0x020c8d3c _ZN24AdventureModeManager_174C1EP23GameModeManagerBase_104 kind:function(thumb,size=0x2c) addr:0x020c8d64 -_ZN24AdventureModeManager_1748vfunc_08Ei kind:function(thumb,size=0x58) addr:0x020c8d90 -_ZN24AdventureModeManager_1748vfunc_0CEi kind:function(thumb,size=0x48) addr:0x020c8de8 -_ZN24AdventureModeManager_1748vfunc_10Eii kind:function(thumb,size=0xac) addr:0x020c8e30 -_ZN24AdventureModeManager_1748vfunc_18Ei kind:function(thumb,size=0x6c) addr:0x020c8edc -_ZN24AdventureModeManager_1748vfunc_1CEi kind:function(thumb,size=0x40) addr:0x020c8f48 -_ZN24AdventureModeManager_1748vfunc_20Eii kind:function(thumb,size=0xc0) addr:0x020c8f88 -_ZN24AdventureModeManager_1748vfunc_24Ev kind:function(thumb,size=0x2) addr:0x020c9048 +_ZN24AdventureModeManager_1749vfunc2_08Ei kind:function(thumb,size=0x58) addr:0x020c8d90 +_ZN24AdventureModeManager_1749vfunc2_0CEi kind:function(thumb,size=0x48) addr:0x020c8de8 +_ZN24AdventureModeManager_1748vfunc_54Eii kind:function(thumb,size=0xac) addr:0x020c8e30 +_ZN24AdventureModeManager_1749vfunc2_18Ei kind:function(thumb,size=0x6c) addr:0x020c8edc +_ZN24AdventureModeManager_1748vfunc_5CEi kind:function(thumb,size=0x40) addr:0x020c8f48 +_ZN24AdventureModeManager_1748vfunc_58Eii kind:function(thumb,size=0xc0) addr:0x020c8f88 +_ZN24AdventureModeManager_1748vfunc_60Ev kind:function(thumb,size=0x2) addr:0x020c9048 _ZN24AdventureModeManager_174D1Ev kind:function(arm,size=0x20) addr:0x020c904c _ZN24AdventureModeManager_174D0Ev kind:function(arm,size=0x28) addr:0x020c906c _ZN29AdventureModeManager_178_BaseC2EP23GameModeManagerBase_104 kind:function(thumb,size=0x14) addr:0x020c9094 -_ZN29AdventureModeManager_178_Base8vfunc_08Ei kind:function(thumb,size=0x2c) addr:0x020c90a8 -_ZN29AdventureModeManager_178_Base8vfunc_0CEi kind:function(thumb,size=0x1c) addr:0x020c90d4 -_ZN29AdventureModeManager_178_Base8vfunc_18Ei kind:function(thumb,size=0x2c) addr:0x020c90f0 -_ZN29AdventureModeManager_178_Base8vfunc_1CEi kind:function(thumb,size=0x1c) addr:0x020c911c +_ZN29AdventureModeManager_178_Base9vfunc2_08Ei kind:function(thumb,size=0x2c) addr:0x020c90a8 +_ZN29AdventureModeManager_178_Base9vfunc2_0CEi kind:function(thumb,size=0x1c) addr:0x020c90d4 +_ZN29AdventureModeManager_178_Base9vfunc2_18Ei kind:function(thumb,size=0x2c) addr:0x020c90f0 +_ZN29AdventureModeManager_178_Base8vfunc_5CEi kind:function(thumb,size=0x1c) addr:0x020c911c _ZN29AdventureModeManager_178_BaseD1Ev kind:function(arm,size=0x20) addr:0x020c9138 _ZN29AdventureModeManager_178_BaseD0Ev kind:function(arm,size=0x28) addr:0x020c9158 _ZN24AdventureModeManager_178C1EP23GameModeManagerBase_104 kind:function(thumb,size=0x2c) addr:0x020c9180 -_ZN24AdventureModeManager_1788vfunc_10Eii kind:function(thumb,size=0x24) addr:0x020c91ac -_ZN24AdventureModeManager_1788vfunc_20Eii kind:function(thumb,size=0x24) addr:0x020c91d0 +_ZN24AdventureModeManager_1788vfunc_54Eii kind:function(thumb,size=0x24) addr:0x020c91ac +_ZN24AdventureModeManager_1788vfunc_58Eii kind:function(thumb,size=0x24) addr:0x020c91d0 _ZN24AdventureModeManager_178D1Ev kind:function(arm,size=0x20) addr:0x020c91f4 _ZN24AdventureModeManager_178D0Ev kind:function(arm,size=0x28) addr:0x020c9214 _ZN27AdventureModeManager_180_188vfunc_0CEv kind:function(thumb,size=0x10) addr:0x020c923c @@ -207,29 +207,29 @@ _ZN24AdventureModeManager_180C1EP23GameModeManagerBase_104 kind:function(thumb,s _ZN27AdventureModeManager_180_18D1Ev kind:function(thumb,size=0xc) addr:0x020c929c _ZN24AdventureModeManager_180D1Ev kind:function(thumb,size=0x14) addr:0x020c92a8 _ZN24AdventureModeManager_180D0Ev kind:function(thumb,size=0x1a) addr:0x020c92bc -_ZN24AdventureModeManager_1808vfunc_08Ei kind:function(thumb,size=0x64) addr:0x020c92d8 -_ZN24AdventureModeManager_1808vfunc_0CEi kind:function(thumb,size=0x90) addr:0x020c933c -_ZN24AdventureModeManager_1808vfunc_10Eii kind:function(thumb,size=0x64) addr:0x020c93cc +_ZN24AdventureModeManager_1809vfunc2_08Ei kind:function(thumb,size=0x64) addr:0x020c92d8 +_ZN24AdventureModeManager_1809vfunc2_0CEi kind:function(thumb,size=0x90) addr:0x020c933c +_ZN24AdventureModeManager_1808vfunc_54Eii kind:function(thumb,size=0x64) addr:0x020c93cc _ZN24AdventureModeManager_18019func_ov024_020c9430Eii kind:function(thumb,size=0x24) addr:0x020c9430 -_ZN24AdventureModeManager_1808vfunc_18Ei kind:function(thumb,size=0x30) addr:0x020c9454 -_ZN24AdventureModeManager_1808vfunc_1CEi kind:function(thumb,size=0x78) addr:0x020c9484 -_ZN24AdventureModeManager_1808vfunc_20Eii kind:function(thumb,size=0x7c) addr:0x020c94fc -_ZN24AdventureModeManager_1808vfunc_24Ev kind:function(thumb,size=0x2) addr:0x020c9578 +_ZN24AdventureModeManager_1809vfunc2_18Ei kind:function(thumb,size=0x30) addr:0x020c9454 +_ZN24AdventureModeManager_1808vfunc_5CEi kind:function(thumb,size=0x78) addr:0x020c9484 +_ZN24AdventureModeManager_1808vfunc_58Eii kind:function(thumb,size=0x7c) addr:0x020c94fc +_ZN24AdventureModeManager_1808vfunc_60Ev kind:function(thumb,size=0x2) addr:0x020c9578 _ZN24AdventureModeManager_18019func_ov024_020c957cEv kind:function(thumb,size=0x48) addr:0x020c957c _ZN24AdventureModeManager_18019func_ov024_020c95c4Ev kind:function(thumb,size=0x48) addr:0x020c95c4 _ZN27AdventureModeManager_180_18D0Ev kind:function(arm,size=0x1c) addr:0x020c960c _ZN24AdventureModeManager_184C1EP23GameModeManagerBase_104 kind:function(thumb,size=0x30) addr:0x020c9628 _ZN24AdventureModeManager_184D1Ev kind:function(thumb,size=0xc) addr:0x020c9658 _ZN24AdventureModeManager_184D0Ev kind:function(thumb,size=0x12) addr:0x020c9664 -_ZN24AdventureModeManager_1848vfunc_08Ei kind:function(thumb,size=0x20) addr:0x020c9678 -_ZN24AdventureModeManager_1848vfunc_0CEi kind:function(thumb,size=0xf8) addr:0x020c9698 -_ZN24AdventureModeManager_1848vfunc_10Eii kind:function(thumb,size=0x8) addr:0x020c9790 -_ZN24AdventureModeManager_1848vfunc_14Ei kind:function(thumb,size=0x2) addr:0x020c9798 +_ZN24AdventureModeManager_1849vfunc2_08Ei kind:function(thumb,size=0x20) addr:0x020c9678 +_ZN24AdventureModeManager_1849vfunc2_0CEi kind:function(thumb,size=0xf8) addr:0x020c9698 +_ZN24AdventureModeManager_1848vfunc_54Eii kind:function(thumb,size=0x8) addr:0x020c9790 +_ZN24AdventureModeManager_1849vfunc2_14Ei kind:function(thumb,size=0x2) addr:0x020c9798 _ZN24AdventureModeManager_18419func_ov024_020c979cEi kind:function(thumb,size=0x94) addr:0x020c979c -_ZN24AdventureModeManager_1848vfunc_18Ei kind:function(thumb,size=0x7c) addr:0x020c9830 -_ZN24AdventureModeManager_1848vfunc_1CEi kind:function(thumb,size=0x60) addr:0x020c98ac -_ZN24AdventureModeManager_1848vfunc_20Eii kind:function(thumb,size=0x5c) addr:0x020c990c -_ZN24AdventureModeManager_1848vfunc_24Ev kind:function(thumb,size=0x8) addr:0x020c9968 +_ZN24AdventureModeManager_1849vfunc2_18Ei kind:function(thumb,size=0x7c) addr:0x020c9830 +_ZN24AdventureModeManager_1848vfunc_5CEi kind:function(thumb,size=0x60) addr:0x020c98ac +_ZN24AdventureModeManager_1848vfunc_58Eii kind:function(thumb,size=0x5c) addr:0x020c990c +_ZN24AdventureModeManager_1848vfunc_60Ev kind:function(thumb,size=0x8) addr:0x020c9968 _ZN27AdventureModeManager_18C_14C1Ev kind:function(thumb,size=0x14) addr:0x020c9970 _ZN27AdventureModeManager_18C_148vfunc_0CEv kind:function(thumb,size=0x10) addr:0x020c9984 _ZN27AdventureModeManager_18C_148vfunc_10Ev kind:function(thumb,size=0x10) addr:0x020c9994 @@ -237,15 +237,15 @@ _ZN24AdventureModeManager_18CC1EP23GameModeManagerBase_104 kind:function(thumb,s _ZN27AdventureModeManager_18C_14D1Ev kind:function(thumb,size=0xc) addr:0x020c9a0c _ZN24AdventureModeManager_18CD1Ev kind:function(thumb,size=0x14) addr:0x020c9a18 _ZN24AdventureModeManager_18CD0Ev kind:function(thumb,size=0x1a) addr:0x020c9a2c -_ZN24AdventureModeManager_18C8vfunc_08Ei kind:function(thumb,size=0x32) addr:0x020c9a48 -_ZN24AdventureModeManager_18C8vfunc_0CEi kind:function(thumb,size=0xf0) addr:0x020c9a7c -_ZN24AdventureModeManager_18C8vfunc_10Eii kind:function(thumb,size=0x100) addr:0x020c9b6c +_ZN24AdventureModeManager_18C9vfunc2_08Ei kind:function(thumb,size=0x32) addr:0x020c9a48 +_ZN24AdventureModeManager_18C9vfunc2_0CEi kind:function(thumb,size=0xf0) addr:0x020c9a7c +_ZN24AdventureModeManager_18C8vfunc_54Eii kind:function(thumb,size=0x100) addr:0x020c9b6c _ZN24AdventureModeManager_18C19func_ov024_020c9c6cEv kind:function(thumb,size=0xb4) addr:0x020c9c6c -_ZN24AdventureModeManager_18C8vfunc_14Ei kind:function(thumb,size=0x10) addr:0x020c9d20 -_ZN24AdventureModeManager_18C8vfunc_18Ei kind:function(thumb,size=0xac) addr:0x020c9d30 -_ZN24AdventureModeManager_18C8vfunc_1CEi kind:function(thumb,size=0x88) addr:0x020c9ddc -_ZN24AdventureModeManager_18C8vfunc_20Eii kind:function(thumb,size=0x1c4) addr:0x020c9e64 -_ZN24AdventureModeManager_18C8vfunc_24Ev kind:function(thumb,size=0xa) addr:0x020ca028 +_ZN24AdventureModeManager_18C9vfunc2_14Ei kind:function(thumb,size=0x10) addr:0x020c9d20 +_ZN24AdventureModeManager_18C9vfunc2_18Ei kind:function(thumb,size=0xac) addr:0x020c9d30 +_ZN24AdventureModeManager_18C8vfunc_5CEi kind:function(thumb,size=0x88) addr:0x020c9ddc +_ZN24AdventureModeManager_18C8vfunc_58Eii kind:function(thumb,size=0x1c4) addr:0x020c9e64 +_ZN24AdventureModeManager_18C8vfunc_60Ev kind:function(thumb,size=0xa) addr:0x020ca028 _ZN24AdventureModeManager_18C19func_ov024_020ca034Ev kind:function(thumb,size=0x34) addr:0x020ca034 _ZN24AdventureModeManager_18C19func_ov024_020ca068Ei kind:function(thumb,size=0xc) addr:0x020ca068 _ZN24AdventureModeManager_18C19func_ov024_020ca074Ev kind:function(thumb,size=0x6) addr:0x020ca074 @@ -255,12 +255,12 @@ _ZN27AdventureModeManager_190_388vfunc_0CEv kind:function(thumb,size=0xc) addr:0 _ZN24AdventureModeManager_190C1EP23GameModeManagerBase_104 kind:function(thumb,size=0x54) addr:0x020ca0b4 _ZN27AdventureModeManager_190_14D1Ev kind:function(thumb,size=0xc) addr:0x020ca108 _ZN27AdventureModeManager_190_38D1Ev kind:function(thumb,size=0xc) addr:0x020ca114 -_ZN24AdventureModeManager_1908vfunc_08Ei kind:function(thumb,size=0xc) addr:0x020ca120 -_ZN24AdventureModeManager_1908vfunc_0CEi kind:function(thumb,size=0x20) addr:0x020ca12c -_ZN24AdventureModeManager_1908vfunc_10Eii kind:function(thumb,size=0x3c) addr:0x020ca14c -_ZN24AdventureModeManager_1908vfunc_18Ei kind:function(thumb,size=0xc) addr:0x020ca188 -_ZN24AdventureModeManager_1908vfunc_1CEi kind:function(thumb,size=0x20) addr:0x020ca194 -_ZN24AdventureModeManager_1908vfunc_20Eii kind:function(thumb,size=0x68) addr:0x020ca1b4 +_ZN24AdventureModeManager_1909vfunc2_08Ei kind:function(thumb,size=0xc) addr:0x020ca120 +_ZN24AdventureModeManager_1909vfunc2_0CEi kind:function(thumb,size=0x20) addr:0x020ca12c +_ZN24AdventureModeManager_1908vfunc_54Eii kind:function(thumb,size=0x3c) addr:0x020ca14c +_ZN24AdventureModeManager_1909vfunc2_18Ei kind:function(thumb,size=0xc) addr:0x020ca188 +_ZN24AdventureModeManager_1908vfunc_5CEi kind:function(thumb,size=0x20) addr:0x020ca194 +_ZN24AdventureModeManager_1908vfunc_58Eii kind:function(thumb,size=0x68) addr:0x020ca1b4 _ZN24AdventureModeManager_19019func_ov024_020ca21cEv kind:function(thumb,size=0x30) addr:0x020ca21c _ZN24AdventureModeManager_19019func_ov024_020ca24cEi kind:function(thumb,size=0x34) addr:0x020ca24c _ZN24AdventureModeManager_19019func_ov024_020ca280Ev kind:function(thumb,size=0x10) addr:0x020ca280 diff --git a/config/eur/arm9/overlays/ov031/delinks.txt b/config/eur/arm9/overlays/ov031/delinks.txt index 15a0b7fd..e14532b4 100644 --- a/config/eur/arm9/overlays/ov031/delinks.txt +++ b/config/eur/arm9/overlays/ov031/delinks.txt @@ -187,7 +187,7 @@ src/031_Land/Actor/ActorItemDrop.cpp: .bss start:0x02116e6c end:0x02116f9c src/031_Land/Actor/ActorUnkMLCK.cpp: - .text start:0x020fab5c end:0x020fb2ac + .text start:0x020fab5c end:0x020fb30c .init start:0x02111988 end:0x021119fc .ctor start:0x02112800 end:0x02112804 .data start:0x02114d28 end:0x02114e1c diff --git a/config/eur/arm9/overlays/ov031/relocs.txt b/config/eur/arm9/overlays/ov031/relocs.txt index b94a9ad9..59fdece6 100644 --- a/config/eur/arm9/overlays/ov031/relocs.txt +++ b/config/eur/arm9/overlays/ov031/relocs.txt @@ -103,7 +103,7 @@ from:0x020d9310 kind:load to:0x0204a110 module:main from:0x020d9344 kind:arm_call to:0x01fff350 module:itcm from:0x020d9350 kind:arm_call to:0x020fb1e8 module:overlay(31) from:0x020d935c kind:load to:0x027e0ce4 module:dtcm -from:0x020d9364 kind:load to:0x02112ad4 module:overlay(31) +from:0x020d9364 kind:load to:0x02112acc add:0x8 module:overlay(31) from:0x020d9380 kind:arm_call to:0x01fff458 module:itcm from:0x020d93b0 kind:load to:0x027e0ce4 module:dtcm from:0x020d93b4 kind:load to:0x020d9368 module:overlay(31) @@ -3776,11 +3776,11 @@ from:0x020fabbc kind:arm_call to:0x02098388 module:overlay(0) from:0x020fabc4 kind:arm_call to:0x02061648 module:overlay(0) from:0x020fac58 kind:load to:0x02114d34 add:0x8 module:overlay(31) from:0x020fac5c kind:load to:0x02114d70 add:0x8 module:overlay(31) -from:0x020fac60 kind:load to:0x02114dec add:0x8 module:overlay(31) +from:0x020fac60 kind:load to:0x02114d70 add:0x84 module:overlay(31) from:0x020fac9c kind:arm_call to:0x01fff350 module:itcm from:0x020facd0 kind:arm_call to:0x020611dc module:overlay(0) from:0x020fad28 kind:load to:0x027e0ce4 module:dtcm -from:0x020fad2c kind:load to:0x02112ad4 module:overlay(31) +from:0x020fad2c kind:load to:0x02112acc add:0x8 module:overlay(31) from:0x020fad34 kind:load to:0x0204a088 module:main from:0x020fad38 kind:load to:0x020d86b0 module:overlay(24) from:0x020fad6c kind:arm_call to:0x0206f980 module:overlay(0) diff --git a/config/eur/arm9/overlays/ov031/symbols.txt b/config/eur/arm9/overlays/ov031/symbols.txt index f3cdfd65..0eebc7ba 100644 --- a/config/eur/arm9/overlays/ov031/symbols.txt +++ b/config/eur/arm9/overlays/ov031/symbols.txt @@ -149,17 +149,17 @@ func_ov031_020db374 kind:function(arm,size=0x74) addr:0x020db374 func_ov031_020db3e8 kind:function(arm,size=0x18) addr:0x020db3e8 func_ov031_020db400 kind:function(arm,size=0x98) addr:0x020db400 func_ov031_020db498 kind:function(arm,size=0x58) addr:0x020db498 -func_ov031_020db4f0 kind:function(arm,size=0x38) addr:0x020db4f0 -func_ov031_020db528 kind:function(arm,size=0x8c) addr:0x020db528 +_ZN27UnkStruct_ItemManager_20_0419func_ov031_020db4f0Eii kind:function(arm,size=0x38) addr:0x020db4f0 +_ZN27UnkStruct_ItemManager_20_0419func_ov031_020db528Ei kind:function(arm,size=0x8c) addr:0x020db528 _ZN27UnkStruct_ItemManager_20_0819func_ov031_020db5b4Ev kind:function(arm,size=0x20) addr:0x020db5b4 func_ov031_020db5d4 kind:function(arm,size=0x14) addr:0x020db5d4 func_ov031_020db5e8 kind:function(arm,size=0x2c) addr:0x020db5e8 func_ov031_020db614 kind:function(arm,size=0x90) addr:0x020db614 func_ov031_020db6a4 kind:function(arm,size=0x60) addr:0x020db6a4 -func_ov031_020db704 kind:function(arm,size=0xbc) addr:0x020db704 +_ZN27UnkStruct_ItemManager_20_0819func_ov031_020db704Eii kind:function(arm,size=0xbc) addr:0x020db704 _ZN27UnkStruct_ItemManager_20_14C1Ev kind:function(thumb,size=0x16) addr:0x020db7c0 _ZN27UnkStruct_ItemManager_20_1419func_ov031_020db7d8Ev kind:function(thumb,size=0x1a) addr:0x020db7d8 -func_ov031_020db7f4 kind:function(arm,size=0x50) addr:0x020db7f4 +_ZN27UnkStruct_ItemManager_20_1419func_ov031_020db7f4Ev kind:function(arm,size=0x50) addr:0x020db7f4 func_ov031_020db844 kind:function(arm,size=0x30) addr:0x020db844 _ZN24UnkStruct_ItemManager_2019func_ov031_020db874Ej kind:function(arm,size=0x58) addr:0x020db874 _ZN24UnkStruct_ItemManager_2019func_ov031_020db8ccEv kind:function(arm,size=0x2c) addr:0x020db8cc @@ -167,15 +167,15 @@ _ZN24UnkStruct_ItemManager_2019func_ov031_020db8f8Ev kind:function(arm,size=0x44 _ZN27UnkStruct_ItemManager_20_0CC1Ev kind:function(thumb,size=0x12) addr:0x020db93c _ZN27UnkStruct_ItemManager_20_0CD1Ev kind:function(thumb,size=0x2) addr:0x020db950 _ZN27UnkStruct_ItemManager_20_0C19func_ov031_020db954Ev kind:function(arm,size=0x4) addr:0x020db954 -func_ov031_020db958 kind:function(arm,size=0xe4) addr:0x020db958 -func_ov031_020dba3c kind:function(arm,size=0x4) addr:0x020dba3c +_ZN27UnkStruct_ItemManager_20_0C19func_ov031_020db958Eii kind:function(arm,size=0xe4) addr:0x020db958 +_ZN27UnkStruct_ItemManager_20_0C19func_ov031_020dba3cEi kind:function(arm,size=0x4) addr:0x020dba3c _ZN27UnkStruct_ItemManager_20_0019func_ov031_020dba40Ev kind:function(arm,size=0x34) addr:0x020dba40 func_ov031_020dba74 kind:function(arm,size=0x18) addr:0x020dba74 func_ov031_020dba8c kind:function(arm,size=0xac) addr:0x020dba8c func_ov031_020dbb38 kind:function(arm,size=0x1c) addr:0x020dbb38 func_ov031_020dbb54 kind:function(arm,size=0xc4) addr:0x020dbb54 func_ov031_020dbc18 kind:function(arm,size=0x68) addr:0x020dbc18 -func_ov031_020dbc80 kind:function(arm,size=0xa4) addr:0x020dbc80 +_ZN27UnkStruct_ItemManager_20_0019func_ov031_020dbc80Eii kind:function(arm,size=0xa4) addr:0x020dbc80 func_ov031_020dbd24 kind:function(arm,size=0x74) addr:0x020dbd24 func_ov031_020dbd98 kind:function(arm,size=0xc4) addr:0x020dbd98 func_ov031_020dbe5c kind:function(arm,size=0x2c) addr:0x020dbe5c @@ -612,7 +612,7 @@ _ZN19ActorProfileUnkZSRSC1Ev kind:function(thumb,size=0x1c) addr:0x020ea038 _ZN19ActorProfileUnkZLSL10GetProfileEv kind:function(thumb,size=0x8) addr:0x020ea054 _ZN19ActorProfileUnkZLSL6CreateEv kind:function(thumb,size=0x1c) addr:0x020ea05c _ZN19ActorProfileUnkZLSLC1Ev kind:function(thumb,size=0x3c) addr:0x020ea078 -_ZN24UnkStruct_ov031_0211361c19func_ov031_020ea0b4EP5Actor kind:function(thumb,size=0x30) addr:0x020ea0b4 +_ZN24UnkStruct_ov031_0211361c8vfunc_00EP5Actor kind:function(thumb,size=0x30) addr:0x020ea0b4 _ZN26ModelRender_ov031_02113670C2EP10G3d_Model_ kind:function(thumb,size=0x14) addr:0x020ea0e4 _ZN26ModelRender_ov031_021136708vfunc_0CEv kind:function(thumb,size=0x8) addr:0x020ea0f8 func_ov031_020ea100 kind:function(thumb,size=0x40) addr:0x020ea100 @@ -1208,8 +1208,8 @@ _ZN12ActorUnkMLCKC1Ev kind:function(arm,size=0xb0) addr:0x020fabb4 _ZN12ActorUnkMLCK8vfunc_18Ei kind:function(arm,size=0xd8) addr:0x020fac64 _ZN12ActorUnkMLCK8vfunc_64Ei kind:function(arm,size=0x4c) addr:0x020fad3c _ZN12ActorUnkMLCK8vfunc_54Eii kind:function(arm,size=0x20) addr:0x020fad88 -_ZN12ActorUnkMLCK8vfunc_58Ev kind:function(arm,size=0xc) addr:0x020fada8 -_ZN12ActorUnkMLCK8vfunc_5CEv kind:function(arm,size=0x54) addr:0x020fadb4 +_ZN12ActorUnkMLCK8vfunc_58Eii kind:function(arm,size=0xc) addr:0x020fada8 +_ZN12ActorUnkMLCK8vfunc_5CEi kind:function(arm,size=0x54) addr:0x020fadb4 _ZN12ActorUnkMLCK8vfunc_60Ev kind:function(arm,size=0x18) addr:0x020fae08 _ZN12ActorUnkMLCK8vfunc_68Ev kind:function(arm,size=0x90) addr:0x020fae20 _ZN12ActorUnkMLCK19func_ov031_020faeb0Ev kind:function(arm,size=0x4) addr:0x020faeb0 @@ -1218,20 +1218,20 @@ _ZN12ActorUnkMLCK8vfunc_70Ev kind:function(arm,size=0x20) addr:0x020faf04 _ZN12ActorUnkMLCK19func_ov031_020faf24Ev kind:function(arm,size=0x1e0) addr:0x020faf24 _ZN12ActorUnkMLCK19func_ov031_020fb104Ev kind:function(arm,size=0x18) addr:0x020fb104 _ZN12ActorUnkMLCK19func_ov031_020fb11cEv kind:function(arm,size=0x68) addr:0x020fb11c -_ZN18ActorUnkMLCK_B4_0019func_ov031_020fb184Ev kind:function(arm,size=0x2c) addr:0x020fb184 +_ZN15ActorUnkMLCK_C419func_ov031_020fb184Ev kind:function(arm,size=0x2c) addr:0x020fb184 _ZN15ActorUnkMLCK_D89vfunc2_00Ev kind:function(arm,size=0x1c) addr:0x020fb1b0 _ZN15ActorUnkMLCK_D89vfunc2_04Ev kind:function(arm,size=0x1c) addr:0x020fb1cc -_ZN12ActorUnkMLCK19func_ov031_020fb1e8EP18ActorUnkMLCK_B4_00 kind:function(arm,size=0x1c) addr:0x020fb1e8 +_ZN12ActorUnkMLCK19func_ov031_020fb1e8EP15ActorUnkMLCK_A0 kind:function(arm,size=0x1c) addr:0x020fb1e8 _ZN12ActorUnkMLCK19func_ov031_020fb204Ei kind:function(arm,size=0x4c) addr:0x020fb204 _ZN12ActorUnkMLCKD0Ev kind:function(arm,size=0x28) addr:0x020fb250 _ZN12ActorUnkMLCKD1Ev kind:function(arm,size=0x20) addr:0x020fb278 _ZN19ActorProfileUnkMLCKD1Ev kind:function(arm,size=0x14) addr:0x020fb298 -func_ov031_020fb2ac kind:function(arm,size=0x10) addr:0x020fb2ac -func_ov031_020fb2bc kind:function(arm,size=0x10) addr:0x020fb2bc -func_ov031_020fb2cc kind:function(arm,size=0x10) addr:0x020fb2cc -func_ov031_020fb2dc kind:function(arm,size=0x10) addr:0x020fb2dc -func_ov031_020fb2ec kind:function(arm,size=0x10) addr:0x020fb2ec -func_ov031_020fb2fc kind:function(arm,size=0x10) addr:0x020fb2fc +_ZThn148_N12ActorUnkMLCKD0Ev kind:function(arm,size=0x10) addr:0x020fb2ac +_ZThn148_N12ActorUnkMLCK8vfunc_60Ev kind:function(arm,size=0x10) addr:0x020fb2bc +_ZThn148_N12ActorUnkMLCK8vfunc_58Eii kind:function(arm,size=0x10) addr:0x020fb2cc +_ZThn148_N12ActorUnkMLCK8vfunc_5CEi kind:function(arm,size=0x10) addr:0x020fb2dc +_ZThn148_N12ActorUnkMLCK8vfunc_54Eii kind:function(arm,size=0x10) addr:0x020fb2ec +_ZThn148_N12ActorUnkMLCKD1Ev kind:function(arm,size=0x10) addr:0x020fb2fc _ZN19ActorProfileUnkCLLT10GetProfileEv kind:function(arm,size=0xc) addr:0x020fb30c _ZN19ActorProfileUnkCLLT6CreateEv kind:function(arm,size=0x24) addr:0x020fb318 _ZN19ActorProfileUnkCLLTC1Ev kind:function(arm,size=0x28) addr:0x020fb33c @@ -1793,7 +1793,7 @@ _ZN23MapObjectProfileUnkSAND6CreateEv kind:function(arm,size=0x24) addr:0x0210ab _ZN23MapObjectProfileUnkSANDC1Ev kind:function(arm,size=0x198) addr:0x0210ab3c _ZN16MapObjectUnkSAND19func_ov031_0210acd4Ev kind:function(arm,size=0x90) addr:0x0210acd4 _ZN16MapObjectUnkSAND19func_ov031_0210ad64Ev kind:function(arm,size=0x9c) addr:0x0210ad64 -_ZN16MapObjectUnkSAND19func_ov031_0210ae00Ev kind:function(arm,size=0x90) addr:0x0210ae00 +_ZN16MapObjectUnkSAND19func_ov031_0210ae00E8Vec2bCppPv kind:function(arm,size=0x90) addr:0x0210ae00 _ZN16MapObjectUnkSAND19func_ov031_0210ae90Ev kind:function(arm,size=0xc0) addr:0x0210ae90 _ZN16MapObjectUnkSAND19func_ov031_0210af50Ev kind:function(arm,size=0xc8) addr:0x0210af50 _ZN16MapObjectUnkSAND19func_ov031_0210b018Ev kind:function(arm,size=0x10) addr:0x0210b018 @@ -1801,13 +1801,13 @@ _ZN16MapObjectUnkSAND19func_ov031_0210b028Ev kind:function(arm,size=0x84) addr:0 _ZN16MapObjectUnkSAND19func_ov031_0210b0acEv kind:function(arm,size=0x38) addr:0x0210b0ac _ZN16MapObjectUnkSAND19func_ov031_0210b0e4Ev kind:function(arm,size=0x60) addr:0x0210b0e4 _ZN16MapObjectUnkSAND19func_ov031_0210b144Ev kind:function(arm,size=0x38) addr:0x0210b144 -_ZN16MapObjectUnkSAND19func_ov031_0210b17cEv kind:function(arm,size=0x70) addr:0x0210b17c +_ZN16MapObjectUnkSAND19func_ov031_0210b17cEP19MapObjectUnkSAND_40i kind:function(arm,size=0x70) addr:0x0210b17c _ZN16MapObjectUnkSAND19func_ov031_0210b1ecEv kind:function(arm,size=0xe0) addr:0x0210b1ec _ZN16MapObjectUnkSAND19func_ov031_0210b2ccEv kind:function(arm,size=0x30) addr:0x0210b2cc -_ZN16MapObjectUnkSANDD1Ev kind:function(arm,size=0x14) addr:0x0210b2fc -_ZN16MapObjectUnkSANDD0Ev kind:function(arm,size=0x1c) addr:0x0210b310 -_ZN16MapObjectUnkSAND19func_ov031_0210b32cEv kind:function(arm,size=0x20) addr:0x0210b32c -_ZN16MapObjectUnkSAND19func_ov031_0210b34cEv kind:function(arm,size=0x28) addr:0x0210b34c +_ZN16MapObjectUnkSAND19func_ov031_0210b2fcEv kind:function(arm,size=0x14) addr:0x0210b2fc +_ZN16MapObjectUnkSAND19func_ov031_0210b310Ev kind:function(arm,size=0x1c) addr:0x0210b310 +_ZN16MapObjectUnkSANDD1Ev kind:function(arm,size=0x20) addr:0x0210b32c +_ZN16MapObjectUnkSANDD0Ev kind:function(arm,size=0x28) addr:0x0210b34c _ZN23MapObjectProfileUnkSANDD1Ev kind:function(arm,size=0x14) addr:0x0210b374 _ZN23MapObjectProfileUnkSPTB10GetProfileEv kind:function(arm,size=0xc) addr:0x0210b388 _ZN23MapObjectProfileUnkSPTB6CreateEv kind:function(arm,size=0x24) addr:0x0210b394 @@ -2095,7 +2095,7 @@ __sinit_ActorUnkNORE.cpp kind:function(arm,size=0x50) addr:0x02111760 local __sinit_ActorUnkFLEN.cpp kind:function(arm,size=0x50) addr:0x021117b0 __sinit_ActorRollingStone.cpp kind:function(arm,size=0x50) addr:0x02111800 __sinit_ActorItemDrop.cpp kind:function(arm,size=0x138) addr:0x02111850 local -__sinit_ActorUnkMLCK.cpp kind:function(arm,size=0x74) addr:0x02111988 +__sinit_ActorUnkMLCK.cpp kind:function(arm,size=0x74) addr:0x02111988 local __sinit_ActorUnkCLLT.cpp kind:function(arm,size=0x50) addr:0x021119fc __sinit_ActorUnkEFSB.cpp kind:function(arm,size=0x50) addr:0x02111a4c local __sinit_ActorUnkNFSP.cpp kind:function(arm,size=0x50) addr:0x02111a9c local @@ -2159,7 +2159,7 @@ __sinit_MapObjectUnkSWFS.cpp kind:function(arm,size=0x70) addr:0x02112724 .p__sinit_ActorUnkFLEN.cpp kind:data(word) addr:0x021127f4 .p__sinit_ActorRollingStone.cpp kind:data(word) addr:0x021127f8 .p__sinit_ActorItemDrop.cpp kind:data(word) addr:0x021127fc local -.p__sinit_ActorUnkMLCK.cpp kind:data(word) addr:0x02112800 +.p__sinit_ActorUnkMLCK.cpp kind:data(word) addr:0x02112800 local .p__sinit_ActorUnkCLLT.cpp kind:data(word) addr:0x02112804 .p__sinit_ActorUnkEFSB.cpp kind:data(word) addr:0x02112808 local .p__sinit_ActorUnkNFSP.cpp kind:data(word) addr:0x0211280c local @@ -2229,7 +2229,7 @@ data_ov031_02112a50 kind:data(any) addr:0x02112a50 data_ov031_02112a64 kind:data(any) addr:0x02112a64 _ZTV16MapObject_10_Pot kind:data(any) addr:0x02112a70 data_ov031_02112aa0 kind:data(any) addr:0x02112aa0 -data_ov031_02112ad4 kind:data(any) addr:0x02112ad4 +_ZTV24UnkStruct_ov031_02112ad4 kind:data(any) addr:0x02112acc data_ov031_02112ae0 kind:data(any) addr:0x02112ae0 data_ov031_02112afc kind:data(any) addr:0x02112afc data_ov031_02112b18 kind:data(any) addr:0x02112b18 @@ -2399,11 +2399,10 @@ _ZTV24ActorProfileTreasureDrop kind:data(any) addr:0x02114c5c _ZTV25ActorProfileRedPotionDrop kind:data(any) addr:0x02114c80 _ZTV20ActorProfileBombDrop kind:data(any) addr:0x02114ca4 _ZTV13ActorItemDrop kind:data(any) addr:0x02114cc8 -data_ov031_02114d28 kind:data(any) addr:0x02114d28 +data_ov031_02114d28 kind:data(any) addr:0x02114d28 local _ZTV15ActorUnkMLCK_D8 kind:data(any) addr:0x02114d34 _ZTV19ActorProfileUnkMLCK kind:data(any) addr:0x02114d4c _ZTV12ActorUnkMLCK kind:data(any) addr:0x02114d70 -_ZTV15ActorUnkMLCK_94 kind:data(any) addr:0x02114dec _ZTV19ActorProfileUnkCLLT kind:data(any) addr:0x02114e1c _ZTV12ActorUnkCLLT kind:data(any) addr:0x02114e40 _ZTV19ActorProfileUnkEFSB kind:data(any) addr:0x02114eac @@ -2608,7 +2607,7 @@ _ZN15ProfileInstanceI24ActorProfileTreasureDropE8sProfileE kind:bss addr:0x02116 _ZN15ProfileInstanceI21ActorProfileArrowDropE8sProfileE kind:bss addr:0x02116f24 _ZN15ProfileInstanceI20ActorProfileBombDropE8sProfileE kind:bss addr:0x02116f60 _ZGVN15ProfileInstanceI19ActorProfileUnkMLCKE8sProfileE kind:bss addr:0x02116f9c -@10920 kind:bss addr:0x02116fa0 +@10920 kind:bss addr:0x02116fa0 local _ZN15ProfileInstanceI19ActorProfileUnkMLCKE8sProfileE kind:bss addr:0x02116fac _ZGVN15ProfileInstanceI19ActorProfileUnkCLLTE8sProfileE kind:bss addr:0x02116fe8 @10926 kind:bss addr:0x02116fec diff --git a/config/eur/arm9/overlays/ov033/relocs.txt b/config/eur/arm9/overlays/ov033/relocs.txt index 2b180a0f..2d358142 100644 --- a/config/eur/arm9/overlays/ov033/relocs.txt +++ b/config/eur/arm9/overlays/ov033/relocs.txt @@ -347,7 +347,7 @@ from:0x0211bd84 kind:arm_call to:0x0211bcf4 module:overlay(33) from:0x0211bda8 kind:load to:0x027e0ce0 module:dtcm from:0x0211bdd4 kind:arm_call to:0x01fff350 module:itcm from:0x0211be14 kind:load to:0x027e0ce4 module:dtcm -from:0x0211be1c kind:load to:0x020b3000 module:overlay(0) +from:0x0211be1c kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x0211be2c kind:arm_call_thumb to:0x02057ed4 module:overlay(0) from:0x0211be34 kind:arm_call_thumb to:0x02057ed4 module:overlay(0) from:0x0211be3c kind:arm_call to:0x0209d0ac module:overlay(0) diff --git a/config/eur/arm9/overlays/ov034/relocs.txt b/config/eur/arm9/overlays/ov034/relocs.txt index 8cfc7c0b..8801ecd6 100644 --- a/config/eur/arm9/overlays/ov034/relocs.txt +++ b/config/eur/arm9/overlays/ov034/relocs.txt @@ -234,7 +234,7 @@ from:0x0211ae88 kind:load to:0x027e09a4 module:dtcm from:0x0211aeb8 kind:arm_call to:0x01fff350 module:itcm from:0x0211aed4 kind:arm_call to:0x0211ccec module:overlay(34) from:0x0211af14 kind:load to:0x027e0ce4 module:dtcm -from:0x0211af1c kind:load to:0x020b3000 module:overlay(0) +from:0x0211af1c kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x0211af9c kind:arm_call to:0x0207e0c8 module:overlay(0) from:0x0211afbc kind:arm_call to:0x0207e0c8 module:overlay(0) from:0x0211afc8 kind:arm_call to:0x0211c8e4 module:overlay(34) diff --git a/config/eur/arm9/overlays/ov037/relocs.txt b/config/eur/arm9/overlays/ov037/relocs.txt index 3a361b80..1d8366f5 100644 --- a/config/eur/arm9/overlays/ov037/relocs.txt +++ b/config/eur/arm9/overlays/ov037/relocs.txt @@ -155,7 +155,7 @@ from:0x0211a4a4 kind:arm_call to:0x01fff350 module:itcm from:0x0211a4c8 kind:arm_call to:0x0211e6d8 module:overlay(37) from:0x0211a4dc kind:arm_call to:0x01fff350 module:itcm from:0x0211a4f4 kind:load to:0x027e0ce4 module:dtcm -from:0x0211a4f8 kind:load to:0x020b3000 module:overlay(0) +from:0x0211a4f8 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x0211a5ac kind:load to:0x02049be4 module:main from:0x0211a5d0 kind:arm_call to:0x01fff148 module:itcm from:0x0211a610 kind:arm_call to:0x01ffbbe0 module:itcm @@ -450,7 +450,7 @@ from:0x0211e438 kind:arm_call to:0x0211e348 module:overlay(37) from:0x0211e444 kind:arm_call to:0x0211e348 module:overlay(37) from:0x0211e450 kind:arm_call to:0x0211e47c module:overlay(37) from:0x0211e45c kind:load to:0x027e0ce4 module:dtcm -from:0x0211e460 kind:load to:0x020b3000 module:overlay(0) +from:0x0211e460 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x0211e5a0 kind:arm_call to:0x020986b4 module:overlay(0) from:0x0211e5c4 kind:arm_call to:0x01fff148 module:itcm from:0x0211e5d0 kind:arm_call to:0x01ff9a5c module:itcm @@ -630,7 +630,7 @@ from:0x0212057c kind:arm_call to:0x0212048c module:overlay(37) from:0x02120588 kind:arm_call to:0x0212048c module:overlay(37) from:0x02120594 kind:arm_call to:0x021205c0 module:overlay(37) from:0x021205a0 kind:load to:0x027e0ce4 module:dtcm -from:0x021205a4 kind:load to:0x020b3000 module:overlay(0) +from:0x021205a4 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x0212066c kind:arm_call to:0x020986b4 module:overlay(0) from:0x02120690 kind:arm_call to:0x01fff148 module:itcm from:0x0212069c kind:arm_call to:0x01ff9a5c module:itcm @@ -663,7 +663,7 @@ from:0x021209f4 kind:arm_call to:0x0209767c module:overlay(0) from:0x02120a0c kind:load to:0x02122768 add:0x8 module:overlay(37) from:0x02120a38 kind:arm_call to:0x01fff350 module:itcm from:0x02120a58 kind:load to:0x027e0ce4 module:dtcm -from:0x02120a60 kind:load to:0x020b3000 module:overlay(0) +from:0x02120a60 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x02120a68 kind:arm_call to:0x02120a10 module:overlay(37) from:0x02120a98 kind:arm_call to:0x02098388 module:overlay(0) from:0x02120ac0 kind:arm_call to:0x0201bb38 module:main @@ -678,7 +678,7 @@ from:0x02120bbc kind:arm_call to:0x02016fbc module:main from:0x02120c00 kind:arm_call to:0x01fff350 module:itcm from:0x02120c24 kind:arm_call to:0x01fff350 module:itcm from:0x02120c3c kind:load to:0x027e0ce4 module:dtcm -from:0x02120c40 kind:load to:0x020b3000 module:overlay(0) +from:0x02120c40 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x02120c68 kind:arm_call to:0x02120c48 module:overlay(37) from:0x02120d14 kind:arm_call to:0x02120408 module:overlay(37) from:0x02120d20 kind:arm_call to:0x02016958 module:main diff --git a/config/eur/arm9/overlays/ov040/relocs.txt b/config/eur/arm9/overlays/ov040/relocs.txt index 8dfd5da5..8866fa16 100644 --- a/config/eur/arm9/overlays/ov040/relocs.txt +++ b/config/eur/arm9/overlays/ov040/relocs.txt @@ -264,7 +264,7 @@ from:0x02125538 kind:arm_call to:0x02126938 module:overlay(40) from:0x0212557c kind:arm_call to:0x0208bbc4 module:overlay(0) from:0x02125588 kind:load to:0x027e09b8 module:dtcm from:0x0212558c kind:load to:0x027e0d34 module:dtcm -from:0x02125590 kind:load to:0x020b3000 module:overlay(0) +from:0x02125590 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x02125598 kind:load to:0x027e0ce4 module:dtcm from:0x021255a4 kind:load to:0x027e09a8 module:dtcm from:0x021255a8 kind:load to:0x027e09bc module:dtcm @@ -341,7 +341,7 @@ from:0x021262f0 kind:arm_call to:0x01ffb6e4 module:itcm from:0x02126300 kind:arm_call to:0x02150c2c module:overlay(72) from:0x02126314 kind:arm_call to:0x02150c2c module:overlay(72) from:0x02126334 kind:load to:0x027e09a4 module:dtcm -from:0x02126338 kind:load to:0x020b3000 module:overlay(0) +from:0x02126338 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x02126340 kind:load to:0x027e0ce4 module:dtcm from:0x0212638c kind:arm_call to:0x01ff9638 module:itcm from:0x021263b4 kind:arm_call to:0x01ffb6e4 module:itcm @@ -353,7 +353,7 @@ from:0x0212650c kind:arm_call to:0x02080658 module:overlay(0) from:0x02126528 kind:arm_call to:0x02070a9c module:overlay(0) from:0x02126534 kind:arm_call to:0x0202851c module:main from:0x02126540 kind:load to:0x027e09a4 module:dtcm -from:0x02126548 kind:load to:0x020b3000 module:overlay(0) +from:0x02126548 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x0212654c kind:load to:0x027e0ce4 module:dtcm from:0x02126550 kind:load to:0x027e0cd8 module:dtcm from:0x02126588 kind:arm_call to:0x01fff350 module:itcm @@ -361,16 +361,16 @@ from:0x021265fc kind:arm_call to:0x01ff9638 module:itcm from:0x0212661c kind:arm_call to:0x01ffb6e4 module:itcm from:0x02126688 kind:arm_call to:0x0211a404 module:overlay(39) from:0x02126694 kind:load to:0x027e0ce4 module:dtcm -from:0x02126698 kind:load to:0x020b3000 module:overlay(0) +from:0x02126698 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x021266a0 kind:load to:0x027e09b8 module:dtcm from:0x021266dc kind:arm_call to:0x01fff350 module:itcm from:0x021266f8 kind:arm_call to:0x0211a460 module:overlay(39) from:0x02126704 kind:load to:0x027e0ce4 module:dtcm -from:0x0212670c kind:load to:0x020b3000 module:overlay(0) +from:0x0212670c kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x02126740 kind:arm_call to:0x01fff350 module:itcm from:0x021267cc kind:arm_call to:0x0211a3ac module:overlays(38,39) from:0x021267d8 kind:load to:0x027e0ce4 module:dtcm -from:0x021267dc kind:load to:0x020b3000 module:overlay(0) +from:0x021267dc kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x02126800 kind:arm_call to:0x020732ec module:overlay(0) from:0x0212681c kind:arm_call to:0x02014478 module:main from:0x02126840 kind:arm_call to:0x02126450 module:overlay(40) @@ -382,13 +382,13 @@ from:0x0212689c kind:load to:0x02049b2a module:main from:0x021268d0 kind:arm_call to:0x01fff350 module:itcm from:0x02126920 kind:arm_call to:0x01ffb714 module:itcm from:0x0212692c kind:load to:0x027e0ce4 module:dtcm -from:0x02126930 kind:load to:0x020b3000 module:overlay(0) +from:0x02126930 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x0212696c kind:arm_call to:0x01fff350 module:itcm from:0x021269b0 kind:arm_call to:0x01fff350 module:itcm from:0x02126a14 kind:arm_call to:0x01ff9638 module:itcm from:0x02126a24 kind:arm_call to:0x01ffb6e4 module:itcm from:0x02126a64 kind:load to:0x027e0ce4 module:dtcm -from:0x02126a68 kind:load to:0x020b3000 module:overlay(0) +from:0x02126a68 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x02126a8c kind:arm_call to:0x020732ec module:overlay(0) from:0x02126aa8 kind:arm_call to:0x02014478 module:main from:0x02126ad0 kind:arm_call to:0x0201bb84 module:main diff --git a/config/eur/arm9/overlays/ov041/relocs.txt b/config/eur/arm9/overlays/ov041/relocs.txt index 80a38b83..f258fbe6 100644 --- a/config/eur/arm9/overlays/ov041/relocs.txt +++ b/config/eur/arm9/overlays/ov041/relocs.txt @@ -28,7 +28,7 @@ from:0x02123764 kind:arm_call_thumb to:0x0209a248 module:overlay(0) from:0x0212377c kind:arm_call to:0x02124db8 module:overlay(41) from:0x021237a0 kind:arm_call to:0x01fff350 module:itcm from:0x021237d8 kind:load to:0x027e0ce4 module:dtcm -from:0x021237e0 kind:load to:0x020b3000 module:overlay(0) +from:0x021237e0 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x021237f0 kind:arm_call to:0x02124e44 module:overlay(41) from:0x02123828 kind:load to:0x0212d9c4 module:overlay(41) from:0x021238a8 kind:arm_call to:0x020bf894 module:overlay(17) @@ -125,7 +125,7 @@ from:0x02124244 kind:load to:0x0212dc04 add:0x8 module:overlay(41) from:0x0212425c kind:arm_call to:0x02124db8 module:overlay(41) from:0x02124280 kind:arm_call to:0x01fff350 module:itcm from:0x021242b8 kind:load to:0x027e0ce4 module:dtcm -from:0x021242c0 kind:load to:0x020b3000 module:overlay(0) +from:0x021242c0 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x021242d0 kind:arm_call to:0x02124e44 module:overlay(41) from:0x02124308 kind:load to:0x0212dc7c module:overlay(41) from:0x02124388 kind:arm_call to:0x020bf894 module:overlay(17) @@ -482,7 +482,7 @@ from:0x02127dcc kind:arm_call to:0x01fff350 module:itcm from:0x02127df4 kind:arm_call to:0x020975f8 module:overlay(0) from:0x02127e14 kind:arm_call to:0x020973f4 module:overlay(0) from:0x02127e20 kind:load to:0x027e0ce4 module:dtcm -from:0x02127e24 kind:load to:0x020b3000 module:overlay(0) +from:0x02127e24 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x02127e2c kind:load to:0x020b539c module:overlay(0) from:0x02127e44 kind:arm_call to:0x02016fbc module:main from:0x02127e50 kind:arm_call to:0x0213f8dc module:overlay(70) @@ -1000,7 +1000,7 @@ from:0x0212bff8 kind:arm_call to:0x01fff350 module:itcm from:0x0212c038 kind:arm_call to:0x01fff350 module:itcm from:0x0212c070 kind:load to:0x027e09b8 module:dtcm from:0x0212c074 kind:load to:0x027e0ce4 module:dtcm -from:0x0212c07c kind:load to:0x020b3000 module:overlay(0) +from:0x0212c07c kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x0212c0b4 kind:arm_call to:0x0209d434 module:overlay(0) from:0x0212c0f0 kind:arm_call to:0x0209d434 module:overlay(0) from:0x0212c104 kind:load to:0x0212e470 module:overlay(41) diff --git a/config/eur/arm9/overlays/ov045/relocs.txt b/config/eur/arm9/overlays/ov045/relocs.txt index a301ee13..a9111bf7 100644 --- a/config/eur/arm9/overlays/ov045/relocs.txt +++ b/config/eur/arm9/overlays/ov045/relocs.txt @@ -106,7 +106,7 @@ from:0x02123f88 kind:arm_call to:0x0212360c module:overlay(45) from:0x02123fb8 kind:arm_call to:0x0207e0c8 module:overlay(0) from:0x02123fd0 kind:arm_call to:0x0207e184 module:overlay(0) from:0x02123fe0 kind:load to:0x027e0ce4 module:dtcm -from:0x02123fe8 kind:load to:0x020b3000 module:overlay(0) +from:0x02123fe8 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x02123fec kind:load to:0x027e09c0 module:dtcm from:0x02124008 kind:arm_call to:0x02078698 module:overlay(0) from:0x02124034 kind:arm_call to:0x02017e8c module:main diff --git a/config/eur/arm9/overlays/ov047/symbols.txt b/config/eur/arm9/overlays/ov047/symbols.txt index dd28d715..1f144ecf 100644 --- a/config/eur/arm9/overlays/ov047/symbols.txt +++ b/config/eur/arm9/overlays/ov047/symbols.txt @@ -1,7 +1,7 @@ _ZN29UnkStruct_027e0cd8_0C_Base_98C1Ev kind:function(arm,size=0x64) addr:0x021304a0 _ZN29UnkStruct_027e0cd8_0C_Base_98D1Ev kind:function(arm,size=0x28) addr:0x02130504 func_ov047_0213052c kind:function(arm,size=0x30) addr:0x0213052c -func_ov047_0213055c kind:function(arm,size=0x200) addr:0x0213055c +_ZN29UnkStruct_027e0cd8_0C_Base_9819func_ov047_0213055cEv kind:function(arm,size=0x200) addr:0x0213055c func_ov047_0213075c kind:function(arm,size=0x39c) addr:0x0213075c func_ov047_02130af8 kind:function(arm,size=0x3d8) addr:0x02130af8 func_ov047_02130ed0 kind:function(arm,size=0x280) addr:0x02130ed0 diff --git a/config/eur/arm9/overlays/ov049/relocs.txt b/config/eur/arm9/overlays/ov049/relocs.txt index c96a5fb4..ff365cbf 100644 --- a/config/eur/arm9/overlays/ov049/relocs.txt +++ b/config/eur/arm9/overlays/ov049/relocs.txt @@ -462,13 +462,13 @@ from:0x021342b0 kind:arm_call to:0x02132714 module:overlay(49) from:0x021342c4 kind:arm_call to:0x01fff350 module:itcm from:0x021342e0 kind:load to:0x020d86b0 module:overlay(24) from:0x021342e4 kind:load to:0x027e0ce4 module:dtcm -from:0x021342ec kind:load to:0x020b3000 module:overlay(0) +from:0x021342ec kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x02134340 kind:arm_call to:0x01fff350 module:itcm from:0x0213436c kind:arm_call to:0x02098654 module:overlay(0) from:0x02134398 kind:arm_call to:0x01fff350 module:itcm from:0x021343b8 kind:load to:0x020d86b0 module:overlay(24) from:0x021343bc kind:load to:0x027e0ce4 module:dtcm -from:0x021343c4 kind:load to:0x020b3000 module:overlay(0) +from:0x021343c4 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x021343e0 kind:load to:0x027e0d40 module:dtcm from:0x021343f4 kind:load to:0x027e0d40 module:dtcm from:0x02134400 kind:arm_call to:0x021343e4 module:overlay(49) diff --git a/config/eur/arm9/overlays/ov051/relocs.txt b/config/eur/arm9/overlays/ov051/relocs.txt index 1e085c43..ef694871 100644 --- a/config/eur/arm9/overlays/ov051/relocs.txt +++ b/config/eur/arm9/overlays/ov051/relocs.txt @@ -470,7 +470,7 @@ from:0x021356a4 kind:arm_call to:0x01fff458 module:itcm from:0x021356b4 kind:arm_call to:0x021355d8 module:overlay(51) from:0x021356c4 kind:arm_call to:0x01fff350 module:itcm from:0x021356e0 kind:load to:0x027e0ce4 module:dtcm -from:0x021356e4 kind:load to:0x020b3000 module:overlay(0) +from:0x021356e4 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x02135794 kind:arm_call to:0x01fff148 module:itcm from:0x021357a0 kind:arm_call to:0x01ff9a5c module:itcm from:0x021357bc kind:load to:0x0203e964 module:main diff --git a/config/eur/arm9/overlays/ov057/relocs.txt b/config/eur/arm9/overlays/ov057/relocs.txt index 1b757724..e25e2ee2 100644 --- a/config/eur/arm9/overlays/ov057/relocs.txt +++ b/config/eur/arm9/overlays/ov057/relocs.txt @@ -348,7 +348,7 @@ from:0x0213b654 kind:arm_call to:0x0213b53c module:overlay(57) from:0x0213b65c kind:arm_call to:0x0213b5cc module:overlay(57) from:0x0213b66c kind:arm_call to:0x01fff350 module:itcm from:0x0213b68c kind:load to:0x027e0ce4 module:dtcm -from:0x0213b690 kind:load to:0x020b3000 module:overlay(0) +from:0x0213b690 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x0213b6a4 kind:load to:0x020578a4 module:overlay(0) from:0x0213b6b8 kind:arm_call_thumb to:0x02099afc module:overlay(0) from:0x0213b6c0 kind:arm_call to:0x02011ff4 module:main diff --git a/config/eur/arm9/overlays/ov058/relocs.txt b/config/eur/arm9/overlays/ov058/relocs.txt index 4e45e0dd..79119375 100644 --- a/config/eur/arm9/overlays/ov058/relocs.txt +++ b/config/eur/arm9/overlays/ov058/relocs.txt @@ -1554,7 +1554,7 @@ from:0x0214d614 kind:arm_call to:0x0214cab8 module:overlay(58) from:0x0214d624 kind:arm_call to:0x0214cc80 module:overlay(58) from:0x0214d654 kind:arm_call to:0x01fff350 module:itcm from:0x0214d674 kind:load to:0x020d86b0 module:overlay(24) -from:0x0214d678 kind:load to:0x020b3000 module:overlay(0) +from:0x0214d678 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x0214d680 kind:load to:0x027e0ce4 module:dtcm from:0x0214d690 kind:load to:0x027e0d4c module:dtcm from:0x0214d6a4 kind:load to:0x027e0d4c module:dtcm diff --git a/config/eur/arm9/overlays/ov059/relocs.txt b/config/eur/arm9/overlays/ov059/relocs.txt index 8e087721..183ed9f8 100644 --- a/config/eur/arm9/overlays/ov059/relocs.txt +++ b/config/eur/arm9/overlays/ov059/relocs.txt @@ -27,7 +27,7 @@ from:0x021581cc kind:arm_call to:0x01fff350 module:itcm from:0x021581e4 kind:arm_call to:0x021589b4 module:overlay(59) from:0x021581f0 kind:arm_call to:0x02157ff8 module:overlay(59) from:0x021581fc kind:load to:0x027e0ce4 module:dtcm -from:0x02158200 kind:load to:0x020b3000 module:overlay(0) +from:0x02158200 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x02158220 kind:arm_call to:0x01fff3b4 module:itcm from:0x02158240 kind:arm_call to:0x02081d7c module:overlay(0) from:0x02158248 kind:load to:0x027e0ce4 module:dtcm @@ -45,7 +45,7 @@ from:0x02158430 kind:arm_call to:0x01fff350 module:itcm from:0x02158440 kind:arm_call to:0x01fff350 module:itcm from:0x0215846c kind:arm_call to:0x01fff350 module:itcm from:0x02158494 kind:load to:0x027e0ce4 module:dtcm -from:0x0215849c kind:load to:0x020b3000 module:overlay(0) +from:0x0215849c kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x02158550 kind:arm_call to:0x021586a8 module:overlay(59) from:0x02158558 kind:arm_call to:0x02158564 module:overlay(59) from:0x021585dc kind:arm_call to:0x021586a8 module:overlay(59) @@ -313,7 +313,7 @@ from:0x0215ab50 kind:arm_call to:0x02160ba4 module:overlay(59) from:0x0215ab5c kind:load to:0x027e0ce4 module:dtcm from:0x0215ab60 kind:load to:0x027e0d5c module:dtcm from:0x0215ab68 kind:load to:0x027e09b8 module:dtcm -from:0x0215ab70 kind:load to:0x020b3000 module:overlay(0) +from:0x0215ab70 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x0215abd4 kind:load to:0x02163758 module:overlay(59) from:0x0215abf0 kind:arm_call to:0x01fff3b4 module:itcm from:0x0215ac10 kind:arm_call to:0x02015080 module:main @@ -448,7 +448,7 @@ from:0x0215be04 kind:arm_call to:0x01fff350 module:itcm from:0x0215be2c kind:arm_call to:0x01fff350 module:itcm from:0x0215be64 kind:arm_call to:0x01fff350 module:itcm from:0x0215be84 kind:load to:0x027e0ce4 module:dtcm -from:0x0215be8c kind:load to:0x020b3000 module:overlay(0) +from:0x0215be8c kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x0215beb4 kind:arm_call to:0x020169d4 module:main from:0x0215bf6c kind:arm_call to:0x0207e458 module:overlay(0) from:0x0215bf90 kind:arm_call to:0x02071b30 module:overlay(0) @@ -786,7 +786,7 @@ from:0x0215eefc kind:arm_call to:0x020984d0 module:overlay(0) from:0x0215ef0c kind:arm_call to:0x01fff350 module:itcm from:0x0215ef28 kind:load to:0x020b51b8 module:overlay(0) from:0x0215ef34 kind:load to:0x027e09b8 module:dtcm -from:0x0215ef3c kind:load to:0x020b3000 module:overlay(0) +from:0x0215ef3c kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x0215ef40 kind:load to:0x027e0ce4 module:dtcm from:0x0215efb8 kind:arm_call to:0x020732ec module:overlay(0) from:0x0215f014 kind:arm_call to:0x0208bbc4 module:overlay(0) @@ -902,7 +902,7 @@ from:0x02160304 kind:arm_call to:0x01fff350 module:itcm from:0x0216032c kind:arm_call to:0x01fff350 module:itcm from:0x02160358 kind:arm_call to:0x01fff350 module:itcm from:0x02160378 kind:load to:0x027e0ce4 module:dtcm -from:0x02160380 kind:load to:0x020b3000 module:overlay(0) +from:0x02160380 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x0216038c kind:arm_call_thumb to:0x02057bd4 module:overlay(0) from:0x02160394 kind:arm_call to:0x02011ff4 module:main from:0x021603ac kind:arm_call to:0x0207b6c0 module:overlay(0) diff --git a/config/eur/arm9/overlays/ov060/relocs.txt b/config/eur/arm9/overlays/ov060/relocs.txt index 4aec90e3..206298df 100644 --- a/config/eur/arm9/overlays/ov060/relocs.txt +++ b/config/eur/arm9/overlays/ov060/relocs.txt @@ -585,7 +585,7 @@ from:0x0215db84 kind:arm_call to:0x02078314 module:overlay(0) from:0x0215dba8 kind:arm_call to:0x01fff350 module:itcm from:0x0215dbf4 kind:load to:0x027e09bc module:dtcm from:0x0215dbf8 kind:load to:0x027e0ce4 module:dtcm -from:0x0215dc00 kind:load to:0x020b3000 module:overlay(0) +from:0x0215dc00 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x0215dc10 kind:arm_call to:0x020f759c module:overlay(31) from:0x0215dc44 kind:arm_call to:0x02099ff8 module:overlay(0) from:0x0215dc50 kind:arm_call to:0x0205a7e0 module:overlay(0) diff --git a/config/eur/arm9/overlays/ov063/relocs.txt b/config/eur/arm9/overlays/ov063/relocs.txt index 9a577d72..d2aeeb58 100644 --- a/config/eur/arm9/overlays/ov063/relocs.txt +++ b/config/eur/arm9/overlays/ov063/relocs.txt @@ -789,7 +789,7 @@ from:0x0215e0ec kind:arm_call to:0x0215e0f4 module:overlay(63) from:0x0215e148 kind:arm_call to:0x01fff350 module:itcm from:0x0215e17c kind:load to:0x02162650 module:overlay(63) from:0x0215e180 kind:load to:0x027e0ce4 module:dtcm -from:0x0215e184 kind:load to:0x020b3000 module:overlay(0) +from:0x0215e184 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x0215e1a0 kind:arm_call to:0x02018c2c module:main from:0x0215e1b4 kind:arm_call to:0x020c555c module:overlay(24) from:0x0215e1bc kind:arm_call to:0x020c53e8 module:overlay(24) @@ -922,7 +922,7 @@ from:0x0215ed8c kind:load to:0x020b7ad5 module:overlay(12) from:0x0215edf0 kind:arm_call to:0x01fff350 module:itcm from:0x0215ee08 kind:arm_call to:0x021456d8 module:overlay(58) from:0x0215ee28 kind:load to:0x027e0ce4 module:dtcm -from:0x0215ee2c kind:load to:0x020b3000 module:overlay(0) +from:0x0215ee2c kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x0215ee30 kind:load to:0x0216263c module:overlay(63) from:0x0215ee3c kind:load to:0x0215ee40 module:overlay(63) from:0x0215ee74 kind:arm_call_thumb to:0x020b81bc module:overlay(12) diff --git a/config/eur/arm9/overlays/ov066/relocs.txt b/config/eur/arm9/overlays/ov066/relocs.txt index 2eddb4e3..5e6f6375 100644 --- a/config/eur/arm9/overlays/ov066/relocs.txt +++ b/config/eur/arm9/overlays/ov066/relocs.txt @@ -482,7 +482,7 @@ from:0x0215b3c8 kind:arm_call to:0x02067a60 module:overlay(0) from:0x0215b3e4 kind:arm_call to:0x02067a60 module:overlay(0) from:0x0215b400 kind:arm_call to:0x02067a60 module:overlay(0) from:0x0215b41c kind:load to:0x027e0ce4 module:dtcm -from:0x0215b420 kind:load to:0x020b3000 module:overlay(0) +from:0x0215b420 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x0215b428 kind:load to:0x020b504c module:overlay(0) from:0x0215b42c kind:load to:0x0215d7d8 module:overlay(66) from:0x0215b430 kind:load to:0x02049be0 module:main @@ -516,12 +516,12 @@ from:0x0215b8f0 kind:arm_call to:0x01fff350 module:itcm from:0x0215b910 kind:arm_call to:0x01fff3b4 module:itcm from:0x0215b920 kind:arm_call to:0x0215c80c module:overlay(66) from:0x0215b92c kind:load to:0x027e0ce4 module:dtcm -from:0x0215b934 kind:load to:0x020b3000 module:overlay(0) +from:0x0215b934 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x0215b964 kind:arm_call to:0x01fff350 module:itcm from:0x0215b984 kind:arm_call to:0x01fff3b4 module:itcm from:0x0215b994 kind:arm_call to:0x0215c868 module:overlay(66) from:0x0215b9a0 kind:load to:0x027e0ce4 module:dtcm -from:0x0215b9a8 kind:load to:0x020b3000 module:overlay(0) +from:0x0215b9a8 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x0215b9b8 kind:arm_call to:0x02016694 module:main from:0x0215b9c0 kind:arm_call to:0x02158e74 module:overlay(66) from:0x0215b9c8 kind:arm_call to:0x02158e74 module:overlay(66) diff --git a/config/eur/arm9/overlays/ov068/relocs.txt b/config/eur/arm9/overlays/ov068/relocs.txt index 4fcb0111..f99cbe1f 100644 --- a/config/eur/arm9/overlays/ov068/relocs.txt +++ b/config/eur/arm9/overlays/ov068/relocs.txt @@ -54,7 +54,7 @@ from:0x021584d8 kind:arm_call to:0x01fff350 module:itcm from:0x02158500 kind:arm_call to:0x0215d500 module:overlay(68) from:0x0215850c kind:arm_call to:0x0215dccc module:overlay(68) from:0x02158518 kind:load to:0x027e0ce4 module:dtcm -from:0x02158520 kind:load to:0x020b3000 module:overlay(0) +from:0x02158520 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x02158524 kind:load to:0x027e0d6c module:dtcm from:0x02158528 kind:load to:0x02163ff4 module:overlay(68) from:0x02158550 kind:arm_call to:0x01fff3b4 module:itcm @@ -626,7 +626,7 @@ from:0x0215d61c kind:load to:0x027e09b8 module:dtcm from:0x0215d650 kind:arm_call to:0x01fff350 module:itcm from:0x0215d674 kind:arm_call to:0x0209862c module:overlay(0) from:0x0215d680 kind:load to:0x027e0ce4 module:dtcm -from:0x0215d684 kind:load to:0x020b3000 module:overlay(0) +from:0x0215d684 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x0215d6b8 kind:arm_call to:0x020d44fc module:overlay(24) from:0x0215d6e4 kind:load to:0x027e0cfc module:dtcm from:0x0215d70c kind:load to:0x01ffc6d4 module:itcm diff --git a/config/eur/arm9/overlays/ov070/symbols.txt b/config/eur/arm9/overlays/ov070/symbols.txt index 8d99d775..061e3b78 100644 --- a/config/eur/arm9/overlays/ov070/symbols.txt +++ b/config/eur/arm9/overlays/ov070/symbols.txt @@ -503,7 +503,7 @@ _ZN23MapObjectProfileUnkPTFLC1Ev kind:function(arm,size=0xa8) addr:0x0214b90c _ZN16MapObjectUnkPTFLC1Ev kind:function(arm,size=0x80) addr:0x0214b9b4 _ZN16MapObjectUnkPTFL19func_ov070_0214ba34Ev kind:function(arm,size=0x144) addr:0x0214ba34 _ZN16MapObjectUnkPTFL19func_ov070_0214bb78Ev kind:function(arm,size=0x58) addr:0x0214bb78 -_ZN16MapObjectUnkPTFL19func_ov070_0214bbd0Ev kind:function(arm,size=0x178) addr:0x0214bbd0 +_ZN16MapObjectUnkPTFL19func_ov070_0214bbd0Esb kind:function(arm,size=0x178) addr:0x0214bbd0 _ZN16MapObjectUnkPTFL19func_ov070_0214bd48Ev kind:function(arm,size=0x48) addr:0x0214bd48 _ZN16MapObjectUnkPTFL19func_ov070_0214bd90Ev kind:function(arm,size=0x1c8) addr:0x0214bd90 _ZN16MapObjectUnkPTFL19func_ov070_0214bf58Ev kind:function(arm,size=0x4) addr:0x0214bf58 diff --git a/config/eur/arm9/overlays/ov071/relocs.txt b/config/eur/arm9/overlays/ov071/relocs.txt index 6859b761..2f25b7dd 100644 --- a/config/eur/arm9/overlays/ov071/relocs.txt +++ b/config/eur/arm9/overlays/ov071/relocs.txt @@ -1540,7 +1540,7 @@ from:0x0215f174 kind:arm_call to:0x01fff350 module:itcm from:0x0215f1b4 kind:arm_call to:0x0212914c module:overlay(42) from:0x0215f1c4 kind:arm_call to:0x01fff350 module:itcm from:0x0215f1e0 kind:load to:0x027e0ce4 module:dtcm -from:0x0215f1e8 kind:load to:0x020b3000 module:overlay(0) +from:0x0215f1e8 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x0215f1f8 kind:load to:0x027e0d70 module:dtcm from:0x0215f20c kind:load to:0x027e0d70 module:dtcm from:0x0215f218 kind:load to:0x02165168 module:overlay(71) diff --git a/config/eur/arm9/overlays/ov072/relocs.txt b/config/eur/arm9/overlays/ov072/relocs.txt index e3e47b44..8230c26e 100644 --- a/config/eur/arm9/overlays/ov072/relocs.txt +++ b/config/eur/arm9/overlays/ov072/relocs.txt @@ -106,7 +106,7 @@ from:0x02151638 kind:load to:0x02049be4 module:main from:0x0215163c kind:load to:0x027e09a8 module:dtcm from:0x02151648 kind:load to:0x020b504c module:overlay(0) from:0x0215164c kind:load to:0x027e0ce4 module:dtcm -from:0x02151654 kind:load to:0x020b3000 module:overlay(0) +from:0x02151654 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x02151658 kind:load to:0x0215253c module:overlay(72) from:0x0215168c kind:arm_call to:0x020732dc module:overlay(0) from:0x021516c8 kind:arm_call to:0x02078698 module:overlay(0) diff --git a/config/eur/arm9/overlays/ov073/relocs.txt b/config/eur/arm9/overlays/ov073/relocs.txt index 41247d3b..d56663f9 100644 --- a/config/eur/arm9/overlays/ov073/relocs.txt +++ b/config/eur/arm9/overlays/ov073/relocs.txt @@ -1822,7 +1822,7 @@ from:0x02163860 kind:load to:0x020aaee4 module:overlay(0) from:0x02163864 kind:load to:0x020aaeec module:overlay(0) from:0x02163868 kind:load to:0x020aaee8 module:overlay(0) from:0x0216386c kind:load to:0x027e0ce4 module:dtcm -from:0x02163870 kind:load to:0x020b3000 module:overlay(0) +from:0x02163870 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x02163878 kind:load to:0x020aaebc module:overlay(0) from:0x0216387c kind:load to:0x020aaec0 module:overlay(0) from:0x02163880 kind:load to:0x020aaec4 module:overlay(0) @@ -1843,7 +1843,7 @@ from:0x02163a40 kind:load to:0x020aaed8 module:overlay(0) from:0x02163a44 kind:load to:0x020aaed4 module:overlay(0) from:0x02163a48 kind:load to:0x027e0ce0 module:dtcm from:0x02163a4c kind:load to:0x027e0ce4 module:dtcm -from:0x02163a54 kind:load to:0x020b3000 module:overlay(0) +from:0x02163a54 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x02163a58 kind:load to:0x020aaeb8 module:overlay(0) from:0x02163a5c kind:load to:0x020aaee4 module:overlay(0) from:0x02163a60 kind:load to:0x020aaeec module:overlay(0) @@ -1864,7 +1864,7 @@ from:0x02163c0c kind:arm_call to:0x01ffb6e4 module:itcm from:0x02163c18 kind:load to:0x020aaed8 module:overlay(0) from:0x02163c1c kind:load to:0x020aaed4 module:overlay(0) from:0x02163c20 kind:load to:0x027e0ce0 module:dtcm -from:0x02163c24 kind:load to:0x020b3000 module:overlay(0) +from:0x02163c24 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x02163c2c kind:load to:0x027e0ce4 module:dtcm from:0x02163c30 kind:load to:0x020aaebc module:overlay(0) from:0x02163c34 kind:load to:0x020aaec0 module:overlay(0) diff --git a/config/eur/arm9/overlays/ov074/relocs.txt b/config/eur/arm9/overlays/ov074/relocs.txt index 62a07933..365b98cf 100644 --- a/config/eur/arm9/overlays/ov074/relocs.txt +++ b/config/eur/arm9/overlays/ov074/relocs.txt @@ -1842,7 +1842,7 @@ from:0x02161b68 kind:arm_call to:0x01ffb428 module:itcm from:0x02161b84 kind:arm_call to:0x01ffb428 module:itcm from:0x02161bc0 kind:arm_call to:0x01fff350 module:itcm from:0x02161bdc kind:load to:0x027e0ce4 module:dtcm -from:0x02161be0 kind:load to:0x020b3000 module:overlay(0) +from:0x02161be0 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x02161c0c kind:arm_call to:0x02078834 module:overlay(0) from:0x02161c14 kind:load to:0x027e09bc module:dtcm from:0x02161c20 kind:arm_call to:0x0209790c module:overlay(0) diff --git a/config/eur/arm9/overlays/ov075/relocs.txt b/config/eur/arm9/overlays/ov075/relocs.txt index 10efa079..a391dbfe 100644 --- a/config/eur/arm9/overlays/ov075/relocs.txt +++ b/config/eur/arm9/overlays/ov075/relocs.txt @@ -377,11 +377,11 @@ from:0x02154224 kind:arm_call to:0x020979b4 module:overlay(0) from:0x02154260 kind:load to:0x02162aa0 add:0x8 module:overlay(75) from:0x02154294 kind:arm_call to:0x01fff350 module:itcm from:0x021542b4 kind:load to:0x027e0ce4 module:dtcm -from:0x021542bc kind:load to:0x020b3000 module:overlay(0) +from:0x021542bc kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x021542ec kind:arm_call to:0x01fff350 module:itcm from:0x02154324 kind:arm_call to:0x01fff350 module:itcm from:0x02154344 kind:load to:0x027e0ce4 module:dtcm -from:0x0215434c kind:load to:0x020b3000 module:overlay(0) +from:0x0215434c kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x02154360 kind:arm_call to:0x020974dc module:overlay(0) from:0x02154374 kind:load to:0x020b539c module:overlay(0) from:0x0215438c kind:arm_call to:0x02098b28 module:overlay(0) @@ -1791,7 +1791,7 @@ from:0x02161044 kind:arm_call to:0x01ff93c0 module:itcm from:0x02161058 kind:arm_call to:0x01ffb974 module:itcm from:0x0216106c kind:arm_call to:0x01ffb974 module:itcm from:0x021610d0 kind:arm_call to:0x02015820 module:main -from:0x021610dc kind:load to:0x020b3000 module:overlay(0) +from:0x021610dc kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x021610e4 kind:load to:0x027e0ce4 module:dtcm from:0x021610e8 kind:load to:0x027e0ce0 module:dtcm from:0x02161120 kind:arm_call to:0x01fff350 module:itcm @@ -1801,7 +1801,7 @@ from:0x0216118c kind:arm_call to:0x01ff93c0 module:itcm from:0x021611a0 kind:arm_call to:0x01ffb974 module:itcm from:0x021611b4 kind:arm_call to:0x01ffb974 module:itcm from:0x021611f4 kind:load to:0x027e0ce4 module:dtcm -from:0x021611f8 kind:load to:0x020b3000 module:overlay(0) +from:0x021611f8 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x02161200 kind:load to:0x027e0ce0 module:dtcm from:0x0216124c kind:arm_call to:0x01ffb428 module:itcm from:0x0216125c kind:load to:0x020aaea8 module:overlay(0) diff --git a/config/eur/arm9/overlays/ov078/relocs.txt b/config/eur/arm9/overlays/ov078/relocs.txt index d92e215e..069350b0 100644 --- a/config/eur/arm9/overlays/ov078/relocs.txt +++ b/config/eur/arm9/overlays/ov078/relocs.txt @@ -856,7 +856,7 @@ from:0x0215c0bc kind:load to:0x0203e964 module:main from:0x0215c0f0 kind:arm_call to:0x01fff350 module:itcm from:0x0215c120 kind:arm_call to:0x01fff350 module:itcm from:0x0215c144 kind:load to:0x027e0ce4 module:dtcm -from:0x0215c14c kind:load to:0x020b3000 module:overlay(0) +from:0x0215c14c kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x0215c18c kind:arm_call_thumb to:0x01ffa184 module:itcm from:0x0215c1b8 kind:arm_call_thumb to:0x01ffa1a0 module:itcm from:0x0215c1cc kind:arm_call to:0x01ffa60c module:itcm @@ -1027,7 +1027,7 @@ from:0x0215d368 kind:load to:0x027e0ce0 module:dtcm from:0x0215d36c kind:load to:0x027e0cd8 module:dtcm from:0x0215d370 kind:load to:0x027e09b8 module:dtcm from:0x0215d374 kind:load to:0x027e0ce4 module:dtcm -from:0x0215d37c kind:load to:0x020b3000 module:overlay(0) +from:0x0215d37c kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x0215d380 kind:load to:0x020aae94 module:overlay(0) from:0x0215d3a0 kind:load to:0x020aaef4 module:overlay(0) from:0x0215d3a4 kind:load to:0x020aaef0 module:overlay(0) diff --git a/config/eur/arm9/overlays/ov080/relocs.txt b/config/eur/arm9/overlays/ov080/relocs.txt index 6123ce74..6d3b88c2 100644 --- a/config/eur/arm9/overlays/ov080/relocs.txt +++ b/config/eur/arm9/overlays/ov080/relocs.txt @@ -1063,7 +1063,7 @@ from:0x0215bfd8 kind:arm_call to:0x01fff350 module:itcm from:0x0215c004 kind:arm_call to:0x0215d0dc module:overlay(80) from:0x0215c014 kind:arm_call to:0x01fff350 module:itcm from:0x0215c030 kind:load to:0x027e0ce4 module:dtcm -from:0x0215c038 kind:load to:0x020b3000 module:overlay(0) +from:0x0215c038 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x0215c05c kind:arm_call to:0x020d961c module:overlay(31) from:0x0215c068 kind:arm_call to:0x01fff3b4 module:itcm from:0x0215c074 kind:arm_call to:0x020984d0 module:overlay(0) diff --git a/config/eur/arm9/overlays/ov081/relocs.txt b/config/eur/arm9/overlays/ov081/relocs.txt index 386a6f47..caaf9618 100644 --- a/config/eur/arm9/overlays/ov081/relocs.txt +++ b/config/eur/arm9/overlays/ov081/relocs.txt @@ -90,7 +90,7 @@ from:0x0215190c kind:arm_call to:0x01fff498 module:itcm from:0x02151918 kind:arm_call to:0x02152600 module:overlay(81) from:0x02151924 kind:arm_call to:0x02151128 module:overlay(81) from:0x02151930 kind:load to:0x027e0ce4 module:dtcm -from:0x02151938 kind:load to:0x020b3000 module:overlay(0) +from:0x02151938 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x0215193c kind:load to:0x027e0ce0 module:dtcm from:0x02151940 kind:load to:0x027e0ce8 module:dtcm from:0x0215197c kind:arm_call to:0x02150e6c module:overlay(81) diff --git a/config/eur/arm9/overlays/ov083/relocs.txt b/config/eur/arm9/overlays/ov083/relocs.txt index 82a20bf0..a1cd05ef 100644 --- a/config/eur/arm9/overlays/ov083/relocs.txt +++ b/config/eur/arm9/overlays/ov083/relocs.txt @@ -226,11 +226,11 @@ from:0x02154c04 kind:load to:0x0203e964 module:main from:0x02154c30 kind:arm_call to:0x01fff350 module:itcm from:0x02154c4c kind:arm_call to:0x0215bec4 module:overlay(83) from:0x02154c58 kind:load to:0x027e0ce4 module:dtcm -from:0x02154c60 kind:load to:0x020b3000 module:overlay(0) +from:0x02154c60 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x02154c8c kind:arm_call to:0x01fff350 module:itcm from:0x02154ca8 kind:arm_call to:0x0215bdec module:overlay(83) from:0x02154cb4 kind:load to:0x027e0ce4 module:dtcm -from:0x02154cbc kind:load to:0x020b3000 module:overlay(0) +from:0x02154cbc kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x02154ce8 kind:arm_call to:0x01ffaf74 module:itcm from:0x02154d14 kind:arm_call to:0x0209feac module:overlay(0) from:0x02154d30 kind:arm_call to:0x0209feac module:overlay(0) @@ -312,7 +312,7 @@ from:0x02155ab8 kind:load to:0x0215d8d8 module:overlay(83) from:0x02155abc kind:load to:0x027e09b8 module:dtcm from:0x02155ac0 kind:load to:0x020b51b8 module:overlay(0) from:0x02155ac4 kind:load to:0x027e0d34 module:dtcm -from:0x02155acc kind:load to:0x020b3000 module:overlay(0) +from:0x02155acc kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x02155ad0 kind:load to:0x027e0ce4 module:dtcm from:0x02155ad4 kind:load to:0x027e09ac module:dtcm from:0x02155b44 kind:arm_call to:0x020a7f44 module:overlay(0) @@ -390,7 +390,7 @@ from:0x02156600 kind:arm_call to:0x020726f0 module:overlay(0) from:0x02156614 kind:load to:0x027e09b8 module:dtcm from:0x02156618 kind:load to:0x020b51b8 module:overlay(0) from:0x0215661c kind:load to:0x027e0d34 module:dtcm -from:0x02156624 kind:load to:0x020b3000 module:overlay(0) +from:0x02156624 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x02156628 kind:load to:0x027e0ce4 module:dtcm from:0x0215662c kind:load to:0x027e09ac module:dtcm from:0x0215669c kind:arm_call to:0x020a7f44 module:overlay(0) diff --git a/config/eur/arm9/overlays/ov084/relocs.txt b/config/eur/arm9/overlays/ov084/relocs.txt index 866e0e8e..0a80e3da 100644 --- a/config/eur/arm9/overlays/ov084/relocs.txt +++ b/config/eur/arm9/overlays/ov084/relocs.txt @@ -248,7 +248,7 @@ from:0x021533e4 kind:load to:0x02162ab0 module:overlay(84) from:0x021533e8 kind:load to:0x027e09c0 module:dtcm from:0x02153418 kind:arm_call to:0x01fff350 module:itcm from:0x0215343c kind:load to:0x027e0ce4 module:dtcm -from:0x02153444 kind:load to:0x020b3000 module:overlay(0) +from:0x02153444 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x02153478 kind:arm_call to:0x01ffb428 module:itcm from:0x02153498 kind:arm_call to:0x020d99fc module:overlay(31) from:0x021534bc kind:arm_call to:0x02078230 module:overlay(0) @@ -336,7 +336,7 @@ from:0x02154190 kind:arm_call to:0x02160f84 module:overlay(84) from:0x021541c8 kind:arm_call to:0x020973f4 module:overlay(0) from:0x021541d8 kind:load to:0x027e0cd8 module:dtcm from:0x021541dc kind:load to:0x027e0ce4 module:dtcm -from:0x021541e0 kind:load to:0x020b3000 module:overlay(0) +from:0x021541e0 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x021541e8 kind:load to:0x02049be4 module:main from:0x021541ec kind:load to:0x020b539c module:overlay(0) from:0x02154218 kind:arm_call to:0x02154000 module:overlay(84) @@ -567,7 +567,7 @@ from:0x021566a0 kind:arm_call to:0x02159718 module:overlay(84) from:0x021566c0 kind:arm_call to:0x02096d00 module:overlay(0) from:0x02156754 kind:arm_call to:0x02155904 module:overlay(84) from:0x02156780 kind:load to:0x027e0ce4 module:dtcm -from:0x02156784 kind:load to:0x020b3000 module:overlay(0) +from:0x02156784 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x0215678c kind:load to:0x02049be4 module:main from:0x021567a8 kind:arm_call to:0x021556b8 module:overlay(84) from:0x021567e8 kind:arm_call to:0x02096d00 module:overlay(0) diff --git a/config/eur/arm9/overlays/ov087/relocs.txt b/config/eur/arm9/overlays/ov087/relocs.txt index 45edd79f..2ef3d8ee 100644 --- a/config/eur/arm9/overlays/ov087/relocs.txt +++ b/config/eur/arm9/overlays/ov087/relocs.txt @@ -474,7 +474,7 @@ from:0x02158e44 kind:arm_call to:0x020975f8 module:overlay(0) from:0x02158e8c kind:arm_call to:0x020973f4 module:overlay(0) from:0x02158ea0 kind:arm_call to:0x02150eb0 module:overlay(85) from:0x02158eac kind:load to:0x027e0ce4 module:dtcm -from:0x02158eb4 kind:load to:0x020b3000 module:overlay(0) +from:0x02158eb4 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x02158eb8 kind:load to:0x027e09bc module:dtcm from:0x02158ebc kind:load to:0x020b539c module:overlay(0) from:0x02158ee4 kind:arm_call to:0x020975f8 module:overlay(0) @@ -485,7 +485,7 @@ from:0x02158f60 kind:load to:0x02078b28 module:overlay(0) from:0x02158f98 kind:arm_call to:0x01fff350 module:itcm from:0x02158fe0 kind:arm_call to:0x01fff350 module:itcm from:0x02159000 kind:load to:0x027e0ce4 module:dtcm -from:0x02159008 kind:load to:0x020b3000 module:overlay(0) +from:0x02159008 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x021591d0 kind:load to:0x02049be4 module:main from:0x02159274 kind:arm_call to:0x01ffb6e4 module:itcm from:0x021592bc kind:arm_call to:0x01ffb6e4 module:itcm @@ -617,7 +617,7 @@ from:0x0215ae44 kind:arm_call to:0x02152d48 module:overlay(85) from:0x0215ae54 kind:arm_call to:0x01fff350 module:itcm from:0x0215ae70 kind:load to:0x027e09a8 module:dtcm from:0x0215ae78 kind:load to:0x027e0ce4 module:dtcm -from:0x0215ae80 kind:load to:0x020b3000 module:overlay(0) +from:0x0215ae80 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x0215aebc kind:arm_call to:0x02015080 module:main from:0x0215aedc kind:arm_call to:0x02071b30 module:overlay(0) from:0x0215af10 kind:arm_call to:0x02015080 module:main @@ -1035,7 +1035,7 @@ from:0x0215e50c kind:load to:0x02161f2c module:overlay(87) from:0x0215e510 kind:load to:0x0216267c module:overlay(87) from:0x0215e514 kind:load to:0x027e0cd8 module:dtcm from:0x0215e518 kind:load to:0x027e0ce4 module:dtcm -from:0x0215e520 kind:load to:0x020b3000 module:overlay(0) +from:0x0215e520 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x0215e524 kind:load to:0x027e0ce8 module:dtcm from:0x0215e52c kind:load to:0x020b34c4 module:overlay(0) from:0x0215e594 kind:arm_call to:0x020732ec module:overlay(0) diff --git a/config/eur/arm9/overlays/ov088/relocs.txt b/config/eur/arm9/overlays/ov088/relocs.txt index 5383e18b..7de75603 100644 --- a/config/eur/arm9/overlays/ov088/relocs.txt +++ b/config/eur/arm9/overlays/ov088/relocs.txt @@ -203,7 +203,7 @@ from:0x02166ed8 kind:load to:0x027e0994 module:dtcm from:0x02166edc kind:load to:0x02177218 module:overlay(88) from:0x02166ee0 kind:load to:0x027e09a8 module:dtcm from:0x02166ee4 kind:load to:0x027e0ce4 module:dtcm -from:0x02166eec kind:load to:0x020b3000 module:overlay(0) +from:0x02166eec kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x02166ef0 kind:load to:0x027e0ce8 module:dtcm from:0x02166ef8 kind:load to:0x020b34c4 module:overlay(0) from:0x02166efc kind:load to:0x027e0ce0 module:dtcm @@ -233,7 +233,7 @@ from:0x02167328 kind:load to:0x027e0ce4 module:dtcm from:0x02167334 kind:load to:0x020b539c module:overlay(0) from:0x02167338 kind:load to:0x02174228 module:overlay(88) from:0x02167344 kind:load to:0x027e09ac module:dtcm -from:0x02167354 kind:load to:0x020b3000 module:overlay(0) +from:0x02167354 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x02167380 kind:arm_call to:0x01fff3b4 module:itcm from:0x021673ac kind:load to:0x027e0ce4 module:dtcm from:0x021673c8 kind:arm_call to:0x01fff3b4 module:itcm diff --git a/config/eur/arm9/overlays/ov092/relocs.txt b/config/eur/arm9/overlays/ov092/relocs.txt index da768516..bf3b2745 100644 --- a/config/eur/arm9/overlays/ov092/relocs.txt +++ b/config/eur/arm9/overlays/ov092/relocs.txt @@ -518,7 +518,7 @@ from:0x021697ac kind:arm_call to:0x01fff350 module:itcm from:0x02169804 kind:arm_call to:0x01fff498 module:itcm from:0x02169840 kind:load to:0x027e09a4 module:dtcm from:0x02169844 kind:load to:0x027e0ce4 module:dtcm -from:0x0216984c kind:load to:0x020b3000 module:overlay(0) +from:0x0216984c kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x02169854 kind:load to:0x027e0ce8 module:dtcm from:0x02169990 kind:arm_call to:0x0216cf04 module:overlay(92) from:0x02169a1c kind:load to:0x0217d800 module:overlay(92) diff --git a/config/eur/arm9/overlays/ov092/symbols.txt b/config/eur/arm9/overlays/ov092/symbols.txt index 45f05046..f8f4059b 100644 --- a/config/eur/arm9/overlays/ov092/symbols.txt +++ b/config/eur/arm9/overlays/ov092/symbols.txt @@ -160,7 +160,7 @@ func_ov092_021688c8 kind:function(arm,size=0x2c) addr:0x021688c8 func_ov092_021688f4 kind:function(arm,size=0x2c) addr:0x021688f4 func_ov092_02168920 kind:function(arm,size=0xb4) addr:0x02168920 func_ov092_021689d4 kind:function(arm,size=0x14) addr:0x021689d4 -func_ov092_021689e8 kind:function(arm,size=0xac) addr:0x021689e8 +_ZN25UnkStruct_027e0ce0_40_14C19func_ov092_021689e8EiP21UnkStruct_027e0ce0_40P15PlayerLinkActorP25UnkStruct_027e0ce0_40_328 kind:function(arm,size=0xac) addr:0x021689e8 func_ov092_02168a94 kind:function(arm,size=0x28) addr:0x02168a94 func_ov092_02168abc kind:function(arm,size=0x118) addr:0x02168abc func_ov092_02168bd4 kind:function(arm,size=0x2c) addr:0x02168bd4 diff --git a/config/eur/arm9/overlays/ov093/relocs.txt b/config/eur/arm9/overlays/ov093/relocs.txt index f1eea31c..da6d3b37 100644 --- a/config/eur/arm9/overlays/ov093/relocs.txt +++ b/config/eur/arm9/overlays/ov093/relocs.txt @@ -1158,7 +1158,7 @@ from:0x02171960 kind:arm_call to:0x02171004 module:overlay(93) from:0x02171968 kind:load to:0x02177d3c module:overlay(93) from:0x02171a14 kind:arm_call to:0x01fff350 module:itcm from:0x02171a50 kind:load to:0x027e0ce4 module:dtcm -from:0x02171a58 kind:load to:0x020b3000 module:overlay(0) +from:0x02171a58 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x02171a94 kind:load to:0x02177d3c module:overlay(93) from:0x02171ae4 kind:arm_call to:0x02171004 module:overlay(93) from:0x02171b14 kind:arm_call to:0x0216f358 module:overlay(93) diff --git a/config/eur/arm9/overlays/ov093/symbols.txt b/config/eur/arm9/overlays/ov093/symbols.txt index 25193492..1a5ea578 100644 --- a/config/eur/arm9/overlays/ov093/symbols.txt +++ b/config/eur/arm9/overlays/ov093/symbols.txt @@ -85,7 +85,7 @@ _ZN19func_ov093_02168004D0Ev kind:function(arm,size=0x1c) addr:0x02168004 func_ov093_02168020 kind:function(arm,size=0xdc) addr:0x02168020 func_ov093_021680fc kind:function(arm,size=0xa8) addr:0x021680fc func_ov093_021681a4 kind:function(arm,size=0x7c) addr:0x021681a4 -func_ov093_02168220 kind:function(arm,size=0x38) addr:0x02168220 +_ZN21UnkStruct_027e0ce0_4019func_ov093_02168220Ev kind:function(arm,size=0x38) addr:0x02168220 func_ov093_02168258 kind:function(arm,size=0xb4) addr:0x02168258 func_ov093_0216830c kind:function(arm,size=0xfc) addr:0x0216830c func_ov093_02168408 kind:function(thumb,size=0x7c) addr:0x02168408 @@ -98,7 +98,7 @@ _ZN25UnkStruct_027e0ce0_40_14CD1Ev kind:function(thumb,size=0x2) addr:0x0216884c _ZN25UnkStruct_027e0ce0_40_14C19func_ov093_02168850Ev kind:function(thumb,size=0x14) addr:0x02168850 func_ov093_02168864 kind:function(arm,size=0x184) addr:0x02168864 func_ov093_021689e8 kind:function(arm,size=0x43c) addr:0x021689e8 -func_ov093_02168e24 kind:function(arm,size=0x6c) addr:0x02168e24 +_ZN25UnkStruct_027e0ce0_40_14C19func_ov093_02168e24Ei kind:function(arm,size=0x6c) addr:0x02168e24 func_ov093_02168e90 kind:function(thumb,size=0xa) addr:0x02168e90 func_ov093_02168e9c kind:function(arm,size=0x24) addr:0x02168e9c func_ov093_02168ec0 kind:function(arm,size=0x9c) addr:0x02168ec0 @@ -162,7 +162,7 @@ _ZN19func_ov093_0216ccbcD0Ev kind:function(arm,size=0x1c) addr:0x0216ccbc func_ov093_0216ccd8 kind:function(thumb,size=0x14) addr:0x0216ccd8 func_ov093_0216ccec kind:function(arm,size=0x94) addr:0x0216ccec func_ov093_0216cd80 kind:function(arm,size=0xa4) addr:0x0216cd80 -func_ov093_0216ce24 kind:function(arm,size=0x3c) addr:0x0216ce24 +_ZN15PlayerLinkActor19func_ov093_0216ce24EPi kind:function(arm,size=0x3c) addr:0x0216ce24 _ZN25UnkStruct_027e0ce0_40_328C1EPvP21UnkStruct_027e0ce0_40P25UnkStruct_027e0ce0_40_150Pj kind:function(thumb,size=0x1bc) addr:0x0216ce60 _ZN25UnkStruct_027e0ce0_40_328D1Ev kind:function(thumb,size=0xb6) addr:0x0216d01c _ZN25UnkStruct_027e0ce0_40_32819func_ov093_0216d0d4Ev kind:function(thumb,size=0x8c) addr:0x0216d0d4 @@ -173,13 +173,13 @@ func_ov093_0216d3fc kind:function(arm,size=0x30) addr:0x0216d3fc func_ov093_0216d42c kind:function(arm,size=0x14) addr:0x0216d42c func_ov093_0216d440 kind:function(arm,size=0xb4) addr:0x0216d440 func_ov093_0216d4f4 kind:function(arm,size=0xc4) addr:0x0216d4f4 -func_ov093_0216d5b8 kind:function(arm,size=0x830) addr:0x0216d5b8 +_ZN25UnkStruct_027e0ce0_40_32819func_ov093_0216d5b8Ei kind:function(arm,size=0x830) addr:0x0216d5b8 func_ov093_0216dde8 kind:function(arm,size=0x48) addr:0x0216dde8 -func_ov093_0216de30 kind:function(arm,size=0x98) addr:0x0216de30 -func_ov093_0216dec8 kind:function(arm,size=0x260) addr:0x0216dec8 +_ZN25UnkStruct_027e0ce0_40_32819func_ov093_0216de30Eii kind:function(arm,size=0x98) addr:0x0216de30 +_ZN25UnkStruct_027e0ce0_40_32819func_ov093_0216dec8Ei kind:function(arm,size=0x260) addr:0x0216dec8 func_ov093_0216e128 kind:function(arm,size=0x68) addr:0x0216e128 func_ov093_0216e190 kind:function(arm,size=0x14) addr:0x0216e190 -func_ov093_0216e1a4 kind:function(arm,size=0xfc) addr:0x0216e1a4 +_ZN25UnkStruct_027e0ce0_40_32819func_ov093_0216e1a4Ei kind:function(arm,size=0xfc) addr:0x0216e1a4 func_ov093_0216e2a0 kind:function(arm,size=0x18) addr:0x0216e2a0 func_ov093_0216e2b8 kind:function(arm,size=0x20) addr:0x0216e2b8 func_ov093_0216e2d8 kind:function(arm,size=0x20) addr:0x0216e2d8 @@ -218,7 +218,7 @@ func_ov093_0216f66c kind:function(thumb,size=0x10) addr:0x0216f66c func_ov093_0216f67c kind:function(thumb,size=0x10) addr:0x0216f67c func_ov093_0216f68c kind:function(thumb,size=0x7c) addr:0x0216f68c func_ov093_0216f708 kind:function(thumb,size=0x12) addr:0x0216f708 -func_ov093_0216f71c kind:function(thumb,size=0x50) addr:0x0216f71c +_ZN25UnkStruct_027e0ce0_40_32819func_ov093_0216f71cEPi kind:function(thumb,size=0x50) addr:0x0216f71c func_ov093_0216f76c kind:function(thumb,size=0xc) addr:0x0216f76c func_ov093_0216f778 kind:function(arm,size=0x78) addr:0x0216f778 func_ov093_0216f7f0 kind:function(arm,size=0x7c) addr:0x0216f7f0 diff --git a/config/eur/arm9/overlays/ov094/relocs.txt b/config/eur/arm9/overlays/ov094/relocs.txt index ab51ca88..595ead6b 100644 --- a/config/eur/arm9/overlays/ov094/relocs.txt +++ b/config/eur/arm9/overlays/ov094/relocs.txt @@ -752,7 +752,7 @@ from:0x0216be1c kind:load to:0x02049be4 module:main from:0x0216be20 kind:load to:0x020b539c module:overlay(0) from:0x0216be28 kind:load to:0x02178aa0 module:overlay(94) from:0x0216be2c kind:load to:0x027e0ce4 module:dtcm -from:0x0216be30 kind:load to:0x020b3000 module:overlay(0) +from:0x0216be30 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x0216be34 kind:load to:0x0203e964 module:main from:0x0216bf14 kind:arm_call to:0x02058fc4 module:overlay(0) from:0x0216bf3c kind:arm_call to:0x01ffc634 module:itcm @@ -1080,7 +1080,7 @@ from:0x0216ef04 kind:load to:0x020b539c module:overlay(0) from:0x0216ef38 kind:arm_call to:0x01fff350 module:itcm from:0x0216ef58 kind:arm_call to:0x0216f250 module:overlay(94) from:0x0216ef64 kind:load to:0x027e0ce4 module:dtcm -from:0x0216ef6c kind:load to:0x020b3000 module:overlay(0) +from:0x0216ef6c kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x0216ef7c kind:arm_call to:0x02098388 module:overlay(0) from:0x0216efd4 kind:arm_call_thumb to:0x02057b70 module:overlay(0) from:0x0216f010 kind:arm_call to:0x0203d160 module:main diff --git a/config/eur/arm9/overlays/ov095/relocs.txt b/config/eur/arm9/overlays/ov095/relocs.txt index 61955733..3b1e5d22 100644 --- a/config/eur/arm9/overlays/ov095/relocs.txt +++ b/config/eur/arm9/overlays/ov095/relocs.txt @@ -96,7 +96,7 @@ from:0x0217a544 kind:thumb_call to:0x0217a5c4 module:overlay(95) from:0x0217a54c kind:thumb_call_arm to:0x021540ac module:overlay(71) from:0x0217a556 kind:thumb_call to:0x020bba6c module:overlay(1) from:0x0217a57a kind:thumb_call to:0x0217a3cc module:overlay(95) -from:0x0217a584 kind:load to:0x020b3000 module:overlay(0) +from:0x0217a584 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x0217a58c kind:load to:0x027e0ce4 module:dtcm from:0x0217a590 kind:load to:0x027e0ce0 module:dtcm from:0x0217a5c0 kind:load to:0x027e09b8 module:dtcm @@ -514,7 +514,7 @@ from:0x0217d888 kind:arm_call to:0x021244ec module:overlay(45) from:0x0217d898 kind:arm_call to:0x0208cf20 module:overlay(0) from:0x0217d8a4 kind:load to:0x027e09a8 module:dtcm from:0x0217d8ac kind:load to:0x027e0ce4 module:dtcm -from:0x0217d8bc kind:load to:0x020b3000 module:overlay(0) +from:0x0217d8bc kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x0217d8c0 kind:load to:0x02177d0c module:overlays(89,90,91,93,94) from:0x0217d904 kind:arm_call to:0x01fff3b4 module:itcm from:0x0217d910 kind:arm_call to:0x01fff458 module:itcm diff --git a/config/eur/arm9/overlays/ov096/relocs.txt b/config/eur/arm9/overlays/ov096/relocs.txt index f5e6a789..0e788047 100644 --- a/config/eur/arm9/overlays/ov096/relocs.txt +++ b/config/eur/arm9/overlays/ov096/relocs.txt @@ -1,7 +1,7 @@ from:0x02179b4c kind:arm_call to:0x01fff350 module:itcm from:0x02179b68 kind:arm_call to:0x0217ad08 module:overlay(96) from:0x02179bb0 kind:load to:0x027e0ce4 module:dtcm -from:0x02179bb8 kind:load to:0x020b3000 module:overlay(0) +from:0x02179bb8 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x02179bd4 kind:load to:0x027e0cd8 module:dtcm from:0x02179bd8 kind:load to:0x02081e30 module:overlay(0) from:0x02179bf2 kind:thumb_call_arm to:0x02081d7c module:overlay(0) @@ -20,7 +20,7 @@ from:0x02179d24 kind:thumb_call_arm to:0x0206c9a8 module:overlay(0) from:0x02179d36 kind:thumb_call_arm to:0x02070560 module:overlay(0) from:0x02179d4e kind:thumb_call_arm to:0x0206d180 module:overlay(0) from:0x02179d58 kind:load to:0x027e09a4 module:dtcm -from:0x02179d5c kind:load to:0x020b3000 module:overlay(0) +from:0x02179d5c kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x02179d64 kind:load to:0x027e0ce4 module:dtcm from:0x02179d68 kind:load to:0x020b51b8 module:overlay(0) from:0x02179dc8 kind:arm_call_thumb to:0x02179c08 module:overlay(96) diff --git a/config/eur/arm9/overlays/ov101/relocs.txt b/config/eur/arm9/overlays/ov101/relocs.txt index f8160c1d..88f248e7 100644 --- a/config/eur/arm9/overlays/ov101/relocs.txt +++ b/config/eur/arm9/overlays/ov101/relocs.txt @@ -79,7 +79,7 @@ from:0x021831b4 kind:thumb_call to:0x020bcbd0 module:overlay(1) from:0x0218325e kind:thumb_call to:0x0216d1cc module:overlay(93) from:0x02183272 kind:thumb_call to:0x020bbf7c module:overlay(1) from:0x021832ac kind:thumb_call_arm to:0x01fff350 module:itcm -from:0x021832cc kind:load to:0x020b3000 module:overlay(0) +from:0x021832cc kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x021832d0 kind:load to:0x027e0ce4 module:dtcm from:0x021832dc kind:thumb_call to:0x020b6d58 module:overlay(1) from:0x021832f2 kind:thumb_call_arm to:0x02011ff4 module:main diff --git a/config/eur/arm9/overlays/ov101/symbols.txt b/config/eur/arm9/overlays/ov101/symbols.txt index 54d14fb5..c9cb35bd 100644 --- a/config/eur/arm9/overlays/ov101/symbols.txt +++ b/config/eur/arm9/overlays/ov101/symbols.txt @@ -14,7 +14,7 @@ _ZN21UnkStruct_027e0ce0_40D1Ev kind:function(thumb,size=0x54) addr:0x02182f60 _ZN21UnkStruct_027e0ce0_4019func_ov101_02182fb4Eb kind:function(thumb,size=0x50) addr:0x02182fb4 _ZN21UnkStruct_027e0ce0_4019func_ov101_02183004Ev kind:function(thumb,size=0x1e) addr:0x02183004 _ZN21UnkStruct_027e0ce0_4019func_ov101_02183024EPK24UnkStruct_ov001_020c40f4S2_iiP11ItemManagerP21UnkStruct_027e0ce0_30bb kind:function(thumb,size=0x260) addr:0x02183024 -_ZN21PlayerLinkActor_A0_1CC1Ei kind:function(thumb,size=0xc) addr:0x02183284 +_ZN21PlayerLinkActor_A0_1CC1EP21UnkStruct_027e0ce0_40 kind:function(thumb,size=0xc) addr:0x02183284 _ZN21PlayerLinkActor_A0_1C19func_ov101_02183290Ev kind:function(thumb,size=0x48) addr:0x02183290 _ZN30UnkStruct_027e09a4_54_Derived1C2EPi kind:function(thumb,size=0x50) addr:0x021832d8 _ZN30UnkStruct_027e09a4_54_Derived18vfunc_0CEv kind:function(thumb,size=0x134) addr:0x02183328 diff --git a/config/eur/arm9/overlays/ov102/delinks.txt b/config/eur/arm9/overlays/ov102/delinks.txt index 53ff4c88..e19f4369 100644 --- a/config/eur/arm9/overlays/ov102/delinks.txt +++ b/config/eur/arm9/overlays/ov102/delinks.txt @@ -4,3 +4,26 @@ .ctor start:0x02184974 end:0x02184978 kind:rodata align:4 .data start:0x02184980 end:0x02184a40 kind:data align:32 .bss start:0x02184a40 end:0x02184a40 kind:bss align:32 + +src/102_CourseExecLand/UnkStruct_027e0ce0_40_102.cpp: + .text start:0x02182c20 end:0x021835c4 + +src/102_CourseExecLand/MapObjectUnkSAND_102.cpp: + complete + .text start:0x021835c4 end:0x02183c14 + .rodata start:0x021848b0 end:0x02184950 + +src/102_CourseExecLand/MapObjectUnkPTFL_102.cpp: + .text start:0x02183c14 end:0x021845c8 + .data start:0x02184980 end:0x02184a10 + +src/102_CourseExecLand/UnkStruct_027e0cd8_0C_102.cpp: + complete + .text start:0x021845c8 end:0x02184644 + +src/102_CourseExecLand/ActorUnkMLCK_102.cpp: + complete + .text start:0x02184644 end:0x021848b0 + .init start:0x02184950 end:0x02184974 + .ctor start:0x02184974 end:0x02184978 + .data start:0x02184a10 end:0x02184a40 diff --git a/config/eur/arm9/overlays/ov102/relocs.txt b/config/eur/arm9/overlays/ov102/relocs.txt index 27fa9198..223d23c3 100644 --- a/config/eur/arm9/overlays/ov102/relocs.txt +++ b/config/eur/arm9/overlays/ov102/relocs.txt @@ -156,7 +156,7 @@ from:0x02184784 kind:arm_call to:0x020732fc module:overlay(0) from:0x021847b4 kind:load to:0x020d86b0 module:overlay(24) from:0x021847b8 kind:load to:0x027e0cf0 module:dtcm from:0x021847bc kind:load to:0x027e0ce4 module:dtcm -from:0x021847c0 kind:load to:0x02184a24 module:overlay(102) +from:0x021847c0 kind:load to:0x02184a1c add:0x8 module:overlay(102) from:0x021847c8 kind:load to:0x020b51b8 module:overlay(0) from:0x021847cc kind:load to:0x020b51c8 module:overlay(0) from:0x021847d0 kind:load to:0x027e09b8 module:dtcm diff --git a/config/eur/arm9/overlays/ov102/symbols.txt b/config/eur/arm9/overlays/ov102/symbols.txt index e026bbb9..7534097e 100644 --- a/config/eur/arm9/overlays/ov102/symbols.txt +++ b/config/eur/arm9/overlays/ov102/symbols.txt @@ -1,39 +1,39 @@ -func_ov102_02182c20 kind:function(arm,size=0x64) addr:0x02182c20 -func_ov102_02182c84 kind:function(arm,size=0x1d0) addr:0x02182c84 -func_ov102_02182e54 kind:function(arm,size=0x154) addr:0x02182e54 -func_ov102_02182fa8 kind:function(arm,size=0x54) addr:0x02182fa8 -func_ov102_02182ffc kind:function(arm,size=0x40) addr:0x02182ffc -func_ov102_0218303c kind:function(arm,size=0x144) addr:0x0218303c -func_ov102_02183180 kind:function(arm,size=0x34) addr:0x02183180 -func_ov102_021831b4 kind:function(arm,size=0x3c) addr:0x021831b4 -func_ov102_021831f0 kind:function(arm,size=0x4c) addr:0x021831f0 -func_ov102_0218323c kind:function(arm,size=0x1d8) addr:0x0218323c -func_ov102_02183414 kind:function(arm,size=0x1b0) addr:0x02183414 -func_ov102_021835c4 kind:function(arm,size=0x1e4) addr:0x021835c4 -func_ov102_021837a8 kind:function(arm,size=0x1c0) addr:0x021837a8 -func_ov102_02183968 kind:function(arm,size=0x1c0) addr:0x02183968 -func_ov102_02183b28 kind:function(arm,size=0x48) addr:0x02183b28 -func_ov102_02183b70 kind:function(arm,size=0xa4) addr:0x02183b70 -func_ov102_02183c14 kind:function(arm,size=0x58) addr:0x02183c14 -func_ov102_02183c6c kind:function(arm,size=0x28) addr:0x02183c6c -func_ov102_02183c94 kind:function(arm,size=0x110) addr:0x02183c94 -func_ov102_02183da4 kind:function(arm,size=0x44) addr:0x02183da4 -func_ov102_02183de8 kind:function(arm,size=0x180) addr:0x02183de8 -func_ov102_02183f68 kind:function(arm,size=0x14) addr:0x02183f68 -func_ov102_02183f7c kind:function(arm,size=0x220) addr:0x02183f7c -func_ov102_0218419c kind:function(arm,size=0x218) addr:0x0218419c -func_ov102_021843b4 kind:function(arm,size=0x214) addr:0x021843b4 -func_ov102_021845c8 kind:function(arm,size=0x60) addr:0x021845c8 -func_ov102_02184628 kind:function(arm,size=0x1c) addr:0x02184628 -_ZN20Actor_ov102_021849508vfunc_20Ev kind:function(arm,size=0x190) addr:0x02184644 -_ZN20Actor_ov102_021849508vfunc_24Ev kind:function(arm,size=0x14) addr:0x021847d4 -func_ov102_021847e8 kind:function(arm,size=0x78) addr:0x021847e8 -func_ov102_02184860 kind:function(arm,size=0x50) addr:0x02184860 -data_ov102_021848b0 kind:data(any) addr:0x021848b0 -data_ov102_021848f0 kind:data(any) addr:0x021848f0 -__sinit_ov102_02184950 kind:function(arm,size=0x24) addr:0x02184950 -.p__sinit_ov102_02184950 kind:data(word) addr:0x02184974 -data_ov102_02184980 kind:data(any) addr:0x02184980 -data_ov102_021849a8 kind:data(any) addr:0x021849a8 -data_ov102_02184a10 kind:data(any) addr:0x02184a10 -data_ov102_02184a24 kind:data(any) addr:0x02184a24 +_ZN18PlayerActorBase_7419func_ov102_02182c20EiP7Mat4x3p kind:function(arm,size=0x64) addr:0x02182c20 +_ZN18PlayerActorBase_7419func_ov102_02182c84Ebi14UnkAngleStructP7Mat4x3pS2_ kind:function(arm,size=0x1d0) addr:0x02182c84 +_ZN25UnkStruct_027e0ce0_40_10819func_ov102_02182e54Eiii kind:function(arm,size=0x154) addr:0x02182e54 +_ZN24UnkStruct_ItemManager_2019func_ov102_02182fa8Eii kind:function(arm,size=0x54) addr:0x02182fa8 +_ZN24UnkStruct_ItemManager_2019func_ov102_02182ffcEi kind:function(arm,size=0x40) addr:0x02182ffc +_ZN21UnkStruct_027e0ce0_4019func_ov102_0218303cEiP11ItemManager kind:function(arm,size=0x144) addr:0x0218303c +_ZN21UnkStruct_027e0ce0_4019func_ov102_02183180Eib kind:function(arm,size=0x34) addr:0x02183180 +_ZN21UnkStruct_027e0ce0_4019func_ov102_021831b4Ei kind:function(arm,size=0x3c) addr:0x021831b4 +_ZN21UnkStruct_027e0ce0_4019func_ov102_021831f0Ei kind:function(arm,size=0x4c) addr:0x021831f0 +_ZN29UnkStruct_027e0ce0_40_Base_7419func_ov102_0218323cEP29UnkStruct_027e0ce0_40_Base_14i kind:function(arm,size=0x1d8) addr:0x0218323c +_Z19func_ov102_02183414PsP21PlayerLinkActor_A0_1CbP7VecFx3214UnkAngleStructi kind:function(arm,size=0x1b0) addr:0x02183414 +_ZN19MapObjectUnkSAND_4019func_ov102_021835c4EP7VecFx32 kind:function(arm,size=0x1e4) addr:0x021835c4 +_ZN19MapObjectUnkSAND_4019func_ov102_021837a8E8Vec2bCppP7VecFx32 kind:function(arm,size=0x1c0) addr:0x021837a8 +_ZN16MapObjectUnkSAND8vfunc_08Ev kind:function(arm,size=0x1c0) addr:0x02183968 +_ZN16MapObjectUnkSAND8vfunc_0CEv kind:function(arm,size=0x48) addr:0x02183b28 +_ZN16MapObjectUnkSAND8vfunc_14Ev kind:function(arm,size=0xa4) addr:0x02183b70 +_Z19func_ov102_02183c14i kind:function(arm,size=0x58) addr:0x02183c14 +_Z19func_ov102_02183c6ci kind:function(arm,size=0x28) addr:0x02183c6c +_Z19func_ov102_02183c94iiiiitttti kind:function(arm,size=0x110) addr:0x02183c94 +_Z19func_ov102_02183da4iiiiitttti kind:function(arm,size=0x44) addr:0x02183da4 +_ZN16MapObjectUnkPTFL8vfunc_08Ev kind:function(arm,size=0x180) addr:0x02183de8 +_ZN16MapObjectUnkPTFL8vfunc_0CEv kind:function(arm,size=0x14) addr:0x02183f68 +_ZN16MapObjectUnkPTFL8vfunc_14Ev kind:function(arm,size=0x220) addr:0x02183f7c +_ZN16MapObjectUnkPTFL19func_ov102_0218419cEv kind:function(arm,size=0x218) addr:0x0218419c +_ZN16MapObjectUnkPTFL19func_ov102_021843b4Ev kind:function(arm,size=0x214) addr:0x021843b4 +_ZN21UnkStruct_027e0cd8_0C8vfunc_0CEv kind:function(arm,size=0x60) addr:0x021845c8 +_ZN21UnkStruct_027e0cd8_0C19func_ov102_02184628Ev kind:function(arm,size=0x1c) addr:0x02184628 +_ZN12ActorUnkMLCK8vfunc_20Ev kind:function(arm,size=0x190) addr:0x02184644 +_ZN12ActorUnkMLCK8vfunc_24Ev kind:function(arm,size=0x14) addr:0x021847d4 +_ZN15ActorUnkMLCK_C419func_ov102_021847e8Eii kind:function(arm,size=0x78) addr:0x021847e8 +_ZN24UnkStruct_ov102_02184a248vfunc_00EP5Actor kind:function(arm,size=0x50) addr:0x02184860 +data_ov102_021848b0 kind:data(any) addr:0x021848b0 local +data_ov102_021848f0 kind:data(any) addr:0x021848f0 local +__sinit_ActorUnkMLCK_102.cpp kind:function(arm,size=0x24) addr:0x02184950 local +.p__sinit_ActorUnkMLCK_102.cpp kind:data(word) addr:0x02184974 local +data_ov102_02184980 kind:data(any) addr:0x02184980 local +data_ov102_021849a8 kind:data(any) addr:0x021849a8 local +data_ov102_02184a10 kind:data(any) addr:0x02184a10 local +_ZTV24UnkStruct_ov102_02184a24 kind:data(byte[12]) addr:0x02184a1c diff --git a/config/eur/arm9/overlays/ov105/relocs.txt b/config/eur/arm9/overlays/ov105/relocs.txt index 114a0dcd..10f463d9 100644 --- a/config/eur/arm9/overlays/ov105/relocs.txt +++ b/config/eur/arm9/overlays/ov105/relocs.txt @@ -280,7 +280,7 @@ from:0x02186b74 kind:arm_call to:0x02185388 module:overlay(105) from:0x02186be0 kind:arm_call to:0x02082adc module:overlay(0) from:0x02186c40 kind:load to:0x027e09bc module:dtcm from:0x02186c44 kind:load to:0x027e0ce4 module:dtcm -from:0x02186c4c kind:load to:0x020b3000 module:overlay(0) +from:0x02186c4c kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x02186c50 kind:load to:0x0218a1b0 module:overlay(105) from:0x02186c54 kind:load to:0x0218a1ac module:overlay(105) from:0x02186c58 kind:load to:0x027e09b8 module:dtcm @@ -430,7 +430,7 @@ from:0x02188328 kind:arm_call to:0x021878fc module:overlay(105) from:0x02188348 kind:arm_call to:0x01fff350 module:itcm from:0x02188384 kind:load to:0x027e0ce4 module:dtcm from:0x02188388 kind:load to:0x027e09bc module:dtcm -from:0x02188390 kind:load to:0x020b3000 module:overlay(0) +from:0x02188390 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x02188394 kind:load to:0x0218a2d8 module:overlay(105) from:0x02188398 kind:load to:0x0218a1bc module:overlay(105) from:0x021883a0 kind:load to:0x0203e964 module:main @@ -455,7 +455,7 @@ from:0x02188628 kind:load to:0x0218a1a8 module:overlay(105) from:0x0218862c kind:load to:0x0218a1a4 module:overlay(105) from:0x02188630 kind:load to:0x0218a1a0 module:overlay(105) from:0x02188634 kind:load to:0x027e0ce4 module:dtcm -from:0x0218863c kind:load to:0x020b3000 module:overlay(0) +from:0x0218863c kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x02188640 kind:load to:0x0218a140 module:overlay(105) from:0x02188644 kind:load to:0x0218a194 module:overlay(105) from:0x02188648 kind:load to:0x0218a198 module:overlay(105) @@ -601,7 +601,7 @@ from:0x02189d9c kind:arm_call to:0x020f5b94 module:overlay(31) from:0x02189da4 kind:arm_call to:0x020f4320 module:overlay(31) from:0x02189db4 kind:load to:0x021108f8 module:overlay(31) from:0x02189dc0 kind:load to:0x027e0ce4 module:dtcm -from:0x02189dc8 kind:load to:0x020b3000 module:overlay(0) +from:0x02189dc8 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x02189dcc kind:load to:0x0211093c module:overlay(31) from:0x02189dd8 kind:load to:0x0203e964 module:main from:0x02189de0 kind:load to:0x027e0ce0 module:dtcm diff --git a/config/eur/arm9/overlays/ov107/relocs.txt b/config/eur/arm9/overlays/ov107/relocs.txt index ebc3bbe0..8e81f985 100644 --- a/config/eur/arm9/overlays/ov107/relocs.txt +++ b/config/eur/arm9/overlays/ov107/relocs.txt @@ -166,7 +166,7 @@ from:0x02185fec kind:arm_call to:0x020907c4 module:overlay(0) from:0x02185ff4 kind:load to:0x027e0cdc module:dtcm from:0x02186020 kind:arm_call to:0x01fff350 module:itcm from:0x02186040 kind:load to:0x027e0ce4 module:dtcm -from:0x02186048 kind:load to:0x020b3000 module:overlay(0) +from:0x02186048 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x02186068 kind:load to:0x0210b17c module:overlay(31) from:0x02186074 kind:arm_call to:0x0209cfe0 module:overlay(0) from:0x0218608c kind:arm_call to:0x0218604c module:overlay(107) diff --git a/config/eur/arm9/overlays/ov112/relocs.txt b/config/eur/arm9/overlays/ov112/relocs.txt index 68d3ec5f..e1670fb8 100644 --- a/config/eur/arm9/overlays/ov112/relocs.txt +++ b/config/eur/arm9/overlays/ov112/relocs.txt @@ -45,7 +45,7 @@ from:0x02185730 kind:load to:0x0203f964 module:main from:0x02185734 kind:load to:0x027e0ce8 module:dtcm from:0x02185744 kind:load to:0x027e0ce4 module:dtcm from:0x02185760 kind:load to:0x027e09a4 module:dtcm -from:0x02185768 kind:load to:0x020b3000 module:overlay(0) +from:0x02185768 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x0218576c kind:load to:0x027e09b8 module:dtcm from:0x021857c4 kind:arm_call to:0x0208fdd4 module:overlay(0) from:0x021857d8 kind:arm_call to:0x020921e4 module:overlay(0) diff --git a/config/eur/arm9/relocs.txt b/config/eur/arm9/relocs.txt index 3fb61abd..cd7af2c4 100644 --- a/config/eur/arm9/relocs.txt +++ b/config/eur/arm9/relocs.txt @@ -2093,7 +2093,7 @@ from:0x02017020 kind:arm_call to:0x01fff350 module:itcm from:0x02017054 kind:arm_call to:0x01ffb9cc module:itcm from:0x0201707c kind:arm_call to:0x01fff350 module:itcm from:0x020170a4 kind:load to:0x027e0ce4 module:dtcm -from:0x020170a8 kind:load to:0x020b3000 module:overlay(0) +from:0x020170a8 kind:load to:0x020b2ff8 add:0x8 module:overlay(0) from:0x020170cc kind:arm_call to:0x01fff520 module:itcm from:0x020170f0 kind:arm_call to:0x01ffb9cc module:itcm from:0x0201711c kind:arm_call to:0x01ffb9cc module:itcm diff --git a/config/eur/arm9/symbols.txt b/config/eur/arm9/symbols.txt index 66b12dfb..0ecc1c75 100644 --- a/config/eur/arm9/symbols.txt +++ b/config/eur/arm9/symbols.txt @@ -145,7 +145,7 @@ func_02002e78 kind:function(arm,size=0x20) addr:0x02002e78 func_02002e98 kind:function(arm,size=0x20) addr:0x02002e98 func_02002eb8 kind:function(arm,size=0x20) addr:0x02002eb8 NNS_Snd_func_0206617c kind:function(arm,size=0x2c) addr:0x02002ed8 -func_02002f04 kind:function(arm,size=0x28) addr:0x02002f04 +_ZN24UnkStruct_ov000_020b51c013func_02002f04Ev kind:function(arm,size=0x28) addr:0x02002f04 func_02002f2c kind:function(arm,size=0x28) addr:0x02002f2c func_02002f54 kind:function(arm,size=0x48) addr:0x02002f54 func_02002f9c kind:function(arm,size=0x28) addr:0x02002f9c diff --git a/config/eur1/arm9/itcm/symbols.txt b/config/eur1/arm9/itcm/symbols.txt index b7b72329..2fd37aa2 100644 --- a/config/eur1/arm9/itcm/symbols.txt +++ b/config/eur1/arm9/itcm/symbols.txt @@ -128,7 +128,7 @@ func_01ffc520 kind:function(arm,size=0x5c) addr:0x01ffc520 _ZN11ModelRender8vfunc_0CEv kind:function(arm,size=0x24) addr:0x01ffc57c func_01ffc5a0 kind:function(arm,size=0x94) addr:0x01ffc5a0 _ZN15ModelRenderBase13func_01ffc634EP7VecFx3214UnkAngleStructS1_ kind:function(arm,size=0xa0) addr:0x01ffc634 -_ZN19UnkSystem6_Derived213func_01ffc6d4E14UnkAngleStructP7VecFx32 kind:function(arm,size=0x70) addr:0x01ffc6d4 +_ZN15ModelRenderBase13func_01ffc6d4E14UnkAngleStructP7VecFx32 kind:function(arm,size=0x70) addr:0x01ffc6d4 func_01ffc744 kind:function(arm,size=0x24) addr:0x01ffc744 _ZN24UnkStruct_ov000_020b4ec413func_01ffc768Ei kind:function(arm,size=0x3c) addr:0x01ffc768 _ZN20ModelRender_Derived18vfunc_1CEP19UnkSystem4_vfunc_1C kind:function(arm,size=0xb4) addr:0x01ffc7a4 @@ -157,7 +157,7 @@ _ZN18UnkStruct_027e09a46IsLandEv kind:function(arm,size=0x28) addr:0x01ffd3b0 _ZN18UnkStruct_027e09a47IsTrainEv kind:function(arm,size=0x28) addr:0x01ffd3d8 _ZNK18UnkStruct_027e09a421GetCurrentCourseEntryEv kind:function(arm,size=0x20) addr:0x01ffd400 _ZN18UnkStruct_027e09b813func_01ffd420Ev kind:function(arm,size=0x1c) addr:0x01ffd420 -func_01ffd43c kind:function(arm,size=0x60) addr:0x01ffd43c +_ZN21UnkStruct_027e09bc_0C13func_01ffd43cEP5Vec2sii kind:function(arm,size=0x60) addr:0x01ffd43c func_01ffd49c kind:function(arm,size=0x1a4) addr:0x01ffd49c _ZN21UnkStruct_027e09bc_0C13func_01ffd640EP7VecFx32 kind:function(arm,size=0x128) addr:0x01ffd640 func_01ffd768 kind:function(arm,size=0x138) addr:0x01ffd768 @@ -199,7 +199,7 @@ func_01fff280 kind:function(arm,size=0x28) addr:0x01fff280 func_01fff2a8 kind:function(arm,size=0x24) addr:0x01fff2a8 func_01fff2cc kind:function(arm,size=0x30) addr:0x01fff2cc func_01fff2fc kind:function(arm,size=0x54) addr:0x01fff2fc -_ZN12ActorManager13func_01fff350EPvPP5Actor kind:function(arm,size=0x64) addr:0x01fff350 +_ZN12ActorManager13func_01fff350EP29UnkStruct_ov000_020b3000_BasePP5Actor kind:function(arm,size=0x64) addr:0x01fff350 _ZN12ActorManager13func_01fff3b4E8ActorRef kind:function(arm,size=0x8c) addr:0x01fff3b4 func_01fff440 kind:function(arm,size=0x18) addr:0x01fff440 _ZN5Actor10GetActorIdEv kind:function(arm,size=0xc) addr:0x01fff458 diff --git a/config/eur1/arm9/overlays/ov000/relocs.txt b/config/eur1/arm9/overlays/ov000/relocs.txt index 5b27f6ba..aca67e69 100644 --- a/config/eur1/arm9/overlays/ov000/relocs.txt +++ b/config/eur1/arm9/overlays/ov000/relocs.txt @@ -3438,7 +3438,7 @@ from:0x020756bc kind:load to:0x027e0d3c module:dtcm from:0x020756c0 kind:load to:0x027e0ce0 module:dtcm from:0x020756c4 kind:load to:0x020b240c module:overlay(0) from:0x020756c8 kind:load to:0x027e0ce4 module:dtcm -from:0x020756cc kind:load to:0x020b3040 module:overlay(0) +from:0x020756cc kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x020756dc kind:arm_call to:0x020752e8 module:overlay(0) from:0x020756f8 kind:arm_call to:0x02075438 module:overlay(0) from:0x02075714 kind:arm_call to:0x01fff3b4 module:itcm @@ -3842,7 +3842,7 @@ from:0x02079908 kind:load to:0x027e0cdc module:dtcm from:0x0207990c kind:load to:0x020b25f0 module:overlay(0) from:0x02079910 kind:load to:0x027e09a4 module:dtcm from:0x02079914 kind:load to:0x027e0ce4 module:dtcm -from:0x0207991c kind:load to:0x020b3040 module:overlay(0) +from:0x0207991c kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x02079958 kind:load to:0x020b25f0 module:overlay(0) from:0x020799a8 kind:arm_call to:0x02082a3c module:overlay(0) from:0x02079a00 kind:arm_call to:0x01ffb714 module:itcm @@ -3978,7 +3978,7 @@ from:0x0207b400 kind:arm_call to:0x02077914 module:overlay(0) from:0x0207b434 kind:load to:0x027e0ce0 module:dtcm from:0x0207b438 kind:load to:0x027e09a4 module:dtcm from:0x0207b440 kind:load to:0x027e0ce4 module:dtcm -from:0x0207b448 kind:load to:0x020b3040 module:overlay(0) +from:0x0207b448 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x0207b458 kind:load to:0x027e09bc module:dtcm from:0x0207b464 kind:arm_call to:0x0207933c module:overlay(0) from:0x0207b478 kind:arm_call to:0x0207933c module:overlay(0) diff --git a/config/eur1/arm9/overlays/ov000/symbols.txt b/config/eur1/arm9/overlays/ov000/symbols.txt index ee0017ba..20d818f2 100644 --- a/config/eur1/arm9/overlays/ov000/symbols.txt +++ b/config/eur1/arm9/overlays/ov000/symbols.txt @@ -456,7 +456,7 @@ _ZN23TitleScreenManager_Base8vfunc_44Ev kind:function(arm,size=0x4) addr:0x02061 func_ov000_02061040 kind:function(arm,size=0x44) addr:0x02061040 func_ov000_02061084 kind:function(arm,size=0x14) addr:0x02061084 _ZN18UnkStruct_0204a08819func_ov000_02061098Ev kind:function(arm,size=0x144) addr:0x02061098 -_ZN18UnkStruct_0204a08819func_ov000_020611dcEPvi kind:function(arm,size=0x20) addr:0x020611dc +_ZN18UnkStruct_0204a08819func_ov000_020611dcEP29FileSelectManager_UnkDrawBasei kind:function(arm,size=0x20) addr:0x020611dc _ZN18UnkStruct_0204a08819func_ov000_020611fcEi kind:function(arm,size=0x28) addr:0x020611fc _ZN18UnkStruct_0204a08819func_ov000_02061224Ev kind:function(arm,size=0xc) addr:0x02061224 _ZN18UnkStruct_0204a08819func_ov000_02061230Ev kind:function(arm,size=0xc) addr:0x02061230 @@ -469,14 +469,14 @@ _ZN29FileSelectManager_UnkDrawBaseC1Ev kind:function(arm,size=0x24) addr:0x02061 _ZN29FileSelectManager_UnkDrawBaseD1Ev kind:function(arm,size=0x18) addr:0x02061690 _ZN29FileSelectManager_UnkDrawBaseD0Ev kind:function(arm,size=0x20) addr:0x020616a8 _ZN29FileSelectManager_UnkDrawBaseD2Ev kind:function(arm,size=0x18) addr:0x020616c8 -_ZN29FileSelectManager_UnkDrawBase8vfunc_08Ei kind:function(arm,size=0x4) addr:0x020616e0 -_ZN29FileSelectManager_UnkDrawBase8vfunc_0CEi kind:function(arm,size=0x4) addr:0x020616e4 -_ZN29FileSelectManager_UnkDrawBase8vfunc_10Eii kind:function(arm,size=0x4) addr:0x020616e8 -_ZN29FileSelectManager_UnkDrawBase8vfunc_14Ei kind:function(arm,size=0x4) addr:0x020616ec -_ZN29FileSelectManager_UnkDrawBase8vfunc_18Ei kind:function(arm,size=0x4) addr:0x020616f0 -_ZN29FileSelectManager_UnkDrawBase8vfunc_1CEi kind:function(arm,size=0x4) addr:0x020616f4 -_ZN29FileSelectManager_UnkDrawBase8vfunc_20Eii kind:function(arm,size=0x4) addr:0x020616f8 -_ZN29FileSelectManager_UnkDrawBase8vfunc_24Ev kind:function(arm,size=0x4) addr:0x020616fc +_ZN29FileSelectManager_UnkDrawBase9vfunc2_08Ei kind:function(arm,size=0x4) addr:0x020616e0 +_ZN29FileSelectManager_UnkDrawBase9vfunc2_0CEi kind:function(arm,size=0x4) addr:0x020616e4 +_ZN29FileSelectManager_UnkDrawBase8vfunc_54Eii kind:function(arm,size=0x4) addr:0x020616e8 +_ZN29FileSelectManager_UnkDrawBase9vfunc2_14Ei kind:function(arm,size=0x4) addr:0x020616ec +_ZN29FileSelectManager_UnkDrawBase9vfunc2_18Ei kind:function(arm,size=0x4) addr:0x020616f0 +_ZN29FileSelectManager_UnkDrawBase8vfunc_5CEi kind:function(arm,size=0x4) addr:0x020616f4 +_ZN29FileSelectManager_UnkDrawBase8vfunc_58Eii kind:function(arm,size=0x4) addr:0x020616f8 +_ZN29FileSelectManager_UnkDrawBase8vfunc_60Ev kind:function(arm,size=0x4) addr:0x020616fc _ZN23UnkStruct_027e0998_BaseC2Ev kind:function(thumb,size=0x24) addr:0x02061700 _ZN23UnkStruct_027e0998_BaseC1Ev kind:function(thumb,size=0x24) addr:0x02061724 func_ov000_02061748 kind:function(thumb,size=0x16) addr:0x02061748 @@ -862,7 +862,7 @@ func_ov000_0206bb30 kind:function(arm,size=0xcc) addr:0x0206bb30 _ZN24UnkStruct_ov000_020b51b819func_ov000_0206bbfcEi kind:function(arm,size=0x18) addr:0x0206bbfc func_ov000_0206bc14 kind:function(arm,size=0xe4) addr:0x0206bc14 func_ov000_0206bcf8 kind:function(arm,size=0xdc) addr:0x0206bcf8 -func_ov000_0206bdd4 kind:function(arm,size=0x10) addr:0x0206bdd4 +_ZN24UnkStruct_ov000_020b51b819func_ov000_0206bdd4EP15PlayerLinkActor kind:function(arm,size=0x10) addr:0x0206bdd4 func_ov000_0206bde4 kind:function(arm,size=0xe8) addr:0x0206bde4 func_ov000_0206becc kind:function(arm,size=0x60) addr:0x0206becc func_ov000_0206bf2c kind:function(arm,size=0x10) addr:0x0206bf2c @@ -936,8 +936,8 @@ func_ov000_0206e9f8 kind:function(arm,size=0x60) addr:0x0206e9f8 func_ov000_0206ea58 kind:function(arm,size=0x100) addr:0x0206ea58 func_ov000_0206eb58 kind:function(arm,size=0xd0) addr:0x0206eb58 func_ov000_0206ec28 kind:function(arm,size=0xf4) addr:0x0206ec28 -func_ov000_0206ed1c kind:function(arm,size=0xbc) addr:0x0206ed1c -func_ov000_0206edd8 kind:function(arm,size=0x160) addr:0x0206edd8 +_ZN24UnkStruct_ov000_020b521419func_ov000_0206ed1cEP15PlayerLinkActor kind:function(arm,size=0xbc) addr:0x0206ed1c +_ZN24UnkStruct_ov000_020b521419func_ov000_0206edd8EP15PlayerLinkActor kind:function(arm,size=0x160) addr:0x0206edd8 func_ov000_0206ef38 kind:function(arm,size=0xb0) addr:0x0206ef38 func_ov000_0206efe8 kind:function(arm,size=0x26c) addr:0x0206efe8 func_ov000_0206f254 kind:function(arm,size=0x8c) addr:0x0206f254 @@ -2671,7 +2671,7 @@ func_ov000_0209fe84 kind:function(arm,size=0x1c) addr:0x0209fed8 func_ov000_0209fea0 kind:function(arm,size=0xc) addr:0x0209fef4 _ZN18UnkStruct_027e0cec19func_ov000_0209feacEiP7VecFx32iii kind:function(arm,size=0x78) addr:0x0209ff00 _ZN18UnkStruct_027e0cec19func_ov000_0209ff24EiP7VecFx32P7VecFx16i kind:function(arm,size=0x28) addr:0x0209ff78 -func_ov000_0209ff4c kind:function(arm,size=0x40) addr:0x0209ffa0 +_ZN18UnkStruct_027e0cec19func_ov000_0209ff4cEiP7VecFx3214UnkAngleStructi kind:function(arm,size=0x40) addr:0x0209ffa0 _ZN18UnkStruct_027e0cec19func_ov000_0209ff8cEP22UnkStruct_PlayerGet_eciP7VecFx32i kind:function(arm,size=0x74) addr:0x0209ffe0 func_ov000_020a0000 kind:function(arm,size=0xa0) addr:0x020a0054 func_ov000_020a00a0 kind:function(arm,size=0x34) addr:0x020a00f4 @@ -3655,7 +3655,7 @@ data_ov000_020b2ffc kind:data(any) addr:0x020b2ffc data_ov000_020b301c kind:data(any) addr:0x020b301c data_ov000_020b2fe8 kind:data(any) addr:0x020b3028 data_ov000_020b3034 kind:data(any) addr:0x020b3034 -data_ov000_020b3000 kind:data(any) addr:0x020b3040 +_ZTV24UnkStruct_ov000_020b3000 kind:data(any) addr:0x020b3038 data_ov000_020b304c kind:data(any) addr:0x020b304c data_ov000_020b3058 kind:data(any) addr:0x020b3058 data_ov000_020b303c kind:data(any) addr:0x020b307c @@ -4026,7 +4026,7 @@ data_ov000_020b51ec kind:bss addr:0x020b51ec data_ov000_020b51b8 kind:bss addr:0x020b51f8 data_ov000_020b5200 kind:bss addr:0x020b5200 data_ov000_020b5204 kind:bss addr:0x020b5204 -data_ov000_020b5208 kind:bss addr:0x020b5208 +data_ov000_020b51c8 kind:bss addr:0x020b5208 data_ov000_020b5250 kind:bss addr:0x020b5250 data_ov000_020b5214_eur kind:bss addr:0x020b5254 data_ov000_020b52f0 kind:bss addr:0x020b52f0 diff --git a/config/eur1/arm9/overlays/ov001/relocs.txt b/config/eur1/arm9/overlays/ov001/relocs.txt index 1257c8c7..c8080d7f 100644 --- a/config/eur1/arm9/overlays/ov001/relocs.txt +++ b/config/eur1/arm9/overlays/ov001/relocs.txt @@ -1141,7 +1141,7 @@ from:0x020bbaa8 kind:load to:0x02043e50 module:main from:0x020bbac2 kind:thumb_call_arm to:0x01fff350 module:itcm from:0x020bbadc kind:thumb_call_arm to:0x02098544 module:overlay(0) from:0x020bbae6 kind:thumb_call_arm to:0x01fff350 module:itcm -from:0x020bbaf8 kind:load to:0x020b3040 module:overlay(0) +from:0x020bbaf8 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x020bbb00 kind:load to:0x027e0ce4 module:dtcm from:0x020bbb24 kind:thumb_call_arm to:0x02011f3c module:main from:0x020bbb2e kind:thumb_call to:0x02057750 module:overlay(0) @@ -1508,7 +1508,7 @@ from:0x020bd4cc kind:thumb_call_arm to:0x02092238 module:overlay(0) from:0x020bd4d4 kind:load to:0x027e09a4 module:dtcm from:0x020bd4d8 kind:load to:0x020d8780 module:overlay(24) from:0x020bd4dc kind:load to:0x020aa8e4 module:overlay(0) -from:0x020bd4e0 kind:load to:0x020b3040 module:overlay(0) +from:0x020bd4e0 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x020bd4e4 kind:load to:0x027e0ce4 module:dtcm from:0x020bd4ec kind:load to:0x027e09b8 module:dtcm from:0x020bd504 kind:thumb_call_arm to:0x02011f3c module:main diff --git a/config/eur1/arm9/overlays/ov017/symbols.txt b/config/eur1/arm9/overlays/ov017/symbols.txt index 11245bb7..5f1c0884 100644 --- a/config/eur1/arm9/overlays/ov017/symbols.txt +++ b/config/eur1/arm9/overlays/ov017/symbols.txt @@ -15,8 +15,8 @@ func_ov017_020bc5fc kind:function(arm,size=0x44) addr:0x020bc63c func_ov017_020bc640 kind:function(arm,size=0x31c) addr:0x020bc680 func_ov017_020bc95c kind:function(arm,size=0xe4) addr:0x020bc99c func_ov017_020bca40 kind:function(arm,size=0x3a8) addr:0x020bca80 -func_ov017_020bcde8 kind:function(arm,size=0x4b8) addr:0x020bce28 -func_ov017_020bd2a0 kind:function(arm,size=0x48) addr:0x020bd2e0 +_ZN21UnkStruct_027e0ce0_4019func_ov017_020bcde8EiP11ItemManager kind:function(arm,size=0x4b8) addr:0x020bce28 +_ZN11ItemManager19func_ov017_020bd2a0Eii kind:function(arm,size=0x48) addr:0x020bd2e0 func_ov017_020bd2e8 kind:function(arm,size=0x18) addr:0x020bd328 func_ov017_020bd300 kind:function(arm,size=0x178) addr:0x020bd340 func_ov017_020bd478 kind:function(arm,size=0x28) addr:0x020bd4b8 @@ -29,15 +29,15 @@ _ZN18UnkStruct_027e0ce019func_ov017_020bd69cEv kind:function(arm,size=0x1c) addr func_ov017_020bd6b8 kind:function(arm,size=0x28) addr:0x020bd6f8 func_ov017_020bd6e0 kind:function(arm,size=0x78) addr:0x020bd720 func_ov017_020bd758 kind:function(arm,size=0x30) addr:0x020bd798 -func_ov017_020bd788 kind:function(arm,size=0x56c) addr:0x020bd7c8 -func_ov017_020bdcf4 kind:function(arm,size=0x90) addr:0x020bdd34 -func_ov017_020bdd84 kind:function(arm,size=0x1c4) addr:0x020bddc4 -func_ov017_020bdf48 kind:function(arm,size=0x150) addr:0x020bdf88 +_ZN15PlayerLinkActor19func_ov017_020bd788Ei kind:function(arm,size=0x56c) addr:0x020bd7c8 +_ZN15PlayerLinkActor19func_ov017_020bdcf4Ev kind:function(arm,size=0x90) addr:0x020bdd34 +_ZN15PlayerLinkActor19func_ov017_020bdd84Eii kind:function(arm,size=0x1c4) addr:0x020bddc4 +_ZN15PlayerLinkActor19func_ov017_020bdf48Eiiii kind:function(arm,size=0x150) addr:0x020bdf88 func_ov017_020be098 kind:function(arm,size=0x10) addr:0x020be0d8 func_ov017_020be0a8 kind:function(arm,size=0x38) addr:0x020be0e8 func_ov017_020be0e0 kind:function(arm,size=0x20c) addr:0x020be120 func_ov017_020be2ec kind:function(arm,size=0x148) addr:0x020be32c -func_ov017_020be434 kind:function(arm,size=0x18) addr:0x020be474 +_ZN29UnkStruct_027e0ce0_40_Base_7C19func_ov017_020be434Ev kind:function(arm,size=0x18) addr:0x020be474 func_ov017_020be44c kind:function(arm,size=0x45c) addr:0x020be48c func_ov017_020be8a8 kind:function(arm,size=0x124) addr:0x020be8e8 _ZN12CargoManager8DoUpdateEv kind:function(arm,size=0x18) addr:0x020bea0c diff --git a/config/eur1/arm9/overlays/ov019/symbols.txt b/config/eur1/arm9/overlays/ov019/symbols.txt index 207194e3..8de0448e 100644 --- a/config/eur1/arm9/overlays/ov019/symbols.txt +++ b/config/eur1/arm9/overlays/ov019/symbols.txt @@ -215,24 +215,24 @@ _ZN19FileSelectSubScreenD1Ev kind:function(arm,size=0xec) addr:0x020cfb68 _ZN21FileSelectManager_160C1EP23GameModeManagerBase_104P14FileSelectMain kind:function(arm,size=0x54) addr:0x020cfc54 _ZN21FileSelectManager_160D1Ev kind:function(arm,size=0x14) addr:0x020cfca8 _ZN21FileSelectManager_160D0Ev kind:function(arm,size=0x1c) addr:0x020cfcbc -_ZN21FileSelectManager_1608vfunc_08Ei kind:function(arm,size=0x50) addr:0x020cfcd8 -_ZN21FileSelectManager_1608vfunc_0CEi kind:function(arm,size=0x64) addr:0x020cfd28 -_ZN21FileSelectManager_1608vfunc_14Ei kind:function(arm,size=0x4) addr:0x020cfd8c -_ZN21FileSelectManager_1608vfunc_10Eii kind:function(arm,size=0x8c) addr:0x020cfd90 -_ZN21FileSelectManager_1608vfunc_18Ei kind:function(arm,size=0x10) addr:0x020cfe1c -_ZN21FileSelectManager_1608vfunc_1CEi kind:function(arm,size=0x64) addr:0x020cfe2c -_ZN21FileSelectManager_1608vfunc_20Eii kind:function(arm,size=0xac) addr:0x020cfe90 -_ZN21FileSelectManager_1608vfunc_24Ev kind:function(arm,size=0x34) addr:0x020cff3c +_ZN21FileSelectManager_1609vfunc2_08Ei kind:function(arm,size=0x50) addr:0x020cfcd8 +_ZN21FileSelectManager_1609vfunc2_0CEi kind:function(arm,size=0x64) addr:0x020cfd28 +_ZN21FileSelectManager_1609vfunc2_14Ei kind:function(arm,size=0x4) addr:0x020cfd8c +_ZN21FileSelectManager_1608vfunc_54Eii kind:function(arm,size=0x8c) addr:0x020cfd90 +_ZN21FileSelectManager_1609vfunc2_18Ei kind:function(arm,size=0x10) addr:0x020cfe1c +_ZN21FileSelectManager_1608vfunc_5CEi kind:function(arm,size=0x64) addr:0x020cfe2c +_ZN21FileSelectManager_1608vfunc_58Eii kind:function(arm,size=0xac) addr:0x020cfe90 +_ZN21FileSelectManager_1608vfunc_60Ev kind:function(arm,size=0x34) addr:0x020cff3c _ZN21FileSelectManager_164C1EP23GameModeManagerBase_104P14FileSelectMain kind:function(arm,size=0x4c) addr:0x020cff70 _ZN21FileSelectManager_164D1Ev kind:function(arm,size=0x3c) addr:0x020cffbc _ZN21FileSelectManager_164D0Ev kind:function(arm,size=0x44) addr:0x020cfff8 -_ZN21FileSelectManager_1648vfunc_08Ei kind:function(arm,size=0x50) addr:0x020d003c -_ZN21FileSelectManager_1648vfunc_0CEi kind:function(arm,size=0x90) addr:0x020d008c -_ZN21FileSelectManager_1648vfunc_14Ei kind:function(arm,size=0x4) addr:0x020d011c -_ZN21FileSelectManager_1648vfunc_10Eii kind:function(arm,size=0xa8) addr:0x020d0120 -_ZN21FileSelectManager_1648vfunc_18Ei kind:function(arm,size=0x38) addr:0x020d01c8 -_ZN21FileSelectManager_1648vfunc_1CEi kind:function(arm,size=0xa4) addr:0x020d0200 -_ZN21FileSelectManager_1648vfunc_20Eii kind:function(arm,size=0x90) addr:0x020d02a4 +_ZN21FileSelectManager_1649vfunc2_08Ei kind:function(arm,size=0x50) addr:0x020d003c +_ZN21FileSelectManager_1649vfunc2_0CEi kind:function(arm,size=0x90) addr:0x020d008c +_ZN21FileSelectManager_1649vfunc2_14Ei kind:function(arm,size=0x4) addr:0x020d011c +_ZN21FileSelectManager_1648vfunc_54Eii kind:function(arm,size=0xa8) addr:0x020d0120 +_ZN21FileSelectManager_1649vfunc2_18Ei kind:function(arm,size=0x38) addr:0x020d01c8 +_ZN21FileSelectManager_1648vfunc_5CEi kind:function(arm,size=0xa4) addr:0x020d0200 +_ZN21FileSelectManager_1648vfunc_58Eii kind:function(arm,size=0x90) addr:0x020d02a4 _ZN21FileSelectManager_16419func_ov019_020d02f4Ev kind:function(arm,size=0x28) addr:0x020d0334 _ZN25UnkSystem1_ov019_Derived2C1Ev kind:function(arm,size=0x40) addr:0x020d035c _ZN25UnkSystem1_ov019_Derived28vfunc_08Ei kind:function(arm,size=0x48) addr:0x020d039c diff --git a/config/eur1/arm9/overlays/ov024/relocs.txt b/config/eur1/arm9/overlays/ov024/relocs.txt index 0e70c0b9..272a7c98 100644 --- a/config/eur1/arm9/overlays/ov024/relocs.txt +++ b/config/eur1/arm9/overlays/ov024/relocs.txt @@ -72,7 +72,7 @@ from:0x020c4cac kind:arm_call to:0x020730e0 module:overlay(0) from:0x020c4d00 kind:arm_call to:0x020734a4 module:overlay(0) from:0x020c4d18 kind:load to:0x020d87b8 module:overlay(24) from:0x020c4d1c kind:load to:0x027e0ce4 module:dtcm -from:0x020c4d20 kind:load to:0x020b3040 module:overlay(0) +from:0x020c4d20 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x020c4d24 kind:load to:0x027e09b8 module:dtcm from:0x020c4d74 kind:arm_call to:0x01ffd3d8 module:itcm from:0x020c4d98 kind:arm_call to:0x02019538 module:main @@ -2516,7 +2516,7 @@ from:0x020d73c0 kind:load to:0x027e0cd8 module:dtcm from:0x020d73c4 kind:load to:0x027e09a4 module:dtcm from:0x020d73c8 kind:load to:0x027e0ce0 module:dtcm from:0x020d73cc kind:load to:0x027e0ce4 module:dtcm -from:0x020d73d4 kind:load to:0x020b3040 module:overlay(0) +from:0x020d73d4 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x020d73e8 kind:arm_call to:0x0209fb6c module:overlay(0) from:0x020d73f0 kind:arm_call to:0x020984dc module:overlay(0) from:0x020d7408 kind:arm_call to:0x0209fb6c module:overlay(0) diff --git a/config/eur1/arm9/overlays/ov024/symbols.txt b/config/eur1/arm9/overlays/ov024/symbols.txt index 8c9004e1..30c4dd87 100644 --- a/config/eur1/arm9/overlays/ov024/symbols.txt +++ b/config/eur1/arm9/overlays/ov024/symbols.txt @@ -143,16 +143,16 @@ _ZN24AdventureModeManager_160C1EP23GameModeManagerBase_104P24AdventureModeManage _ZN27AdventureModeManager_160_4CD1Ev kind:function(arm,size=0x14) addr:0x020c7a3c _ZN24AdventureModeManager_160D1Ev kind:function(arm,size=0x30) addr:0x020c7a50 _ZN24AdventureModeManager_160D0Ev kind:function(arm,size=0x38) addr:0x020c7a80 -_ZN24AdventureModeManager_1608vfunc_08Ei kind:function(arm,size=0x9c) addr:0x020c7ab8 -_ZN24AdventureModeManager_1608vfunc_0CEi kind:function(arm,size=0x1a0) addr:0x020c7b54 -_ZN24AdventureModeManager_1608vfunc_10Eii kind:function(arm,size=0x24) addr:0x020c7cf4 -_ZN24AdventureModeManager_1608vfunc_14Ei kind:function(arm,size=0x20) addr:0x020c7d18 +_ZN24AdventureModeManager_1609vfunc2_08Ei kind:function(arm,size=0x9c) addr:0x020c7ab8 +_ZN24AdventureModeManager_1609vfunc2_0CEi kind:function(arm,size=0x1a0) addr:0x020c7b54 +_ZN24AdventureModeManager_1608vfunc_54Eii kind:function(arm,size=0x24) addr:0x020c7cf4 +_ZN24AdventureModeManager_1609vfunc2_14Ei kind:function(arm,size=0x20) addr:0x020c7d18 _ZN24AdventureModeManager_16019func_ov024_020c7cfcEv kind:function(arm,size=0x50) addr:0x020c7d38 _ZN24AdventureModeManager_16019func_ov024_020c7d4cEi kind:function(arm,size=0xf0) addr:0x020c7d88 -_ZN24AdventureModeManager_1608vfunc_18Ei kind:function(arm,size=0x118) addr:0x020c7e78 -_ZN24AdventureModeManager_1608vfunc_1CEi kind:function(arm,size=0x36c) addr:0x020c7f90 -_ZN24AdventureModeManager_1608vfunc_20Eii kind:function(arm,size=0xf8) addr:0x020c82fc -_ZN24AdventureModeManager_1608vfunc_24Ev kind:function(arm,size=0x4) addr:0x020c83f4 +_ZN24AdventureModeManager_1609vfunc2_18Ei kind:function(arm,size=0x118) addr:0x020c7e78 +_ZN24AdventureModeManager_1608vfunc_5CEi kind:function(arm,size=0x36c) addr:0x020c7f90 +_ZN24AdventureModeManager_1608vfunc_58Eii kind:function(arm,size=0xf8) addr:0x020c82fc +_ZN24AdventureModeManager_1608vfunc_60Ev kind:function(arm,size=0x4) addr:0x020c83f4 _ZN24AdventureModeManager_16019func_ov024_020c83bcEv kind:function(arm,size=0x6c) addr:0x020c83f8 _ZN24AdventureModeManager_16019func_ov024_020c8428Ev kind:function(arm,size=0x2c) addr:0x020c8464 _ZN24AdventureModeManager_16019func_ov024_020c8454Ev kind:function(arm,size=0x30) addr:0x020c8490 @@ -165,11 +165,11 @@ _ZN24AdventureModeManager_170C1EP23GameModeManagerBase_104 kind:function(arm,siz _ZN27AdventureModeManager_170_14D1Ev kind:function(arm,size=0x14) addr:0x020c866c _ZN24AdventureModeManager_170D1Ev kind:function(arm,size=0x20) addr:0x020c8680 _ZN24AdventureModeManager_170D0Ev kind:function(arm,size=0x28) addr:0x020c86a0 -_ZN24AdventureModeManager_1708vfunc_08Ei kind:function(arm,size=0x38) addr:0x020c86c8 -_ZN24AdventureModeManager_1708vfunc_0CEi kind:function(arm,size=0x74) addr:0x020c8700 -_ZN24AdventureModeManager_1708vfunc_10Eii kind:function(arm,size=0xd4) addr:0x020c8774 -_ZN24AdventureModeManager_1708vfunc_18Ei kind:function(arm,size=0xc) addr:0x020c8848 -_ZN24AdventureModeManager_1708vfunc_24Ev kind:function(arm,size=0x2c) addr:0x020c8854 +_ZN24AdventureModeManager_1709vfunc2_08Ei kind:function(arm,size=0x38) addr:0x020c86c8 +_ZN24AdventureModeManager_1709vfunc2_0CEi kind:function(arm,size=0x74) addr:0x020c8700 +_ZN24AdventureModeManager_1708vfunc_54Eii kind:function(arm,size=0xd4) addr:0x020c8774 +_ZN24AdventureModeManager_1709vfunc2_18Ei kind:function(arm,size=0xc) addr:0x020c8848 +_ZN24AdventureModeManager_1708vfunc_60Ev kind:function(arm,size=0x2c) addr:0x020c8854 _ZN27AdventureModeManager_170_14D0Ev kind:function(arm,size=0x1c) addr:0x020c8880 _ZN32AdventureModeManager_174_Base_108vfunc_0CEv kind:function(thumb,size=0x10) addr:0x020c889c _ZN32AdventureModeManager_174_Base_108vfunc_10Ev kind:function(thumb,size=0x10) addr:0x020c88ac @@ -181,25 +181,25 @@ _ZN32AdventureModeManager_174_Base_10D0Ev kind:function(arm,size=0x1c) addr:0x02 _ZN29AdventureModeManager_174_BaseD1Ev kind:function(arm,size=0x20) addr:0x020c8d58 _ZN29AdventureModeManager_174_BaseD0Ev kind:function(arm,size=0x28) addr:0x020c8d78 _ZN24AdventureModeManager_174C1EP23GameModeManagerBase_104 kind:function(thumb,size=0x2c) addr:0x020c8da0 -_ZN24AdventureModeManager_1748vfunc_08Ei kind:function(thumb,size=0x58) addr:0x020c8dcc -_ZN24AdventureModeManager_1748vfunc_0CEi kind:function(thumb,size=0x48) addr:0x020c8e24 -_ZN24AdventureModeManager_1748vfunc_10Eii kind:function(thumb,size=0xac) addr:0x020c8e6c -_ZN24AdventureModeManager_1748vfunc_18Ei kind:function(thumb,size=0x6c) addr:0x020c8f18 -_ZN24AdventureModeManager_1748vfunc_1CEi kind:function(thumb,size=0x40) addr:0x020c8f84 -_ZN24AdventureModeManager_1748vfunc_20Eii kind:function(thumb,size=0xc0) addr:0x020c8fc4 -_ZN24AdventureModeManager_1748vfunc_24Ev kind:function(thumb,size=0x2) addr:0x020c9084 +_ZN24AdventureModeManager_1749vfunc2_08Ei kind:function(thumb,size=0x58) addr:0x020c8dcc +_ZN24AdventureModeManager_1749vfunc2_0CEi kind:function(thumb,size=0x48) addr:0x020c8e24 +_ZN24AdventureModeManager_1748vfunc_54Eii kind:function(thumb,size=0xac) addr:0x020c8e6c +_ZN24AdventureModeManager_1749vfunc2_18Ei kind:function(thumb,size=0x6c) addr:0x020c8f18 +_ZN24AdventureModeManager_1748vfunc_5CEi kind:function(thumb,size=0x40) addr:0x020c8f84 +_ZN24AdventureModeManager_1748vfunc_58Eii kind:function(thumb,size=0xc0) addr:0x020c8fc4 +_ZN24AdventureModeManager_1748vfunc_60Ev kind:function(thumb,size=0x2) addr:0x020c9084 _ZN24AdventureModeManager_174D1Ev kind:function(arm,size=0x20) addr:0x020c9088 _ZN24AdventureModeManager_174D0Ev kind:function(arm,size=0x28) addr:0x020c90a8 _ZN29AdventureModeManager_178_BaseC2EP23GameModeManagerBase_104 kind:function(thumb,size=0x14) addr:0x020c90d0 -_ZN29AdventureModeManager_178_Base8vfunc_08Ei kind:function(thumb,size=0x2c) addr:0x020c90e4 -_ZN29AdventureModeManager_178_Base8vfunc_0CEi kind:function(thumb,size=0x1c) addr:0x020c9110 -_ZN29AdventureModeManager_178_Base8vfunc_18Ei kind:function(thumb,size=0x2c) addr:0x020c912c -_ZN29AdventureModeManager_178_Base8vfunc_1CEi kind:function(thumb,size=0x1c) addr:0x020c9158 +_ZN29AdventureModeManager_178_Base9vfunc2_08Ei kind:function(thumb,size=0x2c) addr:0x020c90e4 +_ZN29AdventureModeManager_178_Base9vfunc2_0CEi kind:function(thumb,size=0x1c) addr:0x020c9110 +_ZN29AdventureModeManager_178_Base9vfunc2_18Ei kind:function(thumb,size=0x2c) addr:0x020c912c +_ZN29AdventureModeManager_178_Base8vfunc_5CEi kind:function(thumb,size=0x1c) addr:0x020c9158 _ZN29AdventureModeManager_178_BaseD1Ev kind:function(arm,size=0x20) addr:0x020c9174 _ZN29AdventureModeManager_178_BaseD0Ev kind:function(arm,size=0x28) addr:0x020c9194 _ZN24AdventureModeManager_178C1EP23GameModeManagerBase_104 kind:function(thumb,size=0x2c) addr:0x020c91bc -_ZN24AdventureModeManager_1788vfunc_10Eii kind:function(thumb,size=0x24) addr:0x020c91e8 -_ZN24AdventureModeManager_1788vfunc_20Eii kind:function(thumb,size=0x24) addr:0x020c920c +_ZN24AdventureModeManager_1788vfunc_54Eii kind:function(thumb,size=0x24) addr:0x020c91e8 +_ZN24AdventureModeManager_1788vfunc_58Eii kind:function(thumb,size=0x24) addr:0x020c920c _ZN24AdventureModeManager_178D1Ev kind:function(arm,size=0x20) addr:0x020c9230 _ZN24AdventureModeManager_178D0Ev kind:function(arm,size=0x28) addr:0x020c9250 _ZN27AdventureModeManager_180_188vfunc_0CEv kind:function(thumb,size=0x10) addr:0x020c9278 @@ -207,29 +207,29 @@ _ZN24AdventureModeManager_180C1EP23GameModeManagerBase_104 kind:function(thumb,s _ZN27AdventureModeManager_180_18D1Ev kind:function(thumb,size=0xc) addr:0x020c92d8 _ZN24AdventureModeManager_180D1Ev kind:function(thumb,size=0x14) addr:0x020c92e4 _ZN24AdventureModeManager_180D0Ev kind:function(thumb,size=0x1a) addr:0x020c92f8 -_ZN24AdventureModeManager_1808vfunc_08Ei kind:function(thumb,size=0x64) addr:0x020c9314 -_ZN24AdventureModeManager_1808vfunc_0CEi kind:function(thumb,size=0x90) addr:0x020c9378 -_ZN24AdventureModeManager_1808vfunc_10Eii kind:function(thumb,size=0x64) addr:0x020c9408 +_ZN24AdventureModeManager_1809vfunc2_08Ei kind:function(thumb,size=0x64) addr:0x020c9314 +_ZN24AdventureModeManager_1809vfunc2_0CEi kind:function(thumb,size=0x90) addr:0x020c9378 +_ZN24AdventureModeManager_1808vfunc_54Eii kind:function(thumb,size=0x64) addr:0x020c9408 _ZN24AdventureModeManager_18019func_ov024_020c9430Eii kind:function(thumb,size=0x24) addr:0x020c946c -_ZN24AdventureModeManager_1808vfunc_18Ei kind:function(thumb,size=0x30) addr:0x020c9490 -_ZN24AdventureModeManager_1808vfunc_1CEi kind:function(thumb,size=0x78) addr:0x020c94c0 -_ZN24AdventureModeManager_1808vfunc_20Eii kind:function(thumb,size=0x7c) addr:0x020c9538 -_ZN24AdventureModeManager_1808vfunc_24Ev kind:function(thumb,size=0x2) addr:0x020c95b4 +_ZN24AdventureModeManager_1809vfunc2_18Ei kind:function(thumb,size=0x30) addr:0x020c9490 +_ZN24AdventureModeManager_1808vfunc_5CEi kind:function(thumb,size=0x78) addr:0x020c94c0 +_ZN24AdventureModeManager_1808vfunc_58Eii kind:function(thumb,size=0x7c) addr:0x020c9538 +_ZN24AdventureModeManager_1808vfunc_60Ev kind:function(thumb,size=0x2) addr:0x020c95b4 _ZN24AdventureModeManager_18019func_ov024_020c957cEv kind:function(thumb,size=0x48) addr:0x020c95b8 _ZN24AdventureModeManager_18019func_ov024_020c95c4Ev kind:function(thumb,size=0x48) addr:0x020c9600 _ZN27AdventureModeManager_180_18D0Ev kind:function(arm,size=0x1c) addr:0x020c9648 _ZN24AdventureModeManager_184C1EP23GameModeManagerBase_104 kind:function(thumb,size=0x30) addr:0x020c9664 _ZN24AdventureModeManager_184D1Ev kind:function(thumb,size=0xc) addr:0x020c9694 _ZN24AdventureModeManager_184D0Ev kind:function(thumb,size=0x12) addr:0x020c96a0 -_ZN24AdventureModeManager_1848vfunc_08Ei kind:function(thumb,size=0x20) addr:0x020c96b4 -_ZN24AdventureModeManager_1848vfunc_0CEi kind:function(thumb,size=0xf8) addr:0x020c96d4 -_ZN24AdventureModeManager_1848vfunc_10Eii kind:function(thumb,size=0x8) addr:0x020c97cc -_ZN24AdventureModeManager_1848vfunc_14Ei kind:function(thumb,size=0x2) addr:0x020c97d4 +_ZN24AdventureModeManager_1849vfunc2_08Ei kind:function(thumb,size=0x20) addr:0x020c96b4 +_ZN24AdventureModeManager_1849vfunc2_0CEi kind:function(thumb,size=0xf8) addr:0x020c96d4 +_ZN24AdventureModeManager_1848vfunc_54Eii kind:function(thumb,size=0x8) addr:0x020c97cc +_ZN24AdventureModeManager_1849vfunc2_14Ei kind:function(thumb,size=0x2) addr:0x020c97d4 _ZN24AdventureModeManager_18419func_ov024_020c979cEi kind:function(thumb,size=0x94) addr:0x020c97d8 -_ZN24AdventureModeManager_1848vfunc_18Ei kind:function(thumb,size=0x7c) addr:0x020c986c -_ZN24AdventureModeManager_1848vfunc_1CEi kind:function(thumb,size=0x60) addr:0x020c98e8 -_ZN24AdventureModeManager_1848vfunc_20Eii kind:function(thumb,size=0x5c) addr:0x020c9948 -_ZN24AdventureModeManager_1848vfunc_24Ev kind:function(thumb,size=0x8) addr:0x020c99a4 +_ZN24AdventureModeManager_1849vfunc2_18Ei kind:function(thumb,size=0x7c) addr:0x020c986c +_ZN24AdventureModeManager_1848vfunc_5CEi kind:function(thumb,size=0x60) addr:0x020c98e8 +_ZN24AdventureModeManager_1848vfunc_58Eii kind:function(thumb,size=0x5c) addr:0x020c9948 +_ZN24AdventureModeManager_1848vfunc_60Ev kind:function(thumb,size=0x8) addr:0x020c99a4 _ZN27AdventureModeManager_18C_14C1Ev kind:function(thumb,size=0x14) addr:0x020c99ac _ZN27AdventureModeManager_18C_148vfunc_0CEv kind:function(thumb,size=0x10) addr:0x020c99c0 _ZN27AdventureModeManager_18C_148vfunc_10Ev kind:function(thumb,size=0x10) addr:0x020c99d0 @@ -237,15 +237,15 @@ _ZN24AdventureModeManager_18CC1EP23GameModeManagerBase_104 kind:function(thumb,s _ZN27AdventureModeManager_18C_14D1Ev kind:function(thumb,size=0xc) addr:0x020c9a48 _ZN24AdventureModeManager_18CD1Ev kind:function(thumb,size=0x14) addr:0x020c9a54 _ZN24AdventureModeManager_18CD0Ev kind:function(thumb,size=0x1a) addr:0x020c9a68 -_ZN24AdventureModeManager_18C8vfunc_08Ei kind:function(thumb,size=0x32) addr:0x020c9a84 -_ZN24AdventureModeManager_18C8vfunc_0CEi kind:function(thumb,size=0xf0) addr:0x020c9ab8 -_ZN24AdventureModeManager_18C8vfunc_10Eii kind:function(thumb,size=0x100) addr:0x020c9ba8 +_ZN24AdventureModeManager_18C9vfunc2_08Ei kind:function(thumb,size=0x32) addr:0x020c9a84 +_ZN24AdventureModeManager_18C9vfunc2_0CEi kind:function(thumb,size=0xf0) addr:0x020c9ab8 +_ZN24AdventureModeManager_18C8vfunc_54Eii kind:function(thumb,size=0x100) addr:0x020c9ba8 _ZN24AdventureModeManager_18C19func_ov024_020c9c6cEv kind:function(thumb,size=0xb4) addr:0x020c9ca8 -_ZN24AdventureModeManager_18C8vfunc_14Ei kind:function(thumb,size=0x10) addr:0x020c9d5c -_ZN24AdventureModeManager_18C8vfunc_18Ei kind:function(thumb,size=0xac) addr:0x020c9d6c -_ZN24AdventureModeManager_18C8vfunc_1CEi kind:function(thumb,size=0x88) addr:0x020c9e18 -_ZN24AdventureModeManager_18C8vfunc_20Eii kind:function(thumb,size=0x1c4) addr:0x020c9ea0 -_ZN24AdventureModeManager_18C8vfunc_24Ev kind:function(thumb,size=0xa) addr:0x020ca064 +_ZN24AdventureModeManager_18C9vfunc2_14Ei kind:function(thumb,size=0x10) addr:0x020c9d5c +_ZN24AdventureModeManager_18C9vfunc2_18Ei kind:function(thumb,size=0xac) addr:0x020c9d6c +_ZN24AdventureModeManager_18C8vfunc_5CEi kind:function(thumb,size=0x88) addr:0x020c9e18 +_ZN24AdventureModeManager_18C8vfunc_58Eii kind:function(thumb,size=0x1c4) addr:0x020c9ea0 +_ZN24AdventureModeManager_18C8vfunc_60Ev kind:function(thumb,size=0xa) addr:0x020ca064 _ZN24AdventureModeManager_18C19func_ov024_020ca034Ev kind:function(thumb,size=0x34) addr:0x020ca070 _ZN24AdventureModeManager_18C19func_ov024_020ca068Ei kind:function(thumb,size=0xc) addr:0x020ca0a4 _ZN24AdventureModeManager_18C19func_ov024_020ca074Ev kind:function(thumb,size=0x6) addr:0x020ca0b0 @@ -255,12 +255,12 @@ _ZN27AdventureModeManager_190_388vfunc_0CEv kind:function(thumb,size=0xc) addr:0 _ZN24AdventureModeManager_190C1EP23GameModeManagerBase_104 kind:function(thumb,size=0x54) addr:0x020ca0f0 _ZN27AdventureModeManager_190_14D1Ev kind:function(thumb,size=0xc) addr:0x020ca144 _ZN27AdventureModeManager_190_38D1Ev kind:function(thumb,size=0xc) addr:0x020ca150 -_ZN24AdventureModeManager_1908vfunc_08Ei kind:function(thumb,size=0xc) addr:0x020ca15c -_ZN24AdventureModeManager_1908vfunc_0CEi kind:function(thumb,size=0x20) addr:0x020ca168 -_ZN24AdventureModeManager_1908vfunc_10Eii kind:function(thumb,size=0x3c) addr:0x020ca188 -_ZN24AdventureModeManager_1908vfunc_18Ei kind:function(thumb,size=0xc) addr:0x020ca1c4 -_ZN24AdventureModeManager_1908vfunc_1CEi kind:function(thumb,size=0x20) addr:0x020ca1d0 -_ZN24AdventureModeManager_1908vfunc_20Eii kind:function(thumb,size=0x68) addr:0x020ca1f0 +_ZN24AdventureModeManager_1909vfunc2_08Ei kind:function(thumb,size=0xc) addr:0x020ca15c +_ZN24AdventureModeManager_1909vfunc2_0CEi kind:function(thumb,size=0x20) addr:0x020ca168 +_ZN24AdventureModeManager_1908vfunc_54Eii kind:function(thumb,size=0x3c) addr:0x020ca188 +_ZN24AdventureModeManager_1909vfunc2_18Ei kind:function(thumb,size=0xc) addr:0x020ca1c4 +_ZN24AdventureModeManager_1908vfunc_5CEi kind:function(thumb,size=0x20) addr:0x020ca1d0 +_ZN24AdventureModeManager_1908vfunc_58Eii kind:function(thumb,size=0x68) addr:0x020ca1f0 _ZN24AdventureModeManager_19019func_ov024_020ca21cEv kind:function(thumb,size=0x30) addr:0x020ca258 _ZN24AdventureModeManager_19019func_ov024_020ca24cEi kind:function(thumb,size=0x34) addr:0x020ca288 _ZN24AdventureModeManager_19019func_ov024_020ca280Ev kind:function(thumb,size=0x10) addr:0x020ca2bc diff --git a/config/eur1/arm9/overlays/ov031/delinks.txt b/config/eur1/arm9/overlays/ov031/delinks.txt index 40c4220c..ea2fed98 100644 --- a/config/eur1/arm9/overlays/ov031/delinks.txt +++ b/config/eur1/arm9/overlays/ov031/delinks.txt @@ -187,7 +187,7 @@ src/031_Land/Actor/ActorItemDrop.cpp: .bss start:0x02116fac end:0x021170dc src/031_Land/Actor/ActorUnkMLCK.cpp: - .text start:0x020fac8c end:0x020fb3dc + .text start:0x020fac8c end:0x020fb43c .init start:0x02111ab8 end:0x02111b2c .ctor start:0x02112930 end:0x02112934 .data start:0x02114e68 end:0x02114f5c diff --git a/config/eur1/arm9/overlays/ov031/relocs.txt b/config/eur1/arm9/overlays/ov031/relocs.txt index d1a80c77..72231be7 100644 --- a/config/eur1/arm9/overlays/ov031/relocs.txt +++ b/config/eur1/arm9/overlays/ov031/relocs.txt @@ -103,7 +103,7 @@ from:0x020d9430 kind:load to:0x0204a110 module:main from:0x020d9464 kind:arm_call to:0x01fff350 module:itcm from:0x020d9470 kind:arm_call to:0x020fb318 module:overlay(31) from:0x020d947c kind:load to:0x027e0ce4 module:dtcm -from:0x020d9484 kind:load to:0x02112c14 module:overlay(31) +from:0x020d9484 kind:load to:0x02112c0c add:0x8 module:overlay(31) from:0x020d94a0 kind:arm_call to:0x01fff458 module:itcm from:0x020d94d0 kind:load to:0x027e0ce4 module:dtcm from:0x020d94d4 kind:load to:0x020d9488 module:overlay(31) @@ -3775,13 +3775,13 @@ from:0x020facc8 kind:arm_call to:0x020976d0 module:overlay(0) from:0x020face0 kind:load to:0x02114e8c add:0x8 module:overlay(31) from:0x020facec kind:arm_call to:0x020983dc module:overlay(0) from:0x020facf4 kind:arm_call to:0x02061648 module:overlay(0) -from:0x020fad88 kind:load to:0x02114e7c module:overlay(31) -from:0x020fad8c kind:load to:0x02114eb8 module:overlay(31) -from:0x020fad90 kind:load to:0x02114f2c add:0x8 module:overlay(31) +from:0x020fad88 kind:load to:0x02114e74 add:0x8 module:overlay(31) +from:0x020fad8c kind:load to:0x02114eb0 add:0x8 module:overlay(31) +from:0x020fad90 kind:load to:0x02114eb0 add:0x84 module:overlay(31) from:0x020fadcc kind:arm_call to:0x01fff350 module:itcm from:0x020fae00 kind:arm_call to:0x020611dc module:overlay(0) from:0x020fae58 kind:load to:0x027e0ce4 module:dtcm -from:0x020fae5c kind:load to:0x02112c14 module:overlay(31) +from:0x020fae5c kind:load to:0x02112c0c add:0x8 module:overlay(31) from:0x020fae64 kind:load to:0x0204a088 module:main from:0x020fae68 kind:load to:0x020d87d0 module:overlay(24) from:0x020fae9c kind:arm_call to:0x0206f980 module:overlay(0) diff --git a/config/eur1/arm9/overlays/ov031/symbols.txt b/config/eur1/arm9/overlays/ov031/symbols.txt index b99a9408..ef8ce1e7 100644 --- a/config/eur1/arm9/overlays/ov031/symbols.txt +++ b/config/eur1/arm9/overlays/ov031/symbols.txt @@ -149,17 +149,17 @@ func_ov031_020db374 kind:function(arm,size=0x74) addr:0x020db494 func_ov031_020db3e8 kind:function(arm,size=0x18) addr:0x020db508 func_ov031_020db400 kind:function(arm,size=0x98) addr:0x020db520 func_ov031_020db498 kind:function(arm,size=0x58) addr:0x020db5b8 -func_ov031_020db4f0 kind:function(arm,size=0x38) addr:0x020db610 -func_ov031_020db528 kind:function(arm,size=0x8c) addr:0x020db648 +_ZN27UnkStruct_ItemManager_20_0419func_ov031_020db4f0Eii kind:function(arm,size=0x38) addr:0x020db610 +_ZN27UnkStruct_ItemManager_20_0419func_ov031_020db528Ei kind:function(arm,size=0x8c) addr:0x020db648 _ZN27UnkStruct_ItemManager_20_0819func_ov031_020db5b4Ev kind:function(arm,size=0x20) addr:0x020db6d4 func_ov031_020db5d4 kind:function(arm,size=0x14) addr:0x020db6f4 func_ov031_020db5e8 kind:function(arm,size=0x2c) addr:0x020db708 func_ov031_020db614 kind:function(arm,size=0x90) addr:0x020db734 func_ov031_020db6a4 kind:function(arm,size=0x60) addr:0x020db7c4 -func_ov031_020db704 kind:function(arm,size=0xbc) addr:0x020db824 +_ZN27UnkStruct_ItemManager_20_0819func_ov031_020db704Eii kind:function(arm,size=0xbc) addr:0x020db824 _ZN27UnkStruct_ItemManager_20_14C1Ev kind:function(thumb,size=0x16) addr:0x020db8e0 _ZN27UnkStruct_ItemManager_20_1419func_ov031_020db7d8Ev kind:function(thumb,size=0x1a) addr:0x020db8f8 -func_ov031_020db7f4 kind:function(arm,size=0x50) addr:0x020db914 +_ZN27UnkStruct_ItemManager_20_1419func_ov031_020db7f4Ev kind:function(arm,size=0x50) addr:0x020db914 func_ov031_020db844 kind:function(arm,size=0x30) addr:0x020db964 _ZN24UnkStruct_ItemManager_2019func_ov031_020db874Ej kind:function(arm,size=0x58) addr:0x020db994 _ZN24UnkStruct_ItemManager_2019func_ov031_020db8ccEv kind:function(arm,size=0x2c) addr:0x020db9ec @@ -167,15 +167,15 @@ _ZN24UnkStruct_ItemManager_2019func_ov031_020db8f8Ev kind:function(arm,size=0x44 _ZN27UnkStruct_ItemManager_20_0CC1Ev kind:function(thumb,size=0x12) addr:0x020dba5c _ZN27UnkStruct_ItemManager_20_0CD1Ev kind:function(thumb,size=0x2) addr:0x020dba70 _ZN27UnkStruct_ItemManager_20_0C19func_ov031_020db954Ev kind:function(arm,size=0x4) addr:0x020dba74 -func_ov031_020db958 kind:function(arm,size=0xe4) addr:0x020dba78 -func_ov031_020dba3c kind:function(arm,size=0x4) addr:0x020dbb5c +_ZN27UnkStruct_ItemManager_20_0C19func_ov031_020db958Eii kind:function(arm,size=0xe4) addr:0x020dba78 +_ZN27UnkStruct_ItemManager_20_0C19func_ov031_020dba3cEi kind:function(arm,size=0x4) addr:0x020dbb5c _ZN27UnkStruct_ItemManager_20_0019func_ov031_020dba40Ev kind:function(arm,size=0x34) addr:0x020dbb60 func_ov031_020dba74 kind:function(arm,size=0x18) addr:0x020dbb94 func_ov031_020dba8c kind:function(arm,size=0xac) addr:0x020dbbac func_ov031_020dbb38 kind:function(arm,size=0x1c) addr:0x020dbc58 func_ov031_020dbb54 kind:function(arm,size=0xc4) addr:0x020dbc74 func_ov031_020dbc18 kind:function(arm,size=0x68) addr:0x020dbd38 -func_ov031_020dbc80 kind:function(arm,size=0xa4) addr:0x020dbda0 +_ZN27UnkStruct_ItemManager_20_0019func_ov031_020dbc80Eii kind:function(arm,size=0xa4) addr:0x020dbda0 func_ov031_020dbd24 kind:function(arm,size=0x74) addr:0x020dbe44 func_ov031_020dbd98 kind:function(arm,size=0xc4) addr:0x020dbeb8 func_ov031_020dbe5c kind:function(arm,size=0x2c) addr:0x020dbf7c @@ -612,7 +612,7 @@ _ZN19ActorProfileUnkZSRSC1Ev kind:function(thumb,size=0x1c) addr:0x020ea158 _ZN19ActorProfileUnkZLSL10GetProfileEv kind:function(thumb,size=0x8) addr:0x020ea174 _ZN19ActorProfileUnkZLSL6CreateEv kind:function(thumb,size=0x1c) addr:0x020ea17c _ZN19ActorProfileUnkZLSLC1Ev kind:function(thumb,size=0x3c) addr:0x020ea198 -_ZN24UnkStruct_ov031_0211361c19func_ov031_020ea0b4EP5Actor kind:function(thumb,size=0x30) addr:0x020ea1d4 +_ZN24UnkStruct_ov031_0211361c8vfunc_00EP5Actor kind:function(thumb,size=0x30) addr:0x020ea1d4 _ZN26ModelRender_ov031_02113670C2EP10G3d_Model_ kind:function(thumb,size=0x14) addr:0x020ea204 _ZN26ModelRender_ov031_021136708vfunc_0CEv kind:function(thumb,size=0x8) addr:0x020ea218 func_ov031_020ea100 kind:function(thumb,size=0x40) addr:0x020ea220 @@ -1208,8 +1208,8 @@ _ZN12ActorUnkMLCKC1Ev kind:function(arm,size=0xb0) addr:0x020face4 _ZN12ActorUnkMLCK8vfunc_18Ei kind:function(arm,size=0xd8) addr:0x020fad94 _ZN12ActorUnkMLCK8vfunc_64Ei kind:function(arm,size=0x4c) addr:0x020fae6c _ZN12ActorUnkMLCK8vfunc_54Eii kind:function(arm,size=0x20) addr:0x020faeb8 -_ZN12ActorUnkMLCK8vfunc_58Ev kind:function(arm,size=0xc) addr:0x020faed8 -_ZN12ActorUnkMLCK8vfunc_5CEv kind:function(arm,size=0x54) addr:0x020faee4 +_ZN12ActorUnkMLCK8vfunc_58Eii kind:function(arm,size=0xc) addr:0x020faed8 +_ZN12ActorUnkMLCK8vfunc_5CEi kind:function(arm,size=0x54) addr:0x020faee4 _ZN12ActorUnkMLCK8vfunc_60Ev kind:function(arm,size=0x18) addr:0x020faf38 _ZN12ActorUnkMLCK8vfunc_68Ev kind:function(arm,size=0x90) addr:0x020faf50 _ZN12ActorUnkMLCK19func_ov031_020faeb0Ev kind:function(arm,size=0x4) addr:0x020fafe0 @@ -1218,20 +1218,20 @@ _ZN12ActorUnkMLCK8vfunc_70Ev kind:function(arm,size=0x20) addr:0x020fb034 _ZN12ActorUnkMLCK19func_ov031_020faf24Ev kind:function(arm,size=0x1e0) addr:0x020fb054 _ZN12ActorUnkMLCK19func_ov031_020fb104Ev kind:function(arm,size=0x18) addr:0x020fb234 _ZN12ActorUnkMLCK19func_ov031_020fb11cEv kind:function(arm,size=0x68) addr:0x020fb24c -_ZN18ActorUnkMLCK_B4_0019func_ov031_020fb184Ev kind:function(arm,size=0x2c) addr:0x020fb2b4 +_ZN15ActorUnkMLCK_C419func_ov031_020fb184Ev kind:function(arm,size=0x2c) addr:0x020fb2b4 _ZN15ActorUnkMLCK_D89vfunc2_00Ev kind:function(arm,size=0x1c) addr:0x020fb2e0 _ZN15ActorUnkMLCK_D89vfunc2_04Ev kind:function(arm,size=0x1c) addr:0x020fb2fc -_ZN12ActorUnkMLCK19func_ov031_020fb1e8EP18ActorUnkMLCK_B4_00 kind:function(arm,size=0x1c) addr:0x020fb318 +_ZN12ActorUnkMLCK19func_ov031_020fb1e8EP15ActorUnkMLCK_A0 kind:function(arm,size=0x1c) addr:0x020fb318 _ZN12ActorUnkMLCK19func_ov031_020fb204Ei kind:function(arm,size=0x4c) addr:0x020fb334 _ZN12ActorUnkMLCKD0Ev kind:function(arm,size=0x28) addr:0x020fb380 _ZN12ActorUnkMLCKD1Ev kind:function(arm,size=0x20) addr:0x020fb3a8 _ZN19ActorProfileUnkMLCKD1Ev kind:function(arm,size=0x14) addr:0x020fb3c8 -func_ov031_020fb2ac kind:function(arm,size=0x10) addr:0x020fb3dc -func_ov031_020fb2bc kind:function(arm,size=0x10) addr:0x020fb3ec -func_ov031_020fb2cc kind:function(arm,size=0x10) addr:0x020fb3fc -func_ov031_020fb2dc kind:function(arm,size=0x10) addr:0x020fb40c -func_ov031_020fb2ec kind:function(arm,size=0x10) addr:0x020fb41c -func_ov031_020fb2fc kind:function(arm,size=0x10) addr:0x020fb42c +_ZThn148_N12ActorUnkMLCKD0Ev kind:function(arm,size=0x10) addr:0x020fb3dc +_ZThn148_N12ActorUnkMLCK8vfunc_60Ev kind:function(arm,size=0x10) addr:0x020fb3ec +_ZThn148_N12ActorUnkMLCK8vfunc_58Eii kind:function(arm,size=0x10) addr:0x020fb3fc +_ZThn148_N12ActorUnkMLCK8vfunc_5CEi kind:function(arm,size=0x10) addr:0x020fb40c +_ZThn148_N12ActorUnkMLCK8vfunc_54Eii kind:function(arm,size=0x10) addr:0x020fb41c +_ZThn148_N12ActorUnkMLCKD1Ev kind:function(arm,size=0x10) addr:0x020fb42c _ZN19ActorProfileUnkCLLT10GetProfileEv kind:function(arm,size=0xc) addr:0x020fb43c _ZN19ActorProfileUnkCLLT6CreateEv kind:function(arm,size=0x24) addr:0x020fb448 _ZN19ActorProfileUnkCLLTC1Ev kind:function(arm,size=0x28) addr:0x020fb46c @@ -1793,7 +1793,7 @@ _ZN23MapObjectProfileUnkSAND6CreateEv kind:function(arm,size=0x24) addr:0x0210ac _ZN23MapObjectProfileUnkSANDC1Ev kind:function(arm,size=0x198) addr:0x0210ac6c _ZN16MapObjectUnkSAND19func_ov031_0210acd4Ev kind:function(arm,size=0x90) addr:0x0210ae04 _ZN16MapObjectUnkSAND19func_ov031_0210ad64Ev kind:function(arm,size=0x9c) addr:0x0210ae94 -_ZN16MapObjectUnkSAND19func_ov031_0210ae00Ev kind:function(arm,size=0x90) addr:0x0210af30 +_ZN16MapObjectUnkSAND19func_ov031_0210ae00E8Vec2bCppPv kind:function(arm,size=0x90) addr:0x0210af30 _ZN16MapObjectUnkSAND19func_ov031_0210ae90Ev kind:function(arm,size=0xc0) addr:0x0210afc0 _ZN16MapObjectUnkSAND19func_ov031_0210af50Ev kind:function(arm,size=0xc8) addr:0x0210b080 _ZN16MapObjectUnkSAND19func_ov031_0210b018Ev kind:function(arm,size=0x10) addr:0x0210b148 @@ -1801,13 +1801,13 @@ _ZN16MapObjectUnkSAND19func_ov031_0210b028Ev kind:function(arm,size=0x84) addr:0 _ZN16MapObjectUnkSAND19func_ov031_0210b0acEv kind:function(arm,size=0x38) addr:0x0210b1dc _ZN16MapObjectUnkSAND19func_ov031_0210b0e4Ev kind:function(arm,size=0x60) addr:0x0210b214 _ZN16MapObjectUnkSAND19func_ov031_0210b144Ev kind:function(arm,size=0x38) addr:0x0210b274 -_ZN16MapObjectUnkSAND19func_ov031_0210b17cEv kind:function(arm,size=0x70) addr:0x0210b2ac +_ZN16MapObjectUnkSAND19func_ov031_0210b17cEP19MapObjectUnkSAND_40i kind:function(arm,size=0x70) addr:0x0210b2ac _ZN16MapObjectUnkSAND19func_ov031_0210b1ecEv kind:function(arm,size=0xe0) addr:0x0210b31c _ZN16MapObjectUnkSAND19func_ov031_0210b2ccEv kind:function(arm,size=0x30) addr:0x0210b3fc -_ZN16MapObjectUnkSANDD1Ev kind:function(arm,size=0x14) addr:0x0210b42c -_ZN16MapObjectUnkSANDD0Ev kind:function(arm,size=0x1c) addr:0x0210b440 -_ZN16MapObjectUnkSAND19func_ov031_0210b32cEv kind:function(arm,size=0x20) addr:0x0210b45c -_ZN16MapObjectUnkSAND19func_ov031_0210b34cEv kind:function(arm,size=0x28) addr:0x0210b47c +_ZN16MapObjectUnkSAND19func_ov031_0210b2fcEv kind:function(arm,size=0x14) addr:0x0210b42c +_ZN16MapObjectUnkSAND19func_ov031_0210b310Ev kind:function(arm,size=0x1c) addr:0x0210b440 +_ZN16MapObjectUnkSANDD1Ev kind:function(arm,size=0x20) addr:0x0210b45c +_ZN16MapObjectUnkSANDD0Ev kind:function(arm,size=0x28) addr:0x0210b47c _ZN23MapObjectProfileUnkSANDD1Ev kind:function(arm,size=0x14) addr:0x0210b4a4 _ZN23MapObjectProfileUnkSPTB10GetProfileEv kind:function(arm,size=0xc) addr:0x0210b4b8 _ZN23MapObjectProfileUnkSPTB6CreateEv kind:function(arm,size=0x24) addr:0x0210b4c4 @@ -2026,7 +2026,7 @@ data_ov031_02110cd4 kind:data(any) addr:0x02110cd4 data_ov031_02110ce0 kind:data(any) addr:0x02110ce0 data_ov031_02110cec kind:data(any) addr:0x02110cec data_ov031_02110bc8 kind:data(any) addr:0x02110cf8 local -data_ov031_02110d1c kind:data(any) addr:0x02110d1c +data_ov031_02110bec kind:data(any) addr:0x02110d1c data_ov031_02110d30 kind:data(any) addr:0x02110d30 data_ov031_02110d4c kind:data(any) addr:0x02110d4c data_ov031_02110d58 kind:data(any) addr:0x02110d58 @@ -2231,13 +2231,13 @@ data_ov031_02112b90 kind:data(any) addr:0x02112b90 data_ov031_02112ba4 kind:data(any) addr:0x02112ba4 data_ov031_02112bb8 kind:data(any) addr:0x02112bb8 data_ov031_02112be0 kind:data(any) addr:0x02112be0 -data_ov031_02112c14 kind:data(any) addr:0x02112c14 +_ZTV24UnkStruct_ov031_02112ad4 kind:data(any) addr:0x02112c0c data_ov031_02112c20 kind:data(any) addr:0x02112c20 data_ov031_02112c3c kind:data(any) addr:0x02112c3c data_ov031_02112c58 kind:data(any) addr:0x02112c58 data_ov031_02112c64 kind:data(any) addr:0x02112c64 data_ov031_02112c80 kind:data(any) addr:0x02112c80 -data_ov031_02112c94 kind:data(any) addr:0x02112c94 +data_ov031_02112b54 kind:data(any) addr:0x02112c94 _ZTV25UnkStruct_027e0ce0_40_108 kind:data(any) addr:0x02112c98 ambiguous data_ov031_02112cac kind:data(any) addr:0x02112cac data_ov031_02112cb8 kind:data(any) addr:0x02112cb8 @@ -2401,11 +2401,10 @@ _ZTV24ActorProfileTreasureDrop kind:data(any) addr:0x02114d9c _ZTV25ActorProfileRedPotionDrop kind:data(any) addr:0x02114dc0 _ZTV20ActorProfileBombDrop kind:data(any) addr:0x02114de4 _ZTV13ActorItemDrop kind:data(any) addr:0x02114e08 -data_ov031_02114e68 kind:data(any) addr:0x02114e68 -data_ov031_02114e7c kind:data(any) addr:0x02114e7c +data_ov031_02114d28 kind:data(any) addr:0x02114e68 local +_ZTV15ActorUnkMLCK_D8 kind:data(any) addr:0x02114e74 _ZTV19ActorProfileUnkMLCK kind:data(any) addr:0x02114e8c -data_ov031_02114eb8 kind:data(any) addr:0x02114eb8 -_ZTV15ActorUnkMLCK_94 kind:data(any) addr:0x02114f2c +_ZTV12ActorUnkMLCK kind:data(any) addr:0x02114eb0 _ZTV19ActorProfileUnkCLLT kind:data(any) addr:0x02114f5c data_ov031_02114f88 kind:data(any) addr:0x02114f88 _ZTV19ActorProfileUnkEFSB kind:data(any) addr:0x02114fec @@ -2500,7 +2499,7 @@ data_ov031_0211606c kind:data(any) addr:0x0211606c data_ov031_021160a8 kind:data(any) addr:0x021160a8 data_ov031_021160bc kind:data(any) addr:0x021160bc data_ov031_021160d8 kind:data(any) addr:0x021160d8 -data_ov031_02116120 kind:data(any) addr:0x02116120 +data_ov031_02115fe0 kind:data(any) addr:0x02116120 data_ov031_0211612c kind:data(any) addr:0x0211612c ambiguous data_ov031_02116140 kind:data(any) addr:0x02116140 data_ov031_0211615c kind:data(any) addr:0x0211615c ambiguous @@ -2736,10 +2735,10 @@ data_ov031_02118a28 kind:bss addr:0x02118a28 data_ov031_02118a34 kind:bss addr:0x02118a34 data_ov031_02118900 kind:bss addr:0x02118a40 data_ov031_02118a58 kind:bss addr:0x02118a58 -data_ov031_02118b10 kind:bss addr:0x02118b10 -data_ov031_02118be4 kind:bss addr:0x02118be4 ambiguous -data_ov031_02118c08 kind:bss addr:0x02118c08 -data_ov031_02118c2c kind:bss addr:0x02118c2c +data_ov031_021189d0 kind:bss addr:0x02118b10 +data_ov031_02118aa4 kind:bss addr:0x02118be4 +data_ov031_02118ac8 kind:bss addr:0x02118c08 +data_ov031_02118aec kind:bss addr:0x02118c2c data_ov031_02118c50 kind:bss addr:0x02118c50 data_ov031_02118dd0 kind:bss addr:0x02118dd0 data_ov031_02118dd8 kind:bss addr:0x02118dd8 diff --git a/config/eur1/arm9/overlays/ov032/relocs.txt b/config/eur1/arm9/overlays/ov032/relocs.txt index 91424524..6daea6f4 100644 --- a/config/eur1/arm9/overlays/ov032/relocs.txt +++ b/config/eur1/arm9/overlays/ov032/relocs.txt @@ -257,7 +257,7 @@ from:0x0211b814 kind:load to:0x02122ad0 module:overlay(32) from:0x0211b828 kind:arm_call to:0x02011f3c module:main from:0x0211b834 kind:arm_call to:0x0211b888 module:overlay(32) from:0x0211b84c kind:arm_call to:0x02097a08 module:overlay(0) -from:0x0211b884 kind:load to:0x021225f4 module:overlay(32) add:0x8 +from:0x0211b884 kind:load to:0x021225f4 add:0x8 module:overlay(32) from:0x0211b894 kind:arm_call to:0x02098b7c module:overlay(0) from:0x0211b8f8 kind:arm_call_thumb to:0x02057a24 module:overlay(0) from:0x0211b924 kind:arm_call_thumb to:0x0209a1dc module:overlay(0) @@ -270,7 +270,7 @@ from:0x0211b9e8 kind:arm_call to:0x0205fc20 module:overlay(0) from:0x0211ba00 kind:arm_call to:0x0205fc20 module:overlay(0) from:0x0211ba0c kind:arm_call to:0x02098680 module:overlay(0) from:0x0211ba28 kind:arm_call to:0x0211bf44 module:overlay(32) -from:0x0211ba48 kind:load to:0x02122618 module:overlay(32) add:0x8 +from:0x0211ba48 kind:load to:0x02122618 add:0x8 module:overlay(32) from:0x0211ba4c kind:load to:0x02122ad0 module:overlay(32) from:0x0211ba50 kind:load to:0x021223e4 module:overlay(32) from:0x0211ba54 kind:load to:0x02122ac4 module:overlay(32) diff --git a/config/eur1/arm9/overlays/ov033/relocs.txt b/config/eur1/arm9/overlays/ov033/relocs.txt index 4a7351df..e5acac14 100644 --- a/config/eur1/arm9/overlays/ov033/relocs.txt +++ b/config/eur1/arm9/overlays/ov033/relocs.txt @@ -347,7 +347,7 @@ from:0x0211bec4 kind:arm_call to:0x0211be34 module:overlay(33) from:0x0211bee8 kind:load to:0x027e0ce0 module:dtcm from:0x0211bf14 kind:arm_call to:0x01fff350 module:itcm from:0x0211bf54 kind:load to:0x027e0ce4 module:dtcm -from:0x0211bf5c kind:load to:0x020b3040 module:overlay(0) +from:0x0211bf5c kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x0211bf6c kind:arm_call_thumb to:0x02057ed4 module:overlay(0) from:0x0211bf74 kind:arm_call_thumb to:0x02057ed4 module:overlay(0) from:0x0211bf7c kind:arm_call to:0x0209d100 module:overlay(0) diff --git a/config/eur1/arm9/overlays/ov034/relocs.txt b/config/eur1/arm9/overlays/ov034/relocs.txt index 06707601..bc439c65 100644 --- a/config/eur1/arm9/overlays/ov034/relocs.txt +++ b/config/eur1/arm9/overlays/ov034/relocs.txt @@ -234,7 +234,7 @@ from:0x0211afc8 kind:load to:0x027e09a4 module:dtcm from:0x0211aff8 kind:arm_call to:0x01fff350 module:itcm from:0x0211b014 kind:arm_call to:0x0211ce2c module:overlay(34) from:0x0211b054 kind:load to:0x027e0ce4 module:dtcm -from:0x0211b05c kind:load to:0x020b3040 module:overlay(0) +from:0x0211b05c kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x0211b0dc kind:arm_call to:0x0207e0fc module:overlay(0) from:0x0211b0fc kind:arm_call to:0x0207e0fc module:overlay(0) from:0x0211b108 kind:arm_call to:0x0211ca24 module:overlay(34) diff --git a/config/eur1/arm9/overlays/ov037/relocs.txt b/config/eur1/arm9/overlays/ov037/relocs.txt index d7453b32..ed653b92 100644 --- a/config/eur1/arm9/overlays/ov037/relocs.txt +++ b/config/eur1/arm9/overlays/ov037/relocs.txt @@ -155,7 +155,7 @@ from:0x0211a5ec kind:arm_call to:0x01fff350 module:itcm from:0x0211a610 kind:arm_call to:0x0211e824 module:overlay(37) from:0x0211a624 kind:arm_call to:0x01fff350 module:itcm from:0x0211a63c kind:load to:0x027e0ce4 module:dtcm -from:0x0211a640 kind:load to:0x020b3040 module:overlay(0) +from:0x0211a640 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x0211a6f4 kind:load to:0x02049be4 module:main from:0x0211a718 kind:arm_call to:0x01fff148 module:itcm from:0x0211a758 kind:arm_call to:0x01ffbbe0 module:itcm @@ -450,7 +450,7 @@ from:0x0211e584 kind:arm_call to:0x0211e494 module:overlay(37) from:0x0211e590 kind:arm_call to:0x0211e494 module:overlay(37) from:0x0211e59c kind:arm_call to:0x0211e5c8 module:overlay(37) from:0x0211e5a8 kind:load to:0x027e0ce4 module:dtcm -from:0x0211e5ac kind:load to:0x020b3040 module:overlay(0) +from:0x0211e5ac kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x0211e6ec kind:arm_call to:0x02098708 module:overlay(0) from:0x0211e710 kind:arm_call to:0x01fff148 module:itcm from:0x0211e71c kind:arm_call to:0x01ff9a5c module:itcm @@ -630,7 +630,7 @@ from:0x021206c8 kind:arm_call to:0x021205d8 module:overlay(37) from:0x021206d4 kind:arm_call to:0x021205d8 module:overlay(37) from:0x021206e0 kind:arm_call to:0x0212070c module:overlay(37) from:0x021206ec kind:load to:0x027e0ce4 module:dtcm -from:0x021206f0 kind:load to:0x020b3040 module:overlay(0) +from:0x021206f0 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x021207b8 kind:arm_call to:0x02098708 module:overlay(0) from:0x021207dc kind:arm_call to:0x01fff148 module:itcm from:0x021207e8 kind:arm_call to:0x01ff9a5c module:itcm @@ -663,7 +663,7 @@ from:0x02120b40 kind:arm_call to:0x020976d0 module:overlay(0) from:0x02120b58 kind:load to:0x021228d0 module:overlay(37) from:0x02120b84 kind:arm_call to:0x01fff350 module:itcm from:0x02120ba4 kind:load to:0x027e0ce4 module:dtcm -from:0x02120bac kind:load to:0x020b3040 module:overlay(0) +from:0x02120bac kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x02120bb4 kind:arm_call to:0x02120b5c module:overlay(37) from:0x02120be4 kind:arm_call to:0x020983dc module:overlay(0) from:0x02120c0c kind:arm_call to:0x0201bb38 module:main @@ -678,7 +678,7 @@ from:0x02120d08 kind:arm_call to:0x02016fbc module:main from:0x02120d4c kind:arm_call to:0x01fff350 module:itcm from:0x02120d70 kind:arm_call to:0x01fff350 module:itcm from:0x02120d88 kind:load to:0x027e0ce4 module:dtcm -from:0x02120d8c kind:load to:0x020b3040 module:overlay(0) +from:0x02120d8c kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x02120db4 kind:arm_call to:0x02120d94 module:overlay(37) from:0x02120e60 kind:arm_call to:0x02120554 module:overlay(37) from:0x02120e6c kind:arm_call to:0x02016958 module:main diff --git a/config/eur1/arm9/overlays/ov040/relocs.txt b/config/eur1/arm9/overlays/ov040/relocs.txt index a0593c8e..1c751012 100644 --- a/config/eur1/arm9/overlays/ov040/relocs.txt +++ b/config/eur1/arm9/overlays/ov040/relocs.txt @@ -264,7 +264,7 @@ from:0x02125678 kind:arm_call to:0x02126a78 module:overlay(40) from:0x021256bc kind:arm_call to:0x0208bc10 module:overlay(0) from:0x021256c8 kind:load to:0x027e09b8 module:dtcm from:0x021256cc kind:load to:0x027e0d34 module:dtcm -from:0x021256d0 kind:load to:0x020b3040 module:overlay(0) +from:0x021256d0 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x021256d8 kind:load to:0x027e0ce4 module:dtcm from:0x021256e4 kind:load to:0x027e09a8 module:dtcm from:0x021256e8 kind:load to:0x027e09bc module:dtcm @@ -341,7 +341,7 @@ from:0x02126430 kind:arm_call to:0x01ffb6e4 module:itcm from:0x02126440 kind:arm_call to:0x02150dac module:overlay(72) from:0x02126454 kind:arm_call to:0x02150dac module:overlay(72) from:0x02126474 kind:load to:0x027e09a4 module:dtcm -from:0x02126478 kind:load to:0x020b3040 module:overlay(0) +from:0x02126478 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x02126480 kind:load to:0x027e0ce4 module:dtcm from:0x021264cc kind:arm_call to:0x01ff9638 module:itcm from:0x021264f4 kind:arm_call to:0x01ffb6e4 module:itcm @@ -353,7 +353,7 @@ from:0x0212664c kind:arm_call to:0x0208068c module:overlay(0) from:0x02126668 kind:arm_call to:0x02070ad0 module:overlay(0) from:0x02126674 kind:arm_call to:0x0202851c module:main from:0x02126680 kind:load to:0x027e09a4 module:dtcm -from:0x02126688 kind:load to:0x020b3040 module:overlay(0) +from:0x02126688 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x0212668c kind:load to:0x027e0ce4 module:dtcm from:0x02126690 kind:load to:0x027e0cd8 module:dtcm from:0x021266c8 kind:arm_call to:0x01fff350 module:itcm @@ -361,16 +361,16 @@ from:0x0212673c kind:arm_call to:0x01ff9638 module:itcm from:0x0212675c kind:arm_call to:0x01ffb6e4 module:itcm from:0x021267c8 kind:arm_call to:0x0211a544 module:overlay(39) from:0x021267d4 kind:load to:0x027e0ce4 module:dtcm -from:0x021267d8 kind:load to:0x020b3040 module:overlay(0) +from:0x021267d8 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x021267e0 kind:load to:0x027e09b8 module:dtcm from:0x0212681c kind:arm_call to:0x01fff350 module:itcm from:0x02126838 kind:arm_call to:0x0211a5a0 module:overlay(39) from:0x02126844 kind:load to:0x027e0ce4 module:dtcm -from:0x0212684c kind:load to:0x020b3040 module:overlay(0) +from:0x0212684c kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x02126880 kind:arm_call to:0x01fff350 module:itcm from:0x0212690c kind:arm_call to:0x0211a4ec module:overlays(38,39) from:0x02126918 kind:load to:0x027e0ce4 module:dtcm -from:0x0212691c kind:load to:0x020b3040 module:overlay(0) +from:0x0212691c kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x02126940 kind:arm_call to:0x02073320 module:overlay(0) from:0x0212695c kind:arm_call to:0x02014478 module:main from:0x02126980 kind:arm_call to:0x02126590 module:overlay(40) @@ -382,13 +382,13 @@ from:0x021269dc kind:load to:0x02049b2a module:main from:0x02126a10 kind:arm_call to:0x01fff350 module:itcm from:0x02126a60 kind:arm_call to:0x01ffb714 module:itcm from:0x02126a6c kind:load to:0x027e0ce4 module:dtcm -from:0x02126a70 kind:load to:0x020b3040 module:overlay(0) +from:0x02126a70 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x02126aac kind:arm_call to:0x01fff350 module:itcm from:0x02126af0 kind:arm_call to:0x01fff350 module:itcm from:0x02126b54 kind:arm_call to:0x01ff9638 module:itcm from:0x02126b64 kind:arm_call to:0x01ffb6e4 module:itcm from:0x02126ba4 kind:load to:0x027e0ce4 module:dtcm -from:0x02126ba8 kind:load to:0x020b3040 module:overlay(0) +from:0x02126ba8 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x02126bcc kind:arm_call to:0x02073320 module:overlay(0) from:0x02126be8 kind:arm_call to:0x02014478 module:main from:0x02126c10 kind:arm_call to:0x0201bb84 module:main diff --git a/config/eur1/arm9/overlays/ov041/relocs.txt b/config/eur1/arm9/overlays/ov041/relocs.txt index b77f972d..f0961c94 100644 --- a/config/eur1/arm9/overlays/ov041/relocs.txt +++ b/config/eur1/arm9/overlays/ov041/relocs.txt @@ -28,7 +28,7 @@ from:0x021238a4 kind:arm_call_thumb to:0x0209a29c module:overlay(0) from:0x021238bc kind:arm_call to:0x02124ef8 module:overlay(41) from:0x021238e0 kind:arm_call to:0x01fff350 module:itcm from:0x02123918 kind:load to:0x027e0ce4 module:dtcm -from:0x02123920 kind:load to:0x020b3040 module:overlay(0) +from:0x02123920 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x02123930 kind:arm_call to:0x02124f84 module:overlay(41) from:0x02123968 kind:load to:0x0212dbc4 module:overlay(41) from:0x021239e8 kind:arm_call to:0x020bf8d4 module:overlay(17) @@ -125,7 +125,7 @@ from:0x02124384 kind:load to:0x0212de0c module:overlay(41) from:0x0212439c kind:arm_call to:0x02124ef8 module:overlay(41) from:0x021243c0 kind:arm_call to:0x01fff350 module:itcm from:0x021243f8 kind:load to:0x027e0ce4 module:dtcm -from:0x02124400 kind:load to:0x020b3040 module:overlay(0) +from:0x02124400 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x02124410 kind:arm_call to:0x02124f84 module:overlay(41) from:0x02124448 kind:load to:0x0212de7c module:overlay(41) from:0x021244c8 kind:arm_call to:0x020bf8d4 module:overlay(17) @@ -482,7 +482,7 @@ from:0x02127f0c kind:arm_call to:0x01fff350 module:itcm from:0x02127f34 kind:arm_call to:0x0209764c module:overlay(0) from:0x02127f54 kind:arm_call to:0x02097448 module:overlay(0) from:0x02127f60 kind:load to:0x027e0ce4 module:dtcm -from:0x02127f64 kind:load to:0x020b3040 module:overlay(0) +from:0x02127f64 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x02127f6c kind:load to:0x020b53e4 module:overlay(0) from:0x02127f84 kind:arm_call to:0x02016fbc module:main from:0x02127f90 kind:arm_call to:0x0213f9fc module:overlay(70) @@ -1005,7 +1005,7 @@ from:0x0212c1e8 kind:arm_call to:0x01fff350 module:itcm from:0x0212c228 kind:arm_call to:0x01fff350 module:itcm from:0x0212c260 kind:load to:0x027e09b8 module:dtcm from:0x0212c264 kind:load to:0x027e0ce4 module:dtcm -from:0x0212c26c kind:load to:0x020b3040 module:overlay(0) +from:0x0212c26c kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x0212c2a4 kind:arm_call to:0x0209d488 module:overlay(0) from:0x0212c2e0 kind:arm_call to:0x0209d488 module:overlay(0) from:0x0212c2f4 kind:load to:0x0212e690 module:overlay(41) diff --git a/config/eur1/arm9/overlays/ov045/relocs.txt b/config/eur1/arm9/overlays/ov045/relocs.txt index c7d3e6f3..a4866d04 100644 --- a/config/eur1/arm9/overlays/ov045/relocs.txt +++ b/config/eur1/arm9/overlays/ov045/relocs.txt @@ -106,7 +106,7 @@ from:0x021240c8 kind:arm_call to:0x0212374c module:overlay(45) from:0x021240f8 kind:arm_call to:0x0207e0fc module:overlay(0) from:0x02124110 kind:arm_call to:0x0207e1b8 module:overlay(0) from:0x02124120 kind:load to:0x027e0ce4 module:dtcm -from:0x02124128 kind:load to:0x020b3040 module:overlay(0) +from:0x02124128 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x0212412c kind:load to:0x027e09c0 module:dtcm from:0x02124148 kind:arm_call to:0x020786cc module:overlay(0) from:0x02124174 kind:arm_call to:0x02017e8c module:main diff --git a/config/eur1/arm9/overlays/ov047/symbols.txt b/config/eur1/arm9/overlays/ov047/symbols.txt index 49e37b9f..2b7e16e1 100644 --- a/config/eur1/arm9/overlays/ov047/symbols.txt +++ b/config/eur1/arm9/overlays/ov047/symbols.txt @@ -1,7 +1,7 @@ _ZN29UnkStruct_027e0cd8_0C_Base_98C1Ev kind:function(arm,size=0x64) addr:0x021305e0 _ZN29UnkStruct_027e0cd8_0C_Base_98D1Ev kind:function(arm,size=0x28) addr:0x02130644 func_ov047_0213052c kind:function(arm,size=0x30) addr:0x0213066c -func_ov047_0213055c kind:function(arm,size=0x200) addr:0x0213069c +_ZN29UnkStruct_027e0cd8_0C_Base_9819func_ov047_0213055cEv kind:function(arm,size=0x200) addr:0x0213069c func_ov047_0213075c kind:function(arm,size=0x39c) addr:0x0213089c func_ov047_02130af8 kind:function(arm,size=0x3d8) addr:0x02130c38 func_ov047_02130ed0 kind:function(arm,size=0x280) addr:0x02131010 diff --git a/config/eur1/arm9/overlays/ov049/relocs.txt b/config/eur1/arm9/overlays/ov049/relocs.txt index 193eb104..2806f02d 100644 --- a/config/eur1/arm9/overlays/ov049/relocs.txt +++ b/config/eur1/arm9/overlays/ov049/relocs.txt @@ -462,13 +462,13 @@ from:0x021343f0 kind:arm_call to:0x02132854 module:overlay(49) from:0x02134404 kind:arm_call to:0x01fff350 module:itcm from:0x02134420 kind:load to:0x020d87d0 module:overlay(24) from:0x02134424 kind:load to:0x027e0ce4 module:dtcm -from:0x0213442c kind:load to:0x020b3040 module:overlay(0) +from:0x0213442c kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x02134480 kind:arm_call to:0x01fff350 module:itcm from:0x021344ac kind:arm_call to:0x020986a8 module:overlay(0) from:0x021344d8 kind:arm_call to:0x01fff350 module:itcm from:0x021344f8 kind:load to:0x020d87d0 module:overlay(24) from:0x021344fc kind:load to:0x027e0ce4 module:dtcm -from:0x02134504 kind:load to:0x020b3040 module:overlay(0) +from:0x02134504 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x02134520 kind:load to:0x027e0d40 module:dtcm from:0x02134534 kind:load to:0x027e0d40 module:dtcm from:0x02134540 kind:arm_call to:0x02134524 module:overlay(49) diff --git a/config/eur1/arm9/overlays/ov051/relocs.txt b/config/eur1/arm9/overlays/ov051/relocs.txt index 45de9d7f..4a714129 100644 --- a/config/eur1/arm9/overlays/ov051/relocs.txt +++ b/config/eur1/arm9/overlays/ov051/relocs.txt @@ -470,7 +470,7 @@ from:0x021357e4 kind:arm_call to:0x01fff458 module:itcm from:0x021357f4 kind:arm_call to:0x02135718 module:overlay(51) from:0x02135804 kind:arm_call to:0x01fff350 module:itcm from:0x02135820 kind:load to:0x027e0ce4 module:dtcm -from:0x02135824 kind:load to:0x020b3040 module:overlay(0) +from:0x02135824 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x021358d4 kind:arm_call to:0x01fff148 module:itcm from:0x021358e0 kind:arm_call to:0x01ff9a5c module:itcm from:0x021358fc kind:load to:0x0203e964 module:main diff --git a/config/eur1/arm9/overlays/ov057/relocs.txt b/config/eur1/arm9/overlays/ov057/relocs.txt index f9bf4ba9..7593ab62 100644 --- a/config/eur1/arm9/overlays/ov057/relocs.txt +++ b/config/eur1/arm9/overlays/ov057/relocs.txt @@ -351,7 +351,7 @@ from:0x0213b794 kind:arm_call to:0x0213b67c module:overlay(57) from:0x0213b79c kind:arm_call to:0x0213b70c module:overlay(57) from:0x0213b7ac kind:arm_call to:0x01fff350 module:itcm from:0x0213b7cc kind:load to:0x027e0ce4 module:dtcm -from:0x0213b7d0 kind:load to:0x020b3040 module:overlay(0) +from:0x0213b7d0 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x0213b7e4 kind:load to:0x020578a4 module:overlay(0) from:0x0213b7f8 kind:arm_call_thumb to:0x02099b50 module:overlay(0) from:0x0213b800 kind:arm_call to:0x02011ff4 module:main diff --git a/config/eur1/arm9/overlays/ov058/relocs.txt b/config/eur1/arm9/overlays/ov058/relocs.txt index 3f9aa384..3ea01f39 100644 --- a/config/eur1/arm9/overlays/ov058/relocs.txt +++ b/config/eur1/arm9/overlays/ov058/relocs.txt @@ -1554,7 +1554,7 @@ from:0x0214d734 kind:arm_call to:0x0214cbd8 module:overlay(58) from:0x0214d744 kind:arm_call to:0x0214cda0 module:overlay(58) from:0x0214d774 kind:arm_call to:0x01fff350 module:itcm from:0x0214d794 kind:load to:0x020d87d0 module:overlay(24) -from:0x0214d798 kind:load to:0x020b3040 module:overlay(0) +from:0x0214d798 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x0214d7a0 kind:load to:0x027e0ce4 module:dtcm from:0x0214d7b0 kind:load to:0x027e0d4c module:dtcm from:0x0214d7c4 kind:load to:0x027e0d4c module:dtcm diff --git a/config/eur1/arm9/overlays/ov059/relocs.txt b/config/eur1/arm9/overlays/ov059/relocs.txt index 01523d8c..2fa67f58 100644 --- a/config/eur1/arm9/overlays/ov059/relocs.txt +++ b/config/eur1/arm9/overlays/ov059/relocs.txt @@ -27,7 +27,7 @@ from:0x021582ec kind:arm_call to:0x01fff350 module:itcm from:0x02158304 kind:arm_call to:0x02158ad4 module:overlay(59) from:0x02158310 kind:arm_call to:0x02158118 module:overlay(59) from:0x0215831c kind:load to:0x027e0ce4 module:dtcm -from:0x02158320 kind:load to:0x020b3040 module:overlay(0) +from:0x02158320 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x02158340 kind:arm_call to:0x01fff3b4 module:itcm from:0x02158360 kind:arm_call to:0x02081db0 module:overlay(0) from:0x02158368 kind:load to:0x027e0ce4 module:dtcm @@ -45,7 +45,7 @@ from:0x02158550 kind:arm_call to:0x01fff350 module:itcm from:0x02158560 kind:arm_call to:0x01fff350 module:itcm from:0x0215858c kind:arm_call to:0x01fff350 module:itcm from:0x021585b4 kind:load to:0x027e0ce4 module:dtcm -from:0x021585bc kind:load to:0x020b3040 module:overlay(0) +from:0x021585bc kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x02158670 kind:arm_call to:0x021587c8 module:overlay(59) from:0x02158678 kind:arm_call to:0x02158684 module:overlay(59) from:0x021586fc kind:arm_call to:0x021587c8 module:overlay(59) @@ -313,7 +313,7 @@ from:0x0215ac70 kind:arm_call to:0x02160cc4 module:overlay(59) from:0x0215ac7c kind:load to:0x027e0ce4 module:dtcm from:0x0215ac80 kind:load to:0x027e0d5c module:dtcm from:0x0215ac88 kind:load to:0x027e09b8 module:dtcm -from:0x0215ac90 kind:load to:0x020b3040 module:overlay(0) +from:0x0215ac90 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x0215acf4 kind:load to:0x02163878 module:overlay(59) from:0x0215ad10 kind:arm_call to:0x01fff3b4 module:itcm from:0x0215ad30 kind:arm_call to:0x02015080 module:main @@ -448,7 +448,7 @@ from:0x0215bf24 kind:arm_call to:0x01fff350 module:itcm from:0x0215bf4c kind:arm_call to:0x01fff350 module:itcm from:0x0215bf84 kind:arm_call to:0x01fff350 module:itcm from:0x0215bfa4 kind:load to:0x027e0ce4 module:dtcm -from:0x0215bfac kind:load to:0x020b3040 module:overlay(0) +from:0x0215bfac kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x0215bfd4 kind:arm_call to:0x020169d4 module:main from:0x0215c08c kind:arm_call to:0x0207e48c module:overlay(0) from:0x0215c0b0 kind:arm_call to:0x02071b64 module:overlay(0) @@ -786,7 +786,7 @@ from:0x0215f01c kind:arm_call to:0x02098524 module:overlay(0) from:0x0215f02c kind:arm_call to:0x01fff350 module:itcm from:0x0215f048 kind:load to:0x020b51f8 module:overlay(0) from:0x0215f054 kind:load to:0x027e09b8 module:dtcm -from:0x0215f05c kind:load to:0x020b3040 module:overlay(0) +from:0x0215f05c kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x0215f060 kind:load to:0x027e0ce4 module:dtcm from:0x0215f0d8 kind:arm_call to:0x02073320 module:overlay(0) from:0x0215f134 kind:arm_call to:0x0208bc10 module:overlay(0) @@ -902,7 +902,7 @@ from:0x02160424 kind:arm_call to:0x01fff350 module:itcm from:0x0216044c kind:arm_call to:0x01fff350 module:itcm from:0x02160478 kind:arm_call to:0x01fff350 module:itcm from:0x02160498 kind:load to:0x027e0ce4 module:dtcm -from:0x021604a0 kind:load to:0x020b3040 module:overlay(0) +from:0x021604a0 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x021604ac kind:arm_call_thumb to:0x02057bd4 module:overlay(0) from:0x021604b4 kind:arm_call to:0x02011ff4 module:main from:0x021604cc kind:arm_call to:0x0207b6f4 module:overlay(0) diff --git a/config/eur1/arm9/overlays/ov060/relocs.txt b/config/eur1/arm9/overlays/ov060/relocs.txt index 4fe160af..e3e02b85 100644 --- a/config/eur1/arm9/overlays/ov060/relocs.txt +++ b/config/eur1/arm9/overlays/ov060/relocs.txt @@ -585,7 +585,7 @@ from:0x0215dca4 kind:arm_call to:0x02078348 module:overlay(0) from:0x0215dcc8 kind:arm_call to:0x01fff350 module:itcm from:0x0215dd14 kind:load to:0x027e09bc module:dtcm from:0x0215dd18 kind:load to:0x027e0ce4 module:dtcm -from:0x0215dd20 kind:load to:0x020b3040 module:overlay(0) +from:0x0215dd20 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x0215dd30 kind:arm_call to:0x020f76cc module:overlay(31) from:0x0215dd64 kind:arm_call to:0x0209a04c module:overlay(0) from:0x0215dd70 kind:arm_call to:0x0205a7e0 module:overlay(0) diff --git a/config/eur1/arm9/overlays/ov063/relocs.txt b/config/eur1/arm9/overlays/ov063/relocs.txt index 74a064d4..f0c02df3 100644 --- a/config/eur1/arm9/overlays/ov063/relocs.txt +++ b/config/eur1/arm9/overlays/ov063/relocs.txt @@ -789,7 +789,7 @@ from:0x0215e20c kind:arm_call to:0x0215e214 module:overlay(63) from:0x0215e268 kind:arm_call to:0x01fff350 module:itcm from:0x0215e29c kind:load to:0x021627b4 module:overlay(63) from:0x0215e2a0 kind:load to:0x027e0ce4 module:dtcm -from:0x0215e2a4 kind:load to:0x020b3040 module:overlay(0) +from:0x0215e2a4 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x0215e2c0 kind:arm_call to:0x02018c2c module:main from:0x0215e2d4 kind:arm_call to:0x020c55bc module:overlay(24) from:0x0215e2dc kind:arm_call to:0x020c5448 module:overlay(24) @@ -922,7 +922,7 @@ from:0x0215eeac kind:load to:0x020b7b15 module:overlays(8,9,12,13,15) from:0x0215ef10 kind:arm_call to:0x01fff350 module:itcm from:0x0215ef28 kind:arm_call to:0x021457f8 module:overlay(58) from:0x0215ef48 kind:load to:0x027e0ce4 module:dtcm -from:0x0215ef4c kind:load to:0x020b3040 module:overlay(0) +from:0x0215ef4c kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x0215ef50 kind:load to:0x021627a0 module:overlay(63) from:0x0215ef5c kind:load to:0x0215ef60 module:overlay(63) from:0x0215ef94 kind:arm_call_thumb to:0x020b81fc module:overlay(12) diff --git a/config/eur1/arm9/overlays/ov066/relocs.txt b/config/eur1/arm9/overlays/ov066/relocs.txt index 7ff8d9a6..03efd661 100644 --- a/config/eur1/arm9/overlays/ov066/relocs.txt +++ b/config/eur1/arm9/overlays/ov066/relocs.txt @@ -482,7 +482,7 @@ from:0x0215b4e8 kind:arm_call to:0x02067a60 module:overlay(0) from:0x0215b504 kind:arm_call to:0x02067a60 module:overlay(0) from:0x0215b520 kind:arm_call to:0x02067a60 module:overlay(0) from:0x0215b53c kind:load to:0x027e0ce4 module:dtcm -from:0x0215b540 kind:load to:0x020b3040 module:overlay(0) +from:0x0215b540 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x0215b548 kind:load to:0x020b508c module:overlay(0) from:0x0215b54c kind:load to:0x0215d8f8 module:overlay(66) from:0x0215b550 kind:load to:0x02049be0 module:main @@ -516,12 +516,12 @@ from:0x0215ba10 kind:arm_call to:0x01fff350 module:itcm from:0x0215ba30 kind:arm_call to:0x01fff3b4 module:itcm from:0x0215ba40 kind:arm_call to:0x0215c92c module:overlay(66) from:0x0215ba4c kind:load to:0x027e0ce4 module:dtcm -from:0x0215ba54 kind:load to:0x020b3040 module:overlay(0) +from:0x0215ba54 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x0215ba84 kind:arm_call to:0x01fff350 module:itcm from:0x0215baa4 kind:arm_call to:0x01fff3b4 module:itcm from:0x0215bab4 kind:arm_call to:0x0215c988 module:overlay(66) from:0x0215bac0 kind:load to:0x027e0ce4 module:dtcm -from:0x0215bac8 kind:load to:0x020b3040 module:overlay(0) +from:0x0215bac8 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x0215bad8 kind:arm_call to:0x02016694 module:main from:0x0215bae0 kind:arm_call to:0x02158f94 module:overlay(66) from:0x0215bae8 kind:arm_call to:0x02158f94 module:overlay(66) diff --git a/config/eur1/arm9/overlays/ov068/relocs.txt b/config/eur1/arm9/overlays/ov068/relocs.txt index f1a85457..3b368338 100644 --- a/config/eur1/arm9/overlays/ov068/relocs.txt +++ b/config/eur1/arm9/overlays/ov068/relocs.txt @@ -54,7 +54,7 @@ from:0x021585f8 kind:arm_call to:0x01fff350 module:itcm from:0x02158620 kind:arm_call to:0x0215d73c module:overlay(68) from:0x0215862c kind:arm_call to:0x0215df08 module:overlay(68) from:0x02158638 kind:load to:0x027e0ce4 module:dtcm -from:0x02158640 kind:load to:0x020b3040 module:overlay(0) +from:0x02158640 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x02158644 kind:load to:0x027e0d6c module:dtcm from:0x02158648 kind:load to:0x02164294 module:overlay(68) from:0x02158670 kind:arm_call to:0x01fff3b4 module:itcm @@ -635,7 +635,7 @@ from:0x0215d858 kind:load to:0x027e09b8 module:dtcm from:0x0215d88c kind:arm_call to:0x01fff350 module:itcm from:0x0215d8b0 kind:arm_call to:0x02098680 module:overlay(0) from:0x0215d8bc kind:load to:0x027e0ce4 module:dtcm -from:0x0215d8c0 kind:load to:0x020b3040 module:overlay(0) +from:0x0215d8c0 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x0215d8f4 kind:arm_call to:0x020d461c module:overlay(24) from:0x0215d920 kind:load to:0x027e0cfc module:dtcm from:0x0215d948 kind:load to:0x01ffc6d4 module:itcm diff --git a/config/eur1/arm9/overlays/ov070/symbols.txt b/config/eur1/arm9/overlays/ov070/symbols.txt index efcbb08d..672b19bb 100644 --- a/config/eur1/arm9/overlays/ov070/symbols.txt +++ b/config/eur1/arm9/overlays/ov070/symbols.txt @@ -503,7 +503,7 @@ _ZN23MapObjectProfileUnkPTFLC1Ev kind:function(arm,size=0xa8) addr:0x0214ba2c _ZN16MapObjectUnkPTFLC1Ev kind:function(arm,size=0x80) addr:0x0214bad4 _ZN16MapObjectUnkPTFL19func_ov070_0214ba34Ev kind:function(arm,size=0x144) addr:0x0214bb54 _ZN16MapObjectUnkPTFL19func_ov070_0214bb78Ev kind:function(arm,size=0x58) addr:0x0214bc98 -_ZN16MapObjectUnkPTFL19func_ov070_0214bbd0Ev kind:function(arm,size=0x178) addr:0x0214bcf0 +_ZN16MapObjectUnkPTFL19func_ov070_0214bbd0Esb kind:function(arm,size=0x178) addr:0x0214bcf0 _ZN16MapObjectUnkPTFL19func_ov070_0214bd48Ev kind:function(arm,size=0x48) addr:0x0214be68 _ZN16MapObjectUnkPTFL19func_ov070_0214bd90Ev kind:function(arm,size=0x1c8) addr:0x0214beb0 _ZN16MapObjectUnkPTFL19func_ov070_0214bf58Ev kind:function(arm,size=0x4) addr:0x0214c078 diff --git a/config/eur1/arm9/overlays/ov071/relocs.txt b/config/eur1/arm9/overlays/ov071/relocs.txt index 21bf011c..ced30686 100644 --- a/config/eur1/arm9/overlays/ov071/relocs.txt +++ b/config/eur1/arm9/overlays/ov071/relocs.txt @@ -1540,7 +1540,7 @@ from:0x0215f2f4 kind:arm_call to:0x01fff350 module:itcm from:0x0215f334 kind:arm_call to:0x0212928c module:overlay(42) from:0x0215f344 kind:arm_call to:0x01fff350 module:itcm from:0x0215f360 kind:load to:0x027e0ce4 module:dtcm -from:0x0215f368 kind:load to:0x020b3040 module:overlay(0) +from:0x0215f368 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x0215f378 kind:load to:0x027e0d70 module:dtcm from:0x0215f38c kind:load to:0x027e0d70 module:dtcm from:0x0215f398 kind:load to:0x021652e8 module:overlay(71) diff --git a/config/eur1/arm9/overlays/ov072/relocs.txt b/config/eur1/arm9/overlays/ov072/relocs.txt index 3911b0a7..c9df5988 100644 --- a/config/eur1/arm9/overlays/ov072/relocs.txt +++ b/config/eur1/arm9/overlays/ov072/relocs.txt @@ -106,7 +106,7 @@ from:0x021517b8 kind:load to:0x02049be4 module:main from:0x021517bc kind:load to:0x027e09a8 module:dtcm from:0x021517c8 kind:load to:0x020b508c module:overlay(0) from:0x021517cc kind:load to:0x027e0ce4 module:dtcm -from:0x021517d4 kind:load to:0x020b3040 module:overlay(0) +from:0x021517d4 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x021517d8 kind:load to:0x021526bc module:overlay(72) from:0x0215180c kind:arm_call to:0x02073310 module:overlay(0) from:0x02151848 kind:arm_call to:0x020786cc module:overlay(0) diff --git a/config/eur1/arm9/overlays/ov073/relocs.txt b/config/eur1/arm9/overlays/ov073/relocs.txt index 1fdecc0a..1c07d373 100644 --- a/config/eur1/arm9/overlays/ov073/relocs.txt +++ b/config/eur1/arm9/overlays/ov073/relocs.txt @@ -1823,7 +1823,7 @@ from:0x02163a40 kind:load to:0x020aaf38 module:overlay(0) from:0x02163a44 kind:load to:0x020aaf40 module:overlay(0) from:0x02163a48 kind:load to:0x020aaf3c module:overlay(0) from:0x02163a4c kind:load to:0x027e0ce4 module:dtcm -from:0x02163a50 kind:load to:0x020b3040 module:overlay(0) +from:0x02163a50 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x02163a58 kind:load to:0x020aaf10 module:overlay(0) from:0x02163a5c kind:load to:0x020aaf14 module:overlay(0) from:0x02163a60 kind:load to:0x020aaf18 module:overlay(0) @@ -1844,7 +1844,7 @@ from:0x02163c20 kind:load to:0x020aaf2c module:overlay(0) from:0x02163c24 kind:load to:0x020aaf28 module:overlay(0) from:0x02163c28 kind:load to:0x027e0ce0 module:dtcm from:0x02163c2c kind:load to:0x027e0ce4 module:dtcm -from:0x02163c34 kind:load to:0x020b3040 module:overlay(0) +from:0x02163c34 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x02163c38 kind:load to:0x020aaf0c module:overlay(0) from:0x02163c3c kind:load to:0x020aaf38 module:overlay(0) from:0x02163c40 kind:load to:0x020aaf40 module:overlay(0) @@ -1865,7 +1865,7 @@ from:0x02163dec kind:arm_call to:0x01ffb6e4 module:itcm from:0x02163df8 kind:load to:0x020aaf2c module:overlay(0) from:0x02163dfc kind:load to:0x020aaf28 module:overlay(0) from:0x02163e00 kind:load to:0x027e0ce0 module:dtcm -from:0x02163e04 kind:load to:0x020b3040 module:overlay(0) +from:0x02163e04 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x02163e0c kind:load to:0x027e0ce4 module:dtcm from:0x02163e10 kind:load to:0x020aaf10 module:overlay(0) from:0x02163e14 kind:load to:0x020aaf14 module:overlay(0) diff --git a/config/eur1/arm9/overlays/ov074/relocs.txt b/config/eur1/arm9/overlays/ov074/relocs.txt index b90522e2..6910904c 100644 --- a/config/eur1/arm9/overlays/ov074/relocs.txt +++ b/config/eur1/arm9/overlays/ov074/relocs.txt @@ -1842,7 +1842,7 @@ from:0x02161ce8 kind:arm_call to:0x01ffb428 module:itcm from:0x02161d04 kind:arm_call to:0x01ffb428 module:itcm from:0x02161d40 kind:arm_call to:0x01fff350 module:itcm from:0x02161d5c kind:load to:0x027e0ce4 module:dtcm -from:0x02161d60 kind:load to:0x020b3040 module:overlay(0) +from:0x02161d60 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x02161d8c kind:arm_call to:0x02078868 module:overlay(0) from:0x02161d94 kind:load to:0x027e09bc module:dtcm from:0x02161da0 kind:arm_call to:0x02097960 module:overlay(0) diff --git a/config/eur1/arm9/overlays/ov075/relocs.txt b/config/eur1/arm9/overlays/ov075/relocs.txt index aa10a694..c8051bb3 100644 --- a/config/eur1/arm9/overlays/ov075/relocs.txt +++ b/config/eur1/arm9/overlays/ov075/relocs.txt @@ -381,11 +381,11 @@ from:0x02154364 kind:arm_call to:0x02097a08 module:overlay(0) from:0x021543a0 kind:load to:0x02162be8 module:overlay(75) from:0x021543d4 kind:arm_call to:0x01fff350 module:itcm from:0x021543f4 kind:load to:0x027e0ce4 module:dtcm -from:0x021543fc kind:load to:0x020b3040 module:overlay(0) +from:0x021543fc kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x0215442c kind:arm_call to:0x01fff350 module:itcm from:0x02154464 kind:arm_call to:0x01fff350 module:itcm from:0x02154484 kind:load to:0x027e0ce4 module:dtcm -from:0x0215448c kind:load to:0x020b3040 module:overlay(0) +from:0x0215448c kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x021544a0 kind:arm_call to:0x02097530 module:overlay(0) from:0x021544b4 kind:load to:0x020b53e4 module:overlay(0) from:0x021544cc kind:arm_call to:0x02098b7c module:overlay(0) @@ -1795,7 +1795,7 @@ from:0x02161184 kind:arm_call to:0x01ff93c0 module:itcm from:0x02161198 kind:arm_call to:0x01ffb974 module:itcm from:0x021611ac kind:arm_call to:0x01ffb974 module:itcm from:0x02161210 kind:arm_call to:0x02015820 module:main -from:0x0216121c kind:load to:0x020b3040 module:overlay(0) +from:0x0216121c kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x02161224 kind:load to:0x027e0ce4 module:dtcm from:0x02161228 kind:load to:0x027e0ce0 module:dtcm from:0x02161260 kind:arm_call to:0x01fff350 module:itcm @@ -1805,7 +1805,7 @@ from:0x021612cc kind:arm_call to:0x01ff93c0 module:itcm from:0x021612e0 kind:arm_call to:0x01ffb974 module:itcm from:0x021612f4 kind:arm_call to:0x01ffb974 module:itcm from:0x02161334 kind:load to:0x027e0ce4 module:dtcm -from:0x02161338 kind:load to:0x020b3040 module:overlay(0) +from:0x02161338 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x02161340 kind:load to:0x027e0ce0 module:dtcm from:0x0216138c kind:arm_call to:0x01ffb428 module:itcm from:0x0216139c kind:load to:0x020aaefc module:overlay(0) diff --git a/config/eur1/arm9/overlays/ov078/relocs.txt b/config/eur1/arm9/overlays/ov078/relocs.txt index 4425096a..0dd3f2bd 100644 --- a/config/eur1/arm9/overlays/ov078/relocs.txt +++ b/config/eur1/arm9/overlays/ov078/relocs.txt @@ -856,7 +856,7 @@ from:0x0215c23c kind:load to:0x0203e964 module:main from:0x0215c270 kind:arm_call to:0x01fff350 module:itcm from:0x0215c2a0 kind:arm_call to:0x01fff350 module:itcm from:0x0215c2c4 kind:load to:0x027e0ce4 module:dtcm -from:0x0215c2cc kind:load to:0x020b3040 module:overlay(0) +from:0x0215c2cc kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x0215c30c kind:arm_call_thumb to:0x01ffa184 module:itcm from:0x0215c338 kind:arm_call_thumb to:0x01ffa1a0 module:itcm from:0x0215c34c kind:arm_call to:0x01ffa60c module:itcm @@ -1027,7 +1027,7 @@ from:0x0215d4e8 kind:load to:0x027e0ce0 module:dtcm from:0x0215d4ec kind:load to:0x027e0cd8 module:dtcm from:0x0215d4f0 kind:load to:0x027e09b8 module:dtcm from:0x0215d4f4 kind:load to:0x027e0ce4 module:dtcm -from:0x0215d4fc kind:load to:0x020b3040 module:overlay(0) +from:0x0215d4fc kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x0215d500 kind:load to:0x020aaee8 module:overlay(0) from:0x0215d520 kind:load to:0x020aaf48 module:overlay(0) from:0x0215d524 kind:load to:0x020aaf44 module:overlay(0) diff --git a/config/eur1/arm9/overlays/ov080/relocs.txt b/config/eur1/arm9/overlays/ov080/relocs.txt index ee073649..9e1ca251 100644 --- a/config/eur1/arm9/overlays/ov080/relocs.txt +++ b/config/eur1/arm9/overlays/ov080/relocs.txt @@ -1064,7 +1064,7 @@ from:0x0215c260 kind:arm_call to:0x01fff350 module:itcm from:0x0215c28c kind:arm_call to:0x0215d35c module:overlay(80) from:0x0215c29c kind:arm_call to:0x01fff350 module:itcm from:0x0215c2b8 kind:load to:0x027e0ce4 module:dtcm -from:0x0215c2c0 kind:load to:0x020b3040 module:overlay(0) +from:0x0215c2c0 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x0215c2e4 kind:arm_call to:0x020d973c module:overlay(31) from:0x0215c2f0 kind:arm_call to:0x01fff3b4 module:itcm from:0x0215c2fc kind:arm_call to:0x02098524 module:overlay(0) diff --git a/config/eur1/arm9/overlays/ov081/relocs.txt b/config/eur1/arm9/overlays/ov081/relocs.txt index 5cd91798..7d335605 100644 --- a/config/eur1/arm9/overlays/ov081/relocs.txt +++ b/config/eur1/arm9/overlays/ov081/relocs.txt @@ -90,7 +90,7 @@ from:0x02151a8c kind:arm_call to:0x01fff498 module:itcm from:0x02151a98 kind:arm_call to:0x02152780 module:overlay(81) from:0x02151aa4 kind:arm_call to:0x021512a8 module:overlay(81) from:0x02151ab0 kind:load to:0x027e0ce4 module:dtcm -from:0x02151ab8 kind:load to:0x020b3040 module:overlay(0) +from:0x02151ab8 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x02151abc kind:load to:0x027e0ce0 module:dtcm from:0x02151ac0 kind:load to:0x027e0ce8 module:dtcm from:0x02151afc kind:arm_call to:0x02150fec module:overlay(81) diff --git a/config/eur1/arm9/overlays/ov083/relocs.txt b/config/eur1/arm9/overlays/ov083/relocs.txt index 265ae3b3..efdfec29 100644 --- a/config/eur1/arm9/overlays/ov083/relocs.txt +++ b/config/eur1/arm9/overlays/ov083/relocs.txt @@ -226,11 +226,11 @@ from:0x02154d84 kind:load to:0x0203e964 module:main from:0x02154db0 kind:arm_call to:0x01fff350 module:itcm from:0x02154dcc kind:arm_call to:0x0215c044 module:overlay(83) from:0x02154dd8 kind:load to:0x027e0ce4 module:dtcm -from:0x02154de0 kind:load to:0x020b3040 module:overlay(0) +from:0x02154de0 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x02154e0c kind:arm_call to:0x01fff350 module:itcm from:0x02154e28 kind:arm_call to:0x0215bf6c module:overlay(83) from:0x02154e34 kind:load to:0x027e0ce4 module:dtcm -from:0x02154e3c kind:load to:0x020b3040 module:overlay(0) +from:0x02154e3c kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x02154e68 kind:arm_call to:0x01ffaf74 module:itcm from:0x02154e94 kind:arm_call to:0x0209ff00 module:overlay(0) from:0x02154eb0 kind:arm_call to:0x0209ff00 module:overlay(0) @@ -312,7 +312,7 @@ from:0x02155c38 kind:load to:0x0215da58 module:overlay(83) from:0x02155c3c kind:load to:0x027e09b8 module:dtcm from:0x02155c40 kind:load to:0x020b51f8 module:overlay(0) from:0x02155c44 kind:load to:0x027e0d34 module:dtcm -from:0x02155c4c kind:load to:0x020b3040 module:overlay(0) +from:0x02155c4c kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x02155c50 kind:load to:0x027e0ce4 module:dtcm from:0x02155c54 kind:load to:0x027e09ac module:dtcm from:0x02155cc4 kind:arm_call to:0x020a7f98 module:overlay(0) @@ -390,7 +390,7 @@ from:0x02156780 kind:arm_call to:0x02072724 module:overlay(0) from:0x02156794 kind:load to:0x027e09b8 module:dtcm from:0x02156798 kind:load to:0x020b51f8 module:overlay(0) from:0x0215679c kind:load to:0x027e0d34 module:dtcm -from:0x021567a4 kind:load to:0x020b3040 module:overlay(0) +from:0x021567a4 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x021567a8 kind:load to:0x027e0ce4 module:dtcm from:0x021567ac kind:load to:0x027e09ac module:dtcm from:0x0215681c kind:arm_call to:0x020a7f98 module:overlay(0) diff --git a/config/eur1/arm9/overlays/ov084/relocs.txt b/config/eur1/arm9/overlays/ov084/relocs.txt index 16c9fe69..8a6db5ca 100644 --- a/config/eur1/arm9/overlays/ov084/relocs.txt +++ b/config/eur1/arm9/overlays/ov084/relocs.txt @@ -248,7 +248,7 @@ from:0x02153564 kind:load to:0x02162c30 module:overlay(84) from:0x02153568 kind:load to:0x027e09c0 module:dtcm from:0x02153598 kind:arm_call to:0x01fff350 module:itcm from:0x021535bc kind:load to:0x027e0ce4 module:dtcm -from:0x021535c4 kind:load to:0x020b3040 module:overlay(0) +from:0x021535c4 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x021535f8 kind:arm_call to:0x01ffb428 module:itcm from:0x02153618 kind:arm_call to:0x020d9b1c module:overlay(31) from:0x0215363c kind:arm_call to:0x02078264 module:overlay(0) @@ -336,7 +336,7 @@ from:0x02154310 kind:arm_call to:0x02161104 module:overlay(84) from:0x02154348 kind:arm_call to:0x02097448 module:overlay(0) from:0x02154358 kind:load to:0x027e0cd8 module:dtcm from:0x0215435c kind:load to:0x027e0ce4 module:dtcm -from:0x02154360 kind:load to:0x020b3040 module:overlay(0) +from:0x02154360 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x02154368 kind:load to:0x02049be4 module:main from:0x0215436c kind:load to:0x020b53e4 module:overlay(0) from:0x02154398 kind:arm_call to:0x02154180 module:overlay(84) @@ -567,7 +567,7 @@ from:0x02156820 kind:arm_call to:0x02159898 module:overlay(84) from:0x02156840 kind:arm_call to:0x02096d54 module:overlay(0) from:0x021568d4 kind:arm_call to:0x02155a84 module:overlay(84) from:0x02156900 kind:load to:0x027e0ce4 module:dtcm -from:0x02156904 kind:load to:0x020b3040 module:overlay(0) +from:0x02156904 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x0215690c kind:load to:0x02049be4 module:main from:0x02156928 kind:arm_call to:0x02155838 module:overlay(84) from:0x02156968 kind:arm_call to:0x02096d54 module:overlay(0) diff --git a/config/eur1/arm9/overlays/ov087/relocs.txt b/config/eur1/arm9/overlays/ov087/relocs.txt index ff7e82b0..f2796d24 100644 --- a/config/eur1/arm9/overlays/ov087/relocs.txt +++ b/config/eur1/arm9/overlays/ov087/relocs.txt @@ -474,7 +474,7 @@ from:0x02158fc4 kind:arm_call to:0x0209764c module:overlay(0) from:0x0215900c kind:arm_call to:0x02097448 module:overlay(0) from:0x02159020 kind:arm_call to:0x02151030 module:overlay(85) from:0x0215902c kind:load to:0x027e0ce4 module:dtcm -from:0x02159034 kind:load to:0x020b3040 module:overlay(0) +from:0x02159034 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x02159038 kind:load to:0x027e09bc module:dtcm from:0x0215903c kind:load to:0x020b53e4 module:overlay(0) from:0x02159064 kind:arm_call to:0x0209764c module:overlay(0) @@ -485,7 +485,7 @@ from:0x021590e0 kind:load to:0x02078b5c module:overlay(0) from:0x02159118 kind:arm_call to:0x01fff350 module:itcm from:0x02159160 kind:arm_call to:0x01fff350 module:itcm from:0x02159180 kind:load to:0x027e0ce4 module:dtcm -from:0x02159188 kind:load to:0x020b3040 module:overlay(0) +from:0x02159188 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x02159350 kind:load to:0x02049be4 module:main from:0x021593f4 kind:arm_call to:0x01ffb6e4 module:itcm from:0x0215943c kind:arm_call to:0x01ffb6e4 module:itcm @@ -617,7 +617,7 @@ from:0x0215afc4 kind:arm_call to:0x02152ec8 module:overlay(85) from:0x0215afd4 kind:arm_call to:0x01fff350 module:itcm from:0x0215aff0 kind:load to:0x027e09a8 module:dtcm from:0x0215aff8 kind:load to:0x027e0ce4 module:dtcm -from:0x0215b000 kind:load to:0x020b3040 module:overlay(0) +from:0x0215b000 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x0215b03c kind:arm_call to:0x02015080 module:main from:0x0215b05c kind:arm_call to:0x02071b64 module:overlay(0) from:0x0215b090 kind:arm_call to:0x02015080 module:main @@ -1035,7 +1035,7 @@ from:0x0215e68c kind:load to:0x021620ac module:overlay(87) from:0x0215e690 kind:load to:0x021627fc module:overlay(87) from:0x0215e694 kind:load to:0x027e0cd8 module:dtcm from:0x0215e698 kind:load to:0x027e0ce4 module:dtcm -from:0x0215e6a0 kind:load to:0x020b3040 module:overlay(0) +from:0x0215e6a0 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x0215e6a4 kind:load to:0x027e0ce8 module:dtcm from:0x0215e6ac kind:load to:0x020b3504 module:overlay(0) from:0x0215e714 kind:arm_call to:0x02073320 module:overlay(0) diff --git a/config/eur1/arm9/overlays/ov088/relocs.txt b/config/eur1/arm9/overlays/ov088/relocs.txt index 58132c44..2357d008 100644 --- a/config/eur1/arm9/overlays/ov088/relocs.txt +++ b/config/eur1/arm9/overlays/ov088/relocs.txt @@ -203,7 +203,7 @@ from:0x02167058 kind:load to:0x027e0994 module:dtcm from:0x0216705c kind:load to:0x02177398 module:overlay(88) from:0x02167060 kind:load to:0x027e09a8 module:dtcm from:0x02167064 kind:load to:0x027e0ce4 module:dtcm -from:0x0216706c kind:load to:0x020b3040 module:overlay(0) +from:0x0216706c kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x02167070 kind:load to:0x027e0ce8 module:dtcm from:0x02167078 kind:load to:0x020b3504 module:overlay(0) from:0x0216707c kind:load to:0x027e0ce0 module:dtcm @@ -233,7 +233,7 @@ from:0x021674a8 kind:load to:0x027e0ce4 module:dtcm from:0x021674b4 kind:load to:0x020b53e4 module:overlay(0) from:0x021674b8 kind:load to:0x021743a8 module:overlay(88) from:0x021674c4 kind:load to:0x027e09ac module:dtcm -from:0x021674d4 kind:load to:0x020b3040 module:overlay(0) +from:0x021674d4 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x02167500 kind:arm_call to:0x01fff3b4 module:itcm from:0x0216752c kind:load to:0x027e0ce4 module:dtcm from:0x02167548 kind:arm_call to:0x01fff3b4 module:itcm diff --git a/config/eur1/arm9/overlays/ov092/relocs.txt b/config/eur1/arm9/overlays/ov092/relocs.txt index 4b015d86..a71b0fbe 100644 --- a/config/eur1/arm9/overlays/ov092/relocs.txt +++ b/config/eur1/arm9/overlays/ov092/relocs.txt @@ -518,7 +518,7 @@ from:0x0216992c kind:arm_call to:0x01fff350 module:itcm from:0x02169984 kind:arm_call to:0x01fff498 module:itcm from:0x021699c0 kind:load to:0x027e09a4 module:dtcm from:0x021699c4 kind:load to:0x027e0ce4 module:dtcm -from:0x021699cc kind:load to:0x020b3040 module:overlay(0) +from:0x021699cc kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x021699d4 kind:load to:0x027e0ce8 module:dtcm from:0x02169b10 kind:arm_call to:0x0216d084 module:overlay(92) from:0x02169b9c kind:load to:0x0217d980 module:overlay(92) diff --git a/config/eur1/arm9/overlays/ov092/symbols.txt b/config/eur1/arm9/overlays/ov092/symbols.txt index 744b54cc..b2324b2e 100644 --- a/config/eur1/arm9/overlays/ov092/symbols.txt +++ b/config/eur1/arm9/overlays/ov092/symbols.txt @@ -160,7 +160,7 @@ func_ov092_021688c8 kind:function(arm,size=0x2c) addr:0x02168a48 func_ov092_021688f4 kind:function(arm,size=0x2c) addr:0x02168a74 func_ov092_02168920 kind:function(arm,size=0xb4) addr:0x02168aa0 func_ov092_021689d4 kind:function(arm,size=0x14) addr:0x02168b54 -func_ov092_021689e8 kind:function(arm,size=0xac) addr:0x02168b68 +_ZN25UnkStruct_027e0ce0_40_14C19func_ov092_021689e8EiP21UnkStruct_027e0ce0_40P15PlayerLinkActorP25UnkStruct_027e0ce0_40_328 kind:function(arm,size=0xac) addr:0x02168b68 func_ov092_02168a94 kind:function(arm,size=0x28) addr:0x02168c14 func_ov092_02168abc kind:function(arm,size=0x118) addr:0x02168c3c func_ov092_02168bd4 kind:function(arm,size=0x2c) addr:0x02168d54 diff --git a/config/eur1/arm9/overlays/ov093/relocs.txt b/config/eur1/arm9/overlays/ov093/relocs.txt index 08999780..b4a83772 100644 --- a/config/eur1/arm9/overlays/ov093/relocs.txt +++ b/config/eur1/arm9/overlays/ov093/relocs.txt @@ -1158,7 +1158,7 @@ from:0x02171ae0 kind:arm_call to:0x02171184 module:overlay(93) from:0x02171ae8 kind:load to:0x02177ebc module:overlay(93) from:0x02171b94 kind:arm_call to:0x01fff350 module:itcm from:0x02171bd0 kind:load to:0x027e0ce4 module:dtcm -from:0x02171bd8 kind:load to:0x020b3040 module:overlay(0) +from:0x02171bd8 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x02171c14 kind:load to:0x02177ebc module:overlay(93) from:0x02171c64 kind:arm_call to:0x02171184 module:overlay(93) from:0x02171c94 kind:arm_call to:0x0216f4d8 module:overlay(93) diff --git a/config/eur1/arm9/overlays/ov093/symbols.txt b/config/eur1/arm9/overlays/ov093/symbols.txt index 6fd2daf4..13bfd9fd 100644 --- a/config/eur1/arm9/overlays/ov093/symbols.txt +++ b/config/eur1/arm9/overlays/ov093/symbols.txt @@ -85,7 +85,7 @@ _ZN19func_ov093_02168004D0Ev kind:function(arm,size=0x1c) addr:0x02168184 func_ov093_02168020 kind:function(arm,size=0xdc) addr:0x021681a0 func_ov093_021680fc kind:function(arm,size=0xa8) addr:0x0216827c func_ov093_021681a4 kind:function(arm,size=0x7c) addr:0x02168324 -func_ov093_02168220 kind:function(arm,size=0x38) addr:0x021683a0 +_ZN21UnkStruct_027e0ce0_4019func_ov093_02168220Ev kind:function(arm,size=0x38) addr:0x021683a0 func_ov093_02168258 kind:function(arm,size=0xb4) addr:0x021683d8 func_ov093_0216830c kind:function(arm,size=0xfc) addr:0x0216848c func_ov093_02168408 kind:function(thumb,size=0x7c) addr:0x02168588 @@ -98,7 +98,7 @@ _ZN25UnkStruct_027e0ce0_40_14CD1Ev kind:function(thumb,size=0x2) addr:0x021689cc _ZN25UnkStruct_027e0ce0_40_14C19func_ov093_02168850Ev kind:function(thumb,size=0x14) addr:0x021689d0 func_ov093_02168864 kind:function(arm,size=0x184) addr:0x021689e4 func_ov093_021689e8 kind:function(arm,size=0x43c) addr:0x02168b68 -func_ov093_02168e24 kind:function(arm,size=0x6c) addr:0x02168fa4 +_ZN25UnkStruct_027e0ce0_40_14C19func_ov093_02168e24Ei kind:function(arm,size=0x6c) addr:0x02168fa4 func_ov093_02168e90 kind:function(thumb,size=0xa) addr:0x02169010 func_ov093_02168e9c kind:function(arm,size=0x24) addr:0x0216901c func_ov093_02168ec0 kind:function(arm,size=0x9c) addr:0x02169040 @@ -162,7 +162,7 @@ _ZN19func_ov093_0216ccbcD0Ev kind:function(arm,size=0x1c) addr:0x0216ce3c func_ov093_0216ccd8 kind:function(thumb,size=0x14) addr:0x0216ce58 func_ov093_0216ccec kind:function(arm,size=0x94) addr:0x0216ce6c func_ov093_0216cd80 kind:function(arm,size=0xa4) addr:0x0216cf00 -func_ov093_0216ce24 kind:function(arm,size=0x3c) addr:0x0216cfa4 +_ZN15PlayerLinkActor19func_ov093_0216ce24EPi kind:function(arm,size=0x3c) addr:0x0216cfa4 _ZN25UnkStruct_027e0ce0_40_328C1EPvP21UnkStruct_027e0ce0_40P25UnkStruct_027e0ce0_40_150Pj kind:function(thumb,size=0x1bc) addr:0x0216cfe0 _ZN25UnkStruct_027e0ce0_40_328D1Ev kind:function(thumb,size=0xb6) addr:0x0216d19c _ZN25UnkStruct_027e0ce0_40_32819func_ov093_0216d0d4Ev kind:function(thumb,size=0x8c) addr:0x0216d254 @@ -173,13 +173,13 @@ func_ov093_0216d3fc kind:function(arm,size=0x30) addr:0x0216d57c func_ov093_0216d42c kind:function(arm,size=0x14) addr:0x0216d5ac func_ov093_0216d440 kind:function(arm,size=0xb4) addr:0x0216d5c0 func_ov093_0216d4f4 kind:function(arm,size=0xc4) addr:0x0216d674 -func_ov093_0216d5b8 kind:function(arm,size=0x830) addr:0x0216d738 +_ZN25UnkStruct_027e0ce0_40_32819func_ov093_0216d5b8Ei kind:function(arm,size=0x830) addr:0x0216d738 func_ov093_0216dde8 kind:function(arm,size=0x48) addr:0x0216df68 -func_ov093_0216de30 kind:function(arm,size=0x98) addr:0x0216dfb0 -func_ov093_0216dec8 kind:function(arm,size=0x260) addr:0x0216e048 +_ZN25UnkStruct_027e0ce0_40_32819func_ov093_0216de30Eii kind:function(arm,size=0x98) addr:0x0216dfb0 +_ZN25UnkStruct_027e0ce0_40_32819func_ov093_0216dec8Ei kind:function(arm,size=0x260) addr:0x0216e048 func_ov093_0216e128 kind:function(arm,size=0x68) addr:0x0216e2a8 func_ov093_0216e190 kind:function(arm,size=0x14) addr:0x0216e310 -func_ov093_0216e1a4 kind:function(arm,size=0xfc) addr:0x0216e324 +_ZN25UnkStruct_027e0ce0_40_32819func_ov093_0216e1a4Ei kind:function(arm,size=0xfc) addr:0x0216e324 func_ov093_0216e2a0 kind:function(arm,size=0x18) addr:0x0216e420 func_ov093_0216e2b8 kind:function(arm,size=0x20) addr:0x0216e438 func_ov093_0216e2d8 kind:function(arm,size=0x20) addr:0x0216e458 @@ -218,7 +218,7 @@ func_ov093_0216f66c kind:function(thumb,size=0x10) addr:0x0216f7ec func_ov093_0216f67c kind:function(thumb,size=0x10) addr:0x0216f7fc func_ov093_0216f68c kind:function(thumb,size=0x7c) addr:0x0216f80c func_ov093_0216f708 kind:function(thumb,size=0x12) addr:0x0216f888 -func_ov093_0216f71c kind:function(thumb,size=0x50) addr:0x0216f89c +_ZN25UnkStruct_027e0ce0_40_32819func_ov093_0216f71cEPi kind:function(thumb,size=0x50) addr:0x0216f89c func_ov093_0216f76c kind:function(thumb,size=0xc) addr:0x0216f8ec func_ov093_0216f778 kind:function(arm,size=0x78) addr:0x0216f8f8 func_ov093_0216f7f0 kind:function(arm,size=0x7c) addr:0x0216f970 diff --git a/config/eur1/arm9/overlays/ov094/relocs.txt b/config/eur1/arm9/overlays/ov094/relocs.txt index fb9b0f5f..da0866bb 100644 --- a/config/eur1/arm9/overlays/ov094/relocs.txt +++ b/config/eur1/arm9/overlays/ov094/relocs.txt @@ -752,7 +752,7 @@ from:0x0216bf9c kind:load to:0x02049be4 module:main from:0x0216bfa0 kind:load to:0x020b53e4 module:overlay(0) from:0x0216bfa8 kind:load to:0x02178c80 module:overlay(94) from:0x0216bfac kind:load to:0x027e0ce4 module:dtcm -from:0x0216bfb0 kind:load to:0x020b3040 module:overlay(0) +from:0x0216bfb0 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x0216bfb4 kind:load to:0x0203e964 module:main from:0x0216c094 kind:arm_call to:0x02058fc4 module:overlay(0) from:0x0216c0bc kind:arm_call to:0x01ffc634 module:itcm @@ -1080,7 +1080,7 @@ from:0x0216f084 kind:load to:0x020b53e4 module:overlay(0) from:0x0216f0b8 kind:arm_call to:0x01fff350 module:itcm from:0x0216f0d8 kind:arm_call to:0x0216f3d0 module:overlay(94) from:0x0216f0e4 kind:load to:0x027e0ce4 module:dtcm -from:0x0216f0ec kind:load to:0x020b3040 module:overlay(0) +from:0x0216f0ec kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x0216f0fc kind:arm_call to:0x020983dc module:overlay(0) from:0x0216f154 kind:arm_call_thumb to:0x02057b70 module:overlay(0) from:0x0216f190 kind:arm_call to:0x0203d160 module:main diff --git a/config/eur1/arm9/overlays/ov095/relocs.txt b/config/eur1/arm9/overlays/ov095/relocs.txt index c4a3f67a..59a89fd2 100644 --- a/config/eur1/arm9/overlays/ov095/relocs.txt +++ b/config/eur1/arm9/overlays/ov095/relocs.txt @@ -96,7 +96,7 @@ from:0x0217a734 kind:thumb_call to:0x0217a7b4 module:overlay(95) from:0x0217a73c kind:thumb_call_arm to:0x0215422c module:overlays(71,75) from:0x0217a746 kind:thumb_call to:0x020bbaac module:overlay(1) from:0x0217a76a kind:thumb_call to:0x0217a5bc module:overlay(95) -from:0x0217a774 kind:load to:0x020b3040 module:overlay(0) +from:0x0217a774 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x0217a77c kind:load to:0x027e0ce4 module:dtcm from:0x0217a780 kind:load to:0x027e0ce0 module:dtcm from:0x0217a7b0 kind:load to:0x027e09b8 module:dtcm @@ -514,7 +514,7 @@ from:0x0217da78 kind:arm_call to:0x0212462c module:overlay(45) from:0x0217da88 kind:arm_call to:0x0208cf70 module:overlay(0) from:0x0217da94 kind:load to:0x027e09a8 module:dtcm from:0x0217da9c kind:load to:0x027e0ce4 module:dtcm -from:0x0217daac kind:load to:0x020b3040 module:overlay(0) +from:0x0217daac kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x0217dab0 kind:load to:0x02177e8c module:overlays(89,90,91,93,94) from:0x0217daf4 kind:arm_call to:0x01fff3b4 module:itcm from:0x0217db00 kind:arm_call to:0x01fff458 module:itcm diff --git a/config/eur1/arm9/overlays/ov096/relocs.txt b/config/eur1/arm9/overlays/ov096/relocs.txt index 364ac2d0..a2516273 100644 --- a/config/eur1/arm9/overlays/ov096/relocs.txt +++ b/config/eur1/arm9/overlays/ov096/relocs.txt @@ -1,7 +1,7 @@ from:0x02179d2c kind:arm_call to:0x01fff350 module:itcm from:0x02179d48 kind:arm_call to:0x0217aee8 module:overlay(96) from:0x02179d90 kind:load to:0x027e0ce4 module:dtcm -from:0x02179d98 kind:load to:0x020b3040 module:overlay(0) +from:0x02179d98 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x02179db4 kind:load to:0x027e0cd8 module:dtcm from:0x02179db8 kind:load to:0x02081e64 module:overlay(0) from:0x02179dd2 kind:thumb_call_arm to:0x02081db0 module:overlay(0) @@ -20,7 +20,7 @@ from:0x02179f04 kind:thumb_call_arm to:0x0206c9a8 module:overlay(0) from:0x02179f16 kind:thumb_call_arm to:0x02070594 module:overlay(0) from:0x02179f2e kind:thumb_call_arm to:0x0206d180 module:overlay(0) from:0x02179f38 kind:load to:0x027e09a4 module:dtcm -from:0x02179f3c kind:load to:0x020b3040 module:overlay(0) +from:0x02179f3c kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x02179f44 kind:load to:0x027e0ce4 module:dtcm from:0x02179f48 kind:load to:0x020b51f8 module:overlay(0) from:0x02179fa8 kind:arm_call_thumb to:0x02179de8 module:overlay(96) diff --git a/config/eur1/arm9/overlays/ov101/relocs.txt b/config/eur1/arm9/overlays/ov101/relocs.txt index f69168c9..82bbd1be 100644 --- a/config/eur1/arm9/overlays/ov101/relocs.txt +++ b/config/eur1/arm9/overlays/ov101/relocs.txt @@ -79,7 +79,7 @@ from:0x021833b4 kind:thumb_call to:0x020bcc10 module:overlay(1) from:0x0218345e kind:thumb_call to:0x0216d34c module:overlay(93) from:0x02183472 kind:thumb_call to:0x020bbfbc module:overlay(1) from:0x021834ac kind:thumb_call_arm to:0x01fff350 module:itcm -from:0x021834cc kind:load to:0x020b3040 module:overlay(0) +from:0x021834cc kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x021834d0 kind:load to:0x027e0ce4 module:dtcm from:0x021834dc kind:thumb_call to:0x020b6d98 module:overlay(1) from:0x021834f2 kind:thumb_call_arm to:0x02011ff4 module:main diff --git a/config/eur1/arm9/overlays/ov101/symbols.txt b/config/eur1/arm9/overlays/ov101/symbols.txt index b3dd0e96..d00cc123 100644 --- a/config/eur1/arm9/overlays/ov101/symbols.txt +++ b/config/eur1/arm9/overlays/ov101/symbols.txt @@ -14,7 +14,7 @@ _ZN21UnkStruct_027e0ce0_40D1Ev kind:function(thumb,size=0x54) addr:0x02183160 _ZN21UnkStruct_027e0ce0_4019func_ov101_02182fb4Eb kind:function(thumb,size=0x50) addr:0x021831b4 _ZN21UnkStruct_027e0ce0_4019func_ov101_02183004Ev kind:function(thumb,size=0x1e) addr:0x02183204 _ZN21UnkStruct_027e0ce0_4019func_ov101_02183024EPK24UnkStruct_ov001_020c40f4S2_iiP11ItemManagerP21UnkStruct_027e0ce0_30bb kind:function(thumb,size=0x260) addr:0x02183224 -_ZN21PlayerLinkActor_A0_1CC1Ei kind:function(thumb,size=0xc) addr:0x02183484 +_ZN21PlayerLinkActor_A0_1CC1EP21UnkStruct_027e0ce0_40 kind:function(thumb,size=0xc) addr:0x02183484 _ZN21PlayerLinkActor_A0_1C19func_ov101_02183290Ev kind:function(thumb,size=0x48) addr:0x02183490 _ZN30UnkStruct_027e09a4_54_Derived1C2EPi kind:function(thumb,size=0x50) addr:0x021834d8 _ZN30UnkStruct_027e09a4_54_Derived18vfunc_0CEv kind:function(thumb,size=0x134) addr:0x02183528 diff --git a/config/eur1/arm9/overlays/ov102/delinks.txt b/config/eur1/arm9/overlays/ov102/delinks.txt index ac95e48e..78e7c84e 100644 --- a/config/eur1/arm9/overlays/ov102/delinks.txt +++ b/config/eur1/arm9/overlays/ov102/delinks.txt @@ -4,3 +4,26 @@ .ctor start:0x02184b74 end:0x02184b78 kind:rodata align:4 .data start:0x02184b80 end:0x02184c40 kind:data align:32 .bss start:0x02184c40 end:0x02184c40 kind:bss align:32 + +src/102_CourseExecLand/UnkStruct_027e0ce0_40_102.cpp: + .text start:0x02182e20 end:0x021837c4 + +src/102_CourseExecLand/MapObjectUnkSAND_102.cpp: + complete + .text start:0x021837c4 end:0x02183e14 + .rodata start:0x02184ab0 end:0x02184b50 + +src/102_CourseExecLand/MapObjectUnkPTFL_102.cpp: + .text start:0x02183e14 end:0x021847c8 + .data start:0x02184b80 end:0x02184c10 + +src/102_CourseExecLand/UnkStruct_027e0cd8_0C_102.cpp: + complete + .text start:0x021847c8 end:0x02184844 + +src/102_CourseExecLand/ActorUnkMLCK_102.cpp: + complete + .text start:0x02184844 end:0x02184ab0 + .init start:0x02184b50 end:0x02184b74 + .ctor start:0x02184b74 end:0x02184b78 + .data start:0x02184c10 end:0x02184c40 diff --git a/config/eur1/arm9/overlays/ov102/relocs.txt b/config/eur1/arm9/overlays/ov102/relocs.txt index f76e9c7f..e0950538 100644 --- a/config/eur1/arm9/overlays/ov102/relocs.txt +++ b/config/eur1/arm9/overlays/ov102/relocs.txt @@ -61,7 +61,7 @@ from:0x02183994 kind:load to:0x027e0cec module:dtcm from:0x0218399c kind:load to:0x027e09a8 module:dtcm from:0x02183a4c kind:arm_call to:0x01ffedf4 module:itcm from:0x02183a6c kind:arm_call to:0x01ffedf4 module:itcm -from:0x02183a8c kind:arm_call to:0x0210af30 module:overlays(26,31) +from:0x02183a8c kind:arm_call to:0x0210af30 module:overlay(31) from:0x02183ae8 kind:arm_call to:0x0200f05c module:main from:0x02183b38 kind:arm_call to:0x01ffc6d4 module:itcm from:0x02183b40 kind:arm_call_thumb to:0x02057ed4 module:overlay(0) @@ -73,7 +73,7 @@ from:0x02183b64 kind:load to:0x020b19a0 add:0x8 module:overlay(0) from:0x02183bac kind:arm_call to:0x021837c4 module:overlay(102) from:0x02183cf0 kind:arm_call to:0x0207e274 module:overlay(0) from:0x02183d08 kind:arm_call to:0x0207e288 module:overlay(0) -from:0x02183d18 kind:load to:0x02118be4 module:overlays(26,31) +from:0x02183d18 kind:load to:0x02118be4 module:overlay(31) from:0x02183d1c kind:load to:0x02118c08 module:overlay(31) from:0x02183d20 kind:load to:0x02118c2c module:overlay(31) from:0x02183d24 kind:load to:0x027e09c0 module:dtcm @@ -156,7 +156,7 @@ from:0x02184984 kind:arm_call to:0x02073330 module:overlay(0) from:0x021849b4 kind:load to:0x020d87d0 module:overlay(24) from:0x021849b8 kind:load to:0x027e0cf0 module:dtcm from:0x021849bc kind:load to:0x027e0ce4 module:dtcm -from:0x021849c0 kind:load to:0x02184c24 module:overlay(102) +from:0x021849c0 kind:load to:0x02184c1c add:0x8 module:overlay(102) from:0x021849c8 kind:load to:0x020b51f8 module:overlay(0) from:0x021849cc kind:load to:0x020b5208 module:overlay(0) from:0x021849d0 kind:load to:0x027e09b8 module:dtcm diff --git a/config/eur1/arm9/overlays/ov102/symbols.txt b/config/eur1/arm9/overlays/ov102/symbols.txt index 4957469b..504082b8 100644 --- a/config/eur1/arm9/overlays/ov102/symbols.txt +++ b/config/eur1/arm9/overlays/ov102/symbols.txt @@ -1,39 +1,39 @@ -func_ov102_02182c20 kind:function(arm,size=0x64) addr:0x02182e20 -func_ov102_02182c84 kind:function(arm,size=0x1d0) addr:0x02182e84 -func_ov102_02182e54 kind:function(arm,size=0x154) addr:0x02183054 -func_ov102_02182fa8 kind:function(arm,size=0x54) addr:0x021831a8 -func_ov102_02182ffc kind:function(arm,size=0x40) addr:0x021831fc -func_ov102_0218303c kind:function(arm,size=0x144) addr:0x0218323c -func_ov102_02183180 kind:function(arm,size=0x34) addr:0x02183380 -func_ov102_021831b4 kind:function(arm,size=0x3c) addr:0x021833b4 -func_ov102_021831f0 kind:function(arm,size=0x4c) addr:0x021833f0 -func_ov102_0218323c kind:function(arm,size=0x1d8) addr:0x0218343c -func_ov102_02183414 kind:function(arm,size=0x1b0) addr:0x02183614 -func_ov102_021835c4 kind:function(arm,size=0x1e4) addr:0x021837c4 -func_ov102_021837a8 kind:function(arm,size=0x1c0) addr:0x021839a8 -func_ov102_02183968 kind:function(arm,size=0x1c0) addr:0x02183b68 -func_ov102_02183b28 kind:function(arm,size=0x48) addr:0x02183d28 -func_ov102_02183b70 kind:function(arm,size=0xa4) addr:0x02183d70 -func_ov102_02183c14 kind:function(arm,size=0x58) addr:0x02183e14 -func_ov102_02183c6c kind:function(arm,size=0x28) addr:0x02183e6c -func_ov102_02183c94 kind:function(arm,size=0x110) addr:0x02183e94 -func_ov102_02183da4 kind:function(arm,size=0x44) addr:0x02183fa4 -func_ov102_02183de8 kind:function(arm,size=0x180) addr:0x02183fe8 -func_ov102_02183f68 kind:function(arm,size=0x14) addr:0x02184168 -func_ov102_02183f7c kind:function(arm,size=0x220) addr:0x0218417c -func_ov102_0218419c kind:function(arm,size=0x218) addr:0x0218439c -func_ov102_021843b4 kind:function(arm,size=0x214) addr:0x021845b4 -func_ov102_021845c8 kind:function(arm,size=0x60) addr:0x021847c8 -func_ov102_02184628 kind:function(arm,size=0x1c) addr:0x02184828 -_ZN20Actor_ov102_021849508vfunc_20Ev kind:function(arm,size=0x190) addr:0x02184844 -_ZN20Actor_ov102_021849508vfunc_24Ev kind:function(arm,size=0x14) addr:0x021849d4 -func_ov102_021847e8 kind:function(arm,size=0x78) addr:0x021849e8 -func_ov102_02184860 kind:function(arm,size=0x50) addr:0x02184a60 -data_ov102_02184ab0 kind:data(any) addr:0x02184ab0 -data_ov102_02184af0 kind:data(any) addr:0x02184af0 -__sinit_ov102_02184b50 kind:function(arm,size=0x24) addr:0x02184b50 -.p__sinit_ov102_02184b50 kind:data(word) addr:0x02184b74 -data_ov102_02184b80 kind:data(any) addr:0x02184b80 -data_ov102_02184ba8 kind:data(any) addr:0x02184ba8 -data_ov102_02184c10 kind:data(any) addr:0x02184c10 -data_ov102_02184c24 kind:data(any) addr:0x02184c24 +_ZN18PlayerActorBase_7419func_ov102_02182c20EiP7Mat4x3p kind:function(arm,size=0x64) addr:0x02182e20 +_ZN18PlayerActorBase_7419func_ov102_02182c84Ebi14UnkAngleStructP7Mat4x3pS2_ kind:function(arm,size=0x1d0) addr:0x02182e84 +_ZN25UnkStruct_027e0ce0_40_10819func_ov102_02182e54Eiii kind:function(arm,size=0x154) addr:0x02183054 +_ZN24UnkStruct_ItemManager_2019func_ov102_02182fa8Eii kind:function(arm,size=0x54) addr:0x021831a8 +_ZN24UnkStruct_ItemManager_2019func_ov102_02182ffcEi kind:function(arm,size=0x40) addr:0x021831fc +_ZN21UnkStruct_027e0ce0_4019func_ov102_0218303cEiP11ItemManager kind:function(arm,size=0x144) addr:0x0218323c +_ZN21UnkStruct_027e0ce0_4019func_ov102_02183180Eib kind:function(arm,size=0x34) addr:0x02183380 +_ZN21UnkStruct_027e0ce0_4019func_ov102_021831b4Ei kind:function(arm,size=0x3c) addr:0x021833b4 +_ZN21UnkStruct_027e0ce0_4019func_ov102_021831f0Ei kind:function(arm,size=0x4c) addr:0x021833f0 +_ZN29UnkStruct_027e0ce0_40_Base_7419func_ov102_0218323cEP29UnkStruct_027e0ce0_40_Base_14i kind:function(arm,size=0x1d8) addr:0x0218343c +_Z19func_ov102_02183414PsP21PlayerLinkActor_A0_1CbP7VecFx3214UnkAngleStructi kind:function(arm,size=0x1b0) addr:0x02183614 +_ZN19MapObjectUnkSAND_4019func_ov102_021835c4EP7VecFx32 kind:function(arm,size=0x1e4) addr:0x021837c4 +_ZN19MapObjectUnkSAND_4019func_ov102_021837a8E8Vec2bCppP7VecFx32 kind:function(arm,size=0x1c0) addr:0x021839a8 +_ZN16MapObjectUnkSAND8vfunc_08Ev kind:function(arm,size=0x1c0) addr:0x02183b68 +_ZN16MapObjectUnkSAND8vfunc_0CEv kind:function(arm,size=0x48) addr:0x02183d28 +_ZN16MapObjectUnkSAND8vfunc_14Ev kind:function(arm,size=0xa4) addr:0x02183d70 +_Z19func_ov102_02183c14i kind:function(arm,size=0x58) addr:0x02183e14 +_Z19func_ov102_02183c6ci kind:function(arm,size=0x28) addr:0x02183e6c +_Z19func_ov102_02183c94iiiiitttti kind:function(arm,size=0x110) addr:0x02183e94 +_Z19func_ov102_02183da4iiiiitttti kind:function(arm,size=0x44) addr:0x02183fa4 +_ZN16MapObjectUnkPTFL8vfunc_08Ev kind:function(arm,size=0x180) addr:0x02183fe8 +_ZN16MapObjectUnkPTFL8vfunc_0CEv kind:function(arm,size=0x14) addr:0x02184168 +_ZN16MapObjectUnkPTFL8vfunc_14Ev kind:function(arm,size=0x220) addr:0x0218417c +_ZN16MapObjectUnkPTFL19func_ov102_0218419cEv kind:function(arm,size=0x218) addr:0x0218439c +_ZN16MapObjectUnkPTFL19func_ov102_021843b4Ev kind:function(arm,size=0x214) addr:0x021845b4 +_ZN21UnkStruct_027e0cd8_0C8vfunc_0CEv kind:function(arm,size=0x60) addr:0x021847c8 +_ZN21UnkStruct_027e0cd8_0C19func_ov102_02184628Ev kind:function(arm,size=0x1c) addr:0x02184828 +_ZN12ActorUnkMLCK8vfunc_20Ev kind:function(arm,size=0x190) addr:0x02184844 +_ZN12ActorUnkMLCK8vfunc_24Ev kind:function(arm,size=0x14) addr:0x021849d4 +_ZN15ActorUnkMLCK_C419func_ov102_021847e8Eii kind:function(arm,size=0x78) addr:0x021849e8 +_ZN24UnkStruct_ov102_02184a248vfunc_00EP5Actor kind:function(arm,size=0x50) addr:0x02184a60 +data_ov102_021848b0 kind:data(any) addr:0x02184ab0 local +data_ov102_021848f0 kind:data(any) addr:0x02184af0 local +__sinit_ActorUnkMLCK_102.cpp kind:function(arm,size=0x24) addr:0x02184b50 local +.p__sinit_ActorUnkMLCK_102.cpp kind:data(word) addr:0x02184b74 local +data_ov102_02184980 kind:data(any) addr:0x02184b80 local +data_ov102_021849a8 kind:data(any) addr:0x02184ba8 local +data_ov102_02184a10 kind:data(any) addr:0x02184c10 local +_ZTV24UnkStruct_ov102_02184a24 kind:data(byte[12]) addr:0x02184c1c diff --git a/config/eur1/arm9/overlays/ov105/relocs.txt b/config/eur1/arm9/overlays/ov105/relocs.txt index 785c73e0..b5adb0dc 100644 --- a/config/eur1/arm9/overlays/ov105/relocs.txt +++ b/config/eur1/arm9/overlays/ov105/relocs.txt @@ -280,7 +280,7 @@ from:0x02186d74 kind:arm_call to:0x02185588 module:overlay(105) from:0x02186de0 kind:arm_call to:0x02082b10 module:overlay(0) from:0x02186e40 kind:load to:0x027e09bc module:dtcm from:0x02186e44 kind:load to:0x027e0ce4 module:dtcm -from:0x02186e4c kind:load to:0x020b3040 module:overlay(0) +from:0x02186e4c kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x02186e50 kind:load to:0x0218a3b0 module:overlay(105) from:0x02186e54 kind:load to:0x0218a3ac module:overlay(105) from:0x02186e58 kind:load to:0x027e09b8 module:dtcm @@ -430,7 +430,7 @@ from:0x02188528 kind:arm_call to:0x02187afc module:overlay(105) from:0x02188548 kind:arm_call to:0x01fff350 module:itcm from:0x02188584 kind:load to:0x027e0ce4 module:dtcm from:0x02188588 kind:load to:0x027e09bc module:dtcm -from:0x02188590 kind:load to:0x020b3040 module:overlay(0) +from:0x02188590 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x02188594 kind:load to:0x0218a4d8 module:overlay(105) from:0x02188598 kind:load to:0x0218a3bc module:overlay(105) from:0x021885a0 kind:load to:0x0203e964 module:main @@ -455,7 +455,7 @@ from:0x02188828 kind:load to:0x0218a3a8 module:overlay(105) from:0x0218882c kind:load to:0x0218a3a4 module:overlay(105) from:0x02188830 kind:load to:0x0218a3a0 module:overlay(105) from:0x02188834 kind:load to:0x027e0ce4 module:dtcm -from:0x0218883c kind:load to:0x020b3040 module:overlay(0) +from:0x0218883c kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x02188840 kind:load to:0x0218a340 module:overlay(105) from:0x02188844 kind:load to:0x0218a394 module:overlay(105) from:0x02188848 kind:load to:0x0218a398 module:overlay(105) @@ -601,7 +601,7 @@ from:0x02189f9c kind:arm_call to:0x020f5cc4 module:overlay(31) from:0x02189fa4 kind:arm_call to:0x020f4450 module:overlay(31) from:0x02189fb4 kind:load to:0x02110a28 module:overlay(31) from:0x02189fc0 kind:load to:0x027e0ce4 module:dtcm -from:0x02189fc8 kind:load to:0x020b3040 module:overlay(0) +from:0x02189fc8 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x02189fcc kind:load to:0x02110a6c module:overlay(31) from:0x02189fd8 kind:load to:0x0203e964 module:main from:0x02189fe0 kind:load to:0x027e0ce0 module:dtcm diff --git a/config/eur1/arm9/overlays/ov107/relocs.txt b/config/eur1/arm9/overlays/ov107/relocs.txt index 621ae7a0..8ca03ac9 100644 --- a/config/eur1/arm9/overlays/ov107/relocs.txt +++ b/config/eur1/arm9/overlays/ov107/relocs.txt @@ -166,7 +166,7 @@ from:0x021861ec kind:arm_call to:0x02090818 module:overlay(0) from:0x021861f4 kind:load to:0x027e0cdc module:dtcm from:0x02186220 kind:arm_call to:0x01fff350 module:itcm from:0x02186240 kind:load to:0x027e0ce4 module:dtcm -from:0x02186248 kind:load to:0x020b3040 module:overlay(0) +from:0x02186248 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x02186268 kind:load to:0x0210b2ac module:overlay(31) from:0x02186274 kind:arm_call to:0x0209d034 module:overlay(0) from:0x0218628c kind:arm_call to:0x0218624c module:overlay(107) diff --git a/config/eur1/arm9/overlays/ov112/relocs.txt b/config/eur1/arm9/overlays/ov112/relocs.txt index 1a98c1fa..17f5453f 100644 --- a/config/eur1/arm9/overlays/ov112/relocs.txt +++ b/config/eur1/arm9/overlays/ov112/relocs.txt @@ -45,7 +45,7 @@ from:0x02185930 kind:load to:0x0203f964 module:main from:0x02185934 kind:load to:0x027e0ce8 module:dtcm from:0x02185944 kind:load to:0x027e0ce4 module:dtcm from:0x02185960 kind:load to:0x027e09a4 module:dtcm -from:0x02185968 kind:load to:0x020b3040 module:overlay(0) +from:0x02185968 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x0218596c kind:load to:0x027e09b8 module:dtcm from:0x021859c4 kind:arm_call to:0x0208fe28 module:overlay(0) from:0x021859d8 kind:arm_call to:0x02092238 module:overlay(0) diff --git a/config/eur1/arm9/relocs.txt b/config/eur1/arm9/relocs.txt index 3c90ad34..a875d514 100644 --- a/config/eur1/arm9/relocs.txt +++ b/config/eur1/arm9/relocs.txt @@ -2093,7 +2093,7 @@ from:0x02017020 kind:arm_call to:0x01fff350 module:itcm from:0x02017054 kind:arm_call to:0x01ffb9cc module:itcm from:0x0201707c kind:arm_call to:0x01fff350 module:itcm from:0x020170a4 kind:load to:0x027e0ce4 module:dtcm -from:0x020170a8 kind:load to:0x020b3040 module:overlay(0) +from:0x020170a8 kind:load to:0x020b3038 add:0x8 module:overlay(0) from:0x020170cc kind:arm_call to:0x01fff520 module:itcm from:0x020170f0 kind:arm_call to:0x01ffb9cc module:itcm from:0x0201711c kind:arm_call to:0x01ffb9cc module:itcm diff --git a/config/eur1/arm9/symbols.txt b/config/eur1/arm9/symbols.txt index c3f330a3..b31f3a3f 100644 --- a/config/eur1/arm9/symbols.txt +++ b/config/eur1/arm9/symbols.txt @@ -145,7 +145,7 @@ func_02002e78 kind:function(arm,size=0x20) addr:0x02002e78 func_02002e98 kind:function(arm,size=0x20) addr:0x02002e98 func_02002eb8 kind:function(arm,size=0x20) addr:0x02002eb8 NNS_Snd_func_0206617c kind:function(arm,size=0x2c) addr:0x02002ed8 -func_02002f04 kind:function(arm,size=0x28) addr:0x02002f04 +_ZN24UnkStruct_ov000_020b51c013func_02002f04Ev kind:function(arm,size=0x28) addr:0x02002f04 func_02002f2c kind:function(arm,size=0x28) addr:0x02002f2c func_02002f54 kind:function(arm,size=0x48) addr:0x02002f54 func_02002f9c kind:function(arm,size=0x28) addr:0x02002f9c diff --git a/config/jp/arm9/itcm/symbols.txt b/config/jp/arm9/itcm/symbols.txt index 4628684c..b5374378 100644 --- a/config/jp/arm9/itcm/symbols.txt +++ b/config/jp/arm9/itcm/symbols.txt @@ -157,7 +157,7 @@ _ZN18UnkStruct_027e09a46IsLandEv kind:function(arm,size=0x28) addr:0x01ffd3b0 _ZN18UnkStruct_027e09a47IsTrainEv kind:function(arm,size=0x28) addr:0x01ffd3d8 _ZNK18UnkStruct_027e09a421GetCurrentCourseEntryEv kind:function(arm,size=0x20) addr:0x01ffd400 _ZN18UnkStruct_027e09b813func_01ffd420Ev kind:function(arm,size=0x1c) addr:0x01ffd420 -func_01ffd43c kind:function(arm,size=0x60) addr:0x01ffd43c +_ZN21UnkStruct_027e09bc_0C13func_01ffd43cEP5Vec2sii kind:function(arm,size=0x60) addr:0x01ffd43c func_01ffd49c kind:function(arm,size=0x1a4) addr:0x01ffd49c _ZN21UnkStruct_027e09bc_0C13func_01ffd640EP7VecFx32 kind:function(arm,size=0x128) addr:0x01ffd640 func_01ffd768 kind:function(arm,size=0x138) addr:0x01ffd768 @@ -199,7 +199,7 @@ func_01fff280 kind:function(arm,size=0x28) addr:0x01fff280 func_01fff2a8 kind:function(arm,size=0x24) addr:0x01fff2a8 func_01fff2cc kind:function(arm,size=0x30) addr:0x01fff2cc _ZN12ActorManager13func_01fff2fcEPFvP5ActortEi kind:function(arm,size=0x54) addr:0x01fff2fc -_ZN12ActorManager13func_01fff350EPvPP5Actor kind:function(arm,size=0x64) addr:0x01fff350 +_ZN12ActorManager13func_01fff350EP29UnkStruct_ov000_020b3000_BasePP5Actor kind:function(arm,size=0x64) addr:0x01fff350 _ZN12ActorManager13func_01fff3b4E8ActorRef kind:function(arm,size=0x8c) addr:0x01fff3b4 func_01fff440 kind:function(arm,size=0x18) addr:0x01fff440 _ZN5Actor10GetActorIdEv kind:function(arm,size=0xc) addr:0x01fff458 diff --git a/config/jp/arm9/overlays/ov000/relocs.txt b/config/jp/arm9/overlays/ov000/relocs.txt index 4e7cb92e..aff3922a 100644 --- a/config/jp/arm9/overlays/ov000/relocs.txt +++ b/config/jp/arm9/overlays/ov000/relocs.txt @@ -3438,7 +3438,7 @@ from:0x02076d40 kind:load to:0x027e0d3c module:dtcm from:0x02076d44 kind:load to:0x027e0ce0 module:dtcm from:0x02076d48 kind:load to:0x020b3bcc module:overlay(0) from:0x02076d4c kind:load to:0x027e0ce4 module:dtcm -from:0x02076d50 kind:load to:0x020b4800 module:overlay(0) +from:0x02076d50 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x02076d60 kind:arm_call to:0x0207696c module:overlay(0) from:0x02076d7c kind:arm_call to:0x02076abc module:overlay(0) from:0x02076d98 kind:arm_call to:0x01fff3b4 module:itcm @@ -3842,7 +3842,7 @@ from:0x0207af8c kind:load to:0x027e0cdc module:dtcm from:0x0207af90 kind:load to:0x020b3db0 module:overlay(0) from:0x0207af94 kind:load to:0x027e09a4 module:dtcm from:0x0207af98 kind:load to:0x027e0ce4 module:dtcm -from:0x0207afa0 kind:load to:0x020b4800 module:overlay(0) +from:0x0207afa0 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x0207afdc kind:load to:0x020b3db0 module:overlay(0) from:0x0207b02c kind:arm_call to:0x020840c4 module:overlay(0) from:0x0207b084 kind:arm_call to:0x01ffb714 module:itcm @@ -3978,7 +3978,7 @@ from:0x0207ca84 kind:arm_call to:0x02078f98 module:overlay(0) from:0x0207cab8 kind:load to:0x027e0ce0 module:dtcm from:0x0207cabc kind:load to:0x027e09a4 module:dtcm from:0x0207cac4 kind:load to:0x027e0ce4 module:dtcm -from:0x0207cacc kind:load to:0x020b4800 module:overlay(0) +from:0x0207cacc kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x0207cadc kind:load to:0x027e09bc module:dtcm from:0x0207cae8 kind:arm_call to:0x0207a9c0 module:overlay(0) from:0x0207cafc kind:arm_call to:0x0207a9c0 module:overlay(0) diff --git a/config/jp/arm9/overlays/ov000/symbols.txt b/config/jp/arm9/overlays/ov000/symbols.txt index a3356dad..632ebd7e 100644 --- a/config/jp/arm9/overlays/ov000/symbols.txt +++ b/config/jp/arm9/overlays/ov000/symbols.txt @@ -456,7 +456,7 @@ _ZN23TitleScreenManager_Base8vfunc_44Ev kind:function(arm,size=0x4) addr:0x02062 func_ov000_020625c8 kind:function(arm,size=0x44) addr:0x020625c8 func_ov000_0206260c kind:function(arm,size=0x14) addr:0x0206260c _ZN18UnkStruct_0204a08819func_ov000_02061098Ev kind:function(arm,size=0x144) addr:0x02062620 -_ZN18UnkStruct_0204a08819func_ov000_020611dcEPvi kind:function(arm,size=0x20) addr:0x02062764 +_ZN18UnkStruct_0204a08819func_ov000_020611dcEP29FileSelectManager_UnkDrawBasei kind:function(arm,size=0x20) addr:0x02062764 _ZN18UnkStruct_0204a08819func_ov000_020611fcEi kind:function(arm,size=0x28) addr:0x02062784 _ZN18UnkStruct_0204a08819func_ov000_02061224Ev kind:function(arm,size=0xc) addr:0x020627ac _ZN18UnkStruct_0204a08819func_ov000_02061230Ev kind:function(arm,size=0xc) addr:0x020627b8 @@ -469,14 +469,14 @@ _ZN29FileSelectManager_UnkDrawBaseC1Ev kind:function(arm,size=0x24) addr:0x02062 _ZN29FileSelectManager_UnkDrawBaseD1Ev kind:function(arm,size=0x18) addr:0x02062c18 _ZN29FileSelectManager_UnkDrawBaseD0Ev kind:function(arm,size=0x20) addr:0x02062c30 _ZN29FileSelectManager_UnkDrawBaseD2Ev kind:function(arm,size=0x18) addr:0x02062c50 -_ZN29FileSelectManager_UnkDrawBase8vfunc_08Ei kind:function(arm,size=0x4) addr:0x02062c68 -_ZN29FileSelectManager_UnkDrawBase8vfunc_0CEi kind:function(arm,size=0x4) addr:0x02062c6c -_ZN29FileSelectManager_UnkDrawBase8vfunc_10Eii kind:function(arm,size=0x4) addr:0x02062c70 -_ZN29FileSelectManager_UnkDrawBase8vfunc_14Ei kind:function(arm,size=0x4) addr:0x02062c74 -_ZN29FileSelectManager_UnkDrawBase8vfunc_18Ei kind:function(arm,size=0x4) addr:0x02062c78 -_ZN29FileSelectManager_UnkDrawBase8vfunc_1CEi kind:function(arm,size=0x4) addr:0x02062c7c -_ZN29FileSelectManager_UnkDrawBase8vfunc_20Eii kind:function(arm,size=0x4) addr:0x02062c80 -_ZN29FileSelectManager_UnkDrawBase8vfunc_24Ev kind:function(arm,size=0x4) addr:0x02062c84 +_ZN29FileSelectManager_UnkDrawBase9vfunc2_08Ei kind:function(arm,size=0x4) addr:0x02062c68 +_ZN29FileSelectManager_UnkDrawBase9vfunc2_0CEi kind:function(arm,size=0x4) addr:0x02062c6c +_ZN29FileSelectManager_UnkDrawBase8vfunc_54Eii kind:function(arm,size=0x4) addr:0x02062c70 +_ZN29FileSelectManager_UnkDrawBase9vfunc2_14Ei kind:function(arm,size=0x4) addr:0x02062c74 +_ZN29FileSelectManager_UnkDrawBase9vfunc2_18Ei kind:function(arm,size=0x4) addr:0x02062c78 +_ZN29FileSelectManager_UnkDrawBase8vfunc_5CEi kind:function(arm,size=0x4) addr:0x02062c7c +_ZN29FileSelectManager_UnkDrawBase8vfunc_58Eii kind:function(arm,size=0x4) addr:0x02062c80 +_ZN29FileSelectManager_UnkDrawBase8vfunc_60Ev kind:function(arm,size=0x4) addr:0x02062c84 _ZN23UnkStruct_027e0998_BaseC2Ev kind:function(thumb,size=0x24) addr:0x02062c88 _ZN23UnkStruct_027e0998_BaseC1Ev kind:function(thumb,size=0x24) addr:0x02062cac func_ov000_02062cd0 kind:function(thumb,size=0x16) addr:0x02062cd0 @@ -863,7 +863,7 @@ func_ov000_0206d0d4 kind:function(arm,size=0xcc) addr:0x0206d0d4 _ZN24UnkStruct_ov000_020b51b819func_ov000_0206bbfcEi kind:function(arm,size=0x18) addr:0x0206d1a0 func_ov000_0206d1b8 kind:function(arm,size=0xe4) addr:0x0206d1b8 func_ov000_0206d29c kind:function(arm,size=0xdc) addr:0x0206d29c -func_ov000_0206d378 kind:function(arm,size=0x10) addr:0x0206d378 +_ZN24UnkStruct_ov000_020b51b819func_ov000_0206bdd4EP15PlayerLinkActor kind:function(arm,size=0x10) addr:0x0206d378 func_ov000_0206d388 kind:function(arm,size=0xe8) addr:0x0206d388 func_ov000_0206d470 kind:function(arm,size=0x60) addr:0x0206d470 func_ov000_0206d4d0 kind:function(arm,size=0x10) addr:0x0206d4d0 @@ -937,8 +937,8 @@ func_ov000_0207002c kind:function(arm,size=0x60) addr:0x0207002c func_ov000_0207008c kind:function(arm,size=0x144) addr:0x0207008c func_ov000_020701d0 kind:function(arm,size=0xd0) addr:0x020701d0 func_ov000_020702a0 kind:function(arm,size=0xf4) addr:0x020702a0 -func_ov000_02070394 kind:function(arm,size=0xbc) addr:0x02070394 -func_ov000_02070450 kind:function(arm,size=0x160) addr:0x02070450 +_ZN24UnkStruct_ov000_020b521419func_ov000_0206ed1cEP15PlayerLinkActor kind:function(arm,size=0xbc) addr:0x02070394 +_ZN24UnkStruct_ov000_020b521419func_ov000_0206edd8EP15PlayerLinkActor kind:function(arm,size=0x160) addr:0x02070450 func_ov000_020705b0 kind:function(arm,size=0xb0) addr:0x020705b0 func_ov000_02070660 kind:function(arm,size=0x26c) addr:0x02070660 func_ov000_020708cc kind:function(arm,size=0x8c) addr:0x020708cc @@ -2672,7 +2672,7 @@ func_ov000_020a165c kind:function(arm,size=0x1c) addr:0x020a165c func_ov000_020a1678 kind:function(arm,size=0xc) addr:0x020a1678 _ZN18UnkStruct_027e0cec19func_ov000_0209feacEiP7VecFx32iii kind:function(arm,size=0x78) addr:0x020a1684 _ZN18UnkStruct_027e0cec19func_ov000_0209ff24EiP7VecFx32P7VecFx16i kind:function(arm,size=0x28) addr:0x020a16fc -func_ov000_020a1724 kind:function(arm,size=0x40) addr:0x020a1724 +_ZN18UnkStruct_027e0cec19func_ov000_0209ff4cEiP7VecFx3214UnkAngleStructi kind:function(arm,size=0x40) addr:0x020a1724 _ZN18UnkStruct_027e0cec19func_ov000_0209ff8cEP22UnkStruct_PlayerGet_eciP7VecFx32i kind:function(arm,size=0x74) addr:0x020a1764 func_ov000_020a17d8 kind:function(arm,size=0xa0) addr:0x020a17d8 func_ov000_020a1878 kind:function(arm,size=0x34) addr:0x020a1878 @@ -3653,7 +3653,7 @@ _ZTV19data_ov000_020b47b4 kind:data(any) addr:0x020b47b4 data_ov000_020b47dc kind:data(any) addr:0x020b47dc data_ov000_020b47e8 kind:data(any) addr:0x020b47e8 data_ov000_020b47f4 kind:data(any) addr:0x020b47f4 -data_ov000_020b3000 kind:data(any) addr:0x020b4800 +_ZTV24UnkStruct_ov000_020b3000 kind:data(any) addr:0x020b47f8 data_ov000_020b480c kind:data(any) addr:0x020b480c data_ov000_020b4818 kind:data(any) addr:0x020b4818 data_ov000_020b483c kind:data(any) addr:0x020b483c @@ -4024,7 +4024,7 @@ data_ov000_020b69ac kind:bss addr:0x020b69ac data_ov000_020b51b8 kind:bss addr:0x020b69b8 data_ov000_020b69c0 kind:bss addr:0x020b69c0 data_ov000_020b69c4 kind:bss addr:0x020b69c4 -data_ov000_020b69c8 kind:bss addr:0x020b69c8 +data_ov000_020b51c8 kind:bss addr:0x020b69c8 data_ov000_020b6a10 kind:bss addr:0x020b6a10 data_ov000_020b5214_eur kind:bss addr:0x020b6a14 data_ov000_020b6ab0 kind:bss addr:0x020b6ab0 diff --git a/config/jp/arm9/overlays/ov001/relocs.txt b/config/jp/arm9/overlays/ov001/relocs.txt index aea148c1..92bf5f09 100644 --- a/config/jp/arm9/overlays/ov001/relocs.txt +++ b/config/jp/arm9/overlays/ov001/relocs.txt @@ -1142,7 +1142,7 @@ from:0x020bd2b0 kind:load to:0x020453b0 module:main from:0x020bd2ca kind:thumb_call_arm to:0x01fff350 module:itcm from:0x020bd2e4 kind:thumb_call_arm to:0x02099c98 module:overlay(0) from:0x020bd2ee kind:thumb_call_arm to:0x01fff350 module:itcm -from:0x020bd300 kind:load to:0x020b4800 module:overlay(0) +from:0x020bd300 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x020bd308 kind:load to:0x027e0ce4 module:dtcm from:0x020bd32c kind:thumb_call_arm to:0x02011f3c module:main from:0x020bd336 kind:thumb_call to:0x02058cd0 module:overlay(0) @@ -1509,7 +1509,7 @@ from:0x020becd4 kind:thumb_call_arm to:0x020938c0 module:overlay(0) from:0x020becdc kind:load to:0x027e09a4 module:dtcm from:0x020bece0 kind:load to:0x020da000 module:overlay(24) from:0x020bece4 kind:load to:0x020ac08c add:0x4 module:overlay(0) -from:0x020bece8 kind:load to:0x020b4800 module:overlay(0) +from:0x020bece8 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x020becec kind:load to:0x027e0ce4 module:dtcm from:0x020becf4 kind:load to:0x027e09b8 module:dtcm from:0x020bed0c kind:thumb_call_arm to:0x02011f3c module:main diff --git a/config/jp/arm9/overlays/ov017/symbols.txt b/config/jp/arm9/overlays/ov017/symbols.txt index b48cfc61..0a9c18a3 100644 --- a/config/jp/arm9/overlays/ov017/symbols.txt +++ b/config/jp/arm9/overlays/ov017/symbols.txt @@ -15,8 +15,8 @@ func_ov017_020bde1c kind:function(arm,size=0x44) addr:0x020bde1c func_ov017_020bde60 kind:function(arm,size=0x31c) addr:0x020bde60 func_ov017_020be17c kind:function(arm,size=0xe4) addr:0x020be17c func_ov017_020be260 kind:function(arm,size=0x3a8) addr:0x020be260 -func_ov017_020be608 kind:function(arm,size=0x4b8) addr:0x020be608 -func_ov017_020beac0 kind:function(arm,size=0x48) addr:0x020beac0 +_ZN21UnkStruct_027e0ce0_4019func_ov017_020bcde8EiP11ItemManager kind:function(arm,size=0x4b8) addr:0x020be608 +_ZN11ItemManager19func_ov017_020bd2a0Eii kind:function(arm,size=0x48) addr:0x020beac0 func_ov017_020beb08 kind:function(arm,size=0x18) addr:0x020beb08 func_ov017_020beb20 kind:function(arm,size=0x178) addr:0x020beb20 func_ov017_020bec98 kind:function(arm,size=0x28) addr:0x020bec98 @@ -29,15 +29,15 @@ _ZN18UnkStruct_027e0ce019func_ov017_020bd69cEv kind:function(arm,size=0x1c) addr func_ov017_020beed8 kind:function(arm,size=0x28) addr:0x020beed8 func_ov017_020bef00 kind:function(arm,size=0x78) addr:0x020bef00 func_ov017_020bef78 kind:function(arm,size=0x30) addr:0x020bef78 -func_ov017_020befa8 kind:function(arm,size=0x578) addr:0x020befa8 -func_ov017_020bf520 kind:function(arm,size=0x90) addr:0x020bf520 -func_ov017_020bf5b0 kind:function(arm,size=0x1c4) addr:0x020bf5b0 -func_ov017_020bf774 kind:function(arm,size=0x150) addr:0x020bf774 +_ZN15PlayerLinkActor19func_ov017_020bd788Ei kind:function(arm,size=0x578) addr:0x020befa8 +_ZN15PlayerLinkActor19func_ov017_020bdcf4Ev kind:function(arm,size=0x90) addr:0x020bf520 +_ZN15PlayerLinkActor19func_ov017_020bdd84Eii kind:function(arm,size=0x1c4) addr:0x020bf5b0 +_ZN15PlayerLinkActor19func_ov017_020bdf48Eiiii kind:function(arm,size=0x150) addr:0x020bf774 func_ov017_020bf8c4 kind:function(arm,size=0x10) addr:0x020bf8c4 func_ov017_020bf8d4 kind:function(arm,size=0x38) addr:0x020bf8d4 func_ov017_020bf90c kind:function(arm,size=0x20c) addr:0x020bf90c func_ov017_020bfb18 kind:function(arm,size=0x148) addr:0x020bfb18 -func_ov017_020bfc60 kind:function(arm,size=0x18) addr:0x020bfc60 +_ZN29UnkStruct_027e0ce0_40_Base_7C19func_ov017_020be434Ev kind:function(arm,size=0x18) addr:0x020bfc60 func_ov017_020bfc78 kind:function(arm,size=0x45c) addr:0x020bfc78 func_ov017_020c00d4 kind:function(arm,size=0x124) addr:0x020c00d4 _ZN12CargoManager8DoUpdateEv kind:function(arm,size=0x18) addr:0x020c01f8 diff --git a/config/jp/arm9/overlays/ov019/symbols.txt b/config/jp/arm9/overlays/ov019/symbols.txt index 71caba27..8dff8d10 100644 --- a/config/jp/arm9/overlays/ov019/symbols.txt +++ b/config/jp/arm9/overlays/ov019/symbols.txt @@ -215,24 +215,24 @@ _ZN19FileSelectSubScreenD1Ev kind:function(arm,size=0xec) addr:0x020d1348 _ZN21FileSelectManager_160C1EP23GameModeManagerBase_104P14FileSelectMain kind:function(arm,size=0x54) addr:0x020d1434 _ZN21FileSelectManager_160D1Ev kind:function(arm,size=0x14) addr:0x020d1488 _ZN21FileSelectManager_160D0Ev kind:function(arm,size=0x1c) addr:0x020d149c -_ZN21FileSelectManager_1608vfunc_08Ei kind:function(arm,size=0x50) addr:0x020d14b8 -_ZN21FileSelectManager_1608vfunc_0CEi kind:function(arm,size=0x64) addr:0x020d1508 -_ZN21FileSelectManager_1608vfunc_14Ei kind:function(arm,size=0x4) addr:0x020d156c -_ZN21FileSelectManager_1608vfunc_10Eii kind:function(arm,size=0x8c) addr:0x020d1570 -_ZN21FileSelectManager_1608vfunc_18Ei kind:function(arm,size=0x10) addr:0x020d15fc -_ZN21FileSelectManager_1608vfunc_1CEi kind:function(arm,size=0x64) addr:0x020d160c -_ZN21FileSelectManager_1608vfunc_20Eii kind:function(arm,size=0xac) addr:0x020d1670 -_ZN21FileSelectManager_1608vfunc_24Ev kind:function(arm,size=0x34) addr:0x020d171c +_ZN21FileSelectManager_1609vfunc2_08Ei kind:function(arm,size=0x50) addr:0x020d14b8 +_ZN21FileSelectManager_1609vfunc2_0CEi kind:function(arm,size=0x64) addr:0x020d1508 +_ZN21FileSelectManager_1609vfunc2_14Ei kind:function(arm,size=0x4) addr:0x020d156c +_ZN21FileSelectManager_1608vfunc_54Eii kind:function(arm,size=0x8c) addr:0x020d1570 +_ZN21FileSelectManager_1609vfunc2_18Ei kind:function(arm,size=0x10) addr:0x020d15fc +_ZN21FileSelectManager_1608vfunc_5CEi kind:function(arm,size=0x64) addr:0x020d160c +_ZN21FileSelectManager_1608vfunc_58Eii kind:function(arm,size=0xac) addr:0x020d1670 +_ZN21FileSelectManager_1608vfunc_60Ev kind:function(arm,size=0x34) addr:0x020d171c _ZN21FileSelectManager_164C1EP23GameModeManagerBase_104P14FileSelectMain kind:function(arm,size=0x4c) addr:0x020d1750 _ZN21FileSelectManager_164D1Ev kind:function(arm,size=0x3c) addr:0x020d179c _ZN21FileSelectManager_164D0Ev kind:function(arm,size=0x44) addr:0x020d17d8 -_ZN21FileSelectManager_1648vfunc_08Ei kind:function(arm,size=0x50) addr:0x020d181c -_ZN21FileSelectManager_1648vfunc_0CEi kind:function(arm,size=0x90) addr:0x020d186c -_ZN21FileSelectManager_1648vfunc_14Ei kind:function(arm,size=0x4) addr:0x020d18fc -_ZN21FileSelectManager_1648vfunc_10Eii kind:function(arm,size=0xa8) addr:0x020d1900 -_ZN21FileSelectManager_1648vfunc_18Ei kind:function(arm,size=0x38) addr:0x020d19a8 -_ZN21FileSelectManager_1648vfunc_1CEi kind:function(arm,size=0xa4) addr:0x020d19e0 -_ZN21FileSelectManager_1648vfunc_20Eii kind:function(arm,size=0x90) addr:0x020d1a84 +_ZN21FileSelectManager_1649vfunc2_08Ei kind:function(arm,size=0x50) addr:0x020d181c +_ZN21FileSelectManager_1649vfunc2_0CEi kind:function(arm,size=0x90) addr:0x020d186c +_ZN21FileSelectManager_1649vfunc2_14Ei kind:function(arm,size=0x4) addr:0x020d18fc +_ZN21FileSelectManager_1648vfunc_54Eii kind:function(arm,size=0xa8) addr:0x020d1900 +_ZN21FileSelectManager_1649vfunc2_18Ei kind:function(arm,size=0x38) addr:0x020d19a8 +_ZN21FileSelectManager_1648vfunc_5CEi kind:function(arm,size=0xa4) addr:0x020d19e0 +_ZN21FileSelectManager_1648vfunc_58Eii kind:function(arm,size=0x90) addr:0x020d1a84 _ZN21FileSelectManager_16419func_ov019_020d02f4Ev kind:function(arm,size=0x28) addr:0x020d1b14 _ZN25UnkSystem1_ov019_Derived2C1Ev kind:function(arm,size=0x40) addr:0x020d1b3c _ZN25UnkSystem1_ov019_Derived28vfunc_08Ei kind:function(arm,size=0x48) addr:0x020d1b7c diff --git a/config/jp/arm9/overlays/ov024/relocs.txt b/config/jp/arm9/overlays/ov024/relocs.txt index 7097a43b..0dc53324 100644 --- a/config/jp/arm9/overlays/ov024/relocs.txt +++ b/config/jp/arm9/overlays/ov024/relocs.txt @@ -72,7 +72,7 @@ from:0x020c648c kind:arm_call to:0x02074764 module:overlay(0) from:0x020c64e0 kind:arm_call to:0x02074b28 module:overlay(0) from:0x020c64f8 kind:load to:0x020da038 module:overlay(24) from:0x020c64fc kind:load to:0x027e0ce4 module:dtcm -from:0x020c6500 kind:load to:0x020b4800 module:overlay(0) +from:0x020c6500 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x020c6504 kind:load to:0x027e09b8 module:dtcm from:0x020c6554 kind:arm_call to:0x01ffd3d8 module:itcm from:0x020c6578 kind:arm_call to:0x020194d0 module:main @@ -2522,7 +2522,7 @@ from:0x020d8c44 kind:load to:0x027e0cd8 module:dtcm from:0x020d8c48 kind:load to:0x027e09a4 module:dtcm from:0x020d8c4c kind:load to:0x027e0ce0 module:dtcm from:0x020d8c50 kind:load to:0x027e0ce4 module:dtcm -from:0x020d8c58 kind:load to:0x020b4800 module:overlay(0) +from:0x020d8c58 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x020d8c6c kind:arm_call to:0x020a12f0 module:overlay(0) from:0x020d8c74 kind:arm_call to:0x02099c30 module:overlay(0) from:0x020d8c8c kind:arm_call to:0x020a12f0 module:overlay(0) diff --git a/config/jp/arm9/overlays/ov024/symbols.txt b/config/jp/arm9/overlays/ov024/symbols.txt index ec2236ad..9acf2559 100644 --- a/config/jp/arm9/overlays/ov024/symbols.txt +++ b/config/jp/arm9/overlays/ov024/symbols.txt @@ -143,16 +143,16 @@ _ZN24AdventureModeManager_160C1EP23GameModeManagerBase_104P24AdventureModeManage _ZN27AdventureModeManager_160_4CD1Ev kind:function(arm,size=0x14) addr:0x020c9250 _ZN24AdventureModeManager_160D1Ev kind:function(arm,size=0x30) addr:0x020c9264 _ZN24AdventureModeManager_160D0Ev kind:function(arm,size=0x38) addr:0x020c9294 -_ZN24AdventureModeManager_1608vfunc_08Ei kind:function(arm,size=0x9c) addr:0x020c92cc -_ZN24AdventureModeManager_1608vfunc_0CEi kind:function(arm,size=0x1a0) addr:0x020c9368 -_ZN24AdventureModeManager_1608vfunc_10Eii kind:function(arm,size=0x24) addr:0x020c9508 -_ZN24AdventureModeManager_1608vfunc_14Ei kind:function(arm,size=0x20) addr:0x020c952c +_ZN24AdventureModeManager_1609vfunc2_08Ei kind:function(arm,size=0x9c) addr:0x020c92cc +_ZN24AdventureModeManager_1609vfunc2_0CEi kind:function(arm,size=0x1a0) addr:0x020c9368 +_ZN24AdventureModeManager_1608vfunc_54Eii kind:function(arm,size=0x24) addr:0x020c9508 +_ZN24AdventureModeManager_1609vfunc2_14Ei kind:function(arm,size=0x20) addr:0x020c952c _ZN24AdventureModeManager_16019func_ov024_020c7cfcEv kind:function(arm,size=0x50) addr:0x020c954c _ZN24AdventureModeManager_16019func_ov024_020c7d4cEi kind:function(arm,size=0xf0) addr:0x020c959c -_ZN24AdventureModeManager_1608vfunc_18Ei kind:function(arm,size=0x118) addr:0x020c968c -_ZN24AdventureModeManager_1608vfunc_1CEi kind:function(arm,size=0x36c) addr:0x020c97a4 -_ZN24AdventureModeManager_1608vfunc_20Eii kind:function(arm,size=0xf8) addr:0x020c9b10 -_ZN24AdventureModeManager_1608vfunc_24Ev kind:function(arm,size=0x4) addr:0x020c9c08 +_ZN24AdventureModeManager_1609vfunc2_18Ei kind:function(arm,size=0x118) addr:0x020c968c +_ZN24AdventureModeManager_1608vfunc_5CEi kind:function(arm,size=0x36c) addr:0x020c97a4 +_ZN24AdventureModeManager_1608vfunc_58Eii kind:function(arm,size=0xf8) addr:0x020c9b10 +_ZN24AdventureModeManager_1608vfunc_60Ev kind:function(arm,size=0x4) addr:0x020c9c08 _ZN24AdventureModeManager_16019func_ov024_020c83bcEv kind:function(arm,size=0x6c) addr:0x020c9c0c _ZN24AdventureModeManager_16019func_ov024_020c8428Ev kind:function(arm,size=0x2c) addr:0x020c9c78 _ZN24AdventureModeManager_16019func_ov024_020c8454Ev kind:function(arm,size=0x30) addr:0x020c9ca4 @@ -165,11 +165,11 @@ _ZN24AdventureModeManager_170C1EP23GameModeManagerBase_104 kind:function(arm,siz _ZN27AdventureModeManager_170_14D1Ev kind:function(arm,size=0x14) addr:0x020c9e80 _ZN24AdventureModeManager_170D1Ev kind:function(arm,size=0x20) addr:0x020c9e94 _ZN24AdventureModeManager_170D0Ev kind:function(arm,size=0x28) addr:0x020c9eb4 -_ZN24AdventureModeManager_1708vfunc_08Ei kind:function(arm,size=0x38) addr:0x020c9edc -_ZN24AdventureModeManager_1708vfunc_0CEi kind:function(arm,size=0x74) addr:0x020c9f14 -_ZN24AdventureModeManager_1708vfunc_10Eii kind:function(arm,size=0xd4) addr:0x020c9f88 -_ZN24AdventureModeManager_1708vfunc_18Ei kind:function(arm,size=0xc) addr:0x020ca05c -_ZN24AdventureModeManager_1708vfunc_24Ev kind:function(arm,size=0x2c) addr:0x020ca068 +_ZN24AdventureModeManager_1709vfunc2_08Ei kind:function(arm,size=0x38) addr:0x020c9edc +_ZN24AdventureModeManager_1709vfunc2_0CEi kind:function(arm,size=0x74) addr:0x020c9f14 +_ZN24AdventureModeManager_1708vfunc_54Eii kind:function(arm,size=0xd4) addr:0x020c9f88 +_ZN24AdventureModeManager_1709vfunc2_18Ei kind:function(arm,size=0xc) addr:0x020ca05c +_ZN24AdventureModeManager_1708vfunc_60Ev kind:function(arm,size=0x2c) addr:0x020ca068 _ZN27AdventureModeManager_170_14D0Ev kind:function(arm,size=0x1c) addr:0x020ca094 _ZN32AdventureModeManager_174_Base_108vfunc_0CEv kind:function(thumb,size=0x10) addr:0x020ca0b0 _ZN32AdventureModeManager_174_Base_108vfunc_10Ev kind:function(thumb,size=0x10) addr:0x020ca0c0 @@ -181,25 +181,25 @@ _ZN32AdventureModeManager_174_Base_10D0Ev kind:function(arm,size=0x1c) addr:0x02 _ZN29AdventureModeManager_174_BaseD1Ev kind:function(arm,size=0x20) addr:0x020ca56c _ZN29AdventureModeManager_174_BaseD0Ev kind:function(arm,size=0x28) addr:0x020ca58c _ZN24AdventureModeManager_174C1EP23GameModeManagerBase_104 kind:function(thumb,size=0x2c) addr:0x020ca5b4 -_ZN24AdventureModeManager_1748vfunc_08Ei kind:function(thumb,size=0x58) addr:0x020ca5e0 -_ZN24AdventureModeManager_1748vfunc_0CEi kind:function(thumb,size=0x48) addr:0x020ca638 -_ZN24AdventureModeManager_1748vfunc_10Eii kind:function(thumb,size=0xac) addr:0x020ca680 -_ZN24AdventureModeManager_1748vfunc_18Ei kind:function(thumb,size=0x6c) addr:0x020ca72c -_ZN24AdventureModeManager_1748vfunc_1CEi kind:function(thumb,size=0x40) addr:0x020ca798 -_ZN24AdventureModeManager_1748vfunc_20Eii kind:function(thumb,size=0xc0) addr:0x020ca7d8 -_ZN24AdventureModeManager_1748vfunc_24Ev kind:function(thumb,size=0x2) addr:0x020ca898 +_ZN24AdventureModeManager_1749vfunc2_08Ei kind:function(thumb,size=0x58) addr:0x020ca5e0 +_ZN24AdventureModeManager_1749vfunc2_0CEi kind:function(thumb,size=0x48) addr:0x020ca638 +_ZN24AdventureModeManager_1748vfunc_54Eii kind:function(thumb,size=0xac) addr:0x020ca680 +_ZN24AdventureModeManager_1749vfunc2_18Ei kind:function(thumb,size=0x6c) addr:0x020ca72c +_ZN24AdventureModeManager_1748vfunc_5CEi kind:function(thumb,size=0x40) addr:0x020ca798 +_ZN24AdventureModeManager_1748vfunc_58Eii kind:function(thumb,size=0xc0) addr:0x020ca7d8 +_ZN24AdventureModeManager_1748vfunc_60Ev kind:function(thumb,size=0x2) addr:0x020ca898 _ZN24AdventureModeManager_174D1Ev kind:function(arm,size=0x20) addr:0x020ca89c _ZN24AdventureModeManager_174D0Ev kind:function(arm,size=0x28) addr:0x020ca8bc _ZN29AdventureModeManager_178_BaseC2EP23GameModeManagerBase_104 kind:function(thumb,size=0x14) addr:0x020ca8e4 -_ZN29AdventureModeManager_178_Base8vfunc_08Ei kind:function(thumb,size=0x2c) addr:0x020ca8f8 -_ZN29AdventureModeManager_178_Base8vfunc_0CEi kind:function(thumb,size=0x1c) addr:0x020ca924 -_ZN29AdventureModeManager_178_Base8vfunc_18Ei kind:function(thumb,size=0x2c) addr:0x020ca940 -_ZN29AdventureModeManager_178_Base8vfunc_1CEi kind:function(thumb,size=0x1c) addr:0x020ca96c +_ZN29AdventureModeManager_178_Base9vfunc2_08Ei kind:function(thumb,size=0x2c) addr:0x020ca8f8 +_ZN29AdventureModeManager_178_Base9vfunc2_0CEi kind:function(thumb,size=0x1c) addr:0x020ca924 +_ZN29AdventureModeManager_178_Base9vfunc2_18Ei kind:function(thumb,size=0x2c) addr:0x020ca940 +_ZN29AdventureModeManager_178_Base8vfunc_5CEi kind:function(thumb,size=0x1c) addr:0x020ca96c _ZN29AdventureModeManager_178_BaseD1Ev kind:function(arm,size=0x20) addr:0x020ca988 _ZN29AdventureModeManager_178_BaseD0Ev kind:function(arm,size=0x28) addr:0x020ca9a8 _ZN24AdventureModeManager_178C1EP23GameModeManagerBase_104 kind:function(thumb,size=0x2c) addr:0x020ca9d0 -_ZN24AdventureModeManager_1788vfunc_10Eii kind:function(thumb,size=0x24) addr:0x020ca9fc -_ZN24AdventureModeManager_1788vfunc_20Eii kind:function(thumb,size=0x24) addr:0x020caa20 +_ZN24AdventureModeManager_1788vfunc_54Eii kind:function(thumb,size=0x24) addr:0x020ca9fc +_ZN24AdventureModeManager_1788vfunc_58Eii kind:function(thumb,size=0x24) addr:0x020caa20 _ZN24AdventureModeManager_178D1Ev kind:function(arm,size=0x20) addr:0x020caa44 _ZN24AdventureModeManager_178D0Ev kind:function(arm,size=0x28) addr:0x020caa64 _ZN27AdventureModeManager_180_188vfunc_0CEv kind:function(thumb,size=0x10) addr:0x020caa8c @@ -207,29 +207,29 @@ _ZN24AdventureModeManager_180C1EP23GameModeManagerBase_104 kind:function(thumb,s _ZN27AdventureModeManager_180_18D1Ev kind:function(thumb,size=0xc) addr:0x020caaec _ZN24AdventureModeManager_180D1Ev kind:function(thumb,size=0x14) addr:0x020caaf8 _ZN24AdventureModeManager_180D0Ev kind:function(thumb,size=0x1a) addr:0x020cab0c -_ZN24AdventureModeManager_1808vfunc_08Ei kind:function(thumb,size=0x64) addr:0x020cab28 -_ZN24AdventureModeManager_1808vfunc_0CEi kind:function(thumb,size=0x90) addr:0x020cab8c -_ZN24AdventureModeManager_1808vfunc_10Eii kind:function(thumb,size=0x64) addr:0x020cac1c +_ZN24AdventureModeManager_1809vfunc2_08Ei kind:function(thumb,size=0x64) addr:0x020cab28 +_ZN24AdventureModeManager_1809vfunc2_0CEi kind:function(thumb,size=0x90) addr:0x020cab8c +_ZN24AdventureModeManager_1808vfunc_54Eii kind:function(thumb,size=0x64) addr:0x020cac1c _ZN24AdventureModeManager_18019func_ov024_020c9430Eii kind:function(thumb,size=0x24) addr:0x020cac80 -_ZN24AdventureModeManager_1808vfunc_18Ei kind:function(thumb,size=0x30) addr:0x020caca4 -_ZN24AdventureModeManager_1808vfunc_1CEi kind:function(thumb,size=0x78) addr:0x020cacd4 -_ZN24AdventureModeManager_1808vfunc_20Eii kind:function(thumb,size=0x7c) addr:0x020cad4c -_ZN24AdventureModeManager_1808vfunc_24Ev kind:function(thumb,size=0x2) addr:0x020cadc8 +_ZN24AdventureModeManager_1809vfunc2_18Ei kind:function(thumb,size=0x30) addr:0x020caca4 +_ZN24AdventureModeManager_1808vfunc_5CEi kind:function(thumb,size=0x78) addr:0x020cacd4 +_ZN24AdventureModeManager_1808vfunc_58Eii kind:function(thumb,size=0x7c) addr:0x020cad4c +_ZN24AdventureModeManager_1808vfunc_60Ev kind:function(thumb,size=0x2) addr:0x020cadc8 _ZN24AdventureModeManager_18019func_ov024_020c957cEv kind:function(thumb,size=0x48) addr:0x020cadcc _ZN24AdventureModeManager_18019func_ov024_020c95c4Ev kind:function(thumb,size=0x48) addr:0x020cae14 _ZN27AdventureModeManager_180_18D0Ev kind:function(arm,size=0x1c) addr:0x020cae5c _ZN24AdventureModeManager_184C1EP23GameModeManagerBase_104 kind:function(thumb,size=0x30) addr:0x020cae78 _ZN24AdventureModeManager_184D1Ev kind:function(thumb,size=0xc) addr:0x020caea8 _ZN24AdventureModeManager_184D0Ev kind:function(thumb,size=0x12) addr:0x020caeb4 -_ZN24AdventureModeManager_1848vfunc_08Ei kind:function(thumb,size=0x20) addr:0x020caec8 -_ZN24AdventureModeManager_1848vfunc_0CEi kind:function(thumb,size=0xf8) addr:0x020caee8 -_ZN24AdventureModeManager_1848vfunc_10Eii kind:function(thumb,size=0x8) addr:0x020cafe0 -_ZN24AdventureModeManager_1848vfunc_14Ei kind:function(thumb,size=0x2) addr:0x020cafe8 +_ZN24AdventureModeManager_1849vfunc2_08Ei kind:function(thumb,size=0x20) addr:0x020caec8 +_ZN24AdventureModeManager_1849vfunc2_0CEi kind:function(thumb,size=0xf8) addr:0x020caee8 +_ZN24AdventureModeManager_1848vfunc_54Eii kind:function(thumb,size=0x8) addr:0x020cafe0 +_ZN24AdventureModeManager_1849vfunc2_14Ei kind:function(thumb,size=0x2) addr:0x020cafe8 _ZN24AdventureModeManager_18419func_ov024_020c979cEi kind:function(thumb,size=0x94) addr:0x020cafec -_ZN24AdventureModeManager_1848vfunc_18Ei kind:function(thumb,size=0x7c) addr:0x020cb080 -_ZN24AdventureModeManager_1848vfunc_1CEi kind:function(thumb,size=0x60) addr:0x020cb0fc -_ZN24AdventureModeManager_1848vfunc_20Eii kind:function(thumb,size=0x5c) addr:0x020cb15c -_ZN24AdventureModeManager_1848vfunc_24Ev kind:function(thumb,size=0x8) addr:0x020cb1b8 +_ZN24AdventureModeManager_1849vfunc2_18Ei kind:function(thumb,size=0x7c) addr:0x020cb080 +_ZN24AdventureModeManager_1848vfunc_5CEi kind:function(thumb,size=0x60) addr:0x020cb0fc +_ZN24AdventureModeManager_1848vfunc_58Eii kind:function(thumb,size=0x5c) addr:0x020cb15c +_ZN24AdventureModeManager_1848vfunc_60Ev kind:function(thumb,size=0x8) addr:0x020cb1b8 _ZN27AdventureModeManager_18C_14C1Ev kind:function(thumb,size=0x14) addr:0x020cb1c0 _ZN27AdventureModeManager_18C_148vfunc_0CEv kind:function(thumb,size=0x10) addr:0x020cb1d4 _ZN27AdventureModeManager_18C_148vfunc_10Ev kind:function(thumb,size=0x10) addr:0x020cb1e4 @@ -237,15 +237,15 @@ _ZN24AdventureModeManager_18CC1EP23GameModeManagerBase_104 kind:function(thumb,s _ZN27AdventureModeManager_18C_14D1Ev kind:function(thumb,size=0xc) addr:0x020cb25c _ZN24AdventureModeManager_18CD1Ev kind:function(thumb,size=0x14) addr:0x020cb268 _ZN24AdventureModeManager_18CD0Ev kind:function(thumb,size=0x1a) addr:0x020cb27c -_ZN24AdventureModeManager_18C8vfunc_08Ei kind:function(thumb,size=0x32) addr:0x020cb298 -_ZN24AdventureModeManager_18C8vfunc_0CEi kind:function(thumb,size=0xf0) addr:0x020cb2cc -_ZN24AdventureModeManager_18C8vfunc_10Eii kind:function(thumb,size=0x100) addr:0x020cb3bc +_ZN24AdventureModeManager_18C9vfunc2_08Ei kind:function(thumb,size=0x32) addr:0x020cb298 +_ZN24AdventureModeManager_18C9vfunc2_0CEi kind:function(thumb,size=0xf0) addr:0x020cb2cc +_ZN24AdventureModeManager_18C8vfunc_54Eii kind:function(thumb,size=0x100) addr:0x020cb3bc _ZN24AdventureModeManager_18C19func_ov024_020c9c6cEv kind:function(thumb,size=0xb4) addr:0x020cb4bc -_ZN24AdventureModeManager_18C8vfunc_14Ei kind:function(thumb,size=0x10) addr:0x020cb570 -_ZN24AdventureModeManager_18C8vfunc_18Ei kind:function(thumb,size=0xac) addr:0x020cb580 -_ZN24AdventureModeManager_18C8vfunc_1CEi kind:function(thumb,size=0x88) addr:0x020cb62c -_ZN24AdventureModeManager_18C8vfunc_20Eii kind:function(thumb,size=0x1c4) addr:0x020cb6b4 -_ZN24AdventureModeManager_18C8vfunc_24Ev kind:function(thumb,size=0xa) addr:0x020cb878 +_ZN24AdventureModeManager_18C9vfunc2_14Ei kind:function(thumb,size=0x10) addr:0x020cb570 +_ZN24AdventureModeManager_18C9vfunc2_18Ei kind:function(thumb,size=0xac) addr:0x020cb580 +_ZN24AdventureModeManager_18C8vfunc_5CEi kind:function(thumb,size=0x88) addr:0x020cb62c +_ZN24AdventureModeManager_18C8vfunc_58Eii kind:function(thumb,size=0x1c4) addr:0x020cb6b4 +_ZN24AdventureModeManager_18C8vfunc_60Ev kind:function(thumb,size=0xa) addr:0x020cb878 _ZN24AdventureModeManager_18C19func_ov024_020ca034Ev kind:function(thumb,size=0x34) addr:0x020cb884 _ZN24AdventureModeManager_18C19func_ov024_020ca068Ei kind:function(thumb,size=0xc) addr:0x020cb8b8 _ZN24AdventureModeManager_18C19func_ov024_020ca074Ev kind:function(thumb,size=0x6) addr:0x020cb8c4 @@ -255,12 +255,12 @@ _ZN27AdventureModeManager_190_388vfunc_0CEv kind:function(thumb,size=0xc) addr:0 _ZN24AdventureModeManager_190C1EP23GameModeManagerBase_104 kind:function(thumb,size=0x54) addr:0x020cb904 _ZN27AdventureModeManager_190_14D1Ev kind:function(thumb,size=0xc) addr:0x020cb958 _ZN27AdventureModeManager_190_38D1Ev kind:function(thumb,size=0xc) addr:0x020cb964 -_ZN24AdventureModeManager_1908vfunc_08Ei kind:function(thumb,size=0xc) addr:0x020cb970 -_ZN24AdventureModeManager_1908vfunc_0CEi kind:function(thumb,size=0x20) addr:0x020cb97c -_ZN24AdventureModeManager_1908vfunc_10Eii kind:function(thumb,size=0x3c) addr:0x020cb99c -_ZN24AdventureModeManager_1908vfunc_18Ei kind:function(thumb,size=0xc) addr:0x020cb9d8 -_ZN24AdventureModeManager_1908vfunc_1CEi kind:function(thumb,size=0x20) addr:0x020cb9e4 -_ZN24AdventureModeManager_1908vfunc_20Eii kind:function(thumb,size=0x68) addr:0x020cba04 +_ZN24AdventureModeManager_1909vfunc2_08Ei kind:function(thumb,size=0xc) addr:0x020cb970 +_ZN24AdventureModeManager_1909vfunc2_0CEi kind:function(thumb,size=0x20) addr:0x020cb97c +_ZN24AdventureModeManager_1908vfunc_54Eii kind:function(thumb,size=0x3c) addr:0x020cb99c +_ZN24AdventureModeManager_1909vfunc2_18Ei kind:function(thumb,size=0xc) addr:0x020cb9d8 +_ZN24AdventureModeManager_1908vfunc_5CEi kind:function(thumb,size=0x20) addr:0x020cb9e4 +_ZN24AdventureModeManager_1908vfunc_58Eii kind:function(thumb,size=0x68) addr:0x020cba04 _ZN24AdventureModeManager_19019func_ov024_020ca21cEv kind:function(thumb,size=0x30) addr:0x020cba6c _ZN24AdventureModeManager_19019func_ov024_020ca24cEi kind:function(thumb,size=0x34) addr:0x020cba9c _ZN24AdventureModeManager_19019func_ov024_020ca280Ev kind:function(thumb,size=0x10) addr:0x020cbad0 diff --git a/config/jp/arm9/overlays/ov031/delinks.txt b/config/jp/arm9/overlays/ov031/delinks.txt index 673cf9cb..9f206644 100644 --- a/config/jp/arm9/overlays/ov031/delinks.txt +++ b/config/jp/arm9/overlays/ov031/delinks.txt @@ -186,15 +186,17 @@ src/031_Land/Actor/ActorItemDrop.cpp: .bss start:0x02118c0c end:0x02118d3c src/031_Land/Actor/ActorUnkMLCK.cpp: - .text start:0x020fc5b4 end:0x020fcd04 + .text start:0x020fc5b4 end:0x020fcd64 .init start:0x02113714 end:0x02113788 .ctor start:0x0211458c end:0x02114590 + .data start:0x02116a9c end:0x02116b90 .bss start:0x02118d3c end:0x02118d88 src/031_Land/Actor/ActorUnkCLLT.cpp: .text start:0x020fcd64 end:0x020fcf04 .init start:0x02113788 end:0x021137d8 .ctor start:0x02114590 end:0x02114594 + .data start:0x02116b90 end:0x02116c20 .bss start:0x02118d88 end:0x02118dd4 src/031_Land/Actor/ActorUnkEFSB.cpp: diff --git a/config/jp/arm9/overlays/ov031/relocs.txt b/config/jp/arm9/overlays/ov031/relocs.txt index 8502b9d6..f8d58b70 100644 --- a/config/jp/arm9/overlays/ov031/relocs.txt +++ b/config/jp/arm9/overlays/ov031/relocs.txt @@ -103,7 +103,7 @@ from:0x020dacb0 kind:load to:0x0204b690 module:main from:0x020dace4 kind:arm_call to:0x01fff350 module:itcm from:0x020dacf0 kind:arm_call to:0x020fcc40 module:overlay(31) from:0x020dacfc kind:load to:0x027e0ce4 module:dtcm -from:0x020dad04 kind:load to:0x02114874 module:overlay(31) +from:0x020dad04 kind:load to:0x0211486c add:0x8 module:overlay(31) from:0x020dad20 kind:arm_call to:0x01fff458 module:itcm from:0x020dad50 kind:load to:0x027e0ce4 module:dtcm from:0x020dad54 kind:load to:0x020dad08 module:overlay(31) @@ -3773,13 +3773,13 @@ from:0x020fc5f0 kind:arm_call to:0x02098e24 module:overlay(0) from:0x020fc608 kind:load to:0x02116ac0 add:0x8 module:overlay(31) from:0x020fc614 kind:arm_call to:0x02099b30 module:overlay(0) from:0x020fc61c kind:arm_call to:0x02062bd0 module:overlay(0) -from:0x020fc6b0 kind:load to:0x02116ab0 module:overlay(31) +from:0x020fc6b0 kind:load to:0x02116aa8 add:0x8 module:overlay(31) from:0x020fc6b4 kind:load to:0x02116ae4 add:0x8 module:overlay(31) -from:0x020fc6b8 kind:load to:0x02116b60 add:0x8 module:overlay(31) +from:0x020fc6b8 kind:load to:0x02116ae4 add:0x84 module:overlay(31) from:0x020fc6f4 kind:arm_call to:0x01fff350 module:itcm from:0x020fc728 kind:arm_call to:0x02062764 module:overlay(0) from:0x020fc780 kind:load to:0x027e0ce4 module:dtcm -from:0x020fc784 kind:load to:0x02114874 module:overlay(31) +from:0x020fc784 kind:load to:0x0211486c add:0x8 module:overlay(31) from:0x020fc78c kind:load to:0x0204b608 module:main from:0x020fc790 kind:load to:0x020da050 module:overlay(24) from:0x020fc7c4 kind:arm_call to:0x02070ff8 module:overlay(0) diff --git a/config/jp/arm9/overlays/ov031/symbols.txt b/config/jp/arm9/overlays/ov031/symbols.txt index e2c72a8e..8f6c9251 100644 --- a/config/jp/arm9/overlays/ov031/symbols.txt +++ b/config/jp/arm9/overlays/ov031/symbols.txt @@ -73,9 +73,9 @@ func_ov031_020db25c kind:function(arm,size=0x1c) addr:0x020db25c func_ov031_020db278 kind:function(arm,size=0x1c) addr:0x020db278 func_ov031_020db294 kind:function(arm,size=0x2c) addr:0x020db294 func_ov031_020db2c0 kind:function(arm,size=0x2c) addr:0x020db2c0 -func_ov031_020db2ec kind:function(arm,size=0x10) addr:0x020db2ec +_ZN18UnkStruct_027e0d3419func_ov031_020d994cEv kind:function(arm,size=0x10) addr:0x020db2ec func_ov031_020db2fc kind:function(arm,size=0x10) addr:0x020db2fc -func_ov031_020db30c kind:function(arm,size=0x10) addr:0x020db30c +_ZN18UnkStruct_027e0d3419func_ov031_020d996cEv kind:function(arm,size=0x10) addr:0x020db30c func_ov031_020db31c kind:function(arm,size=0x30) addr:0x020db31c func_ov031_020db34c kind:function(arm,size=0x10) addr:0x020db34c func_ov031_020db35c kind:function(arm,size=0x10) addr:0x020db35c @@ -149,17 +149,17 @@ func_ov031_020dcd14 kind:function(arm,size=0x74) addr:0x020dcd14 func_ov031_020dcd88 kind:function(arm,size=0x18) addr:0x020dcd88 func_ov031_020dcda0 kind:function(arm,size=0x98) addr:0x020dcda0 func_ov031_020dce38 kind:function(arm,size=0x58) addr:0x020dce38 -func_ov031_020dce90 kind:function(arm,size=0x38) addr:0x020dce90 -func_ov031_020dcec8 kind:function(arm,size=0x8c) addr:0x020dcec8 +_ZN27UnkStruct_ItemManager_20_0419func_ov031_020db4f0Eii kind:function(arm,size=0x38) addr:0x020dce90 +_ZN27UnkStruct_ItemManager_20_0419func_ov031_020db528Ei kind:function(arm,size=0x8c) addr:0x020dcec8 _ZN27UnkStruct_ItemManager_20_0819func_ov031_020db5b4Ev kind:function(arm,size=0x20) addr:0x020dcf54 func_ov031_020dcf74 kind:function(arm,size=0x14) addr:0x020dcf74 func_ov031_020dcf88 kind:function(arm,size=0x2c) addr:0x020dcf88 func_ov031_020dcfb4 kind:function(arm,size=0x90) addr:0x020dcfb4 func_ov031_020dd044 kind:function(arm,size=0x60) addr:0x020dd044 -func_ov031_020dd0a4 kind:function(arm,size=0xbc) addr:0x020dd0a4 +_ZN27UnkStruct_ItemManager_20_0819func_ov031_020db704Eii kind:function(arm,size=0xbc) addr:0x020dd0a4 _ZN27UnkStruct_ItemManager_20_14C1Ev kind:function(thumb,size=0x16) addr:0x020dd160 _ZN27UnkStruct_ItemManager_20_1419func_ov031_020db7d8Ev kind:function(thumb,size=0x1a) addr:0x020dd178 -func_ov031_020dd194 kind:function(arm,size=0x50) addr:0x020dd194 +_ZN27UnkStruct_ItemManager_20_1419func_ov031_020db7f4Ev kind:function(arm,size=0x50) addr:0x020dd194 func_ov031_020dd1e4 kind:function(arm,size=0x30) addr:0x020dd1e4 _ZN24UnkStruct_ItemManager_2019func_ov031_020db874Ej kind:function(arm,size=0x58) addr:0x020dd214 _ZN24UnkStruct_ItemManager_2019func_ov031_020db8ccEv kind:function(arm,size=0x2c) addr:0x020dd26c @@ -167,15 +167,15 @@ _ZN24UnkStruct_ItemManager_2019func_ov031_020db8f8Ev kind:function(arm,size=0x44 _ZN27UnkStruct_ItemManager_20_0CC1Ev kind:function(thumb,size=0x12) addr:0x020dd2dc _ZN27UnkStruct_ItemManager_20_0CD1Ev kind:function(thumb,size=0x2) addr:0x020dd2f0 _ZN27UnkStruct_ItemManager_20_0C19func_ov031_020db954Ev kind:function(arm,size=0x4) addr:0x020dd2f4 -func_ov031_020dd2f8 kind:function(arm,size=0xe4) addr:0x020dd2f8 -func_ov031_020dd3dc kind:function(arm,size=0x4) addr:0x020dd3dc +_ZN27UnkStruct_ItemManager_20_0C19func_ov031_020db958Eii kind:function(arm,size=0xe4) addr:0x020dd2f8 +_ZN27UnkStruct_ItemManager_20_0C19func_ov031_020dba3cEi kind:function(arm,size=0x4) addr:0x020dd3dc _ZN27UnkStruct_ItemManager_20_0019func_ov031_020dba40Ev kind:function(arm,size=0x34) addr:0x020dd3e0 func_ov031_020dd414 kind:function(arm,size=0x18) addr:0x020dd414 func_ov031_020dd42c kind:function(arm,size=0xac) addr:0x020dd42c func_ov031_020dd4d8 kind:function(arm,size=0x1c) addr:0x020dd4d8 func_ov031_020dd4f4 kind:function(arm,size=0xc4) addr:0x020dd4f4 func_ov031_020dd5b8 kind:function(arm,size=0x68) addr:0x020dd5b8 -func_ov031_020dd620 kind:function(arm,size=0xa4) addr:0x020dd620 +_ZN27UnkStruct_ItemManager_20_0019func_ov031_020dbc80Eii kind:function(arm,size=0xa4) addr:0x020dd620 func_ov031_020dd6c4 kind:function(arm,size=0x74) addr:0x020dd6c4 func_ov031_020dd738 kind:function(arm,size=0xc4) addr:0x020dd738 func_ov031_020dd7fc kind:function(arm,size=0x2c) addr:0x020dd7fc @@ -612,7 +612,7 @@ _ZN19ActorProfileUnkZSRSC1Ev kind:function(thumb,size=0x1c) addr:0x020eba24 _ZN19ActorProfileUnkZLSL10GetProfileEv kind:function(thumb,size=0x8) addr:0x020eba40 _ZN19ActorProfileUnkZLSL6CreateEv kind:function(thumb,size=0x1c) addr:0x020eba48 _ZN19ActorProfileUnkZLSLC1Ev kind:function(thumb,size=0x3c) addr:0x020eba64 -_ZN24UnkStruct_ov031_0211361c19func_ov031_020ea0b4EP5Actor kind:function(thumb,size=0x30) addr:0x020ebaa0 +_ZN24UnkStruct_ov031_0211361c8vfunc_00EP5Actor kind:function(thumb,size=0x30) addr:0x020ebaa0 func_ov031_020ebad0 kind:function(thumb,size=0x14) addr:0x020ebad0 _ZN26ModelRender_ov031_021136708vfunc_0CEv kind:function(thumb,size=0x8) addr:0x020ebae4 func_ov031_020ea100 kind:function(thumb,size=0x40) addr:0x020ebaec @@ -1207,8 +1207,8 @@ _ZN12ActorUnkMLCKC1Ev kind:function(arm,size=0xb0) addr:0x020fc60c _ZN12ActorUnkMLCK8vfunc_18Ei kind:function(arm,size=0xd8) addr:0x020fc6bc _ZN12ActorUnkMLCK8vfunc_64Ei kind:function(arm,size=0x4c) addr:0x020fc794 _ZN12ActorUnkMLCK8vfunc_54Eii kind:function(arm,size=0x20) addr:0x020fc7e0 -_ZN12ActorUnkMLCK8vfunc_58Ev kind:function(arm,size=0xc) addr:0x020fc800 -_ZN12ActorUnkMLCK8vfunc_5CEv kind:function(arm,size=0x54) addr:0x020fc80c +_ZN12ActorUnkMLCK8vfunc_58Eii kind:function(arm,size=0xc) addr:0x020fc800 +_ZN12ActorUnkMLCK8vfunc_5CEi kind:function(arm,size=0x54) addr:0x020fc80c _ZN12ActorUnkMLCK8vfunc_60Ev kind:function(arm,size=0x18) addr:0x020fc860 _ZN12ActorUnkMLCK8vfunc_68Ev kind:function(arm,size=0x90) addr:0x020fc878 _ZN12ActorUnkMLCK19func_ov031_020faeb0Ev kind:function(arm,size=0x4) addr:0x020fc908 @@ -1217,20 +1217,20 @@ _ZN12ActorUnkMLCK8vfunc_70Ev kind:function(arm,size=0x20) addr:0x020fc95c _ZN12ActorUnkMLCK19func_ov031_020faf24Ev kind:function(arm,size=0x1e0) addr:0x020fc97c _ZN12ActorUnkMLCK19func_ov031_020fb104Ev kind:function(arm,size=0x18) addr:0x020fcb5c _ZN12ActorUnkMLCK19func_ov031_020fb11cEv kind:function(arm,size=0x68) addr:0x020fcb74 -_ZN18ActorUnkMLCK_B4_0019func_ov031_020fb184Ev kind:function(arm,size=0x2c) addr:0x020fcbdc +_ZN15ActorUnkMLCK_C419func_ov031_020fb184Ev kind:function(arm,size=0x2c) addr:0x020fcbdc _ZN15ActorUnkMLCK_D89vfunc2_00Ev kind:function(arm,size=0x1c) addr:0x020fcc08 _ZN15ActorUnkMLCK_D89vfunc2_04Ev kind:function(arm,size=0x1c) addr:0x020fcc24 -_ZN12ActorUnkMLCK19func_ov031_020fb1e8EP18ActorUnkMLCK_B4_00 kind:function(arm,size=0x1c) addr:0x020fcc40 +_ZN12ActorUnkMLCK19func_ov031_020fb1e8EP15ActorUnkMLCK_A0 kind:function(arm,size=0x1c) addr:0x020fcc40 _ZN12ActorUnkMLCK19func_ov031_020fb204Ei kind:function(arm,size=0x4c) addr:0x020fcc5c _ZN12ActorUnkMLCKD0Ev kind:function(arm,size=0x28) addr:0x020fcca8 _ZN12ActorUnkMLCKD1Ev kind:function(arm,size=0x20) addr:0x020fccd0 _ZN19ActorProfileUnkMLCKD1Ev kind:function(arm,size=0x14) addr:0x020fccf0 -func_ov031_020fcd04 kind:function(arm,size=0x10) addr:0x020fcd04 -func_ov031_020fcd14 kind:function(arm,size=0x10) addr:0x020fcd14 -func_ov031_020fcd24 kind:function(arm,size=0x10) addr:0x020fcd24 -func_ov031_020fcd34 kind:function(arm,size=0x10) addr:0x020fcd34 -func_ov031_020fcd44 kind:function(arm,size=0x10) addr:0x020fcd44 -func_ov031_020fcd54 kind:function(arm,size=0x10) addr:0x020fcd54 +_ZThn148_N12ActorUnkMLCKD0Ev kind:function(arm,size=0x10) addr:0x020fcd04 +_ZThn148_N12ActorUnkMLCK8vfunc_60Ev kind:function(arm,size=0x10) addr:0x020fcd14 +_ZThn148_N12ActorUnkMLCK8vfunc_58Eii kind:function(arm,size=0x10) addr:0x020fcd24 +_ZThn148_N12ActorUnkMLCK8vfunc_5CEi kind:function(arm,size=0x10) addr:0x020fcd34 +_ZThn148_N12ActorUnkMLCK8vfunc_54Eii kind:function(arm,size=0x10) addr:0x020fcd44 +_ZThn148_N12ActorUnkMLCKD1Ev kind:function(arm,size=0x10) addr:0x020fcd54 _ZN19ActorProfileUnkCLLT10GetProfileEv kind:function(arm,size=0xc) addr:0x020fcd64 _ZN19ActorProfileUnkCLLT6CreateEv kind:function(arm,size=0x24) addr:0x020fcd70 _ZN19ActorProfileUnkCLLTC1Ev kind:function(arm,size=0x28) addr:0x020fcd94 @@ -1793,7 +1793,7 @@ _ZN23MapObjectProfileUnkSAND6CreateEv kind:function(arm,size=0x24) addr:0x0210c8 _ZN23MapObjectProfileUnkSANDC1Ev kind:function(arm,size=0x198) addr:0x0210c8a4 _ZN16MapObjectUnkSAND19func_ov031_0210acd4Ev kind:function(arm,size=0x90) addr:0x0210ca3c _ZN16MapObjectUnkSAND19func_ov031_0210ad64Ev kind:function(arm,size=0x9c) addr:0x0210cacc -_ZN16MapObjectUnkSAND19func_ov031_0210ae00Ev kind:function(arm,size=0x90) addr:0x0210cb68 +_ZN16MapObjectUnkSAND19func_ov031_0210ae00E8Vec2bCppPv kind:function(arm,size=0x90) addr:0x0210cb68 _ZN16MapObjectUnkSAND19func_ov031_0210ae90Ev kind:function(arm,size=0xc0) addr:0x0210cbf8 _ZN16MapObjectUnkSAND19func_ov031_0210af50Ev kind:function(arm,size=0xc8) addr:0x0210ccb8 _ZN16MapObjectUnkSAND19func_ov031_0210b018Ev kind:function(arm,size=0x10) addr:0x0210cd80 @@ -1801,13 +1801,13 @@ _ZN16MapObjectUnkSAND19func_ov031_0210b028Ev kind:function(arm,size=0x84) addr:0 _ZN16MapObjectUnkSAND19func_ov031_0210b0acEv kind:function(arm,size=0x38) addr:0x0210ce14 _ZN16MapObjectUnkSAND19func_ov031_0210b0e4Ev kind:function(arm,size=0x60) addr:0x0210ce4c _ZN16MapObjectUnkSAND19func_ov031_0210b144Ev kind:function(arm,size=0x38) addr:0x0210ceac -_ZN16MapObjectUnkSAND19func_ov031_0210b17cEv kind:function(arm,size=0x70) addr:0x0210cee4 +_ZN16MapObjectUnkSAND19func_ov031_0210b17cEP19MapObjectUnkSAND_40i kind:function(arm,size=0x70) addr:0x0210cee4 _ZN16MapObjectUnkSAND19func_ov031_0210b1ecEv kind:function(arm,size=0xe0) addr:0x0210cf54 _ZN16MapObjectUnkSAND19func_ov031_0210b2ccEv kind:function(arm,size=0x30) addr:0x0210d034 -_ZN16MapObjectUnkSANDD1Ev kind:function(arm,size=0x14) addr:0x0210d064 -_ZN16MapObjectUnkSANDD0Ev kind:function(arm,size=0x1c) addr:0x0210d078 -_ZN16MapObjectUnkSAND19func_ov031_0210b32cEv kind:function(arm,size=0x20) addr:0x0210d094 -_ZN16MapObjectUnkSAND19func_ov031_0210b34cEv kind:function(arm,size=0x28) addr:0x0210d0b4 +_ZN16MapObjectUnkSAND19func_ov031_0210b2fcEv kind:function(arm,size=0x14) addr:0x0210d064 +_ZN16MapObjectUnkSAND19func_ov031_0210b310Ev kind:function(arm,size=0x1c) addr:0x0210d078 +_ZN16MapObjectUnkSANDD1Ev kind:function(arm,size=0x20) addr:0x0210d094 +_ZN16MapObjectUnkSANDD0Ev kind:function(arm,size=0x28) addr:0x0210d0b4 _ZN23MapObjectProfileUnkSANDD1Ev kind:function(arm,size=0x14) addr:0x0210d0dc _ZN23MapObjectProfileUnkSPTB10GetProfileEv kind:function(arm,size=0xc) addr:0x0210d0f0 _ZN23MapObjectProfileUnkSPTB6CreateEv kind:function(arm,size=0x24) addr:0x0210d0fc @@ -2026,7 +2026,7 @@ data_ov031_02112914 kind:data(any) addr:0x02112914 data_ov031_02112920 kind:data(any) addr:0x02112920 data_ov031_0211292c kind:data(any) addr:0x0211292c data_ov031_02110bc8 kind:data(any) addr:0x02112938 local -data_ov031_0211295c kind:data(any) addr:0x0211295c +data_ov031_02110bec kind:data(any) addr:0x0211295c data_ov031_02112970 kind:data(any) addr:0x02112970 data_ov031_02110c1c kind:data(any) addr:0x0211298c local data_ov031_02110c28 kind:data(any) addr:0x02112998 local @@ -2092,7 +2092,7 @@ __sinit_ActorUnkNORE.cpp kind:function(arm,size=0x50) addr:0x021134ec local __sinit_ActorUnkFLEN.cpp kind:function(arm,size=0x50) addr:0x0211353c __sinit_ActorRollingStone.cpp kind:function(arm,size=0x50) addr:0x0211358c __sinit_ActorItemDrop.cpp kind:function(arm,size=0x138) addr:0x021135dc local -__sinit_ActorUnkMLCK.cpp kind:function(arm,size=0x74) addr:0x02113714 +__sinit_ActorUnkMLCK.cpp kind:function(arm,size=0x74) addr:0x02113714 local __sinit_ActorUnkCLLT.cpp kind:function(arm,size=0x50) addr:0x02113788 __sinit_ActorUnkEFSB.cpp kind:function(arm,size=0x50) addr:0x021137d8 local __sinit_ActorUnkNFSP.cpp kind:function(arm,size=0x50) addr:0x02113828 local @@ -2156,7 +2156,7 @@ __sinit_MapObjectUnkSWFS.cpp kind:function(arm,size=0x70) addr:0x021144b0 .p__sinit_ActorUnkFLEN.cpp kind:data(word) addr:0x02114580 .p__sinit_ActorRollingStone.cpp kind:data(word) addr:0x02114584 .p__sinit_ActorItemDrop.cpp kind:data(word) addr:0x02114588 local -.p__sinit_ActorUnkMLCK.cpp kind:data(word) addr:0x0211458c +.p__sinit_ActorUnkMLCK.cpp kind:data(word) addr:0x0211458c local .p__sinit_ActorUnkCLLT.cpp kind:data(word) addr:0x02114590 .p__sinit_ActorUnkEFSB.cpp kind:data(word) addr:0x02114594 local .p__sinit_ActorUnkNFSP.cpp kind:data(word) addr:0x02114598 local @@ -2226,7 +2226,7 @@ data_ov031_021147f0 kind:data(any) addr:0x021147f0 data_ov031_02114804 kind:data(any) addr:0x02114804 _ZTV16MapObject_10_Pot kind:data(any) addr:0x02114810 data_ov031_02114840 kind:data(any) addr:0x02114840 -data_ov031_02114874 kind:data(any) addr:0x02114874 +_ZTV24UnkStruct_ov031_02112ad4 kind:data(any) addr:0x0211486c data_ov031_02114880 kind:data(any) addr:0x02114880 data_ov031_0211489c kind:data(any) addr:0x0211489c data_ov031_021148b8 kind:data(any) addr:0x021148b8 @@ -2393,11 +2393,10 @@ _ZTV24ActorProfileTreasureDrop kind:data(any) addr:0x021169d0 _ZTV25ActorProfileRedPotionDrop kind:data(any) addr:0x021169f4 _ZTV20ActorProfileBombDrop kind:data(any) addr:0x02116a18 _ZTV13ActorItemDrop kind:data(any) addr:0x02116a3c -data_ov031_02116a9c kind:data(any) addr:0x02116a9c -data_ov031_02116ab0 kind:data(any) addr:0x02116ab0 -_ZTV19data_ov031_02116ac0 kind:data(any) addr:0x02116ac0 -_ZTV19data_ov031_02116ae4 kind:data(any) addr:0x02116ae4 -_ZTV19data_ov031_02116b60 kind:data(any) addr:0x02116b60 +data_ov031_02114d28 kind:data(any) addr:0x02116a9c local +_ZTV15ActorUnkMLCK_D8 kind:data(any) addr:0x02116aa8 +_ZTV19ActorProfileUnkMLCK kind:data(any) addr:0x02116ac0 +_ZTV12ActorUnkMLCK kind:data(any) addr:0x02116ae4 _ZTV19data_ov031_02116b90 kind:data(any) addr:0x02116b90 _ZTV19data_ov031_02116bb4 kind:data(any) addr:0x02116bb4 _ZTV19ActorProfileUnkEFSB kind:data(any) addr:0x02116c20 @@ -2487,7 +2486,7 @@ data_ov031_02117ccc kind:data(any) addr:0x02117ccc data_ov031_02117d08 kind:data(any) addr:0x02117d08 data_ov031_02117d1c kind:data(any) addr:0x02117d1c data_ov031_02117d38 kind:data(any) addr:0x02117d38 -data_ov031_02117d80 kind:data(any) addr:0x02117d80 +data_ov031_02115fe0 kind:data(any) addr:0x02117d80 data_ov031_02117d8c kind:data(any) addr:0x02117d8c ambiguous data_ov031_02117da0 kind:data(any) addr:0x02117da0 data_ov031_02117dbc kind:data(any) addr:0x02117dbc ambiguous @@ -2603,7 +2602,7 @@ _ZN15ProfileInstanceI24ActorProfileTreasureDropE8sProfileE kind:bss addr:0x02118 _ZN15ProfileInstanceI21ActorProfileArrowDropE8sProfileE kind:bss addr:0x02118cc4 _ZN15ProfileInstanceI20ActorProfileBombDropE8sProfileE kind:bss addr:0x02118d00 _ZGVN15ProfileInstanceI19ActorProfileUnkMLCKE8sProfileE kind:bss addr:0x02118d3c -@30920 kind:bss addr:0x02118d40 +@30920 kind:bss addr:0x02118d40 local _ZN15ProfileInstanceI19ActorProfileUnkMLCKE8sProfileE kind:bss addr:0x02118d4c _ZGVN15ProfileInstanceI19ActorProfileUnkCLLTE8sProfileE kind:bss addr:0x02118d88 @30926 kind:bss addr:0x02118d8c @@ -2720,9 +2719,9 @@ data_ov031_0211a694 kind:bss addr:0x0211a694 data_ov031_02118900 kind:bss addr:0x0211a6a0 data_ov031_02118918 kind:bss addr:0x0211a6b8 data_ov031_021189d0 kind:bss addr:0x0211a770 -data_ov031_0211a844 kind:bss addr:0x0211a844 -data_ov031_0211a868 kind:bss addr:0x0211a868 -data_ov031_0211a88c kind:bss addr:0x0211a88c +data_ov031_02118aa4 kind:bss addr:0x0211a844 +data_ov031_02118ac8 kind:bss addr:0x0211a868 +data_ov031_02118aec kind:bss addr:0x0211a88c data_ov031_0211a8b0 kind:bss addr:0x0211a8b0 _ZGVN15ProfileInstanceI23MapObjectProfileUnkSPTBE8sProfileE kind:bss addr:0x0211aa30 @31101 kind:bss addr:0x0211aa38 diff --git a/config/jp/arm9/overlays/ov033/relocs.txt b/config/jp/arm9/overlays/ov033/relocs.txt index 611124d3..cc8c7d61 100644 --- a/config/jp/arm9/overlays/ov033/relocs.txt +++ b/config/jp/arm9/overlays/ov033/relocs.txt @@ -347,7 +347,7 @@ from:0x0211db24 kind:arm_call to:0x0211da94 module:overlay(33) from:0x0211db48 kind:load to:0x027e0ce0 module:dtcm from:0x0211db74 kind:arm_call to:0x01fff350 module:itcm from:0x0211dbb4 kind:load to:0x027e0ce4 module:dtcm -from:0x0211dbbc kind:load to:0x020b4800 module:overlay(0) +from:0x0211dbbc kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x0211dbcc kind:arm_call_thumb to:0x02059454 module:overlay(0) from:0x0211dbd4 kind:arm_call_thumb to:0x02059454 module:overlay(0) from:0x0211dbdc kind:arm_call to:0x0209e870 module:overlay(0) diff --git a/config/jp/arm9/overlays/ov034/relocs.txt b/config/jp/arm9/overlays/ov034/relocs.txt index 94a4700f..5d2b58c2 100644 --- a/config/jp/arm9/overlays/ov034/relocs.txt +++ b/config/jp/arm9/overlays/ov034/relocs.txt @@ -234,7 +234,7 @@ from:0x0211cc44 kind:load to:0x027e09a4 module:dtcm from:0x0211cc74 kind:arm_call to:0x01fff350 module:itcm from:0x0211cc90 kind:arm_call to:0x0211eaa8 module:overlay(34) from:0x0211ccd0 kind:load to:0x027e0ce4 module:dtcm -from:0x0211ccd8 kind:load to:0x020b4800 module:overlay(0) +from:0x0211ccd8 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x0211cd58 kind:arm_call to:0x0207f780 module:overlay(0) from:0x0211cd78 kind:arm_call to:0x0207f780 module:overlay(0) from:0x0211cd84 kind:arm_call to:0x0211e6a0 module:overlay(34) diff --git a/config/jp/arm9/overlays/ov037/relocs.txt b/config/jp/arm9/overlays/ov037/relocs.txt index ffeb4329..c29d418b 100644 --- a/config/jp/arm9/overlays/ov037/relocs.txt +++ b/config/jp/arm9/overlays/ov037/relocs.txt @@ -155,7 +155,7 @@ from:0x0211c24c kind:arm_call to:0x01fff350 module:itcm from:0x0211c270 kind:arm_call to:0x02120484 module:overlay(37) from:0x0211c284 kind:arm_call to:0x01fff350 module:itcm from:0x0211c29c kind:load to:0x027e0ce4 module:dtcm -from:0x0211c2a0 kind:load to:0x020b4800 module:overlay(0) +from:0x0211c2a0 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x0211c354 kind:load to:0x0204b164 module:main from:0x0211c378 kind:arm_call to:0x01fff148 module:itcm from:0x0211c3b8 kind:arm_call to:0x01ffbbe0 module:itcm @@ -450,7 +450,7 @@ from:0x021201e4 kind:arm_call to:0x021200f4 module:overlay(37) from:0x021201f0 kind:arm_call to:0x021200f4 module:overlay(37) from:0x021201fc kind:arm_call to:0x02120228 module:overlay(37) from:0x02120208 kind:load to:0x027e0ce4 module:dtcm -from:0x0212020c kind:load to:0x020b4800 module:overlay(0) +from:0x0212020c kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x0212034c kind:arm_call to:0x02099e5c module:overlay(0) from:0x02120370 kind:arm_call to:0x01fff148 module:itcm from:0x0212037c kind:arm_call to:0x01ff9a5c module:itcm @@ -630,7 +630,7 @@ from:0x02122328 kind:arm_call to:0x02122238 module:overlay(37) from:0x02122334 kind:arm_call to:0x02122238 module:overlay(37) from:0x02122340 kind:arm_call to:0x0212236c module:overlay(37) from:0x0212234c kind:load to:0x027e0ce4 module:dtcm -from:0x02122350 kind:load to:0x020b4800 module:overlay(0) +from:0x02122350 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x02122418 kind:arm_call to:0x02099e5c module:overlay(0) from:0x0212243c kind:arm_call to:0x01fff148 module:itcm from:0x02122448 kind:arm_call to:0x01ff9a5c module:itcm @@ -663,7 +663,7 @@ from:0x021227a0 kind:arm_call to:0x02098e24 module:overlay(0) from:0x021227b8 kind:load to:0x02124528 add:0x8 module:overlay(37) from:0x021227e4 kind:arm_call to:0x01fff350 module:itcm from:0x02122804 kind:load to:0x027e0ce4 module:dtcm -from:0x0212280c kind:load to:0x020b4800 module:overlay(0) +from:0x0212280c kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x02122814 kind:arm_call to:0x021227bc module:overlay(37) from:0x02122844 kind:arm_call to:0x02099b30 module:overlay(0) from:0x0212286c kind:arm_call to:0x0201b928 module:main @@ -678,7 +678,7 @@ from:0x02122968 kind:arm_call to:0x02016f54 module:main from:0x021229ac kind:arm_call to:0x01fff350 module:itcm from:0x021229d0 kind:arm_call to:0x01fff350 module:itcm from:0x021229e8 kind:load to:0x027e0ce4 module:dtcm -from:0x021229ec kind:load to:0x020b4800 module:overlay(0) +from:0x021229ec kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x02122a14 kind:arm_call to:0x021229f4 module:overlay(37) from:0x02122ac0 kind:arm_call to:0x021221b4 module:overlay(37) from:0x02122acc kind:arm_call to:0x020168f0 module:main diff --git a/config/jp/arm9/overlays/ov040/relocs.txt b/config/jp/arm9/overlays/ov040/relocs.txt index bfed112b..cf693925 100644 --- a/config/jp/arm9/overlays/ov040/relocs.txt +++ b/config/jp/arm9/overlays/ov040/relocs.txt @@ -274,7 +274,7 @@ from:0x021271dc kind:arm_call to:0x021285dc module:overlay(40) from:0x02127220 kind:arm_call to:0x0208d298 module:overlay(0) from:0x0212722c kind:load to:0x027e09b8 module:dtcm from:0x02127230 kind:load to:0x027e0d34 module:dtcm -from:0x02127234 kind:load to:0x020b4800 module:overlay(0) +from:0x02127234 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x0212723c kind:load to:0x027e0ce4 module:dtcm from:0x02127248 kind:load to:0x027e09a8 module:dtcm from:0x0212724c kind:load to:0x027e09bc module:dtcm @@ -351,7 +351,7 @@ from:0x02127f94 kind:arm_call to:0x01ffb6e4 module:itcm from:0x02127fa4 kind:arm_call to:0x02152c4c module:overlay(72) from:0x02127fb8 kind:arm_call to:0x02152c4c module:overlay(72) from:0x02127fd8 kind:load to:0x027e09a4 module:dtcm -from:0x02127fdc kind:load to:0x020b4800 module:overlay(0) +from:0x02127fdc kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x02127fe4 kind:load to:0x027e0ce4 module:dtcm from:0x02128030 kind:arm_call to:0x01ff9638 module:itcm from:0x02128058 kind:arm_call to:0x01ffb6e4 module:itcm @@ -363,7 +363,7 @@ from:0x021281b0 kind:arm_call to:0x02081d10 module:overlay(0) from:0x021281cc kind:arm_call to:0x02072154 module:overlay(0) from:0x021281d8 kind:arm_call to:0x02029a4c module:main from:0x021281e4 kind:load to:0x027e09a4 module:dtcm -from:0x021281ec kind:load to:0x020b4800 module:overlay(0) +from:0x021281ec kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x021281f0 kind:load to:0x027e0ce4 module:dtcm from:0x021281f4 kind:load to:0x027e0cd8 module:dtcm from:0x0212822c kind:arm_call to:0x01fff350 module:itcm @@ -371,16 +371,16 @@ from:0x021282a0 kind:arm_call to:0x01ff9638 module:itcm from:0x021282c0 kind:arm_call to:0x01ffb6e4 module:itcm from:0x0212832c kind:arm_call to:0x0211c1a4 module:overlay(39) from:0x02128338 kind:load to:0x027e0ce4 module:dtcm -from:0x0212833c kind:load to:0x020b4800 module:overlay(0) +from:0x0212833c kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x02128344 kind:load to:0x027e09b8 module:dtcm from:0x02128380 kind:arm_call to:0x01fff350 module:itcm from:0x0212839c kind:arm_call to:0x0211c200 module:overlay(39) from:0x021283a8 kind:load to:0x027e0ce4 module:dtcm -from:0x021283b0 kind:load to:0x020b4800 module:overlay(0) +from:0x021283b0 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x021283e4 kind:arm_call to:0x01fff350 module:itcm from:0x02128470 kind:arm_call to:0x0211c14c module:overlays(38,39) from:0x0212847c kind:load to:0x027e0ce4 module:dtcm -from:0x02128480 kind:load to:0x020b4800 module:overlay(0) +from:0x02128480 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x021284a4 kind:arm_call to:0x020749a4 module:overlay(0) from:0x021284c0 kind:arm_call to:0x0201447c module:main from:0x021284e4 kind:arm_call to:0x021280f4 module:overlay(40) @@ -392,13 +392,13 @@ from:0x02128540 kind:load to:0x0204b0aa module:main from:0x02128574 kind:arm_call to:0x01fff350 module:itcm from:0x021285c4 kind:arm_call to:0x01ffb714 module:itcm from:0x021285d0 kind:load to:0x027e0ce4 module:dtcm -from:0x021285d4 kind:load to:0x020b4800 module:overlay(0) +from:0x021285d4 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x02128610 kind:arm_call to:0x01fff350 module:itcm from:0x02128654 kind:arm_call to:0x01fff350 module:itcm from:0x021286b8 kind:arm_call to:0x01ff9638 module:itcm from:0x021286c8 kind:arm_call to:0x01ffb6e4 module:itcm from:0x02128708 kind:load to:0x027e0ce4 module:dtcm -from:0x0212870c kind:load to:0x020b4800 module:overlay(0) +from:0x0212870c kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x02128730 kind:arm_call to:0x020749a4 module:overlay(0) from:0x0212874c kind:arm_call to:0x0201447c module:main from:0x02128774 kind:arm_call to:0x0201b974 module:main diff --git a/config/jp/arm9/overlays/ov041/relocs.txt b/config/jp/arm9/overlays/ov041/relocs.txt index 3116cc84..09b20412 100644 --- a/config/jp/arm9/overlays/ov041/relocs.txt +++ b/config/jp/arm9/overlays/ov041/relocs.txt @@ -28,7 +28,7 @@ from:0x02125524 kind:arm_call_thumb to:0x0209ba14 module:overlay(0) from:0x0212553c kind:arm_call to:0x02126b78 module:overlay(41) from:0x02125560 kind:arm_call to:0x01fff350 module:itcm from:0x02125598 kind:load to:0x027e0ce4 module:dtcm -from:0x021255a0 kind:load to:0x020b4800 module:overlay(0) +from:0x021255a0 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x021255b0 kind:arm_call to:0x02126c04 module:overlay(41) from:0x021255e8 kind:load to:0x0212f884 module:overlay(41) from:0x02125668 kind:arm_call to:0x020c10c0 module:overlay(17) @@ -125,7 +125,7 @@ from:0x02126004 kind:load to:0x0212fac4 add:0x8 module:overlay(41) from:0x0212601c kind:arm_call to:0x02126b78 module:overlay(41) from:0x02126040 kind:arm_call to:0x01fff350 module:itcm from:0x02126078 kind:load to:0x027e0ce4 module:dtcm -from:0x02126080 kind:load to:0x020b4800 module:overlay(0) +from:0x02126080 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x02126090 kind:arm_call to:0x02126c04 module:overlay(41) from:0x021260c8 kind:load to:0x0212fb3c module:overlay(41) from:0x02126148 kind:arm_call to:0x020c10c0 module:overlay(17) @@ -482,7 +482,7 @@ from:0x02129b8c kind:arm_call to:0x01fff350 module:itcm from:0x02129bb4 kind:arm_call to:0x02098dac module:overlay(0) from:0x02129bd4 kind:arm_call to:0x02098ba8 module:overlay(0) from:0x02129be0 kind:load to:0x027e0ce4 module:dtcm -from:0x02129be4 kind:load to:0x020b4800 module:overlay(0) +from:0x02129be4 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x02129bec kind:load to:0x020b6ba4 module:overlay(0) from:0x02129c04 kind:arm_call to:0x02016f54 module:main from:0x02129c10 kind:arm_call to:0x02141664 module:overlay(70) @@ -1008,7 +1008,7 @@ from:0x0212dea8 kind:arm_call to:0x01fff350 module:itcm from:0x0212dee8 kind:arm_call to:0x01fff350 module:itcm from:0x0212df20 kind:load to:0x027e09b8 module:dtcm from:0x0212df24 kind:load to:0x027e0ce4 module:dtcm -from:0x0212df2c kind:load to:0x020b4800 module:overlay(0) +from:0x0212df2c kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x0212df64 kind:arm_call to:0x0209ebf8 module:overlay(0) from:0x0212dfa0 kind:arm_call to:0x0209ebf8 module:overlay(0) from:0x0212dfb4 kind:load to:0x02130350 module:overlay(41) diff --git a/config/jp/arm9/overlays/ov045/relocs.txt b/config/jp/arm9/overlays/ov045/relocs.txt index d5db6e75..9b4a00ef 100644 --- a/config/jp/arm9/overlays/ov045/relocs.txt +++ b/config/jp/arm9/overlays/ov045/relocs.txt @@ -106,7 +106,7 @@ from:0x02125d48 kind:arm_call to:0x021253cc module:overlay(45) from:0x02125d78 kind:arm_call to:0x0207f780 module:overlay(0) from:0x02125d90 kind:arm_call to:0x0207f83c module:overlay(0) from:0x02125da0 kind:load to:0x027e0ce4 module:dtcm -from:0x02125da8 kind:load to:0x020b4800 module:overlay(0) +from:0x02125da8 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x02125dac kind:load to:0x027e09c0 module:dtcm from:0x02125dc8 kind:arm_call to:0x02079d50 module:overlay(0) from:0x02125df4 kind:arm_call to:0x02017e24 module:main diff --git a/config/jp/arm9/overlays/ov047/symbols.txt b/config/jp/arm9/overlays/ov047/symbols.txt index ea2bb1ad..2b9388e0 100644 --- a/config/jp/arm9/overlays/ov047/symbols.txt +++ b/config/jp/arm9/overlays/ov047/symbols.txt @@ -1,7 +1,7 @@ _ZN29UnkStruct_027e0cd8_0C_Base_98C1Ev kind:function(arm,size=0x64) addr:0x02131ec0 _ZN29UnkStruct_027e0cd8_0C_Base_98D1Ev kind:function(arm,size=0x28) addr:0x02131f24 func_ov047_02131f4c kind:function(arm,size=0x30) addr:0x02131f4c -func_ov047_02131f7c kind:function(arm,size=0x200) addr:0x02131f7c +_ZN29UnkStruct_027e0cd8_0C_Base_9819func_ov047_0213055cEv kind:function(arm,size=0x200) addr:0x02131f7c func_ov047_0213217c kind:function(arm,size=0x39c) addr:0x0213217c func_ov047_02132518 kind:function(arm,size=0x3d8) addr:0x02132518 func_ov047_021328f0 kind:function(arm,size=0x280) addr:0x021328f0 diff --git a/config/jp/arm9/overlays/ov049/relocs.txt b/config/jp/arm9/overlays/ov049/relocs.txt index 9fbb4e09..efda2369 100644 --- a/config/jp/arm9/overlays/ov049/relocs.txt +++ b/config/jp/arm9/overlays/ov049/relocs.txt @@ -466,13 +466,13 @@ from:0x02135d00 kind:arm_call to:0x02134134 module:overlay(49) from:0x02135d14 kind:arm_call to:0x01fff350 module:itcm from:0x02135d30 kind:load to:0x020da050 module:overlay(24) from:0x02135d34 kind:load to:0x027e0ce4 module:dtcm -from:0x02135d3c kind:load to:0x020b4800 module:overlay(0) +from:0x02135d3c kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x02135d90 kind:arm_call to:0x01fff350 module:itcm from:0x02135dbc kind:arm_call to:0x02099dfc module:overlay(0) from:0x02135de8 kind:arm_call to:0x01fff350 module:itcm from:0x02135e08 kind:load to:0x020da050 module:overlay(24) from:0x02135e0c kind:load to:0x027e0ce4 module:dtcm -from:0x02135e14 kind:load to:0x020b4800 module:overlay(0) +from:0x02135e14 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x02135e30 kind:load to:0x027e0d40 module:dtcm from:0x02135e44 kind:load to:0x027e0d40 module:dtcm from:0x02135e50 kind:arm_call to:0x02135e34 module:overlay(49) diff --git a/config/jp/arm9/overlays/ov051/relocs.txt b/config/jp/arm9/overlays/ov051/relocs.txt index d7669a5a..18b06859 100644 --- a/config/jp/arm9/overlays/ov051/relocs.txt +++ b/config/jp/arm9/overlays/ov051/relocs.txt @@ -470,7 +470,7 @@ from:0x021370c4 kind:arm_call to:0x01fff458 module:itcm from:0x021370d4 kind:arm_call to:0x02136ff8 module:overlay(51) from:0x021370e4 kind:arm_call to:0x01fff350 module:itcm from:0x02137100 kind:load to:0x027e0ce4 module:dtcm -from:0x02137104 kind:load to:0x020b4800 module:overlay(0) +from:0x02137104 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x021371b4 kind:arm_call to:0x01fff148 module:itcm from:0x021371c0 kind:arm_call to:0x01ff9a5c module:itcm from:0x021371dc kind:load to:0x0203feb0 module:main diff --git a/config/jp/arm9/overlays/ov057/relocs.txt b/config/jp/arm9/overlays/ov057/relocs.txt index 5c61a0dd..a65f3bdf 100644 --- a/config/jp/arm9/overlays/ov057/relocs.txt +++ b/config/jp/arm9/overlays/ov057/relocs.txt @@ -351,7 +351,7 @@ from:0x0213d0b4 kind:arm_call to:0x0213cf9c module:overlay(57) from:0x0213d0bc kind:arm_call to:0x0213d02c module:overlay(57) from:0x0213d0cc kind:arm_call to:0x01fff350 module:itcm from:0x0213d0ec kind:load to:0x027e0ce4 module:dtcm -from:0x0213d0f0 kind:load to:0x020b4800 module:overlay(0) +from:0x0213d0f0 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x0213d104 kind:load to:0x02058e24 module:overlay(0) from:0x0213d118 kind:arm_call_thumb to:0x0209b2c8 module:overlay(0) from:0x0213d120 kind:arm_call to:0x02011ff4 module:main diff --git a/config/jp/arm9/overlays/ov058/relocs.txt b/config/jp/arm9/overlays/ov058/relocs.txt index 7665d010..77937a83 100644 --- a/config/jp/arm9/overlays/ov058/relocs.txt +++ b/config/jp/arm9/overlays/ov058/relocs.txt @@ -1556,7 +1556,7 @@ from:0x0214f258 kind:arm_call to:0x0214e6fc module:overlay(58) from:0x0214f268 kind:arm_call to:0x0214e8c4 module:overlay(58) from:0x0214f298 kind:arm_call to:0x01fff350 module:itcm from:0x0214f2b8 kind:load to:0x020da050 module:overlay(24) -from:0x0214f2bc kind:load to:0x020b4800 module:overlay(0) +from:0x0214f2bc kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x0214f2c4 kind:load to:0x027e0ce4 module:dtcm from:0x0214f2d4 kind:load to:0x027e0d4c module:dtcm from:0x0214f2e8 kind:load to:0x027e0d4c module:dtcm diff --git a/config/jp/arm9/overlays/ov059/relocs.txt b/config/jp/arm9/overlays/ov059/relocs.txt index 4f46956d..f830a58b 100644 --- a/config/jp/arm9/overlays/ov059/relocs.txt +++ b/config/jp/arm9/overlays/ov059/relocs.txt @@ -27,7 +27,7 @@ from:0x02159f0c kind:arm_call to:0x01fff350 module:itcm from:0x02159f24 kind:arm_call to:0x0215a6f4 module:overlay(59) from:0x02159f30 kind:arm_call to:0x02159d38 module:overlay(59) from:0x02159f3c kind:load to:0x027e0ce4 module:dtcm -from:0x02159f40 kind:load to:0x020b4800 module:overlay(0) +from:0x02159f40 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x02159f60 kind:arm_call to:0x01fff3b4 module:itcm from:0x02159f80 kind:arm_call to:0x02083434 module:overlay(0) from:0x02159f88 kind:load to:0x027e0ce4 module:dtcm @@ -45,7 +45,7 @@ from:0x0215a170 kind:arm_call to:0x01fff350 module:itcm from:0x0215a180 kind:arm_call to:0x01fff350 module:itcm from:0x0215a1ac kind:arm_call to:0x01fff350 module:itcm from:0x0215a1d4 kind:load to:0x027e0ce4 module:dtcm -from:0x0215a1dc kind:load to:0x020b4800 module:overlay(0) +from:0x0215a1dc kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x0215a290 kind:arm_call to:0x0215a3e8 module:overlay(59) from:0x0215a298 kind:arm_call to:0x0215a2a4 module:overlay(59) from:0x0215a31c kind:arm_call to:0x0215a3e8 module:overlay(59) @@ -313,7 +313,7 @@ from:0x0215c890 kind:arm_call to:0x02162910 module:overlay(59) from:0x0215c89c kind:load to:0x027e0ce4 module:dtcm from:0x0215c8a0 kind:load to:0x027e0d5c module:dtcm from:0x0215c8a8 kind:load to:0x027e09b8 module:dtcm -from:0x0215c8b0 kind:load to:0x020b4800 module:overlay(0) +from:0x0215c8b0 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x0215c914 kind:load to:0x021654b8 module:overlay(59) from:0x0215c930 kind:arm_call to:0x01fff3b4 module:itcm from:0x0215c950 kind:arm_call to:0x02015018 module:main @@ -448,7 +448,7 @@ from:0x0215db44 kind:arm_call to:0x01fff350 module:itcm from:0x0215db6c kind:arm_call to:0x01fff350 module:itcm from:0x0215dba4 kind:arm_call to:0x01fff350 module:itcm from:0x0215dbc4 kind:load to:0x027e0ce4 module:dtcm -from:0x0215dbcc kind:load to:0x020b4800 module:overlay(0) +from:0x0215dbcc kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x0215dbf4 kind:arm_call to:0x0201696c module:main from:0x0215dcac kind:arm_call to:0x0207fb10 module:overlay(0) from:0x0215dcd0 kind:arm_call to:0x020731e8 module:overlay(0) @@ -786,7 +786,7 @@ from:0x02160c68 kind:arm_call to:0x02099c78 module:overlay(0) from:0x02160c78 kind:arm_call to:0x01fff350 module:itcm from:0x02160c94 kind:load to:0x020b69b8 module:overlay(0) from:0x02160ca0 kind:load to:0x027e09b8 module:dtcm -from:0x02160ca8 kind:load to:0x020b4800 module:overlay(0) +from:0x02160ca8 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x02160cac kind:load to:0x027e0ce4 module:dtcm from:0x02160d24 kind:arm_call to:0x020749a4 module:overlay(0) from:0x02160d80 kind:arm_call to:0x0208d298 module:overlay(0) @@ -902,7 +902,7 @@ from:0x02162070 kind:arm_call to:0x01fff350 module:itcm from:0x02162098 kind:arm_call to:0x01fff350 module:itcm from:0x021620c4 kind:arm_call to:0x01fff350 module:itcm from:0x021620e4 kind:load to:0x027e0ce4 module:dtcm -from:0x021620ec kind:load to:0x020b4800 module:overlay(0) +from:0x021620ec kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x021620f8 kind:arm_call_thumb to:0x02059154 module:overlay(0) from:0x02162100 kind:arm_call to:0x02011ff4 module:main from:0x02162118 kind:arm_call to:0x0207cd78 module:overlay(0) diff --git a/config/jp/arm9/overlays/ov060/relocs.txt b/config/jp/arm9/overlays/ov060/relocs.txt index cca3ca26..7c1b73a2 100644 --- a/config/jp/arm9/overlays/ov060/relocs.txt +++ b/config/jp/arm9/overlays/ov060/relocs.txt @@ -585,7 +585,7 @@ from:0x0215f8c4 kind:arm_call to:0x020799cc module:overlay(0) from:0x0215f8e8 kind:arm_call to:0x01fff350 module:itcm from:0x0215f934 kind:load to:0x027e09bc module:dtcm from:0x0215f938 kind:load to:0x027e0ce4 module:dtcm -from:0x0215f940 kind:load to:0x020b4800 module:overlay(0) +from:0x0215f940 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x0215f950 kind:arm_call to:0x020f8fcc module:overlay(31) from:0x0215f984 kind:arm_call to:0x0209b7c4 module:overlay(0) from:0x0215f990 kind:arm_call to:0x0205bd68 module:overlay(0) diff --git a/config/jp/arm9/overlays/ov063/relocs.txt b/config/jp/arm9/overlays/ov063/relocs.txt index abcaa683..c4abdab5 100644 --- a/config/jp/arm9/overlays/ov063/relocs.txt +++ b/config/jp/arm9/overlays/ov063/relocs.txt @@ -793,7 +793,7 @@ from:0x0215fe94 kind:arm_call to:0x0215fe9c module:overlay(63) from:0x0215fef0 kind:arm_call to:0x01fff350 module:itcm from:0x0215ff24 kind:load to:0x02164468 module:overlay(63) from:0x0215ff28 kind:load to:0x027e0ce4 module:dtcm -from:0x0215ff2c kind:load to:0x020b4800 module:overlay(0) +from:0x0215ff2c kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x0215ff48 kind:arm_call to:0x02018bc4 module:main from:0x0215ff5c kind:arm_call to:0x020c6dd0 module:overlay(24) from:0x0215ff64 kind:arm_call to:0x020c6c5c module:overlay(24) @@ -926,7 +926,7 @@ from:0x02160b34 kind:load to:0x020b92ed module:overlays(8,9,12,13,15) from:0x02160b98 kind:arm_call to:0x01fff350 module:itcm from:0x02160bb0 kind:arm_call to:0x021472b8 module:overlay(58) from:0x02160bd0 kind:load to:0x027e0ce4 module:dtcm -from:0x02160bd4 kind:load to:0x020b4800 module:overlay(0) +from:0x02160bd4 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x02160bd8 kind:load to:0x02164454 module:overlay(63) from:0x02160be4 kind:load to:0x02160be8 module:overlay(63) from:0x02160c1c kind:arm_call_thumb to:0x020b99e4 module:overlay(12) diff --git a/config/jp/arm9/overlays/ov066/relocs.txt b/config/jp/arm9/overlays/ov066/relocs.txt index 8e9ad951..c0e8aee9 100644 --- a/config/jp/arm9/overlays/ov066/relocs.txt +++ b/config/jp/arm9/overlays/ov066/relocs.txt @@ -482,7 +482,7 @@ from:0x0215d108 kind:arm_call to:0x02068ffc module:overlay(0) from:0x0215d124 kind:arm_call to:0x02068ffc module:overlay(0) from:0x0215d140 kind:arm_call to:0x02068ffc module:overlay(0) from:0x0215d15c kind:load to:0x027e0ce4 module:dtcm -from:0x0215d160 kind:load to:0x020b4800 module:overlay(0) +from:0x0215d160 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x0215d168 kind:load to:0x020b684c module:overlay(0) from:0x0215d16c kind:load to:0x0215f518 module:overlay(66) from:0x0215d170 kind:load to:0x0204b15c module:main @@ -516,12 +516,12 @@ from:0x0215d630 kind:arm_call to:0x01fff350 module:itcm from:0x0215d650 kind:arm_call to:0x01fff3b4 module:itcm from:0x0215d660 kind:arm_call to:0x0215e54c module:overlay(66) from:0x0215d66c kind:load to:0x027e0ce4 module:dtcm -from:0x0215d674 kind:load to:0x020b4800 module:overlay(0) +from:0x0215d674 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x0215d6a4 kind:arm_call to:0x01fff350 module:itcm from:0x0215d6c4 kind:arm_call to:0x01fff3b4 module:itcm from:0x0215d6d4 kind:arm_call to:0x0215e5a8 module:overlay(66) from:0x0215d6e0 kind:load to:0x027e0ce4 module:dtcm -from:0x0215d6e8 kind:load to:0x020b4800 module:overlay(0) +from:0x0215d6e8 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x0215d6f8 kind:arm_call to:0x0201662c module:main from:0x0215d700 kind:arm_call to:0x0215abb4 module:overlay(66) from:0x0215d708 kind:arm_call to:0x0215abb4 module:overlay(66) diff --git a/config/jp/arm9/overlays/ov068/relocs.txt b/config/jp/arm9/overlays/ov068/relocs.txt index 7e58450d..000e432a 100644 --- a/config/jp/arm9/overlays/ov068/relocs.txt +++ b/config/jp/arm9/overlays/ov068/relocs.txt @@ -54,7 +54,7 @@ from:0x0215a218 kind:arm_call to:0x01fff350 module:itcm from:0x0215a240 kind:arm_call to:0x0215f4fc module:overlay(68) from:0x0215a24c kind:arm_call to:0x0215fcc8 module:overlay(68) from:0x0215a258 kind:load to:0x027e0ce4 module:dtcm -from:0x0215a260 kind:load to:0x020b4800 module:overlay(0) +from:0x0215a260 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x0215a264 kind:load to:0x027e0d6c module:dtcm from:0x0215a268 kind:load to:0x02166054 module:overlay(68) from:0x0215a290 kind:arm_call to:0x01fff3b4 module:itcm @@ -640,7 +640,7 @@ from:0x0215f618 kind:load to:0x027e09b8 module:dtcm from:0x0215f64c kind:arm_call to:0x01fff350 module:itcm from:0x0215f670 kind:arm_call to:0x02099dd4 module:overlay(0) from:0x0215f67c kind:load to:0x027e0ce4 module:dtcm -from:0x0215f680 kind:load to:0x020b4800 module:overlay(0) +from:0x0215f680 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x0215f6b4 kind:arm_call to:0x020d5e50 module:overlay(24) from:0x0215f6e0 kind:load to:0x027e0cfc module:dtcm from:0x0215f708 kind:load to:0x01ffc6d4 module:itcm diff --git a/config/jp/arm9/overlays/ov070/symbols.txt b/config/jp/arm9/overlays/ov070/symbols.txt index dc4b16d5..7d95488e 100644 --- a/config/jp/arm9/overlays/ov070/symbols.txt +++ b/config/jp/arm9/overlays/ov070/symbols.txt @@ -503,7 +503,7 @@ _ZN23MapObjectProfileUnkPTFLC1Ev kind:function(arm,size=0xa8) addr:0x0214d7b4 _ZN16MapObjectUnkPTFLC1Ev kind:function(arm,size=0x80) addr:0x0214d85c _ZN16MapObjectUnkPTFL19func_ov070_0214ba34Ev kind:function(arm,size=0x144) addr:0x0214d8dc _ZN16MapObjectUnkPTFL19func_ov070_0214bb78Ev kind:function(arm,size=0x58) addr:0x0214da20 -_ZN16MapObjectUnkPTFL19func_ov070_0214bbd0Ev kind:function(arm,size=0x178) addr:0x0214da78 +_ZN16MapObjectUnkPTFL19func_ov070_0214bbd0Esb kind:function(arm,size=0x178) addr:0x0214da78 _ZN16MapObjectUnkPTFL19func_ov070_0214bd48Ev kind:function(arm,size=0x48) addr:0x0214dbf0 _ZN16MapObjectUnkPTFL19func_ov070_0214bd90Ev kind:function(arm,size=0x1c8) addr:0x0214dc38 _ZN16MapObjectUnkPTFL19func_ov070_0214bf58Ev kind:function(arm,size=0x4) addr:0x0214de00 diff --git a/config/jp/arm9/overlays/ov071/relocs.txt b/config/jp/arm9/overlays/ov071/relocs.txt index f31dec6e..f69beaa7 100644 --- a/config/jp/arm9/overlays/ov071/relocs.txt +++ b/config/jp/arm9/overlays/ov071/relocs.txt @@ -1554,7 +1554,7 @@ from:0x021613b4 kind:arm_call to:0x01fff350 module:itcm from:0x021613f4 kind:arm_call to:0x0212b154 module:overlays(26,42) from:0x02161404 kind:arm_call to:0x01fff350 module:itcm from:0x02161420 kind:load to:0x027e0ce4 module:dtcm -from:0x02161428 kind:load to:0x020b4800 module:overlay(0) +from:0x02161428 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x02161438 kind:load to:0x027e0d70 module:dtcm from:0x0216144c kind:load to:0x027e0d70 module:dtcm from:0x02161458 kind:load to:0x021673c8 module:overlay(71) diff --git a/config/jp/arm9/overlays/ov072/relocs.txt b/config/jp/arm9/overlays/ov072/relocs.txt index f097bb73..789f1a81 100644 --- a/config/jp/arm9/overlays/ov072/relocs.txt +++ b/config/jp/arm9/overlays/ov072/relocs.txt @@ -106,7 +106,7 @@ from:0x02153658 kind:load to:0x0204b164 module:main from:0x0215365c kind:load to:0x027e09a8 module:dtcm from:0x02153668 kind:load to:0x020b684c module:overlay(0) from:0x0215366c kind:load to:0x027e0ce4 module:dtcm -from:0x02153674 kind:load to:0x020b4800 module:overlay(0) +from:0x02153674 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x02153678 kind:load to:0x0215455c module:overlay(72) from:0x021536ac kind:arm_call to:0x02074994 module:overlay(0) from:0x021536e8 kind:arm_call to:0x02079d50 module:overlay(0) diff --git a/config/jp/arm9/overlays/ov073/relocs.txt b/config/jp/arm9/overlays/ov073/relocs.txt index a82e72dd..e1587a1c 100644 --- a/config/jp/arm9/overlays/ov073/relocs.txt +++ b/config/jp/arm9/overlays/ov073/relocs.txt @@ -1822,7 +1822,7 @@ from:0x02165880 kind:load to:0x020ac6e4 module:overlay(0) from:0x02165884 kind:load to:0x020ac6ec module:overlay(0) from:0x02165888 kind:load to:0x020ac6e8 module:overlay(0) from:0x0216588c kind:load to:0x027e0ce4 module:dtcm -from:0x02165890 kind:load to:0x020b4800 module:overlay(0) +from:0x02165890 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x02165898 kind:load to:0x020ac6bc module:overlay(0) from:0x0216589c kind:load to:0x020ac6c0 module:overlay(0) from:0x021658a0 kind:load to:0x020ac6c4 module:overlay(0) @@ -1843,7 +1843,7 @@ from:0x02165a60 kind:load to:0x020ac6d8 module:overlay(0) from:0x02165a64 kind:load to:0x020ac6d4 module:overlay(0) from:0x02165a68 kind:load to:0x027e0ce0 module:dtcm from:0x02165a6c kind:load to:0x027e0ce4 module:dtcm -from:0x02165a74 kind:load to:0x020b4800 module:overlay(0) +from:0x02165a74 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x02165a78 kind:load to:0x020ac6b8 module:overlay(0) from:0x02165a7c kind:load to:0x020ac6e4 module:overlay(0) from:0x02165a80 kind:load to:0x020ac6ec module:overlay(0) @@ -1864,7 +1864,7 @@ from:0x02165c2c kind:arm_call to:0x01ffb6e4 module:itcm from:0x02165c38 kind:load to:0x020ac6d8 module:overlay(0) from:0x02165c3c kind:load to:0x020ac6d4 module:overlay(0) from:0x02165c40 kind:load to:0x027e0ce0 module:dtcm -from:0x02165c44 kind:load to:0x020b4800 module:overlay(0) +from:0x02165c44 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x02165c4c kind:load to:0x027e0ce4 module:dtcm from:0x02165c50 kind:load to:0x020ac6bc module:overlay(0) from:0x02165c54 kind:load to:0x020ac6c0 module:overlay(0) diff --git a/config/jp/arm9/overlays/ov074/relocs.txt b/config/jp/arm9/overlays/ov074/relocs.txt index f99c8638..5ebe4b7f 100644 --- a/config/jp/arm9/overlays/ov074/relocs.txt +++ b/config/jp/arm9/overlays/ov074/relocs.txt @@ -1280,7 +1280,7 @@ from:0x0215eb88 kind:arm_call to:0x02099824 module:overlay(0) from:0x0215eba0 kind:arm_call to:0x020731e8 module:overlay(0) from:0x0215ebbc kind:arm_call to:0x01fff350 module:itcm from:0x0215ebdc kind:load to:0x027e0ce4 module:dtcm -from:0x0215ebe4 kind:load to:0x020b4800 module:overlay(0) +from:0x0215ebe4 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x0215ebe8 kind:load to:0x027e09a8 module:dtcm from:0x0215ebf4 kind:arm_call_thumb to:0x02059154 module:overlay(0) from:0x0215ebfc kind:arm_call to:0x02011ff4 module:main @@ -1858,7 +1858,7 @@ from:0x02163dd4 kind:arm_call to:0x01ffb428 module:itcm from:0x02163df0 kind:arm_call to:0x01ffb428 module:itcm from:0x02163e2c kind:arm_call to:0x01fff350 module:itcm from:0x02163e48 kind:load to:0x027e0ce4 module:dtcm -from:0x02163e4c kind:load to:0x020b4800 module:overlay(0) +from:0x02163e4c kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x02163e78 kind:arm_call to:0x02079eec module:overlay(0) from:0x02163e80 kind:load to:0x027e09bc module:dtcm from:0x02163e8c kind:arm_call to:0x020990b4 module:overlay(0) diff --git a/config/jp/arm9/overlays/ov075/relocs.txt b/config/jp/arm9/overlays/ov075/relocs.txt index c22f773b..1e3d6922 100644 --- a/config/jp/arm9/overlays/ov075/relocs.txt +++ b/config/jp/arm9/overlays/ov075/relocs.txt @@ -381,11 +381,11 @@ from:0x02156208 kind:arm_call to:0x0209915c module:overlay(0) from:0x02156244 kind:load to:0x02164aa0 add:0x8 module:overlay(75) from:0x02156278 kind:arm_call to:0x01fff350 module:itcm from:0x02156298 kind:load to:0x027e0ce4 module:dtcm -from:0x021562a0 kind:load to:0x020b4800 module:overlay(0) +from:0x021562a0 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x021562d0 kind:arm_call to:0x01fff350 module:itcm from:0x02156308 kind:arm_call to:0x01fff350 module:itcm from:0x02156328 kind:load to:0x027e0ce4 module:dtcm -from:0x02156330 kind:load to:0x020b4800 module:overlay(0) +from:0x02156330 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x02156344 kind:arm_call to:0x02098c90 module:overlay(0) from:0x02156358 kind:load to:0x020b6ba4 module:overlay(0) from:0x02156370 kind:arm_call to:0x0209a2d0 module:overlay(0) @@ -1795,7 +1795,7 @@ from:0x02163028 kind:arm_call to:0x01ff93c0 module:itcm from:0x0216303c kind:arm_call to:0x01ffb974 module:itcm from:0x02163050 kind:arm_call to:0x01ffb974 module:itcm from:0x021630b4 kind:arm_call to:0x020157b8 module:main -from:0x021630c0 kind:load to:0x020b4800 module:overlay(0) +from:0x021630c0 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x021630c8 kind:load to:0x027e0ce4 module:dtcm from:0x021630cc kind:load to:0x027e0ce0 module:dtcm from:0x02163104 kind:arm_call to:0x01fff350 module:itcm @@ -1805,7 +1805,7 @@ from:0x02163170 kind:arm_call to:0x01ff93c0 module:itcm from:0x02163184 kind:arm_call to:0x01ffb974 module:itcm from:0x02163198 kind:arm_call to:0x01ffb974 module:itcm from:0x021631d8 kind:load to:0x027e0ce4 module:dtcm -from:0x021631dc kind:load to:0x020b4800 module:overlay(0) +from:0x021631dc kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x021631e4 kind:load to:0x027e0ce0 module:dtcm from:0x02163230 kind:arm_call to:0x01ffb428 module:itcm from:0x02163240 kind:load to:0x020ac6a8 module:overlay(0) diff --git a/config/jp/arm9/overlays/ov078/relocs.txt b/config/jp/arm9/overlays/ov078/relocs.txt index 06c49e89..aa611a51 100644 --- a/config/jp/arm9/overlays/ov078/relocs.txt +++ b/config/jp/arm9/overlays/ov078/relocs.txt @@ -856,7 +856,7 @@ from:0x0215e0dc kind:load to:0x0203feb0 module:main from:0x0215e110 kind:arm_call to:0x01fff350 module:itcm from:0x0215e140 kind:arm_call to:0x01fff350 module:itcm from:0x0215e164 kind:load to:0x027e0ce4 module:dtcm -from:0x0215e16c kind:load to:0x020b4800 module:overlay(0) +from:0x0215e16c kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x0215e1ac kind:arm_call_thumb to:0x01ffa184 module:itcm from:0x0215e1d8 kind:arm_call_thumb to:0x01ffa1a0 module:itcm from:0x0215e1ec kind:arm_call to:0x01ffa60c module:itcm @@ -1027,7 +1027,7 @@ from:0x0215f388 kind:load to:0x027e0ce0 module:dtcm from:0x0215f38c kind:load to:0x027e0cd8 module:dtcm from:0x0215f390 kind:load to:0x027e09b8 module:dtcm from:0x0215f394 kind:load to:0x027e0ce4 module:dtcm -from:0x0215f39c kind:load to:0x020b4800 module:overlay(0) +from:0x0215f39c kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x0215f3a0 kind:load to:0x020ac694 module:overlay(0) from:0x0215f3c0 kind:load to:0x020ac6f4 module:overlay(0) from:0x0215f3c4 kind:load to:0x020ac6f0 module:overlay(0) diff --git a/config/jp/arm9/overlays/ov080/relocs.txt b/config/jp/arm9/overlays/ov080/relocs.txt index 305d5107..3606cbd0 100644 --- a/config/jp/arm9/overlays/ov080/relocs.txt +++ b/config/jp/arm9/overlays/ov080/relocs.txt @@ -920,7 +920,7 @@ from:0x0215c2d0 kind:arm_call to:0x0215c380 module:overlay(80) from:0x0215c38c kind:arm_call to:0x0215c434 module:overlay(80) from:0x0215c40c kind:arm_call to:0x01fff350 module:itcm from:0x0215c428 kind:load to:0x027e0ce4 module:dtcm -from:0x0215c430 kind:load to:0x020b4800 module:overlay(0) +from:0x0215c430 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x0215c534 kind:arm_call to:0x01fff3b4 module:itcm from:0x0215c584 kind:load to:0x027e0ce4 module:dtcm from:0x0215c5dc kind:arm_call to:0x0215c518 module:overlay(80) @@ -1071,7 +1071,7 @@ from:0x0215e1ac kind:arm_call to:0x01fff350 module:itcm from:0x0215e1d8 kind:arm_call to:0x0215f2a8 module:overlay(80) from:0x0215e1e8 kind:arm_call to:0x01fff350 module:itcm from:0x0215e204 kind:load to:0x027e0ce4 module:dtcm -from:0x0215e20c kind:load to:0x020b4800 module:overlay(0) +from:0x0215e20c kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x0215e230 kind:arm_call to:0x020dafbc module:overlay(31) from:0x0215e23c kind:arm_call to:0x01fff3b4 module:itcm from:0x0215e248 kind:arm_call to:0x02099c78 module:overlay(0) diff --git a/config/jp/arm9/overlays/ov081/relocs.txt b/config/jp/arm9/overlays/ov081/relocs.txt index 5574948f..2fe5d8bc 100644 --- a/config/jp/arm9/overlays/ov081/relocs.txt +++ b/config/jp/arm9/overlays/ov081/relocs.txt @@ -90,7 +90,7 @@ from:0x0215392c kind:arm_call to:0x01fff498 module:itcm from:0x02153938 kind:arm_call to:0x02154530 module:overlay(81) from:0x02153944 kind:arm_call to:0x02153148 module:overlay(81) from:0x02153950 kind:load to:0x027e0ce4 module:dtcm -from:0x02153958 kind:load to:0x020b4800 module:overlay(0) +from:0x02153958 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x0215395c kind:load to:0x027e0ce0 module:dtcm from:0x02153960 kind:load to:0x027e0ce8 module:dtcm from:0x0215399c kind:arm_call to:0x02152e8c module:overlay(81) diff --git a/config/jp/arm9/overlays/ov083/relocs.txt b/config/jp/arm9/overlays/ov083/relocs.txt index e3fbdaec..493e5897 100644 --- a/config/jp/arm9/overlays/ov083/relocs.txt +++ b/config/jp/arm9/overlays/ov083/relocs.txt @@ -226,11 +226,11 @@ from:0x02156b44 kind:load to:0x0203feb0 module:main from:0x02156b70 kind:arm_call to:0x01fff350 module:itcm from:0x02156b8c kind:arm_call to:0x0215de1c module:overlay(83) from:0x02156b98 kind:load to:0x027e0ce4 module:dtcm -from:0x02156ba0 kind:load to:0x020b4800 module:overlay(0) +from:0x02156ba0 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x02156bcc kind:arm_call to:0x01fff350 module:itcm from:0x02156be8 kind:arm_call to:0x0215dd44 module:overlay(83) from:0x02156bf4 kind:load to:0x027e0ce4 module:dtcm -from:0x02156bfc kind:load to:0x020b4800 module:overlay(0) +from:0x02156bfc kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x02156c28 kind:arm_call to:0x01ffaf74 module:itcm from:0x02156c54 kind:arm_call to:0x020a1684 module:overlay(0) from:0x02156c70 kind:arm_call to:0x020a1684 module:overlay(0) @@ -312,7 +312,7 @@ from:0x021579f8 kind:load to:0x0215f818 module:overlay(83) from:0x021579fc kind:load to:0x027e09b8 module:dtcm from:0x02157a00 kind:load to:0x020b69b8 module:overlay(0) from:0x02157a04 kind:load to:0x027e0d34 module:dtcm -from:0x02157a0c kind:load to:0x020b4800 module:overlay(0) +from:0x02157a0c kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x02157a10 kind:load to:0x027e0ce4 module:dtcm from:0x02157a14 kind:load to:0x027e09ac module:dtcm from:0x02157a84 kind:arm_call to:0x020a9744 module:overlay(0) @@ -390,7 +390,7 @@ from:0x02158540 kind:arm_call to:0x02073da8 module:overlay(0) from:0x02158554 kind:load to:0x027e09b8 module:dtcm from:0x02158558 kind:load to:0x020b69b8 module:overlay(0) from:0x0215855c kind:load to:0x027e0d34 module:dtcm -from:0x02158564 kind:load to:0x020b4800 module:overlay(0) +from:0x02158564 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x02158568 kind:load to:0x027e0ce4 module:dtcm from:0x0215856c kind:load to:0x027e09ac module:dtcm from:0x021585dc kind:arm_call to:0x020a9744 module:overlay(0) diff --git a/config/jp/arm9/overlays/ov084/relocs.txt b/config/jp/arm9/overlays/ov084/relocs.txt index 9bd224c7..397e91b7 100644 --- a/config/jp/arm9/overlays/ov084/relocs.txt +++ b/config/jp/arm9/overlays/ov084/relocs.txt @@ -256,7 +256,7 @@ from:0x0215550c kind:load to:0x02164cd0 module:overlay(84) from:0x02155510 kind:load to:0x027e09c0 module:dtcm from:0x02155540 kind:arm_call to:0x01fff350 module:itcm from:0x02155564 kind:load to:0x027e0ce4 module:dtcm -from:0x0215556c kind:load to:0x020b4800 module:overlay(0) +from:0x0215556c kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x021555a0 kind:arm_call to:0x01ffb428 module:itcm from:0x021555c0 kind:arm_call to:0x020db39c module:overlay(31) from:0x021555e4 kind:arm_call to:0x020798e8 module:overlay(0) @@ -344,7 +344,7 @@ from:0x021562a8 kind:arm_call to:0x02163180 module:overlay(84) from:0x021562e0 kind:arm_call to:0x02098ba8 module:overlay(0) from:0x021562f0 kind:load to:0x027e0cd8 module:dtcm from:0x021562f4 kind:load to:0x027e0ce4 module:dtcm -from:0x021562f8 kind:load to:0x020b4800 module:overlay(0) +from:0x021562f8 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x02156300 kind:load to:0x0204b164 module:main from:0x02156304 kind:load to:0x020b6ba4 module:overlay(0) from:0x02156330 kind:arm_call to:0x02156118 module:overlay(84) @@ -575,7 +575,7 @@ from:0x021587bc kind:arm_call to:0x0215b850 module:overlay(84) from:0x021587dc kind:arm_call to:0x020984b4 module:overlay(0) from:0x02158870 kind:arm_call to:0x02157a24 module:overlay(84) from:0x0215889c kind:load to:0x027e0ce4 module:dtcm -from:0x021588a0 kind:load to:0x020b4800 module:overlay(0) +from:0x021588a0 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x021588a8 kind:load to:0x0204b164 module:main from:0x021588c4 kind:arm_call to:0x021577d8 module:overlay(84) from:0x02158904 kind:arm_call to:0x020984b4 module:overlay(0) diff --git a/config/jp/arm9/overlays/ov087/relocs.txt b/config/jp/arm9/overlays/ov087/relocs.txt index fa5b07d7..4ef7a2dc 100644 --- a/config/jp/arm9/overlays/ov087/relocs.txt +++ b/config/jp/arm9/overlays/ov087/relocs.txt @@ -476,7 +476,7 @@ from:0x0215aebc kind:arm_call to:0x02098dac module:overlay(0) from:0x0215af04 kind:arm_call to:0x02098ba8 module:overlay(0) from:0x0215af18 kind:arm_call to:0x02152ed0 module:overlay(85) from:0x0215af24 kind:load to:0x027e0ce4 module:dtcm -from:0x0215af2c kind:load to:0x020b4800 module:overlay(0) +from:0x0215af2c kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x0215af30 kind:load to:0x027e09bc module:dtcm from:0x0215af34 kind:load to:0x020b6ba4 module:overlay(0) from:0x0215af5c kind:arm_call to:0x02098dac module:overlay(0) @@ -487,7 +487,7 @@ from:0x0215afd8 kind:load to:0x0207a1e0 module:overlay(0) from:0x0215b010 kind:arm_call to:0x01fff350 module:itcm from:0x0215b058 kind:arm_call to:0x01fff350 module:itcm from:0x0215b078 kind:load to:0x027e0ce4 module:dtcm -from:0x0215b080 kind:load to:0x020b4800 module:overlay(0) +from:0x0215b080 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x0215b248 kind:load to:0x0204b164 module:main from:0x0215b2ec kind:arm_call to:0x01ffb6e4 module:itcm from:0x0215b334 kind:arm_call to:0x01ffb6e4 module:itcm @@ -617,7 +617,7 @@ from:0x0215ce84 kind:arm_call to:0x01fff350 module:itcm from:0x0215cea0 kind:arm_call to:0x02154d94 module:overlay(85) from:0x0215ceb0 kind:arm_call to:0x01fff350 module:itcm from:0x0215cecc kind:load to:0x027e0ce4 module:dtcm -from:0x0215ced4 kind:load to:0x020b4800 module:overlay(0) +from:0x0215ced4 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x0215cf10 kind:arm_call to:0x02015018 module:main from:0x0215cf30 kind:arm_call to:0x020731e8 module:overlay(0) from:0x0215cf64 kind:arm_call to:0x02015018 module:main @@ -1035,7 +1035,7 @@ from:0x0216056c kind:load to:0x02163f8c module:overlay(87) from:0x02160570 kind:load to:0x021646dc module:overlay(87) from:0x02160574 kind:load to:0x027e0cd8 module:dtcm from:0x02160578 kind:load to:0x027e0ce4 module:dtcm -from:0x02160580 kind:load to:0x020b4800 module:overlay(0) +from:0x02160580 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x02160584 kind:load to:0x027e0ce8 module:dtcm from:0x0216058c kind:load to:0x020b4cc4 module:overlay(0) from:0x021605f4 kind:arm_call to:0x020749a4 module:overlay(0) diff --git a/config/jp/arm9/overlays/ov088/relocs.txt b/config/jp/arm9/overlays/ov088/relocs.txt index c51e0338..f5813894 100644 --- a/config/jp/arm9/overlays/ov088/relocs.txt +++ b/config/jp/arm9/overlays/ov088/relocs.txt @@ -203,7 +203,7 @@ from:0x02169138 kind:load to:0x027e0994 module:dtcm from:0x0216913c kind:load to:0x02179478 module:overlay(88) from:0x02169140 kind:load to:0x027e09a8 module:dtcm from:0x02169144 kind:load to:0x027e0ce4 module:dtcm -from:0x0216914c kind:load to:0x020b4800 module:overlay(0) +from:0x0216914c kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x02169150 kind:load to:0x027e0ce8 module:dtcm from:0x02169158 kind:load to:0x020b4cc4 module:overlay(0) from:0x0216915c kind:load to:0x027e0ce0 module:dtcm @@ -233,7 +233,7 @@ from:0x02169588 kind:load to:0x027e0ce4 module:dtcm from:0x02169594 kind:load to:0x020b6ba4 module:overlay(0) from:0x02169598 kind:load to:0x02176498 module:overlay(88) from:0x021695a4 kind:load to:0x027e09ac module:dtcm -from:0x021695b4 kind:load to:0x020b4800 module:overlay(0) +from:0x021695b4 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x021695e0 kind:arm_call to:0x01fff3b4 module:itcm from:0x0216960c kind:load to:0x027e0ce4 module:dtcm from:0x02169628 kind:arm_call to:0x01fff3b4 module:itcm diff --git a/config/jp/arm9/overlays/ov092/relocs.txt b/config/jp/arm9/overlays/ov092/relocs.txt index 7beda046..f386a8dc 100644 --- a/config/jp/arm9/overlays/ov092/relocs.txt +++ b/config/jp/arm9/overlays/ov092/relocs.txt @@ -518,7 +518,7 @@ from:0x0216ba0c kind:arm_call to:0x01fff350 module:itcm from:0x0216ba64 kind:arm_call to:0x01fff498 module:itcm from:0x0216baa0 kind:load to:0x027e09a4 module:dtcm from:0x0216baa4 kind:load to:0x027e0ce4 module:dtcm -from:0x0216baac kind:load to:0x020b4800 module:overlay(0) +from:0x0216baac kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x0216bab4 kind:load to:0x027e0ce8 module:dtcm from:0x0216bb8c kind:arm_call to:0x02069620 module:overlay(0) from:0x0216bc04 kind:arm_call to:0x0216f244 module:overlay(92) diff --git a/config/jp/arm9/overlays/ov092/symbols.txt b/config/jp/arm9/overlays/ov092/symbols.txt index f43c7839..ae2eb805 100644 --- a/config/jp/arm9/overlays/ov092/symbols.txt +++ b/config/jp/arm9/overlays/ov092/symbols.txt @@ -160,7 +160,7 @@ func_ov092_0216ab28 kind:function(arm,size=0x2c) addr:0x0216ab28 func_ov092_0216ab54 kind:function(arm,size=0x2c) addr:0x0216ab54 func_ov092_0216ab80 kind:function(arm,size=0xb4) addr:0x0216ab80 func_ov092_0216ac34 kind:function(arm,size=0x14) addr:0x0216ac34 -func_ov092_0216ac48 kind:function(arm,size=0xac) addr:0x0216ac48 +_ZN25UnkStruct_027e0ce0_40_14C19func_ov092_021689e8EiP21UnkStruct_027e0ce0_40P15PlayerLinkActorP25UnkStruct_027e0ce0_40_328 kind:function(arm,size=0xac) addr:0x0216ac48 func_ov092_0216acf4 kind:function(arm,size=0x28) addr:0x0216acf4 func_ov092_0216ad1c kind:function(arm,size=0x118) addr:0x0216ad1c func_ov092_0216ae34 kind:function(arm,size=0x2c) addr:0x0216ae34 diff --git a/config/jp/arm9/overlays/ov093/relocs.txt b/config/jp/arm9/overlays/ov093/relocs.txt index 6ca2dc53..bb288520 100644 --- a/config/jp/arm9/overlays/ov093/relocs.txt +++ b/config/jp/arm9/overlays/ov093/relocs.txt @@ -1159,7 +1159,7 @@ from:0x02173be0 kind:arm_call to:0x02173284 module:overlay(93) from:0x02173be8 kind:load to:0x0217a770 module:overlay(93) from:0x02173c94 kind:arm_call to:0x01fff350 module:itcm from:0x02173cd0 kind:load to:0x027e0ce4 module:dtcm -from:0x02173cd8 kind:load to:0x020b4800 module:overlay(0) +from:0x02173cd8 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x02173d14 kind:load to:0x0217a770 module:overlay(93) from:0x02173d64 kind:arm_call to:0x02173284 module:overlay(93) from:0x02173d94 kind:arm_call to:0x021715d8 module:overlay(93) diff --git a/config/jp/arm9/overlays/ov093/symbols.txt b/config/jp/arm9/overlays/ov093/symbols.txt index 1e404193..04cb1dc7 100644 --- a/config/jp/arm9/overlays/ov093/symbols.txt +++ b/config/jp/arm9/overlays/ov093/symbols.txt @@ -86,7 +86,7 @@ func_ov093_0216a280 kind:function(arm,size=0xdc) addr:0x0216a280 func_ov093_0216a35c kind:function(arm,size=0xa8) addr:0x0216a35c func_ov093_0216a404 kind:function(arm,size=0x7c) addr:0x0216a404 func_ov093_0216a480 kind:function(arm,size=0x2c) addr:0x0216a480 -func_ov093_0216a4ac kind:function(arm,size=0x38) addr:0x0216a4ac +_ZN21UnkStruct_027e0ce0_4019func_ov093_02168220Ev kind:function(arm,size=0x38) addr:0x0216a4ac func_ov093_0216a4e4 kind:function(arm,size=0xb4) addr:0x0216a4e4 func_ov093_0216a598 kind:function(arm,size=0xfc) addr:0x0216a598 func_ov093_0216a694 kind:function(thumb,size=0x7c) addr:0x0216a694 @@ -99,7 +99,7 @@ _ZN25UnkStruct_027e0ce0_40_14CD1Ev kind:function(thumb,size=0x2) addr:0x0216aad8 _ZN25UnkStruct_027e0ce0_40_14C19func_ov093_02168850Ev kind:function(thumb,size=0x14) addr:0x0216aadc func_ov093_0216aaf0 kind:function(arm,size=0x184) addr:0x0216aaf0 func_ov093_0216ac74 kind:function(arm,size=0x43c) addr:0x0216ac74 -func_ov093_0216b0b0 kind:function(arm,size=0x6c) addr:0x0216b0b0 +_ZN25UnkStruct_027e0ce0_40_14C19func_ov093_02168e24Ei kind:function(arm,size=0x6c) addr:0x0216b0b0 func_ov093_0216b11c kind:function(thumb,size=0xa) addr:0x0216b11c func_ov093_0216b128 kind:function(arm,size=0x24) addr:0x0216b128 func_ov093_0216b14c kind:function(arm,size=0x9c) addr:0x0216b14c @@ -163,7 +163,7 @@ _ZN19func_ov093_0216ef48D0Ev kind:function(arm,size=0x1c) addr:0x0216ef48 func_ov093_0216ef64 kind:function(thumb,size=0x14) addr:0x0216ef64 func_ov093_0216ef78 kind:function(arm,size=0x94) addr:0x0216ef78 func_ov093_0216f00c kind:function(arm,size=0xa4) addr:0x0216f00c -func_ov093_0216f0b0 kind:function(arm,size=0x3c) addr:0x0216f0b0 +_ZN15PlayerLinkActor19func_ov093_0216ce24EPi kind:function(arm,size=0x3c) addr:0x0216f0b0 _ZN25UnkStruct_027e0ce0_40_328C1EPvP21UnkStruct_027e0ce0_40P25UnkStruct_027e0ce0_40_150Pj kind:function(thumb,size=0x1bc) addr:0x0216f0ec _ZN25UnkStruct_027e0ce0_40_328D1Ev kind:function(thumb,size=0xb6) addr:0x0216f2a8 _ZN25UnkStruct_027e0ce0_40_32819func_ov093_0216d0d4Ev kind:function(thumb,size=0x8c) addr:0x0216f360 @@ -174,13 +174,13 @@ func_ov093_0216f688 kind:function(arm,size=0x30) addr:0x0216f688 func_ov093_0216f6b8 kind:function(arm,size=0x14) addr:0x0216f6b8 func_ov093_0216f6cc kind:function(arm,size=0xb4) addr:0x0216f6cc func_ov093_0216f780 kind:function(arm,size=0xc4) addr:0x0216f780 -func_ov093_0216f844 kind:function(arm,size=0x830) addr:0x0216f844 +_ZN25UnkStruct_027e0ce0_40_32819func_ov093_0216d5b8Ei kind:function(arm,size=0x830) addr:0x0216f844 func_ov093_02170074 kind:function(arm,size=0x48) addr:0x02170074 -func_ov093_021700bc kind:function(arm,size=0x98) addr:0x021700bc -func_ov093_02170154 kind:function(arm,size=0x260) addr:0x02170154 +_ZN25UnkStruct_027e0ce0_40_32819func_ov093_0216de30Eii kind:function(arm,size=0x98) addr:0x021700bc +_ZN25UnkStruct_027e0ce0_40_32819func_ov093_0216dec8Ei kind:function(arm,size=0x260) addr:0x02170154 func_ov093_021703b4 kind:function(arm,size=0x68) addr:0x021703b4 func_ov093_0217041c kind:function(arm,size=0x14) addr:0x0217041c -func_ov093_02170430 kind:function(arm,size=0xfc) addr:0x02170430 +_ZN25UnkStruct_027e0ce0_40_32819func_ov093_0216e1a4Ei kind:function(arm,size=0xfc) addr:0x02170430 func_ov093_0217052c kind:function(arm,size=0x18) addr:0x0217052c func_ov093_02170544 kind:function(arm,size=0x20) addr:0x02170544 func_ov093_02170564 kind:function(arm,size=0x20) addr:0x02170564 @@ -219,7 +219,7 @@ func_ov093_021718ec kind:function(thumb,size=0x10) addr:0x021718ec func_ov093_021718fc kind:function(thumb,size=0x10) addr:0x021718fc func_ov093_0217190c kind:function(thumb,size=0x7c) addr:0x0217190c func_ov093_02171988 kind:function(thumb,size=0x12) addr:0x02171988 -func_ov093_0217199c kind:function(thumb,size=0x50) addr:0x0217199c +_ZN25UnkStruct_027e0ce0_40_32819func_ov093_0216f71cEPi kind:function(thumb,size=0x50) addr:0x0217199c func_ov093_021719ec kind:function(thumb,size=0xc) addr:0x021719ec func_ov093_021719f8 kind:function(arm,size=0x78) addr:0x021719f8 func_ov093_02171a70 kind:function(arm,size=0x7c) addr:0x02171a70 diff --git a/config/jp/arm9/overlays/ov094/relocs.txt b/config/jp/arm9/overlays/ov094/relocs.txt index 7cffafe5..8016983a 100644 --- a/config/jp/arm9/overlays/ov094/relocs.txt +++ b/config/jp/arm9/overlays/ov094/relocs.txt @@ -753,7 +753,7 @@ from:0x0216e094 kind:load to:0x0204b164 module:main from:0x0216e098 kind:load to:0x020b6ba4 module:overlay(0) from:0x0216e0a0 kind:load to:0x0217ad60 module:overlay(94) from:0x0216e0a4 kind:load to:0x027e0ce4 module:dtcm -from:0x0216e0a8 kind:load to:0x020b4800 module:overlay(0) +from:0x0216e0a8 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x0216e0ac kind:load to:0x0203feb0 module:main from:0x0216e18c kind:arm_call to:0x0205a544 module:overlay(0) from:0x0216e1b4 kind:arm_call to:0x01ffc634 module:itcm @@ -1081,7 +1081,7 @@ from:0x0217117c kind:load to:0x020b6ba4 module:overlay(0) from:0x021711b0 kind:arm_call to:0x01fff350 module:itcm from:0x021711d0 kind:arm_call to:0x021714c8 module:overlay(94) from:0x021711dc kind:load to:0x027e0ce4 module:dtcm -from:0x021711e4 kind:load to:0x020b4800 module:overlay(0) +from:0x021711e4 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x021711f4 kind:arm_call to:0x02099b30 module:overlay(0) from:0x0217124c kind:arm_call_thumb to:0x020590f0 module:overlay(0) from:0x02171288 kind:arm_call to:0x0203e690 module:main diff --git a/config/jp/arm9/overlays/ov095/relocs.txt b/config/jp/arm9/overlays/ov095/relocs.txt index 2e940bd1..8c1f3dfe 100644 --- a/config/jp/arm9/overlays/ov095/relocs.txt +++ b/config/jp/arm9/overlays/ov095/relocs.txt @@ -96,7 +96,7 @@ from:0x0217c814 kind:thumb_call to:0x0217c894 module:overlay(95) from:0x0217c81c kind:thumb_call_arm to:0x02156188 module:overlay(71) from:0x0217c826 kind:thumb_call to:0x020bd2b4 module:overlay(1) from:0x0217c84a kind:thumb_call to:0x0217c69c module:overlay(95) -from:0x0217c854 kind:load to:0x020b4800 module:overlay(0) +from:0x0217c854 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x0217c85c kind:load to:0x027e0ce4 module:dtcm from:0x0217c860 kind:load to:0x027e0ce0 module:dtcm from:0x0217c890 kind:load to:0x027e09b8 module:dtcm @@ -462,7 +462,7 @@ from:0x0217f3f0 kind:arm_call to:0x021262ac module:overlay(45) from:0x0217f400 kind:arm_call to:0x0208e5f8 module:overlay(0) from:0x0217f40c kind:load to:0x027e09a8 module:dtcm from:0x0217f414 kind:load to:0x027e0ce4 module:dtcm -from:0x0217f424 kind:load to:0x020b4800 module:overlay(0) +from:0x0217f424 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x0217f428 kind:load to:0x0217a740 module:overlays(89,91,93,94) from:0x0217f46c kind:arm_call to:0x01fff3b4 module:itcm from:0x0217f478 kind:arm_call to:0x01fff458 module:itcm diff --git a/config/jp/arm9/overlays/ov096/relocs.txt b/config/jp/arm9/overlays/ov096/relocs.txt index 2d90385e..8cf025dc 100644 --- a/config/jp/arm9/overlays/ov096/relocs.txt +++ b/config/jp/arm9/overlays/ov096/relocs.txt @@ -1,7 +1,7 @@ from:0x0217be0c kind:arm_call to:0x01fff350 module:itcm from:0x0217be28 kind:arm_call to:0x0217cfd0 module:overlay(96) from:0x0217be70 kind:load to:0x027e0ce4 module:dtcm -from:0x0217be78 kind:load to:0x020b4800 module:overlay(0) +from:0x0217be78 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x0217be94 kind:load to:0x027e0cd8 module:dtcm from:0x0217be98 kind:load to:0x020834e8 module:overlay(0) from:0x0217beb2 kind:thumb_call_arm to:0x02083434 module:overlay(0) @@ -20,7 +20,7 @@ from:0x0217bfe4 kind:thumb_call_arm to:0x0206df5c module:overlay(0) from:0x0217bff6 kind:thumb_call_arm to:0x02071c18 module:overlay(0) from:0x0217c00e kind:thumb_call_arm to:0x0206e734 module:overlay(0) from:0x0217c018 kind:load to:0x027e09a4 module:dtcm -from:0x0217c01c kind:load to:0x020b4800 module:overlay(0) +from:0x0217c01c kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x0217c024 kind:load to:0x027e0ce4 module:dtcm from:0x0217c028 kind:load to:0x020b69b8 module:overlay(0) from:0x0217c088 kind:arm_call_thumb to:0x0217bec8 module:overlay(96) diff --git a/config/jp/arm9/overlays/ov101/relocs.txt b/config/jp/arm9/overlays/ov101/relocs.txt index 402894a5..ddff7ceb 100644 --- a/config/jp/arm9/overlays/ov101/relocs.txt +++ b/config/jp/arm9/overlays/ov101/relocs.txt @@ -79,7 +79,7 @@ from:0x02184d34 kind:thumb_call to:0x020be418 module:overlay(1) from:0x02184dde kind:thumb_call to:0x0216f458 module:overlay(93) from:0x02184df2 kind:thumb_call to:0x020bd7c4 module:overlay(1) from:0x02184e2c kind:thumb_call_arm to:0x01fff350 module:itcm -from:0x02184e4c kind:load to:0x020b4800 module:overlay(0) +from:0x02184e4c kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x02184e50 kind:load to:0x027e0ce4 module:dtcm from:0x02184e5c kind:thumb_call to:0x020b8578 module:overlay(1) from:0x02184e72 kind:thumb_call_arm to:0x02011ff4 module:main diff --git a/config/jp/arm9/overlays/ov101/symbols.txt b/config/jp/arm9/overlays/ov101/symbols.txt index f4bf7e47..ea452c57 100644 --- a/config/jp/arm9/overlays/ov101/symbols.txt +++ b/config/jp/arm9/overlays/ov101/symbols.txt @@ -14,7 +14,7 @@ _ZN21UnkStruct_027e0ce0_40D1Ev kind:function(thumb,size=0x54) addr:0x02184ae0 _ZN21UnkStruct_027e0ce0_4019func_ov101_02182fb4Eb kind:function(thumb,size=0x50) addr:0x02184b34 _ZN21UnkStruct_027e0ce0_4019func_ov101_02183004Ev kind:function(thumb,size=0x1e) addr:0x02184b84 _ZN21UnkStruct_027e0ce0_4019func_ov101_02183024EPK24UnkStruct_ov001_020c40f4S2_iiP11ItemManagerP21UnkStruct_027e0ce0_30bb kind:function(thumb,size=0x260) addr:0x02184ba4 -_ZN21PlayerLinkActor_A0_1CC1Ei kind:function(thumb,size=0xc) addr:0x02184e04 +_ZN21PlayerLinkActor_A0_1CC1EP21UnkStruct_027e0ce0_40 kind:function(thumb,size=0xc) addr:0x02184e04 _ZN21PlayerLinkActor_A0_1C19func_ov101_02183290Ev kind:function(thumb,size=0x48) addr:0x02184e10 _ZN30UnkStruct_027e09a4_54_Derived1C2EPi kind:function(thumb,size=0x50) addr:0x02184e58 _ZN30UnkStruct_027e09a4_54_Derived18vfunc_0CEv kind:function(thumb,size=0x134) addr:0x02184ea8 diff --git a/config/jp/arm9/overlays/ov102/delinks.txt b/config/jp/arm9/overlays/ov102/delinks.txt index 523c62e0..e43d495d 100644 --- a/config/jp/arm9/overlays/ov102/delinks.txt +++ b/config/jp/arm9/overlays/ov102/delinks.txt @@ -4,3 +4,26 @@ .ctor start:0x021864f4 end:0x021864f8 kind:rodata align:4 .data start:0x02186500 end:0x021865c0 kind:data align:32 .bss start:0x021865c0 end:0x021865c0 kind:bss align:32 + +src/102_CourseExecLand/UnkStruct_027e0ce0_40_102.cpp: + .text start:0x021847a0 end:0x02185144 + +src/102_CourseExecLand/MapObjectUnkSAND_102.cpp: + complete + .text start:0x02185144 end:0x02185794 + .rodata start:0x02186430 end:0x021864d0 + +src/102_CourseExecLand/MapObjectUnkPTFL_102.cpp: + .text start:0x02185794 end:0x02186148 + .data start:0x02186500 end:0x02186590 + +src/102_CourseExecLand/UnkStruct_027e0cd8_0C_102.cpp: + complete + .text start:0x02186148 end:0x021861c4 + +src/102_CourseExecLand/ActorUnkMLCK_102.cpp: + complete + .text start:0x021861c4 end:0x02186430 + .init start:0x021864d0 end:0x021864f4 + .ctor start:0x021864f4 end:0x021864f8 + .data start:0x02186590 end:0x021865c0 diff --git a/config/jp/arm9/overlays/ov102/relocs.txt b/config/jp/arm9/overlays/ov102/relocs.txt index 896d05dd..196fb9c4 100644 --- a/config/jp/arm9/overlays/ov102/relocs.txt +++ b/config/jp/arm9/overlays/ov102/relocs.txt @@ -156,7 +156,7 @@ from:0x02186304 kind:arm_call to:0x020749b4 module:overlay(0) from:0x02186334 kind:load to:0x020da050 module:overlay(24) from:0x02186338 kind:load to:0x027e0cf0 module:dtcm from:0x0218633c kind:load to:0x027e0ce4 module:dtcm -from:0x02186340 kind:load to:0x021865a4 module:overlay(102) +from:0x02186340 kind:load to:0x0218659c add:0x8 module:overlay(102) from:0x02186348 kind:load to:0x020b69b8 module:overlay(0) from:0x0218634c kind:load to:0x020b69c8 module:overlay(0) from:0x02186350 kind:load to:0x027e09b8 module:dtcm diff --git a/config/jp/arm9/overlays/ov102/symbols.txt b/config/jp/arm9/overlays/ov102/symbols.txt index 1789c462..9da229c3 100644 --- a/config/jp/arm9/overlays/ov102/symbols.txt +++ b/config/jp/arm9/overlays/ov102/symbols.txt @@ -1,39 +1,39 @@ -func_ov102_021847a0 kind:function(arm,size=0x64) addr:0x021847a0 -func_ov102_02184804 kind:function(arm,size=0x1d0) addr:0x02184804 -func_ov102_021849d4 kind:function(arm,size=0x154) addr:0x021849d4 -func_ov102_02184b28 kind:function(arm,size=0x54) addr:0x02184b28 -func_ov102_02184b7c kind:function(arm,size=0x40) addr:0x02184b7c -func_ov102_02184bbc kind:function(arm,size=0x144) addr:0x02184bbc -func_ov102_02184d00 kind:function(arm,size=0x34) addr:0x02184d00 -func_ov102_02184d34 kind:function(arm,size=0x3c) addr:0x02184d34 -func_ov102_02184d70 kind:function(arm,size=0x4c) addr:0x02184d70 -func_ov102_02184dbc kind:function(arm,size=0x1d8) addr:0x02184dbc -func_ov102_02184f94 kind:function(arm,size=0x1b0) addr:0x02184f94 -func_ov102_02185144 kind:function(arm,size=0x1e4) addr:0x02185144 -func_ov102_02185328 kind:function(arm,size=0x1c0) addr:0x02185328 -func_ov102_021854e8 kind:function(arm,size=0x1c0) addr:0x021854e8 -func_ov102_021856a8 kind:function(arm,size=0x48) addr:0x021856a8 -func_ov102_021856f0 kind:function(arm,size=0xa4) addr:0x021856f0 -func_ov102_02185794 kind:function(arm,size=0x58) addr:0x02185794 -func_ov102_021857ec kind:function(arm,size=0x28) addr:0x021857ec -func_ov102_02185814 kind:function(arm,size=0x110) addr:0x02185814 -func_ov102_02185924 kind:function(arm,size=0x44) addr:0x02185924 -func_ov102_02185968 kind:function(arm,size=0x180) addr:0x02185968 -func_ov102_02185ae8 kind:function(arm,size=0x14) addr:0x02185ae8 -func_ov102_02185afc kind:function(arm,size=0x220) addr:0x02185afc -func_ov102_02185d1c kind:function(arm,size=0x218) addr:0x02185d1c -func_ov102_02185f34 kind:function(arm,size=0x214) addr:0x02185f34 -func_ov102_02186148 kind:function(arm,size=0x60) addr:0x02186148 -func_ov102_021861a8 kind:function(arm,size=0x1c) addr:0x021861a8 -func_ov102_021861c4 kind:function(arm,size=0x190) addr:0x021861c4 -func_ov102_02186354 kind:function(arm,size=0x14) addr:0x02186354 -func_ov102_02186368 kind:function(arm,size=0x78) addr:0x02186368 -func_ov102_021863e0 kind:function(arm,size=0x50) addr:0x021863e0 -data_ov102_02186430 kind:data(any) addr:0x02186430 -data_ov102_02186470 kind:data(any) addr:0x02186470 -__sinit_ov102_021864d0 kind:function(arm,size=0x24) addr:0x021864d0 -.p__sinit_ov102_021864d0 kind:data(word) addr:0x021864f4 -data_ov102_02186500 kind:data(any) addr:0x02186500 -data_ov102_02186528 kind:data(any) addr:0x02186528 -data_ov102_02186590 kind:data(any) addr:0x02186590 -data_ov102_021865a4 kind:data(any) addr:0x021865a4 +_ZN18PlayerActorBase_7419func_ov102_02182c20EiP7Mat4x3p kind:function(arm,size=0x64) addr:0x021847a0 +_ZN18PlayerActorBase_7419func_ov102_02182c84Ebi14UnkAngleStructP7Mat4x3pS2_ kind:function(arm,size=0x1d0) addr:0x02184804 +_ZN25UnkStruct_027e0ce0_40_10819func_ov102_02182e54Eiii kind:function(arm,size=0x154) addr:0x021849d4 +_ZN24UnkStruct_ItemManager_2019func_ov102_02182fa8Eii kind:function(arm,size=0x54) addr:0x02184b28 +_ZN24UnkStruct_ItemManager_2019func_ov102_02182ffcEi kind:function(arm,size=0x40) addr:0x02184b7c +_ZN21UnkStruct_027e0ce0_4019func_ov102_0218303cEiP11ItemManager kind:function(arm,size=0x144) addr:0x02184bbc +_ZN21UnkStruct_027e0ce0_4019func_ov102_02183180Eib kind:function(arm,size=0x34) addr:0x02184d00 +_ZN21UnkStruct_027e0ce0_4019func_ov102_021831b4Ei kind:function(arm,size=0x3c) addr:0x02184d34 +_ZN21UnkStruct_027e0ce0_4019func_ov102_021831f0Ei kind:function(arm,size=0x4c) addr:0x02184d70 +_ZN29UnkStruct_027e0ce0_40_Base_7419func_ov102_0218323cEP29UnkStruct_027e0ce0_40_Base_14i kind:function(arm,size=0x1d8) addr:0x02184dbc +_Z19func_ov102_02183414PsP21PlayerLinkActor_A0_1CbP7VecFx3214UnkAngleStructi kind:function(arm,size=0x1b0) addr:0x02184f94 +_ZN19MapObjectUnkSAND_4019func_ov102_021835c4EP7VecFx32 kind:function(arm,size=0x1e4) addr:0x02185144 +_ZN19MapObjectUnkSAND_4019func_ov102_021837a8E8Vec2bCppP7VecFx32 kind:function(arm,size=0x1c0) addr:0x02185328 +_ZN16MapObjectUnkSAND8vfunc_08Ev kind:function(arm,size=0x1c0) addr:0x021854e8 +_ZN16MapObjectUnkSAND8vfunc_0CEv kind:function(arm,size=0x48) addr:0x021856a8 +_ZN16MapObjectUnkSAND8vfunc_14Ev kind:function(arm,size=0xa4) addr:0x021856f0 +_Z19func_ov102_02183c14i kind:function(arm,size=0x58) addr:0x02185794 +_Z19func_ov102_02183c6ci kind:function(arm,size=0x28) addr:0x021857ec +_Z19func_ov102_02183c94iiiiitttti kind:function(arm,size=0x110) addr:0x02185814 +_Z19func_ov102_02183da4iiiiitttti kind:function(arm,size=0x44) addr:0x02185924 +_ZN16MapObjectUnkPTFL8vfunc_08Ev kind:function(arm,size=0x180) addr:0x02185968 +_ZN16MapObjectUnkPTFL8vfunc_0CEv kind:function(arm,size=0x14) addr:0x02185ae8 +_ZN16MapObjectUnkPTFL8vfunc_14Ev kind:function(arm,size=0x220) addr:0x02185afc +_ZN16MapObjectUnkPTFL19func_ov102_0218419cEv kind:function(arm,size=0x218) addr:0x02185d1c +_ZN16MapObjectUnkPTFL19func_ov102_021843b4Ev kind:function(arm,size=0x214) addr:0x02185f34 +_ZN21UnkStruct_027e0cd8_0C8vfunc_0CEv kind:function(arm,size=0x60) addr:0x02186148 +_ZN21UnkStruct_027e0cd8_0C19func_ov102_02184628Ev kind:function(arm,size=0x1c) addr:0x021861a8 +_ZN12ActorUnkMLCK8vfunc_20Ev kind:function(arm,size=0x190) addr:0x021861c4 +_ZN12ActorUnkMLCK8vfunc_24Ev kind:function(arm,size=0x14) addr:0x02186354 +_ZN15ActorUnkMLCK_C419func_ov102_021847e8Eii kind:function(arm,size=0x78) addr:0x02186368 +_ZN24UnkStruct_ov102_02184a248vfunc_00EP5Actor kind:function(arm,size=0x50) addr:0x021863e0 +data_ov102_021848b0 kind:data(any) addr:0x02186430 local +data_ov102_021848f0 kind:data(any) addr:0x02186470 local +__sinit_ActorUnkMLCK_102.cpp kind:function(arm,size=0x24) addr:0x021864d0 local +.p__sinit_ActorUnkMLCK_102.cpp kind:data(word) addr:0x021864f4 local +data_ov102_02184980 kind:data(any) addr:0x02186500 local +data_ov102_021849a8 kind:data(any) addr:0x02186528 local +data_ov102_02184a10 kind:data(any) addr:0x02186590 local +_ZTV24UnkStruct_ov102_02184a24 kind:data(byte[12]) addr:0x0218659c diff --git a/config/jp/arm9/overlays/ov105/relocs.txt b/config/jp/arm9/overlays/ov105/relocs.txt index 506314be..65ba3adc 100644 --- a/config/jp/arm9/overlays/ov105/relocs.txt +++ b/config/jp/arm9/overlays/ov105/relocs.txt @@ -280,7 +280,7 @@ from:0x021886f4 kind:arm_call to:0x02186f08 module:overlay(105) from:0x02188760 kind:arm_call to:0x02084198 module:overlay(0) from:0x021887c0 kind:load to:0x027e09bc module:dtcm from:0x021887c4 kind:load to:0x027e0ce4 module:dtcm -from:0x021887cc kind:load to:0x020b4800 module:overlay(0) +from:0x021887cc kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x021887d0 kind:load to:0x0218bd30 module:overlay(105) from:0x021887d4 kind:load to:0x0218bd2c module:overlay(105) from:0x021887d8 kind:load to:0x027e09b8 module:dtcm @@ -430,7 +430,7 @@ from:0x02189ea8 kind:arm_call to:0x0218947c module:overlay(105) from:0x02189ec8 kind:arm_call to:0x01fff350 module:itcm from:0x02189f04 kind:load to:0x027e0ce4 module:dtcm from:0x02189f08 kind:load to:0x027e09bc module:dtcm -from:0x02189f10 kind:load to:0x020b4800 module:overlay(0) +from:0x02189f10 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x02189f14 kind:load to:0x0218be58 module:overlay(105) from:0x02189f18 kind:load to:0x0218bd3c module:overlay(105) from:0x02189f20 kind:load to:0x0203feb0 module:main @@ -455,7 +455,7 @@ from:0x0218a1a8 kind:load to:0x0218bd28 module:overlay(105) from:0x0218a1ac kind:load to:0x0218bd24 module:overlay(105) from:0x0218a1b0 kind:load to:0x0218bd20 module:overlay(105) from:0x0218a1b4 kind:load to:0x027e0ce4 module:dtcm -from:0x0218a1bc kind:load to:0x020b4800 module:overlay(0) +from:0x0218a1bc kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x0218a1c0 kind:load to:0x0218bcc0 module:overlay(105) from:0x0218a1c4 kind:load to:0x0218bd14 module:overlay(105) from:0x0218a1c8 kind:load to:0x0218bd18 module:overlay(105) @@ -601,7 +601,7 @@ from:0x0218b91c kind:arm_call to:0x020f7634 module:overlay(31) from:0x0218b924 kind:arm_call to:0x020f5dc4 module:overlays(26,31) from:0x0218b934 kind:load to:0x02112668 module:overlay(31) from:0x0218b940 kind:load to:0x027e0ce4 module:dtcm -from:0x0218b948 kind:load to:0x020b4800 module:overlay(0) +from:0x0218b948 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x0218b94c kind:load to:0x021126ac module:overlay(31) from:0x0218b958 kind:load to:0x0203feb0 module:main from:0x0218b960 kind:load to:0x027e0ce0 module:dtcm diff --git a/config/jp/arm9/overlays/ov107/relocs.txt b/config/jp/arm9/overlays/ov107/relocs.txt index 1cd96883..a4abb58e 100644 --- a/config/jp/arm9/overlays/ov107/relocs.txt +++ b/config/jp/arm9/overlays/ov107/relocs.txt @@ -166,7 +166,7 @@ from:0x02187b6c kind:arm_call to:0x02091ea0 module:overlay(0) from:0x02187b74 kind:load to:0x027e0cdc module:dtcm from:0x02187ba0 kind:arm_call to:0x01fff350 module:itcm from:0x02187bc0 kind:load to:0x027e0ce4 module:dtcm -from:0x02187bc8 kind:load to:0x020b4800 module:overlay(0) +from:0x02187bc8 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x02187be8 kind:load to:0x0210cee4 module:overlay(31) from:0x02187bf4 kind:arm_call to:0x0209e7a4 module:overlay(0) from:0x02187c0c kind:arm_call to:0x02187bcc module:overlay(107) diff --git a/config/jp/arm9/overlays/ov112/relocs.txt b/config/jp/arm9/overlays/ov112/relocs.txt index 10b53fc1..5f0b46a3 100644 --- a/config/jp/arm9/overlays/ov112/relocs.txt +++ b/config/jp/arm9/overlays/ov112/relocs.txt @@ -45,7 +45,7 @@ from:0x021872b0 kind:load to:0x02040eb0 module:main from:0x021872b4 kind:load to:0x027e0ce8 module:dtcm from:0x021872c4 kind:load to:0x027e0ce4 module:dtcm from:0x021872e0 kind:load to:0x027e09a4 module:dtcm -from:0x021872e8 kind:load to:0x020b4800 module:overlay(0) +from:0x021872e8 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x021872ec kind:load to:0x027e09b8 module:dtcm from:0x02187344 kind:arm_call to:0x020914b0 module:overlay(0) from:0x02187358 kind:arm_call to:0x020938c0 module:overlay(0) diff --git a/config/jp/arm9/relocs.txt b/config/jp/arm9/relocs.txt index 60b550e6..e8c56e37 100644 --- a/config/jp/arm9/relocs.txt +++ b/config/jp/arm9/relocs.txt @@ -2093,7 +2093,7 @@ from:0x02016fb8 kind:arm_call to:0x01fff350 module:itcm from:0x02016fec kind:arm_call to:0x01ffb9cc module:itcm from:0x02017014 kind:arm_call to:0x01fff350 module:itcm from:0x0201703c kind:load to:0x027e0ce4 module:dtcm -from:0x02017040 kind:load to:0x020b4800 module:overlay(0) +from:0x02017040 kind:load to:0x020b47f8 add:0x8 module:overlay(0) from:0x02017064 kind:arm_call to:0x01fff520 module:itcm from:0x02017088 kind:arm_call to:0x01ffb9cc module:itcm from:0x020170b4 kind:arm_call to:0x01ffb9cc module:itcm diff --git a/config/jp/arm9/symbols.txt b/config/jp/arm9/symbols.txt index 7f9ee868..f5e161cb 100644 --- a/config/jp/arm9/symbols.txt +++ b/config/jp/arm9/symbols.txt @@ -145,7 +145,7 @@ func_02002e78 kind:function(arm,size=0x20) addr:0x02002e78 func_02002e98 kind:function(arm,size=0x20) addr:0x02002e98 func_02002eb8 kind:function(arm,size=0x20) addr:0x02002eb8 NNS_Snd_func_0206617c kind:function(arm,size=0x2c) addr:0x02002ed8 -func_02002f04 kind:function(arm,size=0x28) addr:0x02002f04 +_ZN24UnkStruct_ov000_020b51c013func_02002f04Ev kind:function(arm,size=0x28) addr:0x02002f04 func_02002f2c kind:function(arm,size=0x28) addr:0x02002f2c func_02002f54 kind:function(arm,size=0x48) addr:0x02002f54 func_02002f9c kind:function(arm,size=0x28) addr:0x02002f9c diff --git a/config/usa/arm9/itcm/symbols.txt b/config/usa/arm9/itcm/symbols.txt index b7b72329..2fd37aa2 100644 --- a/config/usa/arm9/itcm/symbols.txt +++ b/config/usa/arm9/itcm/symbols.txt @@ -128,7 +128,7 @@ func_01ffc520 kind:function(arm,size=0x5c) addr:0x01ffc520 _ZN11ModelRender8vfunc_0CEv kind:function(arm,size=0x24) addr:0x01ffc57c func_01ffc5a0 kind:function(arm,size=0x94) addr:0x01ffc5a0 _ZN15ModelRenderBase13func_01ffc634EP7VecFx3214UnkAngleStructS1_ kind:function(arm,size=0xa0) addr:0x01ffc634 -_ZN19UnkSystem6_Derived213func_01ffc6d4E14UnkAngleStructP7VecFx32 kind:function(arm,size=0x70) addr:0x01ffc6d4 +_ZN15ModelRenderBase13func_01ffc6d4E14UnkAngleStructP7VecFx32 kind:function(arm,size=0x70) addr:0x01ffc6d4 func_01ffc744 kind:function(arm,size=0x24) addr:0x01ffc744 _ZN24UnkStruct_ov000_020b4ec413func_01ffc768Ei kind:function(arm,size=0x3c) addr:0x01ffc768 _ZN20ModelRender_Derived18vfunc_1CEP19UnkSystem4_vfunc_1C kind:function(arm,size=0xb4) addr:0x01ffc7a4 @@ -157,7 +157,7 @@ _ZN18UnkStruct_027e09a46IsLandEv kind:function(arm,size=0x28) addr:0x01ffd3b0 _ZN18UnkStruct_027e09a47IsTrainEv kind:function(arm,size=0x28) addr:0x01ffd3d8 _ZNK18UnkStruct_027e09a421GetCurrentCourseEntryEv kind:function(arm,size=0x20) addr:0x01ffd400 _ZN18UnkStruct_027e09b813func_01ffd420Ev kind:function(arm,size=0x1c) addr:0x01ffd420 -func_01ffd43c kind:function(arm,size=0x60) addr:0x01ffd43c +_ZN21UnkStruct_027e09bc_0C13func_01ffd43cEP5Vec2sii kind:function(arm,size=0x60) addr:0x01ffd43c func_01ffd49c kind:function(arm,size=0x1a4) addr:0x01ffd49c _ZN21UnkStruct_027e09bc_0C13func_01ffd640EP7VecFx32 kind:function(arm,size=0x128) addr:0x01ffd640 func_01ffd768 kind:function(arm,size=0x138) addr:0x01ffd768 @@ -199,7 +199,7 @@ func_01fff280 kind:function(arm,size=0x28) addr:0x01fff280 func_01fff2a8 kind:function(arm,size=0x24) addr:0x01fff2a8 func_01fff2cc kind:function(arm,size=0x30) addr:0x01fff2cc func_01fff2fc kind:function(arm,size=0x54) addr:0x01fff2fc -_ZN12ActorManager13func_01fff350EPvPP5Actor kind:function(arm,size=0x64) addr:0x01fff350 +_ZN12ActorManager13func_01fff350EP29UnkStruct_ov000_020b3000_BasePP5Actor kind:function(arm,size=0x64) addr:0x01fff350 _ZN12ActorManager13func_01fff3b4E8ActorRef kind:function(arm,size=0x8c) addr:0x01fff3b4 func_01fff440 kind:function(arm,size=0x18) addr:0x01fff440 _ZN5Actor10GetActorIdEv kind:function(arm,size=0xc) addr:0x01fff458 diff --git a/config/usa/arm9/overlays/ov000/relocs.txt b/config/usa/arm9/overlays/ov000/relocs.txt index 33c609da..f322eb1f 100644 --- a/config/usa/arm9/overlays/ov000/relocs.txt +++ b/config/usa/arm9/overlays/ov000/relocs.txt @@ -3438,7 +3438,7 @@ from:0x02075668 kind:load to:0x027e0d3c module:dtcm from:0x0207566c kind:load to:0x027e0ce0 module:dtcm from:0x02075670 kind:load to:0x020b23ac module:overlay(0) from:0x02075674 kind:load to:0x027e0ce4 module:dtcm -from:0x02075678 kind:load to:0x020b2fe0 module:overlay(0) +from:0x02075678 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x02075688 kind:arm_call to:0x02075294 module:overlay(0) from:0x020756a4 kind:arm_call to:0x020753e4 module:overlay(0) from:0x020756c0 kind:arm_call to:0x01fff3b4 module:itcm @@ -3842,7 +3842,7 @@ from:0x020798b4 kind:load to:0x027e0cdc module:dtcm from:0x020798b8 kind:load to:0x020b2590 module:overlay(0) from:0x020798bc kind:load to:0x027e09a4 module:dtcm from:0x020798c0 kind:load to:0x027e0ce4 module:dtcm -from:0x020798c8 kind:load to:0x020b2fe0 module:overlay(0) +from:0x020798c8 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x02079904 kind:load to:0x020b2590 module:overlay(0) from:0x02079954 kind:arm_call to:0x020829e8 module:overlay(0) from:0x020799ac kind:arm_call to:0x01ffb714 module:itcm @@ -3978,7 +3978,7 @@ from:0x0207b3ac kind:arm_call to:0x020778c0 module:overlay(0) from:0x0207b3e0 kind:load to:0x027e0ce0 module:dtcm from:0x0207b3e4 kind:load to:0x027e09a4 module:dtcm from:0x0207b3ec kind:load to:0x027e0ce4 module:dtcm -from:0x0207b3f4 kind:load to:0x020b2fe0 module:overlay(0) +from:0x0207b3f4 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x0207b404 kind:load to:0x027e09bc module:dtcm from:0x0207b410 kind:arm_call to:0x020792e8 module:overlay(0) from:0x0207b424 kind:arm_call to:0x020792e8 module:overlay(0) diff --git a/config/usa/arm9/overlays/ov000/symbols.txt b/config/usa/arm9/overlays/ov000/symbols.txt index 0f59e950..93fe6675 100644 --- a/config/usa/arm9/overlays/ov000/symbols.txt +++ b/config/usa/arm9/overlays/ov000/symbols.txt @@ -456,7 +456,7 @@ _ZN23TitleScreenManager_Base8vfunc_44Ev kind:function(arm,size=0x4) addr:0x02061 func_ov000_02061040 kind:function(arm,size=0x44) addr:0x02061020 func_ov000_02061084 kind:function(arm,size=0x14) addr:0x02061064 _ZN18UnkStruct_0204a08819func_ov000_02061098Ev kind:function(arm,size=0x144) addr:0x02061078 -_ZN18UnkStruct_0204a08819func_ov000_020611dcEPvi kind:function(arm,size=0x20) addr:0x020611bc +_ZN18UnkStruct_0204a08819func_ov000_020611dcEP29FileSelectManager_UnkDrawBasei kind:function(arm,size=0x20) addr:0x020611bc _ZN18UnkStruct_0204a08819func_ov000_020611fcEi kind:function(arm,size=0x28) addr:0x020611dc _ZN18UnkStruct_0204a08819func_ov000_02061224Ev kind:function(arm,size=0xc) addr:0x02061204 _ZN18UnkStruct_0204a08819func_ov000_02061230Ev kind:function(arm,size=0xc) addr:0x02061210 @@ -469,14 +469,14 @@ _ZN29FileSelectManager_UnkDrawBaseC1Ev kind:function(arm,size=0x24) addr:0x02061 _ZN29FileSelectManager_UnkDrawBaseD1Ev kind:function(arm,size=0x18) addr:0x02061670 _ZN29FileSelectManager_UnkDrawBaseD0Ev kind:function(arm,size=0x20) addr:0x02061688 _ZN29FileSelectManager_UnkDrawBaseD2Ev kind:function(arm,size=0x18) addr:0x020616a8 -_ZN29FileSelectManager_UnkDrawBase8vfunc_08Ei kind:function(arm,size=0x4) addr:0x020616c0 -_ZN29FileSelectManager_UnkDrawBase8vfunc_0CEi kind:function(arm,size=0x4) addr:0x020616c4 -_ZN29FileSelectManager_UnkDrawBase8vfunc_10Eii kind:function(arm,size=0x4) addr:0x020616c8 -_ZN29FileSelectManager_UnkDrawBase8vfunc_14Ei kind:function(arm,size=0x4) addr:0x020616cc -_ZN29FileSelectManager_UnkDrawBase8vfunc_18Ei kind:function(arm,size=0x4) addr:0x020616d0 -_ZN29FileSelectManager_UnkDrawBase8vfunc_1CEi kind:function(arm,size=0x4) addr:0x020616d4 -_ZN29FileSelectManager_UnkDrawBase8vfunc_20Eii kind:function(arm,size=0x4) addr:0x020616d8 -_ZN29FileSelectManager_UnkDrawBase8vfunc_24Ev kind:function(arm,size=0x4) addr:0x020616dc +_ZN29FileSelectManager_UnkDrawBase9vfunc2_08Ei kind:function(arm,size=0x4) addr:0x020616c0 +_ZN29FileSelectManager_UnkDrawBase9vfunc2_0CEi kind:function(arm,size=0x4) addr:0x020616c4 +_ZN29FileSelectManager_UnkDrawBase8vfunc_54Eii kind:function(arm,size=0x4) addr:0x020616c8 +_ZN29FileSelectManager_UnkDrawBase9vfunc2_14Ei kind:function(arm,size=0x4) addr:0x020616cc +_ZN29FileSelectManager_UnkDrawBase9vfunc2_18Ei kind:function(arm,size=0x4) addr:0x020616d0 +_ZN29FileSelectManager_UnkDrawBase8vfunc_5CEi kind:function(arm,size=0x4) addr:0x020616d4 +_ZN29FileSelectManager_UnkDrawBase8vfunc_58Eii kind:function(arm,size=0x4) addr:0x020616d8 +_ZN29FileSelectManager_UnkDrawBase8vfunc_60Ev kind:function(arm,size=0x4) addr:0x020616dc _ZN23UnkStruct_027e0998_BaseC2Ev kind:function(thumb,size=0x24) addr:0x020616e0 _ZN23UnkStruct_027e0998_BaseC1Ev kind:function(thumb,size=0x24) addr:0x02061704 func_ov000_02061748 kind:function(thumb,size=0x16) addr:0x02061728 @@ -862,7 +862,7 @@ func_ov000_0206bb30 kind:function(arm,size=0xcc) addr:0x0206bb10 _ZN24UnkStruct_ov000_020b51b819func_ov000_0206bbfcEi kind:function(arm,size=0x18) addr:0x0206bbdc func_ov000_0206bc14 kind:function(arm,size=0xe4) addr:0x0206bbf4 func_ov000_0206bcf8 kind:function(arm,size=0xdc) addr:0x0206bcd8 -func_ov000_0206bdd4 kind:function(arm,size=0x10) addr:0x0206bdb4 +_ZN24UnkStruct_ov000_020b51b819func_ov000_0206bdd4EP15PlayerLinkActor kind:function(arm,size=0x10) addr:0x0206bdb4 func_ov000_0206bde4 kind:function(arm,size=0xe8) addr:0x0206bdc4 func_ov000_0206becc kind:function(arm,size=0x60) addr:0x0206beac func_ov000_0206bf2c kind:function(arm,size=0x10) addr:0x0206bf0c @@ -936,8 +936,8 @@ func_ov000_0206e9f8 kind:function(arm,size=0x60) addr:0x0206e9d8 func_ov000_0206ea58 kind:function(arm,size=0x100) addr:0x0206ea38 func_ov000_0206eb58 kind:function(arm,size=0xd0) addr:0x0206eb38 func_ov000_0206ec28 kind:function(arm,size=0xf4) addr:0x0206ec08 -func_ov000_0206ed1c kind:function(arm,size=0xbc) addr:0x0206ecfc -func_ov000_0206edd8 kind:function(arm,size=0x160) addr:0x0206edb8 +_ZN24UnkStruct_ov000_020b521419func_ov000_0206ed1cEP15PlayerLinkActor kind:function(arm,size=0xbc) addr:0x0206ecfc +_ZN24UnkStruct_ov000_020b521419func_ov000_0206edd8EP15PlayerLinkActor kind:function(arm,size=0x160) addr:0x0206edb8 func_ov000_0206ef38 kind:function(arm,size=0xb0) addr:0x0206ef18 func_ov000_0206efe8 kind:function(arm,size=0x26c) addr:0x0206efc8 func_ov000_0206f254 kind:function(arm,size=0x8c) addr:0x0206f234 @@ -2671,7 +2671,7 @@ func_ov000_0209fe84 kind:function(arm,size=0x1c) addr:0x0209fe64 func_ov000_0209fea0 kind:function(arm,size=0xc) addr:0x0209fe80 _ZN18UnkStruct_027e0cec19func_ov000_0209feacEiP7VecFx32iii kind:function(arm,size=0x78) addr:0x0209fe8c _ZN18UnkStruct_027e0cec19func_ov000_0209ff24EiP7VecFx32P7VecFx16i kind:function(arm,size=0x28) addr:0x0209ff04 -func_ov000_0209ff4c kind:function(arm,size=0x40) addr:0x0209ff2c +_ZN18UnkStruct_027e0cec19func_ov000_0209ff4cEiP7VecFx3214UnkAngleStructi kind:function(arm,size=0x40) addr:0x0209ff2c _ZN18UnkStruct_027e0cec19func_ov000_0209ff8cEP22UnkStruct_PlayerGet_eciP7VecFx32i kind:function(arm,size=0x74) addr:0x0209ff6c func_ov000_020a0000 kind:function(arm,size=0xa0) addr:0x0209ffe0 func_ov000_020a00a0 kind:function(arm,size=0x34) addr:0x020a0080 @@ -3655,7 +3655,7 @@ data_ov000_020b2f9c kind:data(any) addr:0x020b2f9c data_ov000_020b2fbc kind:data(any) addr:0x020b2fbc data_ov000_020b2fe8 kind:data(any) addr:0x020b2fc8 data_ov000_020b2fd4 kind:data(any) addr:0x020b2fd4 -data_ov000_020b3000 kind:data(any) addr:0x020b2fe0 +_ZTV24UnkStruct_ov000_020b3000 kind:data(any) addr:0x020b2fd8 data_ov000_020b2fec kind:data(any) addr:0x020b2fec data_ov000_020b2ff8 kind:data(any) addr:0x020b2ff8 data_ov000_020b303c kind:data(any) addr:0x020b301c @@ -4026,7 +4026,7 @@ data_ov000_020b518c kind:bss addr:0x020b518c data_ov000_020b51b8 kind:bss addr:0x020b5198 data_ov000_020b51a0 kind:bss addr:0x020b51a0 data_ov000_020b51a4 kind:bss addr:0x020b51a4 -data_ov000_020b51a8 kind:bss addr:0x020b51a8 +data_ov000_020b51c8 kind:bss addr:0x020b51a8 data_ov000_020b51f0 kind:bss addr:0x020b51f0 data_ov000_020b5214_eur kind:bss addr:0x020b51f4 data_ov000_020b5290 kind:bss addr:0x020b5290 diff --git a/config/usa/arm9/overlays/ov001/relocs.txt b/config/usa/arm9/overlays/ov001/relocs.txt index 859fc250..a0da7fc3 100644 --- a/config/usa/arm9/overlays/ov001/relocs.txt +++ b/config/usa/arm9/overlays/ov001/relocs.txt @@ -1141,7 +1141,7 @@ from:0x020bba48 kind:load to:0x02043e30 module:main from:0x020bba62 kind:thumb_call_arm to:0x01fff350 module:itcm from:0x020bba7c kind:thumb_call_arm to:0x020984d0 module:overlay(0) from:0x020bba86 kind:thumb_call_arm to:0x01fff350 module:itcm -from:0x020bba98 kind:load to:0x020b2fe0 module:overlay(0) +from:0x020bba98 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x020bbaa0 kind:load to:0x027e0ce4 module:dtcm from:0x020bbac4 kind:thumb_call_arm to:0x02011f3c module:main from:0x020bbace kind:thumb_call to:0x02057730 module:overlay(0) @@ -1508,7 +1508,7 @@ from:0x020bd46c kind:thumb_call_arm to:0x020921c4 module:overlay(0) from:0x020bd474 kind:load to:0x027e09a4 module:dtcm from:0x020bd478 kind:load to:0x020d8640 module:overlay(24) from:0x020bd47c kind:load to:0x020aa870 module:overlay(0) -from:0x020bd480 kind:load to:0x020b2fe0 module:overlay(0) +from:0x020bd480 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x020bd484 kind:load to:0x027e0ce4 module:dtcm from:0x020bd48c kind:load to:0x027e09b8 module:dtcm from:0x020bd4a4 kind:thumb_call_arm to:0x02011f3c module:main diff --git a/config/usa/arm9/overlays/ov017/symbols.txt b/config/usa/arm9/overlays/ov017/symbols.txt index 21d2901c..4d8e4f15 100644 --- a/config/usa/arm9/overlays/ov017/symbols.txt +++ b/config/usa/arm9/overlays/ov017/symbols.txt @@ -15,8 +15,8 @@ func_ov017_020bc5fc kind:function(arm,size=0x44) addr:0x020bc5dc func_ov017_020bc640 kind:function(arm,size=0x31c) addr:0x020bc620 func_ov017_020bc95c kind:function(arm,size=0xe4) addr:0x020bc93c func_ov017_020bca40 kind:function(arm,size=0x3a8) addr:0x020bca20 -func_ov017_020bcde8 kind:function(arm,size=0x4b8) addr:0x020bcdc8 -func_ov017_020bd2a0 kind:function(arm,size=0x48) addr:0x020bd280 +_ZN21UnkStruct_027e0ce0_4019func_ov017_020bcde8EiP11ItemManager kind:function(arm,size=0x4b8) addr:0x020bcdc8 +_ZN11ItemManager19func_ov017_020bd2a0Eii kind:function(arm,size=0x48) addr:0x020bd280 func_ov017_020bd2e8 kind:function(arm,size=0x18) addr:0x020bd2c8 func_ov017_020bd300 kind:function(arm,size=0x178) addr:0x020bd2e0 func_ov017_020bd478 kind:function(arm,size=0x28) addr:0x020bd458 @@ -29,15 +29,15 @@ _ZN18UnkStruct_027e0ce019func_ov017_020bd69cEv kind:function(arm,size=0x1c) addr func_ov017_020bd6b8 kind:function(arm,size=0x28) addr:0x020bd698 func_ov017_020bd6e0 kind:function(arm,size=0x78) addr:0x020bd6c0 func_ov017_020bd758 kind:function(arm,size=0x30) addr:0x020bd738 -func_ov017_020bd788 kind:function(arm,size=0x56c) addr:0x020bd768 -func_ov017_020bdcf4 kind:function(arm,size=0x90) addr:0x020bdcd4 -func_ov017_020bdd84 kind:function(arm,size=0x1c4) addr:0x020bdd64 -func_ov017_020bdf48 kind:function(arm,size=0x150) addr:0x020bdf28 +_ZN15PlayerLinkActor19func_ov017_020bd788Ei kind:function(arm,size=0x56c) addr:0x020bd768 +_ZN15PlayerLinkActor19func_ov017_020bdcf4Ev kind:function(arm,size=0x90) addr:0x020bdcd4 +_ZN15PlayerLinkActor19func_ov017_020bdd84Eii kind:function(arm,size=0x1c4) addr:0x020bdd64 +_ZN15PlayerLinkActor19func_ov017_020bdf48Eiiii kind:function(arm,size=0x150) addr:0x020bdf28 func_ov017_020be098 kind:function(arm,size=0x10) addr:0x020be078 func_ov017_020be0a8 kind:function(arm,size=0x38) addr:0x020be088 func_ov017_020be0e0 kind:function(arm,size=0x20c) addr:0x020be0c0 func_ov017_020be2ec kind:function(arm,size=0x148) addr:0x020be2cc -func_ov017_020be434 kind:function(arm,size=0x18) addr:0x020be414 +_ZN29UnkStruct_027e0ce0_40_Base_7C19func_ov017_020be434Ev kind:function(arm,size=0x18) addr:0x020be414 func_ov017_020be44c kind:function(arm,size=0x45c) addr:0x020be42c func_ov017_020be8a8 kind:function(arm,size=0x124) addr:0x020be888 _ZN12CargoManager8DoUpdateEv kind:function(arm,size=0x18) addr:0x020be9ac diff --git a/config/usa/arm9/overlays/ov019/symbols.txt b/config/usa/arm9/overlays/ov019/symbols.txt index 9406b93e..4adbdb18 100644 --- a/config/usa/arm9/overlays/ov019/symbols.txt +++ b/config/usa/arm9/overlays/ov019/symbols.txt @@ -215,24 +215,24 @@ _ZN19FileSelectSubScreenD1Ev kind:function(arm,size=0xec) addr:0x020cfb08 _ZN21FileSelectManager_160C1EP23GameModeManagerBase_104P14FileSelectMain kind:function(arm,size=0x54) addr:0x020cfbf4 _ZN21FileSelectManager_160D1Ev kind:function(arm,size=0x14) addr:0x020cfc48 _ZN21FileSelectManager_160D0Ev kind:function(arm,size=0x1c) addr:0x020cfc5c -_ZN21FileSelectManager_1608vfunc_08Ei kind:function(arm,size=0x50) addr:0x020cfc78 -_ZN21FileSelectManager_1608vfunc_0CEi kind:function(arm,size=0x64) addr:0x020cfcc8 -_ZN21FileSelectManager_1608vfunc_14Ei kind:function(arm,size=0x4) addr:0x020cfd2c -_ZN21FileSelectManager_1608vfunc_10Eii kind:function(arm,size=0x8c) addr:0x020cfd30 -_ZN21FileSelectManager_1608vfunc_18Ei kind:function(arm,size=0x10) addr:0x020cfdbc -_ZN21FileSelectManager_1608vfunc_1CEi kind:function(arm,size=0x64) addr:0x020cfdcc -_ZN21FileSelectManager_1608vfunc_20Eii kind:function(arm,size=0xac) addr:0x020cfe30 -_ZN21FileSelectManager_1608vfunc_24Ev kind:function(arm,size=0x34) addr:0x020cfedc +_ZN21FileSelectManager_1609vfunc2_08Ei kind:function(arm,size=0x50) addr:0x020cfc78 +_ZN21FileSelectManager_1609vfunc2_0CEi kind:function(arm,size=0x64) addr:0x020cfcc8 +_ZN21FileSelectManager_1609vfunc2_14Ei kind:function(arm,size=0x4) addr:0x020cfd2c +_ZN21FileSelectManager_1608vfunc_54Eii kind:function(arm,size=0x8c) addr:0x020cfd30 +_ZN21FileSelectManager_1609vfunc2_18Ei kind:function(arm,size=0x10) addr:0x020cfdbc +_ZN21FileSelectManager_1608vfunc_5CEi kind:function(arm,size=0x64) addr:0x020cfdcc +_ZN21FileSelectManager_1608vfunc_58Eii kind:function(arm,size=0xac) addr:0x020cfe30 +_ZN21FileSelectManager_1608vfunc_60Ev kind:function(arm,size=0x34) addr:0x020cfedc _ZN21FileSelectManager_164C1EP23GameModeManagerBase_104P14FileSelectMain kind:function(arm,size=0x4c) addr:0x020cff10 _ZN21FileSelectManager_164D1Ev kind:function(arm,size=0x3c) addr:0x020cff5c _ZN21FileSelectManager_164D0Ev kind:function(arm,size=0x44) addr:0x020cff98 -_ZN21FileSelectManager_1648vfunc_08Ei kind:function(arm,size=0x50) addr:0x020cffdc -_ZN21FileSelectManager_1648vfunc_0CEi kind:function(arm,size=0x90) addr:0x020d002c -_ZN21FileSelectManager_1648vfunc_14Ei kind:function(arm,size=0x4) addr:0x020d00bc -_ZN21FileSelectManager_1648vfunc_10Eii kind:function(arm,size=0xa8) addr:0x020d00c0 -_ZN21FileSelectManager_1648vfunc_18Ei kind:function(arm,size=0x38) addr:0x020d0168 -_ZN21FileSelectManager_1648vfunc_1CEi kind:function(arm,size=0xa4) addr:0x020d01a0 -_ZN21FileSelectManager_1648vfunc_20Eii kind:function(arm,size=0x90) addr:0x020d0244 +_ZN21FileSelectManager_1649vfunc2_08Ei kind:function(arm,size=0x50) addr:0x020cffdc +_ZN21FileSelectManager_1649vfunc2_0CEi kind:function(arm,size=0x90) addr:0x020d002c +_ZN21FileSelectManager_1649vfunc2_14Ei kind:function(arm,size=0x4) addr:0x020d00bc +_ZN21FileSelectManager_1648vfunc_54Eii kind:function(arm,size=0xa8) addr:0x020d00c0 +_ZN21FileSelectManager_1649vfunc2_18Ei kind:function(arm,size=0x38) addr:0x020d0168 +_ZN21FileSelectManager_1648vfunc_5CEi kind:function(arm,size=0xa4) addr:0x020d01a0 +_ZN21FileSelectManager_1648vfunc_58Eii kind:function(arm,size=0x90) addr:0x020d0244 _ZN21FileSelectManager_16419func_ov019_020d02f4Ev kind:function(arm,size=0x28) addr:0x020d02d4 _ZN25UnkSystem1_ov019_Derived2C1Ev kind:function(arm,size=0x40) addr:0x020d02fc _ZN25UnkSystem1_ov019_Derived28vfunc_08Ei kind:function(arm,size=0x48) addr:0x020d033c diff --git a/config/usa/arm9/overlays/ov024/relocs.txt b/config/usa/arm9/overlays/ov024/relocs.txt index 979939b8..f2cfb41f 100644 --- a/config/usa/arm9/overlays/ov024/relocs.txt +++ b/config/usa/arm9/overlays/ov024/relocs.txt @@ -72,7 +72,7 @@ from:0x020c4c2c kind:arm_call to:0x0207308c module:overlay(0) from:0x020c4c80 kind:arm_call to:0x02073450 module:overlay(0) from:0x020c4c98 kind:load to:0x020d8678 module:overlay(24) from:0x020c4c9c kind:load to:0x027e0ce4 module:dtcm -from:0x020c4ca0 kind:load to:0x020b2fe0 module:overlay(0) +from:0x020c4ca0 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x020c4ca4 kind:load to:0x027e09b8 module:dtcm from:0x020c4cf4 kind:arm_call to:0x01ffd3d8 module:itcm from:0x020c4d18 kind:arm_call to:0x02019510 module:main @@ -2515,7 +2515,7 @@ from:0x020d7280 kind:load to:0x027e0cd8 module:dtcm from:0x020d7284 kind:load to:0x027e09a4 module:dtcm from:0x020d7288 kind:load to:0x027e0ce0 module:dtcm from:0x020d728c kind:load to:0x027e0ce4 module:dtcm -from:0x020d7294 kind:load to:0x020b2fe0 module:overlay(0) +from:0x020d7294 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x020d72a8 kind:arm_call to:0x0209faf8 module:overlay(0) from:0x020d72b0 kind:arm_call to:0x02098468 module:overlay(0) from:0x020d72c8 kind:arm_call to:0x0209faf8 module:overlay(0) diff --git a/config/usa/arm9/overlays/ov024/symbols.txt b/config/usa/arm9/overlays/ov024/symbols.txt index 932f8051..c560482c 100644 --- a/config/usa/arm9/overlays/ov024/symbols.txt +++ b/config/usa/arm9/overlays/ov024/symbols.txt @@ -143,16 +143,16 @@ _ZN24AdventureModeManager_160C1EP23GameModeManagerBase_104P24AdventureModeManage _ZN27AdventureModeManager_160_4CD1Ev kind:function(arm,size=0x14) addr:0x020c79e0 _ZN24AdventureModeManager_160D1Ev kind:function(arm,size=0x30) addr:0x020c79f4 _ZN24AdventureModeManager_160D0Ev kind:function(arm,size=0x38) addr:0x020c7a24 -_ZN24AdventureModeManager_1608vfunc_08Ei kind:function(arm,size=0x9c) addr:0x020c7a5c -_ZN24AdventureModeManager_1608vfunc_0CEi kind:function(arm,size=0x1a0) addr:0x020c7af8 -_ZN24AdventureModeManager_1608vfunc_10Eii kind:function(arm,size=0x24) addr:0x020c7c98 -_ZN24AdventureModeManager_1608vfunc_14Ei kind:function(arm,size=0x20) addr:0x020c7cbc +_ZN24AdventureModeManager_1609vfunc2_08Ei kind:function(arm,size=0x9c) addr:0x020c7a5c +_ZN24AdventureModeManager_1609vfunc2_0CEi kind:function(arm,size=0x1a0) addr:0x020c7af8 +_ZN24AdventureModeManager_1608vfunc_54Eii kind:function(arm,size=0x24) addr:0x020c7c98 +_ZN24AdventureModeManager_1609vfunc2_14Ei kind:function(arm,size=0x20) addr:0x020c7cbc _ZN24AdventureModeManager_16019func_ov024_020c7cfcEv kind:function(arm,size=0x50) addr:0x020c7cdc _ZN24AdventureModeManager_16019func_ov024_020c7d4cEi kind:function(arm,size=0xf0) addr:0x020c7d2c -_ZN24AdventureModeManager_1608vfunc_18Ei kind:function(arm,size=0x118) addr:0x020c7e1c -_ZN24AdventureModeManager_1608vfunc_1CEi kind:function(arm,size=0x36c) addr:0x020c7f34 -_ZN24AdventureModeManager_1608vfunc_20Eii kind:function(arm,size=0xf8) addr:0x020c82a0 -_ZN24AdventureModeManager_1608vfunc_24Ev kind:function(arm,size=0x4) addr:0x020c8398 +_ZN24AdventureModeManager_1609vfunc2_18Ei kind:function(arm,size=0x118) addr:0x020c7e1c +_ZN24AdventureModeManager_1608vfunc_5CEi kind:function(arm,size=0x36c) addr:0x020c7f34 +_ZN24AdventureModeManager_1608vfunc_58Eii kind:function(arm,size=0xf8) addr:0x020c82a0 +_ZN24AdventureModeManager_1608vfunc_60Ev kind:function(arm,size=0x4) addr:0x020c8398 _ZN24AdventureModeManager_16019func_ov024_020c83bcEv kind:function(arm,size=0x6c) addr:0x020c839c _ZN24AdventureModeManager_16019func_ov024_020c8428Ev kind:function(arm,size=0x2c) addr:0x020c8408 _ZN24AdventureModeManager_16019func_ov024_020c8454Ev kind:function(arm,size=0x30) addr:0x020c8434 @@ -165,11 +165,11 @@ _ZN24AdventureModeManager_170C1EP23GameModeManagerBase_104 kind:function(arm,siz _ZN27AdventureModeManager_170_14D1Ev kind:function(arm,size=0x14) addr:0x020c8610 _ZN24AdventureModeManager_170D1Ev kind:function(arm,size=0x20) addr:0x020c8624 _ZN24AdventureModeManager_170D0Ev kind:function(arm,size=0x28) addr:0x020c8644 -_ZN24AdventureModeManager_1708vfunc_08Ei kind:function(arm,size=0x38) addr:0x020c866c -_ZN24AdventureModeManager_1708vfunc_0CEi kind:function(arm,size=0x74) addr:0x020c86a4 -_ZN24AdventureModeManager_1708vfunc_10Eii kind:function(arm,size=0xd4) addr:0x020c8718 -_ZN24AdventureModeManager_1708vfunc_18Ei kind:function(arm,size=0xc) addr:0x020c87ec -_ZN24AdventureModeManager_1708vfunc_24Ev kind:function(arm,size=0x2c) addr:0x020c87f8 +_ZN24AdventureModeManager_1709vfunc2_08Ei kind:function(arm,size=0x38) addr:0x020c866c +_ZN24AdventureModeManager_1709vfunc2_0CEi kind:function(arm,size=0x74) addr:0x020c86a4 +_ZN24AdventureModeManager_1708vfunc_54Eii kind:function(arm,size=0xd4) addr:0x020c8718 +_ZN24AdventureModeManager_1709vfunc2_18Ei kind:function(arm,size=0xc) addr:0x020c87ec +_ZN24AdventureModeManager_1708vfunc_60Ev kind:function(arm,size=0x2c) addr:0x020c87f8 _ZN27AdventureModeManager_170_14D0Ev kind:function(arm,size=0x1c) addr:0x020c8824 _ZN32AdventureModeManager_174_Base_108vfunc_0CEv kind:function(thumb,size=0x10) addr:0x020c8840 _ZN32AdventureModeManager_174_Base_108vfunc_10Ev kind:function(thumb,size=0x10) addr:0x020c8850 @@ -181,25 +181,25 @@ _ZN32AdventureModeManager_174_Base_10D0Ev kind:function(arm,size=0x1c) addr:0x02 _ZN29AdventureModeManager_174_BaseD1Ev kind:function(arm,size=0x20) addr:0x020c8cfc _ZN29AdventureModeManager_174_BaseD0Ev kind:function(arm,size=0x28) addr:0x020c8d1c _ZN24AdventureModeManager_174C1EP23GameModeManagerBase_104 kind:function(thumb,size=0x2c) addr:0x020c8d44 -_ZN24AdventureModeManager_1748vfunc_08Ei kind:function(thumb,size=0x58) addr:0x020c8d70 -_ZN24AdventureModeManager_1748vfunc_0CEi kind:function(thumb,size=0x48) addr:0x020c8dc8 -_ZN24AdventureModeManager_1748vfunc_10Eii kind:function(thumb,size=0xac) addr:0x020c8e10 -_ZN24AdventureModeManager_1748vfunc_18Ei kind:function(thumb,size=0x6c) addr:0x020c8ebc -_ZN24AdventureModeManager_1748vfunc_1CEi kind:function(thumb,size=0x40) addr:0x020c8f28 -_ZN24AdventureModeManager_1748vfunc_20Eii kind:function(thumb,size=0xc0) addr:0x020c8f68 -_ZN24AdventureModeManager_1748vfunc_24Ev kind:function(thumb,size=0x2) addr:0x020c9028 +_ZN24AdventureModeManager_1749vfunc2_08Ei kind:function(thumb,size=0x58) addr:0x020c8d70 +_ZN24AdventureModeManager_1749vfunc2_0CEi kind:function(thumb,size=0x48) addr:0x020c8dc8 +_ZN24AdventureModeManager_1748vfunc_54Eii kind:function(thumb,size=0xac) addr:0x020c8e10 +_ZN24AdventureModeManager_1749vfunc2_18Ei kind:function(thumb,size=0x6c) addr:0x020c8ebc +_ZN24AdventureModeManager_1748vfunc_5CEi kind:function(thumb,size=0x40) addr:0x020c8f28 +_ZN24AdventureModeManager_1748vfunc_58Eii kind:function(thumb,size=0xc0) addr:0x020c8f68 +_ZN24AdventureModeManager_1748vfunc_60Ev kind:function(thumb,size=0x2) addr:0x020c9028 _ZN24AdventureModeManager_174D1Ev kind:function(arm,size=0x20) addr:0x020c902c _ZN24AdventureModeManager_174D0Ev kind:function(arm,size=0x28) addr:0x020c904c _ZN29AdventureModeManager_178_BaseC2EP23GameModeManagerBase_104 kind:function(thumb,size=0x14) addr:0x020c9074 -_ZN29AdventureModeManager_178_Base8vfunc_08Ei kind:function(thumb,size=0x2c) addr:0x020c9088 -_ZN29AdventureModeManager_178_Base8vfunc_0CEi kind:function(thumb,size=0x1c) addr:0x020c90b4 -_ZN29AdventureModeManager_178_Base8vfunc_18Ei kind:function(thumb,size=0x2c) addr:0x020c90d0 -_ZN29AdventureModeManager_178_Base8vfunc_1CEi kind:function(thumb,size=0x1c) addr:0x020c90fc +_ZN29AdventureModeManager_178_Base9vfunc2_08Ei kind:function(thumb,size=0x2c) addr:0x020c9088 +_ZN29AdventureModeManager_178_Base9vfunc2_0CEi kind:function(thumb,size=0x1c) addr:0x020c90b4 +_ZN29AdventureModeManager_178_Base9vfunc2_18Ei kind:function(thumb,size=0x2c) addr:0x020c90d0 +_ZN29AdventureModeManager_178_Base8vfunc_5CEi kind:function(thumb,size=0x1c) addr:0x020c90fc _ZN29AdventureModeManager_178_BaseD1Ev kind:function(arm,size=0x20) addr:0x020c9118 _ZN29AdventureModeManager_178_BaseD0Ev kind:function(arm,size=0x28) addr:0x020c9138 _ZN24AdventureModeManager_178C1EP23GameModeManagerBase_104 kind:function(thumb,size=0x2c) addr:0x020c9160 -_ZN24AdventureModeManager_1788vfunc_10Eii kind:function(thumb,size=0x24) addr:0x020c918c -_ZN24AdventureModeManager_1788vfunc_20Eii kind:function(thumb,size=0x24) addr:0x020c91b0 +_ZN24AdventureModeManager_1788vfunc_54Eii kind:function(thumb,size=0x24) addr:0x020c918c +_ZN24AdventureModeManager_1788vfunc_58Eii kind:function(thumb,size=0x24) addr:0x020c91b0 _ZN24AdventureModeManager_178D1Ev kind:function(arm,size=0x20) addr:0x020c91d4 _ZN24AdventureModeManager_178D0Ev kind:function(arm,size=0x28) addr:0x020c91f4 _ZN27AdventureModeManager_180_188vfunc_0CEv kind:function(thumb,size=0x10) addr:0x020c921c @@ -207,29 +207,29 @@ _ZN24AdventureModeManager_180C1EP23GameModeManagerBase_104 kind:function(thumb,s _ZN27AdventureModeManager_180_18D1Ev kind:function(thumb,size=0xc) addr:0x020c927c _ZN24AdventureModeManager_180D1Ev kind:function(thumb,size=0x14) addr:0x020c9288 _ZN24AdventureModeManager_180D0Ev kind:function(thumb,size=0x1a) addr:0x020c929c -_ZN24AdventureModeManager_1808vfunc_08Ei kind:function(thumb,size=0x64) addr:0x020c92b8 -_ZN24AdventureModeManager_1808vfunc_0CEi kind:function(thumb,size=0x90) addr:0x020c931c -_ZN24AdventureModeManager_1808vfunc_10Eii kind:function(thumb,size=0x64) addr:0x020c93ac +_ZN24AdventureModeManager_1809vfunc2_08Ei kind:function(thumb,size=0x64) addr:0x020c92b8 +_ZN24AdventureModeManager_1809vfunc2_0CEi kind:function(thumb,size=0x90) addr:0x020c931c +_ZN24AdventureModeManager_1808vfunc_54Eii kind:function(thumb,size=0x64) addr:0x020c93ac _ZN24AdventureModeManager_18019func_ov024_020c9430Eii kind:function(thumb,size=0x24) addr:0x020c9410 -_ZN24AdventureModeManager_1808vfunc_18Ei kind:function(thumb,size=0x30) addr:0x020c9434 -_ZN24AdventureModeManager_1808vfunc_1CEi kind:function(thumb,size=0x78) addr:0x020c9464 -_ZN24AdventureModeManager_1808vfunc_20Eii kind:function(thumb,size=0x7c) addr:0x020c94dc -_ZN24AdventureModeManager_1808vfunc_24Ev kind:function(thumb,size=0x2) addr:0x020c9558 +_ZN24AdventureModeManager_1809vfunc2_18Ei kind:function(thumb,size=0x30) addr:0x020c9434 +_ZN24AdventureModeManager_1808vfunc_5CEi kind:function(thumb,size=0x78) addr:0x020c9464 +_ZN24AdventureModeManager_1808vfunc_58Eii kind:function(thumb,size=0x7c) addr:0x020c94dc +_ZN24AdventureModeManager_1808vfunc_60Ev kind:function(thumb,size=0x2) addr:0x020c9558 _ZN24AdventureModeManager_18019func_ov024_020c957cEv kind:function(thumb,size=0x48) addr:0x020c955c _ZN24AdventureModeManager_18019func_ov024_020c95c4Ev kind:function(thumb,size=0x48) addr:0x020c95a4 _ZN27AdventureModeManager_180_18D0Ev kind:function(arm,size=0x1c) addr:0x020c95ec _ZN24AdventureModeManager_184C1EP23GameModeManagerBase_104 kind:function(thumb,size=0x30) addr:0x020c9608 _ZN24AdventureModeManager_184D1Ev kind:function(thumb,size=0xc) addr:0x020c9638 _ZN24AdventureModeManager_184D0Ev kind:function(thumb,size=0x12) addr:0x020c9644 -_ZN24AdventureModeManager_1848vfunc_08Ei kind:function(thumb,size=0x20) addr:0x020c9658 -_ZN24AdventureModeManager_1848vfunc_0CEi kind:function(thumb,size=0xf8) addr:0x020c9678 -_ZN24AdventureModeManager_1848vfunc_10Eii kind:function(thumb,size=0x8) addr:0x020c9770 -_ZN24AdventureModeManager_1848vfunc_14Ei kind:function(thumb,size=0x2) addr:0x020c9778 +_ZN24AdventureModeManager_1849vfunc2_08Ei kind:function(thumb,size=0x20) addr:0x020c9658 +_ZN24AdventureModeManager_1849vfunc2_0CEi kind:function(thumb,size=0xf8) addr:0x020c9678 +_ZN24AdventureModeManager_1848vfunc_54Eii kind:function(thumb,size=0x8) addr:0x020c9770 +_ZN24AdventureModeManager_1849vfunc2_14Ei kind:function(thumb,size=0x2) addr:0x020c9778 _ZN24AdventureModeManager_18419func_ov024_020c979cEi kind:function(thumb,size=0x94) addr:0x020c977c -_ZN24AdventureModeManager_1848vfunc_18Ei kind:function(thumb,size=0x7c) addr:0x020c9810 -_ZN24AdventureModeManager_1848vfunc_1CEi kind:function(thumb,size=0x60) addr:0x020c988c -_ZN24AdventureModeManager_1848vfunc_20Eii kind:function(thumb,size=0x5c) addr:0x020c98ec -_ZN24AdventureModeManager_1848vfunc_24Ev kind:function(thumb,size=0x8) addr:0x020c9948 +_ZN24AdventureModeManager_1849vfunc2_18Ei kind:function(thumb,size=0x7c) addr:0x020c9810 +_ZN24AdventureModeManager_1848vfunc_5CEi kind:function(thumb,size=0x60) addr:0x020c988c +_ZN24AdventureModeManager_1848vfunc_58Eii kind:function(thumb,size=0x5c) addr:0x020c98ec +_ZN24AdventureModeManager_1848vfunc_60Ev kind:function(thumb,size=0x8) addr:0x020c9948 _ZN27AdventureModeManager_18C_14C1Ev kind:function(thumb,size=0x14) addr:0x020c9950 _ZN27AdventureModeManager_18C_148vfunc_0CEv kind:function(thumb,size=0x10) addr:0x020c9964 _ZN27AdventureModeManager_18C_148vfunc_10Ev kind:function(thumb,size=0x10) addr:0x020c9974 @@ -237,15 +237,15 @@ _ZN24AdventureModeManager_18CC1EP23GameModeManagerBase_104 kind:function(thumb,s _ZN27AdventureModeManager_18C_14D1Ev kind:function(thumb,size=0xc) addr:0x020c99ec _ZN24AdventureModeManager_18CD1Ev kind:function(thumb,size=0x14) addr:0x020c99f8 _ZN24AdventureModeManager_18CD0Ev kind:function(thumb,size=0x1a) addr:0x020c9a0c -_ZN24AdventureModeManager_18C8vfunc_08Ei kind:function(thumb,size=0x32) addr:0x020c9a28 -_ZN24AdventureModeManager_18C8vfunc_0CEi kind:function(thumb,size=0xf0) addr:0x020c9a5c -_ZN24AdventureModeManager_18C8vfunc_10Eii kind:function(thumb,size=0x100) addr:0x020c9b4c +_ZN24AdventureModeManager_18C9vfunc2_08Ei kind:function(thumb,size=0x32) addr:0x020c9a28 +_ZN24AdventureModeManager_18C9vfunc2_0CEi kind:function(thumb,size=0xf0) addr:0x020c9a5c +_ZN24AdventureModeManager_18C8vfunc_54Eii kind:function(thumb,size=0x100) addr:0x020c9b4c _ZN24AdventureModeManager_18C19func_ov024_020c9c6cEv kind:function(thumb,size=0xb4) addr:0x020c9c4c -_ZN24AdventureModeManager_18C8vfunc_14Ei kind:function(thumb,size=0x10) addr:0x020c9d00 -_ZN24AdventureModeManager_18C8vfunc_18Ei kind:function(thumb,size=0xac) addr:0x020c9d10 -_ZN24AdventureModeManager_18C8vfunc_1CEi kind:function(thumb,size=0x88) addr:0x020c9dbc -_ZN24AdventureModeManager_18C8vfunc_20Eii kind:function(thumb,size=0x1c4) addr:0x020c9e44 -_ZN24AdventureModeManager_18C8vfunc_24Ev kind:function(thumb,size=0xa) addr:0x020ca008 +_ZN24AdventureModeManager_18C9vfunc2_14Ei kind:function(thumb,size=0x10) addr:0x020c9d00 +_ZN24AdventureModeManager_18C9vfunc2_18Ei kind:function(thumb,size=0xac) addr:0x020c9d10 +_ZN24AdventureModeManager_18C8vfunc_5CEi kind:function(thumb,size=0x88) addr:0x020c9dbc +_ZN24AdventureModeManager_18C8vfunc_58Eii kind:function(thumb,size=0x1c4) addr:0x020c9e44 +_ZN24AdventureModeManager_18C8vfunc_60Ev kind:function(thumb,size=0xa) addr:0x020ca008 _ZN24AdventureModeManager_18C19func_ov024_020ca034Ev kind:function(thumb,size=0x34) addr:0x020ca014 _ZN24AdventureModeManager_18C19func_ov024_020ca068Ei kind:function(thumb,size=0xc) addr:0x020ca048 _ZN24AdventureModeManager_18C19func_ov024_020ca074Ev kind:function(thumb,size=0x6) addr:0x020ca054 @@ -255,12 +255,12 @@ _ZN27AdventureModeManager_190_388vfunc_0CEv kind:function(thumb,size=0xc) addr:0 _ZN24AdventureModeManager_190C1EP23GameModeManagerBase_104 kind:function(thumb,size=0x54) addr:0x020ca094 _ZN27AdventureModeManager_190_14D1Ev kind:function(thumb,size=0xc) addr:0x020ca0e8 _ZN27AdventureModeManager_190_38D1Ev kind:function(thumb,size=0xc) addr:0x020ca0f4 -_ZN24AdventureModeManager_1908vfunc_08Ei kind:function(thumb,size=0xc) addr:0x020ca100 -_ZN24AdventureModeManager_1908vfunc_0CEi kind:function(thumb,size=0x20) addr:0x020ca10c -_ZN24AdventureModeManager_1908vfunc_10Eii kind:function(thumb,size=0x3c) addr:0x020ca12c -_ZN24AdventureModeManager_1908vfunc_18Ei kind:function(thumb,size=0xc) addr:0x020ca168 -_ZN24AdventureModeManager_1908vfunc_1CEi kind:function(thumb,size=0x20) addr:0x020ca174 -_ZN24AdventureModeManager_1908vfunc_20Eii kind:function(thumb,size=0x68) addr:0x020ca194 +_ZN24AdventureModeManager_1909vfunc2_08Ei kind:function(thumb,size=0xc) addr:0x020ca100 +_ZN24AdventureModeManager_1909vfunc2_0CEi kind:function(thumb,size=0x20) addr:0x020ca10c +_ZN24AdventureModeManager_1908vfunc_54Eii kind:function(thumb,size=0x3c) addr:0x020ca12c +_ZN24AdventureModeManager_1909vfunc2_18Ei kind:function(thumb,size=0xc) addr:0x020ca168 +_ZN24AdventureModeManager_1908vfunc_5CEi kind:function(thumb,size=0x20) addr:0x020ca174 +_ZN24AdventureModeManager_1908vfunc_58Eii kind:function(thumb,size=0x68) addr:0x020ca194 _ZN24AdventureModeManager_19019func_ov024_020ca21cEv kind:function(thumb,size=0x30) addr:0x020ca1fc _ZN24AdventureModeManager_19019func_ov024_020ca24cEi kind:function(thumb,size=0x34) addr:0x020ca22c _ZN24AdventureModeManager_19019func_ov024_020ca280Ev kind:function(thumb,size=0x10) addr:0x020ca260 diff --git a/config/usa/arm9/overlays/ov031/delinks.txt b/config/usa/arm9/overlays/ov031/delinks.txt index 08481039..11032939 100644 --- a/config/usa/arm9/overlays/ov031/delinks.txt +++ b/config/usa/arm9/overlays/ov031/delinks.txt @@ -187,7 +187,7 @@ src/031_Land/Actor/ActorItemDrop.cpp: .bss start:0x02116e4c end:0x02116f7c src/031_Land/Actor/ActorUnkMLCK.cpp: - .text start:0x020fab3c end:0x020fb28c + .text start:0x020fab3c end:0x020fb2ec .init start:0x02111968 end:0x021119dc .ctor start:0x021127e0 end:0x021127e4 .data start:0x02114d08 end:0x02114dfc diff --git a/config/usa/arm9/overlays/ov031/relocs.txt b/config/usa/arm9/overlays/ov031/relocs.txt index 82387213..cbabafd6 100644 --- a/config/usa/arm9/overlays/ov031/relocs.txt +++ b/config/usa/arm9/overlays/ov031/relocs.txt @@ -3776,7 +3776,7 @@ from:0x020fab9c kind:arm_call to:0x02098368 module:overlay(0) from:0x020faba4 kind:arm_call to:0x02061628 module:overlay(0) from:0x020fac38 kind:load to:0x02114d14 add:0x8 module:overlay(31) from:0x020fac3c kind:load to:0x02114d50 add:0x8 module:overlay(31) -from:0x020fac40 kind:load to:0x02114dcc add:0x8 module:overlay(31) +from:0x020fac40 kind:load to:0x02114d50 add:0x84 module:overlay(31) from:0x020fac7c kind:arm_call to:0x01fff350 module:itcm from:0x020facb0 kind:arm_call to:0x020611bc module:overlay(0) from:0x020fad08 kind:load to:0x027e0ce4 module:dtcm @@ -3793,7 +3793,7 @@ from:0x020fade0 kind:load to:0x02110bcc module:overlay(31) from:0x020fade4 kind:load to:0x020b5198 module:overlay(0) from:0x020fae3c kind:arm_call to:0x0206d254 module:overlay(0) from:0x020fae48 kind:arm_call to:0x020c6ce4 module:overlay(24) -from:0x020fae58 kind:arm_call to:0x020c6cf0 module:overlays(24,19) +from:0x020fae58 kind:arm_call to:0x020c6cf0 module:overlay(24) from:0x020fae84 kind:load to:0x0204a068 module:main from:0x020fae88 kind:load to:0x020b5198 module:overlay(0) from:0x020fae8c kind:load to:0x027e0994 module:dtcm @@ -3801,7 +3801,7 @@ from:0x020faeb0 kind:arm_call to:0x02098a68 module:overlay(0) from:0x020faefc kind:arm_call to:0x02098a68 module:overlay(0) from:0x020faf34 kind:arm_call to:0x020fb1e4 module:overlay(31) from:0x020faf4c kind:arm_call to:0x020611dc module:overlay(0) -from:0x020faf58 kind:arm_call to:0x020c6cf0 module:overlays(19,24) +from:0x020faf58 kind:arm_call to:0x020c6cf0 module:overlay(24) from:0x020faf64 kind:arm_call to:0x02072fb0 module:overlay(0) from:0x020faf84 kind:arm_call to:0x01fff148 module:itcm from:0x020fafb0 kind:arm_call to:0x02073368 module:overlay(0) diff --git a/config/usa/arm9/overlays/ov031/symbols.txt b/config/usa/arm9/overlays/ov031/symbols.txt index d7f2d430..01f1ed2c 100644 --- a/config/usa/arm9/overlays/ov031/symbols.txt +++ b/config/usa/arm9/overlays/ov031/symbols.txt @@ -149,17 +149,17 @@ func_ov031_020db374 kind:function(arm,size=0x74) addr:0x020db354 func_ov031_020db3e8 kind:function(arm,size=0x18) addr:0x020db3c8 func_ov031_020db400 kind:function(arm,size=0x98) addr:0x020db3e0 func_ov031_020db498 kind:function(arm,size=0x58) addr:0x020db478 -func_ov031_020db4f0 kind:function(arm,size=0x38) addr:0x020db4d0 -func_ov031_020db528 kind:function(arm,size=0x8c) addr:0x020db508 +_ZN27UnkStruct_ItemManager_20_0419func_ov031_020db4f0Eii kind:function(arm,size=0x38) addr:0x020db4d0 +_ZN27UnkStruct_ItemManager_20_0419func_ov031_020db528Ei kind:function(arm,size=0x8c) addr:0x020db508 _ZN27UnkStruct_ItemManager_20_0819func_ov031_020db5b4Ev kind:function(arm,size=0x20) addr:0x020db594 func_ov031_020db5d4 kind:function(arm,size=0x14) addr:0x020db5b4 func_ov031_020db5e8 kind:function(arm,size=0x2c) addr:0x020db5c8 func_ov031_020db614 kind:function(arm,size=0x90) addr:0x020db5f4 func_ov031_020db6a4 kind:function(arm,size=0x60) addr:0x020db684 -func_ov031_020db704 kind:function(arm,size=0xbc) addr:0x020db6e4 +_ZN27UnkStruct_ItemManager_20_0819func_ov031_020db704Eii kind:function(arm,size=0xbc) addr:0x020db6e4 _ZN27UnkStruct_ItemManager_20_14C1Ev kind:function(thumb,size=0x16) addr:0x020db7a0 _ZN27UnkStruct_ItemManager_20_1419func_ov031_020db7d8Ev kind:function(thumb,size=0x1a) addr:0x020db7b8 -func_ov031_020db7f4 kind:function(arm,size=0x50) addr:0x020db7d4 +_ZN27UnkStruct_ItemManager_20_1419func_ov031_020db7f4Ev kind:function(arm,size=0x50) addr:0x020db7d4 func_ov031_020db844 kind:function(arm,size=0x30) addr:0x020db824 _ZN24UnkStruct_ItemManager_2019func_ov031_020db874Ej kind:function(arm,size=0x58) addr:0x020db854 _ZN24UnkStruct_ItemManager_2019func_ov031_020db8ccEv kind:function(arm,size=0x2c) addr:0x020db8ac @@ -167,15 +167,15 @@ _ZN24UnkStruct_ItemManager_2019func_ov031_020db8f8Ev kind:function(arm,size=0x44 _ZN27UnkStruct_ItemManager_20_0CC1Ev kind:function(thumb,size=0x12) addr:0x020db91c _ZN27UnkStruct_ItemManager_20_0CD1Ev kind:function(thumb,size=0x2) addr:0x020db930 _ZN27UnkStruct_ItemManager_20_0C19func_ov031_020db954Ev kind:function(arm,size=0x4) addr:0x020db934 -func_ov031_020db958 kind:function(arm,size=0xe4) addr:0x020db938 -func_ov031_020dba3c kind:function(arm,size=0x4) addr:0x020dba1c +_ZN27UnkStruct_ItemManager_20_0C19func_ov031_020db958Eii kind:function(arm,size=0xe4) addr:0x020db938 +_ZN27UnkStruct_ItemManager_20_0C19func_ov031_020dba3cEi kind:function(arm,size=0x4) addr:0x020dba1c _ZN27UnkStruct_ItemManager_20_0019func_ov031_020dba40Ev kind:function(arm,size=0x34) addr:0x020dba20 func_ov031_020dba74 kind:function(arm,size=0x18) addr:0x020dba54 func_ov031_020dba8c kind:function(arm,size=0xac) addr:0x020dba6c func_ov031_020dbb38 kind:function(arm,size=0x1c) addr:0x020dbb18 func_ov031_020dbb54 kind:function(arm,size=0xc4) addr:0x020dbb34 func_ov031_020dbc18 kind:function(arm,size=0x68) addr:0x020dbbf8 -func_ov031_020dbc80 kind:function(arm,size=0xa4) addr:0x020dbc60 +_ZN27UnkStruct_ItemManager_20_0019func_ov031_020dbc80Eii kind:function(arm,size=0xa4) addr:0x020dbc60 func_ov031_020dbd24 kind:function(arm,size=0x74) addr:0x020dbd04 func_ov031_020dbd98 kind:function(arm,size=0xc4) addr:0x020dbd78 func_ov031_020dbe5c kind:function(arm,size=0x2c) addr:0x020dbe3c @@ -612,7 +612,7 @@ _ZN19ActorProfileUnkZSRSC1Ev kind:function(thumb,size=0x1c) addr:0x020ea018 _ZN19ActorProfileUnkZLSL10GetProfileEv kind:function(thumb,size=0x8) addr:0x020ea034 _ZN19ActorProfileUnkZLSL6CreateEv kind:function(thumb,size=0x1c) addr:0x020ea03c _ZN19ActorProfileUnkZLSLC1Ev kind:function(thumb,size=0x3c) addr:0x020ea058 -_ZN24UnkStruct_ov031_0211361c19func_ov031_020ea0b4EP5Actor kind:function(thumb,size=0x30) addr:0x020ea094 +_ZN24UnkStruct_ov031_0211361c8vfunc_00EP5Actor kind:function(thumb,size=0x30) addr:0x020ea094 _ZN26ModelRender_ov031_02113670C2EP10G3d_Model_ kind:function(thumb,size=0x14) addr:0x020ea0c4 _ZN26ModelRender_ov031_021136708vfunc_0CEv kind:function(thumb,size=0x8) addr:0x020ea0d8 func_ov031_020ea100 kind:function(thumb,size=0x40) addr:0x020ea0e0 @@ -1208,8 +1208,8 @@ _ZN12ActorUnkMLCKC1Ev kind:function(arm,size=0xb0) addr:0x020fab94 _ZN12ActorUnkMLCK8vfunc_18Ei kind:function(arm,size=0xd8) addr:0x020fac44 _ZN12ActorUnkMLCK8vfunc_64Ei kind:function(arm,size=0x4c) addr:0x020fad1c _ZN12ActorUnkMLCK8vfunc_54Eii kind:function(arm,size=0x20) addr:0x020fad68 -_ZN12ActorUnkMLCK8vfunc_58Ev kind:function(arm,size=0xc) addr:0x020fad88 -_ZN12ActorUnkMLCK8vfunc_5CEv kind:function(arm,size=0x54) addr:0x020fad94 +_ZN12ActorUnkMLCK8vfunc_58Eii kind:function(arm,size=0xc) addr:0x020fad88 +_ZN12ActorUnkMLCK8vfunc_5CEi kind:function(arm,size=0x54) addr:0x020fad94 _ZN12ActorUnkMLCK8vfunc_60Ev kind:function(arm,size=0x18) addr:0x020fade8 _ZN12ActorUnkMLCK8vfunc_68Ev kind:function(arm,size=0x90) addr:0x020fae00 _ZN12ActorUnkMLCK19func_ov031_020faeb0Ev kind:function(arm,size=0x4) addr:0x020fae90 @@ -1218,20 +1218,20 @@ _ZN12ActorUnkMLCK8vfunc_70Ev kind:function(arm,size=0x20) addr:0x020faee4 _ZN12ActorUnkMLCK19func_ov031_020faf24Ev kind:function(arm,size=0x1e0) addr:0x020faf04 _ZN12ActorUnkMLCK19func_ov031_020fb104Ev kind:function(arm,size=0x18) addr:0x020fb0e4 _ZN12ActorUnkMLCK19func_ov031_020fb11cEv kind:function(arm,size=0x68) addr:0x020fb0fc -_ZN18ActorUnkMLCK_B4_0019func_ov031_020fb184Ev kind:function(arm,size=0x2c) addr:0x020fb164 +_ZN15ActorUnkMLCK_C419func_ov031_020fb184Ev kind:function(arm,size=0x2c) addr:0x020fb164 _ZN15ActorUnkMLCK_D89vfunc2_00Ev kind:function(arm,size=0x1c) addr:0x020fb190 _ZN15ActorUnkMLCK_D89vfunc2_04Ev kind:function(arm,size=0x1c) addr:0x020fb1ac -_ZN12ActorUnkMLCK19func_ov031_020fb1e8EP18ActorUnkMLCK_B4_00 kind:function(arm,size=0x1c) addr:0x020fb1c8 +_ZN12ActorUnkMLCK19func_ov031_020fb1e8EP15ActorUnkMLCK_A0 kind:function(arm,size=0x1c) addr:0x020fb1c8 _ZN12ActorUnkMLCK19func_ov031_020fb204Ei kind:function(arm,size=0x4c) addr:0x020fb1e4 _ZN12ActorUnkMLCKD0Ev kind:function(arm,size=0x28) addr:0x020fb230 _ZN12ActorUnkMLCKD1Ev kind:function(arm,size=0x20) addr:0x020fb258 _ZN19ActorProfileUnkMLCKD1Ev kind:function(arm,size=0x14) addr:0x020fb278 -func_ov031_020fb2ac kind:function(arm,size=0x10) addr:0x020fb28c -func_ov031_020fb2bc kind:function(arm,size=0x10) addr:0x020fb29c -func_ov031_020fb2cc kind:function(arm,size=0x10) addr:0x020fb2ac -func_ov031_020fb2dc kind:function(arm,size=0x10) addr:0x020fb2bc -func_ov031_020fb2ec kind:function(arm,size=0x10) addr:0x020fb2cc -func_ov031_020fb2fc kind:function(arm,size=0x10) addr:0x020fb2dc +_ZThn148_N12ActorUnkMLCKD0Ev kind:function(arm,size=0x10) addr:0x020fb28c +_ZThn148_N12ActorUnkMLCK8vfunc_60Ev kind:function(arm,size=0x10) addr:0x020fb29c +_ZThn148_N12ActorUnkMLCK8vfunc_58Eii kind:function(arm,size=0x10) addr:0x020fb2ac +_ZThn148_N12ActorUnkMLCK8vfunc_5CEi kind:function(arm,size=0x10) addr:0x020fb2bc +_ZThn148_N12ActorUnkMLCK8vfunc_54Eii kind:function(arm,size=0x10) addr:0x020fb2cc +_ZThn148_N12ActorUnkMLCKD1Ev kind:function(arm,size=0x10) addr:0x020fb2dc _ZN19ActorProfileUnkCLLT10GetProfileEv kind:function(arm,size=0xc) addr:0x020fb2ec _ZN19ActorProfileUnkCLLT6CreateEv kind:function(arm,size=0x24) addr:0x020fb2f8 _ZN19ActorProfileUnkCLLTC1Ev kind:function(arm,size=0x28) addr:0x020fb31c @@ -1793,7 +1793,7 @@ _ZN23MapObjectProfileUnkSAND6CreateEv kind:function(arm,size=0x24) addr:0x0210aa _ZN23MapObjectProfileUnkSANDC1Ev kind:function(arm,size=0x198) addr:0x0210ab1c _ZN16MapObjectUnkSAND19func_ov031_0210acd4Ev kind:function(arm,size=0x90) addr:0x0210acb4 _ZN16MapObjectUnkSAND19func_ov031_0210ad64Ev kind:function(arm,size=0x9c) addr:0x0210ad44 -_ZN16MapObjectUnkSAND19func_ov031_0210ae00Ev kind:function(arm,size=0x90) addr:0x0210ade0 +_ZN16MapObjectUnkSAND19func_ov031_0210ae00E8Vec2bCppPv kind:function(arm,size=0x90) addr:0x0210ade0 _ZN16MapObjectUnkSAND19func_ov031_0210ae90Ev kind:function(arm,size=0xc0) addr:0x0210ae70 _ZN16MapObjectUnkSAND19func_ov031_0210af50Ev kind:function(arm,size=0xc8) addr:0x0210af30 _ZN16MapObjectUnkSAND19func_ov031_0210b018Ev kind:function(arm,size=0x10) addr:0x0210aff8 @@ -1801,13 +1801,13 @@ _ZN16MapObjectUnkSAND19func_ov031_0210b028Ev kind:function(arm,size=0x84) addr:0 _ZN16MapObjectUnkSAND19func_ov031_0210b0acEv kind:function(arm,size=0x38) addr:0x0210b08c _ZN16MapObjectUnkSAND19func_ov031_0210b0e4Ev kind:function(arm,size=0x60) addr:0x0210b0c4 _ZN16MapObjectUnkSAND19func_ov031_0210b144Ev kind:function(arm,size=0x38) addr:0x0210b124 -_ZN16MapObjectUnkSAND19func_ov031_0210b17cEv kind:function(arm,size=0x70) addr:0x0210b15c +_ZN16MapObjectUnkSAND19func_ov031_0210b17cEP19MapObjectUnkSAND_40i kind:function(arm,size=0x70) addr:0x0210b15c _ZN16MapObjectUnkSAND19func_ov031_0210b1ecEv kind:function(arm,size=0xe0) addr:0x0210b1cc _ZN16MapObjectUnkSAND19func_ov031_0210b2ccEv kind:function(arm,size=0x30) addr:0x0210b2ac -_ZN16MapObjectUnkSANDD1Ev kind:function(arm,size=0x14) addr:0x0210b2dc -_ZN16MapObjectUnkSANDD0Ev kind:function(arm,size=0x1c) addr:0x0210b2f0 -_ZN16MapObjectUnkSAND19func_ov031_0210b32cEv kind:function(arm,size=0x20) addr:0x0210b30c -_ZN16MapObjectUnkSAND19func_ov031_0210b34cEv kind:function(arm,size=0x28) addr:0x0210b32c +_ZN16MapObjectUnkSAND19func_ov031_0210b2fcEv kind:function(arm,size=0x14) addr:0x0210b2dc +_ZN16MapObjectUnkSAND19func_ov031_0210b310Ev kind:function(arm,size=0x1c) addr:0x0210b2f0 +_ZN16MapObjectUnkSANDD1Ev kind:function(arm,size=0x20) addr:0x0210b30c +_ZN16MapObjectUnkSANDD0Ev kind:function(arm,size=0x28) addr:0x0210b32c _ZN23MapObjectProfileUnkSANDD1Ev kind:function(arm,size=0x14) addr:0x0210b354 _ZN23MapObjectProfileUnkSPTB10GetProfileEv kind:function(arm,size=0xc) addr:0x0210b368 _ZN23MapObjectProfileUnkSPTB6CreateEv kind:function(arm,size=0x24) addr:0x0210b374 @@ -2026,7 +2026,7 @@ data_ov031_02110b84 kind:data(any) addr:0x02110b84 data_ov031_02110b90 kind:data(any) addr:0x02110b90 data_ov031_02110b9c kind:data(any) addr:0x02110b9c data_ov031_02110bc8 kind:data(any) addr:0x02110ba8 local -data_ov031_02110bcc kind:data(any) addr:0x02110bcc +data_ov031_02110bec kind:data(any) addr:0x02110bcc data_ov031_02110be0 kind:data(any) addr:0x02110be0 data_ov031_02110bfc kind:data(any) addr:0x02110bfc data_ov031_02110c08 kind:data(any) addr:0x02110c08 @@ -2229,7 +2229,7 @@ data_ov031_02112a30 kind:data(any) addr:0x02112a30 data_ov031_02112a44 kind:data(any) addr:0x02112a44 _ZTV16MapObject_10_Pot kind:data(any) addr:0x02112a50 data_ov031_02112a80 kind:data(any) addr:0x02112a80 -_ZTV19data_ov031_02112ab4 kind:data(any) addr:0x02112aac +_ZTV24UnkStruct_ov031_02112ad4 kind:data(any) addr:0x02112aac data_ov031_02112ac0 kind:data(any) addr:0x02112ac0 data_ov031_02112adc kind:data(any) addr:0x02112adc data_ov031_02112af8 kind:data(any) addr:0x02112af8 @@ -2399,11 +2399,10 @@ _ZTV24ActorProfileTreasureDrop kind:data(any) addr:0x02114c3c _ZTV25ActorProfileRedPotionDrop kind:data(any) addr:0x02114c60 _ZTV20ActorProfileBombDrop kind:data(any) addr:0x02114c84 _ZTV13ActorItemDrop kind:data(any) addr:0x02114ca8 -data_ov031_02114d08 kind:data(any) addr:0x02114d08 +data_ov031_02114d28 kind:data(any) addr:0x02114d08 local _ZTV15ActorUnkMLCK_D8 kind:data(any) addr:0x02114d14 _ZTV19ActorProfileUnkMLCK kind:data(any) addr:0x02114d2c _ZTV12ActorUnkMLCK kind:data(any) addr:0x02114d50 -_ZTV15ActorUnkMLCK_94 kind:data(any) addr:0x02114dcc _ZTV19ActorProfileUnkCLLT kind:data(any) addr:0x02114dfc _ZTV12ActorUnkCLLT kind:data(any) addr:0x02114e20 _ZTV19ActorProfileUnkEFSB kind:data(any) addr:0x02114e8c @@ -2498,7 +2497,7 @@ data_ov031_02115f0c kind:data(any) addr:0x02115f0c data_ov031_02115f48 kind:data(any) addr:0x02115f48 _ZTV19data_ov031_02115f5c kind:data(any) addr:0x02115f54 data_ov031_02115f78 kind:data(any) addr:0x02115f78 -data_ov031_02115fc0 kind:data(any) addr:0x02115fc0 +data_ov031_02115fe0 kind:data(any) addr:0x02115fc0 data_ov031_02115fcc kind:data(any) addr:0x02115fcc ambiguous _ZTV19data_ov031_02115fe0 kind:data(any) addr:0x02115fd8 data_ov031_02115ffc kind:data(any) addr:0x02115ffc ambiguous @@ -2614,9 +2613,9 @@ _ZN15ProfileInstanceI25ActorProfileRedPotionDropE8sProfileE kind:bss addr:0x0211 _ZN15ProfileInstanceI24ActorProfileTreasureDropE8sProfileE kind:bss addr:0x02116ec8 _ZN15ProfileInstanceI21ActorProfileArrowDropE8sProfileE kind:bss addr:0x02116f04 _ZN15ProfileInstanceI20ActorProfileBombDropE8sProfileE kind:bss addr:0x02116f40 -data_ov031_02116f7c kind:bss addr:0x02116f7c -data_ov031_02116f80 kind:bss addr:0x02116f80 -data_ov031_02116f8c kind:bss addr:0x02116f8c +_ZGVN15ProfileInstanceI19ActorProfileUnkMLCKE8sProfileE kind:bss addr:0x02116f7c +@4770 kind:bss addr:0x02116f80 local +_ZN15ProfileInstanceI19ActorProfileUnkMLCKE8sProfileE kind:bss addr:0x02116f8c data_ov031_02116fc8 kind:bss addr:0x02116fc8 data_ov031_02116fcc kind:bss addr:0x02116fcc data_ov031_02116fd8 kind:bss addr:0x02116fd8 @@ -2735,10 +2734,10 @@ data_ov031_021188c8 kind:bss addr:0x021188c8 data_ov031_021188d4 kind:bss addr:0x021188d4 data_ov031_02118900 kind:bss addr:0x021188e0 data_ov031_021188f8 kind:bss addr:0x021188f8 -data_ov031_021189b0 kind:bss addr:0x021189b0 -data_ov031_02118a84 kind:bss addr:0x02118a84 -data_ov031_02118aa8 kind:bss addr:0x02118aa8 -data_ov031_02118acc kind:bss addr:0x02118acc +data_ov031_021189d0 kind:bss addr:0x021189b0 +data_ov031_02118aa4 kind:bss addr:0x02118a84 +data_ov031_02118ac8 kind:bss addr:0x02118aa8 +data_ov031_02118aec kind:bss addr:0x02118acc data_ov031_02118af0 kind:bss addr:0x02118af0 data_ov031_02118c70 kind:bss addr:0x02118c70 data_ov031_02118c78 kind:bss addr:0x02118c78 diff --git a/config/usa/arm9/overlays/ov032/delinks.txt b/config/usa/arm9/overlays/ov032/delinks.txt index 50ef07f8..de82297d 100644 --- a/config/usa/arm9/overlays/ov032/delinks.txt +++ b/config/usa/arm9/overlays/ov032/delinks.txt @@ -16,7 +16,7 @@ src/032_MapA1/Actor/ActorFleeingSpinut.cpp: .text start:0x0211b6ac end:0x0211db20 .init start:0x02121f80 end:0x02122000 .ctor start:0x02122110 end:0x02122114 - .data start:0x02122388 end:0x021224B8 + .data start:0x02122388 end:0x021224b8 .bss start:0x021228e8 end:0x02122954 src/032_MapA1/Actor/ActorUnkKETH.cpp: diff --git a/config/usa/arm9/overlays/ov032/relocs.txt b/config/usa/arm9/overlays/ov032/relocs.txt index a78bcb19..11ae4f5b 100644 --- a/config/usa/arm9/overlays/ov032/relocs.txt +++ b/config/usa/arm9/overlays/ov032/relocs.txt @@ -257,7 +257,7 @@ from:0x0211b6b4 kind:load to:0x02122910 module:overlay(32) from:0x0211b6c8 kind:arm_call to:0x02011f3c module:main from:0x0211b6d4 kind:arm_call to:0x0211b728 module:overlay(32) from:0x0211b6ec kind:arm_call to:0x02097994 module:overlay(0) -from:0x0211b724 kind:load to:0x02122434 module:overlay(32) add:0x8 +from:0x0211b724 kind:load to:0x02122434 add:0x8 module:overlay(32) from:0x0211b734 kind:arm_call to:0x02098b08 module:overlay(0) from:0x0211b798 kind:arm_call_thumb to:0x02057a04 module:overlay(0) from:0x0211b7c4 kind:arm_call_thumb to:0x0209a168 module:overlay(0) @@ -270,7 +270,7 @@ from:0x0211b888 kind:arm_call to:0x0205fc00 module:overlay(0) from:0x0211b8a0 kind:arm_call to:0x0205fc00 module:overlay(0) from:0x0211b8ac kind:arm_call to:0x0209860c module:overlay(0) from:0x0211b8c8 kind:arm_call to:0x0211bde4 module:overlay(32) -from:0x0211b8e8 kind:load to:0x02122458 module:overlay(32) add:0x8 +from:0x0211b8e8 kind:load to:0x02122458 add:0x8 module:overlay(32) from:0x0211b8ec kind:load to:0x02122910 module:overlay(32) from:0x0211b8f0 kind:load to:0x02122224 module:overlay(32) from:0x0211b8f4 kind:load to:0x02122904 module:overlay(32) diff --git a/config/usa/arm9/overlays/ov033/relocs.txt b/config/usa/arm9/overlays/ov033/relocs.txt index b5c9141b..353c5870 100644 --- a/config/usa/arm9/overlays/ov033/relocs.txt +++ b/config/usa/arm9/overlays/ov033/relocs.txt @@ -347,7 +347,7 @@ from:0x0211bd64 kind:arm_call to:0x0211bcd4 module:overlay(33) from:0x0211bd88 kind:load to:0x027e0ce0 module:dtcm from:0x0211bdb4 kind:arm_call to:0x01fff350 module:itcm from:0x0211bdf4 kind:load to:0x027e0ce4 module:dtcm -from:0x0211bdfc kind:load to:0x020b2fe0 module:overlay(0) +from:0x0211bdfc kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x0211be0c kind:arm_call_thumb to:0x02057eb4 module:overlay(0) from:0x0211be14 kind:arm_call_thumb to:0x02057eb4 module:overlay(0) from:0x0211be1c kind:arm_call to:0x0209d08c module:overlay(0) diff --git a/config/usa/arm9/overlays/ov034/relocs.txt b/config/usa/arm9/overlays/ov034/relocs.txt index 2a57c702..a7ae0302 100644 --- a/config/usa/arm9/overlays/ov034/relocs.txt +++ b/config/usa/arm9/overlays/ov034/relocs.txt @@ -234,7 +234,7 @@ from:0x0211ae68 kind:load to:0x027e09a4 module:dtcm from:0x0211ae98 kind:arm_call to:0x01fff350 module:itcm from:0x0211aeb4 kind:arm_call to:0x0211cccc module:overlay(34) from:0x0211aef4 kind:load to:0x027e0ce4 module:dtcm -from:0x0211aefc kind:load to:0x020b2fe0 module:overlay(0) +from:0x0211aefc kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x0211af7c kind:arm_call to:0x0207e0a8 module:overlay(0) from:0x0211af9c kind:arm_call to:0x0207e0a8 module:overlay(0) from:0x0211afa8 kind:arm_call to:0x0211c8c4 module:overlay(34) diff --git a/config/usa/arm9/overlays/ov037/relocs.txt b/config/usa/arm9/overlays/ov037/relocs.txt index 9b83c030..1fe30a76 100644 --- a/config/usa/arm9/overlays/ov037/relocs.txt +++ b/config/usa/arm9/overlays/ov037/relocs.txt @@ -155,7 +155,7 @@ from:0x0211a484 kind:arm_call to:0x01fff350 module:itcm from:0x0211a4a8 kind:arm_call to:0x0211e6b8 module:overlay(37) from:0x0211a4bc kind:arm_call to:0x01fff350 module:itcm from:0x0211a4d4 kind:load to:0x027e0ce4 module:dtcm -from:0x0211a4d8 kind:load to:0x020b2fe0 module:overlay(0) +from:0x0211a4d8 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x0211a58c kind:load to:0x02049bc4 module:main from:0x0211a5b0 kind:arm_call to:0x01fff148 module:itcm from:0x0211a5f0 kind:arm_call to:0x01ffbbe0 module:itcm @@ -450,7 +450,7 @@ from:0x0211e418 kind:arm_call to:0x0211e328 module:overlay(37) from:0x0211e424 kind:arm_call to:0x0211e328 module:overlay(37) from:0x0211e430 kind:arm_call to:0x0211e45c module:overlay(37) from:0x0211e43c kind:load to:0x027e0ce4 module:dtcm -from:0x0211e440 kind:load to:0x020b2fe0 module:overlay(0) +from:0x0211e440 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x0211e580 kind:arm_call to:0x02098694 module:overlay(0) from:0x0211e5a4 kind:arm_call to:0x01fff148 module:itcm from:0x0211e5b0 kind:arm_call to:0x01ff9a5c module:itcm @@ -630,7 +630,7 @@ from:0x0212055c kind:arm_call to:0x0212046c module:overlay(37) from:0x02120568 kind:arm_call to:0x0212046c module:overlay(37) from:0x02120574 kind:arm_call to:0x021205a0 module:overlay(37) from:0x02120580 kind:load to:0x027e0ce4 module:dtcm -from:0x02120584 kind:load to:0x020b2fe0 module:overlay(0) +from:0x02120584 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x0212064c kind:arm_call to:0x02098694 module:overlay(0) from:0x02120670 kind:arm_call to:0x01fff148 module:itcm from:0x0212067c kind:arm_call to:0x01ff9a5c module:itcm @@ -663,7 +663,7 @@ from:0x021209d4 kind:arm_call to:0x0209765c module:overlay(0) from:0x021209ec kind:load to:0x02122750 module:overlay(37) from:0x02120a18 kind:arm_call to:0x01fff350 module:itcm from:0x02120a38 kind:load to:0x027e0ce4 module:dtcm -from:0x02120a40 kind:load to:0x020b2fe0 module:overlay(0) +from:0x02120a40 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x02120a48 kind:arm_call to:0x021209f0 module:overlay(37) from:0x02120a78 kind:arm_call to:0x02098368 module:overlay(0) from:0x02120aa0 kind:arm_call to:0x0201bb10 module:main @@ -678,7 +678,7 @@ from:0x02120b9c kind:arm_call to:0x02016f94 module:main from:0x02120be0 kind:arm_call to:0x01fff350 module:itcm from:0x02120c04 kind:arm_call to:0x01fff350 module:itcm from:0x02120c1c kind:load to:0x027e0ce4 module:dtcm -from:0x02120c20 kind:load to:0x020b2fe0 module:overlay(0) +from:0x02120c20 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x02120c48 kind:arm_call to:0x02120c28 module:overlay(37) from:0x02120cf4 kind:arm_call to:0x021203e8 module:overlay(37) from:0x02120d00 kind:arm_call to:0x02016930 module:main diff --git a/config/usa/arm9/overlays/ov040/relocs.txt b/config/usa/arm9/overlays/ov040/relocs.txt index 722764bf..503cd792 100644 --- a/config/usa/arm9/overlays/ov040/relocs.txt +++ b/config/usa/arm9/overlays/ov040/relocs.txt @@ -264,7 +264,7 @@ from:0x02125518 kind:arm_call to:0x02126918 module:overlay(40) from:0x0212555c kind:arm_call to:0x0208bba4 module:overlay(0) from:0x02125568 kind:load to:0x027e09b8 module:dtcm from:0x0212556c kind:load to:0x027e0d34 module:dtcm -from:0x02125570 kind:load to:0x020b2fe0 module:overlay(0) +from:0x02125570 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x02125578 kind:load to:0x027e0ce4 module:dtcm from:0x02125584 kind:load to:0x027e09a8 module:dtcm from:0x02125588 kind:load to:0x027e09bc module:dtcm @@ -341,7 +341,7 @@ from:0x021262d0 kind:arm_call to:0x01ffb6e4 module:itcm from:0x021262e0 kind:arm_call to:0x02150c0c module:overlay(72) from:0x021262f4 kind:arm_call to:0x02150c0c module:overlay(72) from:0x02126314 kind:load to:0x027e09a4 module:dtcm -from:0x02126318 kind:load to:0x020b2fe0 module:overlay(0) +from:0x02126318 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x02126320 kind:load to:0x027e0ce4 module:dtcm from:0x0212636c kind:arm_call to:0x01ff9638 module:itcm from:0x02126394 kind:arm_call to:0x01ffb6e4 module:itcm @@ -353,7 +353,7 @@ from:0x021264ec kind:arm_call to:0x02080638 module:overlay(0) from:0x02126508 kind:arm_call to:0x02070a7c module:overlay(0) from:0x02126514 kind:arm_call to:0x020284f4 module:main from:0x02126520 kind:load to:0x027e09a4 module:dtcm -from:0x02126528 kind:load to:0x020b2fe0 module:overlay(0) +from:0x02126528 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x0212652c kind:load to:0x027e0ce4 module:dtcm from:0x02126530 kind:load to:0x027e0cd8 module:dtcm from:0x02126568 kind:arm_call to:0x01fff350 module:itcm @@ -361,16 +361,16 @@ from:0x021265dc kind:arm_call to:0x01ff9638 module:itcm from:0x021265fc kind:arm_call to:0x01ffb6e4 module:itcm from:0x02126668 kind:arm_call to:0x0211a3e4 module:overlay(39) from:0x02126674 kind:load to:0x027e0ce4 module:dtcm -from:0x02126678 kind:load to:0x020b2fe0 module:overlay(0) +from:0x02126678 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x02126680 kind:load to:0x027e09b8 module:dtcm from:0x021266bc kind:arm_call to:0x01fff350 module:itcm from:0x021266d8 kind:arm_call to:0x0211a440 module:overlay(39) from:0x021266e4 kind:load to:0x027e0ce4 module:dtcm -from:0x021266ec kind:load to:0x020b2fe0 module:overlay(0) +from:0x021266ec kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x02126720 kind:arm_call to:0x01fff350 module:itcm from:0x021267ac kind:arm_call to:0x0211a38c module:overlays(38,39) from:0x021267b8 kind:load to:0x027e0ce4 module:dtcm -from:0x021267bc kind:load to:0x020b2fe0 module:overlay(0) +from:0x021267bc kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x021267e0 kind:arm_call to:0x020732cc module:overlay(0) from:0x021267fc kind:arm_call to:0x02014478 module:main from:0x02126820 kind:arm_call to:0x02126430 module:overlay(40) @@ -382,13 +382,13 @@ from:0x0212687c kind:load to:0x02049b0a module:main from:0x021268b0 kind:arm_call to:0x01fff350 module:itcm from:0x02126900 kind:arm_call to:0x01ffb714 module:itcm from:0x0212690c kind:load to:0x027e0ce4 module:dtcm -from:0x02126910 kind:load to:0x020b2fe0 module:overlay(0) +from:0x02126910 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x0212694c kind:arm_call to:0x01fff350 module:itcm from:0x02126990 kind:arm_call to:0x01fff350 module:itcm from:0x021269f4 kind:arm_call to:0x01ff9638 module:itcm from:0x02126a04 kind:arm_call to:0x01ffb6e4 module:itcm from:0x02126a44 kind:load to:0x027e0ce4 module:dtcm -from:0x02126a48 kind:load to:0x020b2fe0 module:overlay(0) +from:0x02126a48 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x02126a6c kind:arm_call to:0x020732cc module:overlay(0) from:0x02126a88 kind:arm_call to:0x02014478 module:main from:0x02126ab0 kind:arm_call to:0x0201bb5c module:main diff --git a/config/usa/arm9/overlays/ov041/relocs.txt b/config/usa/arm9/overlays/ov041/relocs.txt index 0cc4b1f6..82adc502 100644 --- a/config/usa/arm9/overlays/ov041/relocs.txt +++ b/config/usa/arm9/overlays/ov041/relocs.txt @@ -28,7 +28,7 @@ from:0x02123744 kind:arm_call_thumb to:0x0209a228 module:overlay(0) from:0x0212375c kind:arm_call to:0x02124d98 module:overlay(41) from:0x02123780 kind:arm_call to:0x01fff350 module:itcm from:0x021237b8 kind:load to:0x027e0ce4 module:dtcm -from:0x021237c0 kind:load to:0x020b2fe0 module:overlay(0) +from:0x021237c0 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x021237d0 kind:arm_call to:0x02124e24 module:overlay(41) from:0x02123808 kind:load to:0x0212d9a4 module:overlay(41) from:0x02123888 kind:arm_call to:0x020bf874 module:overlay(17) @@ -125,7 +125,7 @@ from:0x02124224 kind:load to:0x0212dbec module:overlay(41) from:0x0212423c kind:arm_call to:0x02124d98 module:overlay(41) from:0x02124260 kind:arm_call to:0x01fff350 module:itcm from:0x02124298 kind:load to:0x027e0ce4 module:dtcm -from:0x021242a0 kind:load to:0x020b2fe0 module:overlay(0) +from:0x021242a0 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x021242b0 kind:arm_call to:0x02124e24 module:overlay(41) from:0x021242e8 kind:load to:0x0212dc5c module:overlay(41) from:0x02124368 kind:arm_call to:0x020bf874 module:overlay(17) @@ -482,7 +482,7 @@ from:0x02127dac kind:arm_call to:0x01fff350 module:itcm from:0x02127dd4 kind:arm_call to:0x020975d8 module:overlay(0) from:0x02127df4 kind:arm_call to:0x020973d4 module:overlay(0) from:0x02127e00 kind:load to:0x027e0ce4 module:dtcm -from:0x02127e04 kind:load to:0x020b2fe0 module:overlay(0) +from:0x02127e04 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x02127e0c kind:load to:0x020b537c module:overlay(0) from:0x02127e24 kind:arm_call to:0x02016f94 module:main from:0x02127e30 kind:arm_call to:0x0213f8bc module:overlay(70) @@ -1000,7 +1000,7 @@ from:0x0212bfd8 kind:arm_call to:0x01fff350 module:itcm from:0x0212c018 kind:arm_call to:0x01fff350 module:itcm from:0x0212c050 kind:load to:0x027e09b8 module:dtcm from:0x0212c054 kind:load to:0x027e0ce4 module:dtcm -from:0x0212c05c kind:load to:0x020b2fe0 module:overlay(0) +from:0x0212c05c kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x0212c094 kind:arm_call to:0x0209d414 module:overlay(0) from:0x0212c0d0 kind:arm_call to:0x0209d414 module:overlay(0) from:0x0212c0e4 kind:load to:0x0212e450 module:overlay(41) diff --git a/config/usa/arm9/overlays/ov045/relocs.txt b/config/usa/arm9/overlays/ov045/relocs.txt index cfccf08d..0f788591 100644 --- a/config/usa/arm9/overlays/ov045/relocs.txt +++ b/config/usa/arm9/overlays/ov045/relocs.txt @@ -106,7 +106,7 @@ from:0x02123f68 kind:arm_call to:0x021235ec module:overlay(45) from:0x02123f98 kind:arm_call to:0x0207e0a8 module:overlay(0) from:0x02123fb0 kind:arm_call to:0x0207e164 module:overlay(0) from:0x02123fc0 kind:load to:0x027e0ce4 module:dtcm -from:0x02123fc8 kind:load to:0x020b2fe0 module:overlay(0) +from:0x02123fc8 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x02123fcc kind:load to:0x027e09c0 module:dtcm from:0x02123fe8 kind:arm_call to:0x02078678 module:overlay(0) from:0x02124014 kind:arm_call to:0x02017e64 module:main diff --git a/config/usa/arm9/overlays/ov047/symbols.txt b/config/usa/arm9/overlays/ov047/symbols.txt index 560a044b..9ac0f5ec 100644 --- a/config/usa/arm9/overlays/ov047/symbols.txt +++ b/config/usa/arm9/overlays/ov047/symbols.txt @@ -1,7 +1,7 @@ _ZN29UnkStruct_027e0cd8_0C_Base_98C1Ev kind:function(arm,size=0x64) addr:0x02130480 _ZN29UnkStruct_027e0cd8_0C_Base_98D1Ev kind:function(arm,size=0x28) addr:0x021304e4 func_ov047_0213052c kind:function(arm,size=0x30) addr:0x0213050c -func_ov047_0213055c kind:function(arm,size=0x200) addr:0x0213053c +_ZN29UnkStruct_027e0cd8_0C_Base_9819func_ov047_0213055cEv kind:function(arm,size=0x200) addr:0x0213053c func_ov047_0213075c kind:function(arm,size=0x39c) addr:0x0213073c func_ov047_02130af8 kind:function(arm,size=0x3d8) addr:0x02130ad8 func_ov047_02130ed0 kind:function(arm,size=0x280) addr:0x02130eb0 diff --git a/config/usa/arm9/overlays/ov049/relocs.txt b/config/usa/arm9/overlays/ov049/relocs.txt index e58aadb3..6f8ace2a 100644 --- a/config/usa/arm9/overlays/ov049/relocs.txt +++ b/config/usa/arm9/overlays/ov049/relocs.txt @@ -462,13 +462,13 @@ from:0x02134290 kind:arm_call to:0x021326f4 module:overlay(49) from:0x021342a4 kind:arm_call to:0x01fff350 module:itcm from:0x021342c0 kind:load to:0x020d8690 module:overlay(24) from:0x021342c4 kind:load to:0x027e0ce4 module:dtcm -from:0x021342cc kind:load to:0x020b2fe0 module:overlay(0) +from:0x021342cc kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x02134320 kind:arm_call to:0x01fff350 module:itcm from:0x0213434c kind:arm_call to:0x02098634 module:overlay(0) from:0x02134378 kind:arm_call to:0x01fff350 module:itcm from:0x02134398 kind:load to:0x020d8690 module:overlay(24) from:0x0213439c kind:load to:0x027e0ce4 module:dtcm -from:0x021343a4 kind:load to:0x020b2fe0 module:overlay(0) +from:0x021343a4 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x021343c0 kind:load to:0x027e0d40 module:dtcm from:0x021343d4 kind:load to:0x027e0d40 module:dtcm from:0x021343e0 kind:arm_call to:0x021343c4 module:overlay(49) diff --git a/config/usa/arm9/overlays/ov051/relocs.txt b/config/usa/arm9/overlays/ov051/relocs.txt index cd5185f9..ca08947d 100644 --- a/config/usa/arm9/overlays/ov051/relocs.txt +++ b/config/usa/arm9/overlays/ov051/relocs.txt @@ -470,7 +470,7 @@ from:0x02135684 kind:arm_call to:0x01fff458 module:itcm from:0x02135694 kind:arm_call to:0x021355b8 module:overlay(51) from:0x021356a4 kind:arm_call to:0x01fff350 module:itcm from:0x021356c0 kind:load to:0x027e0ce4 module:dtcm -from:0x021356c4 kind:load to:0x020b2fe0 module:overlay(0) +from:0x021356c4 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x02135774 kind:arm_call to:0x01fff148 module:itcm from:0x02135780 kind:arm_call to:0x01ff9a5c module:itcm from:0x0213579c kind:load to:0x0203e93c module:main diff --git a/config/usa/arm9/overlays/ov057/relocs.txt b/config/usa/arm9/overlays/ov057/relocs.txt index 0c11421e..a080416f 100644 --- a/config/usa/arm9/overlays/ov057/relocs.txt +++ b/config/usa/arm9/overlays/ov057/relocs.txt @@ -348,7 +348,7 @@ from:0x0213b634 kind:arm_call to:0x0213b51c module:overlay(57) from:0x0213b63c kind:arm_call to:0x0213b5ac module:overlay(57) from:0x0213b64c kind:arm_call to:0x01fff350 module:itcm from:0x0213b66c kind:load to:0x027e0ce4 module:dtcm -from:0x0213b670 kind:load to:0x020b2fe0 module:overlay(0) +from:0x0213b670 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x0213b684 kind:load to:0x02057884 module:overlay(0) from:0x0213b698 kind:arm_call_thumb to:0x02099adc module:overlay(0) from:0x0213b6a0 kind:arm_call to:0x02011ff4 module:main diff --git a/config/usa/arm9/overlays/ov058/relocs.txt b/config/usa/arm9/overlays/ov058/relocs.txt index be1801aa..cf4fe7c5 100644 --- a/config/usa/arm9/overlays/ov058/relocs.txt +++ b/config/usa/arm9/overlays/ov058/relocs.txt @@ -1554,7 +1554,7 @@ from:0x0214d5f4 kind:arm_call to:0x0214ca98 module:overlay(58) from:0x0214d604 kind:arm_call to:0x0214cc60 module:overlay(58) from:0x0214d634 kind:arm_call to:0x01fff350 module:itcm from:0x0214d654 kind:load to:0x020d8690 module:overlay(24) -from:0x0214d658 kind:load to:0x020b2fe0 module:overlay(0) +from:0x0214d658 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x0214d660 kind:load to:0x027e0ce4 module:dtcm from:0x0214d670 kind:load to:0x027e0d4c module:dtcm from:0x0214d684 kind:load to:0x027e0d4c module:dtcm diff --git a/config/usa/arm9/overlays/ov059/relocs.txt b/config/usa/arm9/overlays/ov059/relocs.txt index 263dff94..34020f91 100644 --- a/config/usa/arm9/overlays/ov059/relocs.txt +++ b/config/usa/arm9/overlays/ov059/relocs.txt @@ -27,7 +27,7 @@ from:0x021581ac kind:arm_call to:0x01fff350 module:itcm from:0x021581c4 kind:arm_call to:0x02158994 module:overlay(59) from:0x021581d0 kind:arm_call to:0x02157fd8 module:overlay(59) from:0x021581dc kind:load to:0x027e0ce4 module:dtcm -from:0x021581e0 kind:load to:0x020b2fe0 module:overlay(0) +from:0x021581e0 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x02158200 kind:arm_call to:0x01fff3b4 module:itcm from:0x02158220 kind:arm_call to:0x02081d5c module:overlay(0) from:0x02158228 kind:load to:0x027e0ce4 module:dtcm @@ -45,7 +45,7 @@ from:0x02158410 kind:arm_call to:0x01fff350 module:itcm from:0x02158420 kind:arm_call to:0x01fff350 module:itcm from:0x0215844c kind:arm_call to:0x01fff350 module:itcm from:0x02158474 kind:load to:0x027e0ce4 module:dtcm -from:0x0215847c kind:load to:0x020b2fe0 module:overlay(0) +from:0x0215847c kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x02158530 kind:arm_call to:0x02158688 module:overlay(59) from:0x02158538 kind:arm_call to:0x02158544 module:overlay(59) from:0x021585bc kind:arm_call to:0x02158688 module:overlay(59) @@ -313,7 +313,7 @@ from:0x0215ab30 kind:arm_call to:0x02160b84 module:overlay(59) from:0x0215ab3c kind:load to:0x027e0ce4 module:dtcm from:0x0215ab40 kind:load to:0x027e0d5c module:dtcm from:0x0215ab48 kind:load to:0x027e09b8 module:dtcm -from:0x0215ab50 kind:load to:0x020b2fe0 module:overlay(0) +from:0x0215ab50 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x0215abb4 kind:load to:0x02163738 module:overlay(59) from:0x0215abd0 kind:arm_call to:0x01fff3b4 module:itcm from:0x0215abf0 kind:arm_call to:0x02015058 module:main @@ -448,7 +448,7 @@ from:0x0215bde4 kind:arm_call to:0x01fff350 module:itcm from:0x0215be0c kind:arm_call to:0x01fff350 module:itcm from:0x0215be44 kind:arm_call to:0x01fff350 module:itcm from:0x0215be64 kind:load to:0x027e0ce4 module:dtcm -from:0x0215be6c kind:load to:0x020b2fe0 module:overlay(0) +from:0x0215be6c kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x0215be94 kind:arm_call to:0x020169ac module:main from:0x0215bf4c kind:arm_call to:0x0207e438 module:overlay(0) from:0x0215bf70 kind:arm_call to:0x02071b10 module:overlay(0) @@ -786,7 +786,7 @@ from:0x0215eedc kind:arm_call to:0x020984b0 module:overlay(0) from:0x0215eeec kind:arm_call to:0x01fff350 module:itcm from:0x0215ef08 kind:load to:0x020b5198 module:overlay(0) from:0x0215ef14 kind:load to:0x027e09b8 module:dtcm -from:0x0215ef1c kind:load to:0x020b2fe0 module:overlay(0) +from:0x0215ef1c kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x0215ef20 kind:load to:0x027e0ce4 module:dtcm from:0x0215ef98 kind:arm_call to:0x020732cc module:overlay(0) from:0x0215eff4 kind:arm_call to:0x0208bba4 module:overlay(0) @@ -902,7 +902,7 @@ from:0x021602e4 kind:arm_call to:0x01fff350 module:itcm from:0x0216030c kind:arm_call to:0x01fff350 module:itcm from:0x02160338 kind:arm_call to:0x01fff350 module:itcm from:0x02160358 kind:load to:0x027e0ce4 module:dtcm -from:0x02160360 kind:load to:0x020b2fe0 module:overlay(0) +from:0x02160360 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x0216036c kind:arm_call_thumb to:0x02057bb4 module:overlay(0) from:0x02160374 kind:arm_call to:0x02011ff4 module:main from:0x0216038c kind:arm_call to:0x0207b6a0 module:overlay(0) diff --git a/config/usa/arm9/overlays/ov060/relocs.txt b/config/usa/arm9/overlays/ov060/relocs.txt index ae496a6c..364cc5fa 100644 --- a/config/usa/arm9/overlays/ov060/relocs.txt +++ b/config/usa/arm9/overlays/ov060/relocs.txt @@ -585,7 +585,7 @@ from:0x0215db64 kind:arm_call to:0x020782f4 module:overlay(0) from:0x0215db88 kind:arm_call to:0x01fff350 module:itcm from:0x0215dbd4 kind:load to:0x027e09bc module:dtcm from:0x0215dbd8 kind:load to:0x027e0ce4 module:dtcm -from:0x0215dbe0 kind:load to:0x020b2fe0 module:overlay(0) +from:0x0215dbe0 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x0215dbf0 kind:arm_call to:0x020f757c module:overlay(31) from:0x0215dc24 kind:arm_call to:0x02099fd8 module:overlay(0) from:0x0215dc30 kind:arm_call to:0x0205a7c0 module:overlay(0) diff --git a/config/usa/arm9/overlays/ov063/relocs.txt b/config/usa/arm9/overlays/ov063/relocs.txt index 22b1b398..bbc9ea1c 100644 --- a/config/usa/arm9/overlays/ov063/relocs.txt +++ b/config/usa/arm9/overlays/ov063/relocs.txt @@ -789,7 +789,7 @@ from:0x0215e0cc kind:arm_call to:0x0215e0d4 module:overlay(63) from:0x0215e128 kind:arm_call to:0x01fff350 module:itcm from:0x0215e15c kind:load to:0x02162630 module:overlay(63) from:0x0215e160 kind:load to:0x027e0ce4 module:dtcm -from:0x0215e164 kind:load to:0x020b2fe0 module:overlay(0) +from:0x0215e164 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x0215e180 kind:arm_call to:0x02018c04 module:main from:0x0215e194 kind:arm_call to:0x020c553c module:overlay(24) from:0x0215e19c kind:arm_call to:0x020c53c8 module:overlay(24) @@ -922,7 +922,7 @@ from:0x0215ed6c kind:load to:0x020b7ab5 module:overlays(8,9,12,13,15) from:0x0215edd0 kind:arm_call to:0x01fff350 module:itcm from:0x0215ede8 kind:arm_call to:0x021456b8 module:overlay(58) from:0x0215ee08 kind:load to:0x027e0ce4 module:dtcm -from:0x0215ee0c kind:load to:0x020b2fe0 module:overlay(0) +from:0x0215ee0c kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x0215ee10 kind:load to:0x0216261c module:overlay(63) from:0x0215ee1c kind:load to:0x0215ee20 module:overlay(63) from:0x0215ee54 kind:arm_call_thumb to:0x020b819c module:overlay(12) diff --git a/config/usa/arm9/overlays/ov066/relocs.txt b/config/usa/arm9/overlays/ov066/relocs.txt index 7d60550d..1ddd7561 100644 --- a/config/usa/arm9/overlays/ov066/relocs.txt +++ b/config/usa/arm9/overlays/ov066/relocs.txt @@ -482,7 +482,7 @@ from:0x0215b3a8 kind:arm_call to:0x02067a40 module:overlay(0) from:0x0215b3c4 kind:arm_call to:0x02067a40 module:overlay(0) from:0x0215b3e0 kind:arm_call to:0x02067a40 module:overlay(0) from:0x0215b3fc kind:load to:0x027e0ce4 module:dtcm -from:0x0215b400 kind:load to:0x020b2fe0 module:overlay(0) +from:0x0215b400 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x0215b408 kind:load to:0x020b502c module:overlay(0) from:0x0215b40c kind:load to:0x0215d7b8 module:overlay(66) from:0x0215b410 kind:load to:0x02049bbc module:main @@ -516,12 +516,12 @@ from:0x0215b8d0 kind:arm_call to:0x01fff350 module:itcm from:0x0215b8f0 kind:arm_call to:0x01fff3b4 module:itcm from:0x0215b900 kind:arm_call to:0x0215c7ec module:overlay(66) from:0x0215b90c kind:load to:0x027e0ce4 module:dtcm -from:0x0215b914 kind:load to:0x020b2fe0 module:overlay(0) +from:0x0215b914 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x0215b944 kind:arm_call to:0x01fff350 module:itcm from:0x0215b964 kind:arm_call to:0x01fff3b4 module:itcm from:0x0215b974 kind:arm_call to:0x0215c848 module:overlay(66) from:0x0215b980 kind:load to:0x027e0ce4 module:dtcm -from:0x0215b988 kind:load to:0x020b2fe0 module:overlay(0) +from:0x0215b988 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x0215b998 kind:arm_call to:0x0201666c module:main from:0x0215b9a0 kind:arm_call to:0x02158e54 module:overlay(66) from:0x0215b9a8 kind:arm_call to:0x02158e54 module:overlay(66) diff --git a/config/usa/arm9/overlays/ov068/relocs.txt b/config/usa/arm9/overlays/ov068/relocs.txt index 163b6c95..dc1d8f2e 100644 --- a/config/usa/arm9/overlays/ov068/relocs.txt +++ b/config/usa/arm9/overlays/ov068/relocs.txt @@ -54,7 +54,7 @@ from:0x021584b8 kind:arm_call to:0x01fff350 module:itcm from:0x021584e0 kind:arm_call to:0x0215d4e0 module:overlay(68) from:0x021584ec kind:arm_call to:0x0215dcac module:overlay(68) from:0x021584f8 kind:load to:0x027e0ce4 module:dtcm -from:0x02158500 kind:load to:0x020b2fe0 module:overlay(0) +from:0x02158500 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x02158504 kind:load to:0x027e0d6c module:dtcm from:0x02158508 kind:load to:0x02163fd4 module:overlay(68) from:0x02158530 kind:arm_call to:0x01fff3b4 module:itcm @@ -626,7 +626,7 @@ from:0x0215d5fc kind:load to:0x027e09b8 module:dtcm from:0x0215d630 kind:arm_call to:0x01fff350 module:itcm from:0x0215d654 kind:arm_call to:0x0209860c module:overlay(0) from:0x0215d660 kind:load to:0x027e0ce4 module:dtcm -from:0x0215d664 kind:load to:0x020b2fe0 module:overlay(0) +from:0x0215d664 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x0215d698 kind:arm_call to:0x020d44dc module:overlay(24) from:0x0215d6c4 kind:load to:0x027e0cfc module:dtcm from:0x0215d6ec kind:load to:0x01ffc6d4 module:itcm diff --git a/config/usa/arm9/overlays/ov070/symbols.txt b/config/usa/arm9/overlays/ov070/symbols.txt index 2de71f0b..d19cd33b 100644 --- a/config/usa/arm9/overlays/ov070/symbols.txt +++ b/config/usa/arm9/overlays/ov070/symbols.txt @@ -503,7 +503,7 @@ _ZN23MapObjectProfileUnkPTFLC1Ev kind:function(arm,size=0xa8) addr:0x0214b8ec _ZN16MapObjectUnkPTFLC1Ev kind:function(arm,size=0x80) addr:0x0214b994 _ZN16MapObjectUnkPTFL19func_ov070_0214ba34Ev kind:function(arm,size=0x144) addr:0x0214ba14 _ZN16MapObjectUnkPTFL19func_ov070_0214bb78Ev kind:function(arm,size=0x58) addr:0x0214bb58 -_ZN16MapObjectUnkPTFL19func_ov070_0214bbd0Ev kind:function(arm,size=0x178) addr:0x0214bbb0 +_ZN16MapObjectUnkPTFL19func_ov070_0214bbd0Esb kind:function(arm,size=0x178) addr:0x0214bbb0 _ZN16MapObjectUnkPTFL19func_ov070_0214bd48Ev kind:function(arm,size=0x48) addr:0x0214bd28 _ZN16MapObjectUnkPTFL19func_ov070_0214bd90Ev kind:function(arm,size=0x1c8) addr:0x0214bd70 _ZN16MapObjectUnkPTFL19func_ov070_0214bf58Ev kind:function(arm,size=0x4) addr:0x0214bf38 diff --git a/config/usa/arm9/overlays/ov071/relocs.txt b/config/usa/arm9/overlays/ov071/relocs.txt index acd14bbd..81079fce 100644 --- a/config/usa/arm9/overlays/ov071/relocs.txt +++ b/config/usa/arm9/overlays/ov071/relocs.txt @@ -1540,7 +1540,7 @@ from:0x0215f154 kind:arm_call to:0x01fff350 module:itcm from:0x0215f194 kind:arm_call to:0x0212912c module:overlay(42) from:0x0215f1a4 kind:arm_call to:0x01fff350 module:itcm from:0x0215f1c0 kind:load to:0x027e0ce4 module:dtcm -from:0x0215f1c8 kind:load to:0x020b2fe0 module:overlay(0) +from:0x0215f1c8 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x0215f1d8 kind:load to:0x027e0d70 module:dtcm from:0x0215f1ec kind:load to:0x027e0d70 module:dtcm from:0x0215f1f8 kind:load to:0x02165148 module:overlay(71) diff --git a/config/usa/arm9/overlays/ov072/relocs.txt b/config/usa/arm9/overlays/ov072/relocs.txt index f6d41848..ddf236c1 100644 --- a/config/usa/arm9/overlays/ov072/relocs.txt +++ b/config/usa/arm9/overlays/ov072/relocs.txt @@ -106,7 +106,7 @@ from:0x02151618 kind:load to:0x02049bc4 module:main from:0x0215161c kind:load to:0x027e09a8 module:dtcm from:0x02151628 kind:load to:0x020b502c module:overlay(0) from:0x0215162c kind:load to:0x027e0ce4 module:dtcm -from:0x02151634 kind:load to:0x020b2fe0 module:overlay(0) +from:0x02151634 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x02151638 kind:load to:0x0215251c module:overlay(72) from:0x0215166c kind:arm_call to:0x020732bc module:overlay(0) from:0x021516a8 kind:arm_call to:0x02078678 module:overlay(0) diff --git a/config/usa/arm9/overlays/ov073/relocs.txt b/config/usa/arm9/overlays/ov073/relocs.txt index 508e8fbc..c0ee1738 100644 --- a/config/usa/arm9/overlays/ov073/relocs.txt +++ b/config/usa/arm9/overlays/ov073/relocs.txt @@ -1822,7 +1822,7 @@ from:0x02163840 kind:load to:0x020aaec4 module:overlay(0) from:0x02163844 kind:load to:0x020aaecc module:overlay(0) from:0x02163848 kind:load to:0x020aaec8 module:overlay(0) from:0x0216384c kind:load to:0x027e0ce4 module:dtcm -from:0x02163850 kind:load to:0x020b2fe0 module:overlay(0) +from:0x02163850 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x02163858 kind:load to:0x020aae9c module:overlay(0) from:0x0216385c kind:load to:0x020aaea0 module:overlay(0) from:0x02163860 kind:load to:0x020aaea4 module:overlay(0) @@ -1843,7 +1843,7 @@ from:0x02163a20 kind:load to:0x020aaeb8 module:overlay(0) from:0x02163a24 kind:load to:0x020aaeb4 module:overlay(0) from:0x02163a28 kind:load to:0x027e0ce0 module:dtcm from:0x02163a2c kind:load to:0x027e0ce4 module:dtcm -from:0x02163a34 kind:load to:0x020b2fe0 module:overlay(0) +from:0x02163a34 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x02163a38 kind:load to:0x020aae98 module:overlay(0) from:0x02163a3c kind:load to:0x020aaec4 module:overlay(0) from:0x02163a40 kind:load to:0x020aaecc module:overlay(0) @@ -1864,7 +1864,7 @@ from:0x02163bec kind:arm_call to:0x01ffb6e4 module:itcm from:0x02163bf8 kind:load to:0x020aaeb8 module:overlay(0) from:0x02163bfc kind:load to:0x020aaeb4 module:overlay(0) from:0x02163c00 kind:load to:0x027e0ce0 module:dtcm -from:0x02163c04 kind:load to:0x020b2fe0 module:overlay(0) +from:0x02163c04 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x02163c0c kind:load to:0x027e0ce4 module:dtcm from:0x02163c10 kind:load to:0x020aae9c module:overlay(0) from:0x02163c14 kind:load to:0x020aaea0 module:overlay(0) diff --git a/config/usa/arm9/overlays/ov074/relocs.txt b/config/usa/arm9/overlays/ov074/relocs.txt index 113c2a43..f60f7510 100644 --- a/config/usa/arm9/overlays/ov074/relocs.txt +++ b/config/usa/arm9/overlays/ov074/relocs.txt @@ -1842,7 +1842,7 @@ from:0x02161b48 kind:arm_call to:0x01ffb428 module:itcm from:0x02161b64 kind:arm_call to:0x01ffb428 module:itcm from:0x02161ba0 kind:arm_call to:0x01fff350 module:itcm from:0x02161bbc kind:load to:0x027e0ce4 module:dtcm -from:0x02161bc0 kind:load to:0x020b2fe0 module:overlay(0) +from:0x02161bc0 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x02161bec kind:arm_call to:0x02078814 module:overlay(0) from:0x02161bf4 kind:load to:0x027e09bc module:dtcm from:0x02161c00 kind:arm_call to:0x020978ec module:overlay(0) diff --git a/config/usa/arm9/overlays/ov075/relocs.txt b/config/usa/arm9/overlays/ov075/relocs.txt index 6cc26606..c1d8a6f2 100644 --- a/config/usa/arm9/overlays/ov075/relocs.txt +++ b/config/usa/arm9/overlays/ov075/relocs.txt @@ -377,11 +377,11 @@ from:0x02154204 kind:arm_call to:0x02097994 module:overlay(0) from:0x02154240 kind:load to:0x02162a88 module:overlay(75) from:0x02154274 kind:arm_call to:0x01fff350 module:itcm from:0x02154294 kind:load to:0x027e0ce4 module:dtcm -from:0x0215429c kind:load to:0x020b2fe0 module:overlay(0) +from:0x0215429c kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x021542cc kind:arm_call to:0x01fff350 module:itcm from:0x02154304 kind:arm_call to:0x01fff350 module:itcm from:0x02154324 kind:load to:0x027e0ce4 module:dtcm -from:0x0215432c kind:load to:0x020b2fe0 module:overlay(0) +from:0x0215432c kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x02154340 kind:arm_call to:0x020974bc module:overlay(0) from:0x02154354 kind:load to:0x020b537c module:overlay(0) from:0x0215436c kind:arm_call to:0x02098b08 module:overlay(0) @@ -1791,7 +1791,7 @@ from:0x02161024 kind:arm_call to:0x01ff93c0 module:itcm from:0x02161038 kind:arm_call to:0x01ffb974 module:itcm from:0x0216104c kind:arm_call to:0x01ffb974 module:itcm from:0x021610b0 kind:arm_call to:0x020157f8 module:main -from:0x021610bc kind:load to:0x020b2fe0 module:overlay(0) +from:0x021610bc kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x021610c4 kind:load to:0x027e0ce4 module:dtcm from:0x021610c8 kind:load to:0x027e0ce0 module:dtcm from:0x02161100 kind:arm_call to:0x01fff350 module:itcm @@ -1801,7 +1801,7 @@ from:0x0216116c kind:arm_call to:0x01ff93c0 module:itcm from:0x02161180 kind:arm_call to:0x01ffb974 module:itcm from:0x02161194 kind:arm_call to:0x01ffb974 module:itcm from:0x021611d4 kind:load to:0x027e0ce4 module:dtcm -from:0x021611d8 kind:load to:0x020b2fe0 module:overlay(0) +from:0x021611d8 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x021611e0 kind:load to:0x027e0ce0 module:dtcm from:0x0216122c kind:arm_call to:0x01ffb428 module:itcm from:0x0216123c kind:load to:0x020aae88 module:overlay(0) diff --git a/config/usa/arm9/overlays/ov078/relocs.txt b/config/usa/arm9/overlays/ov078/relocs.txt index 2cdfe47f..f9892468 100644 --- a/config/usa/arm9/overlays/ov078/relocs.txt +++ b/config/usa/arm9/overlays/ov078/relocs.txt @@ -856,7 +856,7 @@ from:0x0215c09c kind:load to:0x0203e93c module:main from:0x0215c0d0 kind:arm_call to:0x01fff350 module:itcm from:0x0215c100 kind:arm_call to:0x01fff350 module:itcm from:0x0215c124 kind:load to:0x027e0ce4 module:dtcm -from:0x0215c12c kind:load to:0x020b2fe0 module:overlay(0) +from:0x0215c12c kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x0215c16c kind:arm_call_thumb to:0x01ffa184 module:itcm from:0x0215c198 kind:arm_call_thumb to:0x01ffa1a0 module:itcm from:0x0215c1ac kind:arm_call to:0x01ffa60c module:itcm @@ -1027,7 +1027,7 @@ from:0x0215d348 kind:load to:0x027e0ce0 module:dtcm from:0x0215d34c kind:load to:0x027e0cd8 module:dtcm from:0x0215d350 kind:load to:0x027e09b8 module:dtcm from:0x0215d354 kind:load to:0x027e0ce4 module:dtcm -from:0x0215d35c kind:load to:0x020b2fe0 module:overlay(0) +from:0x0215d35c kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x0215d360 kind:load to:0x020aae74 module:overlay(0) from:0x0215d380 kind:load to:0x020aaed4 module:overlay(0) from:0x0215d384 kind:load to:0x020aaed0 module:overlay(0) diff --git a/config/usa/arm9/overlays/ov080/relocs.txt b/config/usa/arm9/overlays/ov080/relocs.txt index 5da75c46..e4c377f9 100644 --- a/config/usa/arm9/overlays/ov080/relocs.txt +++ b/config/usa/arm9/overlays/ov080/relocs.txt @@ -1063,7 +1063,7 @@ from:0x0215bfb8 kind:arm_call to:0x01fff350 module:itcm from:0x0215bfe4 kind:arm_call to:0x0215d0bc module:overlay(80) from:0x0215bff4 kind:arm_call to:0x01fff350 module:itcm from:0x0215c010 kind:load to:0x027e0ce4 module:dtcm -from:0x0215c018 kind:load to:0x020b2fe0 module:overlay(0) +from:0x0215c018 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x0215c03c kind:arm_call to:0x020d95fc module:overlay(31) from:0x0215c048 kind:arm_call to:0x01fff3b4 module:itcm from:0x0215c054 kind:arm_call to:0x020984b0 module:overlay(0) diff --git a/config/usa/arm9/overlays/ov081/relocs.txt b/config/usa/arm9/overlays/ov081/relocs.txt index f8c8c07d..bd1029c3 100644 --- a/config/usa/arm9/overlays/ov081/relocs.txt +++ b/config/usa/arm9/overlays/ov081/relocs.txt @@ -90,7 +90,7 @@ from:0x021518ec kind:arm_call to:0x01fff498 module:itcm from:0x021518f8 kind:arm_call to:0x021525e0 module:overlay(81) from:0x02151904 kind:arm_call to:0x02151108 module:overlay(81) from:0x02151910 kind:load to:0x027e0ce4 module:dtcm -from:0x02151918 kind:load to:0x020b2fe0 module:overlay(0) +from:0x02151918 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x0215191c kind:load to:0x027e0ce0 module:dtcm from:0x02151920 kind:load to:0x027e0ce8 module:dtcm from:0x0215195c kind:arm_call to:0x02150e4c module:overlay(81) diff --git a/config/usa/arm9/overlays/ov083/relocs.txt b/config/usa/arm9/overlays/ov083/relocs.txt index ef5a6fbd..a880729e 100644 --- a/config/usa/arm9/overlays/ov083/relocs.txt +++ b/config/usa/arm9/overlays/ov083/relocs.txt @@ -226,11 +226,11 @@ from:0x02154be4 kind:load to:0x0203e93c module:main from:0x02154c10 kind:arm_call to:0x01fff350 module:itcm from:0x02154c2c kind:arm_call to:0x0215bea4 module:overlay(83) from:0x02154c38 kind:load to:0x027e0ce4 module:dtcm -from:0x02154c40 kind:load to:0x020b2fe0 module:overlay(0) +from:0x02154c40 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x02154c6c kind:arm_call to:0x01fff350 module:itcm from:0x02154c88 kind:arm_call to:0x0215bdcc module:overlay(83) from:0x02154c94 kind:load to:0x027e0ce4 module:dtcm -from:0x02154c9c kind:load to:0x020b2fe0 module:overlay(0) +from:0x02154c9c kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x02154cc8 kind:arm_call to:0x01ffaf74 module:itcm from:0x02154cf4 kind:arm_call to:0x0209fe8c module:overlay(0) from:0x02154d10 kind:arm_call to:0x0209fe8c module:overlay(0) @@ -312,7 +312,7 @@ from:0x02155a98 kind:load to:0x0215d8b8 module:overlay(83) from:0x02155a9c kind:load to:0x027e09b8 module:dtcm from:0x02155aa0 kind:load to:0x020b5198 module:overlay(0) from:0x02155aa4 kind:load to:0x027e0d34 module:dtcm -from:0x02155aac kind:load to:0x020b2fe0 module:overlay(0) +from:0x02155aac kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x02155ab0 kind:load to:0x027e0ce4 module:dtcm from:0x02155ab4 kind:load to:0x027e09ac module:dtcm from:0x02155b24 kind:arm_call to:0x020a7f24 module:overlay(0) @@ -390,7 +390,7 @@ from:0x021565e0 kind:arm_call to:0x020726d0 module:overlay(0) from:0x021565f4 kind:load to:0x027e09b8 module:dtcm from:0x021565f8 kind:load to:0x020b5198 module:overlay(0) from:0x021565fc kind:load to:0x027e0d34 module:dtcm -from:0x02156604 kind:load to:0x020b2fe0 module:overlay(0) +from:0x02156604 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x02156608 kind:load to:0x027e0ce4 module:dtcm from:0x0215660c kind:load to:0x027e09ac module:dtcm from:0x0215667c kind:arm_call to:0x020a7f24 module:overlay(0) diff --git a/config/usa/arm9/overlays/ov084/relocs.txt b/config/usa/arm9/overlays/ov084/relocs.txt index 22c4a9cf..14f98c2c 100644 --- a/config/usa/arm9/overlays/ov084/relocs.txt +++ b/config/usa/arm9/overlays/ov084/relocs.txt @@ -248,7 +248,7 @@ from:0x021533c4 kind:load to:0x02162a90 module:overlay(84) from:0x021533c8 kind:load to:0x027e09c0 module:dtcm from:0x021533f8 kind:arm_call to:0x01fff350 module:itcm from:0x0215341c kind:load to:0x027e0ce4 module:dtcm -from:0x02153424 kind:load to:0x020b2fe0 module:overlay(0) +from:0x02153424 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x02153458 kind:arm_call to:0x01ffb428 module:itcm from:0x02153478 kind:arm_call to:0x020d99dc module:overlay(31) from:0x0215349c kind:arm_call to:0x02078210 module:overlay(0) @@ -336,7 +336,7 @@ from:0x02154170 kind:arm_call to:0x02160f64 module:overlay(84) from:0x021541a8 kind:arm_call to:0x020973d4 module:overlay(0) from:0x021541b8 kind:load to:0x027e0cd8 module:dtcm from:0x021541bc kind:load to:0x027e0ce4 module:dtcm -from:0x021541c0 kind:load to:0x020b2fe0 module:overlay(0) +from:0x021541c0 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x021541c8 kind:load to:0x02049bc4 module:main from:0x021541cc kind:load to:0x020b537c module:overlay(0) from:0x021541f8 kind:arm_call to:0x02153fe0 module:overlay(84) @@ -567,7 +567,7 @@ from:0x02156680 kind:arm_call to:0x021596f8 module:overlay(84) from:0x021566a0 kind:arm_call to:0x02096ce0 module:overlay(0) from:0x02156734 kind:arm_call to:0x021558e4 module:overlay(84) from:0x02156760 kind:load to:0x027e0ce4 module:dtcm -from:0x02156764 kind:load to:0x020b2fe0 module:overlay(0) +from:0x02156764 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x0215676c kind:load to:0x02049bc4 module:main from:0x02156788 kind:arm_call to:0x02155698 module:overlay(84) from:0x021567c8 kind:arm_call to:0x02096ce0 module:overlay(0) diff --git a/config/usa/arm9/overlays/ov087/relocs.txt b/config/usa/arm9/overlays/ov087/relocs.txt index af3cd07c..59f51306 100644 --- a/config/usa/arm9/overlays/ov087/relocs.txt +++ b/config/usa/arm9/overlays/ov087/relocs.txt @@ -474,7 +474,7 @@ from:0x02158e24 kind:arm_call to:0x020975d8 module:overlay(0) from:0x02158e6c kind:arm_call to:0x020973d4 module:overlay(0) from:0x02158e80 kind:arm_call to:0x02150e90 module:overlay(85) from:0x02158e8c kind:load to:0x027e0ce4 module:dtcm -from:0x02158e94 kind:load to:0x020b2fe0 module:overlay(0) +from:0x02158e94 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x02158e98 kind:load to:0x027e09bc module:dtcm from:0x02158e9c kind:load to:0x020b537c module:overlay(0) from:0x02158ec4 kind:arm_call to:0x020975d8 module:overlay(0) @@ -485,7 +485,7 @@ from:0x02158f40 kind:load to:0x02078b08 module:overlay(0) from:0x02158f78 kind:arm_call to:0x01fff350 module:itcm from:0x02158fc0 kind:arm_call to:0x01fff350 module:itcm from:0x02158fe0 kind:load to:0x027e0ce4 module:dtcm -from:0x02158fe8 kind:load to:0x020b2fe0 module:overlay(0) +from:0x02158fe8 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x021591b0 kind:load to:0x02049bc4 module:main from:0x02159254 kind:arm_call to:0x01ffb6e4 module:itcm from:0x0215929c kind:arm_call to:0x01ffb6e4 module:itcm @@ -617,7 +617,7 @@ from:0x0215ae24 kind:arm_call to:0x02152d28 module:overlay(85) from:0x0215ae34 kind:arm_call to:0x01fff350 module:itcm from:0x0215ae50 kind:load to:0x027e09a8 module:dtcm from:0x0215ae58 kind:load to:0x027e0ce4 module:dtcm -from:0x0215ae60 kind:load to:0x020b2fe0 module:overlay(0) +from:0x0215ae60 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x0215ae9c kind:arm_call to:0x02015058 module:main from:0x0215aebc kind:arm_call to:0x02071b10 module:overlay(0) from:0x0215aef0 kind:arm_call to:0x02015058 module:main @@ -1035,7 +1035,7 @@ from:0x0215e4ec kind:load to:0x02161f0c module:overlay(87) from:0x0215e4f0 kind:load to:0x0216265c module:overlay(87) from:0x0215e4f4 kind:load to:0x027e0cd8 module:dtcm from:0x0215e4f8 kind:load to:0x027e0ce4 module:dtcm -from:0x0215e500 kind:load to:0x020b2fe0 module:overlay(0) +from:0x0215e500 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x0215e504 kind:load to:0x027e0ce8 module:dtcm from:0x0215e50c kind:load to:0x020b34a4 module:overlay(0) from:0x0215e574 kind:arm_call to:0x020732cc module:overlay(0) diff --git a/config/usa/arm9/overlays/ov088/relocs.txt b/config/usa/arm9/overlays/ov088/relocs.txt index d65ac85d..9a9b23b5 100644 --- a/config/usa/arm9/overlays/ov088/relocs.txt +++ b/config/usa/arm9/overlays/ov088/relocs.txt @@ -203,7 +203,7 @@ from:0x02166eb8 kind:load to:0x027e0994 module:dtcm from:0x02166ebc kind:load to:0x021771f8 module:overlay(88) from:0x02166ec0 kind:load to:0x027e09a8 module:dtcm from:0x02166ec4 kind:load to:0x027e0ce4 module:dtcm -from:0x02166ecc kind:load to:0x020b2fe0 module:overlay(0) +from:0x02166ecc kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x02166ed0 kind:load to:0x027e0ce8 module:dtcm from:0x02166ed8 kind:load to:0x020b34a4 module:overlay(0) from:0x02166edc kind:load to:0x027e0ce0 module:dtcm @@ -233,7 +233,7 @@ from:0x02167308 kind:load to:0x027e0ce4 module:dtcm from:0x02167314 kind:load to:0x020b537c module:overlay(0) from:0x02167318 kind:load to:0x02174208 module:overlay(88) from:0x02167324 kind:load to:0x027e09ac module:dtcm -from:0x02167334 kind:load to:0x020b2fe0 module:overlay(0) +from:0x02167334 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x02167360 kind:arm_call to:0x01fff3b4 module:itcm from:0x0216738c kind:load to:0x027e0ce4 module:dtcm from:0x021673a8 kind:arm_call to:0x01fff3b4 module:itcm diff --git a/config/usa/arm9/overlays/ov092/relocs.txt b/config/usa/arm9/overlays/ov092/relocs.txt index 8a36414f..dcd1b654 100644 --- a/config/usa/arm9/overlays/ov092/relocs.txt +++ b/config/usa/arm9/overlays/ov092/relocs.txt @@ -518,7 +518,7 @@ from:0x0216978c kind:arm_call to:0x01fff350 module:itcm from:0x021697e4 kind:arm_call to:0x01fff498 module:itcm from:0x02169820 kind:load to:0x027e09a4 module:dtcm from:0x02169824 kind:load to:0x027e0ce4 module:dtcm -from:0x0216982c kind:load to:0x020b2fe0 module:overlay(0) +from:0x0216982c kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x02169834 kind:load to:0x027e0ce8 module:dtcm from:0x02169970 kind:arm_call to:0x0216cee4 module:overlay(92) from:0x021699fc kind:load to:0x0217d7e0 module:overlay(92) diff --git a/config/usa/arm9/overlays/ov092/symbols.txt b/config/usa/arm9/overlays/ov092/symbols.txt index e1d7291f..324985e7 100644 --- a/config/usa/arm9/overlays/ov092/symbols.txt +++ b/config/usa/arm9/overlays/ov092/symbols.txt @@ -160,7 +160,7 @@ func_ov092_021688c8 kind:function(arm,size=0x2c) addr:0x021688a8 func_ov092_021688f4 kind:function(arm,size=0x2c) addr:0x021688d4 func_ov092_02168920 kind:function(arm,size=0xb4) addr:0x02168900 func_ov092_021689d4 kind:function(arm,size=0x14) addr:0x021689b4 -func_ov092_021689e8 kind:function(arm,size=0xac) addr:0x021689c8 +_ZN25UnkStruct_027e0ce0_40_14C19func_ov092_021689e8EiP21UnkStruct_027e0ce0_40P15PlayerLinkActorP25UnkStruct_027e0ce0_40_328 kind:function(arm,size=0xac) addr:0x021689c8 func_ov092_02168a94 kind:function(arm,size=0x28) addr:0x02168a74 func_ov092_02168abc kind:function(arm,size=0x118) addr:0x02168a9c func_ov092_02168bd4 kind:function(arm,size=0x2c) addr:0x02168bb4 diff --git a/config/usa/arm9/overlays/ov093/relocs.txt b/config/usa/arm9/overlays/ov093/relocs.txt index f599bf78..db23aca5 100644 --- a/config/usa/arm9/overlays/ov093/relocs.txt +++ b/config/usa/arm9/overlays/ov093/relocs.txt @@ -1158,7 +1158,7 @@ from:0x02171940 kind:arm_call to:0x02170fe4 module:overlay(93) from:0x02171948 kind:load to:0x02177d1c module:overlay(93) from:0x021719f4 kind:arm_call to:0x01fff350 module:itcm from:0x02171a30 kind:load to:0x027e0ce4 module:dtcm -from:0x02171a38 kind:load to:0x020b2fe0 module:overlay(0) +from:0x02171a38 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x02171a74 kind:load to:0x02177d1c module:overlay(93) from:0x02171ac4 kind:arm_call to:0x02170fe4 module:overlay(93) from:0x02171af4 kind:arm_call to:0x0216f338 module:overlay(93) diff --git a/config/usa/arm9/overlays/ov093/symbols.txt b/config/usa/arm9/overlays/ov093/symbols.txt index 20ea8f5b..3e6e8e6d 100644 --- a/config/usa/arm9/overlays/ov093/symbols.txt +++ b/config/usa/arm9/overlays/ov093/symbols.txt @@ -85,7 +85,7 @@ _ZN19func_ov093_02168004D0Ev kind:function(arm,size=0x1c) addr:0x02167fe4 func_ov093_02168020 kind:function(arm,size=0xdc) addr:0x02168000 func_ov093_021680fc kind:function(arm,size=0xa8) addr:0x021680dc func_ov093_021681a4 kind:function(arm,size=0x7c) addr:0x02168184 -func_ov093_02168220 kind:function(arm,size=0x38) addr:0x02168200 +_ZN21UnkStruct_027e0ce0_4019func_ov093_02168220Ev kind:function(arm,size=0x38) addr:0x02168200 func_ov093_02168258 kind:function(arm,size=0xb4) addr:0x02168238 func_ov093_0216830c kind:function(arm,size=0xfc) addr:0x021682ec func_ov093_02168408 kind:function(thumb,size=0x7c) addr:0x021683e8 @@ -98,7 +98,7 @@ _ZN25UnkStruct_027e0ce0_40_14CD1Ev kind:function(thumb,size=0x2) addr:0x0216882c _ZN25UnkStruct_027e0ce0_40_14C19func_ov093_02168850Ev kind:function(thumb,size=0x14) addr:0x02168830 func_ov093_02168864 kind:function(arm,size=0x184) addr:0x02168844 func_ov093_021689e8 kind:function(arm,size=0x43c) addr:0x021689c8 -func_ov093_02168e24 kind:function(arm,size=0x6c) addr:0x02168e04 +_ZN25UnkStruct_027e0ce0_40_14C19func_ov093_02168e24Ei kind:function(arm,size=0x6c) addr:0x02168e04 func_ov093_02168e90 kind:function(thumb,size=0xa) addr:0x02168e70 func_ov093_02168e9c kind:function(arm,size=0x24) addr:0x02168e7c func_ov093_02168ec0 kind:function(arm,size=0x9c) addr:0x02168ea0 @@ -162,7 +162,7 @@ _ZN19func_ov093_0216ccbcD0Ev kind:function(arm,size=0x1c) addr:0x0216cc9c func_ov093_0216ccd8 kind:function(thumb,size=0x14) addr:0x0216ccb8 func_ov093_0216ccec kind:function(arm,size=0x94) addr:0x0216cccc func_ov093_0216cd80 kind:function(arm,size=0xa4) addr:0x0216cd60 -func_ov093_0216ce24 kind:function(arm,size=0x3c) addr:0x0216ce04 +_ZN15PlayerLinkActor19func_ov093_0216ce24EPi kind:function(arm,size=0x3c) addr:0x0216ce04 _ZN25UnkStruct_027e0ce0_40_328C1EPvP21UnkStruct_027e0ce0_40P25UnkStruct_027e0ce0_40_150Pj kind:function(thumb,size=0x1bc) addr:0x0216ce40 _ZN25UnkStruct_027e0ce0_40_328D1Ev kind:function(thumb,size=0xb6) addr:0x0216cffc _ZN25UnkStruct_027e0ce0_40_32819func_ov093_0216d0d4Ev kind:function(thumb,size=0x8c) addr:0x0216d0b4 @@ -173,13 +173,13 @@ func_ov093_0216d3fc kind:function(arm,size=0x30) addr:0x0216d3dc func_ov093_0216d42c kind:function(arm,size=0x14) addr:0x0216d40c func_ov093_0216d440 kind:function(arm,size=0xb4) addr:0x0216d420 func_ov093_0216d4f4 kind:function(arm,size=0xc4) addr:0x0216d4d4 -func_ov093_0216d5b8 kind:function(arm,size=0x830) addr:0x0216d598 +_ZN25UnkStruct_027e0ce0_40_32819func_ov093_0216d5b8Ei kind:function(arm,size=0x830) addr:0x0216d598 func_ov093_0216dde8 kind:function(arm,size=0x48) addr:0x0216ddc8 -func_ov093_0216de30 kind:function(arm,size=0x98) addr:0x0216de10 -func_ov093_0216dec8 kind:function(arm,size=0x260) addr:0x0216dea8 +_ZN25UnkStruct_027e0ce0_40_32819func_ov093_0216de30Eii kind:function(arm,size=0x98) addr:0x0216de10 +_ZN25UnkStruct_027e0ce0_40_32819func_ov093_0216dec8Ei kind:function(arm,size=0x260) addr:0x0216dea8 func_ov093_0216e128 kind:function(arm,size=0x68) addr:0x0216e108 func_ov093_0216e190 kind:function(arm,size=0x14) addr:0x0216e170 -func_ov093_0216e1a4 kind:function(arm,size=0xfc) addr:0x0216e184 +_ZN25UnkStruct_027e0ce0_40_32819func_ov093_0216e1a4Ei kind:function(arm,size=0xfc) addr:0x0216e184 func_ov093_0216e2a0 kind:function(arm,size=0x18) addr:0x0216e280 func_ov093_0216e2b8 kind:function(arm,size=0x20) addr:0x0216e298 func_ov093_0216e2d8 kind:function(arm,size=0x20) addr:0x0216e2b8 @@ -218,7 +218,7 @@ func_ov093_0216f66c kind:function(thumb,size=0x10) addr:0x0216f64c func_ov093_0216f67c kind:function(thumb,size=0x10) addr:0x0216f65c func_ov093_0216f68c kind:function(thumb,size=0x7c) addr:0x0216f66c func_ov093_0216f708 kind:function(thumb,size=0x12) addr:0x0216f6e8 -func_ov093_0216f71c kind:function(thumb,size=0x50) addr:0x0216f6fc +_ZN25UnkStruct_027e0ce0_40_32819func_ov093_0216f71cEPi kind:function(thumb,size=0x50) addr:0x0216f6fc func_ov093_0216f76c kind:function(thumb,size=0xc) addr:0x0216f74c func_ov093_0216f778 kind:function(arm,size=0x78) addr:0x0216f758 func_ov093_0216f7f0 kind:function(arm,size=0x7c) addr:0x0216f7d0 diff --git a/config/usa/arm9/overlays/ov094/relocs.txt b/config/usa/arm9/overlays/ov094/relocs.txt index 878dd1d9..78c3ce1b 100644 --- a/config/usa/arm9/overlays/ov094/relocs.txt +++ b/config/usa/arm9/overlays/ov094/relocs.txt @@ -752,7 +752,7 @@ from:0x0216bdfc kind:load to:0x02049bc4 module:main from:0x0216be00 kind:load to:0x020b537c module:overlay(0) from:0x0216be08 kind:load to:0x02178a80 module:overlay(94) from:0x0216be0c kind:load to:0x027e0ce4 module:dtcm -from:0x0216be10 kind:load to:0x020b2fe0 module:overlay(0) +from:0x0216be10 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x0216be14 kind:load to:0x0203e93c module:main from:0x0216bef4 kind:arm_call to:0x02058fa4 module:overlay(0) from:0x0216bf1c kind:arm_call to:0x01ffc634 module:itcm @@ -1080,7 +1080,7 @@ from:0x0216eee4 kind:load to:0x020b537c module:overlay(0) from:0x0216ef18 kind:arm_call to:0x01fff350 module:itcm from:0x0216ef38 kind:arm_call to:0x0216f230 module:overlay(94) from:0x0216ef44 kind:load to:0x027e0ce4 module:dtcm -from:0x0216ef4c kind:load to:0x020b2fe0 module:overlay(0) +from:0x0216ef4c kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x0216ef5c kind:arm_call to:0x02098368 module:overlay(0) from:0x0216efb4 kind:arm_call_thumb to:0x02057b50 module:overlay(0) from:0x0216eff0 kind:arm_call to:0x0203d138 module:main diff --git a/config/usa/arm9/overlays/ov095/relocs.txt b/config/usa/arm9/overlays/ov095/relocs.txt index ee31749c..3ce16ac3 100644 --- a/config/usa/arm9/overlays/ov095/relocs.txt +++ b/config/usa/arm9/overlays/ov095/relocs.txt @@ -96,7 +96,7 @@ from:0x0217a524 kind:thumb_call to:0x0217a5a4 module:overlay(95) from:0x0217a52c kind:thumb_call_arm to:0x0215408c module:overlay(71) from:0x0217a536 kind:thumb_call to:0x020bba4c module:overlay(1) from:0x0217a55a kind:thumb_call to:0x0217a3ac module:overlay(95) -from:0x0217a564 kind:load to:0x020b2fe0 module:overlay(0) +from:0x0217a564 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x0217a56c kind:load to:0x027e0ce4 module:dtcm from:0x0217a570 kind:load to:0x027e0ce0 module:dtcm from:0x0217a5a0 kind:load to:0x027e09b8 module:dtcm @@ -514,7 +514,7 @@ from:0x0217d868 kind:arm_call to:0x021244cc module:overlay(45) from:0x0217d878 kind:arm_call to:0x0208cf00 module:overlay(0) from:0x0217d884 kind:load to:0x027e09a8 module:dtcm from:0x0217d88c kind:load to:0x027e0ce4 module:dtcm -from:0x0217d89c kind:load to:0x020b2fe0 module:overlay(0) +from:0x0217d89c kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x0217d8a0 kind:load to:0x02177cec module:overlays(89,90,91,93,94) from:0x0217d8e4 kind:arm_call to:0x01fff3b4 module:itcm from:0x0217d8f0 kind:arm_call to:0x01fff458 module:itcm diff --git a/config/usa/arm9/overlays/ov096/relocs.txt b/config/usa/arm9/overlays/ov096/relocs.txt index 231df08f..5046fca5 100644 --- a/config/usa/arm9/overlays/ov096/relocs.txt +++ b/config/usa/arm9/overlays/ov096/relocs.txt @@ -1,7 +1,7 @@ from:0x02179b2c kind:arm_call to:0x01fff350 module:itcm from:0x02179b48 kind:arm_call to:0x0217ace8 module:overlay(96) from:0x02179b90 kind:load to:0x027e0ce4 module:dtcm -from:0x02179b98 kind:load to:0x020b2fe0 module:overlay(0) +from:0x02179b98 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x02179bb4 kind:load to:0x027e0cd8 module:dtcm from:0x02179bb8 kind:load to:0x02081e10 module:overlay(0) from:0x02179bd2 kind:thumb_call_arm to:0x02081d5c module:overlay(0) @@ -20,7 +20,7 @@ from:0x02179d04 kind:thumb_call_arm to:0x0206c988 module:overlay(0) from:0x02179d16 kind:thumb_call_arm to:0x02070540 module:overlay(0) from:0x02179d2e kind:thumb_call_arm to:0x0206d160 module:overlay(0) from:0x02179d38 kind:load to:0x027e09a4 module:dtcm -from:0x02179d3c kind:load to:0x020b2fe0 module:overlay(0) +from:0x02179d3c kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x02179d44 kind:load to:0x027e0ce4 module:dtcm from:0x02179d48 kind:load to:0x020b5198 module:overlay(0) from:0x02179da8 kind:arm_call_thumb to:0x02179be8 module:overlay(96) diff --git a/config/usa/arm9/overlays/ov101/relocs.txt b/config/usa/arm9/overlays/ov101/relocs.txt index 7060b86e..82d37d22 100644 --- a/config/usa/arm9/overlays/ov101/relocs.txt +++ b/config/usa/arm9/overlays/ov101/relocs.txt @@ -79,7 +79,7 @@ from:0x02183194 kind:thumb_call to:0x020bcbb0 module:overlay(1) from:0x0218323e kind:thumb_call to:0x0216d1ac module:overlay(93) from:0x02183252 kind:thumb_call to:0x020bbf5c module:overlay(1) from:0x0218328c kind:thumb_call_arm to:0x01fff350 module:itcm -from:0x021832ac kind:load to:0x020b2fe0 module:overlay(0) +from:0x021832ac kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x021832b0 kind:load to:0x027e0ce4 module:dtcm from:0x021832bc kind:thumb_call to:0x020b6d38 module:overlay(1) from:0x021832d2 kind:thumb_call_arm to:0x02011ff4 module:main diff --git a/config/usa/arm9/overlays/ov101/symbols.txt b/config/usa/arm9/overlays/ov101/symbols.txt index f39411f1..6a063d2b 100644 --- a/config/usa/arm9/overlays/ov101/symbols.txt +++ b/config/usa/arm9/overlays/ov101/symbols.txt @@ -14,7 +14,7 @@ _ZN21UnkStruct_027e0ce0_40D1Ev kind:function(thumb,size=0x54) addr:0x02182f40 _ZN21UnkStruct_027e0ce0_4019func_ov101_02182fb4Eb kind:function(thumb,size=0x50) addr:0x02182f94 _ZN21UnkStruct_027e0ce0_4019func_ov101_02183004Ev kind:function(thumb,size=0x1e) addr:0x02182fe4 _ZN21UnkStruct_027e0ce0_4019func_ov101_02183024EPK24UnkStruct_ov001_020c40f4S2_iiP11ItemManagerP21UnkStruct_027e0ce0_30bb kind:function(thumb,size=0x260) addr:0x02183004 -_ZN21PlayerLinkActor_A0_1CC1Ei kind:function(thumb,size=0xc) addr:0x02183264 +_ZN21PlayerLinkActor_A0_1CC1EP21UnkStruct_027e0ce0_40 kind:function(thumb,size=0xc) addr:0x02183264 _ZN21PlayerLinkActor_A0_1C19func_ov101_02183290Ev kind:function(thumb,size=0x48) addr:0x02183270 _ZN30UnkStruct_027e09a4_54_Derived1C2EPi kind:function(thumb,size=0x50) addr:0x021832b8 _ZN30UnkStruct_027e09a4_54_Derived18vfunc_0CEv kind:function(thumb,size=0x134) addr:0x02183308 diff --git a/config/usa/arm9/overlays/ov102/delinks.txt b/config/usa/arm9/overlays/ov102/delinks.txt index f5606e1e..ad4aa77d 100644 --- a/config/usa/arm9/overlays/ov102/delinks.txt +++ b/config/usa/arm9/overlays/ov102/delinks.txt @@ -4,3 +4,26 @@ .ctor start:0x02184954 end:0x02184958 kind:rodata align:4 .data start:0x02184960 end:0x02184a20 kind:data align:32 .bss start:0x02184a20 end:0x02184a20 kind:bss align:32 + +src/102_CourseExecLand/UnkStruct_027e0ce0_40_102.cpp: + .text start:0x02182c00 end:0x021835a4 + +src/102_CourseExecLand/MapObjectUnkSAND_102.cpp: + complete + .text start:0x021835a4 end:0x02183bf4 + .rodata start:0x02184890 end:0x02184930 + +src/102_CourseExecLand/MapObjectUnkPTFL_102.cpp: + .text start:0x02183bf4 end:0x021845a8 + .data start:0x02184960 end:0x021849f0 + +src/102_CourseExecLand/UnkStruct_027e0cd8_0C_102.cpp: + complete + .text start:0x021845a8 end:0x02184624 + +src/102_CourseExecLand/ActorUnkMLCK_102.cpp: + complete + .text start:0x02184624 end:0x02184890 + .init start:0x02184930 end:0x02184954 + .ctor start:0x02184954 end:0x02184958 + .data start:0x021849f0 end:0x02184a20 diff --git a/config/usa/arm9/overlays/ov102/relocs.txt b/config/usa/arm9/overlays/ov102/relocs.txt index 605baa94..b422b3d5 100644 --- a/config/usa/arm9/overlays/ov102/relocs.txt +++ b/config/usa/arm9/overlays/ov102/relocs.txt @@ -156,7 +156,7 @@ from:0x02184764 kind:arm_call to:0x020732dc module:overlay(0) from:0x02184794 kind:load to:0x020d8690 module:overlay(24) from:0x02184798 kind:load to:0x027e0cf0 module:dtcm from:0x0218479c kind:load to:0x027e0ce4 module:dtcm -from:0x021847a0 kind:load to:0x02184a04 module:overlay(102) +from:0x021847a0 kind:load to:0x021849fc add:0x8 module:overlay(102) from:0x021847a8 kind:load to:0x020b5198 module:overlay(0) from:0x021847ac kind:load to:0x020b51a8 module:overlay(0) from:0x021847b0 kind:load to:0x027e09b8 module:dtcm diff --git a/config/usa/arm9/overlays/ov102/symbols.txt b/config/usa/arm9/overlays/ov102/symbols.txt index 45187d58..76cb9d44 100644 --- a/config/usa/arm9/overlays/ov102/symbols.txt +++ b/config/usa/arm9/overlays/ov102/symbols.txt @@ -1,39 +1,39 @@ -func_ov102_02182c20 kind:function(arm,size=0x64) addr:0x02182c00 -func_ov102_02182c84 kind:function(arm,size=0x1d0) addr:0x02182c64 -func_ov102_02182e54 kind:function(arm,size=0x154) addr:0x02182e34 -func_ov102_02182fa8 kind:function(arm,size=0x54) addr:0x02182f88 -func_ov102_02182ffc kind:function(arm,size=0x40) addr:0x02182fdc -func_ov102_0218303c kind:function(arm,size=0x144) addr:0x0218301c -func_ov102_02183180 kind:function(arm,size=0x34) addr:0x02183160 -func_ov102_021831b4 kind:function(arm,size=0x3c) addr:0x02183194 -func_ov102_021831f0 kind:function(arm,size=0x4c) addr:0x021831d0 -func_ov102_0218323c kind:function(arm,size=0x1d8) addr:0x0218321c -func_ov102_02183414 kind:function(arm,size=0x1b0) addr:0x021833f4 -func_ov102_021835c4 kind:function(arm,size=0x1e4) addr:0x021835a4 -func_ov102_021837a8 kind:function(arm,size=0x1c0) addr:0x02183788 -func_ov102_02183968 kind:function(arm,size=0x1c0) addr:0x02183948 -func_ov102_02183b28 kind:function(arm,size=0x48) addr:0x02183b08 -func_ov102_02183b70 kind:function(arm,size=0xa4) addr:0x02183b50 -func_ov102_02183c14 kind:function(arm,size=0x58) addr:0x02183bf4 -func_ov102_02183c6c kind:function(arm,size=0x28) addr:0x02183c4c -func_ov102_02183c94 kind:function(arm,size=0x110) addr:0x02183c74 -func_ov102_02183da4 kind:function(arm,size=0x44) addr:0x02183d84 -func_ov102_02183de8 kind:function(arm,size=0x180) addr:0x02183dc8 -func_ov102_02183f68 kind:function(arm,size=0x14) addr:0x02183f48 -func_ov102_02183f7c kind:function(arm,size=0x220) addr:0x02183f5c -func_ov102_0218419c kind:function(arm,size=0x218) addr:0x0218417c -func_ov102_021843b4 kind:function(arm,size=0x214) addr:0x02184394 -func_ov102_021845c8 kind:function(arm,size=0x60) addr:0x021845a8 -func_ov102_02184628 kind:function(arm,size=0x1c) addr:0x02184608 -_ZN20Actor_ov102_021849508vfunc_20Ev kind:function(arm,size=0x190) addr:0x02184624 -_ZN20Actor_ov102_021849508vfunc_24Ev kind:function(arm,size=0x14) addr:0x021847b4 -func_ov102_021847e8 kind:function(arm,size=0x78) addr:0x021847c8 -func_ov102_02184860 kind:function(arm,size=0x50) addr:0x02184840 -data_ov102_02184890 kind:data(any) addr:0x02184890 -data_ov102_021848d0 kind:data(any) addr:0x021848d0 -__sinit_ov102_02184930 kind:function(arm,size=0x24) addr:0x02184930 -.p__sinit_ov102_02184930 kind:data(word) addr:0x02184954 -data_ov102_02184960 kind:data(any) addr:0x02184960 -data_ov102_02184988 kind:data(any) addr:0x02184988 -data_ov102_021849f0 kind:data(any) addr:0x021849f0 -data_ov102_02184a04 kind:data(any) addr:0x02184a04 +_ZN18PlayerActorBase_7419func_ov102_02182c20EiP7Mat4x3p kind:function(arm,size=0x64) addr:0x02182c00 +_ZN18PlayerActorBase_7419func_ov102_02182c84Ebi14UnkAngleStructP7Mat4x3pS2_ kind:function(arm,size=0x1d0) addr:0x02182c64 +_ZN25UnkStruct_027e0ce0_40_10819func_ov102_02182e54Eiii kind:function(arm,size=0x154) addr:0x02182e34 +_ZN24UnkStruct_ItemManager_2019func_ov102_02182fa8Eii kind:function(arm,size=0x54) addr:0x02182f88 +_ZN24UnkStruct_ItemManager_2019func_ov102_02182ffcEi kind:function(arm,size=0x40) addr:0x02182fdc +_ZN21UnkStruct_027e0ce0_4019func_ov102_0218303cEiP11ItemManager kind:function(arm,size=0x144) addr:0x0218301c +_ZN21UnkStruct_027e0ce0_4019func_ov102_02183180Eib kind:function(arm,size=0x34) addr:0x02183160 +_ZN21UnkStruct_027e0ce0_4019func_ov102_021831b4Ei kind:function(arm,size=0x3c) addr:0x02183194 +_ZN21UnkStruct_027e0ce0_4019func_ov102_021831f0Ei kind:function(arm,size=0x4c) addr:0x021831d0 +_ZN29UnkStruct_027e0ce0_40_Base_7419func_ov102_0218323cEP29UnkStruct_027e0ce0_40_Base_14i kind:function(arm,size=0x1d8) addr:0x0218321c +_Z19func_ov102_02183414PsP21PlayerLinkActor_A0_1CbP7VecFx3214UnkAngleStructi kind:function(arm,size=0x1b0) addr:0x021833f4 +_ZN19MapObjectUnkSAND_4019func_ov102_021835c4EP7VecFx32 kind:function(arm,size=0x1e4) addr:0x021835a4 +_ZN19MapObjectUnkSAND_4019func_ov102_021837a8E8Vec2bCppP7VecFx32 kind:function(arm,size=0x1c0) addr:0x02183788 +_ZN16MapObjectUnkSAND8vfunc_08Ev kind:function(arm,size=0x1c0) addr:0x02183948 +_ZN16MapObjectUnkSAND8vfunc_0CEv kind:function(arm,size=0x48) addr:0x02183b08 +_ZN16MapObjectUnkSAND8vfunc_14Ev kind:function(arm,size=0xa4) addr:0x02183b50 +_Z19func_ov102_02183c14i kind:function(arm,size=0x58) addr:0x02183bf4 +_Z19func_ov102_02183c6ci kind:function(arm,size=0x28) addr:0x02183c4c +_Z19func_ov102_02183c94iiiiitttti kind:function(arm,size=0x110) addr:0x02183c74 +_Z19func_ov102_02183da4iiiiitttti kind:function(arm,size=0x44) addr:0x02183d84 +_ZN16MapObjectUnkPTFL8vfunc_08Ev kind:function(arm,size=0x180) addr:0x02183dc8 +_ZN16MapObjectUnkPTFL8vfunc_0CEv kind:function(arm,size=0x14) addr:0x02183f48 +_ZN16MapObjectUnkPTFL8vfunc_14Ev kind:function(arm,size=0x220) addr:0x02183f5c +_ZN16MapObjectUnkPTFL19func_ov102_0218419cEv kind:function(arm,size=0x218) addr:0x0218417c +_ZN16MapObjectUnkPTFL19func_ov102_021843b4Ev kind:function(arm,size=0x214) addr:0x02184394 +_ZN21UnkStruct_027e0cd8_0C8vfunc_0CEv kind:function(arm,size=0x60) addr:0x021845a8 +_ZN21UnkStruct_027e0cd8_0C19func_ov102_02184628Ev kind:function(arm,size=0x1c) addr:0x02184608 +_ZN12ActorUnkMLCK8vfunc_20Ev kind:function(arm,size=0x190) addr:0x02184624 +_ZN12ActorUnkMLCK8vfunc_24Ev kind:function(arm,size=0x14) addr:0x021847b4 +_ZN15ActorUnkMLCK_C419func_ov102_021847e8Eii kind:function(arm,size=0x78) addr:0x021847c8 +_ZN24UnkStruct_ov102_02184a248vfunc_00EP5Actor kind:function(arm,size=0x50) addr:0x02184840 +data_ov102_021848b0 kind:data(any) addr:0x02184890 local +data_ov102_021848f0 kind:data(any) addr:0x021848d0 local +__sinit_ActorUnkMLCK_102.cpp kind:function(arm,size=0x24) addr:0x02184930 local +.p__sinit_ActorUnkMLCK_102.cpp kind:data(word) addr:0x02184954 local +data_ov102_02184980 kind:data(any) addr:0x02184960 local +data_ov102_021849a8 kind:data(any) addr:0x02184988 local +data_ov102_02184a10 kind:data(any) addr:0x021849f0 local +_ZTV24UnkStruct_ov102_02184a24 kind:data(byte[12]) addr:0x021849fc diff --git a/config/usa/arm9/overlays/ov105/relocs.txt b/config/usa/arm9/overlays/ov105/relocs.txt index b60e20e2..dda4c430 100644 --- a/config/usa/arm9/overlays/ov105/relocs.txt +++ b/config/usa/arm9/overlays/ov105/relocs.txt @@ -280,7 +280,7 @@ from:0x02186b54 kind:arm_call to:0x02185368 module:overlay(105) from:0x02186bc0 kind:arm_call to:0x02082abc module:overlay(0) from:0x02186c20 kind:load to:0x027e09bc module:dtcm from:0x02186c24 kind:load to:0x027e0ce4 module:dtcm -from:0x02186c2c kind:load to:0x020b2fe0 module:overlay(0) +from:0x02186c2c kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x02186c30 kind:load to:0x0218a190 module:overlay(105) from:0x02186c34 kind:load to:0x0218a18c module:overlay(105) from:0x02186c38 kind:load to:0x027e09b8 module:dtcm @@ -430,7 +430,7 @@ from:0x02188308 kind:arm_call to:0x021878dc module:overlay(105) from:0x02188328 kind:arm_call to:0x01fff350 module:itcm from:0x02188364 kind:load to:0x027e0ce4 module:dtcm from:0x02188368 kind:load to:0x027e09bc module:dtcm -from:0x02188370 kind:load to:0x020b2fe0 module:overlay(0) +from:0x02188370 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x02188374 kind:load to:0x0218a2b8 module:overlay(105) from:0x02188378 kind:load to:0x0218a19c module:overlay(105) from:0x02188380 kind:load to:0x0203e93c module:main @@ -455,7 +455,7 @@ from:0x02188608 kind:load to:0x0218a188 module:overlay(105) from:0x0218860c kind:load to:0x0218a184 module:overlay(105) from:0x02188610 kind:load to:0x0218a180 module:overlay(105) from:0x02188614 kind:load to:0x027e0ce4 module:dtcm -from:0x0218861c kind:load to:0x020b2fe0 module:overlay(0) +from:0x0218861c kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x02188620 kind:load to:0x0218a120 module:overlay(105) from:0x02188624 kind:load to:0x0218a174 module:overlay(105) from:0x02188628 kind:load to:0x0218a178 module:overlay(105) @@ -601,7 +601,7 @@ from:0x02189d7c kind:arm_call to:0x020f5b74 module:overlay(31) from:0x02189d84 kind:arm_call to:0x020f4300 module:overlay(31) from:0x02189d94 kind:load to:0x021108d8 module:overlay(31) from:0x02189da0 kind:load to:0x027e0ce4 module:dtcm -from:0x02189da8 kind:load to:0x020b2fe0 module:overlay(0) +from:0x02189da8 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x02189dac kind:load to:0x0211091c module:overlay(31) from:0x02189db8 kind:load to:0x0203e93c module:main from:0x02189dc0 kind:load to:0x027e0ce0 module:dtcm diff --git a/config/usa/arm9/overlays/ov107/relocs.txt b/config/usa/arm9/overlays/ov107/relocs.txt index a8ffd58c..e6ac5534 100644 --- a/config/usa/arm9/overlays/ov107/relocs.txt +++ b/config/usa/arm9/overlays/ov107/relocs.txt @@ -166,7 +166,7 @@ from:0x02185fcc kind:arm_call to:0x020907a4 module:overlay(0) from:0x02185fd4 kind:load to:0x027e0cdc module:dtcm from:0x02186000 kind:arm_call to:0x01fff350 module:itcm from:0x02186020 kind:load to:0x027e0ce4 module:dtcm -from:0x02186028 kind:load to:0x020b2fe0 module:overlay(0) +from:0x02186028 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x02186048 kind:load to:0x0210b15c module:overlay(31) from:0x02186054 kind:arm_call to:0x0209cfc0 module:overlay(0) from:0x0218606c kind:arm_call to:0x0218602c module:overlay(107) diff --git a/config/usa/arm9/overlays/ov112/relocs.txt b/config/usa/arm9/overlays/ov112/relocs.txt index 1b9c5255..98094af4 100644 --- a/config/usa/arm9/overlays/ov112/relocs.txt +++ b/config/usa/arm9/overlays/ov112/relocs.txt @@ -45,7 +45,7 @@ from:0x02185710 kind:load to:0x0203f93c module:main from:0x02185714 kind:load to:0x027e0ce8 module:dtcm from:0x02185724 kind:load to:0x027e0ce4 module:dtcm from:0x02185740 kind:load to:0x027e09a4 module:dtcm -from:0x02185748 kind:load to:0x020b2fe0 module:overlay(0) +from:0x02185748 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x0218574c kind:load to:0x027e09b8 module:dtcm from:0x021857a4 kind:arm_call to:0x0208fdb4 module:overlay(0) from:0x021857b8 kind:arm_call to:0x020921c4 module:overlay(0) diff --git a/config/usa/arm9/relocs.txt b/config/usa/arm9/relocs.txt index bbfeb1b4..ecb2756a 100644 --- a/config/usa/arm9/relocs.txt +++ b/config/usa/arm9/relocs.txt @@ -2093,7 +2093,7 @@ from:0x02016ff8 kind:arm_call to:0x01fff350 module:itcm from:0x0201702c kind:arm_call to:0x01ffb9cc module:itcm from:0x02017054 kind:arm_call to:0x01fff350 module:itcm from:0x0201707c kind:load to:0x027e0ce4 module:dtcm -from:0x02017080 kind:load to:0x020b2fe0 module:overlay(0) +from:0x02017080 kind:load to:0x020b2fd8 add:0x8 module:overlay(0) from:0x020170a4 kind:arm_call to:0x01fff520 module:itcm from:0x020170c8 kind:arm_call to:0x01ffb9cc module:itcm from:0x020170f4 kind:arm_call to:0x01ffb9cc module:itcm diff --git a/config/usa/arm9/symbols.txt b/config/usa/arm9/symbols.txt index 28cc4fe7..1a7252b0 100644 --- a/config/usa/arm9/symbols.txt +++ b/config/usa/arm9/symbols.txt @@ -145,7 +145,7 @@ func_02002e78 kind:function(arm,size=0x20) addr:0x02002e78 func_02002e98 kind:function(arm,size=0x20) addr:0x02002e98 func_02002eb8 kind:function(arm,size=0x20) addr:0x02002eb8 NNS_Snd_func_0206617c kind:function(arm,size=0x2c) addr:0x02002ed8 -func_02002f04 kind:function(arm,size=0x28) addr:0x02002f04 +_ZN24UnkStruct_ov000_020b51c013func_02002f04Ev kind:function(arm,size=0x28) addr:0x02002f04 func_02002f2c kind:function(arm,size=0x28) addr:0x02002f2c func_02002f54 kind:function(arm,size=0x48) addr:0x02002f54 func_02002f9c kind:function(arm,size=0x28) addr:0x02002f9c diff --git a/docs/images/double_inheritance_vtable.png b/docs/images/double_inheritance_vtable.png new file mode 100644 index 0000000000000000000000000000000000000000..c6fd6ee5768317fad86af482d8ceddbdb4187b80 GIT binary patch literal 233388 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

$br73}U;rYd7TH@=Py_8k|~Qf8h&o}My} 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%0Dv`( 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 literal 0 HcmV?d00001 diff --git a/docs/images/double_inheritance_vthunk.png b/docs/images/double_inheritance_vthunk.png new file mode 100644 index 0000000000000000000000000000000000000000..711ec2405ba4b4f7b0e6892b00401a9c706ee080 GIT binary patch literal 52968 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%0Diol?|&R8Q{!R$F*yDvc=J$Lt%8fq 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, MapObjFlag_Alive); + } + MapObject(); MapObjectId GetMapObjectId(); diff --git a/include/MapObject/MapObjectDoorClick.hpp b/include/MapObject/MapObjectDoorClick.hpp index 769daeed..02e58e54 100644 --- a/include/MapObject/MapObjectDoorClick.hpp +++ b/include/MapObject/MapObjectDoorClick.hpp @@ -34,10 +34,6 @@ class MapObjectDoorClick : public MapObjectDoorBase { public: /* 00 (base) */ /* 94 */ UnkSystem6_Derived2 mUnk_94; - /* 9C */ unk8 mUnk_9C; // bool? - /* 9D */ unk8 mUnk_9D; // pad? - /* 9E */ unk8 mUnk_9E; // pad? - /* 9F */ unk8 mUnk_9F; // pad? /* A0 */ UnkStruct_PlayerGet_ec mUnk_A0; /* A0 */ unk32 mUnk_A4; /* A8 */ MapObject_10 mUnk_A8; diff --git a/include/MapObject/MapObjectDoorDangerSpawn.hpp b/include/MapObject/MapObjectDoorDangerSpawn.hpp index a36acaa9..18b1753e 100644 --- a/include/MapObject/MapObjectDoorDangerSpawn.hpp +++ b/include/MapObject/MapObjectDoorDangerSpawn.hpp @@ -44,10 +44,6 @@ class MapObjectDoorDangerSpawn : public MapObjectDoorBase { public: /* 00 (base) */ /* 94 */ UnkSystem6_Derived2 mUnk_94; - /* 9C */ unk8 mUnk_9C; - /* 9D */ unk8 mUnk_9D; - /* 9E */ unk8 mUnk_9E; - /* 9F */ unk8 mUnk_9F; /* A0 */ unk8 mUnk_A0; /* A1 */ bool mUnk_A1; /* A2 */ bool mUnk_A2; diff --git a/include/MapObject/MapObjectDoorKey.hpp b/include/MapObject/MapObjectDoorKey.hpp index 177f909a..c6805c43 100644 --- a/include/MapObject/MapObjectDoorKey.hpp +++ b/include/MapObject/MapObjectDoorKey.hpp @@ -23,10 +23,6 @@ class MapObjectDoorKey : public MapObjectDoorBase { public: /* 00 (base) */ /* 94 */ UnkSystem6_Derived2 mUnk_94; - /* 9C */ unk8 mUnk_9C; - /* 9D */ unk8 mUnk_9D; // pad? - /* 9E */ unk8 mUnk_9E; // pad? - /* 9F */ unk8 mUnk_9F; // pad? /* A0 */ UnkStruct_PlayerGet_ec mUnk_A0; /* A4 */ bool mUnk_A4; /* A5 */ unk8 mUnk_A5; // pad? diff --git a/include/MapObject/MapObjectMiniBlocks.hpp b/include/MapObject/MapObjectMiniBlocks.hpp index ff402d08..51343cd5 100644 --- a/include/MapObject/MapObjectMiniBlocks.hpp +++ b/include/MapObject/MapObjectMiniBlocks.hpp @@ -10,9 +10,6 @@ class MapObjectMiniBlocks : public MapObject { public: /* 00 (base) */ /* 40 */ UnkSystem6_Derived2 mUnk_40; - /* 48 */ unk8 mUnk_48; - /* 49 */ unk8 mUnk_49; // pad? - /* 4A */ unk16 mUnk_4A; // pad? /* 4C */ MapObjectMiniBlocks(); diff --git a/include/MapObject/MapObjectUnkPTFL.hpp b/include/MapObject/MapObjectUnkPTFL.hpp index cd97693e..07f6b186 100644 --- a/include/MapObject/MapObjectUnkPTFL.hpp +++ b/include/MapObject/MapObjectUnkPTFL.hpp @@ -5,26 +5,53 @@ #include "MapObject/MapObject.hpp" #include "MapObject/MapObjectProfile.hpp" #include "global.h" -#include "types.h" + +typedef MapObjState MapObjectUnkPTFLState; +enum MapObjectUnkPTFLState_ { + /* 0 */ MapObjectUnkPTFLState_0 = 0, + /* 1 */ MapObjectUnkPTFLState_1 = 1, + /* 2 */ MapObjectUnkPTFLState_2 = 2, + /* 3 */ MapObjectUnkPTFLState_3 = 3, + /* 4 */ MapObjectUnkPTFLState_4 = 4, +}; class MapObjectUnkPTFL : public MapObject { public: /* 00 (base) */ - /* 40 */ + /* 40 */ unk32 mUnk_40; + /* 44 */ u16 mUnk_44; + /* 46 */ unk16 mUnk_46; + /* 48 */ unk32 mUnk_48; + /* 4C */ unk32 mUnk_4C; + /* 50 */ unk32 mUnk_50; + /* 54 */ fx16 mUnk_54; + /* 56 */ volatile u16 mUnk_56; + /* 58 */ volatile u16 mUnk_58; + /* 5A */ u8 mUnk_5A; + /* 5B */ bool mUnk_5B; + /* 5C */ bool mUnk_5C; MapObjectUnkPTFL(); + /* 08 */ virtual void vfunc_08(); + /* 0C */ virtual void vfunc_0C(); + /* 0C */ virtual void vfunc_14(); /* 30 */ virtual ~MapObjectUnkPTFL() override; + // overlay 70 void func_ov070_0214ba34(void); void func_ov070_0214bb78(void); - void func_ov070_0214bbd0(void); + void func_ov070_0214bbd0(MapObjectUnkPTFLState state, bool param2); void func_ov070_0214bd48(void); void func_ov070_0214bd90(void); void func_ov070_0214bf58(void); - void func_ov070_0214bf5c(void); - void func_ov070_0214bf6c(void); + bool func_ov070_0214bf5c(void); + bool func_ov070_0214bf6c(void); void func_ov070_0214bfbc(void); + + // overlay 102 + void func_ov102_0218419c(); + void func_ov102_021843b4(); }; class MapObjectProfileUnkPTFL : public MapObjectProfile { diff --git a/include/MapObject/MapObjectUnkSAND.hpp b/include/MapObject/MapObjectUnkSAND.hpp index 8fcc759a..a809680a 100644 --- a/include/MapObject/MapObjectUnkSAND.hpp +++ b/include/MapObject/MapObjectUnkSAND.hpp @@ -2,23 +2,47 @@ #pragma once +#include "Actor/ActorUnkSCCN.hpp" #include "MapObject/MapObject.hpp" #include "MapObject/MapObjectProfile.hpp" #include "global.h" +#include "math.hpp" #include "types.h" +enum MapObjectUnkSANDState_ { + /* 0 */ MapObjectUnkSANDState_0 = 0, + /* 0 */ MapObjectUnkSANDState_1 = 1, +}; + +class MapObjectUnkSAND_40 { +public: + /* 00 */ u8 mUnk_00; + /* 01 */ u8 mUnk_01; + /* 02 */ unk16 mUnk_02; + /* 04 */ unk16 mUnk_04; + /* 06 */ + + void func_ov102_021835c4(VecFx32 *param1); + void func_ov102_021837a8(Vec2bCpp param1, VecFx32 *param2); +}; + class MapObjectUnkSAND : public MapObject { public: /* 00 (base) */ - /* 40 */ + /* 40 */ MapObjectUnkSAND_40 mUnk_40[2]; + /* 4C */ unk32 mUnk_4C; + /* 50 */ ActorUnkSCCN_B8 mUnk_50; + /* 60 */ VecFx32 mUnk_60; MapObjectUnkSAND(); + /* 08 */ virtual void vfunc_08(); + /* 0C */ virtual void vfunc_0C(); + /* 0C */ virtual void vfunc_14(); /* 30 */ virtual ~MapObjectUnkSAND() override; void func_ov031_0210acd4(void); void func_ov031_0210ad64(void); - void func_ov031_0210ae00(void); void func_ov031_0210ae90(void); void func_ov031_0210af50(void); void func_ov031_0210b018(void); @@ -26,11 +50,13 @@ public: void func_ov031_0210b0ac(void); void func_ov031_0210b0e4(void); void func_ov031_0210b144(void); - void func_ov031_0210b17c(void); void func_ov031_0210b1ec(void); void func_ov031_0210b2cc(void); void func_ov031_0210b32c(void); void func_ov031_0210b34c(void); + + static unk32 func_ov031_0210ae00(Vec2bCpp param1, void *param2); + static void func_ov031_0210b17c(MapObjectUnkSAND_40 *param1, unk32 param2); }; class MapObjectProfileUnkSAND : public MapObjectProfile_Derived6 { diff --git a/include/MapObject/MapObjectUnkSKDI.hpp b/include/MapObject/MapObjectUnkSKDI.hpp index 52d5cc5a..88935f9f 100644 --- a/include/MapObject/MapObjectUnkSKDI.hpp +++ b/include/MapObject/MapObjectUnkSKDI.hpp @@ -19,8 +19,6 @@ class MapObjectUnkSKDI : public MapObject { public: /* 000 (base) */ /* 040 */ UnkSystem6_Derived2 mUnk_040; - /* 048 */ unk8 mUnk_048; - /* 049 */ STRUCT_PAD(0x049, 0x04C); /* 04C */ ActorBomb_unk mUnk_04C[0x4]; /* 07C */ unk32 mUnk_07C; /* 080 */ unk32 mUnk_080; diff --git a/include/MapObject/MapObjectUnkSTAT.hpp b/include/MapObject/MapObjectUnkSTAT.hpp index 443b2f86..5f72fe3b 100644 --- a/include/MapObject/MapObjectUnkSTAT.hpp +++ b/include/MapObject/MapObjectUnkSTAT.hpp @@ -10,8 +10,6 @@ class MapObjectUnkSTAT : public MapObject { public: /* 00 (base) */ /* 40 */ UnkSystem6_Derived2 mUnk_40; - /* 48 */ unk8 mUnk_48; - /* 49 */ STRUCT_PAD(0x49, 0x4C); /* 4C */ unk32 mUnk_4C; /* 50 */ unk32 mUnk_50; /* 54 */ unk32 mUnk_54; diff --git a/include/Player/PlayerActorBase.hpp b/include/Player/PlayerActorBase.hpp index ee657f5d..a2198640 100644 --- a/include/Player/PlayerActorBase.hpp +++ b/include/Player/PlayerActorBase.hpp @@ -5,6 +5,7 @@ #include "Unknown/Common.hpp" #include "math.hpp" +#include "nitro/fx.h" #include "types.h" #include @@ -367,7 +368,9 @@ public: class PlayerActorBase_74 { private: - /* 00 */ STRUCT_PAD(0x00, 0x34); + /* 00 */ unk32 mUnk_00; + /* 04 */ VecFx32 mUnk_04[2]; + /* 1C */ VecFx32 mUnk_1C[2]; /* 34 */ public: @@ -375,7 +378,14 @@ public: this->func_ov001_020db190(); } + inline bool UnknownInline1(u32 index, VecFx32 *pVec); + + // overlay 1 void func_ov001_020db190(); + + // overlay 102 + void func_ov102_02182c20(unk32 param1, Mat4x3p *param2); + void func_ov102_02182c84(bool param1, unk32 param2, UnkAngleStruct param3, Mat4x3p *param4, Mat4x3p *param5); }; struct PlayerActorBase_78_04 { diff --git a/include/Player/PlayerLink.hpp b/include/Player/PlayerLink.hpp index 8cd60123..509e70e0 100644 --- a/include/Player/PlayerLink.hpp +++ b/include/Player/PlayerLink.hpp @@ -46,14 +46,14 @@ public: class PlayerLinkActor_A0_1C { public: - /* 00 */ unk32 mUnk_00; + /* 00 */ UnkStruct_027e0ce0_40 *mUnk_00; /* 04 */ unk16 mUnk_04; /* 06 */ bool mUnk_06; /* 07 */ STRUCT_PAD(0x07, 0x0C); /* 0C */ ActorRef mUnk_0C; /* 10 */ - PlayerLinkActor_A0_1C(unk32 param1); + PlayerLinkActor_A0_1C(UnkStruct_027e0ce0_40 *param1); // overlay 101 void func_ov101_02183290(); @@ -281,13 +281,22 @@ public: void func_ov001_020bcba8(); void func_ov001_020bcbd0(VecFx32 *pVec); + // overlay 17 + void func_ov017_020bd788(unk32 param1); + void func_ov017_020bdcf4(); + void func_ov017_020bdd84(unk32 param1, unk32 param2); + void func_ov017_020bdf48(unk32 param1, unk32 param2, unk32 param3, unk32 param4); + // overlay 21 void func_ov021_020ebda0(); - void func_ov021_020ebda0(int); + void func_ov021_020ebda0(unk32 param1); // overlay 31 void func_ov031_020d96a4(PlayerLinkActor_A0 *param1, UnkStruct_027e0ce0_40 *param2); void func_ov031_020d96a4(int, PlayerLinkActor_A0 *param1, UnkStruct_027e0ce0_40 *param2); void func_ov031_020dccf0(); - void func_ov031_020dccf0(int); + void func_ov031_020dccf0(unk32 param1); + + // overlay 93 + void func_ov093_0216ce24(unk32 *param1); }; diff --git a/include/Render/ModelRender.hpp b/include/Render/ModelRender.hpp index 2a8d21e2..bb4eb711 100644 --- a/include/Render/ModelRender.hpp +++ b/include/Render/ModelRender.hpp @@ -112,7 +112,8 @@ public: class UnkSystem6_Derived2 : public UnkSystem6_Derived1 { public: /* 00 (base) */ - /* 08 */ + /* 08 */ bool mUnk_08; + /* 0C */ UnkSystem6_Derived2() : UnkSystem6_Derived1(NULL) {} @@ -120,6 +121,14 @@ public: UnkSystem6_Derived2(G3d_Model *pModel) : UnkSystem6_Derived1(pModel) {} + UnkSystem6_Derived2(G3d_Model *pModel, bool param2) : + UnkSystem6_Derived1(pModel), + mUnk_08(param2) {} + + UnkSystem6_Derived2(bool param2) : + UnkSystem6_Derived1(NULL), + mUnk_08(param2) {} + // data_ov000_020b1968 /* 00 */ virtual ~UnkSystem6_Derived2() {} /* 0C */ virtual void vfunc_0C() override; diff --git a/include/Unknown/UnkStruct_0204a088.hpp b/include/Unknown/UnkStruct_0204a088.hpp index 29b33046..0646ed33 100644 --- a/include/Unknown/UnkStruct_0204a088.hpp +++ b/include/Unknown/UnkStruct_0204a088.hpp @@ -4,6 +4,9 @@ #include "System/SysNew.hpp" #include "types.h" +class Actor; +class FileSelectManager_UnkDrawBase; + // members 00 04 and 08 are used in data_ov000_020b1d74 to figure out which overlay to load next in slot 1 class UnkStruct_0204a088 : public AutoInstance { public: @@ -25,7 +28,7 @@ public: // overlay 0 void func_ov000_02061098(void); - void func_ov000_020611dc(void *param1, unk32 param2); + void func_ov000_020611dc(FileSelectManager_UnkDrawBase *param1, unk32 param2); bool func_ov000_020611fc(unk32 param2); // sets new index bool func_ov000_02061224(void); void func_ov000_02061230(void); diff --git a/include/Unknown/UnkStruct_027e0208.hpp b/include/Unknown/UnkStruct_027e0208.hpp index 636eb6af..41716acd 100644 --- a/include/Unknown/UnkStruct_027e0208.hpp +++ b/include/Unknown/UnkStruct_027e0208.hpp @@ -6,7 +6,9 @@ class UnkStruct_027e0208 { public: /* 000 */ unk32 mUnk_000; - /* 004 */ STRUCT_PAD(0x04, 0xE0); + /* 004 */ STRUCT_PAD(0x04, 0x94); + /* 094 */ unk32 mUnk_094; + /* 098 */ STRUCT_PAD(0x98, 0xE0); /* 0E0 */ unk32 mUnk_0E0; /* 0E4 */ unk32 mUnk_0E4; /* 0E8 */ unk32 mUnk_0E8; diff --git a/include/Unknown/UnkStruct_027e09b8.hpp b/include/Unknown/UnkStruct_027e09b8.hpp index 22be7694..a2fa72cf 100644 --- a/include/Unknown/UnkStruct_027e09b8.hpp +++ b/include/Unknown/UnkStruct_027e09b8.hpp @@ -162,7 +162,7 @@ public: ~UnkStruct_027e09b8(); // itcm - unk32 func_01ffd420(); + bool func_01ffd420(); // overlay 0 unk32 func_ov000_020732ec(unk32 param1); diff --git a/include/Unknown/UnkStruct_027e09bc.hpp b/include/Unknown/UnkStruct_027e09bc.hpp index f5654fff..d407c031 100644 --- a/include/Unknown/UnkStruct_027e09bc.hpp +++ b/include/Unknown/UnkStruct_027e09bc.hpp @@ -3,6 +3,7 @@ #include "Unknown/Common.hpp" #include "Unknown/UnkStruct_0204a060.hpp" #include "global.h" +#include "math.hpp" #include "types.h" class UnkStruct_027e09bc_0C { @@ -25,6 +26,7 @@ public: /* 10 */ // itcm + bool func_01ffd43c(Vec2s *param1, unk32 param2, unk32 param3); bool func_01ffd640(VecFx32 *param1); // overlay 0 @@ -51,10 +53,7 @@ public: class UnkStruct_027e09bc : public AutoInstance { public: /* 00 (vtable) */ - /* 04 */ UnkStruct_027e09bc_0C *mUnk_04; - /* 08 */ unk32 mUnk_08; - /* 0C */ UnkStruct_027e09bc_0C *mUnk_0C; - /* 10 */ UnkStruct_027e09bc_0C *mUnk_10; + /* 04 */ UnkStruct_027e09bc_0C *mUnk_04[4]; /* 14 */ UnkStruct_027e09bc_0C *mUnk_14[4]; /* 24 */ UnkStruct_027e09bc_24 mUnk_24; /* 48 */ UnkSystem9 mUnk_48; diff --git a/include/Unknown/UnkStruct_027e0cd8.hpp b/include/Unknown/UnkStruct_027e0cd8.hpp index 95a1d3f5..63e8b509 100644 --- a/include/Unknown/UnkStruct_027e0cd8.hpp +++ b/include/Unknown/UnkStruct_027e0cd8.hpp @@ -113,6 +113,9 @@ public: UnkStruct_027e0cd8_0C_Base_98(); ~UnkStruct_027e0cd8_0C_Base_98(); + + // overlay 47 + void func_ov047_0213055c(); }; class UnkStruct_027e0cd8_0C_Base_148_00_Base { @@ -332,12 +335,17 @@ public: // data_ov031_02112a0c /* 00 */ virtual ~UnkStruct_027e0cd8_0C() override; /* 08 */ virtual void vfunc_08(); + /* 0C */ virtual void vfunc_0C(); + /* 1C */ virtual void vfunc_1C(const EntranceInfo *param1, bool param2, bool param3); /* 38 */ virtual void vfunc_38(); // overlay 31 void func_ov031_020d8738(); void func_ov031_020d88c0(); void func_ov031_020d8ae4(); + + // overlay 102 + void func_ov102_02184628(); }; class UnkStruct_027e0cd8_0C_Derived2 : public UnkStruct_027e0cd8_0C_Base { diff --git a/include/Unknown/UnkStruct_027e0ce0.hpp b/include/Unknown/UnkStruct_027e0ce0.hpp index b83cae09..8cf87b62 100644 --- a/include/Unknown/UnkStruct_027e0ce0.hpp +++ b/include/Unknown/UnkStruct_027e0ce0.hpp @@ -457,7 +457,11 @@ public: class UnkStruct_027e0ce0_40_Base_14 { public: /* 00 */ TouchControl mTouchControl; - /* 22 */ STRUCT_PAD(0x22, 0x60); + /* 22 */ STRUCT_PAD(0x22, 0x40); + /* 40 */ unk16 mUnk_40; + /* 42 */ unk16 mUnk_42; + /* 44 */ unk16 mUnk_44; + /* 48 */ STRUCT_PAD(0x48, 0x60); /* 60 */ UnkStruct_027e0ce0_40_Base_14() : @@ -472,21 +476,37 @@ public: class UnkStruct_027e0ce0_40_Base_74 { public: - /* 00 */ STRUCT_PAD(0x00, 0x5C); + /* 00 */ unk16 mUnk_00[14]; + /* 1C */ Vec2s mUnk_1C[14]; + /* 54 */ unk32 mUnk_54; + /* 58 */ unk32 mUnk_58; /* 5C */ UnkStruct_027e0ce0_40_Base_74() { this->func_ov031_020e0c34(); } + // overlay 31 void func_ov031_020e0c34(); + + // overlay 102 + void func_ov102_0218323c(UnkStruct_027e0ce0_40_Base_14 *param1, unk32 param2); }; class UnkStruct_027e0ce0_40_Base_78 { public: - /* 00 */ unk32 mUnk_00; + /* 00 */ unk16 mUnk_00; // ActorRef? + /* 02 */ unk16 mUnk_02; /* 04 */ + const u32 GetData() const { + return *(u32 *) this; + } + + const bool HasValue() const { + return this->GetData() != 0; + } + UnkStruct_027e0ce0_40_Base_78(); ~UnkStruct_027e0ce0_40_Base_78(); }; @@ -513,6 +533,9 @@ public: // overlay 0 void func_ov000_020968e0(); + + // overlay 17 + void func_ov017_020be434(); }; class UnkStruct_027e0ce0_40_Base_94_50_Base { @@ -618,6 +641,10 @@ public: /* 107 */ unk8 mUnk_107; /* 108 */ + const BOOL Unk78HasValue() const { + return this->mUnk_078 != NULL && this->mUnk_078->HasValue(); + } + UnkStruct_027e0ce0_40_Base(unk32 param1, void *param2, ItemManager *pItemMgr); ~UnkStruct_027e0ce0_40_Base(); @@ -638,19 +665,34 @@ public: /* 00 */ virtual void vfunc_00() = 0; }; +class UnkStruct_027e0ce0_40_108_10 { +public: + /* 00 */ Vec2s mUnk_00; + /* 04 */ u8 mUnk_04; + /* 05 */ u8 mUnk_05; + /* 06 */ +}; + class UnkStruct_027e0ce0_40_108 : public UnkStruct_027e0ce0_40_108_Base { public: /* 00 (base) */ - /* 10 */ unk32 mUnk_10; - /* 14 */ STRUCT_PAD(0x14, 0x40); - /* 40 */ void *mUnk_40; + /* 10 */ UnkStruct_027e0ce0_40_108_10 mUnk_10; + /* 18 */ STRUCT_PAD(0x16, 0x40); + /* 40 */ UnkStruct_027e0ce0_40_108_10 *mUnk_40; /* 44 */ UnkStruct_027e0ce0_40_108() : mUnk_40(&this->mUnk_10) {} + const bool UnknownInline1() const { + return (uintptr_t) (this->mUnk_40 - &this->mUnk_10) >= 8; + } + // data_ov031_02112b60 /* 00 */ virtual void vfunc_00() override; + + // overlay 102 + void func_ov102_02182e54(unk32 param1, unk32 param2, unk32 param3); }; class UnkStruct_027e0ce0_40_14C { @@ -661,8 +703,13 @@ public: UnkStruct_027e0ce0_40_14C(); ~UnkStruct_027e0ce0_40_14C(); + // overlay 17 + void func_ov093_02168e24(unk32 param1); + // overlay 93 void func_ov093_02168850(); + bool func_ov092_021689e8(unk32 param1, UnkStruct_027e0ce0_40 *param2, PlayerLinkActor *param3, + UnkStruct_027e0ce0_40_328 *param4); }; class UnkStruct_027e0ce0_40_150 { @@ -682,7 +729,14 @@ class UnkStruct_027e0ce0_40_328 { public: /* 000 */ STRUCT_PAD(0x00, 0x98); /* 098 */ PlayerActorBase *mpPlayer; - /* 09C */ STRUCT_PAD(0x9C, 0x154); + /* 09C */ STRUCT_PAD(0x9C, 0xCC); + /* 0CC */ bool mUnk_0CC; + /* 0CD */ STRUCT_PAD(0xCD, 0xD0); + /* 0D0 */ unk32 mUnk_0D0; + /* 0D4 */ unk32 mUnk_0D4; + /* 0D8 */ unk32 mUnk_0D8; + /* 0DC */ unk32 mUnk_0DC; + /* 0E0 */ STRUCT_PAD(0xE0, 0x154); /* 154 */ UnkStruct_027e0ce0_40_328(void *param1, UnkStruct_027e0ce0_40 *param2, UnkStruct_027e0ce0_40_150 *param3, @@ -693,6 +747,11 @@ public: void func_ov093_0216d0d4(); void func_ov093_0216d160(); void func_ov093_0216d1cc(unk32 param1, const UnkStruct_ov001_020c40f4 *param2, bool param3, bool param4); + void func_ov093_0216d5b8(unk32 param1); + void func_ov093_0216f71c(unk32 *param1); + void func_ov093_0216de30(unk32 param1, unk32 param2); + void func_ov093_0216dec8(unk32 param1); + void func_ov093_0216e1a4(unk32 param1); }; // land player stuff @@ -719,11 +778,23 @@ public: // overlay 0 void func_ov000_02088060(bool param1); + // overlay 17 + unk32 func_ov017_020bcde8(unk32 param1, ItemManager *pItemMgr); + + // overlay 93 + void func_ov093_02168220(); + // overlay 101 bool func_ov101_02182fb4(bool param1); void func_ov101_02183004(); void func_ov101_02183024(const UnkStruct_ov001_020c40f4 *param1, const UnkStruct_ov001_020c40f4 *param2, unk32 param3, unk32 param4, ItemManager *pItemMgr, UnkStruct_027e0ce0_30 *param6, bool param7, bool param8); + + // overlay 102 + void func_ov102_0218303c(unk32 param1, ItemManager *pItemMgr); + void func_ov102_02183180(unk32 param1, bool param2); + void func_ov102_021831b4(unk32 param1); + void func_ov102_021831f0(unk32 param1); }; union UnkStruct_027e0478 { @@ -799,6 +870,7 @@ public: static void Destroy(); // overlay 17 + void func_ov017_020bd5dc(unk32 param1); void func_ov017_020bd69c(); }; diff --git a/include/Unknown/UnkStruct_027e0cec.hpp b/include/Unknown/UnkStruct_027e0cec.hpp index fa134bae..c0998112 100644 --- a/include/Unknown/UnkStruct_027e0cec.hpp +++ b/include/Unknown/UnkStruct_027e0cec.hpp @@ -3,6 +3,7 @@ #include "LinkList.hpp" #include "Unknown/UnkFileSystem.hpp" #include "math.hpp" +#include "nitro/fx.h" #include "types.h" class UnkStruct_027e0cec_00_00 : public LinkList { @@ -81,6 +82,7 @@ public: void func_ov000_020a0110(UnkSystem7 *param1); void func_ov000_020a0140(UnkSystem7 *param1, VecFx32 *param2); void func_ov000_020a0220(void *param1, void *param2); + void func_ov000_0209ff4c(unk32 param1, VecFx32 *param2, UnkAngleStruct param3, unk32 param4); // overlay 1 const char *func_ov001_020bef98(); diff --git a/include/Unknown/UnkStruct_027e0cf0.hpp b/include/Unknown/UnkStruct_027e0cf0.hpp new file mode 100644 index 00000000..a66e71e0 --- /dev/null +++ b/include/Unknown/UnkStruct_027e0cf0.hpp @@ -0,0 +1,20 @@ +#pragma once + +#include "global.h" +#include "types.h" + +class UnkStruct_027e0cf0 { +public: + /* 00 */ unk32 mUnk_00; + /* 04 */ unk32 mUnk_04; + /* 08 */ unk16 mUnk_08; + /* 0A */ unk8 mUnk_0A; + /* 0B */ u8 mUnk_0B; + /* 0C */ unk32 mUnk_0C; + /* 10 */ unk32 mUnk_10; + + UnkStruct_027e0cf0(); + ~UnkStruct_027e0cf0(); +}; + +extern UnkStruct_027e0cf0 *data_027e0cf0; diff --git a/include/Unknown/UnkStruct_ov000_020b3000.hpp b/include/Unknown/UnkStruct_ov000_020b3000.hpp new file mode 100644 index 00000000..50fa8e9c --- /dev/null +++ b/include/Unknown/UnkStruct_ov000_020b3000.hpp @@ -0,0 +1,49 @@ +#pragma once + +#include "Actor/Actor.hpp" +#include "Actor/ActorId.hpp" + +class UnkStruct_ov000_020b3000_Base { + /* 00 */ virtual bool vfunc_00(Actor *pActor); +}; + +class UnkStruct_ov000_020b3000 : public UnkStruct_ov000_020b3000_Base { +public: + /* 00 (vtable) */ + /* 04 */ ActorId mActorId; + /* 08 */ + + UnkStruct_ov000_020b3000(ActorId actorId) : + mActorId(actorId) {} + + /* 00 */ virtual bool vfunc_00(Actor *pActor) override; +}; + +class UnkStruct_ov031_02112ad4 : public UnkStruct_ov000_020b3000 { +public: + /* 00 (base) */ + /* 08 */ u32 mUnk_08; + /* 0C */ + + UnkStruct_ov031_02112ad4(ActorId actorId, u32 param2) : + UnkStruct_ov000_020b3000(actorId), + mUnk_08(param2) {} + + /* 00 */ virtual bool vfunc_00(Actor *pActor) override; +}; + +class UnkStruct_ov031_0211361c : public UnkStruct_ov000_020b3000_Base { +public: + /* 00 */ virtual bool vfunc_00(Actor *pActor) override; +}; + +class UnkStruct_ov102_02184a24 : public UnkStruct_ov000_020b3000 { +public: + /* 00 (base) */ + /* 08 */ + + UnkStruct_ov102_02184a24(ActorId actorId) : + UnkStruct_ov000_020b3000(actorId) {} + + /* 00 */ virtual bool vfunc_00(Actor *pActor) override; +}; diff --git a/include/Unknown/UnkStruct_ov000_020b51b8.hpp b/include/Unknown/UnkStruct_ov000_020b51b8.hpp index 7f30e2ad..ff448bdd 100644 --- a/include/Unknown/UnkStruct_ov000_020b51b8.hpp +++ b/include/Unknown/UnkStruct_ov000_020b51b8.hpp @@ -1,5 +1,6 @@ #pragma once +#include "Player/PlayerLink.hpp" #include "System/SysNew.hpp" #include "Unknown/UnkStruct_ov000_020b5214.hpp" #include "types.h" @@ -59,6 +60,10 @@ public: /* 54 */ unk16 mUnk_54; /* 56 */ unk16 mUnk_56; + const BOOL IsUnk08_2() const { + return this->mUnk_08[2] != NULL; + } + UnkStruct_ov000_020b51b8(); ~UnkStruct_ov000_020b51b8(); @@ -70,6 +75,7 @@ public: void func_ov000_0206d0ec(unk32 param1, unk32 param2, unk32 param3, unk32 param4); void func_ov000_0206d134(unk32 param1); void func_ov000_0206d274(unk32 param1); // play seq? + void func_ov000_0206bdd4(PlayerLinkActor *pPlayer); // overlay 1 void func_ov000_0206bbfc(unk32 param1); diff --git a/include/Unknown/UnkStruct_ov000_020b51c0.hpp b/include/Unknown/UnkStruct_ov000_020b51c0.hpp index e45349ba..54cbeb81 100644 --- a/include/Unknown/UnkStruct_ov000_020b51c0.hpp +++ b/include/Unknown/UnkStruct_ov000_020b51c0.hpp @@ -8,3 +8,4 @@ public: }; extern UnkStruct_ov000_020b51c0 data_ov000_020b51c0; +extern UnkStruct_ov000_020b51c0 data_ov000_020b51c8; //! TODO: real? diff --git a/include/Unknown/UnkStruct_ov000_020b5214.hpp b/include/Unknown/UnkStruct_ov000_020b5214.hpp index bd6e396c..db2f9b7c 100644 --- a/include/Unknown/UnkStruct_ov000_020b5214.hpp +++ b/include/Unknown/UnkStruct_ov000_020b5214.hpp @@ -1,5 +1,6 @@ #pragma once +#include "Player/PlayerLink.hpp" #include "global.h" #include "types.h" @@ -45,6 +46,7 @@ public: UnkStruct_ov000_020b5214(); + // overlay 0 void func_ov000_0206d43c(); void func_ov000_0206d6b4(unk32 param1, unk32 param2); void func_ov000_0206d83c(unk32 param1); @@ -53,6 +55,8 @@ public: void func_ov000_0206db44(unk32 param1); // play sfx? void func_ov000_0206dc4c(unk32 param1); void func_ov000_0206e7e8(unk32 param1); + void func_ov000_0206ed1c(PlayerLinkActor *pPlayer); + void func_ov000_0206edd8(PlayerLinkActor *pPlayer); }; extern UnkStruct_ov000_020b5214 data_ov000_020b5214_eur; diff --git a/include/Unknown/UnkStruct_ov000_020b52e8.hpp b/include/Unknown/UnkStruct_ov000_020b52e8.hpp index 60653023..a1c4726b 100644 --- a/include/Unknown/UnkStruct_ov000_020b52e8.hpp +++ b/include/Unknown/UnkStruct_ov000_020b52e8.hpp @@ -18,7 +18,7 @@ public: ~UnkStruct_ov000_020b52e8(); // overlay 0 - ActorUnkMLCK_B4_00 *func_ov000_0206f980(unk32 param1); + ActorUnkMLCK_C4_00 *func_ov000_0206f980(unk32 param1); void func_ov000_0206f994(); }; diff --git a/include/math.hpp b/include/math.hpp index 264cee7f..4fddba35 100644 --- a/include/math.hpp +++ b/include/math.hpp @@ -211,10 +211,11 @@ static inline void Vec2us_Copy(const Vec2us *a, Vec2us *dst) { union Vec2bCpp { struct { /* 0 */ u8 x; - /* 2 */ u8 y; - /* 4 */ + /* 1 */ u8 y; + /* 2 */ }; u8 coords[2]; + u16 data[1]; void operator=(const Vec2bCpp &from) { this->x = from.x; @@ -369,5 +370,8 @@ union Vec2sb { }; struct UnkAngleStruct { - u16 angle; + union { + u16 angle; + s16 angle_signed; + }; }; diff --git a/libs/nitro/include/nitro/math.h b/libs/nitro/include/nitro/math.h index e2f21905..6eceaa88 100644 --- a/libs/nitro/include/nitro/math.h +++ b/libs/nitro/include/nitro/math.h @@ -44,6 +44,7 @@ extern "C" { #endif #define ABS(x) ((x) < 0 ? -(x) : (x)) +#define ABS2(x) ((x) >= 0 ? (x) : -(x)) #define CLAMP(x, min, max) ((x) > (max) ? (max) : (x) < (min) ? (min) : (x)) #define CLAMP2(x, min, max) ((x) > (max) ? (max) : (x) >= (min) ? (x) : (min)) diff --git a/libs/nns/include/nns/g3d/sbc.h b/libs/nns/include/nns/g3d/sbc.h index 6f242424..da4cff3e 100644 --- a/libs/nns/include/nns/g3d/sbc.h +++ b/libs/nns/include/nns/g3d/sbc.h @@ -2,6 +2,10 @@ #include "g3d.h" +#ifdef __cplusplus +extern "C" { +#endif + extern void PushGeometryCommand(u32 command, void *data, s32 length); typedef enum { @@ -109,3 +113,7 @@ static inline void G3d_Scale_inline(fx32 x, fx32 y, fx32 z) { vec.z = z; PushGeometryCommand(0x1B, (u32 *) &vec, 3); } + +#ifdef __cplusplus +} // extern "C" +#endif diff --git a/src/000_Second/Actor/Actor_Derived1.cpp b/src/000_Second/Actor/Actor_Derived1.cpp index ed18c8e0..cbe36ab0 100644 --- a/src/000_Second/Actor/Actor_Derived1.cpp +++ b/src/000_Second/Actor/Actor_Derived1.cpp @@ -111,7 +111,7 @@ void Actor_Derived1::func_ov000_020a8e9c(VecFx32 *param1) { } void Actor_Derived1::vfunc_B0() { - if (data_027e09b8->func_01ffd420() == 0) { + if (!data_027e09b8->func_01ffd420()) { ActorUnk_vfunc_B0 auStack_60; auStack_60.mpActor = this; auStack_60.mUnk_0C = this->mUnk_5C.mUnk_20; @@ -144,7 +144,7 @@ void Actor_Derived1::vfunc_94() { } void Actor_Derived1::vfunc_60() { - if (data_027e09b8->func_01ffd420() == 0) { + if (!data_027e09b8->func_01ffd420()) { if (this->vfunc_64()) { this->vfunc_B0(); this->func_ov000_020a9200(); diff --git a/src/000_Second/MapObject/MapObjectMiniBlocks.cpp b/src/000_Second/MapObject/MapObjectMiniBlocks.cpp index aa16e9ec..33b84b5a 100644 --- a/src/000_Second/MapObject/MapObjectMiniBlocks.cpp +++ b/src/000_Second/MapObject/MapObjectMiniBlocks.cpp @@ -30,7 +30,7 @@ MapObjectProfileMiniBlocks::MapObjectProfileMiniBlocks() : } MapObjectMiniBlocks::MapObjectMiniBlocks() { - this->mUnk_48 = 1; + this->mUnk_40.mUnk_08 = 1; } bool MapObjectMiniBlocks::vfunc_00(void) { diff --git a/src/001_SceneInit/Item/Inventory_001.cpp b/src/001_SceneInit/Item/Inventory_001.cpp index fb21f34f..eda15e48 100644 --- a/src/001_SceneInit/Item/Inventory_001.cpp +++ b/src/001_SceneInit/Item/Inventory_001.cpp @@ -4,11 +4,10 @@ #include "System/OverlayManager.hpp" #include "Unknown/UnkStruct_027e09a0.hpp" #include "Unknown/UnkStruct_027e09a4.hpp" +#include "Unknown/UnkStruct_ov000_020b3000.hpp" #include -extern unk32 data_ov000_020b3000; - Inventory::Inventory() { this->mEquippedItem = ItemFlag_None; this->mForcedItem = ItemFlag_None; @@ -125,14 +124,9 @@ void Inventory::func_ov001_020bba54() { } void Inventory::func_ov001_020bba6c() { - struct { - void *ptr; - unk32 actorId; - } uStack_18; - uStack_18.ptr = &data_ov000_020b3000; - uStack_18.actorId = ActorId_TearLight; - + UnkStruct_ov000_020b3000 uStack_18(ActorId_TearLight); Actor **ppActor = gpActorManager->func_01fff350(&uStack_18, gpActorManager->mActorTable); + while (ppActor != gpActorManager->mUnk_08) { UNSET_FLAG((*ppActor)->mFlags, ActorFlag_Alive); (*ppActor)->func_ov000_020984f0(); diff --git a/src/001_SceneInit/UnkStruct_027e09bc_001.cpp b/src/001_SceneInit/UnkStruct_027e09bc_001.cpp index 7e2625c6..48568a67 100644 --- a/src/001_SceneInit/UnkStruct_027e09bc_001.cpp +++ b/src/001_SceneInit/UnkStruct_027e09bc_001.cpp @@ -8,18 +8,18 @@ UnkStruct_027e09bc *UnkStruct_027e09bc::Create() { } UnkStruct_027e09bc::UnkStruct_027e09bc() { - this->mUnk_04 = NULL; - this->mUnk_08 = 0; - this->mUnk_0C = NULL; - this->mUnk_10 = NULL; + this->mUnk_04[0] = NULL; + this->mUnk_04[1] = NULL; + this->mUnk_04[2] = NULL; + this->mUnk_04[3] = NULL; this->mUnk_14[0] = NULL; this->mUnk_14[1] = NULL; this->mUnk_14[2] = NULL; this->mUnk_14[3] = NULL; if (data_027e09a4->IsSceneModeAdventure()) { - this->mUnk_0C = new(HeapIndex_1) UnkStruct_027e09bc_0C(0); - this->mUnk_10 = new(HeapIndex_1) UnkStruct_027e09bc_0C(1); + this->mUnk_04[2] = new(HeapIndex_1) UnkStruct_027e09bc_0C(0); + this->mUnk_04[3] = new(HeapIndex_1) UnkStruct_027e09bc_0C(1); this->func_ov000_020771b8(0x00); this->func_ov000_020771b8(0x01); } else if (data_027e09a4->IsSceneModeBattle()) { @@ -27,20 +27,20 @@ UnkStruct_027e09bc::UnkStruct_027e09bc() { this->mUnk_14[1] = new(HeapIndex_1) UnkStruct_027e09bc_0C(1); this->mUnk_14[2] = new(HeapIndex_1) UnkStruct_027e09bc_0C(2); this->mUnk_14[3] = new(HeapIndex_1) UnkStruct_027e09bc_0C(3); - this->mUnk_04 = this->mUnk_14[data_ov020_020e8544->vfunc_20()]; + this->mUnk_04[0] = this->mUnk_14[data_ov020_020e8544->vfunc_20()]; } } UnkStruct_027e09bc::~UnkStruct_027e09bc() { - delete this->mUnk_0C; - delete this->mUnk_10; + delete this->mUnk_04[2]; + delete this->mUnk_04[3]; delete this->mUnk_14[0]; delete this->mUnk_14[1]; delete this->mUnk_14[2]; delete this->mUnk_14[3]; - this->mUnk_0C = NULL; - this->mUnk_10 = NULL; + this->mUnk_04[2] = NULL; + this->mUnk_04[3] = NULL; this->mUnk_14[0] = NULL; this->mUnk_14[1] = NULL; this->mUnk_14[2] = NULL; @@ -51,17 +51,17 @@ void UnkStruct_027e09bc::func_ov001_020bab5c() { switch ((s32) data_027e09a4->CurrentSceneIndex()) { case SceneIndex_b_sand: case SceneIndex_tekiya09: - data_027e09bc->mUnk_10->mUnk_264 = 0x7B; + data_027e09bc->mUnk_04[3]->mUnk_264 = 0x7B; break; case SceneIndex_b_last2: - data_027e09bc->mUnk_10->mUnk_264 = 0x00; + data_027e09bc->mUnk_04[3]->mUnk_264 = 0x00; break; case SceneIndex_b_last22: - data_027e09bc->mUnk_10->mUnk_264 = 0x00; + data_027e09bc->mUnk_04[3]->mUnk_264 = 0x00; break; default: if (data_027e09a4->IsSceneModeAdventure()) { - data_027e09bc->mUnk_10->func_ov000_02078cec(); + data_027e09bc->mUnk_04[3]->func_ov000_02078cec(); } break; } @@ -69,22 +69,22 @@ void UnkStruct_027e09bc::func_ov001_020bab5c() { void UnkStruct_027e09bc::func_ov001_020babc8() { if (data_027e09a4->IsSceneModeAdventure()) { - this->mUnk_0C->func_ov000_02078ba4(); - this->mUnk_10->func_ov000_02078ba4(); + this->mUnk_04[2]->func_ov000_02078ba4(); + this->mUnk_04[3]->func_ov000_02078ba4(); } } void UnkStruct_027e09bc::func_ov001_020babe8() { if (data_027e09a4->IsSceneModeAdventure()) { - this->mUnk_0C->mUnk_280 = 0; - this->mUnk_10->mUnk_280 = 0; + this->mUnk_04[2]->mUnk_280 = 0; + this->mUnk_04[3]->mUnk_280 = 0; } } void UnkStruct_027e09bc::func_ov001_020bac08() { if (data_027e09a4->IsSceneModeAdventure()) { - this->mUnk_0C->mUnk_280 = 0; - this->mUnk_10->mUnk_280 = 0; + this->mUnk_04[2]->mUnk_280 = 0; + this->mUnk_04[3]->mUnk_280 = 0; } } diff --git a/src/001_SceneInit/UnkStruct_027e0ce0_1C_001.cpp b/src/001_SceneInit/UnkStruct_027e0ce0_1C_001.cpp index e5e9291b..c0c70d7f 100644 --- a/src/001_SceneInit/UnkStruct_027e0ce0_1C_001.cpp +++ b/src/001_SceneInit/UnkStruct_027e0ce0_1C_001.cpp @@ -3,6 +3,7 @@ #include "Unknown/Common.hpp" #include "Unknown/UnkStruct_027e09b8.hpp" #include "Unknown/UnkStruct_027e0ce0.hpp" +#include "Unknown/UnkStruct_ov000_020b3000.hpp" #include "Unknown/UnkStruct_ov024_020d8660.hpp" #include @@ -11,8 +12,6 @@ extern "C" bool func_ov000_0208e874(const u8 *, int, int, int); extern "C" const char *func_ov000_0208e830(int); -extern unk32 data_ov000_020b3000; - UnkStruct_027e0ce0_1C::UnkStruct_027e0ce0_1C() { this->mUnk_D4 = NULL; this->mUnk_D8 = NULL; @@ -353,13 +352,7 @@ void PlayerLinkActor_A0::func_ov001_020bd388(bool param1, bool param2) { if (data_ov000_020aa88c[temp_r0].mUnk_04) { if (temp_r0 == 0x33) { - struct { - void *ptr; - unk32 actorId; - } local_18; - local_18.ptr = &data_ov000_020b3000; - local_18.actorId = ActorId_Beedle; - + UnkStruct_ov000_020b3000 local_18(ActorId_Beedle); Actor **pBeedle = gpActorManager->func_01fff350(&local_18, gpActorManager->mActorTable); if (0) { diff --git a/src/001_SceneInit/UnkStruct_027e0ce0_40_Base_001.cpp b/src/001_SceneInit/UnkStruct_027e0ce0_40_Base_001.cpp index e6679db7..0277e0fd 100644 --- a/src/001_SceneInit/UnkStruct_027e0ce0_40_Base_001.cpp +++ b/src/001_SceneInit/UnkStruct_027e0ce0_40_Base_001.cpp @@ -35,7 +35,7 @@ void UnkStruct_027e0ce0_40_Base::func_ov001_020bc0e0(bool param1) { } if (this->mUnk_078 != NULL) { - this->mUnk_078->mUnk_00 = 0; + *(u32 *) &this->mUnk_078->mUnk_00 = 0; } this->mUnk_094.mUnk_5C = 0; diff --git a/src/019_MainSelect/FileSelectManager_160.cpp b/src/019_MainSelect/FileSelectManager_160.cpp index 6a4e38dd..cfcbe67a 100644 --- a/src/019_MainSelect/FileSelectManager_160.cpp +++ b/src/019_MainSelect/FileSelectManager_160.cpp @@ -16,7 +16,7 @@ FileSelectManager_160::FileSelectManager_160(GameModeManagerBase_104 *param1, Fi FileSelectManager_160::~FileSelectManager_160() {} -void FileSelectManager_160::vfunc_08(unk32 param1) { +void FileSelectManager_160::vfunc2_08(unk32 param1) { if (param1 == 0) { this->mUnk_0C = 0; this->mUnk_10->func_ov019_020cb6e8(); @@ -24,7 +24,7 @@ void FileSelectManager_160::vfunc_08(unk32 param1) { } } -void FileSelectManager_160::vfunc_0C(unk32 param1) { +void FileSelectManager_160::vfunc2_0C(unk32 param1) { if (param1 == 0) { switch (this->mUnk_0C) { case 0: @@ -42,9 +42,9 @@ void FileSelectManager_160::vfunc_0C(unk32 param1) { } } -void FileSelectManager_160::vfunc_14(unk32 param1) {} +void FileSelectManager_160::vfunc2_14(unk32 param1) {} -void FileSelectManager_160::vfunc_10(unk32 param1, unk32 param2) { +void FileSelectManager_160::vfunc_54(unk32 param1, unk32 param2) { data_0204999c.func_02013014(); data_0204999c.mUnk_60 = 0xD6D8; data_0204a088->func_ov000_02061248(); @@ -56,13 +56,13 @@ void FileSelectManager_160::vfunc_10(unk32 param1, unk32 param2) { data_0204999c.func_02013070(); } -void FileSelectManager_160::vfunc_18(unk32 param1) { +void FileSelectManager_160::vfunc2_18(unk32 param1) { if (param1 == 0) { this->mUnk_0C = 1; } } -void FileSelectManager_160::vfunc_1C(unk32 param1) { +void FileSelectManager_160::vfunc_5C(unk32 param1) { if (param1 == 0) { switch (this->mUnk_0C) { case 0: @@ -80,7 +80,7 @@ void FileSelectManager_160::vfunc_1C(unk32 param1) { } } -void FileSelectManager_160::vfunc_20(unk32 param1, unk32 param2) { +void FileSelectManager_160::vfunc_58(unk32 param1, unk32 param2) { data_0204999c.func_02013014(); data_0204999c.mUnk_60 = 0xD6D8; this->mUnk_14 = NULL; @@ -99,6 +99,6 @@ void FileSelectManager_160::vfunc_20(unk32 param1, unk32 param2) { data_0204999c.func_02013070(); } -void FileSelectManager_160::vfunc_24() { +void FileSelectManager_160::vfunc_60() { data_0204a110.func_0201967c(0, 0, 1, 0, 3); } diff --git a/src/019_MainSelect/FileSelectManager_164.cpp b/src/019_MainSelect/FileSelectManager_164.cpp index e705e1d0..50067c90 100644 --- a/src/019_MainSelect/FileSelectManager_164.cpp +++ b/src/019_MainSelect/FileSelectManager_164.cpp @@ -17,7 +17,7 @@ FileSelectManager_164::~FileSelectManager_164() { } } -void FileSelectManager_164::vfunc_08(unk32 param1) { +void FileSelectManager_164::vfunc2_08(unk32 param1) { if (param1 == 0) { this->mUnk_0C = 0; this->mUnk_10->func_ov019_020cb6e8(); @@ -25,7 +25,7 @@ void FileSelectManager_164::vfunc_08(unk32 param1) { } } -void FileSelectManager_164::vfunc_0C(unk32 param1) { +void FileSelectManager_164::vfunc2_0C(unk32 param1) { if (param1 == 0) { switch (this->mUnk_0C) { case 0: @@ -43,9 +43,9 @@ void FileSelectManager_164::vfunc_0C(unk32 param1) { } } -void FileSelectManager_164::vfunc_14(unk32 param1) {} +void FileSelectManager_164::vfunc2_14(unk32 param1) {} -void FileSelectManager_164::vfunc_10(unk32 param1, unk32 param2) { +void FileSelectManager_164::vfunc_54(unk32 param1, unk32 param2) { data_0204999c.func_02013014(); data_0204999c.mUnk_60 = 0xD6D8; data_ov000_020b50c0.func_ov000_0206a758(); @@ -61,7 +61,7 @@ void FileSelectManager_164::vfunc_10(unk32 param1, unk32 param2) { data_0204999c.func_02013070(); } -void FileSelectManager_164::vfunc_18(unk32 param1) { +void FileSelectManager_164::vfunc2_18(unk32 param1) { if (param1 == 0) { this->mUnk_0C = 1; gpFSOptionsManager->func_ov019_020cc85c(2); @@ -69,7 +69,7 @@ void FileSelectManager_164::vfunc_18(unk32 param1) { } } -void FileSelectManager_164::vfunc_1C(unk32 param1) { +void FileSelectManager_164::vfunc_5C(unk32 param1) { if (param1 == 0) { switch (this->mUnk_0C) { case 1: @@ -89,7 +89,7 @@ void FileSelectManager_164::vfunc_1C(unk32 param1) { } } -void FileSelectManager_164::vfunc_20(unk32 param1, unk32 param2) { +void FileSelectManager_164::vfunc_58(unk32 param1, unk32 param2) { data_0204999c.func_02013014(); data_0204999c.mUnk_60 = 0xD6D8; FileSelectManager_164::func_ov019_020d02f4(); diff --git a/src/024_MainGame/Actor/ActorUnkOBPC.cpp b/src/024_MainGame/Actor/ActorUnkOBPC.cpp index de07190f..e236e4cf 100644 --- a/src/024_MainGame/Actor/ActorUnkOBPC.cpp +++ b/src/024_MainGame/Actor/ActorUnkOBPC.cpp @@ -4,10 +4,9 @@ #include "Unknown/UnkStruct_027e09a4.hpp" #include "Unknown/UnkStruct_027e0cd8.hpp" #include "Unknown/UnkStruct_027e0ce0.hpp" +#include "Unknown/UnkStruct_ov000_020b3000.hpp" #include "Unknown/UnkStruct_ov000_020b504c.hpp" -extern unk32 data_ov000_020b3000; - DECL_PROFILE(ActorProfileUnkOBPC); Actor *ActorProfileUnkOBPC::Create() { @@ -131,15 +130,8 @@ bool ActorUnkOBPC::func_ov024_020d7154(void) { } break; case 2: { - struct { - void *ptr; - unk32 actorId; - } sp8; - - sp8.ptr = &data_ov000_020b3000; - sp8.actorId = ActorId_KEYB; - pActorMgr = gpActorManager; - + pActorMgr = gpActorManager; + UnkStruct_ov000_020b3000 sp8(ActorId_KEYB); Actor **ppActor = pActorMgr->func_01fff350(&sp8, pActorMgr->mActorTable); if (ppActor == pActorMgr->mUnk_08) { @@ -150,15 +142,8 @@ bool ActorUnkOBPC::func_ov024_020d7154(void) { break; } default: { - struct { - void *ptr; - unk32 actorId; - } sp0; - - sp0.ptr = &data_ov000_020b3000; - sp0.actorId = ActorId_KEYT; - pActorMgr = gpActorManager; - + pActorMgr = gpActorManager; + UnkStruct_ov000_020b3000 sp0(ActorId_KEYT); Actor **ppActor = pActorMgr->func_01fff350(&sp0, pActorMgr->mActorTable); if (ppActor == pActorMgr->mUnk_08) { diff --git a/src/024_MainGame/Actor/UnkStruct_ov024_020d8660_024.cpp b/src/024_MainGame/Actor/UnkStruct_ov024_020d8660_024.cpp index 3a1380d2..0a6c28c8 100644 --- a/src/024_MainGame/Actor/UnkStruct_ov024_020d8660_024.cpp +++ b/src/024_MainGame/Actor/UnkStruct_ov024_020d8660_024.cpp @@ -4,14 +4,13 @@ #include "Unknown/UnkStruct_0204a110.hpp" #include "Unknown/UnkStruct_027e09a4.hpp" #include "Unknown/UnkStruct_027e09b8.hpp" +#include "Unknown/UnkStruct_ov000_020b3000.hpp" #include "Unknown/UnkStruct_ov000_020b51b8.hpp" #include "Unknown/UnkStruct_ov024_020d8660.hpp" #include "versions.h" #include -extern unk32 data_ov000_020b3000; - UnkStruct_ov024_020d8660 *data_ov024_020d8660 = NULL; void UnkStruct_ov024_020d8660::func_ov024_020c4a8c(UnkActorSystem1 *param1) { @@ -36,7 +35,7 @@ UnkStruct_ov024_020d8660::UnkStruct_ov024_020d8660() { void UnkStruct_ov024_020d8660::func_ov024_020c4b4c(unk32 param1) { if (this->mUnk_00 != NULL) { - if (data_027e09b8->func_01ffd420() == 0) { + if (!data_027e09b8->func_01ffd420()) { this->mUnk_00->vfunc_10(param1); } else { this->mUnk_00->vfunc_14(param1); @@ -55,13 +54,7 @@ void UnkStruct_ov024_020d8660::func_ov024_020c4ba0() { } if (this->mActorId != 0) { - struct { - void *ptr; - unk32 actorId; - } uStack_68; - uStack_68.actorId = this->mActorId; - uStack_68.ptr = &data_ov000_020b3000; - + UnkStruct_ov000_020b3000 uStack_68(this->mActorId); Actor **ppActor = gpActorManager->func_01fff350(&uStack_68, gpActorManager->mActorTable); Actor *pActor = NULL; diff --git a/src/024_MainGame/Game/AdventureModeManager_024.cpp b/src/024_MainGame/Game/AdventureModeManager_024.cpp index e2af0bd3..a70668c7 100644 --- a/src/024_MainGame/Game/AdventureModeManager_024.cpp +++ b/src/024_MainGame/Game/AdventureModeManager_024.cpp @@ -276,7 +276,7 @@ void AdventureModeManager::vfunc_24() { data_027e0998->func_ov000_02061764(); if (data_ov000_020b4f70 != NULL && data_027e09b8 != NULL) { - if (data_027e09b8->func_01ffd420() == 0) { + if (!data_027e09b8->func_01ffd420()) { data_ov000_020b4f70->func_ov000_02066370(); } } @@ -364,12 +364,13 @@ void AdventureModeManager::vfunc_24() { if (CHECK_BUTTON_COMBO(this->mButtons.press, PAD_BUTTON_SELECT)) { if (this->func_ov024_020c60f4()) { switch (data_0204a088->mUnk_00) { - case 1: + case 1: { stack_ov000_02073578 stack; stack.unk_08 = 0x05; data_027e09b8->func_ov000_02073578(&stack, 1); data_ov000_020b5214.func_ov000_0206db44(0x37); break; + } case 6: data_0204a088->func_ov000_020611fc(5); data_ov000_020b5214.func_ov000_0206db44(0x37); @@ -457,7 +458,7 @@ bool AdventureModeManager::func_ov024_020c5dac() { } bool AdventureModeManager::func_ov024_020c5ecc() { - if (data_ov026_02138d10->func_ov026_020e13f4() != 0 && data_027e09b8->func_01ffd420() == 0 && + if (data_ov026_02138d10->func_ov026_020e13f4() != 0 && !data_027e09b8->func_01ffd420() && func_ov024_020d5304(data_027e09a4->mUnk_00.sceneIndex) && (data_ov024_020d8660 == NULL || data_ov024_020d8660->mUnk_00 == NULL) && this->func_ov024_020c6a20() != 0 && data_ov026_0213f590.func_ov026_020f7cc0() == 0) { diff --git a/src/024_MainGame/Game/AdventureModeManager_160_024.cpp b/src/024_MainGame/Game/AdventureModeManager_160_024.cpp index 3cad8c4e..dce6d05f 100644 --- a/src/024_MainGame/Game/AdventureModeManager_160_024.cpp +++ b/src/024_MainGame/Game/AdventureModeManager_160_024.cpp @@ -35,7 +35,7 @@ AdventureModeManager_160::AdventureModeManager_160(GameModeManagerBase_104 *para AdventureModeManager_160::~AdventureModeManager_160() {} -void AdventureModeManager_160::vfunc_08(unk32 param1) { +void AdventureModeManager_160::vfunc2_08(unk32 param1) { switch (param1) { case 1: case 6: @@ -60,7 +60,7 @@ void AdventureModeManager_160::vfunc_08(unk32 param1) { } } -void AdventureModeManager_160::vfunc_0C(unk32 param1) { +void AdventureModeManager_160::vfunc2_0C(unk32 param1) { switch (param1) { case 1: case 5: @@ -128,13 +128,13 @@ void AdventureModeManager_160::vfunc_0C(unk32 param1) { } } -void AdventureModeManager_160::vfunc_10(unk32 param1, unk32 param2) { +void AdventureModeManager_160::vfunc_54(unk32 param1, unk32 param2) { if ((param1 == 5 || param1 == 8) && param2 == 2) { this->func_ov024_020c7d4c(param1); } } -void AdventureModeManager_160::vfunc_14(unk32 param1) { +void AdventureModeManager_160::vfunc2_14(unk32 param1) { if (param1 == 10) { this->mUnk_14->mUnk_1C = 1; this->mUnk_70.mUnk_25 = true; @@ -170,7 +170,7 @@ void AdventureModeManager_160::func_ov024_020c7d4c(unk32 param1) { G2S_SetBG2Priority(1); } -void AdventureModeManager_160::vfunc_18(unk32 param1) { +void AdventureModeManager_160::vfunc2_18(unk32 param1) { this->mUnk_14 = NULL; switch (param1) { @@ -206,7 +206,7 @@ void AdventureModeManager_160::vfunc_18(unk32 param1) { data_ov000_020b504c.func_ov000_02067e60(0, 1); } -void AdventureModeManager_160::vfunc_1C(unk32 param1) { +void AdventureModeManager_160::vfunc_5C(unk32 param1) { switch (param1) { case 1: case 7: @@ -324,7 +324,7 @@ void AdventureModeManager_160::vfunc_1C(unk32 param1) { } } -void AdventureModeManager_160::vfunc_20(unk32 param1, unk32 param2) { +void AdventureModeManager_160::vfunc_58(unk32 param1, unk32 param2) { if (param1 != 1) { return; } @@ -361,7 +361,7 @@ void AdventureModeManager_160::vfunc_20(unk32 param1, unk32 param2) { } } -void AdventureModeManager_160::vfunc_24() {} +void AdventureModeManager_160::vfunc_60() {} void AdventureModeManager_160::func_ov024_020c83bc() { data_0204a110.mUnk_DC0.func_0201dd58(6, 3); diff --git a/src/024_MainGame/Game/AdventureModeManager_170_024.cpp b/src/024_MainGame/Game/AdventureModeManager_170_024.cpp index c8587964..3ed65db2 100644 --- a/src/024_MainGame/Game/AdventureModeManager_170_024.cpp +++ b/src/024_MainGame/Game/AdventureModeManager_170_024.cpp @@ -24,14 +24,14 @@ AdventureModeManager_170::AdventureModeManager_170(GameModeManagerBase_104 *para AdventureModeManager_170::~AdventureModeManager_170() {} -void AdventureModeManager_170::vfunc_08(unk32 param1) { +void AdventureModeManager_170::vfunc2_08(unk32 param1) { if (param1 == 1) { this->mUnk_14.func_0201bb84(0x3C, 2, 0x3C); data_0204e5f8.func_0201b9a8(&this->mUnk_14); } } -void AdventureModeManager_170::vfunc_0C(unk32 param1) { +void AdventureModeManager_170::vfunc2_0C(unk32 param1) { if (param1 != 1) { return; } @@ -50,7 +50,7 @@ void AdventureModeManager_170::vfunc_0C(unk32 param1) { } } -void AdventureModeManager_170::vfunc_10(unk32 param1, unk32 param2) { +void AdventureModeManager_170::vfunc_54(unk32 param1, unk32 param2) { if (data_0204a110.mUnk_008 == 1) { data_0204a110.mUnk_DFE = true; } @@ -72,11 +72,11 @@ void AdventureModeManager_170::vfunc_10(unk32 param1, unk32 param2) { data_ov000_020b5214.func_ov000_0206d83c(0x0A); } -void AdventureModeManager_170::vfunc_18(unk32 param1) { +void AdventureModeManager_170::vfunc2_18(unk32 param1) { this->mUnk_0C = 0; } -void AdventureModeManager_170::vfunc_24() { +void AdventureModeManager_170::vfunc_60() { data_0204e5f8.mUnk_38 = true; data_0204a088->mUnk_120 = -1; } diff --git a/src/024_MainGame/Game/AdventureModeManager_174_024.cpp b/src/024_MainGame/Game/AdventureModeManager_174_024.cpp index 73c7c715..4c0a1d7b 100644 --- a/src/024_MainGame/Game/AdventureModeManager_174_024.cpp +++ b/src/024_MainGame/Game/AdventureModeManager_174_024.cpp @@ -15,7 +15,7 @@ AdventureModeManager_174::AdventureModeManager_174(GameModeManagerBase_104 *para data_0204a088->func_ov000_020611dc(this, 5); } -void AdventureModeManager_174::vfunc_08(unk32 param1) { +void AdventureModeManager_174::vfunc2_08(unk32 param1) { switch (param1) { case 1: case 6: @@ -40,7 +40,7 @@ void AdventureModeManager_174::vfunc_08(unk32 param1) { } } -void AdventureModeManager_174::vfunc_0C(unk32 param1) { +void AdventureModeManager_174::vfunc2_0C(unk32 param1) { switch (param1) { case 1: case 6: @@ -65,7 +65,7 @@ void AdventureModeManager_174::vfunc_0C(unk32 param1) { } } -void AdventureModeManager_174::vfunc_10(unk32 param1, unk32 param2) { +void AdventureModeManager_174::vfunc_54(unk32 param1, unk32 param2) { if (param2 != 1) { return; } @@ -104,7 +104,7 @@ void AdventureModeManager_174::vfunc_10(unk32 param1, unk32 param2) { } } -void AdventureModeManager_174::vfunc_18(unk32 param1) { +void AdventureModeManager_174::vfunc2_18(unk32 param1) { switch (param1) { case 1: this->mUnk_10.func_0201bb84(0x14, 2, 0x14); @@ -124,7 +124,7 @@ void AdventureModeManager_174::vfunc_18(unk32 param1) { } } -void AdventureModeManager_174::vfunc_1C(unk32 param1) { +void AdventureModeManager_174::vfunc_5C(unk32 param1) { switch (param1) { case 1: case 2: @@ -140,7 +140,7 @@ void AdventureModeManager_174::vfunc_1C(unk32 param1) { } } -void AdventureModeManager_174::vfunc_20(unk32 param1, unk32 param2) { +void AdventureModeManager_174::vfunc_58(unk32 param1, unk32 param2) { if (param2 != 1) { return; } @@ -174,7 +174,7 @@ void AdventureModeManager_174::vfunc_20(unk32 param1, unk32 param2) { } } -void AdventureModeManager_174::vfunc_24() {} +void AdventureModeManager_174::vfunc_60() {} THUMB_END diff --git a/src/024_MainGame/Game/AdventureModeManager_178_024.cpp b/src/024_MainGame/Game/AdventureModeManager_178_024.cpp index 904e60ff..431f3d90 100644 --- a/src/024_MainGame/Game/AdventureModeManager_178_024.cpp +++ b/src/024_MainGame/Game/AdventureModeManager_178_024.cpp @@ -12,14 +12,14 @@ AdventureModeManager_178::AdventureModeManager_178(GameModeManagerBase_104 *para data_0204a088->func_ov000_020611dc(this, 0x0D); } -void AdventureModeManager_178::vfunc_10(unk32 param1, unk32 param2) { +void AdventureModeManager_178::vfunc_54(unk32 param1, unk32 param2) { if (param2 == 1) { data_0204a088->func_ov000_02061248(); this->mUnk_B8 = func_ov004_020b697c(&this->mUnk_0C, 0); } } -void AdventureModeManager_178::vfunc_20(unk32 param1, unk32 param2) { +void AdventureModeManager_178::vfunc_58(unk32 param1, unk32 param2) { if (param2 == 1) { this->mUnk_B8 = 0; data_0204a088->func_ov000_02061248(); diff --git a/src/024_MainGame/Game/AdventureModeManager_178_Base_024.cpp b/src/024_MainGame/Game/AdventureModeManager_178_Base_024.cpp index 0747dc12..6797af78 100644 --- a/src/024_MainGame/Game/AdventureModeManager_178_Base_024.cpp +++ b/src/024_MainGame/Game/AdventureModeManager_178_Base_024.cpp @@ -7,27 +7,27 @@ THUMB_BEGIN AdventureModeManager_178_Base::AdventureModeManager_178_Base(GameModeManagerBase_104 *param1) : AdventureModeManager_174_Base(param1) {} -void AdventureModeManager_178_Base::vfunc_08(unk32 param1) { +void AdventureModeManager_178_Base::vfunc2_08(unk32 param1) { if (param1 == 1 || param1 == 5) { this->mUnk_10.func_0201bb84(0x14, 2, 0x14); data_0204e5f8.func_0201b9a8(&this->mUnk_10); } } -void AdventureModeManager_178_Base::vfunc_0C(unk32 param1) { +void AdventureModeManager_178_Base::vfunc2_0C(unk32 param1) { if (this->mUnk_10.mUnk_0D == this->mUnk_10.mUnk_10) { data_0204a088->func_ov000_02061230(); } } -void AdventureModeManager_178_Base::vfunc_18(unk32 param1) { +void AdventureModeManager_178_Base::vfunc2_18(unk32 param1) { if (param1 == 1 || param1 == 5) { this->mUnk_10.func_0201bb84(0x14, 2, 0x14); data_0204e5f8.func_0201b9a8(&this->mUnk_10); } } -void AdventureModeManager_178_Base::vfunc_1C(unk32 param1) { +void AdventureModeManager_178_Base::vfunc_5C(unk32 param1) { if (this->mUnk_10.mUnk_0D == this->mUnk_10.mUnk_10) { data_0204a088->func_ov000_02061230(); } diff --git a/src/024_MainGame/Game/AdventureModeManager_180_024.cpp b/src/024_MainGame/Game/AdventureModeManager_180_024.cpp index d79f2654..a186ee4a 100644 --- a/src/024_MainGame/Game/AdventureModeManager_180_024.cpp +++ b/src/024_MainGame/Game/AdventureModeManager_180_024.cpp @@ -27,7 +27,7 @@ AdventureModeManager_180::AdventureModeManager_180(GameModeManagerBase_104 *para AdventureModeManager_180::~AdventureModeManager_180() {} -void AdventureModeManager_180::vfunc_08(unk32 param1) { +void AdventureModeManager_180::vfunc2_08(unk32 param1) { this->mUnk_0C = 1; switch (param1) { @@ -48,7 +48,7 @@ void AdventureModeManager_180::vfunc_08(unk32 param1) { } } -void AdventureModeManager_180::vfunc_0C(unk32 param1) { +void AdventureModeManager_180::vfunc2_0C(unk32 param1) { switch (param1) { case 5: if (this->mUnk_18.mUnk_0D == this->mUnk_18.mUnk_10) { @@ -85,7 +85,7 @@ void AdventureModeManager_180::vfunc_0C(unk32 param1) { } #pragma opt_dead_assignments off -void AdventureModeManager_180::vfunc_10(unk32 param1, unk32 param2) { +void AdventureModeManager_180::vfunc_54(unk32 param1, unk32 param2) { if (param2 != 1) { return; } @@ -121,7 +121,7 @@ void AdventureModeManager_180::func_ov024_020c9430(unk32 param1, unk32 param2) { this->mUnk_10 = func_ov014_020b6520(&this->mUnk_14, param1, param2); } -void AdventureModeManager_180::vfunc_18(unk32 param1) { +void AdventureModeManager_180::vfunc2_18(unk32 param1) { switch (param1) { case 5: this->mUnk_18.func_0201bb84(0x10, 2, 0x10); @@ -135,7 +135,7 @@ void AdventureModeManager_180::vfunc_18(unk32 param1) { } } -void AdventureModeManager_180::vfunc_1C(unk32 param1) { +void AdventureModeManager_180::vfunc_5C(unk32 param1) { switch (param1) { case 5: if (this->mUnk_18.mUnk_0D == this->mUnk_18.mUnk_10) { @@ -165,7 +165,7 @@ void AdventureModeManager_180::vfunc_1C(unk32 param1) { } } -void AdventureModeManager_180::vfunc_20(unk32 param1, unk32 param2) { +void AdventureModeManager_180::vfunc_58(unk32 param1, unk32 param2) { if (param2 != 1) { return; } @@ -200,7 +200,7 @@ void AdventureModeManager_180::vfunc_20(unk32 param1, unk32 param2) { } } -void AdventureModeManager_180::vfunc_24() {} +void AdventureModeManager_180::vfunc_60() {} void AdventureModeManager_180::func_ov024_020c957c() { data_0204a110.mUnk_DA8.func_0201ced8(); diff --git a/src/024_MainGame/Game/AdventureModeManager_184_024.cpp b/src/024_MainGame/Game/AdventureModeManager_184_024.cpp index 9c773faa..9522d6d0 100644 --- a/src/024_MainGame/Game/AdventureModeManager_184_024.cpp +++ b/src/024_MainGame/Game/AdventureModeManager_184_024.cpp @@ -25,13 +25,13 @@ AdventureModeManager_184::AdventureModeManager_184(GameModeManagerBase_104 *para AdventureModeManager_184::~AdventureModeManager_184() {} -void AdventureModeManager_184::vfunc_08(unk32 param1) { +void AdventureModeManager_184::vfunc2_08(unk32 param1) { if (!data_027e09a4->IsTrain()) { this->func_ov024_020c979c(param1); } } -void AdventureModeManager_184::vfunc_0C(unk32 param1) { +void AdventureModeManager_184::vfunc2_0C(unk32 param1) { if (this->mUnk_10 == NULL && this->mUnk_18 && data_0204a110.func_02019548()) { this->mUnk_18 = false; @@ -64,11 +64,11 @@ void AdventureModeManager_184::vfunc_0C(unk32 param1) { } } -void AdventureModeManager_184::vfunc_10(unk32 param1, unk32 param2) { +void AdventureModeManager_184::vfunc_54(unk32 param1, unk32 param2) { this->func_ov024_020c979c(param1); } -void AdventureModeManager_184::vfunc_14(unk32 param1) {} +void AdventureModeManager_184::vfunc2_14(unk32 param1) {} void AdventureModeManager_184::func_ov024_020c979c(unk32 param1) { this->mUnk_18 = true; @@ -94,7 +94,7 @@ void AdventureModeManager_184::func_ov024_020c979c(unk32 param1) { } } -void AdventureModeManager_184::vfunc_18(unk32 param1) { +void AdventureModeManager_184::vfunc2_18(unk32 param1) { switch (param1) { case 1: this->mUnk_10->func_ov010_020b7054(); @@ -119,7 +119,7 @@ void AdventureModeManager_184::vfunc_18(unk32 param1) { } } -void AdventureModeManager_184::vfunc_1C(unk32 param1) { +void AdventureModeManager_184::vfunc_5C(unk32 param1) { switch (param1) { case 1: if (this->mUnk_10 != NULL && this->mUnk_10->vfunc_20()) { @@ -139,7 +139,7 @@ void AdventureModeManager_184::vfunc_1C(unk32 param1) { } } -void AdventureModeManager_184::vfunc_20(unk32 param1, unk32 param2) { +void AdventureModeManager_184::vfunc_58(unk32 param1, unk32 param2) { switch (param1) { case 1: this->mUnk_10 = NULL; @@ -158,7 +158,7 @@ void AdventureModeManager_184::vfunc_20(unk32 param1, unk32 param2) { } } -void AdventureModeManager_184::vfunc_24() { +void AdventureModeManager_184::vfunc_60() { this->mUnk_10 = NULL; this->mUnk_14 = NULL; } diff --git a/src/024_MainGame/Game/AdventureModeManager_18C_024.cpp b/src/024_MainGame/Game/AdventureModeManager_18C_024.cpp index 2e6b751b..12568929 100644 --- a/src/024_MainGame/Game/AdventureModeManager_18C_024.cpp +++ b/src/024_MainGame/Game/AdventureModeManager_18C_024.cpp @@ -44,7 +44,7 @@ AdventureModeManager_18C::AdventureModeManager_18C(GameModeManagerBase_104 *para AdventureModeManager_18C::~AdventureModeManager_18C() {} -void AdventureModeManager_18C::vfunc_08(unk32 param1) { +void AdventureModeManager_18C::vfunc2_08(unk32 param1) { switch (param1) { case 1: this->func_ov024_020ca034(); @@ -62,7 +62,7 @@ void AdventureModeManager_18C::vfunc_08(unk32 param1) { } } -void AdventureModeManager_18C::vfunc_0C(unk32 param1) { +void AdventureModeManager_18C::vfunc2_0C(unk32 param1) { switch (param1) { case 6: switch (this->mUnk_54) { @@ -112,7 +112,7 @@ void AdventureModeManager_18C::vfunc_0C(unk32 param1) { } } -void AdventureModeManager_18C::vfunc_10(unk32 param1, unk32 param2) { +void AdventureModeManager_18C::vfunc_54(unk32 param1, unk32 param2) { if (param2 != 1) { return; } @@ -205,12 +205,12 @@ void AdventureModeManager_18C::func_ov024_020c9c6c() { G2S_SetBG3Priority(2); } -void AdventureModeManager_18C::vfunc_14(unk32 param1) { +void AdventureModeManager_18C::vfunc2_14(unk32 param1) { this->mUnk_10->func_ov011_020b88ac(); this->mUnk_54 = 3; } -void AdventureModeManager_18C::vfunc_18(unk32 param1) { +void AdventureModeManager_18C::vfunc2_18(unk32 param1) { switch (param1) { case 1: data_ov000_020b5214.func_ov000_0206db44(0x44); @@ -243,7 +243,7 @@ void AdventureModeManager_18C::vfunc_18(unk32 param1) { } } -void AdventureModeManager_18C::vfunc_1C(unk32 param1) { +void AdventureModeManager_18C::vfunc_5C(unk32 param1) { switch (param1) { case 1: switch (this->mUnk_54) { @@ -282,7 +282,7 @@ void AdventureModeManager_18C::vfunc_1C(unk32 param1) { } } -void AdventureModeManager_18C::vfunc_20(unk32 param1, unk32 param2) { +void AdventureModeManager_18C::vfunc_58(unk32 param1, unk32 param2) { if (param2 != 1) { return; } @@ -346,7 +346,7 @@ void AdventureModeManager_18C::vfunc_20(unk32 param1, unk32 param2) { case 4: case 5: case 6: - case 7: + case 7: { this->mUnk_44 = data_0204a110.mUnk_DC0.mUnk_08->func_0201ec30(); Vec2s auStack_14; @@ -362,6 +362,7 @@ void AdventureModeManager_18C::vfunc_20(unk32 param1, unk32 param2) { GetAdventureModeManager()->func_ov024_020c53e8(); GetAdventureModeManager()->func_ov024_020c6770(temp_r6, temp_r7, 0, 4); break; + } default: GetAdventureModeManager()->func_ov024_020c555c(3); GetAdventureModeManager()->func_ov024_020c53e8(); @@ -381,7 +382,7 @@ void AdventureModeManager_18C::vfunc_20(unk32 param1, unk32 param2) { func_02019b3c(); } -void AdventureModeManager_18C::vfunc_24() { +void AdventureModeManager_18C::vfunc_60() { this->mUnk_10 = NULL; this->mUnk_3A = false; } diff --git a/src/024_MainGame/Game/AdventureModeManager_190_024.cpp b/src/024_MainGame/Game/AdventureModeManager_190_024.cpp index ad8b2cf0..5d05ccf4 100644 --- a/src/024_MainGame/Game/AdventureModeManager_190_024.cpp +++ b/src/024_MainGame/Game/AdventureModeManager_190_024.cpp @@ -25,19 +25,19 @@ AdventureModeManager_190::AdventureModeManager_190(GameModeManagerBase_104 *para data_0204a088->func_ov000_020611dc(this, 0x15); } -void AdventureModeManager_190::vfunc_08(unk32 param1) { +void AdventureModeManager_190::vfunc2_08(unk32 param1) { if (param1 == 1) { this->func_ov024_020ca21c(); } } -void AdventureModeManager_190::vfunc_0C(unk32 param1) { +void AdventureModeManager_190::vfunc2_0C(unk32 param1) { if (param1 == 1 && this->mUnk_14.mUnk_0D == this->mUnk_14.mUnk_10) { data_0204a088->func_ov000_02061230(); } } -void AdventureModeManager_190::vfunc_10(unk32 param1, unk32 param2) { +void AdventureModeManager_190::vfunc_54(unk32 param1, unk32 param2) { if (param1 == 1) { data_0204a088->func_ov000_02061248(); this->mUnk_10 = func_ov011_020b8e54(&this->mUnk_0C, this->mUnk_60); @@ -45,19 +45,19 @@ void AdventureModeManager_190::vfunc_10(unk32 param1, unk32 param2) { } } -void AdventureModeManager_190::vfunc_18(unk32 param1) { +void AdventureModeManager_190::vfunc2_18(unk32 param1) { if (param1 == 1) { this->func_ov024_020ca21c(); } } -void AdventureModeManager_190::vfunc_1C(unk32 param1) { +void AdventureModeManager_190::vfunc_5C(unk32 param1) { if (param1 == 1 && this->mUnk_14.mUnk_0D == this->mUnk_14.mUnk_10) { data_0204a088->func_ov000_02061230(); } } -void AdventureModeManager_190::vfunc_20(unk32 param1, unk32 param2) { +void AdventureModeManager_190::vfunc_58(unk32 param1, unk32 param2) { if (param1 == 1) { this->mUnk_10 = NULL; data_0204a088->func_ov000_02061248(); diff --git a/src/024_MainGame/Train/UnkTrainSystem1_024.cpp b/src/024_MainGame/Train/UnkTrainSystem1_024.cpp index ab153cee..e40ecb67 100644 --- a/src/024_MainGame/Train/UnkTrainSystem1_024.cpp +++ b/src/024_MainGame/Train/UnkTrainSystem1_024.cpp @@ -120,9 +120,9 @@ void UnkTrainSystem1::func_ov024_020d562c(const VecFx32 *param1, fx32 param2) { sp44.z = new_var5; #if IS_JP - UnkStruct_027e09bc_0C *temp_r8_2 = data_027e09bc->mUnk_04; + UnkStruct_027e09bc_0C *temp_r8_2 = data_027e09bc->mUnk_04[0]; #else - UnkStruct_027e09bc_0C *temp_r8_2 = data_027e09bc->mUnk_0C; + UnkStruct_027e09bc_0C *temp_r8_2 = data_027e09bc->mUnk_04[2]; #endif temp_r1_3.x = temp_r8_2->mUnk_034.x; diff --git a/src/024_MainGame/Train/UnkTrainSystem2_024.cpp b/src/024_MainGame/Train/UnkTrainSystem2_024.cpp index de2e779c..fef5d556 100644 --- a/src/024_MainGame/Train/UnkTrainSystem2_024.cpp +++ b/src/024_MainGame/Train/UnkTrainSystem2_024.cpp @@ -57,7 +57,7 @@ void UnkTrainSystem2::func_ov024_020d5990() { } } - if (data_027e09b8->func_01ffd420() == 0) { + if (!data_027e09b8->func_01ffd420()) { if (gpCargoManager->mUnk_18 <= 0) { this->mUnk_64 = 0; this->mUnk_66 = 0; diff --git a/src/031_Land/Actor/ActorBlast.cpp b/src/031_Land/Actor/ActorBlast.cpp index 19d0a5e0..157f79c6 100644 --- a/src/031_Land/Actor/ActorBlast.cpp +++ b/src/031_Land/Actor/ActorBlast.cpp @@ -59,7 +59,7 @@ bool ActorBlast::vfunc_18(unk32 param1) { this->mUnk_F0 = FLOAT_TO_FX32(1.0f); } - data_027e09bc->mUnk_0C->func_ov000_0207a1e0(0x6); + data_027e09bc->mUnk_04[2]->func_ov000_0207a1e0(0x6); if (this->mUnk_5C.mParams[0] != 0x0) { data_027e0cec->func_ov000_0209feac(0x812, &this->mPos, 0x2, 0x0, 0x0); diff --git a/src/031_Land/Actor/ActorItemBoomerang.cpp b/src/031_Land/Actor/ActorItemBoomerang.cpp index 82b888f8..847af3a5 100644 --- a/src/031_Land/Actor/ActorItemBoomerang.cpp +++ b/src/031_Land/Actor/ActorItemBoomerang.cpp @@ -30,8 +30,7 @@ ActorProfileItemBoomerang::ActorProfileItemBoomerang() : // non-matching ActorItemBoomerang::ActorItemBoomerang() : - mUnk_94(data_027e0ce0->mUnk_1C->func_ov000_0208ed30(0x0, 0x1, ItemManager::func_ov000_020a8974(0x1)->mUnk_10)), - mUnk_9C(true), + mUnk_94(data_027e0ce0->mUnk_1C->func_ov000_0208ed30(0x0, 0x1, ItemManager::func_ov000_020a8974(0x1)->mUnk_10), true), mUnk_11C(this), mUnk_12C(), mUnk_138(0x0), diff --git a/src/031_Land/Actor/ActorRollingStone.cpp b/src/031_Land/Actor/ActorRollingStone.cpp index 6ec83d9a..abf868a9 100644 --- a/src/031_Land/Actor/ActorRollingStone.cpp +++ b/src/031_Land/Actor/ActorRollingStone.cpp @@ -93,8 +93,7 @@ void ActorRollingStone_D4::vfunc_10(Actor *param1) { // non-matching ActorRollingStone::ActorRollingStone() : - mUnk_94(G3d_GetModelPtr(GET_PROFILE(ActorProfileRollingStone)->mUnk_3C.mUnk_50)), - mUnk_9C(0x1), + mUnk_94(G3d_GetModelPtr(GET_PROFILE(ActorProfileRollingStone)->mUnk_3C.mUnk_50), true), mUnk_AC(this), mUnk_D4(this), mUnk_10C(data_027e0130), diff --git a/src/031_Land/Actor/ActorRupee.cpp b/src/031_Land/Actor/ActorRupee.cpp index a26f9470..468240af 100644 --- a/src/031_Land/Actor/ActorRupee.cpp +++ b/src/031_Land/Actor/ActorRupee.cpp @@ -393,7 +393,7 @@ void ActorRupee::func_ov031_020e94d4() { void ActorRupee::func_ov031_020e951c() { ItemId itemId; - if (data_027e09b8->func_01ffd420() != 0) { + if (data_027e09b8->func_01ffd420()) { return; } diff --git a/src/031_Land/Actor/ActorShotArrow.cpp b/src/031_Land/Actor/ActorShotArrow.cpp index fec1f686..1bbbbd0e 100644 --- a/src/031_Land/Actor/ActorShotArrow.cpp +++ b/src/031_Land/Actor/ActorShotArrow.cpp @@ -122,7 +122,7 @@ ActorProfileShotArrow::ActorProfileShotArrow() : } ActorShotArrow::ActorShotArrow() : - mUnk_9C(true), + mUnk_94(true), mUnk_A0(GetModelFromProfile3(func_ov031_020f1404(), data_ov031_02110b5c)), mUnk_100(&this->mUnk_120, GetModelFromProfile3(func_ov031_020f1404(), data_ov031_02110b5c), func_ov031_020f1404()->func_ov000_02058a84(0, data_ov031_02110b08)), @@ -560,7 +560,7 @@ void ActorShotArrow::vfunc_2C(unk32 param1) { VecFx32_Copy(&this->mPos, &stack.mUnk_E4); stack.mUnk_F0 = 0x2000; - if (!data_027e09bc->mUnk_04->func_01ffd640(&stack.mUnk_E4)) { + if (!data_027e09bc->mUnk_04[0]->func_01ffd640(&stack.mUnk_E4)) { return; } diff --git a/src/031_Land/Actor/ActorUnkMLCK.cpp b/src/031_Land/Actor/ActorUnkMLCK.cpp index 3da0a5bf..3bd6a115 100644 --- a/src/031_Land/Actor/ActorUnkMLCK.cpp +++ b/src/031_Land/Actor/ActorUnkMLCK.cpp @@ -7,11 +7,25 @@ #include "Unknown/UnkStruct_027e09b8.hpp" #include "Unknown/UnkStruct_027e0ce0.hpp" #include "Unknown/UnkStruct_027e0d34.hpp" +#include "Unknown/UnkStruct_ov000_020b3000.hpp" #include "Unknown/UnkStruct_ov000_020b51b8.hpp" #include "Unknown/UnkStruct_ov000_020b52e8.hpp" +#include "nitro/math.h" extern "C" unk32 data_ov031_02110bec[]; -extern "C" unk32 data_ov031_02112ad4; + +struct UnkStruct_ov031_02114d28 { + /* 00 */ u32 mUnk_00; + /* 04 */ u32 mUnk_04; + /* 08 */ u32 mUnk_08; + + UnkStruct_ov031_02114d28() { + this->mUnk_00 = 0x10002; + this->mUnk_08 = 0x10006; + this->mUnk_04 = 0x10009; + } +}; +static const UnkStruct_ov031_02114d28 data_ov031_02114d28; DECL_PROFILE(ActorProfileUnkMLCK); @@ -22,19 +36,11 @@ Actor *ActorProfileUnkMLCK::Create() { ActorProfileUnkMLCK::ActorProfileUnkMLCK() : ActorProfile(ActorId_MLCK) {} -// non-matching ActorUnkMLCK::ActorUnkMLCK() : mUnk_B4(mUnk_A0), mUnk_BC(0x4), mUnk_C0(0x0), mUnk_C2(0x0), - mUnk_C4(NULL), - mUnk_C8(0x0), - mUnk_CC(-1), - mUnk_D0(0x0), - mUnk_D2(0x0), - mUnk_D4(0x0), - mUnk_D6(0x0), mUnk_D8(this), mUnk_E4(this), mUnk_F0(false), @@ -46,28 +52,20 @@ ActorUnkMLCK::ActorUnkMLCK() : bool ActorUnkMLCK::vfunc_18(unk32 param1) { this->mUnk_B8 = this->mUnk_5C.mParams[0]; - struct { - void *ptr; - unk32 actorId; - unk32 param; - } local_9c; - local_9c.actorId = ActorId_MLCK; - local_9c.param = this->mUnk_5C.mParams[0]; - local_9c.ptr = &data_ov031_02112ad4; + UnkStruct_ov031_02112ad4 local_9c(ActorId_MLCK, this->mUnk_5C.mParams[0]); Actor **lppActor = gpActorManager->func_01fff350(&local_9c, gpActorManager->mActorTable); if (gpActorManager->mUnk_08 != lppActor) { return false; } - void *param = this; - if (param != NULL) { - param = &this->mUnk_94; - } - data_0204a088->func_ov000_020611dc(param, 0x9); + + data_0204a088->func_ov000_020611dc(this, 0x09); + bool var1 = true; if (!((u16) gpMiscAdvManager->mSongs & (1 << this->mUnk_B8))) { var1 = false; } + bool var2; if (var1 == false) { var2 = false; @@ -86,33 +84,30 @@ void ActorUnkMLCK::vfunc_64(unk32 param1) { this->mUnk_BC = param1; this->mUnk_C2 = 0xFFFF; this->mUnk_C0 = 0x0; - if (param1 != 0x1) { - return; - } - this->mUnk_F1 = false; - this->mUnk_C4 = data_ov000_020b52e8.func_ov000_0206f980(this->mUnk_B8); - this->mUnk_C4->func_ov031_020fb184(); + if (param1 == 0x1) { + this->mUnk_F1 = false; + this->mUnk_C4.mUnk_00 = data_ov000_020b52e8.func_ov000_0206f980(this->mUnk_B8); + this->mUnk_C4.func_ov031_020fb184(); + } } void ActorUnkMLCK::vfunc_54(unk32 param1, unk32 param2) { - if (param2 == 0) { - return; + if (param2 != 0) { + this->vfunc_64(0x1); } - this->vfunc_64(0x1); } -void ActorUnkMLCK::vfunc_58() { +void ActorUnkMLCK::vfunc_58(unk32 param1, unk32 param2) { this->mUnk_F0 = true; } -void ActorUnkMLCK::vfunc_5C() { - if (!this->mUnk_F1 || !this->mUnk_F0) { - return; +void ActorUnkMLCK::vfunc_5C(unk32 param1) { + if (this->mUnk_F1 && this->mUnk_F0) { + data_027e0d34->func_ov031_020d994c(); + data_ov000_020b51b8.func_ov000_0206d274(data_ov031_02110bec[this->mUnk_B8]); + this->mUnk_F0 = false; } - data_027e0d34->func_ov031_020d994c(); - data_ov000_020b51b8.func_ov000_0206d274(data_ov031_02110bec[this->mUnk_B8]); - this->mUnk_F0 = false; } void ActorUnkMLCK::vfunc_60() { @@ -123,14 +118,15 @@ void ActorUnkMLCK::vfunc_68() { if (data_0204a088->mUnk_04 != -1 || data_0204a088->mUnk_08 != -1) { return; } + if (this->mUnk_F2) { data_ov000_020b51b8.func_ov000_0206d274(0x83); GetAdventureModeManager()->func_ov024_020c6d04()->mUnk_C4 = 0x1; GetAdventureModeManager()->func_ov024_020c6d10(); this->vfunc_64(0x2); - return; + } else { + this->vfunc_6C(); } - this->vfunc_6C(); } void ActorUnkMLCK::func_ov031_020faeb0() {} @@ -139,72 +135,67 @@ void ActorUnkMLCK::vfunc_6C() { if (this->mUnk_5C.mUnk_1A[0] != 0x0) { this->func_ov000_02098a88(0x0, 0x1); } - for (ActorUnkMLCK_B4 *ptr = this->mUnk_A0; ptr != this->mUnk_B4; ++ptr) { - ptr->mUnk_00->vfunc_00(); + + for (ActorUnkMLCK_A0 **ptr = this->mUnk_A0; ptr != this->mUnk_B4; ptr++) { + (*ptr)->vfunc_00(); } } void ActorUnkMLCK::vfunc_70() { - if (this->mUnk_5C.mUnk_1A[0] == 0x0) { - return; + if (this->mUnk_5C.mUnk_1A[0] != 0x0) { + this->func_ov000_02098a88(0x0, 0x0); } - this->func_ov000_02098a88(0x0, 0x0); } -// non-matching void ActorUnkMLCK::func_ov031_020faf24() { - UnkStackStruct1 stack; if (this->mUnk_C0 != 0xF) { return; } - if (!this->mUnk_F2) { + + if (this->mUnk_F2 == 0) { return; } - bool var1 = this->func_ov031_020fb204(this->mUnk_B8); - bool var9 = true; - bool var = data_0204a088->func_ov000_020611fc(0x1); + bool temp_r7 = this->func_ov031_020fb204(this->mUnk_B8); + data_0204a088->func_ov000_020611fc(1); GetAdventureModeManager()->func_ov024_020c6d10(); - func_ov000_02072fd0(&stack); + UnkStackStruct1 sp0; + func_ov000_02072fd0(&sp0); + sp0.mUnk_00 = 1; + sp0.mUnk_3A = 0; + sp0.mUnk_3B = 0; - stack.mUnk_00 = 0x1; - stack.mUnk_3A = 0x0; - stack.mUnk_3B = 0x0; + VecFx32_Copy(data_027e0ce0->func_01fff148(0), &sp0.mUnk_0C); - VecFx32_Copy(data_027e0ce0->func_01fff148(0x0), &stack.mUnk_0C); + this->mUnk_F4 = data_027e09b8->func_ov000_02073388(&sp0, 0); + this->mUnk_D8.mUnk_04b = true; + this->mUnk_D8.mUnk_05 = temp_r7; - this->mUnk_F4 = data_027e09b8->func_ov000_02073388(&stack, 0x0); + u16 temp_r8 = this->mUnk_B8 + 0x28; + ActorUnk_vfunc_B0 sp8C; + sp8C.mUnk_00 = true; + sp8C.mUnk_0C = temp_r8 | 0x10000; + sp8C.mUnk_14 = 0; + sp8C.mUnk_32 = 0; - this->mUnk_D8.mUnk_04 = true; - this->mUnk_D8.mUnk_05 = var1; - ActorUnk_vfunc_B0 actor = ActorUnk_vfunc_B0(); - actor.mUnk_0C = (u16) (this->mUnk_B8 + 0x28) | 0x10000; - actor.mUnk_00 = 0x1; - actor.mUnk_14 = 0x0; - actor.mUnk_32 = 0x0; + VecFx32_Copy(data_027e0ce0->func_01fff148(0), &sp8C.mUnk_34); + sp8C.mUnk_04 = &this->mUnk_D8; - VecFx32_Copy(data_027e0ce0->func_01fff148(0x0), &actor.mUnk_34); - actor.mUnk_04 = &this->mUnk_D8; + data_027e09b8->func_ov000_02073470(&sp8C, 0); - data_027e09b8->func_ov000_02073470(&actor, 0x0); + if (temp_r7 == 0) { + this->mUnk_E4.mUnk_04b = 0; + this->mUnk_E4.mUnk_05 = temp_r7 == 0; - if (!var) { - if (var) { - var9 = false; - } - this->mUnk_E4.mUnk_04 = false; - this->mUnk_E4.mUnk_05 = var9; - ActorUnk_vfunc_B0 actor2 = ActorUnk_vfunc_B0(); - actor2.mUnk_00 = 0x1; - actor2.mUnk_0C = (u16) (this->mUnk_B8 + 0x88) | 0x10000; - actor2.mUnk_14 = 0x0; - actor2.mUnk_32 = 0x0; - - VecFx32_Copy(data_027e0ce0->func_01fff148(0x0), &actor2.mUnk_34); - actor2.mUnk_04 = &this->mUnk_E4; - - data_027e09b8->func_ov000_02073470(&actor2, 0x0); + ActorUnk_vfunc_B0 sp40; + sp40.mUnk_00 = true; + sp40.mUnk_0C = (u16) (this->mUnk_B8 + 0x88) | 0x10000; + sp40.mUnk_14 = 0; + sp40.mUnk_32 = 0; + VecFx32_Copy(data_027e0ce0->func_01fff148(0), &sp40.mUnk_34); + sp40.mUnk_04 = &this->mUnk_E4; + data_027e09b8->func_ov000_02073470(&sp40, 0); } this->mUnk_F0 = false; @@ -219,46 +210,47 @@ void ActorUnkMLCK::func_ov031_020fb11c() { this->vfunc_6C(); data_027e0d34->func_ov031_020d996c(); this->vfunc_64(0x0); - for (ActorUnkMLCK_B4 *ptr = this->mUnk_A0; ptr != this->mUnk_B4; ++ptr) { - ptr->mUnk_00->vfunc_08(); + + for (ActorUnkMLCK_A0 **ptr = this->mUnk_A0; ptr != this->mUnk_B4; ptr++) { + (*ptr)->vfunc_08(); } } -void ActorUnkMLCK_B4_00::func_ov031_020fb184() { - this->mUnk_04 = 0x0; +void ActorUnkMLCK_C4::func_ov031_020fb184() { + this->mUnk_04 = 0; this->mUnk_08 = -1; - this->mUnk_0E = 0xFFFF; - this->mUnk_0C = 0x0; - this->mUnk_12 = 0xFFFF; - this->mUnk_10 = 0x0; + this->mUnk_0E = -1; + this->mUnk_0C = 0; + this->mUnk_12 = -1; + this->mUnk_10 = 0; } void ActorUnkMLCK_D8::vfunc2_00() { - if (!this->mUnk_04b) { - return; + if (this->mUnk_04b) { + this->mUnk_08->func_ov031_020fb104(); } - this->mUnk_08->func_ov031_020fb104(); } void ActorUnkMLCK_D8::vfunc2_04() { - if (!this->mUnk_05) { - return; + if (this->mUnk_05) { + this->mUnk_08->func_ov031_020fb11c(); } - this->mUnk_08->func_ov031_020fb11c(); } -void ActorUnkMLCK::func_ov031_020fb1e8(ActorUnkMLCK_B4_00 *param1) { +void ActorUnkMLCK::func_ov031_020fb1e8(ActorUnkMLCK_A0 *param1) { if (this->mUnk_B4 != NULL) { - this->mUnk_B4->mUnk_00 = param1; + *this->mUnk_B4 = param1; } - ++this->mUnk_B4; + + this->mUnk_B4++; } bool ActorUnkMLCK::func_ov031_020fb204(unk32 param1) { - for (ActorUnkMLCK_B4 *ptr = this->mUnk_A0; ptr != this->mUnk_B4; ++ptr) { - if (ptr->mUnk_00->vfunc_04()) { + for (ActorUnkMLCK_A0 **ptr = this->mUnk_A0; ptr != this->mUnk_B4; ptr++) { + if ((*ptr)->vfunc_04()) { return true; } } + return false; } diff --git a/src/031_Land/Actor/ActorUnkRMTG.cpp b/src/031_Land/Actor/ActorUnkRMTG.cpp index 9dbc8b94..6b990336 100644 --- a/src/031_Land/Actor/ActorUnkRMTG.cpp +++ b/src/031_Land/Actor/ActorUnkRMTG.cpp @@ -40,7 +40,7 @@ bool ActorUnkRMTG::vfunc_18(unk32 param1) { } void ActorUnkRMTG::vfunc_1C() { - UnkStruct_027e09bc_0C *data = data_027e09bc->mUnk_0C; + UnkStruct_027e09bc_0C *data = data_027e09bc->mUnk_04[2]; data->func_ov000_0207834c(&this->mPos, func_ov000_02077590(0x7), 0x0); } diff --git a/src/031_Land/Actor/ActorUnkROCK.cpp b/src/031_Land/Actor/ActorUnkROCK.cpp index 1836214f..2756e2ab 100644 --- a/src/031_Land/Actor/ActorUnkROCK.cpp +++ b/src/031_Land/Actor/ActorUnkROCK.cpp @@ -26,8 +26,7 @@ ActorProfileUnkROCK::ActorProfileUnkROCK() : } ActorUnkROCK::ActorUnkROCK() : - mUnk_94(G3d_GetModelPtr(GET_PROFILE(ActorProfileUnkROCK)->mUnk_3C.mUnk_50)), - mUnk_9C(true) { + mUnk_94(G3d_GetModelPtr(GET_PROFILE(ActorProfileUnkROCK)->mUnk_3C.mUnk_50), true) { this->mUnk_44 = 0x1F; this->mUnk_4A[1] = 0x02; } diff --git a/src/031_Land/Actor/ActorUnkTGTZ.cpp b/src/031_Land/Actor/ActorUnkTGTZ.cpp index 88a9a737..a20b1ef5 100644 --- a/src/031_Land/Actor/ActorUnkTGTZ.cpp +++ b/src/031_Land/Actor/ActorUnkTGTZ.cpp @@ -50,8 +50,7 @@ ActorProfileUnkTGTZ::ActorProfileUnkTGTZ() : // non-matching ActorUnkTGTZ::ActorUnkTGTZ() : #if IS_JP - mUnk_094(NULL), - mUnk_09C(true), + mUnk_094(NULL, true), #else mUnk_094(G3d_GetModelPtr(GET_PROFILE(ActorProfileUnkTGTZ)->mUnk_3C.mUnk_50), 0xC, &this->mUnk_100), #endif diff --git a/src/031_Land/Actor/ActorUnkZLSL_ZSRS.cpp b/src/031_Land/Actor/ActorUnkZLSL_ZSRS.cpp index 7cf47094..66bb03cd 100644 --- a/src/031_Land/Actor/ActorUnkZLSL_ZSRS.cpp +++ b/src/031_Land/Actor/ActorUnkZLSL_ZSRS.cpp @@ -14,6 +14,7 @@ #include "Unknown/UnkStruct_027e0cd8.hpp" #include "Unknown/UnkStruct_027e0cec.hpp" #include "Unknown/UnkStruct_027e0d8c.hpp" +#include "Unknown/UnkStruct_ov000_020b3000.hpp" #include "Unknown/UnkStruct_ov000_020b51b8.hpp" #include "Unknown/UnkStruct_ov024_020d8660.hpp" @@ -156,11 +157,12 @@ ActorUnkZLSL::ActorUnkZLSL() : void func_ov031_020ea100() {} -bool UnkStruct_ov031_0211361c::func_ov031_020ea0b4(Actor *param1) { - if (param1 != NULL && param1->GetActorId() == ActorId_RAT0 && param1->mState == ActorUnkRAT0State_0 && - param1->mUnk_5C.mParams[1] == 0x1) { +bool UnkStruct_ov031_0211361c::vfunc_00(Actor *pActor) { + if (pActor != NULL && pActor->GetActorId() == ActorId_RAT0 && pActor->mState == ActorUnkRAT0State_0 && + pActor->mUnk_5C.mParams[1] == 0x1) { return true; } + return false; } THUMB_END @@ -990,7 +992,7 @@ unk32 ActorUnkZLSL::func_ov031_020ec54c() { } void ActorUnkZLSL::vfunc_B0() { - if (data_027e09b8->func_01ffd420() != 0x0) { + if (data_027e09b8->func_01ffd420()) { return; } ActorUnk_vfunc_B0 stack = ActorUnk_vfunc_B0(); @@ -1277,7 +1279,7 @@ void ActorUnkZLSL::func_ov031_020ed4e4(unk32 param1, unk32 param2) { if (data_027e09b8->func_ov000_020732ec(this->mUnk_28C8) == 0x0) { return; } - data_027e09bc->mUnk_0C->func_ov000_02078834(&this->mUnk_28F4, &this->mUnk_28E8, param2, param1); + data_027e09bc->mUnk_04[2]->func_ov000_02078834(&this->mUnk_28F4, &this->mUnk_28E8, param2, param1); } // non-matching @@ -1414,7 +1416,6 @@ unk32 ActorUnkZLSL::vfunc_80(unk32 param1, unk32 param2) { bool ActorUnkZLSL::func_ov031_020ee724() { UnkStruct_ov031_0211361c stack; - Actor **actor = gpActorManager->func_01fff350(&stack, gpActorManager->mActorTable); return *actor != NULL; } diff --git a/src/031_Land/MapObject/MapObjectDoorClick.cpp b/src/031_Land/MapObject/MapObjectDoorClick.cpp index d916f78f..25549195 100644 --- a/src/031_Land/MapObject/MapObjectDoorClick.cpp +++ b/src/031_Land/MapObject/MapObjectDoorClick.cpp @@ -35,7 +35,7 @@ MapObjectProfileDoorClick::MapObjectProfileDoorClick() : } MapObjectDoorClick::MapObjectDoorClick() : - mUnk_9C(1), + mUnk_94(true), mUnk_A0(0) { this->mUnk_8F = true; SET_FLAG(this->mFlags, MapObjFlag_9); diff --git a/src/031_Land/MapObject/MapObjectDoorDangerSpawn.cpp b/src/031_Land/MapObject/MapObjectDoorDangerSpawn.cpp index ba43a613..9f02125a 100644 --- a/src/031_Land/MapObject/MapObjectDoorDangerSpawn.cpp +++ b/src/031_Land/MapObject/MapObjectDoorDangerSpawn.cpp @@ -36,8 +36,7 @@ MapObjectProfileDoorDangerSpawn::MapObjectProfileDoorDangerSpawn() : } MapObjectDoorDangerSpawn::MapObjectDoorDangerSpawn() : - mUnk_94(GetModelFromProfile()), - mUnk_9C(1), + mUnk_94(GetModelFromProfile(), true), mUnk_A0(0), mUnk_A1(false), mUnk_A2(false), @@ -124,7 +123,7 @@ void MapObjectDoorDangerSpawn::vfunc_04(void) { ptr->func_ov000_020803ec(this->mUnk_20.mParams[0]); this->vfunc_5C(MapObjDoorDangerSpawnState_0, 0); - UnkStruct_027e09bc_0C *uVar5 = data_027e09bc->mUnk_0C; + UnkStruct_027e09bc_0C *uVar5 = data_027e09bc->mUnk_04[2]; MapObjectDoorDangerSpawn::func_ov031_020fe5fc(&auStack_20, this); uVar5->func_ov000_0207834c(&auStack_20, (unk32) func_ov000_02077590(0), 0); @@ -141,7 +140,7 @@ void MapObjectDoorDangerSpawn::vfunc2_08(void) { this->MapObjectDoorBase::vfunc2_08(); if (this->mUnk_A2) { - data_027e09bc->mUnk_0C->func_ov000_02078230(0); + data_027e09bc->mUnk_04[2]->func_ov000_02078230(0); } data_ov000_020b51b8.func_ov000_0206c96c(data_ov031_02110c00[this->mUnk_20.mParams[3]]); @@ -178,7 +177,7 @@ void MapObjectDoorDangerSpawn::vfunc_08(void) { sp3C = *temp_r0_3; ((unk16 *) sp3C.data)[3] = this->mAngle; - UnkStruct_027e09bc_0C *temp_r5 = data_027e09bc->mUnk_0C; + UnkStruct_027e09bc_0C *temp_r5 = data_027e09bc->mUnk_04[2]; this->func_ov031_020fe5fc(&sp10, this); temp_r5->func_ov000_02078764(&sp10, &sp3C, 0); @@ -192,7 +191,7 @@ void MapObjectDoorDangerSpawn::vfunc_08(void) { sp1C = *temp_r0_3; - UnkStruct_027e09bc_0C *temp_r7_2 = data_027e09bc->mUnk_0C; + UnkStruct_027e09bc_0C *temp_r7_2 = data_027e09bc->mUnk_04[2]; this->func_ov031_020fe5fc(&sp4, this); temp_r7_2->func_ov000_02078764(&sp4, &sp1C, 0); } diff --git a/src/031_Land/MapObject/MapObjectDoorKey.cpp b/src/031_Land/MapObject/MapObjectDoorKey.cpp index 9604bec9..13f38d70 100644 --- a/src/031_Land/MapObject/MapObjectDoorKey.cpp +++ b/src/031_Land/MapObject/MapObjectDoorKey.cpp @@ -24,8 +24,7 @@ MapObjectProfileDoorKey::MapObjectProfileDoorKey() : } MapObjectDoorKey::MapObjectDoorKey() : - mUnk_94(GetModelFromProfile()), - mUnk_9C(1), + mUnk_94(GetModelFromProfile(), true), mUnk_A0(0), mUnk_A4(false) { this->mUnk_8F = true; diff --git a/src/031_Land/MapObject/MapObjectUnkSAND.cpp b/src/031_Land/MapObject/MapObjectUnkSAND.cpp index fb1fb493..37f87ce7 100644 --- a/src/031_Land/MapObject/MapObjectUnkSAND.cpp +++ b/src/031_Land/MapObject/MapObjectUnkSAND.cpp @@ -14,7 +14,7 @@ MapObjectProfileUnkSAND::MapObjectProfileUnkSAND() : void MapObjectUnkSAND::func_ov031_0210acd4(void) {} void MapObjectUnkSAND::func_ov031_0210ad64(void) {} -void MapObjectUnkSAND::func_ov031_0210ae00(void) {} +unk32 MapObjectUnkSAND::func_ov031_0210ae00(Vec2bCpp param1, void *param2) {} void MapObjectUnkSAND::func_ov031_0210ae90(void) {} void MapObjectUnkSAND::func_ov031_0210af50(void) {} void MapObjectUnkSAND::func_ov031_0210b018(void) {} @@ -22,7 +22,7 @@ void MapObjectUnkSAND::func_ov031_0210b028(void) {} void MapObjectUnkSAND::func_ov031_0210b0ac(void) {} void MapObjectUnkSAND::func_ov031_0210b0e4(void) {} void MapObjectUnkSAND::func_ov031_0210b144(void) {} -void MapObjectUnkSAND::func_ov031_0210b17c(void) {} +void MapObjectUnkSAND::func_ov031_0210b17c(MapObjectUnkSAND_40 *param1, unk32 param2) {} void MapObjectUnkSAND::func_ov031_0210b1ec(void) {} void MapObjectUnkSAND::func_ov031_0210b2cc(void) {} void MapObjectUnkSAND::func_ov031_0210b32c(void) {} diff --git a/src/031_Land/MapObject/MapObjectUnkSKDI.cpp b/src/031_Land/MapObject/MapObjectUnkSKDI.cpp index 13053d07..3c6434e4 100644 --- a/src/031_Land/MapObject/MapObjectUnkSKDI.cpp +++ b/src/031_Land/MapObject/MapObjectUnkSKDI.cpp @@ -21,8 +21,7 @@ MapObjectProfileUnkSKDI::MapObjectProfileUnkSKDI() : } MapObjectUnkSKDI::MapObjectUnkSKDI() : - mUnk_040(GetModelFromProfile()), - mUnk_048(0x1), + mUnk_040(GetModelFromProfile(), true), mUnk_07C(0x0), mUnk_080(-0x1), mUnk_084(0x0), @@ -198,7 +197,7 @@ void MapObjectUnkSKDI::func_ov031_0210643c(unk32 param1) { this->mUnk_0FA = 0x0; this->mUnk_0F8 = 0x0; } - if (data_027e09b8->func_01ffd420() != 0) { + if (data_027e09b8->func_01ffd420()) { return; } if (this->mUnk_0F8 < this->mUnk_0FA) { diff --git a/src/063_Shrine/MapObject/MapObjectUnkSTAT.cpp b/src/063_Shrine/MapObject/MapObjectUnkSTAT.cpp index 3857b5d7..4a9740aa 100644 --- a/src/063_Shrine/MapObject/MapObjectUnkSTAT.cpp +++ b/src/063_Shrine/MapObject/MapObjectUnkSTAT.cpp @@ -54,8 +54,7 @@ MapObjectProfileUnkSTAT::MapObjectProfileUnkSTAT() : } MapObjectUnkSTAT::MapObjectUnkSTAT() : - mUnk_40(G3d_GetModelPtr(GET_PROFILE(MapObjectProfileUnkSTAT)->mUnk_20.mUnk_50)), - mUnk_48(1), + mUnk_40(G3d_GetModelPtr(GET_PROFILE(MapObjectProfileUnkSTAT)->mUnk_20.mUnk_50), true), mUnk_4C(4), mUnk_50(-1), mUnk_54(0x8000), diff --git a/src/070_Dungeon/MapObject/MapObjectUnkPTFL.cpp b/src/070_Dungeon/MapObject/MapObjectUnkPTFL.cpp index 54b4a5d3..1b55be7d 100644 --- a/src/070_Dungeon/MapObject/MapObjectUnkPTFL.cpp +++ b/src/070_Dungeon/MapObject/MapObjectUnkPTFL.cpp @@ -16,12 +16,12 @@ MapObjectUnkPTFL::MapObjectUnkPTFL() {} void MapObjectUnkPTFL::func_ov070_0214ba34(void) {} void MapObjectUnkPTFL::func_ov070_0214bb78(void) {} -void MapObjectUnkPTFL::func_ov070_0214bbd0(void) {} +void MapObjectUnkPTFL::func_ov070_0214bbd0(MapObjectUnkPTFLState state, bool param2) {} void MapObjectUnkPTFL::func_ov070_0214bd48(void) {} void MapObjectUnkPTFL::func_ov070_0214bd90(void) {} void MapObjectUnkPTFL::func_ov070_0214bf58(void) {} -void MapObjectUnkPTFL::func_ov070_0214bf5c(void) {} -void MapObjectUnkPTFL::func_ov070_0214bf6c(void) {} +bool MapObjectUnkPTFL::func_ov070_0214bf5c(void) {} +bool MapObjectUnkPTFL::func_ov070_0214bf6c(void) {} void MapObjectUnkPTFL::func_ov070_0214bfbc(void) {} MapObjectUnkPTFL::~MapObjectUnkPTFL() {} diff --git a/src/101_SceneInitLand/Player/PlayerLinkActor_A0_1C_101.cpp b/src/101_SceneInitLand/Player/PlayerLinkActor_A0_1C_101.cpp index eb2f88cc..dd61ef64 100644 --- a/src/101_SceneInitLand/Player/PlayerLinkActor_A0_1C_101.cpp +++ b/src/101_SceneInitLand/Player/PlayerLinkActor_A0_1C_101.cpp @@ -1,9 +1,8 @@ #include "Actor/ActorManager.hpp" #include "Player/PlayerLink.hpp" +#include "Unknown/UnkStruct_ov000_020b3000.hpp" -extern unk32 data_ov000_020b3000; - -PlayerLinkActor_A0_1C::PlayerLinkActor_A0_1C(unk32 param1) { +PlayerLinkActor_A0_1C::PlayerLinkActor_A0_1C(UnkStruct_027e0ce0_40 *param1) { this->mUnk_00 = param1; this->mUnk_04 = 0x00; this->mUnk_06 = false; @@ -14,13 +13,7 @@ void PlayerLinkActor_A0_1C::func_ov101_02183290() { this->mUnk_06 = false; this->mUnk_0C.Reset(); - struct { - void *ptr; - unk32 actorId; - } local_14; - local_14.ptr = &data_ov000_020b3000; - local_14.actorId = ActorId_IWTS; - + UnkStruct_ov000_020b3000 local_14(ActorId_IWTS); Actor **ppActor = gpActorManager->func_01fff350(&local_14, gpActorManager->mActorTable); // why is this a loop diff --git a/src/102_CourseExecLand/ActorUnkMLCK_102.cpp b/src/102_CourseExecLand/ActorUnkMLCK_102.cpp new file mode 100644 index 00000000..bd4ce8d0 --- /dev/null +++ b/src/102_CourseExecLand/ActorUnkMLCK_102.cpp @@ -0,0 +1,97 @@ +#include "Actor/ActorId.hpp" +#include "Actor/ActorManager.hpp" +#include "Actor/ActorUnkMLCK.hpp" +#include "MainGame/MiscAdvManager.hpp" +#include "Unknown/UnkStruct_027e09b8.hpp" +#include "Unknown/UnkStruct_027e0cf0.hpp" +#include "Unknown/UnkStruct_ov000_020b3000.hpp" +#include "Unknown/UnkStruct_ov000_020b51b8.hpp" +#include "Unknown/UnkStruct_ov000_020b51c0.hpp" +#include "nitro/types.h" +#include "types.h" + +#include + +struct UnkStruct_ov102_02184a10 { + /* 00 */ u32 mUnk_00; + /* 04 */ u32 mUnk_04; + /* 08 */ u32 mUnk_08; + + UnkStruct_ov102_02184a10() { + this->mUnk_08 = 0x10002; + this->mUnk_04 = 0x10006; + this->mUnk_00 = 0x10009; + } +}; +static const UnkStruct_ov102_02184a10 data_ov102_02184a10; + +void ActorUnkMLCK::vfunc_20() { + this->vfunc_70(); + + this->mUnk_F2 = gpMiscAdvManager->mSongs & (1 << this->mUnk_B8) ? 1 : 0; + + if (!this->mUnk_F3) { + return; + } + + switch (this->mUnk_BC) { + case 1: + if (data_027e0cf0 != NULL && this->mUnk_C4.func_ov102_021847e8(data_027e0cf0->mUnk_0B, data_027e0cf0->mUnk_10)) { + UnkStruct_ov102_02184a24 sp0(ActorId_MLCK); + + if (gpActorManager->mUnk_08 == gpActorManager->func_01fff350(&sp0, gpActorManager->mActorTable)) { + this->vfunc_68(); + this->mUnk_C4.func_ov031_020fb184(); + } + } + break; + case 2: + this->func_ov031_020faf24(); + break; + } + + if (data_ov000_020b51b8.IsUnk08_2()) { + data_ov000_020b51c8.func_02002f04(); + } + + if (this->mUnk_F4 != -1) { + if (!data_ov000_020b51b8.IsUnk08_2() && data_027e09b8->func_ov000_020732fc(this->mUnk_F4) != 0) { + this->mUnk_F4 = -1; + } + } + + if (this->mUnk_C0 < this->mUnk_C2) { + (*(volatile u16 *) &this->mUnk_C0)++; + } +} + +void ActorUnkMLCK::vfunc_24() { + this->vfunc_20(); +} + +bool ActorUnkMLCK_C4::func_ov102_021847e8(unk32 param1, unk32 param2) { + if (param1 != 0) { + if (this->mUnk_04 > 0 && param2 == this->mUnk_00->unk_14[this->mUnk_04 - 1]) { + return false; + } + + if (param2 == this->mUnk_00->unk_14[this->mUnk_04]) { + this->mUnk_04++; + } else { + this->func_ov031_020fb184(); + } + } else if (this->mUnk_04 == this->mUnk_00->unk_02) { + return true; + } + + return false; +} + +bool UnkStruct_ov102_02184a24::vfunc_00(Actor *pActor) { + if (pActor != NULL && pActor->GetActorId() == this->mActorId) { + BOOL var_r1 = ((ActorUnkMLCK *) pActor)->mUnk_BC == 0 || ((ActorUnkMLCK *) pActor)->mUnk_BC == 1; + return !var_r1; + } + + return false; +} diff --git a/src/102_CourseExecLand/MapObjectUnkPTFL_102.cpp b/src/102_CourseExecLand/MapObjectUnkPTFL_102.cpp new file mode 100644 index 00000000..22ac32c7 --- /dev/null +++ b/src/102_CourseExecLand/MapObjectUnkPTFL_102.cpp @@ -0,0 +1,321 @@ +#include "MapObject/MapObjectUnkPTFL.hpp" +#include "Unknown/UnkStruct_027e0208.hpp" +#include "Unknown/UnkStruct_027e0cd8.hpp" +#include "nns/g3d/sbc.h" + +extern "C" void func_01ff9318(void *, unk32, unk32); +extern "C" fx32 func_01ffb464(fx32); + +static unk32 data_ov102_02184980[] = { + 0x1FF00000, 0x0007FC00, 0x000001FF, 0x20000000, 0x00080000, 0x00000200, 0x16A5A800, 0x00000000, 0x00000000, 0x00000000, +}; + +static u16 data_ov102_021849a8[] = { + 0x0800, 0x0800, 0x0800, 0x0800, 0x0800, 0xF800, 0x0800, 0xF800, 0x0800, 0x0800, 0xF800, 0xF800, 0xF800, + 0x0800, 0x0800, 0xF800, 0x0800, 0xF800, 0xF800, 0xF800, 0x0800, 0xF800, 0xF800, 0xF800, 0x1000, 0x1000, + 0x0800, 0x1000, 0x1000, 0xF800, 0x1000, 0x0000, 0x0800, 0x1000, 0x0000, 0xF800, 0x0000, 0x1000, 0x0800, + 0x0000, 0x1000, 0xF800, 0x0000, 0x0000, 0x0800, 0x0000, 0x0000, 0xF800, 0x0000, 0x0800, 0x0000, 0x0000, +}; + +void func_ov102_02183c14(s32 param1) { + u32 sp0[2]; + + sp0[0] = data_ov102_021849a8[param1 * 3] | (data_ov102_021849a8[param1 * 3 + 1] << 0x10); + sp0[1] = data_ov102_021849a8[param1 * 3 + 2]; + + PushGeometryCommand(0x23, sp0, 2); +} + +void func_ov102_02183c6c(s32 param0) { + u32 sp0 = data_ov102_02184980[param0]; + PushGeometryCommand(0x21, &sp0, 1); +} + +void func_ov102_02183c94(s32 param0, s32 param1, s32 param2, s32 param3, s32 param4, u16 param5, u16 param6, u16 param7, + u16 param8, s32 param9) { + u32 spC; + u32 sp8; + u32 sp4; + u32 sp0; + + func_ov102_02183c6c(param4); + + s16 x2 = param8 * 16; + s16 y2 = (param7 + param9) * 16; + + spC = ((u16) x2 << 16) | (u16) y2; + PushGeometryCommand(0x22, &spC, 1); + func_ov102_02183c14(param0); + + s16 x1 = param6 * 16; + + sp8 = ((u16) x1 << 16) | (u16) y2; + PushGeometryCommand(0x22, &sp8, 1); + func_ov102_02183c14(param1); + + s16 y1 = (param5 + param9) * 16; + + sp4 = ((u16) x1 << 16) | (u16) y1; + PushGeometryCommand(0x22, &sp4, 1); + func_ov102_02183c14(param2); + + sp0 = ((u16) x2 << 16) | (u16) y1; + PushGeometryCommand(0x22, &sp0, 1); + func_ov102_02183c14(param3); +} + +void func_ov102_02183da4(s32 param0, s32 param1, s32 param2, s32 param3, s32 param4, u16 param5, u16 param6, u16 param7, + u16 param8, s32 param9) { + func_ov102_02183c94(param0, param1, param2, param3, param4, param5, param6, param7, param8, param9); +} + +void MapObjectUnkPTFL::vfunc_08() { + switch (this->mState) { + case MapObjectUnkPTFLState_0: + this->mUnk_48--; + + if (this->mUnk_48 > 0) { + func_01ff9318(&this->mUnk_54, 0, func_01ffb464(this->mUnk_48 << 0xC)); + } + + if (this->mUnk_48 <= 0) { + this->func_ov070_0214bbd0(MapObjectUnkPTFLState_1, false); + } + break; + case MapObjectUnkPTFLState_1: + switch (this->mUnk_20.mParams[0]) { + case 0: + if (!this->func_ov070_0214bf6c()) { + this->func_ov070_0214bbd0(MapObjectUnkPTFLState_2, false); + } + break; + case 1: + if (this->func_ov070_0214bf5c()) { + this->func_ov070_0214bbd0(MapObjectUnkPTFLState_2, false); + } + break; + default: + break; + } + break; + case MapObjectUnkPTFLState_2: + func_01ff9318(&this->mUnk_54, 0x3C72, 0x333); + + if (this->mUnk_54 == 0x3C72) { + if (this->mUnk_5B == 1) { + this->func_ov070_0214bbd0(MapObjectUnkPTFLState_4, false); + } else { + this->func_ov070_0214bbd0(MapObjectUnkPTFLState_3, false); + } + } + break; + case MapObjectUnkPTFLState_3: + switch (this->mUnk_20.mParams[0]) { + case 0: + if (this->func_ov070_0214bf6c()) { + this->func_ov070_0214bbd0(MapObjectUnkPTFLState_0, false); + } + break; + case 1: + if (!this->func_ov070_0214bf5c()) { + this->func_ov070_0214bbd0(MapObjectUnkPTFLState_0, false); + } + break; + case 2: + if (this->mUnk_56 >= this->mUnk_58) { + this->func_ov070_0214bbd0(MapObjectUnkPTFLState_0, false); + } + break; + default: + break; + } + break; + case MapObjectUnkPTFLState_4: + default: + break; + } + + if (this->mUnk_56 < this->mUnk_58) { + this->mUnk_56++; + } +} + +void MapObjectUnkPTFL::vfunc_0C() { + this->vfunc_08(); +} + +void MapObjectUnkPTFL::vfunc_14() { + Mat4p sp44; + VecFx32 sp38; + VecFx32 sp2C; + VecFx32 sp20; + u32 sp1C; + u32 sp18; + u32 sp14; + u32 sp10; + u32 spC; + u32 sp8; + u32 sp4; + u32 sp0; + s32 temp_r4; + s32 var_r5; + s32 var_r7; + + PushGeometryCommand(0x11, NULL, 0); + + sp1C = data_027e0208.mUnk_094; + PushGeometryCommand(0x30, &sp1C, 1); + + sp18 = 0; + PushGeometryCommand(0x31, &sp18, 1); + + sp14 = 0x1F8081; + PushGeometryCommand(0x29, &sp14, 1); + + sp10 = 3; + PushGeometryCommand(0x10, &sp10, 1); + + PushGeometryCommand(0x15, NULL, 0); + + sp2C.x = this->mUnk_5A << 0xB; + sp2C.y = INT_TO_FX32(this->mUnk_5A); + sp2C.z = 0x1000; + PushGeometryCommand(0x1B, &sp2C, 3); + + Mat4p_InitIdentity(&sp44); + sp44.zColumn.z = 0x10000; + sp44.wColumn.w = 0x10000; + PushGeometryCommand(0x18, &sp44, 0x10); + spC = 2; + PushGeometryCommand(0x10, &spC, 1); + temp_r4 = this->mUnk_40; + + var_r7 = (this->mUnk_5C ? 3 : 0); + + sp8 = 0 | 0x40030000 | ((u16) temp_r4 & ~0xE0000000) | (((u32) (temp_r4 & 0x1C000000) >> 0x1A) << 0x1A) | + (((u32) (temp_r4 & 0x03800000) >> 0x17) << 0x17) | (((u32) (temp_r4 & 0x20000000) >> 0x1D) << 0x1D) | + (((u32) (temp_r4 & 0x00700000) >> 0x14) << 0x14) | (var_r7 << 0x12); + + PushGeometryCommand(0x2A, &sp8, 1); + + sp4 = (u32) ((u32) (this->mUnk_44 << 0x11) >> 0xD) >> (4 - (((u32) (this->mUnk_40 & 0x1C000000) >> 0x1A) == 2 ? 1 : 0)); + PushGeometryCommand(0x2B, &sp4, 1); + + sp38 = this->mPos; + sp20.x = sp38.x; + sp20.y = sp38.y; + sp20.z = sp38.z; + PushGeometryCommand(0x1C, &sp20, 3); + + this->func_ov102_0218419c(); + this->func_ov102_021843b4(); + + sp0 = 1; + PushGeometryCommand(0x12, &sp0, 1); +} + +void MapObjectUnkPTFL::func_ov102_0218419c() { + VecFx32 sp68; + VecFx32 sp5C; + VecFx32 sp50; + VecFx32 sp44; + Mat3p sp20; + u32 sp1C; + u32 sp18; + s32 temp_r0_3; + s32 temp_r1_3; + s32 temp_r7; + + PushGeometryCommand(0x11, NULL, 0); + + if (this->mState == 1) { + sp68.x = (this->mUnk_5A << 0xB) + 0x52; + sp68.y = FLOAT_TO_FX32(0.0f); + sp68.z = FLOAT_TO_FX32(0.0f); + PushGeometryCommand(0x1C, &sp68, 3); + + temp_r0_3 = INT_TO_FX32(this->mUnk_5A); + sp5C.x = MUL_FX32(temp_r0_3, FLOAT_TO_FX32(0.54f)); + sp5C.y = FLOAT_TO_FX32(1.0f); + sp5C.z = MUL_FX32(temp_r0_3, FLOAT_TO_FX32(1.04f)); + PushGeometryCommand(0x1B, &sp5C, 3); + } else { + sp50.x = this->mUnk_5A << 0xB; + sp50.y = FLOAT_TO_FX32(0.0f); + sp50.z = FLOAT_TO_FX32(0.0f); + PushGeometryCommand(0x1C, &sp50, 3); + + temp_r7 = INT_TO_FX32(this->mUnk_5A); + sp44.x = MUL_FX32(temp_r7, FLOAT_TO_FX32(0.5f)); + sp44.y = FLOAT_TO_FX32(1.0f); + sp44.z = MUL_FX32(temp_r7, FLOAT_TO_FX32(1.0f)); + PushGeometryCommand(0x1B, &sp44, 3); + } + + temp_r1_3 = (u16) (this->mUnk_54 - 0x8000); + Mat3p_InitZRotation(&sp20, SIN(temp_r1_3), COS(temp_r1_3)); + + PushGeometryCommand(0x1A, &sp20, 9); + + sp1C = 1; + PushGeometryCommand(0x40, &sp1C, 1); + + func_ov102_02183da4(0xB, 0xA, 0xE, 0xF, 4, 0, 0, 0x20, 0x20, 0x20); + + PushGeometryCommand(0x41, NULL, 0); + + sp18 = 1; + PushGeometryCommand(0x12, &sp18, 1); +} + +void MapObjectUnkPTFL::func_ov102_021843b4() { + VecFx32 sp68; + VecFx32 sp5C; + VecFx32 sp50; + VecFx32 sp44; + Mat3p sp20; + u32 sp1C; + u32 sp18; + s32 temp_r0_3; + s32 temp_r7; + + PushGeometryCommand(0x11, NULL, 0); + + if (this->mState == 1) { + sp68.x = (-this->mUnk_5A << 0xB) - 0x52; + sp68.y = FLOAT_TO_FX32(0.0f); + sp68.z = FLOAT_TO_FX32(0.0f); + PushGeometryCommand(0x1C, &sp68, 3); + + temp_r0_3 = INT_TO_FX32(this->mUnk_5A); + sp5C.x = MUL_FX32(temp_r0_3, FLOAT_TO_FX32(0.54f)); + sp5C.y = FLOAT_TO_FX32(1.0f); + sp5C.z = MUL_FX32(temp_r0_3, FLOAT_TO_FX32(1.04f)); + PushGeometryCommand(0x1B, &sp5C, 3); + } else { + sp50.x = -this->mUnk_5A << 0xB; + sp50.y = FLOAT_TO_FX32(0.0f); + sp50.z = FLOAT_TO_FX32(0.0f); + PushGeometryCommand(0x1C, &sp50, 3); + + temp_r7 = INT_TO_FX32(this->mUnk_5A); + sp44.x = MUL_FX32(temp_r7, FLOAT_TO_FX32(0.5f)); + sp44.y = FLOAT_TO_FX32(1.0f); + sp44.z = MUL_FX32(temp_r7, FLOAT_TO_FX32(1.0f)); + PushGeometryCommand(0x1B, &sp44, 3); + } + + Mat3p_InitZRotation(&sp20, -SIN(this->mUnk_54), COS(this->mUnk_54)); + + PushGeometryCommand(0x1A, &sp20, 9); + + sp1C = 1; + PushGeometryCommand(0x40, &sp1C, 1); + + func_ov102_02183da4(0xF, 0xE, 0xA, 0xB, 1, 0, 0, 0x20, 0x20, 0); + + PushGeometryCommand(0x41, NULL, 0); + + sp18 = 1; + PushGeometryCommand(0x12, &sp18, 1); +} diff --git a/src/102_CourseExecLand/MapObjectUnkSAND_102.cpp b/src/102_CourseExecLand/MapObjectUnkSAND_102.cpp new file mode 100644 index 00000000..8a259847 --- /dev/null +++ b/src/102_CourseExecLand/MapObjectUnkSAND_102.cpp @@ -0,0 +1,232 @@ +#include "MapObject/MapObjectUnkSAND.hpp" +#include "Render/ModelRender.hpp" +#include "Unknown/UnkStruct_027e09a8.hpp" +#include "Unknown/UnkStruct_027e09b8.hpp" +#include "Unknown/UnkStruct_027e09c0.hpp" +#include "Unknown/UnkStruct_027e0cd8.hpp" +#include "Unknown/UnkStruct_027e0cec.hpp" + +extern "C" void func_01ff91b8(unk16 *, fx32, fx32); +extern unk32 data_ov031_02115fe0; +extern MapObject_10 data_ov031_02118ac8[]; +extern MapObject_10 data_ov031_02118aec; +extern MapObject_10 data_ov031_02118aa4; + +struct UnkStruct_ov031_021189d0 { + /* 00 */ STRUCT_PAD(0x00, 0x70); + /* 70 */ BMDSectionModel *unk_70; +}; +extern UnkStruct_ov031_021189d0 data_ov031_021189d0; + +struct UnkStruct_ov102_021848b0 { + /* 00 */ u16 unk_00; // index for data_ov102_021848f0 + /* 02 */ s16 unk_02; + /* 04 */ +}; + +static const UnkStruct_ov102_021848b0 data_ov102_021848b0[] = { + {5, 0x0000}, {4, 0x0000}, {4, 0x4000}, {3, 0x0000}, {4, 0x8000}, {2, 0x4000}, {3, 0x4000}, {1, 0x4000}, + {4, 0xC000}, {3, 0xC000}, {2, 0x0000}, {1, 0x0000}, {3, 0x8000}, {1, 0xC000}, {1, 0x8000}, {0, 0x0000}, +}; + +static const char data_ov102_021848f0[][16] = { + "s0", "s1", "s2", "s3", "s4", "s5", +}; + +void MapObjectUnkSAND_40::func_ov102_021835c4(VecFx32 *param1) { + switch (this->mUnk_00) { + case 1: + case 2: + case 3: + case 4: + if (this->mUnk_04 <= 0) { + MapObjectUnkSAND::func_ov031_0210b17c(this, 5); + return; + } + + func_01ff91b8(&this->mUnk_02, 0x1333, 0x2000 / (this->mUnk_04 + 1)); + this->mUnk_04--; + break; + case 5: + if (this->mUnk_04 <= 0) { + MapObjectUnkSAND::func_ov031_0210b17c(this, 6); + return; + } + + this->mUnk_04--; + break; + case 6: + if (this->mUnk_04 <= 0) { + MapObjectUnkSAND::func_ov031_0210b17c(this, 0); + return; + } + + func_01ff91b8(&this->mUnk_02, 0, 0x2000 / (this->mUnk_04 + 1)); + this->mUnk_04--; + break; + default: + break; + } + + if (this->mUnk_01 != this->mUnk_00) { + switch (this->mUnk_00) { + case 1: + case 2: + case 3: + case 4: + if (this->mUnk_01 != 5) { + data_027e0cec->func_ov000_0209feac(0x8B5, param1, 4, 0, 0); + data_027e09a8->func_ov000_02071b30(0x183, param1, 0); + } + break; + case 6: + data_027e0cec->func_ov000_0209feac(0x8B6, param1, 4, 0, 0); + data_027e0cec->func_ov000_0209feac(0x8B7, param1, 4, 0, 0); + data_027e09a8->func_ov000_02071b30(0x184, param1, 0); + default: + break; + } + + this->mUnk_01 = this->mUnk_00; + } +} + +void MapObjectUnkSAND_40::func_ov102_021837a8(Vec2bCpp param1, VecFx32 *param2) { + Vec2bCpp spC[4]; + s32 sp8; + UnkAngleStruct sp6; + s32 var_r3; + u16 var_r6; + fx32 temp_r7; + s32 var_r8; + UnkStruct_027e0cd8_0C_Base *temp_r9; + + var_r6 = 0; + + spC[0].x = 0; + spC[0].y = 0; + + spC[1].x = 0; + spC[1].y = 0; + + spC[2].x = 0; + spC[2].y = 0; + + spC[3].x = 0; + spC[3].y = 0; + + for (var_r3 = 0; var_r3 < ARRAY_LEN(spC); var_r3++) { +#if __MWERKS__ + spC[var_r3].data = param1.data; +#else + spC[var_r3].x = param1.x; + spC[var_r3].y = param1.y; +#endif + } + + spC[0].y++; + spC[1].x++; + spC[2].y--; + spC[3].x--; + + temp_r9 = data_027e0cd8->mUnk_0C; + temp_r7 = temp_r9->func_01ffedf4(¶m1); + + for (var_r8 = 0; var_r8 < ARRAY_LEN(spC); var_r8++) { + if (temp_r7 == temp_r9->func_01ffedf4(&spC[var_r8])) { + if (MapObjectUnkSAND::func_ov031_0210ae00(spC[var_r8], &sp8) != 0 && sp8 == this->mUnk_02) { + var_r6 |= 1 << var_r8; + } + } + } + + const UnkStruct_ov102_021848b0 *ptr = &data_ov102_021848b0[var_r6]; + UnkSystem6_Derived2 sp14( + G3d_GetUnkPtr(data_ov031_021189d0.unk_70, data_ov102_021848f0[data_ov102_021848b0[var_r6].unk_00]), true); + sp6.angle_signed = ptr->unk_02; + sp14.func_01ffc6d4(sp6, param2); +} + +void MapObjectUnkSAND::vfunc_08() { + VecFx32 sp0; + MapObjState temp_r0_3; + s32 var_r6; + s32 var_r8; + s32 var_r9; + + sp0 = this->mPos; + sp0.y = this->mUnk_4C; + + var_r8 = 1; + var_r9 = 1; + + for (var_r6 = 0; var_r6 < ARRAY_LEN(this->mUnk_40); var_r6++) { + this->mUnk_40[var_r6].func_ov102_021835c4(&sp0); + sp0.x += 0x1000; + + var_r8 = (var_r8 & (this->mUnk_40[var_r6].mUnk_00 != 0 ? 1 : 0)) ? 1 : 0; + var_r9 = (var_r9 & (this->mUnk_40[var_r6].mUnk_00 == 0 ? 1 : 0)) ? 1 : 0; + } + + if (var_r9 != 0) { + this->Kill(); + return; + } + + temp_r0_3 = this->mState; + this->mUnk_10 = NULL; + this->mState = MapObjectUnkSANDState_0; + + if (var_r8 != 0) { + this->mPos.y = this->mUnk_4C + this->mUnk_40[0].mUnk_02; + + if (this->mUnk_40[0].mUnk_02 == this->mUnk_40[1].mUnk_02) { + this->mUnk_10 = &data_ov031_02118aa4; + } else { + this->mUnk_10 = &data_ov031_02118ac8[0]; + + this->mUnk_60.x = this->mPos.x; + this->mUnk_60.z = this->mPos.z; + this->mUnk_60.y = this->mUnk_4C + this->mUnk_40[1].mUnk_02; + + this->mUnk_50.mUnk_0C = &data_ov031_02118aec; + this->mState = MapObjectUnkSANDState_1; + } + } else { + for (s32 var_r1_2 = 0; var_r1_2 < ARRAY_LEN(this->mUnk_40); var_r1_2++) { + if (this->mUnk_40[var_r1_2].mUnk_00 != 0) { + this->mPos.y = this->mUnk_4C + this->mUnk_40[var_r1_2].mUnk_02; + this->mUnk_10 = &data_ov031_02118ac8[var_r1_2]; + } + } + } + + if (temp_r0_3 != this->mState) { + if (this->mState == MapObjectUnkSANDState_1) { + data_027e09c0->func_ov000_0207e240(&this->mUnk_50); + } else { + data_027e09c0->func_ov000_0207e254(&this->mUnk_50); + } + } +} + +void MapObjectUnkSAND::vfunc_0C() { + if (data_ov031_02115fe0 >= 0 && data_027e09b8->func_ov000_020732ec(data_ov031_02115fe0) != 0) { + this->vfunc_08(); + } +} + +void MapObjectUnkSAND::vfunc_14() { + VecFx32 sp4 = this->mPos; + Vec2bCpp sp0 = this->mUnk_3A; + + for (int var_r7 = 0; var_r7 < ARRAY_LEN(this->mUnk_40); var_r7++) { + if (this->mUnk_40[var_r7].mUnk_00 != 0) { + sp4.y = this->mUnk_4C + this->mUnk_40[var_r7].mUnk_02; + this->mUnk_40[var_r7].func_ov102_021837a8(sp0, &sp4); + } + + sp0.x++; + sp4.x += 0x1000; + } +} diff --git a/src/102_CourseExecLand/UnkStruct_027e0cd8_0C_102.cpp b/src/102_CourseExecLand/UnkStruct_027e0cd8_0C_102.cpp new file mode 100644 index 00000000..6c211971 --- /dev/null +++ b/src/102_CourseExecLand/UnkStruct_027e0cd8_0C_102.cpp @@ -0,0 +1,21 @@ +#include "Render/ModelRender.hpp" +#include "Unknown/UnkStruct_027e09c0.hpp" +#include "Unknown/UnkStruct_027e0cd8.hpp" + +void UnkStruct_027e0cd8_0C::vfunc_0C() { + this->UnkStruct_027e0cd8_0C_Base::vfunc_0C(); + + for (int var_r7 = 0; var_r7 < this->mUnk_1D4; var_r7++) { + for (int var_r8 = 0; var_r8 < ARRAY_LEN(this->mUnk_170[0]); var_r8++) { + if (this->mUnk_170[var_r7][var_r8] != NULL) { + this->mUnk_170[var_r7][var_r8]->mUnk_00.func_01ffc3b4(); + } + } + } +} + +void UnkStruct_027e0cd8_0C::func_ov102_02184628() { + if (this->mUnk_110 == 7) { + this->mUnk_098->func_ov047_0213055c(); + } +} diff --git a/src/102_CourseExecLand/UnkStruct_027e0ce0_40_102.cpp b/src/102_CourseExecLand/UnkStruct_027e0ce0_40_102.cpp new file mode 100644 index 00000000..44b291f9 --- /dev/null +++ b/src/102_CourseExecLand/UnkStruct_027e0ce0_40_102.cpp @@ -0,0 +1,423 @@ +#include "Actor/ActorManager.hpp" +#include "Actor/ActorUnkIWTS.hpp" +#include "Player/PlayerActorBase.hpp" +#include "Unknown/UnkStruct_027e0954.hpp" +#include "Unknown/UnkStruct_027e09b8.hpp" +#include "Unknown/UnkStruct_027e09bc.hpp" +#include "Unknown/UnkStruct_027e09c0.hpp" +#include "Unknown/UnkStruct_027e0cd8.hpp" +#include "Unknown/UnkStruct_027e0cec.hpp" +#include "Unknown/UnkStruct_ov000_020b51b8.hpp" +#include "Unknown/UnkStruct_ov000_020b5214.hpp" + +extern "C" void func_01ffaf74(VecFx32 *, Mat4x3p *, VecFx32 *); +extern "C" unk32 func_01ffb6a8(unk32, unk32); +extern "C" void func_ov095_0217aa88(void *, unk16 *, unk32, UnkAngleStruct); +extern "C" void func_ov095_0217aaa8(void *, unk16 *, unk32); +extern "C" void func_ov031_020dcea4(void *, UnkStruct_027e0ce0_40_Base_78 *, UnkAngleStruct); +extern "C" void func_ov000_0205d65c(void *, VecFx32 *, VecFx32 *, UnkAngleStruct); +extern Vec2s data_ov031_02112b54; + +void PlayerActorBase_74::func_ov102_02182c20(unk32 param1, Mat4x3p *param2) { + this->mUnk_04[param1].x = this->mUnk_1C[param1].x; + this->mUnk_04[param1].y = this->mUnk_1C[param1].y; + this->mUnk_04[param1].z = this->mUnk_1C[param1].z; + + VecFx32 sp0; + VecFx32_Init(FLOAT_TO_FX32(0.15f), FLOAT_TO_FX32(0.05f), FLOAT_TO_FX32(0.0f), &sp0); + func_01ffaf74(&sp0, param2, &this->mUnk_1C[param1]); +} + +bool PlayerActorBase_74::UnknownInline1(u32 index, VecFx32 *pVec) { + s32 temp_r0_3; + s32 temp_r2_4; + s32 temp_r3_3; + + if (this->mUnk_1C[index].y <= this->mUnk_04[index].y) { + return false; + } + + temp_r0_3 = data_027e0cd8->mUnk_0C->vfunc_28(&this->mUnk_1C[index], 1, 0) + 0xF6; + + if (temp_r0_3 >= this->mUnk_1C[index].y + 0x800) { + return false; + } + + if (this->mUnk_04[index].y <= temp_r0_3 + 0xF6) { + pVec->x = this->mUnk_04[index].x; + pVec->y = this->mUnk_04[index].y; + pVec->z = this->mUnk_04[index].z; + + pVec->y = temp_r0_3; + + if (this->mUnk_1C[index].y > temp_r0_3 + 0xF6) { + return true; + } + + temp_r3_3 = this->mUnk_1C[index].x - this->mUnk_04[index].x; + temp_r2_4 = this->mUnk_1C[index].z - this->mUnk_04[index].z; + + if (ABS2(temp_r3_3) >= 0x7FFF || ABS2(temp_r2_4) >= 0x7FFF) { + return false; + } + + if (ROUND_FX32(temp_r3_3 * temp_r3_3) + ROUND_FX32(temp_r2_4 * temp_r2_4) > 0x45) { + return true; + } + } + + return false; +} + +void PlayerActorBase_74::func_ov102_02182c84(bool param1, unk32 param2, UnkAngleStruct param3, Mat4x3p *param4, + Mat4x3p *param5) { + func_ov102_02182c20(0, param4); + func_ov102_02182c20(1, param5); + + if (this->mUnk_00 != 0) { + this->mUnk_00--; + return; + } + + if (param1) { + for (u32 var_r7 = 0; var_r7 < ARRAY_LEN(this->mUnk_04); var_r7++) { + VecFx32 sp4; + if (this->UnknownInline1(var_r7, &sp4)) { + sp4.y += param2; + data_027e0cec->func_ov000_0209ff4c(0x85F, &sp4, param3, 1); + } + } + } +} + +void UnkStruct_027e0ce0_40_108::func_ov102_02182e54(unk32 param1, unk32 param2, unk32 param3) { + Vec2s sp6; + + if (!data_027e09bc->mUnk_04[param1]->func_01ffd43c(&sp6, param2, 1)) { + return; + } + + if (sp6.x < -24 || sp6.x >= 280) { + return; + } + + if (sp6.y < -24 || sp6.y >= 216) { + return; + } + + sp6.x -= data_ov031_02112b54.x / 2; + sp6.y -= data_ov031_02112b54.y / 2; + + if (this->mUnk_40 == &this->mUnk_10) { + data_027e0954->mUnk_00[1].mUnk_04.Prepend(this); + } + + if (this->UnknownInline1()) { + return; + } + + UnkStruct_027e0ce0_40_108_10 sp0; + UnkStruct_027e0ce0_40_108_10 *ptr = &sp0; + ptr->mUnk_00 = sp6; + ptr->mUnk_04 = param3; + + UnkStruct_027e0ce0_40_108_10 *temp_r3 = this->mUnk_40; + if (temp_r3 != NULL) { + temp_r3->mUnk_00 = ptr->mUnk_00; + temp_r3->mUnk_04 = ptr->mUnk_04; + } + + this->mUnk_40++; +} + +void UnkStruct_ItemManager_20::func_ov102_02182fa8(unk32 param1, unk32 param2) { + this->mUnk_00->func_ov031_020dbc80(param1, param2); + this->mUnk_04->func_ov031_020db4f0(param1, param2); + this->mUnk_08->func_ov031_020db704(param1, param2); + this->mUnk_0C->func_ov031_020db958(param1, param2); + this->mUnk_14.func_ov031_020db7f4(); +} + +void UnkStruct_ItemManager_20::func_ov102_02182ffc(unk32 param1) { + if (!data_027e09b8->func_01ffd420()) { + this->mUnk_04->func_ov031_020db528(param1); + } + + this->mUnk_0C->func_ov031_020dba3c(param1); +} + +void UnkStruct_027e0ce0_40::func_ov102_0218303c(unk32 param1, ItemManager *pItemMgr) { + s32 temp_r2; + bool var_r1; + UnkStruct_027e0ce0_40_150 *temp_r1; + + temp_r2 = this->func_ov017_020bcde8(param1, pItemMgr); + + if (pItemMgr != NULL) { + pItemMgr->func_ov017_020bd2a0(param1, temp_r2); + } + + temp_r1 = this->mUnk_150; + if (temp_r1 != NULL) { + temp_r1->mUnk_00 = false; + temp_r1->mUnk_01 = false; + } + + this->mPlayer.func_ov017_020bd788(param1); + + if (this->mUnk_328 != NULL) { + this->mUnk_328->func_ov093_0216d5b8(param1); + + UnkStruct_027e0ce0_40_328 *ptr = this->mUnk_328; + if (ptr->mUnk_0CC) { + this->func_ov093_02168220(); + this->mPlayer.func_ov093_0216ce24(&ptr->mUnk_0D0); + this->mUnk_328->func_ov093_0216f71c(&ptr->mUnk_0DC); + ptr->mUnk_0CC = false; + } + } + + var_r1 = false; + if (this->mUnk_14C != 0) { + var_r1 = this->mUnk_14C->func_ov092_021689e8(param1, this, &this->mPlayer, this->mUnk_328); + } + + if (var_r1) { + SET_FLAG2(this->mUnk_104, UnkFlags3_7); + } else { + UNSET_FLAG2(this->mUnk_104, UnkFlags3_7); + } + + if (this->mIsSceneTowerInsideStairs) { + data_ov000_020b51b8.func_ov000_0206bdd4(&this->mPlayer); + data_ov000_020b5214.func_ov000_0206ed1c(&this->mPlayer); + } + + if (this->mIsSceneTowerOutsideStairs) { + data_ov000_020b5214.func_ov000_0206edd8(&this->mPlayer); + } +} + +void UnkStruct_027e0ce0_40::func_ov102_02183180(unk32 param1, bool param2) { + this->mPlayer.func_ov017_020bdcf4(); + + if (this->mUnk_328 != NULL) { + this->mUnk_328->func_ov093_0216de30(param1, param2); + } +} + +void UnkStruct_027e0ce0_40::func_ov102_021831b4(unk32 param1) { + this->mUnk_07C.func_ov017_020be434(); + this->mPlayer.func_ov017_020bdd84(param1, 0); + + if (this->mUnk_328 != NULL) { + this->mUnk_328->func_ov093_0216dec8(param1); + } +} + +void UnkStruct_027e0ce0_40::func_ov102_021831f0(unk32 param1) { + this->mPlayer.func_ov017_020bdf48(param1, 1, 0, 0); + + if (this->mUnk_328 != NULL) { + this->mUnk_328->func_ov093_0216e1a4(param1); + } + + if (this->mUnk_14C != NULL) { + this->mUnk_14C->func_ov093_02168e24(param1); + } +} + +// https://decomp.me/scratch/d1Vky +void UnkStruct_027e0ce0_40_Base_74::func_ov102_0218323c(UnkStruct_027e0ce0_40_Base_14 *param1, s32 param2) { + s16 temp_r11; + s16 var_r3; + s32 temp_r10; + s32 var_r0_2; + s32 var_r1_3; + s32 var_r2; + s32 var_r2_2; + s32 var_r3_2; + s32 var_ip; + s32 var_lr; + s32 var_r5; + s32 var_r6; + s32 var_r7; + s32 temp_r8_2; + s16 temp_r8; + u32 var_r9; + Vec2s *ptr; + s16 y; + s16 x; + + if (param2 == 0 || param1->mUnk_40 <= 0 || this->mUnk_58 != -1) { + this->mUnk_00[this->mUnk_54] = 0x00; + + ptr = &this->mUnk_1C[this->mUnk_54]; + ptr->x = 0x80; + y = 0x60; + } else { + var_r3 = param1->mUnk_44 - param1->mUnk_42; + this->mUnk_00[this->mUnk_54] = CLAMP(var_r3, -0x2AAB, 0x2AAB); + + x = param1->mTouchControl.mTouchPosLast.x; + ptr = &this->mUnk_1C[this->mUnk_54]; + this->mUnk_1C[this->mUnk_54].x = x; + y = param1->mTouchControl.mTouchPosLast.y; + } + + ptr->y = y; + + this->mUnk_54 = func_01ffb6a8(this->mUnk_54 + 1, 0xE); + + var_r2 = 0; + for (u32 i = 0; i < ARRAY_LEN(this->mUnk_00); i++) { + var_r2 += this->mUnk_00[i]; + } + + if (var_r2 < -0xD555) { + var_r7 = 0x05; + } else if (var_r2 > 0xD555) { + var_r7 = 0x06; + } else { + var_r7 = -0xD555 >> 0x10; + goto do_set; + } + + var_r6 = 0x80; + var_r5 = 0x80; + var_lr = 0x60; + var_ip = 0x60; + var_r3_2 = 0xE0; + var_r2_2 = 0xE0; + var_r1_3 = 0x20; + var_r0_2 = 0x20; + + for (var_r9 = 0; var_r9 < ARRAY_LEN(this->mUnk_1C); var_r9++) { + temp_r8 = this->mUnk_1C[var_r9].x; + + if (temp_r8 < var_r6) { + var_r6 = temp_r8; + } else if (temp_r8 > var_r5) { + var_r5 = temp_r8; + } + + temp_r11 = this->mUnk_1C[var_r9].y; + if (temp_r11 < var_lr) { + var_lr = temp_r11; + } else if (temp_r11 > var_ip) { + var_ip = temp_r11; + } + + temp_r10 = temp_r8 + temp_r11; + temp_r8_2 = temp_r8 - temp_r11; + + if (temp_r10 < var_r3_2) { + var_r3_2 = temp_r10; + } else if (temp_r10 > var_r2_2) { + var_r2_2 = temp_r10; + } + + if (temp_r8_2 < var_r1_3) { + var_r1_3 = temp_r8_2; + } else if (temp_r8_2 > var_r0_2) { + var_r0_2 = temp_r8_2; + } + } + + if (var_r5 - var_r6 < 0x32 || var_ip - var_lr < 0x32 || var_r2_2 - var_r3_2 < 0x46 || var_r0_2 - var_r1_3 < 0x46) { + var_r7 = -1; + } + +do_set: + this->mUnk_58 = var_r7; +} + +static inline bool UnknownInline2(PlayerLinkActor_A0_1C *param2, VecFx32 *param4, UnkAngleStruct *param5) { + if (param2->mUnk_0C != 0) { + Actor *temp_r0_2 = gpActorManager->func_01fff3b4(param2->mUnk_0C); + + if (temp_r0_2 != NULL && temp_r0_2->GetActorId() == ActorId_IWTS) { + s16 sp0; + func_ov000_0205d65c(&sp0, param4, &((ActorUnkIWTS *) temp_r0_2)->mUnk_22F8, *param5); + param5->angle = sp0; + return true; + } + } + + return false; +} + +// https://decomp.me/scratch/jzXAd +void func_ov102_02183414(s16 *param1, PlayerLinkActor_A0_1C *param2, bool param3, VecFx32 *param4, UnkAngleStruct param5, + s32 param6) { + s16 sp6; + s16 sp4; + s16 sp2; + s16 var_r0_2; + s32 var_r1_3; + s32 var_r2; + s32 var_r3; + UnkStruct_027e0ce0_40_Base_78 *temp_r4; + u16 temp_r6; + u16 var_r0; + u16 *temp_r1; + u16 *temp_r1_2; + u16 *temp_r2; + bool var_r5; + + STACK_PAD(0x10); + + var_r5 = false; + + if (param3) { + if (param2->mUnk_00->Unk78HasValue()) { + if (!UnknownInline2(param2, param4, ¶m5)) { + temp_r4 = param2->mUnk_00->mUnk_078; + var_r5 = true; + var_r1_3 = 0; + + if (temp_r4 != NULL) { + temp_r6 = temp_r4->mUnk_00; + var_r2 = 0; + + var_r3 = 1; + if (temp_r6 != 0x100 && temp_r6 != 0x101) { + var_r3 = 0; + } + + if (var_r3 != 0) { + if (temp_r6 == 0x101) { + var_r0 = 0; + } else { + var_r0 = temp_r4->mUnk_02; + } + + if (var_r0 == 1) { + var_r2 = 1; + } + } + + if (var_r2 != 0) { + var_r1_3 = 1; + } + } + + if (var_r1_3 != 0) { + if (!param2->mUnk_06) { + func_ov095_0217aa88(&sp6, ¶m2->mUnk_04, param6, param5); + param5.angle = sp6; + } else { + func_ov095_0217aaa8(&sp4, ¶m2->mUnk_04, param6); + param5.angle = sp4; + } + } else { + func_ov031_020dcea4(&sp2, *(UnkStruct_027e0ce0_40_Base_78 **) ¶m2->mUnk_00->mUnk_078, param5); + param5.angle = sp2 + 0x4000; + } + } + } + } + + param2->mUnk_06 = var_r5; + *param1 = param5.angle_signed; +} diff --git a/src/110_PlayerGet/PlayerGet.cpp b/src/110_PlayerGet/PlayerGet.cpp index e86f8974..f92fe490 100644 --- a/src/110_PlayerGet/PlayerGet.cpp +++ b/src/110_PlayerGet/PlayerGet.cpp @@ -619,7 +619,7 @@ void PlayerGet::vfunc_0C(UnkStruct_PlayerGet_vfunc_0C_param1 *param1) { } } - UnkStruct_027e09bc_0C *uVar11 = data_027e09bc->mUnk_0C; + UnkStruct_027e09bc_0C *uVar11 = data_027e09bc->mUnk_04[2]; uVar11->func_ov000_0207834c(this->mUnk_34, func_ov000_02077590(4), 0); UnkStruct_PlayerGet_48 *pUnk_48 = this->mUnk_48; @@ -930,7 +930,7 @@ void PlayerGet::vfunc_10(unk32 param1, unk32 param2) { } if (!temp_r6) { - data_027e09bc->mUnk_0C->func_ov000_02078230(0); + data_027e09bc->mUnk_04[2]->func_ov000_02078230(0); } if (data_027e09b8->func_ov000_020732fc(this->mUnk_54.mUnk_08) != 0) { diff --git a/src/112_PlayerSceneChange/PlayerSceneChange.cpp b/src/112_PlayerSceneChange/PlayerSceneChange.cpp index 68d2cc46..319e97e4 100644 --- a/src/112_PlayerSceneChange/PlayerSceneChange.cpp +++ b/src/112_PlayerSceneChange/PlayerSceneChange.cpp @@ -6,6 +6,7 @@ #include "Unknown/UnkStruct_027e09b8.hpp" #include "Unknown/UnkStruct_027e0cd8.hpp" #include "Unknown/UnkStruct_027e0cdc.hpp" +#include "Unknown/UnkStruct_ov000_020b3000.hpp" #include "math.hpp" @@ -71,7 +72,6 @@ extern fx16 data_0203feb0[]; extern "C" void func_01ffb714(VecFx32 *, VecFx32 *, VecFx32 *); extern "C" void func_01ff9638(VecFx32 *, s16); extern "C" void func_01ff9770(VecFx32 *); -extern unk32 data_ov000_020b3000; extern "C" bool func_ov000_02080998(VecFx32 *); extern "C" void func_01ff930c(UnkStruct_ov000_0208f820_40 *, unk16, unk32); @@ -323,12 +323,7 @@ void PlayerSceneChange::vfunc_0C(UnkStruct_PlayerGet_vfunc_0C_param1 *param1) { } if ((this->mUnk_24->mUnk_104 & 0x10) || this->mUnk_28->pItemManager->GetTearsAmount() == MAX_TEARS_OF_LIGHT) { - struct { - unk32 actorId; - void *ptr; - } local_9c; - local_9c.ptr = &data_ov000_020b3000; - local_9c.actorId = ActorId_RPMT; + UnkStruct_ov000_020b3000 local_9c(ActorId_RPMT); Actor **ppAVar12 = gpActorManager->func_01fff350(&local_9c, gpActorManager->mActorTable); if (ppAVar12 == gpActorManager->mUnk_08) { diff --git a/tools/changes_fmt.py b/tools/changes_fmt.py new file mode 100755 index 00000000..153f40f6 --- /dev/null +++ b/tools/changes_fmt.py @@ -0,0 +1,162 @@ +#!/usr/bin/env python3 + +from argparse import ArgumentParser +import os +import json +from pathlib import Path +from typing import Optional, Tuple + +script_dir = os.path.dirname(os.path.realpath(__file__)) +root_dir = os.path.abspath(os.path.join(script_dir, "..")) + + +UNIT_KEYS_TO_DIFF = [ + "fuzzy_match_percent", + "matched_code_percent", + "matched_data_percent", + "complete_code_percent", + "complete_data_percent", +] + +FUNCTION_KEYS_TO_DIFF = [ + "fuzzy_match_percent", +] + +Change = Tuple[str, str, float, float] + + +def format_float(value: float) -> str: + if value < 100.0 and value > 99.99: + value = 99.99 + return "%6.2f" % value + + +def get_changes(changes_file: str) -> Tuple[list[Change], list[Change]]: + changes_file = os.path.relpath(changes_file, root_dir) + with open(changes_file, "r") as f: + changes_json = json.load(f) + + regressions = [] + progressions = [] + + def diff_key(object_name: Optional[str], object: dict, key: str): + from_value = object.get("from", {}).get(key, 0.0) + to_value = object.get("to", {}).get(key, 0.0) + key = key.removesuffix("_percent") + change = (object_name, key, from_value, to_value) + if from_value > to_value: + regressions.append(change) + elif to_value > from_value: + progressions.append(change) + + for key in UNIT_KEYS_TO_DIFF: + diff_key(None, changes_json, key) + + for unit in changes_json.get("units", []): + unit_name = unit["name"] + for key in UNIT_KEYS_TO_DIFF: + diff_key(unit_name, unit, key) + # Ignore sections + for func in unit.get("functions", []): + func_name = func["name"] + for key in FUNCTION_KEYS_TO_DIFF: + diff_key(func_name, func, key) + + return regressions, progressions + + +def generate_changes_plaintext(changes: list[Change]) -> str: + if len(changes) == 0: + return "" + + table_total_width = 136 + percents_max_len = 7 + 4 + 7 + key_max_len = max(len(key) for _, key, _, _ in changes) + name_max_len = max(len(name or "Total") for name, _, _, _ in changes) + max_width_for_name_col = table_total_width - 3 - key_max_len - 3 - percents_max_len + name_max_len = min(max_width_for_name_col, name_max_len) + + out_lines = [] + for name, key, from_value, to_value in changes: + if name is None: + name = "Total" + if len(name) > name_max_len: + name = name[: name_max_len - len("[...]")] + "[...]" + out_lines.append( + f"{name:>{name_max_len}} | {key:<{key_max_len}} | {format_float(from_value)}% -> {format_float(to_value)}%" + ) + + return "\n".join(out_lines) + + +def generate_changes_markdown(changes: list[Change], description: str) -> str: + if len(changes) == 0: + return "" + + out_lines = [] + name_max_len = 100 + + out_lines.append("
") + out_lines.append( + f"Detected {len(changes)} {description} compared to the base:" + ) + out_lines.append("") # Must include a blank line before a table + out_lines.append("| Name | Type | Before | After |") + out_lines.append("| ---- | ---- | ------ | ----- |") + + for name, key, from_value, to_value in changes: + if name is None: + name = "Total" + else: + if len(name) > name_max_len: + name = name[: name_max_len - len("...")] + "..." + name = f"`{name}`" # Surround with backticks + key = key.replace("_", " ").capitalize() + out_lines.append( + f"| {name} | {key} | {format_float(from_value)}% | {format_float(to_value)}% |" + ) + + out_lines.append("
") + + return "\n".join(out_lines) + + +def main(): + parser = ArgumentParser(description="Format objdiff-cli report changes.") + parser.add_argument( + "report_changes_file", + type=Path, + help="""path to the JSON file containing the changes, generated by objdiff-cli.""", + ) + parser.add_argument( + "-o", + "--output", + type=Path, + help="""Output file (prints to console if unspecified)""", + ) + parser.add_argument( + "--all", + action="store_true", + help="""Includes progressions as well.""", + ) + args = parser.parse_args() + + regressions, progressions = get_changes(args.report_changes_file) + + if args.output: + markdown_output = generate_changes_markdown(regressions, "regressions") + if args.all: + markdown_output += generate_changes_markdown(progressions, "progressions") + with open(args.output, "w", encoding="utf-8") as f: + f.write(markdown_output) + else: + if args.all: + changes = progressions + regressions + else: + changes = regressions + text_output = generate_changes_plaintext(changes) + print(text_output) + + +if __name__ == "__main__": + main() diff --git a/tools/configure.py b/tools/configure.py index 5709a9b6..fd4eedcc 100755 --- a/tools/configure.py +++ b/tools/configure.py @@ -1491,6 +1491,16 @@ config.libs = [ ], extra_cflags=["-thumb"], ), + GameLib( + "Overlay 102", + [ + Object("102_CourseExecLand/UnkStruct_027e0ce0_40_102.cpp"), + Object("102_CourseExecLand/MapObjectUnkSAND_102.cpp"), + Object("102_CourseExecLand/MapObjectUnkPTFL_102.cpp"), + Object("102_CourseExecLand/UnkStruct_027e0cd8_0C_102.cpp"), + Object("102_CourseExecLand/ActorUnkMLCK_102.cpp", extra_cflags=["-ipa off"]), # fixes data order + ] + ), GameLib( "Overlay 105", [ diff --git a/tools/project.py b/tools/project.py index 445cf7ab..a907b320 100644 --- a/tools/project.py +++ b/tools/project.py @@ -609,7 +609,7 @@ def add_mwcc_builds(cfg: ProjectConfig, version: str, objects: Dict[str, Object] def add_mwcc_build(cfg: ProjectConfig, version: str, n: ninja_syntax.Writer, source_file: Path, object: Object, mwcc_implicit: list[str]): src_obj_path = cfg.get_game_build(version) / source_file - cc_flags: list[str] = object.options["cflags"] or [] + object.options["extra_cflags"] or [] + cc_flags: list[str] = (object.options["cflags"] or []) + object.options["extra_cflags"] if "-lang=c++" not in cc_flags and is_cpp(source_file): cc_flags.append("-lang=c++") elif "-lang=c" not in cc_flags and is_c(source_file): @@ -813,6 +813,79 @@ def add_apply_build(cfg: ProjectConfig, version: str, n: ninja_syntax.Writer): n.newline() +def add_report_changes(cfg: ProjectConfig, version: str, n: ninja_syntax.Writer): + objdiffjson_path = cfg.get_game_build(version) / "objdiff.json" + report_baseline_path: Path = cfg.get_game_build(version) / "baseline.json" + report_changes_path: Path = cfg.get_game_build(version) / "report_changes.json" + regressions_md: Path = cfg.get_game_build(version) / "regressions.md" + changes_fmt: Path = cfg.tools_path / "changes_fmt.py" + + n.comment(f"[{version}]: Create a baseline progress report for later match regression testing") + + delink_files = cfg.delink_files(version) + all_sources = [str(cfg.objdiff_path)] + delink_files + cfg.source_object_files(version) + n.build( + inputs=[str(objdiffjson_path)], + implicit=all_sources, + rule="objdiff_report", + outputs=str(report_baseline_path), + variables={ + "dir": str(cfg.get_game_build(version)), + "filename": "baseline.json" + } + ) + n.build( + outputs=f"baseline_{version}", + rule="phony", + inputs=str(report_baseline_path), + ) + + n.comment(f"[{version}]: Check for any match regressions against the baseline") + n.comment(f"[{version}]: Will fail if no baseline has been created") + + n.rule( + name=f"report_changes_{version}", + command=f"{cfg.objdiff_path} report changes --format json-pretty {report_baseline_path} $in -o $out", + description="CHANGES", + ) + n.build( + outputs=str(report_changes_path), + rule=f"report_changes_{version}", + inputs=str(cfg.get_game_build(version) / "report.json"), + implicit=[str(cfg.objdiff_path)], + ) + n.rule( + name=f"changes_fmt_{version}", + command=f"$python {changes_fmt} $args $in", + description="CHANGESFMT", + ) + n.build( + outputs=f"changes_{version}", + rule=f"changes_fmt_{version}", + inputs=str(report_changes_path), + implicit=[str(changes_fmt)] + all_sources, + ) + n.build( + outputs=f"changes_all_{version}", + rule=f"changes_fmt_{version}", + inputs=str(report_changes_path), + implicit=[str(changes_fmt)] + all_sources, + variables={"args": "--all"}, + ) + n.rule( + name=f"changes_md_{version}", + command=f"$python {changes_fmt} $in -o $out", + description="CHANGESFMT $out", + ) + n.build( + outputs=str(regressions_md), + rule=f"changes_md_{version}", + inputs=str(report_changes_path), + implicit=[str(changes_fmt)] + all_sources, + ) + n.newline() + + def create_objdiff_fixup_config(cfg: ProjectConfig, objects: Dict[str, Object]): out_json = {} @@ -1269,6 +1342,8 @@ def process_project(cfg: ProjectConfig, args: Any): n.newline() cmds_map["format"].append(f"format_{version}") + add_report_changes(cfg, version, n) + defaults.extend([f"check_{version}", f"sha1_{version}"]) n.build(