diff options
| author | SND\notaz_cp <SND\notaz_cp@e17a0e51-4ae3-4d35-97c3-1a29b211df97> | 2011-06-29 22:53:29 +0000 |
|---|---|---|
| committer | SND\notaz_cp <SND\notaz_cp@e17a0e51-4ae3-4d35-97c3-1a29b211df97> | 2011-06-29 22:53:29 +0000 |
| commit | 0bc644c921fe94e9d83599257bbc59544e83616b (patch) | |
| tree | ff0172f63a1c47188d8e1c851595bcdf720f6a35 | |
| parent | fbe3fe35050190a9e5c4a4f1961f7aa4471193c0 (diff) | |
| download | pcsxr-0bc644c921fe94e9d83599257bbc59544e83616b.tar.gz | |
gte: fix MAC0 shift (pcsxr issue #8874, shalma)
fixes missing elements in Soul Reaver and Spyro.
git-svn-id: https://pcsxr.svn.codeplex.com/svn/pcsxr@68249 e17a0e51-4ae3-4d35-97c3-1a29b211df97
| -rw-r--r-- | libpcsxcore/gte.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/libpcsxcore/gte.c b/libpcsxcore/gte.c index 9ede6ac3..3bc6f11a 100644 --- a/libpcsxcore/gte.c +++ b/libpcsxcore/gte.c @@ -393,8 +393,8 @@ void gteRTPS() { gteSX2 = limG1(F((s64)gteOFX + ((s64)gteIR1 * quotient)) >> 16); gteSY2 = limG2(F((s64)gteOFY + ((s64)gteIR2 * quotient)) >> 16); - gteMAC0 = F((s64)(gteDQB + ((s64)gteDQA * quotient)) >> 12); - gteIR0 = limH(gteMAC0); + gteMAC0 = F((s64)gteDQB + ((s64)gteDQA * quotient)); + gteIR0 = limH(gteMAC0 >> 12); } void gteRTPT() { @@ -423,8 +423,8 @@ void gteRTPT() { fSX(v) = limG1(F((s64)gteOFX + ((s64)gteIR1 * quotient)) >> 16); fSY(v) = limG2(F((s64)gteOFY + ((s64)gteIR2 * quotient)) >> 16); } - gteMAC0 = F((s64)(gteDQB + ((s64)gteDQA * quotient)) >> 12); - gteIR0 = limH(gteMAC0); + gteMAC0 = F((s64)gteDQB + ((s64)gteDQA * quotient)); + gteIR0 = limH(gteMAC0 >> 12); } void gteMVMVA() { |
