From 6bae4ae861d2cea6cda8c4284876e5df3c659de5 Mon Sep 17 00:00:00 2001 From: Tal Hayon Date: Mon, 18 Apr 2022 23:35:29 +0300 Subject: [PATCH] Put const data in manager32 --- assets/assets.json | 5 ----- data/const/manager/manager32.s | 14 -------------- linker.ld | 2 +- src/manager/manager32.c | 15 ++++++++++++--- 4 files changed, 13 insertions(+), 23 deletions(-) delete mode 100644 data/const/manager/manager32.s diff --git a/assets/assets.json b/assets/assets.json index 8f341fdf..da91f04b 100644 --- a/assets/assets.json +++ b/assets/assets.json @@ -32723,11 +32723,6 @@ "start": 1084332, "size": 124 }, - { - "path": "manager32/gUnk_08108D74.bin", - "start": 1084788, - "size": 8 - }, { "path": "manager36/gUnk_08108DA8.bin", "start": 1084840, diff --git a/data/const/manager/manager32.s b/data/const/manager/manager32.s deleted file mode 100644 index 94c8689e..00000000 --- a/data/const/manager/manager32.s +++ /dev/null @@ -1,14 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .section .rodata - .align 2 - -gUnk_08108D74:: @ 08108D74 - .incbin "manager32/gUnk_08108D74.bin" - -gUnk_08108D7C:: @ 08108D7C - .4byte sub_0805D7DC - .4byte sub_0805D860 - .4byte sub_0805D900 - .4byte sub_0805D98C diff --git a/linker.ld b/linker.ld index 65e1aa55..3fb18504 100644 --- a/linker.ld +++ b/linker.ld @@ -1140,7 +1140,7 @@ SECTIONS { src/manager/manager2B.o(.rodata); src/manager/manager2E.o(.rodata); src/manager/manager31.o(.rodata); - data/const/manager/manager32.o(.rodata); + src/manager/manager32.o(.rodata); data/const/manager/manager34.o(.rodata); data/const/manager/manager35.o(.rodata); data/const/manager/manager36.o(.rodata); diff --git a/src/manager/manager32.c b/src/manager/manager32.c index b07e57f0..4ba9245b 100644 --- a/src/manager/manager32.c +++ b/src/manager/manager32.c @@ -13,18 +13,27 @@ typedef struct { u32 field_0x28; } Manager32; -extern void (*const gUnk_08108D7C[])(Manager32*); void sub_0805D9D8(Manager32*); +void sub_0805D98C(Manager32*); +void sub_0805D900(Manager32*); +void sub_0805D860(Manager32*); +void sub_0805D7DC(Manager32*); void sub_0805DA08(u32, u32, u32); -extern u8 gUnk_08108D74[]; +static const u8 gUnk_08108D74[] = { 0x4f, 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x0 }; extern struct BgAffineDstData gUnk_02017AA0[]; extern u8 gUnk_03003DE4[0xC]; extern void sub_0805622C(struct BgAffineDstData*, u32, u32); void Manager32_Main(Manager32* this) { - gUnk_08108D7C[this->manager.action](this); + static void (*const actionFuncs[])(Manager32*) = { + sub_0805D7DC, + sub_0805D860, + sub_0805D900, + sub_0805D98C, + }; + actionFuncs[this->manager.action](this); this->field_0x24 = gRoomTransition.frameCount << 4; sub_0805D9D8(this); sub_0805DA08(this->field_0x20, this->field_0x28, this->field_0x24);