diff options
Diffstat (limited to 'asm')
-rw-r--r-- | asm/player_pc.s | 2589 |
1 files changed, 1296 insertions, 1293 deletions
diff --git a/asm/player_pc.s b/asm/player_pc.s index 8a329a2fe..8c8bde42d 100644 --- a/asm/player_pc.s +++ b/asm/player_pc.s @@ -5,1286 +5,1289 @@ .text - thumb_func_start NewGameInitPCItems -NewGameInitPCItems: @ 816ADF4 - push {r4-r6,lr} - movs r4, 0 - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - movs r1, 0x93 - lsls r1, 3 - adds r0, r1 - movs r1, 0x32 - bl ClearItemSlots - ldr r1, =gUnknown_085DFEFC - ldrh r0, [r1] - cmp r0, 0 - beq _0816AE48 - ldrh r0, [r1, 0x2] - cmp r0, 0 - beq _0816AE48 - adds r5, r1, 0 - adds r6, r5, 0x2 -_0816AE1A: - lsls r1, r4, 2 - adds r0, r1, r5 - ldrh r0, [r0] - adds r1, r6 - ldrh r1, [r1] - bl AddPCItem - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0816AE48 - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - lsls r1, r4, 2 - adds r0, r1, r5 - ldrh r0, [r0] - cmp r0, 0 - beq _0816AE48 - adds r0, r1, r6 - ldrh r0, [r0] - cmp r0, 0 - bne _0816AE1A -_0816AE48: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end NewGameInitPCItems - - thumb_func_start sub_816AE58 -sub_816AE58: @ 816AE58 - push {lr} - ldr r1, =gUnknown_0203BCB0 - ldr r0, =gUnknown_085DFED4 - str r0, [r1] - ldr r1, =gUnknown_0203BCB4 - movs r0, 0x4 - strb r0, [r1] - ldr r0, =TaskDummy - movs r1, 0 - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gText_WhatWouldYouLike - ldr r2, =sub_816AED8 - bl DisplayItemMessageOnField - pop {r0} - bx r0 - .pool - thumb_func_end sub_816AE58 - - thumb_func_start sub_816AE98 -sub_816AE98: @ 816AE98 - push {lr} - ldr r1, =gUnknown_0203BCB0 - ldr r0, =gUnknown_085DFED8 - str r0, [r1] - ldr r1, =gUnknown_0203BCB4 - movs r0, 0x3 - strb r0, [r1] - ldr r0, =TaskDummy - movs r1, 0 - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gText_WhatWouldYouLike - ldr r2, =sub_816AED8 - bl DisplayItemMessageOnField - pop {r0} - bx r0 - .pool - thumb_func_end sub_816AE98 - - thumb_func_start sub_816AED8 -sub_816AED8: @ 816AED8 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x8 - lsls r0, 24 - lsrs r7, r0, 24 - lsls r0, r7, 2 - adds r0, r7 - lsls r0, 3 - ldr r1, =gTasks + 0x8 - adds r6, r0, r1 - ldr r0, =gUnknown_0203BCB4 - ldrb r1, [r0] - mov r8, r0 - cmp r1, 0x3 - bne _0816AF0C - ldr r0, =gUnknown_085DFF24 - ldr r1, [r0, 0x4] - ldr r0, [r0] - b _0816AF12 - .pool -_0816AF0C: - ldr r0, =gUnknown_085DFF24 - ldr r1, [r0, 0xC] - ldr r0, [r0, 0x8] -_0816AF12: - str r0, [sp] - str r1, [sp, 0x4] - ldr r5, =gUnknown_085DFEB4 - ldr r4, =gUnknown_0203BCB0 - ldr r1, [r4] - mov r0, r8 - ldrb r2, [r0] - adds r0, r5, 0 - bl sub_81DB3D8 - lsls r0, 24 - ldr r2, =0x00ffffff - ldr r1, [sp] - ands r1, r2 - orrs r1, r0 - str r1, [sp] - mov r0, sp - bl AddWindow - strh r0, [r6, 0x8] - lsls r0, 24 - lsrs r0, 24 - movs r1, 0 - bl SetStandardWindowBorderStyle - ldrb r0, [r6, 0x8] - mov r2, r8 - ldrb r1, [r2] - ldr r3, [r4] - adds r2, r5, 0 - bl sub_81995E4 - ldrb r0, [r6, 0x8] - mov r2, r8 - ldrb r1, [r2] - movs r2, 0 - bl InitMenuInUpperLeftCornerPlaySoundWhenAPressed - movs r0, 0 - bl schedule_bg_copy_tilemap_to_vram - ldr r1, =gTasks - lsls r0, r7, 2 - adds r0, r7 - lsls r0, 3 - adds r0, r1 - ldr r1, =sub_816AF98 - str r1, [r0] - add sp, 0x8 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_816AED8 - - thumb_func_start sub_816AF98 -sub_816AF98: @ 816AF98 - push {r4-r6,lr} - lsls r0, 24 - lsrs r6, r0, 24 - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - ldr r1, =gTasks + 0x8 - adds r4, r0, r1 - ldr r0, =gUnknown_0203BCB4 - ldrb r0, [r0] - cmp r0, 0x3 - bls _0816AFC0 - bl ProcessMenuInput - b _0816AFC4 - .pool -_0816AFC0: - bl ProcessMenuInputNoWrapAround -_0816AFC4: - lsls r0, 24 - lsrs r0, 24 - lsls r0, 24 - asrs r5, r0, 24 - movs r0, 0x2 - negs r0, r0 - cmp r5, r0 - beq _0816B04C - adds r0, 0x1 - cmp r5, r0 - bne _0816B014 - movs r0, 0x5 - bl PlaySE - ldrb r0, [r4, 0x8] - movs r1, 0 - bl sub_8198070 - ldrb r0, [r4, 0x8] - bl ClearWindowTilemap - ldrb r0, [r4, 0x8] - bl RemoveWindow - movs r0, 0 - bl schedule_bg_copy_tilemap_to_vram - ldr r1, =gTasks - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - adds r0, r1 - ldr r1, =sub_816B148 - str r1, [r0] - b _0816B04C - .pool -_0816B014: - ldrb r0, [r4, 0x8] - movs r1, 0 - bl sub_8198070 - ldrb r0, [r4, 0x8] - bl ClearWindowTilemap - ldrb r0, [r4, 0x8] - bl RemoveWindow - movs r0, 0 - bl schedule_bg_copy_tilemap_to_vram - ldr r0, =gTasks - lsls r1, r6, 2 - adds r1, r6 - lsls r1, 3 - adds r1, r0 - ldr r2, =gUnknown_085DFEB4 - ldr r0, =gUnknown_0203BCB0 - ldr r0, [r0] - adds r0, r5 - ldrb r0, [r0] - lsls r0, 3 - adds r2, 0x4 - adds r0, r2 - ldr r0, [r0] - str r0, [r1] -_0816B04C: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_816AF98 - - thumb_func_start sub_816B060 -sub_816B060: @ 816B060 - push {lr} - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gText_WhatWouldYouLike - ldr r2, =sub_816AED8 - bl DisplayItemMessageOnField - pop {r0} - bx r0 - .pool - thumb_func_end sub_816B060 - - thumb_func_start task_pc_itemstorage -task_pc_itemstorage: @ 816B07C - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r4, 0 - movs r1, 0 - bl sub_816B190 - ldr r1, =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, =sub_816B248 - str r1, [r0] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end task_pc_itemstorage - - thumb_func_start sub_816B0A8 -sub_816B0A8: @ 816B0A8 - push {r4-r6,lr} - lsls r0, 24 - lsrs r4, r0, 24 - adds r6, r4, 0 - bl sub_816B510 - ldr r5, =gUnknown_0203BCB8 - movs r1, 0 - strb r0, [r5, 0x5] - lsls r0, 24 - cmp r0, 0 - bne _0816B0D8 - ldr r1, =gText_NoMailHere - ldr r2, =sub_816B060 - adds r0, r4, 0 - bl DisplayItemMessageOnField - b _0816B12A - .pool -_0816B0D8: - strh r1, [r5] - strh r1, [r5, 0x2] - movs r0, 0xFF - strb r0, [r5, 0x9] - bl sub_816B54C - adds r0, r4, 0 - bl sub_816B4C0 - ldrb r0, [r5, 0x5] - bl sub_81D1C44 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0816B120 - movs r0, 0 - movs r1, 0 - bl sub_8197434 - adds r0, r4, 0 - bl sub_816B5F8 - ldr r0, =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, =sub_816B674 - str r0, [r1] - b _0816B12A - .pool -_0816B120: - ldr r1, =gText_NoMailHere - ldr r2, =sub_816B060 - adds r0, r6, 0 - bl DisplayItemMessageOnField -_0816B12A: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_816B0A8 - - thumb_func_start sub_816B138 -sub_816B138: @ 816B138 - push {lr} - lsls r0, 24 - lsrs r0, 24 - bl sub_8126B2C - pop {r0} - bx r0 - thumb_func_end sub_816B138 - - thumb_func_start sub_816B148 -sub_816B148: @ 816B148 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, =gUnknown_0203BCB4 - ldrb r0, [r0] - cmp r0, 0x4 - bne _0816B180 - ldr r0, =gSaveBlock2Ptr - ldr r0, [r0] - ldrb r0, [r0, 0x8] - cmp r0, 0 - bne _0816B174 - ldr r0, =LittlerootTown_BrendansHouse_2F_EventScript_1F863F - bl ScriptContext1_SetupScript - b _0816B184 - .pool -_0816B174: - ldr r0, =LittlerootTown_MaysHouse_2F_EventScript_1F958F - bl ScriptContext1_SetupScript - b _0816B184 - .pool -_0816B180: - bl EnableBothScriptContexts -_0816B184: - adds r0, r4, 0 - bl DestroyTask - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_816B148 - - thumb_func_start sub_816B190 -sub_816B190: @ 816B190 - push {r4-r6,lr} - sub sp, 0x8 - adds r5, r1, 0 - lsls r0, 24 - lsrs r0, 24 - lsls r5, 24 - lsrs r5, 24 - lsls r4, r0, 2 - adds r4, r0 - lsls r4, 3 - ldr r0, =gTasks + 0x8 - adds r4, r0 - ldr r0, =gUnknown_085DFF24 - ldr r1, [r0, 0x14] - ldr r0, [r0, 0x10] - str r0, [sp] - str r1, [sp, 0x4] - ldr r6, =gUnknown_085DFEDC - adds r0, r6, 0 - movs r1, 0x4 - bl GetMaxWidthInMenuTable - lsls r0, 24 - ldr r2, =0x00ffffff - ldr r1, [sp] - ands r1, r2 - orrs r1, r0 - str r1, [sp] - mov r0, sp - bl AddWindow - strh r0, [r4, 0x8] - lsls r0, 24 - lsrs r0, 24 - movs r1, 0 - bl SetStandardWindowBorderStyle - ldrb r0, [r4, 0x8] - movs r1, 0x4 - adds r2, r6, 0 - bl PrintMenuTable - ldrb r0, [r4, 0x8] - movs r1, 0x4 - adds r2, r5, 0 - bl InitMenuInUpperLeftCornerPlaySoundWhenAPressed - movs r0, 0 - bl schedule_bg_copy_tilemap_to_vram - ldr r0, =gUnknown_085DFEA4 - lsls r5, 2 - adds r5, r0 - ldr r0, [r5] - bl sub_816B21C - add sp, 0x8 - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_816B190 - - thumb_func_start sub_816B21C -sub_816B21C: @ 816B21C - push {r4,lr} - sub sp, 0xC - adds r4, r0, 0 - movs r0, 0 - movs r1, 0 - bl NewMenuHelpers_DrawDialogueFrame - movs r0, 0x1 - str r0, [sp] - movs r0, 0 - str r0, [sp, 0x4] - str r0, [sp, 0x8] - movs r1, 0x1 - adds r2, r4, 0 - movs r3, 0 - bl PrintTextOnWindow - add sp, 0xC - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_816B21C - - thumb_func_start sub_816B248 -sub_816B248: @ 816B248 - push {r4-r6,lr} - lsls r0, 24 - lsrs r6, r0, 24 - bl GetMenuCursorPos - lsls r0, 24 - lsrs r5, r0, 24 - bl ProcessMenuInput - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl GetMenuCursorPos - lsls r0, 24 - lsrs r2, r0, 24 - lsls r4, 24 - asrs r4, 24 - movs r0, 0x2 - negs r0, r0 - cmp r4, r0 - beq _0816B298 - adds r0, 0x1 - cmp r4, r0 - beq _0816B2B4 - movs r0, 0x5 - bl PlaySE - ldr r0, =gUnknown_085DFEDC - lsls r1, r4, 3 - adds r0, 0x4 - adds r1, r0 - ldr r1, [r1] - adds r0, r6, 0 - bl _call_via_r1 - b _0816B2C0 - .pool -_0816B298: - lsls r1, r5, 24 - lsls r0, r2, 24 - asrs r2, r0, 24 - cmp r1, r0 - beq _0816B2C0 - ldr r0, =gUnknown_085DFEA4 - lsls r1, r2, 2 - adds r1, r0 - ldr r0, [r1] - bl sub_816B21C - b _0816B2C0 - .pool -_0816B2B4: - movs r0, 0x5 - bl PlaySE - adds r0, r6, 0 - bl sub_816B4A4 -_0816B2C0: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_816B248 - - thumb_func_start sub_816B2C8 -sub_816B2C8: @ 816B2C8 - push {lr} - lsls r0, 24 - lsrs r0, 24 - ldr r2, =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - ldr r0, =sub_816B2F0 - str r0, [r1] - movs r0, 0x1 - movs r1, 0 - bl FadeScreen - pop {r0} - bx r0 - .pool - thumb_func_end sub_816B2C8 - - thumb_func_start sub_816B2F0 -sub_816B2F0: @ 816B2F0 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _0816B310 - bl overworld_free_bg_tilemaps - bl sub_81AAC14 - adds r0, r4, 0 - bl DestroyTask -_0816B310: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_816B2F0 - - thumb_func_start sub_816B31C -sub_816B31C: @ 816B31C - push {lr} - ldr r0, =gFieldCallback - ldr r1, =mapldr_080EBC0C - str r1, [r0] - ldr r0, =CB2_ReturnToField - bl SetMainCallback2 - pop {r0} - bx r0 - .pool - thumb_func_end sub_816B31C - - thumb_func_start mapldr_080EBC0C -mapldr_080EBC0C: @ 816B33C - push {lr} - bl sub_81973A4 - movs r0, 0 - movs r1, 0x1 - bl NewMenuHelpers_DrawDialogueFrame - ldr r0, =sub_816B368 - movs r1, 0 - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x1 - bl sub_816B190 - bl pal_fill_black - pop {r0} - bx r0 - .pool - thumb_func_end mapldr_080EBC0C - - thumb_func_start sub_816B368 -sub_816B368: @ 816B368 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl sub_80ABDFC - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0816B388 - ldr r0, =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, =sub_816B248 - str r0, [r1] -_0816B388: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_816B368 - - thumb_func_start sub_816B398 -sub_816B398: @ 816B398 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - lsls r4, r5, 2 - adds r4, r5 - lsls r4, 3 - ldr r0, =gTasks + 0x8 - adds r4, r0 - bl sub_80D6CE4 - lsls r0, 24 - lsrs r0, 24 - strh r0, [r4, 0x2] - cmp r0, 0 - beq _0816B3C4 - adds r0, r5, 0 - movs r1, 0 - bl sub_816B430 - b _0816B3D4 - .pool -_0816B3C4: - adds r0, r5, 0 - bl sub_816B4DC - ldr r1, =gText_NoItems - ldr r2, =task_pc_itemstorage - adds r0, r5, 0 - bl DisplayItemMessageOnField -_0816B3D4: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_816B398 - - thumb_func_start sub_816B3E4 -sub_816B3E4: @ 816B3E4 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - lsls r4, r5, 2 - adds r4, r5 - lsls r4, 3 - ldr r0, =gTasks + 0x8 - adds r4, r0 - bl sub_80D6CE4 - lsls r0, 24 - lsrs r0, 24 - strh r0, [r4, 0x2] - cmp r0, 0 - beq _0816B410 - adds r0, r5, 0 - movs r1, 0x1 - bl sub_816B430 - b _0816B420 - .pool -_0816B410: - adds r0, r5, 0 - bl sub_816B4DC - ldr r1, =gText_NoItems - ldr r2, =task_pc_itemstorage - adds r0, r5, 0 - bl DisplayItemMessageOnField -_0816B420: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_816B3E4 - - thumb_func_start sub_816B430 -sub_816B430: @ 816B430 - push {r4-r6,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - lsls r1, 24 - lsrs r1, 24 - lsls r5, r4, 2 - adds r5, r4 - lsls r5, 3 - ldr r6, =gTasks + 0x8 - adds r0, r5, r6 - strh r1, [r0, 0x6] - adds r0, r4, 0 - bl sub_816B4DC - ldr r1, =gUnknown_0203BCB8 - movs r0, 0 - strh r0, [r1] - strh r0, [r1, 0x2] - movs r0, 0xFF - strb r0, [r1, 0x9] - adds r0, r4, 0 - bl sub_816B4C0 - bl sub_816BC14 - bl gpu_pal_allocator_reset__manage_upper_four - bl LoadListMenuArrowsGfx - ldr r0, =gUnknown_0203BCC4 - ldr r0, [r0] - movs r1, 0xCD - lsls r1, 3 - adds r0, r1 - movs r1, 0x7 - bl sub_8122344 - movs r0, 0 - movs r1, 0 - bl sub_8197434 - subs r6, 0x8 - adds r5, r6 - ldr r0, =sub_816C158 - str r0, [r5] - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_816B430 - - thumb_func_start sub_816B4A4 -sub_816B4A4: @ 816B4A4 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r4, 0 - bl sub_816B4DC - adds r0, r4, 0 - bl sub_816B060 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_816B4A4 - - thumb_func_start sub_816B4C0 -sub_816B4C0: @ 816B4C0 - push {lr} - ldr r1, =gUnknown_0203BCB8 - ldrb r0, [r1, 0x5] - cmp r0, 0x7 - bls _0816B4D4 - movs r0, 0x8 - b _0816B4D6 - .pool -_0816B4D4: - adds r0, 0x1 -_0816B4D6: - strb r0, [r1, 0x4] - pop {r0} - bx r0 - thumb_func_end sub_816B4C0 - - thumb_func_start sub_816B4DC -sub_816B4DC: @ 816B4DC - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - lsls r4, r0, 2 - adds r4, r0 - lsls r4, 3 - ldr r0, =gTasks + 0x8 - adds r4, r0 - ldrb r0, [r4, 0x8] - movs r1, 0 - bl sub_8198070 - ldrb r0, [r4, 0x8] - bl ClearWindowTilemap - ldrb r0, [r4, 0x8] - bl RemoveWindow - movs r0, 0 - bl schedule_bg_copy_tilemap_to_vram - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_816B4DC - - thumb_func_start sub_816B510 -sub_816B510: @ 816B510 - push {r4,lr} - movs r2, 0 - movs r1, 0x6 - ldr r0, =gSaveBlock1Ptr - ldr r3, [r0] - movs r4, 0xB0 - lsls r4, 6 -_0816B51E: - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r3, r0 - adds r0, r4 - ldrh r0, [r0] - cmp r0, 0 - beq _0816B534 - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 -_0816B534: - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0xF - bls _0816B51E - adds r0, r2, 0 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end sub_816B510 - - thumb_func_start sub_816B54C -sub_816B54C: @ 816B54C - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x24 - movs r2, 0x6 -_0816B55A: - adds r1, r2, 0x1 - lsls r0, r1, 24 - lsrs r4, r0, 24 - mov r8, r1 - cmp r4, 0xF - bhi _0816B5D4 - ldr r0, =gSaveBlock1Ptr - mov r10, r0 - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - mov r12, r0 - ldr r6, =0x00002be0 -_0816B574: - mov r1, r10 - ldr r1, [r1] - mov r9, r1 - mov r2, r9 - add r2, r12 - movs r3, 0xB0 - lsls r3, 6 - adds r0, r2, r3 - ldrh r0, [r0] - cmp r0, 0 - bne _0816B5CA - adds r2, r6 - mov r1, sp - adds r0, r2, 0 - ldm r0!, {r3,r5,r7} - stm r1!, {r3,r5,r7} - ldm r0!, {r3,r5,r7} - stm r1!, {r3,r5,r7} - ldm r0!, {r3,r5,r7} - stm r1!, {r3,r5,r7} - lsls r3, r4, 3 - adds r3, r4 - lsls r3, 2 - mov r5, r9 - adds r0, r5, r3 - adds r0, r6 - ldm r0!, {r1,r5,r7} - stm r2!, {r1,r5,r7} - ldm r0!, {r1,r5,r7} - stm r2!, {r1,r5,r7} - ldm r0!, {r1,r5,r7} - stm r2!, {r1,r5,r7} - mov r7, r10 - ldr r1, [r7] - adds r1, r3 - adds r1, r6 - mov r0, sp - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r3,r7} - stm r1!, {r2,r3,r7} - ldm r0!, {r2,r5,r7} - stm r1!, {r2,r5,r7} -_0816B5CA: - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0xF - bls _0816B574 -_0816B5D4: - mov r3, r8 - lsls r0, r3, 24 - lsrs r2, r0, 24 - cmp r2, 0xE - bls _0816B55A - add sp, 0x24 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_816B54C - - thumb_func_start sub_816B5F8 -sub_816B5F8: @ 816B5F8 - push {r4-r6,lr} - sub sp, 0xC - adds r5, r0, 0 - lsls r5, 24 - lsrs r5, 24 - movs r0, 0 - bl sub_81D1C84 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0x1 - bl sub_81D1C84 - ldr r6, =gText_Mailbox - movs r0, 0x1 - adds r1, r6, 0 - movs r2, 0x40 - bl GetStringCenterAlignXOffset - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - movs r0, 0x1 - str r0, [sp] - movs r0, 0 - str r0, [sp, 0x4] - str r0, [sp, 0x8] - adds r0, r4, 0 - movs r1, 0x1 - adds r2, r6, 0 - bl PrintTextOnWindow - movs r0, 0 - bl schedule_bg_copy_tilemap_to_vram - ldr r4, =gUnknown_0203BCB8 - adds r0, r4, 0 - bl sub_81D1DC0 - ldr r2, =gTasks - lsls r1, r5, 2 - adds r1, r5 - lsls r1, 3 - adds r1, r2 - lsls r0, 24 - lsrs r0, 24 - strh r0, [r1, 0x12] - adds r0, r4, 0 - bl sub_81D1E90 - add sp, 0xC - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_816B5F8 - - thumb_func_start sub_816B674 -sub_816B674: @ 816B674 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - lsls r0, 24 - lsrs r5, r0, 24 - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - mov r9, r0 - ldr r0, =gTasks + 0x8 - mov r10, r0 - mov r4, r9 - add r4, r10 - ldr r0, =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _0816B71E - ldrb r0, [r4, 0xA] - bl ListMenuHandleInputGetItemId - adds r6, r0, 0 - ldrb r0, [r4, 0xA] - ldr r7, =gUnknown_0203BCBA - subs r1, r7, 0x2 - mov r8, r1 - adds r1, r7, 0 - mov r2, r8 - bl sub_81AE860 - movs r0, 0x2 - negs r0, r0 - cmp r6, r0 - beq _0816B6D4 - adds r0, 0x1 - cmp r6, r0 - bne _0816B6EA - b _0816B71E - .pool -_0816B6D4: - movs r0, 0x5 - bl PlaySE - mov r1, r8 - ldrb r0, [r1, 0x9] - bl RemoveScrollIndicatorArrowPair - adds r0, r5, 0 - bl sub_816B798 - b _0816B71E -_0816B6EA: - movs r0, 0x5 - bl PlaySE - movs r0, 0 - bl sub_81D1D04 - movs r0, 0x1 - bl sub_81D1D04 - ldrb r0, [r4, 0xA] - adds r1, r7, 0 - mov r2, r8 - bl sub_81AE6C8 - movs r0, 0 - bl schedule_bg_copy_tilemap_to_vram - mov r1, r8 - ldrb r0, [r1, 0x9] - bl RemoveScrollIndicatorArrowPair - mov r0, r10 - subs r0, 0x8 - add r0, r9 - ldr r1, =sub_816B730 - str r1, [r0] -_0816B71E: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_816B674 - - thumb_func_start sub_816B730 -sub_816B730: @ 816B730 - push {r4,r5,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r5, =gStringVar1 - ldr r2, =gSaveBlock1Ptr - ldr r1, =gUnknown_0203BCB8 - ldrh r0, [r1] - adds r0, 0x6 - ldrh r1, [r1, 0x2] - adds r0, r1 - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 2 - ldr r0, [r2] - adds r1, r0 - ldr r0, =0x00002bf2 - adds r1, r0 - adds r0, r5, 0 - bl StringCopy - adds r0, r5, 0 - movs r1, 0 - bl sub_81DB554 - ldr r5, =gStringVar4 - ldr r1, =gText_WhatToDoWithVar1sMail - adds r0, r5, 0 - bl StringExpandPlaceholders - ldr r2, =sub_816B7DC - adds r0, r4, 0 - adds r1, r5, 0 - bl DisplayItemMessageOnField - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_816B730 - - thumb_func_start sub_816B798 -sub_816B798: @ 816B798 - push {r4,r5,lr} - adds r5, r0, 0 - lsls r5, 24 - lsrs r5, 24 - lsls r4, r5, 2 - adds r4, r5 - lsls r4, 3 - ldr r0, =gTasks + 0x8 - adds r4, r0 - movs r0, 0 - bl sub_81D1D04 - movs r0, 0x1 - bl sub_81D1D04 - ldrb r0, [r4, 0xA] - movs r1, 0 - movs r2, 0 - bl sub_81AE6C8 - movs r0, 0 - bl schedule_bg_copy_tilemap_to_vram - bl sub_81D1EC0 - adds r0, r5, 0 - bl sub_816B060 - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_816B798 - - thumb_func_start sub_816B7DC -sub_816B7DC: @ 816B7DC - push {r4,r5,lr} - adds r5, r0, 0 - lsls r5, 24 - lsrs r5, 24 - movs r0, 0x2 - bl sub_81D1C84 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r2, =gUnknown_085DFF04 - adds r0, r4, 0 - movs r1, 0x4 - bl PrintMenuTable - adds r0, r4, 0 - movs r1, 0x4 - movs r2, 0 - bl InitMenuInUpperLeftCornerPlaySoundWhenAPressed - movs r0, 0 - bl schedule_bg_copy_tilemap_to_vram - ldr r1, =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r0, r1 - ldr r1, =sub_816B82C - str r1, [r0] - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_816B7DC - - thumb_func_start sub_816B82C -sub_816B82C: @ 816B82C - push {r4-r6,lr} - lsls r0, 24 - lsrs r5, r0, 24 - adds r6, r5, 0 - bl ProcessMenuInput_other - lsls r0, 24 - asrs r4, r0, 24 - movs r0, 0x2 - negs r0, r0 - cmp r4, r0 - beq _0816B86E - adds r0, 0x1 - cmp r4, r0 - bne _0816B858 - movs r0, 0x5 - bl PlaySE - adds r0, r5, 0 - bl sub_816BBD4 - b _0816B86E -_0816B858: - movs r0, 0x5 - bl PlaySE - ldr r0, =gUnknown_085DFF04 - lsls r1, r4, 3 - adds r0, 0x4 - adds r1, r0 - ldr r1, [r1] - adds r0, r6, 0 - bl _call_via_r1 -_0816B86E: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_816B82C - - thumb_func_start sub_816B878 -sub_816B878: @ 816B878 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0x1 - movs r1, 0 - bl FadeScreen - ldr r1, =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, =sub_816B8A4 - str r1, [r0] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_816B878 - - thumb_func_start sub_816B8A4 -sub_816B8A4: @ 816B8A4 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _0816B8E6 - bl sub_81D1EC0 - bl overworld_free_bg_tilemaps - ldr r2, =gSaveBlock1Ptr - ldr r1, =gUnknown_0203BCB8 - ldrh r0, [r1] - adds r0, 0x6 - ldrh r1, [r1, 0x2] - adds r0, r1 - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 2 - ldr r0, =0x00002be0 - adds r1, r0 - ldr r0, [r2] - adds r0, r1 - ldr r1, =sub_816B900 - movs r2, 0x1 - bl ReadMail - adds r0, r4, 0 - bl DestroyTask -_0816B8E6: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_816B8A4 - - thumb_func_start sub_816B900 -sub_816B900: @ 816B900 - push {lr} - ldr r0, =gFieldCallback - ldr r1, =pal_fill_for_maplights_or_black - str r1, [r0] - ldr r0, =CB2_ReturnToField - bl SetMainCallback2 - pop {r0} - bx r0 - .pool - thumb_func_end sub_816B900 + .equ gPcItemMenuOptionOrder, 0x0203BCB0 + .equ gPcItemMenuOptionsNum, 0x0203BCB4 + +// thumb_func_start NewGameInitPCItems +//NewGameInitPCItems: @ 816ADF4 +// push {r4-r6,lr} +// movs r4, 0 +// ldr r0, =gSaveBlock1Ptr +// ldr r0, [r0] +// movs r1, 0x93 +// lsls r1, 3 +// adds r0, r1 +// movs r1, 0x32 +// bl ClearItemSlots +// ldr r1, =gUnknown_085DFEFC +// ldrh r0, [r1] +// cmp r0, 0 +// beq _0816AE48 +// ldrh r0, [r1, 0x2] +// cmp r0, 0 +// beq _0816AE48 +// adds r5, r1, 0 +// adds r6, r5, 0x2 +//_0816AE1A: +// lsls r1, r4, 2 +// adds r0, r1, r5 +// ldrh r0, [r0] +// adds r1, r6 +// ldrh r1, [r1] +// bl AddPCItem +// lsls r0, 24 +// lsrs r0, 24 +// cmp r0, 0x1 +// bne _0816AE48 +// adds r0, r4, 0x1 +// lsls r0, 24 +// lsrs r4, r0, 24 +// lsls r1, r4, 2 +// adds r0, r1, r5 +// ldrh r0, [r0] +// cmp r0, 0 +// beq _0816AE48 +// adds r0, r1, r6 +// ldrh r0, [r0] +// cmp r0, 0 +// bne _0816AE1A +//_0816AE48: +// pop {r4-r6} +// pop {r0} +// bx r0 +// .pool +// thumb_func_end NewGameInitPCItems + +// thumb_func_start sub_816AE58 +//sub_816AE58: @ 816AE58 +// push {lr} +// ldr r1, =gPcItemMenuOptionOrder +// ldr r0, =gUnknown_085DFED4 +// str r0, [r1] +// ldr r1, =gPcItemMenuOptionsNum +// movs r0, 0x4 +// strb r0, [r1] +// ldr r0, =TaskDummy +// movs r1, 0 +// bl CreateTask +// lsls r0, 24 +// lsrs r0, 24 +// ldr r1, =gText_WhatWouldYouLike +// ldr r2, =InitPlayerPCMenu +// bl DisplayItemMessageOnField +// pop {r0} +// bx r0 +// .pool +// thumb_func_end sub_816AE58 + +// thumb_func_start sub_816AE98 +//sub_816AE98: @ 816AE98 +// push {lr} +// ldr r1, =gPcItemMenuOptionOrder +// ldr r0, =gUnknown_085DFED8 +// str r0, [r1] +// ldr r1, =gPcItemMenuOptionsNum +// movs r0, 0x3 +// strb r0, [r1] +// ldr r0, =TaskDummy +// movs r1, 0 +// bl CreateTask +// lsls r0, 24 +// lsrs r0, 24 +// ldr r1, =gText_WhatWouldYouLike +// ldr r2, =InitPlayerPCMenu +// bl DisplayItemMessageOnField +// pop {r0} +// bx r0 +// .pool +// thumb_func_end sub_816AE98 + +// thumb_func_start InitPlayerPCMenu +//InitPlayerPCMenu: @ 816AED8 +// push {r4-r7,lr} +// mov r7, r8 +// push {r7} +// sub sp, 0x8 +// lsls r0, 24 +// lsrs r7, r0, 24 +// lsls r0, r7, 2 +// adds r0, r7 +// lsls r0, 3 +// ldr r1, =gTasks + 0x8 +// adds r6, r0, r1 +// ldr r0, =gPcItemMenuOptionsNum +// ldrb r1, [r0] +// mov r8, r0 +// cmp r1, 0x3 +// bne _0816AF0C +// ldr r0, =gUnknown_085DFF24 +// ldr r1, [r0, 0x4] +// ldr r0, [r0] +// b _0816AF12 +// .pool +//_0816AF0C: +// ldr r0, =gUnknown_085DFF24 +// ldr r1, [r0, 0xC] +// ldr r0, [r0, 0x8] +//_0816AF12: +// str r0, [sp] +// str r1, [sp, 0x4] +// ldr r5, =gUnknown_085DFEB4 +// ldr r4, =gPcItemMenuOptionOrder +// ldr r1, [r4] +// mov r0, r8 +// ldrb r2, [r0] +// adds r0, r5, 0 +// bl sub_81DB3D8 +// lsls r0, 24 +// ldr r2, =0x00ffffff +// ldr r1, [sp] +// ands r1, r2 +// orrs r1, r0 +// str r1, [sp] +// mov r0, sp +// bl AddWindow +// strh r0, [r6, 0x8] +// lsls r0, 24 +// lsrs r0, 24 +// movs r1, 0 +// bl SetStandardWindowBorderStyle +// ldrb r0, [r6, 0x8] +// mov r2, r8 +// ldrb r1, [r2] +// ldr r3, [r4] +// adds r2, r5, 0 +// bl sub_81995E4 +// ldrb r0, [r6, 0x8] +// mov r2, r8 +// ldrb r1, [r2] +// movs r2, 0 +// bl InitMenuInUpperLeftCornerPlaySoundWhenAPressed +// movs r0, 0 +// bl schedule_bg_copy_tilemap_to_vram +// ldr r1, =gTasks +// lsls r0, r7, 2 +// adds r0, r7 +// lsls r0, 3 +// adds r0, r1 +// ldr r1, =sub_816AF98 +// str r1, [r0] +// add sp, 0x8 +// pop {r3} +// mov r8, r3 +// pop {r4-r7} +// pop {r0} +// bx r0 +// .pool +// thumb_func_end InitPlayerPCMenu + +// thumb_func_start PlayerPCProcessMenuInput +//PlayerPCProcessMenuInput: @ 816AF98 +// push {r4-r6,lr} +// lsls r0, 24 +// lsrs r6, r0, 24 +// lsls r0, r6, 2 +// adds r0, r6 +// lsls r0, 3 +// ldr r1, =gTasks + 0x8 +// adds r4, r0, r1 +// ldr r0, =gPcItemMenuOptionsNum +// ldrb r0, [r0] +// cmp r0, 0x3 +// bls _0816AFC0 +// bl ProcessMenuInput +// b _0816AFC4 +// .pool +//_0816AFC0: +// bl ProcessMenuInputNoWrapAround +//_0816AFC4: +// lsls r0, 24 +// lsrs r0, 24 +// lsls r0, 24 +// asrs r5, r0, 24 +// movs r0, 0x2 +// negs r0, r0 +// cmp r5, r0 +// beq _0816B04C +// adds r0, 0x1 +// cmp r5, r0 +// bne _0816B014 +// movs r0, 0x5 +// bl PlaySE +// ldrb r0, [r4, 0x8] +// movs r1, 0 +// bl sub_8198070 +// ldrb r0, [r4, 0x8] +// bl ClearWindowTilemap +// ldrb r0, [r4, 0x8] +// bl RemoveWindow +// movs r0, 0 +// bl schedule_bg_copy_tilemap_to_vram +// ldr r1, =gTasks +// lsls r0, r6, 2 +// adds r0, r6 +// lsls r0, 3 +// adds r0, r1 +// ldr r1, =PlayerPC_TurnOff +// str r1, [r0] +// b _0816B04C +// .pool +//_0816B014: +// ldrb r0, [r4, 0x8] +// movs r1, 0 +// bl sub_8198070 +// ldrb r0, [r4, 0x8] +// bl ClearWindowTilemap +// ldrb r0, [r4, 0x8] +// bl RemoveWindow +// movs r0, 0 +// bl schedule_bg_copy_tilemap_to_vram +// ldr r0, =gTasks +// lsls r1, r6, 2 +// adds r1, r6 +// lsls r1, 3 +// adds r1, r0 +// ldr r2, =sPlayerPCMenuActions +// ldr r0, =gPcItemMenuOptionOrder +// ldr r0, [r0] +// adds r0, r5 +// ldrb r0, [r0] +// lsls r0, 3 +// adds r2, 0x4 +// adds r0, r2 +// ldr r0, [r0] +// str r0, [r1] +//_0816B04C: +// pop {r4-r6} +// pop {r0} +// bx r0 +// .pool +// thumb_func_end PlayerPCProcessMenuInput + +// thumb_func_start ReshowPlayerPC +//ReshowPlayerPC: @ 816B060 +// push {lr} +// lsls r0, 24 +// lsrs r0, 24 +// ldr r1, =gText_WhatWouldYouLike +// ldr r2, =InitPlayerPCMenu +// bl DisplayItemMessageOnField +// pop {r0} +// bx r0 +// .pool +// thumb_func_end ReshowPlayerPC + +// thumb_func_start PlayerPC_ItemStorage +//PlayerPC_ItemStorage: @ 816B07C +// push {r4,lr} +// adds r4, r0, 0 +// lsls r4, 24 +// lsrs r4, 24 +// adds r0, r4, 0 +// movs r1, 0 +// bl InitItemStorageMenu +// ldr r1, =gTasks +// lsls r0, r4, 2 +// adds r0, r4 +// lsls r0, 3 +// adds r0, r1 +// ldr r1, =ItemStorageMenuProcessInput +// str r1, [r0] +// pop {r4} +// pop {r0} +// bx r0 +// .pool +// thumb_func_end PlayerPC_ItemStorage + +// thumb_func_start PlayerPC_Mailbox +//PlayerPC_Mailbox: @ 816B0A8 +// push {r4-r6,lr} +// lsls r0, 24 +// lsrs r4, r0, 24 +// adds r6, r4, 0 +// bl GetMailboxMailCount +// ldr r5, =gUnknown_0203BCB8 +// movs r1, 0 +// strb r0, [r5, 0x5] +// lsls r0, 24 +// cmp r0, 0 +// bne _0816B0D8 +// ldr r1, =gText_NoMailHere +// ldr r2, =ReshowPlayerPC +// adds r0, r4, 0 +// bl DisplayItemMessageOnField +// b _0816B12A +// .pool +//_0816B0D8: +// strh r1, [r5] +// strh r1, [r5, 0x2] +// movs r0, 0xFF +// strb r0, [r5, 0x9] +// bl Mailbox_UpdateMailList +// adds r0, r4, 0 +// bl ItemStorage_SetItemAndMailCount +// ldrb r0, [r5, 0x5] +// bl sub_81D1C44 +// lsls r0, 24 +// lsrs r0, 24 +// cmp r0, 0x1 +// bne _0816B120 +// movs r0, 0 +// movs r1, 0 +// bl sub_8197434 +// adds r0, r4, 0 +// bl Mailbox_DrawMailboxMenu +// ldr r0, =gTasks +// lsls r1, r4, 2 +// adds r1, r4 +// lsls r1, 3 +// adds r1, r0 +// ldr r0, =Mailbox_ProcessInput +// str r0, [r1] +// b _0816B12A +// .pool +//_0816B120: +// ldr r1, =gText_NoMailHere +// ldr r2, =ReshowPlayerPC +// adds r0, r6, 0 +// bl DisplayItemMessageOnField +//_0816B12A: +// pop {r4-r6} +// pop {r0} +// bx r0 +// .pool +// thumb_func_end PlayerPC_Mailbox + +// thumb_func_start PlayerPC_Decoration +//PlayerPC_Decoration: @ 816B138 +// push {lr} +// lsls r0, 24 +// lsrs r0, 24 +// bl sub_8126B2C +// pop {r0} +// bx r0 +// thumb_func_end PlayerPC_Decoration + +// thumb_func_start PlayerPC_TurnOff +//PlayerPC_TurnOff: @ 816B148 +// push {r4,lr} +// lsls r0, 24 +// lsrs r4, r0, 24 +// ldr r0, =gPcItemMenuOptionsNum +// ldrb r0, [r0] +// cmp r0, 0x4 +// bne _0816B180 +// ldr r0, =gSaveBlock2Ptr +// ldr r0, [r0] +// ldrb r0, [r0, 0x8] +// cmp r0, 0 +// bne _0816B174 +// ldr r0, =LittlerootTown_BrendansHouse_2F_EventScript_1F863F +// bl ScriptContext1_SetupScript +// b _0816B184 +// .pool +//_0816B174: +// ldr r0, =LittlerootTown_MaysHouse_2F_EventScript_1F958F +// bl ScriptContext1_SetupScript +// b _0816B184 +// .pool +//_0816B180: +// bl EnableBothScriptContexts +//_0816B184: +// adds r0, r4, 0 +// bl DestroyTask +// pop {r4} +// pop {r0} +// bx r0 +// thumb_func_end PlayerPC_TurnOff + +// thumb_func_start InitItemStorageMenu +//InitItemStorageMenu: @ 816B190 +// push {r4-r6,lr} +// sub sp, 0x8 +// adds r5, r1, 0 +// lsls r0, 24 +// lsrs r0, 24 +// lsls r5, 24 +// lsrs r5, 24 +// lsls r4, r0, 2 +// adds r4, r0 +// lsls r4, 3 +// ldr r0, =gTasks + 0x8 +// adds r4, r0 +// ldr r0, =gUnknown_085DFF24 +// ldr r1, [r0, 0x14] +// ldr r0, [r0, 0x10] +// str r0, [sp] +// str r1, [sp, 0x4] +// ldr r6, =gPCText_ItemPCOptionsText +// adds r0, r6, 0 +// movs r1, 0x4 +// bl GetMaxWidthInMenuTable +// lsls r0, 24 +// ldr r2, =0x00ffffff +// ldr r1, [sp] +// ands r1, r2 +// orrs r1, r0 +// str r1, [sp] +// mov r0, sp +// bl AddWindow +// strh r0, [r4, 0x8] +// lsls r0, 24 +// lsrs r0, 24 +// movs r1, 0 +// bl SetStandardWindowBorderStyle +// ldrb r0, [r4, 0x8] +// movs r1, 0x4 +// adds r2, r6, 0 +// bl PrintMenuTable +// ldrb r0, [r4, 0x8] +// movs r1, 0x4 +// adds r2, r5, 0 +// bl InitMenuInUpperLeftCornerPlaySoundWhenAPressed +// movs r0, 0 +// bl schedule_bg_copy_tilemap_to_vram +// ldr r0, =gPCText_OptionDescList +// lsls r5, 2 +// adds r5, r0 +// ldr r0, [r5] +// bl sub_816B21C +// add sp, 0x8 +// pop {r4-r6} +// pop {r0} +// bx r0 +// .pool +// thumb_func_end InitItemStorageMenu + +// thumb_func_start sub_816B21C +//sub_816B21C: @ 816B21C +// push {r4,lr} +// sub sp, 0xC +// adds r4, r0, 0 +// movs r0, 0 +// movs r1, 0 +// bl NewMenuHelpers_DrawDialogueFrame +// movs r0, 0x1 +// str r0, [sp] +// movs r0, 0 +// str r0, [sp, 0x4] +// str r0, [sp, 0x8] +// movs r1, 0x1 +// adds r2, r4, 0 +// movs r3, 0 +// bl PrintTextOnWindow +// add sp, 0xC +// pop {r4} +// pop {r0} +// bx r0 +// thumb_func_end sub_816B21C + +// thumb_func_start ItemStorageMenuProcessInput +//ItemStorageMenuProcessInput: @ 816B248 +// push {r4-r6,lr} +// lsls r0, 24 +// lsrs r6, r0, 24 +// bl GetMenuCursorPos +// lsls r0, 24 +// lsrs r5, r0, 24 +// bl ProcessMenuInput +// adds r4, r0, 0 +// lsls r4, 24 +// lsrs r4, 24 +// bl GetMenuCursorPos +// lsls r0, 24 +// lsrs r2, r0, 24 +// lsls r4, 24 +// asrs r4, 24 +// movs r0, 0x2 +// negs r0, r0 +// cmp r4, r0 +// beq _0816B298 +// adds r0, 0x1 +// cmp r4, r0 +// beq _0816B2B4 +// movs r0, 0x5 +// bl PlaySE +// ldr r0, =gPCText_ItemPCOptionsText +// lsls r1, r4, 3 +// adds r0, 0x4 +// adds r1, r0 +// ldr r1, [r1] +// adds r0, r6, 0 +// bl _call_via_r1 +// b _0816B2C0 +// .pool +//_0816B298: +// lsls r1, r5, 24 +// lsls r0, r2, 24 +// asrs r2, r0, 24 +// cmp r1, r0 +// beq _0816B2C0 +// ldr r0, =gPCText_OptionDescList +// lsls r1, r2, 2 +// adds r1, r0 +// ldr r0, [r1] +// bl ItemStorageMenuPrint +// b _0816B2C0 +// .pool +//_0816B2B4: +// movs r0, 0x5 +// bl PlaySE +// adds r0, r6, 0 +// bl ItemStorage_Exit +//_0816B2C0: +// pop {r4-r6} +// pop {r0} +// bx r0 +// thumb_func_end ItemStorageMenuProcessInput + +// thumb_func_start ItemStorage_Deposit +//ItemStorage_Deposit: @ 816B2C8 +// push {lr} +// lsls r0, 24 +// lsrs r0, 24 +// ldr r2, =gTasks +// lsls r1, r0, 2 +// adds r1, r0 +// lsls r1, 3 +// adds r1, r2 +// ldr r0, =sub_816B2F0 +// str r0, [r1] +// movs r0, 0x1 +// movs r1, 0 +// bl FadeScreen +// pop {r0} +// bx r0 +// .pool +// thumb_func_end ItemStorage_Deposit +// +// thumb_func_start sub_816B2F0 +//sub_816B2F0: @ 816B2F0 +// push {r4,lr} +// lsls r0, 24 +// lsrs r4, r0, 24 +// ldr r0, =gPaletteFade +// ldrb r1, [r0, 0x7] +// movs r0, 0x80 +// ands r0, r1 +// cmp r0, 0 +// bne _0816B310 +// bl overworld_free_bg_tilemaps +// bl sub_81AAC14 +// adds r0, r4, 0 +// bl DestroyTask +//_0816B310: +// pop {r4} +// pop {r0} +// bx r0 +// .pool +// thumb_func_end sub_816B2F0 + +// thumb_func_start sub_816B31C +//sub_816B31C: @ 816B31C +// push {lr} +// ldr r0, =gFieldCallback +// ldr r1, =mapldr_080EBC0C +// str r1, [r0] +// ldr r0, =CB2_ReturnToField +// bl SetMainCallback2 +// pop {r0} +// bx r0 +// .pool +// thumb_func_end sub_816B31C +// +// thumb_func_start mapldr_080EBC0C +//mapldr_080EBC0C: @ 816B33C +// push {lr} +// bl sub_81973A4 +// movs r0, 0 +// movs r1, 0x1 +// bl NewMenuHelpers_DrawDialogueFrame +// ldr r0, =ItemStorage_HandleReturnToProcessInput +// movs r1, 0 +// bl CreateTask +// lsls r0, 24 +// lsrs r0, 24 +// movs r1, 0x1 +// bl InitItemStorageMenu +// bl pal_fill_black +// pop {r0} +// bx r0 +// .pool +// thumb_func_end mapldr_080EBC0C +// +// thumb_func_start ItemStorage_HandleReturnToProcessInput +//ItemStorage_HandleReturnToProcessInput: @ 816B368 +// push {r4,lr} +// lsls r0, 24 +// lsrs r4, r0, 24 +// bl sub_80ABDFC +// lsls r0, 24 +// lsrs r0, 24 +// cmp r0, 0x1 +// bne _0816B388 +// ldr r0, =gTasks +// lsls r1, r4, 2 +// adds r1, r4 +// lsls r1, 3 +// adds r1, r0 +// ldr r0, =ItemStorageMenuProcessInput +// str r0, [r1] +//_0816B388: +// pop {r4} +// pop {r0} +// bx r0 +// .pool +// thumb_func_end ItemStorage_HandleReturnToProcessInput + +// thumb_func_start ItemStorage_Withdraw +//ItemStorage_Withdraw: @ 816B398 +// push {r4,r5,lr} +// lsls r0, 24 +// lsrs r5, r0, 24 +// lsls r4, r5, 2 +// adds r4, r5 +// lsls r4, 3 +// ldr r0, =gTasks + 0x8 +// adds r4, r0 +// bl sub_80D6CE4 +// lsls r0, 24 +// lsrs r0, 24 +// strh r0, [r4, 0x2] +// cmp r0, 0 +// beq _0816B3C4 +// adds r0, r5, 0 +// movs r1, 0 +// bl sub_816B430 +// b _0816B3D4 +// .pool +//_0816B3C4: +// adds r0, r5, 0 +// bl sub_816B4DC +// ldr r1, =gText_NoItems +// ldr r2, =PlayerPC_ItemStorage +// adds r0, r5, 0 +// bl DisplayItemMessageOnField +//_0816B3D4: +// pop {r4,r5} +// pop {r0} +// bx r0 +// .pool +// thumb_func_end ItemStorage_Withdraw +// +// thumb_func_start ItemStorage_Toss +//ItemStorage_Toss: @ 816B3E4 +// push {r4,r5,lr} +// lsls r0, 24 +// lsrs r5, r0, 24 +// lsls r4, r5, 2 +// adds r4, r5 +// lsls r4, 3 +// ldr r0, =gTasks + 0x8 +// adds r4, r0 +// bl sub_80D6CE4 +// lsls r0, 24 +// lsrs r0, 24 +// strh r0, [r4, 0x2] +// cmp r0, 0 +// beq _0816B410 +// adds r0, r5, 0 +// movs r1, 0x1 +// bl sub_816B430 +// b _0816B420 +// .pool +//_0816B410: +// adds r0, r5, 0 +// bl sub_816B4DC +// ldr r1, =gText_NoItems +// ldr r2, =PlayerPC_ItemStorage +// adds r0, r5, 0 +// bl DisplayItemMessageOnField +//_0816B420: +// pop {r4,r5} +// pop {r0} +// bx r0 +// .pool +// thumb_func_end ItemStorage_Toss + +// thumb_func_start sub_816B430 +//sub_816B430: @ 816B430 +// push {r4-r6,lr} +// adds r4, r0, 0 +// lsls r4, 24 +// lsrs r4, 24 +// lsls r1, 24 +// lsrs r1, 24 +// lsls r5, r4, 2 +// adds r5, r4 +// lsls r5, 3 +// ldr r6, =gTasks + 0x8 +// adds r0, r5, r6 +// strh r1, [r0, 0x6] +// adds r0, r4, 0 +// bl sub_816B4DC +// ldr r1, =gUnknown_0203BCB8 +// movs r0, 0 +// strh r0, [r1] +// strh r0, [r1, 0x2] +// movs r0, 0xFF +// strb r0, [r1, 0x9] +// adds r0, r4, 0 +// bl ItemStorage_SetItemAndMailCount +// bl sub_816BC14 +// bl gpu_pal_allocator_reset__manage_upper_four +// bl LoadListMenuArrowsGfx +// ldr r0, =gUnknown_0203BCC4 +// ldr r0, [r0] +// movs r1, 0xCD +// lsls r1, 3 +// adds r0, r1 +// movs r1, 0x7 +// bl sub_8122344 +// movs r0, 0 +// movs r1, 0 +// bl sub_8197434 +// subs r6, 0x8 +// adds r5, r6 +// ldr r0, =sub_816C158 +// str r0, [r5] +// pop {r4-r6} +// pop {r0} +// bx r0 +// .pool +// thumb_func_end sub_816B430 + +// thumb_func_start ItemStorage_Exit +//ItemStorage_Exit: @ 816B4A4 +// push {r4,lr} +// adds r4, r0, 0 +// lsls r4, 24 +// lsrs r4, 24 +// adds r0, r4, 0 +// bl sub_816B4DC +// adds r0, r4, 0 +// bl ReshowPlayerPC +// pop {r4} +// pop {r0} +// bx r0 +// thumb_func_end ItemStorage_Exit + +// thumb_func_start ItemStorage_SetItemAndMailCount +//ItemStorage_SetItemAndMailCount: @ 816B4C0 +// push {lr} +// ldr r1, =gUnknown_0203BCB8 +// ldrb r0, [r1, 0x5] +// cmp r0, 0x7 +// bls _0816B4D4 +// movs r0, 0x8 +// b _0816B4D6 +// .pool +//_0816B4D4: +// adds r0, 0x1 +//_0816B4D6: +// strb r0, [r1, 0x4] +// pop {r0} +// bx r0 +// thumb_func_end ItemStorage_SetItemAndMailCount + +// thumb_func_start sub_816B4DC +//sub_816B4DC: @ 816B4DC +// push {r4,lr} +// lsls r0, 24 +// lsrs r0, 24 +// lsls r4, r0, 2 +// adds r4, r0 +// lsls r4, 3 +// ldr r0, =gTasks + 0x8 +// adds r4, r0 +// ldrb r0, [r4, 0x8] +// movs r1, 0 +// bl sub_8198070 +// ldrb r0, [r4, 0x8] +// bl ClearWindowTilemap +// ldrb r0, [r4, 0x8] +// bl RemoveWindow +// movs r0, 0 +// bl schedule_bg_copy_tilemap_to_vram +// pop {r4} +// pop {r0} +// bx r0 +// .pool +// thumb_func_end sub_816B4DC + +// thumb_func_start GetMailboxMailCount +//GetMailboxMailCount: @ 816B510 +// push {r4,lr} +// movs r2, 0 +// movs r1, 0x6 +// ldr r0, =gSaveBlock1Ptr +// ldr r3, [r0] +// movs r4, 0xB0 +// lsls r4, 6 +//_0816B51E: +// lsls r0, r1, 3 +// adds r0, r1 +// lsls r0, 2 +// adds r0, r3, r0 +// adds r0, r4 +// ldrh r0, [r0] +// cmp r0, 0 +// beq _0816B534 +// adds r0, r2, 0x1 +// lsls r0, 24 +// lsrs r2, r0, 24 +//_0816B534: +// adds r0, r1, 0x1 +// lsls r0, 24 +// lsrs r1, r0, 24 +// cmp r1, 0xF +// bls _0816B51E +// adds r0, r2, 0 +// pop {r4} +// pop {r1} +// bx r1 +// .pool +// thumb_func_end GetMailboxMailCount + +// thumb_func_start Mailbox_UpdateMailList +//Mailbox_UpdateMailList: @ 816B54C +// push {r4-r7,lr} +// mov r7, r10 +// mov r6, r9 +// mov r5, r8 +// push {r5-r7} +// sub sp, 0x24 +// movs r2, 0x6 +//_0816B55A: +// adds r1, r2, 0x1 +// lsls r0, r1, 24 +// lsrs r4, r0, 24 +// mov r8, r1 +// cmp r4, 0xF +// bhi _0816B5D4 +// ldr r0, =gSaveBlock1Ptr +// mov r10, r0 +// lsls r0, r2, 3 +// adds r0, r2 +// lsls r0, 2 +// mov r12, r0 +// ldr r6, =0x00002be0 +//_0816B574: +// mov r1, r10 +// ldr r1, [r1] +// mov r9, r1 +// mov r2, r9 +// add r2, r12 +// movs r3, 0xB0 +// lsls r3, 6 +// adds r0, r2, r3 +// ldrh r0, [r0] +// cmp r0, 0 +// bne _0816B5CA +// adds r2, r6 +// mov r1, sp +// adds r0, r2, 0 +// ldm r0!, {r3,r5,r7} +// stm r1!, {r3,r5,r7} +// ldm r0!, {r3,r5,r7} +// stm r1!, {r3,r5,r7} +// ldm r0!, {r3,r5,r7} +// stm r1!, {r3,r5,r7} +// lsls r3, r4, 3 +// adds r3, r4 +// lsls r3, 2 +// mov r5, r9 +// adds r0, r5, r3 +// adds r0, r6 +// ldm r0!, {r1,r5,r7} +// stm r2!, {r1,r5,r7} +// ldm r0!, {r1,r5,r7} +// stm r2!, {r1,r5,r7} +// ldm r0!, {r1,r5,r7} +// stm r2!, {r1,r5,r7} +// mov r7, r10 +// ldr r1, [r7] +// adds r1, r3 +// adds r1, r6 +// mov r0, sp +// ldm r0!, {r2,r3,r5} +// stm r1!, {r2,r3,r5} +// ldm r0!, {r2,r3,r7} +// stm r1!, {r2,r3,r7} +// ldm r0!, {r2,r5,r7} +// stm r1!, {r2,r5,r7} +//_0816B5CA: +// adds r0, r4, 0x1 +// lsls r0, 24 +// lsrs r4, r0, 24 +// cmp r4, 0xF +// bls _0816B574 +//_0816B5D4: +// mov r3, r8 +// lsls r0, r3, 24 +// lsrs r2, r0, 24 +// cmp r2, 0xE +// bls _0816B55A +// add sp, 0x24 +// pop {r3-r5} +// mov r8, r3 +// mov r9, r4 +// mov r10, r5 +// pop {r4-r7} +// pop {r0} +// bx r0 +// .pool +// thumb_func_end Mailbox_UpdateMailList + +// thumb_func_start Mailbox_DrawMailboxMenu +//Mailbox_DrawMailboxMenu: @ 816B5F8 +// push {r4-r6,lr} +// sub sp, 0xC +// adds r5, r0, 0 +// lsls r5, 24 +// lsrs r5, 24 +// movs r0, 0 +// bl sub_81D1C84 +// adds r4, r0, 0 +// lsls r4, 24 +// lsrs r4, 24 +// movs r0, 0x1 +// bl sub_81D1C84 +// ldr r6, =gText_Mailbox +// movs r0, 0x1 +// adds r1, r6, 0 +// movs r2, 0x40 +// bl GetStringCenterAlignXOffset +// adds r3, r0, 0 +// lsls r3, 24 +// lsrs r3, 24 +// movs r0, 0x1 +// str r0, [sp] +// movs r0, 0 +// str r0, [sp, 0x4] +// str r0, [sp, 0x8] +// adds r0, r4, 0 +// movs r1, 0x1 +// adds r2, r6, 0 +// bl PrintTextOnWindow +// movs r0, 0 +// bl schedule_bg_copy_tilemap_to_vram +// ldr r4, =gUnknown_0203BCB8 +// adds r0, r4, 0 +// bl sub_81D1DC0 +// ldr r2, =gTasks +// lsls r1, r5, 2 +// adds r1, r5 +// lsls r1, 3 +// adds r1, r2 +// lsls r0, 24 +// lsrs r0, 24 +// strh r0, [r1, 0x12] +// adds r0, r4, 0 +// bl sub_81D1E90 +// add sp, 0xC +// pop {r4-r6} +// pop {r0} +// bx r0 +// .pool +// thumb_func_end Mailbox_DrawMailboxMenu + +// thumb_func_start Mailbox_ProcessInput +//Mailbox_ProcessInput: @ 816B674 +// push {r4-r7,lr} +// mov r7, r10 +// mov r6, r9 +// mov r5, r8 +// push {r5-r7} +// lsls r0, 24 +// lsrs r5, r0, 24 +// lsls r0, r5, 2 +// adds r0, r5 +// lsls r0, 3 +// mov r9, r0 +// ldr r0, =gTasks + 0x8 +// mov r10, r0 +// mov r4, r9 +// add r4, r10 +// ldr r0, =gPaletteFade +// ldrb r1, [r0, 0x7] +// movs r0, 0x80 +// ands r0, r1 +// cmp r0, 0 +// bne _0816B71E +// ldrb r0, [r4, 0xA] +// bl ListMenuHandleInputGetItemId +// adds r6, r0, 0 +// ldrb r0, [r4, 0xA] +// ldr r7, =gUnknown_0203BCBA +// subs r1, r7, 0x2 +// mov r8, r1 +// adds r1, r7, 0 +// mov r2, r8 +// bl sub_81AE860 +// movs r0, 0x2 +// negs r0, r0 +// cmp r6, r0 +// beq _0816B6D4 +// adds r0, 0x1 +// cmp r6, r0 +// bne _0816B6EA +// b _0816B71E +// .pool +//_0816B6D4: +// movs r0, 0x5 +// bl PlaySE +// mov r1, r8 +// ldrb r0, [r1, 0x9] +// bl RemoveScrollIndicatorArrowPair +// adds r0, r5, 0 +// bl sub_816B798 +// b _0816B71E +//_0816B6EA: +// movs r0, 0x5 +// bl PlaySE +// movs r0, 0 +// bl sub_81D1D04 +// movs r0, 0x1 +// bl sub_81D1D04 +// ldrb r0, [r4, 0xA] +// adds r1, r7, 0 +// mov r2, r8 +// bl sub_81AE6C8 +// movs r0, 0 +// bl schedule_bg_copy_tilemap_to_vram +// mov r1, r8 +// ldrb r0, [r1, 0x9] +// bl RemoveScrollIndicatorArrowPair +// mov r0, r10 +// subs r0, 0x8 +// add r0, r9 +// ldr r1, =sub_816B730 +// str r1, [r0] +//_0816B71E: +// pop {r3-r5} +// mov r8, r3 +// mov r9, r4 +// mov r10, r5 +// pop {r4-r7} +// pop {r0} +// bx r0 +// .pool +// thumb_func_end Mailbox_ProcessInput + +// thumb_func_start sub_816B730 +//sub_816B730: @ 816B730 +// push {r4,r5,lr} +// adds r4, r0, 0 +// lsls r4, 24 +// lsrs r4, 24 +// ldr r5, =gStringVar1 +// ldr r2, =gSaveBlock1Ptr +// ldr r1, =gUnknown_0203BCB8 +// ldrh r0, [r1] +// adds r0, 0x6 +// ldrh r1, [r1, 0x2] +// adds r0, r1 +// lsls r1, r0, 3 +// adds r1, r0 +// lsls r1, 2 +// ldr r0, [r2] +// adds r1, r0 +// ldr r0, =0x00002bf2 +// adds r1, r0 +// adds r0, r5, 0 +// bl StringCopy +// adds r0, r5, 0 +// movs r1, 0 +// bl sub_81DB554 +// ldr r5, =gStringVar4 +// ldr r1, =gText_WhatToDoWithVar1sMail +// adds r0, r5, 0 +// bl StringExpandPlaceholders +// ldr r2, =sub_816B7DC +// adds r0, r4, 0 +// adds r1, r5, 0 +// bl DisplayItemMessageOnField +// pop {r4,r5} +// pop {r0} +// bx r0 +// .pool +// thumb_func_end sub_816B730 + +// thumb_func_start sub_816B798 +//sub_816B798: @ 816B798 +// push {r4,r5,lr} +// adds r5, r0, 0 +// lsls r5, 24 +// lsrs r5, 24 +// lsls r4, r5, 2 +// adds r4, r5 +// lsls r4, 3 +// ldr r0, =gTasks + 0x8 +// adds r4, r0 +// movs r0, 0 +// bl sub_81D1D04 +// movs r0, 0x1 +// bl sub_81D1D04 +// ldrb r0, [r4, 0xA] +// movs r1, 0 +// movs r2, 0 +// bl sub_81AE6C8 +// movs r0, 0 +// bl schedule_bg_copy_tilemap_to_vram +// bl sub_81D1EC0 +// adds r0, r5, 0 +// bl ReshowPlayerPC +// pop {r4,r5} +// pop {r0} +// bx r0 +// .pool +// thumb_func_end sub_816B798 + +// thumb_func_start sub_816B7DC +//sub_816B7DC: @ 816B7DC +// push {r4,r5,lr} +// adds r5, r0, 0 +// lsls r5, 24 +// lsrs r5, 24 +// movs r0, 0x2 +// bl sub_81D1C84 +// adds r4, r0, 0 +// lsls r4, 24 +// lsrs r4, 24 +// ldr r2, =gUnknown_085DFF04 +// adds r0, r4, 0 +// movs r1, 0x4 +// bl PrintMenuTable +// adds r0, r4, 0 +// movs r1, 0x4 +// movs r2, 0 +// bl InitMenuInUpperLeftCornerPlaySoundWhenAPressed +// movs r0, 0 +// bl schedule_bg_copy_tilemap_to_vram +// ldr r1, =gTasks +// lsls r0, r5, 2 +// adds r0, r5 +// lsls r0, 3 +// adds r0, r1 +// ldr r1, =sub_816B82C +// str r1, [r0] +// pop {r4,r5} +// pop {r0} +// bx r0 +// .pool +// thumb_func_end sub_816B7DC + +// thumb_func_start sub_816B82C +//sub_816B82C: @ 816B82C +// push {r4-r6,lr} +// lsls r0, 24 +// lsrs r5, r0, 24 +// adds r6, r5, 0 +// bl ProcessMenuInput_other +// lsls r0, 24 +// asrs r4, r0, 24 +// movs r0, 0x2 +// negs r0, r0 +// cmp r4, r0 +// beq _0816B86E +// adds r0, 0x1 +// cmp r4, r0 +// bne _0816B858 +// movs r0, 0x5 +// bl PlaySE +// adds r0, r5, 0 +// bl sub_816BBD4 +// b _0816B86E +//_0816B858: +// movs r0, 0x5 +// bl PlaySE +// ldr r0, =gUnknown_085DFF04 +// lsls r1, r4, 3 +// adds r0, 0x4 +// adds r1, r0 +// ldr r1, [r1] +// adds r0, r6, 0 +// bl _call_via_r1 +//_0816B86E: +// pop {r4-r6} +// pop {r0} +// bx r0 +// .pool +// thumb_func_end sub_816B82C + +// thumb_func_start sub_816B878 +//sub_816B878: @ 816B878 +// push {r4,lr} +// adds r4, r0, 0 +// lsls r4, 24 +// lsrs r4, 24 +// movs r0, 0x1 +// movs r1, 0 +// bl FadeScreen +// ldr r1, =gTasks +// lsls r0, r4, 2 +// adds r0, r4 +// lsls r0, 3 +// adds r0, r1 +// ldr r1, =sub_816B8A4 +// str r1, [r0] +// pop {r4} +// pop {r0} +// bx r0 +// .pool +// thumb_func_end sub_816B878 +// +// thumb_func_start sub_816B8A4 +//sub_816B8A4: @ 816B8A4 +// push {r4,lr} +// lsls r0, 24 +// lsrs r4, r0, 24 +// ldr r0, =gPaletteFade +// ldrb r1, [r0, 0x7] +// movs r0, 0x80 +// ands r0, r1 +// cmp r0, 0 +// bne _0816B8E6 +// bl sub_81D1EC0 +// bl overworld_free_bg_tilemaps +// ldr r2, =gSaveBlock1Ptr +// ldr r1, =gUnknown_0203BCB8 +// ldrh r0, [r1] +// adds r0, 0x6 +// ldrh r1, [r1, 0x2] +// adds r0, r1 +// lsls r1, r0, 3 +// adds r1, r0 +// lsls r1, 2 +// ldr r0, =0x00002be0 +// adds r1, r0 +// ldr r0, [r2] +// adds r0, r1 +// ldr r1, =sub_816B900 +// movs r2, 0x1 +// bl ReadMail +// adds r0, r4, 0 +// bl DestroyTask +//_0816B8E6: +// pop {r4} +// pop {r0} +// bx r0 +// .pool +// thumb_func_end sub_816B8A4 + +// thumb_func_start sub_816B900 +//sub_816B900: @ 816B900 +// push {lr} +// ldr r0, =gFieldCallback +// ldr r1, =pal_fill_for_maplights_or_black +// str r1, [r0] +// ldr r0, =CB2_ReturnToField +// bl SetMainCallback2 +// pop {r0} +// bx r0 +// .pool +// thumb_func_end sub_816B900 thumb_func_start pal_fill_for_maplights_or_black pal_fill_for_maplights_or_black: @ 816B920 @@ -1303,7 +1306,7 @@ pal_fill_for_maplights_or_black: @ 816B920 cmp r0, 0x1 bne _0816B954 adds r0, r4, 0 - bl sub_816B5F8 + bl Mailbox_DrawMailboxMenu b _0816B95A .pool _0816B954: @@ -1331,7 +1334,7 @@ task00_080EBBDC: @ 816B964 adds r1, r4 lsls r1, 3 adds r1, r0 - ldr r0, =sub_816B674 + ldr r0, =Mailbox_ProcessInput str r0, [r1] _0816B984: pop {r4} @@ -1445,7 +1448,7 @@ _0816BA68: bl DisplayItemMessageOnField adds r0, r5, 0 bl ClearMailStruct - bl sub_816B54C + bl Mailbox_UpdateMailList ldrb r0, [r4, 0x5] subs r0, 0x1 strb r0, [r4, 0x5] @@ -1461,7 +1464,7 @@ _0816BA68: strh r0, [r4, 0x2] _0816BA96: adds r0, r6, 0 - bl sub_816B4C0 + bl ItemStorage_SetItemAndMailCount _0816BA9C: pop {r4-r6} pop {r0} @@ -1555,9 +1558,9 @@ sub_816BB48: @ 816BB48 lsrs r6, r0, 24 ldr r5, =gUnknown_0203BCB8 ldrb r4, [r5, 0x5] - bl sub_816B510 + bl GetMailboxMailCount strb r0, [r5, 0x5] - bl sub_816B54C + bl Mailbox_UpdateMailList ldrb r0, [r5, 0x5] cmp r4, r0 beq _0816BB7E @@ -1573,7 +1576,7 @@ sub_816BB48: @ 816BB48 strh r0, [r5, 0x2] _0816BB7E: adds r0, r6, 0 - bl sub_816B4C0 + bl ItemStorage_SetItemAndMailCount bl sub_81973A4 ldr r0, =gUnknown_0203BCB8 ldrb r0, [r0, 0x5] @@ -1583,7 +1586,7 @@ _0816BB7E: cmp r0, 0x1 bne _0816BBA8 adds r0, r6, 0 - bl sub_816B5F8 + bl Mailbox_DrawMailboxMenu b _0816BBAE .pool _0816BBA8: @@ -1621,7 +1624,7 @@ sub_816BBD4: @ 816BBD4 movs r1, 0 bl sub_8197434 adds r0, r4, 0 - bl sub_816B5F8 + bl Mailbox_DrawMailboxMenu movs r0, 0 bl schedule_bg_copy_tilemap_to_vram ldr r1, =gTasks @@ -1629,7 +1632,7 @@ sub_816BBD4: @ 816BBD4 adds r0, r4 lsls r0, 3 adds r0, r1 - ldr r1, =sub_816B674 + ldr r1, =Mailbox_ProcessInput str r1, [r0] pop {r4} pop {r0} @@ -2547,20 +2550,20 @@ bx_battle_menu_t3: @ 816C3A4 bne _0816C3DC adds r0, r4, 0 movs r1, 0 - bl sub_816B190 + bl InitItemStorageMenu b _0816C3E4 .pool _0816C3DC: adds r0, r4, 0 movs r1, 0x2 - bl sub_816B190 + bl InitItemStorageMenu _0816C3E4: ldr r0, =gTasks lsls r1, r4, 2 adds r1, r4 lsls r1, 3 adds r1, r0 - ldr r0, =sub_816B248 + ldr r0, =ItemStorageMenuProcessInput str r0, [r1] _0816C3F2: pop {r4,r5} |