diff options
Diffstat (limited to 'asm')
-rw-r--r-- | asm/pokedex.s | 4247 |
1 files changed, 0 insertions, 4247 deletions
diff --git a/asm/pokedex.s b/asm/pokedex.s index b1ddaa0d0..67c7ca4a0 100644 --- a/asm/pokedex.s +++ b/asm/pokedex.s @@ -5,4253 +5,6 @@ .text - thumb_func_start ResetPokedex -ResetPokedex: @ 80BB2D0 - push {r4-r6,lr} - ldr r0, =gUnknown_02039B50 - movs r2, 0 - strh r2, [r0] - ldr r1, =gUnknown_02039B52 - movs r0, 0x40 - strb r0, [r1] - ldr r0, =gUnknown_030060B0 - strb r2, [r0] - ldr r4, =gSaveBlock2Ptr - ldr r0, [r4] - movs r1, 0 - strb r2, [r0, 0x19] - ldr r0, [r4] - strb r2, [r0, 0x18] - ldr r0, [r4] - strb r2, [r0, 0x1A] - ldr r0, [r4] - strb r2, [r0, 0x1B] - ldr r0, [r4] - str r1, [r0, 0x1C] - str r1, [r0, 0x20] - str r1, [r0, 0x24] - bl DisableNationalPokedex - movs r1, 0 - movs r2, 0 - ldr r3, =gSaveBlock1Ptr - ldr r6, =0x00000988 - ldr r5, =0x00003b24 -_080BB30C: - ldr r0, [r4] - adds r0, 0x28 - adds r0, r1 - strb r2, [r0] - ldr r0, [r4] - adds r0, 0x5C - adds r0, r1 - strb r2, [r0] - ldr r0, [r3] - adds r0, r6 - adds r0, r1 - strb r2, [r0] - ldr r0, [r3] - adds r0, r5 - adds r0, r1 - strb r2, [r0] - adds r0, r1, 0x1 - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, 0x33 - bls _080BB30C - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end ResetPokedex - - thumb_func_start sub_80BB358 -sub_80BB358: @ 80BB358 - ldr r1, =gUnknown_02039B50 - movs r0, 0 - strh r0, [r1] - ldr r1, =gUnknown_02039B52 - movs r0, 0x40 - strb r0, [r1] - bx lr - .pool - thumb_func_end sub_80BB358 - - thumb_func_start sub_80BB370 -sub_80BB370: @ 80BB370 - push {lr} - bl LoadOam - bl ProcessSpriteCopyRequests - bl TransferPlttBuffer - pop {r0} - bx r0 - thumb_func_end sub_80BB370 - - thumb_func_start sub_80BB384 -sub_80BB384: @ 80BB384 - push {r4-r7,lr} - adds r4, r0, 0 - movs r3, 0 - ldr r0, =0x0000ffff - adds r7, r0, 0 - movs r1, 0x2 - negs r1, r1 - mov r12, r1 - movs r6, 0x3 - negs r6, r6 - ldr r5, =0x00000181 -_080BB39A: - lsls r1, r3, 2 - adds r1, r4, r1 - ldrh r0, [r1] - orrs r0, r7 - strh r0, [r1] - ldrb r2, [r1, 0x2] - mov r0, r12 - ands r0, r2 - ands r0, r6 - strb r0, [r1, 0x2] - adds r0, r3, 0x1 - lsls r0, 16 - lsrs r3, r0, 16 - cmp r3, r5 - bls _080BB39A - movs r2, 0xC1 - lsls r2, 3 - adds r0, r4, r2 - movs r2, 0 - strh r2, [r0] - ldr r0, =0x0000060a - adds r3, r4, r0 - ldrb r1, [r3] - movs r0, 0x2 - negs r0, r0 - ands r0, r1 - movs r1, 0x3 - negs r1, r1 - ands r0, r1 - strb r0, [r3] - ldr r1, =0x0000060c - adds r0, r4, r1 - strh r2, [r0] - ldr r3, =0x0000060e - adds r0, r4, r3 - strh r2, [r0] - adds r1, 0x4 - adds r0, r4, r1 - strh r2, [r0] - adds r3, 0x4 - adds r0, r4, r3 - strh r2, [r0] - adds r1, 0x4 - adds r0, r4, r1 - strh r2, [r0] - adds r3, 0x4 - adds r0, r4, r3 - strh r2, [r0] - adds r1, 0x4 - adds r0, r4, r1 - strh r2, [r0] - adds r3, 0x4 - adds r0, r4, r3 - strh r2, [r0] - adds r1, 0x4 - adds r0, r4, r1 - strh r2, [r0] - movs r3, 0 - ldr r0, =0x0000061e - adds r2, r4, r0 - ldr r1, =0x0000ffff - adds r5, r1, 0 -_080BB416: - lsls r0, r3, 1 - adds r0, r2, r0 - ldrh r1, [r0] - orrs r1, r5 - strh r1, [r0] - adds r0, r3, 0x1 - lsls r0, 16 - lsrs r3, r0, 16 - cmp r3, 0x3 - bls _080BB416 - movs r2, 0xC5 - lsls r2, 3 - adds r0, r4, r2 - movs r2, 0 - movs r1, 0 - strh r1, [r0] - ldr r3, =0x0000062a - adds r0, r4, r3 - strh r1, [r0] - adds r3, 0x2 - adds r0, r4, r3 - strb r2, [r0] - adds r3, 0x1 - adds r0, r4, r3 - strb r2, [r0] - adds r3, 0x1 - adds r0, r4, r3 - strb r2, [r0] - adds r3, 0x1 - adds r0, r4, r3 - strb r2, [r0] - movs r2, 0xC6 - lsls r2, 3 - adds r0, r4, r2 - strh r1, [r0] - adds r3, 0x3 - adds r0, r4, r3 - strh r1, [r0] - adds r2, 0x4 - adds r0, r4, r2 - strh r1, [r0] - adds r3, 0x4 - adds r0, r4, r3 - strh r1, [r0] - adds r2, 0x4 - adds r0, r4, r2 - strh r1, [r0] - movs r3, 0 - ldr r0, =0x0000063a - adds r1, r4, r0 - movs r2, 0 -_080BB47C: - lsls r0, r3, 1 - adds r0, r1, r0 - strh r2, [r0] - adds r0, r3, 0x1 - lsls r0, 16 - lsrs r3, r0, 16 - cmp r3, 0x3 - bls _080BB47C - ldr r1, =0x0000064a - adds r0, r4, r1 - movs r1, 0 - strb r1, [r0] - ldr r2, =0x0000064b - adds r0, r4, r2 - strb r1, [r0] - ldr r0, =0x0000064c - adds r3, r4, r0 - ldrb r2, [r3] - movs r0, 0x2 - negs r0, r0 - ands r0, r2 - strb r0, [r3] - ldr r2, =0x0000064d - adds r0, r4, r2 - strb r1, [r0] - ldr r3, =0x0000064e - adds r0, r4, r3 - strb r1, [r0] - adds r2, 0x2 - adds r0, r4, r2 - strb r1, [r0] - adds r3, 0x2 - adds r0, r4, r3 - strh r1, [r0] - adds r2, 0x3 - adds r0, r4, r2 - strh r1, [r0] - movs r3, 0 - ldr r0, =0x00000654 - adds r1, r4, r0 - movs r2, 0 -_080BB4CE: - adds r0, r1, r3 - strb r2, [r0] - adds r0, r3, 0x1 - lsls r0, 16 - lsrs r3, r0, 16 - cmp r3, 0x7 - bls _080BB4CE - movs r3, 0 - ldr r2, =0x0000065c - adds r1, r4, r2 - movs r2, 0 -_080BB4E4: - adds r0, r1, r3 - strb r2, [r0] - adds r0, r3, 0x1 - lsls r0, 16 - lsrs r3, r0, 16 - cmp r3, 0x7 - bls _080BB4E4 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80BB384 - - thumb_func_start sub_80BB534 -sub_80BB534: @ 80BB534 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x8 - ldr r0, =gMain - movs r1, 0x87 - lsls r1, 3 - adds r4, r0, r1 - ldrb r0, [r4] - cmp r0, 0x1 - beq _080BB5FC - cmp r0, 0x1 - ble _080BB558 - cmp r0, 0x2 - beq _080BB628 - cmp r0, 0x3 - bne _080BB558 - b _080BB71C -_080BB558: - movs r0, 0 - bl SetVBlankCallback - movs r0, 0 - bl sub_80C09B0 - movs r3, 0xC0 - lsls r3, 19 - movs r4, 0xC0 - lsls r4, 9 - add r2, sp, 0x4 - mov r8, r2 - mov r2, sp - movs r6, 0 - ldr r1, =0x040000d4 - movs r5, 0x80 - lsls r5, 5 - ldr r7, =0x81000800 - movs r0, 0x81 - lsls r0, 24 - mov r12, r0 -_080BB582: - strh r6, [r2] - mov r0, sp - 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 _080BB582 - strh r6, [r2] - mov r2, sp - str r2, [r1] - str r3, [r1, 0x4] - lsrs r0, r4, 1 - mov r3, r12 - orrs r0, r3 - 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, 0x4] - ldr r2, =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 - mov r0, sp - 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] - ldr r0, =gMain - movs r2, 0x87 - lsls r2, 3 - adds r0, r2 - movs r1, 0x1 - strb r1, [r0] - b _080BB74C - .pool -_080BB5FC: - bl ScanlineEffect_Stop - bl ResetTasks - bl ResetSpriteData - bl ResetPaletteFade - bl FreeAllSpritePalettes - ldr r1, =gReservedSpritePaletteCount - movs r0, 0x8 - strb r0, [r1] - bl dp13_810BB8C - ldrb r0, [r4] - adds r0, 0x1 - strb r0, [r4] - b _080BB74C - .pool -_080BB628: - ldr r4, =gUnknown_02039B4C - ldr r0, =0x00000664 - bl AllocZeroed - str r0, [r4] - bl sub_80BB384 - ldr r0, =sub_80BB78C - movs r1, 0 - bl CreateTask - ldr r1, [r4] - ldr r5, =gSaveBlock2Ptr - ldr r0, [r5] - ldrb r0, [r0, 0x19] - ldr r3, =0x00000612 - adds r1, r3 - strh r0, [r1] - bl IsNationalPokedexEnabled - adds r1, r0, 0 - cmp r1, 0 - bne _080BB65E - ldr r0, [r4] - ldr r2, =0x00000612 - adds r0, r2 - strh r1, [r0] -_080BB65E: - ldr r1, [r4] - ldr r0, [r5] - ldrb r2, [r0, 0x18] - ldr r3, =0x00000616 - adds r0, r1, r3 - strh r2, [r0] - ldr r0, =gUnknown_02039B50 - ldrh r2, [r0] - subs r3, 0x8 - adds r0, r1, r3 - strh r2, [r0] - ldr r0, =gUnknown_02039B52 - ldrb r0, [r0] - ldr r2, =0x0000062c - adds r1, r2 - strb r0, [r1] - ldr r0, [r4] - adds r3, 0x3F - adds r0, r3 - movs r1, 0 - strb r1, [r0] - bl IsNationalPokedexEnabled - cmp r0, 0 - bne _080BB6D0 - movs r0, 0 - bl GetHoennPokedexCount - ldr r1, [r4] - ldr r2, =0x0000061a - adds r1, r2 - strh r0, [r1] - movs r0, 0x1 - bl GetHoennPokedexCount - b _080BB6E4 - .pool -_080BB6D0: - movs r0, 0 - bl GetNationalPokedexCount - ldr r1, [r4] - ldr r2, =0x0000061a - adds r1, r2 - strh r0, [r1] - movs r0, 0x1 - bl GetNationalPokedexCount -_080BB6E4: - ldr r1, [r4] - ldr r3, =0x0000061c - adds r1, r3 - strh r0, [r1] - ldr r0, =gUnknown_02039B4C - ldr r0, [r0] - ldr r1, =0x0000062d - adds r0, r1 - movs r1, 0x8 - strb r1, [r0] - ldr r1, =gMain - movs r2, 0x87 - lsls r2, 3 - adds r1, r2 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - b _080BB74C - .pool -_080BB71C: - movs r0, 0x1 - bl EnableInterrupts - ldr r0, =sub_80BB370 - bl SetVBlankCallback - ldr r0, =sub_80BB774 - bl SetMainCallback2 - ldr r0, =gUnknown_02039B4C - ldr r1, [r0] - ldr r3, =0x00000612 - adds r0, r1, r3 - ldrb r0, [r0] - ldr r2, =0x00000616 - adds r1, r2 - ldrb r1, [r1] - bl sub_80BC8D4 - ldr r0, =gMPlayInfo_BGM - ldr r1, =0x0000ffff - movs r2, 0x80 - bl m4aMPlayVolumeControl -_080BB74C: - add sp, 0x8 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80BB534 - - thumb_func_start sub_80BB774 -sub_80BB774: @ 80BB774 - push {lr} - bl RunTasks - bl AnimateSprites - bl BuildOamBuffer - bl UpdatePaletteFade - pop {r0} - bx r0 - thumb_func_end sub_80BB774 - - thumb_func_start sub_80BB78C -sub_80BB78C: @ 80BB78C - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, =gUnknown_02039B4C - ldr r1, [r0] - ldr r0, =0x0000064c - adds r1, r0 - ldrb r2, [r1] - movs r0, 0x2 - negs r0, r0 - ands r0, r2 - strb r0, [r1] - movs r0, 0 - bl sub_80BC514 - lsls r0, 24 - cmp r0, 0 - beq _080BB7BE - ldr r0, =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, =sub_80BB7D4 - str r0, [r1] -_080BB7BE: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80BB78C - - thumb_func_start sub_80BB7D4 -sub_80BB7D4: @ 80BB7D4 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x4 - lsls r0, 24 - lsrs r6, r0, 24 - ldr r7, =gUnknown_02039B4C - ldr r0, [r7] - ldr r4, =0x00000652 - adds r0, r4 - ldrh r1, [r0] - movs r0, 0x12 - bl SetGpuReg - ldr r3, [r7] - adds r1, r3, r4 - ldrh r0, [r1] - movs r4, 0 - ldrsh r2, [r1, r4] - mov r8, r2 - cmp r2, 0 - beq _080BB810 - subs r0, 0x8 - strh r0, [r1] - b _080BBA06 - .pool -_080BB810: - ldr r2, =gMain - ldrh r1, [r2, 0x2E] - movs r0, 0x1 - mov r9, r0 - ands r0, r1 - cmp r0, 0 - beq _080BB8A4 - ldr r1, =0x0000060e - adds r0, r3, r1 - ldrh r0, [r0] - lsls r0, 2 - adds r0, r3, r0 - ldrb r0, [r0, 0x2] - lsls r0, 31 - cmp r0, 0 - beq _080BB8A4 - bl sub_80BD8D0 - ldr r4, =gSprites - ldr r0, [r7] - ldr r5, =0x00000626 - adds r0, r5 - ldrh r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldrb r1, [r0, 0x5] - lsrs r1, 4 - adds r1, 0x10 - mov r0, r9 - lsls r0, r1 - mvns r0, r0 - mov r2, r8 - str r2, [sp] - movs r1, 0 - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - ldr r0, [r7] - adds r0, r5 - ldrh r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r4, 0x1C - adds r0, r4 - ldr r1, =sub_80BE470 - str r1, [r0] - ldr r1, =gTasks - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - adds r0, r1 - ldr r1, =sub_80BBBF4 - str r1, [r0] - movs r0, 0x15 - b _080BB976 - .pool -_080BB8A4: - ldrh r2, [r2, 0x2E] - movs r0, 0x8 - ands r0, r2 - lsls r0, 16 - lsrs r4, r0, 16 - cmp r4, 0 - beq _080BB8FC - ldr r3, =gUnknown_02039B4C - ldr r1, [r3] - ldr r4, =0x00000652 - adds r0, r1, r4 - movs r2, 0 - strh r2, [r0] - ldr r0, =0x0000064f - adds r1, r0 - movs r0, 0x1 - strb r0, [r1] - ldr r0, [r3] - movs r1, 0xCA - lsls r1, 3 - adds r0, r1 - strh r2, [r0] - ldr r1, =gTasks - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - adds r0, r1 - ldr r1, =sub_80BBA78 - str r1, [r0] - movs r0, 0x5 - bl PlaySE - b _080BBA06 - .pool -_080BB8FC: - movs r0, 0x4 - ands r0, r2 - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, 0 - beq _080BB9A0 - movs r0, 0x5 - bl PlaySE - movs r0, 0x1 - negs r0, r0 - str r4, [sp] - movs r1, 0 - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - bl sub_80C1258 - ldr r1, =gTasks - lsls r3, r6, 2 - adds r3, r6 - lsls r3, 3 - adds r3, r1 - lsls r0, 24 - lsrs r0, 24 - movs r2, 0 - strh r0, [r3, 0x8] - ldr r1, =gUnknown_02039B4C - ldr r0, [r1] - ldr r4, =0x0000064e - adds r0, r4 - strb r2, [r0] - ldr r0, [r1] - ldr r2, =0x0000062c - adds r1, r0, r2 - ldrb r2, [r1] - subs r4, 0x24 - adds r1, r0, r4 - strh r2, [r1] - ldr r2, =0x0000060e - adds r1, r0, r2 - ldrh r2, [r1] - subs r4, 0x1A - adds r1, r0, r4 - strh r2, [r1] - ldr r2, =0x00000612 - adds r1, r0, r2 - ldrh r2, [r1] - adds r4, 0x4 - adds r1, r0, r4 - strh r2, [r1] - ldr r2, =0x00000616 - adds r1, r0, r2 - ldrh r1, [r1] - adds r4, 0x4 - adds r0, r4 - strh r1, [r0] - ldr r0, =sub_80BBD1C - str r0, [r3] - movs r0, 0x2 -_080BB976: - bl PlaySE - bl sub_80BC890 - b _080BBA06 - .pool -_080BB9A0: - movs r0, 0x2 - ands r0, r2 - cmp r0, 0 - beq _080BB9D8 - movs r0, 0x1 - negs r0, r0 - str r1, [sp] - movs r1, 0 - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - ldr r1, =gTasks - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - adds r0, r1 - ldr r1, =sub_80BBDE8 - str r1, [r0] - movs r0, 0x3 - bl PlaySE - b _080BBA06 - .pool -_080BB9D8: - ldr r5, =gUnknown_02039B4C - ldr r0, [r5] - ldr r4, =0x0000060e - adds r0, r4 - ldrh r0, [r0] - movs r1, 0xE - bl sub_80BD69C - ldr r1, [r5] - adds r4, r1, r4 - strh r0, [r4] - ldr r0, =0x0000062e - adds r1, r0 - ldrb r0, [r1] - cmp r0, 0 - beq _080BBA06 - ldr r0, =gTasks - lsls r1, r6, 2 - adds r1, r6 - lsls r1, 3 - adds r1, r0 - ldr r0, =sub_80BBA28 - str r0, [r1] -_080BBA06: - add sp, 0x4 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80BB7D4 - - thumb_func_start sub_80BBA28 -sub_80BBA28: @ 80BBA28 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, =gUnknown_02039B4C - ldr r2, [r0] - ldr r1, =0x0000062f - adds r0, r2, r1 - ldrb r0, [r0] - ldr r3, =0x00000634 - adds r1, r2, r3 - ldrb r1, [r1] - adds r3, 0x2 - adds r2, r3 - ldrb r2, [r2] - bl sub_80BD404 - lsls r0, 24 - cmp r0, 0 - beq _080BBA5C - ldr r0, =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, =sub_80BB7D4 - str r0, [r1] -_080BBA5C: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80BBA28 - - thumb_func_start sub_80BBA78 -sub_80BBA78: @ 80BBA78 - push {r4-r7,lr} - sub sp, 0x4 - lsls r0, 24 - lsrs r7, r0, 24 - ldr r6, =gUnknown_02039B4C - ldr r0, [r6] - ldr r4, =0x00000652 - adds r0, r4 - ldrh r1, [r0] - movs r0, 0x12 - bl SetGpuReg - ldr r3, [r6] - adds r1, r3, r4 - ldrh r2, [r1] - movs r4, 0 - ldrsh r0, [r1, r4] - cmp r0, 0x50 - beq _080BBAB0 - adds r0, r2, 0 - adds r0, 0x8 - strh r0, [r1] - b _080BBBE8 - .pool -_080BBAB0: - ldr r5, =gMain - ldrh r1, [r5, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080BBB58 - movs r2, 0xCA - lsls r2, 3 - adds r0, r3, r2 - ldrh r0, [r0] - cmp r0, 0x1 - beq _080BBADC - cmp r0, 0x1 - ble _080BBB20 - cmp r0, 0x2 - beq _080BBAF4 - cmp r0, 0x3 - beq _080BBB34 - b _080BBB20 - .pool -_080BBADC: - ldr r4, =0x0000060e - adds r1, r3, r4 - movs r0, 0 - strh r0, [r1] - ldr r0, =0x0000062c - adds r1, r3, r0 - movs r0, 0x40 - b _080BBB0C - .pool -_080BBAF4: - ldr r1, =0x0000060c - adds r2, r3, r1 - ldrh r0, [r2] - subs r0, 0x1 - ldr r4, =0x0000060e - adds r1, r3, r4 - strh r0, [r1] - ldrh r0, [r2] - lsls r0, 4 - adds r0, 0x30 - ldr r2, =0x0000062c - adds r1, r3, r2 -_080BBB0C: - strb r0, [r1] - bl sub_80BDA40 - ldr r0, [r6] - adds r0, r4 - ldrh r0, [r0] - movs r1, 0xE - bl sub_80BD2B4 - ldrh r1, [r5, 0x2E] -_080BBB20: - movs r0, 0x8 - orrs r0, r1 - strh r0, [r5, 0x2E] - b _080BBB58 - .pool -_080BBB34: - 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, r7, 2 - adds r0, r7 - lsls r0, 3 - adds r0, r1 - ldr r1, =sub_80BBDE8 - str r1, [r0] - movs r0, 0x3 - bl PlaySE -_080BBB58: - ldr r2, =gMain - ldrh r1, [r2, 0x2E] - movs r0, 0xA - ands r0, r1 - cmp r0, 0 - beq _080BBB98 - ldr r0, =gUnknown_02039B4C - ldr r0, [r0] - ldr r3, =0x0000064f - adds r0, r3 - movs r1, 0 - strb r1, [r0] - ldr r1, =gTasks - lsls r0, r7, 2 - adds r0, r7 - lsls r0, 3 - adds r0, r1 - ldr r1, =sub_80BB7D4 - str r1, [r0] - b _080BBBB6 - .pool -_080BBB98: - ldrh r1, [r2, 0x30] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _080BBBC4 - ldr r0, =gUnknown_02039B4C - ldr r0, [r0] - movs r4, 0xCA - lsls r4, 3 - adds r1, r0, r4 - ldrh r0, [r1] - cmp r0, 0 - beq _080BBBC4 - subs r0, 0x1 - strh r0, [r1] -_080BBBB6: - movs r0, 0x5 - bl PlaySE - b _080BBBE8 - .pool -_080BBBC4: - ldrh r1, [r2, 0x30] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _080BBBE8 - ldr r0, =gUnknown_02039B4C - ldr r0, [r0] - movs r2, 0xCA - lsls r2, 3 - adds r1, r0, r2 - ldrh r0, [r1] - cmp r0, 0x2 - bhi _080BBBE8 - adds r0, 0x1 - strh r0, [r1] - movs r0, 0x5 - bl PlaySE -_080BBBE8: - add sp, 0x4 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80BBA78 - - thumb_func_start sub_80BBBF4 -sub_80BBBF4: @ 80BBBF4 - push {r4-r6,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r2, =gSprites - ldr r5, =gUnknown_02039B4C - ldr r3, [r5] - ldr r6, =0x00000626 - adds r0, r3, r6 - ldrh r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r1, r0, r2 - movs r2, 0x20 - ldrsh r0, [r1, r2] - cmp r0, 0x30 - bne _080BBC52 - movs r2, 0x22 - ldrsh r0, [r1, r2] - cmp r0, 0x38 - bne _080BBC52 - ldr r1, =0x0000064a - adds r0, r3, r1 - ldrb r1, [r0] - ldr r2, =0x0000064b - adds r0, r3, r2 - strb r1, [r0] - ldr r1, [r5] - subs r2, 0x3D - adds r0, r1, r2 - ldrh r0, [r0] - lsls r0, 2 - adds r0, r1, r0 - adds r1, r6 - ldrb r1, [r1] - bl sub_80BE91C - ldr r2, =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r2 - lsls r0, 24 - lsrs r0, 24 - strh r0, [r1, 0x8] - ldr r0, =sub_80BBC74 - str r0, [r1] -_080BBC52: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80BBBF4 - - thumb_func_start sub_80BBC74 -sub_80BBC74: @ 80BBC74 - push {r4,r5,lr} - lsls r0, 24 - lsrs r0, 24 - ldr r2, =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r4, r1, r2 - movs r0, 0x8 - ldrsh r1, [r4, r0] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r2 - ldrb r0, [r0, 0x4] - cmp r0, 0 - beq _080BBCE0 - ldr r5, =gUnknown_02039B4C - ldr r0, [r5] - ldr r1, =0x0000064a - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x1 - bne _080BBCFC - ldrb r0, [r4, 0x8] - bl sub_80BE9C4 - lsls r0, 24 - cmp r0, 0 - bne _080BBCFC - bl sub_80BD930 - lsls r0, 24 - cmp r0, 0 - beq _080BBCFC - ldr r0, [r5] - ldr r2, =0x0000060e - adds r1, r0, r2 - ldrh r1, [r1] - lsls r1, 2 - adds r0, r1 - ldrb r1, [r4, 0x8] - bl sub_80BE9F8 - b _080BBCFC - .pool -_080BBCE0: - ldr r2, =gUnknown_02039B50 - ldr r0, =gUnknown_02039B4C - ldr r1, [r0] - ldr r3, =0x0000060e - adds r0, r1, r3 - ldrh r0, [r0] - strh r0, [r2] - ldr r2, =gUnknown_02039B52 - ldr r0, =0x0000062c - adds r1, r0 - ldrb r0, [r1] - strb r0, [r2] - ldr r0, =sub_80BB78C - str r0, [r4] -_080BBCFC: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80BBC74 - - thumb_func_start sub_80BBD1C -sub_80BBD1C: @ 80BBD1C - push {r4-r6,lr} - lsls r0, 24 - lsrs r0, 24 - ldr r2, =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r6, r1, r2 - movs r0, 0x8 - ldrsh r1, [r6, r0] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r2 - ldrb r4, [r0, 0x4] - cmp r4, 0 - bne _080BBDCA - bl sub_80BDA40 - ldr r5, =gUnknown_02039B4C - ldr r2, [r5] - ldr r1, =0x0000064e - adds r0, r2, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _080BBD7C - ldr r3, =0x0000060e - adds r0, r2, r3 - strh r4, [r0] - ldr r0, =0x0000062c - adds r1, r2, r0 - movs r0, 0x40 - strb r0, [r1] - ldr r0, =sub_80BBE70 - b _080BBDC8 - .pool -_080BBD7C: - ldr r1, =0x0000062a - adds r0, r2, r1 - ldrh r1, [r0] - ldr r3, =0x0000062c - adds r0, r2, r3 - strb r1, [r0] - ldr r1, [r5] - movs r2, 0xC2 - lsls r2, 3 - adds r0, r1, r2 - ldrh r2, [r0] - subs r3, 0x1E - adds r0, r1, r3 - strh r2, [r0] - ldr r2, =0x00000614 - adds r0, r1, r2 - ldrh r0, [r0] - adds r3, 0x4 - adds r1, r3 - strh r0, [r1] - bl IsNationalPokedexEnabled - adds r1, r0, 0 - cmp r1, 0 - bne _080BBDB6 - ldr r0, [r5] - ldr r2, =0x00000612 - adds r0, r2 - strh r1, [r0] -_080BBDB6: - ldr r0, [r5] - movs r3, 0xC3 - lsls r3, 3 - adds r1, r0, r3 - ldrh r1, [r1] - ldr r2, =0x00000616 - adds r0, r2 - strh r1, [r0] - ldr r0, =sub_80BB78C -_080BBDC8: - str r0, [r6] -_080BBDCA: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80BBD1C - - thumb_func_start sub_80BBDE8 -sub_80BBDE8: @ 80BBDE8 - 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 _080BBE4A - ldr r4, =gSaveBlock2Ptr - ldr r0, [r4] - ldr r5, =gUnknown_02039B4C - ldr r1, [r5] - ldr r2, =0x00000612 - adds r1, r2 - ldrh r1, [r1] - strb r1, [r0, 0x19] - bl IsNationalPokedexEnabled - adds r1, r0, 0 - cmp r1, 0 - bne _080BBE18 - ldr r0, [r4] - strb r1, [r0, 0x19] -_080BBE18: - ldr r1, [r4] - ldr r0, [r5] - ldr r2, =0x00000616 - adds r0, r2 - ldrh r0, [r0] - strb r0, [r1, 0x18] - bl sub_80BDA40 - bl sub_80BC890 - adds r0, r6, 0 - bl DestroyTask - ldr r0, =CB2_ReturnToFieldWithOpenMenu - bl SetMainCallback2 - ldr r0, =gMPlayInfo_BGM - ldr r1, =0x0000ffff - movs r2, 0x80 - lsls r2, 1 - bl m4aMPlayVolumeControl - ldr r0, [r5] - bl Free -_080BBE4A: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80BBDE8 - - thumb_func_start sub_80BBE70 -sub_80BBE70: @ 80BBE70 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, =gUnknown_02039B4C - ldr r1, [r0] - ldr r0, =0x0000064c - adds r1, r0 - ldrb r0, [r1] - movs r2, 0x1 - orrs r0, r2 - strb r0, [r1] - movs r0, 0x3 - bl sub_80BC514 - lsls r0, 24 - cmp r0, 0 - beq _080BBEA0 - ldr r0, =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, =sub_80BBEB8 - str r0, [r1] -_080BBEA0: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80BBE70 - - thumb_func_start sub_80BBEB8 -sub_80BBEB8: @ 80BBEB8 - push {r4-r7,lr} - sub sp, 0x4 - lsls r0, 24 - lsrs r6, r0, 24 - ldr r5, =gUnknown_02039B4C - ldr r0, [r5] - ldr r4, =0x00000652 - adds r0, r4 - ldrh r1, [r0] - movs r0, 0x12 - bl SetGpuReg - ldr r3, [r5] - adds r1, r3, r4 - ldrh r0, [r1] - movs r2, 0 - ldrsh r4, [r1, r2] - cmp r4, 0 - beq _080BBEEC - subs r0, 0x8 - strh r0, [r1] - b _080BC08A - .pool -_080BBEEC: - ldr r2, =gMain - ldrh r1, [r2, 0x2E] - movs r7, 0x1 - adds r0, r7, 0 - ands r0, r1 - cmp r0, 0 - beq _080BBF70 - ldr r1, =0x0000060e - adds r0, r3, r1 - ldrh r0, [r0] - lsls r0, 2 - adds r0, r3, r0 - ldrb r0, [r0, 0x2] - lsls r0, 31 - cmp r0, 0 - beq _080BBF70 - bl sub_80BD8D0 - ldr r3, =gSprites - ldr r0, [r5] - ldr r2, =0x00000626 - adds r0, r2 - ldrh r0, [r0] - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - adds r0, r2, r3 - ldrb r1, [r0, 0x5] - lsrs r1, 4 - adds r1, 0x10 - adds r0, r7, 0 - lsls r0, r1 - adds r3, 0x1C - adds r2, r3 - ldr r1, =sub_80BE470 - str r1, [r2] - mvns r0, r0 - str r4, [sp] - movs r1, 0 - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - ldr r1, =gTasks - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - adds r0, r1 - ldr r1, =sub_80BC2D4 - str r1, [r0] - movs r0, 0x15 - b _080BC00A - .pool -_080BBF70: - ldrh r2, [r2, 0x2E] - movs r0, 0x8 - ands r0, r2 - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, 0 - beq _080BBFC8 - ldr r3, =gUnknown_02039B4C - ldr r1, [r3] - ldr r2, =0x00000652 - adds r0, r1, r2 - movs r2, 0 - strh r2, [r0] - ldr r0, =0x0000064f - adds r1, r0 - movs r0, 0x1 - strb r0, [r1] - ldr r0, [r3] - movs r1, 0xCA - lsls r1, 3 - adds r0, r1 - strh r2, [r0] - ldr r1, =gTasks - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - adds r0, r1 - ldr r1, =sub_80BC0F8 - str r1, [r0] - movs r0, 0x5 - bl PlaySE - b _080BC08A - .pool -_080BBFC8: - movs r0, 0x4 - ands r0, r2 - lsls r0, 16 - lsrs r3, r0, 16 - cmp r3, 0 - beq _080BC024 - movs r0, 0x1 - negs r0, r0 - str r1, [sp] - movs r1, 0 - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - bl sub_80C1258 - ldr r2, =gTasks - lsls r1, r6, 2 - adds r1, r6 - lsls r1, 3 - adds r1, r2 - lsls r0, 24 - lsrs r0, 24 - movs r2, 0 - strh r0, [r1, 0x8] - ldr r0, =gUnknown_02039B4C - ldr r0, [r0] - ldr r3, =0x0000064e - adds r0, r3 - strb r2, [r0] - ldr r0, =sub_80BBD1C - str r0, [r1] - movs r0, 0x2 -_080BC00A: - bl PlaySE - bl sub_80BC890 - b _080BC08A - .pool -_080BC024: - movs r0, 0x2 - ands r0, r2 - cmp r0, 0 - beq _080BC05C - movs r0, 0x1 - negs r0, r0 - str r3, [sp] - movs r1, 0 - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - ldr r1, =gTasks - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - adds r0, r1 - ldr r1, =sub_80BC3DC - str r1, [r0] - movs r0, 0x3 - bl PlaySE - b _080BC08A - .pool -_080BC05C: - ldr r5, =gUnknown_02039B4C - ldr r0, [r5] - ldr r4, =0x0000060e - adds r0, r4 - ldrh r0, [r0] - movs r1, 0xE - bl sub_80BD69C - ldr r1, [r5] - adds r4, r1, r4 - strh r0, [r4] - ldr r0, =0x0000062e - adds r1, r0 - ldrb r0, [r1] - cmp r0, 0 - beq _080BC08A - ldr r0, =gTasks - lsls r1, r6, 2 - adds r1, r6 - lsls r1, 3 - adds r1, r0 - ldr r0, =sub_80BC0A8 - str r0, [r1] -_080BC08A: - add sp, 0x4 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80BBEB8 - - thumb_func_start sub_80BC0A8 -sub_80BC0A8: @ 80BC0A8 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, =gUnknown_02039B4C - ldr r2, [r0] - ldr r1, =0x0000062f - adds r0, r2, r1 - ldrb r0, [r0] - ldr r3, =0x00000634 - adds r1, r2, r3 - ldrb r1, [r1] - adds r3, 0x2 - adds r2, r3 - ldrb r2, [r2] - bl sub_80BD404 - lsls r0, 24 - cmp r0, 0 - beq _080BC0DC - ldr r0, =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, =sub_80BBEB8 - str r0, [r1] -_080BC0DC: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80BC0A8 - - thumb_func_start sub_80BC0F8 -sub_80BC0F8: @ 80BC0F8 - push {r4-r6,lr} - sub sp, 0x4 - lsls r0, 24 - lsrs r6, r0, 24 - ldr r5, =gUnknown_02039B4C - ldr r0, [r5] - ldr r4, =0x00000652 - adds r0, r4 - ldrh r1, [r0] - movs r0, 0x12 - bl SetGpuReg - ldr r5, [r5] - adds r1, r5, r4 - ldrh r2, [r1] - movs r3, 0 - ldrsh r0, [r1, r3] - cmp r0, 0x60 - beq _080BC130 - adds r0, r2, 0 - adds r0, 0x8 - strh r0, [r1] - b _080BC2C8 - .pool -_080BC130: - ldr r0, =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _080BC13E - b _080BC238 -_080BC13E: - movs r1, 0xCA - lsls r1, 3 - adds r0, r5, r1 - ldrh r0, [r0] - cmp r0, 0x4 - bhi _080BC1C2 - lsls r0, 2 - ldr r1, =_080BC15C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080BC15C: - .4byte _080BC1C2 - .4byte _080BC170 - .4byte _080BC194 - .4byte _080BC1E4 - .4byte _080BC214 -_080BC170: - ldr r5, =gUnknown_02039B4C - ldr r1, [r5] - ldr r4, =0x0000060e - adds r2, r1, r4 - movs r0, 0 - strh r0, [r2] - ldr r2, =0x0000062c - adds r1, r2 - movs r0, 0x40 - strb r0, [r1] - b _080BC1B2 - .pool -_080BC194: - ldr r5, =gUnknown_02039B4C - ldr r2, [r5] - ldr r0, =0x0000060c - adds r3, r2, r0 - ldrh r0, [r3] - subs r0, 0x1 - ldr r4, =0x0000060e - adds r1, r2, r4 - strh r0, [r1] - ldrh r0, [r3] - lsls r0, 4 - adds r0, 0x30 - ldr r1, =0x0000062c - adds r2, r1 - strb r0, [r2] -_080BC1B2: - bl sub_80BDA40 - ldr r0, [r5] - adds r0, r4 - ldrh r0, [r0] - movs r1, 0xE - bl sub_80BD2B4 -_080BC1C2: - ldr r2, =gMain - ldrh r1, [r2, 0x2E] - movs r0, 0x8 - orrs r0, r1 - strh r0, [r2, 0x2E] - b _080BC238 - .pool -_080BC1E4: - 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, r6, 2 - adds r0, r6 - lsls r0, 3 - adds r0, r1 - ldr r1, =sub_80BC3DC - str r1, [r0] - movs r0, 0x34 - bl PlaySE - b _080BC238 - .pool -_080BC214: - 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, r6, 2 - adds r0, r6 - lsls r0, 3 - adds r0, r1 - ldr r1, =sub_80BC47C - str r1, [r0] - movs r0, 0x3 - bl PlaySE -_080BC238: - ldr r2, =gMain - ldrh r1, [r2, 0x2E] - movs r0, 0xA - ands r0, r1 - cmp r0, 0 - beq _080BC278 - ldr r0, =gUnknown_02039B4C - ldr r0, [r0] - ldr r2, =0x0000064f - adds r0, r2 - movs r1, 0 - strb r1, [r0] - ldr r1, =gTasks - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - adds r0, r1 - ldr r1, =sub_80BBEB8 - str r1, [r0] - b _080BC296 - .pool -_080BC278: - ldrh r1, [r2, 0x30] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _080BC2A4 - ldr r0, =gUnknown_02039B4C - ldr r0, [r0] - movs r3, 0xCA - lsls r3, 3 - adds r1, r0, r3 - ldrh r0, [r1] - cmp r0, 0 - beq _080BC2A4 - subs r0, 0x1 - strh r0, [r1] -_080BC296: - movs r0, 0x5 - bl PlaySE - b _080BC2C8 - .pool -_080BC2A4: - ldrh r1, [r2, 0x30] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _080BC2C8 - ldr r0, =gUnknown_02039B4C - ldr r0, [r0] - movs r2, 0xCA - lsls r2, 3 - adds r1, r0, r2 - ldrh r0, [r1] - cmp r0, 0x3 - bhi _080BC2C8 - adds r0, 0x1 - strh r0, [r1] - movs r0, 0x5 - bl PlaySE -_080BC2C8: - add sp, 0x4 - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80BC0F8 - - thumb_func_start sub_80BC2D4 -sub_80BC2D4: @ 80BC2D4 - push {r4-r6,lr} - lsls r0, 24 - lsrs r6, r0, 24 - ldr r2, =gSprites - ldr r5, =gUnknown_02039B4C - ldr r3, [r5] - ldr r4, =0x00000626 - adds r0, r3, r4 - ldrh r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r1, r0, r2 - movs r2, 0x20 - ldrsh r0, [r1, r2] - cmp r0, 0x30 - bne _080BC33A - movs r2, 0x22 - ldrsh r0, [r1, r2] - cmp r0, 0x38 - bne _080BC33A - ldr r1, =0x0000064a - adds r0, r3, r1 - ldrb r1, [r0] - ldr r2, =0x0000064b - adds r0, r3, r2 - strb r1, [r0] - ldr r1, [r5] - subs r2, 0x3D - adds r0, r1, r2 - ldrh r0, [r0] - lsls r0, 2 - adds r0, r1, r0 - adds r1, r4 - ldrb r1, [r1] - bl sub_80BE91C - ldr r2, =gTasks - lsls r1, r6, 2 - adds r1, r6 - lsls r1, 3 - adds r1, r2 - lsls r0, 24 - lsrs r0, 24 - strh r0, [r1, 0x8] - ldr r0, [r5] - adds r0, r4 - ldr r2, =0x0000ffff - strh r2, [r0] - ldr r0, =sub_80BC360 - str r0, [r1] -_080BC33A: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80BC2D4 - - thumb_func_start sub_80BC360 -sub_80BC360: @ 80BC360 - push {r4,r5,lr} - lsls r0, 24 - lsrs r0, 24 - ldr r2, =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r4, r1, r2 - movs r0, 0x8 - ldrsh r1, [r4, r0] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r2 - ldrb r0, [r0, 0x4] - cmp r0, 0 - beq _080BC3CC - ldr r5, =gUnknown_02039B4C - ldr r0, [r5] - ldr r1, =0x0000064a - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x1 - bne _080BC3D0 - ldrb r0, [r4, 0x8] - bl sub_80BE9C4 - lsls r0, 24 - cmp r0, 0 - bne _080BC3D0 - bl sub_80BD930 - lsls r0, 24 - cmp r0, 0 - beq _080BC3D0 - ldr r0, [r5] - ldr r2, =0x0000060e - adds r1, r0, r2 - ldrh r1, [r1] - lsls r1, 2 - adds r0, r1 - ldrb r1, [r4, 0x8] - bl sub_80BE9F8 - b _080BC3D0 - .pool -_080BC3CC: - ldr r0, =sub_80BBE70 - str r0, [r4] -_080BC3D0: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80BC360 - - thumb_func_start sub_80BC3DC -sub_80BC3DC: @ 80BC3DC - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - ldr r0, =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _080BC450 - ldr r4, =gUnknown_02039B4C - ldr r0, [r4] - ldr r2, =0x0000062a - adds r1, r0, r2 - ldrh r1, [r1] - ldr r3, =0x0000062c - adds r0, r3 - strb r1, [r0] - ldr r1, [r4] - subs r2, 0x1A - adds r0, r1, r2 - ldrh r2, [r0] - subs r3, 0x1E - adds r0, r1, r3 - strh r2, [r0] - ldr r2, =0x00000614 - adds r0, r1, r2 - ldrh r0, [r0] - adds r3, 0x4 - adds r1, r3 - strh r0, [r1] - bl IsNationalPokedexEnabled - adds r1, r0, 0 - cmp r1, 0 - bne _080BC42A - ldr r0, [r4] - ldr r2, =0x00000612 - adds r0, r2 - strh r1, [r0] -_080BC42A: - ldr r0, [r4] - movs r3, 0xC3 - lsls r3, 3 - adds r1, r0, r3 - ldrh r1, [r1] - ldr r2, =0x00000616 - adds r0, r2 - strh r1, [r0] - ldr r1, =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r0, r1 - ldr r1, =sub_80BB78C - str r1, [r0] - bl sub_80BDA40 - bl sub_80BC890 -_080BC450: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80BC3DC - - thumb_func_start sub_80BC47C -sub_80BC47C: @ 80BC47C - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - ldr r0, =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _080BC4E8 - ldr r4, =gUnknown_02039B4C - ldr r0, [r4] - ldr r2, =0x0000062a - adds r1, r0, r2 - ldrh r1, [r1] - ldr r3, =0x0000062c - adds r0, r3 - strb r1, [r0] - ldr r1, [r4] - subs r2, 0x1A - adds r0, r1, r2 - ldrh r2, [r0] - subs r3, 0x1E - adds r0, r1, r3 - strh r2, [r0] - ldr r2, =0x00000614 - adds r0, r1, r2 - ldrh r0, [r0] - adds r3, 0x4 - adds r1, r3 - strh r0, [r1] - bl IsNationalPokedexEnabled - adds r1, r0, 0 - cmp r1, 0 - bne _080BC4CA - ldr r0, [r4] - ldr r2, =0x00000612 - adds r0, r2 - strh r1, [r0] -_080BC4CA: - ldr r0, [r4] - movs r3, 0xC3 - lsls r3, 3 - adds r1, r0, r3 - ldrh r1, [r1] - ldr r2, =0x00000616 - adds r0, r2 - strh r1, [r0] - ldr r1, =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r0, r1 - ldr r1, =sub_80BBDE8 - str r1, [r0] -_080BC4E8: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80BC47C - - thumb_func_start sub_80BC514 -sub_80BC514: @ 80BC514 - push {r4-r6,lr} - sub sp, 0x4 - lsls r0, 24 - lsrs r5, r0, 24 - ldr r1, =gMain - movs r2, 0x87 - lsls r2, 3 - adds r0, r1, r2 - ldrb r0, [r0] - adds r3, r1, 0 - cmp r0, 0x6 - bhi _080BC55C - lsls r0, 2 - ldr r1, =_080BC540 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080BC540: - .4byte _080BC55C - .4byte _080BC6CC - .4byte _080BC6FC - .4byte _080BC704 - .4byte _080BC768 - .4byte _080BC790 - .4byte _080BC818 -_080BC55C: - ldr r0, =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - lsls r0, 24 - lsrs r6, r0, 24 - cmp r6, 0 - beq _080BC56E - b _080BC838 -_080BC56E: - movs r0, 0 - bl SetVBlankCallback - ldr r4, =gUnknown_02039B4C - ldr r0, [r4] - ldr r1, =0x0000064a - adds r0, r1 - strb r5, [r0] - movs r0, 0 - bl sub_80C09B0 - ldr r0, [r4] - ldr r2, =0x0000062d - adds r0, r2 - ldrb r1, [r0] - movs r0, 0x1A - bl SetGpuReg - movs r0, 0 - bl ResetBgsAndClearDma3BusyFlags - ldr r1, =gBgTemplates_0855D298 - 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 r1, =gPokedexMenu_Gfx - movs r2, 0x80 - lsls r2, 6 - str r6, [sp] - movs r0, 0x3 - movs r3, 0 - bl copy_decompressed_tile_data_to_vram_autofree - ldr r1, =gUnknown_08DC2C5C - movs r0, 0x1 - movs r2, 0 - movs r3, 0 - bl CopyToBgTilemapBuffer - ldr r1, =gUnknown_08DC2DAC - movs r0, 0x3 - movs r2, 0 - movs r3, 0 - bl CopyToBgTilemapBuffer - cmp r5, 0 - bne _080BC640 - ldr r1, =gUnknown_08DC2A08 - movs r3, 0xA0 - lsls r3, 2 - movs r0, 0 - movs r2, 0 - bl CopyToBgTilemapBuffer - b _080BC64E - .pool -_080BC640: - ldr r1, =gUnknown_08DC2B1C - movs r3, 0xA0 - lsls r3, 2 - movs r0, 0 - movs r2, 0 - bl CopyToBgTilemapBuffer -_080BC64E: - bl ResetPaletteFade - cmp r5, 0 - bne _080BC674 - ldr r3, =gUnknown_02039B4C - ldr r1, [r3] - ldr r0, =0x0000064c - adds r1, r0 - ldrb r2, [r1] - movs r0, 0x2 - negs r0, r0 - ands r0, r2 - b _080BC682 - .pool -_080BC674: - ldr r3, =gUnknown_02039B4C - ldr r1, [r3] - ldr r2, =0x0000064c - adds r1, r2 - ldrb r0, [r1] - movs r2, 0x1 - orrs r0, r2 -_080BC682: - strb r0, [r1] - ldr r0, [r3] - ldr r1, =0x0000064c - adds r0, r1 - ldrb r0, [r0] - lsls r0, 31 - lsrs r0, 31 - bl sub_80BC844 - ldr r0, =sWindowTemplates_0855D2A8 - bl InitWindows - bl DeactivateAllTextPrinters - movs r0, 0 - bl PutWindowTilemap - movs r0, 0 - movs r1, 0x3 - bl CopyWindowToVram - ldr r0, =gMain - movs r2, 0x87 - lsls r2, 3 - adds r0, r2 - movs r1, 0x1 - strb r1, [r0] - b _080BC838 - .pool -_080BC6CC: - bl ResetSpriteData - bl FreeAllSpritePalettes - ldr r1, =gReservedSpritePaletteCount - movs r0, 0x8 - strb r0, [r1] - ldr r0, =gSpriteSheets_0855D26C - bl LoadCompressedObjectPic - ldr r0, =gSpritePalettes_0855D26C - bl LoadSpritePalettes - adds r0, r5, 0 - bl sub_80BDB7C - b _080BC7F8 - .pool -_080BC6FC: - movs r2, 0x87 - lsls r2, 3 - adds r1, r3, r2 - b _080BC800 -_080BC704: - cmp r5, 0 - bne _080BC71C - ldr r0, =gUnknown_02039B4C - ldr r1, [r0] - ldr r2, =0x00000612 - adds r0, r1, r2 - ldrb r0, [r0] - adds r2, 0x4 - adds r1, r2 - ldrb r1, [r1] - bl sub_80BC8D4 -_080BC71C: - ldr r4, =gUnknown_02039B4C - ldr r0, [r4] - ldr r1, =0x0000060e - adds r0, r1 - ldrh r0, [r0] - movs r1, 0xE - bl sub_80BD2B4 - ldr r0, [r4] - ldr r2, =0x0000064f - adds r0, r2 - movs r1, 0 - strb r1, [r0] - ldr r0, [r4] - adds r2, 0x3 - adds r0, r2 - strh r1, [r0] - movs r0, 0 - bl CopyBgTilemapBufferToVram - movs r0, 0x1 - bl CopyBgTilemapBufferToVram - movs r0, 0x2 - bl CopyBgTilemapBufferToVram - movs r0, 0x3 - bl CopyBgTilemapBufferToVram - b _080BC7F8 - .pool -_080BC768: - movs r0, 0x1 - negs r0, r0 - movs r1, 0 - str r1, [sp] - movs r2, 0x10 - movs r3, 0 - bl BeginNormalPaletteFade - ldr r0, =sub_80BB370 - bl SetVBlankCallback - ldr r1, =gMain - movs r2, 0x87 - lsls r2, 3 - adds r1, r2 - b _080BC800 - .pool -_080BC790: - ldr r1, =0x00003f3f - movs r0, 0x48 - bl SetGpuReg - ldr r1, =0x00001d3f - movs r0, 0x4A - bl SetGpuReg - movs r0, 0x40 - movs r1, 0 - bl SetGpuReg - movs r0, 0x44 - movs r1, 0 - bl SetGpuReg - movs r0, 0x42 - movs r1, 0 - bl SetGpuReg - movs r0, 0x46 - movs r1, 0 - bl SetGpuReg - movs r0, 0x50 - movs r1, 0 - bl SetGpuReg - movs r0, 0x52 - movs r1, 0 - bl SetGpuReg - movs r0, 0x54 - movs r1, 0 - bl SetGpuReg - ldr r1, =0x00009040 - movs r0, 0 - bl SetGpuReg - movs r0, 0 - bl ShowBg - movs r0, 0x1 - bl ShowBg - movs r0, 0x2 - bl ShowBg - movs r0, 0x3 - bl ShowBg -_080BC7F8: - ldr r1, =gMain - movs r0, 0x87 - lsls r0, 3 - adds r1, r0 -_080BC800: - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - b _080BC838 - .pool -_080BC818: - ldr r0, =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0 - bne _080BC838 - movs r1, 0x87 - lsls r1, 3 - adds r0, r3, r1 - strb r2, [r0] - movs r0, 0x1 - b _080BC83A - .pool -_080BC838: - movs r0, 0 -_080BC83A: - add sp, 0x4 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_80BC514 - - thumb_func_start sub_80BC844 -sub_80BC844: @ 80BC844 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080BC858 - ldr r0, =gPokedexHoennBg_Pal + 0x2 - b _080BC862 - .pool -_080BC858: - bl IsNationalPokedexEnabled - cmp r0, 0 - bne _080BC870 - ldr r0, =gPokedexText_Pal + 2 -_080BC862: - movs r1, 0x1 - movs r2, 0xBE - bl LoadPalette - b _080BC87A - .pool -_080BC870: - ldr r0, =gPokedexNationalBg_Pal + 0x2 - movs r1, 0x1 - movs r2, 0xBE - bl LoadPalette -_080BC87A: - bl GetOverworldTextboxPalettePtr - movs r1, 0xF0 - movs r2, 0x20 - bl LoadPalette - pop {r0} - bx r0 - .pool - thumb_func_end sub_80BC844 - - thumb_func_start sub_80BC890 -sub_80BC890: @ 80BC890 - push {lr} - bl FreeAllWindowBuffers - movs r0, 0 - bl GetBgTilemapBuffer - cmp r0, 0 - beq _080BC8A4 - bl Free -_080BC8A4: - movs r0, 0x1 - bl GetBgTilemapBuffer - cmp r0, 0 - beq _080BC8B2 - bl Free -_080BC8B2: - movs r0, 0x2 - bl GetBgTilemapBuffer - cmp r0, 0 - beq _080BC8C0 - bl Free -_080BC8C0: - movs r0, 0x3 - bl GetBgTilemapBuffer - cmp r0, 0 - beq _080BC8CE - bl Free -_080BC8CE: - pop {r0} - bx r0 - thumb_func_end sub_80BC890 - - thumb_func_start sub_80BC8D4 -sub_80BC8D4: @ 80BC8D4 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x8 - lsls r0, 24 - lsrs r4, r0, 24 - lsls r1, 24 - lsrs r6, r1, 24 - ldr r0, =gUnknown_02039B4C - ldr r0, [r0] - ldr r1, =0x0000060c - adds r0, r1 - movs r5, 0 - strh r5, [r0] - cmp r4, 0 - beq _080BC8FC - cmp r4, 0x1 - beq _080BC910 -_080BC8FC: - mov r1, sp - movs r0, 0xCA - strh r0, [r1] - movs r0, 0x1 - strh r0, [r1, 0x2] - b _080BC92C - .pool -_080BC910: - bl IsNationalPokedexEnabled - cmp r0, 0 - beq _080BC924 - mov r0, sp - movs r1, 0xC1 - lsls r1, 1 - strh r1, [r0] - strh r5, [r0, 0x2] - b _080BC92C -_080BC924: - mov r0, sp - movs r1, 0xCA - strh r1, [r0] - strh r4, [r0, 0x2] -_080BC92C: - cmp r6, 0x5 - bls _080BC932 - b _080BCDB4 -_080BC932: - lsls r0, r6, 2 - ldr r1, =_080BC940 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080BC940: - .4byte _080BC958 - .4byte _080BCACC - .4byte _080BCB78 - .4byte _080BCC08 - .4byte _080BCCA0 - .4byte _080BCD30 -_080BC958: - mov r0, sp - ldrh r0, [r0, 0x2] - cmp r0, 0 - beq _080BCA00 - movs r4, 0 - mov r0, sp - ldrh r0, [r0] - cmp r4, r0 - blt _080BC96C - b _080BCDB4 -_080BC96C: - mov r5, sp - ldr r2, =gUnknown_02039B4C - mov r8, r2 - movs r3, 0x1 - mov r9, r3 -_080BC976: - lsls r4, 16 - asrs r4, 16 - adds r7, r4, 0x1 - mov r10, r7 - lsls r0, r7, 16 - lsrs r6, r0, 16 - adds r0, r6, 0 - bl HoennToNationalOrder - strh r0, [r5, 0x4] - mov r2, r8 - ldr r1, [r2] - lsls r4, 2 - adds r1, r4 - strh r0, [r1] - ldrh r0, [r5, 0x4] - movs r1, 0 - bl GetSetPokedexFlag - mov r3, r8 - ldr r2, [r3] - adds r2, r4 - mov r3, r9 - ands r3, r0 - ldrb r0, [r2, 0x2] - movs r7, 0x2 - negs r7, r7 - adds r1, r7, 0 - ands r0, r1 - orrs r0, r3 - strb r0, [r2, 0x2] - ldrh r0, [r5, 0x4] - movs r1, 0x1 - bl GetSetPokedexFlag - mov r1, r8 - ldr r3, [r1] - adds r3, r4 - mov r2, r9 - ands r2, r0 - lsls r2, 1 - ldrb r0, [r3, 0x2] - subs r7, 0x1 - adds r1, r7, 0 - ands r0, r1 - orrs r0, r2 - strb r0, [r3, 0x2] - mov r0, r8 - ldr r1, [r0] - adds r4, r1, r4 - ldrb r0, [r4, 0x2] - lsls r0, 31 - cmp r0, 0 - beq _080BC9EA - ldr r2, =0x0000060c - adds r0, r1, r2 - mov r3, r10 - strh r3, [r0] -_080BC9EA: - adds r4, r6, 0 - lsls r0, r4, 16 - asrs r0, 16 - ldrh r7, [r5] - cmp r0, r7 - blt _080BC976 - b _080BCDB4 - .pool -_080BCA00: - movs r4, 0 - movs r5, 0 - mov r10, r5 - mov r0, sp - ldrh r0, [r0] - cmp r4, r0 - blt _080BCA10 - b _080BCDB4 -_080BCA10: - mov r6, sp - ldr r0, =gUnknown_02039B4C - mov r8, r0 - movs r1, 0x1 - mov r9, r1 -_080BCA1A: - lsls r4, 16 - asrs r0, r4, 16 - adds r0, 0x1 - strh r0, [r6, 0x4] - ldrh r0, [r6, 0x4] - movs r1, 0 - bl GetSetPokedexFlag - lsls r0, 24 - adds r7, r4, 0 - cmp r0, 0 - beq _080BCA36 - movs r2, 0x1 - mov r10, r2 -_080BCA36: - mov r3, r10 - cmp r3, 0 - beq _080BCAB2 - mov r4, r8 - ldr r1, [r4] - lsls r0, r5, 16 - asrs r5, r0, 16 - lsls r4, r5, 2 - adds r1, r4 - ldrh r0, [r6, 0x4] - strh r0, [r1] - ldrh r0, [r6, 0x4] - movs r1, 0 - bl GetSetPokedexFlag - mov r1, r8 - ldr r2, [r1] - adds r2, r4 - mov r3, r9 - ands r3, r0 - mov r12, r3 - ldrb r0, [r2, 0x2] - movs r3, 0x2 - negs r3, r3 - adds r1, r3, 0 - ands r0, r1 - mov r1, r12 - orrs r0, r1 - strb r0, [r2, 0x2] - ldrh r0, [r6, 0x4] - movs r1, 0x1 - bl GetSetPokedexFlag - mov r2, r8 - ldr r3, [r2] - adds r3, r4 - mov r2, r9 - ands r2, r0 - lsls r2, 1 - mov r12, r2 - ldrb r0, [r3, 0x2] - movs r2, 0x3 - negs r2, r2 - adds r1, r2, 0 - ands r0, r1 - mov r1, r12 - orrs r0, r1 - strb r0, [r3, 0x2] - mov r3, r8 - ldr r2, [r3] - adds r4, r2, r4 - ldrb r0, [r4, 0x2] - lsls r0, 31 - cmp r0, 0 - beq _080BCAAC - adds r1, r5, 0x1 - ldr r4, =0x0000060c - adds r0, r2, r4 - strh r1, [r0] -_080BCAAC: - adds r0, r5, 0x1 - lsls r0, 16 - lsrs r5, r0, 16 -_080BCAB2: - movs r1, 0x80 - lsls r1, 9 - adds r0, r7, r1 - lsrs r4, r0, 16 - asrs r0, 16 - ldrh r2, [r6] - cmp r0, r2 - blt _080BCA1A - b _080BCDB4 - .pool -_080BCACC: - movs r4, 0 - mov r5, sp - ldr r3, =gUnknown_02039B4C - mov r8, r3 - ldr r6, =0x0000060c - movs r7, 0x1 - mov r9, r7 -_080BCADA: - ldr r1, =gPokedexOrder_Alphabetical - lsls r4, 16 - asrs r0, r4, 15 - adds r0, r1 - ldrh r0, [r0] - strh r0, [r5, 0x4] - ldrh r0, [r5, 0x4] - bl NationalToHoennOrder - lsls r0, 16 - lsrs r0, 16 - adds r7, r4, 0 - ldrh r1, [r5] - cmp r0, r1 - bhi _080BCB58 - ldrh r0, [r5, 0x4] - movs r1, 0 - bl GetSetPokedexFlag - lsls r0, 24 - cmp r0, 0 - beq _080BCB58 - mov r3, r8 - ldr r2, [r3] - adds r3, r2, r6 - ldrh r0, [r3] - lsls r0, 2 - adds r0, r2, r0 - ldrh r1, [r5, 0x4] - strh r1, [r0] - ldrh r0, [r3] - lsls r0, 2 - adds r2, r0 - ldrb r0, [r2, 0x2] - mov r4, r9 - orrs r0, r4 - strb r0, [r2, 0x2] - ldrh r0, [r5, 0x4] - movs r1, 0x1 - bl GetSetPokedexFlag - mov r1, r8 - ldr r3, [r1] - adds r1, r3, r6 - ldrh r1, [r1] - lsls r1, 2 - adds r3, r1 - mov r2, r9 - ands r2, r0 - lsls r2, 1 - ldrb r0, [r3, 0x2] - movs r4, 0x3 - negs r4, r4 - adds r1, r4, 0 - ands r0, r1 - orrs r0, r2 - strb r0, [r3, 0x2] - mov r0, r8 - ldr r1, [r0] - adds r1, r6 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_080BCB58: - movs r2, 0x80 - lsls r2, 9 - adds r1, r7, r2 - lsrs r4, r1, 16 - movs r0, 0xCD - lsls r0, 17 - cmp r1, r0 - ble _080BCADA - b _080BCDB4 - .pool -_080BCB78: - ldr r4, =0x00000181 - lsls r0, r4, 16 - mov r5, sp - ldr r7, =gUnknown_02039B4C - ldr r6, =0x0000060c -_080BCB82: - ldr r1, =gPokedexOrder_Weight - asrs r0, 15 - adds r0, r1 - ldrh r0, [r0] - strh r0, [r5, 0x4] - ldrh r0, [r5, 0x4] - bl NationalToHoennOrder - lsls r0, 16 - lsrs r0, 16 - ldrh r3, [r5] - cmp r0, r3 - bhi _080BCBE2 - ldrh r0, [r5, 0x4] - movs r1, 0x1 - bl GetSetPokedexFlag - lsls r0, 24 - cmp r0, 0 - beq _080BCBE2 - ldr r2, [r7] - adds r3, r2, r6 - ldrh r0, [r3] - lsls r0, 2 - adds r0, r2, r0 - ldrh r1, [r5, 0x4] - strh r1, [r0] - ldrh r0, [r3] - lsls r0, 2 - adds r2, r0 - ldrb r0, [r2, 0x2] - movs r1, 0x1 - orrs r0, r1 - strb r0, [r2, 0x2] - ldr r2, [r7] - adds r0, r2, r6 - ldrh r0, [r0] - lsls r0, 2 - adds r2, r0 - ldrb r0, [r2, 0x2] - movs r1, 0x2 - orrs r0, r1 - strb r0, [r2, 0x2] - ldr r1, [r7] - adds r1, r6 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_080BCBE2: - lsls r0, r4, 16 - ldr r4, =0xffff0000 - adds r0, r4 - lsrs r4, r0, 16 - lsls r0, r4, 16 - cmp r0, 0 - bge _080BCB82 - b _080BCDB4 - .pool -_080BCC08: - movs r4, 0 - mov r5, sp - ldr r7, =gUnknown_02039B4C - mov r8, r7 - ldr r6, =0x0000060c - ldr r0, =0x00000181 - mov r9, r0 -_080BCC16: - ldr r1, =gPokedexOrder_Weight - lsls r4, 16 - asrs r0, r4, 15 - adds r0, r1 - ldrh r0, [r0] - strh r0, [r5, 0x4] - ldrh r0, [r5, 0x4] - bl NationalToHoennOrder - lsls r0, 16 - lsrs r0, 16 - adds r7, r4, 0 - ldrh r1, [r5] - cmp r0, r1 - bhi _080BCC7E - ldrh r0, [r5, 0x4] - movs r1, 0x1 - bl GetSetPokedexFlag - lsls r0, 24 - cmp r0, 0 - beq _080BCC7E - mov r3, r8 - ldr r2, [r3] - adds r3, r2, r6 - ldrh r0, [r3] - lsls r0, 2 - adds r0, r2, r0 - ldrh r1, [r5, 0x4] - strh r1, [r0] - ldrh r0, [r3] - lsls r0, 2 - adds r2, r0 - ldrb r0, [r2, 0x2] - movs r1, 0x1 - orrs r0, r1 - strb r0, [r2, 0x2] - mov r4, r8 - ldr r2, [r4] - adds r0, r2, r6 - ldrh r0, [r0] - lsls r0, 2 - adds r2, r0 - ldrb r0, [r2, 0x2] - movs r1, 0x2 - orrs r0, r1 - strb r0, [r2, 0x2] - ldr r1, [r4] - adds r1, r6 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_080BCC7E: - movs r1, 0x80 - lsls r1, 9 - adds r0, r7, r1 - lsrs r4, r0, 16 - asrs r0, 16 - cmp r0, r9 - ble _080BCC16 - b _080BCDB4 - .pool -_080BCCA0: - ldr r4, =0x00000181 - lsls r0, r4, 16 - mov r5, sp - ldr r7, =gUnknown_02039B4C - ldr r6, =0x0000060c -_080BCCAA: - ldr r1, =gPokedexOrder_Height - asrs r0, 15 - adds r0, r1 - ldrh r0, [r0] - strh r0, [r5, 0x4] - ldrh r0, [r5, 0x4] - bl NationalToHoennOrder - lsls r0, 16 - lsrs r0, 16 - ldrh r2, [r5] - cmp r0, r2 - bhi _080BCD0A - ldrh r0, [r5, 0x4] - movs r1, 0x1 - bl GetSetPokedexFlag - lsls r0, 24 - cmp r0, 0 - beq _080BCD0A - ldr r2, [r7] - adds r3, r2, r6 - ldrh r0, [r3] - lsls r0, 2 - adds r0, r2, r0 - ldrh r1, [r5, 0x4] - strh r1, [r0] - ldrh r0, [r3] - lsls r0, 2 - adds r2, r0 - ldrb r0, [r2, 0x2] - movs r1, 0x1 - orrs r0, r1 - strb r0, [r2, 0x2] - ldr r2, [r7] - adds r0, r2, r6 - ldrh r0, [r0] - lsls r0, 2 - adds r2, r0 - ldrb r0, [r2, 0x2] - movs r1, 0x2 - orrs r0, r1 - strb r0, [r2, 0x2] - ldr r1, [r7] - adds r1, r6 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_080BCD0A: - lsls r0, r4, 16 - ldr r3, =0xffff0000 - adds r0, r3 - lsrs r4, r0, 16 - lsls r0, r4, 16 - cmp r0, 0 - bge _080BCCAA - b _080BCDB4 - .pool -_080BCD30: - movs r4, 0 - mov r5, sp - ldr r7, =gUnknown_02039B4C - mov r8, r7 - ldr r6, =0x0000060c - ldr r0, =0x00000181 - mov r9, r0 -_080BCD3E: - ldr r1, =gPokedexOrder_Height - lsls r4, 16 - asrs r0, r4, 15 - adds r0, r1 - ldrh r0, [r0] - strh r0, [r5, 0x4] - ldrh r0, [r5, 0x4] - bl NationalToHoennOrder - lsls r0, 16 - lsrs r0, 16 - adds r7, r4, 0 - ldrh r1, [r5] - cmp r0, r1 - bhi _080BCDA6 - ldrh r0, [r5, 0x4] - movs r1, 0x1 - bl GetSetPokedexFlag - lsls r0, 24 - cmp r0, 0 - beq _080BCDA6 - mov r3, r8 - ldr r2, [r3] - adds r3, r2, r6 - ldrh r0, [r3] - lsls r0, 2 - adds r0, r2, r0 - ldrh r1, [r5, 0x4] - strh r1, [r0] - ldrh r0, [r3] - lsls r0, 2 - adds r2, r0 - ldrb r0, [r2, 0x2] - movs r1, 0x1 - orrs r0, r1 - strb r0, [r2, 0x2] - mov r4, r8 - ldr r2, [r4] - adds r0, r2, r6 - ldrh r0, [r0] - lsls r0, 2 - adds r2, r0 - ldrb r0, [r2, 0x2] - movs r1, 0x2 - orrs r0, r1 - strb r0, [r2, 0x2] - ldr r1, [r4] - adds r1, r6 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_080BCDA6: - movs r1, 0x80 - lsls r1, 9 - adds r0, r7, r1 - lsrs r4, r0, 16 - asrs r0, 16 - cmp r0, r9 - ble _080BCD3E -_080BCDB4: - ldr r1, =gUnknown_02039B4C - ldr r0, [r1] - ldr r2, =0x0000060c - adds r0, r2 - ldrh r4, [r0] - lsls r3, r4, 16 - asrs r0, r3, 16 - ldr r2, =0x00000181 - cmp r0, r2 - bgt _080BCE08 - adds r5, r1, 0 - movs r4, 0x2 - negs r4, r4 - mov r9, r4 - movs r7, 0x3 - negs r7, r7 - mov r8, r7 - adds r7, r2, 0 - ldr r0, =0x0000ffff - adds r6, r0, 0 -_080BCDDC: - ldr r1, [r5] - asrs r3, 16 - lsls r4, r3, 2 - adds r1, r4 - ldrh r0, [r1] - orrs r0, r6 - strh r0, [r1] - ldrb r2, [r1, 0x2] - mov r0, r9 - ands r0, r2 - strb r0, [r1, 0x2] - ldr r1, [r5] - adds r1, r4 - ldrb r2, [r1, 0x2] - mov r0, r8 - ands r0, r2 - strb r0, [r1, 0x2] - adds r3, 0x1 - lsls r3, 16 - asrs r0, r3, 16 - cmp r0, r7 - ble _080BCDDC -_080BCE08: - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80BC8D4 - - thumb_func_start sub_80BCE2C -sub_80BCE2C: @ 80BCE2C - push {r4-r6,lr} - mov r6, r8 - push {r6} - sub sp, 0x18 - mov r8, r3 - ldr r3, [sp, 0x2C] - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - lsrs r1, 24 - lsls 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] - mov r4, r8 - lsls r4, 27 - lsrs r4, 24 - mov r8, r4 - lsrs r3, 21 - adds r3, 0x1 - lsls r3, 24 - lsrs r3, 24 - str r6, [sp] - str r6, [sp, 0x4] - str r5, [sp, 0x8] - movs r4, 0x1 - negs r4, r4 - str r4, [sp, 0xC] - str r2, [sp, 0x10] - mov r2, r8 - bl AddTextPrinterParameterized2 - add sp, 0x18 - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_80BCE2C - - thumb_func_start sub_80BCE84 -sub_80BCE84: @ 80BCE84 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 16 - lsrs r1, 16 - lsls r2, 16 - lsrs r7, r2, 16 - cmp r0, 0x1 - beq _080BCF7C - cmp r0, 0x1 - ble _080BCEA8 - cmp r0, 0x2 - bne _080BCEA8 - b _080BD074 -_080BCEA8: - subs r0, r1, 0x5 - lsls r0, 16 - lsrs r1, r0, 16 - movs r0, 0 - mov r9, r0 -_080BCEB2: - lsls r0, r1, 16 - lsrs r5, r0, 16 - mov r10, r0 - ldr r1, =0x00000181 - cmp r5, r1 - bhi _080BCED2 - ldr r2, =gUnknown_02039B4C - mov r8, r2 - ldr r0, [r2] - mov r3, r10 - asrs r6, r3, 14 - adds r0, r6 - ldrh r0, [r0] - ldr r1, =0x0000ffff - cmp r0, r1 - bne _080BCEF0 -_080BCED2: - mov r2, r9 - lsls r1, r2, 25 - lsrs r1, 24 - movs r0, 0x11 - adds r2, r7, 0 - bl sub_80BD28C - b _080BCF64 - .pool -_080BCEF0: - mov r3, r9 - lsls r0, r3, 25 - lsrs r4, r0, 24 - movs r0, 0x11 - adds r1, r4, 0 - adds r2, r7, 0 - bl sub_80BD28C - mov r1, r8 - ldr r0, [r1] - adds r0, r6 - ldrb r0, [r0, 0x2] - lsls r0, 31 - cmp r0, 0 - beq _080BCF42 - adds r0, r5, 0 - movs r1, 0x12 - adds r2, r4, 0 - adds r3, r7, 0 - bl sub_80BD154 - mov r2, r8 - ldr r0, [r2] - adds r0, r6 - ldrb r0, [r0, 0x2] - lsls r0, 30 - lsrs r0, 31 - movs r1, 0x11 - adds r2, r4, 0 - adds r3, r7, 0 - bl sub_80BD1F4 - mov r3, r8 - ldr r0, [r3] - adds r0, r6 - ldrh r0, [r0] - movs r1, 0x16 - adds r2, r4, 0 - bl sub_80BD23C - b _080BCF64 -_080BCF42: - adds r0, r5, 0 - movs r1, 0x12 - adds r2, r4, 0 - adds r3, r7, 0 - bl sub_80BD154 - movs r0, 0 - movs r1, 0x11 - adds r2, r4, 0 - adds r3, r7, 0 - bl sub_80BD1F4 - movs r0, 0 - movs r1, 0x16 - adds r2, r4, 0 - bl sub_80BD23C -_080BCF64: - movs r0, 0x80 - lsls r0, 9 - add r0, r10 - lsrs r1, r0, 16 - mov r0, r9 - adds r0, 0x1 - lsls r0, 16 - lsrs r0, 16 - mov r9, r0 - cmp r0, 0xA - bls _080BCEB2 - b _080BD13E -_080BCF7C: - subs r0, r1, 0x5 - lsls r1, r0, 16 - lsrs r5, r1, 16 - ldr r0, =0x00000181 - ldr r2, =gUnknown_02039B4C - cmp r5, r0 - bhi _080BCF9A - adds r6, r2, 0 - ldr r3, [r6] - asrs r4, r1, 14 - adds r0, r3, r4 - ldrh r1, [r0] - ldr r0, =0x0000ffff - cmp r1, r0 - bne _080BCFB8 -_080BCF9A: - ldr r0, [r2] - movs r1, 0xC6 - lsls r1, 3 - adds r0, r1 - movs r2, 0 - ldrsh r1, [r0, r2] - lsls r1, 25 - b _080BD0B2 - .pool -_080BCFB8: - movs r1, 0xC6 - lsls r1, 3 - adds r0, r3, r1 - movs r2, 0 - ldrsh r1, [r0, r2] - lsls r1, 25 - lsrs r1, 24 - movs r0, 0x11 - adds r2, r7, 0 - bl sub_80BD28C - ldr r1, [r6] - adds r0, r1, r4 - ldrb r0, [r0, 0x2] - lsls r0, 31 - cmp r0, 0 - beq _080BD028 - movs r3, 0xC6 - lsls r3, 3 - adds r0, r1, r3 - movs r1, 0 - ldrsh r2, [r0, r1] - lsls r2, 25 - lsrs r2, 24 - adds r0, r5, 0 - movs r1, 0x12 - adds r3, r7, 0 - bl sub_80BD154 - ldr r1, [r6] - adds r0, r1, r4 - ldrb r0, [r0, 0x2] - lsls r0, 30 - lsrs r0, 31 - movs r2, 0xC6 - lsls r2, 3 - adds r1, r2 - movs r3, 0 - ldrsh r2, [r1, r3] - lsls r2, 25 - lsrs r2, 24 - movs r1, 0x11 - adds r3, r7, 0 - bl sub_80BD1F4 - ldr r1, [r6] - adds r0, r1, r4 - ldrh r0, [r0] - movs r2, 0xC6 - lsls r2, 3 - adds r1, r2 - movs r3, 0 - ldrsh r2, [r1, r3] - lsls r2, 25 - lsrs r2, 24 - b _080BD06C -_080BD028: - movs r2, 0xC6 - lsls r2, 3 - adds r0, r1, r2 - movs r3, 0 - ldrsh r2, [r0, r3] - lsls r2, 25 - lsrs r2, 24 - adds r0, r5, 0 - movs r1, 0x12 - adds r3, r7, 0 - bl sub_80BD154 - ldr r0, [r6] - movs r1, 0xC6 - lsls r1, 3 - adds r0, r1 - movs r3, 0 - ldrsh r2, [r0, r3] - lsls r2, 25 - lsrs r2, 24 - movs r0, 0 - movs r1, 0x11 - adds r3, r7, 0 - bl sub_80BD1F4 - ldr r0, [r6] - movs r1, 0xC6 - lsls r1, 3 - adds r0, r1 - movs r3, 0 - ldrsh r2, [r0, r3] - lsls r2, 25 - lsrs r2, 24 - movs r0, 0 -_080BD06C: - movs r1, 0x16 - bl sub_80BD23C - b _080BD13E -_080BD074: - adds r0, r1, 0x5 - lsls r0, 16 - lsrs r1, r0, 16 - ldr r0, =gUnknown_02039B4C - mov r8, r0 - ldr r3, [r0] - movs r2, 0xC6 - lsls r2, 3 - adds r0, r3, r2 - ldrh r0, [r0] - adds r0, 0xA - lsls r0, 16 - lsrs r2, r0, 16 - cmp r2, 0xF - bls _080BD09A - adds r0, r2, 0 - subs r0, 0x10 - lsls r0, 16 - lsrs r2, r0, 16 -_080BD09A: - lsls r1, 16 - lsrs r5, r1, 16 - ldr r0, =0x00000181 - cmp r5, r0 - bhi _080BD0B0 - asrs r6, r1, 14 - adds r0, r3, r6 - ldrh r1, [r0] - ldr r0, =0x0000ffff - cmp r1, r0 - bne _080BD0CC -_080BD0B0: - lsls r1, r2, 25 -_080BD0B2: - lsrs r1, 24 - movs r0, 0x11 - adds r2, r7, 0 - bl sub_80BD28C - b _080BD13E - .pool -_080BD0CC: - lsls r0, r2, 25 - lsrs r4, r0, 24 - movs r0, 0x11 - adds r1, r4, 0 - adds r2, r7, 0 - bl sub_80BD28C - mov r3, r8 - ldr r0, [r3] - adds r0, r6 - ldrb r0, [r0, 0x2] - lsls r0, 31 - cmp r0, 0 - beq _080BD11C - adds r0, r5, 0 - movs r1, 0x12 - adds r2, r4, 0 - adds r3, r7, 0 - bl sub_80BD154 - mov r1, r8 - ldr r0, [r1] - adds r0, r6 - ldrb r0, [r0, 0x2] - lsls r0, 30 - lsrs r0, 31 - movs r1, 0x11 - adds r2, r4, 0 - adds r3, r7, 0 - bl sub_80BD1F4 - mov r2, r8 - ldr r0, [r2] - adds r0, r6 - ldrh r0, [r0] - movs r1, 0x16 - adds r2, r4, 0 - bl sub_80BD23C - b _080BD13E -_080BD11C: - adds r0, r5, 0 - movs r1, 0x12 - adds r2, r4, 0 - adds r3, r7, 0 - bl sub_80BD154 - movs r0, 0 - movs r1, 0x11 - adds r2, r4, 0 - adds r3, r7, 0 - bl sub_80BD1F4 - movs r0, 0 - movs r1, 0x16 - adds r2, r4, 0 - bl sub_80BD23C -_080BD13E: - movs r0, 0 - movs r1, 0x2 - bl CopyWindowToVram - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80BCE84 - - thumb_func_start sub_80BD154 -sub_80BD154: @ 80BD154 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0xC - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - lsls r1, 24 - lsrs r1, 24 - mov r8, r1 - lsls r2, 24 - lsrs r7, r2, 24 - ldr r1, =gUnknown_0855D2B8 - add r0, sp, 0x4 - movs r2, 0x6 - bl memcpy - ldr r0, =gUnknown_02039B4C - ldr r0, [r0] - lsls r4, 2 - adds r4, r0, r4 - ldrh r6, [r4] - ldr r1, =0x00000612 - adds r0, r1 - ldrh r0, [r0] - cmp r0, 0 - bne _080BD194 - adds r0, r6, 0 - bl NationalToHoennOrder - lsls r0, 16 - lsrs r6, r0, 16 -_080BD194: - add r4, sp, 0x4 - adds r0, r6, 0 - movs r1, 0x64 - bl __udivsi3 - adds r0, 0xA1 - strb r0, [r4, 0x2] - add r5, sp, 0x4 - adds r0, r6, 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, 0x3] - add r5, sp, 0x4 - adds r0, r4, 0 - movs r1, 0xA - bl __umodsi3 - adds r0, 0xA1 - strb r0, [r5, 0x4] - str r7, [sp] - movs r0, 0 - movs r1, 0x7 - add r2, sp, 0x4 - mov r3, r8 - bl sub_80BCE2C - add sp, 0xC - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80BD154 - - thumb_func_start sub_80BD1F4 -sub_80BD1F4: @ 80BD1F4 - push {r4,lr} - sub sp, 0x8 - lsls r0, 16 - lsls r1, 24 - lsrs r3, r1, 24 - lsls r2, 24 - lsrs r4, r2, 24 - cmp r0, 0 - beq _080BD220 - ldr r1, =gUnknown_0855D2BE - lsls r2, r3, 3 - lsls r3, r4, 3 - movs r0, 0x8 - str r0, [sp] - movs r0, 0x10 - str r0, [sp, 0x4] - movs r0, 0 - bl BlitBitmapToWindow - b _080BD234 - .pool -_080BD220: - lsls r2, r3, 3 - lsls r3, r4, 3 - movs r0, 0x8 - str r0, [sp] - movs r0, 0x10 - str r0, [sp, 0x4] - movs r0, 0 - movs r1, 0 - bl FillWindowPixelRect -_080BD234: - add sp, 0x8 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80BD1F4 - - thumb_func_start sub_80BD23C -sub_80BD23C: @ 80BD23C - push {r4-r6,lr} - sub sp, 0x4 - lsls r0, 16 - lsrs r0, 16 - lsls r1, 24 - lsrs r6, r1, 24 - lsls r2, 24 - lsrs r5, r2, 24 - bl NationalPokedexNumToSpecies - adds r1, r0, 0 - cmp r1, 0 - beq _080BD264 - movs r0, 0xB - muls r1, r0 - ldr r0, =gSpeciesNames - adds r4, r1, r0 - b _080BD266 - .pool -_080BD264: - ldr r4, =sText_TenDashes -_080BD266: - str r5, [sp] - movs r0, 0 - movs r1, 0x7 - adds r2, r4, 0 - adds r3, r6, 0 - bl sub_80BCE2C - adds r0, r4, 0 - bl StringLength - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4-r6} - pop {r1} - bx r1 - .pool - thumb_func_end sub_80BD23C - - thumb_func_start sub_80BD28C -sub_80BD28C: @ 80BD28C - push {lr} - sub sp, 0x8 - adds r2, r0, 0 - adds r3, r1, 0 - lsls r2, 24 - lsls r3, 24 - lsrs r2, 21 - lsrs r3, 21 - movs r0, 0x60 - str r0, [sp] - movs r0, 0x10 - str r0, [sp, 0x4] - movs r0, 0 - movs r1, 0 - bl FillWindowPixelRect - add sp, 0x8 - pop {r0} - bx r0 - thumb_func_end sub_80BD28C - - thumb_func_start sub_80BD2B4 -sub_80BD2B4: @ 80BD2B4 - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 16 - lsrs r6, r0, 16 - lsls r1, 16 - lsrs r1, 16 - mov r8, r1 - ldr r2, =gPaletteFade - ldrb r0, [r2, 0x8] - movs r1, 0x80 - orrs r0, r1 - strb r0, [r2, 0x8] - movs r2, 0 - ldr r7, =gUnknown_02039B4C - adds r5, r7, 0 - ldr r4, =0x0000061e - ldr r0, =0x0000ffff - adds r3, r0, 0 -_080BD2DA: - ldr r1, [r5] - lsls r0, r2, 1 - adds r1, r4 - adds r1, r0 - ldrh r0, [r1] - orrs r0, r3 - strh r0, [r1] - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0x3 - bls _080BD2DA - ldr r0, [r7] - ldr r1, =0x00000626 - adds r0, r1 - ldr r1, =0x0000ffff - strh r1, [r0] - subs r0, r6, 0x1 - lsls r0, 16 - lsrs r0, 16 - bl sub_80BDA8C - lsls r0, 16 - lsrs r0, 16 - ldr r4, =0x0000ffff - cmp r0, r4 - beq _080BD334 - movs r1, 0x60 - movs r2, 0x50 - bl sub_80BDACC - lsls r0, 24 - lsrs r1, r0, 24 - ldr r3, =gSprites - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r1, r3, 0 - adds r1, 0x1C - adds r1, r0, r1 - ldr r2, =sub_80BE4E0 - str r2, [r1] - adds r0, r3 - ldr r1, =0x0000ffe0 - strh r1, [r0, 0x38] -_080BD334: - adds r0, r6, 0 - bl sub_80BDA8C - lsls r0, 16 - lsrs r0, 16 - cmp r0, r4 - beq _080BD366 - movs r1, 0x60 - movs r2, 0x50 - bl sub_80BDACC - lsls r0, 24 - lsrs r1, r0, 24 - ldr r3, =gSprites - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r1, r3, 0 - adds r1, 0x1C - adds r1, r0, r1 - ldr r2, =sub_80BE4E0 - str r2, [r1] - adds r0, r3 - movs r1, 0 - strh r1, [r0, 0x38] -_080BD366: - adds r0, r6, 0x1 - lsls r0, 16 - lsrs r0, 16 - bl sub_80BDA8C - lsls r0, 16 - lsrs r0, 16 - cmp r0, r4 - beq _080BD39C - movs r1, 0x60 - movs r2, 0x50 - bl sub_80BDACC - lsls r0, 24 - lsrs r1, r0, 24 - ldr r3, =gSprites - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r1, r3, 0 - adds r1, 0x1C - adds r1, r0, r1 - ldr r2, =sub_80BE4E0 - str r2, [r1] - adds r0, r3 - movs r1, 0x20 - strh r1, [r0, 0x38] -_080BD39C: - movs r0, 0 - adds r1, r6, 0 - mov r2, r8 - bl sub_80BCE84 - ldr r0, [r7] - ldr r2, =0x0000062d - adds r0, r2 - ldrb r1, [r0] - movs r0, 0x1A - bl SetGpuReg - ldr r0, [r7] - movs r2, 0xC6 - lsls r2, 3 - adds r1, r0, r2 - movs r2, 0 - strh r2, [r1] - ldr r1, =0x00000632 - adds r0, r1 - strh r2, [r0] - ldr r2, =gPaletteFade - ldrb r1, [r2, 0x8] - movs r0, 0x7F - ands r0, r1 - strb r0, [r2, 0x8] - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80BD2B4 - - thumb_func_start sub_80BD404 -sub_80BD404: @ 80BD404 - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 24 - lsrs r4, r0, 24 - lsls r1, 24 - lsrs r5, r1, 24 - lsls r2, 24 - lsrs r6, r2, 24 - ldr r0, =gUnknown_02039B4C - ldr r1, [r0] - ldr r3, =0x0000062e - adds r2, r1, r3 - ldrb r3, [r2] - adds r7, r0, 0 - cmp r3, 0 - bne _080BD428 - b _080BD578 -_080BD428: - subs r0, r3, 0x1 - strb r0, [r2] - cmp r4, 0x1 - beq _080BD440 - cmp r4, 0x2 - beq _080BD4DC - b _080BD558 - .pool -_080BD440: - movs r3, 0 - ldr r4, =0x0000ffff - mov r12, r4 - ldr r0, =gSprites - mov r8, r0 - adds r2, r7, 0 -_080BD44C: - ldr r0, [r2] - lsls r1, r3, 1 - ldr r4, =0x0000061e - adds r0, r4 - adds r1, r0, r1 - ldrh r0, [r1] - cmp r0, r12 - beq _080BD46A - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - add r1, r8 - ldrh r0, [r1, 0x38] - adds r0, r5 - strh r0, [r1, 0x38] -_080BD46A: - adds r0, r3, 0x1 - lsls r0, 16 - lsrs r3, r0, 16 - cmp r3, 0x3 - bls _080BD44C - ldr r4, [r7] - ldr r1, =0x0000062e - adds r0, r4, r1 - ldrb r0, [r0] - subs r0, r6, r0 - lsls r0, 4 - adds r1, r6, 0 - bl __divsi3 - lsls r0, 24 - lsrs r2, r0, 24 - ldr r3, =0x0000062d - adds r0, r4, r3 - ldr r1, =0x00000632 - adds r4, r1 - movs r3, 0 - ldrsh r1, [r4, r3] - lsls r1, 4 - ldrb r0, [r0] - adds r1, r0 - subs r1, r2 - lsls r1, 16 - lsrs r1, 16 - movs r0, 0x1A - bl SetGpuReg - ldr r0, [r7] - ldr r4, =0x0000062c - adds r2, r0, r4 - movs r1, 0xC5 - lsls r1, 3 - adds r0, r1 - ldrb r1, [r0] - ldrb r0, [r2] - subs r0, r1 - strb r0, [r2] - b _080BD558 - .pool -_080BD4DC: - movs r3, 0 - ldr r2, =0x0000ffff - mov r12, r2 - ldr r4, =gSprites - mov r8, r4 - adds r2, r7, 0 -_080BD4E8: - ldr r0, [r2] - lsls r1, r3, 1 - ldr r4, =0x0000061e - adds r0, r4 - adds r1, r0, r1 - ldrh r0, [r1] - cmp r0, r12 - beq _080BD506 - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - add r1, r8 - ldrh r0, [r1, 0x38] - subs r0, r5 - strh r0, [r1, 0x38] -_080BD506: - adds r0, r3, 0x1 - lsls r0, 16 - lsrs r3, r0, 16 - cmp r3, 0x3 - bls _080BD4E8 - ldr r4, [r7] - ldr r1, =0x0000062e - adds r0, r4, r1 - ldrb r0, [r0] - subs r0, r6, r0 - lsls r0, 4 - adds r1, r6, 0 - bl __divsi3 - lsls r0, 24 - lsrs r2, r0, 24 - ldr r3, =0x0000062d - adds r0, r4, r3 - ldr r1, =0x00000632 - adds r4, r1 - movs r3, 0 - ldrsh r1, [r4, r3] - lsls r1, 4 - ldrb r0, [r0] - adds r1, r0 - adds r1, r2 - lsls r1, 16 - lsrs r1, 16 - movs r0, 0x1A - bl SetGpuReg - ldr r0, [r7] - ldr r4, =0x0000062c - adds r1, r0, r4 - movs r2, 0xC5 - lsls r2, 3 - adds r0, r2 - ldrb r0, [r0] - ldrb r3, [r1] - adds r0, r3 - strb r0, [r1] -_080BD558: - movs r0, 0 - b _080BD598 - .pool -_080BD578: - ldr r4, =0x0000062d - adds r2, r1, r4 - movs r3, 0xC6 - lsls r3, 3 - adds r0, r1, r3 - movs r4, 0 - ldrsh r1, [r0, r4] - lsls r1, 4 - ldrb r2, [r2] - adds r1, r2 - lsls r1, 16 - lsrs r1, 16 - movs r0, 0x1A - bl SetGpuReg - movs r0, 0x1 -_080BD598: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .pool - thumb_func_end sub_80BD404 - - thumb_func_start sub_80BD5A8 -sub_80BD5A8: @ 80BD5A8 - push {r4-r6,lr} - lsls r0, 24 - lsrs r2, r0, 24 - lsls r1, 16 - lsrs r3, r1, 16 - ldr r4, =gUnknown_02039B4C - ldr r0, [r4] - movs r5, 0xC6 - lsls r5, 3 - adds r1, r0, r5 - ldrh r1, [r1] - ldr r6, =0x00000632 - adds r0, r6 - strh r1, [r0] - cmp r2, 0x1 - beq _080BD5D8 - cmp r2, 0x2 - beq _080BD638 - b _080BD694 - .pool -_080BD5D8: - subs r0, r3, 0x1 - lsls r0, 16 - lsrs r0, 16 - bl sub_80BDA8C - lsls r0, 16 - lsrs r1, r0, 16 - ldr r0, =0x0000ffff - cmp r1, r0 - beq _080BD612 - adds r0, r1, 0 - movs r1, 0x60 - movs r2, 0x50 - bl sub_80BDACC - lsls r0, 24 - lsrs r1, r0, 24 - ldr r3, =gSprites - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r1, r3, 0 - adds r1, 0x1C - adds r1, r0, r1 - ldr r2, =sub_80BE4E0 - str r2, [r1] - adds r0, r3 - ldr r1, =0x0000ffc0 - strh r1, [r0, 0x38] -_080BD612: - ldr r0, [r4] - adds r1, r0, r5 - ldrh r2, [r1] - movs r3, 0 - ldrsh r0, [r1, r3] - cmp r0, 0 - ble _080BD634 - subs r0, r2, 0x1 - b _080BD692 - .pool -_080BD634: - movs r0, 0xF - b _080BD692 -_080BD638: - adds r0, r3, 0x1 - lsls r0, 16 - lsrs r0, 16 - bl sub_80BDA8C - lsls r0, 16 - lsrs r1, r0, 16 - ldr r0, =0x0000ffff - cmp r1, r0 - beq _080BD672 - adds r0, r1, 0 - movs r1, 0x60 - movs r2, 0x50 - bl sub_80BDACC - lsls r0, 24 - lsrs r1, r0, 24 - ldr r3, =gSprites - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r1, r3, 0 - adds r1, 0x1C - adds r1, r0, r1 - ldr r2, =sub_80BE4E0 - str r2, [r1] - adds r0, r3 - movs r1, 0x40 - strh r1, [r0, 0x38] -_080BD672: - ldr r0, [r4] - adds r1, r0, r5 - ldrh r2, [r1] - movs r6, 0 - ldrsh r0, [r1, r6] - cmp r0, 0xE - bgt _080BD690 - adds r0, r2, 0x1 - b _080BD692 - .pool -_080BD690: - movs r0, 0 -_080BD692: - strh r0, [r1] -_080BD694: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_80BD5A8 - - thumb_func_start sub_80BD69C -sub_80BD69C: @ 80BD69C - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - lsls r0, 16 - lsrs r7, r0, 16 - lsls r1, 16 - lsrs r4, r1, 16 - movs r0, 0 - mov r10, r0 - ldr r2, =gMain - ldrh r1, [r2, 0x2C] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _080BD6FC - cmp r7, 0 - beq _080BD6FC - movs r1, 0x1 - mov r10, r1 - ldr r0, =gUnknown_02039B4C - ldr r0, [r0] - ldr r2, =0x0000060c - adds r0, r2 - ldrh r3, [r0] - subs r3, 0x1 - lsls r3, 16 - lsrs r3, 16 - movs r0, 0x1 - adds r1, r7, 0 - movs r2, 0 - bl sub_80C0E0C - adds r7, r0, 0 - movs r0, 0x1 - adds r1, r7, 0 - bl sub_80BD5A8 - movs r0, 0x1 - b _080BD734 - .pool -_080BD6FC: - ldrh r1, [r2, 0x2C] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _080BD74C - ldr r0, =gUnknown_02039B4C - ldr r0, [r0] - ldr r3, =0x0000060c - adds r0, r3 - ldrh r0, [r0] - subs r0, 0x1 - cmp r7, r0 - bge _080BD74C - movs r1, 0x2 - mov r10, r1 - lsls r3, r0, 16 - lsrs r3, 16 - movs r0, 0 - adds r1, r7, 0 - movs r2, 0 - bl sub_80C0E0C - adds r7, r0, 0 - movs r0, 0x2 - adds r1, r7, 0 - bl sub_80BD5A8 - movs r0, 0x2 -_080BD734: - adds r1, r7, 0 - adds r2, r4, 0 - bl sub_80BCE84 - movs r0, 0x6C - bl PlaySE - b _080BD81A - .pool -_080BD74C: - ldrh r1, [r2, 0x2E] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _080BD7B4 - cmp r7, 0 - beq _080BD7B4 - adds r6, r7, 0 - movs r4, 0 -_080BD75E: - ldr r5, =gUnknown_02039B4C - ldr r0, [r5] - ldr r2, =0x0000060c - adds r0, r2 - ldrh r3, [r0] - subs r3, 0x1 - lsls r3, 16 - lsrs r3, 16 - movs r0, 0x1 - adds r1, r7, 0 - movs r2, 0 - bl sub_80C0E0C - adds r7, r0, 0 - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x6 - bls _080BD75E - ldr r1, [r5] - ldr r3, =0x0000062c - adds r1, r3 - subs r0, r7, r6 - lsls r0, 4 - ldrb r2, [r1] - adds r0, r2 - strb r0, [r1] - bl sub_80BDA40 - adds r0, r7, 0 - movs r1, 0xE - bl sub_80BD2B4 - movs r0, 0x6D - bl PlaySE - b _080BD81A - .pool -_080BD7B4: - ldrh r1, [r2, 0x2E] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _080BD81A - ldr r0, =gUnknown_02039B4C - ldr r0, [r0] - ldr r3, =0x0000060c - adds r0, r3 - ldrh r0, [r0] - subs r0, 0x1 - cmp r7, r0 - bge _080BD81A - adds r6, r7, 0 - movs r4, 0 -_080BD7D2: - ldr r5, =gUnknown_02039B4C - ldr r0, [r5] - ldr r1, =0x0000060c - adds r0, r1 - ldrh r3, [r0] - subs r3, 0x1 - lsls r3, 16 - lsrs r3, 16 - movs r0, 0 - adds r1, r7, 0 - movs r2, 0 - bl sub_80C0E0C - adds r7, r0, 0 - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x6 - bls _080BD7D2 - ldr r1, [r5] - ldr r2, =0x0000062c - adds r1, r2 - subs r0, r7, r6 - lsls r0, 4 - ldrb r3, [r1] - adds r0, r3 - strb r0, [r1] - bl sub_80BDA40 - adds r0, r7, 0 - movs r1, 0xE - bl sub_80BD2B4 - movs r0, 0x6D - bl PlaySE -_080BD81A: - mov r0, r10 - cmp r0, 0 - bne _080BD83C - ldr r0, =gUnknown_02039B4C - ldr r0, [r0] - movs r1, 0xC7 - lsls r1, 3 - adds r0, r1 - mov r2, r10 - strh r2, [r0] - b _080BD8A2 - .pool -_080BD83C: - ldr r1, =gUnknown_0855D28C - ldr r6, =gUnknown_02039B4C - ldr r2, [r6] - movs r3, 0xC7 - lsls r3, 3 - mov r9, r3 - adds r0, r2, r3 - ldrh r0, [r0] - lsrs r0, 2 - adds r1, r0, r1 - ldrb r5, [r1] - ldr r1, =gUnknown_0855D291 - adds r0, r1 - ldrb r3, [r0] - ldr r0, =0x0000062e - adds r2, r0 - strb r3, [r2] - ldr r1, [r6] - ldr r2, =0x00000636 - mov r8, r2 - adds r0, r1, r2 - strh r3, [r0] - ldr r4, =0x00000634 - adds r0, r1, r4 - strh r5, [r0] - ldr r3, =0x0000062f - adds r1, r3 - mov r0, r10 - strb r0, [r1] - ldr r2, [r6] - lsrs r5, 1 - movs r1, 0xC5 - lsls r1, 3 - adds r0, r2, r1 - strh r5, [r0] - adds r3, r2, r3 - ldrb r0, [r3] - adds r4, r2, r4 - ldrb r1, [r4] - add r2, r8 - ldrb r2, [r2] - bl sub_80BD404 - ldr r0, [r6] - mov r2, r9 - adds r1, r0, r2 - ldrh r0, [r1] - cmp r0, 0xB - bhi _080BD8A2 - adds r0, 0x1 - strh r0, [r1] -_080BD8A2: - adds r0, r7, 0 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .pool - thumb_func_end sub_80BD69C - thumb_func_start sub_80BD8D0 sub_80BD8D0: @ 80BD8D0 push {r4-r7,lr} |