diff options
-rw-r--r-- | src/item_menu.c | 113 | ||||
-rw-r--r-- | sym_bss.txt | 10 | ||||
-rw-r--r-- | sym_ewram.txt | 21 |
3 files changed, 60 insertions, 84 deletions
diff --git a/src/item_menu.c b/src/item_menu.c index 8fd699778..350ba3db4 100644 --- a/src/item_menu.c +++ b/src/item_menu.c @@ -35,7 +35,26 @@ #include "text.h" #include "unknown_task.h" +// External stuff extern u8 ewram[]; +extern void gpu_pal_allocator_reset__manage_upper_four(void); +extern void sub_80F9020(void); +extern void sub_80F9988(); +extern void sub_809D104(u16 *, u16, u16, const u8 *, u16, u16, u16, u16); +extern void PauseVerticalScrollIndicator(); +extern u8 sub_80F9284(void); +extern void sub_808B5B4(); +extern u8 sub_80F92F4(); +extern void sub_80C9C7C(u8); +extern void pal_fill_black(void); +extern bool8 sub_807D770(void); +extern u8 sub_80F931C(); +extern void sub_808A3F8(u8); +extern void sub_80B3050(void); +extern void sub_80546B8(u8); +extern void sub_804E990(u8); +extern void sub_802E424(u8); +extern void sub_8064E2C(void); struct PocketScrollState { @@ -90,26 +109,6 @@ enum BAG_POCKET_KEY_ITEMS, // 4 }; -EWRAM_DATA static struct UnknownStruct2 gUnknown_0203853C = {0}; -EWRAM_DATA static struct UnknownStruct3 gUnknown_02038540 = {0}; -EWRAM_DATA static struct UnknownStruct4 gUnknown_02038544 = {0}; -EWRAM_DATA static struct UnknownStruct5 gUnknown_02038550 = {0}; -EWRAM_DATA static struct UnknownStruct6 gUnknown_02038554 = {0}; // There are 3 bytes of padding after this, so I assume it's a struct -EWRAM_DATA static u8 gUnknown_02038558 = 0; -EWRAM_DATA static s8 sCurrentBagPocket = 0; -EWRAM_DATA static u8 gUnknown_0203855A = 0; -EWRAM_DATA static s8 gUnknown_0203855B = 0; -EWRAM_DATA static s8 gUnknown_0203855C = 0; -EWRAM_DATA u16 gScriptItemId = 0; -extern u8 gUnknown_02038560; -extern u8 gUnknown_02038561; -extern u8 gUnknown_02038562; -extern u8 gUnknown_02038563; -extern u8 gUnknown_02038564; -extern u8 sPokeballSpriteId; -extern void (*gUnknown_03005D00)(u8); -extern u8 sPopupMenuSelection; - enum { RETURN_TO_FIELD_0, @@ -122,33 +121,51 @@ enum RETURN_TO_WALLY_BATTLE, }; -extern u8 sReturnLocation; +enum +{ + ITEM_ACTION_USE_0, // 0 + ITEM_ACTION_TOSS, // 1 + ITEM_ACTION_CANCEL_2, // 2 + ITEM_ACTION_REGISTER, // 3 + ITEM_ACTION_USE_4, // 4 + ITEM_ACTION_CANCEL_5, // 5 + ITEM_ACTION_GIVE, // 6 + ITEM_ACTION_CHECK_TAG, // 7 + ITEM_ACTION_NONE, // 8 + ITEM_ACTION_CONFIRM, // 9 +}; -extern const u8 *sPopupMenuActionList; +// ewram +EWRAM_DATA static struct UnknownStruct2 gUnknown_0203853C = {0}; +EWRAM_DATA static struct UnknownStruct3 gUnknown_02038540 = {0}; +EWRAM_DATA static struct UnknownStruct4 gUnknown_02038544 = {0}; +EWRAM_DATA static struct UnknownStruct5 gUnknown_02038550 = {0}; +EWRAM_DATA static struct UnknownStruct6 gUnknown_02038554 = {0}; // There are 3 bytes of padding after this, so I assume it's a struct +EWRAM_DATA static u8 gUnknown_02038558 = 0; +EWRAM_DATA static s8 sCurrentBagPocket = 0; +EWRAM_DATA static u8 gUnknown_0203855A = 0; +EWRAM_DATA static s8 gUnknown_0203855B = 0; +EWRAM_DATA static s8 gUnknown_0203855C = 0; +EWRAM_DATA u16 gScriptItemId = 0; +EWRAM_DATA u8 gUnknown_02038560 = 0; +EWRAM_DATA u8 gUnknown_02038561 = 0; +EWRAM_DATA static u8 gUnknown_02038562 = 0; +EWRAM_DATA static u8 gUnknown_02038563 = 0; +EWRAM_DATA static u8 gUnknown_02038564 = 0; +EWRAM_DATA static u8 sPokeballSpriteId ALIGNED(4) = 0; // HACK: why is there a space before this variable? + +// bss +static u8 sPopupMenuSelection; +static u8 sReturnLocation; +static const u8 *sPopupMenuActionList; + +// common +void (*gUnknown_03005D00)(u8) = NULL; extern u16 gUnknown_030041B4; extern struct PocketScrollState gBagPocketScrollStates[]; extern struct ItemSlot *gCurrentBagPocketItemSlots; // selected pocket item slots extern const u8 Event_NoRegisteredItem[]; -extern void gpu_pal_allocator_reset__manage_upper_four(void); -extern void sub_80F9020(void); -extern void sub_80F9988(); -extern void sub_809D104(u16 *, u16, u16, const u8 *, u16, u16, u16, u16); -extern void PauseVerticalScrollIndicator(); -extern u8 sub_80F9284(void); -extern void sub_808B5B4(); -extern u8 sub_80F92F4(); -extern void sub_80C9C7C(u8); -extern void pal_fill_black(void); -extern bool8 sub_807D770(void); -extern u8 sub_80F931C(); -extern void sub_808A3F8(u8); -extern void sub_80B3050(void); -extern void sub_80546B8(u8); -extern void sub_804E990(u8); -extern void sub_802E424(u8); -extern void sub_8064E2C(void); - #define ewramBerryPic (ewram + 0) #define ewramBerryPicTemp (ewram + 0x1000) #define ewramSavedItemsPocket ((struct ItemSlot *)(ewram + 0x1E000)) // saved items pocket (for Wally battle) @@ -178,20 +195,6 @@ static void HandlePopupMenuAction_Give(u8); static void HandlePopupMenuAction_CheckTag(u8); static void HandlePopupMenuAction_Confirm(u8); -enum -{ - ITEM_ACTION_USE_0, // 0 - ITEM_ACTION_TOSS, // 1 - ITEM_ACTION_CANCEL_2, // 2 - ITEM_ACTION_REGISTER, // 3 - ITEM_ACTION_USE_4, // 4 - ITEM_ACTION_CANCEL_5, // 5 - ITEM_ACTION_GIVE, // 6 - ITEM_ACTION_CHECK_TAG, // 7 - ITEM_ACTION_NONE, // 8 - ITEM_ACTION_CONFIRM, // 9 -}; - static const struct MenuAction2 sItemPopupMenuActions[] = { {OtherText_Use, HandlePopupMenuAction_UseOnField}, diff --git a/sym_bss.txt b/sym_bss.txt index 1164034f9..99dcd1392 100644 --- a/sym_bss.txt +++ b/sym_bss.txt @@ -93,15 +93,7 @@ gUnknown_030006DC: @ 30006DC .space 0x4 .include "src/field_effect.o" - -sPopupMenuSelection: @ 3000700 - .space 0x1 - -sReturnLocation: @ 3000701 - .space 0x3 - -sPopupMenuActionList: @ 3000704 - .space 0x4 + .include "src/item_menu.o" gUnknown_03000708: @ 3000708 .space 0x10 diff --git a/sym_ewram.txt b/sym_ewram.txt index 4fd2abcd2..0a7cce3ef 100644 --- a/sym_ewram.txt +++ b/sym_ewram.txt @@ -605,28 +605,9 @@ gUnknown_020384F8: @ 20384F8 .space 0x40 .include "src/map_name_popup.o" - .include "src/item_menu.o" - .align 2 -gUnknown_02038560: @ 2038560 - .space 0x1 - -gUnknown_02038561: @ 2038561 - .space 0x1 - -gUnknown_02038562: @ 2038562 - .space 0x1 - -gUnknown_02038563: @ 2038563 - .space 0x1 - -gUnknown_02038564: @ 2038564 - .space 0x4 - -sPokeballSpriteId: @ 2038568 - .space 0x4 - + .align 2 gUnknown_0203856C: @ 203856C .space 0x4 |