summaryrefslogtreecommitdiff
path: root/asm
diff options
context:
space:
mode:
Diffstat (limited to 'asm')
-rw-r--r--asm/item_menu.s913
1 files changed, 0 insertions, 913 deletions
diff --git a/asm/item_menu.s b/asm/item_menu.s
index c5d01dcdb..18cc7fc98 100644
--- a/asm/item_menu.s
+++ b/asm/item_menu.s
@@ -6,919 +6,6 @@
.text
- thumb_func_start sub_80A5BF8
-sub_80A5BF8: @ 80A5BF8
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl sub_80A73FC
- bl sub_80A7590
- ldr r1, _080A5C1C @ =gOtherText_NoPokemon
- ldr r2, _080A5C20 @ =CleanUpItemMenuMessage
- adds r0, r4, 0
- movs r3, 0x1
- bl DisplayCannotUseItemMessage
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080A5C1C: .4byte gOtherText_NoPokemon
-_080A5C20: .4byte CleanUpItemMenuMessage
- thumb_func_end sub_80A5BF8
-
- thumb_func_start sub_80A5C24
-sub_80A5C24: @ 80A5C24
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0
- bl sub_80A7528
- adds r0, r4, 0
- bl sub_80A41D4
- bl ItemListMenu_InitMenu
- adds r0, r4, 0
- bl sub_80A37C0
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80A5C24
-
- thumb_func_start CleanUpItemMenuMessage
-CleanUpItemMenuMessage: @ 80A5C48
- push {r4,lr}
- sub sp, 0x4
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, _080A5C90 @ =gBGTilemapBuffers + 0x800
- movs r1, 0x1F
- str r1, [sp]
- movs r1, 0
- movs r2, 0
- movs r3, 0x1F
- bl sub_80A36B8
- movs r0, 0x7
- movs r1, 0x7
- movs r2, 0xD
- movs r3, 0xC
- bl MenuZeroFillWindowRect
- movs r0, 0
- movs r1, 0xE
- movs r2, 0x1D
- movs r3, 0x13
- bl MenuZeroFillWindowRect
- ldr r1, _080A5C94 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _080A5C98 @ =sub_80A5C24
- str r1, [r0]
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080A5C90: .4byte gBGTilemapBuffers + 0x800
-_080A5C94: .4byte gTasks
-_080A5C98: .4byte sub_80A5C24
- thumb_func_end CleanUpItemMenuMessage
-
- thumb_func_start CleanUpOverworldMessage
-CleanUpOverworldMessage: @ 80A5C9C
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0
- movs r1, 0xD
- movs r2, 0x1D
- movs r3, 0x13
- bl MenuZeroFillWindowRect
- adds r0, r4, 0
- bl DestroyTask
- bl sub_8064E2C
- bl ScriptContext2_Disable
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end CleanUpOverworldMessage
-
- thumb_func_start ExecuteItemUseFromBlackPalette
-ExecuteItemUseFromBlackPalette: @ 80A5CC4
- push {lr}
- bl pal_fill_black
- ldr r0, _080A5CD8 @ =Task_CallItemUseOnFieldCallback
- movs r1, 0x8
- bl CreateTask
- pop {r0}
- bx r0
- .align 2, 0
-_080A5CD8: .4byte Task_CallItemUseOnFieldCallback
- thumb_func_end ExecuteItemUseFromBlackPalette
-
- thumb_func_start Task_CallItemUseOnFieldCallback
-Task_CallItemUseOnFieldCallback: @ 80A5CDC
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl sub_807D770
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080A5CF8
- ldr r0, _080A5D00 @ =gUnknown_03005D00
- ldr r1, [r0]
- adds r0, r4, 0
- bl _call_via_r1
-_080A5CF8:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080A5D00: .4byte gUnknown_03005D00
- thumb_func_end Task_CallItemUseOnFieldCallback
-
- thumb_func_start sub_80A5D04
-sub_80A5D04: @ 80A5D04
- push {lr}
-_080A5D06:
- bl sub_80A317C
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080A5D28
- ldr r0, _080A5D20 @ =sub_80A50C8
- movs r1, 0
- bl CreateTask
- ldr r1, _080A5D24 @ =gUnknown_02038563
- strb r0, [r1]
- b _080A5D34
- .align 2, 0
-_080A5D20: .4byte sub_80A50C8
-_080A5D24: .4byte gUnknown_02038563
-_080A5D28:
- bl sub_80F9344
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080A5D06
-_080A5D34:
- pop {r0}
- bx r0
- thumb_func_end sub_80A5D04
-
- thumb_func_start sub_80A5D38
-sub_80A5D38: @ 80A5D38
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r1, _080A5D70 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- movs r1, 0
- strh r1, [r0, 0xA]
- ldr r0, _080A5D74 @ =gBGTilemapBuffers + 0x800
- bl sub_80A4DA4
- movs r0, 0
- bl sub_80A7528
- adds r0, r4, 0
- bl sub_80A41D4
- bl ItemListMenu_InitMenu
- adds r0, r4, 0
- bl sub_80A37C0
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080A5D70: .4byte gTasks
-_080A5D74: .4byte gBGTilemapBuffers + 0x800
- thumb_func_end sub_80A5D38
-
- thumb_func_start sub_80A5D78
-sub_80A5D78: @ 80A5D78
- push {lr}
- sub sp, 0x4
- ldr r0, _080A5D9C @ =gBGTilemapBuffers + 0x800
- movs r1, 0x4
- str r1, [sp]
- movs r1, 0x8
- movs r2, 0x8
- movs r3, 0x5
- bl sub_80A4008
- movs r0, 0x7
- movs r1, 0x7
- movs r2, 0x1
- bl DisplayYesNoMenu
- add sp, 0x4
- pop {r0}
- bx r0
- .align 2, 0
-_080A5D9C: .4byte gBGTilemapBuffers + 0x800
- thumb_func_end sub_80A5D78
-
- thumb_func_start sub_80A5DA0
-sub_80A5DA0: @ 80A5DA0
- push {r4,lr}
- lsls r0, 16
- lsrs r0, 16
- lsls r1, 16
- lsrs r4, r1, 16
- ldr r1, _080A5DC4 @ =gStringVar1
- bl CopyItemName
- cmp r4, 0x63
- bls _080A5DCC
- ldr r0, _080A5DC8 @ =gStringVar2
- adds r1, r4, 0
- movs r2, 0
- movs r3, 0x3
- bl ConvertIntToDecimalStringN
- b _080A5DD8
- .align 2, 0
-_080A5DC4: .4byte gStringVar1
-_080A5DC8: .4byte gStringVar2
-_080A5DCC:
- ldr r0, _080A5DF0 @ =gStringVar2
- adds r1, r4, 0
- movs r2, 0
- movs r3, 0x2
- bl ConvertIntToDecimalStringN
-_080A5DD8:
- ldr r0, _080A5DF4 @ =gBGTilemapBuffers + 0x800
- bl sub_80A4DA4
- movs r0, 0x5
- bl sub_80A7528
- bl sub_80A5D78
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080A5DF0: .4byte gStringVar2
-_080A5DF4: .4byte gBGTilemapBuffers + 0x800
- thumb_func_end sub_80A5DA0
-
- thumb_func_start sub_80A5DF8
-sub_80A5DF8: @ 80A5DF8
- push {lr}
- ldr r0, _080A5E18 @ =gBGTilemapBuffers + 0x800
- bl sub_80A4DA4
- movs r0, 0x7
- movs r1, 0x6
- movs r2, 0xB
- movs r3, 0xD
- bl MenuZeroFillWindowRect
- movs r0, 0x4
- bl sub_80A7528
- pop {r0}
- bx r0
- .align 2, 0
-_080A5E18: .4byte gBGTilemapBuffers + 0x800
- thumb_func_end sub_80A5DF8
-
- thumb_func_start sub_80A5E1C
-sub_80A5E1C: @ 80A5E1C
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _080A5E58 @ =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- bne _080A5E36
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _080A5E50
-_080A5E36:
- ldr r0, _080A5E5C @ =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- movs r0, 0
- strh r0, [r1, 0x1C]
- adds r0, r4, 0
- bl sub_80A41D4
- adds r0, r4, 0
- bl sub_80A5D38
-_080A5E50:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080A5E58: .4byte gMain
-_080A5E5C: .4byte gTasks
- thumb_func_end sub_80A5E1C
-
- thumb_func_start sub_80A5E60
-sub_80A5E60: @ 80A5E60
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl sub_80A5DF8
- adds r0, r4, 0
- bl sub_80A3D5C
- ldr r1, _080A5E88 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _080A5E8C @ =sub_80A5E1C
- str r1, [r0]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080A5E88: .4byte gTasks
-_080A5E8C: .4byte sub_80A5E1C
- thumb_func_end sub_80A5E60
-
- thumb_func_start sub_80A5E90
-sub_80A5E90: @ 80A5E90
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- bl sub_80A5D38
- pop {r0}
- bx r0
- thumb_func_end sub_80A5E90
-
- thumb_func_start sub_80A5EA0
-sub_80A5EA0: @ 80A5EA0
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- adds r5, r4, 0
- adds r0, r4, 0
- bl sub_80A5350
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _080A5F0C
- ldr r0, _080A5EE8 @ =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _080A5EF8
- movs r0, 0x5
- bl PlaySE
- ldr r0, _080A5EEC @ =gScriptItemId
- ldrh r0, [r0]
- ldr r2, _080A5EF0 @ =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r2
- ldrh r1, [r1, 0xA]
- bl sub_80A5DA0
- ldr r1, _080A5EF4 @ =gUnknown_083C16F4
- adds r0, r4, 0
- bl DoYesNoFuncWithChoice
- b _080A5F0C
- .align 2, 0
-_080A5EE8: .4byte gMain
-_080A5EEC: .4byte gScriptItemId
-_080A5EF0: .4byte gTasks
-_080A5EF4: .4byte gUnknown_083C16F4
-_080A5EF8:
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _080A5F0C
- movs r0, 0x5
- bl PlaySE
- adds r0, r5, 0
- bl sub_80A5D38
-_080A5F0C:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80A5EA0
-
- thumb_func_start sub_80A5F14
-sub_80A5F14: @ 80A5F14
- push {r4,lr}
- sub sp, 0x8
- lsls r0, 24
- lsrs r4, r0, 24
- movs r0, 0x5
- bl PlaySE
- ldr r1, _080A5F58 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _080A5F5C @ =sub_80A5EA0
- str r1, [r0]
- movs r0, 0x3
- bl sub_80A7528
- ldr r0, _080A5F60 @ =gUnknown_02038559
- ldrb r0, [r0]
- lsls r0, 24
- asrs r0, 24
- cmp r0, 0x3
- bne _080A5F64
- movs r0, 0x3
- str r0, [sp]
- str r0, [sp, 0x4]
- adds r0, r4, 0
- movs r1, 0x6
- movs r2, 0x9
- movs r3, 0x7
- bl sub_80A4DD8
- b _080A5F78
- .align 2, 0
-_080A5F58: .4byte gTasks
-_080A5F5C: .4byte sub_80A5EA0
-_080A5F60: .4byte gUnknown_02038559
-_080A5F64:
- movs r0, 0x3
- str r0, [sp]
- movs r0, 0x2
- str r0, [sp, 0x4]
- adds r0, r4, 0
- movs r1, 0x7
- movs r2, 0x9
- movs r3, 0x6
- bl sub_80A4DD8
-_080A5F78:
- add sp, 0x8
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80A5F14
-
- thumb_func_start sub_80A5F80
-sub_80A5F80: @ 80A5F80
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0x5
- bl PlaySE
- movs r0, 0
- bl sub_80A7528
- adds r0, r4, 0
- bl sub_80A41D4
- bl ItemListMenu_InitMenu
- adds r0, r4, 0
- bl sub_80A37C0
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80A5F80
-
- thumb_func_start sub_80A5FAC
-sub_80A5FAC: @ 80A5FAC
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- movs r0, 0x5
- bl PlaySE
- ldr r0, _080A5FD0 @ =gSaveBlock1
- ldr r1, _080A5FD4 @ =0x00000496
- adds r4, r0, r1
- ldr r5, _080A5FD8 @ =gScriptItemId
- ldrh r0, [r4]
- ldrh r1, [r5]
- cmp r0, r1
- bne _080A5FDC
- bl sub_80A40D0
- movs r0, 0
- b _080A5FE2
- .align 2, 0
-_080A5FD0: .4byte gSaveBlock1
-_080A5FD4: .4byte 0x00000496
-_080A5FD8: .4byte gScriptItemId
-_080A5FDC:
- bl sub_80A413C
- ldrh r0, [r5]
-_080A5FE2:
- strh r0, [r4]
- movs r0, 0
- bl sub_80A7528
- adds r0, r6, 0
- bl sub_80A41D4
- bl ItemListMenu_InitMenu
- adds r0, r6, 0
- bl sub_80A37C0
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_80A5FAC
-
- thumb_func_start sub_80A6000
-sub_80A6000: @ 80A6000
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0
- bl sub_80A7528
- adds r0, r4, 0
- bl sub_80A41D4
- bl ItemListMenu_InitMenu
- adds r0, r4, 0
- bl sub_80A37C0
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80A6000
-
- thumb_func_start sub_80A6024
-sub_80A6024: @ 80A6024
- push {r4,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _080A606C @ =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _080A6062
- ldr r0, _080A6070 @ =gBGTilemapBuffers + 0x800
- movs r1, 0x1F
- str r1, [sp]
- movs r1, 0
- movs r2, 0
- movs r3, 0x1F
- bl sub_80A36B8
- movs r0, 0
- movs r1, 0xE
- movs r2, 0x1D
- movs r3, 0x13
- bl MenuZeroFillWindowRect
- ldr r1, _080A6074 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _080A6078 @ =sub_80A6000
- str r1, [r0]
-_080A6062:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080A606C: .4byte gMain
-_080A6070: .4byte gBGTilemapBuffers + 0x800
-_080A6074: .4byte gTasks
-_080A6078: .4byte sub_80A6000
- thumb_func_end sub_80A6024
-
- thumb_func_start DisplayCannotBeHeldMessage
-DisplayCannotBeHeldMessage: @ 80A607C
- push {r4,r5,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl sub_80A73FC
- ldr r0, _080A60B4 @ =gScriptItemId
- ldrh r0, [r0]
- ldr r1, _080A60B8 @ =gStringVar1
- bl CopyItemName
- ldr r5, _080A60BC @ =gStringVar4
- ldr r1, _080A60C0 @ =gOtherText_CantBeHeld
- adds r0, r5, 0
- bl StringExpandPlaceholders
- bl sub_80A7590
- ldr r2, _080A60C4 @ =sub_80A6024
- adds r0, r4, 0
- adds r1, r5, 0
- movs r3, 0x1
- bl DisplayCannotUseItemMessage
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080A60B4: .4byte gScriptItemId
-_080A60B8: .4byte gStringVar1
-_080A60BC: .4byte gStringVar4
-_080A60C0: .4byte gOtherText_CantBeHeld
-_080A60C4: .4byte sub_80A6024
- thumb_func_end DisplayCannotBeHeldMessage
-
- thumb_func_start ItemMenu_Give
-ItemMenu_Give: @ 80A60C8
- push {r4-r6,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r4, r0, 24
- adds r6, r4, 0
- movs r0, 0x5
- bl PlaySE
- ldr r5, _080A60FC @ =gScriptItemId
- ldrh r0, [r5]
- bl sub_80F931C
- lsls r0, 24
- cmp r0, 0
- bne _080A6108
- bl sub_80A73FC
- bl sub_80A7590
- ldr r1, _080A6100 @ =gOtherText_CantWriteMail
- ldr r2, _080A6104 @ =sub_80A6024
- adds r0, r4, 0
- movs r3, 0x1
- bl DisplayCannotUseItemMessage
- b _080A616E
- .align 2, 0
-_080A60FC: .4byte gScriptItemId
-_080A6100: .4byte gOtherText_CantWriteMail
-_080A6104: .4byte sub_80A6024
-_080A6108:
- ldrh r0, [r5]
- bl ItemId_GetImportance
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0
- bne _080A6168
- bl CalculatePlayerPartyCount
- lsls r0, 24
- cmp r0, 0
- bne _080A6128
- adds r0, r4, 0
- bl sub_80A5BF8
- b _080A616E
-_080A6128:
- ldr r1, _080A6158 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r2, _080A615C @ =sub_808B020
- lsrs r1, r2, 16
- strh r1, [r0, 0x18]
- strh r2, [r0, 0x1A]
- ldr r1, _080A6160 @ =HandleItemMenuPaletteFade
- str r1, [r0]
- ldr r1, _080A6164 @ =gUnknown_02038561
- movs r0, 0x1
- strb r0, [r1]
- movs r0, 0x1
- negs r0, r0
- str r5, [sp]
- movs r1, 0
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- b _080A616E
- .align 2, 0
-_080A6158: .4byte gTasks
-_080A615C: .4byte sub_808B020
-_080A6160: .4byte HandleItemMenuPaletteFade
-_080A6164: .4byte gUnknown_02038561
-_080A6168:
- adds r0, r6, 0
- bl DisplayCannotBeHeldMessage
-_080A616E:
- add sp, 0x4
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end ItemMenu_Give
-
- thumb_func_start sub_80A6178
-sub_80A6178: @ 80A6178
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r4, 0
- bl sub_80A5AE4
- ldr r1, _080A61A0 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r2, _080A61A4 @ =BerryTagScreen_814625C
- lsrs r1, r2, 16
- strh r1, [r0, 0x18]
- strh r2, [r0, 0x1A]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080A61A0: .4byte gTasks
-_080A61A4: .4byte BerryTagScreen_814625C
- thumb_func_end sub_80A6178
-
- thumb_func_start sub_80A61A8
-sub_80A61A8: @ 80A61A8
- push {lr}
- bl sub_80A34B4
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080A61C2
- ldr r0, _080A61C8 @ =sub_80A50C8
- movs r1, 0
- bl CreateTask
- ldr r1, _080A61CC @ =gUnknown_02038563
- strb r0, [r1]
-_080A61C2:
- pop {r0}
- bx r0
- .align 2, 0
-_080A61C8: .4byte sub_80A50C8
-_080A61CC: .4byte gUnknown_02038563
- thumb_func_end sub_80A61A8
-
- thumb_func_start sub_80A61D0
-sub_80A61D0: @ 80A61D0
- push {lr}
- ldr r0, _080A61E4 @ =gUnknown_03000701
- movs r1, 0x2
- strb r1, [r0]
- ldr r0, _080A61E8 @ =sub_80A61A8
- bl SetMainCallback2
- pop {r0}
- bx r0
- .align 2, 0
-_080A61E4: .4byte gUnknown_03000701
-_080A61E8: .4byte sub_80A61A8
- thumb_func_end sub_80A61D0
-
- thumb_func_start sub_80A61EC
-sub_80A61EC: @ 80A61EC
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _080A620C @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- ldr r3, _080A6210 @ =sub_808A3F8
- lsrs r2, r3, 16
- strh r2, [r1, 0x18]
- strh r3, [r1, 0x1A]
- bl sub_80A5AE4
- pop {r0}
- bx r0
- .align 2, 0
-_080A620C: .4byte gTasks
-_080A6210: .4byte sub_808A3F8
- thumb_func_end sub_80A61EC
-
- thumb_func_start sub_80A6214
-sub_80A6214: @ 80A6214
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r0, _080A6244 @ =gUnknown_02038559
- ldrb r0, [r0]
- adds r0, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r4, _080A6248 @ =gScriptItemId
- ldrh r0, [r4]
- bl sub_80F931C
- lsls r0, 24
- cmp r0, 0
- bne _080A6254
- bl sub_80A73FC
- bl sub_80A7590
- ldr r1, _080A624C @ =gOtherText_CantWriteMail
- ldr r2, _080A6250 @ =sub_80A6024
- adds r0, r5, 0
- b _080A6280
- .align 2, 0
-_080A6244: .4byte gUnknown_02038559
-_080A6248: .4byte gScriptItemId
-_080A624C: .4byte gOtherText_CantWriteMail
-_080A6250: .4byte sub_80A6024
-_080A6254:
- ldrh r0, [r4]
- bl sub_80F92F4
- lsls r0, 24
- cmp r0, 0
- bne _080A6298
- bl sub_80A73FC
- ldrh r0, [r4]
- ldr r1, _080A6288 @ =gStringVar1
- bl CopyItemName
- ldr r4, _080A628C @ =gStringVar4
- ldr r1, _080A6290 @ =gOtherText_CantBeHeldHere
- adds r0, r4, 0
- bl StringExpandPlaceholders
- bl sub_80A7590
- ldr r2, _080A6294 @ =sub_80A6024
- adds r0, r5, 0
- adds r1, r4, 0
-_080A6280:
- movs r3, 0x1
- bl DisplayCannotUseItemMessage
- b _080A62D2
- .align 2, 0
-_080A6288: .4byte gStringVar1
-_080A628C: .4byte gStringVar4
-_080A6290: .4byte gOtherText_CantBeHeldHere
-_080A6294: .4byte sub_80A6024
-_080A6298:
- cmp r6, 0x5
- beq _080A62CC
- ldrh r0, [r4]
- bl ItemId_GetImportance
- lsls r0, 24
- cmp r0, 0
- bne _080A62CC
- ldr r1, _080A62C4 @ =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- ldr r2, _080A62C8 @ =sub_808A3F8
- lsrs r1, r2, 16
- strh r1, [r0, 0x18]
- strh r2, [r0, 0x1A]
- adds r0, r5, 0
- bl sub_80A5AAC
- b _080A62D2
- .align 2, 0
-_080A62C4: .4byte gTasks
-_080A62C8: .4byte sub_808A3F8
-_080A62CC:
- adds r0, r5, 0
- bl DisplayCannotBeHeldMessage
-_080A62D2:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_80A6214
-
- thumb_func_start sub_80A62D8
-sub_80A62D8: @ 80A62D8
- push {lr}
- bl sub_80A34B4
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080A62F2
- ldr r0, _080A62F8 @ =sub_80A50C8
- movs r1, 0
- bl CreateTask
- ldr r1, _080A62FC @ =gUnknown_02038563
- strb r0, [r1]
-_080A62F2:
- pop {r0}
- bx r0
- .align 2, 0
-_080A62F8: .4byte sub_80A50C8
-_080A62FC: .4byte gUnknown_02038563
- thumb_func_end sub_80A62D8
-
- thumb_func_start sub_80A6300
-sub_80A6300: @ 80A6300
- push {lr}
- ldr r0, _080A6314 @ =gUnknown_03000701
- movs r1, 0x3
- strb r1, [r0]
- ldr r0, _080A6318 @ =sub_80A62D8
- bl SetMainCallback2
- pop {r0}
- bx r0
- .align 2, 0
-_080A6314: .4byte gUnknown_03000701
-_080A6318: .4byte sub_80A62D8
- thumb_func_end sub_80A6300
-
- thumb_func_start sub_80A631C
-sub_80A631C: @ 80A631C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _080A6344 @ =gFieldCallback
- ldr r1, _080A6348 @ =sub_80B3050
- str r1, [r2]
- ldr r2, _080A634C @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- ldr r3, _080A6350 @ =c2_exit_to_overworld_2_switch
- lsrs r2, r3, 16
- strh r2, [r1, 0x18]
- strh r3, [r1, 0x1A]
- bl sub_80A5AE4
- pop {r0}
- bx r0
- .align 2, 0
-_080A6344: .4byte gFieldCallback
-_080A6348: .4byte sub_80B3050
-_080A634C: .4byte gTasks
-_080A6350: .4byte c2_exit_to_overworld_2_switch
- thumb_func_end sub_80A631C
-
thumb_func_start sub_80A6354
sub_80A6354: @ 80A6354
push {r4,r5,lr}