mirror of
https://github.com/open-goal/jak-project
synced 2026-09-10 12:25:21 -04:00
6c719ae000
All VU programs are unchanged except: - `ocean-near-vu1` DIFFERENT - `sparks-vu1` NEW - `sprite-glow-vu1` DIFFERENT - `tnear-vu1` DIFFERENT And `hfrag`, `ocean` and `ocean-texture` have been removed. A full breakdown: ``` ================================================================================ Checking: background-vu0.txt ================================================================================ OK: Files are the same. ================================================================================ Checking: bones-vu0.txt ================================================================================ OK: Files are the same. ================================================================================ Checking: collide-vu0.txt ================================================================================ OK: Files are the same. ================================================================================ Checking: emerc-vu1.txt ================================================================================ OK: Files are the same. ================================================================================ Checking: etie-vu1.txt ================================================================================ OK: Files are the same. ================================================================================ Checking: etn-vu1.txt ================================================================================ OK: Files are the same. ================================================================================ Checking: foreground-vu0.txt ================================================================================ OK: Files are the same. ================================================================================ Checking: generic-vu0.txt ================================================================================ OK: Files are the same. ================================================================================ Checking: generic-vu1.txt ================================================================================ OK: Files are the same. ================================================================================ Checking: merc-vu1.txt ================================================================================ OK: Files are the same. ================================================================================ Checking: mercneric-vu0.txt ================================================================================ OK: Files are the same. ================================================================================ Checking: ocean-mid-vu1.txt ================================================================================ OK: Files are the same. ================================================================================ Checking: ocean-near-vu1.txt ================================================================================ !!! DIFFERENT !!! --- ocean-near-vu1.txt +++ ../jak3/ocean-near-vu1.txt @@ -78,10 +78,20 @@ .word 0x2ff .word 0x800206bc .word 0x2ff +.word 0x903100a +.word 0x2ff +.word 0x884100a +.word 0x2ff .word 0x80050032 .word 0x2ff .word 0x800701f2 .word 0x2ff +.word 0x1fc1820 +.word 0x2ff +.word 0x1fd1821 +.word 0x2ff +.word 0x1fe2020 +.word 0x2ff .word 0x1f82922 .word 0x2ff .word 0x1f92925 @@ -91,23 +101,23 @@ .word 0x1fb292b .word 0x2ff .word 0x1ec292e -.word 0x800601 +.word 0x9c0600 .word 0x1ed2931 -.word 0x800641 +.word 0x9c0641 .word 0x1ee2934 -.word 0x800681 +.word 0x9c0682 .word 0x1ef2937 -.word 0x8006c1 +.word 0x9c06c3 .word 0x1e8293a -.word 0x800301 +.word 0x9d0300 .word 0x3e5c122 -.word 0x800341 +.word 0x9d0341 .word 0x3e5c925 -.word 0x800381 +.word 0x9d0382 .word 0x3e5d128 -.word 0x8003c1 +.word 0x9d03c3 .word 0x3e5d92b -.word 0x800201 +.word 0x9e0200 .word 0x3e5612e .word 0x2ff .word 0x3e56931 @@ -118,12 +128,26 @@ .word 0x2ff .word 0x3e5413a .word 0x2ff +.word 0x80031a32 +.word 0x2ff +.word 0x80042232 +.word 0x2ff .word 0x1005281b .word 0x2ff -.word 0x5a003fec +.word 0x5a003fe7 .word 0x2ff .word 0x80073ff2 .word 0x2ff +.word 0x843100a +.word 0x2ff +.word 0x824100a +.word 0x2ff +.word 0x1fc1820 +.word 0x2ff +.word 0x1fd1821 +.word 0x2ff +.word 0x1fe2020 +.word 0x2ff .word 0x1f82922 .word 0x2ff .word 0x1f92925 @@ -133,23 +157,23 @@ .word 0x1fb292b .word 0x2ff .word 0x1ec292e -.word 0x800601 +.word 0x9c0600 .word 0x1ed2931 -.word 0x800641 +.word 0x9c0641 .word 0x1ee2934 -.word 0x800681 +.word 0x9c0682 .word 0x1ef2937 -.word 0x8006c1 +.word 0x9c06c3 .word 0x1e8293a -.word 0x800301 +.word 0x9d0300 .word 0x3e5c122 -.word 0x800341 +.word 0x9d0341 .word 0x3e5c925 -.word 0x800381 +.word 0x9d0382 .word 0x3e5d128 -.word 0x8003c1 +.word 0x9d03c3 .word 0x3e5d92b -.word 0x800201 +.word 0x9e0200 .word 0x3e5612e .word 0x2ff .word 0x3e56931 ================================================================================ Checking: shadow-vu0.txt ================================================================================ OK: Files are the same. ================================================================================ Checking: shadow-vu1.txt ================================================================================ OK: Files are the same. ================================================================================ Checking: shrub-vu1.txt ================================================================================ OK: Files are the same. ================================================================================ Checking: sparks-vu1.txt ================================================================================ !!! MISSING: ../jak3/sparks-vu1.txt !!! MISSING: sparks-vu1.txt does not exist in ../jak3 ================================================================================ Checking: sprite-distort-vu1.txt ================================================================================ OK: Files are the same. ================================================================================ Checking: sprite-glow-vu1.txt ================================================================================ !!! DIFFERENT !!! --- sprite-glow-vu1.txt +++ ../jak3/sprite-glow-vu1.txt @@ -1,4 +1,4 @@ -.word 0x1005031e +.word 0x10050320 .word 0x2ff .word 0x1f903dc .word 0x2ff @@ -66,17 +66,17 @@ .word 0x2ff .word 0x1ed2004 .word 0x1042101 -.word 0x3e54845 +.word 0x3e54844 .word 0x5b1159 .word 0x8025033c .word 0x410083 -.word 0x3e55046 +.word 0x3e55045 .word 0x20025c -.word 0x3e55847 -.word 0x2ff -.word 0x3e56048 +.word 0x3e55846 +.word 0x2ff +.word 0x3e56047 .word 0x1002117 -.word 0x3e56849 +.word 0x3e56848 .word 0x2ff .word 0x80000030 .word 0x290247 @@ -178,7 +178,7 @@ .word 0x18aa52f .word 0x80000030 .word 0x1e5f1bf -.word 0x3e5184c +.word 0x3e5184b .word 0x1e5fc0a .word 0x3c5580b .word 0x191a46c @@ -230,33 +230,33 @@ .word 0x1ed697d .word 0x80000030 .word 0x1ee717d -.word 0x385583e +.word 0x385583d .word 0x1f1897d -.word 0x385603f +.word 0x385603e .word 0x1f2917d -.word 0x3856840 +.word 0x385683f .word 0x1f3997d -.word 0x3857041 +.word 0x3857040 .word 0x1f4a17d -.word 0x3858819 -.word 0x2ff -.word 0x385901b +.word 0x3858818 +.word 0x2ff +.word 0x385901a .word 0x2ff .word 0x3859808 .word 0x2ff .word 0x385a009 .word 0x2ff -.word 0x385584e -.word 0x2ff -.word 0x3856050 -.word 0x2ff -.word 0x3856852 -.word 0x2ff -.word 0x3857054 +.word 0x385584d +.word 0x2ff +.word 0x385604f +.word 0x2ff +.word 0x3856851 +.word 0x2ff +.word 0x3857053 .word 0x2ff .word 0x80002efc .word 0x2ff -.word 0x10010691 +.word 0x10010694 .word 0x2ff .word 0x52001f8c .word 0x2ff ================================================================================ Checking: sprite-vu1.txt ================================================================================ OK: Files are the same. ================================================================================ Checking: tfrag-vu1.txt ================================================================================ OK: Files are the same. ================================================================================ Checking: tie-near-vu1.txt ================================================================================ OK: Files are the same. ================================================================================ Checking: tie-vu1.txt ================================================================================ OK: Files are the same. ================================================================================ Checking: tnear-vu1.txt ================================================================================ !!! DIFFERENT !!! --- tnear-vu1.txt +++ ../jak3/tnear-vu1.txt @@ -1421,9 +1421,9 @@ .word 0x1916800 .word 0x400403 .word 0x40000008 +.word 0x2ff +.word 0x1927000 .word 0x400443 -.word 0x1927000 -.word 0x2ff .word 0x3eb802d .word 0x2ff .word 0x3eb882e @@ -1435,39 +1435,39 @@ .word 0x1916948 .word 0x400403 .word 0x40000001 +.word 0x2ff +.word 0x1927148 .word 0x400443 -.word 0x1927148 -.word 0x2ff .word 0x3eba02a .word 0x400483 .word 0x3eba82b +.word 0x2ff +.word 0x3ebb02c +.word 0x2ff +.word 0x1f4581d .word 0x1998407 -.word 0x3ebb02c +.word 0x1f55820 .word 0x1998c47 -.word 0x1f4581d -.word 0x1f6e93c -.word 0x1f55820 +.word 0x3eb6027 .word 0x1999487 -.word 0x3eb6027 -.word 0x191876f .word 0x3eb6828 -.word 0x19187ab +.word 0x2ff .word 0x3eb801e .word 0x1f4a13c .word 0x3eb8821 .word 0x1f5a93c .word 0x3eb9024 -.word 0x192ef6f +.word 0x1f6e93c .word 0x3eb7029 -.word 0x192f7ab +.word 0x2ff +.word 0x3eba01d +.word 0x2ff +.word 0x3eba820 +.word 0x2ff .word 0x3ebb023 .word 0x2ff .word 0x800e5872 .word 0x2ff -.word 0x3eba01d -.word 0x2ff -.word 0x3eba820 -.word 0x19de97c .word 0x1ff0297 .word 0x2ff .word 0xb0f03fe @@ -1475,7 +1475,7 @@ .word 0x80040032 .word 0x2ff .word 0x420f0007 -.word 0x19de93c +.word 0x2ff .word 0x1006581c .word 0x2ff .word 0x420f0005 @@ -1541,20 +1541,20 @@ .word 0x2c010002 .word 0x2ff .word 0x2c0d0002 -.word 0x2ff +.word 0x3eef87 .word 0x5200080c .word 0x2ff .word 0x1f13002 .word 0x2ff .word 0x52006803 .word 0x2ff -.word 0x80000030 +.word 0x81feebbc .word 0x2ff .word 0x400007e3 .word 0x2ff .word 0x800841f2 .word 0x2ff -.word 0x420a0082 +.word 0x420a0077 .word 0x2ff .word 0x80064072 .word 0x2ff @@ -1570,7 +1570,7 @@ .word 0x2ff .word 0x5200681c .word 0x2ff -.word 0x80000030 +.word 0x81feebbc .word 0x2ff .word 0x420a006e .word 0x2ff @@ -1594,16 +1594,16 @@ .word 0x2ff .word 0x80064772 .word 0x2ff +.word 0x1ec3000 +.word 0x2ff +.word 0x1f43001 +.word 0x2ff .word 0x1f03002 .word 0x2ff -.word 0x1ec3000 -.word 0x2ff -.word 0x1f43001 -.word 0x2ff .word 0x80042072 .word 0x2ff .word 0x80000030 -.word 0x19d842c +.word 0x2ff .word 0x81ec03bc .word 0x1ff632a .word 0x80000030 @@ -1671,14 +1671,14 @@ .word 0x2c010002 .word 0x2ff .word 0x2c0d0002 -.word 0x2ff +.word 0x3eef87 .word 0x500d0818 .word 0x2ff .word 0x1f13802 .word 0x2ff .word 0x5000080c .word 0x2ff -.word 0x80000030 +.word 0x81feebbc .word 0x2ff .word 0x420a0038 .word 0x2ff @@ -1702,7 +1702,7 @@ .word 0x2ff .word 0x80006235 .word 0x2ff -.word 0x420a0038 +.word 0x420a002d .word 0x2ff .word 0x80000030 .word 0x2ff @@ -1795,10 +1795,6 @@ .word 0x80000030 .word 0x2d6f86 .word 0x80000030 -.word 0x3eef87 -.word 0x81feebbc -.word 0x2ff -.word 0x80000030 .word 0x1ec6bac .word 0x80000030 .word 0x1f4adac @@ -1816,25 +1812,3 @@ .word 0x1f6a5a8 .word 0x80000030 .word 0x1f284a8 -.word 0x80000030 -.word 0x3eef47 -.word 0x81fdf3bc -.word 0x2ff -.word 0x80000030 -.word 0x1ed63ac -.word 0x80000030 -.word 0x1f5a5ac -.word 0x80000030 -.word 0x1f184ac -.word 0x800003bf -.word 0x1e0739c -.word 0x80000030 -.word 0x1e0b59c -.word 0x80000030 -.word 0x1e0949c -.word 0x80000030 -.word 0x1ee6bac -.word 0x48005000 -.word 0x1f6adac -.word 0x80000030 -.word 0x1f28cac ```
793 lines
42 KiB
Plaintext
793 lines
42 KiB
Plaintext
b L1 | nop
|
|
nop | nop
|
|
b L2 | nop
|
|
nop | nop
|
|
b L13 | nop
|
|
nop | nop
|
|
b L21 | nop
|
|
nop | nop
|
|
nop | nop :e
|
|
nop | nop
|
|
L1:
|
|
iaddiu vi01, vi00, 0x358 | nop
|
|
iaddiu vi02, vi00, 0x364 | nop
|
|
mfir.x vf01, vi01 | nop
|
|
mfir.y vf01, vi02 | nop
|
|
mfir.z vf01, vi01 | nop
|
|
mfir.w vf01, vi02 | nop
|
|
lq.xyzw vf02, 880(vi00) | nop
|
|
lq.xyzw vf03, 882(vi00) | nop
|
|
lq.xyzw vf04, 883(vi00) | nop
|
|
lq.xyzw vf05, 884(vi00) | nop
|
|
lq.xyzw vf12, 885(vi00) | nop :e
|
|
lq.xyzw vf13, 881(vi00) | nop
|
|
L2:
|
|
iaddiu vi03, vi00, 0x158 | nop
|
|
ilwr.x vi08, vi03 | nop
|
|
mtir vi02, vf01.x | nop
|
|
iaddi vi03, vi03, 0x1 | addw.z vf25, vf00, vf00
|
|
lq.xyzw vf25, 888(vi00) | addw.z vf26, vf00, vf00
|
|
lq.xyzw vf29, 889(vi00) | addw.z vf27, vf00, vf00
|
|
lq.xyzw vf30, 891(vi00) | addw.z vf28, vf00, vf00
|
|
lq.xyzw vf06, 0(vi00) | nop
|
|
lq.xyzw vf07, 1(vi00) | nop
|
|
lq.xyzw vf08, 2(vi00) | nop
|
|
lq.xyzw vf09, 3(vi00) | nop
|
|
mtir vi01, vf01.y | nop
|
|
sq.xyzw vf25, 0(vi02) | nop
|
|
sq.xyzw vf29, 1(vi02) | nop
|
|
sq.xyzw vf30, 2(vi02) | nop
|
|
sq.xyzw vf25, 0(vi01) | nop
|
|
sq.xyzw vf29, 1(vi01) | nop
|
|
sq.xyzw vf30, 2(vi01) | nop
|
|
L3:
|
|
lqi.xyzw vf16, vi03 | nop
|
|
nop | nop
|
|
nop | nop
|
|
nop | nop
|
|
mtir vi04, vf16.x | nop
|
|
mtir vi05, vf16.y | nop
|
|
mtir vi06, vf16.z | nop
|
|
nop | nop
|
|
lq.xyzw vf17, 4(vi04) | nop
|
|
lq.xyzw vf18, 4(vi05) | nop
|
|
lq.xyzw vf19, 4(vi06) | nop
|
|
nop | mulaw.xyzw ACC, vf09, vf00
|
|
move.xyzw vf15, vf17 | maddax.xyzw ACC, vf06, vf17
|
|
nop | madday.xyzw ACC, vf07, vf17
|
|
nop | maddz.xyzw vf17, vf08, vf17
|
|
nop | mulaw.xyzw ACC, vf09, vf00
|
|
nop | sub.xyzw vf29, vf18, vf15
|
|
nop | sub.xyzw vf30, vf19, vf15
|
|
div Q, vf12.x, vf17.w | maddax.xyzw ACC, vf06, vf18
|
|
nop | mul.xyzw vf21, vf17, vf02
|
|
nop | madday.xyzw ACC, vf07, vf18
|
|
nop | maddz.xyzw vf18, vf08, vf18
|
|
nop | mulaw.xyzw ACC, vf09, vf00
|
|
nop | maddax.xyzw ACC, vf06, vf19
|
|
nop | madday.xyzw ACC, vf07, vf19
|
|
div Q, vf12.x, vf18.w | mul.xyz vf17, vf17, Q
|
|
nop | maddz.xyzw vf19, vf08, vf19
|
|
nop | mul.xyzw vf22, vf18, vf02
|
|
nop | opmula.xyz ACC, vf29, vf30
|
|
nop | opmsub.xyz vf29, vf30, vf29
|
|
nop | add.xy vf25, vf17, vf03
|
|
nop | add.xyzw vf17, vf17, vf05
|
|
div Q, vf12.x, vf19.w | mul.xyz vf18, vf18, Q
|
|
nop | mul.xyzw vf23, vf19, vf02
|
|
nop | mul.xyz vf29, vf29, vf15
|
|
nop | mul.xy vf25, vf25, vf04
|
|
nop | mini.xyzw vf10, vf10, vf17
|
|
nop | max.xyzw vf11, vf11, vf17
|
|
nop | ftoi4.xyzw vf17, vf17
|
|
nop | add.xy vf26, vf18, vf03
|
|
nop | add.xyzw vf18, vf18, vf05
|
|
fcset 0x0 | addy.x vf29, vf29, vf29
|
|
nop | mul.xyz vf19, vf19, Q
|
|
sq.xyzw vf25, 4(vi02) | mini.xyzw vf10, vf10, vf18
|
|
sq.xyzw vf17, 5(vi02) | max.xyzw vf11, vf11, vf18
|
|
nop | clipw.xyz vf21, vf21
|
|
nop | mul.xy vf26, vf26, vf04
|
|
nop | addz.x vf29, vf29, vf29
|
|
nop | ftoi4.xyzw vf18, vf18
|
|
nop | add.xy vf27, vf19, vf03
|
|
sq.xyzw vf26, 6(vi02) | add.xyzw vf19, vf19, vf05
|
|
fsand vi01, 0x2 | clipw.xyz vf22, vf22
|
|
sq.xyzw vf18, 7(vi02) | clipw.xyz vf23, vf23
|
|
ibeq vi00, vi01, L4 | mul.xy vf27, vf27, vf04
|
|
nop | mini.xyzw vf10, vf10, vf19
|
|
b L5 | nop
|
|
lq.xyzw vf31, 887(vi00) | max.xyzw vf11, vf11, vf19
|
|
L4:
|
|
lq.xyzw vf31, 886(vi00) | max.xyzw vf11, vf11, vf19
|
|
L5:
|
|
fcand vi01, 0x3ffff | ftoi4.xyzw vf19, vf19
|
|
ibne vi00, vi01, L11 | nop
|
|
iaddi vi08, vi08, -0x1 | nop
|
|
sq.xyzw vf27, 8(vi02) | nop
|
|
sq.xyzw vf31, 3(vi02) | nop
|
|
sq.xyzw vf19, 9(vi02) | nop
|
|
xgkick vi02 | nop
|
|
mtir vi02, vf01.y | nop
|
|
mr32.xyzw vf01, vf01 | nop
|
|
L6:
|
|
ibgtz vi08, L3 | nop
|
|
nop | nop
|
|
iaddiu vi03, vi00, 0x158 | nop
|
|
ilwr.x vi08, vi03 | nop
|
|
iaddi vi03, vi03, 0x1 | nop
|
|
L7:
|
|
lqi.xyzw vf16, vi03 | nop
|
|
nop | nop
|
|
nop | nop
|
|
nop | nop
|
|
mtir vi04, vf16.x | nop
|
|
mtir vi05, vf16.y | nop
|
|
mtir vi06, vf16.z | nop
|
|
nop | nop
|
|
lq.xyzw vf17, 174(vi04) | nop
|
|
lq.xyzw vf18, 174(vi06) | nop
|
|
lq.xyzw vf19, 174(vi05) | nop
|
|
nop | mulaw.xyzw ACC, vf09, vf00
|
|
move.xyzw vf15, vf17 | maddax.xyzw ACC, vf06, vf17
|
|
nop | madday.xyzw ACC, vf07, vf17
|
|
nop | maddz.xyzw vf17, vf08, vf17
|
|
nop | mulaw.xyzw ACC, vf09, vf00
|
|
nop | sub.xyzw vf29, vf18, vf15
|
|
nop | sub.xyzw vf30, vf19, vf15
|
|
div Q, vf12.x, vf17.w | maddax.xyzw ACC, vf06, vf18
|
|
nop | mul.xyzw vf21, vf17, vf02
|
|
nop | madday.xyzw ACC, vf07, vf18
|
|
nop | maddz.xyzw vf18, vf08, vf18
|
|
nop | mulaw.xyzw ACC, vf09, vf00
|
|
nop | maddax.xyzw ACC, vf06, vf19
|
|
nop | madday.xyzw ACC, vf07, vf19
|
|
div Q, vf12.x, vf18.w | mul.xyz vf17, vf17, Q
|
|
nop | maddz.xyzw vf19, vf08, vf19
|
|
nop | mul.xyzw vf22, vf18, vf02
|
|
nop | opmula.xyz ACC, vf29, vf30
|
|
nop | opmsub.xyz vf29, vf30, vf29
|
|
nop | add.xy vf25, vf17, vf03
|
|
nop | add.xyzw vf17, vf17, vf05
|
|
div Q, vf12.x, vf19.w | mul.xyz vf18, vf18, Q
|
|
nop | mul.xyzw vf23, vf19, vf02
|
|
nop | mul.xyz vf29, vf29, vf15
|
|
nop | mul.xy vf25, vf25, vf04
|
|
nop | mini.xyzw vf10, vf10, vf17
|
|
nop | max.xyzw vf11, vf11, vf17
|
|
nop | ftoi4.xyzw vf17, vf17
|
|
nop | add.xy vf26, vf18, vf03
|
|
nop | add.xyzw vf18, vf18, vf05
|
|
fcset 0x0 | addy.x vf29, vf29, vf29
|
|
nop | mul.xyz vf19, vf19, Q
|
|
sq.xyzw vf25, 4(vi02) | mini.xyzw vf10, vf10, vf18
|
|
sq.xyzw vf17, 5(vi02) | max.xyzw vf11, vf11, vf18
|
|
nop | clipw.xyz vf21, vf21
|
|
nop | mul.xy vf26, vf26, vf04
|
|
iaddi vi08, vi08, -0x1 | addz.x vf29, vf29, vf29
|
|
nop | ftoi4.xyzw vf18, vf18
|
|
nop | add.xy vf27, vf19, vf03
|
|
sq.xyzw vf26, 6(vi02) | add.xyzw vf19, vf19, vf05
|
|
fsand vi01, 0x2 | clipw.xyz vf22, vf22
|
|
sq.xyzw vf18, 7(vi02) | clipw.xyz vf23, vf23
|
|
ibeq vi00, vi01, L8 | mul.xy vf27, vf27, vf04
|
|
nop | mini.xyzw vf10, vf10, vf19
|
|
b L9 | nop
|
|
lq.xyzw vf31, 887(vi00) | max.xyzw vf11, vf11, vf19
|
|
L8:
|
|
lq.xyzw vf31, 886(vi00) | max.xyzw vf11, vf11, vf19
|
|
L9:
|
|
fcand vi01, 0x3ffff | ftoi4.xyzw vf19, vf19
|
|
ibne vi00, vi01, L12 | nop
|
|
sq.xyzw vf27, 8(vi02) | nop
|
|
sq.xyzw vf31, 3(vi02) | nop
|
|
sq.xyzw vf19, 9(vi02) | nop
|
|
xgkick vi02 | nop
|
|
mtir vi02, vf01.y | nop
|
|
mr32.xyzw vf01, vf01 | nop
|
|
L10:
|
|
ibgtz vi08, L7 | nop
|
|
nop | nop
|
|
nop | nop :e
|
|
nop | nop
|
|
L11:
|
|
sq.xyzw vf21, 1000(vi00) | nop
|
|
sq.xyzw vf22, 1003(vi00) | nop
|
|
sq.xyzw vf23, 1006(vi00) | nop
|
|
sq.xyzw vf31, 942(vi00) | nop
|
|
mfir.x vf29, vi02 | nop
|
|
mfir.y vf29, vi03 | nop
|
|
mfir.z vf29, vi07 | nop
|
|
bal vi15, L36 | nop
|
|
mfir.w vf29, vi08 | nop
|
|
mtir vi08, vf29.w | nop
|
|
mtir vi03, vf29.y | nop
|
|
mtir vi07, vf29.z | nop
|
|
b L6 | nop
|
|
mtir vi02, vf29.x | nop
|
|
L12:
|
|
sq.xyzw vf21, 1000(vi00) | nop
|
|
sq.xyzw vf22, 1003(vi00) | nop
|
|
sq.xyzw vf23, 1006(vi00) | nop
|
|
sq.xyzw vf31, 942(vi00) | nop
|
|
mfir.x vf29, vi02 | nop
|
|
mfir.y vf29, vi03 | nop
|
|
mfir.z vf29, vi07 | nop
|
|
bal vi15, L36 | nop
|
|
mfir.w vf29, vi08 | nop
|
|
mtir vi08, vf29.w | nop
|
|
mtir vi03, vf29.y | nop
|
|
mtir vi07, vf29.z | nop
|
|
b L10 | nop
|
|
mtir vi02, vf29.x | nop
|
|
L13:
|
|
iaddiu vi03, vi00, 0x258 | nop
|
|
ilwr.x vi08, vi03 | nop
|
|
mtir vi02, vf01.x | nop
|
|
iaddi vi03, vi03, 0x1 | addw.z vf25, vf00, vf00
|
|
lq.xyzw vf25, 888(vi00) | addw.z vf26, vf00, vf00
|
|
lq.xyzw vf29, 889(vi00) | addw.z vf27, vf00, vf00
|
|
lq.xyzw vf30, 892(vi00) | nop
|
|
lq.xyzw vf06, 0(vi00) | nop
|
|
lq.xyzw vf07, 1(vi00) | nop
|
|
lq.xyzw vf08, 2(vi00) | nop
|
|
lq.xyzw vf09, 3(vi00) | nop
|
|
mtir vi01, vf01.y | nop
|
|
sq.xyzw vf25, 0(vi02) | nop
|
|
sq.xyzw vf29, 1(vi02) | nop
|
|
sq.xyzw vf30, 2(vi02) | nop
|
|
sq.xyzw vf25, 0(vi01) | nop
|
|
sq.xyzw vf29, 1(vi01) | nop
|
|
sq.xyzw vf30, 2(vi01) | nop
|
|
L14:
|
|
lqi.xyzw vf16, vi03 | nop
|
|
nop | nop
|
|
nop | nop
|
|
nop | nop
|
|
mtir vi06, vf16.z | nop
|
|
mtir vi04, vf16.x | nop
|
|
mtir vi05, vf16.y | nop
|
|
ibeq vi00, vi06, L15 | nop
|
|
nop | nop
|
|
lq.xyzw vf17, 4(vi04) | nop
|
|
lq.xyzw vf18, 4(vi05) | nop
|
|
lq.xyzw vf19, 174(vi05) | nop
|
|
b L16 | nop
|
|
lq.xyzw vf20, 174(vi04) | nop
|
|
L15:
|
|
lq.xyzw vf17, 4(vi05) | nop
|
|
lq.xyzw vf18, 4(vi04) | nop
|
|
lq.xyzw vf19, 174(vi04) | nop
|
|
lq.xyzw vf20, 174(vi05) | nop
|
|
L16:
|
|
move.xyzw vf15, vf17 | mulaw.xyzw ACC, vf09, vf00
|
|
nop | maddax.xyzw ACC, vf06, vf17
|
|
nop | madday.xyzw ACC, vf07, vf17
|
|
nop | maddz.xyzw vf17, vf08, vf17
|
|
nop | mulaw.xyzw ACC, vf09, vf00
|
|
nop | sub.xyzw vf29, vf18, vf15
|
|
nop | sub.xyzw vf30, vf19, vf15
|
|
div Q, vf12.x, vf17.w | maddax.xyzw ACC, vf06, vf18
|
|
nop | mul.xyzw vf21, vf17, vf02
|
|
nop | madday.xyzw ACC, vf07, vf18
|
|
nop | maddz.xyzw vf18, vf08, vf18
|
|
nop | mulaw.xyzw ACC, vf09, vf00
|
|
nop | maddax.xyzw ACC, vf06, vf19
|
|
nop | madday.xyzw ACC, vf07, vf19
|
|
div Q, vf12.x, vf18.w | mul.xyz vf17, vf17, Q
|
|
nop | maddz.xyzw vf19, vf08, vf19
|
|
nop | mulaw.xyzw ACC, vf09, vf00
|
|
nop | maddax.xyzw ACC, vf06, vf20
|
|
nop | madday.xyzw ACC, vf07, vf20
|
|
nop | maddz.xyzw vf20, vf08, vf20
|
|
nop | mul.xyzw vf22, vf18, vf02
|
|
div Q, vf12.x, vf19.w | mul.xyz vf18, vf18, Q
|
|
nop | add.xy vf25, vf17, vf03
|
|
nop | add.xyzw vf17, vf17, vf05
|
|
nop | opmula.xyz ACC, vf29, vf30
|
|
nop | opmsub.xyz vf29, vf30, vf29
|
|
nop | mul.xyzw vf23, vf19, vf02
|
|
nop | mul.xyz vf29, vf29, vf15
|
|
div Q, vf12.x, vf20.w | mul.xyz vf19, vf19, Q
|
|
nop | mul.xyzw vf24, vf20, vf02
|
|
nop | mul.xy vf25, vf25, vf04
|
|
nop | mini.xyzw vf10, vf10, vf17
|
|
nop | max.xyzw vf11, vf11, vf17
|
|
nop | ftoi4.xyzw vf17, vf17
|
|
nop | add.xy vf26, vf18, vf03
|
|
nop | mul.xyz vf20, vf20, Q
|
|
nop | add.xyzw vf18, vf18, vf05
|
|
nop | addy.x vf29, vf29, vf29
|
|
sq.xyzw vf25, 4(vi02) | mini.xyzw vf10, vf10, vf18
|
|
sq.xyzw vf17, 5(vi02) | max.xyzw vf11, vf11, vf18
|
|
nop | clipw.xyz vf21, vf21
|
|
nop | mul.xy vf26, vf26, vf04
|
|
nop | addz.x vf29, vf29, vf29
|
|
nop | ftoi4.xyzw vf18, vf18
|
|
nop | add.xy vf27, vf19, vf03
|
|
sq.xyzw vf26, 6(vi02) | add.xyzw vf19, vf19, vf05
|
|
fsand vi01, 0x2 | clipw.xyz vf22, vf22
|
|
sq.xyzw vf18, 7(vi02) | clipw.xyz vf23, vf23
|
|
nop | clipw.xyz vf24, vf24
|
|
nop | add.xy vf28, vf20, vf03
|
|
nop | add.xyzw vf20, vf20, vf05
|
|
nop | mul.xy vf27, vf27, vf04
|
|
nop | mini.xyzw vf10, vf10, vf19
|
|
nop | max.xyzw vf11, vf11, vf19
|
|
ibeq vi00, vi01, L17 | mul.xy vf28, vf28, vf04
|
|
nop | mini.xyzw vf10, vf10, vf20
|
|
b L18 | nop
|
|
lq.xyzw vf31, 887(vi00) | max.xyzw vf11, vf11, vf20
|
|
L17:
|
|
lq.xyzw vf31, 886(vi00) | max.xyzw vf11, vf11, vf20
|
|
L18:
|
|
fcand vi01, 0xffffff | ftoi4.xyzw vf19, vf19
|
|
ibne vi00, vi01, L20 | max.xyzw vf11, vf11, vf20
|
|
iaddi vi08, vi08, -0x1 | nop
|
|
sq.xyzw vf27, 8(vi02) | ftoi4.xyzw vf20, vf20
|
|
sq.xyzw vf31, 3(vi02) | nop
|
|
sq.xyzw vf19, 9(vi02) | nop
|
|
sq.xyzw vf28, 10(vi02) | nop
|
|
sq.xyzw vf20, 11(vi02) | nop
|
|
xgkick vi02 | nop
|
|
mtir vi02, vf01.y | nop
|
|
mr32.xyzw vf01, vf01 | nop
|
|
L19:
|
|
ibgtz vi08, L14 | nop
|
|
nop | nop
|
|
nop | nop :e
|
|
nop | nop
|
|
L20:
|
|
sq.xyzw vf21, 1000(vi00) | nop
|
|
sq.xyzw vf22, 1003(vi00) | nop
|
|
sq.xyzw vf23, 1006(vi00) | nop
|
|
sq.xyzw vf24, 1009(vi00) | nop
|
|
sq.xyzw vf31, 942(vi00) | nop
|
|
mfir.x vf29, vi02 | nop
|
|
mfir.y vf29, vi03 | nop
|
|
mfir.z vf29, vi07 | nop
|
|
bal vi15, L37 | nop
|
|
mfir.w vf29, vi08 | nop
|
|
mtir vi08, vf29.w | nop
|
|
mtir vi03, vf29.y | nop
|
|
mtir vi07, vf29.z | nop
|
|
b L19 | nop
|
|
mtir vi02, vf29.x | nop
|
|
L21:
|
|
iaddiu vi03, vi00, 0x158 | nop
|
|
ilwr.x vi08, vi03 | nop
|
|
mtir vi02, vf01.x | nop
|
|
iaddi vi03, vi03, 0x1 | addw.z vf25, vf00, vf00
|
|
lq.xyzw vf25, 888(vi00) | addw.z vf26, vf00, vf00
|
|
lq.xyzw vf29, 889(vi00) | addw.z vf27, vf00, vf00
|
|
lq.xyzw vf30, 891(vi00) | addw.z vf28, vf00, vf00
|
|
lq.xyzw vf06, 0(vi00) | nop
|
|
lq.xyzw vf07, 1(vi00) | nop
|
|
lq.xyzw vf08, 2(vi00) | nop
|
|
lq.xyzw vf09, 3(vi00) | nop
|
|
mtir vi01, vf01.y | nop
|
|
sq.xyzw vf25, 0(vi02) | nop
|
|
sq.xyzw vf29, 1(vi02) | nop
|
|
sq.xyzw vf30, 2(vi02) | nop
|
|
sq.xyzw vf25, 0(vi01) | nop
|
|
sq.xyzw vf29, 1(vi01) | nop
|
|
sq.xyzw vf30, 2(vi01) | nop
|
|
L22:
|
|
lqi.xyzw vf16, vi03 | nop
|
|
nop | nop
|
|
nop | nop
|
|
nop | nop
|
|
mtir vi01, vf16.w | nop
|
|
mtir vi04, vf16.x | nop
|
|
mtir vi05, vf16.y | nop
|
|
mtir vi06, vf16.z | nop
|
|
ibeq vi00, vi01, L23 | nop
|
|
lq.xyzw vf17, 4(vi04) | nop
|
|
lq.xyzw vf18, 4(vi05) | nop
|
|
b L24 | nop
|
|
lq.xyzw vf19, 4(vi06) | nop
|
|
L23:
|
|
lq.xyzw vf19, 4(vi05) | nop
|
|
lq.xyzw vf18, 4(vi06) | nop
|
|
L24:
|
|
nop | mulaw.xyzw ACC, vf09, vf00
|
|
move.xyzw vf15, vf17 | maddax.xyzw ACC, vf06, vf17
|
|
nop | madday.xyzw ACC, vf07, vf17
|
|
nop | sub.xyzw vf29, vf18, vf17
|
|
nop | sub.xyzw vf30, vf19, vf17
|
|
nop | maddz.xyzw vf17, vf08, vf17
|
|
nop | mulaw.xyzw ACC, vf09, vf00
|
|
div Q, vf12.x, vf17.w | maddax.xyzw ACC, vf06, vf18
|
|
nop | madday.xyzw ACC, vf07, vf18
|
|
nop | mul.xyzw vf21, vf17, vf02
|
|
nop | maddz.xyzw vf18, vf08, vf18
|
|
nop | mulaw.xyzw ACC, vf09, vf00
|
|
nop | maddax.xyzw ACC, vf06, vf19
|
|
nop | madday.xyzw ACC, vf07, vf19
|
|
div Q, vf12.x, vf18.w | mul.xyz vf17, vf17, Q
|
|
nop | maddz.xyzw vf19, vf08, vf19
|
|
nop | mul.xyzw vf22, vf18, vf02
|
|
nop | opmula.xyz ACC, vf29, vf30
|
|
nop | opmsub.xyz vf29, vf30, vf29
|
|
nop | add.xy vf25, vf17, vf03
|
|
nop | add.xyzw vf17, vf17, vf05
|
|
div Q, vf12.x, vf19.w | mul.xyz vf18, vf18, Q
|
|
nop | mul.xyzw vf23, vf19, vf02
|
|
nop | mul.xyz vf29, vf29, vf15
|
|
nop | mul.xy vf25, vf25, vf04
|
|
nop | mini.xyzw vf10, vf10, vf17
|
|
nop | max.xyzw vf11, vf11, vf17
|
|
nop | ftoi4.xyzw vf17, vf17
|
|
nop | add.xy vf26, vf18, vf03
|
|
nop | add.xyzw vf18, vf18, vf05
|
|
fcset 0x0 | addy.x vf29, vf29, vf29
|
|
nop | mul.xyz vf19, vf19, Q
|
|
sq.xyzw vf25, 4(vi02) | mini.xyzw vf10, vf10, vf18
|
|
sq.xyzw vf17, 5(vi02) | max.xyzw vf11, vf11, vf18
|
|
nop | clipw.xyz vf21, vf21
|
|
nop | mul.xy vf26, vf26, vf04
|
|
nop | addz.x vf29, vf29, vf29
|
|
nop | ftoi4.xyzw vf18, vf18
|
|
nop | add.xy vf27, vf19, vf03
|
|
sq.xyzw vf26, 6(vi02) | add.xyzw vf19, vf19, vf05
|
|
fsand vi01, 0x2 | clipw.xyz vf22, vf22
|
|
sq.xyzw vf18, 7(vi02) | clipw.xyz vf23, vf23
|
|
ibeq vi00, vi01, L25 | mul.xy vf27, vf27, vf04
|
|
nop | mini.xyzw vf10, vf10, vf19
|
|
b L26 | nop
|
|
lq.xyzw vf31, 887(vi00) | max.xyzw vf11, vf11, vf19
|
|
L25:
|
|
lq.xyzw vf31, 886(vi00) | max.xyzw vf11, vf11, vf19
|
|
L26:
|
|
fcand vi01, 0x3ffff | ftoi4.xyzw vf19, vf19
|
|
ibne vi00, vi01, L34 | nop
|
|
iaddi vi08, vi08, -0x1 | nop
|
|
sq.xyzw vf27, 8(vi02) | nop
|
|
sq.xyzw vf31, 3(vi02) | nop
|
|
sq.xyzw vf19, 9(vi02) | nop
|
|
xgkick vi02 | nop
|
|
mtir vi02, vf01.y | nop
|
|
mr32.xyzw vf01, vf01 | nop
|
|
L27:
|
|
ibgtz vi08, L22 | nop
|
|
nop | nop
|
|
iaddiu vi03, vi00, 0x158 | nop
|
|
ilwr.x vi08, vi03 | nop
|
|
iaddi vi03, vi03, 0x1 | nop
|
|
L28:
|
|
lqi.xyzw vf16, vi03 | nop
|
|
nop | nop
|
|
nop | nop
|
|
nop | nop
|
|
mtir vi01, vf16.w | nop
|
|
mtir vi04, vf16.x | nop
|
|
mtir vi05, vf16.y | nop
|
|
mtir vi06, vf16.z | nop
|
|
ibne vi00, vi01, L29 | nop
|
|
lq.xyzw vf17, 174(vi04) | nop
|
|
lq.xyzw vf18, 174(vi05) | nop
|
|
b L30 | nop
|
|
lq.xyzw vf19, 174(vi06) | nop
|
|
L29:
|
|
lq.xyzw vf19, 174(vi05) | nop
|
|
lq.xyzw vf18, 174(vi06) | nop
|
|
L30:
|
|
nop | mulaw.xyzw ACC, vf09, vf00
|
|
move.xyzw vf15, vf17 | maddax.xyzw ACC, vf06, vf17
|
|
nop | madday.xyzw ACC, vf07, vf17
|
|
nop | maddz.xyzw vf17, vf08, vf17
|
|
nop | mulaw.xyzw ACC, vf09, vf00
|
|
nop | sub.xyzw vf29, vf18, vf15
|
|
nop | sub.xyzw vf30, vf19, vf15
|
|
div Q, vf12.x, vf17.w | maddax.xyzw ACC, vf06, vf18
|
|
nop | mul.xyzw vf21, vf17, vf02
|
|
nop | madday.xyzw ACC, vf07, vf18
|
|
nop | maddz.xyzw vf18, vf08, vf18
|
|
nop | mulaw.xyzw ACC, vf09, vf00
|
|
nop | maddax.xyzw ACC, vf06, vf19
|
|
nop | madday.xyzw ACC, vf07, vf19
|
|
div Q, vf12.x, vf18.w | mul.xyz vf17, vf17, Q
|
|
nop | maddz.xyzw vf19, vf08, vf19
|
|
nop | mul.xyzw vf22, vf18, vf02
|
|
nop | opmula.xyz ACC, vf29, vf30
|
|
nop | opmsub.xyz vf29, vf30, vf29
|
|
nop | add.xy vf25, vf17, vf03
|
|
nop | add.xyzw vf17, vf17, vf05
|
|
div Q, vf12.x, vf19.w | mul.xyz vf18, vf18, Q
|
|
nop | mul.xyzw vf23, vf19, vf02
|
|
nop | mul.xyz vf29, vf29, vf15
|
|
nop | mul.xy vf25, vf25, vf04
|
|
nop | mini.xyzw vf10, vf10, vf17
|
|
nop | max.xyzw vf11, vf11, vf17
|
|
nop | ftoi4.xyzw vf17, vf17
|
|
nop | add.xy vf26, vf18, vf03
|
|
nop | add.xyzw vf18, vf18, vf05
|
|
fcset 0x0 | addy.x vf29, vf29, vf29
|
|
nop | mul.xyz vf19, vf19, Q
|
|
sq.xyzw vf25, 4(vi02) | mini.xyzw vf10, vf10, vf18
|
|
sq.xyzw vf17, 5(vi02) | max.xyzw vf11, vf11, vf18
|
|
nop | clipw.xyz vf21, vf21
|
|
nop | mul.xy vf26, vf26, vf04
|
|
nop | addz.x vf29, vf29, vf29
|
|
nop | ftoi4.xyzw vf18, vf18
|
|
nop | add.xy vf27, vf19, vf03
|
|
sq.xyzw vf26, 6(vi02) | add.xyzw vf19, vf19, vf05
|
|
fsand vi01, 0x2 | clipw.xyz vf22, vf22
|
|
sq.xyzw vf18, 7(vi02) | clipw.xyz vf23, vf23
|
|
ibeq vi00, vi01, L31 | mul.xy vf27, vf27, vf04
|
|
nop | mini.xyzw vf10, vf10, vf19
|
|
b L32 | nop
|
|
lq.xyzw vf31, 887(vi00) | max.xyzw vf11, vf11, vf19
|
|
L31:
|
|
lq.xyzw vf31, 886(vi00) | max.xyzw vf11, vf11, vf19
|
|
L32:
|
|
fcand vi01, 0x3ffff | ftoi4.xyzw vf19, vf19
|
|
ibne vi00, vi01, L35 | nop
|
|
iaddi vi08, vi08, -0x1 | nop
|
|
sq.xyzw vf27, 8(vi02) | nop
|
|
sq.xyzw vf31, 3(vi02) | nop
|
|
sq.xyzw vf19, 9(vi02) | nop
|
|
xgkick vi02 | nop
|
|
mtir vi02, vf01.y | nop
|
|
mr32.xyzw vf01, vf01 | nop
|
|
L33:
|
|
ibgtz vi08, L28 | nop
|
|
nop | nop
|
|
nop | nop :e
|
|
nop | nop
|
|
L34:
|
|
sq.xyzw vf21, 1000(vi00) | nop
|
|
sq.xyzw vf22, 1003(vi00) | nop
|
|
sq.xyzw vf23, 1006(vi00) | nop
|
|
sq.xyzw vf31, 942(vi00) | nop
|
|
mfir.x vf29, vi02 | nop
|
|
mfir.y vf29, vi03 | nop
|
|
mfir.z vf29, vi07 | nop
|
|
bal vi15, L36 | nop
|
|
mfir.w vf29, vi08 | nop
|
|
mtir vi08, vf29.w | nop
|
|
mtir vi03, vf29.y | nop
|
|
mtir vi07, vf29.z | nop
|
|
b L27 | nop
|
|
mtir vi02, vf29.x | nop
|
|
L35:
|
|
sq.xyzw vf21, 1000(vi00) | nop
|
|
sq.xyzw vf22, 1003(vi00) | nop
|
|
sq.xyzw vf23, 1006(vi00) | nop
|
|
sq.xyzw vf31, 942(vi00) | nop
|
|
mfir.x vf29, vi02 | nop
|
|
mfir.y vf29, vi03 | nop
|
|
mfir.z vf29, vi07 | nop
|
|
bal vi15, L36 | nop
|
|
mfir.w vf29, vi08 | nop
|
|
mtir vi08, vf29.w | nop
|
|
mtir vi03, vf29.y | nop
|
|
mtir vi07, vf29.z | nop
|
|
b L33 | nop
|
|
mtir vi02, vf29.x | nop
|
|
L36:
|
|
sq.xyzw vf00, 893(vi00) | nop
|
|
sq.xyzw vf00, 900(vi00) | nop
|
|
sq.xyzw vf00, 907(vi00) | nop
|
|
sq.xyzw vf00, 914(vi00) | nop
|
|
sq.xyzw vf00, 921(vi00) | nop
|
|
sq.xyzw vf00, 928(vi00) | nop
|
|
iaddiu vi01, vi00, 0x2d4 | nop
|
|
isw.z vi01, 893(vi00) | nop
|
|
iaddiu vi01, vi00, 0x2d6 | nop
|
|
isw.z vi01, 900(vi00) | nop
|
|
iaddiu vi01, vi00, 0x2d8 | nop
|
|
isw.z vi01, 907(vi00) | nop
|
|
iaddiu vi01, vi00, 0x2da | nop
|
|
isw.z vi01, 914(vi00) | nop
|
|
iaddiu vi01, vi00, 0x2dc | nop
|
|
isw.z vi01, 921(vi00) | nop
|
|
iaddiu vi01, vi00, 0x2de | nop
|
|
isw.z vi01, 928(vi00) | nop
|
|
iaddiu vi03, vi00, 0x3b0 | nop
|
|
iaddiu vi04, vi00, 0x3af | nop
|
|
mfir.x vf31, vi15 | nop
|
|
iaddi vi05, vi00, 0x0 | nop
|
|
bal vi15, L38 | nop
|
|
iaddiu vi07, vi00, 0x3e8 | nop
|
|
bal vi15, L38 | nop
|
|
iaddiu vi07, vi00, 0x3eb | nop
|
|
bal vi15, L38 | nop
|
|
iaddiu vi07, vi00, 0x3ee | nop
|
|
b L47 | nop
|
|
nop | nop
|
|
L37:
|
|
sq.xyzw vf00, 893(vi00) | nop
|
|
sq.xyzw vf00, 900(vi00) | nop
|
|
sq.xyzw vf00, 907(vi00) | nop
|
|
sq.xyzw vf00, 914(vi00) | nop
|
|
sq.xyzw vf00, 921(vi00) | nop
|
|
sq.xyzw vf00, 928(vi00) | nop
|
|
iaddiu vi01, vi00, 0x2d4 | nop
|
|
isw.z vi01, 893(vi00) | nop
|
|
iaddiu vi01, vi00, 0x2d6 | nop
|
|
isw.z vi01, 900(vi00) | nop
|
|
iaddiu vi01, vi00, 0x2d8 | nop
|
|
isw.z vi01, 907(vi00) | nop
|
|
iaddiu vi01, vi00, 0x2da | nop
|
|
isw.z vi01, 914(vi00) | nop
|
|
iaddiu vi01, vi00, 0x2dc | nop
|
|
isw.z vi01, 921(vi00) | nop
|
|
iaddiu vi01, vi00, 0x2de | nop
|
|
isw.z vi01, 928(vi00) | nop
|
|
iaddiu vi03, vi00, 0x3b0 | nop
|
|
iaddiu vi04, vi00, 0x3af | nop
|
|
mfir.x vf31, vi15 | nop
|
|
iaddi vi05, vi00, 0x0 | nop
|
|
bal vi15, L38 | nop
|
|
iaddiu vi07, vi00, 0x3e8 | nop
|
|
bal vi15, L38 | nop
|
|
iaddiu vi07, vi00, 0x3eb | nop
|
|
bal vi15, L38 | nop
|
|
iaddiu vi07, vi00, 0x3ee | nop
|
|
bal vi15, L38 | nop
|
|
iaddiu vi07, vi00, 0x3f1 | nop
|
|
b L47 | nop
|
|
nop | nop
|
|
L38:
|
|
iaddiu vi09, vi00, 0x37d | nop
|
|
L39:
|
|
iaddi vi10, vi00, 0x0 | nop
|
|
L40:
|
|
isubiu vi01, vi09, 0x3a7 | nop
|
|
ilwr.y vi08, vi09 | nop
|
|
ibgez vi01, L44 | nop
|
|
ilwr.z vi06, vi09 | nop
|
|
lq.xyzw vf15, 0(vi07) | nop
|
|
lq.xyzw vf14, 0(vi08) | nop
|
|
ibne vi00, vi08, L41 | nop
|
|
iswr.y vi07, vi09 | nop
|
|
jalr vi11, vi06 | nop
|
|
iswr.x vi07, vi09 | nop
|
|
nop | nop
|
|
nop | nop
|
|
nop | nop
|
|
fsand vi02, 0x2 | nop
|
|
ibne vi00, vi02, L45 | nop
|
|
nop | nop
|
|
b L40 | nop
|
|
iaddi vi09, vi09, 0x7 | nop
|
|
L41:
|
|
jalr vi11, vi06 | nop
|
|
nop | nop
|
|
nop | nop
|
|
nop | nop
|
|
fsand vi01, 0x2 | nop
|
|
fsand vi02, 0x2 | subw.w vf31, vf30, vf31
|
|
ibne vi00, vi01, L43 | nop
|
|
nop | nop
|
|
ibne vi00, vi02, L42 | nop
|
|
div Q, vf30.w, vf31.w | nop
|
|
b L40 | nop
|
|
iaddi vi09, vi09, 0x7 | nop
|
|
L42:
|
|
bal vi11, L52 | nop
|
|
iaddi vi07, vi09, 0x1 | nop
|
|
sq.xyzw vf16, 1(vi09) | nop
|
|
b L40 | nop
|
|
iaddi vi09, vi09, 0x7 | nop
|
|
L43:
|
|
ibne vi00, vi02, L45 | nop
|
|
div Q, vf30.w, vf31.w | nop
|
|
bal vi11, L52 | nop
|
|
nop | nop
|
|
sq.xyzw vf16, 4(vi09) | nop
|
|
iaddi vi09, vi09, 0x7 | nop
|
|
isw.x vi09, 935(vi10) | nop
|
|
isw.y vi07, 935(vi10) | nop
|
|
iaddi vi10, vi10, 0x1 | nop
|
|
b L40 | nop
|
|
iaddi vi07, vi09, -0x3 | nop
|
|
L44:
|
|
lq.xyzw vf14, 0(vi07) | nop
|
|
iaddi vi05, vi05, 0x1 | nop
|
|
div Q, vf00.w, vf14.w | nop
|
|
nop | mul.xyzw vf14, vf14, vf13
|
|
iaddi vi03, vi03, 0x2 | nop
|
|
waitq | subw.w vf14, vf00, vf00
|
|
nop | mul.xyz vf14, vf14, Q
|
|
nop | add.xy vf26, vf14, vf03
|
|
nop | add.xyzw vf14, vf14, vf05
|
|
nop | mul.xy vf26, vf26, vf04
|
|
nop | mini.xyzw vf10, vf10, vf14
|
|
nop | max.xyzw vf11, vf11, vf14
|
|
sq.xyzw vf26, -2(vi03) | ftoi4.xyzw vf14, vf14
|
|
sq.xyzw vf14, -1(vi03) | nop
|
|
L45:
|
|
iblez vi10, L46 | nop
|
|
nop | nop
|
|
ilw.x vi09, 934(vi10) | nop
|
|
ilw.y vi07, 934(vi10) | nop
|
|
b L40 | nop
|
|
iaddi vi10, vi10, -0x1 | nop
|
|
L46:
|
|
jr vi15 | nop
|
|
nop | nop
|
|
L47:
|
|
iaddiu vi09, vi00, 0x37d | nop
|
|
L48:
|
|
ilwr.x vi08, vi09 | nop
|
|
ilwr.y vi07, vi09 | nop
|
|
ilwr.z vi06, vi09 | nop
|
|
nop | nop
|
|
ibeq vi00, vi08, L50 | nop
|
|
lq.xyzw vf14, 0(vi07) | nop
|
|
ibeq vi07, vi08, L50 | nop
|
|
lq.xyzw vf15, 0(vi08) | nop
|
|
jalr vi11, vi06 | nop
|
|
nop | nop
|
|
nop | nop
|
|
nop | nop
|
|
fsand vi01, 0x2 | nop
|
|
fsand vi02, 0x2 | subw.w vf31, vf30, vf31
|
|
ibeq vi02, vi01, L50 | nop
|
|
nop | nop
|
|
ibeq vi00, vi01, L49 | nop
|
|
div Q, vf30.w, vf31.w | nop
|
|
bal vi11, L52 | nop
|
|
nop | nop
|
|
sq.xyzw vf16, 4(vi09) | nop
|
|
iaddi vi07, vi09, 0x4 | nop
|
|
ior vi12, vi09, vi00 | nop
|
|
bal vi15, L39 | nop
|
|
iaddi vi09, vi09, 0x7 | nop
|
|
b L50 | nop
|
|
ior vi09, vi12, vi00 | nop
|
|
L49:
|
|
bal vi11, L52 | nop
|
|
nop | nop
|
|
sq.xyzw vf16, 1(vi09) | nop
|
|
iaddi vi07, vi09, 0x1 | nop
|
|
ior vi12, vi09, vi00 | nop
|
|
bal vi15, L39 | nop
|
|
iaddi vi09, vi09, 0x7 | nop
|
|
ior vi09, vi12, vi00 | nop
|
|
L50:
|
|
isubiu vi01, vi09, 0x3a0 | nop
|
|
iswr.x vi00, vi09 | nop
|
|
iswr.y vi00, vi09 | nop
|
|
ibltz vi01, L48 | nop
|
|
iaddi vi09, vi09, 0x7 | nop
|
|
ibeq vi00, vi05, L51 | nop
|
|
mtir vi15, vf31.x | nop
|
|
iaddiu vi05, vi05, 0x4000 | nop
|
|
iaddiu vi05, vi05, 0x4000 | nop
|
|
iswr.x vi05, vi04 | nop
|
|
iaddiu vi01, vi00, 0x3ac | nop
|
|
xgkick vi01 | nop
|
|
lq.xyzw vf30, 888(vi00) | nop
|
|
lq.xyzw vf31, 890(vi00) | nop
|
|
iaddiu vi01, vi00, 0x3fe | nop
|
|
isubiu vi02, vi00, 0x7fff | nop
|
|
sq.xyzw vf30, 0(vi01) | nop
|
|
iswr.x vi02, vi01 | nop
|
|
sq.xyzw vf31, 1(vi01) | nop
|
|
nop | nop
|
|
xgkick vi01 | nop
|
|
L51:
|
|
nop | nop
|
|
jr vi15 | nop
|
|
nop | nop
|
|
jr vi11 | addx.w vf30, vf14, vf14
|
|
nop | addx.w vf31, vf15, vf15
|
|
jr vi11 | subx.w vf30, vf14, vf14
|
|
nop | subx.w vf31, vf15, vf15
|
|
jr vi11 | addy.w vf30, vf14, vf14
|
|
nop | addy.w vf31, vf15, vf15
|
|
jr vi11 | suby.w vf30, vf14, vf14
|
|
nop | suby.w vf31, vf15, vf15
|
|
jr vi11 | addz.w vf30, vf14, vf14
|
|
nop | addz.w vf31, vf15, vf15
|
|
jr vi11 | subz.w vf30, vf14, vf14
|
|
nop | subz.w vf31, vf15, vf15
|
|
L52:
|
|
nop | sub.xyzw vf16, vf15, vf14
|
|
waitq | mul.xyzw vf16, vf16, Q
|
|
jr vi11 | add.xyzw vf16, vf14, vf16
|
|
nop | nop
|