summaryrefslogtreecommitdiff
path: root/arm9/lib/src/MI_memory.c
diff options
context:
space:
mode:
Diffstat (limited to 'arm9/lib/src/MI_memory.c')
-rw-r--r--arm9/lib/src/MI_memory.c339
1 files changed, 0 insertions, 339 deletions
diff --git a/arm9/lib/src/MI_memory.c b/arm9/lib/src/MI_memory.c
deleted file mode 100644
index a97ff167..00000000
--- a/arm9/lib/src/MI_memory.c
+++ /dev/null
@@ -1,339 +0,0 @@
-#include "MI_memory.h"
-#include "function_target.h"
-
-ARM_FUNC asm void MIi_CpuClear16(register u16 data, register void *destp, register u32 size)
-{
- mov r3, #0
-
-_020CE1CC:
- cmp r3, r2
- strlth r0, [r1, r3]
- addlt r3, r3, #2
- blt _020CE1CC
-
- bx lr
-}
-
-ARM_FUNC asm void MIi_CpuCopy16(register const void *srcp, register void *destp, register u32 size)
-{
- mov r12, #0
-
-_020CE1CC:
- cmp r12, r2
- ldrlth r3, [r0, r12]
- strlth r3, [r1, r12]
- addlt r12, r12, #2
- blt _020CE1CC
-
- bx lr
-}
-
-ARM_FUNC asm void MIi_CpuClear32(register u32 data, register void *destp, register u32 size)
-{
- add r12, r1, r2
-
-_020CE200:
- cmp r1, r12
- stmltia r1!, {r0}
- blt _020CE200
- bx lr
-}
-
-ARM_FUNC asm void MIi_CpuCopy32(register const void *srcp, register void *destp, register u32 size)
-{
- add r12, r1, r2
-
-_020CE214:
- cmp r1, r12
- ldmltia r0!, {r2}
- stmltia r1!, {r2}
- blt _020CE214
- bx lr
-}
-
-ARM_FUNC asm void MIi_CpuSend32(register const void *srcp, volatile void *destp, u32 size)
-{
- add r12, r0, r2
-
-_020CE22C:
- cmp r0, r12
- ldmltia r0!, {r2}
- strlt r2, [r1]
- blt _020CE22C
-
- bx lr
-}
-
-ARM_FUNC asm void MIi_CpuClearFast(register u32 data, register void *destp, register u32 size)
-{
- stmfd sp!, {r4-r9}
-
- add r9, r1, r2
- mov r12, r2, lsr #5
- add r12, r1, r12, lsl #5
-
- mov r2, r0
- mov r3, r2
- mov r4, r2
- mov r5, r2
- mov r6, r2
- mov r7, r2
- mov r8, r2
-
-_020CE26C:
- cmp r1, r12
- stmltia r1!, {r0, r2-r8}
- blt _020CE26C
-_020CE278:
- cmp r1, r9
- stmltia r1!, {r0}
- blt _020CE278
-
- ldmfd sp!, {r4-r9}
- bx lr
-}
-
-ARM_FUNC asm void MIi_CpuCopyFast(register const void *srcp, register void *destp, register u32 size)
-{
- stmfd sp!, {r4-r10}
-
- add r10, r1, r2
- mov r12, r2, lsr #5
- add r12, r1, r12, lsl #5
-
-_020CE29C:
- cmp r1, r12
- ldmltia r0!, {r2-r9}
- stmltia r1!, {r2-r9}
- blt _020CE29C
-_020CE2AC:
- cmp r1, r10
- ldmltia r0!, {r2}
- stmltia r1!, {r2}
- blt _020CE2AC
-
- ldmfd sp!, {r4-r10}
- bx lr
-}
-
-ARM_FUNC asm void MI_Copy32B(register const void *pSrc, register void *pDest)
-{
- ldmia r0!, {r2, r3, r12}
- stmia r1!, {r2, r3, r12}
- ldmia r0!, {r2, r3, r12}
- stmia r1!, {r2, r3, r12}
- ldmia r0!, {r2, r3}
- stmia r1!, {r2, r3}
-
- bx lr
-}
-
-ARM_FUNC asm void MI_Copy36B(register const void *pSrc, register void *pDest)
-{
- ldmia r0!, {r2, r3, r12}
- stmia r1!, {r2, r3, r12}
- ldmia r0!, {r2, r3, r12}
- stmia r1!, {r2, r3, r12}
- ldmia r0!, {r2, r3, r12}
- stmia r1!, {r2, r3, r12}
-
- bx lr
-}
-
-ARM_FUNC asm void MI_Copy48B(register const void *pSrc, register void *pDest)
-{
- ldmia r0!, {r2, r3, r12}
- stmia r1!, {r2, r3, r12}
- ldmia r0!, {r2, r3, r12}
- stmia r1!, {r2, r3, r12}
- ldmia r0!, {r2, r3, r12}
- stmia r1!, {r2, r3, r12}
- ldmia r0!, {r2, r3, r12}
- stmia r1!, {r2, r3, r12}
-
- bx lr
-}
-
-ARM_FUNC asm void MI_Copy64B(register const void *pSrc, register void *pDest)
-{
- ldmia r0!, {r2, r3, r12}
- stmia r1!, {r2, r3, r12}
- ldmia r0!, {r2, r3, r12}
- stmia r1!, {r2, r3, r12}
- ldmia r0!, {r2, r3, r12}
- stmia r1!, {r2, r3, r12}
- ldmia r0!, {r2, r3, r12}
- stmia r1!, {r2, r3, r12}
- ldmia r0, {r0, r2, r3, r12}
- stmia r1!, {r0, r2, r3, r12}
-
- bx lr
-}
-
-ARM_FUNC asm void MI_CpuFill8(register void *dstp, register u8 data, register u32 size)
-{
- cmp r2, #0
- bxeq lr
-
- tst r0, #1
- beq _020CE378
- ldrh r12, [r0, #-1]
- and r12, r12, #0x00ff
- orr r3, r12, r1, lsl #8
- strh r3, [r0, #-1]
- add r0, r0, #1
- subs r2, r2, #1
- bxeq lr
-
-_020CE378:
- cmp r2, #2
- bcc _020CE3C0
- orr r1, r1, r1, lsl #8
- tst r0, #2
- beq _020CE398
- strh r1, [r0], #2
- subs r2, r2, #2
- bxeq lr
-
-_020CE398:
- orr r1, r1, r1, lsl #16
- bics r3, r2, #3
- beq _020CE3B8
- sub r2, r2, r3
- add r12, r3, r0
-
-_020CE3AC:
- str r1, [r0], #4
- cmp r0, r12
- bcc _020CE3AC
-
-_020CE3B8:
- tst r2, #2
- strneh r1, [r0], #2
-
-_020CE3C0:
- tst r2, #1
- bxeq lr
- ldrh r3, [r0]
- and r3, r3, #0xff00
- and r1, r1, #0x00ff
- orr r1, r1, r3
- strh r1, [r0]
- bx lr
-}
-
-ARM_FUNC asm void MI_CpuCopy8(register const void *srcp, register void *dstp, register u32 size)
-{
- cmp r2, #0
- bxeq lr
-
- tst r1, #1
- beq _020CE420
- ldrh r12, [r1, #-1]
- and r12, r12, #0x00ff
- tst r0, #1
- ldrneh r3, [r0, #-1]
- movne r3, r3, lsr #8
- ldreqh r3, [r0]
- orr r3, r12, r3, lsl #8
- strh r3, [r1, #-1]
- add r0, r0, #1
- add r1, r1, #1
- subs r2, r2, #1
- bxeq lr
-
-_020CE420:
- eor r12, r1, r0
- tst r12, #1
- beq _020CE474
-
- bic r0, r0, #1
- ldrh r12, [r0], #2
- mov r3, r12, lsr #8
- subs r2, r2, #2
- bcc _020CE458
-
-_020CE440:
- ldrh r12, [r0], #2
- orr r12, r3, r12, lsl #8
- strh r12, [r1], #2
- mov r3, r12, lsr #16
- subs r2, r2, #2
- bcs _020CE440
-
-_020CE458:
- tst r2, #1
- bxeq lr
- ldrh r12, [r1]
- and r12, r12, #0xff00
- orr r12, r12, r3
- strh r12, [r1]
- bx lr
-
-_020CE474:
- tst r12, #2
- beq _020CE4A0
-
- bics r3, r2, #1
- beq _020CE4EC
- sub r2, r2, r3
- add r12, r3, r1
-
-_020CE48C:
- ldrh r3, [r0], #2
- strh r3, [r1], #2
- cmp r1, r12
- bcc _020CE48C
- b _020CE4EC
-
-_020CE4A0:
- cmp r2, #2
- bcc _020CE4EC
- tst r1, #2
- beq _020CE4C0
- ldrh r3, [r0], #2
- strh r3, [r1], #2
- subs r2, r2, #2
- bxeq lr
-
-_020CE4C0:
- bics r3, r2, #3
- beq _020CE4E0
- sub r2, r2, r3
- add r12, r3, r1
-
-_020CE4D0:
- ldr r3, [r0], #4
- str r3, [r1], #4
- cmp r1, r12
- bcc _020CE4D0
-
-_020CE4E0:
- tst r2, #2
- ldrneh r3, [r0], #2
- strneh r3, [r1], #2
-
-_020CE4EC:
- tst r2, #1
- bxeq lr
- ldrh r2, [r1]
- ldrh r0, [r0]
- and r2, r2, #0xff00
- and r0, r0, #0x00ff
- orr r0, r2, r0
- strh r0, [r1]
-
- bx lr
-}
-
-THUMB_FUNC asm void MI_Zero36B(register void *pDest)
-{
- mov r1, #0
- mov r2, #0
- mov r3, #0
- stmia r0!, {r1, r2, r3}
- stmia r0!, {r1, r2, r3}
- stmia r0!, {r1, r2, r3}
-
- bx lr
-}