summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormike8699 <mikebuntu68@gmail.com>2024-12-31 15:11:25 -0500
committermike8699 <mikebuntu68@gmail.com>2025-01-05 19:06:26 -0500
commitf9da67860b7e6cc55bf48c251c8ecfd2bcde6369 (patch)
tree438ca9d541ad37d2ef42495db2bc7abdb316fa98
parent82ba3ff31176383a6cd7902aaf6e2941d039e02e (diff)
Decompile `GetLinkState` arm9 function
This is not part of the `LinkStateItem` class, but it is called by a method in that class. I wasn't sure the best place to put this.
-rw-r--r--config/eur/arm9/dtcm/symbols.txt2
-rw-r--r--config/eur/arm9/itcm/symbols.txt2
-rw-r--r--config/usa/arm9/dtcm/symbols.txt2
-rw-r--r--config/usa/arm9/itcm/symbols.txt2
-rw-r--r--include/Player/LinkStateBase.hpp4
-rw-r--r--src/Main/Player/LinkState.cpp5
6 files changed, 13 insertions, 4 deletions
diff --git a/config/eur/arm9/dtcm/symbols.txt b/config/eur/arm9/dtcm/symbols.txt
index 42ca4f97..f80704e7 100644
--- a/config/eur/arm9/dtcm/symbols.txt
+++ b/config/eur/arm9/dtcm/symbols.txt
@@ -144,7 +144,7 @@ data_027e0fce kind:bss addr:0x27e0fce
data_027e0fd0 kind:bss addr:0x27e0fd0
data_027e0fd4 kind:bss addr:0x27e0fd4
data_027e0fd8 kind:bss addr:0x27e0fd8
-data_027e0fdc kind:bss addr:0x27e0fdc
+gLinkStates kind:bss addr:0x27e0fdc
data_027e0fe0 kind:bss addr:0x27e0fe0
gActorManager kind:bss addr:0x27e0fe4
data_027e0fe8 kind:bss addr:0x27e0fe8
diff --git a/config/eur/arm9/itcm/symbols.txt b/config/eur/arm9/itcm/symbols.txt
index 7905c0b7..b8aab999 100644
--- a/config/eur/arm9/itcm/symbols.txt
+++ b/config/eur/arm9/itcm/symbols.txt
@@ -106,7 +106,7 @@ func_01fffb80 kind:function(arm,size=0x6c) addr:0x1fffb80
func_01fffbec kind:function(arm,size=0x58) addr:0x1fffbec
func_01fffc44 kind:function(arm,size=0x50) addr:0x1fffc44
func_01fffc94 kind:function(arm,size=0x44) addr:0x1fffc94
-func_01fffcd8 kind:function(arm,size=0x14) addr:0x1fffcd8
+_Z12GetLinkStatei kind:function(arm,size=0x14) addr:0x1fffcd8
_ZN11ItemManager21GetEquipItemUncheckedEi kind:function(arm,size=0x18) addr:0x1fffcec
_ZN5Actor13func_01fffd04Ei kind:function(arm,size=0x204) addr:0x1fffd04
func_01ffff08 kind:function(arm,size=0x8c) addr:0x1ffff08
diff --git a/config/usa/arm9/dtcm/symbols.txt b/config/usa/arm9/dtcm/symbols.txt
index 42ca4f97..f80704e7 100644
--- a/config/usa/arm9/dtcm/symbols.txt
+++ b/config/usa/arm9/dtcm/symbols.txt
@@ -144,7 +144,7 @@ data_027e0fce kind:bss addr:0x27e0fce
data_027e0fd0 kind:bss addr:0x27e0fd0
data_027e0fd4 kind:bss addr:0x27e0fd4
data_027e0fd8 kind:bss addr:0x27e0fd8
-data_027e0fdc kind:bss addr:0x27e0fdc
+gLinkStates kind:bss addr:0x27e0fdc
data_027e0fe0 kind:bss addr:0x27e0fe0
gActorManager kind:bss addr:0x27e0fe4
data_027e0fe8 kind:bss addr:0x27e0fe8
diff --git a/config/usa/arm9/itcm/symbols.txt b/config/usa/arm9/itcm/symbols.txt
index 7905c0b7..b8aab999 100644
--- a/config/usa/arm9/itcm/symbols.txt
+++ b/config/usa/arm9/itcm/symbols.txt
@@ -106,7 +106,7 @@ func_01fffb80 kind:function(arm,size=0x6c) addr:0x1fffb80
func_01fffbec kind:function(arm,size=0x58) addr:0x1fffbec
func_01fffc44 kind:function(arm,size=0x50) addr:0x1fffc44
func_01fffc94 kind:function(arm,size=0x44) addr:0x1fffc94
-func_01fffcd8 kind:function(arm,size=0x14) addr:0x1fffcd8
+_Z12GetLinkStatei kind:function(arm,size=0x14) addr:0x1fffcd8
_ZN11ItemManager21GetEquipItemUncheckedEi kind:function(arm,size=0x18) addr:0x1fffcec
_ZN5Actor13func_01fffd04Ei kind:function(arm,size=0x204) addr:0x1fffd04
func_01ffff08 kind:function(arm,size=0x8c) addr:0x1ffff08
diff --git a/include/Player/LinkStateBase.hpp b/include/Player/LinkStateBase.hpp
index f4591991..46038d2d 100644
--- a/include/Player/LinkStateBase.hpp
+++ b/include/Player/LinkStateBase.hpp
@@ -128,3 +128,7 @@ public:
DebugHierarchy *GetDebugHierarchy0();
DebugHierarchy *GetDebugHierarchy1();
};
+
+unk32 GetLinkState(s32 index);
+
+extern LinkStateBase **gLinkStates;
diff --git a/src/Main/Player/LinkState.cpp b/src/Main/Player/LinkState.cpp
new file mode 100644
index 00000000..316e3f50
--- /dev/null
+++ b/src/Main/Player/LinkState.cpp
@@ -0,0 +1,5 @@
+#include "Player/LinkStateBase.hpp"
+
+unk32 GetLinkState(s32 index) {
+ return (unk32)gLinkStates[index];
+}