diff options
author | PikalaxALT <PikalaxALT@gmail.com> | 2020-03-14 13:50:15 -0400 |
---|---|---|
committer | PikalaxALT <PikalaxALT@gmail.com> | 2020-03-14 13:52:50 -0400 |
commit | 5f7738672ac9b3aa6a7836bc222d60acf7e32f54 (patch) | |
tree | faa17507f8953e356f8e9aa83ce78078b6a0c366 /asm | |
parent | 6753e18db06fc6636b768bfaae41a68ec8660abf (diff) |
through sub_809223C
Diffstat (limited to 'asm')
-rw-r--r-- | asm/pokemon_storage_system.s | 2364 |
1 files changed, 0 insertions, 2364 deletions
diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index b789c20a8..4985ec0b0 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,2370 +5,6 @@ .text - thumb_func_start sub_8091084 -sub_8091084: @ 8091084 - push {lr} - ldr r0, _080910AC @ =sPSSData - ldr r0, [r0] - movs r1, 0xB0 - lsls r1, 4 - adds r0, r1 - ldr r0, [r0] - ldr r1, [r0] - cmp r1, 0 - beq _080910A6 - adds r3, r1, 0 - adds r3, 0x3E - ldrb r2, [r3] - movs r0, 0x4 - ands r0, r2 - cmp r0, 0 - beq _080910B0 -_080910A6: - movs r0, 0 - b _080910C6 - .align 2, 0 -_080910AC: .4byte sPSSData -_080910B0: - adds r0, r1, 0 - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _080910C4 - movs r0, 0x4 - orrs r0, r2 - strb r0, [r3] -_080910C4: - movs r0, 0x1 -_080910C6: - pop {r1} - bx r1 - thumb_func_end sub_8091084 - - thumb_func_start sub_80910CC -sub_80910CC: @ 80910CC - push {r4,lr} - ldr r4, _08091110 @ =sPSSData - ldr r0, [r4] - movs r1, 0xB0 - lsls r1, 4 - adds r0, r1 - ldr r0, [r0] - ldr r0, [r0] - cmp r0, 0 - beq _08091108 - ldrb r0, [r0, 0x3] - lsls r0, 26 - lsrs r0, 27 - bl FreeOamMatrix - ldr r0, [r4] - movs r1, 0xB0 - lsls r1, 4 - adds r0, r1 - ldr r0, [r0] - ldr r0, [r0] - bl DestroyBoxMonIcon - ldr r0, [r4] - movs r1, 0xB0 - lsls r1, 4 - adds r0, r1 - ldr r1, [r0] - movs r0, 0 - str r0, [r1] -_08091108: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08091110: .4byte sPSSData - thumb_func_end sub_80910CC - - thumb_func_start sub_8091114 -sub_8091114: @ 8091114 - push {lr} - ldr r3, _0809114C @ =sPSSData - ldr r0, [r3] - movs r1, 0xB0 - lsls r1, 4 - adds r0, r1 - ldr r0, [r0] - ldr r0, [r0] - cmp r0, 0 - beq _08091148 - adds r2, r0, 0 - adds r2, 0x3E - ldrb r1, [r2] - movs r0, 0x5 - negs r0, r0 - ands r0, r1 - strb r0, [r2] - ldr r0, [r3] - movs r1, 0xB0 - lsls r1, 4 - adds r0, r1 - ldr r0, [r0] - ldr r0, [r0] - movs r1, 0x1 - bl StartSpriteAffineAnim -_08091148: - pop {r0} - bx r0 - .align 2, 0 -_0809114C: .4byte sPSSData - thumb_func_end sub_8091114 - - thumb_func_start sub_8091150 -sub_8091150: @ 8091150 - push {lr} - ldr r0, _08091168 @ =sPSSData - ldr r0, [r0] - movs r1, 0xB0 - lsls r1, 4 - adds r2, r0, r1 - ldr r0, [r2] - cmp r0, 0 - bne _0809116C - movs r0, 0 - b _08091180 - .align 2, 0 -_08091168: .4byte sPSSData -_0809116C: - ldr r0, [r0] - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _0809117E - movs r0, 0 - str r0, [r2] -_0809117E: - movs r0, 0x1 -_08091180: - pop {r1} - bx r1 - thumb_func_end sub_8091150 - - thumb_func_start SetMovingMonPriority -SetMovingMonPriority: @ 8091184 - lsls r0, 24 - lsrs r0, 24 - ldr r1, _080911A8 @ =sPSSData - ldr r1, [r1] - ldr r2, _080911AC @ =0x00000a68 - adds r1, r2 - ldr r3, [r1] - movs r1, 0x3 - ands r0, r1 - lsls r0, 2 - ldrb r2, [r3, 0x5] - movs r1, 0xD - negs r1, r1 - ands r1, r2 - orrs r1, r0 - strb r1, [r3, 0x5] - bx lr - .align 2, 0 -_080911A8: .4byte sPSSData -_080911AC: .4byte 0x00000a68 - thumb_func_end SetMovingMonPriority - - thumb_func_start sub_80911B0 -sub_80911B0: @ 80911B0 - ldr r1, _080911D0 @ =sPSSData - ldr r1, [r1] - movs r2, 0xCB - lsls r2, 4 - adds r1, r2 - ldr r2, [r1] - ldrh r2, [r2, 0x20] - strh r2, [r0, 0x20] - ldr r2, [r1] - ldrh r1, [r2, 0x26] - ldrh r2, [r2, 0x22] - adds r1, r2 - adds r1, 0x4 - strh r1, [r0, 0x22] - bx lr - .align 2, 0 -_080911D0: .4byte sPSSData - thumb_func_end sub_80911B0 - - thumb_func_start sub_80911D4 -sub_80911D4: @ 80911D4 - push {r4-r6,lr} - lsls r0, 16 - lsrs r3, r0, 16 - movs r4, 0 - ldr r1, _0809123C @ =sPSSData - ldr r0, [r1] - ldr r2, _08091240 @ =0x00000b54 - adds r0, r2 - ldrh r0, [r0] - adds r2, r1, 0 - cmp r0, r3 - beq _08091208 - adds r6, r2, 0 - ldr r5, _08091240 @ =0x00000b54 -_080911F0: - adds r0, r4, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 - cmp r4, 0x27 - bhi _08091208 - ldr r0, [r6] - lsls r1, r4, 1 - adds r0, r5 - adds r0, r1 - ldrh r0, [r0] - cmp r0, r3 - bne _080911F0 -_08091208: - cmp r4, 0x28 - bne _08091248 - movs r4, 0 - ldr r0, [r2] - ldr r5, _08091240 @ =0x00000b54 - adds r0, r5 - ldrh r0, [r0] - cmp r0, 0 - beq _08091234 - adds r6, r2, 0 -_0809121C: - adds r0, r4, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 - cmp r4, 0x27 - bhi _08091234 - ldr r0, [r6] - lsls r1, r4, 1 - adds r0, r5 - adds r0, r1 - ldrh r0, [r0] - cmp r0, 0 - bne _0809121C -_08091234: - cmp r4, 0x28 - bne _08091248 - ldr r0, _08091244 @ =0x0000ffff - b _0809127A - .align 2, 0 -_0809123C: .4byte sPSSData -_08091240: .4byte 0x00000b54 -_08091244: .4byte 0x0000ffff -_08091248: - ldr r1, [r2] - lsls r2, r4, 1 - ldr r5, _08091280 @ =0x00000b54 - adds r0, r1, r5 - adds r0, r2 - strh r3, [r0] - ldr r0, _08091284 @ =0x00000b04 - adds r1, r0 - adds r1, r2 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - lsls r4, 20 - lsrs r4, 16 - adds r0, r3, 0 - movs r1, 0x1 - bl GetMonIconTiles - lsls r1, r4, 5 - ldr r2, _08091288 @ =0x06010000 - adds r1, r2 - ldr r2, _0809128C @ =0x04000080 - bl CpuSet - adds r0, r4, 0 -_0809127A: - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_08091280: .4byte 0x00000b54 -_08091284: .4byte 0x00000b04 -_08091288: .4byte 0x06010000 -_0809128C: .4byte 0x04000080 - thumb_func_end sub_80911D4 - - thumb_func_start sub_8091290 -sub_8091290: @ 8091290 - push {r4-r6,lr} - lsls r0, 16 - lsrs r5, r0, 16 - movs r3, 0 - ldr r6, _080912C4 @ =sPSSData -_0809129A: - ldr r1, [r6] - lsls r2, r3, 1 - ldr r4, _080912C8 @ =0x00000b54 - adds r0, r1, r4 - adds r4, r0, r2 - ldrh r0, [r4] - cmp r0, r5 - bne _080912D0 - ldr r0, _080912CC @ =0x00000b04 - adds r1, r0 - adds r1, r2 - ldrh r0, [r1] - subs r0, 0x1 - strh r0, [r1] - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0 - bne _080912DA - strh r0, [r4] - b _080912DA - .align 2, 0 -_080912C4: .4byte sPSSData -_080912C8: .4byte 0x00000b54 -_080912CC: .4byte 0x00000b04 -_080912D0: - adds r0, r3, 0x1 - lsls r0, 16 - lsrs r3, r0, 16 - cmp r3, 0x27 - bls _0809129A -_080912DA: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_8091290 - - thumb_func_start CreateMonIconSprite -CreateMonIconSprite: @ 80912E0 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x1C - ldr r4, [sp, 0x3C] - ldr r5, [sp, 0x40] - lsls r0, 16 - lsrs r6, r0, 16 - lsls r2, 16 - lsrs r2, 16 - str r2, [sp, 0x18] - lsls r3, 16 - lsrs r3, 16 - mov r8, r3 - lsls r4, 24 - lsrs r4, 24 - lsls r5, 24 - lsrs r5, 24 - mov r9, r5 - mov r2, sp - ldr r0, _08091390 @ =gUnknown_83CEBF0 - ldm r0!, {r3,r5,r7} - stm r2!, {r3,r5,r7} - ldm r0!, {r3,r5,r7} - stm r2!, {r3,r5,r7} - adds r0, r6, 0 - bl GetIconSpecies - mov r10, r0 - mov r6, r10 - mov r2, sp - ldr r1, _08091394 @ =gMonIconPaletteIndices - adds r1, r6, r1 - ldr r3, _08091398 @ =0x0000dac0 - adds r0, r3, 0 - ldrb r1, [r1] - adds r0, r1 - strh r0, [r2, 0x2] - adds r0, r6, 0 - bl sub_80911D4 - lsls r0, 16 - lsrs r0, 16 - adds r5, r0, 0 - ldr r0, _0809139C @ =0x0000ffff - cmp r5, r0 - beq _080913B2 - ldr r7, [sp, 0x18] - lsls r1, r7, 16 - asrs r1, 16 - mov r0, r8 - lsls r2, r0, 16 - asrs r2, 16 - mov r0, sp - mov r3, r9 - bl CreateSprite - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0x40 - beq _080913AC - ldr r1, _080913A0 @ =gSprites - lsls r0, r2, 4 - adds r0, r2 - lsls r0, 2 - adds r0, r1 - ldr r2, _080913A4 @ =0x000003ff - ands r2, r5 - ldrh r3, [r0, 0x4] - ldr r1, _080913A8 @ =0xfffffc00 - ands r1, r3 - orrs r1, r2 - strh r1, [r0, 0x4] - movs r1, 0x3 - ands r4, r1 - lsls r3, r4, 2 - ldrb r2, [r0, 0x5] - movs r1, 0xD - negs r1, r1 - ands r1, r2 - orrs r1, r3 - strb r1, [r0, 0x5] - mov r1, r10 - strh r1, [r0, 0x2E] - b _080913B4 - .align 2, 0 -_08091390: .4byte gUnknown_83CEBF0 -_08091394: .4byte gMonIconPaletteIndices -_08091398: .4byte 0x0000dac0 -_0809139C: .4byte 0x0000ffff -_080913A0: .4byte gSprites -_080913A4: .4byte 0x000003ff -_080913A8: .4byte 0xfffffc00 -_080913AC: - adds r0, r6, 0 - bl sub_8091290 -_080913B2: - movs r0, 0 -_080913B4: - add sp, 0x1C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end CreateMonIconSprite - - thumb_func_start DestroyBoxMonIcon -DestroyBoxMonIcon: @ 80913C4 - push {r4,lr} - adds r4, r0, 0 - ldrh r0, [r4, 0x2E] - bl sub_8091290 - adds r0, r4, 0 - bl DestroySprite - pop {r4} - pop {r0} - bx r0 - thumb_func_end DestroyBoxMonIcon - - thumb_func_start sub_80913DC -sub_80913DC: @ 80913DC - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r0, _08091404 @ =sub_8091420 - movs r1, 0x2 - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - ldr r2, _08091408 @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - strh r4, [r1, 0xC] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08091404: .4byte sub_8091420 -_08091408: .4byte gTasks - thumb_func_end sub_80913DC - - thumb_func_start sub_809140C -sub_809140C: @ 809140C - push {lr} - ldr r0, _0809141C @ =sub_8091420 - bl FuncIsActiveTask - lsls r0, 24 - lsrs r0, 24 - pop {r1} - bx r1 - .align 2, 0 -_0809141C: .4byte sub_8091420 - thumb_func_end sub_809140C - - thumb_func_start sub_8091420 -sub_8091420: @ 8091420 - push {r4,lr} - lsls r0, 24 - lsrs r2, r0, 24 - lsls r0, r2, 2 - adds r0, r2 - lsls r0, 3 - ldr r1, _08091444 @ =gTasks - adds r4, r0, r1 - movs r1, 0x8 - ldrsh r0, [r4, r1] - cmp r0, 0x4 - bhi _08091504 - lsls r0, 2 - ldr r1, _08091448 @ =_0809144C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08091444: .4byte gTasks -_08091448: .4byte _0809144C - .align 2, 0 -_0809144C: - .4byte _08091460 - .4byte _08091498 - .4byte _080914CC - .4byte _080914D6 - .4byte _080914FC -_08091460: - ldr r1, _0809148C @ =sPSSData - ldr r0, [r1] - ldr r2, _08091490 @ =0x000002d2 - adds r0, r2 - movs r2, 0 - strb r2, [r0] - ldr r1, [r1] - movs r3, 0xB3 - lsls r3, 2 - adds r0, r1, r3 - strh r2, [r0] - ldr r0, _08091494 @ =0x00004abc - adds r1, r0 - movs r2, 0x80 - lsls r2, 5 - movs r0, 0 - movs r3, 0x1 - bl RequestDma3Fill - strh r0, [r4, 0xA] - b _08091508 - .align 2, 0 -_0809148C: .4byte sPSSData -_08091490: .4byte 0x000002d2 -_08091494: .4byte 0x00004abc -_08091498: - movs r1, 0xA - ldrsh r0, [r4, r1] - bl CheckForSpaceForDma3Request - lsls r0, 16 - asrs r0, 16 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _0809150E - ldr r0, _080914C4 @ =sPSSData - ldr r1, [r0] - ldr r2, _080914C8 @ =0x00004abc - adds r1, r2 - movs r0, 0x2 - bl SetBgTilemapBuffer - movs r0, 0x2 - bl ShowBg - b _08091508 - .align 2, 0 -_080914C4: .4byte sPSSData -_080914C8: .4byte 0x00004abc -_080914CC: - ldrb r0, [r4, 0xC] - movs r1, 0 - bl sub_8091850 - b _08091508 -_080914D6: - bl sub_809196C - cmp r0, 0 - beq _0809150E - ldrb r0, [r4, 0xC] - bl sub_8091A94 - bl sub_8091F80 - ldrb r0, [r4, 0xC] - bl sub_80900D4 - ldr r1, _080914F8 @ =0x00005b0a - movs r0, 0xC - bl SetGpuReg - b _08091508 - .align 2, 0 -_080914F8: .4byte 0x00005b0a -_080914FC: - adds r0, r2, 0 - bl DestroyTask - b _08091508 -_08091504: - movs r0, 0 - b _0809150C -_08091508: - ldrh r0, [r4, 0x8] - adds r0, 0x1 -_0809150C: - strh r0, [r4, 0x8] -_0809150E: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8091420 - - thumb_func_start SetUpScrollToBox -SetUpScrollToBox: @ 8091514 - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 24 - lsrs r4, r0, 24 - mov r8, r4 - adds r0, r4, 0 - bl sub_80916F4 - lsls r0, 24 - lsrs r0, 24 - adds r6, r0, 0 - ldr r5, _080915D8 @ =sPSSData - ldr r2, [r5] - lsls r0, r6, 24 - asrs r3, r0, 24 - movs r0, 0x6 - negs r0, r0 - adds r1, r0, 0 - cmp r3, 0 - ble _08091540 - movs r1, 0x6 -_08091540: - ldr r7, _080915DC @ =0x000002ce - adds r0, r2, r7 - strh r1, [r0] - movs r1, 0x2 - cmp r3, 0 - ble _0809154E - movs r1, 0x1 -_0809154E: - ldr r7, _080915E0 @ =0x000002d3 - adds r0, r2, r7 - strb r1, [r0] - ldr r2, [r5] - movs r0, 0xB4 - lsls r0, 2 - adds r1, r2, r0 - movs r0, 0x20 - strh r0, [r1] - movs r1, 0xB5 - lsls r1, 2 - adds r0, r2, r1 - strb r4, [r0] - ldr r2, [r5] - movs r1, 0 - cmp r3, 0 - bgt _08091572 - movs r1, 0x5 -_08091572: - ldr r4, _080915E4 @ =0x000002d6 - adds r0, r2, r4 - strh r1, [r0] - movs r7, 0xB6 - lsls r7, 2 - adds r0, r2, r7 - strh r3, [r0] - movs r1, 0x38 - cmp r3, 0 - ble _0809158C - movs r0, 0x84 - lsls r0, 1 - adds r1, r0, 0 -_0809158C: - ldr r4, _080915E8 @ =0x000002da - adds r0, r2, r4 - strh r1, [r0] - movs r1, 0 - cmp r3, 0 - bgt _0809159A - movs r1, 0x5 -_0809159A: - movs r7, 0xB7 - lsls r7, 2 - adds r0, r2, r7 - strh r1, [r0] - ldr r0, _080915EC @ =0x000002de - adds r1, r2, r0 - movs r0, 0 - strh r0, [r1] - movs r3, 0xB8 - lsls r3, 2 - adds r1, r2, r3 - movs r0, 0x2 - strh r0, [r1] - ldr r4, _080915F0 @ =0x00000a64 - adds r0, r2, r4 - mov r7, r8 - strb r7, [r0] - ldr r0, [r5] - ldr r1, _080915F4 @ =0x00000a65 - adds r0, r1 - strb r6, [r0] - ldr r0, [r5] - ldr r3, _080915F8 @ =0x00000a63 - adds r0, r3 - movs r1, 0 - strb r1, [r0] - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080915D8: .4byte sPSSData -_080915DC: .4byte 0x000002ce -_080915E0: .4byte 0x000002d3 -_080915E4: .4byte 0x000002d6 -_080915E8: .4byte 0x000002da -_080915EC: .4byte 0x000002de -_080915F0: .4byte 0x00000a64 -_080915F4: .4byte 0x00000a65 -_080915F8: .4byte 0x00000a63 - thumb_func_end SetUpScrollToBox - - thumb_func_start ScrollToBox -ScrollToBox: @ 80915FC - push {r4-r6,lr} - ldr r4, _08091618 @ =sPSSData - ldr r1, [r4] - ldr r5, _0809161C @ =0x00000a63 - adds r0, r1, r5 - ldrb r0, [r0] - cmp r0, 0x1 - beq _08091644 - cmp r0, 0x1 - bgt _08091620 - cmp r0, 0 - beq _08091626 - b _080916D4 - .align 2, 0 -_08091618: .4byte sPSSData -_0809161C: .4byte 0x00000a63 -_08091620: - cmp r0, 0x2 - beq _08091694 - b _080916D4 -_08091626: - ldr r2, _08091688 @ =0x00000a64 - adds r0, r1, r2 - ldrb r0, [r0] - adds r2, 0x1 - adds r1, r2 - ldrb r1, [r1] - lsls r1, 24 - asrs r1, 24 - bl sub_8091850 - ldr r1, [r4] - adds r1, r5 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] -_08091644: - bl sub_809196C - cmp r0, 0 - beq _080916E2 - ldr r6, _0809168C @ =sPSSData - ldr r1, [r6] - ldr r4, _08091688 @ =0x00000a64 - adds r0, r1, r4 - ldrb r0, [r0] - ldr r5, _08091690 @ =0x00000a65 - adds r1, r5 - ldrb r1, [r1] - lsls r1, 24 - asrs r1, 24 - bl sub_8090574 - ldr r1, [r6] - adds r4, r1, r4 - ldrb r0, [r4] - adds r1, r5 - ldrb r1, [r1] - lsls r1, 24 - asrs r1, 24 - bl sub_8091C48 - ldr r0, [r6] - adds r0, r5 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - bl sub_809200C - b _080916D4 - .align 2, 0 -_08091688: .4byte 0x00000a64 -_0809168C: .4byte sPSSData -_08091690: .4byte 0x00000a65 -_08091694: - bl sub_809062C - lsls r0, 24 - lsrs r5, r0, 24 - ldr r2, [r4] - movs r4, 0xB4 - lsls r4, 2 - adds r3, r2, r4 - ldrh r0, [r3] - cmp r0, 0 - beq _080916D0 - movs r0, 0xB3 - lsls r0, 2 - adds r1, r2, r0 - subs r4, 0x2 - adds r0, r2, r4 - ldrh r0, [r0] - ldrh r2, [r1] - adds r0, r2 - strh r0, [r1] - ldrh r0, [r3] - subs r0, 0x1 - strh r0, [r3] - lsls r0, 16 - cmp r0, 0 - bne _080916E2 - bl sub_8091E34 - bl sub_80920AC -_080916D0: - adds r0, r5, 0 - b _080916E4 -_080916D4: - ldr r0, _080916EC @ =sPSSData - ldr r1, [r0] - ldr r4, _080916F0 @ =0x00000a63 - adds r1, r4 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] -_080916E2: - movs r0, 0x1 -_080916E4: - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_080916EC: .4byte sPSSData -_080916F0: .4byte 0x00000a63 - thumb_func_end ScrollToBox - - thumb_func_start sub_80916F4 -sub_80916F4: @ 80916F4 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl StorageGetCurrentBox - lsls r0, 24 - lsrs r1, r0, 24 - movs r2, 0 - cmp r1, r4 - beq _0809171E -_08091708: - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0xD - bls _08091714 - movs r1, 0 -_08091714: - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r1, r4 - bne _08091708 -_0809171E: - movs r0, 0x1 - negs r0, r0 - cmp r2, 0x6 - bhi _08091728 - movs r0, 0x1 -_08091728: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80916F4 - - thumb_func_start SetWallpaperForCurrentBox -SetWallpaperForCurrentBox: @ 8091730 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl StorageGetCurrentBox - lsls r0, 24 - lsrs r0, 24 - adds r1, r4, 0 - bl SetBoxWallpaper - ldr r0, _08091758 @ =sPSSData - ldr r0, [r0] - ldr r1, _0809175C @ =0x00000a62 - adds r0, r1 - movs r1, 0 - strb r1, [r0] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08091758: .4byte sPSSData -_0809175C: .4byte 0x00000a62 - thumb_func_end SetWallpaperForCurrentBox - - thumb_func_start DoWallpaperGfxChange -DoWallpaperGfxChange: @ 8091760 - push {r4,lr} - sub sp, 0x4 - ldr r1, _08091780 @ =sPSSData - ldr r0, [r1] - ldr r2, _08091784 @ =0x00000a62 - adds r0, r2 - ldrb r0, [r0] - adds r4, r1, 0 - cmp r0, 0x4 - bhi _08091844 - lsls r0, 2 - ldr r1, _08091788 @ =_0809178C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08091780: .4byte sPSSData -_08091784: .4byte 0x00000a62 -_08091788: .4byte _0809178C - .align 2, 0 -_0809178C: - .4byte _080917A0 - .4byte _080917C8 - .4byte _080917E2 - .4byte _0809181C - .4byte _08091840 -_080917A0: - ldr r0, [r4] - movs r1, 0xE7 - lsls r1, 3 - adds r0, r1 - ldr r0, [r0] - ldr r1, _080917C0 @ =0x0000ffff - str r1, [sp] - movs r1, 0x1 - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - ldr r1, [r4] - ldr r2, _080917C4 @ =0x00000a62 - adds r1, r2 - b _0809182E - .align 2, 0 -_080917C0: .4byte 0x0000ffff -_080917C4: .4byte 0x00000a62 -_080917C8: - bl UpdatePaletteFade - lsls r0, 24 - cmp r0, 0 - bne _08091844 - bl StorageGetCurrentBox - lsls r0, 24 - lsrs r0, 24 - movs r1, 0 - bl sub_8091850 - b _08091826 -_080917E2: - bl sub_809196C - cmp r0, 0x1 - bne _08091844 - bl sub_8091EF0 - ldr r4, _08091810 @ =sPSSData - ldr r0, [r4] - movs r1, 0xE7 - lsls r1, 3 - adds r0, r1 - ldr r0, [r0] - ldr r1, _08091814 @ =0x0000ffff - str r1, [sp] - movs r1, 0x1 - movs r2, 0x10 - movs r3, 0 - bl BeginNormalPaletteFade - ldr r1, [r4] - ldr r2, _08091818 @ =0x00000a62 - adds r1, r2 - b _0809182E - .align 2, 0 -_08091810: .4byte sPSSData -_08091814: .4byte 0x0000ffff -_08091818: .4byte 0x00000a62 -_0809181C: - bl UpdatePaletteFade - lsls r0, 24 - cmp r0, 0 - bne _08091844 -_08091826: - ldr r0, _08091838 @ =sPSSData - ldr r1, [r0] - ldr r0, _0809183C @ =0x00000a62 - adds r1, r0 -_0809182E: - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - b _08091844 - .align 2, 0 -_08091838: .4byte sPSSData -_0809183C: .4byte 0x00000a62 -_08091840: - movs r0, 0 - b _08091846 -_08091844: - movs r0, 0x1 -_08091846: - add sp, 0x4 - pop {r4} - pop {r1} - bx r1 - thumb_func_end DoWallpaperGfxChange - - thumb_func_start sub_8091850 -sub_8091850: @ 8091850 - push {r4-r7,lr} - sub sp, 0x4 - ldr r4, _08091904 @ =sPSSData - ldr r2, [r4] - ldr r3, _08091908 @ =0x000006f9 - adds r2, r3 - movs r3, 0 - strb r3, [r2] - ldr r2, [r4] - ldr r3, _0809190C @ =0x000006fa - adds r2, r3 - strb r0, [r2] - ldr r0, [r4] - ldr r2, _08091910 @ =0x000006fb - adds r0, r2 - strb r1, [r0] - ldr r1, [r4] - adds r2, r1, r2 - movs r0, 0 - ldrsb r0, [r2, r0] - cmp r0, 0 - beq _08091896 - movs r3, 0 - ldr r0, _08091914 @ =0x000002d2 - adds r2, r1, r0 - ldrb r0, [r2] - cmp r0, 0 - bne _0809188A - movs r3, 0x1 -_0809188A: - strb r3, [r2] - ldr r0, [r4] - ldr r1, _08091918 @ =0x00004abc - adds r0, r1 - bl sub_8091A24 -_08091896: - ldr r6, _08091904 @ =sPSSData - ldr r0, [r6] - ldr r2, _0809190C @ =0x000006fa - adds r0, r2 - ldrb r0, [r0] - bl GetBoxWallpaper - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 2 - ldr r0, _0809191C @ =gUnknown_83D2A10 - adds r7, r1, r0 - ldr r0, [r7, 0x4] - ldr r1, [r6] - ldr r5, _08091920 @ =0x00000792 - adds r1, r5 - bl LZ77UnCompWram - ldr r1, [r6] - ldr r3, _08091918 @ =0x00004abc - adds r0, r1, r3 - adds r5, r1, r5 - ldr r4, _08091910 @ =0x000006fb - adds r2, r1, r4 - ldrb r2, [r2] - lsls r2, 24 - asrs r2, 24 - ldr r3, _08091914 @ =0x000002d2 - adds r1, r3 - ldrb r3, [r1] - adds r1, r5, 0 - bl sub_8091984 - ldr r1, [r6] - adds r4, r1, r4 - movs r0, 0 - ldrsb r0, [r4, r0] - cmp r0, 0 - beq _08091924 - ldr r0, [r7, 0x8] - ldr r2, _08091914 @ =0x000002d2 - adds r1, r2 - ldrb r1, [r1] - lsls r1, 21 - movs r3, 0x80 - lsls r3, 15 - adds r1, r3 - lsrs r1, 16 - movs r2, 0x40 - bl LoadPalette - b _08091938 - .align 2, 0 -_08091904: .4byte sPSSData -_08091908: .4byte 0x000006f9 -_0809190C: .4byte 0x000006fa -_08091910: .4byte 0x000006fb -_08091914: .4byte 0x000002d2 -_08091918: .4byte 0x00004abc -_0809191C: .4byte gUnknown_83D2A10 -_08091920: .4byte 0x00000792 -_08091924: - ldr r0, [r7, 0x8] - ldr r2, _08091960 @ =0x000002d2 - adds r1, r2 - ldrb r1, [r1] - lsls r1, 6 - ldr r2, _08091964 @ =gPlttBufferUnfaded + 0x80 - adds r1, r2 - movs r2, 0x20 - bl CpuSet -_08091938: - ldr r1, [r7] - ldr r0, _08091968 @ =sPSSData - ldr r0, [r0] - ldr r3, _08091960 @ =0x000002d2 - adds r0, r3 - ldrb r3, [r0] - lsls r3, 8 - movs r0, 0 - str r0, [sp] - movs r0, 0x2 - movs r2, 0 - bl DecompressAndLoadBgGfxUsingHeap - movs r0, 0x2 - bl CopyBgTilemapBufferToVram - add sp, 0x4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08091960: .4byte 0x000002d2 -_08091964: .4byte gPlttBufferUnfaded + 0x80 -_08091968: .4byte sPSSData - thumb_func_end sub_8091850 - - thumb_func_start sub_809196C -sub_809196C: @ 809196C - push {lr} - bl IsDma3ManagerBusyWithBgCopy - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _0809197E - movs r0, 0x1 - b _08091980 -_0809197E: - movs r0, 0 -_08091980: - pop {r1} - bx r1 - thumb_func_end sub_809196C - - thumb_func_start sub_8091984 -sub_8091984: @ 8091984 - push {r4-r7,lr} - sub sp, 0x24 - lsls r3, 24 - lsrs r3, 24 - lsls r5, r3, 17 - ldr r0, _080919F0 @ =sPSSData - ldr r0, [r0] - movs r4, 0xB3 - lsls r4, 2 - adds r0, r4 - ldrh r4, [r0] - lsrs r4, 3 - adds r4, 0xA - lsls r2, 24 - asrs r7, r2, 24 - lsls r0, r7, 1 - adds r0, r7 - lsls r0, 3 - adds r6, r4, r0 - movs r0, 0x3F - ands r6, r0 - movs r4, 0x14 - str r4, [sp] - movs r2, 0x12 - str r2, [sp, 0x4] - str r6, [sp, 0x8] - movs r0, 0x2 - str r0, [sp, 0xC] - str r4, [sp, 0x10] - str r2, [sp, 0x14] - movs r0, 0x11 - str r0, [sp, 0x18] - lsls r3, 24 - asrs r3, 16 - str r3, [sp, 0x1C] - movs r0, 0xC0 - lsls r0, 10 - adds r5, r0 - asrs r5, 16 - str r5, [sp, 0x20] - movs r0, 0x2 - movs r2, 0 - movs r3, 0 - bl CopyRectToBgTilemapBufferRect - cmp r7, 0 - beq _08091A16 - cmp r7, 0 - ble _080919F4 - lsls r0, r6, 16 - movs r1, 0xA0 - lsls r1, 13 - adds r0, r1 - b _080919FA - .align 2, 0 -_080919F0: .4byte sPSSData -_080919F4: - lsls r0, r6, 16 - ldr r4, _08091A20 @ =0xfffc0000 - adds r0, r4 -_080919FA: - lsrs r6, r0, 16 - lsls r2, r6, 24 - lsrs r2, 24 - movs r0, 0x4 - str r0, [sp] - movs r0, 0x12 - str r0, [sp, 0x4] - movs r0, 0x11 - str r0, [sp, 0x8] - movs r0, 0x2 - movs r1, 0 - movs r3, 0x2 - bl FillBgTilemapBufferRect -_08091A16: - add sp, 0x24 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08091A20: .4byte 0xfffc0000 - thumb_func_end sub_8091984 - - thumb_func_start sub_8091A24 -sub_8091A24: @ 8091A24 - push {r4-r6,lr} - adds r2, r0, 0 - ldr r0, _08091A50 @ =sPSSData - ldr r0, [r0] - movs r1, 0xB3 - lsls r1, 2 - adds r0, r1 - ldrh r0, [r0] - lsrs r0, 3 - adds r3, r0, 0 - adds r3, 0x1E - movs r0, 0x3F - ands r3, r0 - adds r0, r3, 0 - cmp r0, 0x1F - bgt _08091A54 - lsls r0, 1 - movs r6, 0x98 - lsls r6, 3 - adds r0, r6 - b _08091A5C - .align 2, 0 -_08091A50: .4byte sPSSData -_08091A54: - lsls r0, 1 - movs r1, 0xC8 - lsls r1, 4 - adds r0, r1 -_08091A5C: - adds r2, r0 - movs r0, 0 - movs r5, 0 - movs r4, 0x3F -_08091A64: - strh r5, [r2] - adds r2, 0x2 - adds r3, 0x1 - ands r3, r4 - adds r1, r3, 0 - cmp r1, 0 - bne _08091A76 - ldr r6, _08091A90 @ =0xfffff7c0 - adds r2, r6 -_08091A76: - cmp r1, 0x20 - bne _08091A80 - movs r1, 0xF8 - lsls r1, 3 - adds r2, r1 -_08091A80: - adds r0, 0x1 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x2B - bls _08091A64 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08091A90: .4byte 0xfffff7c0 - thumb_func_end sub_8091A24 - - thumb_func_start sub_8091A94 -sub_8091A94: @ 8091A94 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x34 - mov r8, r0 - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - ldr r1, _08091C1C @ =sPSSData - mov r10, r1 - ldr r1, [r1] - movs r2, 0xBE - lsls r2, 2 - adds r0, r1, r2 - str r0, [sp, 0x28] - mov r3, sp - adds r3, 0x28 - str r3, [sp, 0x30] - ldr r0, _08091C20 @ =0x00030200 - str r0, [r3, 0x4] - ldr r4, _08091C24 @ =0x000006fc - adds r1, r4 - str r1, [sp, 0x18] - add r0, sp, 0x1C - ldr r7, _08091C28 @ =0x0000dac9 - strh r7, [r0] - add r0, sp, 0x20 - movs r1, 0 - movs r2, 0x8 - bl memset - add r1, sp, 0x18 - add r0, sp, 0x8 - movs r2, 0x10 - bl memcpy - mov r0, r8 - bl GetBoxWallpaper - lsls r0, 24 - mov r5, r10 - ldr r4, [r5] - ldr r2, _08091C2C @ =gUnknown_83D29D0 - lsrs r0, 22 - adds r1, r0, r2 - ldrh r3, [r1] - movs r5, 0xE3 - lsls r5, 3 - adds r1, r4, r5 - strh r3, [r1] - adds r2, 0x2 - adds r0, r2 - ldrh r0, [r0] - ldr r1, _08091C30 @ =0x0000071a - adds r4, r1 - strh r0, [r4] - add r0, sp, 0x8 - bl LoadSpritePalettes - mov r2, r10 - ldr r0, [r2] - movs r6, 0xE7 - lsls r6, 3 - adds r0, r6 - movs r1, 0xFC - lsls r1, 2 - str r1, [r0] - adds r0, r7, 0 - bl IndexOfSpritePaletteTag - lsls r0, 24 - lsrs r0, 24 - mov r4, r10 - ldr r3, [r4] - lsls r1, r0, 4 - movs r5, 0x87 - lsls r5, 1 - mov r9, r5 - add r1, r9 - ldr r4, _08091C34 @ =0x0000071c - adds r2, r3, r4 - strh r1, [r2] - adds r3, r6 - movs r5, 0x80 - lsls r5, 9 - adds r1, r5, 0 - lsls r1, r0 - ldr r0, [r3] - orrs r0, r1 - str r0, [r3] - adds r0, r7, 0 - bl IndexOfSpritePaletteTag - lsls r0, 24 - lsrs r0, 24 - mov r1, r10 - ldr r4, [r1] - lsls r1, r0, 4 - add r1, r9 - ldr r3, _08091C38 @ =0x0000071e - adds r2, r4, r3 - strh r1, [r2] - adds r6, r4, r6 - lsls r5, r0 - ldr r0, [r6] - orrs r0, r5 - str r0, [r6] - ldr r5, _08091C3C @ =0x000021a8 - adds r4, r5 - mov r0, r8 - bl GetBoxNamePtr - adds r1, r0, 0 - adds r0, r4, 0 - movs r2, 0 - movs r3, 0x8 - bl StringCopyPadded - mov r4, r10 - ldr r0, [r4] - adds r5, r0, r5 - movs r2, 0xBE - lsls r2, 2 - adds r1, r0, r2 - movs r3, 0x9F - lsls r3, 3 - adds r0, r3 - str r0, [sp] - movs r0, 0x2 - str r0, [sp, 0x4] - adds r0, r5, 0 - movs r2, 0 - movs r3, 0 - bl DrawTextWindowAndBufferTiles - ldr r0, [sp, 0x30] - bl LoadSpriteSheet - mov r0, r8 - bl GetBoxNamePtr - bl sub_8091F60 - movs r4, 0 - lsls r0, 16 - asrs r6, r0, 16 -_08091BBC: - lsls r1, r4, 5 - adds r1, r6, r1 - lsls r1, 16 - asrs r1, 16 - ldr r0, _08091C40 @ =gUnknown_83D2B7C - movs r2, 0x1C - movs r3, 0x18 - bl CreateSprite - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - ldr r5, _08091C1C @ =sPSSData - ldr r2, [r5] - lsls r0, r4, 2 - movs r3, 0xE4 - lsls r3, 3 - adds r2, r3 - adds r2, r0 - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, _08091C44 @ =gSprites - adds r0, r1 - str r0, [r2] - lsls r1, r4, 24 - lsrs r1, 24 - bl StartSpriteAnim - adds r0, r4, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 - cmp r4, 0x1 - bls _08091BBC - ldr r0, [r5] - movs r4, 0xDF - lsls r4, 3 - adds r0, r4 - movs r1, 0 - strb r1, [r0] - add sp, 0x34 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08091C1C: .4byte sPSSData -_08091C20: .4byte 0x00030200 -_08091C24: .4byte 0x000006fc -_08091C28: .4byte 0x0000dac9 -_08091C2C: .4byte gUnknown_83D29D0 -_08091C30: .4byte 0x0000071a -_08091C34: .4byte 0x0000071c -_08091C38: .4byte 0x0000071e -_08091C3C: .4byte 0x000021a8 -_08091C40: .4byte gUnknown_83D2B7C -_08091C44: .4byte gSprites - thumb_func_end sub_8091A94 - - thumb_func_start sub_8091C48 -sub_8091C48: @ 8091C48 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x30 - lsls r0, 24 - lsrs r0, 24 - str r0, [sp, 0x2C] - lsls r1, 24 - lsrs r1, 24 - mov r10, r1 - ldr r4, _08091CC4 @ =sPSSData - ldr r2, [r4] - movs r1, 0xBE - lsls r1, 2 - adds r0, r2, r1 - str r0, [sp, 0x20] - add r3, sp, 0x20 - ldr r5, _08091CC8 @ =0x0000ffff - mov r12, r5 - movs r6, 0xC0 - lsls r6, 10 - mov r9, r6 - ldr r0, _08091CCC @ =0x00030200 - str r0, [r3, 0x4] - add r1, sp, 0x8 - ldr r0, _08091CD0 @ =gUnknown_83D2B7C - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - movs r1, 0 - movs r5, 0xDF - lsls r5, 3 - adds r2, r5 - ldrb r0, [r2] - mov r8, r4 - adds r6, r3, 0 - cmp r0, 0 - bne _08091C9C - movs r1, 0x1 -_08091C9C: - strb r1, [r2] - mov r7, r8 - ldr r0, [r7] - adds r0, r5 - ldrb r0, [r0] - cmp r0, 0 - bne _08091CD8 - ldr r0, [r6, 0x4] - mov r1, r12 - ands r0, r1 - mov r2, r9 - orrs r0, r2 - str r0, [r6, 0x4] - ldr r0, [r7] - ldr r3, _08091CD4 @ =0x0000071c - adds r0, r3 - ldrh r0, [r0] - mov r9, r0 - b _08091CFC - .align 2, 0 -_08091CC4: .4byte sPSSData -_08091CC8: .4byte 0x0000ffff -_08091CCC: .4byte 0x00030200 -_08091CD0: .4byte gUnknown_83D2B7C -_08091CD4: .4byte 0x0000071c -_08091CD8: - ldr r0, [r6, 0x4] - mov r5, r12 - ands r0, r5 - movs r1, 0x80 - lsls r1, 11 - orrs r0, r1 - str r0, [r6, 0x4] - mov r7, r8 - ldr r0, [r7] - ldr r1, _08091E18 @ =0x0000071c - adds r0, r1 - ldrh r0, [r0] - mov r9, r0 - add r1, sp, 0x8 - movs r0, 0x4 - strh r0, [r1] - ldr r0, _08091E1C @ =0x0000dac9 - strh r0, [r1, 0x2] -_08091CFC: - mov r2, r8 - ldr r4, [r2] - ldr r5, _08091E20 @ =0x000021a8 - adds r4, r5 - ldr r0, [sp, 0x2C] - bl GetBoxNamePtr - adds r1, r0, 0 - adds r0, r4, 0 - movs r2, 0 - movs r3, 0x8 - bl StringCopyPadded - mov r3, r8 - ldr r0, [r3] - adds r5, r0, r5 - movs r7, 0xBE - lsls r7, 2 - adds r1, r0, r7 - movs r2, 0x9F - lsls r2, 3 - adds r0, r2 - str r0, [sp] - movs r0, 0x2 - str r0, [sp, 0x4] - adds r0, r5, 0 - movs r2, 0 - movs r3, 0 - bl DrawTextWindowAndBufferTiles - adds r0, r6, 0 - bl LoadSpriteSheet - ldr r0, [sp, 0x2C] - bl GetBoxWallpaper - lsls r0, 24 - lsrs r0, 22 - ldr r1, _08091E24 @ =gUnknown_83D29D0 - adds r0, r1 - mov r1, r9 - movs r2, 0x4 - bl LoadPalette - ldr r0, [sp, 0x2C] - bl GetBoxNamePtr - bl sub_8091F60 - lsls r0, 16 - mov r3, r10 - lsls r2, r3, 24 - asrs r2, 24 - lsls r1, r2, 1 - adds r1, r2 - lsls r1, 6 - lsrs r5, r0, 16 - str r5, [sp, 0x28] - asrs r0, 16 - adds r0, r1 - lsls r0, 16 - lsrs r0, 16 - mov r10, r0 - movs r7, 0 - mov r9, r8 - negs r2, r2 - mov r8, r2 -_08091D82: - lsls r6, r7, 5 - mov r0, r10 - lsls r1, r0, 16 - asrs r1, 16 - adds r1, r6 - lsls r1, 16 - asrs r1, 16 - add r0, sp, 0x8 - movs r2, 0x1C - movs r3, 0x18 - bl CreateSprite - lsls r0, 24 - lsrs r0, 24 - mov r1, r9 - ldr r2, [r1] - lsls r5, r7, 2 - movs r3, 0xE5 - lsls r3, 3 - adds r2, r3 - adds r2, r5 - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - ldr r0, _08091E28 @ =gSprites - adds r1, r0 - str r1, [r2] - mov r0, r8 - lsls r4, r0, 1 - add r4, r8 - lsls r4, 1 - strh r4, [r1, 0x2E] - ldr r1, [r2] - ldr r3, [sp, 0x28] - lsls r0, r3, 16 - asrs r0, 16 - adds r0, r6 - strh r0, [r1, 0x30] - ldr r0, [r2] - movs r6, 0 - strh r6, [r0, 0x32] - ldr r0, [r2] - ldr r1, _08091E2C @ =sub_8091E84 - str r1, [r0, 0x1C] - lsls r1, r7, 24 - lsrs r1, 24 - bl StartSpriteAnim - mov r1, r9 - ldr r0, [r1] - movs r2, 0xE4 - lsls r2, 3 - adds r0, r2 - adds r0, r5 - ldr r1, [r0] - strh r4, [r1, 0x2E] - ldr r2, [r0] - movs r1, 0x1 - strh r1, [r2, 0x30] - ldr r1, [r0] - ldr r0, _08091E30 @ =sub_8091EB8 - str r0, [r1, 0x1C] - adds r0, r7, 0x1 - lsls r0, 16 - lsrs r7, r0, 16 - cmp r7, 0x1 - bls _08091D82 - add sp, 0x30 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08091E18: .4byte 0x0000071c -_08091E1C: .4byte 0x0000dac9 -_08091E20: .4byte 0x000021a8 -_08091E24: .4byte gUnknown_83D29D0 -_08091E28: .4byte gSprites -_08091E2C: .4byte sub_8091E84 -_08091E30: .4byte sub_8091EB8 - thumb_func_end sub_8091C48 - - thumb_func_start sub_8091E34 -sub_8091E34: @ 8091E34 - push {lr} - ldr r0, _08091E50 @ =sPSSData - ldr r0, [r0] - movs r1, 0xDF - lsls r1, 3 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _08091E54 - movs r0, 0x4 - bl FreeSpriteTilesByTag - b _08091E5A - .align 2, 0 -_08091E50: .4byte sPSSData -_08091E54: - movs r0, 0x3 - bl FreeSpriteTilesByTag -_08091E5A: - ldr r0, _08091E7C @ =sPSSData - ldr r0, [r0] - movs r3, 0xE4 - lsls r3, 3 - adds r2, r0, r3 - adds r3, 0x8 - adds r1, r0, r3 - ldr r1, [r1] - str r1, [r2] - ldr r2, _08091E80 @ =0x00000724 - adds r1, r0, r2 - adds r3, 0x4 - adds r0, r3 - ldr r0, [r0] - str r0, [r1] - pop {r0} - bx r0 - .align 2, 0 -_08091E7C: .4byte sPSSData -_08091E80: .4byte 0x00000724 - thumb_func_end sub_8091E34 - - thumb_func_start sub_8091E84 -sub_8091E84: @ 8091E84 - push {lr} - adds r2, r0, 0 - ldrh r1, [r2, 0x32] - movs r3, 0x32 - ldrsh r0, [r2, r3] - cmp r0, 0 - beq _08091E98 - subs r0, r1, 0x1 - strh r0, [r2, 0x32] - b _08091EB0 -_08091E98: - ldrh r0, [r2, 0x2E] - ldrh r1, [r2, 0x20] - adds r0, r1 - strh r0, [r2, 0x20] - lsls r0, 16 - asrs r0, 16 - movs r3, 0x30 - ldrsh r1, [r2, r3] - cmp r0, r1 - bne _08091EB0 - ldr r0, _08091EB4 @ =SpriteCallbackDummy - str r0, [r2, 0x1C] -_08091EB0: - pop {r0} - bx r0 - .align 2, 0 -_08091EB4: .4byte SpriteCallbackDummy - thumb_func_end sub_8091E84 - - thumb_func_start sub_8091EB8 -sub_8091EB8: @ 8091EB8 - push {lr} - adds r2, r0, 0 - ldrh r1, [r2, 0x30] - movs r3, 0x30 - ldrsh r0, [r2, r3] - cmp r0, 0 - beq _08091ECC - subs r0, r1, 0x1 - strh r0, [r2, 0x30] - b _08091EEA -_08091ECC: - ldrh r0, [r2, 0x2E] - ldrh r1, [r2, 0x20] - adds r0, r1 - strh r0, [r2, 0x20] - ldrh r1, [r2, 0x24] - adds r0, r1 - strh r0, [r2, 0x32] - subs r0, 0x40 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0xC0 - bls _08091EEA - adds r0, r2, 0 - bl DestroySprite -_08091EEA: - pop {r0} - bx r0 - thumb_func_end sub_8091EB8 - - thumb_func_start sub_8091EF0 -sub_8091EF0: @ 8091EF0 - push {lr} - bl StorageGetCurrentBox - lsls r0, 24 - lsrs r0, 24 - bl GetBoxWallpaper - lsls r0, 24 - lsrs r1, r0, 24 - ldr r0, _08091F2C @ =sPSSData - ldr r2, [r0] - movs r3, 0xDF - lsls r3, 3 - adds r0, r2, r3 - ldrb r0, [r0] - cmp r0, 0 - bne _08091F38 - lsls r0, r1, 2 - ldr r1, _08091F30 @ =gUnknown_83D29D0 - adds r0, r1 - adds r3, 0x24 - adds r1, r2, r3 - ldrh r1, [r1] - lsls r1, 1 - ldr r2, _08091F34 @ =gPlttBufferUnfaded - adds r1, r2 - movs r2, 0x2 - bl CpuSet - b _08091F50 - .align 2, 0 -_08091F2C: .4byte sPSSData -_08091F30: .4byte gUnknown_83D29D0 -_08091F34: .4byte gPlttBufferUnfaded -_08091F38: - lsls r0, r1, 2 - ldr r1, _08091F54 @ =gUnknown_83D29D0 - adds r0, r1 - ldr r3, _08091F58 @ =0x0000071e - adds r1, r2, r3 - ldrh r1, [r1] - lsls r1, 1 - ldr r2, _08091F5C @ =gPlttBufferUnfaded - adds r1, r2 - movs r2, 0x2 - bl CpuSet -_08091F50: - pop {r0} - bx r0 - .align 2, 0 -_08091F54: .4byte gUnknown_83D29D0 -_08091F58: .4byte 0x0000071e -_08091F5C: .4byte gPlttBufferUnfaded - thumb_func_end sub_8091EF0 - - thumb_func_start sub_8091F60 -sub_8091F60: @ 8091F60 - push {lr} - adds r1, r0, 0 - movs r0, 0x1 - movs r2, 0 - bl GetStringWidth - adds r1, r0, 0 - lsrs r0, r1, 31 - adds r1, r0 - asrs r1, 1 - movs r0, 0xB0 - subs r0, r1 - lsls r0, 16 - asrs r0, 16 - pop {r1} - bx r1 - thumb_func_end sub_8091F60 - - thumb_func_start sub_8091F80 -sub_8091F80: @ 8091F80 - push {r4,r5,lr} - ldr r0, _08091FFC @ =gUnknown_83D2B54 - bl LoadSpriteSheet - movs r5, 0 -_08091F8A: - lsls r1, r5, 4 - adds r1, r5 - lsls r1, 19 - movs r0, 0xB8 - lsls r0, 15 - adds r1, r0 - asrs r1, 16 - ldr r0, _08092000 @ =gUnknown_83D2BB4 - movs r2, 0x1C - movs r3, 0x16 - bl CreateSprite - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x40 - beq _08091FDC - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, _08092004 @ =gSprites - adds r4, r0, r1 - lsls r1, r5, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl StartSpriteAnim - movs r0, 0x1 - cmp r5, 0 - bne _08091FCA - movs r1, 0x1 - negs r1, r1 - adds r0, r1, 0 -_08091FCA: - strh r0, [r4, 0x34] - ldr r0, _08092008 @ =sPSSData - ldr r0, [r0] - lsls r1, r5, 2 - movs r2, 0xE6 - lsls r2, 3 - adds r0, r2 - adds r0, r1 - str r4, [r0] -_08091FDC: - adds r0, r5, 0x1 - lsls r0, 16 - lsrs r5, r0, 16 - cmp r5, 0x1 - bls _08091F8A - bl IsCursorOnBox - lsls r0, 24 - cmp r0, 0 - beq _08091FF6 - movs r0, 0x1 - bl sub_80920FC -_08091FF6: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08091FFC: .4byte gUnknown_83D2B54 -_08092000: .4byte gUnknown_83D2BB4 -_08092004: .4byte gSprites -_08092008: .4byte sPSSData - thumb_func_end sub_8091F80 - - thumb_func_start sub_809200C -sub_809200C: @ 809200C - push {r4-r7,lr} - lsls r0, 24 - lsrs r5, r0, 24 - movs r2, 0 - ldr r7, _08092060 @ =sPSSData - mov r12, r7 - movs r6, 0xE6 - lsls r6, 3 - movs r4, 0 - movs r3, 0x2 -_08092020: - mov r0, r12 - ldr r1, [r0] - lsls r0, r2, 2 - adds r1, r6 - adds r1, r0 - ldr r0, [r1] - strh r4, [r0, 0x24] - ldr r0, [r1] - strh r3, [r0, 0x2E] - adds r0, r2, 0x1 - lsls r0, 16 - lsrs r2, r0, 16 - cmp r2, 0x1 - bls _08092020 - lsls r0, r5, 24 - cmp r0, 0 - bge _08092068 - ldr r1, [r7] - movs r2, 0xE6 - lsls r2, 3 - adds r3, r1, r2 - ldr r2, [r3] - movs r0, 0x1D - strh r0, [r2, 0x30] - ldr r0, _08092064 @ =0x00000734 - adds r1, r0 - ldr r2, [r1] - movs r0, 0x5 - strh r0, [r2, 0x30] - ldr r0, [r3] - movs r2, 0x48 - b _08092084 - .align 2, 0 -_08092060: .4byte sPSSData -_08092064: .4byte 0x00000734 -_08092068: - ldr r1, [r7] - movs r2, 0xE6 - lsls r2, 3 - adds r3, r1, r2 - ldr r2, [r3] - movs r0, 0x5 - strh r0, [r2, 0x30] - ldr r0, _080920A8 @ =0x00000734 - adds r1, r0 - ldr r2, [r1] - movs r0, 0x1D - strh r0, [r2, 0x30] - ldr r0, [r3] - movs r2, 0xF8 -_08092084: - strh r2, [r0, 0x32] - ldr r0, [r1] - strh r2, [r0, 0x32] - ldr r1, [r7] - movs r2, 0xE6 - lsls r2, 3 - adds r0, r1, r2 - ldr r2, [r0] - movs r0, 0 - strh r0, [r2, 0x3C] - ldr r0, _080920A8 @ =0x00000734 - adds r1, r0 - ldr r1, [r1] - movs r0, 0x1 - strh r0, [r1, 0x3C] - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080920A8: .4byte 0x00000734 - thumb_func_end sub_809200C - - thumb_func_start sub_80920AC -sub_80920AC: @ 80920AC - push {r4-r6,lr} - movs r3, 0 - movs r5, 0 - movs r6, 0x5 - negs r6, r6 - ldr r4, _080920F8 @ =sPSSData -_080920B8: - ldr r1, [r4] - lsls r0, r3, 2 - movs r2, 0xE6 - lsls r2, 3 - adds r1, r2 - adds r1, r0 - ldr r2, [r1] - lsls r0, r3, 4 - adds r0, r3 - lsls r0, 3 - adds r0, 0x5C - strh r0, [r2, 0x20] - ldr r0, [r1] - strh r5, [r0, 0x24] - ldr r1, [r1] - adds r1, 0x3E - ldrb r2, [r1] - adds r0, r6, 0 - ands r0, r2 - strb r0, [r1] - adds r0, r3, 0x1 - lsls r0, 16 - lsrs r3, r0, 16 - cmp r3, 0x1 - bls _080920B8 - movs r0, 0x1 - bl sub_80920FC - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080920F8: .4byte sPSSData - thumb_func_end sub_80920AC - - thumb_func_start sub_80920FC -sub_80920FC: @ 80920FC - push {r4-r6,lr} - lsls r0, 24 - cmp r0, 0 - beq _08092138 - movs r2, 0 - ldr r6, _08092134 @ =sPSSData - movs r5, 0xE6 - lsls r5, 3 - movs r3, 0 - movs r4, 0x1 -_08092110: - ldr r1, [r6] - lsls r0, r2, 2 - adds r1, r5 - adds r1, r0 - ldr r0, [r1] - strh r4, [r0, 0x2E] - ldr r0, [r1] - strh r3, [r0, 0x30] - ldr r0, [r1] - strh r3, [r0, 0x32] - ldr r0, [r1] - strh r3, [r0, 0x36] - adds r0, r2, 0x1 - lsls r0, 16 - lsrs r2, r0, 16 - cmp r2, 0x1 - bls _08092110 - b _08092158 - .align 2, 0 -_08092134: .4byte sPSSData -_08092138: - movs r2, 0 - ldr r5, _08092160 @ =sPSSData - movs r4, 0xE6 - lsls r4, 3 - movs r3, 0 -_08092142: - ldr r0, [r5] - lsls r1, r2, 2 - adds r0, r4 - adds r0, r1 - ldr r0, [r0] - strh r3, [r0, 0x2E] - adds r0, r2, 0x1 - lsls r0, 16 - lsrs r2, r0, 16 - cmp r2, 0x1 - bls _08092142 -_08092158: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08092160: .4byte sPSSData - thumb_func_end sub_80920FC - - thumb_func_start sub_8092164 -sub_8092164: @ 8092164 - push {lr} - adds r2, r0, 0 - movs r1, 0x2E - ldrsh r0, [r2, r1] - cmp r0, 0x4 - bhi _08092230 - lsls r0, 2 - ldr r1, _0809217C @ =_08092180 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0809217C: .4byte _08092180 - .align 2, 0 -_08092180: - .4byte _08092194 - .4byte _0809219A - .4byte _080921C8 - .4byte _080921CE - .4byte _08092220 -_08092194: - movs r0, 0 - strh r0, [r2, 0x24] - b _08092230 -_0809219A: - ldrh r0, [r2, 0x30] - adds r0, 0x1 - movs r1, 0 - strh r0, [r2, 0x30] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x3 - ble _08092230 - strh r1, [r2, 0x30] - ldrh r0, [r2, 0x34] - ldrh r3, [r2, 0x24] - adds r0, r3 - strh r0, [r2, 0x24] - ldrh r0, [r2, 0x32] - adds r0, 0x1 - strh r0, [r2, 0x32] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x5 - ble _08092230 - strh r1, [r2, 0x32] - strh r1, [r2, 0x24] - b _08092230 -_080921C8: - movs r0, 0x3 - strh r0, [r2, 0x2E] - b _08092230 -_080921CE: - ldr r0, _08092218 @ =sPSSData - ldr r1, [r0] - ldr r0, _0809221C @ =0x000002ce - adds r1, r0 - ldrh r0, [r2, 0x20] - ldrh r1, [r1] - subs r0, r1 - strh r0, [r2, 0x20] - subs r0, 0x49 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0xAE - bls _080921F4 - adds r3, r2, 0 - adds r3, 0x3E - ldrb r0, [r3] - movs r1, 0x4 - orrs r0, r1 - strb r0, [r3] -_080921F4: - ldrh r0, [r2, 0x30] - subs r0, 0x1 - strh r0, [r2, 0x30] - lsls r0, 16 - cmp r0, 0 - bne _08092230 - ldrh r0, [r2, 0x32] - strh r0, [r2, 0x20] - adds r3, r2, 0 - adds r3, 0x3E - ldrb r1, [r3] - movs r0, 0x5 - negs r0, r0 - ands r0, r1 - strb r0, [r3] - movs r0, 0x4 - strh r0, [r2, 0x2E] - b _08092230 - .align 2, 0 -_08092218: .4byte sPSSData -_0809221C: .4byte 0x000002ce -_08092220: - ldr r0, _08092234 @ =sPSSData - ldr r0, [r0] - ldr r1, _08092238 @ =0x000002ce - adds r0, r1 - ldrh r1, [r2, 0x20] - ldrh r0, [r0] - subs r1, r0 - strh r1, [r2, 0x20] -_08092230: - pop {r0} - bx r0 - .align 2, 0 -_08092234: .4byte sPSSData -_08092238: .4byte 0x000002ce - thumb_func_end sub_8092164 - - thumb_func_start sub_809223C -sub_809223C: @ 809223C - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r5, r0, 0 - adds r6, r1, 0 - ldr r4, [sp, 0x18] - lsls r2, 24 - lsrs r7, r2, 24 - lsls r3, 24 - lsrs r3, 24 - mov r8, r3 - lsls r4, 24 - lsrs r4, 24 - ldr r0, _080922A8 @ =gUnknown_83D2BB4 - lsls r5, 16 - asrs r5, 16 - lsls r6, 16 - asrs r6, 16 - adds r1, r5, 0 - adds r2, r6, 0 - adds r3, r4, 0 - bl CreateSprite - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x40 - beq _080922B4 - movs r1, 0x1 - ands r1, r7 - lsls r4, r0, 4 - adds r4, r0 - lsls r4, 2 - ldr r5, _080922AC @ =gSprites - adds r6, r4, r5 - adds r0, r6, 0 - bl StartSpriteAnim - movs r0, 0x3 - mov r1, r8 - ands r1, r0 - lsls r1, 2 - ldrb r2, [r6, 0x5] - movs r0, 0xD - negs r0, r0 - ands r0, r2 - orrs r0, r1 - strb r0, [r6, 0x5] - adds r5, 0x1C - adds r4, r5 - ldr r0, _080922B0 @ =SpriteCallbackDummy - str r0, [r4] - adds r0, r6, 0 - b _080922B6 - .align 2, 0 -_080922A8: .4byte gUnknown_83D2BB4 -_080922AC: .4byte gSprites -_080922B0: .4byte SpriteCallbackDummy -_080922B4: - movs r0, 0 -_080922B6: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_809223C - @ file boundary? thumb_func_start sub_80922C0 |