From 3c6101e313ca8bcdff03176da3958e9eec98446f Mon Sep 17 00:00:00 2001 From: Tal Hayon Date: Sat, 16 Apr 2022 20:49:53 +0300 Subject: [PATCH] Put const data in itemBow --- data/const/item/itemBow.s | 14 -------------- linker.ld | 2 +- src/item/itemBow.c | 12 ++++++++++-- 3 files changed, 11 insertions(+), 17 deletions(-) delete mode 100644 data/const/item/itemBow.s diff --git a/data/const/item/itemBow.s b/data/const/item/itemBow.s deleted file mode 100644 index aebc0aaf..00000000 --- a/data/const/item/itemBow.s +++ /dev/null @@ -1,14 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .section .rodata - .align 2 - - -gUnk_0811BD80:: @ 0811BD80 - .4byte sub_08075DF4 - .4byte sub_08075E40 - .4byte sub_08075EC0 - .4byte sub_08075F38 - .4byte sub_08075F84 - .4byte sub_08075D88 diff --git a/linker.ld b/linker.ld index 29becf13..19d4e077 100644 --- a/linker.ld +++ b/linker.ld @@ -1310,7 +1310,7 @@ SECTIONS { src/item/itemSword.o(.rodata); src/item/itemLantern.o(.rodata); src/item/itemBoomerang.o(.rodata); - data/const/item/itemBow.o(.rodata); + src/item/itemBow.o(.rodata); data/const/item/itemBomb.o(.rodata); data/const/item/itemTryPickupObject.o(.rodata); src/item/itemPegasusBoots.o(.rodata); diff --git a/src/item/itemBow.c b/src/item/itemBow.c index 586a0505..d94e4c57 100644 --- a/src/item/itemBow.c +++ b/src/item/itemBow.c @@ -2,10 +2,18 @@ #include "functions.h" #include "save.h" -extern void (*const gUnk_0811BD80[])(ItemBehavior*, u32); +void sub_08075DF4(ItemBehavior*, u32); +void sub_08075E40(ItemBehavior*, u32); +void sub_08075EC0(ItemBehavior*, u32); +void sub_08075F38(ItemBehavior*, u32); +void sub_08075F84(ItemBehavior*, u32); +void sub_08075D88(ItemBehavior*, u32); void ItemBow(ItemBehavior* this, u32 idx) { - gUnk_0811BD80[this->stateID](this, idx); + static void (*const stateFuncs[])(ItemBehavior*, u32) = { + sub_08075DF4, sub_08075E40, sub_08075EC0, sub_08075F38, sub_08075F84, sub_08075D88, + }; + stateFuncs[this->stateID](this, idx); } void sub_08075DF4(ItemBehavior* this, u32 idx) {