diff --git a/data/const/manager/manager23.s b/data/const/manager/manager23.s deleted file mode 100644 index 4f59dc42..00000000 --- a/data/const/manager/manager23.s +++ /dev/null @@ -1,11 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .section .rodata - .align 2 - -gUnk_08108CCC:: @ 08108CCC - .4byte sub_0805BC8C - .4byte sub_0805BCD4 - .4byte sub_0805BD5C - .4byte sub_0805BDB4 diff --git a/linker.ld b/linker.ld index 6c194680..04d6873d 100644 --- a/linker.ld +++ b/linker.ld @@ -1132,7 +1132,7 @@ SECTIONS { src/manager/manager1E.o(.rodata); src/manager/manager1F.o(.rodata); src/manager/manager22.o(.rodata); - data/const/manager/manager23.o(.rodata); + src/manager/manager23.o(.rodata); data/const/manager/manager24.o(.rodata); src/manager/manager26.o(.rodata); src/manager/manager27.o(.rodata); diff --git a/src/manager/manager23.c b/src/manager/manager23.c index f831f008..7defd96a 100644 --- a/src/manager/manager23.c +++ b/src/manager/manager23.c @@ -6,8 +6,6 @@ #include "object.h" #include "game.h" -extern void (*const gUnk_08108CCC[])(Manager*); - typedef struct { Manager manager; u16 field_0x20; @@ -23,11 +21,21 @@ typedef struct { void sub_0805BE94(Manager23*); void sub_0805BEC4(Manager23*); +void sub_0805BC8C(Manager23*); +void sub_0805BCD4(Manager23*); +void sub_0805BD5C(Manager23*); +void sub_0805BDB4(Manager23*); void sub_0805BE70(Manager23*, u32); void Manager23_Main(Manager* this) { - gUnk_08108CCC[this->unk_0a](this); + static void (*const gUnk_08108CCC[])(Manager23*) = { + sub_0805BC8C, + sub_0805BCD4, + sub_0805BD5C, + sub_0805BDB4, + }; + gUnk_08108CCC[this->unk_0a]((Manager23*)this); } void sub_0805BC8C(Manager23* this) {