diff options
author | sceptillion <33798691+sceptillion@users.noreply.github.com> | 2017-12-16 23:54:22 -0800 |
---|---|---|
committer | sceptillion <33798691+sceptillion@users.noreply.github.com> | 2017-12-16 23:54:22 -0800 |
commit | 670fef77ac4d9116d5fdc28c0da40622919a062b (patch) | |
tree | 61c0e925f059404473826ac775305ba5e2706ab1 /asm/trig.s |
first commit
Diffstat (limited to 'asm/trig.s')
-rw-r--r-- | asm/trig.s | 97 |
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. |