diff options
Diffstat (limited to 'asm/util.s')
-rw-r--r-- | asm/util.s | 466 |
1 files changed, 0 insertions, 466 deletions
diff --git a/asm/util.s b/asm/util.s deleted file mode 100644 index 73342f136..000000000 --- a/asm/util.s +++ /dev/null @@ -1,466 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .syntax unified - - .text - - thumb_func_start CreateInvisibleSpriteWithCallback -CreateInvisibleSpriteWithCallback: @ 806F640 - push {r4-r6,lr} - adds r6, r0, 0 - ldr r0, =gUnknown_0832A3A8 - movs r1, 0xF8 - movs r2, 0xA8 - movs r3, 0xE - bl CreateSprite - lsls r0, 24 - lsrs r0, 24 - ldr r5, =gSprites - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - adds r3, r2, r5 - adds r3, 0x3E - ldrb r1, [r3] - movs r4, 0x4 - orrs r1, r4 - strb r1, [r3] - adds r5, 0x1C - adds r2, r5 - str r6, [r2] - pop {r4-r6} - pop {r1} - bx r1 - .pool - thumb_func_end CreateInvisibleSpriteWithCallback - - thumb_func_start StoreWordInTwoHalfwords -StoreWordInTwoHalfwords: @ 806F67C - strh r1, [r0] - lsrs r1, 16 - strh r1, [r0, 0x2] - bx lr - thumb_func_end StoreWordInTwoHalfwords - - thumb_func_start LoadWordFromTwoHalfwords -LoadWordFromTwoHalfwords: @ 806F684 - ldrh r2, [r0] - movs r3, 0x2 - ldrsh r0, [r0, r3] - lsls r0, 16 - orrs r2, r0 - str r2, [r1] - bx lr - thumb_func_end LoadWordFromTwoHalfwords - - thumb_func_start SetBgAffineStruct -SetBgAffineStruct: @ 806F694 - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r4, [sp, 0x18] - ldr r5, [sp, 0x1C] - ldr r6, [sp, 0x20] - ldr r7, [sp, 0x24] - mov r8, r7 - str r1, [r0] - str r2, [r0, 0x4] - strh r3, [r0, 0x8] - strh r4, [r0, 0xA] - strh r5, [r0, 0xC] - strh r6, [r0, 0xE] - mov r1, r8 - strh r1, [r0, 0x10] - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end SetBgAffineStruct - - thumb_func_start DoBgAffineSet -DoBgAffineSet: @ 806F6C0 - push {r4-r6,lr} - mov r6, r8 - push {r6} - sub sp, 0x24 - mov r8, r0 - ldr r0, [sp, 0x38] - ldr r4, [sp, 0x3C] - ldr r5, [sp, 0x40] - ldr r6, [sp, 0x44] - lsls r6, 16 - lsrs r6, 16 - lsls r3, 16 - asrs r3, 16 - lsls r0, 16 - asrs r0, 16 - str r0, [sp] - lsls r4, 16 - asrs r4, 16 - str r4, [sp, 0x4] - lsls r5, 16 - asrs r5, 16 - str r5, [sp, 0x8] - str r6, [sp, 0xC] - add r0, sp, 0x10 - bl SetBgAffineStruct - add r0, sp, 0x10 - mov r1, r8 - movs r2, 0x1 - bl BgAffineSet - add sp, 0x24 - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end DoBgAffineSet - - thumb_func_start CopySpriteTiles -CopySpriteTiles: @ 806F70C - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x38 - str r2, [sp, 0x20] - adds r4, r3, 0 - ldr r7, [sp, 0x58] - lsls r0, 24 - lsls r1, 24 - ldr r2, =gUnknown_0832A3C0 - lsrs r1, 23 - lsrs r0, 21 - adds r1, r0 - adds r0, r2, 0x1 - adds r0, r1, r0 - ldrb r0, [r0] - str r0, [sp, 0x24] - adds r1, r2 - ldrb r1, [r1] - str r1, [sp, 0x28] - movs r0, 0 - b _0806F88C - .pool -_0806F740: - movs r5, 0 - adds r0, 0x1 - str r0, [sp, 0x30] - b _0806F874 -_0806F748: - ldrh r0, [r4] - ldr r2, =0x000003ff - adds r1, r2, 0 - ands r1, r0 - lsls r1, 5 - mov r8, r1 - movs r2, 0xC0 - lsls r2, 4 - adds r1, r2, 0 - ands r1, r0 - mov r2, sp - strh r0, [r2, 0x34] - cmp r1, 0 - bne _0806F788 - ldr r0, [sp, 0x20] - add r0, r8 - adds r1, r7, 0 - ldr r2, =0x04000008 - bl CpuSet - adds r4, 0x2 - str r4, [sp, 0x2C] - adds r7, 0x20 - mov r10, r7 - adds r5, 0x1 - mov r9, r5 - b _0806F86A - .pool -_0806F788: - movs r0, 0x80 - lsls r0, 4 - cmp r1, r0 - bne _0806F7CC - movs r1, 0 - adds r4, 0x2 - str r4, [sp, 0x2C] - movs r2, 0x20 - adds r2, r7 - mov r10, r2 - adds r5, 0x1 - mov r9, r5 -_0806F7A0: - lsls r4, r1, 24 - asrs r4, 24 - movs r0, 0x7 - subs r0, r4 - lsls r0, 2 - add r0, r8 - ldr r1, [sp, 0x20] - adds r0, r1, r0 - lsls r1, r4, 2 - adds r1, r7, r1 - ldr r2, =0x04000001 - bl CpuSet - adds r4, 0x1 - lsls r4, 24 - lsrs r1, r4, 24 - asrs r4, 24 - cmp r4, 0x7 - ble _0806F7A0 - b _0806F86A - .pool -_0806F7CC: - movs r1, 0 - adds r4, 0x2 - str r4, [sp, 0x2C] - movs r2, 0x20 - adds r2, r7 - mov r10, r2 - adds r5, 0x1 - mov r9, r5 - movs r0, 0xF - mov r12, r0 -_0806F7E0: - movs r2, 0 - lsls r4, r1, 24 - lsls r0, r4, 2 - lsrs r0, 24 - adds r6, r0, 0x3 - mov r1, r8 - adds r5, r1, r0 -_0806F7EE: - lsls r1, r2, 24 - asrs r1, 24 - subs r0, r6, r1 - mov r2, sp - adds r3, r2, r0 - adds r0, r5, r1 - ldr r2, [sp, 0x20] - adds r0, r2, r0 - ldrb r2, [r0] - mov r0, r12 - ands r0, r2 - lsls r0, 4 - lsrs r2, 4 - orrs r0, r2 - strb r0, [r3] - adds r1, 0x1 - lsls r1, 24 - lsrs r2, r1, 24 - asrs r1, 24 - cmp r1, 0x3 - ble _0806F7EE - movs r1, 0x80 - lsls r1, 17 - adds r0, r4, r1 - lsrs r1, r0, 24 - asrs r0, 24 - cmp r0, 0x7 - ble _0806F7E0 - mov r2, sp - ldrh r0, [r2, 0x34] - movs r2, 0x80 - lsls r2, 4 - ands r0, r2 - cmp r0, 0 - beq _0806F860 - movs r1, 0 -_0806F836: - lsls r4, r1, 24 - asrs r4, 24 - movs r0, 0x7 - subs r0, r4 - lsls r0, 2 - add r0, sp - lsls r1, r4, 2 - adds r1, r7, r1 - ldr r2, =0x04000001 - bl CpuSet - adds r4, 0x1 - lsls r4, 24 - lsrs r1, r4, 24 - asrs r4, 24 - cmp r4, 0x7 - ble _0806F836 - b _0806F86A - .pool -_0806F860: - mov r0, sp - adds r1, r7, 0 - ldr r2, =0x04000008 - bl CpuSet -_0806F86A: - ldr r4, [sp, 0x2C] - mov r7, r10 - mov r1, r9 - lsls r0, r1, 24 - lsrs r5, r0, 24 -_0806F874: - ldr r2, [sp, 0x28] - cmp r5, r2 - bcs _0806F87C - b _0806F748 -_0806F87C: - movs r0, 0x20 - ldr r1, [sp, 0x28] - subs r0, r1 - lsls r0, 1 - adds r4, r0 - ldr r2, [sp, 0x30] - lsls r0, r2, 24 - lsrs r0, 24 -_0806F88C: - ldr r1, [sp, 0x24] - cmp r0, r1 - bcs _0806F894 - b _0806F740 -_0806F894: - add sp, 0x38 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end CopySpriteTiles - - thumb_func_start CountTrailingZeroBits -CountTrailingZeroBits: @ 806F8A8 - push {lr} - adds r2, r0, 0 - movs r1, 0 - movs r3, 0x1 -_0806F8B0: - adds r0, r2, 0 - ands r0, r3 - cmp r0, 0 - beq _0806F8BC - adds r0, r1, 0 - b _0806F8CA -_0806F8BC: - lsrs r2, 1 - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x1F - bls _0806F8B0 - movs r0, 0 -_0806F8CA: - pop {r1} - bx r1 - thumb_func_end CountTrailingZeroBits - - thumb_func_start CalcCRC16 -CalcCRC16: @ 806F8D0 - push {r4-r7,lr} - adds r7, r0, 0 - adds r4, r1, 0 - ldr r2, =0x00001121 - movs r3, 0 - cmp r3, r4 - bge _0806F91C - movs r6, 0x1 - ldr r0, =0x00008408 - adds r5, r0, 0 -_0806F8E4: - adds r0, r7, r3 - ldrb r0, [r0] - eors r2, r0 - movs r1, 0 - adds r3, 0x1 -_0806F8EE: - adds r0, r2, 0 - ands r0, r6 - cmp r0, 0 - beq _0806F908 - lsrs r0, r2, 1 - eors r0, r5 - lsls r0, 16 - lsrs r2, r0, 16 - b _0806F90A - .pool -_0806F908: - lsrs r2, 1 -_0806F90A: - adds r0, r1, 0x1 - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, 0x7 - bls _0806F8EE - lsls r0, r3, 16 - lsrs r3, r0, 16 - cmp r3, r4 - blt _0806F8E4 -_0806F91C: - mvns r0, r2 - lsls r0, 16 - lsrs r0, 16 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end CalcCRC16 - - thumb_func_start CalcCRC16WithTable -CalcCRC16WithTable: @ 806F928 - push {r4-r6,lr} - adds r5, r0, 0 - adds r4, r1, 0 - ldr r2, =0x00001121 - movs r3, 0 - cmp r3, r4 - bcs _0806F956 - ldr r6, =gUnknown_0832A3D8 -_0806F938: - lsrs r1, r2, 8 - adds r0, r5, r3 - ldrb r0, [r0] - eors r2, r0 - lsls r0, r2, 24 - lsrs r0, 23 - adds r0, r6 - ldrh r0, [r0] - adds r2, r0, 0 - eors r2, r1 - adds r0, r3, 0x1 - lsls r0, 16 - lsrs r3, r0, 16 - cmp r3, r4 - bcc _0806F938 -_0806F956: - mvns r0, r2 - lsls r0, 16 - lsrs r0, 16 - pop {r4-r6} - pop {r1} - bx r1 - .pool - thumb_func_end CalcCRC16WithTable - - thumb_func_start CalcByteArraySum -CalcByteArraySum: @ 806F96C - push {r4,lr} - adds r4, r0, 0 - movs r3, 0 - movs r2, 0 - cmp r3, r1 - bcs _0806F984 -_0806F978: - adds r0, r4, r2 - ldrb r0, [r0] - adds r3, r0 - adds r2, 0x1 - cmp r2, r1 - bcc _0806F978 -_0806F984: - adds r0, r3, 0 - pop {r4} - pop {r1} - bx r1 - thumb_func_end CalcByteArraySum - - .align 2, 0 @ Don't pad with nop. |