From 767b0b099fc192b20953947cc9179b5cb70b07fa Mon Sep 17 00:00:00 2001 From: Aetias Date: Sat, 5 Jul 2025 11:52:32 +0200 Subject: [PATCH] Delink GameModeBattle --- config/eur/arm9/overlays/ov012/delinks.txt | 2 ++ config/eur/arm9/overlays/ov012/symbols.txt | 22 ++++++++-------- config/usa/arm9/overlays/ov012/delinks.txt | 2 ++ config/usa/arm9/overlays/ov012/symbols.txt | 22 ++++++++-------- include/Game/GameModeBattle.hpp | 30 ++++++++++++++++++++++ src/12_Battle/Game/GameModeBattle.cpp | 12 +++++++++ 6 files changed, 68 insertions(+), 22 deletions(-) create mode 100644 include/Game/GameModeBattle.hpp create mode 100644 src/12_Battle/Game/GameModeBattle.cpp diff --git a/config/eur/arm9/overlays/ov012/delinks.txt b/config/eur/arm9/overlays/ov012/delinks.txt index 756c7714..00b4bba1 100644 --- a/config/eur/arm9/overlays/ov012/delinks.txt +++ b/config/eur/arm9/overlays/ov012/delinks.txt @@ -5,3 +5,5 @@ .data start:0x02135920 end:0x02137c60 kind:data align:32 .bss start:0x02137c60 end:0x0213dec0 kind:bss align:32 +src/12_Battle/Game/GameModeBattle.cpp: + .text start:0x02112d20 end:0x02113208 diff --git a/config/eur/arm9/overlays/ov012/symbols.txt b/config/eur/arm9/overlays/ov012/symbols.txt index 573e63ce..c089527e 100644 --- a/config/eur/arm9/overlays/ov012/symbols.txt +++ b/config/eur/arm9/overlays/ov012/symbols.txt @@ -1,16 +1,16 @@ func_ov012_02112c20 kind:function(arm,size=0x38) addr:0x02112c20 func_ov012_02112c58 kind:function(arm,size=0x50) addr:0x02112c58 func_ov012_02112ca8 kind:function(arm,size=0x78) addr:0x02112ca8 -func_ov012_02112d20 kind:function(arm,size=0x34) addr:0x02112d20 -func_ov012_02112d54 kind:function(arm,size=0x184) addr:0x02112d54 -func_ov012_02112ed8 kind:function(arm,size=0xec) addr:0x02112ed8 -func_ov012_02112fc4 kind:function(arm,size=0xf4) addr:0x02112fc4 -func_ov012_021130b8 kind:function(arm,size=0x18) addr:0x021130b8 -func_ov012_021130d0 kind:function(arm,size=0xe4) addr:0x021130d0 -func_ov012_021131b4 kind:function(arm,size=0x10) addr:0x021131b4 -func_ov012_021131c4 kind:function(arm,size=0x1c) addr:0x021131c4 -func_ov012_021131e0 kind:function(arm,size=0x10) addr:0x021131e0 -func_ov012_021131f0 kind:function(arm,size=0x18) addr:0x021131f0 +_ZN14GameModeBattle6CreateEi kind:function(arm,size=0x34) addr:0x02112d20 +_ZN14GameModeBattleC1Ei kind:function(arm,size=0x184) addr:0x02112d54 +_ZN14GameModeBattleD0Ev kind:function(arm,size=0xec) addr:0x02112ed8 +_ZN14GameModeBattleD2Ev kind:function(arm,size=0xf4) addr:0x02112fc4 +_ZN14GameModeBattle8vfunc_24Ev kind:function(arm,size=0x18) addr:0x021130b8 +_ZN14GameModeBattle8vfunc_08Ei kind:function(arm,size=0xe4) addr:0x021130d0 +_ZN14GameModeBattle8vfunc_0cEPt kind:function(arm,size=0x10) addr:0x021131b4 +_ZN14GameModeBattle8vfunc_10EPt kind:function(arm,size=0x1c) addr:0x021131c4 +_ZN14GameModeBattle8vfunc_14EPt kind:function(arm,size=0x10) addr:0x021131e0 +_ZN14GameModeBattle8vfunc_18Ev kind:function(arm,size=0x18) addr:0x021131f0 func_ov012_02113208 kind:function(arm,size=0x24) addr:0x02113208 func_ov012_0211322c kind:function(arm,size=0x24) addr:0x0211322c func_ov012_02113250 kind:function(arm,size=0x48) addr:0x02113250 @@ -1099,7 +1099,7 @@ data_ov012_02135930 kind:data(any) addr:0x02135930 data_ov012_02135934 kind:data(any) addr:0x02135934 data_ov012_02135938 kind:data(any) addr:0x02135938 data_ov012_0213593c kind:data(any) addr:0x0213593c -data_ov012_02135968 kind:data(any) addr:0x02135968 +_ZTV14GameModeBattle kind:data(any) addr:0x02135968 data_ov012_02135990 kind:data(any) addr:0x02135990 data_ov012_02135994 kind:data(any) addr:0x02135994 data_ov012_02135998 kind:data(any) addr:0x02135998 diff --git a/config/usa/arm9/overlays/ov012/delinks.txt b/config/usa/arm9/overlays/ov012/delinks.txt index 42eb8bf6..5898db70 100644 --- a/config/usa/arm9/overlays/ov012/delinks.txt +++ b/config/usa/arm9/overlays/ov012/delinks.txt @@ -5,3 +5,5 @@ .data start:0x021358a0 end:0x02137be0 kind:data align:32 .bss start:0x02137be0 end:0x0213de40 kind:bss align:32 +src/12_Battle/Game/GameModeBattle.cpp: + .text start:0x02112ca0 end:0x02113188 diff --git a/config/usa/arm9/overlays/ov012/symbols.txt b/config/usa/arm9/overlays/ov012/symbols.txt index e9ed37b7..25616797 100644 --- a/config/usa/arm9/overlays/ov012/symbols.txt +++ b/config/usa/arm9/overlays/ov012/symbols.txt @@ -1,16 +1,16 @@ func_ov012_02112c20 kind:function(arm,size=0x38) addr:0x02112ba0 func_ov012_02112c58 kind:function(arm,size=0x50) addr:0x02112bd8 func_ov012_02112ca8 kind:function(arm,size=0x78) addr:0x02112c28 -func_ov012_02112d20 kind:function(arm,size=0x34) addr:0x02112ca0 -func_ov012_02112d54 kind:function(arm,size=0x184) addr:0x02112cd4 -func_ov012_02112ed8 kind:function(arm,size=0xec) addr:0x02112e58 -func_ov012_02112fc4 kind:function(arm,size=0xf4) addr:0x02112f44 -func_ov012_021130b8 kind:function(arm,size=0x18) addr:0x02113038 -func_ov012_021130d0 kind:function(arm,size=0xe4) addr:0x02113050 -func_ov012_021131b4 kind:function(arm,size=0x10) addr:0x02113134 -func_ov012_021131c4 kind:function(arm,size=0x1c) addr:0x02113144 -func_ov012_021131e0 kind:function(arm,size=0x10) addr:0x02113160 -func_ov012_021131f0 kind:function(arm,size=0x18) addr:0x02113170 +_ZN14GameModeBattle6CreateEi kind:function(arm,size=0x34) addr:0x02112ca0 +_ZN14GameModeBattleC1Ei kind:function(arm,size=0x184) addr:0x02112cd4 +_ZN14GameModeBattleD0Ev kind:function(arm,size=0xec) addr:0x02112e58 +_ZN14GameModeBattleD2Ev kind:function(arm,size=0xf4) addr:0x02112f44 +_ZN14GameModeBattle8vfunc_24Ev kind:function(arm,size=0x18) addr:0x02113038 +_ZN14GameModeBattle8vfunc_08Ei kind:function(arm,size=0xe4) addr:0x02113050 +_ZN14GameModeBattle8vfunc_0cEPt kind:function(arm,size=0x10) addr:0x02113134 +_ZN14GameModeBattle8vfunc_10EPt kind:function(arm,size=0x1c) addr:0x02113144 +_ZN14GameModeBattle8vfunc_14EPt kind:function(arm,size=0x10) addr:0x02113160 +_ZN14GameModeBattle8vfunc_18Ev kind:function(arm,size=0x18) addr:0x02113170 func_ov012_02113208 kind:function(arm,size=0x24) addr:0x02113188 func_ov012_0211322c kind:function(arm,size=0x24) addr:0x021131ac func_ov012_02113250 kind:function(arm,size=0x48) addr:0x021131d0 @@ -1099,7 +1099,7 @@ data_ov012_02135930 kind:data(any) addr:0x021358b0 data_ov012_02135934 kind:data(any) addr:0x021358b4 data_ov012_02135938 kind:data(any) addr:0x021358b8 data_ov012_0213593c kind:data(any) addr:0x021358bc -data_ov012_02135968 kind:data(any) addr:0x021358e8 +_ZTV14GameModeBattle kind:data(any) addr:0x021358e8 data_ov012_02135990 kind:data(any) addr:0x02135910 data_ov012_02135994 kind:data(any) addr:0x02135914 data_ov012_02135998 kind:data(any) addr:0x02135918 diff --git a/include/Game/GameModeBattle.hpp b/include/Game/GameModeBattle.hpp new file mode 100644 index 00000000..e45d5210 --- /dev/null +++ b/include/Game/GameModeBattle.hpp @@ -0,0 +1,30 @@ +#pragma once + +#include "Game/GameModePlay.hpp" + +class GameModeBattle : public GameModePlay { +public: + /* 000 (base) */ + /* 008 */ unk8 mUnk_008[0x878]; + /* 880 */ unk16 mUnk_880; + /* 882 */ unk8 mUnk_882[0xa]; + /* 88c */ unk16 mUnk_88c; + /* 88e */ unk8 mUnk_88e[0x102]; + /* 990 */ unk32 mUnk_990; + /* 994 */ unk32 mUnk_994; + /* 998 */ unk32 mUnk_998; + /* 99c */ unk8 mUnk_99c[0x4]; + /* 9a0 */ + + /* 00 */ virtual ~GameModeBattle() override; + /* 08 */ virtual unk32 vfunc_08(unk32 param1) override; + /* 0c */ virtual void vfunc_0c(u16 *param1) override; + /* 10 */ virtual void vfunc_10(u16 *param1) override; + /* 14 */ virtual void vfunc_14(u16 *param1) override; + /* 18 */ virtual void vfunc_18() override; + /* 24 */ virtual void vfunc_24(); + /* 28 */ + + GameModeBattle(unk32 param1); + static GameModeBattle *Create(unk32 param1); +}; diff --git a/src/12_Battle/Game/GameModeBattle.cpp b/src/12_Battle/Game/GameModeBattle.cpp new file mode 100644 index 00000000..2e48a190 --- /dev/null +++ b/src/12_Battle/Game/GameModeBattle.cpp @@ -0,0 +1,12 @@ +#include "Game/GameModeBattle.hpp" + +GameModeBattle *GameModeBattle::Create(unk32 param1) {} +GameModeBattle::GameModeBattle(unk32 param1) : + GameModePlay(param1) {} +GameModeBattle::~GameModeBattle() {} +void GameModeBattle::vfunc_24() {} +unk32 GameModeBattle::vfunc_08(unk32 param1) {} +void GameModeBattle::vfunc_0c(u16 *param1) {} +void GameModeBattle::vfunc_10(u16 *param1) {} +void GameModeBattle::vfunc_14(u16 *param1) {} +void GameModeBattle::vfunc_18() {}