summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTal Hayon <talhayon1@gmail.com>2022-04-18 14:35:36 +0300
committerTal Hayon <talhayon1@gmail.com>2022-04-18 14:35:36 +0300
commit534fc194a54d5cc4d585f9872cc61f2e30fc7a42 (patch)
treeda7ce38d118cbac0cc5e1ef9266baa2a9dab4830
parent62135a7584a8ae7081841357040807e6ece6d9c9 (diff)
Put const data in managerD
-rw-r--r--data/const/manager/managerD.s10
-rw-r--r--linker.ld2
-rw-r--r--src/manager/managerD.c11
3 files changed, 10 insertions, 13 deletions
diff --git a/data/const/manager/managerD.s b/data/const/manager/managerD.s
deleted file mode 100644
index c99ddb03..00000000
--- a/data/const/manager/managerD.s
+++ /dev/null
@@ -1,10 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .section .rodata
- .align 2
-
-gUnk_08108308:: @ 08108308
- .4byte sub_08058DE8
- .4byte sub_08058E18
- .4byte sub_08058E34
diff --git a/linker.ld b/linker.ld
index 257ffb21..305e9e45 100644
--- a/linker.ld
+++ b/linker.ld
@@ -1116,7 +1116,7 @@ SECTIONS {
src/manager/managerA.o(.rodata);
src/manager/managerB.o(.rodata);
src/manager/managerC.o(.rodata);
- data/const/manager/managerD.o(.rodata);
+ src/manager/managerD.o(.rodata);
src/manager/managerF.o(.rodata);
src/manager/manager10.o(.rodata);
data/const/manager/manager12.o(.rodata);
diff --git a/src/manager/managerD.c b/src/manager/managerD.c
index 621e7c43..dec69e60 100644
--- a/src/manager/managerD.c
+++ b/src/manager/managerD.c
@@ -32,10 +32,17 @@ typedef struct {
u16 field_0x3e;
} ManagerD;
-extern void (*const gUnk_08108308[])(ManagerD*);
+void sub_08058DE8(ManagerD*);
+void sub_08058E18(ManagerD*);
+void sub_08058E34(ManagerD*);
void ManagerD_Main(ManagerD* this) {
- gUnk_08108308[this->manager.action](this);
+ static void (*const actionFuncs[])(ManagerD*) = {
+ sub_08058DE8,
+ sub_08058E18,
+ sub_08058E34,
+ };
+ actionFuncs[this->manager.action](this);
}
void sub_08058DE8(ManagerD* this) {