summaryrefslogtreecommitdiff
path: root/arm9/asm
diff options
context:
space:
mode:
Diffstat (limited to 'arm9/asm')
-rw-r--r--arm9/asm/FX_mtx43.s523
1 files changed, 0 insertions, 523 deletions
diff --git a/arm9/asm/FX_mtx43.s b/arm9/asm/FX_mtx43.s
deleted file mode 100644
index 601bf236..00000000
--- a/arm9/asm/FX_mtx43.s
+++ /dev/null
@@ -1,523 +0,0 @@
- .include "asm/macros.inc"
- .include "global.inc"
-
- .text
-
- arm_func_start MTX_Identity43_
-MTX_Identity43_: ; 0x020C426C
- mov r2, #0x1000
- mov r3, #0x0
- stmia r0!, {r2-r3}
- mov r1, #0x0
- stmia r0!, {r1,r3}
- stmia r0!, {r2-r3}
- stmia r0!, {r1,r3}
- stmia r0!, {r2-r3}
- stmia r0!, {r1,r3}
- bx lr
-
- arm_func_start MTX_Copy43To44_
-MTX_Copy43To44_: ; 0x020C4294
- stmdb sp!, {r4}
- mov r12, #0x0
- ldmia r0!, {r2-r4}
- stmia r1!, {r2-r4,r12}
- ldmia r0!, {r2-r4}
- stmia r1!, {r2-r4,r12}
- ldmia r0!, {r2-r4}
- stmia r1!, {r2-r4,r12}
- mov r12, #0x1000
- ldmia r0!, {r2-r4}
- stmia r1!, {r2-r4,r12}
- ldmia sp!, {r4}
- bx lr
-
- thumb_func_start MTX_Scale43_
-MTX_Scale43_: ; 0x020C42C8
- stmia r0!, {r1}
- mov r1, #0x0
- str r3, [r0, #0x1c]
- mov r3, #0x0
- stmia r0!, {r1,r3}
- stmia r0!, {r1-r3}
- mov r2, #0x0
- stmia r0!, {r1,r3}
- add r0, #0x4
- stmia r0!, {r1-r3}
- bx lr
- .balign 4
-
- thumb_func_start MTX_RotX43_
-MTX_RotX43_: ; 0x020C42E0
- str r1, [r0, #0x14]
- neg r1, r1
- str r1, [r0, #0x1c]
- mov r1, #0x1
- lsl r1, r1, #0xc
- stmia r0!, {r1}
- mov r3, #0x0
- mov r1, #0x0
- stmia r0!, {r1,r3}
- stmia r0!, {r1-r2}
- str r1, [r0, #0x4]
- add r0, #0xc
- stmia r0!, {r2-r3}
- stmia r0!, {r1,r3}
- bx lr
- .balign 4
-
- thumb_func_start MTX_RotY43_
-MTX_RotY43_: ; 0x020C4300
- str r1, [r0, #0x18]
- mov r3, #0x0
- stmia r0!, {r2-r3}
- neg r1, r1
- stmia r0!, {r1,r3}
- mov r1, #0x1
- lsl r1, r1, #0xc
- stmia r0!, {r1,r3}
- add r0, #0x4
- mov r1, #0x0
- stmia r0!, {r1-r3}
- stmia r0!, {r1,r3}
- bx lr
- .balign 4
-
- arm_func_start MTX_MultVec43
-MTX_MultVec43: ; 0x020C431C
- stmdb sp!, {r4-r6,lr}
- ldr r12, [r0, #0x4]
- ldr r4, [r1, #0xc]
- ldr r3, [r0, #0x0]
- smull r6, r5, r12, r4
- ldr r4, [r1, #0x0]
- ldr r0, [r0, #0x8]
- smlal r6, r5, r3, r4
- ldr r4, [r1, #0x18]
- smlal r6, r5, r0, r4
- mov r4, r6, lsr #0xc
- orr r4, r4, r5, lsl #0x14
- str r4, [r2, #0x0]
- ldr r5, [r2, #0x0]
- ldr r4, [r1, #0x24]
- add r4, r5, r4
- str r4, [r2, #0x0]
- ldr r4, [r1, #0x10]
- ldr r5, [r1, #0x4]
- smull r6, lr, r12, r4
- smlal r6, lr, r3, r5
- ldr r4, [r1, #0x1c]
- smlal r6, lr, r0, r4
- mov r4, r6, lsr #0xc
- orr r4, r4, lr, lsl #0x14
- str r4, [r2, #0x4]
- ldr r5, [r2, #0x4]
- ldr r4, [r1, #0x28]
- add r4, r5, r4
- str r4, [r2, #0x4]
- ldr lr, [r1, #0x14]
- ldr r4, [r1, #0x8]
- smull r5, lr, r12, lr
- smlal r5, lr, r3, r4
- ldr r3, [r1, #0x20]
- smlal r5, lr, r0, r3
- mov r0, r5, lsr #0xc
- orr r0, r0, lr, lsl #0x14
- str r0, [r2, #0x8]
- ldr r3, [r2, #0x8]
- ldr r0, [r1, #0x2c]
- add r0, r3, r0
- str r0, [r2, #0x8]
- ldmia sp!, {r4-r6,lr}
- bx lr
-
- arm_func_start MTX_Concat43
-MTX_Concat43: ; 0x020C43D0
- stmdb sp!, {r4-r10,lr}
- sub sp, sp, #0x30
- ldr r5, [r0, #0x4]
- ldr r3, [r1, #0xc]
- mov r12, r2
- smull r8, r7, r5, r3
- ldr r6, [r0, #0x0]
- ldr r3, [r1, #0x0]
- cmp r12, r1
- smlal r8, r7, r6, r3
- ldr r4, [r0, #0x8]
- ldr r3, [r1, #0x18]
- addeq r2, sp, #0x0
- smlal r8, r7, r4, r3
- mov r3, r8, lsr #0xc
- orr r3, r3, r7, lsl #0x14
- str r3, [r2, #0x0]
- ldr r3, [r1, #0x10]
- ldr r7, [r1, #0x4]
- smull r9, r8, r5, r3
- smlal r9, r8, r6, r7
- ldr r3, [r1, #0x1c]
- add lr, sp, #0x0
- smlal r9, r8, r4, r3
- mov r3, r9, lsr #0xc
- orr r3, r3, r8, lsl #0x14
- str r3, [r2, #0x4]
- ldr r3, [r1, #0x14]
- ldr r7, [r1, #0x8]
- smull r9, r8, r5, r3
- smlal r9, r8, r6, r7
- ldr r6, [r1, #0x20]
- smlal r9, r8, r4, r6
- mov r4, r9, lsr #0xc
- orr r4, r4, r8, lsl #0x14
- str r4, [r2, #0x8]
- ldr r4, [r0, #0x10]
- ldr r5, [r0, #0xc]
- smull r9, r8, r4, r3
- smlal r9, r8, r5, r7
- ldr r3, [r0, #0x14]
- smlal r9, r8, r3, r6
- mov r6, r9, lsr #0xc
- orr r6, r6, r8, lsl #0x14
- str r6, [r2, #0x14]
- ldr r6, [r1, #0x10]
- ldr r7, [r1, #0x4]
- smull r9, r8, r4, r6
- smlal r9, r8, r5, r7
- ldr r6, [r1, #0x1c]
- smlal r9, r8, r3, r6
- mov r6, r9, lsr #0xc
- orr r6, r6, r8, lsl #0x14
- str r6, [r2, #0x10]
- ldr r7, [r1, #0xc]
- ldr r8, [r1, #0x0]
- smull r10, r9, r4, r7
- smlal r10, r9, r5, r8
- ldr r6, [r1, #0x18]
- smlal r10, r9, r3, r6
- mov r3, r10, lsr #0xc
- orr r3, r3, r9, lsl #0x14
- str r3, [r2, #0xc]
- ldr r4, [r0, #0x1c]
- ldr r5, [r0, #0x18]
- smull r9, r7, r4, r7
- smlal r9, r7, r5, r8
- ldr r3, [r0, #0x20]
- smlal r9, r7, r3, r6
- mov r6, r9, lsr #0xc
- orr r6, r6, r7, lsl #0x14
- str r6, [r2, #0x18]
- ldr r6, [r1, #0x10]
- ldr r7, [r1, #0x4]
- smull r9, r6, r4, r6
- smlal r9, r6, r5, r7
- ldr r8, [r1, #0x1c]
- smlal r9, r6, r3, r8
- mov r7, r9, lsr #0xc
- orr r7, r7, r6, lsl #0x14
- str r7, [r2, #0x1c]
- ldr r7, [r1, #0x14]
- ldr r6, [r1, #0x8]
- smull r9, r8, r4, r7
- smlal r9, r8, r5, r6
- ldr r5, [r1, #0x20]
- smlal r9, r8, r3, r5
- mov r3, r9, lsr #0xc
- orr r3, r3, r8, lsl #0x14
- str r3, [r2, #0x20]
- ldr r4, [r0, #0x28]
- ldr r3, [r0, #0x24]
- smull r8, r7, r4, r7
- smlal r8, r7, r3, r6
- ldr r0, [r0, #0x2c]
- ldr r6, [r1, #0x2c]
- smlal r8, r7, r0, r5
- mov r5, r8, lsr #0xc
- orr r5, r5, r7, lsl #0x14
- adds r5, r6, r5
- str r5, [r2, #0x2c]
- ldr r5, [r1, #0x10]
- ldr r6, [r1, #0x4]
- smull r8, r5, r4, r5
- smlal r8, r5, r3, r6
- ldr r7, [r1, #0x1c]
- ldr r9, [r1, #0x28]
- smlal r8, r5, r0, r7
- mov r6, r8, lsr #0xc
- orr r6, r6, r5, lsl #0x14
- adds r5, r9, r6
- str r5, [r2, #0x28]
- ldr r8, [r1, #0x24]
- ldr r6, [r1, #0x18]
- ldr r5, [r1, #0x0]
- ldr r1, [r1, #0xc]
- smull r7, r1, r4, r1
- smlal r7, r1, r3, r5
- smlal r7, r1, r0, r6
- mov r0, r7, lsr #0xc
- orr r0, r0, r1, lsl #0x14
- adds r0, r8, r0
- cmp r2, lr
- str r0, [r2, #0x24]
- addne sp, sp, #0x30
- ldmneia sp!, {r4-r10,lr}
- bxne lr
- ldmia lr!, {r0-r3}
- stmia r12!, {r0-r3}
- ldmia lr!, {r0-r3}
- stmia r12!, {r0-r3}
- ldmia lr, {r0-r3}
- stmia r12, {r0-r3}
- add sp, sp, #0x30
- ldmia sp!, {r4-r10,lr}
- bx lr
-
- arm_func_start MTX_Inverse43
-MTX_Inverse43: ; 0x020C45F0
- stmdb sp!, {r4-r11,lr}
- sub sp, sp, #0x5c
- mov r10, r0
- ldr r11, [r10, #0x14]
- cmp r10, r1
- addeq r9, sp, #0x2c
- ldr r3, [r10, #0x18]
- ldr r2, [r10, #0xc]
- ldr r8, [r10, #0x20]
- str r1, [sp, #0x0]
- movne r9, r1
- smull r7, r5, r2, r8
- smull r6, r1, r11, r3
- ldr r4, [r10, #0x1c]
- subs r12, r7, r6
- ldr r0, [r10, #0x10]
- smull r6, lr, r11, r4
- sbc r11, r5, r1
- smull r5, r4, r2, r4
- mov r1, #0x800
- smull r8, r7, r0, r8
- smull r3, r2, r0, r3
- adds r12, r12, r1
- adc r0, r11, #0x0
- subs r8, r8, r6
- sbc r6, r7, lr
- adds r7, r8, r1
- adc r11, r6, #0x0
- mov r7, r7, lsr #0xc
- mov r8, r12, lsr #0xc
- orr r7, r7, r11, lsl #0x14
- orr r8, r8, r0, lsl #0x14
- subs r0, r5, r3
- sbc r12, r4, r2
- ldr r6, [r10, #0x4]
- ldr r11, [r10, #0x0]
- smull r3, r2, r6, r8
- adds r0, r0, r1
- smull r5, r4, r11, r7
- adc r11, r12, #0x0
- mov r6, r0, lsr #0xc
- subs r3, r5, r3
- ldr r0, [r10, #0x8]
- orr r6, r6, r11, lsl #0x14
- sbc r2, r4, r2
- smlal r3, r2, r0, r6
- adds r0, r3, r1
- mov r1, r8, asr #0x1f
- str r1, [sp, #0x4]
- mov r1, r7, asr #0x1f
- str r1, [sp, #0x8]
- mov r1, r6, asr #0x1f
- adc r2, r2, #0x0
- mov r0, r0, lsr #0xc
- orrs r0, r0, r2, lsl #0x14
- str r1, [sp, #0xc]
- addeq sp, sp, #0x5c
- mvneq r0, #0x0
- ldmeqia sp!, {r4-r11,lr}
- bxeq lr
- bl FX_InvAsync
- ldr r1, [r10, #0x8]
- ldr r2, [r10, #0x1c]
- ldr r11, [r10, #0x10]
- smull r0, r4, r2, r1
- smull r3, r2, r11, r1
- ldr r5, [r10, #0x18]
- str r2, [sp, #0x18]
- str r3, [sp, #0x14]
- smull r3, r2, r5, r1
- str r2, [sp, #0x20]
- ldr r2, [r10, #0x20]
- ldr lr, [r10, #0x4]
- str r2, [sp, #0x10]
- ldr r5, [sp, #0x10]
- str r3, [sp, #0x1c]
- smull r12, r5, lr, r5
- subs r0, r12, r0
- ldr r2, [r10, #0xc]
- sbc r4, r5, r4
- smull r1, r5, r2, r1
- str r5, [sp, #0x28]
- mov r5, r0, lsr #0xc
- ldr r11, [r10, #0x14]
- orr r5, r5, r4, lsl #0x14
- smull r4, r2, lr, r11
- ldr r0, [sp, #0x14]
- ldr r3, [r10, #0x0]
- subs r4, r4, r0
- ldr r0, [sp, #0x18]
- mov r4, r4, lsr #0xc
- sbc r0, r2, r0
- orr r4, r4, r0, lsl #0x14
- ldr r0, [sp, #0x10]
- ldr r2, [sp, #0x1c]
- smull r12, r0, r3, r0
- subs r2, r12, r2
- ldr r12, [sp, #0x20]
- sbc r0, r0, r12
- smull r12, r11, r3, r11
- ldr r3, [sp, #0x28]
- subs r1, r12, r1
- sbc r3, r11, r3
- mov r11, r2, lsr #0xc
- orr r11, r11, r0, lsl #0x14
- mov r0, r1, lsr #0xc
- str r0, [sp, #0x24]
- orr r0, r0, r3, lsl #0x14
- str r0, [sp, #0x24]
- bl FX_GetDivResult
- smull r2, r1, r0, r5
- mov r2, r2, lsr #0xc
- orr r2, r2, r1, lsl #0x14
- rsb lr, r2, #0x0
- smull r2, r1, r0, r4
- mov r4, r2, lsr #0xc
- orr r4, r4, r1, lsl #0x14
- smull r2, r1, r0, r11
- mov r3, r2, lsr #0xc
- orr r3, r3, r1, lsl #0x14
- ldr r1, [sp, #0x24]
- umull r11, r5, r0, r7
- smull r2, r1, r0, r1
- mov r2, r2, lsr #0xc
- orr r2, r2, r1, lsl #0x14
- ldr r1, [sp, #0x8]
- mov r12, r0, asr #0x1f
- mla r5, r0, r1, r5
- mla r5, r12, r7, r5
- mov r1, r11, lsr #0xc
- orr r1, r1, r5, lsl #0x14
- str r1, [r9, #0x0]
- str lr, [r9, #0x4]
- str r4, [r9, #0x8]
- ldr r1, [sp, #0x4]
- umull r5, r4, r0, r8
- mla r4, r0, r1, r4
- mla r4, r12, r8, r4
- mov r1, r5, lsr #0xc
- orr r1, r1, r4, lsl #0x14
- rsb r1, r1, #0x0
- str r1, [r9, #0xc]
- ldr r1, [sp, #0xc]
- rsb r2, r2, #0x0
- str r3, [r9, #0x10]
- str r2, [r9, #0x14]
- umull r3, r2, r0, r6
- mla r2, r0, r1, r2
- mla r2, r12, r6, r2
- mov r1, r3, lsr #0xc
- orr r1, r1, r2, lsl #0x14
- str r1, [r9, #0x18]
- ldr r3, [r10, #0x0]
- ldr r1, [r10, #0x1c]
- ldr r2, [r10, #0x18]
- smull r5, r4, r3, r1
- ldr r1, [r10, #0x4]
- smull r3, r1, r2, r1
- subs r2, r5, r3
- sbc r1, r4, r1
- mov r2, r2, lsr #0xc
- orr r2, r2, r1, lsl #0x14
- smull r2, r1, r0, r2
- mov r2, r2, lsr #0xc
- orr r2, r2, r1, lsl #0x14
- rsb r1, r2, #0x0
- str r1, [r9, #0x1c]
- ldr r3, [r10, #0x0]
- ldr r1, [r10, #0x10]
- ldr r2, [r10, #0xc]
- smull r5, r4, r3, r1
- ldr r1, [r10, #0x4]
- smull r3, r1, r2, r1
- subs r2, r5, r3
- sbc r1, r4, r1
- mov r2, r2, lsr #0xc
- orr r2, r2, r1, lsl #0x14
- smull r2, r1, r0, r2
- mov r0, r2, lsr #0xc
- orr r0, r0, r1, lsl #0x14
- str r0, [r9, #0x20]
- add r0, sp, #0x2c
- ldr r2, [r9, #0xc]
- ldr r1, [r10, #0x28]
- ldr r4, [r9, #0x0]
- smull r7, r1, r2, r1
- ldr r3, [r10, #0x24]
- ldr r6, [r9, #0x18]
- smlal r7, r1, r4, r3
- ldr r5, [r10, #0x2c]
- cmp r9, r0
- smlal r7, r1, r6, r5
- mov r2, r7, lsr #0xc
- orr r2, r2, r1, lsl #0x14
- rsb r1, r2, #0x0
- str r1, [r9, #0x24]
- ldr r2, [r9, #0x10]
- ldr r1, [r10, #0x28]
- ldr r4, [r9, #0x4]
- smull r7, r1, r2, r1
- ldr r3, [r10, #0x24]
- ldr r6, [r9, #0x1c]
- smlal r7, r1, r4, r3
- ldr r5, [r10, #0x2c]
- smlal r7, r1, r6, r5
- mov r2, r7, lsr #0xc
- orr r2, r2, r1, lsl #0x14
- rsb r1, r2, #0x0
- str r1, [r9, #0x28]
- ldr r1, [r10, #0x28]
- ldr r2, [r9, #0x14]
- ldr r4, [r9, #0x8]
- smull r7, r1, r2, r1
- ldr r3, [r10, #0x24]
- ldr r6, [r9, #0x20]
- smlal r7, r1, r4, r3
- ldr r5, [r10, #0x2c]
- smlal r7, r1, r6, r5
- mov r2, r7, lsr #0xc
- orr r2, r2, r1, lsl #0x14
- rsb r1, r2, #0x0
- str r1, [r9, #0x2c]
- bne _020C4974
- ldr r1, [sp, #0x0]
- bl MI_Copy48B
-_020C4974:
- mov r0, #0x0
- add sp, sp, #0x5c
- ldmia sp!, {r4-r11,lr}
- bx lr
-
- arm_func_start MTX_ScaleApply43
-MTX_ScaleApply43: ; 0x020C4984
- stmdb sp!, {r4-r5,lr}
- sub sp, sp, #0x4
- ldr r12, [sp, #0x10]
- mov r5, r0
- str r12, [sp, #0x0]
- mov r4, r1
- bl MTX_ScaleApply33
- ldr r0, [r5, #0x24]
- str r0, [r4, #0x24]
- ldr r0, [r5, #0x28]
- str r0, [r4, #0x28]
- ldr r0, [r5, #0x2c]
- str r0, [r4, #0x2c]
- add sp, sp, #0x4
- ldmia sp!, {r4-r5,lr}
- bx lr