diff options
author | PikalaxALT <PikalaxALT@users.noreply.github.com> | 2020-03-10 14:31:53 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-03-10 14:31:53 -0400 |
commit | a9bc506b32a13381ce60ad616cec532b82fcf660 (patch) | |
tree | 7b9baa6d26e1cd6ea99b4aa266de6b0cf914978c /asm | |
parent | c40d7241ff2d2c0220550339b27a2725aac856fe (diff) | |
parent | 7209db3397451f4b1424e01fb8950d4d74f8f4fa (diff) |
Merge pull request #295 from PikalaxALT/naming_screen
Naming screen
Diffstat (limited to 'asm')
-rw-r--r-- | asm/event_object_movement.s | 14 | ||||
-rw-r--r-- | asm/naming_screen.s | 4594 |
2 files changed, 7 insertions, 4601 deletions
diff --git a/asm/event_object_movement.s b/asm/event_object_movement.s index e9ddd9ebc..d09ee8e97 100644 --- a/asm/event_object_movement.s +++ b/asm/event_object_movement.s @@ -1470,8 +1470,8 @@ _0805E8E0: bx r1 thumb_func_end TrySpawnObjectEvent - thumb_func_start sub_805E8E8 -sub_805E8E8: @ 805E8E8 + thumb_func_start MakeObjectTemplateFromObjectEventGraphicsInfo +MakeObjectTemplateFromObjectEventGraphicsInfo: @ 805E8E8 push {r4-r7,lr} adds r6, r1, 0 adds r4, r2, 0 @@ -1515,7 +1515,7 @@ _0805E936: pop {r4-r7} pop {r0} bx r0 - thumb_func_end sub_805E8E8 + thumb_func_end MakeObjectTemplateFromObjectEventGraphicsInfo thumb_func_start MakeObjectTemplateFromObjectEventGraphicsInfoWithCallbackIndex MakeObjectTemplateFromObjectEventGraphicsInfoWithCallbackIndex: @ 805E940 @@ -1527,7 +1527,7 @@ MakeObjectTemplateFromObjectEventGraphicsInfoWithCallbackIndex: @ 805E940 lsrs r1, 14 adds r1, r4 ldr r1, [r1] - bl sub_805E8E8 + bl MakeObjectTemplateFromObjectEventGraphicsInfo pop {r4} pop {r0} bx r0 @@ -1565,7 +1565,7 @@ AddPseudoObjectEvent: @ 805E978 lsrs r4, 24 add r3, sp, 0x18 mov r2, sp - bl sub_805E8E8 + bl MakeObjectTemplateFromObjectEventGraphicsInfo mov r0, sp ldrh r1, [r0, 0x2] ldr r0, _0805E9F0 @ =0x0000ffff @@ -1649,7 +1649,7 @@ sprite_new: @ 805E9F8 add r3, sp, 0x1C adds r0, r5, 0 mov r2, sp - bl sub_805E8E8 + bl MakeObjectTemplateFromObjectEventGraphicsInfo mov r1, sp ldr r2, _0805EB3C @ =0x0000ffff adds r0, r2, 0 @@ -1799,7 +1799,7 @@ sub_805EB44: @ 805EB44 add r3, sp, 0x18 adds r0, r6, 0 mov r2, sp - bl sub_805E8E8 + bl MakeObjectTemplateFromObjectEventGraphicsInfo mov r1, sp ldr r2, _0805EC28 @ =0x0000ffff adds r0, r2, 0 diff --git a/asm/naming_screen.s b/asm/naming_screen.s deleted file mode 100644 index 1e0d2ef68..000000000 --- a/asm/naming_screen.s +++ /dev/null @@ -1,4594 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .syntax unified - - .text - - thumb_func_start DoNamingScreen -DoNamingScreen: @ 809D954 - push {r4-r7,lr} - mov r7, r8 - push {r7} - mov r8, r1 - lsls r0, 24 - lsrs r7, r0, 24 - lsls r2, 16 - lsrs r5, r2, 16 - lsls r3, 16 - lsrs r6, r3, 16 - ldr r4, _0809D980 @ =gUnknown_203998C - movs r0, 0xF2 - lsls r0, 5 - bl Alloc - str r0, [r4] - cmp r0, 0 - bne _0809D984 - ldr r0, [sp, 0x1C] - bl SetMainCallback2 - b _0809D9BE - .align 2, 0 -_0809D980: .4byte gUnknown_203998C -_0809D984: - ldr r1, _0809D9C8 @ =0x00001e2c - adds r0, r1 - strb r7, [r0] - ldr r0, [r4] - ldr r2, _0809D9CC @ =0x00001e34 - adds r1, r0, r2 - strh r5, [r1] - adds r2, 0x2 - adds r1, r0, r2 - strh r6, [r1] - ldr r1, _0809D9D0 @ =0x00001e38 - adds r2, r0, r1 - ldr r1, [sp, 0x18] - str r1, [r2] - ldr r2, _0809D9D4 @ =0x00001e30 - adds r1, r0, r2 - mov r2, r8 - str r2, [r1] - ldr r1, _0809D9D8 @ =0x00001e3c - adds r0, r1 - ldr r2, [sp, 0x1C] - str r2, [r0] - cmp r7, 0 - bne _0809D9B8 - bl StartTimer1 -_0809D9B8: - ldr r0, _0809D9DC @ =c2_choose_name_or_words_screen - bl SetMainCallback2 -_0809D9BE: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0809D9C8: .4byte 0x00001e2c -_0809D9CC: .4byte 0x00001e34 -_0809D9D0: .4byte 0x00001e38 -_0809D9D4: .4byte 0x00001e30 -_0809D9D8: .4byte 0x00001e3c -_0809D9DC: .4byte c2_choose_name_or_words_screen - thumb_func_end DoNamingScreen - - thumb_func_start c2_choose_name_or_words_screen -c2_choose_name_or_words_screen: @ 809D9E0 - push {lr} - ldr r0, _0809D9FC @ =gMain - movs r1, 0x87 - lsls r1, 3 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x7 - bhi _0809DA78 - lsls r0, 2 - ldr r1, _0809DA00 @ =_0809DA04 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0809D9FC: .4byte gMain -_0809DA00: .4byte _0809DA04 - .align 2, 0 -_0809DA04: - .4byte _0809DA24 - .4byte _0809DA2E - .4byte _0809DA34 - .4byte _0809DA3A - .4byte _0809DA44 - .4byte _0809DA4A - .4byte _0809DA50 - .4byte _0809DA56 -_0809DA24: - bl sub_809FB88 - bl sub_809DA84 - b _0809DA62 -_0809DA2E: - bl choose_name_or_words_screen_init_bgs - b _0809DA62 -_0809DA34: - bl ResetPaletteFade - b _0809DA62 -_0809DA3A: - bl ResetSpriteData - bl FreeAllSpritePalettes - b _0809DA62 -_0809DA44: - bl ResetTasks - b _0809DA62 -_0809DA4A: - bl choose_name_or_words_screen_apply_bg_pals - b _0809DA62 -_0809DA50: - bl choose_name_or_words_screen_load_bg_tile_patterns - b _0809DA62 -_0809DA56: - bl sub_809E898 - bl UpdatePaletteFade - bl sub_809FC34 -_0809DA62: - ldr r1, _0809DA74 @ =gMain - movs r0, 0x87 - lsls r0, 3 - adds r1, r0 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - b _0809DA80 - .align 2, 0 -_0809DA74: .4byte gMain -_0809DA78: - bl sub_809F8C0 - bl sub_809DD60 -_0809DA80: - pop {r0} - bx r0 - thumb_func_end c2_choose_name_or_words_screen - - thumb_func_start sub_809DA84 -sub_809DA84: @ 809DA84 - push {r4-r6,lr} - ldr r4, _0809DB3C @ =gUnknown_203998C - ldr r0, [r4] - ldr r1, _0809DB40 @ =0x00001e10 - adds r0, r1 - movs r2, 0 - strb r2, [r0] - ldr r1, [r4] - ldr r3, _0809DB44 @ =0x00001e18 - adds r0, r1, r3 - movs r5, 0 - strh r2, [r0] - ldr r6, _0809DB48 @ =0x00001e1a - adds r0, r1, r6 - strh r2, [r0] - ldr r0, _0809DB4C @ =0x00001e1c - adds r2, r1, r0 - movs r3, 0x1 - movs r0, 0x1 - strh r0, [r2] - adds r6, 0x4 - adds r2, r1, r6 - movs r0, 0x2 - strh r0, [r2] - movs r0, 0xF1 - lsls r0, 5 - adds r1, r0 - strb r5, [r1] - ldr r0, [r4] - ldr r1, _0809DB50 @ =0x00001e21 - adds r0, r1 - strb r3, [r0] - ldr r1, [r4] - ldr r5, _0809DB54 @ =0x00001e28 - adds r3, r1, r5 - ldr r2, _0809DB58 @ =gUnknown_83E248C - adds r6, 0xE - adds r0, r1, r6 - ldrb r0, [r0] - lsls r0, 2 - adds r0, r2 - ldr r0, [r0] - str r0, [r3] - ldrb r0, [r0, 0x4] - ldr r2, _0809DB5C @ =0x00001e22 - adds r1, r2 - strb r0, [r1] - ldr r2, [r4] - adds r0, r2, r5 - ldr r0, [r0] - ldrb r1, [r0, 0x1] - lsls r1, 3 - movs r0, 0xF0 - subs r0, r1 - asrs r0, 1 - adds r0, 0x6 - ldr r3, _0809DB60 @ =0x00001e16 - adds r1, r2, r3 - strh r0, [r1] - ldr r6, _0809DB64 @ =gKeyRepeatStartDelay - ldrh r0, [r6] - ldr r1, _0809DB68 @ =0x00001e25 - adds r2, r1 - strb r0, [r2] - ldr r0, [r4] - movs r2, 0xC0 - lsls r2, 5 - adds r0, r2 - movs r1, 0xFF - movs r2, 0x10 - bl memset - ldr r1, [r4] - adds r5, r1, r5 - ldr r0, [r5] - ldrb r0, [r0] - cmp r0, 0 - beq _0809DB30 - movs r3, 0xC0 - lsls r3, 5 - adds r0, r1, r3 - ldr r2, _0809DB6C @ =0x00001e30 - adds r1, r2 - ldr r1, [r1] - bl StringCopy -_0809DB30: - movs r0, 0x10 - strh r0, [r6] - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0809DB3C: .4byte gUnknown_203998C -_0809DB40: .4byte 0x00001e10 -_0809DB44: .4byte 0x00001e18 -_0809DB48: .4byte 0x00001e1a -_0809DB4C: .4byte 0x00001e1c -_0809DB50: .4byte 0x00001e21 -_0809DB54: .4byte 0x00001e28 -_0809DB58: .4byte gUnknown_83E248C -_0809DB5C: .4byte 0x00001e22 -_0809DB60: .4byte 0x00001e16 -_0809DB64: .4byte gKeyRepeatStartDelay -_0809DB68: .4byte 0x00001e25 -_0809DB6C: .4byte 0x00001e30 - thumb_func_end sub_809DA84 - - thumb_func_start sub_809DB70 -sub_809DB70: @ 809DB70 - push {r4,r5,lr} - movs r3, 0 - ldr r4, _0809DBAC @ =gSprites - movs r5, 0x5 - negs r5, r5 -_0809DB7A: - lsls r0, r3, 4 - adds r0, r3 - lsls r0, 2 - adds r0, r4 - adds r2, r0, 0 - adds r2, 0x3E - ldrb r1, [r2] - lsls r0, r1, 31 - cmp r0, 0 - beq _0809DB94 - adds r0, r5, 0 - ands r0, r1 - strb r0, [r2] -_0809DB94: - adds r0, r3, 0x1 - lsls r0, 24 - lsrs r3, r0, 24 - cmp r3, 0x3F - bls _0809DB7A - movs r0, 0 - bl sub_809EA0C - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0809DBAC: .4byte gSprites - thumb_func_end sub_809DB70 - - thumb_func_start choose_name_or_words_screen_init_bgs -choose_name_or_words_screen_init_bgs: @ 809DBB0 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x10 - movs r3, 0xC0 - lsls r3, 19 - movs r4, 0xC0 - lsls r4, 9 - add r0, sp, 0xC - mov r8, r0 - add r2, sp, 0x8 - movs r6, 0 - ldr r1, _0809DD44 @ =0x040000d4 - movs r5, 0x80 - lsls r5, 5 - ldr r7, _0809DD48 @ =0x81000800 - movs r0, 0x81 - lsls r0, 24 - mov r12, r0 -_0809DBD6: - strh r6, [r2] - add r0, sp, 0x8 - str r0, [r1] - str r3, [r1, 0x4] - str r7, [r1, 0x8] - ldr r0, [r1, 0x8] - adds r3, r5 - subs r4, r5 - cmp r4, r5 - bhi _0809DBD6 - strh r6, [r2] - add r2, sp, 0x8 - str r2, [r1] - str r3, [r1, 0x4] - lsrs r0, r4, 1 - mov r2, r12 - orrs r0, r2 - str r0, [r1, 0x8] - ldr r0, [r1, 0x8] - movs r0, 0xE0 - lsls r0, 19 - movs r3, 0x80 - lsls r3, 3 - movs r4, 0 - str r4, [sp, 0xC] - ldr r2, _0809DD44 @ =0x040000d4 - mov r1, r8 - str r1, [r2] - str r0, [r2, 0x4] - lsrs r0, r3, 2 - movs r1, 0x85 - lsls r1, 24 - orrs r0, r1 - str r0, [r2, 0x8] - ldr r0, [r2, 0x8] - movs r1, 0xA0 - lsls r1, 19 - add r0, sp, 0x8 - strh r4, [r0] - str r0, [r2] - str r1, [r2, 0x4] - lsrs r3, 1 - movs r0, 0x81 - lsls r0, 24 - orrs r3, r0 - str r3, [r2, 0x8] - ldr r0, [r2, 0x8] - movs r0, 0 - movs r1, 0 - bl SetGpuReg - movs r0, 0 - bl ResetBgsAndClearDma3BusyFlags - ldr r1, _0809DD4C @ =gUnknown_83E2290 - movs r0, 0 - movs r2, 0x4 - bl InitBgsFromTemplates - movs r0, 0 - movs r1, 0 - movs r2, 0 - bl ChangeBgX - movs r0, 0 - movs r1, 0 - movs r2, 0 - bl ChangeBgY - movs r0, 0x1 - movs r1, 0 - movs r2, 0 - bl ChangeBgX - movs r0, 0x1 - movs r1, 0 - movs r2, 0 - bl ChangeBgY - movs r0, 0x2 - movs r1, 0 - movs r2, 0 - bl ChangeBgX - movs r0, 0x2 - movs r1, 0 - movs r2, 0 - bl ChangeBgY - movs r0, 0x3 - movs r1, 0 - movs r2, 0 - bl ChangeBgX - movs r0, 0x3 - movs r1, 0 - movs r2, 0 - bl ChangeBgY - bl InitStandardTextBoxWindows - bl ResetBg0 -_0809DCA4: - lsls r0, r4, 3 - ldr r1, _0809DD50 @ =gUnknown_83E22A0 - adds r0, r1 - bl AddWindow - ldr r5, _0809DD54 @ =gUnknown_203998C - ldr r1, [r5] - ldr r2, _0809DD58 @ =0x00001e11 - adds r1, r2 - adds r1, r4 - strb r0, [r1] - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x4 - bls _0809DCA4 - movs r1, 0x82 - lsls r1, 5 - movs r0, 0 - bl SetGpuReg - movs r1, 0xC8 - lsls r1, 3 - movs r0, 0x50 - bl SetGpuReg - ldr r1, _0809DD5C @ =0x0000080c - movs r0, 0x52 - bl SetGpuReg - ldr r1, [r5] - movs r0, 0x1 - bl SetBgTilemapBuffer - ldr r1, [r5] - movs r0, 0x80 - lsls r0, 4 - adds r1, r0 - movs r0, 0x2 - bl SetBgTilemapBuffer - ldr r1, [r5] - movs r2, 0x80 - lsls r2, 5 - adds r1, r2 - movs r0, 0x3 - bl SetBgTilemapBuffer - movs r4, 0x20 - str r4, [sp] - str r4, [sp, 0x4] - movs r0, 0x1 - movs r1, 0 - movs r2, 0 - movs r3, 0 - bl FillBgTilemapBufferRect_Palette0 - str r4, [sp] - str r4, [sp, 0x4] - movs r0, 0x2 - movs r1, 0 - movs r2, 0 - movs r3, 0 - bl FillBgTilemapBufferRect_Palette0 - str r4, [sp] - str r4, [sp, 0x4] - movs r0, 0x3 - movs r1, 0 - movs r2, 0 - movs r3, 0 - bl FillBgTilemapBufferRect_Palette0 - add sp, 0x10 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0809DD44: .4byte 0x040000d4 -_0809DD48: .4byte 0x81000800 -_0809DD4C: .4byte gUnknown_83E2290 -_0809DD50: .4byte gUnknown_83E22A0 -_0809DD54: .4byte gUnknown_203998C -_0809DD58: .4byte 0x00001e11 -_0809DD5C: .4byte 0x0000080c - thumb_func_end choose_name_or_words_screen_init_bgs - - thumb_func_start sub_809DD60 -sub_809DD60: @ 809DD60 - push {lr} - ldr r0, _0809DD80 @ =sub_809DD88 - movs r1, 0x2 - bl CreateTask - ldr r0, _0809DD84 @ =sub_809FB70 - bl SetMainCallback2 - bl BackupHelpContext - movs r0, 0x3 @ HELPCONTEXT_NAMING_SCREEN - bl SetHelpContext - pop {r0} - bx r0 - .align 2, 0 -_0809DD80: .4byte sub_809DD88 -_0809DD84: .4byte sub_809FB70 - thumb_func_end sub_809DD60 - - thumb_func_start sub_809DD88 -sub_809DD88: @ 809DD88 - push {lr} - ldr r0, _0809DDA4 @ =gUnknown_203998C - ldr r0, [r0] - ldr r1, _0809DDA8 @ =0x00001e10 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x9 - bhi _0809DE1A - lsls r0, 2 - ldr r1, _0809DDAC @ =_0809DDB0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0809DDA4: .4byte gUnknown_203998C -_0809DDA8: .4byte 0x00001e10 -_0809DDAC: .4byte _0809DDB0 - .align 2, 0 -_0809DDB0: - .4byte _0809DDD8 - .4byte _0809DDE6 - .4byte _0809DDEC - .4byte _0809DDF2 - .4byte _0809DDF8 - .4byte _0809DDFE - .4byte _0809DE04 - .4byte _0809DE0A - .4byte _0809DE10 - .4byte _0809DE16 -_0809DDD8: - bl sub_809DE70 - bl sub_809DB70 - bl sub_809FB9C - b _0809DE1A -_0809DDE6: - bl sub_809DF28 - b _0809DE1A -_0809DDEC: - bl sub_809DF64 - b _0809DE1A -_0809DDF2: - bl sub_809DF74 - b _0809DE1A -_0809DDF8: - bl sub_809E210 - b _0809DE1A -_0809DDFE: - bl sub_809E250 - b _0809DE1A -_0809DE04: - bl pokemon_store - b _0809DE1A -_0809DE0A: - bl sub_809E1D4 - b _0809DE1A -_0809DE10: - bl sub_809E014 - b _0809DE1A -_0809DE16: - bl sub_809E048 -_0809DE1A: - pop {r0} - bx r0 - thumb_func_end sub_809DD88 - - thumb_func_start sub_809DE20 -sub_809DE20: @ 809DE20 - lsls r0, 24 - lsrs r0, 24 - ldr r1, _0809DE2C @ =gUnknown_83E234B - adds r0, r1 - ldrb r0, [r0] - bx lr - .align 2, 0 -_0809DE2C: .4byte gUnknown_83E234B - thumb_func_end sub_809DE20 - - thumb_func_start sub_809DE30 -sub_809DE30: @ 809DE30 - ldr r1, _0809DE44 @ =gUnknown_83E234E - ldr r0, _0809DE48 @ =gUnknown_203998C - ldr r0, [r0] - ldr r2, _0809DE4C @ =0x00001e22 - adds r0, r2 - ldrb r0, [r0] - adds r0, r1 - ldrb r0, [r0] - bx lr - .align 2, 0 -_0809DE44: .4byte gUnknown_83E234E -_0809DE48: .4byte gUnknown_203998C -_0809DE4C: .4byte 0x00001e22 - thumb_func_end sub_809DE30 - - thumb_func_start sub_809DE50 -sub_809DE50: @ 809DE50 - ldr r1, _0809DE64 @ =gUnknown_83E2351 - ldr r0, _0809DE68 @ =gUnknown_203998C - ldr r0, [r0] - ldr r2, _0809DE6C @ =0x00001e22 - adds r0, r2 - ldrb r0, [r0] - adds r0, r1 - ldrb r0, [r0] - bx lr - .align 2, 0 -_0809DE64: .4byte gUnknown_83E2351 -_0809DE68: .4byte gUnknown_203998C -_0809DE6C: .4byte 0x00001e22 - thumb_func_end sub_809DE50 - - thumb_func_start sub_809DE70 -sub_809DE70: @ 809DE70 - push {r4-r6,lr} - sub sp, 0x4 - ldr r1, _0809DF08 @ =gUnknown_8E982BC - movs r0, 0x3 - bl sub_809F900 - ldr r5, _0809DF0C @ =gUnknown_203998C - ldr r0, [r5] - ldr r1, _0809DF10 @ =0x00001e22 - adds r0, r1 - movs r6, 0 - movs r1, 0x1 - strb r1, [r0] - ldr r1, _0809DF14 @ =gUnknown_8E98458 - movs r0, 0x2 - bl sub_809F900 - ldr r1, _0809DF18 @ =gUnknown_8E98398 - movs r0, 0x1 - bl sub_809F900 - ldr r0, [r5] - ldr r1, _0809DF1C @ =0x00001e12 - adds r0, r1 - ldrb r0, [r0] - movs r1, 0 - bl sub_809F9E8 - ldr r0, [r5] - ldr r1, _0809DF20 @ =0x00001e11 - adds r0, r1 - ldrb r0, [r0] - movs r1, 0x1 - bl sub_809F9E8 - bl sub_809F914 - bl sub_809F56C - bl sub_809FAE4 - movs r0, 0x1 - bl CopyBgTilemapBufferToVram - movs r0, 0x2 - bl CopyBgTilemapBufferToVram - movs r0, 0x3 - bl CopyBgTilemapBufferToVram - movs r4, 0x1 - negs r4, r4 - adds r0, r4, 0 - movs r1, 0x10 - movs r2, 0 - bl BlendPalettes - str r6, [sp] - adds r0, r4, 0 - movs r1, 0 - movs r2, 0x10 - movs r3, 0 - bl BeginNormalPaletteFade - ldr r1, [r5] - ldr r0, _0809DF24 @ =0x00001e10 - adds r1, r0 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - movs r0, 0 - add sp, 0x4 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_0809DF08: .4byte gUnknown_8E982BC -_0809DF0C: .4byte gUnknown_203998C -_0809DF10: .4byte 0x00001e22 -_0809DF14: .4byte gUnknown_8E98458 -_0809DF18: .4byte gUnknown_8E98398 -_0809DF1C: .4byte 0x00001e12 -_0809DF20: .4byte 0x00001e11 -_0809DF24: .4byte 0x00001e10 - thumb_func_end sub_809DE70 - - thumb_func_start sub_809DF28 -sub_809DF28: @ 809DF28 - push {lr} - ldr r0, _0809DF58 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _0809DF50 - movs r0, 0x1 - bl SetInputState - movs r0, 0x1 - bl sub_809EA64 - ldr r0, _0809DF5C @ =gUnknown_203998C - ldr r1, [r0] - ldr r0, _0809DF60 @ =0x00001e10 - adds r1, r0 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] -_0809DF50: - movs r0, 0 - pop {r1} - bx r1 - .align 2, 0 -_0809DF58: .4byte gPaletteFade -_0809DF5C: .4byte gUnknown_203998C -_0809DF60: .4byte 0x00001e10 - thumb_func_end sub_809DF28 - - thumb_func_start sub_809DF64 -sub_809DF64: @ 809DF64 - push {lr} - bl sub_809F0CC - lsls r0, 24 - lsrs r0, 24 - pop {r1} - bx r1 - thumb_func_end sub_809DF64 - - thumb_func_start sub_809DF74 -sub_809DF74: @ 809DF74 - push {lr} - bl sub_809EAD4 - lsls r0, 24 - cmp r0, 0 - beq _0809DF96 - movs r0, 0x1 - bl SetInputState - bl sub_809E9F8 - ldr r0, _0809DF9C @ =gUnknown_203998C - ldr r0, [r0] - ldr r1, _0809DFA0 @ =0x00001e10 - adds r0, r1 - movs r1, 0x2 - strb r1, [r0] -_0809DF96: - movs r0, 0 - pop {r1} - bx r1 - .align 2, 0 -_0809DF9C: .4byte gUnknown_203998C -_0809DFA0: .4byte 0x00001e10 - thumb_func_end sub_809DF74 - - thumb_func_start pokemon_store -pokemon_store: @ 809DFA4 - push {r4,lr} - bl sub_809F7EC - movs r0, 0 - bl SetInputState - movs r0, 0 - bl sub_809EA64 - movs r0, 0x3 - movs r1, 0 - movs r2, 0x1 - bl sub_809E518 - ldr r4, _0809DFEC @ =gUnknown_203998C - ldr r0, [r4] - ldr r1, _0809DFF0 @ =0x00001e2c - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x2 - bne _0809DFF8 - bl CalculatePlayerPartyCount - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x5 - bls _0809DFF8 - bl pokemon_transfer_to_pc_with_message - ldr r0, [r4] - ldr r1, _0809DFF4 @ =0x00001e10 - adds r0, r1 - movs r1, 0x7 - strb r1, [r0] - movs r0, 0 - b _0809E006 - .align 2, 0 -_0809DFEC: .4byte gUnknown_203998C -_0809DFF0: .4byte 0x00001e2c -_0809DFF4: .4byte 0x00001e10 -_0809DFF8: - ldr r0, _0809E00C @ =gUnknown_203998C - ldr r0, [r0] - ldr r1, _0809E010 @ =0x00001e10 - adds r0, r1 - movs r1, 0x8 - strb r1, [r0] - movs r0, 0x1 -_0809E006: - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0809E00C: .4byte gUnknown_203998C -_0809E010: .4byte 0x00001e10 - thumb_func_end pokemon_store - - thumb_func_start sub_809E014 -sub_809E014: @ 809E014 - push {lr} - sub sp, 0x4 - movs r0, 0x1 - negs r0, r0 - movs r1, 0 - str r1, [sp] - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - ldr r0, _0809E040 @ =gUnknown_203998C - ldr r1, [r0] - ldr r0, _0809E044 @ =0x00001e10 - adds r1, r0 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - movs r0, 0 - add sp, 0x4 - pop {r1} - bx r1 - .align 2, 0 -_0809E040: .4byte gUnknown_203998C -_0809E044: .4byte 0x00001e10 - thumb_func_end sub_809E014 - - thumb_func_start sub_809E048 -sub_809E048: @ 809E048 - push {r4,r5,lr} - ldr r0, _0809E0A0 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0 - bne _0809E096 - ldr r4, _0809E0A4 @ =gUnknown_203998C - ldr r0, [r4] - ldr r1, _0809E0A8 @ =0x00001e2c - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _0809E06C - bl SeedRngAndSetTrainerId -_0809E06C: - ldr r0, [r4] - ldr r1, _0809E0AC @ =0x00001e3c - adds r0, r1 - ldr r0, [r0] - bl SetMainCallback2 - ldr r0, _0809E0B0 @ =sub_809DD88 - bl FindTaskIdByFunc - lsls r0, 24 - lsrs r0, 24 - bl DestroyTask - bl FreeAllWindowBuffers - ldr r0, [r4] - bl Free - str r5, [r4] - bl RestoreHelpContext -_0809E096: - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0809E0A0: .4byte gPaletteFade -_0809E0A4: .4byte gUnknown_203998C -_0809E0A8: .4byte 0x00001e2c -_0809E0AC: .4byte 0x00001e3c -_0809E0B0: .4byte sub_809DD88 - thumb_func_end sub_809E048 - - thumb_func_start pokemon_transfer_to_pc_with_message -pokemon_transfer_to_pc_with_message: @ 809E0B4 - push {r4,r5,lr} - sub sp, 0x10 - movs r5, 0 - bl IsDestinationBoxFull - lsls r0, 24 - cmp r0, 0 - bne _0809E104 - ldr r4, _0809E0F0 @ =gStringVar1 - ldr r0, _0809E0F4 @ =0x00004037 - bl VarGet - lsls r0, 24 - lsrs r0, 24 - bl GetBoxNamePtr - adds r1, r0, 0 - adds r0, r4, 0 - bl StringCopy - ldr r0, _0809E0F8 @ =gStringVar2 - ldr r1, _0809E0FC @ =gUnknown_203998C - ldr r1, [r1] - ldr r2, _0809E100 @ =0x00001e30 - adds r1, r2 - ldr r1, [r1] - bl StringCopy - b _0809E144 - .align 2, 0 -_0809E0F0: .4byte gStringVar1 -_0809E0F4: .4byte 0x00004037 -_0809E0F8: .4byte gStringVar2 -_0809E0FC: .4byte gUnknown_203998C -_0809E100: .4byte 0x00001e30 -_0809E104: - ldr r4, _0809E1AC @ =gStringVar1 - ldr r0, _0809E1B0 @ =0x00004037 - bl VarGet - lsls r0, 24 - lsrs r0, 24 - bl GetBoxNamePtr - adds r1, r0, 0 - adds r0, r4, 0 - bl StringCopy - ldr r0, _0809E1B4 @ =gStringVar2 - ldr r1, _0809E1B8 @ =gUnknown_203998C - ldr r1, [r1] - ldr r2, _0809E1BC @ =0x00001e30 - adds r1, r2 - ldr r1, [r1] - bl StringCopy - ldr r4, _0809E1C0 @ =gStringVar3 - bl GetPCBoxToSendMon - lsls r0, 24 - lsrs r0, 24 - bl GetBoxNamePtr - adds r1, r0, 0 - adds r0, r4, 0 - bl StringCopy - movs r5, 0x2 -_0809E144: - ldr r0, _0809E1C4 @ =0x00000834 - bl FlagGet - lsls r0, 24 - cmp r0, 0 - beq _0809E156 - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 -_0809E156: - ldr r4, _0809E1C8 @ =gStringVar4 - ldr r1, _0809E1CC @ =gUnknown_83E2280 - lsls r0, r5, 2 - adds r0, r1 - ldr r1, [r0] - adds r0, r4, 0 - bl StringExpandPlaceholders - movs r0, 0 - movs r1, 0 - bl DrawDialogueFrame - ldr r2, _0809E1D0 @ =gTextFlags - ldrb r0, [r2] - movs r1, 0x1 - orrs r0, r1 - strb r0, [r2] - bl GetTextSpeedSetting - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - movs r0, 0 - str r0, [sp] - movs r0, 0x2 - str r0, [sp, 0x4] - movs r0, 0x1 - str r0, [sp, 0x8] - movs r0, 0x3 - str r0, [sp, 0xC] - movs r0, 0 - movs r1, 0x2 - adds r2, r4, 0 - bl AddTextPrinterParameterized2 - movs r0, 0 - movs r1, 0x3 - bl CopyWindowToVram - add sp, 0x10 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0809E1AC: .4byte gStringVar1 -_0809E1B0: .4byte 0x00004037 -_0809E1B4: .4byte gStringVar2 -_0809E1B8: .4byte gUnknown_203998C -_0809E1BC: .4byte 0x00001e30 -_0809E1C0: .4byte gStringVar3 -_0809E1C4: .4byte 0x00000834 -_0809E1C8: .4byte gStringVar4 -_0809E1CC: .4byte gUnknown_83E2280 -_0809E1D0: .4byte gTextFlags - thumb_func_end pokemon_transfer_to_pc_with_message - - thumb_func_start sub_809E1D4 -sub_809E1D4: @ 809E1D4 - push {lr} - bl RunTextPrinters - movs r0, 0 - bl IsTextPrinterActive - lsls r0, 16 - cmp r0, 0 - bne _0809E1FE - ldr r0, _0809E204 @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0809E1FE - ldr r0, _0809E208 @ =gUnknown_203998C - ldr r0, [r0] - ldr r1, _0809E20C @ =0x00001e10 - adds r0, r1 - movs r1, 0x8 - strb r1, [r0] -_0809E1FE: - movs r0, 0 - pop {r1} - bx r1 - .align 2, 0 -_0809E204: .4byte gMain -_0809E208: .4byte gUnknown_203998C -_0809E20C: .4byte 0x00001e10 - thumb_func_end sub_809E1D4 - - thumb_func_start sub_809E210 -sub_809E210: @ 809E210 - push {lr} - movs r0, 0 - bl SetInputState - bl sub_809EC20 - bl sub_809E30C - movs r0, 0x1 - bl sub_809EA0C - movs r0, 0 - movs r1, 0 - movs r2, 0x1 - bl sub_809E518 - movs r0, 0x6 - bl PlaySE - ldr r0, _0809E248 @ =gUnknown_203998C - ldr r0, [r0] - ldr r1, _0809E24C @ =0x00001e10 - adds r0, r1 - movs r1, 0x5 - strb r1, [r0] - movs r0, 0 - pop {r1} - bx r1 - .align 2, 0 -_0809E248: .4byte gUnknown_203998C -_0809E24C: .4byte 0x00001e10 - thumb_func_end sub_809E210 - - thumb_func_start sub_809E250 -sub_809E250: @ 809E250 - push {r4-r6,lr} - sub sp, 0x4 - bl sub_809E364 - lsls r0, 24 - cmp r0, 0 - beq _0809E302 - mov r4, sp - adds r4, 0x2 - mov r0, sp - adds r1, r4, 0 - bl sub_809E9CC - bl sub_809EB40 - movs r5, 0 - mov r1, sp - movs r2, 0 - ldrsh r1, [r1, r2] - lsls r0, 24 - lsrs r0, 24 - adds r6, r4, 0 - cmp r1, r0 - bne _0809E282 - movs r5, 0x1 -_0809E282: - ldr r2, _0809E2B8 @ =gUnknown_203998C - ldr r0, [r2] - ldr r1, _0809E2BC @ =0x00001e10 - adds r0, r1 - movs r1, 0x2 - strb r1, [r0] - ldr r1, [r2] - ldr r3, _0809E2C0 @ =0x00001e22 - adds r1, r3 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - ldr r4, [r2] - adds r4, r3 - ldrb r0, [r4] - movs r1, 0x3 - bl __umodsi3 - strb r0, [r4] - cmp r5, 0 - beq _0809E2C4 - mov r4, sp - bl sub_809EB40 - lsls r0, 24 - lsrs r0, 24 - b _0809E2E2 - .align 2, 0 -_0809E2B8: .4byte gUnknown_203998C -_0809E2BC: .4byte 0x00001e10 -_0809E2C0: .4byte 0x00001e22 -_0809E2C4: - mov r0, sp - movs r2, 0 - ldrsh r4, [r0, r2] - bl sub_809EB40 - lsls r0, 24 - lsrs r0, 24 - cmp r4, r0 - blt _0809E2E4 - mov r4, sp - bl sub_809EB40 - lsls r0, 24 - lsrs r0, 24 - subs r0, 0x1 -_0809E2E2: - strh r0, [r4] -_0809E2E4: - mov r0, sp - movs r1, 0 - ldrsh r0, [r0, r1] - movs r2, 0 - ldrsh r1, [r6, r2] - bl sub_809E948 - bl sub_809FA60 - movs r0, 0x1 - bl SetInputState - movs r0, 0 - bl sub_809EA0C -_0809E302: - movs r0, 0 - add sp, 0x4 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_809E250 - - thumb_func_start sub_809E30C -sub_809E30C: @ 809E30C - push {r4,lr} - ldr r4, _0809E328 @ =sub_809E32C - adds r0, r4, 0 - movs r1, 0 - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - bl _call_via_r4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0809E328: .4byte sub_809E32C - thumb_func_end sub_809E30C - - thumb_func_start sub_809E32C -sub_809E32C: @ 809E32C - push {r4,r5,lr} - lsls r0, 24 - lsrs r0, 24 - ldr r5, _0809E35C @ =gUnknown_83E2354 - ldr r2, _0809E360 @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r4, r1, r2 -_0809E33E: - movs r1, 0x8 - ldrsh r0, [r4, r1] - lsls r0, 2 - adds r0, r5 - ldr r1, [r0] - adds r0, r4, 0 - bl _call_via_r1 - lsls r0, 24 - cmp r0, 0 - bne _0809E33E - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0809E35C: .4byte gUnknown_83E2354 -_0809E360: .4byte gTasks - thumb_func_end sub_809E32C - - thumb_func_start sub_809E364 -sub_809E364: @ 809E364 - push {lr} - ldr r0, _0809E378 @ =sub_809E32C - bl FindTaskIdByFunc - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xFF - beq _0809E37C - movs r0, 0 - b _0809E37E - .align 2, 0 -_0809E378: .4byte sub_809E32C -_0809E37C: - movs r0, 0x1 -_0809E37E: - pop {r1} - bx r1 - thumb_func_end sub_809E364 - - thumb_func_start sub_809E384 -sub_809E384: @ 809E384 - ldr r1, _0809E3A0 @ =gUnknown_203998C - ldr r1, [r1] - ldr r3, _0809E3A4 @ =0x00001e18 - adds r2, r1, r3 - movs r3, 0 - strh r3, [r2] - ldr r2, _0809E3A8 @ =0x00001e1a - adds r1, r2 - strh r3, [r1] - ldrh r1, [r0, 0x8] - adds r1, 0x1 - strh r1, [r0, 0x8] - movs r0, 0 - bx lr - .align 2, 0 -_0809E3A0: .4byte gUnknown_203998C -_0809E3A4: .4byte 0x00001e18 -_0809E3A8: .4byte 0x00001e1a - thumb_func_end sub_809E384 - - thumb_func_start sub_809E3AC -sub_809E3AC: @ 809E3AC - push {r4,r5,lr} - sub sp, 0x8 - adds r4, r0, 0 - ldr r5, _0809E42C @ =gUnknown_203998C - ldr r0, [r5] - ldr r2, _0809E430 @ =0x00001e1a - adds r1, r0, r2 - str r1, [sp] - ldr r1, _0809E434 @ =0x00001e18 - adds r0, r1 - str r0, [sp, 0x4] - ldrh r0, [r4, 0xA] - adds r0, 0x4 - strh r0, [r4, 0xA] - movs r2, 0xA - ldrsh r0, [r4, r2] - movs r1, 0x28 - bl Sin - ldr r1, [r5] - movs r2, 0xF1 - lsls r2, 5 - adds r1, r2 - ldrb r1, [r1] - lsls r1, 2 - add r1, sp - ldr r1, [r1] - strh r0, [r1] - ldrh r0, [r4, 0xA] - adds r0, 0x80 - movs r1, 0xFF - ands r0, r1 - movs r1, 0x28 - bl Sin - ldr r1, [r5] - ldr r2, _0809E438 @ =0x00001e21 - adds r1, r2 - ldrb r1, [r1] - lsls r1, 2 - add r1, sp - ldr r1, [r1] - strh r0, [r1] - movs r1, 0xA - ldrsh r0, [r4, r1] - cmp r0, 0x3F - ble _0809E422 - ldr r0, [r5] - ldr r1, _0809E43C @ =0x00001e1c - adds r2, r0, r1 - ldrb r3, [r2] - adds r1, 0x2 - adds r0, r1 - ldrh r1, [r0] - strh r1, [r2] - strh r3, [r0] - ldrh r0, [r4, 0x8] - adds r0, 0x1 - strh r0, [r4, 0x8] -_0809E422: - movs r0, 0 - add sp, 0x8 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0809E42C: .4byte gUnknown_203998C -_0809E430: .4byte 0x00001e1a -_0809E434: .4byte 0x00001e18 -_0809E438: .4byte 0x00001e21 -_0809E43C: .4byte 0x00001e1c - thumb_func_end sub_809E3AC - - thumb_func_start sub_809E440 -sub_809E440: @ 809E440 - push {r4,r5,lr} - sub sp, 0x8 - adds r4, r0, 0 - ldr r5, _0809E4C4 @ =gUnknown_203998C - ldr r0, [r5] - ldr r2, _0809E4C8 @ =0x00001e1a - adds r1, r0, r2 - str r1, [sp] - ldr r3, _0809E4CC @ =0x00001e18 - adds r0, r3 - str r0, [sp, 0x4] - ldrh r0, [r4, 0xA] - adds r0, 0x4 - strh r0, [r4, 0xA] - movs r1, 0xA - ldrsh r0, [r4, r1] - movs r1, 0x28 - bl Sin - ldr r1, [r5] - movs r2, 0xF1 - lsls r2, 5 - adds r1, r2 - ldrb r1, [r1] - lsls r1, 2 - add r1, sp - ldr r1, [r1] - strh r0, [r1] - ldrh r0, [r4, 0xA] - adds r0, 0x80 - movs r1, 0xFF - ands r0, r1 - movs r1, 0x28 - bl Sin - ldr r1, [r5] - ldr r3, _0809E4D0 @ =0x00001e21 - adds r1, r3 - ldrb r1, [r1] - lsls r1, 2 - add r1, sp - ldr r1, [r1] - strh r0, [r1] - movs r1, 0xA - ldrsh r0, [r4, r1] - cmp r0, 0x7F - ble _0809E4BA - ldr r0, [r5] - movs r2, 0xF1 - lsls r2, 5 - adds r1, r0, r2 - ldrb r2, [r1] - adds r0, r3 - ldrb r0, [r0] - strb r0, [r1] - ldr r0, [r5] - adds r0, r3 - strb r2, [r0] - ldrh r0, [r4, 0x8] - adds r0, 0x1 - strh r0, [r4, 0x8] -_0809E4BA: - movs r0, 0 - add sp, 0x8 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0809E4C4: .4byte gUnknown_203998C -_0809E4C8: .4byte 0x00001e1a -_0809E4CC: .4byte 0x00001e18 -_0809E4D0: .4byte 0x00001e21 - thumb_func_end sub_809E440 - - thumb_func_start sub_809E4D4 -sub_809E4D4: @ 809E4D4 - push {lr} - ldr r0, _0809E4EC @ =sub_809E32C - bl FindTaskIdByFunc - lsls r0, 24 - lsrs r0, 24 - bl DestroyTask - movs r0, 0 - pop {r1} - bx r1 - .align 2, 0 -_0809E4EC: .4byte sub_809E32C - thumb_func_end sub_809E4D4 - - thumb_func_start sub_809E4F0 -sub_809E4F0: @ 809E4F0 - push {lr} - ldr r0, _0809E510 @ =c3_0809E58C - movs r1, 0x3 - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - ldr r2, _0809E514 @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - movs r0, 0x3 - strh r0, [r1, 0x8] - pop {r0} - bx r0 - .align 2, 0 -_0809E510: .4byte c3_0809E58C -_0809E514: .4byte gTasks - thumb_func_end sub_809E4F0 - - thumb_func_start sub_809E518 -sub_809E518: @ 809E518 - push {r4-r7,lr} - lsls r0, 24 - lsrs r5, r0, 24 - lsls r1, 24 - lsrs r7, r1, 24 - lsls r2, 24 - lsrs r6, r2, 24 - ldr r0, _0809E550 @ =c3_0809E58C - bl FindTaskIdByFunc - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - ldr r0, _0809E554 @ =gTasks - adds r4, r1, r0 - movs r1, 0x8 - ldrsh r0, [r4, r1] - cmp r5, r0 - bne _0809E558 - cmp r6, 0 - bne _0809E558 - strh r7, [r4, 0xA] - movs r0, 0x1 - strh r0, [r4, 0xC] - b _0809E584 - .align 2, 0 -_0809E550: .4byte c3_0809E58C -_0809E554: .4byte gTasks -_0809E558: - cmp r5, 0x3 - bne _0809E568 - movs r2, 0xA - ldrsh r0, [r4, r2] - cmp r0, 0 - bne _0809E568 - cmp r6, 0 - beq _0809E584 -_0809E568: - ldrh r1, [r4, 0x8] - movs r2, 0x8 - ldrsh r0, [r4, r2] - cmp r0, 0x3 - beq _0809E57A - lsls r0, r1, 24 - lsrs r0, 24 - bl sub_809E6B8 -_0809E57A: - adds r0, r4, 0 - adds r1, r5, 0 - adds r2, r7, 0 - bl sub_809E6E0 -_0809E584: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_809E518 - - thumb_func_start c3_0809E58C -c3_0809E58C: @ 809E58C - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - ldr r0, _0809E5F4 @ =gTasks - adds r4, r1, r0 - ldrh r1, [r4, 0x8] - movs r2, 0x8 - ldrsh r0, [r4, r2] - cmp r0, 0x3 - beq _0809E63E - movs r3, 0xC - ldrsh r0, [r4, r3] - cmp r0, 0 - beq _0809E63E - lsls r0, r1, 24 - lsrs r0, 24 - bl sub_809E644 - lsls r0, 16 - lsrs r0, 16 - ldrb r3, [r4, 0xE] - adds r1, r3, 0 - adds r2, r3, 0 - bl MultiplyInvertedPaletteRGBComponents - ldrh r1, [r4, 0x12] - movs r2, 0x12 - ldrsh r0, [r4, r2] - cmp r0, 0 - beq _0809E5D8 - subs r0, r1, 0x1 - strh r0, [r4, 0x12] - lsls r0, 16 - cmp r0, 0 - bne _0809E63E -_0809E5D8: - movs r0, 0x2 - strh r0, [r4, 0x12] - ldrh r1, [r4, 0x10] - movs r3, 0x10 - ldrsh r0, [r4, r3] - cmp r0, 0 - blt _0809E602 - ldrh r2, [r4, 0xE] - movs r3, 0xE - ldrsh r0, [r4, r3] - cmp r0, 0xD - bgt _0809E5F8 - adds r0, r2, r1 - b _0809E606 - .align 2, 0 -_0809E5F4: .4byte gTasks -_0809E5F8: - movs r0, 0x10 - strh r0, [r4, 0xE] - ldrh r0, [r4, 0x14] - adds r0, 0x1 - b _0809E60C -_0809E602: - ldrh r3, [r4, 0xE] - adds r0, r1, r3 -_0809E606: - strh r0, [r4, 0xE] - ldrh r2, [r4, 0x14] - adds r0, r1, r2 -_0809E60C: - strh r0, [r4, 0x14] - movs r3, 0xE - ldrsh r0, [r4, r3] - ldrh r1, [r4, 0xE] - cmp r0, 0x10 - bne _0809E62C - movs r2, 0x14 - ldrsh r0, [r4, r2] - cmp r0, 0x16 - bne _0809E62C - ldr r0, _0809E628 @ =0x0000fffc - strh r0, [r4, 0x10] - b _0809E63E - .align 2, 0 -_0809E628: .4byte 0x0000fffc -_0809E62C: - lsls r0, r1, 16 - asrs r1, r0, 16 - cmp r1, 0 - bne _0809E63E - ldrh r0, [r4, 0xA] - strh r0, [r4, 0xC] - movs r0, 0x2 - strh r0, [r4, 0x10] - strh r1, [r4, 0x14] -_0809E63E: - pop {r4} - pop {r0} - bx r0 - thumb_func_end c3_0809E58C - - thumb_func_start sub_809E644 -sub_809E644: @ 809E644 - push {r4-r6,lr} - sub sp, 0x10 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0x4 - bl IndexOfSpritePaletteTag - lsls r0, 24 - lsrs r0, 20 - movs r1, 0x87 - lsls r1, 1 - adds r5, r1, 0 - adds r0, r5 - add r6, sp, 0x8 - strh r0, [r6] - movs r0, 0x6 - bl IndexOfSpritePaletteTag - lsls r0, 24 - lsrs r0, 20 - adds r0, r5 - mov r1, sp - adds r1, 0xA - strh r0, [r1] - movs r0, 0x7 - bl IndexOfSpritePaletteTag - lsls r0, 24 - lsrs r0, 20 - adds r0, r5 - add r1, sp, 0xC - strh r0, [r1] - movs r0, 0x7 - bl IndexOfSpritePaletteTag - lsls r0, 24 - lsrs r0, 20 - ldr r1, _0809E6B4 @ =0x00000101 - adds r0, r1 - mov r1, sp - adds r1, 0xE - strh r0, [r1] - mov r0, sp - adds r1, r6, 0 - movs r2, 0x8 - bl memcpy - lsls r4, 1 - mov r1, sp - adds r0, r1, r4 - ldrh r0, [r0] - add sp, 0x10 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_0809E6B4: .4byte 0x00000101 - thumb_func_end sub_809E644 - - thumb_func_start sub_809E6B8 -sub_809E6B8: @ 809E6B8 - push {lr} - lsls r0, 24 - lsrs r0, 24 - bl sub_809E644 - lsls r0, 16 - ldr r2, _0809E6D8 @ =gPlttBufferFaded - lsrs r0, 15 - adds r2, r0, r2 - ldr r1, _0809E6DC @ =gPlttBufferUnfaded - adds r0, r1 - ldrh r0, [r0] - strh r0, [r2] - pop {r0} - bx r0 - .align 2, 0 -_0809E6D8: .4byte gPlttBufferFaded -_0809E6DC: .4byte gPlttBufferUnfaded - thumb_func_end sub_809E6B8 - - thumb_func_start sub_809E6E0 -sub_809E6E0: @ 809E6E0 - lsls r1, 24 - lsrs r1, 24 - lsls r2, 24 - lsrs r2, 24 - movs r3, 0 - strh r1, [r0, 0x8] - strh r2, [r0, 0xA] - movs r1, 0x1 - strh r1, [r0, 0xC] - movs r2, 0x4 - strh r2, [r0, 0xE] - movs r1, 0x2 - strh r1, [r0, 0x10] - strh r3, [r0, 0x12] - strh r2, [r0, 0x14] - bx lr - thumb_func_end sub_809E6E0 - - thumb_func_start sub_809E700 -sub_809E700: @ 809E700 - push {r4-r6,lr} - adds r5, r0, 0 - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _0809E718 - adds r0, r5, 0 - movs r1, 0 - bl StartSpriteAnim -_0809E718: - ldrh r0, [r5, 0x36] - movs r1, 0xFF - ands r1, r0 - adds r6, r5, 0 - adds r6, 0x3E - movs r0, 0x1 - ands r1, r0 - lsls r1, 2 - ldrb r2, [r6] - movs r0, 0x5 - negs r0, r0 - ands r0, r2 - orrs r0, r1 - strb r0, [r6] - movs r0, 0x2E - ldrsh r4, [r5, r0] - bl sub_809EB40 - lsls r0, 24 - lsrs r0, 24 - cmp r4, r0 - bne _0809E74C - ldrb r0, [r6] - movs r1, 0x4 - orrs r0, r1 - strb r0, [r6] -_0809E74C: - ldrb r1, [r6] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - bne _0809E77C - movs r1, 0x36 - ldrsh r0, [r5, r1] - movs r1, 0xFF - lsls r1, 8 - ands r0, r1 - cmp r0, 0 - beq _0809E77C - movs r2, 0x2E - ldrsh r1, [r5, r2] - movs r2, 0x32 - ldrsh r0, [r5, r2] - cmp r1, r0 - bne _0809E77C - movs r0, 0x30 - ldrsh r1, [r5, r0] - movs r2, 0x34 - ldrsh r0, [r5, r2] - cmp r1, r0 - beq _0809E786 -_0809E77C: - movs r0, 0 - strh r0, [r5, 0x38] - movs r0, 0x2 - strh r0, [r5, 0x3A] - strh r0, [r5, 0x3C] -_0809E786: - ldrh r0, [r5, 0x3C] - subs r0, 0x1 - strh r0, [r5, 0x3C] - lsls r0, 16 - cmp r0, 0 - bne _0809E7AE - ldrh r1, [r5, 0x3A] - ldrh r2, [r5, 0x38] - adds r0, r1, r2 - strh r0, [r5, 0x38] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x10 - beq _0809E7A6 - cmp r0, 0 - bne _0809E7AA -_0809E7A6: - negs r0, r1 - strh r0, [r5, 0x3A] -_0809E7AA: - movs r0, 0x2 - strh r0, [r5, 0x3C] -_0809E7AE: - movs r1, 0x36 - ldrsh r0, [r5, r1] - movs r1, 0xFF - lsls r1, 8 - ands r0, r1 - cmp r0, 0 - beq _0809E7E4 - ldrh r4, [r5, 0x38] - lsls r5, r4, 24 - lsrs r5, 24 - lsls r4, 16 - asrs r4, 17 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0x5 - bl IndexOfSpritePaletteTag - lsls r0, 24 - lsrs r0, 4 - ldr r2, _0809E7EC @ =0x01010000 - adds r0, r2 - lsrs r0, 16 - adds r1, r4, 0 - adds r2, r5, 0 - adds r3, r5, 0 - bl MultiplyInvertedPaletteRGBComponents -_0809E7E4: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0809E7EC: .4byte 0x01010000 - thumb_func_end sub_809E700 - - thumb_func_start sub_809E7F0 -sub_809E7F0: @ 809E7F0 - push {r4,lr} - sub sp, 0x8 - adds r4, r0, 0 - ldr r1, _0809E838 @ =gUnknown_83E2364 - mov r0, sp - movs r2, 0x8 - bl memcpy - ldrh r1, [r4, 0x2E] - movs r2, 0x2E - ldrsh r0, [r4, r2] - cmp r0, 0 - beq _0809E814 - subs r0, r1, 0x1 - strh r0, [r4, 0x2E] - lsls r0, 16 - cmp r0, 0 - bne _0809E822 -_0809E814: - movs r0, 0x8 - strh r0, [r4, 0x2E] - ldrh r0, [r4, 0x30] - adds r0, 0x1 - movs r1, 0x3 - ands r0, r1 - strh r0, [r4, 0x30] -_0809E822: - movs r1, 0x30 - ldrsh r0, [r4, r1] - lsls r0, 1 - add r0, sp - ldrh r0, [r0] - strh r0, [r4, 0x24] - add sp, 0x8 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0809E838: .4byte gUnknown_83E2364 - thumb_func_end sub_809E7F0 - - thumb_func_start sub_809E83C -sub_809E83C: @ 809E83C - push {r4,lr} - sub sp, 0x8 - adds r4, r0, 0 - ldr r1, _0809E864 @ =gUnknown_83E236C - mov r0, sp - movs r2, 0x8 - bl memcpy - bl sub_809F668 - lsls r0, 24 - ldrh r1, [r4, 0x2E] - lsls r1, 24 - cmp r0, r1 - beq _0809E868 - movs r0, 0 - strh r0, [r4, 0x26] - strh r0, [r4, 0x30] - b _0809E88E - .align 2, 0 -_0809E864: .4byte gUnknown_83E236C -_0809E868: - movs r1, 0x30 - ldrsh r0, [r4, r1] - lsls r0, 1 - add r0, sp - ldrh r0, [r0] - strh r0, [r4, 0x26] - ldrh r0, [r4, 0x32] - adds r0, 0x1 - strh r0, [r4, 0x32] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x8 - ble _0809E890 - ldrh r0, [r4, 0x30] - adds r0, 0x1 - movs r1, 0x3 - ands r0, r1 - strh r0, [r4, 0x30] - movs r0, 0 -_0809E88E: - strh r0, [r4, 0x32] -_0809E890: - add sp, 0x8 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_809E83C - - thumb_func_start sub_809E898 -sub_809E898: @ 809E898 - push {lr} - bl sub_809E8B4 - bl sub_809EB5C - bl sub_809EDE8 - bl sub_809EE60 - bl sub_809EF24 - pop {r0} - bx r0 - thumb_func_end sub_809E898 - - thumb_func_start sub_809E8B4 -sub_809E8B4: @ 809E8B4 - push {r4-r6,lr} - ldr r0, _0809E938 @ =gUnknown_83E25EC - movs r1, 0x26 - movs r2, 0x58 - movs r3, 0x1 - bl CreateSprite - ldr r5, _0809E93C @ =gUnknown_203998C - ldr r1, [r5] - ldr r4, _0809E940 @ =0x00001e23 - adds r1, r4 - strb r0, [r1] - movs r0, 0x1 - bl sub_809EA0C - ldr r6, _0809E944 @ =gSprites - ldr r0, [r5] - adds r0, r4 - ldrb r0, [r0] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r6 - ldrb r3, [r1, 0x5] - movs r2, 0xD - negs r2, r2 - adds r0, r2, 0 - ands r0, r3 - movs r3, 0x4 - orrs r0, r3 - strb r0, [r1, 0x5] - ldr r0, [r5] - adds r0, r4 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r6 - ldrb r1, [r0, 0x1] - ands r2, r1 - orrs r2, r3 - strb r2, [r0, 0x1] - ldr r2, [r5] - adds r2, r4 - ldrb r1, [r2] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r6 - movs r1, 0x1 - strh r1, [r0, 0x3A] - ldrb r1, [r2] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r6 - movs r1, 0x2 - strh r1, [r0, 0x3A] - movs r0, 0 - movs r1, 0 - bl sub_809E948 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0809E938: .4byte gUnknown_83E25EC -_0809E93C: .4byte gUnknown_203998C -_0809E940: .4byte 0x00001e23 -_0809E944: .4byte gSprites - thumb_func_end sub_809E8B4 - - thumb_func_start sub_809E948 -sub_809E948: @ 809E948 - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 16 - lsls r1, 16 - lsrs r7, r1, 16 - ldr r1, _0809E994 @ =gUnknown_203998C - ldr r1, [r1] - ldr r2, _0809E998 @ =0x00001e23 - adds r1, r2 - ldrb r2, [r1] - lsls r1, r2, 4 - adds r1, r2 - lsls r1, 2 - ldr r2, _0809E99C @ =gSprites - adds r5, r1, r2 - lsrs r1, r0, 16 - mov r8, r1 - asrs r6, r0, 16 - ldr r4, _0809E9A0 @ =gUnknown_83E2330 - bl sub_809DE50 - lsls r0, 24 - lsrs r0, 24 - adds r0, r4 - ldrb r0, [r0] - cmp r6, r0 - bge _0809E9A8 - bl sub_809DE50 - ldr r1, _0809E9A4 @ =gUnknown_83E2333 - lsls r0, 24 - lsrs r0, 21 - adds r0, r6, r0 - adds r0, r1 - ldrb r0, [r0] - adds r0, 0x26 - b _0809E9AA - .align 2, 0 -_0809E994: .4byte gUnknown_203998C -_0809E998: .4byte 0x00001e23 -_0809E99C: .4byte gSprites -_0809E9A0: .4byte gUnknown_83E2330 -_0809E9A4: .4byte gUnknown_83E2333 -_0809E9A8: - movs r0, 0 -_0809E9AA: - strh r0, [r5, 0x20] - lsls r0, r7, 16 - asrs r0, 12 - adds r0, 0x58 - strh r0, [r5, 0x22] - ldrh r0, [r5, 0x2E] - strh r0, [r5, 0x32] - ldrh r0, [r5, 0x30] - strh r0, [r5, 0x34] - mov r2, r8 - strh r2, [r5, 0x2E] - strh r7, [r5, 0x30] - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_809E948 - - thumb_func_start sub_809E9CC -sub_809E9CC: @ 809E9CC - ldr r2, _0809E9EC @ =gUnknown_203998C - ldr r2, [r2] - ldr r3, _0809E9F0 @ =0x00001e23 - adds r2, r3 - ldrb r3, [r2] - lsls r2, r3, 4 - adds r2, r3 - lsls r2, 2 - ldr r3, _0809E9F4 @ =gSprites - adds r2, r3 - ldrh r3, [r2, 0x2E] - strh r3, [r0] - ldrh r0, [r2, 0x30] - strh r0, [r1] - bx lr - .align 2, 0 -_0809E9EC: .4byte gUnknown_203998C -_0809E9F0: .4byte 0x00001e23 -_0809E9F4: .4byte gSprites - thumb_func_end sub_809E9CC - - thumb_func_start sub_809E9F8 -sub_809E9F8: @ 809E9F8 - push {lr} - bl sub_809EB40 - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x2 - bl sub_809E948 - pop {r0} - bx r0 - thumb_func_end sub_809E9F8 - - thumb_func_start sub_809EA0C -sub_809EA0C: @ 809EA0C - push {r4,r5,lr} - lsls r0, 24 - lsrs r0, 24 - ldr r5, _0809EA54 @ =gSprites - ldr r1, _0809EA58 @ =gUnknown_203998C - ldr r4, [r1] - ldr r1, _0809EA5C @ =0x00001e23 - adds r4, r1 - ldrb r1, [r4] - lsls r2, r1, 4 - adds r2, r1 - lsls r2, 2 - adds r2, r5 - ldrh r3, [r2, 0x36] - ldr r1, _0809EA60 @ =0xffffff00 - ands r1, r3 - strh r1, [r2, 0x36] - ldrb r2, [r4] - lsls r1, r2, 4 - adds r1, r2 - lsls r1, 2 - adds r1, r5 - ldrh r2, [r1, 0x36] - orrs r0, r2 - strh r0, [r1, 0x36] - ldrb r1, [r4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - movs r1, 0 - bl StartSpriteAnim - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0809EA54: .4byte gSprites -_0809EA58: .4byte gUnknown_203998C -_0809EA5C: .4byte 0x00001e23 -_0809EA60: .4byte 0xffffff00 - thumb_func_end sub_809EA0C - - thumb_func_start sub_809EA64 -sub_809EA64: @ 809EA64 - push {r4,r5,lr} - lsls r0, 24 - ldr r5, _0809EA9C @ =gSprites - ldr r1, _0809EAA0 @ =gUnknown_203998C - ldr r4, [r1] - ldr r1, _0809EAA4 @ =0x00001e23 - adds r4, r1 - ldrb r1, [r4] - lsls r2, r1, 4 - adds r2, r1 - lsls r2, 2 - adds r2, r5 - ldrh r3, [r2, 0x36] - movs r1, 0xFF - ands r1, r3 - strh r1, [r2, 0x36] - ldrb r2, [r4] - lsls r1, r2, 4 - adds r1, r2 - lsls r1, 2 - adds r1, r5 - lsrs r0, 16 - ldrh r2, [r1, 0x36] - orrs r0, r2 - strh r0, [r1, 0x36] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0809EA9C: .4byte gSprites -_0809EAA0: .4byte gUnknown_203998C -_0809EAA4: .4byte 0x00001e23 - thumb_func_end sub_809EA64 - - thumb_func_start sub_809EAA8 -sub_809EAA8: @ 809EAA8 - push {lr} - ldr r0, _0809EAC8 @ =gUnknown_203998C - ldr r0, [r0] - ldr r1, _0809EACC @ =0x00001e23 - adds r0, r1 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, _0809EAD0 @ =gSprites - adds r0, r1 - movs r1, 0x1 - bl StartSpriteAnim - pop {r0} - bx r0 - .align 2, 0 -_0809EAC8: .4byte gUnknown_203998C -_0809EACC: .4byte 0x00001e23 -_0809EAD0: .4byte gSprites - thumb_func_end sub_809EAA8 - - thumb_func_start sub_809EAD4 -sub_809EAD4: @ 809EAD4 - ldr r2, _0809EAF4 @ =gSprites - ldr r0, _0809EAF8 @ =gUnknown_203998C - ldr r0, [r0] - ldr r1, _0809EAFC @ =0x00001e23 - adds r0, r1 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - adds r0, 0x3F - ldrb r0, [r0] - lsls r0, 27 - lsrs r0, 31 - bx lr - .align 2, 0 -_0809EAF4: .4byte gSprites -_0809EAF8: .4byte gUnknown_203998C -_0809EAFC: .4byte 0x00001e23 - thumb_func_end sub_809EAD4 - - thumb_func_start sub_809EB00 -sub_809EB00: @ 809EB00 - push {r4,r5,lr} - sub sp, 0x4 - mov r5, sp - adds r5, 0x2 - mov r0, sp - adds r1, r5, 0 - bl sub_809E9CC - mov r0, sp - movs r1, 0 - ldrsh r4, [r0, r1] - bl sub_809EB40 - lsls r0, 24 - lsrs r0, 24 - cmp r4, r0 - blt _0809EB34 - ldr r0, _0809EB30 @ =gUnknown_83E2374 - movs r2, 0 - ldrsh r1, [r5, r2] - adds r1, r0 - ldrb r0, [r1] - b _0809EB36 - .align 2, 0 -_0809EB30: .4byte gUnknown_83E2374 -_0809EB34: - movs r0, 0 -_0809EB36: - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_809EB00 - - thumb_func_start sub_809EB40 -sub_809EB40: @ 809EB40 - push {r4,lr} - ldr r4, _0809EB58 @ =gUnknown_83E2330 - bl sub_809DE50 - lsls r0, 24 - lsrs r0, 24 - adds r0, r4 - ldrb r0, [r0] - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0809EB58: .4byte gUnknown_83E2330 - thumb_func_end sub_809EB40 - - thumb_func_start sub_809EB5C -sub_809EB5C: @ 809EB5C - push {r4-r6,lr} - mov r6, r8 - push {r6} - ldr r0, _0809EC00 @ =gUnknown_83E2574 - movs r1, 0xCC - movs r2, 0x58 - movs r3, 0 - bl CreateSprite - lsls r0, 24 - lsrs r0, 24 - ldr r1, _0809EC04 @ =gUnknown_203998C - ldr r1, [r1] - ldr r2, _0809EC08 @ =0x00001e24 - adds r1, r2 - strb r0, [r1] - lsls r5, r0, 4 - adds r5, r0 - lsls r5, 2 - ldr r0, _0809EC0C @ =gSprites - mov r8, r0 - add r5, r8 - ldr r1, _0809EC10 @ =gUnknown_83E2504 - adds r0, r5, 0 - bl SetSubspriteTables - adds r1, r5, 0 - adds r1, 0x3E - ldrb r0, [r1] - movs r6, 0x4 - orrs r0, r6 - strb r0, [r1] - ldr r0, _0809EC14 @ =gUnknown_83E25A4 - movs r1, 0xCC - movs r2, 0x54 - movs r3, 0x1 - bl CreateSprite - lsls r0, 24 - lsrs r0, 24 - strh r0, [r5, 0x3A] - lsls r4, r0, 4 - adds r4, r0 - lsls r4, 2 - add r4, r8 - ldr r1, _0809EC18 @ =gUnknown_83E250C - adds r0, r4, 0 - bl SetSubspriteTables - adds r4, 0x3E - ldrb r0, [r4] - orrs r0, r6 - strb r0, [r4] - ldr r0, _0809EC1C @ =gUnknown_83E258C - movs r1, 0xCC - movs r2, 0x53 - movs r3, 0x2 - bl CreateSprite - lsls r0, 24 - lsrs r0, 24 - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - add r2, r8 - ldrb r3, [r2, 0x5] - movs r1, 0xD - negs r1, r1 - ands r1, r3 - orrs r1, r6 - strb r1, [r2, 0x5] - strh r0, [r5, 0x3C] - adds r2, 0x3E - ldrb r0, [r2] - orrs r0, r6 - strb r0, [r2] - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0809EC00: .4byte gUnknown_83E2574 -_0809EC04: .4byte gUnknown_203998C -_0809EC08: .4byte 0x00001e24 -_0809EC0C: .4byte gSprites -_0809EC10: .4byte gUnknown_83E2504 -_0809EC14: .4byte gUnknown_83E25A4 -_0809EC18: .4byte gUnknown_83E250C -_0809EC1C: .4byte gUnknown_83E258C - thumb_func_end sub_809EB5C - - thumb_func_start sub_809EC20 -sub_809EC20: @ 809EC20 - ldr r0, _0809EC44 @ =gUnknown_203998C - ldr r2, [r0] - ldr r1, _0809EC48 @ =0x00001e24 - adds r0, r2, r1 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, _0809EC4C @ =gSprites - adds r0, r1 - movs r1, 0x2 - strh r1, [r0, 0x2E] - ldr r1, _0809EC50 @ =0x00001e22 - adds r2, r1 - ldrb r1, [r2] - strh r1, [r0, 0x30] - bx lr - .align 2, 0 -_0809EC44: .4byte gUnknown_203998C -_0809EC48: .4byte 0x00001e24 -_0809EC4C: .4byte gSprites -_0809EC50: .4byte 0x00001e22 - thumb_func_end sub_809EC20 - - thumb_func_start sub_809EC54 -sub_809EC54: @ 809EC54 - push {r4,r5,lr} - adds r4, r0, 0 - ldr r5, _0809EC78 @ =gUnknown_83E2378 -_0809EC5A: - movs r1, 0x2E - ldrsh r0, [r4, r1] - lsls r0, 2 - adds r0, r5 - ldr r1, [r0] - adds r0, r4, 0 - bl _call_via_r1 - lsls r0, 24 - cmp r0, 0 - bne _0809EC5A - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0809EC78: .4byte gUnknown_83E2378 - thumb_func_end sub_809EC54 - - thumb_func_start sub_809EC7C -sub_809EC7C: @ 809EC7C - push {r4-r6,lr} - adds r6, r0, 0 - movs r1, 0x3A - ldrsh r0, [r6, r1] - lsls r5, r0, 4 - adds r5, r0 - lsls r5, 2 - ldr r1, _0809ECC4 @ =gSprites - adds r5, r1 - movs r2, 0x3C - ldrsh r0, [r6, r2] - lsls r4, r0, 4 - adds r4, r0 - lsls r4, 2 - adds r4, r1 - ldr r0, _0809ECC8 @ =gUnknown_203998C - ldr r0, [r0] - ldr r1, _0809ECCC @ =0x00001e22 - adds r0, r1 - ldrb r0, [r0] - bl sub_809DE20 - lsls r0, 24 - lsrs r0, 24 - adds r1, r5, 0 - adds r2, r4, 0 - bl sub_809ED88 - ldrh r0, [r6, 0x2E] - adds r0, 0x1 - strh r0, [r6, 0x2E] - movs r0, 0 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_0809ECC4: .4byte gSprites -_0809ECC8: .4byte gUnknown_203998C -_0809ECCC: .4byte 0x00001e22 - thumb_func_end sub_809EC7C - - thumb_func_start sub_809ECD0 -sub_809ECD0: @ 809ECD0 - movs r0, 0 - bx lr - thumb_func_end sub_809ECD0 - - thumb_func_start sub_809ECD4 -sub_809ECD4: @ 809ECD4 - push {r4,r5,lr} - adds r3, r0, 0 - movs r0, 0x3A - ldrsh r1, [r3, r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r2, _0809ED40 @ =gSprites - adds r4, r0, r2 - movs r0, 0x3C - ldrsh r1, [r3, r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r5, r0, r2 - ldrh r0, [r4, 0x26] - adds r0, 0x1 - strh r0, [r4, 0x26] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x7 - ble _0809ED38 - ldrh r0, [r3, 0x2E] - adds r0, 0x1 - strh r0, [r3, 0x2E] - ldr r0, _0809ED44 @ =0x0000fffc - strh r0, [r4, 0x26] - adds r2, r4, 0 - adds r2, 0x3E - ldrb r0, [r2] - movs r1, 0x4 - orrs r0, r1 - strb r0, [r2] - ldrh r0, [r3, 0x30] - lsls r0, 24 - lsrs r0, 24 - adds r0, 0x1 - movs r1, 0x3 - bl __modsi3 - lsls r0, 24 - lsrs r0, 24 - bl sub_809DE20 - lsls r0, 24 - lsrs r0, 24 - adds r1, r4, 0 - adds r2, r5, 0 - bl sub_809ED88 -_0809ED38: - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0809ED40: .4byte gSprites -_0809ED44: .4byte 0x0000fffc - thumb_func_end sub_809ECD4 - - thumb_func_start sub_809ED48 -sub_809ED48: @ 809ED48 - push {r4,lr} - adds r4, r0, 0 - movs r0, 0x3A - ldrsh r1, [r4, r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, _0809ED84 @ =gSprites - adds r2, r0, r1 - adds r3, r2, 0 - adds r3, 0x3E - ldrb r1, [r3] - movs r0, 0x5 - negs r0, r0 - ands r0, r1 - strb r0, [r3] - ldrh r0, [r2, 0x26] - adds r0, 0x1 - strh r0, [r2, 0x26] - lsls r0, 16 - cmp r0, 0 - blt _0809ED7C - movs r0, 0 - strh r0, [r2, 0x26] - movs r0, 0x1 - strh r0, [r4, 0x2E] -_0809ED7C: - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0809ED84: .4byte gSprites - thumb_func_end sub_809ED48 - - thumb_func_start sub_809ED88 -sub_809ED88: @ 809ED88 - push {r4-r6,lr} - mov r6, r8 - push {r6} - adds r5, r0, 0 - adds r6, r1, 0 - mov r8, r2 - lsls r5, 24 - lsrs r5, 24 - ldr r0, _0809EDE0 @ =gUnknown_83E2388 - lsls r4, r5, 1 - adds r0, r4, r0 - ldrh r0, [r0] - bl IndexOfSpritePaletteTag - lsls r0, 4 - mov r1, r8 - ldrb r2, [r1, 0x5] - movs r1, 0xF - ands r1, r2 - orrs r1, r0 - mov r0, r8 - strb r1, [r0, 0x5] - ldr r0, _0809EDE4 @ =gUnknown_83E238E - adds r4, r0 - ldrh r0, [r4] - bl GetSpriteTileStartByTag - adds r1, r6, 0 - adds r1, 0x40 - strh r0, [r1] - adds r6, 0x42 - movs r1, 0x3F - ands r1, r5 - ldrb r2, [r6] - movs r0, 0x40 - negs r0, r0 - ands r0, r2 - orrs r0, r1 - strb r0, [r6] - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0809EDE0: .4byte gUnknown_83E2388 -_0809EDE4: .4byte gUnknown_83E238E - thumb_func_end sub_809ED88 - - thumb_func_start sub_809EDE8 -sub_809EDE8: @ 809EDE8 - push {r4-r6,lr} - mov r6, r8 - push {r6} - ldr r0, _0809EE50 @ =gUnknown_83E25BC - movs r1, 0xCC - movs r2, 0x74 - movs r3, 0 - bl CreateSprite - lsls r0, 24 - lsrs r0, 24 - lsls r4, r0, 4 - adds r4, r0 - lsls r4, 2 - ldr r6, _0809EE54 @ =gSprites - adds r4, r6 - ldr r0, _0809EE58 @ =gUnknown_83E2524 - mov r8, r0 - adds r0, r4, 0 - mov r1, r8 - bl SetSubspriteTables - adds r4, 0x3E - ldrb r0, [r4] - movs r5, 0x4 - orrs r0, r5 - strb r0, [r4] - ldr r0, _0809EE5C @ =gUnknown_83E25D4 - movs r1, 0xCC - movs r2, 0x8C - movs r3, 0 - bl CreateSprite - lsls r0, 24 - lsrs r0, 24 - lsls r4, r0, 4 - adds r4, r0 - lsls r4, 2 - adds r4, r6 - adds r0, r4, 0 - mov r1, r8 - bl SetSubspriteTables - adds r4, 0x3E - ldrb r0, [r4] - orrs r0, r5 - strb r0, [r4] - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0809EE50: .4byte gUnknown_83E25BC -_0809EE54: .4byte gSprites -_0809EE58: .4byte gUnknown_83E2524 -_0809EE5C: .4byte gUnknown_83E25D4 - thumb_func_end sub_809EDE8 - - thumb_func_start sub_809EE60 -sub_809EE60: @ 809EE60 - push {r4-r6,lr} - ldr r5, _0809EF0C @ =gUnknown_203998C - ldr r0, [r5] - ldr r4, _0809EF10 @ =0x00001e16 - adds r0, r4 - ldrh r1, [r0] - subs r1, 0x5 - ldr r0, _0809EF14 @ =gUnknown_83E2604 - lsls r1, 16 - asrs r1, 16 - movs r2, 0x38 - movs r3, 0 - bl CreateSprite - lsls r0, 24 - lsrs r1, r0, 24 - ldr r3, _0809EF18 @ =gSprites - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r3 - ldrb r1, [r0, 0x5] - movs r2, 0xC - orrs r1, r2 - strb r1, [r0, 0x5] - adds r0, 0x3E - ldrb r1, [r0] - movs r2, 0x4 - orrs r1, r2 - strb r1, [r0] - ldr r0, [r5] - adds r4, r0, r4 - ldrh r1, [r4] - movs r5, 0 - ldr r2, _0809EF1C @ =0x00001e28 - adds r0, r2 - ldr r0, [r0] - ldrb r0, [r0, 0x1] - cmp r5, r0 - bcs _0809EF04 - adds r6, r3, 0 -_0809EEB2: - lsls r1, 16 - asrs r4, r1, 16 - movs r0, 0xC0 - lsls r0, 10 - adds r1, r0 - asrs r1, 16 - ldr r0, _0809EF20 @ =gUnknown_83E261C - movs r2, 0x3C - movs r3, 0 - bl CreateSprite - lsls r0, 24 - lsrs r1, r0, 24 - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r6 - ldrb r1, [r0, 0x5] - movs r2, 0xC - orrs r1, r2 - strb r1, [r0, 0x5] - strh r5, [r0, 0x2E] - adds r0, 0x3E - ldrb r1, [r0] - movs r2, 0x4 - orrs r1, r2 - strb r1, [r0] - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - adds r4, 0x8 - lsls r4, 16 - lsrs r1, r4, 16 - ldr r0, _0809EF0C @ =gUnknown_203998C - ldr r0, [r0] - ldr r2, _0809EF1C @ =0x00001e28 - adds r0, r2 - ldr r0, [r0] - ldrb r0, [r0, 0x1] - cmp r5, r0 - bcc _0809EEB2 -_0809EF04: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0809EF0C: .4byte gUnknown_203998C -_0809EF10: .4byte 0x00001e16 -_0809EF14: .4byte gUnknown_83E2604 -_0809EF18: .4byte gSprites -_0809EF1C: .4byte 0x00001e28 -_0809EF20: .4byte gUnknown_83E261C - thumb_func_end sub_809EE60 - - thumb_func_start sub_809EF24 -sub_809EF24: @ 809EF24 - push {lr} - ldr r1, _0809EF44 @ =gUnknown_83E2394 - ldr r0, _0809EF48 @ =gUnknown_203998C - ldr r0, [r0] - ldr r2, _0809EF4C @ =0x00001e28 - adds r0, r2 - ldr r0, [r0] - ldrb r0, [r0, 0x2] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - bl _call_via_r0 - pop {r0} - bx r0 - .align 2, 0 -_0809EF44: .4byte gUnknown_83E2394 -_0809EF48: .4byte gUnknown_203998C -_0809EF4C: .4byte 0x00001e28 - thumb_func_end sub_809EF24 - - thumb_func_start nullsub_54 -nullsub_54: @ 809EF50 - bx lr - thumb_func_end nullsub_54 - - thumb_func_start sub_809EF54 -sub_809EF54: @ 809EF54 - push {lr} - sub sp, 0x4 - ldr r0, _0809EFA0 @ =gUnknown_203998C - ldr r0, [r0] - ldr r1, _0809EFA4 @ =0x00001e34 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0 - bl sub_805C7C8 - lsls r0, 24 - lsrs r0, 24 - ldr r1, _0809EFA8 @ =SpriteCallbackDummy - movs r2, 0 - str r2, [sp] - movs r2, 0x38 - movs r3, 0x25 - bl AddPseudoObjectEvent - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - ldr r2, _0809EFAC @ =gSprites - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r1, [r0, 0x5] - movs r2, 0xC - orrs r1, r2 - strb r1, [r0, 0x5] - movs r1, 0x4 - bl StartSpriteAnim - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_0809EFA0: .4byte gUnknown_203998C -_0809EFA4: .4byte 0x00001e34 -_0809EFA8: .4byte SpriteCallbackDummy -_0809EFAC: .4byte gSprites - thumb_func_end sub_809EF54 - - thumb_func_start sub_809EFB0 -sub_809EFB0: @ 809EFB0 - push {r4,lr} - ldr r0, _0809EFE4 @ =gUnknown_83E2634 - movs r1, 0x38 - movs r2, 0x29 - movs r3, 0 - bl CreateSprite - lsls r0, 24 - lsrs r0, 24 - lsls r4, r0, 4 - adds r4, r0 - lsls r4, 2 - ldr r0, _0809EFE8 @ =gSprites - adds r4, r0 - ldr r1, _0809EFEC @ =gUnknown_83E252C - adds r0, r4, 0 - bl SetSubspriteTables - ldrb r0, [r4, 0x5] - movs r1, 0xC - orrs r0, r1 - strb r0, [r4, 0x5] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0809EFE4: .4byte gUnknown_83E2634 -_0809EFE8: .4byte gSprites -_0809EFEC: .4byte gUnknown_83E252C - thumb_func_end sub_809EFB0 - - thumb_func_start sub_809EFF0 -sub_809EFF0: @ 809EFF0 - push {lr} - sub sp, 0xC - bl LoadMonIconPalettes - ldr r0, _0809F038 @ =gUnknown_203998C - ldr r3, [r0] - ldr r1, _0809F03C @ =0x00001e34 - adds r0, r3, r1 - ldrh r0, [r0] - ldr r1, _0809F040 @ =SpriteCallbackDummy - movs r2, 0 - str r2, [sp] - ldr r2, _0809F044 @ =0x00001e38 - adds r3, r2 - ldr r2, [r3] - str r2, [sp, 0x4] - movs r2, 0x1 - str r2, [sp, 0x8] - movs r2, 0x38 - movs r3, 0x28 - bl CreateMonIcon - lsls r0, 24 - lsrs r0, 24 - ldr r2, _0809F048 @ =gSprites - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r2 - ldrb r0, [r1, 0x5] - movs r2, 0xC - orrs r0, r2 - strb r0, [r1, 0x5] - add sp, 0xC - pop {r0} - bx r0 - .align 2, 0 -_0809F038: .4byte gUnknown_203998C -_0809F03C: .4byte 0x00001e34 -_0809F040: .4byte SpriteCallbackDummy -_0809F044: .4byte 0x00001e38 -_0809F048: .4byte gSprites - thumb_func_end sub_809EFF0 - - thumb_func_start sub_809F04C -sub_809F04C: @ 809F04C - push {r4,lr} - sub sp, 0x2C - ldr r0, _0809F0B8 @ =gUnknown_83E23C0 - ldr r1, [r0, 0x4] - ldr r0, [r0] - str r0, [sp, 0x1C] - str r1, [sp, 0x20] - ldr r0, _0809F0BC @ =gUnknown_83E23C8 - ldr r1, [r0, 0x4] - ldr r0, [r0] - str r0, [sp, 0x24] - str r1, [sp, 0x28] - ldr r1, _0809F0C0 @ =SpriteCallbackDummy - add r3, sp, 0x18 - movs r0, 0 - mov r2, sp - bl sub_805E8E8 - mov r2, sp - add r0, sp, 0x1C - ldrh r1, [r0, 0x6] - strh r1, [r2] - add r4, sp, 0x24 - ldrh r1, [r4, 0x4] - strh r1, [r2, 0x2] - ldr r1, _0809F0C4 @ =gUnknown_83E23BC - str r1, [sp, 0x8] - bl LoadSpriteSheet - adds r0, r4, 0 - bl LoadSpritePalette - mov r0, sp - movs r1, 0x38 - movs r2, 0x25 - movs r3, 0 - bl CreateSprite - lsls r0, 24 - lsrs r0, 24 - ldr r2, _0809F0C8 @ =gSprites - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r2 - ldrb r0, [r1, 0x5] - movs r2, 0xC - orrs r0, r2 - strb r0, [r1, 0x5] - add sp, 0x2C - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0809F0B8: .4byte gUnknown_83E23C0 -_0809F0BC: .4byte gUnknown_83E23C8 -_0809F0C0: .4byte SpriteCallbackDummy -_0809F0C4: .4byte gUnknown_83E23BC -_0809F0C8: .4byte gSprites - thumb_func_end sub_809F04C - - thumb_func_start sub_809F0CC -sub_809F0CC: @ 809F0CC - push {r4,r5,lr} - bl GetInputEvent - lsls r0, 24 - lsrs r4, r0, 24 - adds r5, r4, 0 - bl sub_809EB00 - lsls r0, 24 - lsrs r0, 24 - cmp r4, 0x8 - bne _0809F0EA - bl sub_809F1F0 - b _0809F106 -_0809F0EA: - cmp r4, 0x6 - bne _0809F0F4 - bl sub_809F700 - b _0809F114 -_0809F0F4: - cmp r5, 0x9 - beq _0809F110 - ldr r1, _0809F10C @ =gUnknown_83E23D0 - lsls r0, 2 - adds r0, r1 - ldr r1, [r0] - adds r0, r5, 0 - bl _call_via_r1 -_0809F106: - lsls r0, 24 - lsrs r0, 24 - b _0809F116 - .align 2, 0 -_0809F10C: .4byte gUnknown_83E23D0 -_0809F110: - bl sub_809E9F8 -_0809F114: - movs r0, 0 -_0809F116: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_809F0CC - - thumb_func_start sub_809F11C -sub_809F11C: @ 809F11C - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0x3 - movs r1, 0 - movs r2, 0 - bl sub_809E518 - cmp r4, 0x5 - bne _0809F156 - bl sub_809F75C - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl sub_809EAA8 - cmp r4, 0 - beq _0809F156 - movs r0, 0 - bl SetInputState - ldr r0, _0809F160 @ =gUnknown_203998C - ldr r0, [r0] - ldr r1, _0809F164 @ =0x00001e10 - adds r0, r1 - movs r1, 0x3 - strb r1, [r0] -_0809F156: - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0809F160: .4byte gUnknown_203998C -_0809F164: .4byte 0x00001e10 - thumb_func_end sub_809F11C - - thumb_func_start KeyboardKeyHandler_Page -KeyboardKeyHandler_Page: @ 809F168 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0 - movs r1, 0x1 - movs r2, 0 - bl sub_809E518 - cmp r4, 0x5 - beq _0809F182 - movs r0, 0 - b _0809F18A -_0809F182: - bl sub_809F1F0 - lsls r0, 24 - lsrs r0, 24 -_0809F18A: - pop {r4} - pop {r1} - bx r1 - thumb_func_end KeyboardKeyHandler_Page - - thumb_func_start KeyboardKeyHandler_Backspace -KeyboardKeyHandler_Backspace: @ 809F190 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0x1 - movs r1, 0x1 - movs r2, 0 - bl sub_809E518 - cmp r4, 0x5 - bne _0809F1AA - bl sub_809F700 -_0809F1AA: - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - thumb_func_end KeyboardKeyHandler_Backspace - - thumb_func_start KeyboardKeyHandler_OK -KeyboardKeyHandler_OK: @ 809F1B4 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0x2 - movs r1, 0x1 - movs r2, 0 - bl sub_809E518 - cmp r4, 0x5 - beq _0809F1CE - movs r0, 0 - b _0809F1E2 -_0809F1CE: - movs r0, 0x5 - bl PlaySE - ldr r0, _0809F1E8 @ =gUnknown_203998C - ldr r0, [r0] - ldr r1, _0809F1EC @ =0x00001e10 - adds r0, r1 - movs r1, 0x6 - strb r1, [r0] - movs r0, 0x1 -_0809F1E2: - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0809F1E8: .4byte gUnknown_203998C -_0809F1EC: .4byte 0x00001e10 - thumb_func_end KeyboardKeyHandler_OK - - thumb_func_start sub_809F1F0 -sub_809F1F0: @ 809F1F0 - ldr r0, _0809F200 @ =gUnknown_203998C - ldr r0, [r0] - ldr r1, _0809F204 @ =0x00001e10 - adds r0, r1 - movs r1, 0x4 - strb r1, [r0] - movs r0, 0x1 - bx lr - .align 2, 0 -_0809F200: .4byte gUnknown_203998C -_0809F204: .4byte 0x00001e10 - thumb_func_end sub_809F1F0 - - thumb_func_start InputInit -InputInit: @ 809F208 - push {lr} - ldr r0, _0809F218 @ =sub_809F26C - movs r1, 0x1 - bl CreateTask - pop {r0} - bx r0 - .align 2, 0 -_0809F218: .4byte sub_809F26C - thumb_func_end InputInit - - thumb_func_start GetInputEvent -GetInputEvent: @ 809F21C - push {lr} - ldr r0, _0809F238 @ =sub_809F26C - bl FindTaskIdByFunc - lsls r0, 24 - lsrs r0, 24 - ldr r2, _0809F23C @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - ldrb r0, [r1, 0xA] - pop {r1} - bx r1 - .align 2, 0 -_0809F238: .4byte sub_809F26C -_0809F23C: .4byte gTasks - thumb_func_end GetInputEvent - - thumb_func_start SetInputState -SetInputState: @ 809F240 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r0, _0809F264 @ =sub_809F26C - bl FindTaskIdByFunc - lsls r0, 24 - lsrs r0, 24 - ldr r2, _0809F268 @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - strh r4, [r1, 0x8] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0809F264: .4byte sub_809F26C -_0809F268: .4byte gTasks - thumb_func_end SetInputState - - thumb_func_start sub_809F26C -sub_809F26C: @ 809F26C - push {lr} - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - ldr r3, _0809F294 @ =gUnknown_83E23E0 - ldr r2, _0809F298 @ =gTasks - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r2 - movs r2, 0x8 - ldrsh r1, [r0, r2] - lsls r1, 2 - adds r1, r3 - ldr r1, [r1] - bl _call_via_r1 - pop {r0} - bx r0 - .align 2, 0 -_0809F294: .4byte gUnknown_83E23E0 -_0809F298: .4byte gTasks - thumb_func_end sub_809F26C - - thumb_func_start InputState_Disabled -InputState_Disabled: @ 809F29C - movs r1, 0 - strh r1, [r0, 0xA] - bx lr - thumb_func_end InputState_Disabled - - thumb_func_start InputState_Enabled -InputState_Enabled: @ 809F2A4 - push {lr} - adds r2, r0, 0 - movs r0, 0 - strh r0, [r2, 0xA] - ldr r0, _0809F2C0 @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0809F2C4 - movs r0, 0x5 - strh r0, [r2, 0xA] - b _0809F2F4 - .align 2, 0 -_0809F2C0: .4byte gMain -_0809F2C4: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0809F2D2 - movs r0, 0x6 - strh r0, [r2, 0xA] - b _0809F2F4 -_0809F2D2: - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _0809F2E0 - movs r0, 0x8 - strh r0, [r2, 0xA] - b _0809F2F4 -_0809F2E0: - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _0809F2EE - movs r0, 0x9 - strh r0, [r2, 0xA] - b _0809F2F4 -_0809F2EE: - adds r0, r2, 0 - bl sub_809F2F8 -_0809F2F4: - pop {r0} - bx r0 - thumb_func_end InputState_Enabled - - thumb_func_start sub_809F2F8 -sub_809F2F8: @ 809F2F8 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x34 - mov r9, r0 - ldr r1, _0809F3E4 @ =gUnknown_83E23E8 - mov r0, sp - movs r2, 0xA - bl memcpy - add r0, sp, 0xC - mov r10, r0 - ldr r1, _0809F3E8 @ =gUnknown_83E23F2 - movs r2, 0xA - bl memcpy - mov r1, sp - adds r1, 0x18 - str r1, [sp, 0x2C] - ldr r1, _0809F3EC @ =gUnknown_83E23FC - ldr r0, [sp, 0x2C] - movs r2, 0x8 - bl memcpy - mov r2, sp - adds r2, 0x20 - str r2, [sp, 0x30] - ldr r1, _0809F3F0 @ =gUnknown_83E2404 - adds r0, r2, 0 - movs r2, 0x6 - bl memcpy - add r4, sp, 0x28 - mov r5, sp - adds r5, 0x2A - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_809E9CC - ldr r0, _0809F3F4 @ =gMain - ldrh r2, [r0, 0x30] - movs r0, 0x40 - ands r0, r2 - lsls r0, 16 - lsrs r0, 16 - negs r0, r0 - lsrs r1, r0, 31 - movs r0, 0x80 - ands r0, r2 - adds r6, r4, 0 - cmp r0, 0 - beq _0809F366 - movs r1, 0x2 -_0809F366: - movs r0, 0x20 - ands r0, r2 - cmp r0, 0 - beq _0809F370 - movs r1, 0x3 -_0809F370: - movs r0, 0x10 - ands r0, r2 - cmp r0, 0 - beq _0809F37A - movs r1, 0x4 -_0809F37A: - ldrh r0, [r6] - mov r8, r0 - lsls r1, 1 - mov r2, sp - adds r7, r2, r1 - ldrh r0, [r7] - add r0, r8 - strh r0, [r6] - add r1, r10 - ldrh r0, [r1] - ldrh r1, [r5] - adds r0, r1 - strh r0, [r5] - movs r2, 0 - ldrsh r0, [r6, r2] - cmp r0, 0 - bge _0809F3A6 - bl sub_809EB40 - lsls r0, 24 - lsrs r0, 24 - strh r0, [r6] -_0809F3A6: - movs r0, 0 - ldrsh r4, [r6, r0] - bl sub_809EB40 - lsls r0, 24 - lsrs r0, 24 - cmp r4, r0 - ble _0809F3BA - movs r0, 0 - strh r0, [r6] -_0809F3BA: - movs r1, 0 - ldrsh r0, [r7, r1] - cmp r0, 0 - beq _0809F426 - movs r2, 0 - ldrsh r4, [r6, r2] - bl sub_809EB40 - lsls r0, 24 - lsrs r0, 24 - cmp r4, r0 - bne _0809F3F8 - ldrh r0, [r5] - mov r1, r9 - strh r0, [r1, 0xC] - movs r2, 0 - ldrsh r0, [r5, r2] - lsls r0, 1 - ldr r1, [sp, 0x2C] - adds r0, r1, r0 - b _0809F422 - .align 2, 0 -_0809F3E4: .4byte gUnknown_83E23E8 -_0809F3E8: .4byte gUnknown_83E23F2 -_0809F3EC: .4byte gUnknown_83E23FC -_0809F3F0: .4byte gUnknown_83E2404 -_0809F3F4: .4byte gMain -_0809F3F8: - mov r2, r8 - lsls r4, r2, 16 - asrs r4, 16 - bl sub_809EB40 - lsls r0, 24 - lsrs r0, 24 - cmp r4, r0 - bne _0809F426 - movs r1, 0 - ldrsh r0, [r5, r1] - cmp r0, 0x1 - bne _0809F418 - mov r2, r9 - ldrh r0, [r2, 0xC] - b _0809F424 -_0809F418: - movs r1, 0 - ldrsh r0, [r5, r1] - lsls r0, 1 - ldr r2, [sp, 0x30] - adds r0, r2, r0 -_0809F422: - ldrh r0, [r0] -_0809F424: - strh r0, [r5] -_0809F426: - movs r0, 0 - ldrsh r4, [r6, r0] - bl sub_809EB40 - lsls r0, 24 - lsrs r0, 24 - cmp r4, r0 - bne _0809F468 - movs r1, 0 - ldrsh r0, [r5, r1] - cmp r0, 0 - bge _0809F442 - movs r0, 0x2 - strh r0, [r5] -_0809F442: - movs r2, 0 - ldrsh r0, [r5, r2] - cmp r0, 0x2 - ble _0809F44E - movs r0, 0 - strh r0, [r5] -_0809F44E: - movs r1, 0 - ldrsh r0, [r5, r1] - cmp r0, 0 - bne _0809F45E - movs r0, 0x1 - mov r2, r9 - strh r0, [r2, 0xC] - b _0809F480 -_0809F45E: - cmp r0, 0x2 - bne _0809F480 - mov r1, r9 - strh r0, [r1, 0xC] - b _0809F480 -_0809F468: - movs r2, 0 - ldrsh r0, [r5, r2] - cmp r0, 0 - bge _0809F474 - movs r0, 0x3 - strh r0, [r5] -_0809F474: - movs r1, 0 - ldrsh r0, [r5, r1] - cmp r0, 0x3 - ble _0809F480 - movs r0, 0 - strh r0, [r5] -_0809F480: - movs r2, 0 - ldrsh r0, [r6, r2] - movs r2, 0 - ldrsh r1, [r5, r2] - bl sub_809E948 - add sp, 0x34 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_809F2F8 - - thumb_func_start sub_809F49C -sub_809F49C: @ 809F49C - push {r4,r5,lr} - sub sp, 0xC - ldr r5, _0809F4E4 @ =gUnknown_203998C - ldr r0, [r5] - ldr r4, _0809F4E8 @ =0x00001e14 - adds r0, r4 - ldrb r0, [r0] - movs r1, 0x11 - bl FillWindowPixelBuffer - ldr r1, [r5] - adds r0, r1, r4 - ldrb r0, [r0] - ldr r2, _0809F4EC @ =0x00001e28 - adds r1, r2 - ldr r1, [r1] - ldr r2, [r1, 0x8] - movs r1, 0x1 - str r1, [sp] - movs r1, 0 - str r1, [sp, 0x4] - str r1, [sp, 0x8] - movs r1, 0x1 - movs r3, 0x1 - bl AddTextPrinterParameterized - ldr r0, [r5] - adds r0, r4 - ldrb r0, [r0] - bl PutWindowTilemap - add sp, 0xC - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0809F4E4: .4byte gUnknown_203998C -_0809F4E8: .4byte 0x00001e14 -_0809F4EC: .4byte 0x00001e28 - thumb_func_end sub_809F49C - - thumb_func_start sub_809F4F0 -sub_809F4F0: @ 809F4F0 - push {r4,r5,lr} - sub sp, 0x2C - ldr r5, _0809F558 @ =gUnknown_203998C - ldr r0, [r5] - ldr r1, _0809F55C @ =0x00001e34 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0xB - muls r1, r0 - ldr r0, _0809F560 @ =gSpeciesNames - adds r1, r0 - add r0, sp, 0xC - bl StringCopy - ldr r0, [r5] - ldr r1, _0809F564 @ =0x00001e28 - adds r0, r1 - ldr r0, [r0] - ldr r1, [r0, 0x8] - add r0, sp, 0xC - movs r2, 0xF - bl StringAppendN - ldr r0, [r5] - ldr r4, _0809F568 @ =0x00001e14 - adds r0, r4 - ldrb r0, [r0] - movs r1, 0x11 - bl FillWindowPixelBuffer - ldr r0, [r5] - adds r0, r4 - ldrb r0, [r0] - movs r1, 0x1 - str r1, [sp] - movs r1, 0 - str r1, [sp, 0x4] - str r1, [sp, 0x8] - movs r1, 0x1 - add r2, sp, 0xC - movs r3, 0x1 - bl AddTextPrinterParameterized - ldr r0, [r5] - adds r0, r4 - ldrb r0, [r0] - bl PutWindowTilemap - add sp, 0x2C - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0809F558: .4byte gUnknown_203998C -_0809F55C: .4byte 0x00001e34 -_0809F560: .4byte gSpeciesNames -_0809F564: .4byte 0x00001e28 -_0809F568: .4byte 0x00001e14 - thumb_func_end sub_809F4F0 - - thumb_func_start sub_809F56C -sub_809F56C: @ 809F56C - push {lr} - ldr r1, _0809F588 @ =gUnknown_83E240C - ldr r0, _0809F58C @ =gUnknown_203998C - ldr r0, [r0] - ldr r2, _0809F590 @ =0x00001e2c - adds r0, r2 - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - bl _call_via_r0 - pop {r0} - bx r0 - .align 2, 0 -_0809F588: .4byte gUnknown_83E240C -_0809F58C: .4byte gUnknown_203998C -_0809F590: .4byte 0x00001e2c - thumb_func_end sub_809F56C - - thumb_func_start sub_809F594 -sub_809F594: @ 809F594 - push {lr} - ldr r1, _0809F5B4 @ =gUnknown_83E2420 - ldr r0, _0809F5B8 @ =gUnknown_203998C - ldr r0, [r0] - ldr r2, _0809F5BC @ =0x00001e28 - adds r0, r2 - ldr r0, [r0] - ldrb r0, [r0, 0x3] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - bl _call_via_r0 - pop {r0} - bx r0 - .align 2, 0 -_0809F5B4: .4byte gUnknown_83E2420 -_0809F5B8: .4byte gUnknown_203998C -_0809F5BC: .4byte 0x00001e28 - thumb_func_end sub_809F594 - - thumb_func_start nullsub_55 -nullsub_55: @ 809F5C0 - bx lr - thumb_func_end nullsub_55 - - thumb_func_start sub_809F5C4 -sub_809F5C4: @ 809F5C4 - push {r4,r5,lr} - sub sp, 0x10 - movs r4, 0 - ldr r1, _0809F61C @ =gText_MaleSymbol - add r0, sp, 0xC - bl StringCopy - ldr r5, _0809F620 @ =gUnknown_203998C - ldr r0, [r5] - ldr r1, _0809F624 @ =0x00001e36 - adds r0, r1 - ldrh r0, [r0] - cmp r0, 0xFF - beq _0809F614 - cmp r0, 0xFE - bne _0809F5EE - ldr r1, _0809F628 @ =gText_FemaleSymbol - add r0, sp, 0xC - bl StringCopy - movs r4, 0x1 -_0809F5EE: - ldr r0, [r5] - ldr r1, _0809F62C @ =0x00001e13 - adds r0, r1 - ldrb r0, [r0] - lsls r1, r4, 1 - adds r1, r4 - ldr r2, _0809F630 @ =gUnknown_83E2428 - adds r1, r2 - str r1, [sp] - movs r1, 0x1 - negs r1, r1 - str r1, [sp, 0x4] - add r1, sp, 0xC - str r1, [sp, 0x8] - movs r1, 0x2 - movs r2, 0x68 - movs r3, 0x1 - bl AddTextPrinterParameterized3 -_0809F614: - add sp, 0x10 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0809F61C: .4byte gText_MaleSymbol -_0809F620: .4byte gUnknown_203998C -_0809F624: .4byte 0x00001e36 -_0809F628: .4byte gText_FemaleSymbol -_0809F62C: .4byte 0x00001e13 -_0809F630: .4byte gUnknown_83E2428 - thumb_func_end sub_809F5C4 - - thumb_func_start sub_809F634 -sub_809F634: @ 809F634 - push {r4-r6,lr} - adds r4, r0, 0 - adds r5, r1, 0 - lsls r4, 16 - lsrs r4, 16 - lsls r5, 16 - lsrs r5, 16 - ldr r6, _0809F664 @ =gUnknown_83E22D0 - bl sub_809DE50 - lsls r4, 16 - asrs r4, 16 - lsls r5, 16 - asrs r5, 13 - adds r4, r5 - lsls r0, 24 - lsrs r0, 19 - adds r4, r0 - adds r4, r6 - ldrb r0, [r4] - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_0809F664: .4byte gUnknown_83E22D0 - thumb_func_end sub_809F634 - - thumb_func_start sub_809F668 -sub_809F668: @ 809F668 - push {r4,r5,lr} - movs r2, 0 - ldr r0, _0809F690 @ =gUnknown_203998C - ldr r4, [r0] - ldr r3, _0809F694 @ =0x00001e28 - adds r1, r4, r3 - ldr r1, [r1] - ldrb r3, [r1, 0x1] - adds r5, r0, 0 - cmp r2, r3 - bcs _0809F6A2 - movs r0, 0xC0 - lsls r0, 5 - adds r1, r4, r0 -_0809F684: - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0xFF - bne _0809F698 - adds r0, r2, 0 - b _0809F6B2 - .align 2, 0 -_0809F690: .4byte gUnknown_203998C -_0809F694: .4byte 0x00001e28 -_0809F698: - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, r3 - bcc _0809F684 -_0809F6A2: - ldr r0, [r5] - ldr r1, _0809F6B8 @ =0x00001e28 - adds r0, r1 - ldr r0, [r0] - ldrb r0, [r0, 0x1] - subs r0, 0x1 - lsls r0, 24 - lsrs r0, 24 -_0809F6B2: - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0809F6B8: .4byte 0x00001e28 - thumb_func_end sub_809F668 - - thumb_func_start sub_809F6BC -sub_809F6BC: @ 809F6BC - push {lr} - ldr r0, _0809F6E8 @ =gUnknown_203998C - ldr r2, [r0] - ldr r1, _0809F6EC @ =0x00001e28 - adds r0, r2, r1 - ldr r0, [r0] - ldrb r0, [r0, 0x1] - subs r0, 0x1 - lsls r1, r0, 24 - cmp r1, 0 - ble _0809F6F8 - movs r0, 0xC0 - lsls r0, 5 - adds r3, r2, r0 -_0809F6D8: - asrs r2, r1, 24 - adds r0, r3, r2 - ldrb r0, [r0] - cmp r0, 0xFF - beq _0809F6F0 - lsrs r0, r1, 24 - b _0809F6FA - .align 2, 0 -_0809F6E8: .4byte gUnknown_203998C -_0809F6EC: .4byte 0x00001e28 -_0809F6F0: - subs r0, r2, 0x1 - lsls r1, r0, 24 - cmp r1, 0 - bgt _0809F6D8 -_0809F6F8: - movs r0, 0 -_0809F6FA: - pop {r1} - bx r1 - thumb_func_end sub_809F6BC - - thumb_func_start sub_809F700 -sub_809F700: @ 809F700 - push {r4-r6,lr} - bl sub_809F6BC - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r6, _0809F758 @ =gUnknown_203998C - ldr r0, [r6] - movs r5, 0xC0 - lsls r5, 5 - adds r0, r5 - adds r0, r4 - movs r1, 0 - strb r1, [r0] - bl sub_809F914 - movs r0, 0x3 - bl CopyBgTilemapBufferToVram - ldr r0, [r6] - adds r0, r5 - adds r0, r4 - movs r1, 0xFF - strb r1, [r0] - bl sub_809EB00 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - beq _0809F740 - cmp r0, 0x2 - bne _0809F74A -_0809F740: - movs r0, 0x1 - movs r1, 0 - movs r2, 0x1 - bl sub_809E518 -_0809F74A: - movs r0, 0x17 - bl PlaySE - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0809F758: .4byte gUnknown_203998C - thumb_func_end sub_809F700 - - thumb_func_start sub_809F75C -sub_809F75C: @ 809F75C - push {r4,lr} - sub sp, 0x4 - mov r4, sp - adds r4, 0x2 - mov r0, sp - adds r1, r4, 0 - bl sub_809E9CC - mov r0, sp - movs r1, 0 - ldrsh r0, [r0, r1] - movs r2, 0 - ldrsh r1, [r4, r2] - bl sub_809F634 - lsls r0, 24 - lsrs r0, 24 - bl sub_809F7C4 - bl sub_809F914 - movs r0, 0x3 - bl CopyBgTilemapBufferToVram - movs r0, 0x5 - bl PlaySE - bl sub_809F6BC - lsls r0, 24 - lsrs r0, 24 - ldr r1, _0809F7B0 @ =gUnknown_203998C - ldr r1, [r1] - ldr r2, _0809F7B4 @ =0x00001e28 - adds r1, r2 - ldr r1, [r1] - ldrb r1, [r1, 0x1] - subs r1, 0x1 - cmp r0, r1 - bne _0809F7B8 - movs r0, 0x1 - b _0809F7BA - .align 2, 0 -_0809F7B0: .4byte gUnknown_203998C -_0809F7B4: .4byte 0x00001e28 -_0809F7B8: - movs r0, 0 -_0809F7BA: - add sp, 0x4 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_809F75C - - thumb_func_start sub_809F7C4 -sub_809F7C4: @ 809F7C4 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl sub_809F668 - lsls r0, 24 - lsrs r0, 24 - ldr r1, _0809F7E8 @ =gUnknown_203998C - ldr r1, [r1] - movs r2, 0xC0 - lsls r2, 5 - adds r1, r2 - adds r1, r0 - strb r4, [r1] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0809F7E8: .4byte gUnknown_203998C - thumb_func_end sub_809F7C4 - - thumb_func_start sub_809F7EC -sub_809F7EC: @ 809F7EC - push {r4,r5,lr} - movs r2, 0 - ldr r1, _0809F800 @ =gUnknown_203998C - ldr r0, [r1] - ldr r4, _0809F804 @ =0x00001e28 - adds r0, r4 - ldr r0, [r0] - adds r5, r1, 0 - b _0809F84C - .align 2, 0 -_0809F800: .4byte gUnknown_203998C -_0809F804: .4byte 0x00001e28 -_0809F808: - ldr r1, [r1] - movs r0, 0xC0 - lsls r0, 5 - adds r3, r1, r0 - adds r0, r3, r2 - ldrb r0, [r0] - cmp r0, 0 - beq _0809F83C - cmp r0, 0xFF - beq _0809F83C - ldr r2, _0809F838 @ =0x00001e30 - adds r0, r1, r2 - ldr r0, [r0] - adds r1, r4 - ldr r1, [r1] - ldrb r2, [r1, 0x1] - adds r2, 0x1 - lsls r2, 24 - lsrs r2, 24 - adds r1, r3, 0 - bl StringCopyN - b _0809F852 - .align 2, 0 -_0809F838: .4byte 0x00001e30 -_0809F83C: - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - adds r1, r5, 0 - ldr r0, [r1] - ldr r4, _0809F858 @ =0x00001e28 - adds r0, r4 - ldr r0, [r0] -_0809F84C: - ldrb r0, [r0, 0x1] - cmp r2, r0 - bcc _0809F808 -_0809F852: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0809F858: .4byte 0x00001e28 - thumb_func_end sub_809F7EC - - thumb_func_start choose_name_or_words_screen_load_bg_tile_patterns -choose_name_or_words_screen_load_bg_tile_patterns: @ 809F85C - push {r4-r6,lr} - ldr r0, _0809F8AC @ =gUnknown_8E980E4 - ldr r6, _0809F8B0 @ =gUnknown_203998C - ldr r1, [r6] - ldr r4, _0809F8B4 @ =0x00001810 - adds r1, r4 - bl LZ77UnCompWram - ldr r1, [r6] - adds r1, r4 - movs r5, 0xC0 - lsls r5, 3 - movs r0, 0x1 - adds r2, r5, 0 - movs r3, 0 - bl LoadBgTiles - ldr r1, [r6] - adds r1, r4 - movs r0, 0x2 - adds r2, r5, 0 - movs r3, 0 - bl LoadBgTiles - ldr r1, [r6] - adds r1, r4 - movs r0, 0x3 - adds r2, r5, 0 - movs r3, 0 - bl LoadBgTiles - ldr r0, _0809F8B8 @ =gUnknown_83E267C - bl LoadSpriteSheets - ldr r0, _0809F8BC @ =gUnknown_83E26E4 - bl LoadSpritePalettes - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0809F8AC: .4byte gUnknown_8E980E4 -_0809F8B0: .4byte gUnknown_203998C -_0809F8B4: .4byte 0x00001810 -_0809F8B8: .4byte gUnknown_83E267C -_0809F8BC: .4byte gUnknown_83E26E4 - thumb_func_end choose_name_or_words_screen_load_bg_tile_patterns - - thumb_func_start sub_809F8C0 -sub_809F8C0: @ 809F8C0 - push {lr} - bl InputInit - bl sub_809E4F0 - pop {r0} - bx r0 - thumb_func_end sub_809F8C0 - - thumb_func_start choose_name_or_words_screen_apply_bg_pals -choose_name_or_words_screen_apply_bg_pals: @ 809F8D0 - push {lr} - ldr r0, _0809F8F8 @ =gUnknown_8E98024 - movs r1, 0 - movs r2, 0xC0 - bl LoadPalette - ldr r0, _0809F8FC @ =gUnknown_8E97FE4 - movs r1, 0xA0 - movs r2, 0x20 - bl LoadPalette - movs r0, 0x2 - bl stdpal_get - movs r1, 0xB0 - movs r2, 0x20 - bl LoadPalette - pop {r0} - bx r0 - .align 2, 0 -_0809F8F8: .4byte gUnknown_8E98024 -_0809F8FC: .4byte gUnknown_8E97FE4 - thumb_func_end choose_name_or_words_screen_apply_bg_pals - - thumb_func_start sub_809F900 -sub_809F900: @ 809F900 - push {lr} - lsls r0, 24 - lsrs r0, 24 - movs r2, 0 - movs r3, 0 - bl CopyToBgTilemapBuffer - pop {r0} - bx r0 - thumb_func_end sub_809F900 - - thumb_func_start sub_809F914 -sub_809F914: @ 809F914 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x10 - ldr r7, _0809F9D8 @ =gUnknown_203998C - ldr r1, [r7] - ldr r2, _0809F9DC @ =0x00001e28 - adds r0, r1, r2 - ldr r0, [r0] - ldrb r6, [r0, 0x1] - subs r2, 0x12 - adds r0, r1, r2 - ldrh r0, [r0] - subs r0, 0x40 - lsls r0, 16 - lsrs r0, 16 - mov r9, r0 - ldr r0, _0809F9E0 @ =0x00001e13 - adds r1, r0 - ldrb r0, [r1] - movs r1, 0x11 - bl FillWindowPixelBuffer - movs r4, 0 - cmp r4, r6 - bcs _0809F9AA - add r5, sp, 0xC - mov r10, r4 - ldr r0, _0809F9E4 @ =gExpandedPlaceholder_Empty - ldrb r0, [r0] - mov r8, r0 -_0809F956: - ldr r0, [r7] - movs r1, 0xC0 - lsls r1, 5 - adds r0, r1 - adds r0, r4 - ldrb r0, [r0] - strb r0, [r5] - mov r2, r8 - strb r2, [r5, 0x1] - ldrb r0, [r5] - bl sub_809FC54 - lsls r0, 24 - lsrs r0, 24 - movs r1, 0 - cmp r0, 0x1 - bne _0809F97A - movs r1, 0x2 -_0809F97A: - ldr r0, [r7] - ldr r2, _0809F9E0 @ =0x00001e13 - adds r0, r2 - ldrb r0, [r0] - lsls r3, r4, 3 - add r3, r9 - adds r3, r1 - lsls r3, 24 - lsrs r3, 24 - movs r1, 0x1 - str r1, [sp] - movs r1, 0xFF - str r1, [sp, 0x4] - mov r1, r10 - str r1, [sp, 0x8] - movs r1, 0x2 - add r2, sp, 0xC - bl AddTextPrinterParameterized - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, r6 - bcc _0809F956 -_0809F9AA: - bl sub_809F594 - ldr r5, _0809F9D8 @ =gUnknown_203998C - ldr r0, [r5] - ldr r4, _0809F9E0 @ =0x00001e13 - adds r0, r4 - ldrb r0, [r0] - movs r1, 0x2 - bl CopyWindowToVram - ldr r0, [r5] - adds r0, r4 - ldrb r0, [r0] - bl PutWindowTilemap - add sp, 0x10 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0809F9D8: .4byte gUnknown_203998C -_0809F9DC: .4byte 0x00001e28 -_0809F9E0: .4byte 0x00001e13 -_0809F9E4: .4byte gExpandedPlaceholder_Empty - thumb_func_end sub_809F914 - - thumb_func_start sub_809F9E8 -sub_809F9E8: @ 809F9E8 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0xC - lsls r0, 24 - lsrs r6, r0, 24 - lsls r1, 24 - lsrs r5, r1, 24 - ldr r0, _0809FA54 @ =gUnknown_83E243C - adds r0, r5, r0 - ldrb r1, [r0] - adds r0, r6, 0 - bl FillWindowPixelBuffer - movs r4, 0 - ldr r1, _0809FA58 @ =gUnknown_83E2440 - lsls r0, r5, 2 - adds r0, r1 - ldr r7, [r0] - ldr r0, _0809FA5C @ =gUnknown_83E264C - mov r8, r0 -_0809FA12: - lsls r3, r4, 4 - adds r3, 0x1 - lsls r3, 24 - lsrs r3, 24 - str r7, [sp] - movs r0, 0 - str r0, [sp, 0x4] - lsls r0, r4, 2 - lsls r1, r5, 4 - adds r0, r1 - add r0, r8 - ldr r0, [r0] - str r0, [sp, 0x8] - adds r0, r6, 0 - movs r1, 0x1 - movs r2, 0 - bl AddTextPrinterParameterized3 - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x3 - bls _0809FA12 - adds r0, r6, 0 - bl PutWindowTilemap - add sp, 0xC - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0809FA54: .4byte gUnknown_83E243C -_0809FA58: .4byte gUnknown_83E2440 -_0809FA5C: .4byte gUnknown_83E264C - thumb_func_end sub_809F9E8 - - thumb_func_start sub_809FA60 -sub_809FA60: @ 809FA60 - push {r4,r5,lr} - movs r0, 0xA - bl GetGpuReg - adds r4, r0, 0 - movs r5, 0x3 - ands r4, r5 - movs r0, 0xC - bl GetGpuReg - ands r0, r5 - cmp r4, r0 - bls _0809FA90 - movs r2, 0x1 - movs r5, 0x1 - ldr r1, _0809FA88 @ =gUnknown_203998C - ldr r0, [r1] - ldr r3, _0809FA8C @ =0x00001e11 - b _0809FA9A - .align 2, 0 -_0809FA88: .4byte gUnknown_203998C -_0809FA8C: .4byte 0x00001e11 -_0809FA90: - movs r2, 0x2 - movs r5, 0x2 - ldr r1, _0809FAD4 @ =gUnknown_203998C - ldr r0, [r1] - ldr r3, _0809FAD8 @ =0x00001e12 -_0809FA9A: - adds r0, r3 - ldrb r4, [r0] - adds r0, r1, 0 - ldr r1, _0809FADC @ =gUnknown_83E244C - ldr r0, [r0] - ldr r3, _0809FAE0 @ =0x00001e22 - adds r0, r3 - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r1, [r0] - adds r0, r2, 0 - bl sub_809F900 - bl sub_809DE30 - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl sub_809F9E8 - adds r0, r5, 0 - bl CopyBgTilemapBufferToVram - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0809FAD4: .4byte gUnknown_203998C -_0809FAD8: .4byte 0x00001e12 -_0809FADC: .4byte gUnknown_83E244C -_0809FAE0: .4byte 0x00001e22 - thumb_func_end sub_809FA60 - - thumb_func_start sub_809FAE4 -sub_809FAE4: @ 809FAE4 - push {r4-r6,lr} - mov r6, r8 - push {r6} - sub sp, 0x10 - ldr r1, _0809FB60 @ =gUnknown_83E2458 - add r0, sp, 0xC - movs r2, 0x3 - bl memcpy - ldr r0, _0809FB64 @ =gUnknown_8418E77 - mov r8, r0 - movs r0, 0 - mov r1, r8 - movs r2, 0 - bl GetStringWidth - adds r6, r0, 0 - ldr r5, _0809FB68 @ =gUnknown_203998C - ldr r0, [r5] - ldr r4, _0809FB6C @ =0x00001e15 - adds r0, r4 - ldrb r0, [r0] - movs r1, 0xFF - bl FillWindowPixelBuffer - ldr r0, [r5] - adds r0, r4 - ldrb r0, [r0] - movs r1, 0x14 - negs r1, r1 - adds r2, r1, 0 - subs r2, r6 - lsls r2, 24 - lsrs r2, 24 - add r1, sp, 0xC - str r1, [sp] - movs r1, 0 - str r1, [sp, 0x4] - mov r1, r8 - str r1, [sp, 0x8] - movs r1, 0 - movs r3, 0 - bl AddTextPrinterParameterized3 - ldr r0, [r5] - adds r0, r4 - ldrb r0, [r0] - bl PutWindowTilemap - ldr r0, [r5] - adds r0, r4 - ldrb r0, [r0] - movs r1, 0x3 - bl CopyWindowToVram - add sp, 0x10 - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0809FB60: .4byte gUnknown_83E2458 -_0809FB64: .4byte gUnknown_8418E77 -_0809FB68: .4byte gUnknown_203998C -_0809FB6C: .4byte 0x00001e15 - thumb_func_end sub_809FAE4 - - thumb_func_start sub_809FB70 -sub_809FB70: @ 809FB70 - push {lr} - bl RunTasks - bl AnimateSprites - bl BuildOamBuffer - bl UpdatePaletteFade - pop {r0} - bx r0 - thumb_func_end sub_809FB70 - - thumb_func_start sub_809FB88 -sub_809FB88: @ 809FB88 - push {lr} - movs r0, 0 - bl SetVBlankCallback - movs r0, 0 - bl SetHBlankCallback - pop {r0} - bx r0 - thumb_func_end sub_809FB88 - - thumb_func_start sub_809FB9C -sub_809FB9C: @ 809FB9C - push {lr} - ldr r0, _0809FBA8 @ =sub_809FBAC - bl SetVBlankCallback - pop {r0} - bx r0 - .align 2, 0 -_0809FBA8: .4byte sub_809FBAC - thumb_func_end sub_809FB9C - - thumb_func_start sub_809FBAC -sub_809FBAC: @ 809FBAC - push {r4,r5,lr} - bl LoadOam - bl ProcessSpriteCopyRequests - bl TransferPlttBuffer - ldr r5, _0809FC1C @ =gUnknown_203998C - ldr r0, [r5] - ldr r1, _0809FC20 @ =0x00001e18 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x16 - bl SetGpuReg - ldr r0, [r5] - ldr r1, _0809FC24 @ =0x00001e1a - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x1A - bl SetGpuReg - movs r0, 0xA - bl GetGpuReg - ldr r4, _0809FC28 @ =0x0000fffc - adds r1, r4, 0 - ands r1, r0 - movs r0, 0xA - bl SetGpuReg - ldr r0, [r5] - ldr r1, _0809FC2C @ =0x00001e1c - adds r0, r1 - ldrh r1, [r0] - movs r0, 0xA - bl SetGpuRegBits - movs r0, 0xC - bl GetGpuReg - ands r4, r0 - movs r0, 0xC - adds r1, r4, 0 - bl SetGpuReg - ldr r0, [r5] - ldr r1, _0809FC30 @ =0x00001e1e - adds r0, r1 - ldrh r1, [r0] - movs r0, 0xC - bl SetGpuRegBits - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0809FC1C: .4byte gUnknown_203998C -_0809FC20: .4byte 0x00001e18 -_0809FC24: .4byte 0x00001e1a -_0809FC28: .4byte 0x0000fffc -_0809FC2C: .4byte 0x00001e1c -_0809FC30: .4byte 0x00001e1e - thumb_func_end sub_809FBAC - - thumb_func_start sub_809FC34 -sub_809FC34: @ 809FC34 - push {lr} - movs r0, 0 - bl ShowBg - movs r0, 0x1 - bl ShowBg - movs r0, 0x2 - bl ShowBg - movs r0, 0x3 - bl ShowBg - pop {r0} - bx r0 - thumb_func_end sub_809FC34 - - thumb_func_start sub_809FC54 -sub_809FC54: @ 809FC54 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - movs r2, 0 - ldr r0, _0809FC74 @ =gUnknown_8418E8A - ldrb r1, [r0] - adds r3, r0, 0 - cmp r1, 0xFF - beq _0809FC86 - adds r1, r3, 0 -_0809FC68: - adds r0, r2, r1 - ldrb r0, [r0] - cmp r4, r0 - bne _0809FC78 - movs r0, 0x1 - b _0809FC88 - .align 2, 0 -_0809FC74: .4byte gUnknown_8418E8A -_0809FC78: - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - adds r0, r2, r3 - ldrb r0, [r0] - cmp r0, 0xFF - bne _0809FC68 -_0809FC86: - movs r0, 0 -_0809FC88: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_809FC54 - - thumb_func_start sub_809FC90 -sub_809FC90: @ 809FC90 - push {lr} - sub sp, 0x8 - ldr r0, _0809FCB0 @ =gSaveBlock2Ptr - ldr r1, [r0] - ldrb r2, [r1, 0x8] - movs r0, 0 - str r0, [sp] - ldr r0, _0809FCB4 @ =CB2_ReturnToFieldWithOpenMenu - str r0, [sp, 0x4] - movs r0, 0 - movs r3, 0 - bl DoNamingScreen - add sp, 0x8 - pop {r0} - bx r0 - .align 2, 0 -_0809FCB0: .4byte gSaveBlock2Ptr -_0809FCB4: .4byte CB2_ReturnToFieldWithOpenMenu - thumb_func_end sub_809FC90 - - thumb_func_start sub_809FCB8 -sub_809FCB8: @ 809FCB8 - push {lr} - sub sp, 0x8 - ldr r0, _0809FCD8 @ =gSaveBlock2Ptr - ldr r1, [r0] - ldrb r2, [r1, 0x8] - movs r0, 0 - str r0, [sp] - ldr r0, _0809FCDC @ =CB2_ReturnToFieldWithOpenMenu - str r0, [sp, 0x4] - movs r0, 0x1 - movs r3, 0 - bl DoNamingScreen - add sp, 0x8 - pop {r0} - bx r0 - .align 2, 0 -_0809FCD8: .4byte gSaveBlock2Ptr -_0809FCDC: .4byte CB2_ReturnToFieldWithOpenMenu - thumb_func_end sub_809FCB8 - - thumb_func_start sub_809FCE0 -sub_809FCE0: @ 809FCE0 - push {lr} - sub sp, 0x8 - ldr r0, _0809FD00 @ =gSaveBlock2Ptr - ldr r1, [r0] - ldrb r2, [r1, 0x8] - movs r0, 0 - str r0, [sp] - ldr r0, _0809FD04 @ =CB2_ReturnToFieldWithOpenMenu - str r0, [sp, 0x4] - movs r0, 0x2 - movs r3, 0 - bl DoNamingScreen - add sp, 0x8 - pop {r0} - bx r0 - .align 2, 0 -_0809FD00: .4byte gSaveBlock2Ptr -_0809FD04: .4byte CB2_ReturnToFieldWithOpenMenu - thumb_func_end sub_809FCE0 - - thumb_func_start sub_809FD08 -sub_809FD08: @ 809FD08 - push {lr} - sub sp, 0x8 - ldr r0, _0809FD28 @ =gSaveBlock2Ptr - ldr r1, [r0] - ldrb r2, [r1, 0x8] - movs r0, 0 - str r0, [sp] - ldr r0, _0809FD2C @ =CB2_ReturnToFieldWithOpenMenu - str r0, [sp, 0x4] - movs r0, 0x3 - movs r3, 0 - bl DoNamingScreen - add sp, 0x8 - pop {r0} - bx r0 - .align 2, 0 -_0809FD28: .4byte gSaveBlock2Ptr -_0809FD2C: .4byte CB2_ReturnToFieldWithOpenMenu - thumb_func_end sub_809FD08 - - thumb_func_start sub_809FD30 -sub_809FD30: @ 809FD30 - push {lr} - sub sp, 0x8 - ldr r0, _0809FD50 @ =gSaveBlock2Ptr - ldr r1, [r0] - ldrb r2, [r1, 0x8] - movs r0, 0 - str r0, [sp] - ldr r0, _0809FD54 @ =CB2_ReturnToFieldWithOpenMenu - str r0, [sp, 0x4] - movs r0, 0x4 - movs r3, 0 - bl DoNamingScreen - add sp, 0x8 - pop {r0} - bx r0 - .align 2, 0 -_0809FD50: .4byte gSaveBlock2Ptr -_0809FD54: .4byte CB2_ReturnToFieldWithOpenMenu - thumb_func_end sub_809FD30 - - .align 2, 0 @ Don't pad with nop. |