diff options
Diffstat (limited to 'asm/rom6.s')
-rw-r--r-- | asm/rom6.s | 9863 |
1 files changed, 0 insertions, 9863 deletions
diff --git a/asm/rom6.s b/asm/rom6.s deleted file mode 100644 index a4006ace5..000000000 --- a/asm/rom6.s +++ /dev/null @@ -1,9863 +0,0 @@ - .include "constants/gba_constants.inc" - .include "constants/species_constants.inc" - .include "asm/macros.inc" - - .syntax unified - - .text - - thumb_func_start npc_before_player_of_type -npc_before_player_of_type: @ 810B2D4 - push {r4,r5,lr} - adds r5, r0, 0 - lsls r5, 24 - lsrs r5, 24 - ldr r4, _0810B314 @ =gUnknown_0203923C - adds r1, r4, 0x2 - adds r0, r4, 0 - bl GetXYCoordsOneStepInFrontOfPlayer - bl PlayerGetZCoord - strb r0, [r4, 0x4] - ldrh r0, [r4] - ldrh r1, [r4, 0x2] - ldrb r2, [r4, 0x4] - bl GetFieldObjectIdByXYZ - lsls r0, 24 - lsrs r0, 24 - ldr r2, _0810B318 @ =gMapObjects - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 2 - adds r2, r1, r2 - ldrb r0, [r2, 0x5] - cmp r0, r5 - bne _0810B320 - ldr r1, _0810B31C @ =gScriptLastTalked - ldrb r0, [r2, 0x8] - strh r0, [r1] - movs r0, 0x1 - b _0810B322 - .align 2, 0 -_0810B314: .4byte gUnknown_0203923C -_0810B318: .4byte gMapObjects -_0810B31C: .4byte gScriptLastTalked -_0810B320: - movs r0, 0 -_0810B322: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end npc_before_player_of_type - - thumb_func_start oei_task_add -oei_task_add: @ 810B328 - push {lr} - ldr r0, _0810B344 @ =gUnknown_0203923C - adds r1, r0, 0x2 - bl GetXYCoordsOneStepInFrontOfPlayer - ldr r0, _0810B348 @ =task08_080C9820 - movs r1, 0x8 - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - pop {r1} - bx r1 - .align 2, 0 -_0810B344: .4byte gUnknown_0203923C -_0810B348: .4byte task08_080C9820 - thumb_func_end oei_task_add - - thumb_func_start task08_080C9820 -task08_080C9820: @ 810B34C - push {r4-r6,lr} - lsls r0, 24 - lsrs r5, r0, 24 - adds r6, r5, 0 - bl ScriptContext2_Enable - ldr r1, _0810B3A0 @ =gPlayerAvatar - movs r0, 0x1 - strb r0, [r1, 0x6] - ldrb r1, [r1, 0x5] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, _0810B3A4 @ =gMapObjects - adds r4, r0, r1 - adds r0, r4, 0 - bl FieldObjectIsSpecialAnimOrDirectionSequenceAnimActive - lsls r0, 24 - cmp r0, 0 - beq _0810B382 - adds r0, r4, 0 - bl FieldObjectClearAnimIfSpecialAnimFinished - lsls r0, 24 - cmp r0, 0 - beq _0810B3CE -_0810B382: - ldr r0, _0810B3A8 @ =gMapHeader - ldrb r0, [r0, 0x17] - cmp r0, 0x5 - bne _0810B3B4 - movs r0, 0x3B - bl FieldEffectStart - ldr r0, _0810B3AC @ =gTasks - lsls r1, r5, 2 - adds r1, r5 - lsls r1, 3 - adds r1, r0 - ldr r0, _0810B3B0 @ =sub_810B428 - b _0810B3CC - .align 2, 0 -_0810B3A0: .4byte gPlayerAvatar -_0810B3A4: .4byte gMapObjects -_0810B3A8: .4byte gMapHeader -_0810B3AC: .4byte gTasks -_0810B3B0: .4byte sub_810B428 -_0810B3B4: - bl sub_8059BF4 - adds r0, r4, 0 - movs r1, 0x39 - bl FieldObjectSetSpecialAnim - ldr r0, _0810B3D4 @ =gTasks - lsls r1, r6, 2 - adds r1, r6 - lsls r1, 3 - adds r1, r0 - ldr r0, _0810B3D8 @ =sub_810B3DC -_0810B3CC: - str r0, [r1] -_0810B3CE: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0810B3D4: .4byte gTasks -_0810B3D8: .4byte sub_810B3DC - thumb_func_end task08_080C9820 - - thumb_func_start sub_810B3DC -sub_810B3DC: @ 810B3DC - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _0810B418 @ =gPlayerAvatar - ldrb r1, [r0, 0x5] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, _0810B41C @ =gMapObjects - adds r0, r1 - bl FieldObjectCheckIfSpecialAnimFinishedOrInactive - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0810B410 - movs r0, 0x3B - bl FieldEffectStart - ldr r0, _0810B420 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _0810B424 @ =sub_810B428 - str r0, [r1] -_0810B410: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0810B418: .4byte gPlayerAvatar -_0810B41C: .4byte gMapObjects -_0810B420: .4byte gTasks -_0810B424: .4byte sub_810B428 - thumb_func_end sub_810B3DC - - thumb_func_start sub_810B428 -sub_810B428: @ 810B428 - push {r4-r7,lr} - lsls r0, 24 - lsrs r7, r0, 24 - movs r0, 0x6 - bl FieldEffectActiveListContains - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - bne _0810B4AC - bl player_get_direction_lower_nybble - ldr r6, _0810B4B4 @ =gUnknown_0202FF84 - lsls r0, 24 - lsrs r0, 24 - str r0, [r6, 0x4] - cmp r0, 0x1 - bne _0810B44E - str r4, [r6, 0x8] -_0810B44E: - ldr r1, [r6, 0x4] - cmp r1, 0x2 - bne _0810B458 - movs r0, 0x1 - str r0, [r6, 0x8] -_0810B458: - cmp r1, 0x3 - bne _0810B460 - movs r0, 0x2 - str r0, [r6, 0x8] -_0810B460: - cmp r1, 0x4 - bne _0810B468 - movs r0, 0x3 - str r0, [r6, 0x8] -_0810B468: - ldr r5, _0810B4B8 @ =gPlayerAvatar - ldrb r0, [r5, 0x5] - lsls r4, r0, 3 - adds r4, r0 - lsls r4, 2 - ldr r0, _0810B4BC @ =gMapObjects - adds r4, r0 - bl GetPlayerAvatarGraphicsIdByCurrentState - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl sub_805B980 - ldrb r1, [r5, 0x4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, _0810B4C0 @ =gSprites - adds r0, r1 - ldrb r1, [r6, 0x8] - bl StartSpriteAnim - movs r0, 0x6 - bl FieldEffectActiveListRemove - ldr r1, _0810B4C4 @ =gTasks - lsls r0, r7, 2 - adds r0, r7 - lsls r0, 3 - adds r0, r1 - ldr r1, _0810B4C8 @ =sub_810B4CC - str r1, [r0] -_0810B4AC: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0810B4B4: .4byte gUnknown_0202FF84 -_0810B4B8: .4byte gPlayerAvatar -_0810B4BC: .4byte gMapObjects -_0810B4C0: .4byte gSprites -_0810B4C4: .4byte gTasks -_0810B4C8: .4byte sub_810B4CC - thumb_func_end sub_810B428 - - thumb_func_start sub_810B4CC -sub_810B4CC: @ 810B4CC - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r1, _0810B4FC @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldrh r1, [r0, 0x18] - lsls r1, 16 - ldrh r0, [r0, 0x1A] - orrs r1, r0 - bl _call_via_r1 - ldr r1, _0810B500 @ =gPlayerAvatar - movs r0, 0 - strb r0, [r1, 0x6] - adds r0, r4, 0 - bl DestroyTask - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0810B4FC: .4byte gTasks -_0810B500: .4byte gPlayerAvatar - thumb_func_end sub_810B4CC - - thumb_func_start SetUpFieldMove_RockSmash -SetUpFieldMove_RockSmash: @ 810B504 - push {lr} - movs r0, 0x56 - bl npc_before_player_of_type - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _0810B518 - movs r0, 0 - b _0810B526 -_0810B518: - ldr r1, _0810B52C @ =gUnknown_0300485C - ldr r0, _0810B530 @ =sub_808AB90 - str r0, [r1] - ldr r1, _0810B534 @ =gUnknown_03005CE4 - ldr r0, _0810B538 @ =sub_810B53C - str r0, [r1] - movs r0, 0x1 -_0810B526: - pop {r1} - bx r1 - .align 2, 0 -_0810B52C: .4byte gUnknown_0300485C -_0810B530: .4byte sub_808AB90 -_0810B534: .4byte gUnknown_03005CE4 -_0810B538: .4byte sub_810B53C - thumb_func_end SetUpFieldMove_RockSmash - - thumb_func_start sub_810B53C -sub_810B53C: @ 810B53C - push {lr} - ldr r1, _0810B550 @ =gUnknown_0202FF84 - ldr r0, _0810B554 @ =gUnknown_03005CE0 - ldrb r0, [r0] - str r0, [r1] - ldr r0, _0810B558 @ =UseRockSmashScript - bl ScriptContext1_SetupScript - pop {r0} - bx r0 - .align 2, 0 -_0810B550: .4byte gUnknown_0202FF84 -_0810B554: .4byte gUnknown_03005CE0 -_0810B558: .4byte UseRockSmashScript - thumb_func_end sub_810B53C - - thumb_func_start FldEff_RockSmash -FldEff_RockSmash: @ 810B55C - push {lr} - bl oei_task_add - lsls r0, 24 - lsrs r0, 24 - ldr r2, _0810B584 @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - ldr r2, _0810B588 @ =sub_810B58C - lsrs r0, r2, 16 - strh r0, [r1, 0x18] - strh r2, [r1, 0x1A] - movs r0, 0x13 - bl sav12_xor_increment - movs r0, 0 - pop {r1} - bx r1 - .align 2, 0 -_0810B584: .4byte gTasks -_0810B588: .4byte sub_810B58C - thumb_func_end FldEff_RockSmash - - thumb_func_start sub_810B58C -sub_810B58C: @ 810B58C - push {lr} - movs r0, 0x83 - bl PlaySE - movs r0, 0x25 - bl FieldEffectActiveListRemove - bl EnableBothScriptContexts - pop {r0} - bx r0 - thumb_func_end sub_810B58C - - thumb_func_start SetUpFieldMove_Dig -SetUpFieldMove_Dig: @ 810B5A4 - push {lr} - bl sub_80CA1C8 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _0810B5B6 - movs r0, 0 - b _0810B5C4 -_0810B5B6: - ldr r1, _0810B5C8 @ =gUnknown_0300485C - ldr r0, _0810B5CC @ =sub_808AB90 - str r0, [r1] - ldr r1, _0810B5D0 @ =gUnknown_03005CE4 - ldr r0, _0810B5D4 @ =sub_810B5D8 - str r0, [r1] - movs r0, 0x1 -_0810B5C4: - pop {r1} - bx r1 - .align 2, 0 -_0810B5C8: .4byte gUnknown_0300485C -_0810B5CC: .4byte sub_808AB90 -_0810B5D0: .4byte gUnknown_03005CE4 -_0810B5D4: .4byte sub_810B5D8 - thumb_func_end SetUpFieldMove_Dig - - thumb_func_start sub_810B5D8 -sub_810B5D8: @ 810B5D8 - push {lr} - bl sub_8053014 - movs r0, 0x26 - bl FieldEffectStart - ldr r0, _0810B5F0 @ =gUnknown_0202FF84 - ldr r1, _0810B5F4 @ =gUnknown_03005CE0 - ldrb r1, [r1] - str r1, [r0] - pop {r0} - bx r0 - .align 2, 0 -_0810B5F0: .4byte gUnknown_0202FF84 -_0810B5F4: .4byte gUnknown_03005CE0 - thumb_func_end sub_810B5D8 - - thumb_func_start FldEff_UseDig -FldEff_UseDig: @ 810B5F8 - push {lr} - bl oei_task_add - lsls r0, 24 - lsrs r0, 24 - ldr r2, _0810B62C @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - ldr r2, _0810B630 @ =sub_810B634 - lsrs r0, r2, 16 - strh r0, [r1, 0x18] - strh r2, [r1, 0x1A] - bl sub_81473B8 - lsls r0, 24 - cmp r0, 0 - bne _0810B624 - movs r0, 0x1 - bl SetPlayerAvatarTransitionFlags -_0810B624: - movs r0, 0 - pop {r1} - bx r1 - .align 2, 0 -_0810B62C: .4byte gTasks -_0810B630: .4byte sub_810B634 - thumb_func_end FldEff_UseDig - - thumb_func_start sub_810B634 -sub_810B634: @ 810B634 - push {r4,lr} - movs r0, 0x26 - bl FieldEffectActiveListRemove - bl sub_81473B8 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - beq _0810B64E - bl sub_8147408 - b _0810B666 -_0810B64E: - ldr r0, _0810B66C @ =task08_080A1C44 - movs r1, 0x8 - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - ldr r2, _0810B670 @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - strh r4, [r1, 0x8] -_0810B666: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0810B66C: .4byte task08_080A1C44 -_0810B670: .4byte gTasks - thumb_func_end sub_810B634 - - thumb_func_start sub_810B674 -sub_810B674: @ 810B674 - push {lr} - bl AnimateSprites - bl BuildOamBuffer - bl RunTasks - bl UpdatePaletteFade - pop {r0} - bx r0 - thumb_func_end sub_810B674 - - thumb_func_start sub_810B68C -sub_810B68C: @ 810B68C - push {lr} - bl LoadOam - bl ProcessSpriteCopyRequests - bl TransferPlttBuffer - ldr r1, _0810B6B0 @ =gBGTilemapBuffers + 0x1000 - ldr r2, _0810B6B4 @ =0x06007800 - ldr r0, _0810B6B8 @ =0x040000d4 - str r1, [r0] - str r2, [r0, 0x4] - ldr r1, _0810B6BC @ =0x80000400 - str r1, [r0, 0x8] - ldr r0, [r0, 0x8] - pop {r0} - bx r0 - .align 2, 0 -_0810B6B0: .4byte gBGTilemapBuffers + 0x1000 -_0810B6B4: .4byte 0x06007800 -_0810B6B8: .4byte 0x040000d4 -_0810B6BC: .4byte 0x80000400 - thumb_func_end sub_810B68C - - thumb_func_start sub_810B6C0 -sub_810B6C0: @ 810B6C0 - push {r4,lr} - sub sp, 0x4 - ldr r0, _0810B6DC @ =gMain - ldr r1, _0810B6E0 @ =0x0000043c - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x12 - bls _0810B6D2 - b _0810B960 -_0810B6D2: - lsls r0, 2 - ldr r1, _0810B6E4 @ =_0810B6E8 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0810B6DC: .4byte gMain -_0810B6E0: .4byte 0x0000043c -_0810B6E4: .4byte _0810B6E8 - .align 2, 0 -_0810B6E8: - .4byte _0810B734 - .4byte _0810B764 - .4byte _0810B76A - .4byte _0810B78C - .4byte _0810B792 - .4byte _0810B7B4 - .4byte _0810B7C0 - .4byte _0810B7DC - .4byte _0810B7E8 - .4byte _0810B804 - .4byte _0810B810 - .4byte _0810B830 - .4byte _0810B84C - .4byte _0810B86A - .4byte _0810B894 - .4byte _0810B89E - .4byte _0810B8C4 - .4byte _0810B914 - .4byte _0810B934 -_0810B734: - bl sub_80F9438 - bl sub_80F9368 - ldr r1, _0810B754 @ =REG_BG2CNT - ldr r2, _0810B758 @ =0x00000f0a - adds r0, r2, 0 - strh r0, [r1] - adds r1, 0x44 - movs r0, 0 - strh r0, [r1] - ldr r1, _0810B75C @ =gMain - ldr r0, _0810B760 @ =0x0000043c - adds r1, r0 - b _0810B922 - .align 2, 0 -_0810B754: .4byte REG_BG2CNT -_0810B758: .4byte 0x00000f0a -_0810B75C: .4byte gMain -_0810B760: .4byte 0x0000043c -_0810B764: - bl remove_some_task - b _0810B91C -_0810B76A: - bl ResetPaletteFade - ldr r2, _0810B780 @ =gPaletteFade - ldrb r0, [r2, 0x8] - movs r1, 0x80 - orrs r0, r1 - strb r0, [r2, 0x8] - ldr r1, _0810B784 @ =gMain - ldr r0, _0810B788 @ =0x0000043c - adds r1, r0 - b _0810B922 - .align 2, 0 -_0810B780: .4byte gPaletteFade -_0810B784: .4byte gMain -_0810B788: .4byte 0x0000043c -_0810B78C: - bl ResetSpriteData - b _0810B91C -_0810B792: - ldr r0, _0810B7A8 @ =gUnknown_02039244 - ldrb r0, [r0] - cmp r0, 0x2 - beq _0810B79E - bl ResetTasks -_0810B79E: - ldr r1, _0810B7AC @ =gMain - ldr r0, _0810B7B0 @ =0x0000043c - adds r1, r0 - b _0810B922 - .align 2, 0 -_0810B7A8: .4byte gUnknown_02039244 -_0810B7AC: .4byte gMain -_0810B7B0: .4byte 0x0000043c -_0810B7B4: - ldr r0, _0810B7BC @ =gWindowConfig_81E6E34 - bl SetUpWindowConfig - b _0810B91C - .align 2, 0 -_0810B7BC: .4byte gWindowConfig_81E6E34 -_0810B7C0: - ldr r0, _0810B7D0 @ =gWindowConfig_81E6E50 - bl SetUpWindowConfig - ldr r1, _0810B7D4 @ =gMain - ldr r0, _0810B7D8 @ =0x0000043c - adds r1, r0 - b _0810B922 - .align 2, 0 -_0810B7D0: .4byte gWindowConfig_81E6E50 -_0810B7D4: .4byte gMain -_0810B7D8: .4byte 0x0000043c -_0810B7DC: - ldr r0, _0810B7E4 @ =gWindowConfig_81E6E34 - bl MultistepInitMenuWindowBegin - b _0810B91C - .align 2, 0 -_0810B7E4: .4byte gWindowConfig_81E6E34 -_0810B7E8: - bl MultistepInitMenuWindowContinue - cmp r0, 0 - bne _0810B7F2 - b _0810B960 -_0810B7F2: - ldr r1, _0810B7FC @ =gMain - ldr r0, _0810B800 @ =0x0000043c - adds r1, r0 - b _0810B922 - .align 2, 0 -_0810B7FC: .4byte gMain -_0810B800: .4byte 0x0000043c -_0810B804: - ldr r0, _0810B80C @ =gWindowConfig_81E6E50 - bl MultistepInitMenuWindowBegin - b _0810B91C - .align 2, 0 -_0810B80C: .4byte gWindowConfig_81E6E50 -_0810B810: - bl MultistepInitMenuWindowContinue - cmp r0, 0 - bne _0810B81A - b _0810B960 -_0810B81A: - ldr r0, _0810B828 @ =0x02000000 - ldr r1, _0810B82C @ =0x0001ffff - adds r0, r1 - movs r1, 0 - strb r1, [r0] - b _0810B91C - .align 2, 0 -_0810B828: .4byte 0x02000000 -_0810B82C: .4byte 0x0001ffff -_0810B830: - bl sub_810B998 - lsls r0, 24 - cmp r0, 0 - bne _0810B83C - b _0810B960 -_0810B83C: - ldr r1, _0810B844 @ =gMain - ldr r0, _0810B848 @ =0x0000043c - adds r1, r0 - b _0810B922 - .align 2, 0 -_0810B844: .4byte gMain -_0810B848: .4byte 0x0000043c -_0810B84C: - bl sub_80F944C - bl LoadScrollIndicatorPalette - movs r0, 0 - movs r1, 0xB0 - movs r2, 0x8 - bl CreateVerticalScrollIndicators - movs r0, 0x1 - movs r1, 0xB0 - movs r2, 0x98 - bl CreateVerticalScrollIndicators - b _0810B91C -_0810B86A: - movs r0, 0x38 - movs r1, 0x40 - movs r2, 0 - bl sub_810BA50 - ldr r1, _0810B884 @ =0x02000000 - ldr r2, _0810B888 @ =0x0001fffe - adds r1, r2 - strb r0, [r1] - ldr r1, _0810B88C @ =gMain - ldr r0, _0810B890 @ =0x0000043c - adds r1, r0 - b _0810B922 - .align 2, 0 -_0810B884: .4byte 0x02000000 -_0810B888: .4byte 0x0001fffe -_0810B88C: .4byte gMain -_0810B890: .4byte 0x0000043c -_0810B894: - bl sub_810BC98 - bl sub_810BD08 - b _0810B91C -_0810B89E: - bl sub_810BB0C - bl sub_810BB30 - ldr r0, _0810B8B8 @ =gUnknown_02039248 - ldrb r0, [r0, 0x1] - bl sub_810BC84 - ldr r1, _0810B8BC @ =gMain - ldr r0, _0810B8C0 @ =0x0000043c - adds r1, r0 - b _0810B922 - .align 2, 0 -_0810B8B8: .4byte gUnknown_02039248 -_0810B8BC: .4byte gMain -_0810B8C0: .4byte 0x0000043c -_0810B8C4: - ldr r3, _0810B8FC @ =0x04000208 - ldrh r2, [r3] - movs r0, 0 - strh r0, [r3] - ldr r4, _0810B900 @ =0x04000200 - ldrh r0, [r4] - movs r1, 0x1 - orrs r0, r1 - strh r0, [r4] - strh r2, [r3] - ldr r2, _0810B904 @ =REG_DISPSTAT - ldrh r0, [r2] - movs r1, 0x8 - orrs r0, r1 - strh r0, [r2] - ldr r0, _0810B908 @ =sub_810B68C - bl SetVBlankCallback - movs r1, 0x80 - lsls r1, 19 - movs r2, 0xBA - lsls r2, 5 - adds r0, r2, 0 - strh r0, [r1] - ldr r1, _0810B90C @ =gMain - ldr r0, _0810B910 @ =0x0000043c - adds r1, r0 - b _0810B922 - .align 2, 0 -_0810B8FC: .4byte 0x04000208 -_0810B900: .4byte 0x04000200 -_0810B904: .4byte REG_DISPSTAT -_0810B908: .4byte sub_810B68C -_0810B90C: .4byte gMain -_0810B910: .4byte 0x0000043c -_0810B914: - bl sub_8055870 - cmp r0, 0x1 - beq _0810B960 -_0810B91C: - ldr r1, _0810B92C @ =gMain - ldr r2, _0810B930 @ =0x0000043c - adds r1, r2 -_0810B922: - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - b _0810B960 - .align 2, 0 -_0810B92C: .4byte gMain -_0810B930: .4byte 0x0000043c -_0810B934: - movs r0, 0x1 - negs r0, r0 - movs r1, 0 - str r1, [sp] - movs r2, 0x10 - movs r3, 0 - bl BeginNormalPaletteFade - ldr r2, _0810B958 @ =gPaletteFade - ldrb r1, [r2, 0x8] - movs r0, 0x7F - ands r0, r1 - strb r0, [r2, 0x8] - ldr r0, _0810B95C @ =sub_810B674 - bl SetMainCallback2 - movs r0, 0x1 - b _0810B962 - .align 2, 0 -_0810B958: .4byte gPaletteFade -_0810B95C: .4byte sub_810B674 -_0810B960: - movs r0, 0 -_0810B962: - add sp, 0x4 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_810B6C0 - - thumb_func_start sub_810B96C -sub_810B96C: @ 810B96C - push {lr} -_0810B96E: - bl sub_810B6C0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0810B988 - ldr r0, _0810B984 @ =sub_810BF7C - movs r1, 0 - bl CreateTask - b _0810B994 - .align 2, 0 -_0810B984: .4byte sub_810BF7C -_0810B988: - bl sub_80F9344 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0810B96E -_0810B994: - pop {r0} - bx r0 - thumb_func_end sub_810B96C - - thumb_func_start sub_810B998 -sub_810B998: @ 810B998 - push {lr} - ldr r0, _0810B9B0 @ =0x02000000 - ldr r1, _0810B9B4 @ =0x0001ffff - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x4 - bhi _0810BA48 - lsls r0, 2 - ldr r1, _0810B9B8 @ =_0810B9BC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0810B9B0: .4byte 0x02000000 -_0810B9B4: .4byte 0x0001ffff -_0810B9B8: .4byte _0810B9BC - .align 2, 0 -_0810B9BC: - .4byte _0810B9D0 - .4byte _0810B9E4 - .4byte _0810B9F8 - .4byte _0810BA08 - .4byte _0810BA28 -_0810B9D0: - ldr r0, _0810B9DC @ =gMenuPokeblock_Gfx - ldr r1, _0810B9E0 @ =0x06008000 - bl LZDecompressVram - b _0810BA0E - .align 2, 0 -_0810B9DC: .4byte gMenuPokeblock_Gfx -_0810B9E0: .4byte 0x06008000 -_0810B9E4: - ldr r0, _0810B9F0 @ =gMenuPokeblock_Tilemap - ldr r1, _0810B9F4 @ =gBGTilemapBuffers + 0x1000 - bl sub_800D238 - b _0810BA0E - .align 2, 0 -_0810B9F0: .4byte gMenuPokeblock_Tilemap -_0810B9F4: .4byte gBGTilemapBuffers + 0x1000 -_0810B9F8: - ldr r0, _0810BA04 @ =gMenuPokeblock_Pal - movs r1, 0 - movs r2, 0xC0 - bl LoadCompressedPalette - b _0810BA0E - .align 2, 0 -_0810BA04: .4byte gMenuPokeblock_Pal -_0810BA08: - ldr r0, _0810BA1C @ =gUnknown_083F7F74 - bl LoadCompressedObjectPic -_0810BA0E: - ldr r1, _0810BA20 @ =0x02000000 - ldr r0, _0810BA24 @ =0x0001ffff - adds r1, r0 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - b _0810BA48 - .align 2, 0 -_0810BA1C: .4byte gUnknown_083F7F74 -_0810BA20: .4byte 0x02000000 -_0810BA24: .4byte 0x0001ffff -_0810BA28: - ldr r0, _0810BA3C @ =gUnknown_083F7F7C - bl LoadCompressedObjectPalette - ldr r0, _0810BA40 @ =0x02000000 - ldr r1, _0810BA44 @ =0x0001ffff - adds r0, r1 - movs r1, 0 - strb r1, [r0] - movs r0, 0x1 - b _0810BA4A - .align 2, 0 -_0810BA3C: .4byte gUnknown_083F7F7C -_0810BA40: .4byte 0x02000000 -_0810BA44: .4byte 0x0001ffff -_0810BA48: - movs r0, 0 -_0810BA4A: - pop {r1} - bx r1 - thumb_func_end sub_810B998 - - thumb_func_start sub_810BA50 -sub_810BA50: @ 810BA50 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - adds r3, r2, 0 - lsls r3, 24 - lsrs r3, 24 - ldr r0, _0810BA78 @ =gSpriteTemplate_83F7F84 - lsls r4, 16 - asrs r4, 16 - lsls r5, 16 - asrs r5, 16 - adds r1, r4, 0 - adds r2, r5, 0 - bl CreateSprite - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0810BA78: .4byte gSpriteTemplate_83F7F84 - thumb_func_end sub_810BA50 - - thumb_func_start sub_810BA7C -sub_810BA7C: @ 810BA7C - push {lr} - ldr r1, _0810BA98 @ =gUnknown_02039244 - strb r0, [r1] - ldrb r2, [r1] - cmp r2, 0x2 - beq _0810BAA8 - cmp r2, 0x3 - beq _0810BAC0 - ldr r1, _0810BA9C @ =gUnknown_03000758 - ldr r0, _0810BAA0 @ =gUnknown_083F7F1C - str r0, [r1] - ldr r1, _0810BAA4 @ =gUnknown_0203924C - movs r0, 0x3 - b _0810BACA - .align 2, 0 -_0810BA98: .4byte gUnknown_02039244 -_0810BA9C: .4byte gUnknown_03000758 -_0810BAA0: .4byte gUnknown_083F7F1C -_0810BAA4: .4byte gUnknown_0203924C -_0810BAA8: - ldr r0, _0810BAB4 @ =gUnknown_03000758 - ldr r1, _0810BAB8 @ =gUnknown_083F7F1F - str r1, [r0] - ldr r0, _0810BABC @ =gUnknown_0203924C - strb r2, [r0] - b _0810BACC - .align 2, 0 -_0810BAB4: .4byte gUnknown_03000758 -_0810BAB8: .4byte gUnknown_083F7F1F -_0810BABC: .4byte gUnknown_0203924C -_0810BAC0: - ldr r1, _0810BAD0 @ =gUnknown_03000758 - ldr r0, _0810BAD4 @ =gUnknown_083F7F21 - str r0, [r1] - ldr r1, _0810BAD8 @ =gUnknown_0203924C - movs r0, 0x2 -_0810BACA: - strb r0, [r1] -_0810BACC: - pop {r0} - bx r0 - .align 2, 0 -_0810BAD0: .4byte gUnknown_03000758 -_0810BAD4: .4byte gUnknown_083F7F21 -_0810BAD8: .4byte gUnknown_0203924C - thumb_func_end sub_810BA7C - - thumb_func_start sub_810BADC -sub_810BADC: @ 810BADC - push {lr} - movs r0, 0x2 - bl sub_810BA7C - ldr r0, _0810BAF0 @ =sub_810B96C - bl SetMainCallback2 - pop {r0} - bx r0 - .align 2, 0 -_0810BAF0: .4byte sub_810B96C - thumb_func_end sub_810BADC - - thumb_func_start sub_810BAF4 -sub_810BAF4: @ 810BAF4 - push {lr} - movs r0, 0x3 - bl sub_810BA7C - ldr r0, _0810BB08 @ =sub_810B96C - bl SetMainCallback2 - pop {r0} - bx r0 - .align 2, 0 -_0810BB08: .4byte sub_810B96C - thumb_func_end sub_810BAF4 - - thumb_func_start sub_810BB0C -sub_810BB0C: @ 810BB0C - push {lr} - ldr r0, _0810BB28 @ =gWindowConfig_81E6E34 - bl BasicInitMenuWindow - ldr r0, _0810BB2C @ =0x00000111 - bl ItemId_GetItem - movs r1, 0x2 - movs r2, 0x1 - movs r3, 0x48 - bl sub_8072BD8 - pop {r0} - bx r0 - .align 2, 0 -_0810BB28: .4byte gWindowConfig_81E6E34 -_0810BB2C: .4byte 0x00000111 - thumb_func_end sub_810BB0C - - thumb_func_start sub_810BB30 -sub_810BB30: @ 810BB30 - push {lr} - ldr r0, _0810BB70 @ =gWindowConfig_81E6E34 - bl BasicInitMenuWindow - ldr r0, _0810BB74 @ =gContestStatsText_Spicy - movs r1, 0x2 - movs r2, 0xD - bl MenuPrint - ldr r0, _0810BB78 @ =gContestStatsText_Dry - movs r1, 0x2 - movs r2, 0xF - bl MenuPrint - ldr r0, _0810BB7C @ =gContestStatsText_Sweet - movs r1, 0x2 - movs r2, 0x11 - bl MenuPrint - ldr r0, _0810BB80 @ =gContestStatsText_Bitter - movs r1, 0x8 - movs r2, 0xD - bl MenuPrint - ldr r0, _0810BB84 @ =gContestStatsText_Sour - movs r1, 0x8 - movs r2, 0xF - bl MenuPrint - pop {r0} - bx r0 - .align 2, 0 -_0810BB70: .4byte gWindowConfig_81E6E34 -_0810BB74: .4byte gContestStatsText_Spicy -_0810BB78: .4byte gContestStatsText_Dry -_0810BB7C: .4byte gContestStatsText_Sweet -_0810BB80: .4byte gContestStatsText_Bitter -_0810BB84: .4byte gContestStatsText_Sour - thumb_func_end sub_810BB30 - - thumb_func_start sub_810BB88 -sub_810BB88: @ 810BB88 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - ldr r0, _0810BBF4 @ =gWindowConfig_81E6E34 - bl BasicInitMenuWindow - mov r6, r8 - adds r0, r6, 0 - adds r0, 0x8 - cmp r6, r0 - bgt _0810BC6C - ldr r0, _0810BBF8 @ =gStringVar1 - mov r9, r0 - ldr r1, _0810BBFC @ =gSaveBlock1 - mov r10, r1 -_0810BBB0: - mov r1, r8 - subs r0, r6, r1 - lsls r0, 25 - lsrs r7, r0, 24 - ldr r0, _0810BC00 @ =gUnknown_02039248 - ldrb r0, [r0, 0x2] - cmp r6, r0 - bne _0810BC08 - mov r0, r9 - ldr r1, _0810BC04 @ =gContestStatsText_StowCase - movs r2, 0x78 - movs r3, 0 - bl sub_8072C74 - movs r2, 0x1 - orrs r2, r7 - mov r0, r9 - movs r1, 0xF - bl MenuPrint - mov r0, r8 - adds r0, 0x8 - cmp r6, r0 - beq _0810BC6C - adds r1, r7, 0x3 - lsls r1, 24 - lsrs r1, 24 - movs r0, 0xF - movs r2, 0x1D - movs r3, 0x12 - bl MenuZeroFillWindowRect - b _0810BC6C - .align 2, 0 -_0810BBF4: .4byte gWindowConfig_81E6E34 -_0810BBF8: .4byte gStringVar1 -_0810BBFC: .4byte gSaveBlock1 -_0810BC00: .4byte gUnknown_02039248 -_0810BC04: .4byte gContestStatsText_StowCase -_0810BC08: - lsls r5, r6, 3 - mov r1, r10 - adds r0, r5, r1 - movs r1, 0xFF - lsls r1, 3 - adds r0, r1 - ldrb r0, [r0] - lsls r0, 2 - ldr r1, _0810BC7C @ =gPokeblockNames - adds r0, r1 - ldr r1, [r0] - mov r0, r9 - movs r2, 0x5E - movs r3, 0 - bl sub_8072C74 - adds r4, r0, 0 - movs r0, 0xFC - strb r0, [r4] - movs r0, 0x14 - strb r0, [r4, 0x1] - movs r0, 0x6 - strb r0, [r4, 0x2] - adds r4, 0x3 - ldr r0, _0810BC80 @ =gSaveBlock1 + 0x7F8 - adds r5, r0 - adds r0, r5, 0 - bl sub_810C9B0 - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - movs r2, 0x1 - movs r3, 0x3 - bl ConvertIntToDecimalStringN - movs r2, 0x1 - orrs r2, r7 - mov r0, r9 - movs r1, 0xF - bl MenuPrint - adds r0, r6, 0x1 - lsls r0, 24 - lsrs r6, r0, 24 - mov r0, r8 - adds r0, 0x8 - cmp r6, r0 - ble _0810BBB0 -_0810BC6C: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0810BC7C: .4byte gPokeblockNames -_0810BC80: .4byte gSaveBlock1 + 0x7F8 - thumb_func_end sub_810BB88 - - thumb_func_start sub_810BC84 -sub_810BC84: @ 810BC84 - push {lr} - lsls r0, 24 - lsrs r0, 24 - bl sub_810BB88 - movs r0, 0 - bl sub_810BDAC - pop {r0} - bx r0 - thumb_func_end sub_810BC84 - - thumb_func_start sub_810BC98 -sub_810BC98: @ 810BC98 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - movs r2, 0 - ldr r0, _0810BD00 @ =gSaveBlock1 - mov r9, r0 -_0810BCA6: - adds r1, r2, 0x1 - lsls r0, r1, 16 - lsrs r5, r0, 16 - mov r8, r1 - cmp r5, 0x27 - bhi _0810BCE8 - lsls r1, r2, 3 - mov r2, r9 - adds r0, r1, r2 - movs r2, 0xFF - lsls r2, 3 - adds r7, r0, r2 - ldr r0, _0810BD04 @ =gSaveBlock1 + 0x7F8 - mov r12, r0 - adds r6, r1, r0 -_0810BCC4: - ldrb r0, [r7] - cmp r0, 0 - bne _0810BCDE - ldr r3, [r6] - ldr r4, [r6, 0x4] - lsls r2, r5, 3 - add r2, r12 - ldr r0, [r2] - ldr r1, [r2, 0x4] - str r0, [r6] - str r1, [r6, 0x4] - str r3, [r2] - str r4, [r2, 0x4] -_0810BCDE: - adds r0, r5, 0x1 - lsls r0, 16 - lsrs r5, r0, 16 - cmp r5, 0x27 - bls _0810BCC4 -_0810BCE8: - mov r1, r8 - lsls r0, r1, 16 - lsrs r2, r0, 16 - cmp r2, 0x26 - bls _0810BCA6 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0810BD00: .4byte gSaveBlock1 -_0810BD04: .4byte gSaveBlock1 + 0x7F8 - thumb_func_end sub_810BC98 - - thumb_func_start sub_810BD08 -sub_810BD08: @ 810BD08 - push {r4,r5,lr} - ldr r1, _0810BD5C @ =gUnknown_02039248 - movs r0, 0 - strb r0, [r1, 0x2] - movs r2, 0 - ldr r5, _0810BD60 @ =gSaveBlock1 - movs r4, 0xFF - lsls r4, 3 - adds r3, r1, 0 -_0810BD1A: - lsls r0, r2, 3 - adds r0, r5 - adds r0, r4 - ldrb r0, [r0] - cmp r0, 0 - beq _0810BD2C - ldrb r0, [r3, 0x2] - adds r0, 0x1 - strb r0, [r3, 0x2] -_0810BD2C: - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0x27 - bls _0810BD1A - ldrb r0, [r1, 0x2] - cmp r0, 0x7 - bls _0810BD3E - movs r0, 0x8 -_0810BD3E: - strb r0, [r1, 0x3] - ldrb r2, [r1, 0x1] - adds r0, r2, 0 - adds r0, 0x8 - ldrb r3, [r1, 0x2] - cmp r0, r3 - ble _0810BD54 - cmp r2, 0 - beq _0810BD54 - subs r0, r2, 0x1 - strb r0, [r1, 0x1] -_0810BD54: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0810BD5C: .4byte gUnknown_02039248 -_0810BD60: .4byte gSaveBlock1 - thumb_func_end sub_810BD08 - - thumb_func_start sub_810BD64 -sub_810BD64: @ 810BD64 - push {r4,r5,lr} - lsls r0, 16 - lsrs r3, r0, 16 - movs r2, 0 - ldr r5, _0810BDA4 @ =gUnknown_02039248 - ldr r4, _0810BDA8 @ =gBGTilemapBuffers + 0x1000 -_0810BD70: - ldrb r0, [r5] - lsls r0, 1 - adds r0, 0x1 - lsls r0, 5 - adds r1, r2, 0 - adds r1, 0xF - adds r0, r1 - lsls r0, 1 - adds r0, r4 - strh r3, [r0] - ldrb r0, [r5] - lsls r0, 6 - adds r0, 0x40 - adds r0, r1 - lsls r0, 1 - adds r0, r4 - strh r3, [r0] - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0xD - bls _0810BD70 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0810BDA4: .4byte gUnknown_02039248 -_0810BDA8: .4byte gBGTilemapBuffers + 0x1000 - thumb_func_end sub_810BD64 - - thumb_func_start sub_810BDAC -sub_810BDAC: @ 810BDAC - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 24 - cmp r0, 0 - bne _0810BDCC - ldr r0, _0810BDC4 @ =0x00001005 - ldr r1, _0810BDC8 @ =0x00001014 - bl sub_810BD64 - b _0810BDD4 - .align 2, 0 -_0810BDC4: .4byte 0x00001005 -_0810BDC8: .4byte 0x00001014 -_0810BDCC: - ldr r0, _0810BDE8 @ =0x00002005 - ldr r1, _0810BDEC @ =0x00002014 - bl sub_810BD64 -_0810BDD4: - ldr r0, _0810BDF0 @ =gUnknown_02039248 - ldrb r0, [r0, 0x1] - cmp r0, 0 - beq _0810BDF4 - movs r0, 0 - movs r1, 0 - bl sub_80F979C - b _0810BDFC - .align 2, 0 -_0810BDE8: .4byte 0x00002005 -_0810BDEC: .4byte 0x00002014 -_0810BDF0: .4byte gUnknown_02039248 -_0810BDF4: - movs r0, 0 - movs r1, 0x1 - bl sub_80F979C -_0810BDFC: - ldr r2, _0810BE1C @ =gUnknown_02039248 - ldrb r0, [r2, 0x2] - ldrb r1, [r2, 0x3] - cmp r0, r1 - bls _0810BE20 - ldrb r0, [r2, 0x1] - ldrb r1, [r2, 0x3] - adds r0, r1 - ldrb r2, [r2, 0x2] - cmp r0, r2 - beq _0810BE20 - movs r0, 0x1 - movs r1, 0 - bl sub_80F979C - b _0810BE28 - .align 2, 0 -_0810BE1C: .4byte gUnknown_02039248 -_0810BE20: - movs r0, 0x1 - movs r1, 0x1 - bl sub_80F979C -_0810BE28: - movs r6, 0 - ldr r7, _0810BE94 @ =gBGTilemapBuffers + 0x1000 - movs r0, 0xF - mov r8, r0 -_0810BE30: - adds r0, r6, 0 - movs r1, 0x3 - bl __umodsi3 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 18 - ldr r1, _0810BE98 @ =0x000001a1 - adds r4, r1 - adds r0, r6, 0 - movs r1, 0x3 - bl __udivsi3 - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 1 - adds r5, r4, r1 - ldr r1, _0810BE9C @ =gUnknown_02039248 - ldrb r2, [r1] - ldrb r0, [r1, 0x1] - adds r0, r2, r0 - ldrb r1, [r1, 0x2] - cmp r0, r1 - beq _0810BEB8 - lsls r0, 3 - ldr r1, _0810BEA0 @ =gSaveBlock1 + 0x7F8 - adds r0, r1 - adds r4, r6, 0x1 - lsls r1, r4, 24 - lsrs r1, 24 - bl sub_810CA9C - lsls r0, 16 - cmp r0, 0 - ble _0810BEA4 - lsls r1, r5, 1 - adds r1, r7 - lsls r2, r6, 12 - adds r0, r2, 0 - adds r0, 0x17 - strh r0, [r1] - adds r0, r5, 0 - adds r0, 0x20 - lsls r0, 1 - adds r0, r7 - adds r2, 0x18 - strh r2, [r0] - b _0810BECC - .align 2, 0 -_0810BE94: .4byte gBGTilemapBuffers + 0x1000 -_0810BE98: .4byte 0x000001a1 -_0810BE9C: .4byte gUnknown_02039248 -_0810BEA0: .4byte gSaveBlock1 + 0x7F8 -_0810BEA4: - lsls r0, r5, 1 - adds r0, r7 - mov r1, r8 - strh r1, [r0] - adds r0, r5, 0 - adds r0, 0x20 - lsls r0, 1 - adds r0, r7 - strh r1, [r0] - b _0810BECC -_0810BEB8: - lsls r0, r5, 1 - adds r0, r7 - mov r1, r8 - strh r1, [r0] - adds r0, r5, 0 - adds r0, 0x20 - lsls r0, 1 - adds r0, r7 - strh r1, [r0] - adds r4, r6, 0x1 -_0810BECC: - lsls r0, r4, 24 - lsrs r6, r0, 24 - cmp r6, 0x4 - bls _0810BE30 - ldr r0, _0810BF10 @ =gWindowConfig_81E6E34 - bl BasicInitMenuWindow - ldr r0, _0810BF14 @ =gUnknown_02039248 - ldrb r2, [r0] - ldrb r1, [r0, 0x1] - adds r2, r1 - ldrb r0, [r0, 0x2] - cmp r2, r0 - beq _0810BF20 - ldr r4, _0810BF18 @ =gStringVar1 - lsls r0, r2, 3 - ldr r1, _0810BF1C @ =gSaveBlock1 + 0x7F8 - adds r0, r1 - bl sub_810C9E8 - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - movs r2, 0x10 - movs r3, 0x1 - bl sub_8072C14 - adds r0, r4, 0 - movs r1, 0xB - movs r2, 0x11 - bl MenuPrint - b _0810BF2C - .align 2, 0 -_0810BF10: .4byte gWindowConfig_81E6E34 -_0810BF14: .4byte gUnknown_02039248 -_0810BF18: .4byte gStringVar1 -_0810BF1C: .4byte gSaveBlock1 + 0x7F8 -_0810BF20: - movs r0, 0xB - movs r1, 0x11 - movs r2, 0xC - movs r3, 0x12 - bl MenuZeroFillWindowRect -_0810BF2C: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_810BDAC - - thumb_func_start sub_810BF38 -sub_810BF38: @ 810BF38 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0x5 - bl PlaySE - ldr r2, _0810BF6C @ =gSprites - ldr r0, _0810BF70 @ =0x02000000 - ldr r1, _0810BF74 @ =0x0001fffe - adds r0, r1 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r2, 0x1C - adds r0, r2 - ldr r1, _0810BF78 @ =sub_810C8D4 - str r1, [r0] - adds r0, r4, 0 - bl sub_810BDAC - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0810BF6C: .4byte gSprites -_0810BF70: .4byte 0x02000000 -_0810BF74: .4byte 0x0001fffe -_0810BF78: .4byte sub_810C8D4 - thumb_func_end sub_810BF38 - - thumb_func_start sub_810BF7C -sub_810BF7C: @ 810BF7C - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - adds r4, r5, 0 - ldr r0, _0810BFB8 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r3, 0x80 - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - beq _0810BF94 - b _0810C0B8 -_0810BF94: - ldr r2, _0810BFBC @ =gMain - ldrh r1, [r2, 0x30] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _0810BFCE - ldr r4, _0810BFC0 @ =gUnknown_02039248 - ldrb r0, [r4] - cmp r0, 0 - beq _0810BFC4 - movs r0, 0x5 - movs r1, 0x14 - bl sub_810BD64 - ldrb r0, [r4] - subs r0, 0x1 - strb r0, [r4] - b _0810C00A - .align 2, 0 -_0810BFB8: .4byte gPaletteFade -_0810BFBC: .4byte gMain -_0810BFC0: .4byte gUnknown_02039248 -_0810BFC4: - ldrb r0, [r4, 0x1] - cmp r0, 0 - beq _0810C0B8 - subs r0, 0x1 - b _0810C002 -_0810BFCE: - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - beq _0810C012 - ldr r4, _0810BFF0 @ =gUnknown_02039248 - ldrb r0, [r4] - ldrb r1, [r4, 0x3] - cmp r0, r1 - beq _0810BFF4 - movs r0, 0x5 - movs r1, 0x14 - bl sub_810BD64 - ldrb r0, [r4] - adds r0, 0x1 - strb r0, [r4] - b _0810C00A - .align 2, 0 -_0810BFF0: .4byte gUnknown_02039248 -_0810BFF4: - ldrb r1, [r4, 0x1] - ldrb r0, [r4] - adds r0, r1, r0 - ldrb r2, [r4, 0x2] - cmp r0, r2 - beq _0810C0B8 - adds r0, r1, 0x1 -_0810C002: - strb r0, [r4, 0x1] - ldrb r0, [r4, 0x1] - bl sub_810BB88 -_0810C00A: - movs r0, 0 - bl sub_810BF38 - b _0810C0B8 -_0810C012: - ldrh r1, [r2, 0x2E] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _0810C05C - ldr r4, _0810C050 @ =gUnknown_02039248 - ldrb r0, [r4, 0x1] - ldrb r1, [r4] - adds r0, r1 - ldrb r1, [r4, 0x2] - cmp r0, r1 - beq _0810C0B8 - movs r0, 0x5 - bl PlaySE - movs r0, 0x1 - bl sub_810BDAC - ldr r1, _0810C054 @ =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r0, r1 - ldrb r1, [r4, 0x1] - ldrb r2, [r4] - adds r1, r2 - strh r1, [r0, 0x8] - ldr r1, _0810C058 @ =sub_810C0C8 - str r1, [r0] - b _0810C0B8 - .align 2, 0 -_0810C050: .4byte gUnknown_02039248 -_0810C054: .4byte gTasks -_0810C058: .4byte sub_810C0C8 -_0810C05C: - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0810C09C - movs r0, 0x5 - bl PlaySE - ldr r0, _0810C088 @ =gUnknown_02039248 - ldrb r1, [r0, 0x1] - ldrb r2, [r0] - adds r1, r2 - ldrb r0, [r0, 0x2] - cmp r1, r0 - bne _0810C094 - ldr r1, _0810C08C @ =gScriptResult - ldr r2, _0810C090 @ =0x0000ffff - adds r0, r2, 0 - strh r0, [r1] - adds r0, r5, 0 - bl sub_810C31C - b _0810C0B8 - .align 2, 0 -_0810C088: .4byte gUnknown_02039248 -_0810C08C: .4byte gScriptResult -_0810C090: .4byte 0x0000ffff -_0810C094: - adds r0, r5, 0 - bl sub_810C368 - b _0810C0B8 -_0810C09C: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0810C0B8 - movs r0, 0x5 - bl PlaySE - ldr r1, _0810C0C0 @ =gScriptResult - ldr r2, _0810C0C4 @ =0x0000ffff - adds r0, r2, 0 - strh r0, [r1] - adds r0, r4, 0 - bl sub_810C31C -_0810C0B8: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0810C0C0: .4byte gScriptResult -_0810C0C4: .4byte 0x0000ffff - thumb_func_end sub_810BF7C - - thumb_func_start sub_810C0C8 -sub_810C0C8: @ 810C0C8 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - ldr r2, _0810C0F4 @ =gMain - ldrh r1, [r2, 0x30] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _0810C110 - ldr r4, _0810C0F8 @ =gUnknown_02039248 - ldrb r0, [r4] - cmp r0, 0 - beq _0810C0FC - movs r0, 0x5 - movs r1, 0x14 - bl sub_810BD64 - ldrb r0, [r4] - subs r0, 0x1 - strb r0, [r4] - b _0810C158 - .align 2, 0 -_0810C0F4: .4byte gMain -_0810C0F8: .4byte gUnknown_02039248 -_0810C0FC: - ldrb r0, [r4, 0x1] - cmp r0, 0 - beq _0810C1BA - adds r0, r5, 0 - movs r1, 0 - bl sub_810C1C8 - ldrb r0, [r4, 0x1] - subs r0, 0x1 - b _0810C150 -_0810C110: - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _0810C168 - ldr r4, _0810C134 @ =gUnknown_02039248 - ldrb r0, [r4] - ldrb r1, [r4, 0x3] - cmp r0, r1 - beq _0810C138 - movs r0, 0x5 - movs r1, 0x14 - bl sub_810BD64 - ldrb r0, [r4] - adds r0, 0x1 - strb r0, [r4] - b _0810C158 - .align 2, 0 -_0810C134: .4byte gUnknown_02039248 -_0810C138: - ldrb r0, [r4, 0x1] - ldrb r1, [r4] - adds r0, r1 - ldrb r1, [r4, 0x2] - cmp r0, r1 - beq _0810C1BA - adds r0, r5, 0 - movs r1, 0 - bl sub_810C1C8 - ldrb r0, [r4, 0x1] - adds r0, 0x1 -_0810C150: - strb r0, [r4, 0x1] - ldrb r0, [r4, 0x1] - bl sub_810BB88 -_0810C158: - movs r0, 0x1 - bl sub_810BF38 - adds r0, r5, 0 - movs r1, 0x1 - bl sub_810C1C8 - b _0810C1BA -_0810C168: - ldrh r1, [r2, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _0810C17A - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _0810C190 -_0810C17A: - movs r0, 0x5 - bl PlaySE - adds r0, r5, 0 - movs r1, 0 - bl sub_810C1C8 - adds r0, r5, 0 - bl sub_810C23C - b _0810C1AC -_0810C190: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0810C1BA - movs r0, 0x5 - bl PlaySE - adds r0, r5, 0 - movs r1, 0 - bl sub_810C1C8 - movs r0, 0 - bl sub_810BDAC -_0810C1AC: - ldr r0, _0810C1C0 @ =gTasks - lsls r1, r5, 2 - adds r1, r5 - lsls r1, 3 - adds r1, r0 - ldr r0, _0810C1C4 @ =sub_810BF7C - str r0, [r1] -_0810C1BA: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0810C1C0: .4byte gTasks -_0810C1C4: .4byte sub_810BF7C - thumb_func_end sub_810C0C8 - - thumb_func_start sub_810C1C8 -sub_810C1C8: @ 810C1C8 - push {r4-r6,lr} - lsls r0, 24 - lsrs r2, r0, 24 - lsls r1, 24 - ldr r6, _0810C22C @ =0x00001005 - cmp r1, 0 - bne _0810C1D8 - movs r6, 0x5 -_0810C1D8: - ldr r1, _0810C230 @ =gTasks - lsls r0, r2, 2 - adds r0, r2 - lsls r0, 3 - adds r0, r1 - ldr r2, _0810C234 @ =gUnknown_02039248 - ldrb r1, [r2, 0x1] - ldrh r0, [r0, 0x8] - subs r0, r1 - lsls r1, r0, 16 - lsrs r0, r1, 16 - cmp r0, 0x8 - bhi _0810C226 - asrs r0, r1, 16 - ldrb r2, [r2] - cmp r0, r2 - beq _0810C226 - movs r2, 0 - lsls r0, 1 - adds r1, r0, 0x1 - lsls r5, r1, 5 - ldr r3, _0810C238 @ =gBGTilemapBuffers + 0x1000 - adds r0, 0x2 - lsls r4, r0, 5 -_0810C208: - adds r0, r2, 0 - adds r0, 0xF - adds r1, r5, r0 - lsls r1, 1 - adds r1, r3 - strh r6, [r1] - adds r0, r4, r0 - lsls r0, 1 - adds r0, r3 - strh r6, [r0] - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0xD - bls _0810C208 -_0810C226: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0810C22C: .4byte 0x00001005 -_0810C230: .4byte gTasks -_0810C234: .4byte gUnknown_02039248 -_0810C238: .4byte gBGTilemapBuffers + 0x1000 - thumb_func_end sub_810C1C8 - - thumb_func_start sub_810C23C -sub_810C23C: @ 810C23C - push {r4-r7,lr} - lsls r0, 24 - lsrs r1, r0, 24 - ldr r7, _0810C25C @ =gUnknown_02039248 - ldrb r0, [r7] - ldrb r2, [r7, 0x1] - adds r0, r2 - lsls r0, 24 - lsrs r0, 24 - ldrb r2, [r7, 0x2] - cmp r0, r2 - bne _0810C260 - movs r0, 0 - bl sub_810BDAC - b _0810C2A2 - .align 2, 0 -_0810C25C: .4byte gUnknown_02039248 -_0810C260: - ldr r4, _0810C2A8 @ =gSaveBlock1 - lsls r3, r0, 3 - movs r0, 0xFF - lsls r0, 3 - adds r4, r0 - adds r3, r4 - ldr r5, [r3] - ldr r6, [r3, 0x4] - ldr r0, _0810C2AC @ =gTasks - lsls r2, r1, 2 - adds r2, r1 - lsls r2, 3 - adds r2, r0 - movs r1, 0x8 - ldrsh r0, [r2, r1] - lsls r0, 3 - adds r0, r4 - ldr r1, [r0, 0x4] - ldr r0, [r0] - str r0, [r3] - str r1, [r3, 0x4] - movs r1, 0x8 - ldrsh r0, [r2, r1] - lsls r0, 3 - adds r0, r4 - str r5, [r0] - str r6, [r0, 0x4] - ldrb r0, [r7, 0x1] - bl sub_810BB88 - movs r0, 0 - bl sub_810BDAC -_0810C2A2: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0810C2A8: .4byte gSaveBlock1 -_0810C2AC: .4byte gTasks - thumb_func_end sub_810C23C - - thumb_func_start sub_810C2B0 -sub_810C2B0: @ 810C2B0 - push {lr} - movs r0, 0 - bl DestroyVerticalScrollIndicator - movs r0, 0x1 - bl DestroyVerticalScrollIndicator - bl BuyMenuFreeMemory - pop {r0} - bx r0 - thumb_func_end sub_810C2B0 - - thumb_func_start sub_810C2C8 -sub_810C2C8: @ 810C2C8 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - ldr r0, _0810C308 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _0810C300 - ldr r4, _0810C30C @ =gUnknown_02039244 - ldrb r0, [r4] - cmp r0, 0x3 - bne _0810C2E8 - ldr r1, _0810C310 @ =gUnknown_0300485C - ldr r0, _0810C314 @ =sub_8080990 - str r0, [r1] -_0810C2E8: - bl sub_810C2B0 - ldr r0, _0810C318 @ =gUnknown_083F7EA8 - ldrb r1, [r4] - lsls r1, 2 - adds r1, r0 - ldr r0, [r1] - bl SetMainCallback2 - adds r0, r5, 0 - bl DestroyTask -_0810C300: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0810C308: .4byte gPaletteFade -_0810C30C: .4byte gUnknown_02039244 -_0810C310: .4byte gUnknown_0300485C -_0810C314: .4byte sub_8080990 -_0810C318: .4byte gUnknown_083F7EA8 - thumb_func_end sub_810C2C8 - - thumb_func_start sub_810C31C -sub_810C31C: @ 810C31C - push {r4,r5,lr} - sub sp, 0x4 - lsls r0, 24 - lsrs r4, r0, 24 - movs r0, 0x1 - negs r0, r0 - movs r5, 0 - str r5, [sp] - movs r1, 0 - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - ldr r0, _0810C358 @ =gUnknown_02039244 - ldrb r0, [r0] - cmp r0, 0x1 - bls _0810C342 - ldr r0, _0810C35C @ =gScriptItemId - strh r5, [r0] -_0810C342: - ldr r0, _0810C360 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _0810C364 @ =sub_810C2C8 - str r0, [r1] - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0810C358: .4byte gUnknown_02039244 -_0810C35C: .4byte gScriptItemId -_0810C360: .4byte gTasks -_0810C364: .4byte sub_810C2C8 - thumb_func_end sub_810C31C - - thumb_func_start sub_810C368 -sub_810C368: @ 810C368 - push {r4-r6,lr} - sub sp, 0x8 - lsls r0, 24 - lsrs r6, r0, 24 - movs r4, 0 - ldr r0, _0810C3E8 @ =gUnknown_02039244 - ldrb r0, [r0] - cmp r0, 0x1 - bls _0810C37C - movs r4, 0x2 -_0810C37C: - movs r0, 0 - bl sub_80F98A4 - movs r0, 0x1 - bl sub_80F98A4 - ldr r0, _0810C3EC @ =gWindowConfig_81E6E50 - bl BasicInitMenuWindow - adds r1, r4, 0x4 - movs r0, 0x7 - movs r2, 0xD - movs r3, 0xB - bl MenuDrawTextWindow - adds r4, 0x5 - ldr r5, _0810C3F0 @ =gUnknown_0203924C - ldrb r2, [r5] - ldr r3, _0810C3F4 @ =gUnknown_083F7EF4 - ldr r0, _0810C3F8 @ =gUnknown_03000758 - ldr r0, [r0] - str r0, [sp] - movs r0, 0x8 - adds r1, r4, 0 - bl PrintMenuItemsReordered - ldrb r3, [r5] - movs r0, 0 - str r0, [sp] - movs r0, 0x5 - str r0, [sp, 0x4] - movs r0, 0 - movs r1, 0x8 - adds r2, r4, 0 - bl InitMenu - ldr r2, _0810C3FC @ =gScriptItemId - ldr r1, _0810C400 @ =gUnknown_02039248 - ldrb r0, [r1] - ldrb r1, [r1, 0x1] - adds r0, r1 - strh r0, [r2] - ldr r1, _0810C404 @ =gTasks - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - adds r0, r1 - ldr r1, _0810C408 @ =sub_810C40C - str r1, [r0] - add sp, 0x8 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0810C3E8: .4byte gUnknown_02039244 -_0810C3EC: .4byte gWindowConfig_81E6E50 -_0810C3F0: .4byte gUnknown_0203924C -_0810C3F4: .4byte gUnknown_083F7EF4 -_0810C3F8: .4byte gUnknown_03000758 -_0810C3FC: .4byte gScriptItemId -_0810C400: .4byte gUnknown_02039248 -_0810C404: .4byte gTasks -_0810C408: .4byte sub_810C40C - thumb_func_end sub_810C368 - - thumb_func_start sub_810C40C -sub_810C40C: @ 810C40C - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - adds r4, r5, 0 - ldr r2, _0810C43C @ =gMain - ldrh r1, [r2, 0x30] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _0810C440 - bl GetMenuCursorPos - lsls r0, 24 - cmp r0, 0 - beq _0810C4BC - movs r0, 0x5 - bl PlaySE - movs r0, 0x1 - negs r0, r0 - bl MoveMenuCursor - b _0810C4BC - .align 2, 0 -_0810C43C: .4byte gMain -_0810C440: - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _0810C46C - bl GetMenuCursorPos - lsls r0, 24 - lsrs r0, 24 - ldr r1, _0810C468 @ =gUnknown_0203924C - ldrb r1, [r1] - subs r1, 0x1 - cmp r0, r1 - beq _0810C4BC - movs r0, 0x5 - bl PlaySE - movs r0, 0x1 - bl MoveMenuCursor - b _0810C4BC - .align 2, 0 -_0810C468: .4byte gUnknown_0203924C -_0810C46C: - ldrh r1, [r2, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0810C4A8 - movs r0, 0x5 - bl PlaySE - ldr r4, _0810C4A0 @ =gUnknown_083F7EF4 - bl GetMenuCursorPos - lsls r0, 24 - lsrs r0, 24 - ldr r1, _0810C4A4 @ =gUnknown_03000758 - ldr r1, [r1] - adds r1, r0 - ldrb r0, [r1] - lsls r0, 3 - adds r4, 0x4 - adds r0, r4 - ldr r1, [r0] - adds r0, r5, 0 - bl _call_via_r1 - b _0810C4BC - .align 2, 0 -_0810C4A0: .4byte gUnknown_083F7EF4 -_0810C4A4: .4byte gUnknown_03000758 -_0810C4A8: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0810C4BC - movs r0, 0x5 - bl PlaySE - adds r0, r4, 0 - bl sub_810C748 -_0810C4BC: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_810C40C - - thumb_func_start sub_810C4C4 -sub_810C4C4: @ 810C4C4 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _0810C4F8 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _0810C4F0 - bl sub_810C2B0 - ldr r0, _0810C4FC @ =gScriptItemId - ldrh r0, [r0] - lsls r0, 3 - ldr r1, _0810C500 @ =gSaveBlock1 + 0x7F8 - adds r0, r1 - ldr r1, _0810C504 @ =sub_810B96C - bl sub_8136130 - adds r0, r4, 0 - bl DestroyTask -_0810C4F0: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0810C4F8: .4byte gPaletteFade -_0810C4FC: .4byte gScriptItemId -_0810C500: .4byte gSaveBlock1 + 0x7F8 -_0810C504: .4byte sub_810B96C - thumb_func_end sub_810C4C4 - - thumb_func_start sub_810C508 -sub_810C508: @ 810C508 - push {r4,lr} - sub sp, 0x4 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0x1 - negs r0, r0 - movs r1, 0 - str r1, [sp] - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - ldr r1, _0810C538 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _0810C53C @ =sub_810C4C4 - str r1, [r0] - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0810C538: .4byte gTasks -_0810C53C: .4byte sub_810C4C4 - thumb_func_end sub_810C508 - - thumb_func_start sub_810C540 -sub_810C540: @ 810C540 - push {r4,r5,lr} - adds r5, r0, 0 - lsls r5, 24 - lsrs r5, 24 - ldr r0, _0810C5A0 @ =gWindowConfig_81E6E50 - bl BasicInitMenuWindow - bl sub_8072DEC - movs r0, 0x7 - movs r1, 0x4 - movs r2, 0xD - movs r3, 0xB - bl MenuZeroFillWindowRect - ldr r0, _0810C5A4 @ =gStringVar1 - ldr r4, _0810C5A8 @ =gPokeblockNames - ldr r3, _0810C5AC @ =gSaveBlock1 - ldr r2, _0810C5B0 @ =gUnknown_02039248 - ldrb r1, [r2] - ldrb r2, [r2, 0x1] - adds r1, r2 - lsls r1, 3 - adds r1, r3 - movs r2, 0xFF - lsls r2, 3 - adds r1, r2 - ldrb r1, [r1] - lsls r1, 2 - adds r1, r4 - ldr r1, [r1] - bl StringCopy - ldr r4, _0810C5B4 @ =gStringVar4 - ldr r1, _0810C5B8 @ =gContestStatsText_ThrowAwayPrompt - adds r0, r4, 0 - bl StringExpandPlaceholders - ldr r2, _0810C5BC @ =sub_810C5EC - adds r0, r5, 0 - adds r1, r4, 0 - movs r3, 0 - bl DisplayItemMessageOnField - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0810C5A0: .4byte gWindowConfig_81E6E50 -_0810C5A4: .4byte gStringVar1 -_0810C5A8: .4byte gPokeblockNames -_0810C5AC: .4byte gSaveBlock1 -_0810C5B0: .4byte gUnknown_02039248 -_0810C5B4: .4byte gStringVar4 -_0810C5B8: .4byte gContestStatsText_ThrowAwayPrompt -_0810C5BC: .4byte sub_810C5EC - thumb_func_end sub_810C540 - - thumb_func_start sub_810C5C0 -sub_810C5C0: @ 810C5C0 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0x1 - movs r1, 0x1 - bl sub_80F979C - ldr r1, _0810C5E4 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _0810C5E8 @ =sub_810C540 - str r1, [r0] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0810C5E4: .4byte gTasks -_0810C5E8: .4byte sub_810C540 - thumb_func_end sub_810C5C0 - - thumb_func_start sub_810C5EC -sub_810C5EC: @ 810C5EC - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0x7 - movs r1, 0x6 - movs r2, 0x1 - bl DisplayYesNoMenu - ldr r1, _0810C60C @ =gUnknown_083F7F24 - adds r0, r4, 0 - bl sub_80F914C - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0810C60C: .4byte gUnknown_083F7F24 - thumb_func_end sub_810C5EC - - thumb_func_start sub_810C610 -sub_810C610: @ 810C610 - push {r4,r5,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0x7 - movs r1, 0x6 - movs r2, 0xD - movs r3, 0xB - bl MenuZeroFillWindowRect - ldr r1, _0810C658 @ =gUnknown_02039248 - ldrb r0, [r1, 0x1] - ldrb r1, [r1] - adds r0, r1 - lsls r0, 24 - lsrs r0, 24 - bl sub_810CA6C - ldr r5, _0810C65C @ =gStringVar4 - ldr r1, _0810C660 @ =gContestStatsText_WasThrownAway - adds r0, r5, 0 - bl StringExpandPlaceholders - ldr r2, _0810C664 @ =sub_810C704 - adds r0, r4, 0 - adds r1, r5, 0 - movs r3, 0 - bl DisplayItemMessageOnField - bl sub_810BC98 - bl sub_810BD08 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0810C658: .4byte gUnknown_02039248 -_0810C65C: .4byte gStringVar4 -_0810C660: .4byte gContestStatsText_WasThrownAway -_0810C664: .4byte sub_810C704 - thumb_func_end sub_810C610 - - thumb_func_start sub_810C668 -sub_810C668: @ 810C668 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - movs r0, 0 - bl sub_80F98DC - movs r0, 0x1 - bl sub_80F98DC - ldr r2, _0810C6CC @ =gUnknown_02039248 - ldrb r0, [r2, 0x2] - ldrb r1, [r2, 0x3] - cmp r0, r1 - bls _0810C698 - ldrb r0, [r2, 0x1] - ldrb r1, [r2, 0x3] - adds r0, r1 - ldrb r2, [r2, 0x2] - cmp r0, r2 - beq _0810C698 - movs r0, 0x1 - movs r1, 0 - bl sub_80F979C -_0810C698: - ldr r0, _0810C6D0 @ =gWindowConfig_81E6E50 - bl BasicInitMenuWindow - movs r0, 0x7 - movs r1, 0x6 - movs r2, 0xD - movs r3, 0xB - bl MenuZeroFillWindowRect - movs r0, 0 - movs r1, 0xE - movs r2, 0x1D - movs r3, 0x13 - bl MenuZeroFillWindowRect - ldr r1, _0810C6D4 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _0810C6D8 @ =sub_810BF7C - str r1, [r0] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0810C6CC: .4byte gUnknown_02039248 -_0810C6D0: .4byte gWindowConfig_81E6E50 -_0810C6D4: .4byte gTasks -_0810C6D8: .4byte sub_810BF7C - thumb_func_end sub_810C668 - - thumb_func_start sub_810C6DC -sub_810C6DC: @ 810C6DC - push {lr} - lsls r0, 24 - lsrs r2, r0, 24 - ldr r0, _0810C700 @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _0810C6F6 - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0810C6FC -_0810C6F6: - adds r0, r2, 0 - bl sub_810C668 -_0810C6FC: - pop {r0} - bx r0 - .align 2, 0 -_0810C700: .4byte gMain - thumb_func_end sub_810C6DC - - thumb_func_start sub_810C704 -sub_810C704: @ 810C704 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r0, _0810C738 @ =gWindowConfig_81E6E34 - bl BasicInitMenuWindow - ldr r0, _0810C73C @ =gUnknown_02039248 - ldrb r0, [r0, 0x1] - bl sub_810BC84 - movs r0, 0x1 - movs r1, 0x1 - bl sub_80F979C - ldr r1, _0810C740 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _0810C744 @ =sub_810C6DC - str r1, [r0] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0810C738: .4byte gWindowConfig_81E6E34 -_0810C73C: .4byte gUnknown_02039248 -_0810C740: .4byte gTasks -_0810C744: .4byte sub_810C6DC - thumb_func_end sub_810C704 - - thumb_func_start sub_810C748 -sub_810C748: @ 810C748 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0 - bl sub_80F98DC - movs r0, 0x1 - bl sub_80F98DC - bl sub_8072DEC - movs r0, 0x7 - movs r1, 0x4 - movs r2, 0xD - movs r3, 0xB - bl MenuZeroFillWindowRect - ldr r1, _0810C780 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _0810C784 @ =sub_810BF7C - str r1, [r0] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0810C780: .4byte gTasks -_0810C784: .4byte sub_810BF7C - thumb_func_end sub_810C748 - - thumb_func_start sub_810C788 -sub_810C788: @ 810C788 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - ldr r0, _0810C834 @ =gEnemyParty - bl GetNature - lsls r0, 24 - lsrs r0, 24 - ldr r7, _0810C838 @ =gScriptItemId - ldrh r1, [r7] - lsls r1, 3 - ldr r5, _0810C83C @ =gSaveBlock1 + 0x7F8 - adds r1, r5 - bl sub_810CAE4 - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - ldr r0, _0810C840 @ =gUnknown_030041C0 - ldr r2, _0810C844 @ =gPokeblockNames - ldr r1, _0810C848 @ =0xfffff808 - adds r5, r1 - ldrh r1, [r7] - lsls r1, 3 - adds r1, r5 - movs r6, 0xFF - lsls r6, 3 - adds r1, r6 - ldrb r1, [r1] - lsls r1, 2 - adds r1, r2 - ldr r1, [r1] - bl StringCopy - ldrb r0, [r7] - bl sub_810CA6C - ldrh r0, [r7] - lsls r0, 3 - adds r0, r5 - adds r0, r6 - ldrb r0, [r0] - lsls r0, 8 - strh r0, [r7] - lsls r4, 16 - asrs r4, 16 - cmp r4, 0 - bne _0810C7F4 - adds r0, 0x1 - strh r0, [r7] -_0810C7F4: - cmp r4, 0 - ble _0810C7FE - ldrh r0, [r7] - adds r0, 0x2 - strh r0, [r7] -_0810C7FE: - cmp r4, 0 - bge _0810C808 - ldrh r0, [r7] - adds r0, 0x3 - strh r0, [r7] -_0810C808: - movs r0, 0x1 - negs r0, r0 - movs r1, 0 - str r1, [sp] - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - ldr r1, _0810C84C @ =gTasks - mov r2, r8 - lsls r0, r2, 2 - add r0, r8 - lsls r0, 3 - adds r0, r1 - ldr r1, _0810C850 @ =sub_810C2C8 - str r1, [r0] - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0810C834: .4byte gEnemyParty -_0810C838: .4byte gScriptItemId -_0810C83C: .4byte gSaveBlock1 + 0x7F8 -_0810C840: .4byte gUnknown_030041C0 -_0810C844: .4byte gPokeblockNames -_0810C848: .4byte 0xfffff808 -_0810C84C: .4byte gTasks -_0810C850: .4byte sub_810C2C8 - thumb_func_end sub_810C788 - - thumb_func_start sub_810C854 -sub_810C854: @ 810C854 - push {r4,r5,lr} - sub sp, 0x4 - adds r5, r0, 0 - lsls r5, 24 - lsrs r5, 24 - ldr r4, _0810C8B8 @ =gScriptItemId - ldrb r0, [r4] - bl SafariZoneActivatePokeblockFeeder - ldr r0, _0810C8BC @ =gStringVar1 - ldr r3, _0810C8C0 @ =gPokeblockNames - ldr r2, _0810C8C4 @ =gSaveBlock1 - ldrh r1, [r4] - lsls r1, 3 - adds r1, r2 - movs r2, 0xFF - lsls r2, 3 - adds r1, r2 - ldrb r1, [r1] - lsls r1, 2 - adds r1, r3 - ldr r1, [r1] - bl StringCopy - ldr r1, _0810C8C8 @ =gScriptResult - ldrh r0, [r4] - strh r0, [r1] - lsls r0, 24 - lsrs r0, 24 - bl sub_810CA6C - movs r0, 0x1 - negs r0, r0 - movs r1, 0 - str r1, [sp] - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - ldr r1, _0810C8CC @ =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r0, r1 - ldr r1, _0810C8D0 @ =sub_810C2C8 - str r1, [r0] - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0810C8B8: .4byte gScriptItemId -_0810C8BC: .4byte gStringVar1 -_0810C8C0: .4byte gPokeblockNames -_0810C8C4: .4byte gSaveBlock1 -_0810C8C8: .4byte gScriptResult -_0810C8CC: .4byte gTasks -_0810C8D0: .4byte sub_810C2C8 - thumb_func_end sub_810C854 - - thumb_func_start sub_810C8D4 -sub_810C8D4: @ 810C8D4 - push {r4,r5,lr} - adds r4, r0, 0 - movs r1, 0x2E - ldrsh r0, [r4, r1] - cmp r0, 0x1 - ble _0810C8E4 - movs r0, 0 - strh r0, [r4, 0x2E] -_0810C8E4: - movs r0, 0x2E - ldrsh r5, [r4, r0] - cmp r5, 0 - beq _0810C8F2 - cmp r5, 0x1 - beq _0810C918 - b _0810C944 -_0810C8F2: - ldrb r1, [r4, 0x1] - movs r0, 0x4 - negs r0, r0 - ands r0, r1 - movs r1, 0x1 - orrs r0, r1 - strb r0, [r4, 0x1] - ldr r0, _0810C914 @ =gUnknown_083F7F70 - str r0, [r4, 0x10] - adds r0, r4, 0 - bl InitSpriteAffineAnim - movs r0, 0x1 - strh r0, [r4, 0x2E] - strh r5, [r4, 0x30] - b _0810C944 - .align 2, 0 -_0810C914: .4byte gUnknown_083F7F70 -_0810C918: - ldrh r0, [r4, 0x30] - adds r0, 0x1 - movs r2, 0 - strh r0, [r4, 0x30] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0xB - ble _0810C944 - ldrb r1, [r4, 0x1] - movs r0, 0x4 - negs r0, r0 - ands r0, r1 - strb r0, [r4, 0x1] - strh r2, [r4, 0x2E] - strh r2, [r4, 0x30] - ldrb r0, [r4, 0x3] - lsls r0, 26 - lsrs r0, 27 - bl FreeOamMatrix - ldr r0, _0810C94C @ =SpriteCallbackDummy - str r0, [r4, 0x1C] -_0810C944: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0810C94C: .4byte SpriteCallbackDummy - thumb_func_end sub_810C8D4 - - thumb_func_start sub_810C950 -sub_810C950: @ 810C950 - lsls r0, 24 - ldr r1, _0810C988 @ =gSaveBlock1 - lsrs r0, 21 - adds r0, r1 - movs r2, 0xFF - lsls r2, 3 - adds r1, r0, r2 - movs r2, 0 - strb r2, [r1] - ldr r3, _0810C98C @ =0x000007f9 - adds r1, r0, r3 - strb r2, [r1] - adds r3, 0x1 - adds r1, r0, r3 - strb r2, [r1] - adds r3, 0x1 - adds r1, r0, r3 - strb r2, [r1] - adds r3, 0x1 - adds r1, r0, r3 - strb r2, [r1] - adds r3, 0x1 - adds r1, r0, r3 - strb r2, [r1] - ldr r1, _0810C990 @ =0x000007fe - adds r0, r1 - strb r2, [r0] - bx lr - .align 2, 0 -_0810C988: .4byte gSaveBlock1 -_0810C98C: .4byte 0x000007f9 -_0810C990: .4byte 0x000007fe - thumb_func_end sub_810C950 - - thumb_func_start sub_810C994 -sub_810C994: @ 810C994 - push {r4,lr} - movs r4, 0 -_0810C998: - adds r0, r4, 0 - bl sub_810C950 - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x27 - bls _0810C998 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_810C994 - - thumb_func_start sub_810C9B0 -sub_810C9B0: @ 810C9B0 - push {r4-r6,lr} - adds r6, r0, 0 - movs r1, 0x1 - bl sub_810CA9C - lsls r0, 24 - lsrs r5, r0, 24 - movs r1, 0x1 -_0810C9C0: - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_810CA9C - lsls r0, 24 - lsrs r0, 24 - cmp r5, r0 - bcs _0810C9D8 - adds r5, r0, 0 -_0810C9D8: - adds r1, r4, 0 - cmp r1, 0x4 - bls _0810C9C0 - adds r0, r5, 0 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_810C9B0 - - thumb_func_start sub_810C9E8 -sub_810C9E8: @ 810C9E8 - push {lr} - movs r1, 0x6 - bl sub_810CA9C - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x63 - bls _0810C9FA - movs r0, 0x63 -_0810C9FA: - pop {r1} - bx r1 - thumb_func_end sub_810C9E8 - - thumb_func_start sub_810CA00 -sub_810CA00: @ 810CA00 - push {lr} - movs r1, 0 - ldr r3, _0810CA1C @ =gSaveBlock1 - movs r2, 0xFF - lsls r2, 3 -_0810CA0A: - lsls r0, r1, 3 - adds r0, r3 - adds r0, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _0810CA20 - lsls r0, r1, 24 - asrs r0, 24 - b _0810CA2E - .align 2, 0 -_0810CA1C: .4byte gSaveBlock1 -_0810CA20: - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x27 - bls _0810CA0A - movs r0, 0x1 - negs r0, r0 -_0810CA2E: - pop {r1} - bx r1 - thumb_func_end sub_810CA00 - - thumb_func_start sub_810CA34 -sub_810CA34: @ 810CA34 - push {r4,lr} - adds r4, r0, 0 - bl sub_810CA00 - lsls r0, 24 - asrs r2, r0, 24 - movs r0, 0x1 - negs r0, r0 - cmp r2, r0 - beq _0810CA64 - ldr r0, _0810CA60 @ =gSaveBlock1 - lsls r2, 3 - movs r1, 0xFF - lsls r1, 3 - adds r0, r1 - adds r2, r0 - ldr r0, [r4] - ldr r1, [r4, 0x4] - str r0, [r2] - str r1, [r2, 0x4] - movs r0, 0x1 - b _0810CA66 - .align 2, 0 -_0810CA60: .4byte gSaveBlock1 -_0810CA64: - movs r0, 0 -_0810CA66: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_810CA34 - - thumb_func_start sub_810CA6C -sub_810CA6C: @ 810CA6C - push {lr} - lsls r0, 24 - lsrs r2, r0, 24 - ldr r1, _0810CA90 @ =gSaveBlock1 - lsls r0, r2, 3 - adds r0, r1 - movs r1, 0xFF - lsls r1, 3 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _0810CA94 - adds r0, r2, 0 - bl sub_810C950 - movs r0, 0x1 - b _0810CA96 - .align 2, 0 -_0810CA90: .4byte gSaveBlock1 -_0810CA94: - movs r0, 0 -_0810CA96: - pop {r1} - bx r1 - thumb_func_end sub_810CA6C - - thumb_func_start sub_810CA9C -sub_810CA9C: @ 810CA9C - push {lr} - lsls r1, 24 - lsrs r1, 24 - adds r2, r1, 0 - cmp r1, 0 - bne _0810CAAC - ldrb r0, [r0] - b _0810CADE -_0810CAAC: - cmp r1, 0x1 - bne _0810CAB4 - ldrb r0, [r0, 0x1] - b _0810CADE -_0810CAB4: - cmp r1, 0x2 - bne _0810CABC - ldrb r0, [r0, 0x2] - b _0810CADE -_0810CABC: - cmp r1, 0x3 - bne _0810CAC4 - ldrb r0, [r0, 0x3] - b _0810CADE -_0810CAC4: - cmp r1, 0x4 - bne _0810CACC - ldrb r0, [r0, 0x4] - b _0810CADE -_0810CACC: - cmp r1, 0x5 - bne _0810CAD4 - ldrb r0, [r0, 0x5] - b _0810CADE -_0810CAD4: - cmp r2, 0x6 - beq _0810CADC - movs r0, 0 - b _0810CADE -_0810CADC: - ldrb r0, [r0, 0x6] -_0810CADE: - pop {r1} - bx r1 - thumb_func_end sub_810CA9C - - thumb_func_start sub_810CAE4 -sub_810CAE4: @ 810CAE4 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - mov r8, r1 - lsls r0, 24 - lsrs r0, 24 - movs r6, 0 - movs r4, 0 - ldr r1, _0810CB40 @ =gUnknown_083F7E28 - mov r9, r1 - lsls r1, r0, 2 - adds r7, r1, r0 -_0810CAFE: - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - mov r0, r8 - adds r1, r5, 0 - bl sub_810CA9C - lsls r0, 16 - asrs r1, r0, 16 - cmp r1, 0 - ble _0810CB2A - adds r0, r7, r4 - add r0, r9 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - muls r1, r0 - lsls r0, r6, 16 - asrs r0, 16 - adds r0, r1 - lsls r0, 16 - lsrs r6, r0, 16 -_0810CB2A: - adds r4, r5, 0 - cmp r4, 0x4 - bls _0810CAFE - lsls r0, r6, 16 - asrs r0, 16 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0810CB40: .4byte gUnknown_083F7E28 - thumb_func_end sub_810CAE4 - - thumb_func_start sub_810CB44 -sub_810CB44: @ 810CB44 - push {r4,lr} - adds r4, r1, 0 - movs r1, 0 - bl sub_810CA9C - lsls r0, 24 - ldr r1, _0810CB64 @ =gPokeblockNames - lsrs r0, 22 - adds r0, r1 - ldr r1, [r0] - adds r0, r4, 0 - bl StringCopy - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0810CB64: .4byte gPokeblockNames - thumb_func_end sub_810CB44 - - thumb_func_start sub_810CB68 -sub_810CB68: @ 810CB68 - push {r4-r7,lr} - adds r6, r1, 0 - lsls r0, 24 - lsrs r5, r0, 24 - movs r4, 0 - ldr r7, _0810CB98 @ =gPokeblockNames -_0810CB74: - lsls r1, r4, 3 - ldr r0, _0810CB9C @ =gUnknown_083F7F9C - adds r1, r0 - adds r0, r5, 0 - bl sub_810CAE4 - lsls r0, 16 - cmp r0, 0 - ble _0810CBA0 - adds r0, r4, 0x1 - lsls r0, 2 - adds r0, r7 - ldr r1, [r0] - adds r0, r6, 0 - bl StringCopy - movs r0, 0x1 - b _0810CBAC - .align 2, 0 -_0810CB98: .4byte gPokeblockNames -_0810CB9C: .4byte gUnknown_083F7F9C -_0810CBA0: - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x4 - bls _0810CB74 - movs r0, 0 -_0810CBAC: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_810CB68 - - thumb_func_start SetUpFieldMove_Flash -SetUpFieldMove_Flash: @ 810CBB4 - push {lr} - ldr r0, _0810CBDC @ =gMapHeader - ldrb r0, [r0, 0x15] - cmp r0, 0x1 - bne _0810CBF4 - ldr r0, _0810CBE0 @ =0x00000828 - bl FlagGet - lsls r0, 24 - cmp r0, 0 - bne _0810CBF4 - ldr r1, _0810CBE4 @ =gUnknown_0300485C - ldr r0, _0810CBE8 @ =sub_808AB90 - str r0, [r1] - ldr r1, _0810CBEC @ =gUnknown_03005CE4 - ldr r0, _0810CBF0 @ =sub_810CBFC - str r0, [r1] - movs r0, 0x1 - b _0810CBF6 - .align 2, 0 -_0810CBDC: .4byte gMapHeader -_0810CBE0: .4byte 0x00000828 -_0810CBE4: .4byte gUnknown_0300485C -_0810CBE8: .4byte sub_808AB90 -_0810CBEC: .4byte gUnknown_03005CE4 -_0810CBF0: .4byte sub_810CBFC -_0810CBF4: - movs r0, 0 -_0810CBF6: - pop {r1} - bx r1 - thumb_func_end SetUpFieldMove_Flash - - thumb_func_start sub_810CBFC -sub_810CBFC: @ 810CBFC - push {lr} - bl oei_task_add - lsls r0, 24 - lsrs r0, 24 - ldr r2, _0810CC24 @ =gUnknown_0202FF84 - ldr r1, _0810CC28 @ =gUnknown_03005CE0 - ldrb r1, [r1] - str r1, [r2] - ldr r2, _0810CC2C @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - ldr r2, _0810CC30 @ =sub_810CC34 - lsrs r0, r2, 16 - strh r0, [r1, 0x18] - strh r2, [r1, 0x1A] - pop {r0} - bx r0 - .align 2, 0 -_0810CC24: .4byte gUnknown_0202FF84 -_0810CC28: .4byte gUnknown_03005CE0 -_0810CC2C: .4byte gTasks -_0810CC30: .4byte sub_810CC34 - thumb_func_end sub_810CBFC - - thumb_func_start sub_810CC34 -sub_810CC34: @ 810CC34 - push {lr} - movs r0, 0xCF - bl PlaySE - ldr r0, _0810CC4C @ =0x00000828 - bl FlagSet - ldr r0, _0810CC50 @ =gUnknown_081B694A - bl ScriptContext1_SetupScript - pop {r0} - bx r0 - .align 2, 0 -_0810CC4C: .4byte 0x00000828 -_0810CC50: .4byte gUnknown_081B694A - thumb_func_end sub_810CC34 - - thumb_func_start sub_810CC54 -sub_810CC54: @ 810CC54 - push {lr} - bl RunTasks - bl AnimateSprites - bl BuildOamBuffer - bl UpdatePaletteFade - pop {r0} - bx r0 - thumb_func_end sub_810CC54 - - thumb_func_start sub_810CC6C -sub_810CC6C: @ 810CC6C - push {lr} - bl LoadOam - bl ProcessSpriteCopyRequests - bl TransferPlttBuffer - pop {r0} - bx r0 - thumb_func_end sub_810CC6C - - thumb_func_start sub_810CC80 -sub_810CC80: @ 810CC80 - push {r4,lr} - sub sp, 0x8 - movs r0, 0 - bl SetVBlankCallback - movs r0, 0x80 - lsls r0, 19 - movs r1, 0 - strh r1, [r0] - adds r0, 0xC - strh r1, [r0] - subs r0, 0x2 - strh r1, [r0] - subs r0, 0x2 - strh r1, [r0] - adds r0, 0x10 - strh r1, [r0] - adds r0, 0x2 - strh r1, [r0] - subs r0, 0x6 - strh r1, [r0] - adds r0, 0x2 - strh r1, [r0] - subs r0, 0x6 - strh r1, [r0] - adds r0, 0x2 - strh r1, [r0] - mov r0, sp - strh r1, [r0] - ldr r1, _0810CD34 @ =0x040000d4 - str r0, [r1] - movs r0, 0xC0 - lsls r0, 19 - str r0, [r1, 0x4] - ldr r0, _0810CD38 @ =0x8100c000 - str r0, [r1, 0x8] - ldr r0, [r1, 0x8] - movs r4, 0 - str r4, [sp, 0x4] - add r0, sp, 0x4 - str r0, [r1] - movs r0, 0xE0 - lsls r0, 19 - str r0, [r1, 0x4] - ldr r0, _0810CD3C @ =0x85000100 - str r0, [r1, 0x8] - ldr r0, [r1, 0x8] - mov r0, sp - strh r4, [r0] - str r0, [r1] - ldr r0, _0810CD40 @ =0x05000002 - str r0, [r1, 0x4] - ldr r0, _0810CD44 @ =0x810001ff - str r0, [r1, 0x8] - ldr r0, [r1, 0x8] - bl ResetPaletteFade - bl ResetTasks - bl ResetSpriteData - ldr r3, _0810CD48 @ =0x04000208 - ldrh r2, [r3] - strh r4, [r3] - ldr r4, _0810CD4C @ =0x04000200 - ldrh r0, [r4] - movs r1, 0x1 - orrs r0, r1 - strh r0, [r4] - strh r2, [r3] - ldr r0, _0810CD50 @ =sub_810CC6C - bl SetVBlankCallback - ldr r0, _0810CD54 @ =sub_810CC54 - bl SetMainCallback2 - bl sub_810CD5C - lsls r0, 24 - cmp r0, 0 - bne _0810CD2A - ldr r0, _0810CD58 @ =gMain - ldr r0, [r0, 0x8] - bl SetMainCallback2 -_0810CD2A: - add sp, 0x8 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0810CD34: .4byte 0x040000d4 -_0810CD38: .4byte 0x8100c000 -_0810CD3C: .4byte 0x85000100 -_0810CD40: .4byte 0x05000002 -_0810CD44: .4byte 0x810001ff -_0810CD48: .4byte 0x04000208 -_0810CD4C: .4byte 0x04000200 -_0810CD50: .4byte sub_810CC6C -_0810CD54: .4byte sub_810CC54 -_0810CD58: .4byte gMain - thumb_func_end sub_810CC80 - - thumb_func_start sub_810CD5C -sub_810CD5C: @ 810CD5C - push {r4-r7,lr} - bl get_map_light_from_warp0 - lsls r0, 24 - lsrs r6, r0, 24 - bl sav1_map_get_light_level - lsls r0, 24 - lsrs r5, r0, 24 - movs r3, 0 - ldr r4, _0810CD9C @ =gUnknown_083F7FC4 - ldrb r0, [r4] - cmp r0, 0 - beq _0810CDB0 - adds r7, r4, 0 - adds r0, r4, 0x4 - mov r12, r0 -_0810CD7E: - lsls r2, r3, 3 - adds r1, r2, r7 - ldrb r0, [r1] - cmp r0, r6 - bne _0810CDA0 - ldrb r0, [r1, 0x1] - cmp r0, r5 - bne _0810CDA0 - mov r1, r12 - adds r0, r2, r1 - ldr r0, [r0] - bl _call_via_r0 - movs r0, 0x1 - b _0810CDB2 - .align 2, 0 -_0810CD9C: .4byte gUnknown_083F7FC4 -_0810CDA0: - adds r0, r3, 0x1 - lsls r0, 24 - lsrs r3, r0, 24 - lsls r0, r3, 3 - adds r0, r4 - ldrb r0, [r0] - cmp r0, 0 - bne _0810CD7E -_0810CDB0: - movs r0, 0 -_0810CDB2: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_810CD5C - - thumb_func_start sub_810CDB8 -sub_810CDB8: @ 810CDB8 - push {r4-r6,lr} - lsls r0, 24 - lsls r1, 24 - lsrs r5, r0, 24 - lsrs r4, r1, 24 - movs r3, 0 - ldr r1, _0810CDE4 @ =gUnknown_083F7FC4 - ldrb r0, [r1] - cmp r0, 0 - beq _0810CDF8 - adds r6, r1, 0 -_0810CDCE: - lsls r0, r3, 3 - adds r2, r0, r6 - ldrb r0, [r2] - cmp r0, r5 - bne _0810CDE8 - ldrb r0, [r2, 0x1] - cmp r0, r4 - bne _0810CDE8 - ldrb r0, [r2, 0x2] - b _0810CDFA - .align 2, 0 -_0810CDE4: .4byte gUnknown_083F7FC4 -_0810CDE8: - adds r0, r3, 0x1 - lsls r0, 24 - lsrs r3, r0, 24 - lsls r0, r3, 3 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _0810CDCE -_0810CDF8: - movs r0, 0 -_0810CDFA: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_810CDB8 - - thumb_func_start fade_type_for_given_maplight_pair -fade_type_for_given_maplight_pair: @ 810CE00 - push {r4-r6,lr} - lsls r0, 24 - lsls r1, 24 - lsrs r5, r0, 24 - lsrs r4, r1, 24 - movs r3, 0 - ldr r1, _0810CE2C @ =gUnknown_083F7FC4 - ldrb r0, [r1] - cmp r0, 0 - beq _0810CE40 - adds r6, r1, 0 -_0810CE16: - lsls r0, r3, 3 - adds r2, r0, r6 - ldrb r0, [r2] - cmp r0, r5 - bne _0810CE30 - ldrb r0, [r2, 0x1] - cmp r0, r4 - bne _0810CE30 - ldrb r0, [r2, 0x3] - b _0810CE42 - .align 2, 0 -_0810CE2C: .4byte gUnknown_083F7FC4 -_0810CE30: - adds r0, r3, 0x1 - lsls r0, 24 - lsrs r3, r0, 24 - lsls r0, r3, 3 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _0810CE16 -_0810CE40: - movs r0, 0 -_0810CE42: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end fade_type_for_given_maplight_pair - - thumb_func_start sub_810CE48 -sub_810CE48: @ 810CE48 - push {lr} - ldr r0, _0810CE58 @ =sub_810CE5C - movs r1, 0 - bl CreateTask - pop {r0} - bx r0 - .align 2, 0 -_0810CE58: .4byte sub_810CE5C - thumb_func_end sub_810CE48 - - thumb_func_start sub_810CE5C -sub_810CE5C: @ 810CE5C - lsls r0, 24 - lsrs r0, 24 - ldr r2, _0810CE70 @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - ldr r0, _0810CE74 @ =sub_810CE78 - str r0, [r1] - bx lr - .align 2, 0 -_0810CE70: .4byte gTasks -_0810CE74: .4byte sub_810CE78 - thumb_func_end sub_810CE5C - - thumb_func_start sub_810CE78 -sub_810CE78: @ 810CE78 - push {r4-r6,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r6, 0x80 - lsls r6, 19 - movs r5, 0 - strh r5, [r6] - ldr r0, _0810CEE8 @ =gCaveTransitionTiles - ldr r1, _0810CEEC @ =0x0600c000 - bl LZ77UnCompVram - ldr r0, _0810CEF0 @ =gCaveTransitionTilemap - ldr r1, _0810CEF4 @ =0x0600f800 - bl LZ77UnCompVram - ldr r0, _0810CEF8 @ =gCaveTransitionPalette_White - movs r1, 0xE0 - movs r2, 0x20 - bl LoadPalette - ldr r0, _0810CEFC @ =gUnknown_083F809C - movs r1, 0xE0 - movs r2, 0x10 - bl LoadPalette - ldr r1, _0810CF00 @ =REG_BLDCNT - ldr r2, _0810CF04 @ =0x00003e41 - adds r0, r2, 0 - strh r0, [r1] - ldr r0, _0810CF08 @ =REG_BLDALPHA - strh r5, [r0] - adds r0, 0x2 - strh r5, [r0] - subs r1, 0x48 - ldr r2, _0810CF0C @ =0x00001f0c - adds r0, r2, 0 - strh r0, [r1] - movs r1, 0x8A - lsls r1, 5 - adds r0, r1, 0 - strh r0, [r6] - ldr r1, _0810CF10 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _0810CF14 @ =sub_810CF18 - str r1, [r0] - movs r2, 0 - movs r1, 0x10 - strh r1, [r0, 0x8] - strh r2, [r0, 0xA] - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0810CEE8: .4byte gCaveTransitionTiles -_0810CEEC: .4byte 0x0600c000 -_0810CEF0: .4byte gCaveTransitionTilemap -_0810CEF4: .4byte 0x0600f800 -_0810CEF8: .4byte gCaveTransitionPalette_White -_0810CEFC: .4byte gUnknown_083F809C -_0810CF00: .4byte REG_BLDCNT -_0810CF04: .4byte 0x00003e41 -_0810CF08: .4byte REG_BLDALPHA -_0810CF0C: .4byte 0x00001f0c -_0810CF10: .4byte gTasks -_0810CF14: .4byte sub_810CF18 - thumb_func_end sub_810CE78 - - thumb_func_start sub_810CF18 -sub_810CF18: @ 810CF18 - push {lr} - lsls r0, 24 - lsrs r0, 24 - ldr r2, _0810CF44 @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r3, r1, r2 - ldrh r2, [r3, 0xA] - movs r1, 0x80 - lsls r1, 5 - adds r0, r2, r1 - lsls r0, 16 - lsrs r0, 16 - ldr r1, _0810CF48 @ =REG_BLDALPHA - strh r0, [r1] - cmp r2, 0x10 - bhi _0810CF4C - ldrh r0, [r3, 0xA] - adds r0, 0x1 - strh r0, [r3, 0xA] - b _0810CF54 - .align 2, 0 -_0810CF44: .4byte gTasks -_0810CF48: .4byte REG_BLDALPHA -_0810CF4C: - movs r0, 0 - strh r0, [r3, 0xC] - ldr r0, _0810CF58 @ =sub_810CF5C - str r0, [r3] -_0810CF54: - pop {r0} - bx r0 - .align 2, 0 -_0810CF58: .4byte sub_810CF5C - thumb_func_end sub_810CF18 - - thumb_func_start sub_810CF5C -sub_810CF5C: @ 810CF5C - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - ldr r2, _0810CF94 @ =REG_BLDALPHA - ldr r3, _0810CF98 @ =0x00001010 - adds r1, r3, 0 - strh r1, [r2] - ldr r2, _0810CF9C @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r4, r1, r2 - ldrh r1, [r4, 0xC] - cmp r1, 0x7 - bhi _0810CFA4 - adds r0, r1, 0x1 - strh r0, [r4, 0xC] - lsls r1, 1 - ldr r0, _0810CFA0 @ =gUnknown_083F809C - adds r0, r1, r0 - movs r2, 0x10 - subs r2, r1 - lsls r2, 16 - lsrs r2, 16 - movs r1, 0xE0 - bl LoadPalette - b _0810CFB6 - .align 2, 0 -_0810CF94: .4byte REG_BLDALPHA -_0810CF98: .4byte 0x00001010 -_0810CF9C: .4byte gTasks -_0810CFA0: .4byte gUnknown_083F809C -_0810CFA4: - ldr r0, _0810CFBC @ =gCaveTransitionPalette_White - movs r1, 0 - movs r2, 0x20 - bl LoadPalette - ldr r0, _0810CFC0 @ =sub_810CFC4 - str r0, [r4] - movs r0, 0x8 - strh r0, [r4, 0xC] -_0810CFB6: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0810CFBC: .4byte gCaveTransitionPalette_White -_0810CFC0: .4byte sub_810CFC4 - thumb_func_end sub_810CF5C - - thumb_func_start sub_810CFC4 -sub_810CFC4: @ 810CFC4 - push {lr} - lsls r0, 24 - lsrs r0, 24 - ldr r2, _0810CFE4 @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - ldrh r2, [r1, 0xC] - movs r3, 0xC - ldrsh r0, [r1, r3] - cmp r0, 0 - beq _0810CFE8 - subs r0, r2, 0x1 - strh r0, [r1, 0xC] - b _0810CFF0 - .align 2, 0 -_0810CFE4: .4byte gTasks -_0810CFE8: - ldr r0, _0810CFF4 @ =gMain - ldr r0, [r0, 0x8] - bl SetMainCallback2 -_0810CFF0: - pop {r0} - bx r0 - .align 2, 0 -_0810CFF4: .4byte gMain - thumb_func_end sub_810CFC4 - - thumb_func_start sub_810CFF8 -sub_810CFF8: @ 810CFF8 - push {lr} - ldr r0, _0810D008 @ =sub_810D00C - movs r1, 0 - bl CreateTask - pop {r0} - bx r0 - .align 2, 0 -_0810D008: .4byte sub_810D00C - thumb_func_end sub_810CFF8 - - thumb_func_start sub_810D00C -sub_810D00C: @ 810D00C - lsls r0, 24 - lsrs r0, 24 - ldr r2, _0810D020 @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - ldr r0, _0810D024 @ =sub_810D028 - str r0, [r1] - bx lr - .align 2, 0 -_0810D020: .4byte gTasks -_0810D024: .4byte sub_810D028 - thumb_func_end sub_810D00C - - thumb_func_start sub_810D028 -sub_810D028: @ 810D028 - push {r4-r6,lr} - adds r5, r0, 0 - lsls r5, 24 - lsrs r5, 24 - movs r6, 0x80 - lsls r6, 19 - movs r4, 0 - strh r4, [r6] - ldr r0, _0810D098 @ =gCaveTransitionTiles - ldr r1, _0810D09C @ =0x0600c000 - bl LZ77UnCompVram - ldr r0, _0810D0A0 @ =gCaveTransitionTilemap - ldr r1, _0810D0A4 @ =0x0600f800 - bl LZ77UnCompVram - ldr r0, _0810D0A8 @ =REG_BLDCNT - strh r4, [r0] - adds r0, 0x2 - strh r4, [r0] - adds r0, 0x2 - strh r4, [r0] - ldr r1, _0810D0AC @ =REG_BG0CNT - ldr r2, _0810D0B0 @ =0x00001f0c - adds r0, r2, 0 - strh r0, [r1] - movs r1, 0x8A - lsls r1, 5 - adds r0, r1, 0 - strh r0, [r6] - ldr r0, _0810D0B4 @ =gCaveTransitionPalette_White - movs r1, 0xE0 - movs r2, 0x20 - bl LoadPalette - ldr r0, _0810D0B8 @ =gCaveTransitionPalette_Black - movs r1, 0 - movs r2, 0x20 - bl LoadPalette - ldr r1, _0810D0BC @ =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r0, r1 - ldr r1, _0810D0C0 @ =sub_810D0C4 - str r1, [r0] - movs r2, 0 - movs r1, 0x10 - strh r1, [r0, 0x8] - strh r2, [r0, 0xA] - strh r2, [r0, 0xC] - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0810D098: .4byte gCaveTransitionTiles -_0810D09C: .4byte 0x0600c000 -_0810D0A0: .4byte gCaveTransitionTilemap -_0810D0A4: .4byte 0x0600f800 -_0810D0A8: .4byte REG_BLDCNT -_0810D0AC: .4byte REG_BG0CNT -_0810D0B0: .4byte 0x00001f0c -_0810D0B4: .4byte gCaveTransitionPalette_White -_0810D0B8: .4byte gCaveTransitionPalette_Black -_0810D0BC: .4byte gTasks -_0810D0C0: .4byte sub_810D0C4 - thumb_func_end sub_810D028 - - thumb_func_start sub_810D0C4 -sub_810D0C4: @ 810D0C4 - push {lr} - lsls r0, 24 - lsrs r0, 24 - ldr r2, _0810D0F8 @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r3, r1, r2 - ldrh r1, [r3, 0xC] - cmp r1, 0xF - bhi _0810D100 - adds r2, r1, 0x1 - adds r0, r2, 0x1 - strh r0, [r3, 0xC] - movs r0, 0xF - subs r0, r1 - lsls r0, 1 - ldr r1, _0810D0FC @ =gUnknown_083F808C - adds r0, r1 - lsls r2, 17 - lsrs r2, 16 - movs r1, 0xE0 - bl LoadPalette - b _0810D114 - .align 2, 0 -_0810D0F8: .4byte gTasks -_0810D0FC: .4byte gUnknown_083F808C -_0810D100: - ldr r1, _0810D118 @ =REG_BLDALPHA - ldr r2, _0810D11C @ =0x00001010 - adds r0, r2, 0 - strh r0, [r1] - subs r1, 0x2 - ldr r2, _0810D120 @ =0x00003e41 - adds r0, r2, 0 - strh r0, [r1] - ldr r0, _0810D124 @ =sub_810D128 - str r0, [r3] -_0810D114: - pop {r0} - bx r0 - .align 2, 0 -_0810D118: .4byte REG_BLDALPHA -_0810D11C: .4byte 0x00001010 -_0810D120: .4byte 0x00003e41 -_0810D124: .4byte sub_810D128 - thumb_func_end sub_810D0C4 - - thumb_func_start sub_810D128 -sub_810D128: @ 810D128 - push {lr} - lsls r0, 24 - lsrs r0, 24 - ldr r2, _0810D158 @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r3, r1, r2 - ldrh r0, [r3, 0xA] - movs r1, 0x10 - subs r1, r0 - lsls r1, 16 - movs r2, 0x80 - lsls r2, 21 - adds r0, r1, r2 - lsrs r0, 16 - ldr r2, _0810D15C @ =REG_BLDALPHA - strh r0, [r2] - cmp r1, 0 - beq _0810D160 - ldrh r0, [r3, 0xA] - adds r0, 0x1 - strh r0, [r3, 0xA] - b _0810D172 - .align 2, 0 -_0810D158: .4byte gTasks -_0810D15C: .4byte REG_BLDALPHA -_0810D160: - ldr r0, _0810D178 @ =gCaveTransitionPalette_Black - movs r1, 0 - movs r2, 0x20 - bl LoadPalette - ldr r0, _0810D17C @ =gMain - ldr r0, [r0, 0x8] - bl SetMainCallback2 -_0810D172: - pop {r0} - bx r0 - .align 2, 0 -_0810D178: .4byte gCaveTransitionPalette_Black -_0810D17C: .4byte gMain - thumb_func_end sub_810D128 - - thumb_func_start sub_810D180 -sub_810D180: @ 810D180 - push {r4-r7,lr} - sub sp, 0x4 - bl HealPlayerParty - ldr r4, _0810D1A0 @ =0x00000804 - adds r0, r4, 0 - bl FlagGet - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x1 - bne _0810D1A8 - ldr r0, _0810D1A4 @ =gUnknown_02039324 - strb r1, [r0] - b _0810D1B4 - .align 2, 0 -_0810D1A0: .4byte 0x00000804 -_0810D1A4: .4byte gUnknown_02039324 -_0810D1A8: - ldr r1, _0810D1E8 @ =gUnknown_02039324 - movs r0, 0 - strb r0, [r1] - adds r0, r4, 0 - bl FlagSet -_0810D1B4: - movs r0, 0x1 - bl sub_8053108 - cmp r0, 0 - bne _0810D1D4 - ldr r2, _0810D1EC @ =gSaveBlock2 - ldrh r1, [r2, 0xE] - lsls r1, 16 - ldrb r0, [r2, 0x10] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x11] - orrs r1, r0 - movs r0, 0x1 - bl sav12_xor_set -_0810D1D4: - bl SetSecretBase2Field_9 - ldr r0, _0810D1EC @ =gSaveBlock2 - ldrb r0, [r0, 0x8] - cmp r0, 0 - bne _0810D1F0 - movs r0, 0x1 - bl sub_80537CC - b _0810D1F6 - .align 2, 0 -_0810D1E8: .4byte gUnknown_02039324 -_0810D1EC: .4byte gSaveBlock2 -_0810D1F0: - movs r0, 0x2 - bl sub_80537CC -_0810D1F6: - movs r6, 0 - movs r5, 0 - mov r7, sp -_0810D1FC: - movs r0, 0x64 - adds r1, r5, 0 - muls r1, r0 - ldr r0, _0810D260 @ =gPlayerParty - adds r4, r1, r0 - adds r0, r4, 0 - movs r1, 0x5 - bl GetMonData - cmp r0, 0 - beq _0810D23A - adds r0, r4, 0 - movs r1, 0x6 - bl GetMonData - cmp r0, 0 - bne _0810D23A - adds r0, r4, 0 - movs r1, 0x43 - bl GetMonData - cmp r0, 0 - bne _0810D23A - movs r0, 0x1 - strb r0, [r7] - adds r0, r4, 0 - movs r1, 0x43 - mov r2, sp - bl SetMonData - movs r6, 0x1 -_0810D23A: - adds r5, 0x1 - cmp r5, 0x5 - ble _0810D1FC - cmp r6, 0x1 - bne _0810D250 - movs r0, 0x2A - bl sav12_xor_increment - ldr r0, _0810D264 @ =0x0000083b - bl FlagSet -_0810D250: - ldr r0, _0810D268 @ =sub_8141F90 - bl SetMainCallback2 - movs r0, 0 - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0810D260: .4byte gPlayerParty -_0810D264: .4byte 0x0000083b -_0810D268: .4byte sub_8141F90 - thumb_func_end sub_810D180 - - thumb_func_start sp0C8_whiteout_maybe -sp0C8_whiteout_maybe: @ 810D26C - push {lr} - ldr r0, _0810D27C @ =c2_whiteout - bl SetMainCallback2 - movs r0, 0 - pop {r1} - bx r1 - .align 2, 0 -_0810D27C: .4byte c2_whiteout - thumb_func_end sp0C8_whiteout_maybe - - thumb_func_start sub_810D280 -sub_810D280: @ 810D280 - push {r4,lr} - ldr r0, _0810D2A4 @ =0x00004024 - bl VarGet - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - ldr r0, _0810D2A8 @ =0x00004025 - bl VarGet - lsls r0, 16 - lsrs r0, 16 - lsls r4, 16 - orrs r4, r0 - adds r0, r4, 0 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0810D2A4: .4byte 0x00004024 -_0810D2A8: .4byte 0x00004025 - thumb_func_end sub_810D280 - - thumb_func_start sub_810D2AC -sub_810D2AC: @ 810D2AC - push {r4,lr} - adds r4, r0, 0 - ldr r0, _0810D2CC @ =0x00004024 - lsrs r1, r4, 16 - bl VarSet - ldr r0, _0810D2D0 @ =0x00004025 - lsls r4, 16 - lsrs r4, 16 - adds r1, r4, 0 - bl VarSet - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0810D2CC: .4byte 0x00004024 -_0810D2D0: .4byte 0x00004025 - thumb_func_end sub_810D2AC - - thumb_func_start unref_sub_810D2D4 -unref_sub_810D2D4: @ 810D2D4 - push {r4,lr} - bl Random - adds r4, r0, 0 - bl Random - lsls r4, 16 - lsls r0, 16 - lsrs r0, 16 - orrs r4, r0 - adds r0, r4, 0 - bl sub_810D2AC - pop {r4} - pop {r0} - bx r0 - thumb_func_end unref_sub_810D2D4 - - thumb_func_start sub_810D2F4 -sub_810D2F4: @ 810D2F4 - push {r4,lr} - lsls r0, 16 - lsrs r4, r0, 16 - bl sub_810D280 - adds r1, r0, 0 - cmp r4, 0 - beq _0810D318 - ldr r3, _0810D324 @ =0x41c64e6d - ldr r2, _0810D328 @ =0x00003039 -_0810D308: - adds r0, r1, 0 - muls r0, r3 - adds r1, r0, r2 - subs r0, r4, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 - cmp r4, 0 - bne _0810D308 -_0810D318: - adds r0, r1, 0 - bl sub_810D2AC - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0810D324: .4byte 0x41c64e6d -_0810D328: .4byte 0x00003039 - thumb_func_end sub_810D2F4 - - thumb_func_start sub_810D32C -sub_810D32C: @ 810D32C - push {r4-r6,lr} - bl sub_810D280 - lsrs r6, r0, 16 - movs r5, 0 -_0810D336: - movs r0, 0x64 - adds r1, r5, 0 - muls r1, r0 - ldr r0, _0810D360 @ =gPlayerParty - adds r4, r1, r0 - adds r0, r4, 0 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _0810D368 - adds r0, r4, 0 - movs r1, 0 - bl GetMonData - ldr r1, _0810D364 @ =0x0000ffff - ands r1, r0 - cmp r1, r6 - bne _0810D368 - movs r0, 0x1 - b _0810D370 - .align 2, 0 -_0810D360: .4byte gPlayerParty -_0810D364: .4byte 0x0000ffff -_0810D368: - adds r5, 0x1 - cmp r5, 0x5 - ble _0810D336 - movs r0, 0 -_0810D370: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_810D32C - - thumb_func_start sub_810D378 -sub_810D378: @ 810D378 - push {lr} - bl get_map_light_from_warp0 - lsls r0, 24 - lsrs r0, 24 - bl is_light_level_1_2_3_5_or_6 - lsls r0, 24 - cmp r0, 0 - beq _0810D3BE - bl RtcCalcLocalTime - ldr r1, _0810D3AC @ =gUnknown_083F8340 - ldr r0, _0810D3B0 @ =gLocalTime - ldrb r0, [r0, 0x2] - lsls r0, 24 - asrs r0, 24 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _0810D3B8 - ldr r0, _0810D3B4 @ =0x0000083a - bl FlagSet - b _0810D3BE - .align 2, 0 -_0810D3AC: .4byte gUnknown_083F8340 -_0810D3B0: .4byte gLocalTime -_0810D3B4: .4byte 0x0000083a -_0810D3B8: - ldr r0, _0810D3C4 @ =0x0000083a - bl FlagReset -_0810D3BE: - pop {r0} - bx r0 - .align 2, 0 -_0810D3C4: .4byte 0x0000083a - thumb_func_end sub_810D378 - - thumb_func_start sub_810D3C8 -sub_810D3C8: @ 810D3C8 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl sub_807DDFC - lsls r0, 24 - cmp r0, 0 - beq _0810D3E2 - bl EnableBothScriptContexts - adds r0, r4, 0 - bl DestroyTask -_0810D3E2: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_810D3C8 - - thumb_func_start sub_810D3E8 -sub_810D3E8: @ 810D3E8 - push {lr} - ldr r0, _0810D3F8 @ =sub_810D3C8 - movs r1, 0x50 - bl CreateTask - pop {r0} - bx r0 - .align 2, 0 -_0810D3F8: .4byte sub_810D3C8 - thumb_func_end sub_810D3E8 - - thumb_func_start sub_810D3FC -sub_810D3FC: @ 810D3FC - push {lr} - ldr r0, _0810D40C @ =0x00004049 - bl GetVarPointer - movs r1, 0 - strh r1, [r0] - pop {r0} - bx r0 - .align 2, 0 -_0810D40C: .4byte 0x00004049 - thumb_func_end sub_810D3FC - - thumb_func_start UpdateBirchState -UpdateBirchState: @ 810D410 - push {r4,r5,lr} - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - ldr r0, _0810D438 @ =0x00004049 - bl GetVarPointer - adds r5, r0, 0 - ldrh r0, [r5] - adds r4, r0 - strh r4, [r5] - ldrh r0, [r5] - movs r1, 0x7 - bl __umodsi3 - strh r0, [r5] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0810D438: .4byte 0x00004049 - thumb_func_end UpdateBirchState - - thumb_func_start ScriptGetPokedexInfo -ScriptGetPokedexInfo: @ 810D43C - push {lr} - ldr r0, _0810D458 @ =gSpecialVar_0x8004 - ldrh r0, [r0] - cmp r0, 0 - bne _0810D460 - movs r0, 0 - bl GetHoennPokedexCount - ldr r1, _0810D45C @ =gSpecialVar_0x8005 - strh r0, [r1] - movs r0, 0x1 - bl GetHoennPokedexCount - b _0810D470 - .align 2, 0 -_0810D458: .4byte gSpecialVar_0x8004 -_0810D45C: .4byte gSpecialVar_0x8005 -_0810D460: - movs r0, 0 - bl GetNationalPokedexCount - ldr r1, _0810D480 @ =gSpecialVar_0x8005 - strh r0, [r1] - movs r0, 0x1 - bl GetNationalPokedexCount -_0810D470: - ldr r1, _0810D484 @ =gSpecialVar_0x8006 - strh r0, [r1] - bl IsNationalPokedex - lsls r0, 16 - lsrs r0, 16 - pop {r1} - bx r1 - .align 2, 0 -_0810D480: .4byte gSpecialVar_0x8005 -_0810D484: .4byte gSpecialVar_0x8006 - thumb_func_end ScriptGetPokedexInfo - - thumb_func_start GetPokedexRatingText -GetPokedexRatingText: @ 810D488 - push {lr} - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x9 - bhi _0810D494 - b _0810D5EC -_0810D494: - cmp r0, 0x13 - bhi _0810D4A0 - ldr r0, _0810D49C @ =gUnknown_081C456A - b _0810D5F6 - .align 2, 0 -_0810D49C: .4byte gUnknown_081C456A -_0810D4A0: - cmp r0, 0x1D - bhi _0810D4AC - ldr r0, _0810D4A8 @ =gUnknown_081C45B0 - b _0810D5F6 - .align 2, 0 -_0810D4A8: .4byte gUnknown_081C45B0 -_0810D4AC: - cmp r0, 0x27 - bhi _0810D4B8 - ldr r0, _0810D4B4 @ =gUnknown_081C45F9 - b _0810D5F6 - .align 2, 0 -_0810D4B4: .4byte gUnknown_081C45F9 -_0810D4B8: - cmp r0, 0x31 - bhi _0810D4C4 - ldr r0, _0810D4C0 @ =gUnknown_081C4648 - b _0810D5F6 - .align 2, 0 -_0810D4C0: .4byte gUnknown_081C4648 -_0810D4C4: - cmp r0, 0x3B - bhi _0810D4D0 - ldr r0, _0810D4CC @ =gUnknown_081C467E - b _0810D5F6 - .align 2, 0 -_0810D4CC: .4byte gUnknown_081C467E -_0810D4D0: - cmp r0, 0x45 - bhi _0810D4DC - ldr r0, _0810D4D8 @ =gUnknown_081C46B9 - b _0810D5F6 - .align 2, 0 -_0810D4D8: .4byte gUnknown_081C46B9 -_0810D4DC: - cmp r0, 0x4F - bhi _0810D4E8 - ldr r0, _0810D4E4 @ =gUnknown_081C46FE - b _0810D5F6 - .align 2, 0 -_0810D4E4: .4byte gUnknown_081C46FE -_0810D4E8: - cmp r0, 0x59 - bhi _0810D4F4 - ldr r0, _0810D4F0 @ =gUnknown_081C4747 - b _0810D5F6 - .align 2, 0 -_0810D4F0: .4byte gUnknown_081C4747 -_0810D4F4: - cmp r0, 0x63 - bhi _0810D500 - ldr r0, _0810D4FC @ =gUnknown_081C4780 - b _0810D5F6 - .align 2, 0 -_0810D4FC: .4byte gUnknown_081C4780 -_0810D500: - cmp r0, 0x6D - bhi _0810D50C - ldr r0, _0810D508 @ =gUnknown_081C47DF - b _0810D5F6 - .align 2, 0 -_0810D508: .4byte gUnknown_081C47DF -_0810D50C: - cmp r0, 0x77 - bhi _0810D518 - ldr r0, _0810D514 @ =gUnknown_081C4828 - b _0810D5F6 - .align 2, 0 -_0810D514: .4byte gUnknown_081C4828 -_0810D518: - cmp r0, 0x81 - bhi _0810D524 - ldr r0, _0810D520 @ =gUnknown_081C4863 - b _0810D5F6 - .align 2, 0 -_0810D520: .4byte gUnknown_081C4863 -_0810D524: - cmp r0, 0x8B - bhi _0810D530 - ldr r0, _0810D52C @ =gUnknown_081C489C - b _0810D5F6 - .align 2, 0 -_0810D52C: .4byte gUnknown_081C489C -_0810D530: - cmp r0, 0x95 - bhi _0810D53C - ldr r0, _0810D538 @ =gUnknown_081C48EB - b _0810D5F6 - .align 2, 0 -_0810D538: .4byte gUnknown_081C48EB -_0810D53C: - cmp r0, 0x9F - bhi _0810D548 - ldr r0, _0810D544 @ =gUnknown_081C4936 - b _0810D5F6 - .align 2, 0 -_0810D544: .4byte gUnknown_081C4936 -_0810D548: - cmp r0, 0xA9 - bhi _0810D554 - ldr r0, _0810D550 @ =gUnknown_081C49A2 - b _0810D5F6 - .align 2, 0 -_0810D550: .4byte gUnknown_081C49A2 -_0810D554: - cmp r0, 0xB3 - bhi _0810D560 - ldr r0, _0810D55C @ =gUnknown_081C4A06 - b _0810D5F6 - .align 2, 0 -_0810D55C: .4byte gUnknown_081C4A06 -_0810D560: - cmp r0, 0xBD - bhi _0810D56C - ldr r0, _0810D568 @ =gUnknown_081C4A4F - b _0810D5F6 - .align 2, 0 -_0810D568: .4byte gUnknown_081C4A4F -_0810D56C: - cmp r0, 0xC7 - bls _0810D5DA - cmp r0, 0xC8 - bne _0810D5A8 - ldr r0, _0810D5A4 @ =0x00000199 - bl SpeciesToNationalPokedexNum - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x1 - bl sub_8090D90 - lsls r0, 24 - cmp r0, 0 - bne _0810D5DA - movs r0, 0xCD - lsls r0, 1 - bl SpeciesToNationalPokedexNum - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x1 - bl sub_8090D90 - lsls r0, 24 - cmp r0, 0 - bne _0810D5DA - b _0810D5F4 - .align 2, 0 -_0810D5A4: .4byte 0x00000199 -_0810D5A8: - cmp r0, 0xC9 - bne _0810D5E8 - ldr r0, _0810D5E0 @ =0x00000199 - bl SpeciesToNationalPokedexNum - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x1 - bl sub_8090D90 - lsls r0, 24 - cmp r0, 0 - beq _0810D5F4 - movs r0, 0xCD - lsls r0, 1 - bl SpeciesToNationalPokedexNum - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x1 - bl sub_8090D90 - lsls r0, 24 - cmp r0, 0 - beq _0810D5F4 -_0810D5DA: - ldr r0, _0810D5E4 @ =gUnknown_081C4A91 - b _0810D5F6 - .align 2, 0 -_0810D5E0: .4byte 0x00000199 -_0810D5E4: .4byte gUnknown_081C4A91 -_0810D5E8: - cmp r0, 0xCA - beq _0810D5F4 -_0810D5EC: - ldr r0, _0810D5F0 @ =gUnknown_081C4520 - b _0810D5F6 - .align 2, 0 -_0810D5F0: .4byte gUnknown_081C4520 -_0810D5F4: - ldr r0, _0810D5FC @ =gUnknown_081C4ADA -_0810D5F6: - pop {r1} - bx r1 - .align 2, 0 -_0810D5FC: .4byte gUnknown_081C4ADA - thumb_func_end GetPokedexRatingText - - thumb_func_start ShowPokedexRatingMessage -ShowPokedexRatingMessage: @ 810D600 - push {lr} - ldr r0, _0810D614 @ =gSpecialVar_0x8004 - ldrh r0, [r0] - bl GetPokedexRatingText - bl ShowFieldMessage - pop {r0} - bx r0 - .align 2, 0 -_0810D614: .4byte gSpecialVar_0x8004 - thumb_func_end ShowPokedexRatingMessage - - thumb_func_start AccessHallOfFamePC -AccessHallOfFamePC: @ 810D618 - push {lr} - ldr r0, _0810D628 @ =sub_81428CC - bl SetMainCallback2 - bl ScriptContext2_Enable - pop {r0} - bx r0 - .align 2, 0 -_0810D628: .4byte sub_81428CC - thumb_func_end AccessHallOfFamePC - - thumb_func_start ReturnFromHallOfFamePC -ReturnFromHallOfFamePC: @ 810D62C - push {lr} - ldr r0, _0810D640 @ =c2_exit_to_overworld_2_switch - bl SetMainCallback2 - ldr r1, _0810D644 @ =gUnknown_0300485C - ldr r0, _0810D648 @ =ReshowPCMenuAfterHallOfFamePC - str r0, [r1] - pop {r0} - bx r0 - .align 2, 0 -_0810D640: .4byte c2_exit_to_overworld_2_switch -_0810D644: .4byte gUnknown_0300485C -_0810D648: .4byte ReshowPCMenuAfterHallOfFamePC - thumb_func_end ReturnFromHallOfFamePC - - thumb_func_start ReshowPCMenuAfterHallOfFamePC -ReshowPCMenuAfterHallOfFamePC: @ 810D64C - push {lr} - sub sp, 0x4 - bl ScriptContext2_Enable - bl sub_8053E90 - movs r0, 0x1 - negs r0, r0 - movs r1, 0 - str r1, [sp] - movs r2, 0x10 - movs r3, 0 - bl BeginNormalPaletteFade - bl sp109_CreatePCMenu - bl sub_80B5838 - ldr r0, _0810D680 @ =sub_810D684 - movs r1, 0xA - bl CreateTask - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_0810D680: .4byte sub_810D684 - thumb_func_end ReshowPCMenuAfterHallOfFamePC - - thumb_func_start sub_810D684 -sub_810D684: @ 810D684 - push {lr} - lsls r0, 24 - lsrs r2, r0, 24 - ldr r0, _0810D6A0 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _0810D69C - adds r0, r2, 0 - bl DestroyTask -_0810D69C: - pop {r0} - bx r0 - .align 2, 0 -_0810D6A0: .4byte gPaletteFade - thumb_func_end sub_810D684 - - thumb_func_start sub_810D6A4 -sub_810D6A4: @ 810D6A4 - push {lr} - ldr r0, _0810D6B4 @ =sub_8145D88 - bl SetMainCallback2 - bl ScriptContext2_Enable - pop {r0} - bx r0 - .align 2, 0 -_0810D6B4: .4byte sub_8145D88 - thumb_func_end sub_810D6A4 - - thumb_func_start sub_810D6B8 -sub_810D6B8: @ 810D6B8 - push {lr} - ldr r0, _0810D6D0 @ =gMain - ldr r1, _0810D6D4 @ =c2_exit_to_overworld_2_switch - str r1, [r0, 0x8] - ldr r0, _0810D6D8 @ =Cb2_ViewWallClock - bl SetMainCallback2 - bl ScriptContext2_Enable - pop {r0} - bx r0 - .align 2, 0 -_0810D6D0: .4byte gMain -_0810D6D4: .4byte c2_exit_to_overworld_2_switch -_0810D6D8: .4byte Cb2_ViewWallClock - thumb_func_end sub_810D6B8 - - thumb_func_start ResetCyclingRoadChallengeData -ResetCyclingRoadChallengeData: @ 810D6DC - ldr r0, _0810D6F0 @ =gUnknown_02039250 - movs r1, 0 - strb r1, [r0] - ldr r0, _0810D6F4 @ =gUnknown_02039251 - strb r1, [r0] - ldr r1, _0810D6F8 @ =gUnknown_02039254 - movs r0, 0 - str r0, [r1] - bx lr - .align 2, 0 -_0810D6F0: .4byte gUnknown_02039250 -_0810D6F4: .4byte gUnknown_02039251 -_0810D6F8: .4byte gUnknown_02039254 - thumb_func_end ResetCyclingRoadChallengeData - - thumb_func_start BeginCyclingRoadChallenge -BeginCyclingRoadChallenge: @ 810D6FC - ldr r1, _0810D714 @ =gUnknown_02039250 - movs r0, 0x1 - strb r0, [r1] - ldr r1, _0810D718 @ =gUnknown_02039251 - movs r0, 0 - strb r0, [r1] - ldr r1, _0810D71C @ =gUnknown_02039254 - ldr r0, _0810D720 @ =gMain - ldr r0, [r0, 0x20] - str r0, [r1] - bx lr - .align 2, 0 -_0810D714: .4byte gUnknown_02039250 -_0810D718: .4byte gUnknown_02039251 -_0810D71C: .4byte gUnknown_02039254 -_0810D720: .4byte gMain - thumb_func_end BeginCyclingRoadChallenge - - thumb_func_start GetPlayerAvatarBike -GetPlayerAvatarBike: @ 810D724 - push {lr} - movs r0, 0x4 - bl TestPlayerAvatarFlags - lsls r0, 24 - cmp r0, 0 - beq _0810D736 - movs r0, 0x1 - b _0810D748 -_0810D736: - movs r0, 0x2 - bl TestPlayerAvatarFlags - lsls r0, 24 - cmp r0, 0 - bne _0810D746 - movs r0, 0 - b _0810D748 -_0810D746: - movs r0, 0x2 -_0810D748: - pop {r1} - bx r1 - thumb_func_end GetPlayerAvatarBike - - thumb_func_start DetermineCyclingRoadResults -DetermineCyclingRoadResults: @ 810D74C - push {r4-r7,lr} - adds r7, r0, 0 - lsls r1, 24 - lsrs r6, r1, 24 - cmp r6, 0x63 - bhi _0810D778 - ldr r4, _0810D770 @ =gStringVar1 - adds r0, r4, 0 - adds r1, r6, 0 - movs r2, 0 - movs r3, 0x2 - bl ConvertIntToDecimalStringN - ldr r1, _0810D774 @ =gOtherText_Times - adds r0, r4, 0 - bl StringAppend - b _0810D780 - .align 2, 0 -_0810D770: .4byte gStringVar1 -_0810D774: .4byte gOtherText_Times -_0810D778: - ldr r0, _0810D7CC @ =gStringVar1 - ldr r1, _0810D7D0 @ =gOtherText_99Times - bl StringCopy -_0810D780: - ldr r0, _0810D7D4 @ =0x00000e0f - cmp r7, r0 - bhi _0810D7E0 - ldr r4, _0810D7D8 @ =gStringVar2 - adds r0, r7, 0 - movs r1, 0x3C - bl __udivsi3 - adds r1, r0, 0 - adds r0, r4, 0 - movs r2, 0x1 - movs r3, 0x2 - bl ConvertIntToDecimalStringN - movs r0, 0xAD - strb r0, [r4, 0x2] - adds r5, r4, 0x3 - adds r0, r7, 0 - movs r1, 0x3C - bl __umodsi3 - movs r1, 0x64 - muls r0, r1 - movs r1, 0x3C - bl __udivsi3 - adds r1, r0, 0 - adds r0, r5, 0 - movs r2, 0x2 - movs r3, 0x2 - bl ConvertIntToDecimalStringN - ldr r1, _0810D7DC @ =gOtherText_Seconds - adds r0, r4, 0 - bl StringAppend - b _0810D7E8 - .align 2, 0 -_0810D7CC: .4byte gStringVar1 -_0810D7D0: .4byte gOtherText_99Times -_0810D7D4: .4byte 0x00000e0f -_0810D7D8: .4byte gStringVar2 -_0810D7DC: .4byte gOtherText_Seconds -_0810D7E0: - ldr r0, _0810D7F4 @ =gStringVar2 - ldr r1, _0810D7F8 @ =gOtherText_1Minute - bl StringCopy -_0810D7E8: - movs r4, 0 - cmp r6, 0 - bne _0810D7FC - movs r4, 0x5 - b _0810D81A - .align 2, 0 -_0810D7F4: .4byte gStringVar2 -_0810D7F8: .4byte gOtherText_1Minute -_0810D7FC: - cmp r6, 0x3 - bhi _0810D804 - movs r4, 0x4 - b _0810D81A -_0810D804: - cmp r6, 0x9 - bhi _0810D80C - movs r4, 0x3 - b _0810D81A -_0810D80C: - cmp r6, 0x13 - bhi _0810D814 - movs r4, 0x2 - b _0810D81A -_0810D814: - cmp r6, 0x63 - bhi _0810D81A - movs r4, 0x1 -_0810D81A: - adds r0, r7, 0 - movs r1, 0x3C - bl __udivsi3 - cmp r0, 0xA - bhi _0810D82A - adds r0, r4, 0x5 - b _0810D848 -_0810D82A: - cmp r0, 0xF - bhi _0810D832 - adds r0, r4, 0x4 - b _0810D848 -_0810D832: - cmp r0, 0x14 - bhi _0810D83A - adds r0, r4, 0x3 - b _0810D848 -_0810D83A: - cmp r0, 0x28 - bhi _0810D842 - adds r0, r4, 0x2 - b _0810D848 -_0810D842: - cmp r0, 0x3B - bhi _0810D84C - adds r0, r4, 0x1 -_0810D848: - lsls r0, 24 - lsrs r4, r0, 24 -_0810D84C: - ldr r0, _0810D858 @ =gScriptResult - strh r4, [r0] - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0810D858: .4byte gScriptResult - thumb_func_end DetermineCyclingRoadResults - - thumb_func_start FinishCyclingRoadChallenge -FinishCyclingRoadChallenge: @ 810D85C - push {r4,r5,lr} - ldr r0, _0810D880 @ =gMain - ldr r1, _0810D884 @ =gUnknown_02039254 - ldr r4, [r0, 0x20] - ldr r0, [r1] - subs r4, r0 - ldr r5, _0810D888 @ =gUnknown_02039251 - ldrb r1, [r5] - adds r0, r4, 0 - bl DetermineCyclingRoadResults - ldrb r1, [r5] - adds r0, r4, 0 - bl RecordCyclingRoadResults - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0810D880: .4byte gMain -_0810D884: .4byte gUnknown_02039254 -_0810D888: .4byte gUnknown_02039251 - thumb_func_end FinishCyclingRoadChallenge - - thumb_func_start RecordCyclingRoadResults -RecordCyclingRoadResults: @ 810D88C - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r5, r0, 0 - lsls r1, 24 - lsrs r1, 24 - mov r8, r1 - ldr r6, _0810D8E0 @ =0x00004028 - adds r0, r6, 0 - bl VarGet - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - ldr r7, _0810D8E4 @ =0x00004029 - adds r0, r7, 0 - bl VarGet - lsls r0, 16 - adds r4, r0 - cmp r4, r5 - bhi _0810D8BC - cmp r4, 0 - bne _0810D8D6 -_0810D8BC: - lsls r1, r5, 16 - lsrs r1, 16 - adds r0, r6, 0 - bl VarSet - lsrs r1, r5, 16 - adds r0, r7, 0 - bl VarSet - ldr r0, _0810D8E8 @ =0x00004027 - mov r1, r8 - bl VarSet -_0810D8D6: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0810D8E0: .4byte 0x00004028 -_0810D8E4: .4byte 0x00004029 -_0810D8E8: .4byte 0x00004027 - thumb_func_end RecordCyclingRoadResults - - thumb_func_start GetRecordedCyclingRoadResults -GetRecordedCyclingRoadResults: @ 810D8EC - push {r4,lr} - ldr r0, _0810D920 @ =0x00004028 - bl VarGet - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - ldr r0, _0810D924 @ =0x00004029 - bl VarGet - lsls r0, 16 - adds r4, r0 - cmp r4, 0 - beq _0810D92C - ldr r0, _0810D928 @ =0x00004027 - bl VarGet - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl DetermineCyclingRoadResults - movs r0, 0x1 - b _0810D92E - .align 2, 0 -_0810D920: .4byte 0x00004028 -_0810D924: .4byte 0x00004029 -_0810D928: .4byte 0x00004027 -_0810D92C: - movs r0, 0 -_0810D92E: - pop {r4} - pop {r1} - bx r1 - thumb_func_end GetRecordedCyclingRoadResults - - thumb_func_start UpdateCyclingRoadState -UpdateCyclingRoadState: @ 810D934 - push {r4,lr} - ldr r0, _0810D974 @ =gUnknown_020297F0 - ldrh r1, [r0] - ldr r0, _0810D978 @ =0x00000c1d - cmp r1, r0 - beq _0810D96C - ldr r4, _0810D97C @ =0x000040a9 - adds r0, r4, 0 - bl VarGet - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x2 - beq _0810D95E - adds r0, r4, 0 - bl VarGet - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x3 - bne _0810D96C -_0810D95E: - adds r0, r4, 0 - movs r1, 0 - bl VarSet - movs r0, 0 - bl sav1_set_battle_music_maybe -_0810D96C: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0810D974: .4byte gUnknown_020297F0 -_0810D978: .4byte 0x00000c1d -_0810D97C: .4byte 0x000040a9 - thumb_func_end UpdateCyclingRoadState - - thumb_func_start SetSSTidalFlag -SetSSTidalFlag: @ 810D980 - push {lr} - ldr r0, _0810D998 @ =0x0000082d - bl FlagSet - ldr r0, _0810D99C @ =0x0000404a - bl GetVarPointer - movs r1, 0 - strh r1, [r0] - pop {r0} - bx r0 - .align 2, 0 -_0810D998: .4byte 0x0000082d -_0810D99C: .4byte 0x0000404a - thumb_func_end SetSSTidalFlag - - thumb_func_start ResetSSTidalFlag -ResetSSTidalFlag: @ 810D9A0 - push {lr} - ldr r0, _0810D9AC @ =0x0000082d - bl FlagReset - pop {r0} - bx r0 - .align 2, 0 -_0810D9AC: .4byte 0x0000082d - thumb_func_end ResetSSTidalFlag - - thumb_func_start sub_810D9B0 -sub_810D9B0: @ 810D9B0 - push {r4,lr} - lsls r0, 16 - lsrs r4, r0, 16 - ldr r0, _0810D9DC @ =0x0000082d - bl FlagGet - lsls r0, 24 - cmp r0, 0 - beq _0810D9D6 - ldr r0, _0810D9E0 @ =0x0000404a - bl GetVarPointer - ldrh r1, [r0] - adds r1, r4, r1 - strh r1, [r0] - lsls r1, 16 - lsrs r1, 16 - cmp r1, 0xCC - bhi _0810D9E4 -_0810D9D6: - movs r0, 0 - b _0810D9E6 - .align 2, 0 -_0810D9DC: .4byte 0x0000082d -_0810D9E0: .4byte 0x0000404a -_0810D9E4: - movs r0, 0x1 -_0810D9E6: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_810D9B0 - - thumb_func_start sub_810D9EC -sub_810D9EC: @ 810D9EC - push {r4-r7,lr} - mov r7, r8 - push {r7} - mov r8, r0 - adds r5, r1, 0 - adds r6, r2, 0 - adds r7, r3, 0 - ldr r0, _0810DA1C @ =0x0000404a - bl GetVarPointer - adds r4, r0, 0 - ldr r0, _0810DA20 @ =0x000040b4 - bl GetVarPointer - ldrh r0, [r0] - subs r0, 0x1 - cmp r0, 0x9 - bhi _0810DAB2 - lsls r0, 2 - ldr r1, _0810DA24 @ =_0810DA28 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0810DA1C: .4byte 0x0000404a -_0810DA20: .4byte 0x000040b4 -_0810DA24: .4byte _0810DA28 - .align 2, 0 -_0810DA28: - .4byte _0810DA50 - .4byte _0810DA60 - .4byte _0810DA54 - .4byte _0810DA58 - .4byte _0810DA58 - .4byte _0810DA5C - .4byte _0810DA88 - .4byte _0810DA50 - .4byte _0810DA54 - .4byte _0810DA5C -_0810DA50: - movs r0, 0x1 - b _0810DABE -_0810DA54: - movs r0, 0x4 - b _0810DABE -_0810DA58: - movs r0, 0x2 - b _0810DABE -_0810DA5C: - movs r0, 0x3 - b _0810DABE -_0810DA60: - ldrh r0, [r4] - cmp r0, 0x3B - bhi _0810DA70 - movs r0, 0x31 - strb r0, [r5] - ldrh r0, [r4] - adds r0, 0x13 - b _0810DAB0 -_0810DA70: - cmp r0, 0x8B - bhi _0810DA7E - movs r0, 0x30 - strb r0, [r5] - ldrh r0, [r4] - subs r0, 0x3C - b _0810DAB0 -_0810DA7E: - movs r0, 0x2F - strb r0, [r5] - ldrh r0, [r4] - subs r0, 0x8C - b _0810DAB0 -_0810DA88: - ldrh r0, [r4] - cmp r0, 0x41 - bhi _0810DA98 - movs r0, 0x2F - strb r0, [r5] - ldrh r1, [r4] - movs r0, 0x41 - b _0810DAAE -_0810DA98: - cmp r0, 0x91 - bhi _0810DAA6 - movs r0, 0x30 - strb r0, [r5] - ldrh r1, [r4] - movs r0, 0x91 - b _0810DAAE -_0810DAA6: - movs r0, 0x31 - strb r0, [r5] - ldrh r1, [r4] - movs r0, 0xE0 -_0810DAAE: - subs r0, r1 -_0810DAB0: - strh r0, [r6] -_0810DAB2: - movs r0, 0 - mov r1, r8 - strb r0, [r1] - movs r0, 0x14 - strh r0, [r7] - movs r0, 0 -_0810DABE: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_810D9EC - - thumb_func_start GetLinkPartnerNames -GetLinkPartnerNames: @ 810DAC8 - push {r4-r7,lr} - mov r7, r8 - push {r7} - movs r6, 0 - bl sub_8008218 - lsls r0, 24 - lsrs r7, r0, 24 - bl sub_800820C - lsls r0, 24 - lsrs r5, r0, 24 - movs r4, 0 - cmp r4, r5 - bcs _0810DB12 - ldr r0, _0810DB20 @ =gUnknown_083D1464 - mov r8, r0 -_0810DAEA: - cmp r7, r4 - beq _0810DB08 - lsls r0, r6, 2 - add r0, r8 - ldr r0, [r0] - lsls r1, r4, 3 - subs r1, r4 - lsls r1, 2 - ldr r2, _0810DB24 @ =gLinkPlayers + 0x8 - adds r1, r2 - bl StringCopy - adds r0, r6, 0x1 - lsls r0, 24 - lsrs r6, r0, 24 -_0810DB08: - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, r5 - bcc _0810DAEA -_0810DB12: - adds r0, r5, 0 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0810DB20: .4byte gUnknown_083D1464 -_0810DB24: .4byte gLinkPlayers + 0x8 - thumb_func_end GetLinkPartnerNames - - thumb_func_start sub_810DB28 -sub_810DB28: @ 810DB28 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x14 - movs r7, 0 - movs r0, 0 - mov r9, r0 - mov r8, r0 - ldr r1, _0810DB74 @ =gUnknown_083F8358 - add r0, sp, 0x8 - movs r2, 0x4 - bl memcpy - add r4, sp, 0xC - ldr r1, _0810DB78 @ =gUnknown_083F835C - adds r0, r4, 0 - movs r2, 0x8 - bl memcpy - bl sub_8008218 - lsls r0, 24 - lsrs r0, 24 - mov r10, r0 - bl player_get_direction_lower_nybble - lsls r0, 24 - lsrs r0, 24 - adds r1, r0, 0 - cmp r0, 0x2 - beq _0810DB94 - cmp r0, 0x2 - bgt _0810DB7C - cmp r0, 0x1 - beq _0810DBC0 - b _0810DBD2 - .align 2, 0 -_0810DB74: .4byte gUnknown_083F8358 -_0810DB78: .4byte gUnknown_083F835C -_0810DB7C: - cmp r1, 0x3 - beq _0810DB86 - cmp r1, 0x4 - beq _0810DBA8 - b _0810DBD2 -_0810DB86: - movs r7, 0x2 - ldr r1, _0810DB90 @ =gSaveBlock1 - ldrh r0, [r1] - subs r0, 0x1 - b _0810DBAE - .align 2, 0 -_0810DB90: .4byte gSaveBlock1 -_0810DB94: - movs r7, 0x1 - ldr r0, _0810DBA4 @ =gSaveBlock1 - ldrh r1, [r0] - mov r9, r1 - ldrh r0, [r0, 0x2] - subs r0, 0x1 - b _0810DBCC - .align 2, 0 -_0810DBA4: .4byte gSaveBlock1 -_0810DBA8: - ldr r1, _0810DBBC @ =gSaveBlock1 - ldrh r0, [r1] - adds r0, 0x1 -_0810DBAE: - lsls r0, 16 - lsrs r0, 16 - mov r9, r0 - ldrh r1, [r1, 0x2] - mov r8, r1 - b _0810DBD2 - .align 2, 0 -_0810DBBC: .4byte gSaveBlock1 -_0810DBC0: - movs r7, 0x3 - ldr r0, _0810DBD8 @ =gSaveBlock1 - ldrh r4, [r0] - mov r9, r4 - ldrh r0, [r0, 0x2] - adds r0, 0x1 -_0810DBCC: - lsls r0, 16 - lsrs r0, 16 - mov r8, r0 -_0810DBD2: - movs r6, 0 - b _0810DC5C - .align 2, 0 -_0810DBD8: .4byte gSaveBlock1 -_0810DBDC: - cmp r10, r6 - beq _0810DC56 - ldr r1, _0810DC74 @ =gLinkPlayers - lsls r0, r6, 3 - subs r0, r6 - lsls r0, 2 - adds r0, r1 - ldrb r1, [r0, 0x13] - movs r0, 0 - bl sub_805983C - lsls r0, 24 - lsrs r0, 24 - mov r1, sp - adds r1, r7 - adds r1, 0x8 - ldrb r1, [r1] - movs r2, 0xF0 - subs r2, r6 - lsls r2, 24 - lsrs r2, 24 - lsls r5, r7, 1 - mov r3, sp - adds r3, r5 - adds r3, 0xC - ldrb r3, [r3] - lsls r3, 24 - asrs r3, 24 - mov r12, r3 - mov r4, r9 - lsls r3, r4, 16 - asrs r3, 16 - add r3, r12 - adds r3, 0x7 - lsls r3, 16 - asrs r3, 16 - mov r4, sp - adds r4, 0xD - adds r4, r5 - ldrb r4, [r4] - lsls r4, 24 - asrs r4, 24 - mov r12, r4 - mov r5, r8 - lsls r4, r5, 16 - asrs r4, 16 - add r4, r12 - adds r4, 0x7 - lsls r4, 16 - asrs r4, 16 - str r4, [sp] - movs r4, 0 - str r4, [sp, 0x4] - bl SpawnSpecialFieldObjectParametrized - adds r0, r7, 0x1 - lsls r0, 24 - lsrs r7, r0, 24 - cmp r7, 0x4 - bne _0810DC56 - movs r7, 0 -_0810DC56: - adds r0, r6, 0x1 - lsls r0, 24 - lsrs r6, r0, 24 -_0810DC5C: - ldr r0, _0810DC78 @ =gSpecialVar_0x8004 - ldrh r0, [r0] - cmp r6, r0 - bcc _0810DBDC - add sp, 0x14 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0810DC74: .4byte gLinkPlayers -_0810DC78: .4byte gSpecialVar_0x8004 - thumb_func_end sub_810DB28 - - thumb_func_start sub_810DC7C -sub_810DC7C: @ 810DC7C - push {r4,r5,lr} - movs r4, 0 - ldr r5, _0810DC9C @ =gUnknown_083F8364 -_0810DC82: - ldr r0, _0810DCA0 @ =gSpecialVar_0x8004 - ldrh r0, [r0] - cmp r4, r0 - bne _0810DCA8 - lsls r1, r4, 2 - adds r1, r5 - ldrb r0, [r1] - ldrb r1, [r1, 0x1] - ldr r2, _0810DCA4 @ =0x00000206 - bl MapGridSetMetatileIdAt - b _0810DCB6 - .align 2, 0 -_0810DC9C: .4byte gUnknown_083F8364 -_0810DCA0: .4byte gSpecialVar_0x8004 -_0810DCA4: .4byte 0x00000206 -_0810DCA8: - lsls r1, r4, 2 - adds r1, r5 - ldrb r0, [r1] - ldrb r1, [r1, 0x1] - ldr r2, _0810DCC8 @ =0x00000205 - bl MapGridSetMetatileIdAt -_0810DCB6: - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x2 - bls _0810DC82 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0810DCC8: .4byte 0x00000205 - thumb_func_end sub_810DC7C - - thumb_func_start sub_810DCCC -sub_810DCCC: @ 810DCCC - push {r4-r6,lr} - movs r5, 0xC -_0810DCD0: - movs r4, 0x7 - adds r6, r5, 0x1 -_0810DCD4: - adds r0, r4, 0 - adds r1, r5, 0 - bl MapGridGetMetatileIdAt - ldr r1, _0810DCF0 @ =0xfffffde6 - adds r0, r1 - cmp r0, 0x37 - bls _0810DCE6 - b _0810DEC0 -_0810DCE6: - lsls r0, 2 - ldr r1, _0810DCF4 @ =_0810DCF8 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0810DCF0: .4byte 0xfffffde6 -_0810DCF4: .4byte _0810DCF8 - .align 2, 0 -_0810DCF8: - .4byte _0810DE7E - .4byte _0810DEC0 - .4byte _0810DEC0 - .4byte _0810DEC0 - .4byte _0810DEC0 - .4byte _0810DEC0 - .4byte _0810DDD8 - .4byte _0810DDDE - .4byte _0810DE18 - .4byte _0810DE20 - .4byte _0810DEC0 - .4byte _0810DEC0 - .4byte _0810DEC0 - .4byte _0810DEC0 - .4byte _0810DDE8 - .4byte _0810DDEE - .4byte _0810DE28 - .4byte _0810DE30 - .4byte _0810DEC0 - .4byte _0810DEC0 - .4byte _0810DEC0 - .4byte _0810DEC0 - .4byte _0810DDF8 - .4byte _0810DDFE - .4byte _0810DE38 - .4byte _0810DE40 - .4byte _0810DEC0 - .4byte _0810DEC0 - .4byte _0810DEC0 - .4byte _0810DEC0 - .4byte _0810DE08 - .4byte _0810DE10 - .4byte _0810DE48 - .4byte _0810DE50 - .4byte _0810DEC0 - .4byte _0810DEC0 - .4byte _0810DEC0 - .4byte _0810DEC0 - .4byte _0810DE58 - .4byte _0810DE68 - .4byte _0810DE78 - .4byte _0810DEA0 - .4byte _0810DEC0 - .4byte _0810DEC0 - .4byte _0810DEC0 - .4byte _0810DEC0 - .4byte _0810DE60 - .4byte _0810DE70 - .4byte _0810DEC0 - .4byte _0810DEC0 - .4byte _0810DEC0 - .4byte _0810DEC0 - .4byte _0810DEC0 - .4byte _0810DEC0 - .4byte _0810DEB6 - .4byte _0810DEA8 -_0810DDD8: - movs r2, 0x8C - lsls r2, 2 - b _0810DEAC -_0810DDDE: - ldr r2, _0810DDE4 @ =0x00000231 - b _0810DEAC - .align 2, 0 -_0810DDE4: .4byte 0x00000231 -_0810DDE8: - movs r2, 0x8E - lsls r2, 2 - b _0810DEAC -_0810DDEE: - ldr r2, _0810DDF4 @ =0x00000239 - b _0810DEAC - .align 2, 0 -_0810DDF4: .4byte 0x00000239 -_0810DDF8: - movs r2, 0x88 - lsls r2, 2 - b _0810DEAC -_0810DDFE: - ldr r2, _0810DE04 @ =0x00000221 - b _0810DEAC - .align 2, 0 -_0810DE04: .4byte 0x00000221 -_0810DE08: - ldr r2, _0810DE0C @ =0x00000e28 - b _0810DEAC - .align 2, 0 -_0810DE0C: .4byte 0x00000e28 -_0810DE10: - ldr r2, _0810DE14 @ =0x00000e29 - b _0810DEAC - .align 2, 0 -_0810DE14: .4byte 0x00000e29 -_0810DE18: - ldr r2, _0810DE1C @ =0x00000232 - b _0810DEAC - .align 2, 0 -_0810DE1C: .4byte 0x00000232 -_0810DE20: - ldr r2, _0810DE24 @ =0x00000233 - b _0810DEAC - .align 2, 0 -_0810DE24: .4byte 0x00000233 -_0810DE28: - ldr r2, _0810DE2C @ =0x0000023a - b _0810DEAC - .align 2, 0 -_0810DE2C: .4byte 0x0000023a -_0810DE30: - ldr r2, _0810DE34 @ =0x0000023b - b _0810DEAC - .align 2, 0 -_0810DE34: .4byte 0x0000023b -_0810DE38: - ldr r2, _0810DE3C @ =0x00000222 - b _0810DEAC - .align 2, 0 -_0810DE3C: .4byte 0x00000222 -_0810DE40: - ldr r2, _0810DE44 @ =0x00000223 - b _0810DEAC - .align 2, 0 -_0810DE44: .4byte 0x00000223 -_0810DE48: - ldr r2, _0810DE4C @ =0x00000e2a - b _0810DEAC - .align 2, 0 -_0810DE4C: .4byte 0x00000e2a -_0810DE50: - ldr r2, _0810DE54 @ =0x00000e2b - b _0810DEAC - .align 2, 0 -_0810DE54: .4byte 0x00000e2b -_0810DE58: - ldr r2, _0810DE5C @ =0x00000e42 - b _0810DEAC - .align 2, 0 -_0810DE5C: .4byte 0x00000e42 -_0810DE60: - ldr r2, _0810DE64 @ =0x0000021a - b _0810DEAC - .align 2, 0 -_0810DE64: .4byte 0x0000021a -_0810DE68: - ldr r2, _0810DE6C @ =0x00000e43 - b _0810DEAC - .align 2, 0 -_0810DE6C: .4byte 0x00000e43 -_0810DE70: - ldr r2, _0810DE74 @ =0x0000021a - b _0810DEAC - .align 2, 0 -_0810DE74: .4byte 0x0000021a -_0810DE78: - movs r2, 0xE4 - lsls r2, 4 - b _0810DEAC -_0810DE7E: - subs r1, r5, 0x1 - adds r0, r4, 0 - bl MapGridGetMetatileIdAt - movs r1, 0x90 - lsls r1, 2 - cmp r0, r1 - bne _0810DE98 - ldr r2, _0810DE94 @ =0x00000e48 - b _0810DEAC - .align 2, 0 -_0810DE94: .4byte 0x00000e48 -_0810DE98: - ldr r2, _0810DE9C @ =0x00000e49 - b _0810DEAC - .align 2, 0 -_0810DE9C: .4byte 0x00000e49 -_0810DEA0: - ldr r2, _0810DEA4 @ =0x00000e41 - b _0810DEAC - .align 2, 0 -_0810DEA4: .4byte 0x00000e41 -_0810DEA8: - movs r2, 0xE5 - lsls r2, 4 -_0810DEAC: - adds r0, r4, 0 - adds r1, r5, 0 - bl MapGridSetMetatileIdAt - b _0810DEC0 -_0810DEB6: - ldr r2, _0810DED8 @ =0x00000251 - adds r0, r4, 0 - adds r1, r5, 0 - bl MapGridSetMetatileIdAt -_0810DEC0: - adds r4, 0x1 - cmp r4, 0xF - bgt _0810DEC8 - b _0810DCD4 -_0810DEC8: - adds r5, r6, 0 - cmp r5, 0x17 - bgt _0810DED0 - b _0810DCD0 -_0810DED0: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0810DED8: .4byte 0x00000251 - thumb_func_end sub_810DCCC - - thumb_func_start sub_810DEDC -sub_810DEDC: @ 810DEDC - push {r4-r6,lr} - ldr r4, _0810DF18 @ =gUnknown_083F8364 - movs r5, 0x2 -_0810DEE2: - ldrb r0, [r4] - ldrb r1, [r4, 0x1] - ldr r2, _0810DF1C @ =0x00000206 - bl MapGridSetMetatileIdAt - adds r4, 0x4 - subs r5, 0x1 - cmp r5, 0 - bge _0810DEE2 - movs r5, 0xC -_0810DEF6: - movs r4, 0x7 - adds r6, r5, 0x1 -_0810DEFA: - adds r0, r4, 0 - adds r1, r5, 0 - bl MapGridGetMetatileIdAt - ldr r1, _0810DF20 @ =0xfffffde0 - adds r0, r1 - cmp r0, 0x30 - bls _0810DF0C - b _0810E056 -_0810DF0C: - lsls r0, 2 - ldr r1, _0810DF24 @ =_0810DF28 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0810DF18: .4byte gUnknown_083F8364 -_0810DF1C: .4byte 0x00000206 -_0810DF20: .4byte 0xfffffde0 -_0810DF24: .4byte _0810DF28 - .align 2, 0 -_0810DF28: - .4byte _0810DFEC - .4byte _0810DFF2 - .4byte _0810E00C - .4byte _0810E014 - .4byte _0810E056 - .4byte _0810E056 - .4byte _0810E056 - .4byte _0810E056 - .4byte _0810DFFC - .4byte _0810E002 - .4byte _0810E01C - .4byte _0810E024 - .4byte _0810E056 - .4byte _0810E056 - .4byte _0810E056 - .4byte _0810E056 - .4byte _0810E056 - .4byte _0810E056 - .4byte _0810E056 - .4byte _0810E056 - .4byte _0810E056 - .4byte _0810E056 - .4byte _0810E056 - .4byte _0810E056 - .4byte _0810E056 - .4byte _0810E056 - .4byte _0810E056 - .4byte _0810E056 - .4byte _0810E056 - .4byte _0810E056 - .4byte _0810E056 - .4byte _0810E056 - .4byte _0810E02C - .4byte _0810E034 - .4byte _0810E056 - .4byte _0810E056 - .4byte _0810E056 - .4byte _0810E056 - .4byte _0810E056 - .4byte _0810E056 - .4byte _0810E03C - .4byte _0810E03C - .4byte _0810E056 - .4byte _0810E056 - .4byte _0810E056 - .4byte _0810E056 - .4byte _0810E056 - .4byte _0810E056 - .4byte _0810E04C -_0810DFEC: - movs r2, 0x8C - lsls r2, 2 - b _0810E03E -_0810DFF2: - ldr r2, _0810DFF8 @ =0x00000231 - b _0810E03E - .align 2, 0 -_0810DFF8: .4byte 0x00000231 -_0810DFFC: - movs r2, 0x8E - lsls r2, 2 - b _0810E03E -_0810E002: - ldr r2, _0810E008 @ =0x00000239 - b _0810E03E - .align 2, 0 -_0810E008: .4byte 0x00000239 -_0810E00C: - ldr r2, _0810E010 @ =0x00000232 - b _0810E03E - .align 2, 0 -_0810E010: .4byte 0x00000232 -_0810E014: - ldr r2, _0810E018 @ =0x00000233 - b _0810E03E - .align 2, 0 -_0810E018: .4byte 0x00000233 -_0810E01C: - ldr r2, _0810E020 @ =0x0000023a - b _0810E03E - .align 2, 0 -_0810E020: .4byte 0x0000023a -_0810E024: - ldr r2, _0810E028 @ =0x0000023b - b _0810E03E - .align 2, 0 -_0810E028: .4byte 0x0000023b -_0810E02C: - ldr r2, _0810E030 @ =0x00000e42 - b _0810E03E - .align 2, 0 -_0810E030: .4byte 0x00000e42 -_0810E034: - ldr r2, _0810E038 @ =0x00000e43 - b _0810E03E - .align 2, 0 -_0810E038: .4byte 0x00000e43 -_0810E03C: - ldr r2, _0810E048 @ =0x0000021a -_0810E03E: - adds r0, r4, 0 - adds r1, r5, 0 - bl MapGridSetMetatileIdAt - b _0810E056 - .align 2, 0 -_0810E048: .4byte 0x0000021a -_0810E04C: - ldr r2, _0810E06C @ =0x00000251 - adds r0, r4, 0 - adds r1, r5, 0 - bl MapGridSetMetatileIdAt -_0810E056: - adds r4, 0x1 - cmp r4, 0xF - bgt _0810E05E - b _0810DEFA -_0810E05E: - adds r5, r6, 0 - cmp r5, 0x17 - bgt _0810E066 - b _0810DEF6 -_0810E066: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0810E06C: .4byte 0x00000251 - thumb_func_end sub_810DEDC - - thumb_func_start sub_810E070 -sub_810E070: @ 810E070 - push {lr} - ldr r0, _0810E090 @ =gUnknown_02039258 - movs r1, 0 - strb r1, [r0] - ldr r0, _0810E094 @ =gUnknown_02039259 - strb r1, [r0] - movs r0, 0x2C - bl PlaySE - ldr r0, _0810E098 @ =sub_810E09C - movs r1, 0x8 - bl CreateTask - pop {r0} - bx r0 - .align 2, 0 -_0810E090: .4byte gUnknown_02039258 -_0810E094: .4byte gUnknown_02039259 -_0810E098: .4byte sub_810E09C - thumb_func_end sub_810E070 - - thumb_func_start sub_810E09C -sub_810E09C: @ 810E09C - push {r4-r6,lr} - lsls r0, 24 - lsrs r6, r0, 24 - ldr r0, _0810E0E4 @ =gUnknown_083F8370 - ldr r5, _0810E0E8 @ =gUnknown_02039259 - ldrb r1, [r5] - adds r0, r1, r0 - ldr r4, _0810E0EC @ =gUnknown_02039258 - ldrb r2, [r4] - ldrb r0, [r0] - cmp r0, r2 - bne _0810E0F8 - ldr r0, _0810E0F0 @ =gSpecialVar_0x8004 - ldrb r0, [r0] - ldr r2, _0810E0F4 @ =gUnknown_083F8376 - lsls r1, 1 - adds r1, r2 - ldrh r1, [r1] - bl sub_810E104 - movs r0, 0 - strb r0, [r4] - ldrb r0, [r5] - adds r0, 0x1 - strb r0, [r5] - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x5 - bne _0810E0FC - adds r0, r6, 0 - bl DestroyTask - bl EnableBothScriptContexts - b _0810E0FC - .align 2, 0 -_0810E0E4: .4byte gUnknown_083F8370 -_0810E0E8: .4byte gUnknown_02039259 -_0810E0EC: .4byte gUnknown_02039258 -_0810E0F0: .4byte gSpecialVar_0x8004 -_0810E0F4: .4byte gUnknown_083F8376 -_0810E0F8: - adds r0, r2, 0x1 - strb r0, [r4] -_0810E0FC: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_810E09C - - thumb_func_start sub_810E104 -sub_810E104: @ 810E104 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x10 - lsls r0, 24 - lsrs r0, 24 - lsls r1, 16 - lsrs r2, r1, 16 - movs r7, 0 - subs r0, 0x1 - cmp r0, 0x7 - bhi _0810E1CC - lsls r0, 2 - ldr r1, _0810E128 @ =_0810E12C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0810E128: .4byte _0810E12C - .align 2, 0 -_0810E12C: - .4byte _0810E14C - .4byte _0810E15E - .4byte _0810E170 - .4byte _0810E182 - .4byte _0810E190 - .4byte _0810E1A6 - .4byte _0810E1B2 - .4byte _0810E1C0 -_0810E14C: - movs r7, 0x2 - mov r1, sp - movs r0, 0x1 - strh r0, [r1] - movs r0, 0x7 - strh r0, [r1, 0x2] - add r1, sp, 0x8 - movs r0, 0x68 - b _0810E1A0 -_0810E15E: - movs r7, 0x2 - mov r1, sp - movs r0, 0x1 - strh r0, [r1] - movs r0, 0x7 - strh r0, [r1, 0x2] - add r1, sp, 0x8 - movs r0, 0x4E - b _0810E1A0 -_0810E170: - movs r7, 0x2 - mov r1, sp - movs r0, 0x1 - strh r0, [r1] - movs r0, 0x7 - strh r0, [r1, 0x2] - add r1, sp, 0x8 - movs r0, 0x5B - b _0810E1A0 -_0810E182: - movs r7, 0x1 - mov r1, sp - movs r0, 0x7 - strh r0, [r1] - add r1, sp, 0x8 - movs r0, 0x27 - b _0810E1CA -_0810E190: - movs r7, 0x2 - mov r1, sp - movs r0, 0x1 - strh r0, [r1] - movs r0, 0x7 - strh r0, [r1, 0x2] - add r1, sp, 0x8 - movs r0, 0x34 -_0810E1A0: - strh r0, [r1] - strh r0, [r1, 0x2] - b _0810E1CC -_0810E1A6: - movs r7, 0x1 - mov r0, sp - strh r7, [r0] - add r1, sp, 0x8 - movs r0, 0x41 - b _0810E1CA -_0810E1B2: - movs r7, 0x1 - mov r1, sp - movs r0, 0x7 - strh r0, [r1] - add r1, sp, 0x8 - movs r0, 0xD - b _0810E1CA -_0810E1C0: - movs r7, 0x1 - mov r0, sp - strh r7, [r0] - add r1, sp, 0x8 - movs r0, 0x1A -_0810E1CA: - strh r0, [r1] -_0810E1CC: - movs r6, 0 - cmp r6, r7 - bcs _0810E21E - movs r1, 0xC0 - lsls r1, 4 - adds r0, r1, 0 - adds r1, r2, 0 - orrs r1, r0 - lsls r1, 16 - mov r9, r1 - adds r1, r2, 0 - adds r1, 0x8 - orrs r1, r0 - lsls r1, 16 - mov r8, r1 -_0810E1EA: - lsls r1, r6, 1 - mov r3, sp - adds r5, r3, r1 - ldrh r0, [r5] - adds r0, 0x7 - add r4, sp, 0x8 - adds r4, r1 - ldrh r1, [r4] - adds r1, 0x7 - mov r3, r9 - lsrs r2, r3, 16 - bl MapGridSetMetatileIdAt - ldrh r0, [r5] - adds r0, 0x7 - ldrh r1, [r4] - adds r1, 0x8 - mov r3, r8 - lsrs r2, r3, 16 - bl MapGridSetMetatileIdAt - adds r0, r6, 0x1 - lsls r0, 24 - lsrs r6, r0, 24 - cmp r6, r7 - bcc _0810E1EA -_0810E21E: - bl DrawWholeMapView - add sp, 0x10 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_810E104 - - thumb_func_start sub_810E230 -sub_810E230: @ 810E230 - push {lr} - ldr r0, _0810E244 @ =gSpecialVar_0x8004 - ldrb r0, [r0] - ldr r1, _0810E248 @ =gUnknown_083F8376 - ldrh r1, [r1, 0x8] - bl sub_810E104 - pop {r0} - bx r0 - .align 2, 0 -_0810E244: .4byte gSpecialVar_0x8004 -_0810E248: .4byte gUnknown_083F8376 - thumb_func_end sub_810E230 - - thumb_func_start ShowFieldMessageStringVar4 -ShowFieldMessageStringVar4: @ 810E24C - push {lr} - ldr r0, _0810E258 @ =gStringVar4 - bl ShowFieldMessage - pop {r0} - bx r0 - .align 2, 0 -_0810E258: .4byte gStringVar4 - thumb_func_end ShowFieldMessageStringVar4 - - thumb_func_start StorePlayerCoordsInVars -StorePlayerCoordsInVars: @ 810E25C - ldr r1, _0810E26C @ =gSpecialVar_0x8004 - ldr r2, _0810E270 @ =gSaveBlock1 - ldrh r0, [r2] - strh r0, [r1] - ldr r1, _0810E274 @ =gSpecialVar_0x8005 - ldrh r0, [r2, 0x2] - strh r0, [r1] - bx lr - .align 2, 0 -_0810E26C: .4byte gSpecialVar_0x8004 -_0810E270: .4byte gSaveBlock1 -_0810E274: .4byte gSpecialVar_0x8005 - thumb_func_end StorePlayerCoordsInVars - - thumb_func_start GetPlayerTrainerIdOnesDigit -GetPlayerTrainerIdOnesDigit: @ 810E278 - push {lr} - ldr r0, _0810E294 @ =gSaveBlock2 - ldrb r1, [r0, 0xB] - lsls r1, 8 - ldrb r0, [r0, 0xA] - orrs r0, r1 - movs r1, 0xA - bl __umodsi3 - lsls r0, 24 - lsrs r0, 24 - pop {r1} - bx r1 - .align 2, 0 -_0810E294: .4byte gSaveBlock2 - thumb_func_end GetPlayerTrainerIdOnesDigit - - thumb_func_start GetPlayerBigGuyGirlString -GetPlayerBigGuyGirlString: @ 810E298 - push {lr} - ldr r0, _0810E2AC @ =gSaveBlock2 - ldrb r0, [r0, 0x8] - cmp r0, 0 - bne _0810E2B8 - ldr r0, _0810E2B0 @ =gStringVar1 - ldr r1, _0810E2B4 @ =gOtherText_BigGuy - bl StringCopy - b _0810E2C0 - .align 2, 0 -_0810E2AC: .4byte gSaveBlock2 -_0810E2B0: .4byte gStringVar1 -_0810E2B4: .4byte gOtherText_BigGuy -_0810E2B8: - ldr r0, _0810E2C4 @ =gStringVar1 - ldr r1, _0810E2C8 @ =gOtherText_BigGirl - bl StringCopy -_0810E2C0: - pop {r0} - bx r0 - .align 2, 0 -_0810E2C4: .4byte gStringVar1 -_0810E2C8: .4byte gOtherText_BigGirl - thumb_func_end GetPlayerBigGuyGirlString - - thumb_func_start GetRivalSonDaughterString -GetRivalSonDaughterString: @ 810E2CC - push {lr} - ldr r0, _0810E2E0 @ =gSaveBlock2 - ldrb r0, [r0, 0x8] - cmp r0, 0 - bne _0810E2EC - ldr r0, _0810E2E4 @ =gStringVar1 - ldr r1, _0810E2E8 @ =gOtherText_Daughter - bl StringCopy - b _0810E2F4 - .align 2, 0 -_0810E2E0: .4byte gSaveBlock2 -_0810E2E4: .4byte gStringVar1 -_0810E2E8: .4byte gOtherText_Daughter -_0810E2EC: - ldr r0, _0810E2F8 @ =gStringVar1 - ldr r1, _0810E2FC @ =gOtherText_Son - bl StringCopy -_0810E2F4: - pop {r0} - bx r0 - .align 2, 0 -_0810E2F8: .4byte gStringVar1 -_0810E2FC: .4byte gOtherText_Son - thumb_func_end GetRivalSonDaughterString - - thumb_func_start sub_810E300 -sub_810E300: @ 810E300 - ldr r0, _0810E308 @ =gUnknown_02024D26 - ldrb r0, [r0] - bx lr - .align 2, 0 -_0810E308: .4byte gUnknown_02024D26 - thumb_func_end sub_810E300 - - thumb_func_start CableCarWarp -CableCarWarp: @ 810E30C - push {lr} - sub sp, 0x4 - ldr r0, _0810E32C @ =gSpecialVar_0x8004 - ldrh r0, [r0] - cmp r0, 0 - beq _0810E330 - movs r2, 0x1 - negs r2, r2 - movs r0, 0x4 - str r0, [sp] - movs r0, 0x13 - movs r1, 0 - movs r3, 0x6 - bl warp1_set - b _0810E342 - .align 2, 0 -_0810E32C: .4byte gSpecialVar_0x8004 -_0810E330: - movs r2, 0x1 - negs r2, r2 - movs r0, 0x4 - str r0, [sp] - movs r0, 0x13 - movs r1, 0x1 - movs r3, 0x6 - bl warp1_set -_0810E342: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end CableCarWarp - - thumb_func_start SetFlagInVar -SetFlagInVar: @ 810E348 - push {lr} - ldr r0, _0810E358 @ =gSpecialVar_0x8004 - ldrh r0, [r0] - bl FlagSet - pop {r0} - bx r0 - .align 2, 0 -_0810E358: .4byte gSpecialVar_0x8004 - thumb_func_end SetFlagInVar - - thumb_func_start GetWeekCount -GetWeekCount: @ 810E35C - push {lr} - ldr r0, _0810E37C @ =gLocalTime - movs r1, 0 - ldrsh r0, [r0, r1] - movs r1, 0x7 - bl __divsi3 - lsls r0, 16 - lsrs r0, 16 - ldr r1, _0810E380 @ =0x0000270f - cmp r0, r1 - bls _0810E376 - adds r0, r1, 0 -_0810E376: - pop {r1} - bx r1 - .align 2, 0 -_0810E37C: .4byte gLocalTime -_0810E380: .4byte 0x0000270f - thumb_func_end GetWeekCount - - thumb_func_start GetLeadMonFriendshipScore -GetLeadMonFriendshipScore: @ 810E384 - push {r4,lr} - bl GetLeadMonIndex - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x64 - muls r1, r0 - ldr r0, _0810E3A8 @ =gPlayerParty - adds r4, r1, r0 - adds r0, r4, 0 - movs r1, 0x20 - bl GetMonData - cmp r0, 0xFF - bne _0810E3AC - movs r0, 0x6 - b _0810E3FE - .align 2, 0 -_0810E3A8: .4byte gPlayerParty -_0810E3AC: - adds r0, r4, 0 - movs r1, 0x20 - bl GetMonData - cmp r0, 0xC7 - bls _0810E3BC - movs r0, 0x5 - b _0810E3FE -_0810E3BC: - adds r0, r4, 0 - movs r1, 0x20 - bl GetMonData - cmp r0, 0x95 - bls _0810E3CC - movs r0, 0x4 - b _0810E3FE -_0810E3CC: - adds r0, r4, 0 - movs r1, 0x20 - bl GetMonData - cmp r0, 0x63 - bls _0810E3DC - movs r0, 0x3 - b _0810E3FE -_0810E3DC: - adds r0, r4, 0 - movs r1, 0x20 - bl GetMonData - cmp r0, 0x31 - bls _0810E3EC - movs r0, 0x2 - b _0810E3FE -_0810E3EC: - adds r0, r4, 0 - movs r1, 0x20 - bl GetMonData - cmp r0, 0 - bne _0810E3FC - movs r0, 0 - b _0810E3FE -_0810E3FC: - movs r0, 0x1 -_0810E3FE: - pop {r4} - pop {r1} - bx r1 - thumb_func_end GetLeadMonFriendshipScore - - thumb_func_start CB2_FieldShowRegionMap -CB2_FieldShowRegionMap: @ 810E404 - push {lr} - ldr r0, _0810E410 @ =c2_exit_to_overworld_1_continue_scripts_restart_music - bl FieldInitRegionMap - pop {r0} - bx r0 - .align 2, 0 -_0810E410: .4byte c2_exit_to_overworld_1_continue_scripts_restart_music - thumb_func_end CB2_FieldShowRegionMap - - thumb_func_start FieldShowRegionMap -FieldShowRegionMap: @ 810E414 - push {lr} - ldr r0, _0810E420 @ =CB2_FieldShowRegionMap - bl SetMainCallback2 - pop {r0} - bx r0 - .align 2, 0 -_0810E420: .4byte CB2_FieldShowRegionMap - thumb_func_end FieldShowRegionMap - - thumb_func_start DoPCTurnOnEffect -DoPCTurnOnEffect: @ 810E424 - push {r4,lr} - ldr r4, _0810E460 @ =Task_PCTurnOnEffect - adds r0, r4, 0 - bl FuncIsActiveTask - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _0810E458 - adds r0, r4, 0 - movs r1, 0x8 - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - ldr r2, _0810E464 @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - movs r2, 0 - strh r2, [r1, 0x8] - strh r0, [r1, 0xA] - strh r2, [r1, 0xC] - strh r2, [r1, 0xE] - strh r2, [r1, 0x10] -_0810E458: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0810E460: .4byte Task_PCTurnOnEffect -_0810E464: .4byte gTasks - thumb_func_end DoPCTurnOnEffect - - thumb_func_start Task_PCTurnOnEffect -Task_PCTurnOnEffect: @ 810E468 - push {lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - ldr r0, _0810E48C @ =gTasks - adds r1, r0 - movs r2, 0x8 - ldrsh r0, [r1, r2] - cmp r0, 0 - bne _0810E486 - adds r0, r1, 0 - bl PCTurnOffEffect_0 -_0810E486: - pop {r0} - bx r0 - .align 2, 0 -_0810E48C: .4byte gTasks - thumb_func_end Task_PCTurnOnEffect - - thumb_func_start PCTurnOffEffect_0 -PCTurnOffEffect_0: @ 810E490 - push {r4-r6,lr} - adds r4, r0, 0 - movs r6, 0 - movs r5, 0 - movs r1, 0xE - ldrsh r0, [r4, r1] - cmp r0, 0x6 - bne _0810E4FC - strh r5, [r4, 0xE] - bl player_get_direction_lower_nybble - lsls r0, 24 - lsrs r0, 24 - adds r1, r0, 0 - cmp r0, 0x3 - beq _0810E4C4 - cmp r0, 0x3 - bgt _0810E4BA - cmp r0, 0x2 - beq _0810E4C0 - b _0810E4CC -_0810E4BA: - cmp r1, 0x4 - beq _0810E4C8 - b _0810E4CC -_0810E4C0: - movs r6, 0 - b _0810E4CA -_0810E4C4: - movs r6, 0xFF - b _0810E4CA -_0810E4C8: - movs r6, 0x1 -_0810E4CA: - movs r5, 0xFF -_0810E4CC: - movs r1, 0x10 - ldrsh r0, [r4, r1] - lsls r1, r6, 24 - asrs r1, 24 - lsls r2, r5, 24 - asrs r2, 24 - bl PCTurnOffEffect_1 - bl DrawWholeMapView - ldrh r0, [r4, 0x10] - movs r1, 0x1 - eors r0, r1 - strh r0, [r4, 0x10] - ldrh r0, [r4, 0xC] - adds r0, 0x1 - strh r0, [r4, 0xC] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x5 - bne _0810E4FC - ldrb r0, [r4, 0xA] - bl DestroyTask -_0810E4FC: - ldrh r0, [r4, 0xE] - adds r0, 0x1 - strh r0, [r4, 0xE] - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end PCTurnOffEffect_0 - - thumb_func_start PCTurnOffEffect_1 -PCTurnOffEffect_1: @ 810E508 - push {r4,r5,lr} - lsls r1, 24 - lsrs r1, 24 - lsls r2, 24 - lsrs r4, r2, 24 - movs r3, 0 - lsls r0, 16 - cmp r0, 0 - beq _0810E544 - ldr r0, _0810E528 @ =gSpecialVar_0x8004 - ldrh r0, [r0] - cmp r0, 0 - bne _0810E52C - movs r3, 0x4 - b _0810E566 - .align 2, 0 -_0810E528: .4byte gSpecialVar_0x8004 -_0810E52C: - cmp r0, 0x1 - bne _0810E538 - ldr r3, _0810E534 @ =0x0000025a - b _0810E566 - .align 2, 0 -_0810E534: .4byte 0x0000025a -_0810E538: - cmp r0, 0x2 - bne _0810E566 - ldr r3, _0810E540 @ =0x00000259 - b _0810E566 - .align 2, 0 -_0810E540: .4byte 0x00000259 -_0810E544: - ldr r0, _0810E550 @ =gSpecialVar_0x8004 - ldrh r0, [r0] - cmp r0, 0 - bne _0810E554 - movs r3, 0x5 - b _0810E566 - .align 2, 0 -_0810E550: .4byte gSpecialVar_0x8004 -_0810E554: - cmp r0, 0x1 - bne _0810E560 - ldr r3, _0810E55C @ =0x0000027f - b _0810E566 - .align 2, 0 -_0810E55C: .4byte 0x0000027f -_0810E560: - cmp r0, 0x2 - bne _0810E566 - ldr r3, _0810E594 @ =0x0000027e -_0810E566: - ldr r2, _0810E598 @ =gSaveBlock1 - movs r5, 0 - ldrsh r0, [r2, r5] - lsls r1, 24 - asrs r1, 24 - adds r0, r1 - adds r0, 0x7 - movs r5, 0x2 - ldrsh r1, [r2, r5] - lsls r2, r4, 24 - asrs r2, 24 - adds r1, r2 - adds r1, 0x7 - movs r4, 0xC0 - lsls r4, 4 - adds r2, r4, 0 - orrs r3, r2 - adds r2, r3, 0 - bl MapGridSetMetatileIdAt - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0810E594: .4byte 0x0000027e -_0810E598: .4byte gSaveBlock1 - thumb_func_end PCTurnOffEffect_1 - - thumb_func_start DoPCTurnOffEffect -DoPCTurnOffEffect: @ 810E59C - push {lr} - bl PCTurnOffEffect - pop {r0} - bx r0 - thumb_func_end DoPCTurnOffEffect - - thumb_func_start PCTurnOffEffect -PCTurnOffEffect: @ 810E5A8 - push {r4-r6,lr} - movs r6, 0 - movs r5, 0 - movs r4, 0 - bl player_get_direction_lower_nybble - lsls r0, 24 - lsrs r0, 24 - adds r1, r0, 0 - cmp r0, 0x3 - beq _0810E5D2 - cmp r0, 0x3 - bgt _0810E5C8 - cmp r0, 0x2 - beq _0810E5CE - b _0810E5DA -_0810E5C8: - cmp r1, 0x4 - beq _0810E5D6 - b _0810E5DA -_0810E5CE: - movs r6, 0 - b _0810E5D8 -_0810E5D2: - movs r6, 0xFF - b _0810E5D8 -_0810E5D6: - movs r6, 0x1 -_0810E5D8: - movs r5, 0xFF -_0810E5DA: - ldr r0, _0810E5E8 @ =gSpecialVar_0x8004 - ldrh r0, [r0] - cmp r0, 0 - bne _0810E5EC - movs r4, 0x4 - b _0810E5FE - .align 2, 0 -_0810E5E8: .4byte gSpecialVar_0x8004 -_0810E5EC: - cmp r0, 0x1 - bne _0810E5F8 - ldr r4, _0810E5F4 @ =0x0000025a - b _0810E5FE - .align 2, 0 -_0810E5F4: .4byte 0x0000025a -_0810E5F8: - cmp r0, 0x2 - bne _0810E5FE - ldr r4, _0810E630 @ =0x00000259 -_0810E5FE: - ldr r2, _0810E634 @ =gSaveBlock1 - movs r1, 0 - ldrsh r0, [r2, r1] - lsls r1, r6, 24 - asrs r1, 24 - adds r0, r1 - adds r0, 0x7 - movs r3, 0x2 - ldrsh r1, [r2, r3] - lsls r2, r5, 24 - asrs r2, 24 - adds r1, r2 - adds r1, 0x7 - movs r3, 0xC0 - lsls r3, 4 - adds r2, r3, 0 - orrs r4, r2 - adds r2, r4, 0 - bl MapGridSetMetatileIdAt - bl DrawWholeMapView - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0810E630: .4byte 0x00000259 -_0810E634: .4byte gSaveBlock1 - thumb_func_end PCTurnOffEffect - - thumb_func_start DoLotteryCornerComputerEffect -DoLotteryCornerComputerEffect: @ 810E638 - push {r4,lr} - ldr r4, _0810E674 @ =Task_LotteryCornerComputerEffect - adds r0, r4, 0 - bl FuncIsActiveTask - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _0810E66C - adds r0, r4, 0 - movs r1, 0x8 - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - ldr r2, _0810E678 @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - movs r2, 0 - strh r2, [r1, 0x8] - strh r0, [r1, 0xA] - strh r2, [r1, 0xC] - strh r2, [r1, 0xE] - strh r2, [r1, 0x10] -_0810E66C: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0810E674: .4byte Task_LotteryCornerComputerEffect -_0810E678: .4byte gTasks - thumb_func_end DoLotteryCornerComputerEffect - - thumb_func_start Task_LotteryCornerComputerEffect -Task_LotteryCornerComputerEffect: @ 810E67C - push {lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - ldr r0, _0810E6A0 @ =gTasks - adds r1, r0 - movs r2, 0x8 - ldrsh r0, [r1, r2] - cmp r0, 0 - bne _0810E69A - adds r0, r1, 0 - bl LotteryCornerComputerEffect -_0810E69A: - pop {r0} - bx r0 - .align 2, 0 -_0810E6A0: .4byte gTasks - thumb_func_end Task_LotteryCornerComputerEffect - - thumb_func_start LotteryCornerComputerEffect -LotteryCornerComputerEffect: @ 810E6A4 - push {r4,lr} - adds r4, r0, 0 - movs r1, 0xE - ldrsh r0, [r4, r1] - cmp r0, 0x6 - bne _0810E712 - movs r0, 0 - strh r0, [r4, 0xE] - movs r1, 0x10 - ldrsh r0, [r4, r1] - cmp r0, 0 - beq _0810E6DC - ldr r2, _0810E6D4 @ =0x00000e9d - movs r0, 0x12 - movs r1, 0x8 - bl MapGridSetMetatileIdAt - ldr r2, _0810E6D8 @ =0x00000ea5 - movs r0, 0x12 - movs r1, 0x9 - bl MapGridSetMetatileIdAt - b _0810E6F2 - .align 2, 0 -_0810E6D4: .4byte 0x00000e9d -_0810E6D8: .4byte 0x00000ea5 -_0810E6DC: - ldr r2, _0810E720 @ =0x00000e58 - movs r0, 0x12 - movs r1, 0x8 - bl MapGridSetMetatileIdAt - movs r2, 0xE6 - lsls r2, 4 - movs r0, 0x12 - movs r1, 0x9 - bl MapGridSetMetatileIdAt -_0810E6F2: - bl DrawWholeMapView - ldrh r0, [r4, 0x10] - movs r1, 0x1 - eors r0, r1 - strh r0, [r4, 0x10] - ldrh r0, [r4, 0xC] - adds r0, 0x1 - strh r0, [r4, 0xC] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x5 - bne _0810E712 - ldrb r0, [r4, 0xA] - bl DestroyTask -_0810E712: - ldrh r0, [r4, 0xE] - adds r0, 0x1 - strh r0, [r4, 0xE] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0810E720: .4byte 0x00000e58 - thumb_func_end LotteryCornerComputerEffect - - thumb_func_start EndLotteryCornerComputerEffect -EndLotteryCornerComputerEffect: @ 810E724 - push {lr} - ldr r2, _0810E744 @ =0x00000e9d - movs r0, 0x12 - movs r1, 0x8 - bl MapGridSetMetatileIdAt - ldr r2, _0810E748 @ =0x00000ea5 - movs r0, 0x12 - movs r1, 0x9 - bl MapGridSetMetatileIdAt - bl DrawWholeMapView - pop {r0} - bx r0 - .align 2, 0 -_0810E744: .4byte 0x00000e9d -_0810E748: .4byte 0x00000ea5 - thumb_func_end EndLotteryCornerComputerEffect - - thumb_func_start SetDepartmentStoreFloorVar -SetDepartmentStoreFloorVar: @ 810E74C - push {lr} - ldr r0, _0810E768 @ =gSaveBlock1 - ldrb r0, [r0, 0x15] - subs r0, 0x11 - lsls r0, 24 - asrs r0, 24 - cmp r0, 0x5 - bhi _0810E79C - lsls r0, 2 - ldr r1, _0810E76C @ =_0810E770 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0810E768: .4byte gSaveBlock1 -_0810E76C: .4byte _0810E770 - .align 2, 0 -_0810E770: - .4byte _0810E79C - .4byte _0810E788 - .4byte _0810E78C - .4byte _0810E790 - .4byte _0810E794 - .4byte _0810E798 -_0810E788: - movs r1, 0x1 - b _0810E79E -_0810E78C: - movs r1, 0x2 - b _0810E79E -_0810E790: - movs r1, 0x3 - b _0810E79E -_0810E794: - movs r1, 0x4 - b _0810E79E -_0810E798: - movs r1, 0xF - b _0810E79E -_0810E79C: - movs r1, 0 -_0810E79E: - ldr r0, _0810E7A8 @ =0x00004043 - bl VarSet - pop {r0} - bx r0 - .align 2, 0 -_0810E7A8: .4byte 0x00004043 - thumb_func_end SetDepartmentStoreFloorVar - - thumb_func_start ScriptAddElevatorMenuItem -ScriptAddElevatorMenuItem: @ 810E7AC - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 24 - lsrs r6, r0, 24 - lsls r1, 24 - lsrs r7, r1, 24 - lsls r2, 24 - lsrs r2, 24 - mov r12, r2 - lsls r3, 24 - lsrs r3, 24 - mov r8, r3 - ldr r0, _0810E81C @ =gSpecialVar_0x8004 - ldrh r1, [r0] - adds r2, r0, 0 - ldr r3, _0810E820 @ =gUnknown_03000760 - cmp r1, 0 - bne _0810E7E8 - movs r1, 0 - adds r5, r3, 0 - movs r4, 0x10 -_0810E7D8: - lsls r0, r1, 2 - adds r0, r5 - strb r4, [r0] - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x13 - bls _0810E7D8 -_0810E7E8: - ldrh r0, [r2] - lsls r0, 2 - adds r0, r3 - strb r6, [r0] - ldrh r0, [r2] - lsls r0, 2 - adds r0, r3 - strb r7, [r0, 0x1] - ldrh r0, [r2] - lsls r0, 2 - adds r0, r3 - mov r1, r12 - strb r1, [r0, 0x2] - ldrh r0, [r2] - lsls r0, 2 - adds r0, r3 - mov r1, r8 - strb r1, [r0, 0x3] - ldrh r0, [r2] - adds r0, 0x1 - strh r0, [r2] - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0810E81C: .4byte gSpecialVar_0x8004 -_0810E820: .4byte gUnknown_03000760 - thumb_func_end ScriptAddElevatorMenuItem - - thumb_func_start ScriptShowElevatorMenu -ScriptShowElevatorMenu: @ 810E824 - push {r4,r5,lr} - movs r4, 0 - ldr r5, _0810E868 @ =gUnknown_0203925A - strb r4, [r5] - ldr r0, _0810E86C @ =gUnknown_0203925B - strb r4, [r0] - movs r0, 0x10 - movs r1, 0 - movs r2, 0 - movs r3, 0 - bl ScriptAddElevatorMenuItem - ldr r2, _0810E870 @ =gUnknown_03000760 - ldrb r0, [r2] - cmp r0, 0x10 - beq _0810E85C - adds r1, r5, 0 -_0810E846: - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - lsls r0, r4, 2 - adds r0, r2 - ldrb r0, [r0] - cmp r0, 0x10 - bne _0810E846 -_0810E85C: - bl sub_810E874 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0810E868: .4byte gUnknown_0203925A -_0810E86C: .4byte gUnknown_0203925B -_0810E870: .4byte gUnknown_03000760 - thumb_func_end ScriptShowElevatorMenu - - thumb_func_start sub_810E874 -sub_810E874: @ 810E874 - push {r4-r6,lr} - sub sp, 0x8 - bl ScriptContext2_Enable - ldr r4, _0810E8B8 @ =gUnknown_0203925A - ldrb r0, [r4] - cmp r0, 0x5 - bls _0810E8C0 - movs r0, 0 - movs r1, 0 - movs r2, 0x8 - movs r3, 0xB - bl MenuDrawTextWindow - movs r4, 0 - str r4, [sp] - movs r0, 0x7 - str r0, [sp, 0x4] - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - movs r3, 0x5 - bl InitMenu - ldr r0, _0810E8BC @ =gUnknown_0203925C - strb r4, [r0] - bl sub_80F944C - bl LoadScrollIndicatorPalette - bl sub_810ECD4 - b _0810E8E8 - .align 2, 0 -_0810E8B8: .4byte gUnknown_0203925A -_0810E8BC: .4byte gUnknown_0203925C -_0810E8C0: - ldrb r3, [r4] - lsls r3, 1 - adds r3, 0x1 - lsls r3, 24 - lsrs r3, 24 - movs r0, 0 - movs r1, 0 - movs r2, 0x8 - bl MenuDrawTextWindow - ldrb r3, [r4] - movs r0, 0 - str r0, [sp] - movs r0, 0x7 - str r0, [sp, 0x4] - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl InitMenu -_0810E8E8: - movs r4, 0 - ldr r1, _0810E938 @ =gUnknown_03000760 - ldrb r0, [r1] - cmp r0, 0x10 - beq _0810E924 - ldr r6, _0810E93C @ =gUnknown_083F8380 - adds r5, r1, 0 -_0810E8F6: - lsls r0, r4, 2 - adds r0, r5 - ldrb r0, [r0] - lsls r0, 2 - adds r0, r6 - ldr r0, [r0] - lsls r2, r4, 1 - adds r2, 0x1 - lsls r2, 24 - lsrs r2, 24 - movs r1, 0x1 - bl MenuPrint - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x4 - bhi _0810E924 - lsls r0, r4, 2 - adds r0, r5 - ldrb r0, [r0] - cmp r0, 0x10 - bne _0810E8F6 -_0810E924: - bl sub_810E944 - ldr r0, _0810E940 @ =sub_810E984 - movs r1, 0x8 - bl CreateTask - add sp, 0x8 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0810E938: .4byte gUnknown_03000760 -_0810E93C: .4byte gUnknown_083F8380 -_0810E940: .4byte sub_810E984 - thumb_func_end sub_810E874 - - thumb_func_start sub_810E944 -sub_810E944: @ 810E944 - push {lr} - movs r0, 0x14 - movs r1, 0 - movs r2, 0x1D - movs r3, 0x5 - bl MenuDrawTextWindow - ldr r0, _0810E978 @ =gOtherText_NowOn - movs r1, 0x15 - movs r2, 0x1 - movs r3, 0x40 - bl sub_8072BD8 - ldr r1, _0810E97C @ =gUnknown_083F8380 - ldr r0, _0810E980 @ =gSpecialVar_0x8005 - ldrh r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - movs r1, 0x15 - movs r2, 0x3 - movs r3, 0x40 - bl sub_8072BD8 - pop {r0} - bx r0 - .align 2, 0 -_0810E978: .4byte gOtherText_NowOn -_0810E97C: .4byte gUnknown_083F8380 -_0810E980: .4byte gSpecialVar_0x8005 - thumb_func_end sub_810E944 - - thumb_func_start sub_810E984 -sub_810E984: @ 810E984 - push {r4-r6,lr} - sub sp, 0x8 - lsls r0, 24 - lsrs r6, r0, 24 - ldr r0, _0810EA44 @ =gMain - ldrh r0, [r0, 0x2E] - cmp r0, 0x40 - bne _0810E9B8 - ldr r1, _0810EA48 @ =gUnknown_0203925B - ldrb r0, [r1] - cmp r0, 0 - beq _0810E9B8 - subs r0, 0x1 - strb r0, [r1] - bl GetMenuCursorPos - lsls r0, 24 - lsrs r4, r0, 24 - movs r0, 0x1 - negs r0, r0 - bl MoveMenuCursorNoWrap - adds r0, r4, 0 - movs r1, 0x40 - bl sub_810EAC8 -_0810E9B8: - ldr r0, _0810EA44 @ =gMain - ldrh r0, [r0, 0x2E] - cmp r0, 0x80 - bne _0810E9E8 - ldr r2, _0810EA48 @ =gUnknown_0203925B - ldrb r1, [r2] - ldr r0, _0810EA4C @ =gUnknown_0203925A - ldrb r0, [r0] - subs r0, 0x1 - cmp r1, r0 - beq _0810E9E8 - adds r0, r1, 0x1 - strb r0, [r2] - bl GetMenuCursorPos - lsls r0, 24 - lsrs r4, r0, 24 - movs r0, 0x1 - bl MoveMenuCursorNoWrap - adds r0, r4, 0 - movs r1, 0x80 - bl sub_810EAC8 -_0810E9E8: - ldr r0, _0810EA44 @ =gMain - ldrh r2, [r0, 0x2E] - movs r5, 0x1 - adds r1, r5, 0 - ands r1, r2 - cmp r1, 0 - beq _0810EA94 - ldr r1, _0810EA50 @ =gUnknown_03000760 - ldr r4, _0810EA48 @ =gUnknown_0203925B - ldrb r0, [r4] - lsls r0, 2 - adds r0, r1 - movs r1, 0x1 - ldrsb r1, [r0, r1] - movs r2, 0x2 - ldrsb r2, [r0, r2] - movs r3, 0x1 - negs r3, r3 - movs r0, 0x2 - str r0, [sp] - str r5, [sp, 0x4] - movs r0, 0 - bl saved_warp2_set_2 - ldr r1, _0810EA54 @ =gSpecialVar_0x8005 - ldrh r0, [r1] - ldrb r2, [r4] - cmp r0, r2 - bne _0810EA5C - ldr r1, _0810EA58 @ =gScriptResult - movs r0, 0 - strh r0, [r1] - movs r0, 0x5 - bl PlaySE - movs r0, 0 - movs r1, 0 - movs r2, 0x1D - movs r3, 0xC - bl MenuZeroFillWindowRect - adds r0, r6, 0 - bl sub_810EC9C - b _0810EABC - .align 2, 0 -_0810EA44: .4byte gMain -_0810EA48: .4byte gUnknown_0203925B -_0810EA4C: .4byte gUnknown_0203925A -_0810EA50: .4byte gUnknown_03000760 -_0810EA54: .4byte gSpecialVar_0x8005 -_0810EA58: .4byte gScriptResult -_0810EA5C: - ldr r0, _0810EA88 @ =gScriptResult - strh r5, [r0] - ldrb r0, [r4] - strh r0, [r1] - bl sub_810EBEC - ldr r0, _0810EA8C @ =gScriptLastTalked - ldrb r0, [r0] - ldr r2, _0810EA90 @ =gSaveBlock1 - ldrb r1, [r2, 0x5] - ldrb r2, [r2, 0x4] - movs r3, 0x1 - bl FieldObjectTurnByLocalIdAndMap - bl sub_810EEDC - bl MenuZeroFillScreen - adds r0, r6, 0 - bl DestroyTask - b _0810EABC - .align 2, 0 -_0810EA88: .4byte gScriptResult -_0810EA8C: .4byte gScriptLastTalked -_0810EA90: .4byte gSaveBlock1 -_0810EA94: - movs r0, 0x2 - ands r0, r2 - cmp r0, 0 - beq _0810EABC - ldr r0, _0810EAC4 @ =gScriptResult - strh r1, [r0] - movs r0, 0x5 - bl PlaySE - bl sub_810EEDC - movs r0, 0 - movs r1, 0 - movs r2, 0x1D - movs r3, 0xC - bl MenuZeroFillWindowRect - adds r0, r6, 0 - bl sub_810EC9C -_0810EABC: - add sp, 0x8 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0810EAC4: .4byte gScriptResult - thumb_func_end sub_810E984 - - thumb_func_start sub_810EAC8 -sub_810EAC8: @ 810EAC8 - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 24 - lsrs r2, r0, 24 - adds r5, r2, 0 - lsls r1, 24 - lsrs r1, 24 - adds r3, r1, 0 - movs r7, 0 - movs r4, 0 - ldr r0, _0810EAEC @ =gUnknown_0203925A - ldrb r0, [r0] - cmp r0, 0x4 - bhi _0810EAF0 - movs r0, 0 - b _0810EB78 - .align 2, 0 -_0810EAEC: .4byte gUnknown_0203925A -_0810EAF0: - cmp r1, 0x40 - bne _0810EB04 - cmp r2, 0 - bne _0810EB18 - ldr r0, _0810EB00 @ =gUnknown_0203925B - ldrb r4, [r0] - movs r7, 0x1 - b _0810EB1C - .align 2, 0 -_0810EB00: .4byte gUnknown_0203925B -_0810EB04: - cmp r3, 0x80 - bne _0810EB18 - cmp r5, 0x4 - bne _0810EB18 - ldr r0, _0810EB84 @ =gUnknown_0203925B - ldrb r0, [r0] - subs r0, 0x4 - lsls r0, 24 - lsrs r4, r0, 24 - movs r7, 0x1 -_0810EB18: - cmp r7, 0 - beq _0810EB76 -_0810EB1C: - adds r0, r4, 0 - movs r1, 0x5 - bl sub_810EB90 - movs r0, 0x2 - movs r1, 0x1 - movs r2, 0x7 - movs r3, 0xA - bl MenuFillWindowRectWithBlankTile - movs r5, 0 - ldr r2, _0810EB88 @ =gUnknown_03000760 - lsls r1, r4, 2 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0x10 - beq _0810EB76 - ldr r0, _0810EB8C @ =gUnknown_083F8380 - mov r8, r0 - adds r6, r2, 0 -_0810EB44: - adds r0, r1, r6 - ldrb r0, [r0] - lsls r0, 2 - add r0, r8 - ldr r0, [r0] - lsls r2, r5, 1 - adds r2, 0x1 - lsls r2, 24 - lsrs r2, 24 - movs r1, 0x1 - bl MenuPrint - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x4 - bhi _0810EB76 - lsls r1, r4, 2 - adds r0, r1, r6 - ldrb r0, [r0] - cmp r0, 0x10 - bne _0810EB44 -_0810EB76: - adds r0, r7, 0 -_0810EB78: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0810EB84: .4byte gUnknown_0203925B -_0810EB88: .4byte gUnknown_03000760 -_0810EB8C: .4byte gUnknown_083F8380 - thumb_func_end sub_810EAC8 - - thumb_func_start sub_810EB90 -sub_810EB90: @ 810EB90 - push {r4,r5,lr} - lsls r0, 24 - lsrs r4, r0, 24 - lsls r1, 24 - lsrs r5, r1, 24 - cmp r4, 0 - bne _0810EBB4 - ldr r0, _0810EBB0 @ =gUnknown_0203925C - ldrb r1, [r0] - movs r2, 0x2 - eors r1, r2 - strb r1, [r0] - movs r0, 0 - bl DestroyVerticalScrollIndicator - b _0810EBB8 - .align 2, 0 -_0810EBB0: .4byte gUnknown_0203925C -_0810EBB4: - bl sub_810ECB0 -_0810EBB8: - adds r1, r4, r5 - ldr r0, _0810EBC8 @ =gUnknown_0203925A - ldrb r0, [r0] - cmp r1, r0 - bge _0810EBCC - bl sub_810ECD4 - b _0810EBE0 - .align 2, 0 -_0810EBC8: .4byte gUnknown_0203925A -_0810EBCC: - cmp r1, r0 - bne _0810EBE0 - ldr r0, _0810EBE8 @ =gUnknown_0203925C - ldrb r1, [r0] - movs r2, 0x1 - eors r1, r2 - strb r1, [r0] - movs r0, 0x1 - bl DestroyVerticalScrollIndicator -_0810EBE0: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0810EBE8: .4byte gUnknown_0203925C - thumb_func_end sub_810EB90 - - thumb_func_start sub_810EBEC -sub_810EBEC: @ 810EBEC - push {lr} - ldr r0, _0810EC2C @ =sub_810EC34 - movs r1, 0x9 - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - ldr r2, _0810EC30 @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - movs r0, 0 - movs r2, 0x1 - strh r2, [r1, 0x8] - strh r0, [r1, 0xA] - strh r0, [r1, 0xC] - strh r0, [r1, 0xE] - strh r2, [r1, 0x10] - movs r0, 0x3 - strh r0, [r1, 0x12] - movs r0, 0 - bl SetCameraPanningCallback - bl sub_810ECFC - movs r0, 0x59 - bl PlaySE - pop {r0} - bx r0 - .align 2, 0 -_0810EC2C: .4byte sub_810EC34 -_0810EC30: .4byte gTasks - thumb_func_end sub_810EBEC - - thumb_func_start sub_810EC34 -sub_810EC34: @ 810EC34 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - ldr r1, _0810EC98 @ =gTasks - adds r4, r0, r1 - ldrh r0, [r4, 0xA] - adds r0, 0x1 - strh r0, [r4, 0xA] - movs r1, 0xA - ldrsh r0, [r4, r1] - movs r2, 0x12 - ldrsh r1, [r4, r2] - bl __modsi3 - cmp r0, 0 - bne _0810EC92 - strh r0, [r4, 0xA] - ldrh r0, [r4, 0xC] - adds r0, 0x1 - strh r0, [r4, 0xC] - movs r1, 0xE - ldrsh r0, [r4, r1] - cmp r0, 0 - bne _0810EC92 - ldrh r0, [r4, 0x10] - negs r0, r0 - strh r0, [r4, 0x10] - movs r2, 0x10 - ldrsh r1, [r4, r2] - movs r0, 0 - bl SetCameraPanning - movs r1, 0xC - ldrsh r0, [r4, r1] - cmp r0, 0x17 - bne _0810EC92 - movs r0, 0x49 - bl PlaySE - adds r0, r5, 0 - bl sub_810EC9C - bl InstallCameraPanAheadCallback -_0810EC92: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0810EC98: .4byte gTasks - thumb_func_end sub_810EC34 - - thumb_func_start sub_810EC9C -sub_810EC9C: @ 810EC9C - push {lr} - lsls r0, 24 - lsrs r0, 24 - bl DestroyTask - bl EnableBothScriptContexts - pop {r0} - bx r0 - thumb_func_end sub_810EC9C - - thumb_func_start sub_810ECB0 -sub_810ECB0: @ 810ECB0 - push {lr} - ldr r2, _0810ECD0 @ =gUnknown_0203925C - ldrb r1, [r2] - lsrs r0, r1, 1 - cmp r0, 0x1 - beq _0810ECCC - movs r0, 0x2 - orrs r0, r1 - strb r0, [r2] - movs r0, 0 - movs r1, 0x24 - movs r2, 0x8 - bl CreateVerticalScrollIndicators -_0810ECCC: - pop {r0} - bx r0 - .align 2, 0 -_0810ECD0: .4byte gUnknown_0203925C - thumb_func_end sub_810ECB0 - - thumb_func_start sub_810ECD4 -sub_810ECD4: @ 810ECD4 - push {lr} - ldr r2, _0810ECF8 @ =gUnknown_0203925C - ldrb r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _0810ECF2 - movs r0, 0x1 - orrs r0, r1 - strb r0, [r2] - movs r0, 0x1 - movs r1, 0x24 - movs r2, 0x48 - bl CreateVerticalScrollIndicators -_0810ECF2: - pop {r0} - bx r0 - .align 2, 0 -_0810ECF8: .4byte gUnknown_0203925C - thumb_func_end sub_810ECD4 - - thumb_func_start sub_810ECFC -sub_810ECFC: @ 810ECFC - push {r4,lr} - ldr r4, _0810ED38 @ =sub_810ED40 - adds r0, r4, 0 - bl FuncIsActiveTask - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _0810ED30 - adds r0, r4, 0 - movs r1, 0x8 - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - ldr r2, _0810ED3C @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - movs r2, 0 - strh r2, [r1, 0x8] - strh r0, [r1, 0xA] - strh r2, [r1, 0xC] - strh r2, [r1, 0xE] - strh r2, [r1, 0x10] -_0810ED30: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0810ED38: .4byte sub_810ED40 -_0810ED3C: .4byte gTasks - thumb_func_end sub_810ECFC - - thumb_func_start sub_810ED40 -sub_810ED40: @ 810ED40 - push {lr} - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - ldr r1, _0810ED5C @ =gTasks - adds r0, r1 - bl sub_810ED60 - pop {r0} - bx r0 - .align 2, 0 -_0810ED5C: .4byte gTasks - thumb_func_end sub_810ED40 - - thumb_func_start sub_810ED60 -sub_810ED60: @ 810ED60 - push {r4,r5,lr} - adds r5, r0, 0 - movs r1, 0xE - ldrsh r0, [r5, r1] - cmp r0, 0x8 - beq _0810ED6E - b _0810EEB2 -_0810ED6E: - movs r0, 0 - strh r0, [r5, 0xE] - movs r1, 0x10 - ldrsh r0, [r5, r1] - cmp r0, 0 - beq _0810EE14 - ldr r2, _0810EDFC @ =0x00000e68 - movs r0, 0x7 - movs r1, 0x7 - bl MapGridSetMetatileIdAt - ldr r4, _0810EE00 @ =0x00000e69 - movs r0, 0x8 - movs r1, 0x7 - adds r2, r4, 0 - bl MapGridSetMetatileIdAt - movs r0, 0x9 - movs r1, 0x7 - adds r2, r4, 0 - bl MapGridSetMetatileIdAt - ldr r2, _0810EE04 @ =0x00000e6a - movs r0, 0xA - movs r1, 0x7 - bl MapGridSetMetatileIdAt - movs r2, 0xE7 - lsls r2, 4 - movs r0, 0x7 - movs r1, 0x8 - bl MapGridSetMetatileIdAt - adds r4, 0x8 - movs r0, 0x8 - movs r1, 0x8 - adds r2, r4, 0 - bl MapGridSetMetatileIdAt - movs r0, 0x9 - movs r1, 0x8 - adds r2, r4, 0 - bl MapGridSetMetatileIdAt - ldr r2, _0810EE08 @ =0x00000e72 - movs r0, 0xA - movs r1, 0x8 - bl MapGridSetMetatileIdAt - ldr r2, _0810EE0C @ =0x00000e78 - movs r0, 0x7 - movs r1, 0x9 - bl MapGridSetMetatileIdAt - adds r4, 0x8 - movs r0, 0x8 - movs r1, 0x9 - adds r2, r4, 0 - bl MapGridSetMetatileIdAt - movs r0, 0x9 - movs r1, 0x9 - adds r2, r4, 0 - bl MapGridSetMetatileIdAt - ldr r2, _0810EE10 @ =0x00000e7a - movs r0, 0xA - movs r1, 0x9 - bl MapGridSetMetatileIdAt - b _0810EE92 - .align 2, 0 -_0810EDFC: .4byte 0x00000e68 -_0810EE00: .4byte 0x00000e69 -_0810EE04: .4byte 0x00000e6a -_0810EE08: .4byte 0x00000e72 -_0810EE0C: .4byte 0x00000e78 -_0810EE10: .4byte 0x00000e7a -_0810EE14: - ldr r2, _0810EEC0 @ =0x00000e6b - movs r0, 0x7 - movs r1, 0x7 - bl MapGridSetMetatileIdAt - ldr r4, _0810EEC4 @ =0x00000e6c - movs r0, 0x8 - movs r1, 0x7 - adds r2, r4, 0 - bl MapGridSetMetatileIdAt - movs r0, 0x9 - movs r1, 0x7 - adds r2, r4, 0 - bl MapGridSetMetatileIdAt - ldr r2, _0810EEC8 @ =0x00000e6d - movs r0, 0xA - movs r1, 0x7 - bl MapGridSetMetatileIdAt - ldr r2, _0810EECC @ =0x00000e73 - movs r0, 0x7 - movs r1, 0x8 - bl MapGridSetMetatileIdAt - adds r4, 0x8 - movs r0, 0x8 - movs r1, 0x8 - adds r2, r4, 0 - bl MapGridSetMetatileIdAt - movs r0, 0x9 - movs r1, 0x8 - adds r2, r4, 0 - bl MapGridSetMetatileIdAt - ldr r2, _0810EED0 @ =0x00000e75 - movs r0, 0xA - movs r1, 0x8 - bl MapGridSetMetatileIdAt - ldr r2, _0810EED4 @ =0x00000e7b - movs r0, 0x7 - movs r1, 0x9 - bl MapGridSetMetatileIdAt - adds r4, 0x8 - movs r0, 0x8 - movs r1, 0x9 - adds r2, r4, 0 - bl MapGridSetMetatileIdAt - movs r0, 0x9 - movs r1, 0x9 - adds r2, r4, 0 - bl MapGridSetMetatileIdAt - ldr r2, _0810EED8 @ =0x00000e7d - movs r0, 0xA - movs r1, 0x9 - bl MapGridSetMetatileIdAt -_0810EE92: - bl DrawWholeMapView - ldrh r0, [r5, 0x10] - movs r1, 0x1 - eors r0, r1 - strh r0, [r5, 0x10] - ldrh r0, [r5, 0xC] - adds r0, 0x1 - strh r0, [r5, 0xC] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x8 - bne _0810EEB2 - ldrb r0, [r5, 0xA] - bl DestroyTask -_0810EEB2: - ldrh r0, [r5, 0xE] - adds r0, 0x1 - strh r0, [r5, 0xE] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0810EEC0: .4byte 0x00000e6b -_0810EEC4: .4byte 0x00000e6c -_0810EEC8: .4byte 0x00000e6d -_0810EECC: .4byte 0x00000e73 -_0810EED0: .4byte 0x00000e75 -_0810EED4: .4byte 0x00000e7b -_0810EED8: .4byte 0x00000e7d - thumb_func_end sub_810ED60 - - thumb_func_start sub_810EEDC -sub_810EEDC: @ 810EEDC - push {r4,lr} - ldr r4, _0810EF08 @ =gUnknown_0203925C - ldrb r1, [r4] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0810EEF0 - movs r0, 0x1 - bl DestroyVerticalScrollIndicator -_0810EEF0: - ldrb r0, [r4] - lsrs r0, 1 - cmp r0, 0x1 - bne _0810EEFE - movs r0, 0 - bl DestroyVerticalScrollIndicator -_0810EEFE: - bl BuyMenuFreeMemory - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0810EF08: .4byte gUnknown_0203925C - thumb_func_end sub_810EEDC - - thumb_func_start SetTrickHouseEndRoomFlag -SetTrickHouseEndRoomFlag: @ 810EF0C - push {lr} - ldr r1, _0810EF1C @ =gSpecialVar_0x8004 - ldr r0, _0810EF20 @ =0x00000259 - strh r0, [r1] - bl FlagSet - pop {r0} - bx r0 - .align 2, 0 -_0810EF1C: .4byte gSpecialVar_0x8004 -_0810EF20: .4byte 0x00000259 - thumb_func_end SetTrickHouseEndRoomFlag - - thumb_func_start ResetTrickHouseEndRoomFlag -ResetTrickHouseEndRoomFlag: @ 810EF24 - push {lr} - ldr r1, _0810EF34 @ =gSpecialVar_0x8004 - ldr r0, _0810EF38 @ =0x00000259 - strh r0, [r1] - bl FlagReset - pop {r0} - bx r0 - .align 2, 0 -_0810EF34: .4byte gSpecialVar_0x8004 -_0810EF38: .4byte 0x00000259 - thumb_func_end ResetTrickHouseEndRoomFlag - - thumb_func_start CheckLeadMonCool -CheckLeadMonCool: @ 810EF3C - push {lr} - bl GetLeadMonIndex - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x64 - muls r0, r1 - ldr r1, _0810EF5C @ =gPlayerParty - adds r0, r1 - movs r1, 0x16 - bl GetMonData - cmp r0, 0xC7 - bls _0810EF60 - movs r0, 0x1 - b _0810EF62 - .align 2, 0 -_0810EF5C: .4byte gPlayerParty -_0810EF60: - movs r0, 0 -_0810EF62: - pop {r1} - bx r1 - thumb_func_end CheckLeadMonCool - - thumb_func_start CheckLeadMonBeauty -CheckLeadMonBeauty: @ 810EF68 - push {lr} - bl GetLeadMonIndex - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x64 - muls r0, r1 - ldr r1, _0810EF88 @ =gPlayerParty - adds r0, r1 - movs r1, 0x17 - bl GetMonData - cmp r0, 0xC7 - bls _0810EF8C - movs r0, 0x1 - b _0810EF8E - .align 2, 0 -_0810EF88: .4byte gPlayerParty -_0810EF8C: - movs r0, 0 -_0810EF8E: - pop {r1} - bx r1 - thumb_func_end CheckLeadMonBeauty - - thumb_func_start CheckLeadMonCute -CheckLeadMonCute: @ 810EF94 - push {lr} - bl GetLeadMonIndex - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x64 - muls r0, r1 - ldr r1, _0810EFB4 @ =gPlayerParty - adds r0, r1 - movs r1, 0x18 - bl GetMonData - cmp r0, 0xC7 - bls _0810EFB8 - movs r0, 0x1 - b _0810EFBA - .align 2, 0 -_0810EFB4: .4byte gPlayerParty -_0810EFB8: - movs r0, 0 -_0810EFBA: - pop {r1} - bx r1 - thumb_func_end CheckLeadMonCute - - thumb_func_start CheckLeadMonSmart -CheckLeadMonSmart: @ 810EFC0 - push {lr} - bl GetLeadMonIndex - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x64 - muls r0, r1 - ldr r1, _0810EFE0 @ =gPlayerParty - adds r0, r1 - movs r1, 0x21 - bl GetMonData - cmp r0, 0xC7 - bls _0810EFE4 - movs r0, 0x1 - b _0810EFE6 - .align 2, 0 -_0810EFE0: .4byte gPlayerParty -_0810EFE4: - movs r0, 0 -_0810EFE6: - pop {r1} - bx r1 - thumb_func_end CheckLeadMonSmart - - thumb_func_start CheckLeadMonTough -CheckLeadMonTough: @ 810EFEC - push {lr} - bl GetLeadMonIndex - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x64 - muls r0, r1 - ldr r1, _0810F00C @ =gPlayerParty - adds r0, r1 - movs r1, 0x2F - bl GetMonData - cmp r0, 0xC7 - bls _0810F010 - movs r0, 0x1 - b _0810F012 - .align 2, 0 -_0810F00C: .4byte gPlayerParty -_0810F010: - movs r0, 0 -_0810F012: - pop {r1} - bx r1 - thumb_func_end CheckLeadMonTough - - thumb_func_start IsGrassTypeInParty -IsGrassTypeInParty: @ 810F018 - push {r4-r6,lr} - movs r5, 0 - ldr r6, _0810F068 @ =gBaseStats -_0810F01E: - movs r0, 0x64 - adds r1, r5, 0 - muls r1, r0 - ldr r0, _0810F06C @ =gPlayerParty - adds r4, r1, r0 - adds r0, r4, 0 - movs r1, 0x5 - bl GetMonData - cmp r0, 0 - beq _0810F074 - adds r0, r4, 0 - movs r1, 0x2D - bl GetMonData - cmp r0, 0 - bne _0810F074 - adds r0, r4, 0 - movs r1, 0xB - bl GetMonData - lsls r0, 16 - lsrs r0, 16 - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 2 - adds r1, r6 - ldrb r0, [r1, 0x6] - cmp r0, 0xC - beq _0810F060 - ldrb r0, [r1, 0x7] - cmp r0, 0xC - bne _0810F074 -_0810F060: - ldr r1, _0810F070 @ =gScriptResult - movs r0, 0x1 - b _0810F082 - .align 2, 0 -_0810F068: .4byte gBaseStats -_0810F06C: .4byte gPlayerParty -_0810F070: .4byte gScriptResult -_0810F074: - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x5 - bls _0810F01E - ldr r1, _0810F08C @ =gScriptResult - movs r0, 0 -_0810F082: - strh r0, [r1] - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0810F08C: .4byte gScriptResult - thumb_func_end IsGrassTypeInParty - - thumb_func_start ShowGlassWorkshopMenu -ShowGlassWorkshopMenu: @ 810F090 - push {r4,r5,lr} - sub sp, 0x8 - bl ScriptContext2_Enable - movs r0, 0 - movs r1, 0 - movs r2, 0xA - movs r3, 0xB - bl MenuDrawTextWindow - movs r4, 0 - str r4, [sp] - movs r0, 0x9 - str r0, [sp, 0x4] - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - movs r3, 0x5 - bl InitMenu - ldr r0, _0810F104 @ =gUnknown_0203925C - strb r4, [r0] - bl sub_80F944C - bl LoadScrollIndicatorPalette - bl sub_810F2B4 - ldr r5, _0810F108 @ =gUnknown_083F83C0 -_0810F0CA: - lsls r0, r4, 2 - adds r0, r5 - ldr r0, [r0] - lsls r2, r4, 1 - adds r2, 0x1 - lsls r2, 24 - lsrs r2, 24 - movs r1, 0x1 - bl MenuPrint - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x4 - bls _0810F0CA - ldr r1, _0810F10C @ =gUnknown_0203925B - movs r0, 0 - strb r0, [r1] - ldr r1, _0810F110 @ =gUnknown_0203925A - movs r0, 0x8 - strb r0, [r1] - ldr r0, _0810F114 @ =sub_810F118 - movs r1, 0x8 - bl CreateTask - add sp, 0x8 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0810F104: .4byte gUnknown_0203925C -_0810F108: .4byte gUnknown_083F83C0 -_0810F10C: .4byte gUnknown_0203925B -_0810F110: .4byte gUnknown_0203925A -_0810F114: .4byte sub_810F118 - thumb_func_end ShowGlassWorkshopMenu - - thumb_func_start sub_810F118 -sub_810F118: @ 810F118 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - ldr r0, _0810F1E4 @ =gMain - ldrh r0, [r0, 0x2E] - cmp r0, 0x40 - bne _0810F14A - ldr r1, _0810F1E8 @ =gUnknown_0203925B - ldrb r0, [r1] - cmp r0, 0 - beq _0810F14A - subs r0, 0x1 - strb r0, [r1] - bl GetMenuCursorPos - lsls r0, 24 - lsrs r4, r0, 24 - movs r0, 0x1 - negs r0, r0 - bl MoveMenuCursorNoWrap - adds r0, r4, 0 - movs r1, 0x40 - bl sub_810F1F4 -_0810F14A: - ldr r0, _0810F1E4 @ =gMain - ldrh r0, [r0, 0x2E] - cmp r0, 0x80 - bne _0810F17A - ldr r2, _0810F1E8 @ =gUnknown_0203925B - ldrb r1, [r2] - ldr r0, _0810F1EC @ =gUnknown_0203925A - ldrb r0, [r0] - subs r0, 0x1 - cmp r1, r0 - beq _0810F17A - adds r0, r1, 0x1 - strb r0, [r2] - bl GetMenuCursorPos - lsls r0, 24 - lsrs r4, r0, 24 - movs r0, 0x1 - bl MoveMenuCursorNoWrap - adds r0, r4, 0 - movs r1, 0x80 - bl sub_810F1F4 -_0810F17A: - ldr r4, _0810F1E4 @ =gMain - ldrh r1, [r4, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0810F1AE - bl sub_8072DEC - ldr r0, _0810F1F0 @ =gScriptResult - ldr r1, _0810F1E8 @ =gUnknown_0203925B - ldrb r1, [r1] - strh r1, [r0] - movs r0, 0x5 - bl PlaySE - bl sub_810EEDC - movs r0, 0 - movs r1, 0 - movs r2, 0x1D - movs r3, 0xC - bl MenuZeroFillWindowRect - adds r0, r5, 0 - bl sub_810EC9C -_0810F1AE: - ldrh r1, [r4, 0x2E] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0810F1DE - bl sub_8072DEC - ldr r1, _0810F1F0 @ =gScriptResult - movs r0, 0x7F - strh r0, [r1] - movs r0, 0x5 - bl PlaySE - bl sub_810EEDC - movs r0, 0 - movs r1, 0 - movs r2, 0x1D - movs r3, 0xC - bl MenuZeroFillWindowRect - adds r0, r5, 0 - bl sub_810EC9C -_0810F1DE: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0810F1E4: .4byte gMain -_0810F1E8: .4byte gUnknown_0203925B -_0810F1EC: .4byte gUnknown_0203925A -_0810F1F0: .4byte gScriptResult - thumb_func_end sub_810F118 - - thumb_func_start sub_810F1F4 -sub_810F1F4: @ 810F1F4 - push {r4-r7,lr} - lsls r0, 24 - lsrs r2, r0, 24 - adds r5, r2, 0 - lsls r1, 24 - lsrs r1, 24 - adds r3, r1, 0 - movs r6, 0 - movs r4, 0 - ldr r0, _0810F214 @ =gUnknown_0203925A - ldrb r0, [r0] - cmp r0, 0x4 - bhi _0810F218 - movs r0, 0 - b _0810F282 - .align 2, 0 -_0810F214: .4byte gUnknown_0203925A -_0810F218: - cmp r1, 0x40 - bne _0810F22C - cmp r2, 0 - bne _0810F240 - ldr r0, _0810F228 @ =gUnknown_0203925B - ldrb r4, [r0] - movs r6, 0x1 - b _0810F244 - .align 2, 0 -_0810F228: .4byte gUnknown_0203925B -_0810F22C: - cmp r3, 0x80 - bne _0810F240 - cmp r5, 0x4 - bne _0810F240 - ldr r0, _0810F288 @ =gUnknown_0203925B - ldrb r0, [r0] - subs r0, 0x4 - lsls r0, 24 - lsrs r4, r0, 24 - movs r6, 0x1 -_0810F240: - cmp r6, 0 - beq _0810F280 -_0810F244: - adds r0, r4, 0 - movs r1, 0x5 - bl GlassWorkshopUpdateScrollIndicators - movs r0, 0x2 - movs r1, 0x1 - movs r2, 0x9 - movs r3, 0xA - bl MenuFillWindowRectWithBlankTile - movs r5, 0 - ldr r7, _0810F28C @ =gUnknown_083F83C0 -_0810F25C: - lsls r0, r4, 2 - adds r0, r7 - ldr r0, [r0] - lsls r2, r5, 1 - adds r2, 0x1 - lsls r2, 24 - lsrs r2, 24 - movs r1, 0x1 - bl MenuPrint - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x4 - bls _0810F25C -_0810F280: - adds r0, r6, 0 -_0810F282: - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0810F288: .4byte gUnknown_0203925B -_0810F28C: .4byte gUnknown_083F83C0 - thumb_func_end sub_810F1F4 - - thumb_func_start sub_810F290 -sub_810F290: @ 810F290 - push {lr} - ldr r2, _0810F2B0 @ =gUnknown_0203925C - ldrb r1, [r2] - lsrs r0, r1, 1 - cmp r0, 0x1 - beq _0810F2AC - movs r0, 0x2 - orrs r0, r1 - strb r0, [r2] - movs r0, 0 - movs r1, 0x2C - movs r2, 0x8 - bl CreateVerticalScrollIndicators -_0810F2AC: - pop {r0} - bx r0 - .align 2, 0 -_0810F2B0: .4byte gUnknown_0203925C - thumb_func_end sub_810F290 - - thumb_func_start sub_810F2B4 -sub_810F2B4: @ 810F2B4 - push {lr} - ldr r2, _0810F2D8 @ =gUnknown_0203925C - ldrb r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _0810F2D2 - movs r0, 0x1 - orrs r0, r1 - strb r0, [r2] - movs r0, 0x1 - movs r1, 0x2C - movs r2, 0x58 - bl CreateVerticalScrollIndicators -_0810F2D2: - pop {r0} - bx r0 - .align 2, 0 -_0810F2D8: .4byte gUnknown_0203925C - thumb_func_end sub_810F2B4 - - thumb_func_start GlassWorkshopUpdateScrollIndicators -GlassWorkshopUpdateScrollIndicators: @ 810F2DC - push {r4,r5,lr} - lsls r0, 24 - lsrs r4, r0, 24 - lsls r1, 24 - lsrs r5, r1, 24 - cmp r4, 0 - bne _0810F300 - ldr r0, _0810F2FC @ =gUnknown_0203925C - ldrb r1, [r0] - movs r2, 0x2 - eors r1, r2 - strb r1, [r0] - movs r0, 0 - bl DestroyVerticalScrollIndicator - b _0810F304 - .align 2, 0 -_0810F2FC: .4byte gUnknown_0203925C -_0810F300: - bl sub_810F290 -_0810F304: - adds r1, r4, r5 - ldr r0, _0810F314 @ =gUnknown_0203925A - ldrb r0, [r0] - cmp r1, r0 - bge _0810F318 - bl sub_810F2B4 - b _0810F32C - .align 2, 0 -_0810F314: .4byte gUnknown_0203925A -_0810F318: - cmp r1, r0 - bne _0810F32C - ldr r0, _0810F334 @ =gUnknown_0203925C - ldrb r1, [r0] - movs r2, 0x1 - eors r1, r2 - strb r1, [r0] - movs r0, 0x1 - bl DestroyVerticalScrollIndicator -_0810F32C: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0810F334: .4byte gUnknown_0203925C - thumb_func_end GlassWorkshopUpdateScrollIndicators - - thumb_func_start SpawnCameraDummy -SpawnCameraDummy: @ 810F338 - push {lr} - sub sp, 0x8 - ldr r0, _0810F380 @ =gSaveBlock1 - ldrh r3, [r0] - adds r3, 0x7 - lsls r3, 16 - asrs r3, 16 - ldrh r0, [r0, 0x2] - adds r0, 0x7 - lsls r0, 16 - asrs r0, 16 - str r0, [sp] - movs r0, 0x3 - str r0, [sp, 0x4] - movs r0, 0x7 - movs r1, 0x8 - movs r2, 0x7F - bl SpawnSpecialFieldObjectParametrized - lsls r0, 24 - lsrs r0, 24 - ldr r2, _0810F384 @ =gMapObjects - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 2 - adds r1, r2 - ldrb r0, [r1, 0x1] - movs r2, 0x20 - orrs r0, r2 - strb r0, [r1, 0x1] - ldrb r0, [r1, 0x4] - bl CameraObjectSetFollowedObjectId - add sp, 0x8 - pop {r0} - bx r0 - .align 2, 0 -_0810F380: .4byte gSaveBlock1 -_0810F384: .4byte gMapObjects - thumb_func_end SpawnCameraDummy - - thumb_func_start RemoveCameraDummy -RemoveCameraDummy: @ 810F388 - push {lr} - bl GetPlayerAvatarObjectId - lsls r0, 24 - lsrs r0, 24 - bl CameraObjectSetFollowedObjectId - ldr r0, _0810F3A8 @ =gSaveBlock1 - ldrb r1, [r0, 0x5] - ldrb r2, [r0, 0x4] - movs r0, 0x7F - bl RemoveFieldObjectByLocalIdAndMap - pop {r0} - bx r0 - .align 2, 0 -_0810F3A8: .4byte gSaveBlock1 - thumb_func_end RemoveCameraDummy - - thumb_func_start GetPokeblockNameByMonNature -GetPokeblockNameByMonNature: @ 810F3AC - push {lr} - bl GetLeadMonIndex - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x64 - muls r0, r1 - ldr r1, _0810F3D4 @ =gPlayerParty - adds r0, r1 - bl GetNature - lsls r0, 24 - lsrs r0, 24 - ldr r1, _0810F3D8 @ =gStringVar1 - bl sub_810CB68 - lsls r0, 24 - lsrs r0, 24 - pop {r1} - bx r1 - .align 2, 0 -_0810F3D4: .4byte gPlayerParty -_0810F3D8: .4byte gStringVar1 - thumb_func_end GetPokeblockNameByMonNature - - thumb_func_start GetSecretBaseNearbyMapName -GetSecretBaseNearbyMapName: @ 810F3DC - push {r4,lr} - ldr r4, _0810F3FC @ =gStringVar1 - ldr r0, _0810F400 @ =0x00004026 - bl VarGet - adds r1, r0, 0 - lsls r1, 16 - lsrs r1, 16 - adds r0, r4, 0 - movs r2, 0 - bl sub_80FBFB4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0810F3FC: .4byte gStringVar1 -_0810F400: .4byte 0x00004026 - thumb_func_end GetSecretBaseNearbyMapName - - thumb_func_start sub_810F404 -sub_810F404: @ 810F404 - push {lr} - movs r0, 0x20 - bl sub_8053108 - lsls r0, 16 - lsrs r0, 16 - pop {r1} - bx r1 - thumb_func_end sub_810F404 - - thumb_func_start sub_810F414 -sub_810F414: @ 810F414 - push {lr} - ldr r0, _0810F420 @ =gStringVar1 - bl sub_8135FF4 - pop {r0} - bx r0 - .align 2, 0 -_0810F420: .4byte gStringVar1 - thumb_func_end sub_810F414 - - thumb_func_start sub_810F424 -sub_810F424: @ 810F424 - push {r4,r5,lr} - ldr r2, _0810F458 @ =gSaveBlock1 - ldr r1, _0810F45C @ =0x00002dd4 - adds r0, r2, r1 - ldrb r1, [r0] - lsls r1, 25 - ldr r0, _0810F460 @ =0x00002dd6 - adds r2, r0 - lsrs r1, 25 - ldrh r2, [r2] - adds r1, r2 - ldr r2, _0810F464 @ =gUnknown_083F83E0 - ldr r0, _0810F468 @ =gSpecialVar_0x8004 - ldrh r0, [r0] - adds r0, r2 - ldrb r0, [r0] - adds r5, r1, r0 - movs r0, 0x2 - bl GetPriceReduction - lsls r0, 24 - cmp r0, 0 - bne _0810F470 - ldr r4, _0810F46C @ =gUnknown_083F83EC - b _0810F472 - .align 2, 0 -_0810F458: .4byte gSaveBlock1 -_0810F45C: .4byte 0x00002dd4 -_0810F460: .4byte 0x00002dd6 -_0810F464: .4byte gUnknown_083F83E0 -_0810F468: .4byte gSpecialVar_0x8004 -_0810F46C: .4byte gUnknown_083F83EC -_0810F470: - ldr r4, _0810F484 @ =gUnknown_083F83F8 -_0810F472: - adds r0, r5, 0 - movs r1, 0xC - bl __umodsi3 - adds r0, r4 - ldrb r0, [r0] - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0810F484: .4byte gUnknown_083F83F8 - thumb_func_end sub_810F424 - - thumb_func_start sub_810F488 -sub_810F488: @ 810F488 - push {lr} - ldr r1, _0810F4A0 @ =gSpecialVar_0x8004 - ldr r0, _0810F4A4 @ =0x00000277 - strh r0, [r1] - bl FlagGet - lsls r0, 24 - cmp r0, 0 - beq _0810F4A8 - movs r0, 0x1 - b _0810F4AA - .align 2, 0 -_0810F4A0: .4byte gSpecialVar_0x8004 -_0810F4A4: .4byte 0x00000277 -_0810F4A8: - movs r0, 0 -_0810F4AA: - pop {r1} - bx r1 - thumb_func_end sub_810F488 - - thumb_func_start sub_810F4B0 -sub_810F4B0: @ 810F4B0 - push {lr} - ldr r1, _0810F4C8 @ =gSpecialVar_0x8004 - movs r0, 0x9E - lsls r0, 2 - strh r0, [r1] - bl FlagGet - lsls r0, 24 - cmp r0, 0 - beq _0810F4CC - movs r0, 0x1 - b _0810F4CE - .align 2, 0 -_0810F4C8: .4byte gSpecialVar_0x8004 -_0810F4CC: - movs r0, 0 -_0810F4CE: - pop {r1} - bx r1 - thumb_func_end sub_810F4B0 - - thumb_func_start sub_810F4D4 -sub_810F4D4: @ 810F4D4 - push {lr} - ldr r1, _0810F4EC @ =gSpecialVar_0x8004 - ldr r0, _0810F4F0 @ =0x00000279 - strh r0, [r1] - bl FlagGet - lsls r0, 24 - cmp r0, 0 - beq _0810F4F4 - movs r0, 0x1 - b _0810F4F6 - .align 2, 0 -_0810F4EC: .4byte gSpecialVar_0x8004 -_0810F4F0: .4byte 0x00000279 -_0810F4F4: - movs r0, 0 -_0810F4F6: - pop {r1} - bx r1 - thumb_func_end sub_810F4D4 - - thumb_func_start sub_810F4FC -sub_810F4FC: @ 810F4FC - push {lr} - ldr r1, _0810F514 @ =gSpecialVar_0x8004 - ldr r0, _0810F518 @ =0x0000027a - strh r0, [r1] - bl FlagGet - lsls r0, 24 - cmp r0, 0 - beq _0810F51C - movs r0, 0x1 - b _0810F51E - .align 2, 0 -_0810F514: .4byte gSpecialVar_0x8004 -_0810F518: .4byte 0x0000027a -_0810F51C: - movs r0, 0 -_0810F51E: - pop {r1} - bx r1 - thumb_func_end sub_810F4FC - - thumb_func_start LeadMonHasEffortRibbon -LeadMonHasEffortRibbon: @ 810F524 - push {lr} - bl GetLeadMonIndex - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x64 - muls r0, r1 - ldr r1, _0810F548 @ =gPlayerParty - adds r0, r1 - movs r1, 0x47 - movs r2, 0 - bl GetMonData - lsls r0, 24 - lsrs r0, 24 - pop {r1} - bx r1 - .align 2, 0 -_0810F548: .4byte gPlayerParty - thumb_func_end LeadMonHasEffortRibbon - - thumb_func_start GivLeadMonEffortRibbon -GivLeadMonEffortRibbon: @ 810F54C - push {lr} - sub sp, 0x4 - movs r0, 0x2A - bl sav12_xor_increment - ldr r0, _0810F580 @ =0x0000083b - bl FlagSet - movs r1, 0x1 - mov r0, sp - strb r1, [r0] - bl GetLeadMonIndex - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x64 - muls r0, r1 - ldr r1, _0810F584 @ =gPlayerParty - adds r0, r1 - movs r1, 0x47 - mov r2, sp - bl SetMonData - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_0810F580: .4byte 0x0000083b -_0810F584: .4byte gPlayerParty - thumb_func_end GivLeadMonEffortRibbon - - thumb_func_start GetLeadMonEVCount -GetLeadMonEVCount: @ 810F588 - push {lr} - bl GetLeadMonIndex - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x64 - muls r0, r1 - ldr r1, _0810F5AC @ =gPlayerParty - adds r0, r1 - bl GetMonEVCount - lsls r0, 16 - ldr r1, _0810F5B0 @ =0x01fd0000 - cmp r0, r1 - bhi _0810F5B4 - movs r0, 0 - b _0810F5B6 - .align 2, 0 -_0810F5AC: .4byte gPlayerParty -_0810F5B0: .4byte 0x01fd0000 -_0810F5B4: - movs r0, 0x1 -_0810F5B6: - pop {r1} - bx r1 - thumb_func_end GetLeadMonEVCount - - thumb_func_start sub_810F5BC -sub_810F5BC: @ 810F5BC - push {lr} - movs r0, 0xC7 - bl FlagGet - lsls r0, 24 - cmp r0, 0 - bne _0810F610 - ldr r0, _0810F5E8 @ =gSaveBlock1 - ldrh r1, [r0, 0x4] - movs r0, 0x83 - lsls r0, 3 - cmp r1, r0 - bne _0810F610 - subs r0, 0x75 - bl FlagGet - lsls r0, 24 - cmp r0, 0 - beq _0810F5F0 - ldr r0, _0810F5EC @ =0x0000409a - movs r1, 0x4 - b _0810F602 - .align 2, 0 -_0810F5E8: .4byte gSaveBlock1 -_0810F5EC: .4byte 0x0000409a -_0810F5F0: - movs r0, 0xE9 - lsls r0, 2 - bl FlagGet - lsls r0, 24 - cmp r0, 0 - beq _0810F610 - ldr r0, _0810F60C @ =0x0000409a - movs r1, 0x5 -_0810F602: - bl VarSet - movs r0, 0x1 - b _0810F612 - .align 2, 0 -_0810F60C: .4byte 0x0000409a -_0810F610: - movs r0, 0 -_0810F612: - pop {r1} - bx r1 - thumb_func_end sub_810F5BC - - thumb_func_start sub_810F618 -sub_810F618: @ 810F618 - push {lr} - ldr r0, _0810F624 @ =0x0000085f - bl FlagSet - pop {r0} - bx r0 - .align 2, 0 -_0810F624: .4byte 0x0000085f - thumb_func_end sub_810F618 - - thumb_func_start PutZigzagoonInPlayerParty -PutZigzagoonInPlayerParty: @ 810F628 - push {r4,r5,lr} - sub sp, 0x14 - ldr r5, _0810F690 @ =gPlayerParty - movs r1, 0x90 - lsls r1, 1 - movs r4, 0 - str r4, [sp] - str r4, [sp, 0x4] - str r4, [sp, 0x8] - str r4, [sp, 0xC] - adds r0, r5, 0 - movs r2, 0x7 - movs r3, 0x20 - bl CreateMon - movs r1, 0x1 - add r0, sp, 0x10 - strh r1, [r0] - adds r0, r5, 0 - movs r1, 0x2E - add r2, sp, 0x10 - bl SetMonData - add r1, sp, 0x10 - movs r0, 0x21 - strh r0, [r1] - adds r0, r5, 0 - movs r1, 0xD - add r2, sp, 0x10 - bl SetMonData - add r0, sp, 0x10 - strh r4, [r0] - adds r0, r5, 0 - movs r1, 0xE - add r2, sp, 0x10 - bl SetMonData - adds r0, r5, 0 - movs r1, 0xF - add r2, sp, 0x10 - bl SetMonData - adds r0, r5, 0 - movs r1, 0x10 - add r2, sp, 0x10 - bl SetMonData - add sp, 0x14 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0810F690: .4byte gPlayerParty - thumb_func_end PutZigzagoonInPlayerParty - - thumb_func_start IsStarterInParty -IsStarterInParty: @ 810F694 - push {r4-r6,lr} - ldr r0, _0810F6D0 @ =0x00004023 - bl VarGet - lsls r0, 16 - lsrs r0, 16 - bl GetStarterPokemon - lsls r0, 16 - lsrs r6, r0, 16 - bl CalculatePlayerPartyCount - lsls r0, 24 - lsrs r5, r0, 24 - movs r4, 0 - cmp r4, r5 - bcs _0810F6E2 -_0810F6B6: - movs r0, 0x64 - muls r0, r4 - ldr r1, _0810F6D4 @ =gPlayerParty - adds r0, r1 - movs r1, 0x41 - movs r2, 0 - bl GetMonData - cmp r0, r6 - bne _0810F6D8 - movs r0, 0x1 - b _0810F6E4 - .align 2, 0 -_0810F6D0: .4byte 0x00004023 -_0810F6D4: .4byte gPlayerParty -_0810F6D8: - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, r5 - bcc _0810F6B6 -_0810F6E2: - movs r0, 0 -_0810F6E4: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end IsStarterInParty - - thumb_func_start CheckFreePokemonStorageSpace -CheckFreePokemonStorageSpace: @ 810F6EC - push {r4-r6,lr} - movs r5, 0 -_0810F6F0: - movs r4, 0 - lsls r1, r5, 2 - adds r1, r5 - lsls r0, r1, 4 - subs r0, r1 - lsls r6, r0, 5 -_0810F6FC: - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 4 - ldr r1, _0810F718 @ =gUnknown_020300A4 - adds r0, r1 - adds r0, r6, r0 - movs r1, 0xB - movs r2, 0 - bl GetBoxMonData - cmp r0, 0 - bne _0810F71C - movs r0, 0x1 - b _0810F732 - .align 2, 0 -_0810F718: .4byte gUnknown_020300A4 -_0810F71C: - adds r0, r4, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 - cmp r4, 0x1D - bls _0810F6FC - adds r0, r5, 0x1 - lsls r0, 16 - lsrs r5, r0, 16 - cmp r5, 0xD - bls _0810F6F0 - movs r0, 0 -_0810F732: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end CheckFreePokemonStorageSpace - - thumb_func_start IsPokerusInParty -IsPokerusInParty: @ 810F738 - push {lr} - ldr r0, _0810F74C @ =gPlayerParty - movs r1, 0x3F - bl CheckPartyPokerus - lsls r0, 24 - cmp r0, 0 - beq _0810F750 - movs r0, 0x1 - b _0810F752 - .align 2, 0 -_0810F74C: .4byte gPlayerParty -_0810F750: - movs r0, 0 -_0810F752: - pop {r1} - bx r1 - thumb_func_end IsPokerusInParty - - thumb_func_start sub_810F758 -sub_810F758: @ 810F758 - push {lr} - ldr r0, _0810F798 @ =sub_810F7A8 - movs r1, 0x9 - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - ldr r2, _0810F79C @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - ldr r0, _0810F7A0 @ =gSpecialVar_0x8005 - ldrh r2, [r0] - movs r0, 0 - strh r2, [r1, 0x8] - strh r0, [r1, 0xA] - strh r0, [r1, 0xC] - strh r0, [r1, 0xE] - ldr r0, _0810F7A4 @ =gSpecialVar_0x8004 - ldrh r0, [r0] - strh r0, [r1, 0x10] - movs r0, 0x5 - strh r0, [r1, 0x12] - movs r0, 0 - bl SetCameraPanningCallback - movs r0, 0xD6 - bl PlaySE - pop {r0} - bx r0 - .align 2, 0 -_0810F798: .4byte sub_810F7A8 -_0810F79C: .4byte gTasks -_0810F7A0: .4byte gSpecialVar_0x8005 -_0810F7A4: .4byte gSpecialVar_0x8004 - thumb_func_end sub_810F758 - - thumb_func_start sub_810F7A8 -sub_810F7A8: @ 810F7A8 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - ldr r1, _0810F810 @ =gTasks - adds r4, r0, r1 - ldrh r0, [r4, 0xA] - adds r0, 0x1 - strh r0, [r4, 0xA] - movs r1, 0xA - ldrsh r0, [r4, r1] - movs r2, 0x12 - ldrsh r1, [r4, r2] - bl __modsi3 - cmp r0, 0 - bne _0810F808 - strh r0, [r4, 0xA] - ldrh r0, [r4, 0xC] - adds r0, 0x1 - strh r0, [r4, 0xC] - movs r1, 0xE - ldrsh r0, [r4, r1] - cmp r0, 0 - bne _0810F808 - ldrh r0, [r4, 0x8] - negs r0, r0 - strh r0, [r4, 0x8] - ldrh r0, [r4, 0x10] - negs r0, r0 - strh r0, [r4, 0x10] - movs r2, 0x8 - ldrsh r0, [r4, r2] - movs r2, 0x10 - ldrsh r1, [r4, r2] - bl SetCameraPanning - movs r1, 0xC - ldrsh r0, [r4, r1] - cmp r0, 0x8 - bne _0810F808 - adds r0, r5, 0 - bl sub_810F814 - bl InstallCameraPanAheadCallback -_0810F808: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0810F810: .4byte gTasks - thumb_func_end sub_810F7A8 - - thumb_func_start sub_810F814 -sub_810F814: @ 810F814 - push {lr} - lsls r0, 24 - lsrs r0, 24 - bl DestroyTask - bl EnableBothScriptContexts - pop {r0} - bx r0 - thumb_func_end sub_810F814 - - thumb_func_start sub_810F828 -sub_810F828: @ 810F828 - push {lr} - movs r0, 0xAE - lsls r0, 2 - bl FlagGet - lsls r0, 24 - lsrs r0, 24 - pop {r1} - bx r1 - thumb_func_end sub_810F828 - - thumb_func_start SetRoute119Weather -SetRoute119Weather: @ 810F83C - push {lr} - bl get_map_light_from_warp0 - lsls r0, 24 - lsrs r0, 24 - bl is_light_level_1_2_3_5_or_6 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _0810F858 - movs r0, 0x14 - bl SetSav1Weather -_0810F858: - pop {r0} - bx r0 - thumb_func_end SetRoute119Weather - - thumb_func_start SetRoute123Weather -SetRoute123Weather: @ 810F85C - push {lr} - bl get_map_light_from_warp0 - lsls r0, 24 - lsrs r0, 24 - bl is_light_level_1_2_3_5_or_6 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _0810F878 - movs r0, 0x15 - bl SetSav1Weather -_0810F878: - pop {r0} - bx r0 - thumb_func_end SetRoute123Weather - - thumb_func_start GetLeadMonIndex -GetLeadMonIndex: @ 810F87C - push {r4-r6,lr} - bl CalculatePlayerPartyCount - lsls r0, 24 - lsrs r6, r0, 24 - movs r5, 0 - cmp r5, r6 - bcs _0810F8CA -_0810F88C: - movs r0, 0x64 - adds r1, r5, 0 - muls r1, r0 - ldr r0, _0810F8BC @ =gPlayerParty - adds r4, r1, r0 - adds r0, r4, 0 - movs r1, 0x41 - movs r2, 0 - bl GetMonData - movs r1, 0xCE - lsls r1, 1 - cmp r0, r1 - beq _0810F8C0 - adds r0, r4, 0 - movs r1, 0x41 - movs r2, 0 - bl GetMonData - cmp r0, 0 - beq _0810F8C0 - adds r0, r5, 0 - b _0810F8CC - .align 2, 0 -_0810F8BC: .4byte gPlayerParty -_0810F8C0: - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, r6 - bcc _0810F88C -_0810F8CA: - movs r0, 0 -_0810F8CC: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end GetLeadMonIndex - - thumb_func_start ScriptGetPartyMonSpecies -ScriptGetPartyMonSpecies: @ 810F8D4 - push {lr} - ldr r0, _0810F8F4 @ =gSpecialVar_0x8004 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, _0810F8F8 @ =gPlayerParty - adds r0, r1 - movs r1, 0x41 - movs r2, 0 - bl GetMonData - lsls r0, 16 - lsrs r0, 16 - pop {r1} - bx r1 - .align 2, 0 -_0810F8F4: .4byte gSpecialVar_0x8004 -_0810F8F8: .4byte gPlayerParty - thumb_func_end ScriptGetPartyMonSpecies - - thumb_func_start sub_810F8FC -sub_810F8FC: @ 810F8FC - push {lr} - movs r0, 0x6 - bl sub_805ADDC - pop {r0} - bx r0 - thumb_func_end sub_810F8FC - - thumb_func_start sub_810F908 -sub_810F908: @ 810F908 - push {r4,lr} - ldr r0, _0810F928 @ =0x000040c2 - bl VarGet - lsls r0, 16 - lsrs r0, 16 - adds r3, r0, 0 - ldr r2, _0810F92C @ =gLocalTime - movs r1, 0 - ldrsh r0, [r2, r1] - subs r0, r3 - cmp r0, 0x6 - ble _0810F930 - movs r0, 0 - b _0810F948 - .align 2, 0 -_0810F928: .4byte 0x000040c2 -_0810F92C: .4byte gLocalTime -_0810F930: - ldrh r1, [r2] - movs r4, 0 - ldrsh r0, [r2, r4] - cmp r0, 0 - blt _0810F946 - subs r1, r3 - movs r0, 0x7 - subs r0, r1 - lsls r0, 16 - lsrs r0, 16 - b _0810F948 -_0810F946: - movs r0, 0x8 -_0810F948: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_810F908 - - thumb_func_start sub_810F950 -sub_810F950: @ 810F950 - push {r4,lr} - ldr r0, _0810F964 @ =0x000040c2 - ldr r4, _0810F968 @ =gLocalTime - ldrh r1, [r4] - bl VarSet - ldrh r0, [r4] - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0810F964: .4byte 0x000040c2 -_0810F968: .4byte gLocalTime - thumb_func_end sub_810F950 - - thumb_func_start sub_810F96C -sub_810F96C: @ 810F96C - push {r4,lr} - ldr r0, _0810F994 @ =gSpecialVar_0x8004 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, _0810F998 @ =gPlayerParty - adds r0, r1 - ldr r4, _0810F99C @ =gStringVar1 - movs r1, 0x7 - adds r2, r4, 0 - bl GetMonData - ldr r0, _0810F9A0 @ =gSaveBlock2 - adds r1, r4, 0 - bl StringCompareWithoutExtCtrlCodes - cmp r0, 0 - beq _0810F9A4 - movs r0, 0x1 - b _0810F9A6 - .align 2, 0 -_0810F994: .4byte gSpecialVar_0x8004 -_0810F998: .4byte gPlayerParty -_0810F99C: .4byte gStringVar1 -_0810F9A0: .4byte gSaveBlock2 -_0810F9A4: - movs r0, 0 -_0810F9A6: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_810F96C - - thumb_func_start sub_810F9AC -sub_810F9AC: @ 810F9AC - push {r4,r5,lr} - ldr r2, _0810F9C0 @ =gScriptResult - ldrh r1, [r2] - ldr r0, _0810F9C4 @ =0x0000270f - cmp r1, r0 - bls _0810F9C8 - movs r0, 0 - bl sub_80BF088 - b _0810FA4A - .align 2, 0 -_0810F9C0: .4byte gScriptResult -_0810F9C4: .4byte 0x0000270f -_0810F9C8: - ldr r0, _0810F9D8 @ =0x000003e7 - cmp r1, r0 - bls _0810F9E0 - ldr r4, _0810F9DC @ =gStringVar1 - movs r0, 0xA1 - strb r0, [r4] - adds r4, 0x1 - b _0810FA04 - .align 2, 0 -_0810F9D8: .4byte 0x000003e7 -_0810F9DC: .4byte gStringVar1 -_0810F9E0: - cmp r1, 0x63 - bls _0810F9F4 - ldr r4, _0810F9F0 @ =gStringVar1 - movs r0, 0xA1 - strb r0, [r4] - strb r0, [r4, 0x1] - adds r4, 0x2 - b _0810FA04 - .align 2, 0 -_0810F9F0: .4byte gStringVar1 -_0810F9F4: - cmp r1, 0x9 - bls _0810FA24 - ldr r4, _0810FA20 @ =gStringVar1 - movs r0, 0xA1 - strb r0, [r4] - strb r0, [r4, 0x1] - strb r0, [r4, 0x2] - adds r4, 0x3 -_0810FA04: - ldrh r5, [r2] - adds r0, r5, 0 - bl sub_80BF0B8 - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0 - bl ConvertIntToDecimalStringN - b _0810FA4A - .align 2, 0 -_0810FA20: .4byte gStringVar1 -_0810FA24: - ldr r4, _0810FA50 @ =gStringVar1 - movs r0, 0xA1 - strb r0, [r4] - strb r0, [r4, 0x1] - strb r0, [r4, 0x2] - strb r0, [r4, 0x3] - adds r4, 0x4 - ldrh r5, [r2] - adds r0, r5, 0 - bl sub_80BF0B8 - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0 - bl ConvertIntToDecimalStringN -_0810FA4A: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0810FA50: .4byte gStringVar1 - thumb_func_end sub_810F9AC - - thumb_func_start sub_810FA54 -sub_810FA54: @ 810FA54 - ldr r0, _0810FA68 @ =gSaveBlock1 - ldr r2, _0810FA6C @ =0x000013c2 - adds r1, r0, r2 - movs r2, 0 - strh r2, [r1] - ldr r1, _0810FA70 @ =0x000013c4 - adds r0, r1 - strh r2, [r0] - bx lr - .align 2, 0 -_0810FA68: .4byte gSaveBlock1 -_0810FA6C: .4byte 0x000013c2 -_0810FA70: .4byte 0x000013c4 - thumb_func_end sub_810FA54 - - thumb_func_start sub_810FA74 -sub_810FA74: @ 810FA74 - push {lr} - bl sub_810FF30 - lsls r0, 24 - cmp r0, 0 - beq _0810FA90 - bl sub_810FCE8 - ldr r0, _0810FA94 @ =gSaveBlock1 - ldr r1, _0810FA98 @ =gSaveBlock2 - ldrh r1, [r1, 0xE] - ldr r2, _0810FA9C @ =0x000013c4 - adds r0, r2 - strh r1, [r0] -_0810FA90: - pop {r0} - bx r0 - .align 2, 0 -_0810FA94: .4byte gSaveBlock1 -_0810FA98: .4byte gSaveBlock2 -_0810FA9C: .4byte 0x000013c4 - thumb_func_end sub_810FA74 - - thumb_func_start sub_810FAA0 -sub_810FAA0: @ 810FAA0 - push {r4,lr} - ldr r4, _0810FAF0 @ =gSaveBlock1 - ldr r1, _0810FAF4 @ =0x000013c2 - adds r0, r4, r1 - ldrh r0, [r0] - lsrs r0, 7 - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - bne _0810FAE8 - bl sub_810FF48 - bl sub_810FD80 - ldr r0, _0810FAF8 @ =gSaveBlock2 - ldrh r1, [r0, 0xE] - ldr r2, _0810FAFC @ =0x000013c4 - adds r0, r4, r2 - strh r1, [r0] - ldr r0, _0810FB00 @ =0x00000315 - bl FlagReset - ldr r0, _0810FB04 @ =0x00000316 - bl FlagReset - ldr r0, _0810FB08 @ =0x00000317 - bl FlagReset - movs r0, 0xC6 - lsls r0, 2 - bl FlagReset - ldr r0, _0810FB0C @ =0x00004095 - movs r1, 0x1 - bl VarSet -_0810FAE8: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0810FAF0: .4byte gSaveBlock1 -_0810FAF4: .4byte 0x000013c2 -_0810FAF8: .4byte gSaveBlock2 -_0810FAFC: .4byte 0x000013c4 -_0810FB00: .4byte 0x00000315 -_0810FB04: .4byte 0x00000316 -_0810FB08: .4byte 0x00000317 -_0810FB0C: .4byte 0x00004095 - thumb_func_end sub_810FAA0 - - thumb_func_start sub_810FB10 -sub_810FB10: @ 810FB10 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - ldr r0, _0810FB54 @ =0x00004095 - bl VarGet - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x2 - bne _0810FB80 - ldr r0, _0810FB58 @ =gSaveBlock1 - ldr r1, _0810FB5C @ =0x000013c2 - adds r4, r0, r1 - ldrh r2, [r4] - movs r1, 0x7F - ands r1, r2 - ldr r0, _0810FB60 @ =gUnknown_083F8404 - adds r0, r5, r0 - ldrb r0, [r0] - adds r1, r0 - cmp r1, 0x13 - ble _0810FB7C - bl sub_810FCB0 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x2 - bhi _0810FB68 - bl sub_810FB9C - ldrh r1, [r4] - ldr r0, _0810FB64 @ =0x0000ff80 - ands r0, r1 - b _0810FB7E - .align 2, 0 -_0810FB54: .4byte 0x00004095 -_0810FB58: .4byte gSaveBlock1 -_0810FB5C: .4byte 0x000013c2 -_0810FB60: .4byte gUnknown_083F8404 -_0810FB64: .4byte 0x0000ff80 -_0810FB68: - ldrh r0, [r4] - ldr r1, _0810FB78 @ =0x0000ff80 - ands r1, r0 - movs r0, 0x14 - orrs r1, r0 - strh r1, [r4] - b _0810FB80 - .align 2, 0 -_0810FB78: .4byte 0x0000ff80 -_0810FB7C: - adds r0, r2, r0 -_0810FB7E: - strh r0, [r4] -_0810FB80: - ldr r0, _0810FB94 @ =gSaveBlock1 - ldr r1, _0810FB98 @ =0x000013c2 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x7F - ands r0, r1 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0810FB94: .4byte gSaveBlock1 -_0810FB98: .4byte 0x000013c2 - thumb_func_end sub_810FB10 - - thumb_func_start sub_810FB9C -sub_810FB9C: @ 810FB9C - push {r4-r7,lr} - sub sp, 0x4 - movs r3, 0 - movs r5, 0 - ldr r7, _0810FBD8 @ =gSaveBlock1 + 0x13C2 - movs r6, 0x1 -_0810FBA8: - ldrh r1, [r7] - ldr r0, _0810FBDC @ =gUnknown_083F8408 - adds r0, r5, r0 - ldrb r4, [r0] - asrs r1, r4 - ands r1, r6 - cmp r1, 0 - bne _0810FBE0 - adds r3, r5, 0 - str r3, [sp] - bl Random - adds r1, r6, 0 - ands r1, r0 - ldr r3, [sp] - cmp r1, 0 - beq _0810FBE0 - adds r0, r6, 0 - lsls r0, r4 - ldrh r1, [r7] - orrs r0, r1 - strh r0, [r7] - b _0810FC00 - .align 2, 0 -_0810FBD8: .4byte gSaveBlock1 + 0x13C2 -_0810FBDC: .4byte gUnknown_083F8408 -_0810FBE0: - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x7 - bls _0810FBA8 - ldr r2, _0810FC0C @ =gSaveBlock1 - ldr r0, _0810FC10 @ =0x000013c2 - adds r2, r0 - ldr r1, _0810FC14 @ =gUnknown_083F8408 - adds r1, r3, r1 - movs r0, 0x1 - ldrb r1, [r1] - lsls r0, r1 - ldrh r1, [r2] - orrs r0, r1 - strh r0, [r2] -_0810FC00: - adds r0, r3, 0 - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0810FC0C: .4byte gSaveBlock1 -_0810FC10: .4byte 0x000013c2 -_0810FC14: .4byte gUnknown_083F8408 - thumb_func_end sub_810FB9C - - thumb_func_start sub_810FC18 -sub_810FC18: @ 810FC18 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - movs r0, 0 - mov r8, r0 - bl sub_810FCB0 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x1 - bne _0810FC3E - movs r0, 0 - b _0810FC94 -_0810FC34: - lsls r4, r6 - ldrh r0, [r2] - eors r4, r0 - strh r4, [r2] - b _0810FC92 -_0810FC3E: - movs r5, 0 - ldr r2, _0810FCA0 @ =gSaveBlock1 + 0x13C2 - movs r4, 0x1 -_0810FC44: - ldrh r1, [r2] - ldr r7, _0810FCA4 @ =gUnknown_083F8410 - adds r0, r5, r7 - ldrb r6, [r0] - asrs r1, r6 - ands r1, r4 - cmp r1, 0 - beq _0810FC66 - mov r8, r5 - str r2, [sp] - bl Random - adds r1, r4, 0 - ands r1, r0 - ldr r2, [sp] - cmp r1, 0 - bne _0810FC34 -_0810FC66: - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x7 - bls _0810FC44 - ldr r0, _0810FCA8 @ =gSaveBlock1 - ldr r1, _0810FCAC @ =0x000013c2 - adds r4, r0, r1 - ldrh r1, [r4] - mov r2, r8 - adds r0, r2, r7 - ldrb r2, [r0] - adds r0, r1, 0 - asrs r0, r2 - movs r3, 0x1 - ands r0, r3 - cmp r0, 0 - beq _0810FC92 - adds r0, r3, 0 - lsls r0, r2 - eors r1, r0 - strh r1, [r4] -_0810FC92: - mov r0, r8 -_0810FC94: - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0810FCA0: .4byte gSaveBlock1 + 0x13C2 -_0810FCA4: .4byte gUnknown_083F8410 -_0810FCA8: .4byte gSaveBlock1 -_0810FCAC: .4byte 0x000013c2 - thumb_func_end sub_810FC18 - - thumb_func_start sub_810FCB0 -sub_810FCB0: @ 810FCB0 - push {r4,r5,lr} - movs r3, 0 - movs r2, 0 - ldr r0, _0810FCE4 @ =gSaveBlock1 + 0x13C2 - ldrh r4, [r0] - movs r5, 0x1 -_0810FCBC: - adds r1, r2, 0 - adds r1, 0x8 - adds r0, r4, 0 - asrs r0, r1 - ands r0, r5 - cmp r0, 0 - beq _0810FCD0 - adds r0, r3, 0x1 - lsls r0, 24 - lsrs r3, r0, 24 -_0810FCD0: - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0x7 - bls _0810FCBC - adds r0, r3, 0 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0810FCE4: .4byte gSaveBlock1 + 0x13C2 - thumb_func_end sub_810FCB0 - - thumb_func_start sub_810FCE8 -sub_810FCE8: @ 810FCE8 - push {r4-r7,lr} - mov r7, r8 - push {r7} - movs r5, 0 - ldr r2, _0810FD08 @ =gSaveBlock2 - ldrh r1, [r2, 0xE] - ldr r0, _0810FD0C @ =0x000003e6 - cmp r1, r0 - bhi _0810FD54 - ldr r7, _0810FD10 @ =gSaveBlock1 - adds r6, r2, 0 - ldr r0, _0810FD14 @ =0x000013c4 - adds r0, r7 - mov r8, r0 - b _0810FD36 - .align 2, 0 -_0810FD08: .4byte gSaveBlock2 -_0810FD0C: .4byte 0x000003e6 -_0810FD10: .4byte gSaveBlock1 -_0810FD14: .4byte 0x000013c4 -_0810FD18: - ldrh r1, [r6, 0xE] - ldr r0, _0810FD4C @ =0x000013c4 - adds r4, r7, r0 - ldrh r0, [r4] - subs r1, r0 - cmp r1, 0xB - ble _0810FD54 - bl sub_810FC18 - ldrh r0, [r4] - adds r0, 0xC - strh r0, [r4] - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 -_0810FD36: - bl sub_810FCB0 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x4 - bhi _0810FD50 - ldrh r0, [r6, 0xE] - mov r1, r8 - strh r0, [r1] - b _0810FD54 - .align 2, 0 -_0810FD4C: .4byte 0x000013c4 -_0810FD50: - cmp r5, 0x8 - bne _0810FD18 -_0810FD54: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_810FCE8 - - thumb_func_start sub_810FD60 -sub_810FD60: @ 810FD60 - ldr r0, _0810FD74 @ =gSaveBlock1 - ldr r1, _0810FD78 @ =0x000013c2 - adds r0, r1 - ldrh r0, [r0] - ldr r1, _0810FD7C @ =gSpecialVar_0x8004 - ldrh r1, [r1] - asrs r0, r1 - movs r1, 0x1 - ands r0, r1 - bx lr - .align 2, 0 -_0810FD74: .4byte gSaveBlock1 -_0810FD78: .4byte 0x000013c2 -_0810FD7C: .4byte gSpecialVar_0x8004 - thumb_func_end sub_810FD60 - - thumb_func_start sub_810FD80 -sub_810FD80: @ 810FD80 - ldr r2, _0810FDA4 @ =gSaveBlock1 - ldr r0, _0810FDA8 @ =0x000013c2 - adds r2, r0 - ldrh r1, [r2] - movs r3, 0x80 - lsls r3, 6 - adds r0, r3, 0 - orrs r0, r1 - movs r3, 0x80 - lsls r3, 1 - adds r1, r3, 0 - orrs r0, r1 - movs r3, 0x80 - lsls r3, 3 - adds r1, r3, 0 - orrs r0, r1 - strh r0, [r2] - bx lr - .align 2, 0 -_0810FDA4: .4byte gSaveBlock1 -_0810FDA8: .4byte 0x000013c2 - thumb_func_end sub_810FD80 - - thumb_func_start sub_810FDAC -sub_810FDAC: @ 810FDAC - push {lr} - movs r3, 0 - movs r2, 0 - ldr r0, _0810FDC8 @ =gSpecialVar_0x8004 - ldrh r0, [r0] - subs r0, 0x8 - cmp r0, 0x7 - bhi _0810FE0C - lsls r0, 2 - ldr r1, _0810FDCC @ =_0810FDD0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0810FDC8: .4byte gSpecialVar_0x8004 -_0810FDCC: .4byte _0810FDD0 - .align 2, 0 -_0810FDD0: - .4byte _0810FE0C - .4byte _0810FE0C - .4byte _0810FDF0 - .4byte _0810FDF6 - .4byte _0810FDFC - .4byte _0810FE02 - .4byte _0810FE08 - .4byte _0810FE0C -_0810FDF0: - movs r3, 0 - movs r2, 0x3 - b _0810FE0C -_0810FDF6: - movs r3, 0 - movs r2, 0x1 - b _0810FE0C -_0810FDFC: - movs r3, 0x1 - movs r2, 0 - b _0810FE0C -_0810FE02: - movs r3, 0 - movs r2, 0x4 - b _0810FE0C -_0810FE08: - movs r3, 0x1 - movs r2, 0x5 -_0810FE0C: - ldr r0, _0810FE18 @ =gSaveBlock1 + 0x30B8 - adds r1, r3, 0 - bl sub_810FE1C - pop {r0} - bx r0 - .align 2, 0 -_0810FE18: .4byte gSaveBlock1 + 0x30B8 - thumb_func_end sub_810FDAC - - thumb_func_start sub_810FE1C -sub_810FE1C: @ 810FE1C - push {r4,lr} - lsls r1, 24 - lsls r2, 24 - lsrs r2, 24 - lsrs r1, 20 - adds r1, r0, r1 - ldrb r0, [r1] - cmp r0, 0xFF - bne _0810FED0 - cmp r2, 0x5 - bhi _0810FEBC - lsls r0, r2, 2 - ldr r1, _0810FE3C @ =_0810FE40 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0810FE3C: .4byte _0810FE40 - .align 2, 0 -_0810FE40: - .4byte _0810FEBC - .4byte _0810FE58 - .4byte _0810FE6C - .4byte _0810FE80 - .4byte _0810FE94 - .4byte _0810FEA8 -_0810FE58: - ldr r0, _0810FE64 @ =gStringVar1 - ldr r1, _0810FE68 @ =gOtherText_Steven - bl StringCopy - b _0810FEF2 - .align 2, 0 -_0810FE64: .4byte gStringVar1 -_0810FE68: .4byte gOtherText_Steven -_0810FE6C: - ldr r0, _0810FE78 @ =gStringVar1 - ldr r1, _0810FE7C @ =gOtherText_Brawly - bl StringCopy - b _0810FEF2 - .align 2, 0 -_0810FE78: .4byte gStringVar1 -_0810FE7C: .4byte gOtherText_Brawly -_0810FE80: - ldr r0, _0810FE8C @ =gStringVar1 - ldr r1, _0810FE90 @ =gOtherText_Winona - bl StringCopy - b _0810FEF2 - .align 2, 0 -_0810FE8C: .4byte gStringVar1 -_0810FE90: .4byte gOtherText_Winona -_0810FE94: - ldr r0, _0810FEA0 @ =gStringVar1 - ldr r1, _0810FEA4 @ =gOtherText_Phoebe - bl StringCopy - b _0810FEF2 - .align 2, 0 -_0810FEA0: .4byte gStringVar1 -_0810FEA4: .4byte gOtherText_Phoebe -_0810FEA8: - ldr r0, _0810FEB4 @ =gStringVar1 - ldr r1, _0810FEB8 @ =gOtherText_Glacia - bl StringCopy - b _0810FEF2 - .align 2, 0 -_0810FEB4: .4byte gStringVar1 -_0810FEB8: .4byte gOtherText_Glacia -_0810FEBC: - ldr r0, _0810FEC8 @ =gStringVar1 - ldr r1, _0810FECC @ =gOtherText_Wallace - bl StringCopy - b _0810FEF2 - .align 2, 0 -_0810FEC8: .4byte gStringVar1 -_0810FECC: .4byte gOtherText_Wallace -_0810FED0: - ldr r4, _0810FEF8 @ =gStringVar1 - adds r0, r4, 0 - movs r2, 0x7 - bl StringCopyN - movs r0, 0xFF - strb r0, [r4, 0x7] - ldrb r0, [r4] - cmp r0, 0xFC - bne _0810FEF2 - ldrb r0, [r4, 0x1] - cmp r0, 0x15 - bne _0810FEF2 - adds r0, r4, 0 - movs r1, 0x1 - bl ConvertInternationalString -_0810FEF2: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0810FEF8: .4byte gStringVar1 - thumb_func_end sub_810FE1C - - thumb_func_start sub_810FEFC -sub_810FEFC: @ 810FEFC - push {lr} - ldr r0, _0810FF20 @ =0x00004095 - bl VarGet - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x2 - bne _0810FF2C - bl sub_810FA74 - ldr r0, _0810FF24 @ =gUnknown_02024D26 - ldrb r0, [r0] - cmp r0, 0x1 - bne _0810FF28 - bl sub_810FB9C - b _0810FF2C - .align 2, 0 -_0810FF20: .4byte 0x00004095 -_0810FF24: .4byte gUnknown_02024D26 -_0810FF28: - bl sub_810FC18 -_0810FF2C: - pop {r0} - bx r0 - thumb_func_end sub_810FEFC - - thumb_func_start sub_810FF30 -sub_810FF30: @ 810FF30 - ldr r0, _0810FF40 @ =gSaveBlock1 - ldr r1, _0810FF44 @ =0x000013c2 - adds r0, r1 - ldrh r0, [r0] - lsrs r0, 7 - movs r1, 0x1 - ands r0, r1 - bx lr - .align 2, 0 -_0810FF40: .4byte gSaveBlock1 -_0810FF44: .4byte 0x000013c2 - thumb_func_end sub_810FF30 - - thumb_func_start sub_810FF48 -sub_810FF48: @ 810FF48 - ldr r0, _0810FF58 @ =gSaveBlock1 - ldr r1, _0810FF5C @ =0x000013c2 - adds r0, r1 - ldrh r2, [r0] - movs r1, 0x80 - orrs r1, r2 - strh r1, [r0] - bx lr - .align 2, 0 -_0810FF58: .4byte gSaveBlock1 -_0810FF5C: .4byte 0x000013c2 - thumb_func_end sub_810FF48 - - thumb_func_start sub_810FF60 -sub_810FF60: @ 810FF60 - push {lr} - ldr r0, _0810FF74 @ =gSpecialVar_0x8004 - ldrb r0, [r0] - bl sub_810FB10 - lsls r0, 24 - lsrs r0, 24 - pop {r1} - bx r1 - .align 2, 0 -_0810FF74: .4byte gSpecialVar_0x8004 - thumb_func_end sub_810FF60 - - .align 2, 0 @ Don't pad with nop. |