diff options
Diffstat (limited to 'asm')
-rw-r--r-- | asm/pokemon_storage_system.s | 2157 |
1 files changed, 0 insertions, 2157 deletions
diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index fe224637d..d768a042e 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -7,2163 +7,6 @@ @ file boundary? - thumb_func_start sub_8095B5C -sub_8095B5C: @ 8095B5C - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x20 - ldr r3, _08095C58 @ =sPSSData - ldr r0, [r3] - ldrb r0, [r0, 0x1] - cmp r0, 0x3 - bne _08095C3C - ldr r0, _08095C5C @ =gUnknown_3000FE8 - str r0, [sp, 0x18] - ldr r1, _08095C60 @ =0xffff0000 - add r2, sp, 0x18 - ldr r0, [r2, 0x4] - ands r0, r1 - movs r1, 0x80 - lsls r1, 2 - orrs r0, r1 - str r0, [r2, 0x4] - mov r1, sp - ldr r0, _08095C64 @ =gUnknown_83D3728 - ldm r0!, {r4-r6} - stm r1!, {r4-r6} - ldm r0!, {r4-r6} - stm r1!, {r4-r6} - movs r7, 0 - mov r9, r2 - mov r8, r3 - movs r0, 0 - mov r10, r0 -_08095B9C: - adds r6, r7, 0x7 - lsls r1, r6, 16 - mov r2, r9 - ldrh r0, [r2, 0x4] - orrs r0, r1 - str r0, [r2, 0x4] - mov r0, r9 - bl LoadCompressedSpriteSheet - mov r4, r9 - ldrh r0, [r4, 0x6] - bl GetSpriteTileStartByTag - mov r5, r8 - ldr r1, [r5] - lsls r5, r7, 4 - ldr r2, _08095C68 @ =0x000021f8 - adds r1, r2 - adds r1, r5 - lsls r0, 16 - lsrs r0, 11 - ldr r4, _08095C6C @ =0x06010000 - adds r0, r4 - str r0, [r1] - ldr r0, _08095C70 @ =0xffffdacb - adds r4, r7, r0 - lsls r0, r4, 16 - lsrs r0, 16 - bl AllocSpritePalette - mov r2, r8 - ldr r1, [r2] - adds r1, r5 - lsls r0, 24 - lsrs r0, 24 - ldr r2, _08095C74 @ =0x000021fc - adds r1, r2 - strh r0, [r1] - ldrh r0, [r1] - lsls r0, 4 - movs r2, 0x80 - lsls r2, 1 - adds r0, r2 - strh r0, [r1] - mov r0, sp - strh r6, [r0] - strh r4, [r0, 0x2] - movs r1, 0 - movs r2, 0 - movs r3, 0xB - bl CreateSprite - lsls r0, 24 - lsrs r0, 24 - mov r4, r8 - ldr r2, [r4] - ldr r6, _08095C78 @ =0x000021f4 - adds r2, r6 - adds r2, r5 - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - ldr r0, _08095C7C @ =gSprites - adds r1, r0 - str r1, [r2] - adds r1, 0x3E - ldrb r0, [r1] - movs r2, 0x4 - orrs r0, r2 - strb r0, [r1] - ldr r0, [r4] - adds r0, r5 - movs r1, 0x88 - lsls r1, 6 - adds r0, r1 - mov r2, r10 - strb r2, [r0] - adds r7, 0x1 - cmp r7, 0x2 - ble _08095B9C -_08095C3C: - ldr r0, _08095C58 @ =sPSSData - ldr r0, [r0] - ldr r4, _08095C80 @ =0x00002224 - adds r0, r4 - movs r1, 0 - strh r1, [r0] - add sp, 0x20 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08095C58: .4byte sPSSData -_08095C5C: .4byte gUnknown_3000FE8 -_08095C60: .4byte 0xffff0000 -_08095C64: .4byte gUnknown_83D3728 -_08095C68: .4byte 0x000021f8 -_08095C6C: .4byte 0x06010000 -_08095C70: .4byte 0xffffdacb -_08095C74: .4byte 0x000021fc -_08095C78: .4byte 0x000021f4 -_08095C7C: .4byte gSprites -_08095C80: .4byte 0x00002224 - thumb_func_end sub_8095B5C - - thumb_func_start sub_8095C84 -sub_8095C84: @ 8095C84 - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - lsls r1, 24 - lsrs r7, r1, 24 - ldr r0, _08095CB8 @ =sPSSData - ldr r0, [r0] - ldrb r0, [r0, 0x1] - cmp r0, 0x3 - bne _08095D36 - mov r0, r8 - adds r1, r7, 0 - bl sub_8096210 - cmp r0, 0 - bne _08095D36 - mov r0, r8 - cmp r0, 0 - beq _08095CBC - cmp r0, 0x1 - beq _08095CD2 - b _08095D36 - .align 2, 0 -_08095CB8: .4byte sPSSData -_08095CBC: - adds r0, r7, 0 - movs r1, 0x5 - bl GetCurrentBoxMonData - cmp r0, 0 - beq _08095D36 - adds r0, r7, 0 - movs r1, 0xC - bl GetCurrentBoxMonData - b _08095CF0 -_08095CD2: - movs r0, 0x64 - adds r1, r7, 0 - muls r1, r0 - ldr r0, _08095D40 @ =gPlayerParty - adds r4, r1, r0 - adds r0, r4, 0 - movs r1, 0x5 - bl GetMonData - cmp r0, 0 - beq _08095D36 - adds r0, r4, 0 - movs r1, 0xC - bl GetMonData -_08095CF0: - lsls r0, 16 - lsrs r4, r0, 16 - cmp r4, 0 - beq _08095D36 - adds r0, r4, 0 - bl GetItemIconPic - adds r6, r0, 0 - adds r0, r4, 0 - bl GetItemIconPalette - adds r5, r0, 0 - bl sub_80961D8 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r4, 0 - mov r1, r8 - adds r2, r7, 0 - bl sub_80962F0 - adds r0, r4, 0 - adds r1, r6, 0 - adds r2, r5, 0 - bl sub_8096408 - adds r0, r4, 0 - movs r1, 0x1 - bl sub_80964B8 - adds r0, r4, 0 - movs r1, 0x1 - bl sub_8096624 -_08095D36: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08095D40: .4byte gPlayerParty - thumb_func_end sub_8095C84 - - thumb_func_start sub_8095D44 -sub_8095D44: @ 8095D44 - push {r4-r6,lr} - lsls r0, 24 - lsrs r6, r0, 24 - lsls r1, 24 - lsrs r5, r1, 24 - ldr r0, _08095D80 @ =sPSSData - ldr r0, [r0] - ldrb r0, [r0, 0x1] - cmp r0, 0x3 - bne _08095D7A - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_8096258 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r4, 0 - movs r1, 0x2 - bl sub_80964B8 - adds r0, r4, 0 - movs r1, 0 - adds r2, r6, 0 - adds r3, r5, 0 - bl sub_80964E8 -_08095D7A: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08095D80: .4byte sPSSData - thumb_func_end sub_8095D44 - - thumb_func_start Item_FromMonToMoving -Item_FromMonToMoving: @ 8095D84 - push {r4-r7,lr} - sub sp, 0x4 - lsls r0, 24 - lsrs r6, r0, 24 - lsls r1, 24 - lsrs r5, r1, 24 - adds r7, r5, 0 - ldr r0, _08095DE8 @ =sPSSData - ldr r0, [r0] - ldrb r0, [r0, 0x1] - cmp r0, 0x3 - bne _08095E14 - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_8096258 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r1, 0 - mov r0, sp - strh r1, [r0] - adds r0, r4, 0 - movs r1, 0x3 - bl sub_80964B8 - adds r0, r4, 0 - movs r1, 0x1 - adds r2, r6, 0 - adds r3, r5, 0 - bl sub_80964E8 - adds r0, r4, 0 - movs r1, 0x2 - movs r2, 0 - bl sub_80962F0 - cmp r6, 0 - bne _08095DEC - adds r0, r5, 0 - movs r1, 0xC - mov r2, sp - bl SetCurrentBoxMonData - adds r0, r5, 0 - movs r1, 0x1 - bl SetBoxMonIconObjMode - b _08095E04 - .align 2, 0 -_08095DE8: .4byte sPSSData -_08095DEC: - movs r0, 0x64 - muls r0, r7 - ldr r1, _08095E1C @ =gPlayerParty - adds r0, r1 - movs r1, 0xC - mov r2, sp - bl SetMonData - adds r0, r7, 0 - movs r1, 0x1 - bl SetPartyMonIconObjMode -_08095E04: - ldr r0, _08095E20 @ =sPSSData - ldr r0, [r0] - ldr r2, _08095E24 @ =0x00000ce2 - adds r1, r0, r2 - ldrh r1, [r1] - ldr r2, _08095E28 @ =0x00002224 - adds r0, r2 - strh r1, [r0] -_08095E14: - add sp, 0x4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08095E1C: .4byte gPlayerParty -_08095E20: .4byte sPSSData -_08095E24: .4byte 0x00000ce2 -_08095E28: .4byte 0x00002224 - thumb_func_end Item_FromMonToMoving - - thumb_func_start sub_8095E2C -sub_8095E2C: @ 8095E2C - push {r4-r6,lr} - mov r6, r8 - push {r6} - adds r5, r0, 0 - lsls r5, 16 - lsrs r5, 16 - adds r0, r5, 0 - bl GetItemIconPic - mov r8, r0 - adds r0, r5, 0 - bl GetItemIconPalette - adds r6, r0, 0 - bl sub_80961D8 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r4, 0 - mov r1, r8 - adds r2, r6, 0 - bl sub_8096408 - adds r0, r4, 0 - movs r1, 0x6 - bl sub_80964B8 - adds r0, r4, 0 - movs r1, 0x1 - movs r2, 0 - movs r3, 0 - bl sub_80964E8 - adds r0, r4, 0 - movs r1, 0x2 - movs r2, 0 - bl sub_80962F0 - adds r0, r4, 0 - movs r1, 0x1 - bl sub_8096624 - ldr r0, _08095E98 @ =sPSSData - ldr r0, [r0] - ldr r1, _08095E9C @ =0x00002224 - adds r0, r1 - strh r5, [r0] - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08095E98: .4byte sPSSData -_08095E9C: .4byte 0x00002224 - thumb_func_end sub_8095E2C - - thumb_func_start Item_SwitchMonsWithMoving -Item_SwitchMonsWithMoving: @ 8095EA0 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - lsls r1, 24 - lsrs r7, r1, 24 - ldr r0, _08095F08 @ =sPSSData - mov r8, r0 - ldr r0, [r0] - ldrb r0, [r0, 0x1] - cmp r0, 0x3 - bne _08095F5E - mov r0, r9 - adds r1, r7, 0 - bl sub_8096258 - lsls r0, 24 - lsrs r4, r0, 24 - adds r0, r4, 0 - movs r1, 0x3 - bl sub_80964B8 - adds r0, r4, 0 - movs r1, 0x3 - movs r2, 0x2 - movs r3, 0 - bl sub_80964E8 - mov r1, r9 - cmp r1, 0 - bne _08095F10 - adds r0, r7, 0 - movs r1, 0xC - bl GetCurrentBoxMonData - lsls r0, 16 - lsrs r6, r0, 16 - mov r0, r8 - ldr r2, [r0] - ldr r4, _08095F0C @ =0x00002224 - adds r2, r4 - adds r0, r7, 0 - movs r1, 0xC - bl SetCurrentBoxMonData - mov r1, r8 - ldr r0, [r1] - adds r0, r4 - b _08095F3C - .align 2, 0 -_08095F08: .4byte sPSSData -_08095F0C: .4byte 0x00002224 -_08095F10: - movs r0, 0x64 - adds r4, r7, 0 - muls r4, r0 - ldr r0, _08095F6C @ =gPlayerParty - adds r4, r0 - adds r0, r4, 0 - movs r1, 0xC - bl GetMonData - lsls r0, 16 - lsrs r6, r0, 16 - mov r0, r8 - ldr r2, [r0] - ldr r5, _08095F70 @ =0x00002224 - adds r2, r5 - adds r0, r4, 0 - movs r1, 0xC - bl SetMonData - mov r1, r8 - ldr r0, [r1] - adds r0, r5 -_08095F3C: - strh r6, [r0] - movs r0, 0x2 - movs r1, 0 - bl sub_8096258 - lsls r0, 24 - lsrs r4, r0, 24 - adds r0, r4, 0 - movs r1, 0x4 - bl sub_80964B8 - adds r0, r4, 0 - movs r1, 0x4 - mov r2, r9 - adds r3, r7, 0 - bl sub_80964E8 -_08095F5E: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08095F6C: .4byte gPlayerParty -_08095F70: .4byte 0x00002224 - thumb_func_end Item_SwitchMonsWithMoving - - thumb_func_start Item_GiveMovingToMon -Item_GiveMovingToMon: @ 8095F74 - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 24 - lsrs r7, r0, 24 - lsls r1, 24 - lsrs r5, r1, 24 - mov r8, r5 - ldr r6, _08095FCC @ =sPSSData - ldr r0, [r6] - ldrb r0, [r0, 0x1] - cmp r0, 0x3 - bne _08095FF4 - movs r0, 0x2 - movs r1, 0 - bl sub_8096258 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r4, 0 - movs r1, 0x4 - bl sub_80964B8 - adds r0, r4, 0 - movs r1, 0x2 - adds r2, r7, 0 - adds r3, r5, 0 - bl sub_80964E8 - cmp r7, 0 - bne _08095FD4 - ldr r2, [r6] - ldr r0, _08095FD0 @ =0x00002224 - adds r2, r0 - adds r0, r5, 0 - movs r1, 0xC - bl SetCurrentBoxMonData - adds r0, r5, 0 - movs r1, 0 - bl SetBoxMonIconObjMode - b _08095FF4 - .align 2, 0 -_08095FCC: .4byte sPSSData -_08095FD0: .4byte 0x00002224 -_08095FD4: - movs r0, 0x64 - mov r1, r8 - muls r1, r0 - adds r0, r1, 0 - ldr r1, _08096000 @ =gPlayerParty - adds r0, r1 - ldr r2, [r6] - ldr r1, _08096004 @ =0x00002224 - adds r2, r1 - movs r1, 0xC - bl SetMonData - mov r0, r8 - movs r1, 0 - bl SetPartyMonIconObjMode -_08095FF4: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08096000: .4byte gPlayerParty -_08096004: .4byte 0x00002224 - thumb_func_end Item_GiveMovingToMon - - thumb_func_start Item_TakeMons -Item_TakeMons: @ 8096008 - push {r4-r7,lr} - sub sp, 0x4 - lsls r0, 24 - lsrs r6, r0, 24 - lsls r1, 24 - lsrs r5, r1, 24 - adds r7, r5, 0 - ldr r0, _08096060 @ =sPSSData - ldr r0, [r0] - ldrb r0, [r0, 0x1] - cmp r0, 0x3 - bne _0809607C - movs r1, 0 - mov r0, sp - strh r1, [r0] - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_8096258 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r4, 0 - movs r1, 0x2 - bl sub_80964B8 - adds r0, r4, 0 - movs r1, 0 - adds r2, r6, 0 - adds r3, r5, 0 - bl sub_80964E8 - cmp r6, 0 - bne _08096064 - adds r0, r5, 0 - movs r1, 0xC - mov r2, sp - bl SetCurrentBoxMonData - adds r0, r5, 0 - movs r1, 0x1 - bl SetBoxMonIconObjMode - b _0809607C - .align 2, 0 -_08096060: .4byte sPSSData -_08096064: - movs r0, 0x64 - muls r0, r7 - ldr r1, _08096084 @ =gPlayerParty - adds r0, r1 - movs r1, 0xC - mov r2, sp - bl SetMonData - adds r0, r7, 0 - movs r1, 0x1 - bl SetPartyMonIconObjMode -_0809607C: - add sp, 0x4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08096084: .4byte gPlayerParty - thumb_func_end Item_TakeMons - - thumb_func_start sub_8096088 -sub_8096088: @ 8096088 - push {r4,lr} - ldr r0, _080960BC @ =sPSSData - ldr r0, [r0] - ldrb r0, [r0, 0x1] - cmp r0, 0x3 - bne _080960B6 - movs r0, 0x2 - movs r1, 0 - bl sub_8096258 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r4, 0 - movs r1, 0x5 - bl sub_80964B8 - adds r0, r4, 0 - movs r1, 0 - movs r2, 0x2 - movs r3, 0 - bl sub_80964E8 -_080960B6: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080960BC: .4byte sPSSData - thumb_func_end sub_8096088 - - thumb_func_start sub_80960C0 -sub_80960C0: @ 80960C0 - push {r4,lr} - ldr r0, _08096108 @ =sPSSData - ldr r0, [r0] - ldrb r0, [r0, 0x1] - cmp r0, 0x3 - bne _08096100 - movs r4, 0 -_080960CE: - ldr r0, _08096108 @ =sPSSData - ldr r1, [r0] - lsls r0, r4, 4 - adds r1, r0 - movs r2, 0x88 - lsls r2, 6 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0 - beq _080960FA - subs r2, 0x2 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0x1 - bne _080960FA - lsls r0, r4, 24 - lsrs r0, 24 - movs r1, 0x7 - movs r2, 0x2 - movs r3, 0 - bl sub_80964E8 -_080960FA: - adds r4, 0x1 - cmp r4, 0x2 - ble _080960CE -_08096100: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08096108: .4byte sPSSData - thumb_func_end sub_80960C0 - - thumb_func_start sub_809610C -sub_809610C: @ 809610C - push {r4,r5,lr} - movs r5, 0 - ldr r0, _08096148 @ =sPSSData - ldr r0, [r0] - ldr r1, _0809614C @ =0x000021f4 - adds r4, r0, r1 - adds r3, r0, 0 -_0809611A: - movs r1, 0x88 - lsls r1, 6 - adds r0, r3, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _08096158 - ldr r2, [r4] - adds r0, r2, 0 - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x28 - ands r0, r1 - cmp r0, 0x8 - beq _08096144 - ldr r1, [r2, 0x1C] - ldr r0, _08096150 @ =SpriteCallbackDummy - cmp r1, r0 - beq _08096158 - ldr r0, _08096154 @ =sub_80969BC - cmp r1, r0 - beq _08096158 -_08096144: - movs r0, 0x1 - b _08096164 - .align 2, 0 -_08096148: .4byte sPSSData -_0809614C: .4byte 0x000021f4 -_08096150: .4byte SpriteCallbackDummy -_08096154: .4byte sub_80969BC -_08096158: - adds r4, 0x10 - adds r3, 0x10 - adds r5, 0x1 - cmp r5, 0x2 - ble _0809611A - movs r0, 0 -_08096164: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_809610C - - thumb_func_start IsActiveItemMoving -IsActiveItemMoving: @ 809616C - push {lr} - ldr r0, _08096190 @ =sPSSData - ldr r1, [r0] - ldrb r0, [r1, 0x1] - cmp r0, 0x3 - bne _080961A0 - movs r2, 0 - ldr r0, _08096194 @ =0x000021fe - adds r1, r0 -_0809617E: - ldrb r0, [r1, 0x2] - cmp r0, 0 - beq _08096198 - ldrb r0, [r1] - cmp r0, 0x2 - bne _08096198 - movs r0, 0x1 - b _080961A2 - .align 2, 0 -_08096190: .4byte sPSSData -_08096194: .4byte 0x000021fe -_08096198: - adds r1, 0x10 - adds r2, 0x1 - cmp r2, 0x2 - ble _0809617E -_080961A0: - movs r0, 0 -_080961A2: - pop {r1} - bx r1 - thumb_func_end IsActiveItemMoving - - thumb_func_start GetMovingItemName -GetMovingItemName: @ 80961A8 - push {lr} - ldr r0, _080961BC @ =sPSSData - ldr r0, [r0] - ldr r1, _080961C0 @ =0x00002224 - adds r0, r1 - ldrh r0, [r0] - bl ItemId_GetName - pop {r1} - bx r1 - .align 2, 0 -_080961BC: .4byte sPSSData -_080961C0: .4byte 0x00002224 - thumb_func_end GetMovingItemName - - thumb_func_start GetMovingItem -GetMovingItem: @ 80961C4 - ldr r0, _080961D0 @ =sPSSData - ldr r0, [r0] - ldr r1, _080961D4 @ =0x00002224 - adds r0, r1 - ldrh r0, [r0] - bx lr - .align 2, 0 -_080961D0: .4byte sPSSData -_080961D4: .4byte 0x00002224 - thumb_func_end GetMovingItem - - thumb_func_start sub_80961D8 -sub_80961D8: @ 80961D8 - push {r4,r5,lr} - movs r2, 0 - ldr r5, _080961F8 @ =sPSSData - movs r3, 0x88 - lsls r3, 6 - movs r4, 0x1 -_080961E4: - ldr r0, [r5] - lsls r1, r2, 4 - adds r0, r1 - adds r1, r0, r3 - ldrb r0, [r1] - cmp r0, 0 - bne _080961FC - strb r4, [r1] - adds r0, r2, 0 - b _08096208 - .align 2, 0 -_080961F8: .4byte sPSSData -_080961FC: - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0x2 - bls _080961E4 - movs r0, 0x3 -_08096208: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80961D8 - - thumb_func_start sub_8096210 -sub_8096210: @ 8096210 - push {r4,r5,lr} - lsls r0, 24 - lsrs r4, r0, 24 - lsls r1, 24 - lsrs r1, 24 - movs r3, 0 - ldr r0, _08096244 @ =sPSSData - ldr r2, [r0] -_08096220: - movs r5, 0x88 - lsls r5, 6 - adds r0, r2, r5 - ldrb r0, [r0] - cmp r0, 0 - beq _08096248 - subs r5, 0x2 - adds r0, r2, r5 - ldrb r0, [r0] - cmp r0, r4 - bne _08096248 - adds r5, 0x1 - adds r0, r2, r5 - ldrb r0, [r0] - cmp r0, r1 - bne _08096248 - movs r0, 0x1 - b _08096252 - .align 2, 0 -_08096244: .4byte sPSSData -_08096248: - adds r2, 0x10 - adds r3, 0x1 - cmp r3, 0x2 - ble _08096220 - movs r0, 0 -_08096252: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8096210 - - thumb_func_start sub_8096258 -sub_8096258: @ 8096258 - push {r4-r6,lr} - lsls r0, 24 - lsrs r5, r0, 24 - lsls r1, 24 - lsrs r4, r1, 24 - movs r3, 0 - ldr r0, _08096290 @ =sPSSData - ldr r1, [r0] -_08096268: - lsls r0, r3, 4 - adds r2, r1, r0 - movs r6, 0x88 - lsls r6, 6 - adds r0, r2, r6 - ldrb r0, [r0] - cmp r0, 0 - beq _08096294 - subs r6, 0x2 - adds r0, r2, r6 - ldrb r0, [r0] - cmp r0, r5 - bne _08096294 - adds r6, 0x1 - adds r0, r2, r6 - ldrb r0, [r0] - cmp r0, r4 - bne _08096294 - adds r0, r3, 0 - b _080962A0 - .align 2, 0 -_08096290: .4byte sPSSData -_08096294: - adds r0, r3, 0x1 - lsls r0, 24 - lsrs r3, r0, 24 - cmp r3, 0x2 - bls _08096268 - movs r0, 0x3 -_080962A0: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_8096258 - - thumb_func_start sub_80962A8 -sub_80962A8: @ 80962A8 - push {r4-r6,lr} - adds r5, r0, 0 - movs r2, 0 - ldr r0, _080962D4 @ =sPSSData - ldr r3, [r0] - ldr r0, _080962D8 @ =0x000021f4 - adds r4, r3, r0 - movs r6, 0x88 - lsls r6, 6 -_080962BA: - lsls r1, r2, 4 - adds r0, r3, r1 - adds r0, r6 - ldrb r0, [r0] - cmp r0, 0 - beq _080962DC - adds r0, r4, r1 - ldr r0, [r0] - cmp r0, r5 - bne _080962DC - adds r0, r2, 0 - b _080962E8 - .align 2, 0 -_080962D4: .4byte sPSSData -_080962D8: .4byte 0x000021f4 -_080962DC: - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0x2 - bls _080962BA - movs r0, 0x3 -_080962E8: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_80962A8 - - thumb_func_start sub_80962F0 -sub_80962F0: @ 80962F0 - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 24 - lsrs r5, r0, 24 - lsls r1, 24 - lsrs r1, 24 - mov r8, r1 - lsls r2, 24 - lsrs r7, r2, 24 - cmp r5, 0x2 - bhi _080963EE - cmp r1, 0 - beq _0809631C - cmp r1, 0x1 - beq _08096378 - ldr r4, _08096318 @ =sPSSData - lsls r3, r5, 4 - b _080963D8 - .align 2, 0 -_08096318: .4byte sPSSData -_0809631C: - adds r0, r7, 0 - movs r1, 0x6 - bl __umodsi3 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r7, 0 - movs r1, 0x6 - bl __udivsi3 - lsls r0, 24 - lsrs r0, 24 - ldr r6, _08096370 @ =sPSSData - ldr r2, [r6] - lsls r5, 4 - ldr r1, _08096374 @ =0x000021f4 - adds r2, r1 - adds r2, r5 - ldr r3, [r2] - lsls r1, r4, 1 - adds r1, r4 - lsls r1, 3 - adds r1, 0x70 - strh r1, [r3, 0x20] - ldr r3, [r2] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, 0x38 - strh r1, [r3, 0x22] - ldr r2, [r2] - ldrb r1, [r2, 0x5] - movs r0, 0xD - negs r0, r0 - ands r0, r1 - movs r1, 0x8 - orrs r0, r1 - strb r0, [r2, 0x5] - adds r4, r6, 0 - adds r3, r5, 0 - b _080963D8 - .align 2, 0 -_08096370: .4byte sPSSData -_08096374: .4byte 0x000021f4 -_08096378: - cmp r7, 0 - bne _080963A0 - ldr r4, _08096398 @ =sPSSData - ldr r0, [r4] - lsls r3, r5, 4 - ldr r1, _0809639C @ =0x000021f4 - adds r0, r1 - adds r0, r3 - ldr r2, [r0] - movs r1, 0x74 - strh r1, [r2, 0x20] - ldr r1, [r0] - movs r0, 0x4C - strh r0, [r1, 0x22] - b _080963C0 - .align 2, 0 -_08096398: .4byte sPSSData -_0809639C: .4byte 0x000021f4 -_080963A0: - ldr r4, _080963F8 @ =sPSSData - ldr r0, [r4] - lsls r3, r5, 4 - ldr r1, _080963FC @ =0x000021f4 - adds r0, r1 - adds r0, r3 - ldr r2, [r0] - movs r1, 0xA4 - strh r1, [r2, 0x20] - ldr r2, [r0] - subs r1, r7, 0x1 - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - adds r0, 0x1C - strh r0, [r2, 0x22] -_080963C0: - ldr r0, [r4] - ldr r1, _080963FC @ =0x000021f4 - adds r0, r1 - adds r0, r3 - ldr r2, [r0] - ldrb r1, [r2, 0x5] - movs r0, 0xD - negs r0, r0 - ands r0, r1 - movs r1, 0x4 - orrs r0, r1 - strb r0, [r2, 0x5] -_080963D8: - ldr r0, [r4] - adds r0, r3 - ldr r1, _08096400 @ =0x000021fe - adds r0, r1 - mov r1, r8 - strb r1, [r0] - ldr r0, [r4] - adds r0, r3 - ldr r1, _08096404 @ =0x000021ff - adds r0, r1 - strb r7, [r0] -_080963EE: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080963F8: .4byte sPSSData -_080963FC: .4byte 0x000021f4 -_08096400: .4byte 0x000021fe -_08096404: .4byte 0x000021ff - thumb_func_end sub_80962F0 - - thumb_func_start sub_8096408 -sub_8096408: @ 8096408 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x4 - mov r8, r1 - mov r9, r2 - lsls r0, 24 - lsrs r7, r0, 24 - cmp r7, 0x2 - bhi _08096490 - movs r0, 0 - str r0, [sp] - ldr r4, _080964A0 @ =sPSSData - ldr r1, [r4] - ldr r6, _080964A4 @ =0x000042bc - adds r1, r6 - ldr r2, _080964A8 @ =0x01000080 - mov r0, sp - bl CpuFastSet - ldr r1, [r4] - ldr r5, _080964AC @ =0x000022bc - adds r1, r5 - mov r0, r8 - bl LZ77UnCompWram - lsls r7, 4 - mov r8, r7 - adds r7, r4, 0 - movs r4, 0x2 -_08096446: - ldr r1, [r7] - adds r0, r1, r5 - adds r1, r6 - movs r2, 0x18 - bl CpuFastSet - adds r6, 0x80 - adds r5, 0x60 - subs r4, 0x1 - cmp r4, 0 - bge _08096446 - ldr r5, _080964A0 @ =sPSSData - ldr r1, [r5] - ldr r4, _080964A4 @ =0x000042bc - adds r0, r1, r4 - ldr r2, _080964B0 @ =0x000021f8 - adds r1, r2 - add r1, r8 - ldr r1, [r1] - movs r2, 0x80 - bl CpuFastSet - ldr r1, [r5] - adds r1, r4 - mov r0, r9 - bl LZ77UnCompWram - ldr r0, [r5] - adds r4, r0, r4 - add r0, r8 - ldr r1, _080964B4 @ =0x000021fc - adds r0, r1 - ldrh r1, [r0] - adds r0, r4, 0 - movs r2, 0x20 - bl LoadPalette -_08096490: - add sp, 0x4 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080964A0: .4byte sPSSData -_080964A4: .4byte 0x000042bc -_080964A8: .4byte 0x01000080 -_080964AC: .4byte 0x000022bc -_080964B0: .4byte 0x000021f8 -_080964B4: .4byte 0x000021fc - thumb_func_end sub_8096408 - - thumb_func_start sub_80964B8 -sub_80964B8: @ 80964B8 - push {lr} - lsls r0, 24 - lsrs r2, r0, 24 - lsls r1, 24 - lsrs r3, r1, 24 - cmp r2, 0x2 - bhi _080964DA - ldr r0, _080964E0 @ =sPSSData - ldr r0, [r0] - lsls r1, r2, 4 - ldr r2, _080964E4 @ =0x000021f4 - adds r0, r2 - adds r0, r1 - ldr r0, [r0] - adds r1, r3, 0 - bl StartSpriteAffineAnim -_080964DA: - pop {r0} - bx r0 - .align 2, 0 -_080964E0: .4byte sPSSData -_080964E4: .4byte 0x000021f4 - thumb_func_end sub_80964B8 - - thumb_func_start sub_80964E8 -sub_80964E8: @ 80964E8 - push {r4,r5,lr} - lsls r0, 24 - lsrs r4, r0, 24 - lsls r1, 24 - lsrs r0, r1, 24 - lsls r2, 24 - lsrs r5, r2, 24 - lsls r3, 24 - lsrs r3, 24 - cmp r4, 0x2 - bls _08096500 - b _08096612 -_08096500: - cmp r0, 0x7 - bls _08096506 - b _08096612 -_08096506: - lsls r0, 2 - ldr r1, _08096510 @ =_08096514 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08096510: .4byte _08096514 - .align 2, 0 -_08096514: - .4byte _08096534 - .4byte _08096558 - .4byte _0809657C - .4byte _080965A8 - .4byte _080965D4 - .4byte _08096612 - .4byte _08096612 - .4byte _08096600 -_08096534: - ldr r0, _0809654C @ =sPSSData - ldr r0, [r0] - lsls r1, r4, 4 - ldr r2, _08096550 @ =0x000021f4 - adds r0, r2 - adds r0, r1 - ldr r1, [r0] - strh r4, [r1, 0x2E] - ldr r1, [r0] - ldr r0, _08096554 @ =sub_809692C - b _08096610 - .align 2, 0 -_0809654C: .4byte sPSSData -_08096550: .4byte 0x000021f4 -_08096554: .4byte sub_809692C -_08096558: - ldr r0, _08096570 @ =sPSSData - ldr r0, [r0] - lsls r1, r4, 4 - ldr r2, _08096574 @ =0x000021f4 - adds r0, r2 - adds r0, r1 - ldr r2, [r0] - movs r1, 0 - strh r1, [r2, 0x2E] - ldr r1, [r0] - ldr r0, _08096578 @ =sub_8096958 - b _08096610 - .align 2, 0 -_08096570: .4byte sPSSData -_08096574: .4byte 0x000021f4 -_08096578: .4byte sub_8096958 -_0809657C: - ldr r0, _0809659C @ =sPSSData - ldr r0, [r0] - lsls r1, r4, 4 - ldr r2, _080965A0 @ =0x000021f4 - adds r0, r2 - adds r0, r1 - ldr r2, [r0] - movs r1, 0 - strh r1, [r2, 0x2E] - ldr r1, [r0] - strh r5, [r1, 0x3A] - ldr r1, [r0] - strh r3, [r1, 0x3C] - ldr r1, [r0] - ldr r0, _080965A4 @ =sub_80969F4 - b _08096610 - .align 2, 0 -_0809659C: .4byte sPSSData -_080965A0: .4byte 0x000021f4 -_080965A4: .4byte sub_80969F4 -_080965A8: - ldr r0, _080965C8 @ =sPSSData - ldr r0, [r0] - lsls r1, r4, 4 - ldr r2, _080965CC @ =0x000021f4 - adds r0, r2 - adds r0, r1 - ldr r2, [r0] - movs r1, 0 - strh r1, [r2, 0x2E] - ldr r2, [r0] - ldr r1, _080965D0 @ =sub_8096A74 - str r1, [r2, 0x1C] - strh r5, [r2, 0x3A] - ldr r0, [r0] - strh r3, [r0, 0x3C] - b _08096612 - .align 2, 0 -_080965C8: .4byte sPSSData -_080965CC: .4byte 0x000021f4 -_080965D0: .4byte sub_8096A74 -_080965D4: - ldr r0, _080965F4 @ =sPSSData - ldr r0, [r0] - lsls r1, r4, 4 - ldr r2, _080965F8 @ =0x000021f4 - adds r0, r2 - adds r0, r1 - ldr r2, [r0] - movs r1, 0 - strh r1, [r2, 0x2E] - ldr r1, [r0] - strh r5, [r1, 0x3A] - ldr r1, [r0] - strh r3, [r1, 0x3C] - ldr r1, [r0] - ldr r0, _080965FC @ =sub_8096B10 - b _08096610 - .align 2, 0 -_080965F4: .4byte sPSSData -_080965F8: .4byte 0x000021f4 -_080965FC: .4byte sub_8096B10 -_08096600: - ldr r0, _08096618 @ =sPSSData - ldr r0, [r0] - lsls r1, r4, 4 - ldr r2, _0809661C @ =0x000021f4 - adds r0, r2 - adds r0, r1 - ldr r1, [r0] - ldr r0, _08096620 @ =sub_8096BAC -_08096610: - str r0, [r1, 0x1C] -_08096612: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08096618: .4byte sPSSData -_0809661C: .4byte 0x000021f4 -_08096620: .4byte sub_8096BAC - thumb_func_end sub_80964E8 - - thumb_func_start sub_8096624 -sub_8096624: @ 8096624 - push {r4,lr} - lsls r0, 24 - lsrs r2, r0, 24 - lsls r1, 24 - lsrs r4, r1, 24 - cmp r2, 0x2 - bhi _08096666 - ldr r1, _0809666C @ =sPSSData - ldr r0, [r1] - lsls r2, 4 - adds r0, r2 - movs r3, 0x88 - lsls r3, 6 - adds r0, r3 - strb r4, [r0] - ldr r0, [r1] - ldr r1, _08096670 @ =0x000021f4 - adds r0, r1 - adds r0, r2 - ldr r0, [r0] - movs r3, 0 - cmp r4, 0 - bne _08096654 - movs r3, 0x1 -_08096654: - adds r2, r0, 0 - adds r2, 0x3E - lsls r3, 2 - ldrb r1, [r2] - movs r0, 0x5 - negs r0, r0 - ands r0, r1 - orrs r0, r3 - strb r0, [r2] -_08096666: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0809666C: .4byte sPSSData -_08096670: .4byte 0x000021f4 - thumb_func_end sub_8096624 - - thumb_func_start GetItemIconPic -GetItemIconPic: @ 8096674 - push {lr} - lsls r0, 16 - lsrs r0, 16 - movs r1, 0 - bl GetItemIconGfxPtr - pop {r1} - bx r1 - thumb_func_end GetItemIconPic - - thumb_func_start GetItemIconPalette -GetItemIconPalette: @ 8096684 - push {lr} - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x1 - bl GetItemIconGfxPtr - pop {r1} - bx r1 - thumb_func_end GetItemIconPalette - - thumb_func_start PrintItemDescription -PrintItemDescription: @ 8096694 - push {r4,lr} - sub sp, 0x14 - bl IsActiveItemMoving - lsls r0, 24 - cmp r0, 0 - beq _080966B4 - ldr r0, _080966AC @ =sPSSData - ldr r0, [r0] - ldr r1, _080966B0 @ =0x00002224 - b _080966BA - .align 2, 0 -_080966AC: .4byte sPSSData -_080966B0: .4byte 0x00002224 -_080966B4: - ldr r0, _080966EC @ =sPSSData - ldr r0, [r0] - ldr r1, _080966F0 @ =0x00000ce2 -_080966BA: - adds r0, r1 - ldrh r0, [r0] - bl ItemId_GetDescription - adds r4, r0, 0 - movs r0, 0x2 - movs r1, 0x11 - bl FillWindowPixelBuffer - movs r0, 0 - str r0, [sp] - str r0, [sp, 0x4] - str r0, [sp, 0x8] - str r0, [sp, 0xC] - str r0, [sp, 0x10] - movs r0, 0x2 - movs r1, 0x2 - adds r2, r4, 0 - movs r3, 0x2 - bl AddTextPrinterParameterized5 - add sp, 0x14 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080966EC: .4byte sPSSData -_080966F0: .4byte 0x00000ce2 - thumb_func_end PrintItemDescription - - thumb_func_start sub_80966F4 -sub_80966F4: @ 80966F4 - push {lr} - ldr r0, _0809671C @ =sPSSData - ldr r0, [r0] - ldr r1, _08096720 @ =0x00002226 - adds r0, r1 - movs r1, 0x19 - strh r1, [r0] - ldr r1, _08096724 @ =gUnknown_83D35DC - movs r3, 0xD2 - lsls r3, 1 - movs r0, 0 - movs r2, 0x80 - bl LoadBgTiles - movs r0, 0 - bl sub_8096898 - pop {r0} - bx r0 - .align 2, 0 -_0809671C: .4byte sPSSData -_08096720: .4byte 0x00002226 -_08096724: .4byte gUnknown_83D35DC - thumb_func_end sub_80966F4 - - thumb_func_start sub_8096728 -sub_8096728: @ 8096728 - push {r4,r5,lr} - sub sp, 0x10 - ldr r0, _08096740 @ =sPSSData - ldr r0, [r0] - ldr r2, _08096744 @ =0x00002226 - adds r1, r0, r2 - ldrh r0, [r1] - cmp r0, 0 - bne _08096748 - movs r0, 0 - b _080967AE - .align 2, 0 -_08096740: .4byte sPSSData -_08096744: .4byte 0x00002226 -_08096748: - subs r0, 0x1 - strh r0, [r1] - ldrh r1, [r1] - movs r0, 0x19 - subs r5, r0, r1 - movs r4, 0 - cmp r4, r5 - bge _08096798 -_08096758: - movs r0, 0 - movs r1, 0xA - bl GetBgAttribute - adds r1, r0, 0 - ldr r0, _080967B8 @ =sPSSData - ldr r0, [r0] - ldr r2, _080967BC @ =0x00002226 - adds r0, r2 - adds r1, 0x14 - ldrh r0, [r0] - adds r1, r0 - adds r1, r4 - lsls r1, 16 - lsrs r1, 16 - lsls r2, r4, 24 - lsrs r2, 24 - movs r0, 0x1 - str r0, [sp] - movs r0, 0x8 - str r0, [sp, 0x4] - movs r0, 0xF - str r0, [sp, 0x8] - movs r0, 0x19 - str r0, [sp, 0xC] - movs r0, 0 - movs r3, 0xC - bl WriteSequenceToBgTilemapBuffer - adds r4, 0x1 - cmp r4, r5 - blt _08096758 -_08096798: - adds r0, r5, 0 - bl sub_8096898 - ldr r0, _080967B8 @ =sPSSData - ldr r0, [r0] - ldr r1, _080967BC @ =0x00002226 - adds r0, r1 - ldrh r1, [r0] - negs r0, r1 - orrs r0, r1 - lsrs r0, 31 -_080967AE: - add sp, 0x10 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_080967B8: .4byte sPSSData -_080967BC: .4byte 0x00002226 - thumb_func_end sub_8096728 - - thumb_func_start sub_80967C0 -sub_80967C0: @ 80967C0 - push {r4,r5,lr} - sub sp, 0x10 - ldr r5, _080967D8 @ =sPSSData - ldr r0, [r5] - ldr r4, _080967DC @ =0x00002226 - adds r0, r4 - ldrh r0, [r0] - cmp r0, 0x19 - bne _080967E0 - movs r0, 0 - b _08096886 - .align 2, 0 -_080967D8: .4byte sPSSData -_080967DC: .4byte 0x00002226 -_080967E0: - cmp r0, 0 - bne _080967FC - movs r0, 0x1 - str r0, [sp] - movs r0, 0xA - str r0, [sp, 0x4] - movs r0, 0x11 - str r0, [sp, 0x8] - movs r0, 0 - movs r1, 0 - movs r2, 0x19 - movs r3, 0xB - bl FillBgTilemapBufferRect -_080967FC: - ldr r1, [r5] - adds r1, r4 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - ldrh r1, [r1] - movs r0, 0x19 - subs r5, r0, r1 - movs r4, 0 - cmp r4, r5 - bge _08096852 -_08096812: - movs r0, 0 - movs r1, 0xA - bl GetBgAttribute - adds r1, r0, 0 - ldr r0, _08096890 @ =sPSSData - ldr r0, [r0] - ldr r2, _08096894 @ =0x00002226 - adds r0, r2 - adds r1, 0x14 - ldrh r0, [r0] - adds r1, r0 - adds r1, r4 - lsls r1, 16 - lsrs r1, 16 - lsls r2, r4, 24 - lsrs r2, 24 - movs r0, 0x1 - str r0, [sp] - movs r0, 0x8 - str r0, [sp, 0x4] - movs r0, 0xF - str r0, [sp, 0x8] - movs r0, 0x19 - str r0, [sp, 0xC] - movs r0, 0 - movs r3, 0xC - bl WriteSequenceToBgTilemapBuffer - adds r4, 0x1 - cmp r4, r5 - blt _08096812 -_08096852: - adds r0, r5, 0 - bl sub_8096898 - lsls r2, r5, 24 - lsrs r2, 24 - movs r0, 0x1 - str r0, [sp] - movs r0, 0xA - str r0, [sp, 0x4] - movs r0, 0x11 - str r0, [sp, 0x8] - movs r0, 0 - movs r1, 0 - movs r3, 0xB - bl FillBgTilemapBufferRect - ldr r0, _08096890 @ =sPSSData - ldr r0, [r0] - ldr r1, _08096894 @ =0x00002226 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x19 - eors r1, r0 - negs r0, r1 - orrs r0, r1 - lsrs r0, 31 -_08096886: - add sp, 0x10 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_08096890: .4byte sPSSData -_08096894: .4byte 0x00002226 - thumb_func_end sub_80967C0 - - thumb_func_start sub_8096898 -sub_8096898: @ 8096898 - push {r4-r7,lr} - sub sp, 0xC - adds r7, r0, 0 - cmp r7, 0 - beq _080968D0 - movs r1, 0xD2 - lsls r1, 1 - lsls r4, r7, 24 - lsrs r4, 24 - str r4, [sp] - movs r6, 0x1 - str r6, [sp, 0x4] - movs r5, 0xF - str r5, [sp, 0x8] - movs r0, 0 - movs r2, 0 - movs r3, 0xB - bl FillBgTilemapBufferRect - ldr r1, _08096920 @ =0x000009a4 - str r4, [sp] - str r6, [sp, 0x4] - str r5, [sp, 0x8] - movs r0, 0 - movs r2, 0 - movs r3, 0x14 - bl FillBgTilemapBufferRect -_080968D0: - ldr r1, _08096924 @ =0x000001a5 - lsls r5, r7, 24 - lsrs r5, 24 - movs r4, 0x1 - str r4, [sp] - movs r0, 0x8 - str r0, [sp, 0x4] - movs r6, 0xF - str r6, [sp, 0x8] - movs r0, 0 - adds r2, r5, 0 - movs r3, 0xC - bl FillBgTilemapBufferRect - movs r1, 0xD3 - lsls r1, 1 - str r4, [sp] - str r4, [sp, 0x4] - str r6, [sp, 0x8] - movs r0, 0 - adds r2, r5, 0 - movs r3, 0xB - bl FillBgTilemapBufferRect - ldr r1, _08096928 @ =0x000001a7 - str r4, [sp] - str r4, [sp, 0x4] - str r6, [sp, 0x8] - movs r0, 0 - adds r2, r5, 0 - movs r3, 0x14 - bl FillBgTilemapBufferRect - movs r0, 0 - bl ScheduleBgCopyTilemapToVram - add sp, 0xC - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08096920: .4byte 0x000009a4 -_08096924: .4byte 0x000001a5 -_08096928: .4byte 0x000001a7 - thumb_func_end sub_8096898 - - thumb_func_start sub_809692C -sub_809692C: @ 809692C - push {r4,lr} - adds r4, r0, 0 - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _0809694C - ldrh r0, [r4, 0x2E] - lsls r0, 24 - lsrs r0, 24 - movs r1, 0 - bl sub_8096624 - ldr r0, _08096954 @ =SpriteCallbackDummy - str r0, [r4, 0x1C] -_0809694C: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08096954: .4byte SpriteCallbackDummy - thumb_func_end sub_809692C - - thumb_func_start sub_8096958 -sub_8096958: @ 8096958 - push {lr} - adds r3, r0, 0 - movs r0, 0x2E - ldrsh r1, [r3, r0] - cmp r1, 0 - beq _0809696A - cmp r1, 0x1 - beq _08096986 - b _080969B4 -_0809696A: - ldrh r0, [r3, 0x20] - lsls r0, 4 - strh r0, [r3, 0x30] - ldrh r0, [r3, 0x22] - lsls r0, 4 - strh r0, [r3, 0x32] - movs r0, 0xA - strh r0, [r3, 0x34] - movs r0, 0x15 - strh r0, [r3, 0x36] - strh r1, [r3, 0x38] - ldrh r0, [r3, 0x2E] - adds r0, 0x1 - strh r0, [r3, 0x2E] -_08096986: - ldrh r1, [r3, 0x30] - ldrh r0, [r3, 0x34] - subs r1, r0 - strh r1, [r3, 0x30] - ldrh r0, [r3, 0x32] - ldrh r2, [r3, 0x36] - subs r0, r2 - strh r0, [r3, 0x32] - lsls r1, 16 - asrs r1, 20 - strh r1, [r3, 0x20] - lsls r0, 16 - asrs r0, 20 - strh r0, [r3, 0x22] - ldrh r0, [r3, 0x38] - adds r0, 0x1 - strh r0, [r3, 0x38] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0xB - ble _080969B4 - ldr r0, _080969B8 @ =sub_80969BC - str r0, [r3, 0x1C] -_080969B4: - pop {r0} - bx r0 - .align 2, 0 -_080969B8: .4byte sub_80969BC - thumb_func_end sub_8096958 - - thumb_func_start sub_80969BC -sub_80969BC: @ 80969BC - ldr r1, _080969F0 @ =sPSSData - ldr r3, [r1] - movs r1, 0xCB - lsls r1, 4 - adds r3, r1 - ldr r1, [r3] - ldrh r1, [r1, 0x20] - adds r1, 0x4 - strh r1, [r0, 0x20] - ldr r2, [r3] - ldrh r1, [r2, 0x26] - ldrh r2, [r2, 0x22] - adds r1, r2 - adds r1, 0x8 - strh r1, [r0, 0x22] - ldr r1, [r3] - ldrb r1, [r1, 0x5] - movs r2, 0xC - ands r2, r1 - ldrb r3, [r0, 0x5] - movs r1, 0xD - negs r1, r1 - ands r1, r3 - orrs r1, r2 - strb r1, [r0, 0x5] - bx lr - .align 2, 0 -_080969F0: .4byte sPSSData - thumb_func_end sub_80969BC - - thumb_func_start sub_80969F4 -sub_80969F4: @ 80969F4 - push {r4,lr} - adds r4, r0, 0 - movs r0, 0x2E - ldrsh r1, [r4, r0] - cmp r1, 0 - beq _08096A06 - cmp r1, 0x1 - beq _08096A22 - b _08096A6A -_08096A06: - ldrh r0, [r4, 0x20] - lsls r0, 4 - strh r0, [r4, 0x30] - ldrh r0, [r4, 0x22] - lsls r0, 4 - strh r0, [r4, 0x32] - movs r0, 0xA - strh r0, [r4, 0x34] - movs r0, 0x15 - strh r0, [r4, 0x36] - strh r1, [r4, 0x38] - ldrh r0, [r4, 0x2E] - adds r0, 0x1 - strh r0, [r4, 0x2E] -_08096A22: - ldrh r0, [r4, 0x34] - ldrh r1, [r4, 0x30] - adds r0, r1 - strh r0, [r4, 0x30] - ldrh r1, [r4, 0x36] - ldrh r2, [r4, 0x32] - adds r1, r2 - strh r1, [r4, 0x32] - lsls r0, 16 - asrs r0, 20 - strh r0, [r4, 0x20] - lsls r1, 16 - asrs r1, 20 - strh r1, [r4, 0x22] - ldrh r0, [r4, 0x38] - adds r0, 0x1 - strh r0, [r4, 0x38] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0xB - ble _08096A6A - adds r0, r4, 0 - bl sub_80962A8 - lsls r0, 24 - lsrs r0, 24 - ldrh r1, [r4, 0x3A] - lsls r1, 24 - lsrs r1, 24 - ldrh r2, [r4, 0x3C] - lsls r2, 24 - lsrs r2, 24 - bl sub_80962F0 - ldr r0, _08096A70 @ =SpriteCallbackDummy - str r0, [r4, 0x1C] -_08096A6A: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08096A70: .4byte SpriteCallbackDummy - thumb_func_end sub_80969F4 - - thumb_func_start sub_8096A74 -sub_8096A74: @ 8096A74 - push {r4,lr} - adds r4, r0, 0 - movs r0, 0x2E - ldrsh r1, [r4, r0] - cmp r1, 0 - beq _08096A86 - cmp r1, 0x1 - beq _08096AA2 - b _08096B00 -_08096A86: - ldrh r0, [r4, 0x20] - lsls r0, 4 - strh r0, [r4, 0x30] - ldrh r0, [r4, 0x22] - lsls r0, 4 - strh r0, [r4, 0x32] - movs r0, 0xA - strh r0, [r4, 0x34] - movs r0, 0x15 - strh r0, [r4, 0x36] - strh r1, [r4, 0x38] - ldrh r0, [r4, 0x2E] - adds r0, 0x1 - strh r0, [r4, 0x2E] -_08096AA2: - ldrh r1, [r4, 0x30] - ldrh r0, [r4, 0x34] - subs r1, r0 - strh r1, [r4, 0x30] - ldrh r0, [r4, 0x32] - ldrh r2, [r4, 0x36] - subs r0, r2 - strh r0, [r4, 0x32] - lsls r1, 16 - asrs r1, 20 - strh r1, [r4, 0x20] - lsls r0, 16 - asrs r0, 20 - strh r0, [r4, 0x22] - ldr r1, _08096B08 @ =gSineTable - movs r2, 0x38 - ldrsh r0, [r4, r2] - lsls r0, 4 - adds r0, r1 - ldrh r0, [r0] - lsls r0, 16 - asrs r0, 20 - strh r0, [r4, 0x24] - ldrh r0, [r4, 0x38] - adds r0, 0x1 - strh r0, [r4, 0x38] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0xB - ble _08096B00 - adds r0, r4, 0 - bl sub_80962A8 - lsls r0, 24 - lsrs r0, 24 - ldrh r1, [r4, 0x3A] - lsls r1, 24 - lsrs r1, 24 - ldrh r2, [r4, 0x3C] - lsls r2, 24 - lsrs r2, 24 - bl sub_80962F0 - movs r0, 0 - strh r0, [r4, 0x24] - ldr r0, _08096B0C @ =sub_80969BC - str r0, [r4, 0x1C] -_08096B00: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08096B08: .4byte gSineTable -_08096B0C: .4byte sub_80969BC - thumb_func_end sub_8096A74 - - thumb_func_start sub_8096B10 -sub_8096B10: @ 8096B10 - push {r4,lr} - adds r4, r0, 0 - movs r0, 0x2E - ldrsh r1, [r4, r0] - cmp r1, 0 - beq _08096B22 - cmp r1, 0x1 - beq _08096B3E - b _08096B9E -_08096B22: - ldrh r0, [r4, 0x20] - lsls r0, 4 - strh r0, [r4, 0x30] - ldrh r0, [r4, 0x22] - lsls r0, 4 - strh r0, [r4, 0x32] - movs r0, 0xA - strh r0, [r4, 0x34] - movs r0, 0x15 - strh r0, [r4, 0x36] - strh r1, [r4, 0x38] - ldrh r0, [r4, 0x2E] - adds r0, 0x1 - strh r0, [r4, 0x2E] -_08096B3E: - ldrh r0, [r4, 0x34] - ldrh r1, [r4, 0x30] - adds r0, r1 - strh r0, [r4, 0x30] - ldrh r1, [r4, 0x36] - ldrh r2, [r4, 0x32] - adds r1, r2 - strh r1, [r4, 0x32] - lsls r0, 16 - asrs r0, 20 - strh r0, [r4, 0x20] - lsls r1, 16 - asrs r1, 20 - strh r1, [r4, 0x22] - ldr r1, _08096BA4 @ =gSineTable - movs r2, 0x38 - ldrsh r0, [r4, r2] - lsls r0, 4 - adds r0, r1 - ldrh r0, [r0] - lsls r0, 16 - asrs r0, 20 - negs r0, r0 - strh r0, [r4, 0x24] - ldrh r0, [r4, 0x38] - adds r0, 0x1 - strh r0, [r4, 0x38] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0xB - ble _08096B9E - adds r0, r4, 0 - bl sub_80962A8 - lsls r0, 24 - lsrs r0, 24 - ldrh r1, [r4, 0x3A] - lsls r1, 24 - lsrs r1, 24 - ldrh r2, [r4, 0x3C] - lsls r2, 24 - lsrs r2, 24 - bl sub_80962F0 - ldr r0, _08096BA8 @ =SpriteCallbackDummy - str r0, [r4, 0x1C] - movs r0, 0 - strh r0, [r4, 0x24] -_08096B9E: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08096BA4: .4byte gSineTable -_08096BA8: .4byte SpriteCallbackDummy - thumb_func_end sub_8096B10 - - thumb_func_start sub_8096BAC -sub_8096BAC: @ 8096BAC - push {lr} - adds r2, r0, 0 - ldrh r0, [r2, 0x22] - subs r0, 0x8 - strh r0, [r2, 0x22] - movs r1, 0x22 - ldrsh r0, [r2, r1] - movs r3, 0x26 - ldrsh r1, [r2, r3] - adds r0, r1 - movs r1, 0x10 - negs r1, r1 - cmp r0, r1 - bge _08096BDC - ldr r0, _08096BE0 @ =SpriteCallbackDummy - str r0, [r2, 0x1C] - adds r0, r2, 0 - bl sub_80962A8 - lsls r0, 24 - lsrs r0, 24 - movs r1, 0 - bl sub_8096624 -_08096BDC: - pop {r0} - bx r0 - .align 2, 0 -_08096BE0: .4byte SpriteCallbackDummy - thumb_func_end sub_8096BAC - - @ file boundary? - thumb_func_start sub_8096BE4 sub_8096BE4: @ 8096BE4 ldr r3, _08096BF4 @ =gUnknown_203982C |