mirror of
https://github.com/open-goal/jak-project.git
synced 2024-10-20 21:27:52 -04:00
a8342aef31
* temp * temp * wip * more progress on the instance asm * first half of tie extraction, up to dma lists * more tie extraction * first part figured out maybe * bp1 loop seems to work, bp2 loop does not * bp1 and bp2 appear working. sadly ip is needed * ip1 outline, not working ip2 * just kidding, ip2 seems to work * extraction seems to work * basic rendering working * tie fixes * performance optimization of tie renderer * hook up tie to engine * fix more bugs * cleanup and perf improvements * fix tests * ref tests * mm256i for gcc * CLANG * windows * more compile fixes * fix fast time of day * small fixes * fix after merge * clang
105 lines
5.8 KiB
Plaintext
105 lines
5.8 KiB
Plaintext
xtop vi02 | nop
|
|
nop | nop
|
|
ilwr.x vi04, vi02 | nop
|
|
iaddi vi02, vi02, 0x1 | nop
|
|
iaddiu vi03, vi02, 0x90 | nop
|
|
L7:
|
|
ilw.y vi08, 1(vi02) | nop
|
|
lq.xyzw vf25, 900(vi00) | nop
|
|
lq.xyzw vf26, 901(vi00) | nop
|
|
lq.xyzw vf27, 902(vi00) | nop
|
|
lq.xyzw vf28, 903(vi00) | nop
|
|
lq.xyzw vf30, 904(vi08) | nop
|
|
lqi.xyzw vf01, vi02 | nop
|
|
lqi.xyzw vf05, vi02 | nop
|
|
lqi.xyzw vf11, vi02 | nop
|
|
lq.xyzw vf12, 1020(vi00) | mulaw.xyzw ACC, vf28, vf00
|
|
ilw.y vi08, 1(vi02) | maddax.xyzw ACC, vf25, vf01
|
|
nop | madday.xyzw ACC, vf26, vf01
|
|
nop | maddz.xyzw vf02, vf27, vf01
|
|
move.w vf05, vf00 | addw.z vf01, vf00, vf05
|
|
nop | nop
|
|
div Q, vf31.x, vf02.w | muly.z vf05, vf05, vf31
|
|
nop | mul.xyzw vf03, vf02, vf29
|
|
nop | nop
|
|
nop | nop
|
|
nop | mulz.z vf04, vf05, vf05
|
|
lq.xyzw vf14, 1001(vi00) | clipw.xyz vf03, vf03
|
|
iaddi vi06, vi00, 0x1 | adda.xyzw ACC, vf11, vf11
|
|
L8:
|
|
ior vi05, vi15, vi00 | mul.zw vf01, vf01, Q
|
|
lq.xyzw vf06, 998(vi00) | mulz.xyzw vf15, vf05, vf04
|
|
lq.xyzw vf14, 1002(vi00) | mula.xyzw ACC, vf05, vf14
|
|
fmand vi01, vi06 | mul.xyz vf02, vf02, Q
|
|
ibne vi00, vi01, L10 | addz.x vf01, vf00, vf01
|
|
lqi.xyzw vf07, vi03 | mulz.xyzw vf16, vf15, vf04
|
|
lq.xyzw vf14, 1003(vi00) | madda.xyzw ACC, vf15, vf14
|
|
lqi.xyzw vf08, vi03 | add.xyzw vf10, vf02, vf30
|
|
lqi.xyzw vf09, vi03 | mulw.x vf01, vf01, vf01
|
|
sqi.xyzw vf06, vi05 | mulz.xyzw vf15, vf16, vf04
|
|
lq.xyzw vf14, 1004(vi00) | madda.xyzw ACC, vf16, vf14
|
|
sqi.xyzw vf07, vi05 | maxx.w vf10, vf10, vf12
|
|
sqi.xyzw vf08, vi05 | maxz.zw vf01, vf01, vf31
|
|
sqi.xyzw vf09, vi05 | mulz.xyzw vf16, vf15, vf04
|
|
lq.xyzw vf14, 1005(vi00) | madda.xyzw ACC, vf15, vf14
|
|
lqi.xyzw vf06, vi03 | mulw.x vf01, vf01, vf31
|
|
lqi.xyzw vf07, vi03 | miniy.w vf10, vf10, vf12
|
|
lq.xyzw vf08, 1000(vi00) | nop
|
|
ilw.x vi07, -2(vi02) | madd.xyzw vf05, vf16, vf14
|
|
lq.xyzw vf30, 904(vi08) | nop
|
|
lqi.xyzw vf23, vi02 | miniw.x vf01, vf01, vf00
|
|
lqi.xyzw vf24, vi02 | mulx.w vf11, vf11, vf01
|
|
fcand vi01, 0x3f | mulaw.xyzw ACC, vf28, vf00
|
|
lq.xyzw vf17, 1006(vi00) | maddax.xyzw ACC, vf25, vf23
|
|
lq.xyzw vf18, 1007(vi00) | madday.xyzw ACC, vf26, vf23
|
|
lq.xyzw vf19, 980(vi07) | ftoi0.xyzw vf11, vf11
|
|
lq.xyzw vf20, 981(vi07) | maddz.xyzw vf02, vf27, vf23
|
|
lq.xyzw vf21, 982(vi07) | mulaw.xyzw ACC, vf17, vf05
|
|
lq.xyzw vf22, 983(vi07) | msubz.xyzw vf12, vf18, vf05
|
|
sq.xyzw vf11, 3(vi05) | mulaz.xyzw ACC, vf17, vf05
|
|
lqi.xyzw vf11, vi02 | maddw.xyzw vf13, vf18, vf05
|
|
move.w vf24, vf00 | addw.z vf23, vf00, vf24
|
|
div Q, vf31.x, vf02.w | mulw.xyzw vf12, vf12, vf01
|
|
ibne vi00, vi01, L9 | muly.z vf24, vf24, vf31
|
|
ilw.y vi08, 1(vi02) | mulz.xyzw vf13, vf13, vf01
|
|
sqi.xyzw vf06, vi05 | mul.xyzw vf03, vf02, vf29
|
|
sqi.xyzw vf07, vi05 | mulaw.xyzw ACC, vf10, vf00
|
|
sqi.xyzw vf08, vi05 | maddax.xyzw ACC, vf12, vf19
|
|
lq.xyzw vf06, 988(vi00) | maddy.xyzw vf19, vf13, vf19
|
|
lq.xyzw vf07, 989(vi00) | mulaw.xyzw ACC, vf10, vf00
|
|
lq.xyzw vf08, 990(vi00) | maddax.xyzw ACC, vf12, vf20
|
|
lq.xyzw vf09, 991(vi00) | maddy.xyzw vf20, vf13, vf20
|
|
sq.xyzw vf06, 1(vi05) | mulaw.xyzw ACC, vf10, vf00
|
|
sq.xyzw vf07, 3(vi05) | maddax.xyzw ACC, vf12, vf21
|
|
sq.xyzw vf08, 5(vi05) | maddy.xyzw vf21, vf13, vf21
|
|
sq.xyzw vf09, 7(vi05) | mulaw.xyzw ACC, vf10, vf00
|
|
nop | maddax.xyzw ACC, vf12, vf22
|
|
nop | maddy.xyzw vf22, vf13, vf22
|
|
lq.xyzw vf12, 1020(vi00) | ftoi4.xyzw vf19, vf19
|
|
lq.xyzw vf14, 1001(vi00) | ftoi4.xyzw vf20, vf20
|
|
move.xyzw vf05, vf24 | ftoi4.xyzw vf21, vf21
|
|
move.xyzw vf01, vf23 | ftoi4.xyzw vf22, vf22
|
|
sq.xyzw vf19, 2(vi05) | mulz.z vf04, vf24, vf24
|
|
sq.xyzw vf20, 4(vi05) | clipw.xyz vf03, vf03
|
|
sq.xyzw vf21, 6(vi05) | nop
|
|
sq.xyzw vf22, 8(vi05) | nop
|
|
xgkick vi15 | nop
|
|
iaddi vi04, vi04, -0x1 | nop
|
|
iaddiu vi01, vi00, 0x672 | nop
|
|
ibne vi00, vi04, L8 | nop
|
|
isub vi15, vi01, vi15 | adda.xyzw ACC, vf11, vf11
|
|
nop | nop :e
|
|
nop | nop
|
|
L9:
|
|
iaddi vi04, vi04, -0x1 | nop
|
|
iaddi vi02, vi02, -0x3 | nop
|
|
ibne vi00, vi04, L7 | nop
|
|
nop | nop
|
|
nop | nop :e
|
|
nop | nop
|
|
L10:
|
|
iaddi vi04, vi04, -0x1 | nop
|
|
iaddi vi03, vi03, 0x4 | nop
|
|
ibne vi00, vi04, L7 | nop
|
|
nop | nop
|
|
nop | nop :e |