summaryrefslogtreecommitdiff
path: root/asm/trig.s
diff options
context:
space:
mode:
authorsceptillion <33798691+sceptillion@users.noreply.github.com>2017-12-16 23:54:22 -0800
committersceptillion <33798691+sceptillion@users.noreply.github.com>2017-12-16 23:54:22 -0800
commit670fef77ac4d9116d5fdc28c0da40622919a062b (patch)
tree61c0e925f059404473826ac775305ba5e2706ab1 /asm/trig.s
first commit
Diffstat (limited to 'asm/trig.s')
-rw-r--r--asm/trig.s97
1 files changed, 97 insertions, 0 deletions
diff --git a/asm/trig.s b/asm/trig.s
new file mode 100644
index 000000000..386cbe4ca
--- /dev/null
+++ b/asm/trig.s
@@ -0,0 +1,97 @@
+ .include "asm/macros.inc"
+ .include "constants/constants.inc"
+
+ .syntax unified
+
+ .text
+
+ thumb_func_start sub_8044E30
+sub_8044E30: @ 8044E30
+ lsls r1, 16
+ asrs r1, 16
+ ldr r2, _08044E48 @ =gUnknown_825E074
+ lsls r0, 16
+ asrs r0, 15
+ adds r0, r2
+ movs r2, 0
+ ldrsh r0, [r0, r2]
+ muls r0, r1
+ lsls r0, 8
+ asrs r0, 16
+ bx lr
+ .align 2, 0
+_08044E48: .4byte gUnknown_825E074
+ thumb_func_end sub_8044E30
+
+ thumb_func_start sub_8044E4C
+sub_8044E4C: @ 8044E4C
+ lsls r1, 16
+ asrs r1, 16
+ ldr r2, _08044E68 @ =gUnknown_825E074
+ lsls r0, 16
+ asrs r0, 15
+ adds r0, 0x80
+ adds r0, r2
+ movs r2, 0
+ ldrsh r0, [r0, r2]
+ muls r0, r1
+ lsls r0, 8
+ asrs r0, 16
+ bx lr
+ .align 2, 0
+_08044E68: .4byte gUnknown_825E074
+ thumb_func_end sub_8044E4C
+
+ thumb_func_start sub_8044E6C
+sub_8044E6C: @ 8044E6C
+ push {r4,r5,lr}
+ adds r5, r0, 0
+ lsls r5, 16
+ lsrs r5, 16
+ adds r0, r5, 0
+ movs r1, 0xB4
+ bl __umodsi3
+ adds r4, r0, 0
+ lsls r4, 16
+ lsrs r4, 16
+ adds r0, r5, 0
+ movs r1, 0xB4
+ bl __udivsi3
+ movs r1, 0x1
+ ands r0, r1
+ ldr r1, _08044EA0 @ =gUnknown_825E2F4
+ lsls r4, 1
+ adds r4, r1
+ ldrh r1, [r4]
+ cmp r0, 0
+ bne _08044EA4
+ lsls r0, r1, 16
+ b _08044EA8
+ .align 2, 0
+_08044EA0: .4byte gUnknown_825E2F4
+_08044EA4:
+ lsls r0, r1, 16
+ negs r0, r0
+_08044EA8:
+ asrs r0, 16
+ pop {r4,r5}
+ pop {r1}
+ bx r1
+ thumb_func_end sub_8044E6C
+
+ thumb_func_start sub_8044EB0
+sub_8044EB0: @ 8044EB0
+ push {lr}
+ lsls r0, 16
+ movs r1, 0xB4
+ lsls r1, 15
+ adds r0, r1
+ lsrs r0, 16
+ bl sub_8044E6C
+ lsls r0, 16
+ asrs r0, 16
+ pop {r1}
+ bx r1
+ thumb_func_end sub_8044EB0
+
+ .align 2, 0 @ Don't pad with nop.