diff options
| author | spicyjpeg <thatspicyjpeg@gmail.com> | 2022-10-19 15:09:07 +0200 |
|---|---|---|
| committer | spicyjpeg <thatspicyjpeg@gmail.com> | 2022-10-19 15:09:07 +0200 |
| commit | 982df5fe197c4db2be4bffe59a05c837b7508365 (patch) | |
| tree | e5ddb393fca8280920724f3aa5ecec3261058fa4 /libpsn00b/psxgte/vectornormals.s | |
| parent | 783014e53254fe17102a34c30120eeabf5227a47 (diff) | |
| download | psn00bsdk-982df5fe197c4db2be4bffe59a05c837b7508365.tar.gz | |
Initial psxgte cleanup
Diffstat (limited to 'libpsn00b/psxgte/vectornormals.s')
| -rw-r--r-- | libpsn00b/psxgte/vectornormals.s | 110 |
1 files changed, 0 insertions, 110 deletions
diff --git a/libpsn00b/psxgte/vectornormals.s b/libpsn00b/psxgte/vectornormals.s deleted file mode 100644 index 85e94e6..0000000 --- a/libpsn00b/psxgte/vectornormals.s +++ /dev/null @@ -1,110 +0,0 @@ -.set noreorder -.set noat - -.include "gtereg.inc" -.include "inline_s.inc" - -.section .text - -# Implementation based from Sony libs - -.global VectorNormalS -.type VectorNormalS, @function -VectorNormalS: - - lw $t0, 0($a0) - lw $t1, 4($a0) - lw $t2, 8($a0) - - mtc2 $t0, C2_IR1 - mtc2 $t1, C2_IR2 - mtc2 $t2, C2_IR3 - - nSQR(0) - - mfc2 $t3, C2_MAC1 - mfc2 $t4, C2_MAC2 - mfc2 $t5, C2_MAC3 - - add $t3, $t4 - add $v0, $t3, $t5 - mtc2 $v0, C2_LZCS - nop - nop - mfc2 $v1, C2_LZCR - - addiu $at, $0 , -2 - and $v1, $at - - addiu $t6, $0 , 0x1f - sub $t6, $v1 - sra $t6, 1 - addiu $t3, $v1, -24 - - bltz $t3, .Lvalue_neg - nop - b .Lvalue_pos - sllv $t4, $v0, $t3 -.Lvalue_neg: - addiu $t3, $0 , 24 - sub $t3, $v1 - srav $t4, $v0, $t3 -.Lvalue_pos: - addi $t4, -64 - sll $t4, 1 - - la $t5, _norm_table - addu $t5, $t4 - lh $t5, 0($t5) - - mtc2 $t0, C2_IR1 - mtc2 $t1, C2_IR2 - mtc2 $t2, C2_IR3 - mtc2 $t5, C2_IR0 - - nGPF(0) - - mfc2 $t0, C2_MAC1 - mfc2 $t1, C2_MAC2 - mfc2 $t2, C2_MAC3 - - sra $t0, $t6 - sra $t1, $t6 - sra $t2, $t6 - - sh $t0, 0($a1) - sh $t1, 2($a1) - jr $ra - sh $t2, 4($a1) - - -.section .data - -.global _norm_table -.type _norm_table, @object -_norm_table: - .hword 0x1000, 0x0FE0, 0x0FC1, 0x0FA3, 0x0F85, 0x0F68, 0x0F4C, 0x0F30 - .hword 0x0F15, 0x0EFB, 0x0EE1, 0x0EC7, 0x0EAE, 0x0E96, 0x0E7E, 0x0E66 - .hword 0x0E4F, 0x0E38, 0x0E22, 0x0E0C, 0x0DF7, 0x0DE2, 0x0DCD, 0x0DB9 - .hword 0x0DA5, 0x0D91, 0x0D7E, 0x0D6B, 0x0D58, 0x0D45, 0x0D33, 0x0D21 - .hword 0x0D10, 0x0CFF, 0x0CEE, 0x0CDD, 0x0CCC, 0x0CBC, 0x0CAC, 0x0C9C - .hword 0x0C8D, 0x0C7D, 0x0C6E, 0x0C5F, 0x0C51, 0x0C42, 0x0C34, 0x0C26 - .hword 0x0C18, 0x0C0A, 0x0BFD, 0x0BEF, 0x0BE2, 0x0BD5, 0x0BC8, 0x0BBB - .hword 0x0BAF, 0x0BA2, 0x0B96, 0x0B8A, 0x0B7E, 0x0B72, 0x0B67, 0x0B5B - .hword 0x0B50, 0x0B45, 0x0B39, 0x0B2E, 0x0B24, 0x0B19, 0x0B0E, 0x0B04 - .hword 0x0AF9, 0x0AEF, 0x0AE5, 0x0ADB, 0x0AD1, 0x0AC7, 0x0ABD, 0x0AB4 - .hword 0x0AAA, 0x0AA1, 0x0A97, 0x0A8E, 0x0A85, 0x0A7C, 0x0A73, 0x0A6A - .hword 0x0A61, 0x0A59, 0x0A50, 0x0A47, 0x0A3F, 0x0A37, 0x0A2E, 0x0A26 - .hword 0x0A1E, 0x0A16, 0x0A0E, 0x0A06, 0x09FE, 0x09F6, 0x09EF, 0x09E7 - .hword 0x09E0, 0x09D8, 0x09D1, 0x09C9, 0x09C2, 0x09BB, 0x09B4, 0x09AD - .hword 0x09A5, 0x099E, 0x0998, 0x0991, 0x098A, 0x0983, 0x097C, 0x0976 - .hword 0x096F, 0x0969, 0x0962, 0x095C, 0x0955, 0x094F, 0x0949, 0x0943 - .hword 0x093C, 0x0936, 0x0930, 0x092A, 0x0924, 0x091E, 0x0918, 0x0912 - .hword 0x090D, 0x0907, 0x0901, 0x08FB, 0x08F6, 0x08F0, 0x08EB, 0x08E5 - .hword 0x08E0, 0x08DA, 0x08D5, 0x08CF, 0x08CA, 0x08C5, 0x08BF, 0x08BA - .hword 0x08B5, 0x08B0, 0x08AB, 0x08A6, 0x08A1, 0x089C, 0x0897, 0x0892 - .hword 0x088D, 0x0888, 0x0883, 0x087E, 0x087A, 0x0875, 0x0870, 0x086B - .hword 0x0867, 0x0862, 0x085E, 0x0859, 0x0855, 0x0850, 0x084C, 0x0847 - .hword 0x0843, 0x083E, 0x083A, 0x0836, 0x0831, 0x082D, 0x0829, 0x0824 - .hword 0x0820, 0x081C, 0x0818, 0x0814, 0x0810, 0x080C, 0x0808, 0x0804 -
\ No newline at end of file |
