summaryrefslogtreecommitdiff
path: root/asm
diff options
context:
space:
mode:
Diffstat (limited to 'asm')
-rw-r--r--asm/pokedex.s5073
1 files changed, 0 insertions, 5073 deletions
diff --git a/asm/pokedex.s b/asm/pokedex.s
deleted file mode 100644
index 5dc45c766..000000000
--- a/asm/pokedex.s
+++ /dev/null
@@ -1,5073 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start sub_80BFD0C
-sub_80BFD0C: @ 80BFD0C
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- movs r0, 0x1
- bl GetBgTilemapBuffer
- adds r7, r0, 0
- movs r1, 0
-_080BFD22:
- lsls r0, r1, 3
- subs r0, r1
- adds r0, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- movs r3, 0x80
- lsls r3, 7
- cmp r1, r8
- bne _080BFD38
- movs r3, 0x80
- lsls r3, 6
-_080BFD38:
- movs r2, 0
- adds r6, r1, 0x1
- ldr r4, =0x00000fff
-_080BFD3E:
- adds r1, r5, r2
- lsls r1, 1
- adds r1, r7
- ldrh r0, [r1]
- ands r0, r4
- orrs r0, r3
- strh r0, [r1]
- adds r1, 0x40
- ldrh r0, [r1]
- ands r0, r4
- orrs r0, r3
- strh r0, [r1]
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0x6
- bls _080BFD3E
- lsls r0, r6, 24
- lsrs r1, r0, 24
- cmp r1, 0x3
- bls _080BFD22
- movs r0, 0x1
- bl CopyBgTilemapBufferToVram
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80BFD0C
-
- thumb_func_start sub_80BFD7C
-sub_80BFD7C: @ 80BFD7C
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- movs r0, 0x1
- bl GetBgTilemapBuffer
- adds r7, r0, 0
- movs r1, 0
-_080BFD92:
- lsls r0, r1, 3
- subs r0, r1
- adds r0, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
- cmp r1, r8
- beq _080BFDA4
- cmp r1, 0x3
- bne _080BFDAA
-_080BFDA4:
- movs r3, 0x80
- lsls r3, 6
- b _080BFDAE
-_080BFDAA:
- movs r3, 0x80
- lsls r3, 7
-_080BFDAE:
- movs r2, 0
- adds r5, r1, 0x1
- ldr r4, =0x00000fff
-_080BFDB4:
- adds r1, r6, r2
- lsls r1, 1
- adds r1, r7
- ldrh r0, [r1]
- ands r0, r4
- orrs r0, r3
- strh r0, [r1]
- adds r1, 0x40
- ldrh r0, [r1]
- ands r0, r4
- orrs r0, r3
- strh r0, [r1]
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0x6
- bls _080BFDB4
- lsls r0, r5, 24
- lsrs r1, r0, 24
- cmp r1, 0x3
- bls _080BFD92
- movs r0, 0x1
- bl CopyBgTilemapBufferToVram
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80BFD7C
-
- thumb_func_start CreateDexDisplayMonDataTask
-CreateDexDisplayMonDataTask: @ 80BFDF4
- push {r4-r6,lr}
- adds r4, r0, 0
- adds r5, r1, 0
- adds r6, r2, 0
- lsls r4, 16
- lsrs r4, 16
- ldr r0, =sub_80BFE38
- movs r1, 0
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- movs r2, 0
- strh r2, [r1, 0x8]
- strh r4, [r1, 0xA]
- strh r5, [r1, 0x20]
- lsrs r5, 16
- strh r5, [r1, 0x22]
- strh r6, [r1, 0x24]
- lsrs r6, 16
- strh r6, [r1, 0x26]
- pop {r4-r6}
- pop {r1}
- bx r1
- .pool
- thumb_func_end CreateDexDisplayMonDataTask
-
- thumb_func_start sub_80BFE38
-sub_80BFE38: @ 80BFE38
- push {r4-r6,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- ldrh r4, [r0, 0xA]
- movs r2, 0x8
- ldrsh r0, [r0, r2]
- adds r2, r1, 0
- cmp r0, 0x6
- bhi _080BFE84
- lsls r0, 2
- ldr r1, =_080BFE68
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080BFE68:
- .4byte _080BFE84
- .4byte _080BFF0C
- .4byte _080BFF78
- .4byte _080BFF82
- .4byte _080BFFA8
- .4byte _080C0000
- .4byte _080C0044
-_080BFE84:
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _080BFE92
- b _080C0074
-_080BFE92:
- ldr r1, =gUnknown_030060B4
- ldr r0, =gMain
- ldr r0, [r0, 0xC]
- str r0, [r1]
- movs r0, 0
- bl SetVBlankCallback
- movs r0, 0x80
- lsls r0, 1
- bl sub_80C09B0
- movs r0, 0
- bl ResetBgsAndClearDma3BusyFlags
- ldr r1, =gUnknown_0856E668
- movs r0, 0
- movs r2, 0x2
- bl InitBgsFromTemplates
- movs r4, 0x80
- lsls r4, 4
- adds r0, r4, 0
- bl AllocZeroed
- adds r1, r0, 0
- movs r0, 0x3
- bl SetBgTilemapBuffer
- adds r0, r4, 0
- bl AllocZeroed
- adds r1, r0, 0
- movs r0, 0x2
- bl SetBgTilemapBuffer
- ldr r0, =gUnknown_0856E670
- bl InitWindows
- bl DeactivateAllTextPrinters
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- movs r1, 0x1
- strh r1, [r0, 0x8]
- b _080C0074
- .pool
-_080BFF0C:
- ldr r1, =gPokedexMenu_Gfx
- movs r2, 0x80
- lsls r2, 6
- movs r0, 0
- str r0, [sp]
- movs r0, 0x3
- movs r3, 0
- bl copy_decompressed_tile_data_to_vram_autofree
- ldr r1, =gUnknown_08DC3080
- movs r0, 0x3
- movs r2, 0
- movs r3, 0
- bl CopyToBgTilemapBuffer
- movs r0, 0
- movs r1, 0
- bl FillWindowPixelBuffer
- movs r0, 0
- bl PutWindowTilemap
- movs r0, 0x1
- bl PutWindowTilemap
- ldr r0, =gTasks
- lsls r4, r5, 2
- adds r4, r5
- lsls r4, 3
- adds r4, r0
- ldrh r1, [r4, 0xA]
- movs r0, 0x1
- bl sub_80C0D30
- movs r0, 0x1
- movs r1, 0x2
- bl CopyWindowToVram
- bl ResetPaletteFade
- movs r0, 0
- bl sub_80BC844
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- b _080C0074
- .pool
-_080BFF78:
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r2
- b _080C0038
-_080BFF82:
- bl IsNationalPokedexEnabled
- adds r1, r0, 0
- adds r0, r4, 0
- movs r2, 0x1
- movs r3, 0x1
- bl sub_80C020C
- movs r0, 0
- movs r1, 0x3
- bl CopyWindowToVram
- movs r0, 0x2
- bl CopyBgTilemapBufferToVram
- movs r0, 0x3
- bl CopyBgTilemapBufferToVram
- b _080C002E
-_080BFFA8:
- adds r0, r4, 0
- movs r1, 0x30
- movs r2, 0x38
- movs r3, 0
- bl sub_80C0E9C
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, =gSprites
- lsls r1, r4, 4
- adds r1, r4
- lsls r1, 2
- adds r1, r0
- ldrb r2, [r1, 0x5]
- movs r0, 0xD
- negs r0, r0
- ands r0, r2
- strb r0, [r1, 0x5]
- movs r0, 0x1
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0x10
- movs r3, 0
- bl BeginNormalPaletteFade
- ldr r0, =gUnknown_030060B4
- ldr r0, [r0]
- bl SetVBlankCallback
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- strh r4, [r0, 0xE]
- b _080C0038
- .pool
-_080C0000:
- movs r0, 0x50
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x52
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x54
- movs r1, 0
- bl SetGpuReg
- movs r1, 0x82
- lsls r1, 5
- movs r0, 0
- bl SetGpuReg
- movs r0, 0x2
- bl ShowBg
- movs r0, 0x3
- bl ShowBg
-_080C002E:
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
-_080C0038:
- ldrh r1, [r0, 0x8]
- adds r1, 0x1
- strh r1, [r0, 0x8]
- b _080C0074
- .pool
-_080C0044:
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- lsls r0, 24
- lsrs r6, r0, 24
- cmp r6, 0
- bne _080C0074
- adds r0, r4, 0
- bl NationalPokedexNumToSpecies
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0
- bl PlayCry1
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- strh r6, [r0, 0xC]
- ldr r1, =sub_80C0088
- str r1, [r0]
-_080C0074:
- add sp, 0x4
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80BFE38
-
- thumb_func_start sub_80C0088
-sub_80C0088: @ 80C0088
- push {r4,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x3
- ands r0, r1
- cmp r0, 0
- beq _080C00E8
- ldr r0, =0x0000ffff
- movs r1, 0
- str r1, [sp]
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r3, =gSprites
- ldr r0, =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- movs r0, 0xE
- ldrsh r2, [r1, r0]
- lsls r0, r2, 4
- adds r0, r2
- lsls r0, 2
- adds r3, 0x1C
- adds r0, r3
- ldr r2, =sub_80C01CC
- str r2, [r0]
- ldr r0, =blockset_load_palette_to_gpu
- str r0, [r1]
- b _080C011E
- .pool
-_080C00E8:
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldrh r1, [r0, 0xC]
- adds r1, 0x1
- strh r1, [r0, 0xC]
- movs r0, 0x10
- ands r1, r0
- cmp r1, 0
- beq _080C0114
- ldr r0, =gPokedexText_Pal + 2
- movs r1, 0x31
- movs r2, 0xE
- bl LoadPalette
- b _080C011E
- .pool
-_080C0114:
- ldr r0, =gPokedexCaughtScreenFade_Pal + 0x2
- movs r1, 0x31
- movs r2, 0xE
- bl LoadPalette
-_080C011E:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80C0088
-
- thumb_func_start blockset_load_palette_to_gpu
-blockset_load_palette_to_gpu: @ 80C012C
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _080C01BA
- movs r1, 0x82
- lsls r1, 5
- movs r0, 0
- bl SetGpuReg
- bl FreeAllWindowBuffers
- movs r0, 0x2
- bl GetBgTilemapBuffer
- cmp r0, 0
- beq _080C015A
- bl Free
-_080C015A:
- movs r0, 0x3
- bl GetBgTilemapBuffer
- cmp r0, 0
- beq _080C0168
- bl Free
-_080C0168:
- ldr r0, =gTasks
- lsls r4, r6, 2
- adds r4, r6
- lsls r4, 3
- adds r4, r0
- ldrh r0, [r4, 0xA]
- bl NationalPokedexNumToSpecies
- lsls r0, 16
- lsrs r0, 16
- ldrh r1, [r4, 0x22]
- lsls r1, 16
- ldrh r2, [r4, 0x20]
- orrs r1, r2
- ldrh r2, [r4, 0x26]
- lsls r2, 16
- ldrh r3, [r4, 0x24]
- orrs r2, r3
- ldr r5, =gSprites
- movs r3, 0xE
- ldrsh r4, [r4, r3]
- lsls r3, r4, 4
- adds r3, r4
- lsls r3, 2
- adds r3, r5
- ldrb r4, [r3, 0x5]
- lsrs r4, 4
- bl GetFrontSpritePalFromSpeciesAndPersonality
- lsls r4, 4
- movs r2, 0x80
- lsls r2, 1
- adds r1, r2, 0
- orrs r4, r1
- adds r1, r4, 0
- movs r2, 0x20
- bl LoadCompressedPalette
- adds r0, r6, 0
- bl DestroyTask
-_080C01BA:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end blockset_load_palette_to_gpu
-
- thumb_func_start sub_80C01CC
-sub_80C01CC: @ 80C01CC
- push {lr}
- adds r1, r0, 0
- ldrh r2, [r1, 0x20]
- movs r3, 0x20
- ldrsh r0, [r1, r3]
- cmp r0, 0x77
- bgt _080C01DE
- adds r0, r2, 0x2
- strh r0, [r1, 0x20]
-_080C01DE:
- ldrh r2, [r1, 0x20]
- movs r3, 0x20
- ldrsh r0, [r1, r3]
- cmp r0, 0x78
- ble _080C01EC
- subs r0, r2, 0x2
- strh r0, [r1, 0x20]
-_080C01EC:
- ldrh r2, [r1, 0x22]
- movs r3, 0x22
- ldrsh r0, [r1, r3]
- cmp r0, 0x4F
- bgt _080C01FA
- adds r0, r2, 0x1
- strh r0, [r1, 0x22]
-_080C01FA:
- ldrh r2, [r1, 0x22]
- movs r3, 0x22
- ldrsh r0, [r1, r3]
- cmp r0, 0x50
- ble _080C0208
- subs r0, r2, 0x1
- strh r0, [r1, 0x22]
-_080C0208:
- pop {r0}
- bx r0
- thumb_func_end sub_80C01CC
-
- thumb_func_start sub_80C020C
-sub_80C020C: @ 80C020C
- push {r4-r7,lr}
- sub sp, 0x30
- adds r6, r0, 0
- adds r5, r1, 0
- adds r7, r2, 0
- cmp r3, 0
- beq _080C0234
- ldr r4, =gText_PokedexRegistration
- movs r0, 0x1
- adds r1, r4, 0
- movs r2, 0xF0
- bl GetStringCenterAlignXOffset
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- movs r2, 0
- bl sub_80BE8DC
-_080C0234:
- cmp r5, 0
- bne _080C024C
- lsls r4, r6, 16
- lsrs r0, r4, 16
- bl NationalToHoennOrder
- lsls r0, 16
- lsrs r5, r0, 16
- b _080C0250
- .pool
-_080C024C:
- adds r5, r6, 0
- lsls r4, r6, 16
-_080C0250:
- ldr r1, =gText_UnkCtrlF908Clear01
- mov r0, sp
- bl StringCopy
- adds r1, r5, 0
- movs r2, 0x2
- movs r3, 0x3
- bl ConvertIntToDecimalStringN
- mov r0, sp
- movs r1, 0x60
- movs r2, 0x19
- bl sub_80BE8DC
- lsrs r0, r4, 16
- bl NationalPokedexNumToSpecies
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, 0
- beq _080C028C
- movs r0, 0xB
- muls r1, r0
- ldr r0, =gSpeciesNames
- adds r0, r1, r0
- b _080C028E
- .pool
-_080C028C:
- ldr r0, =sText_TenDashes2
-_080C028E:
- movs r1, 0x84
- movs r2, 0x19
- bl sub_80BE8DC
- cmp r7, 0
- beq _080C02AC
- add r4, sp, 0x10
- adds r0, r6, 0
- adds r1, r4, 0
- bl CopyMonCategoryText
- adds r0, r4, 0
- b _080C02AE
- .pool
-_080C02AC:
- ldr r0, =gText_5MarksPokemon
-_080C02AE:
- movs r1, 0x64
- movs r2, 0x29
- bl sub_80BE8DC
- ldr r0, =gText_HTHeight
- movs r1, 0x60
- movs r2, 0x39
- bl sub_80BE8DC
- ldr r0, =gText_WTWeight
- movs r1, 0x60
- movs r2, 0x49
- bl sub_80BE8DC
- cmp r7, 0
- beq _080C02FC
- ldr r0, =gPokedexEntries
- lsls r4, r6, 5
- adds r4, r0
- ldrh r0, [r4, 0xC]
- movs r1, 0x81
- movs r2, 0x39
- bl sub_80C0354
- ldrh r0, [r4, 0xE]
- movs r1, 0x81
- movs r2, 0x49
- bl sub_80C0460
- b _080C0310
- .pool
-_080C02FC:
- ldr r0, =gText_UnkHeight
- movs r1, 0x81
- movs r2, 0x39
- bl sub_80BE8DC
- ldr r0, =gText_UnkWeight
- movs r1, 0x81
- movs r2, 0x49
- bl sub_80BE8DC
-_080C0310:
- cmp r7, 0
- beq _080C032C
- ldr r0, =gPokedexEntries
- lsls r1, r6, 5
- adds r0, 0x10
- adds r1, r0
- ldr r4, [r1]
- b _080C032E
- .pool
-_080C032C:
- ldr r4, =gUnknown_0855D30C
-_080C032E:
- movs r0, 0x1
- adds r1, r4, 0
- movs r2, 0xF0
- bl GetStringCenterAlignXOffset
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- movs r2, 0x5F
- bl sub_80BE8DC
- add sp, 0x30
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80C020C
-
- thumb_func_start sub_80C0354
-sub_80C0354: @ 80C0354
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0x10
- lsls r0, 16
- lsrs r0, 16
- lsls r1, 24
- lsrs r1, 24
- mov r9, r1
- lsls r2, 24
- lsrs r2, 24
- mov r8, r2
- ldr r1, =0x00002710
- muls r0, r1
- movs r1, 0xFE
- bl __divsi3
- adds r7, r0, 0
- movs r1, 0xA
- bl __umodsi3
- cmp r0, 0x4
- bls _080C0386
- adds r7, 0xA
-_080C0386:
- adds r0, r7, 0
- movs r1, 0x78
- bl __udivsi3
- adds r6, r0, 0
- lsls r0, r6, 4
- subs r0, r6
- lsls r0, 3
- subs r0, r7, r0
- movs r1, 0xA
- bl __udivsi3
- adds r7, r0, 0
- mov r1, sp
- movs r0, 0xFC
- strb r0, [r1]
- adds r1, 0x1
- movs r0, 0x13
- strb r0, [r1]
- adds r0, r6, 0
- movs r1, 0xA
- bl __udivsi3
- adds r2, r0, 0
- cmp r2, 0
- bne _080C03D4
- mov r1, sp
- adds r1, 0x2
- movs r0, 0x12
- strb r0, [r1]
- movs r5, 0x4
- adds r1, 0x1
- adds r0, r6, 0
- adds r0, 0xA1
- strb r0, [r1]
- b _080C03F4
- .pool
-_080C03D4:
- mov r1, sp
- adds r1, 0x2
- movs r0, 0xC
- strb r0, [r1]
- adds r1, 0x1
- adds r0, r2, 0
- adds r0, 0xA1
- strb r0, [r1]
- movs r5, 0x5
- add r4, sp, 0x4
- adds r0, r6, 0
- movs r1, 0xA
- bl __umodsi3
- adds r0, 0xA1
- strb r0, [r4]
-_080C03F4:
- adds r1, r5, 0
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- adds r2, r5, 0
- add r1, sp
- movs r0, 0xB4
- strb r0, [r1]
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- adds r6, r5, 0
- mov r0, sp
- adds r4, r0, r2
- adds r0, r7, 0
- movs r1, 0xA
- bl __udivsi3
- adds r0, 0xA1
- strb r0, [r4]
- adds r0, r6, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- mov r1, sp
- adds r4, r1, r6
- adds r0, r7, 0
- movs r1, 0xA
- bl __umodsi3
- adds r0, 0xA1
- strb r0, [r4]
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r0, 24
- mov r1, sp
- adds r2, r1, r5
- movs r1, 0xB2
- strb r1, [r2]
- mov r2, sp
- adds r1, r2, r0
- movs r0, 0xFF
- strb r0, [r1]
- mov r0, sp
- mov r1, r9
- mov r2, r8
- bl sub_80BE8DC
- add sp, 0x10
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_80C0354
-
- thumb_func_start sub_80C0460
-sub_80C0460: @ 80C0460
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x14
- lsls r0, 16
- lsrs r0, 16
- lsls r1, 24
- lsrs r1, 24
- mov r10, r1
- lsls r2, 24
- lsrs r2, 24
- str r2, [sp, 0x10]
- ldr r5, =0x000186a0
- muls r0, r5
- ldr r1, =0x000011b8
- bl __divsi3
- adds r7, r0, 0
- movs r1, 0xA
- bl __umodsi3
- cmp r0, 0x4
- bls _080C0494
- adds r7, 0xA
-_080C0494:
- movs r0, 0
- mov r8, r0
- mov r4, sp
- adds r0, r7, 0
- adds r1, r5, 0
- bl __udivsi3
- adds r0, 0xA1
- strb r0, [r4]
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xA1
- bne _080C04C0
- movs r6, 0x1
- mov r1, sp
- movs r0, 0x77
- strb r0, [r1]
- b _080C04C6
- .pool
-_080C04C0:
- movs r1, 0x1
- mov r8, r1
- movs r6, 0x1
-_080C04C6:
- ldr r1, =0x000186a0
- adds r0, r7, 0
- bl __umodsi3
- adds r7, r0, 0
- mov r4, sp
- adds r4, 0x1
- ldr r1, =0x00002710
- bl __udivsi3
- adds r0, 0xA1
- strb r0, [r4]
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xA1
- bne _080C0504
- mov r2, r8
- cmp r2, 0
- bne _080C0504
- adds r1, r6, 0
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
- add r1, sp
- movs r0, 0x77
- strb r0, [r1]
- b _080C050E
- .pool
-_080C0504:
- movs r3, 0x1
- mov r8, r3
- adds r0, r6, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
-_080C050E:
- ldr r1, =0x00002710
- adds r0, r7, 0
- bl __umodsi3
- adds r7, r0, 0
- mov r0, sp
- adds r4, r0, r6
- movs r1, 0xFA
- lsls r1, 2
- adds r0, r7, 0
- bl __udivsi3
- adds r0, 0xA1
- strb r0, [r4]
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xA1
- bne _080C054C
- mov r1, r8
- cmp r1, 0
- bne _080C054C
- adds r1, r6, 0
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
- add r1, sp
- movs r0, 0x77
- strb r0, [r1]
- b _080C0552
- .pool
-_080C054C:
- adds r0, r6, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
-_080C0552:
- movs r1, 0xFA
- lsls r1, 2
- adds r0, r7, 0
- bl __umodsi3
- adds r7, r0, 0
- adds r1, r6, 0
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
- adds r5, r6, 0
- mov r2, sp
- adds r4, r2, r1
- adds r0, r7, 0
- movs r1, 0x64
- bl __udivsi3
- adds r0, 0xA1
- movs r3, 0
- mov r9, r3
- strb r0, [r4]
- adds r0, r7, 0
- movs r1, 0x64
- bl __umodsi3
- adds r7, r0, 0
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
- adds r1, r6, 0
- mov r2, sp
- adds r0, r2, r5
- movs r3, 0xAD
- mov r8, r3
- mov r2, r8
- strb r2, [r0]
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
- adds r5, r6, 0
- mov r3, sp
- adds r4, r3, r1
- adds r0, r7, 0
- movs r1, 0xA
- bl __udivsi3
- adds r0, 0xA1
- strb r0, [r4]
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
- adds r1, r6, 0
- mov r2, sp
- adds r0, r2, r5
- mov r3, r9
- strb r3, [r0]
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
- adds r2, r6, 0
- add r1, sp
- movs r0, 0xE0
- strb r0, [r1]
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
- adds r3, r6, 0
- mov r0, sp
- adds r1, r0, r2
- movs r0, 0xD6
- strb r0, [r1]
- adds r0, r3, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
- adds r2, r6, 0
- mov r0, sp
- adds r1, r0, r3
- movs r0, 0xE7
- strb r0, [r1]
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r0, 24
- mov r3, sp
- adds r1, r3, r2
- mov r2, r8
- strb r2, [r1]
- adds r1, r3, r0
- movs r0, 0xFF
- strb r0, [r1]
- mov r0, sp
- mov r1, r10
- ldr r2, [sp, 0x10]
- bl sub_80BE8DC
- add sp, 0x14
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_80C0460
-
- thumb_func_start sub_80C0620
-sub_80C0620: @ 80C0620
- lsls r0, 16
- lsrs r0, 11
- ldr r1, =gPokedexEntries
- adds r0, r1
- bx lr
- .pool
- thumb_func_end sub_80C0620
-
- thumb_func_start GetPokedexHeightWeight
-GetPokedexHeightWeight: @ 80C0630
- push {lr}
- lsls r0, 16
- lsrs r2, r0, 16
- lsls r1, 24
- lsrs r1, 24
- cmp r1, 0
- beq _080C0646
- cmp r1, 0x1
- beq _080C0654
- movs r0, 0x1
- b _080C065C
-_080C0646:
- ldr r0, =gPokedexEntries
- lsls r1, r2, 5
- adds r1, r0
- ldrh r0, [r1, 0xC]
- b _080C065C
- .pool
-_080C0654:
- ldr r0, =gPokedexEntries
- lsls r1, r2, 5
- adds r1, r0
- ldrh r0, [r1, 0xE]
-_080C065C:
- pop {r1}
- bx r1
- .pool
- thumb_func_end GetPokedexHeightWeight
-
- thumb_func_start GetSetPokedexFlag
-@ u8 GetSetPokedexFlag(u16 nationalPokedexNum, u8 op)
-GetSetPokedexFlag: @ 80C0664
- push {r4-r7,lr}
- lsls r0, 16
- lsls r1, 24
- lsrs r2, r1, 24
- adds r3, r2, 0
- ldr r1, =0xffff0000
- adds r0, r1
- lsrs r1, r0, 16
- lsrs r0, 19
- lsls r0, 24
- lsrs r4, r0, 24
- movs r0, 0x7
- ands r1, r0
- movs r0, 0x80
- lsls r0, 17
- lsls r0, r1
- lsrs r5, r0, 24
- movs r6, 0
- cmp r2, 0x1
- beq _080C06FC
- cmp r2, 0x1
- bgt _080C069C
- cmp r2, 0
- beq _080C06AA
- b _080C07E8
- .pool
-_080C069C:
- cmp r3, 0x2
- bne _080C06A2
- b _080C079C
-_080C06A2:
- cmp r3, 0x3
- bne _080C06A8
- b _080C07D8
-_080C06A8:
- b _080C07E8
-_080C06AA:
- ldr r1, =gSaveBlock2Ptr
- ldr r0, [r1]
- adds r0, 0x5C
- adds r0, r4
- ldrb r2, [r0]
- ands r2, r5
- adds r7, r1, 0
- cmp r2, 0
- bne _080C06BE
- b _080C07E8
-_080C06BE:
- ldr r0, =gSaveBlock1Ptr
- ldr r3, [r0]
- ldr r6, =0x00000988
- adds r1, r3, r6
- adds r1, r4
- ldrb r1, [r1]
- ands r1, r5
- adds r6, r0, 0
- cmp r2, r1
- bne _080C06E0
- ldr r1, =0x00003b24
- adds r0, r3, r1
- adds r0, r4
- ldrb r0, [r0]
- ands r0, r5
- cmp r2, r0
- beq _080C073E
-_080C06E0:
- ldr r1, [r7]
- adds r1, 0x5C
- adds r1, r4
- mvns r3, r5
- b _080C076A
- .pool
-_080C06FC:
- ldr r1, =gSaveBlock2Ptr
- ldr r3, [r1]
- adds r0, r3, 0
- adds r0, 0x28
- adds r0, r4
- ldrb r2, [r0]
- ands r2, r5
- adds r7, r1, 0
- cmp r2, 0
- beq _080C07E8
- adds r0, r3, 0
- adds r0, 0x5C
- adds r0, r4
- ldrb r0, [r0]
- ands r0, r5
- ldr r6, =gSaveBlock1Ptr
- cmp r2, r0
- bne _080C0754
- ldr r1, [r6]
- ldr r3, =0x00000988
- adds r0, r1, r3
- adds r0, r4
- ldrb r0, [r0]
- ands r0, r5
- cmp r2, r0
- bne _080C0754
- ldr r3, =0x00003b24
- adds r0, r1, r3
- adds r0, r4
- ldrb r0, [r0]
- ands r0, r5
- cmp r2, r0
- bne _080C0754
-_080C073E:
- movs r6, 0x1
- b _080C07E8
- .pool
-_080C0754:
- ldr r1, [r7]
- adds r1, 0x28
- adds r1, r4
- mvns r3, r5
- ldrb r2, [r1]
- adds r0, r3, 0
- ands r0, r2
- strb r0, [r1]
- ldr r1, [r7]
- adds r1, 0x5C
- adds r1, r4
-_080C076A:
- ldrb r2, [r1]
- adds r0, r3, 0
- ands r0, r2
- strb r0, [r1]
- ldr r1, [r6]
- ldr r0, =0x00000988
- adds r1, r0
- adds r1, r4
- ldrb r2, [r1]
- adds r0, r3, 0
- ands r0, r2
- strb r0, [r1]
- ldr r0, [r6]
- ldr r1, =0x00003b24
- adds r0, r1
- adds r0, r4
- ldrb r1, [r0]
- ands r3, r1
- strb r3, [r0]
- movs r6, 0
- b _080C07E8
- .pool
-_080C079C:
- ldr r0, =gSaveBlock2Ptr
- ldr r1, [r0]
- adds r1, 0x5C
- adds r1, r4
- ldrb r2, [r1]
- adds r0, r5, 0
- orrs r0, r2
- strb r0, [r1]
- ldr r3, =gSaveBlock1Ptr
- ldr r1, [r3]
- ldr r0, =0x00000988
- adds r1, r0
- adds r1, r4
- ldrb r2, [r1]
- adds r0, r5, 0
- orrs r0, r2
- strb r0, [r1]
- ldr r1, [r3]
- ldr r3, =0x00003b24
- adds r1, r3
- b _080C07DE
- .pool
-_080C07D8:
- ldr r0, =gSaveBlock2Ptr
- ldr r1, [r0]
- adds r1, 0x28
-_080C07DE:
- adds r1, r4
- ldrb r2, [r1]
- adds r0, r5, 0
- orrs r0, r2
- strb r0, [r1]
-_080C07E8:
- adds r0, r6, 0
- pop {r4-r7}
- pop {r1}
- bx r1
- .pool
- thumb_func_end GetSetPokedexFlag
-
- thumb_func_start GetNationalPokedexCount
-GetNationalPokedexCount: @ 80C07F4
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- movs r5, 0
- movs r0, 0
- ldr r7, =0x00000181
-_080C0800:
- cmp r6, 0
- beq _080C0810
- cmp r6, 0x1
- beq _080C081A
- adds r4, r0, 0x1
- b _080C0832
- .pool
-_080C0810:
- adds r4, r0, 0x1
- lsls r0, r4, 16
- lsrs r0, 16
- movs r1, 0
- b _080C0822
-_080C081A:
- adds r4, r0, 0x1
- lsls r0, r4, 16
- lsrs r0, 16
- movs r1, 0x1
-_080C0822:
- bl GetSetPokedexFlag
- lsls r0, 24
- cmp r0, 0
- beq _080C0832
- adds r0, r5, 0x1
- lsls r0, 16
- lsrs r5, r0, 16
-_080C0832:
- lsls r0, r4, 16
- lsrs r0, 16
- cmp r0, r7
- bls _080C0800
- adds r0, r5, 0
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end GetNationalPokedexCount
-
- thumb_func_start GetHoennPokedexCount
-GetHoennPokedexCount: @ 80C0844
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- movs r5, 0
- movs r0, 0
-_080C084E:
- cmp r6, 0
- beq _080C085A
- cmp r6, 0x1
- beq _080C086C
- adds r4, r0, 0x1
- b _080C088C
-_080C085A:
- adds r4, r0, 0x1
- lsls r0, r4, 16
- lsrs r0, 16
- bl HoennToNationalOrder
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0
- b _080C087C
-_080C086C:
- adds r4, r0, 0x1
- lsls r0, r4, 16
- lsrs r0, 16
- bl HoennToNationalOrder
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x1
-_080C087C:
- bl GetSetPokedexFlag
- lsls r0, 24
- cmp r0, 0
- beq _080C088C
- adds r0, r5, 0x1
- lsls r0, 16
- lsrs r5, r0, 16
-_080C088C:
- lsls r0, r4, 16
- lsrs r0, 16
- cmp r0, 0xC9
- bls _080C084E
- adds r0, r5, 0
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end GetHoennPokedexCount
-
- thumb_func_start sub_80C089C
-sub_80C089C: @ 80C089C
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- movs r5, 0
- movs r0, 0
-_080C08A6:
- cmp r6, 0
- beq _080C08B2
- cmp r6, 0x1
- beq _080C08BC
- adds r4, r0, 0x1
- b _080C08D4
-_080C08B2:
- adds r4, r0, 0x1
- lsls r0, r4, 16
- lsrs r0, 16
- movs r1, 0
- b _080C08C4
-_080C08BC:
- adds r4, r0, 0x1
- lsls r0, r4, 16
- lsrs r0, 16
- movs r1, 0x1
-_080C08C4:
- bl GetSetPokedexFlag
- lsls r0, 24
- cmp r0, 0
- beq _080C08D4
- adds r0, r5, 0x1
- lsls r0, 16
- lsrs r5, r0, 16
-_080C08D4:
- lsls r0, r4, 16
- lsrs r0, 16
- cmp r0, 0x96
- bls _080C08A6
- adds r0, r5, 0
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_80C089C
-
- thumb_func_start sub_80C08E4
-sub_80C08E4: @ 80C08E4
- push {r4,lr}
- movs r0, 0
-_080C08E8:
- adds r0, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- adds r0, r4, 0
- bl HoennToNationalOrder
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x1
- bl GetSetPokedexFlag
- lsls r0, 24
- cmp r0, 0
- bne _080C0908
- movs r0, 0
- b _080C0910
-_080C0908:
- adds r0, r4, 0
- cmp r0, 0xC7
- bls _080C08E8
- movs r0, 0x1
-_080C0910:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80C08E4
-
- thumb_func_start sub_80C0918
-sub_80C0918: @ 80C0918
- push {r4,lr}
- movs r0, 0
-_080C091C:
- adds r0, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- adds r0, r4, 0
- movs r1, 0x1
- bl GetSetPokedexFlag
- lsls r0, 24
- cmp r0, 0
- bne _080C0934
- movs r0, 0
- b _080C093C
-_080C0934:
- adds r0, r4, 0
- cmp r0, 0x95
- bls _080C091C
- movs r0, 0x1
-_080C093C:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80C0918
-
- thumb_func_start sub_80C0944
-sub_80C0944: @ 80C0944
- push {r4,r5,lr}
- movs r0, 0
-_080C0948:
- adds r0, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- adds r0, r4, 0
- movs r1, 0x1
- bl GetSetPokedexFlag
- lsls r0, 24
- cmp r0, 0
- beq _080C0996
- adds r0, r4, 0
- cmp r0, 0x95
- bls _080C0948
- movs r0, 0x97
-_080C0964:
- adds r0, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- adds r0, r4, 0
- movs r1, 0x1
- bl GetSetPokedexFlag
- lsls r0, 24
- cmp r0, 0
- beq _080C0996
- adds r0, r4, 0
- cmp r0, 0xF7
- bls _080C0964
- movs r0, 0xFB
- ldr r5, =0x0000017f
-_080C0982:
- adds r0, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- adds r0, r4, 0
- movs r1, 0x1
- bl GetSetPokedexFlag
- lsls r0, 24
- cmp r0, 0
- bne _080C09A0
-_080C0996:
- movs r0, 0
- b _080C09A8
- .pool
-_080C09A0:
- adds r0, r4, 0
- cmp r0, r5
- bls _080C0982
- movs r0, 0x1
-_080C09A8:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_80C0944
-
- thumb_func_start sub_80C09B0
-sub_80C09B0: @ 80C09B0
- push {r4,r5,lr}
- lsls r0, 16
- lsrs r4, r0, 16
- adds r5, r4, 0
- movs r1, 0x80
- lsls r1, 1
- adds r0, r4, 0
- ands r0, r1
- cmp r0, 0
- bne _080C09E2
- movs r0, 0
- bl ClearGpuRegBits
- movs r0, 0x8
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x10
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x12
- movs r1, 0
- bl SetGpuReg
-_080C09E2:
- movs r1, 0x80
- lsls r1, 2
- adds r0, r4, 0
- ands r0, r1
- cmp r0, 0
- bne _080C0A0C
- movs r0, 0
- bl ClearGpuRegBits
- movs r0, 0xA
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x14
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x16
- movs r1, 0
- bl SetGpuReg
-_080C0A0C:
- movs r1, 0x80
- lsls r1, 3
- adds r0, r4, 0
- ands r0, r1
- cmp r0, 0
- bne _080C0A36
- movs r0, 0
- bl ClearGpuRegBits
- movs r0, 0xC
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x18
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x1A
- movs r1, 0
- bl SetGpuReg
-_080C0A36:
- movs r1, 0x80
- lsls r1, 4
- adds r0, r4, 0
- ands r0, r1
- cmp r0, 0
- bne _080C0A60
- movs r0, 0
- bl ClearGpuRegBits
- movs r0, 0xE
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x1C
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x1E
- movs r1, 0
- bl SetGpuReg
-_080C0A60:
- movs r1, 0x80
- lsls r1, 5
- ands r5, r1
- cmp r5, 0
- bne _080C0A7E
- movs r0, 0
- bl ClearGpuRegBits
- bl ResetSpriteData
- bl FreeAllSpritePalettes
- ldr r1, =gReservedSpritePaletteCount
- movs r0, 0x8
- strb r0, [r1]
-_080C0A7E:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80C09B0
-
- thumb_func_start sub_80C0A88
-sub_80C0A88: @ 80C0A88
- push {r4-r6,lr}
- sub sp, 0x18
- lsls r0, 24
- lsrs r0, 24
- lsls r2, 24
- lsrs r2, 24
- lsls r3, 24
- lsrs r3, 24
- add r4, sp, 0x14
- movs r6, 0
- strb r6, [r4]
- adds r5, r4, 0
- movs r4, 0xF
- strb r4, [r5, 0x1]
- movs r4, 0x3
- strb r4, [r5, 0x2]
- str r6, [sp]
- str r6, [sp, 0x4]
- str r5, [sp, 0x8]
- subs r4, 0x4
- str r4, [sp, 0xC]
- str r1, [sp, 0x10]
- movs r1, 0x1
- bl AddTextPrinterParameterized2
- add sp, 0x18
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_80C0A88
-
- thumb_func_start sub_80C0AC4
-sub_80C0AC4: @ 80C0AC4
- push {r4-r6,lr}
- mov r6, r9
- mov r5, r8
- push {r5,r6}
- sub sp, 0x4
- adds r6, r0, 0
- adds r4, r1, 0
- mov r8, r2
- mov r9, r3
- lsls r6, 24
- lsrs r6, 24
- lsls r4, 16
- lsrs r4, 16
- mov r0, r8
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- mov r0, r9
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
- mov r5, sp
- adds r0, r4, 0
- movs r1, 0x64
- bl __udivsi3
- adds r0, 0xA1
- strb r0, [r5]
- mov r5, sp
- adds r0, r4, 0
- movs r1, 0x64
- bl __umodsi3
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- adds r0, r4, 0
- movs r1, 0xA
- bl __udivsi3
- adds r0, 0xA1
- strb r0, [r5, 0x1]
- mov r5, sp
- adds r0, r4, 0
- movs r1, 0xA
- bl __umodsi3
- adds r0, 0xA1
- strb r0, [r5, 0x2]
- mov r1, sp
- movs r0, 0xFF
- strb r0, [r1, 0x3]
- adds r0, r6, 0
- mov r2, r8
- mov r3, r9
- bl sub_80C0A88
- add sp, 0x4
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_80C0AC4
-
- thumb_func_start sub_80C0B44
-sub_80C0B44: @ 80C0B44
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0xC
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- lsls r1, 16
- lsrs r5, r1, 16
- lsls r2, 24
- lsrs r7, r2, 24
- lsls r3, 24
- lsrs r6, r3, 24
- movs r4, 0
- movs r2, 0xFF
-_080C0B62:
- mov r1, sp
- adds r0, r1, r4
- ldrb r1, [r0]
- orrs r1, r2
- strb r1, [r0]
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0xA
- bls _080C0B62
- adds r0, r5, 0
- bl NationalPokedexNumToSpecies
- adds r5, r0, 0
- cmp r5, 0
- beq _080C0BC0
- movs r4, 0
- ldr r2, =gSpeciesNames
- movs r0, 0xB
- adds r1, r5, 0
- muls r1, r0
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0xFF
- beq _080C0BD4
- adds r3, r2, 0
- adds r2, r1, 0
-_080C0B98:
- mov r0, sp
- adds r1, r0, r4
- adds r0, r4, r2
- adds r0, r3
- ldrb r0, [r0]
- strb r0, [r1]
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- adds r0, r4, r2
- adds r0, r3
- ldrb r0, [r0]
- cmp r0, 0xFF
- beq _080C0BD4
- cmp r4, 0x9
- bls _080C0B98
- b _080C0BD4
- .pool
-_080C0BC0:
- movs r4, 0
- movs r1, 0xAE
-_080C0BC4:
- mov r2, sp
- adds r0, r2, r4
- strb r1, [r0]
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x4
- bls _080C0BC4
-_080C0BD4:
- mov r0, r8
- mov r1, sp
- adds r2, r7, 0
- adds r3, r6, 0
- bl sub_80C0A88
- adds r0, r4, 0
- add sp, 0xC
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_80C0B44
-
- thumb_func_start sub_80C0BF0
-sub_80C0BF0: @ 80C0BF0
- push {r4-r7,lr}
- sub sp, 0xC
- adds r4, r1, 0
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r2, 24
- lsrs r2, 24
- mov r12, r2
- lsls r3, 24
- lsrs r5, r3, 24
- movs r2, 0
- movs r1, 0
-_080C0C08:
- mov r3, sp
- adds r0, r3, r2
- strb r1, [r0]
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0xA
- bls _080C0C08
- movs r3, 0
- ldrb r0, [r4]
- cmp r0, 0
- beq _080C0C32
-_080C0C20:
- adds r0, r3, 0x1
- lsls r0, 24
- lsrs r3, r0, 24
- adds r0, r4, r3
- ldrb r0, [r0]
- cmp r0, 0
- beq _080C0C32
- cmp r3, 0xA
- bls _080C0C20
-_080C0C32:
- movs r2, 0
- cmp r2, r3
- bcs _080C0C52
-_080C0C38:
- adds r0, r2, 0
- adds r0, 0xB
- subs r0, r3
- mov r7, sp
- adds r1, r7, r0
- adds r0, r4, r2
- ldrb r0, [r0]
- strb r0, [r1]
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, r3
- bcc _080C0C38
-_080C0C52:
- mov r1, sp
- movs r0, 0xFF
- strb r0, [r1, 0xB]
- adds r0, r6, 0
- mov r2, r12
- adds r3, r5, 0
- bl sub_80C0A88
- add sp, 0xC
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_80C0BF0
-
- thumb_func_start sub_80C0C6C
-sub_80C0C6C: @ 80C0C6C
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x8
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- lsls r1, 16
- lsrs r4, r1, 16
- lsls r2, 24
- lsrs r7, r2, 24
- lsls r3, 24
- lsrs r6, r3, 24
- movs r5, 0
- movs r1, 0xFA
- lsls r1, 2
- adds r0, r4, 0
- bl __udivsi3
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0
- bne _080C0CA2
- mov r1, sp
- movs r0, 0x77
- strb r0, [r1]
- b _080C0CAA
-_080C0CA2:
- mov r1, sp
- adds r0, 0xA1
- strb r0, [r1]
- movs r5, 0x1
-_080C0CAA:
- movs r1, 0xFA
- lsls r1, 2
- adds r0, r4, 0
- bl __umodsi3
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x64
- bl __udivsi3
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0
- bne _080C0CD0
- cmp r5, 0
- bne _080C0CD0
- mov r1, sp
- movs r0, 0x77
- b _080C0CD4
-_080C0CD0:
- mov r1, sp
- adds r0, 0xA1
-_080C0CD4:
- strb r0, [r1, 0x1]
- mov r5, sp
- movs r1, 0xFA
- lsls r1, 2
- adds r0, r4, 0
- bl __umodsi3
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x64
- bl __umodsi3
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- adds r0, r4, 0
- movs r1, 0xA
- bl __udivsi3
- adds r0, 0xA1
- strb r0, [r5, 0x2]
- mov r1, sp
- movs r0, 0xAD
- strb r0, [r1, 0x3]
- mov r5, sp
- adds r0, r4, 0
- movs r1, 0xA
- bl __umodsi3
- adds r0, 0xA1
- strb r0, [r5, 0x4]
- mov r1, sp
- movs r0, 0xFF
- strb r0, [r1, 0x5]
- mov r0, r8
- adds r2, r7, 0
- adds r3, r6, 0
- bl sub_80C0A88
- add sp, 0x8
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_80C0C6C
-
- thumb_func_start sub_80C0D30
-sub_80C0D30: @ 80C0D30
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x80
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- lsls r1, 16
- lsrs r1, 16
- ldr r4, =gMonFootprintTable
- adds r0, r1, 0
- bl NationalPokedexNumToSpecies
- lsls r0, 16
- lsrs r0, 14
- adds r0, r4
- ldr r0, [r0]
- mov r12, r0
- movs r5, 0
- movs r1, 0
- movs r7, 0x2
-_080C0D5A:
- mov r2, r12
- adds r0, r2, r1
- ldrb r3, [r0]
- movs r4, 0
- adds r6, r1, 0x1
-_080C0D64:
- lsls r2, r4, 1
- adds r1, r3, 0
- asrs r1, r2
- movs r0, 0x1
- ands r1, r0
- negs r0, r1
- orrs r0, r1
- asrs r1, r0, 31
- ands r1, r7
- adds r0, r7, 0
- lsls r0, r2
- ands r0, r3
- cmp r0, 0
- beq _080C0D84
- movs r0, 0x20
- orrs r1, r0
-_080C0D84:
- mov r2, sp
- adds r0, r2, r5
- strb r1, [r0]
- adds r0, r5, 0x1
- lsls r0, 16
- lsrs r5, r0, 16
- adds r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- cmp r4, 0x3
- bls _080C0D64
- lsls r0, r6, 16
- lsrs r1, r0, 16
- cmp r1, 0x1F
- bls _080C0D5A
- mov r0, r8
- mov r1, sp
- movs r2, 0x80
- movs r3, 0
- bl CopyToWindowPixelBuffer
- add sp, 0x80
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80C0D30
-
- thumb_func_start sub_80C0DC0
-sub_80C0DC0: @ 80C0DC0
- push {r4,lr}
- lsls r0, 16
- lsls r1, 16
- lsrs r1, 16
- lsrs r0, 5
- ldr r2, =0x06000232
- adds r3, r0, r2
- movs r4, 0xF0
- lsls r4, 8
- adds r2, r1, r4
- strh r2, [r3]
- ldr r2, =0x06000234
- adds r3, r0, r2
- adds r4, 0x1
- adds r2, r1, r4
- strh r2, [r3]
- ldr r2, =0x06000272
- adds r3, r0, r2
- adds r4, 0x1
- adds r2, r1, r4
- strh r2, [r3]
- ldr r2, =0x06000274
- adds r0, r2
- adds r4, 0x1
- adds r1, r4
- strh r1, [r0]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80C0DC0
-
- thumb_func_start sub_80C0E0C
-sub_80C0E0C: @ 80C0E0C
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- adds r5, r4, 0
- lsls r1, 16
- lsrs r0, r1, 16
- lsls r2, 16
- lsrs r2, 16
- lsls r3, 16
- lsrs r3, 16
- cmp r4, 0x1
- beq _080C0E38
- cmp r4, 0x1
- bgt _080C0E2E
- cmp r4, 0
- beq _080C0E40
- b _080C0E60
-_080C0E2E:
- cmp r5, 0x2
- beq _080C0E52
- cmp r5, 0x3
- beq _080C0E46
- b _080C0E60
-_080C0E38:
- cmp r0, r2
- bls _080C0E60
- subs r0, 0x1
- b _080C0E58
-_080C0E40:
- cmp r0, r3
- bcs _080C0E60
- b _080C0E56
-_080C0E46:
- cmp r0, r2
- bls _080C0E4E
- subs r0, 0x1
- b _080C0E58
-_080C0E4E:
- adds r0, r3, 0
- b _080C0E60
-_080C0E52:
- cmp r0, r3
- bcs _080C0E5E
-_080C0E56:
- adds r0, 0x1
-_080C0E58:
- lsls r0, 16
- lsrs r0, 16
- b _080C0E60
-_080C0E5E:
- adds r0, r2, 0
-_080C0E60:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_80C0E0C
-
- thumb_func_start sub_80C0E68
-sub_80C0E68: @ 80C0E68
- push {lr}
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, 0xC9
- beq _080C0E88
- movs r0, 0x9A
- lsls r0, 1
- cmp r1, r0
- bne _080C0E94
- ldr r0, =gSaveBlock2Ptr
- ldr r0, [r0]
- ldr r0, [r0, 0x20]
- b _080C0E96
- .pool
-_080C0E88:
- ldr r0, =gSaveBlock2Ptr
- ldr r0, [r0]
- ldr r0, [r0, 0x1C]
- b _080C0E96
- .pool
-_080C0E94:
- movs r0, 0
-_080C0E96:
- pop {r1}
- bx r1
- thumb_func_end sub_80C0E68
-
- thumb_func_start sub_80C0E9C
-sub_80C0E9C: @ 80C0E9C
- push {r4-r6,lr}
- sub sp, 0x14
- adds r4, r1, 0
- adds r5, r2, 0
- adds r6, r3, 0
- lsls r0, 16
- lsrs r0, 16
- lsls r4, 16
- lsrs r4, 16
- lsls r5, 16
- lsrs r5, 16
- lsls r6, 16
- lsrs r6, 16
- bl NationalPokedexNumToSpecies
- adds r1, r0, 0
- adds r0, r1, 0
- str r1, [sp, 0x10]
- bl sub_80C0E68
- adds r2, r0, 0
- lsls r4, 16
- asrs r4, 16
- str r4, [sp]
- lsls r5, 16
- asrs r5, 16
- str r5, [sp, 0x4]
- lsls r6, 24
- lsrs r6, 24
- str r6, [sp, 0x8]
- ldr r0, =0x0000ffff
- str r0, [sp, 0xC]
- ldr r1, [sp, 0x10]
- adds r0, r1, 0
- movs r1, 0x8
- movs r3, 0x1
- bl sub_818D7D8
- lsls r0, 16
- lsrs r0, 16
- add sp, 0x14
- pop {r4-r6}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80C0E9C
-
- thumb_func_start sub_80C0EF8
-sub_80C0EF8: @ 80C0EF8
- push {r4,r5,lr}
- sub sp, 0x8
- adds r4, r1, 0
- adds r5, r2, 0
- lsls r0, 16
- lsrs r0, 16
- lsls r4, 16
- asrs r4, 16
- lsls r5, 16
- asrs r5, 16
- lsls r3, 24
- lsrs r3, 24
- str r3, [sp]
- ldr r1, =0x0000ffff
- str r1, [sp, 0x4]
- movs r1, 0x1
- adds r2, r4, 0
- adds r3, r5, 0
- bl sub_818D8AC
- lsls r0, 16
- lsrs r0, 16
- add sp, 0x8
- pop {r4,r5}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80C0EF8
-
- thumb_func_start sub_80C0F30
-sub_80C0F30: @ 80C0F30
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x14
- ldr r4, [sp, 0x34]
- ldr r5, [sp, 0x38]
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- lsls r2, 24
- lsrs r7, r2, 24
- lsls r3, 24
- lsrs r3, 24
- str r3, [sp, 0x4]
- lsls r4, 24
- lsrs r4, 24
- str r4, [sp, 0x8]
- lsls r5, 24
- lsrs r5, 24
- mov r10, r5
- bl sub_80BC8D4
- movs r5, 0
- movs r6, 0
- ldr r4, =0x00000181
- ldr r3, =gUnknown_02039B4C
-_080C0F6A:
- ldr r2, [r3]
- lsls r0, r5, 2
- adds r1, r2, r0
- ldrb r0, [r1, 0x2]
- lsls r0, 31
- cmp r0, 0
- beq _080C0F86
- lsls r0, r6, 2
- adds r0, r2, r0
- ldr r1, [r1]
- str r1, [r0]
- adds r0, r6, 0x1
- lsls r0, 16
- lsrs r6, r0, 16
-_080C0F86:
- adds r0, r5, 0x1
- lsls r0, 16
- lsrs r5, r0, 16
- cmp r5, r4
- bls _080C0F6A
- ldr r1, =gUnknown_02039B4C
- ldr r0, [r1]
- ldr r2, =0x0000060c
- adds r0, r2
- adds r1, r6, 0
- strh r6, [r0]
- cmp r7, 0xFF
- beq _080C103C
- movs r5, 0
- lsls r0, r1, 16
- movs r6, 0
- cmp r0, 0
- beq _080C1032
- lsls r7, 2
- ldr r0, =gUnknown_0856ED08
- adds r0, 0x3
- adds r0, r7, r0
- str r0, [sp, 0xC]
- ldr r0, =gUnknown_0856ED08
- adds r0, r7
- mov r9, r0
-_080C0FBA:
- ldr r1, =gUnknown_02039B4C
- ldr r0, [r1]
- lsls r4, r5, 2
- adds r0, r4
- ldrh r0, [r0]
- bl NationalPokedexNumToSpecies
- lsls r0, 16
- lsrs r2, r0, 16
- ldr r1, =gSpeciesNames
- movs r0, 0xB
- muls r0, r2
- adds r0, r1
- ldrb r2, [r0]
- adds r3, r2, 0
- mov r0, r9
- ldrb r0, [r0]
- cmp r2, r0
- bcc _080C0FF2
- mov r1, r9
- ldrb r0, [r1]
- ldr r1, =gUnknown_0856ED08
- adds r1, 0x1
- adds r1, r7, r1
- ldrb r1, [r1]
- adds r0, r1
- cmp r2, r0
- blt _080C100A
-_080C0FF2:
- ldr r0, =gUnknown_0856ED08
- adds r0, 0x2
- adds r0, r7, r0
- ldrb r2, [r0]
- cmp r3, r2
- bcc _080C101E
- ldrb r1, [r0]
- ldr r2, [sp, 0xC]
- ldrb r0, [r2]
- adds r1, r0
- cmp r3, r1
- bge _080C101E
-_080C100A:
- ldr r2, =gUnknown_02039B4C
- ldr r0, [r2]
- lsls r1, r6, 2
- adds r1, r0, r1
- adds r0, r4
- ldr r0, [r0]
- str r0, [r1]
- adds r0, r6, 0x1
- lsls r0, 16
- lsrs r6, r0, 16
-_080C101E:
- adds r0, r5, 0x1
- lsls r0, 16
- lsrs r5, r0, 16
- ldr r1, =gUnknown_02039B4C
- ldr r0, [r1]
- ldr r2, =0x0000060c
- adds r0, r2
- ldrh r0, [r0]
- cmp r5, r0
- bcc _080C0FBA
-_080C1032:
- ldr r1, =gUnknown_02039B4C
- ldr r0, [r1]
- ldr r2, =0x0000060c
- adds r0, r2
- strh r6, [r0]
-_080C103C:
- ldr r0, [sp, 0x4]
- cmp r0, 0xFF
- beq _080C10AC
- movs r5, 0
- movs r6, 0
- ldr r1, =gUnknown_02039B4C
- ldr r0, [r1]
- ldr r2, =0x0000060c
- adds r0, r2
- ldrh r0, [r0]
- cmp r6, r0
- bcs _080C10A2
- adds r7, r1, 0
- ldr r0, =gBaseStats
- mov r8, r0
-_080C105A:
- ldr r0, [r7]
- lsls r4, r5, 2
- adds r0, r4
- ldrh r0, [r0]
- bl NationalPokedexNumToSpecies
- lsls r0, 16
- lsrs r2, r0, 16
- lsls r0, r2, 3
- subs r0, r2
- lsls r0, 2
- add r0, r8
- ldrb r0, [r0, 0x19]
- lsls r0, 25
- lsrs r0, 25
- ldr r1, [sp, 0x4]
- cmp r1, r0
- bne _080C1090
- ldr r0, [r7]
- lsls r1, r6, 2
- adds r1, r0, r1
- adds r0, r4
- ldr r0, [r0]
- str r0, [r1]
- adds r0, r6, 0x1
- lsls r0, 16
- lsrs r6, r0, 16
-_080C1090:
- adds r0, r5, 0x1
- lsls r0, 16
- lsrs r5, r0, 16
- ldr r0, [r7]
- ldr r2, =0x0000060c
- adds r0, r2
- ldrh r0, [r0]
- cmp r5, r0
- bcc _080C105A
-_080C10A2:
- ldr r1, =gUnknown_02039B4C
- ldr r0, [r1]
- ldr r2, =0x0000060c
- adds r0, r2
- strh r6, [r0]
-_080C10AC:
- ldr r0, [sp, 0x8]
- cmp r0, 0xFF
- bne _080C10C2
- mov r1, r10
- cmp r1, 0xFF
- bne _080C10BA
- b _080C11DE
-_080C10BA:
- mov r2, r10
- str r2, [sp, 0x8]
- movs r0, 0xFF
- mov r10, r0
-_080C10C2:
- mov r1, r10
- cmp r1, 0xFF
- bne _080C1158
- movs r5, 0
- movs r6, 0
- ldr r2, =gUnknown_02039B4C
- ldr r0, [r2]
- ldr r1, =0x0000060c
- adds r0, r1
- ldrh r0, [r0]
- cmp r6, r0
- bcs _080C11D4
- adds r3, r2, 0
- mov r7, sp
- mov r8, r2
-_080C10E0:
- ldr r0, [r3]
- lsls r4, r5, 2
- adds r1, r0, r4
- ldrb r0, [r1, 0x2]
- lsls r0, 30
- cmp r0, 0
- bge _080C112A
- ldrh r0, [r1]
- str r3, [sp, 0x10]
- bl NationalPokedexNumToSpecies
- lsls r0, 16
- lsrs r2, r0, 16
- ldr r1, =gBaseStats
- lsls r0, r2, 3
- subs r0, r2
- lsls r0, 2
- adds r0, r1
- ldrb r1, [r0, 0x6]
- strb r1, [r7]
- ldrb r0, [r0, 0x7]
- strb r0, [r7, 0x1]
- ldr r3, [sp, 0x10]
- ldr r2, [sp, 0x8]
- cmp r1, r2
- beq _080C1118
- cmp r0, r2
- bne _080C112A
-_080C1118:
- ldr r0, [r3]
- lsls r1, r6, 2
- adds r1, r0, r1
- adds r0, r4
- ldr r0, [r0]
- str r0, [r1]
- adds r0, r6, 0x1
- lsls r0, 16
- lsrs r6, r0, 16
-_080C112A:
- adds r0, r5, 0x1
- lsls r0, 16
- lsrs r5, r0, 16
- mov r1, r8
- ldr r0, [r1]
- ldr r2, =0x0000060c
- adds r0, r2
- ldrh r0, [r0]
- cmp r5, r0
- bcc _080C10E0
- b _080C11D4
- .pool
-_080C1158:
- movs r5, 0
- movs r6, 0
- ldr r1, =gUnknown_02039B4C
- ldr r0, [r1]
- ldr r2, =0x0000060c
- adds r0, r2
- ldrh r0, [r0]
- cmp r6, r0
- bcs _080C11D4
- mov r7, sp
-_080C116C:
- ldr r0, [r1]
- lsls r1, r5, 2
- adds r2, r0, r1
- ldrb r0, [r2, 0x2]
- lsls r0, 30
- adds r4, r1, 0
- cmp r0, 0
- bge _080C11C0
- ldrh r0, [r2]
- bl NationalPokedexNumToSpecies
- lsls r0, 16
- lsrs r2, r0, 16
- ldr r1, =gBaseStats
- lsls r0, r2, 3
- subs r0, r2
- lsls r0, 2
- adds r0, r1
- ldrb r1, [r0, 0x6]
- strb r1, [r7]
- ldrb r0, [r0, 0x7]
- strb r0, [r7, 0x1]
- ldr r2, [sp, 0x8]
- cmp r1, r2
- bne _080C11A2
- cmp r0, r10
- beq _080C11AC
-_080C11A2:
- cmp r1, r10
- bne _080C11C0
- ldr r1, [sp, 0x8]
- cmp r0, r1
- bne _080C11C0
-_080C11AC:
- ldr r2, =gUnknown_02039B4C
- ldr r0, [r2]
- lsls r1, r6, 2
- adds r1, r0, r1
- adds r0, r4
- ldr r0, [r0]
- str r0, [r1]
- adds r0, r6, 0x1
- lsls r0, 16
- lsrs r6, r0, 16
-_080C11C0:
- adds r0, r5, 0x1
- lsls r0, 16
- lsrs r5, r0, 16
- ldr r1, =gUnknown_02039B4C
- ldr r0, [r1]
- ldr r2, =0x0000060c
- adds r0, r2
- ldrh r0, [r0]
- cmp r5, r0
- bcc _080C116C
-_080C11D4:
- ldr r1, =gUnknown_02039B4C
- ldr r0, [r1]
- ldr r2, =0x0000060c
- adds r0, r2
- strh r6, [r0]
-_080C11DE:
- ldr r1, =gUnknown_02039B4C
- ldr r0, [r1]
- ldr r2, =0x0000060c
- adds r1, r0, r2
- ldrh r0, [r1]
- cmp r0, 0
- beq _080C1232
- adds r5, r0, 0
- ldr r0, =0x00000181
- cmp r5, r0
- bhi _080C1232
- ldr r4, =gUnknown_02039B4C
- movs r1, 0x2
- negs r1, r1
- mov r10, r1
- movs r2, 0x3
- negs r2, r2
- mov r9, r2
- mov r8, r0
- ldr r0, =0x0000ffff
- adds r7, r0, 0
-_080C1208:
- ldr r1, [r4]
- lsls r3, r5, 2
- adds r1, r3
- ldrh r0, [r1]
- orrs r0, r7
- strh r0, [r1]
- ldrb r2, [r1, 0x2]
- mov r0, r10
- ands r0, r2
- strb r0, [r1, 0x2]
- ldr r1, [r4]
- adds r1, r3
- ldrb r2, [r1, 0x2]
- mov r0, r9
- ands r0, r2
- strb r0, [r1, 0x2]
- adds r0, r5, 0x1
- lsls r0, 16
- lsrs r5, r0, 16
- cmp r5, r8
- bls _080C1208
-_080C1232:
- adds r0, r6, 0
- add sp, 0x14
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80C0F30
-
- thumb_func_start sub_80C1258
-sub_80C1258: @ 80C1258
- push {lr}
- ldr r0, =sub_80C12E0
- movs r1, 0
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80C1258
-
- thumb_func_start sub_80C1270
-sub_80C1270: @ 80C1270
- push {r4,r5,lr}
- sub sp, 0x18
- adds r5, r1, 0
- adds r3, r2, 0
- add r1, sp, 0x14
- movs r4, 0
- strb r4, [r1]
- adds r2, r1, 0
- movs r1, 0xF
- strb r1, [r2, 0x1]
- movs r1, 0x2
- strb r1, [r2, 0x2]
- lsls r5, 24
- lsrs r5, 24
- lsls r3, 24
- lsrs r3, 24
- str r4, [sp]
- str r4, [sp, 0x4]
- str r2, [sp, 0x8]
- subs r1, 0x3
- str r1, [sp, 0xC]
- str r0, [sp, 0x10]
- movs r0, 0
- movs r1, 0x1
- adds r2, r5, 0
- bl AddTextPrinterParameterized2
- add sp, 0x18
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80C1270
-
- thumb_func_start sub_80C12B0
-sub_80C12B0: @ 80C12B0
- push {r4,r5,lr}
- sub sp, 0x8
- adds r4, r0, 0
- adds r5, r1, 0
- lsls r4, 16
- lsrs r4, 16
- lsls r5, 16
- lsrs r5, 16
- lsls r2, 16
- lsrs r2, 16
- str r2, [sp]
- lsls r3, 16
- lsrs r3, 16
- str r3, [sp, 0x4]
- movs r0, 0
- movs r1, 0
- adds r2, r4, 0
- adds r3, r5, 0
- bl FillWindowPixelRect
- add sp, 0x8
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80C12B0
-
- thumb_func_start sub_80C12E0
-sub_80C12E0: @ 80C12E0
- push {r4,r5,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r1, =gMain
- movs r2, 0x87
- lsls r2, 3
- adds r0, r1, r2
- ldrb r0, [r0]
- adds r3, r1, 0
- cmp r0, 0x4
- bhi _080C1320
- lsls r0, 2
- ldr r1, =_080C130C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080C130C:
- .4byte _080C1320
- .4byte _080C1414
- .4byte _080C1480
- .4byte _080C14A0
- .4byte _080C14F0
-_080C1320:
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0
- beq _080C1332
- b _080C1516
-_080C1332:
- ldr r0, =gUnknown_02039B4C
- ldr r0, [r0]
- ldr r1, =0x0000064a
- adds r0, r1
- movs r1, 0x2
- strb r1, [r0]
- movs r0, 0
- bl sub_80C09B0
- movs r0, 0
- bl ResetBgsAndClearDma3BusyFlags
- ldr r1, =gUnknown_0856EFF8
- movs r0, 0
- movs r2, 0x4
- bl InitBgsFromTemplates
- movs r4, 0x80
- lsls r4, 4
- adds r0, r4, 0
- bl AllocZeroed
- adds r1, r0, 0
- movs r0, 0x3
- bl SetBgTilemapBuffer
- adds r0, r4, 0
- bl AllocZeroed
- adds r1, r0, 0
- movs r0, 0x2
- bl SetBgTilemapBuffer
- adds r0, r4, 0
- bl AllocZeroed
- adds r1, r0, 0
- movs r0, 0x1
- bl SetBgTilemapBuffer
- adds r0, r4, 0
- bl AllocZeroed
- adds r1, r0, 0
- movs r0, 0
- bl SetBgTilemapBuffer
- ldr r0, =gUnknown_0856F008
- bl InitWindows
- bl DeactivateAllTextPrinters
- movs r0, 0
- bl PutWindowTilemap
- ldr r1, =gPokedexSearchMenu_Gfx
- movs r2, 0x80
- lsls r2, 6
- str r5, [sp]
- movs r0, 0x3
- movs r3, 0
- bl copy_decompressed_tile_data_to_vram_autofree
- bl IsNationalPokedexEnabled
- cmp r0, 0
- bne _080C13E4
- ldr r1, =gPokedexSearch2_Tilemap
- movs r0, 0x3
- movs r2, 0
- movs r3, 0
- bl CopyToBgTilemapBuffer
- b _080C13F0
- .pool
-_080C13E4:
- ldr r1, =gPokedexSearch1_Tilemap
- movs r0, 0x3
- movs r2, 0
- movs r3, 0
- bl CopyToBgTilemapBuffer
-_080C13F0:
- ldr r0, =gPokedexSearchMenu_Pal + 0x2
- movs r1, 0x1
- movs r2, 0x7E
- bl LoadPalette
- ldr r0, =gMain
- movs r2, 0x87
- lsls r2, 3
- adds r0, r2
- movs r1, 0x1
- strb r1, [r0]
- b _080C1516
- .pool
-_080C1414:
- ldr r0, =gSpriteSheets_0855D26C
- bl LoadCompressedObjectPic
- ldr r0, =gSpritePalettes_0855D26C
- bl LoadSpritePalettes
- adds r0, r4, 0
- bl sub_80C2594
- movs r1, 0
- lsls r0, r4, 2
- adds r0, r4
- lsls r2, r0, 3
- ldr r5, =gTasks + 0x8
- movs r3, 0
-_080C1432:
- lsls r0, r1, 1
- adds r0, r2
- adds r0, r5
- strh r3, [r0]
- adds r0, r1, 0x1
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, 0xF
- bls _080C1432
- adds r0, r4, 0
- bl sub_80C23B8
- movs r0, 0
- bl sub_80C2040
- adds r0, r4, 0
- bl sub_80C20F8
- movs r0, 0
- movs r1, 0x3
- bl CopyWindowToVram
- movs r0, 0x1
- bl CopyBgTilemapBufferToVram
- movs r0, 0x2
- bl CopyBgTilemapBufferToVram
- movs r0, 0x3
- bl CopyBgTilemapBufferToVram
- b _080C14DA
- .pool
-_080C1480:
- movs r0, 0x1
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0x10
- movs r3, 0
- bl BeginNormalPaletteFade
- ldr r1, =gMain
- movs r2, 0x87
- lsls r2, 3
- adds r1, r2
- b _080C14E2
- .pool
-_080C14A0:
- movs r0, 0x50
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x52
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x54
- movs r1, 0
- bl SetGpuReg
- movs r1, 0x82
- lsls r1, 5
- movs r0, 0
- bl SetGpuReg
- movs r0, 0
- bl HideBg
- movs r0, 0x1
- bl ShowBg
- movs r0, 0x2
- bl ShowBg
- movs r0, 0x3
- bl ShowBg
-_080C14DA:
- ldr r1, =gMain
- movs r0, 0x87
- lsls r0, 3
- adds r1, r0
-_080C14E2:
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- b _080C1516
- .pool
-_080C14F0:
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0
- bne _080C1516
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, =sub_80C1570
- str r1, [r0]
- movs r1, 0x87
- lsls r1, 3
- adds r0, r3, r1
- strb r2, [r0]
-_080C1516:
- add sp, 0x4
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80C12E0
-
- thumb_func_start sub_80C152C
-sub_80C152C: @ 80C152C
- push {lr}
- bl FreeAllWindowBuffers
- movs r0, 0
- bl GetBgTilemapBuffer
- cmp r0, 0
- beq _080C1540
- bl Free
-_080C1540:
- movs r0, 0x1
- bl GetBgTilemapBuffer
- cmp r0, 0
- beq _080C154E
- bl Free
-_080C154E:
- movs r0, 0x2
- bl GetBgTilemapBuffer
- cmp r0, 0
- beq _080C155C
- bl Free
-_080C155C:
- movs r0, 0x3
- bl GetBgTilemapBuffer
- cmp r0, 0
- beq _080C156A
- bl Free
-_080C156A:
- pop {r0}
- bx r0
- thumb_func_end sub_80C152C
-
- thumb_func_start sub_80C1570
-sub_80C1570: @ 80C1570
- push {r4,r5,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, =gTasks
- lsls r5, r4, 2
- adds r5, r4
- lsls r5, 3
- adds r5, r0
- ldrb r0, [r5, 0x8]
- bl sub_80C2040
- adds r0, r4, 0
- bl sub_80C20F8
- movs r0, 0
- movs r1, 0x2
- bl CopyWindowToVram
- movs r0, 0x3
- bl CopyBgTilemapBufferToVram
- ldr r0, =sub_80C15B0
- str r0, [r5]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80C1570
-
- thumb_func_start sub_80C15B0
-sub_80C15B0: @ 80C15B0
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r0, =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _080C15E4
- movs r0, 0x3
- bl PlaySE
- ldr r0, =gTasks
- lsls r1, r5, 2
- adds r1, r5
- lsls r1, 3
- adds r1, r0
- ldr r0, =sub_80C1D38
- str r0, [r1]
- b _080C16BC
- .pool
-_080C15E4:
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _080C1640
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r5, r0, r1
- movs r0, 0x8
- ldrsh r4, [r5, r0]
- cmp r4, 0x1
- beq _080C161C
- cmp r4, 0x1
- bgt _080C160C
- cmp r4, 0
- beq _080C1612
- b _080C16BC
- .pool
-_080C160C:
- cmp r4, 0x2
- beq _080C1630
- b _080C16BC
-_080C1612:
- movs r0, 0x15
- bl PlaySE
- strh r4, [r5, 0xA]
- b _080C1626
-_080C161C:
- movs r0, 0x15
- bl PlaySE
- movs r0, 0x4
- strh r0, [r5, 0xA]
-_080C1626:
- ldr r0, =sub_80C16CC
- str r0, [r5]
- b _080C16BC
- .pool
-_080C1630:
- movs r0, 0x3
- bl PlaySE
- ldr r0, =sub_80C1D38
- str r0, [r5]
- b _080C16BC
- .pool
-_080C1640:
- movs r0, 0x20
- ands r0, r1
- cmp r0, 0
- beq _080C167C
- ldr r0, =gTasks
- lsls r1, r5, 2
- adds r1, r5
- lsls r1, 3
- adds r4, r1, r0
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- cmp r0, 0
- ble _080C167C
- movs r0, 0x6D
- bl PlaySE
- ldrh r0, [r4, 0x8]
- subs r0, 0x1
- strh r0, [r4, 0x8]
- lsls r0, 24
- lsrs r0, 24
- bl sub_80C2040
- movs r0, 0
- movs r1, 0x2
- bl CopyWindowToVram
- movs r0, 0x3
- bl CopyBgTilemapBufferToVram
-_080C167C:
- ldr r0, =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- beq _080C16BC
- ldr r0, =gTasks
- lsls r1, r5, 2
- adds r1, r5
- lsls r1, 3
- adds r4, r1, r0
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- cmp r0, 0x1
- bgt _080C16BC
- movs r0, 0x6D
- bl PlaySE
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- lsls r0, 24
- lsrs r0, 24
- bl sub_80C2040
- movs r0, 0
- movs r1, 0x2
- bl CopyWindowToVram
- movs r0, 0x3
- bl CopyBgTilemapBufferToVram
-_080C16BC:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80C15B0
-
- thumb_func_start sub_80C16CC
-sub_80C16CC: @ 80C16CC
- push {r4,r5,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, =gTasks
- lsls r5, r4, 2
- adds r5, r4
- lsls r5, 3
- adds r5, r0
- ldrb r0, [r5, 0x8]
- ldrb r1, [r5, 0xA]
- bl sub_80C2064
- adds r0, r4, 0
- bl sub_80C20F8
- movs r0, 0
- movs r1, 0x2
- bl CopyWindowToVram
- movs r0, 0x3
- bl CopyBgTilemapBufferToVram
- ldr r0, =sub_80C170C
- str r0, [r5]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80C16CC
-
- thumb_func_start sub_80C170C
-sub_80C170C: @ 80C170C
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- movs r1, 0x8
- ldrsh r0, [r0, r1]
- cmp r0, 0
- beq _080C1740
- bl IsNationalPokedexEnabled
- ldr r6, =gUnknown_0856EDB8
- cmp r0, 0
- bne _080C174C
- ldr r6, =gUnknown_0856EDF0
- b _080C174C
- .pool
-_080C1740:
- bl IsNationalPokedexEnabled
- ldr r6, =gUnknown_0856ED9C
- cmp r0, 0
- bne _080C174C
- ldr r6, =gUnknown_0856EDD4
-_080C174C:
- ldr r0, =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x2
- ands r0, r1
- lsls r0, 16
- lsrs r3, r0, 16
- cmp r3, 0
- beq _080C178C
- movs r0, 0x17
- bl PlaySE
- adds r0, r5, 0
- bl sub_80C23B8
- ldr r0, =gTasks
- lsls r1, r5, 2
- adds r1, r5
- lsls r1, 3
- adds r1, r0
- ldr r0, =sub_80C1570
- str r0, [r1]
- b _080C1994
- .pool
-_080C178C:
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _080C1870
- ldr r0, =gTasks
- lsls r1, r5, 2
- adds r1, r5
- lsls r1, 3
- adds r6, r1, r0
- movs r2, 0xA
- ldrsh r0, [r6, r2]
- cmp r0, 0x6
- bne _080C1860
- movs r1, 0x8
- ldrsh r0, [r6, r1]
- cmp r0, 0
- beq _080C183C
- ldr r1, =gUnknown_02039B52
- movs r0, 0x40
- strb r0, [r1]
- ldr r7, =gUnknown_02039B4C
- ldr r1, [r7]
- ldr r0, =0x0000062a
- adds r2, r1, r0
- movs r0, 0x40
- strh r0, [r2]
- ldr r0, =gUnknown_02039B50
- strh r3, [r0]
- movs r2, 0xC2
- lsls r2, 3
- adds r1, r2
- strh r3, [r1]
- adds r0, r5, 0
- movs r1, 0x5
- bl sub_80C2318
- ldr r4, =gSaveBlock2Ptr
- ldr r1, [r4]
- strb r0, [r1, 0x19]
- bl IsNationalPokedexEnabled
- cmp r0, 0
- bne _080C17E8
- ldr r1, [r4]
- movs r0, 0
- strb r0, [r1, 0x19]
-_080C17E8:
- ldr r0, [r7]
- ldr r1, [r4]
- ldrb r1, [r1, 0x19]
- ldr r2, =0x00000614
- adds r0, r2
- strh r1, [r0]
- adds r0, r5, 0
- movs r1, 0x4
- bl sub_80C2318
- ldr r1, [r4]
- strb r0, [r1, 0x18]
- ldr r0, [r7]
- ldr r1, [r4]
- ldrb r1, [r1, 0x18]
- movs r2, 0xC3
- lsls r2, 3
- adds r0, r2
- strh r1, [r0]
- movs r0, 0x3
- bl PlaySE
- ldr r0, =sub_80C1D38
- str r0, [r6]
- b _080C1994
- .pool
-_080C183C:
- ldr r0, =gText_SearchingPleaseWait
- bl sub_80C2618
- ldr r0, =sub_80C19A4
- str r0, [r6]
- movs r0, 0x70
- bl PlaySE
- movs r0, 0
- movs r1, 0x2
- bl CopyWindowToVram
- b _080C1994
- .pool
-_080C1860:
- movs r0, 0x15
- bl PlaySE
- ldr r0, =sub_80C1B64
- str r0, [r6]
- b _080C1994
- .pool
-_080C1870:
- movs r0, 0x20
- ands r0, r1
- cmp r0, 0
- beq _080C18B6
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r4, r0, r1
- movs r1, 0xA
- ldrsh r0, [r4, r1]
- lsls r0, 2
- adds r0, r6
- ldrb r0, [r0]
- cmp r0, 0xFF
- beq _080C18B6
- movs r0, 0x5
- bl PlaySE
- movs r2, 0xA
- ldrsh r0, [r4, r2]
- lsls r0, 2
- adds r0, r6
- ldrb r1, [r0]
- strh r1, [r4, 0xA]
- ldrb r0, [r4, 0x8]
- bl sub_80C2064
- movs r0, 0
- movs r1, 0x2
- bl CopyWindowToVram
- movs r0, 0x3
- bl CopyBgTilemapBufferToVram
-_080C18B6:
- ldr r0, =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- beq _080C1900
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r4, r0, r1
- movs r1, 0xA
- ldrsh r0, [r4, r1]
- lsls r0, 2
- adds r0, r6
- ldrb r0, [r0, 0x1]
- cmp r0, 0xFF
- beq _080C1900
- movs r0, 0x5
- bl PlaySE
- movs r2, 0xA
- ldrsh r0, [r4, r2]
- lsls r0, 2
- adds r0, r6
- ldrb r1, [r0, 0x1]
- strh r1, [r4, 0xA]
- ldrb r0, [r4, 0x8]
- bl sub_80C2064
- movs r0, 0
- movs r1, 0x2
- bl CopyWindowToVram
- movs r0, 0x3
- bl CopyBgTilemapBufferToVram
-_080C1900:
- ldr r0, =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x40
- ands r0, r1
- cmp r0, 0
- beq _080C194A
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r4, r0, r1
- movs r1, 0xA
- ldrsh r0, [r4, r1]
- lsls r0, 2
- adds r0, r6
- ldrb r0, [r0, 0x2]
- cmp r0, 0xFF
- beq _080C194A
- movs r0, 0x5
- bl PlaySE
- movs r2, 0xA
- ldrsh r0, [r4, r2]
- lsls r0, 2
- adds r0, r6
- ldrb r1, [r0, 0x2]
- strh r1, [r4, 0xA]
- ldrb r0, [r4, 0x8]
- bl sub_80C2064
- movs r0, 0
- movs r1, 0x2
- bl CopyWindowToVram
- movs r0, 0x3
- bl CopyBgTilemapBufferToVram
-_080C194A:
- ldr r0, =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _080C1994
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r4, r0, r1
- movs r1, 0xA
- ldrsh r0, [r4, r1]
- lsls r0, 2
- adds r0, r6
- ldrb r0, [r0, 0x3]
- cmp r0, 0xFF
- beq _080C1994
- movs r0, 0x5
- bl PlaySE
- movs r2, 0xA
- ldrsh r0, [r4, r2]
- lsls r0, 2
- adds r0, r6
- ldrb r1, [r0, 0x3]
- strh r1, [r4, 0xA]
- ldrb r0, [r4, 0x8]
- bl sub_80C2064
- movs r0, 0
- movs r1, 0x2
- bl CopyWindowToVram
- movs r0, 0x3
- bl CopyBgTilemapBufferToVram
-_080C1994:
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80C170C
-
- thumb_func_start sub_80C19A4
-sub_80C19A4: @ 80C19A4
- push {r4-r6,lr}
- mov r6, r10
- mov r5, r9
- mov r4, r8
- push {r4-r6}
- sub sp, 0x8
- adds r5, r0, 0
- lsls r5, 24
- lsrs r5, 24
- adds r0, r5, 0
- movs r1, 0x5
- bl sub_80C2318
- mov r10, r0
- mov r0, r10
- lsls r0, 24
- lsrs r0, 24
- mov r10, r0
- adds r0, r5, 0
- movs r1, 0x4
- bl sub_80C2318
- mov r9, r0
- mov r0, r9
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
- adds r0, r5, 0
- movs r1, 0
- bl sub_80C2318
- mov r8, r0
- mov r0, r8
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- adds r0, r5, 0
- movs r1, 0x1
- bl sub_80C2318
- adds r6, r0, 0
- lsls r6, 24
- lsrs r6, 24
- adds r0, r5, 0
- movs r1, 0x2
- bl sub_80C2318
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r5, 0
- movs r1, 0x3
- bl sub_80C2318
- lsls r0, 24
- lsrs r0, 24
- str r4, [sp]
- str r0, [sp, 0x4]
- mov r0, r10
- mov r1, r9
- mov r2, r8
- adds r3, r6, 0
- bl sub_80C0F30
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- ldr r1, =sub_80C1A4C
- str r1, [r0]
- add sp, 0x8
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80C19A4
-
- thumb_func_start sub_80C1A4C
-sub_80C1A4C: @ 80C1A4C
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl IsSEPlaying
- lsls r0, 24
- cmp r0, 0
- bne _080C1AA6
- ldr r0, =gUnknown_02039B4C
- ldr r0, [r0]
- ldr r1, =0x0000060c
- adds r0, r1
- ldrh r0, [r0]
- cmp r0, 0
- beq _080C1A84
- movs r0, 0x1F
- bl PlaySE
- ldr r0, =gText_SearchCompleted
- bl sub_80C2618
- b _080C1A90
- .pool
-_080C1A84:
- movs r0, 0x20
- bl PlaySE
- ldr r0, =gUnknown_085E8785
- bl sub_80C2618
-_080C1A90:
- ldr r0, =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldr r0, =sub_80C1AB8
- str r0, [r1]
- movs r0, 0
- movs r1, 0x2
- bl CopyWindowToVram
-_080C1AA6:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80C1A4C
-
- thumb_func_start sub_80C1AB8
-sub_80C1AB8: @ 80C1AB8
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- adds r2, r4, 0
- ldr r0, =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _080C1B54
- ldr r5, =gUnknown_02039B4C
- ldr r1, [r5]
- ldr r3, =0x0000060c
- adds r0, r1, r3
- ldrh r0, [r0]
- cmp r0, 0
- beq _080C1B40
- ldr r0, =0x0000064e
- adds r1, r0
- movs r0, 0x1
- strb r0, [r1]
- adds r0, r4, 0
- movs r1, 0x5
- bl sub_80C2318
- ldr r1, [r5]
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =0x00000612
- adds r1, r2
- strh r0, [r1]
- adds r0, r4, 0
- movs r1, 0x4
- bl sub_80C2318
- ldr r1, [r5]
- lsls r0, 24
- lsrs r0, 24
- ldr r3, =0x00000616
- adds r1, r3
- strh r0, [r1]
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, =sub_80C1D38
- str r1, [r0]
- movs r0, 0x3
- bl PlaySE
- b _080C1B54
- .pool
-_080C1B40:
- ldr r0, =gTasks
- lsls r1, r2, 2
- adds r1, r2
- lsls r1, 3
- adds r1, r0
- ldr r0, =sub_80C16CC
- str r0, [r1]
- movs r0, 0x17
- bl PlaySE
-_080C1B54:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80C1AB8
-
- thumb_func_start sub_80C1B64
-sub_80C1B64: @ 80C1B64
- push {r4-r6,lr}
- adds r5, r0, 0
- lsls r5, 24
- lsrs r5, 24
- movs r0, 0
- bl sub_80C21D4
- ldr r2, =gTasks
- lsls r1, r5, 2
- adds r1, r5
- lsls r1, 3
- adds r6, r1, r2
- ldrb r0, [r6, 0xA]
- adds r2, 0x8
- adds r1, r2
- ldr r2, =gUnknown_0856EFC8
- lsls r0, 3
- adds r0, r2
- ldrb r4, [r0, 0x4]
- lsls r4, 1
- adds r4, r1, r4
- ldrb r0, [r0, 0x5]
- lsls r0, 1
- adds r1, r0
- ldrh r0, [r4]
- strh r0, [r6, 0x24]
- ldrh r0, [r1]
- strh r0, [r6, 0x26]
- adds r0, r5, 0
- bl sub_80C2294
- ldrh r0, [r4]
- bl sub_80C2650
- ldr r0, =sub_80C1BCC
- str r0, [r6]
- movs r0, 0
- movs r1, 0x2
- bl CopyWindowToVram
- movs r0, 0x3
- bl CopyBgTilemapBufferToVram
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80C1B64
-
- thumb_func_start sub_80C1BCC
-sub_80C1BCC: @ 80C1BCC
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r3, =gTasks
- lsls r2, r7, 2
- adds r2, r7
- lsls r2, 3
- adds r5, r2, r3
- ldrb r1, [r5, 0xA]
- ldr r0, =gUnknown_0856EFC8
- lsls r1, 3
- adds r1, r0
- ldr r0, [r1]
- mov r8, r0
- adds r3, 0x8
- adds r2, r3
- ldrb r0, [r1, 0x4]
- lsls r0, 1
- adds r4, r2, r0
- ldrb r0, [r1, 0x5]
- lsls r0, 1
- adds r6, r2, r0
- ldrh r0, [r1, 0x6]
- subs r0, 0x1
- lsls r0, 16
- lsrs r2, r0, 16
- ldr r0, =gMain
- mov r12, r0
- ldrh r1, [r0, 0x2E]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _080C1C30
- movs r0, 0x15
- bl PlaySE
- bl sub_80C267C
- movs r0, 0x1
- bl sub_80C21D4
- b _080C1C50
- .pool
-_080C1C30:
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _080C1C68
- movs r0, 0x17
- bl PlaySE
- bl sub_80C267C
- movs r0, 0x1
- bl sub_80C21D4
- ldrh r0, [r5, 0x24]
- strh r0, [r4]
- ldrh r0, [r5, 0x26]
- strh r0, [r6]
-_080C1C50:
- ldr r0, =sub_80C16CC
- str r0, [r5]
- movs r0, 0
- movs r1, 0x2
- bl CopyWindowToVram
- movs r0, 0x3
- bl CopyBgTilemapBufferToVram
- b _080C1D2E
- .pool
-_080C1C68:
- movs r3, 0
- mov r0, r12
- ldrh r1, [r0, 0x30]
- movs r0, 0x40
- ands r0, r1
- cmp r0, 0
- beq _080C1CCA
- ldrh r0, [r4]
- cmp r0, 0
- beq _080C1C8E
- bl sub_80C2638
- ldrh r0, [r4]
- subs r0, 0x1
- strh r0, [r4]
- ldrh r0, [r4]
- bl sub_80C2650
- b _080C1CAA
-_080C1C8E:
- ldrh r0, [r6]
- cmp r0, 0
- beq _080C1CA6
- subs r0, 0x1
- strh r0, [r6]
- adds r0, r7, 0
- bl sub_80C2294
- ldrh r0, [r4]
- bl sub_80C2650
- movs r3, 0x1
-_080C1CA6:
- cmp r3, 0
- beq _080C1D2E
-_080C1CAA:
- movs r0, 0x5
- bl PlaySE
- ldrh r0, [r4]
- ldrh r1, [r6]
- adds r0, r1
- lsls r0, 3
- add r0, r8
- ldr r0, [r0]
- bl sub_80C2618
- movs r0, 0
- movs r1, 0x2
- bl CopyWindowToVram
- b _080C1D2E
-_080C1CCA:
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _080C1D2E
- ldrh r0, [r4]
- cmp r0, 0x4
- bhi _080C1CEE
- cmp r0, r2
- bcs _080C1CEE
- bl sub_80C2638
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
- ldrh r0, [r4]
- bl sub_80C2650
- b _080C1D10
-_080C1CEE:
- cmp r2, 0x5
- bls _080C1D0C
- ldrh r1, [r6]
- subs r0, r2, 0x5
- cmp r1, r0
- bge _080C1D0C
- adds r0, r1, 0x1
- strh r0, [r6]
- adds r0, r7, 0
- bl sub_80C2294
- movs r0, 0x5
- bl sub_80C2650
- movs r3, 0x1
-_080C1D0C:
- cmp r3, 0
- beq _080C1D2E
-_080C1D10:
- movs r0, 0x5
- bl PlaySE
- ldrh r0, [r4]
- ldrh r1, [r6]
- adds r0, r1
- lsls r0, 3
- add r0, r8
- ldr r0, [r0]
- bl sub_80C2618
- movs r0, 0
- movs r1, 0x2
- bl CopyWindowToVram
-_080C1D2E:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_80C1BCC
-
- thumb_func_start sub_80C1D38
-sub_80C1D38: @ 80C1D38
- 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, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, =sub_80C1D70
- str r1, [r0]
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80C1D38
-
- thumb_func_start sub_80C1D70
-sub_80C1D70: @ 80C1D70
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _080C1D8C
- bl sub_80C152C
- adds r0, r4, 0
- bl DestroyTask
-_080C1D8C:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80C1D70
-
- thumb_func_start sub_80C1D98
-sub_80C1D98: @ 80C1D98
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- adds r4, r3, 0
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r1, 24
- lsrs r1, 24
- mov r8, r1
- lsls r2, 24
- lsrs r5, r2, 24
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0x3
- bl GetBgTilemapBuffer
- adds r2, r0, 0
- movs r3, 0
- cmp r3, r4
- bcs _080C1DEC
- lsls r0, r5, 6
- adds r7, r0, r2
- ldr r5, =0x00000fff
- lsls r2, r6, 12
-_080C1DC8:
- mov r0, r8
- adds r1, r0, r3
- lsls r1, 1
- adds r1, r7
- ldrh r0, [r1]
- ands r0, r5
- orrs r0, r2
- strh r0, [r1]
- adds r1, 0x40
- ldrh r0, [r1]
- ands r0, r5
- orrs r0, r2
- strh r0, [r1]
- adds r0, r3, 0x1
- lsls r0, 16
- lsrs r3, r0, 16
- cmp r3, r4
- bcc _080C1DC8
-_080C1DEC:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80C1D98
-
- thumb_func_start sub_80C1DFC
-sub_80C1DFC: @ 80C1DFC
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r1, 24
- lsrs r5, r1, 24
- lsls r2, 24
- lsrs r2, 24
- movs r0, 0x1
- ands r5, r0
- ands r2, r0
- lsls r2, 1
- orrs r5, r2
- cmp r4, 0xA
- bhi _080C1EE8
- lsls r0, r4, 2
- ldr r1, =_080C1E28
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080C1E28:
- .4byte _080C1E54
- .4byte _080C1E54
- .4byte _080C1E54
- .4byte _080C1E64
- .4byte _080C1E64
- .4byte _080C1E7C
- .4byte _080C1E7C
- .4byte _080C1E64
- .4byte _080C1E64
- .4byte _080C1EA4
- .4byte _080C1E94
-_080C1E54:
- ldr r1, =gUnknown_0856ED30
- lsls r0, r4, 3
- adds r0, r1
- ldrb r1, [r0, 0x4]
- ldrb r2, [r0, 0x5]
- b _080C1EC2
- .pool
-_080C1E64:
- ldr r2, =gUnknown_0856ED48
- subs r1, r4, 0x3
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r1, [r0, 0x4]
- ldrb r2, [r0, 0x5]
- ldrb r3, [r0, 0x6]
- adds r0, r5, 0
- bl sub_80C1D98
-_080C1E7C:
- ldr r2, =gUnknown_0856ED48
- subs r1, r4, 0x3
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r1, [r0, 0x7]
- ldrb r2, [r0, 0x8]
- ldrb r3, [r0, 0x9]
- b _080C1EC4
- .pool
-_080C1E94:
- ldr r0, =gUnknown_0856ED48
- ldrb r1, [r0, 0x1C]
- ldrb r2, [r0, 0x1D]
- ldrb r3, [r0, 0x1E]
- b _080C1EC4
- .pool
-_080C1EA4:
- bl IsNationalPokedexEnabled
- cmp r0, 0
- bne _080C1ED0
- ldr r2, =gUnknown_0856ED48
- subs r1, r4, 0x3
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r1, [r0, 0x4]
- ldrb r2, [r0, 0x5]
- subs r2, 0x2
- lsls r2, 24
- lsrs r2, 24
-_080C1EC2:
- ldrb r3, [r0, 0x6]
-_080C1EC4:
- adds r0, r5, 0
- bl sub_80C1D98
- b _080C1EE8
- .pool
-_080C1ED0:
- ldr r2, =gUnknown_0856ED48
- subs r1, r4, 0x3
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r1, [r0, 0x4]
- ldrb r2, [r0, 0x5]
- ldrb r3, [r0, 0x6]
- adds r0, r5, 0
- bl sub_80C1D98
-_080C1EE8:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80C1DFC
-
- thumb_func_start sub_80C1EF4
-sub_80C1EF4: @ 80C1EF4
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- adds r1, r0, 0
- cmp r0, 0x1
- beq _080C1F5E
- cmp r0, 0x1
- bgt _080C1F0A
- cmp r0, 0
- beq _080C1F10
- b _080C203C
-_080C1F0A:
- cmp r1, 0x2
- beq _080C1FCE
- b _080C203C
-_080C1F10:
- movs r0, 0
- movs r1, 0
- movs r2, 0
- bl sub_80C1DFC
- movs r0, 0x1
- movs r1, 0x1
- movs r2, 0
- bl sub_80C1DFC
- movs r0, 0x2
- movs r1, 0x1
- movs r2, 0
- bl sub_80C1DFC
- movs r0, 0x3
- movs r1, 0x1
- movs r2, 0
- bl sub_80C1DFC
- movs r0, 0x4
- movs r1, 0x1
- movs r2, 0
- bl sub_80C1DFC
- movs r0, 0xA
- movs r1, 0x1
- movs r2, 0
- bl sub_80C1DFC
- movs r0, 0x5
- movs r1, 0x1
- movs r2, 0
- bl sub_80C1DFC
- movs r0, 0x6
- movs r1, 0x1
- movs r2, 0
- b _080C1FAA
-_080C1F5E:
- movs r0, 0
- movs r1, 0x1
- movs r2, 0
- bl sub_80C1DFC
- movs r0, 0x1
- movs r1, 0
- movs r2, 0
- bl sub_80C1DFC
- movs r0, 0x2
- movs r1, 0x1
- movs r2, 0
- bl sub_80C1DFC
- movs r0, 0x3
- movs r1, 0x1
- movs r2, 0x1
- bl sub_80C1DFC
- movs r0, 0x4
- movs r1, 0x1
- movs r2, 0x1
- bl sub_80C1DFC
- movs r0, 0xA
- movs r1, 0x1
- movs r2, 0x1
- bl sub_80C1DFC
- movs r0, 0x5
- movs r1, 0x1
- movs r2, 0x1
- bl sub_80C1DFC
- movs r0, 0x6
- movs r1, 0x1
- movs r2, 0x1
-_080C1FAA:
- bl sub_80C1DFC
- movs r0, 0x7
- movs r1, 0x1
- movs r2, 0
- bl sub_80C1DFC
- movs r0, 0x8
- movs r1, 0x1
- movs r2, 0
- bl sub_80C1DFC
- movs r0, 0x9
- movs r1, 0x1
- movs r2, 0
- bl sub_80C1DFC
- b _080C203C
-_080C1FCE:
- movs r0, 0
- movs r1, 0x1
- movs r2, 0
- bl sub_80C1DFC
- movs r0, 0x1
- movs r1, 0x1
- movs r2, 0
- bl sub_80C1DFC
- movs r0, 0x2
- movs r1, 0
- movs r2, 0
- bl sub_80C1DFC
- movs r0, 0x3
- movs r1, 0x1
- movs r2, 0x1
- bl sub_80C1DFC
- movs r0, 0x4
- movs r1, 0x1
- movs r2, 0x1
- bl sub_80C1DFC
- movs r0, 0xA
- movs r1, 0x1
- movs r2, 0x1
- bl sub_80C1DFC
- movs r0, 0x5
- movs r1, 0x1
- movs r2, 0x1
- bl sub_80C1DFC
- movs r0, 0x6
- movs r1, 0x1
- movs r2, 0x1
- bl sub_80C1DFC
- movs r0, 0x7
- movs r1, 0x1
- movs r2, 0x1
- bl sub_80C1DFC
- movs r0, 0x8
- movs r1, 0x1
- movs r2, 0x1
- bl sub_80C1DFC
- movs r0, 0x9
- movs r1, 0x1
- movs r2, 0x1
- bl sub_80C1DFC
-_080C203C:
- pop {r0}
- bx r0
- thumb_func_end sub_80C1EF4
-
- thumb_func_start sub_80C2040
-sub_80C2040: @ 80C2040
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r4, 0
- bl sub_80C1EF4
- ldr r0, =gUnknown_0856ED30
- lsls r4, 3
- adds r4, r0
- ldr r0, [r4]
- bl sub_80C2618
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80C2040
-
- thumb_func_start sub_80C2064
-sub_80C2064: @ 80C2064
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r4, r1, 24
- bl sub_80C1EF4
- cmp r4, 0x6
- bhi _080C20DE
- lsls r0, r4, 2
- ldr r1, =_080C2084
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080C2084:
- .4byte _080C20A0
- .4byte _080C20A4
- .4byte _080C20A8
- .4byte _080C20B6
- .4byte _080C20C4
- .4byte _080C20C8
- .4byte _080C20D4
-_080C20A0:
- movs r0, 0x3
- b _080C20CA
-_080C20A4:
- movs r0, 0x4
- b _080C20CA
-_080C20A8:
- movs r0, 0xA
- movs r1, 0
- movs r2, 0
- bl sub_80C1DFC
- movs r0, 0x5
- b _080C20CA
-_080C20B6:
- movs r0, 0xA
- movs r1, 0
- movs r2, 0
- bl sub_80C1DFC
- movs r0, 0x6
- b _080C20CA
-_080C20C4:
- movs r0, 0x7
- b _080C20CA
-_080C20C8:
- movs r0, 0x8
-_080C20CA:
- movs r1, 0
- movs r2, 0
- bl sub_80C1DFC
- b _080C20DE
-_080C20D4:
- movs r0, 0x9
- movs r1, 0
- movs r2, 0
- bl sub_80C1DFC
-_080C20DE:
- ldr r0, =gUnknown_0856ED48
- lsls r1, r4, 1
- adds r1, r4
- lsls r1, 2
- adds r1, r0
- ldr r0, [r1]
- bl sub_80C2618
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80C2064
-
- thumb_func_start sub_80C20F8
-sub_80C20F8: @ 80C20F8
- push {r4,r5,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0x28
- movs r1, 0x10
- movs r2, 0x60
- movs r3, 0x50
- bl sub_80C12B0
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r5, r0, r1
- ldrh r0, [r5, 0x16]
- ldrh r1, [r5, 0x14]
- adds r0, r1
- lsls r0, 16
- ldr r1, =gUnknown_0856EE5C
- lsrs r0, 13
- adds r1, 0x4
- adds r0, r1
- ldr r0, [r0]
- movs r1, 0x2D
- movs r2, 0x11
- bl sub_80C1270
- ldrh r0, [r5, 0x1A]
- ldrh r1, [r5, 0x18]
- adds r0, r1
- lsls r0, 16
- ldr r1, =gUnknown_0856EEB4
- lsrs r0, 13
- adds r1, 0x4
- adds r0, r1
- ldr r0, [r0]
- movs r1, 0x2D
- movs r2, 0x21
- bl sub_80C1270
- ldrh r0, [r5, 0x1E]
- ldrh r1, [r5, 0x1C]
- adds r0, r1
- lsls r0, 16
- ldr r4, =gUnknown_0856EF14
- lsrs r0, 13
- adds r4, 0x4
- adds r0, r4
- ldr r0, [r0]
- movs r1, 0x2D
- movs r2, 0x31
- bl sub_80C1270
- ldrh r0, [r5, 0x22]
- ldrh r1, [r5, 0x20]
- adds r0, r1
- lsls r0, 16
- lsrs r0, 13
- adds r0, r4
- ldr r0, [r0]
- movs r1, 0x5D
- movs r2, 0x31
- bl sub_80C1270
- ldrh r0, [r5, 0x12]
- ldrh r1, [r5, 0x10]
- adds r0, r1
- lsls r0, 16
- ldr r1, =gUnknown_0856EE24
- lsrs r0, 13
- adds r1, 0x4
- adds r0, r1
- ldr r0, [r0]
- movs r1, 0x2D
- movs r2, 0x41
- bl sub_80C1270
- bl IsNationalPokedexEnabled
- cmp r0, 0
- beq _080C21B6
- ldrh r0, [r5, 0xE]
- ldrh r5, [r5, 0xC]
- adds r0, r5
- lsls r0, 16
- ldr r1, =gUnknown_0856EE0C
- lsrs r0, 13
- adds r1, 0x4
- adds r0, r1
- ldr r0, [r0]
- movs r1, 0x2D
- movs r2, 0x51
- bl sub_80C1270
-_080C21B6:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80C20F8
-
- thumb_func_start sub_80C21D4
-sub_80C21D4: @ 80C21D4
- push {r4-r6,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0x3
- bl GetBgTilemapBuffer
- adds r5, r0, 0
- cmp r4, 0
- bne _080C2268
- ldr r1, =0x00000c0b
- adds r0, r1, 0
- strh r0, [r5, 0x22]
- movs r1, 0x12
- ldr r0, =0x0000080d
- adds r2, r0, 0
-_080C21F4:
- lsls r0, r1, 1
- adds r0, r5
- strh r2, [r0]
- adds r0, r1, 0x1
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, 0x1E
- bls _080C21F4
- movs r2, 0x1
- ldr r1, =0x0000040a
- adds r6, r1, 0
- movs r4, 0x2
-_080C220C:
- lsls r0, r2, 6
- adds r0, r5
- strh r6, [r0, 0x22]
- movs r1, 0x12
- adds r3, r2, 0x1
- adds r2, r0, 0
-_080C2218:
- lsls r0, r1, 1
- adds r0, r2
- strh r4, [r0]
- adds r0, r1, 0x1
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, 0x1E
- bls _080C2218
- lsls r0, r3, 16
- lsrs r2, r0, 16
- cmp r2, 0xC
- bls _080C220C
- ldr r2, =0x00000362
- adds r1, r5, r2
- adds r2, 0xA9
- adds r0, r2, 0
- strh r0, [r1]
- movs r1, 0x12
- movs r3, 0xD0
- lsls r3, 2
- movs r2, 0xD
-_080C2242:
- lsls r0, r1, 1
- adds r0, r5
- adds r0, r3
- strh r2, [r0]
- adds r0, r1, 0x1
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, 0x1E
- bls _080C2242
- b _080C228C
- .pool
-_080C2268:
- movs r2, 0
- movs r4, 0x4F
-_080C226C:
- movs r1, 0x11
- lsls r0, r2, 6
- adds r3, r2, 0x1
- adds r2, r0, r5
-_080C2274:
- lsls r0, r1, 1
- adds r0, r2
- strh r4, [r0]
- adds r0, r1, 0x1
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, 0x1D
- bls _080C2274
- lsls r0, r3, 16
- lsrs r2, r0, 16
- cmp r2, 0xD
- bls _080C226C
-_080C228C:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_80C21D4
-
- thumb_func_start sub_80C2294
-sub_80C2294: @ 80C2294
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r0, 24
- ldr r4, =gUnknown_0856EFC8
- ldr r3, =gTasks
- lsls r2, r0, 2
- adds r2, r0
- lsls r2, 3
- adds r0, r2, r3
- movs r5, 0xA
- ldrsh r1, [r0, r5]
- lsls r1, 3
- adds r1, r4
- ldr r6, [r1]
- adds r3, 0x8
- adds r2, r3
- ldrb r0, [r1, 0x4]
- lsls r0, 1
- adds r0, r2
- mov r8, r0
- ldrb r0, [r1, 0x5]
- lsls r0, 1
- adds r7, r2, r0
- bl sub_80C267C
- movs r5, 0
- ldrh r4, [r7]
- b _080C22F2
- .pool
-_080C22D8:
- adds r0, r1, r6
- ldr r1, [r0, 0x4]
- adds r0, r5, 0
- bl sub_80C2668
- adds r0, r5, 0x1
- lsls r0, 16
- lsrs r5, r0, 16
- adds r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- cmp r5, 0x5
- bhi _080C22FC
-_080C22F2:
- lsls r1, r4, 3
- adds r0, r1, r6
- ldr r0, [r0, 0x4]
- cmp r0, 0
- bne _080C22D8
-_080C22FC:
- mov r1, r8
- ldrh r0, [r1]
- ldrh r1, [r7]
- adds r0, r1
- lsls r0, 3
- adds r0, r6
- ldr r0, [r0]
- bl sub_80C2618
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_80C2294
-
- thumb_func_start sub_80C2318
-sub_80C2318: @ 80C2318
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r3, r1, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r0, =gTasks + 0x8
- adds r1, r0
- ldr r2, =gUnknown_0856EFC8
- lsls r0, r3, 3
- adds r0, r2
- ldrb r2, [r0, 0x4]
- lsls r2, 1
- adds r2, r1, r2
- ldrb r0, [r0, 0x5]
- lsls r0, 1
- adds r1, r0
- ldrh r0, [r1]
- ldrh r2, [r2]
- adds r0, r2
- lsls r0, 16
- lsrs r2, r0, 16
- cmp r3, 0x5
- bhi _080C237C
- lsls r0, r3, 2
- ldr r1, =_080C2364
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080C2364:
- .4byte _080C2390
- .4byte _080C239A
- .4byte _080C23AA
- .4byte _080C23AA
- .4byte _080C2388
- .4byte _080C2380
-_080C237C:
- movs r0, 0
- b _080C23B0
-_080C2380:
- ldr r0, =gUnknown_0856EFAC
- b _080C23AC
- .pool
-_080C2388:
- ldr r0, =gUnknown_0856EFAE
- b _080C23AC
- .pool
-_080C2390:
- cmp r2, 0
- beq _080C239E
- lsls r0, r2, 24
- lsrs r0, 24
- b _080C23B0
-_080C239A:
- cmp r2, 0
- bne _080C23A2
-_080C239E:
- movs r0, 0xFF
- b _080C23B0
-_080C23A2:
- subs r0, r2, 0x1
- lsls r0, 24
- lsrs r0, 24
- b _080C23B0
-_080C23AA:
- ldr r0, =gUnknown_0856EFB4
-_080C23AC:
- adds r0, r2, r0
- ldrb r0, [r0]
-_080C23B0:
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80C2318
-
- thumb_func_start sub_80C23B8
-sub_80C23B8: @ 80C23B8
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r1, =gUnknown_02039B4C
- ldr r0, [r1]
- ldr r2, =0x00000614
- adds r0, r2
- ldrh r0, [r0]
- adds r5, r1, 0
- cmp r0, 0
- beq _080C23D2
- cmp r0, 0x1
- beq _080C23E0
-_080C23D2:
- movs r3, 0
- b _080C23E2
- .pool
-_080C23E0:
- movs r3, 0x1
-_080C23E2:
- ldr r1, =gTasks
- lsls r2, r4, 2
- adds r0, r2, r4
- lsls r0, 3
- adds r0, r1
- strh r3, [r0, 0xC]
- ldr r0, [r5]
- movs r3, 0xC3
- lsls r3, 3
- adds r0, r3
- ldrh r0, [r0]
- adds r5, r1, 0
- cmp r0, 0x5
- bhi _080C2428
- lsls r0, 2
- ldr r1, =_080C2410
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080C2410:
- .4byte _080C2428
- .4byte _080C242C
- .4byte _080C2430
- .4byte _080C2434
- .4byte _080C2438
- .4byte _080C243C
-_080C2428:
- movs r3, 0
- b _080C243E
-_080C242C:
- movs r3, 0x1
- b _080C243E
-_080C2430:
- movs r3, 0x2
- b _080C243E
-_080C2434:
- movs r3, 0x3
- b _080C243E
-_080C2438:
- movs r3, 0x4
- b _080C243E
-_080C243C:
- movs r3, 0x5
-_080C243E:
- adds r0, r2, r4
- lsls r0, 3
- adds r0, r5
- strh r3, [r0, 0x10]
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80C23B8
-
- thumb_func_start sub_80C244C
-sub_80C244C: @ 80C244C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r3, =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r0, r1, r3
- ldrb r2, [r0, 0xA]
- adds r3, 0x8
- adds r1, r3
- ldr r0, =gUnknown_0856EFC8
- lsls r2, 3
- adds r2, r0
- ldrb r0, [r2, 0x5]
- lsls r0, 1
- adds r1, r0
- ldrh r0, [r2, 0x6]
- subs r0, 0x1
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x5
- bls _080C248C
- ldrh r0, [r1]
- cmp r0, 0
- beq _080C248C
- movs r0, 0
- b _080C248E
- .pool
-_080C248C:
- movs r0, 0x1
-_080C248E:
- pop {r1}
- bx r1
- thumb_func_end sub_80C244C
-
- thumb_func_start sub_80C2494
-sub_80C2494: @ 80C2494
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r3, =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r0, r1, r3
- ldrb r2, [r0, 0xA]
- adds r3, 0x8
- adds r1, r3
- ldr r0, =gUnknown_0856EFC8
- lsls r2, 3
- adds r2, r0
- ldrb r0, [r2, 0x5]
- lsls r0, 1
- adds r1, r0
- ldrh r0, [r2, 0x6]
- subs r0, 0x1
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x5
- bls _080C24D8
- ldrh r1, [r1]
- subs r0, 0x5
- cmp r1, r0
- bge _080C24D8
- movs r0, 0
- b _080C24DA
- .pool
-_080C24D8:
- movs r0, 0x1
-_080C24DA:
- pop {r1}
- bx r1
- thumb_func_end sub_80C2494
-
- thumb_func_start sub_80C24E0
-sub_80C24E0: @ 80C24E0
- push {r4,lr}
- adds r4, r0, 0
- ldr r2, =gTasks
- movs r0, 0x2E
- ldrsh r1, [r4, r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r2
- ldr r1, [r0]
- ldr r0, =sub_80C1BCC
- cmp r1, r0
- bne _080C2580
- movs r1, 0x30
- ldrsh r0, [r4, r1]
- cmp r0, 0
- beq _080C2528
- ldrh r0, [r4, 0x2E]
- lsls r0, 24
- lsrs r0, 24
- bl sub_80C2494
- lsls r0, 24
- cmp r0, 0
- beq _080C2544
- adds r2, r4, 0
- adds r2, 0x3E
- ldrb r0, [r2]
- movs r1, 0x4
- orrs r0, r1
- b _080C2550
- .pool
-_080C2528:
- ldrh r0, [r4, 0x2E]
- lsls r0, 24
- lsrs r0, 24
- bl sub_80C244C
- lsls r0, 24
- cmp r0, 0
- beq _080C2544
- adds r2, r4, 0
- adds r2, 0x3E
- ldrb r0, [r2]
- movs r1, 0x4
- orrs r0, r1
- b _080C2550
-_080C2544:
- adds r2, r4, 0
- adds r2, 0x3E
- ldrb r1, [r2]
- movs r0, 0x5
- negs r0, r0
- ands r0, r1
-_080C2550:
- strb r0, [r2]
- ldrh r2, [r4, 0x32]
- movs r1, 0x30
- ldrsh r0, [r4, r1]
- lsls r0, 7
- adds r0, r2, r0
- lsls r0, 24
- ldr r1, =gSineTable
- lsrs r0, 23
- adds r0, r1
- movs r1, 0
- ldrsh r0, [r0, r1]
- cmp r0, 0
- bge _080C256E
- adds r0, 0x7F
-_080C256E:
- asrs r0, 7
- strh r0, [r4, 0x26]
- adds r0, r2, 0
- adds r0, 0x8
- strh r0, [r4, 0x32]
- b _080C258C
- .pool
-_080C2580:
- adds r0, r4, 0
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0]
-_080C258C:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80C24E0
-
- thumb_func_start sub_80C2594
-sub_80C2594: @ 80C2594
- push {r4-r6,lr}
- mov r6, r9
- mov r5, r8
- push {r5,r6}
- adds r5, r0, 0
- lsls r5, 24
- lsrs r5, 24
- ldr r6, =gUnknown_0855D1AC
- adds r0, r6, 0
- movs r1, 0xB8
- movs r2, 0x4
- movs r3, 0
- bl CreateSprite
- lsls r0, 24
- lsrs r0, 24
- ldr r4, =gSprites
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r0, r1, r4
- movs r2, 0
- strh r5, [r0, 0x2E]
- strh r2, [r0, 0x30]
- movs r0, 0x1C
- adds r0, r4
- mov r9, r0
- add r1, r9
- ldr r0, =sub_80C24E0
- mov r8, r0
- str r0, [r1]
- adds r0, r6, 0
- movs r1, 0xB8
- movs r2, 0x6C
- movs r3, 0
- bl CreateSprite
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r4, r1, r4
- strh r5, [r4, 0x2E]
- movs r0, 0x1
- strh r0, [r4, 0x30]
- adds r4, 0x3F
- ldrb r0, [r4]
- movs r2, 0x2
- orrs r0, r2
- strb r0, [r4]
- add r1, r9
- mov r0, r8
- str r0, [r1]
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80C2594
-
- thumb_func_start sub_80C2618
-sub_80C2618: @ 80C2618
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x8
- movs r1, 0x78
- movs r2, 0xE0
- movs r3, 0x20
- bl sub_80C12B0
- adds r0, r4, 0
- movs r1, 0x8
- movs r2, 0x79
- bl sub_80C1270
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80C2618
-
- thumb_func_start sub_80C2638
-sub_80C2638: @ 80C2638
- push {lr}
- adds r1, r0, 0
- lsls r1, 4
- adds r1, 0x8
- movs r0, 0x90
- movs r2, 0x8
- movs r3, 0x10
- bl sub_80C12B0
- pop {r0}
- bx r0
- thumb_func_end sub_80C2638
-
- thumb_func_start sub_80C2650
-sub_80C2650: @ 80C2650
- push {lr}
- adds r2, r0, 0
- ldr r0, =gText_SelectorArrow
- lsls r2, 4
- adds r2, 0x9
- movs r1, 0x90
- bl sub_80C1270
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80C2650
-
- thumb_func_start sub_80C2668
-sub_80C2668: @ 80C2668
- push {lr}
- adds r2, r0, 0
- adds r0, r1, 0
- lsls r2, 4
- adds r2, 0x9
- movs r1, 0x98
- bl sub_80C1270
- pop {r0}
- bx r0
- thumb_func_end sub_80C2668
-
- thumb_func_start sub_80C267C
-sub_80C267C: @ 80C267C
- push {lr}
- movs r0, 0x90
- movs r1, 0x8
- movs r2, 0x60
- movs r3, 0x60
- bl sub_80C12B0
- pop {r0}
- bx r0
- thumb_func_end sub_80C267C
-
- .align 2, 0 @ Don't pad with nop.