LegendOfDragoon
d656af4068
Implement Recompiler version of VNE
2015-10-02 13:05:24 -07:00
LegendOfDragoon
67b4420097
Implement Recompiler version of VEQ
2015-10-02 13:02:03 -07:00
LegendOfDragoon
c95d1598e4
Implement Recompiler version of VGE
2015-10-02 12:52:14 -07:00
LegendOfDragoon
9834665716
Implement Recompiler version of VLT
2015-10-02 12:37:27 -07:00
zilmar
83cffca119
Merge pull request #632 from cxd4/bad
...
`if` is not a function.
2015-09-30 10:55:28 +10:00
unknown
fe442fca6e
`if` is not a function.
...
fixes #628
2015-09-25 17:26:27 -04:00
LegendOfDragoon
7ea0dd0311
Improve Compile_Vector_VRSQH
...
RSP_ACCUM needs to be written to before RSP_Vect. Also optimized the
code for writing to RSP_ACCUM.
2015-09-25 05:00:41 -07:00
LegendOfDragoon
0102762456
Improve Compile_Vector_VRCPH
...
The issue is that it was writing to RSP_Vect before writing to
accumulator. Also removed minor overhead, since Recp.UHW[0] always = 0.
2015-09-25 04:45:00 -07:00
LegendOfDragoon
aebc9fa8b0
Implement VRCPL in RSP Recompiler
2015-09-25 04:26:42 -07:00
LegendOfDragoon
97857ee3cd
Implement VRCP in RSP Recompiler
2015-09-25 04:11:49 -07:00
LegendOfDragoon
466c03e27d
Ensure R0 cannot be written to in LHU
2015-09-24 15:33:07 -07:00
LegendOfDragoon
8bede83fd4
Ensure R0 cannot be written to in LBU
2015-09-24 15:31:45 -07:00
LegendOfDragoon
fb8db802b3
Ensure R0 cannot be written to in LW
2015-09-24 15:30:34 -07:00
LegendOfDragoon
b6721d1cdc
Ensure R0 cannot be written to in LH
2015-09-24 15:29:32 -07:00
LegendOfDragoon
3a5569ce9d
Ensure R0 cannot be written to in LB
...
This happens in Castlevania and OOT, although I'm not sure if the code
ever gets reached.
2015-09-24 15:13:21 -07:00
zilmar
6f2bb5cec6
Merge pull request #616 from LegendOfDragoon/master
...
Improve Compile_Cop0_MF
2015-09-24 09:50:34 +10:00
LegendOfDragoon
aa70b43ffc
Implement case 4 in Compile_Cop0_MF
2015-09-20 14:57:45 -07:00
LegendOfDragoon
b6a8c54fde
Implement case 7 in Compile_Cop0_MF
2015-09-20 13:21:26 -07:00
unknown
c04f856b79
Attempt the POSIX `ssize_t` type for signed addr compares.
2015-09-17 19:58:49 -04:00
LegendOfDragoon
67d2fc95a3
Optimize LHU in RSP Recompiler
2015-09-07 15:10:19 -07:00
LegendOfDragoon
e0bd5442e4
Implement RegConst in Compile_LBU
2015-09-07 15:05:26 -07:00
LegendOfDragoon
237b21a596
Optimize LW in RSP Recompiler
2015-09-07 14:36:42 -07:00
LegendOfDragoon
48baf1df7c
Optimize LH in RSP Recompiler
...
Star Wars Battle For Naboo LLE graphics uses unaligned LH
2015-09-07 13:48:51 -07:00
LegendOfDragoon
e9c1c23120
Implement RegConst in Compile_LB
2015-09-07 13:39:41 -07:00
LegendOfDragoon
48fcced3bc
Optimize ADDIU in RSP Recompiler
...
The second part happens in Hydro Thunder LLE audio.
2015-09-07 12:18:28 -07:00
LegendOfDragoon
2ff2165bd9
Optimize ADDI in RSP Recompiler
...
No need to add 0 to a variable. I've seen
ADDI V0, V0, 0x0000 in Super Smash Bros audio microcode.
2015-09-07 11:49:37 -07:00
LegendOfDragoon
720d8c8dd7
Implement SLTIU in RSP Recompiler
2015-09-07 11:28:49 -07:00
LegendOfDragoon
19f34eed4e
Implement SLTI in RSP Recompiler
2015-09-07 11:27:07 -07:00
unknown
fcfad37360
[RSP] junk trailing whitespace cleanups
2015-06-19 13:09:24 -04:00
LegendOfDragoon
882b0f5841
Change CompilerWarning to DisplayError in Cop0_MF
...
In RSP interpreter, it is DisplayError and I feel like it's an important
message, so it should be DisplayError in RSP recompiler as well, in my
opinion.
2015-04-19 21:20:10 -07:00
LegendOfDragoon
603df8e167
Add 2 cases in Cop0_MF for RSP Recompiler
...
Case 0 and Case 1 was missing in RSP Recompiler. Jet Force Gemini LLE
GFX uses case 1.
2015-04-19 21:11:47 -07:00
Lioncash
bdd7f0e48f
RSP: Fix a typo in Compile_ADDI
2015-04-16 23:33:35 -04:00
LegendOfDragoon
7f5aa6b521
Implement MMX version of VABS in RSP Recompiler
2015-03-01 03:39:14 -08:00
LegendOfDragoon
b4dbc570a5
Small optimization to VSUB
2015-03-01 03:33:17 -08:00
LegendOfDragoon
9706484850
Small optimization to VADD
2015-03-01 03:31:57 -08:00
LegendOfDragoon
9bb8ca9b3c
Small optimization to VMUDH
2015-03-01 03:25:41 -08:00
LegendOfDragoon
9e4f3d2e0f
Small optimization to VMUDL
2015-03-01 03:18:17 -08:00
LegendOfDragoon
fa4fcc9d93
Small optimization to VMULF
2015-03-01 03:07:16 -08:00
LegendOfDragoon
3b208a79cd
Implement recompiler version of Cop2_CT
2015-03-01 02:59:10 -08:00
LegendOfDragoon
bdce1a41ef
Implement recompiler version of Cop2_CF
2015-03-01 01:52:46 -08:00
zilmar
8e715efe44
Cleaned up some warnings in the rsp
2015-01-29 19:57:13 +11:00
unknown
fd564c802a
RSP recompiler cheating expects a RSP function address: p_func.
2015-01-24 16:21:39 -05:00
unknown
87aa0faf17
removed old explicit type casts (now calling strict func addr arrays)
2015-01-24 16:01:50 -05:00
Nicholas
a43207f52b
RSP: cheat for unaligned LH, LLE gfx in f-zero X and wave race
2015-01-23 23:10:20 +11:00
LegendOfDragoon
55fc2a6255
Correct 2 mistakes I made in SQV in RSP recompiler
...
It may be true that this SQV edge case only seems to happen when
isRegConst = true, I forgot to account for the possibility that GPR
Constant Analysis could be disabled.
I also just noticed that I goofed with the non-sse shuffling ;/ . The
registers weren't in order.
2015-01-22 14:53:16 -08:00
LegendOfDragoon
448b0ed6be
Correct a mistake I made in LDV in RSP recompiler
...
I totally forgot that LDV handles elements differently than SDV. I added
a fallback to deal with unusual elements and added an alert to notify
that it exists in a particular game. I removed the & 0xF since that's
not needed. My previous change caused Stunt Racer 64 to have audio
issues. It should now be fixed.
2015-01-22 14:05:34 -08:00
LegendOfDragoon
479b201ddc
Implement edge case for LDV, fix 2 typos as well.
...
For LDV, it's the same deal as SDV. In WDC, RSPOpC.del could = 12, which
would result in a negative number when doing 16 - RSPOpC,del - 8.
2015-01-14 01:48:47 -08:00
LegendOfDragoon
5df4a806b4
Optimized a few instructions
...
Optimized VOR for games like Perfect Dark
Implemented VNAND, VNOR, and VNXOR for recompiler
Minor change in SQV
2015-01-12 14:19:41 -08:00
LegendOfDragoon
1cb03b4120
Matched RSP interpreter more closely
...
I have only seen the edgecase for SQV happen when
IsRegConst(RSPOpC.base) == TRUE. Changing SQV fixed Telefoot / Mia Ham.
I optimized VAND, for games like Kirby64.
2015-01-12 11:43:07 -08:00
LegendOfDragoon
43c6017ddb
Improve Accuracy
...
Fixing SW allows a lot more games to work. Fixing LW fixes games like
WDC and improves performance somehow. Fixing VMRG fixes certain bugs,
like Kirby 64's intro.
2015-01-11 19:35:43 -08:00