VIF: Only delay MSCAL - Fixes #1218 Downhill Domination and Twisted Metal Head-On. Snowblind games still fine

This commit is contained in:
refractionpcsx2 2016-03-20 17:18:02 +00:00
parent c43b1ac201
commit 6649f43069
1 changed files with 3 additions and 0 deletions

View File

@ -374,6 +374,7 @@ vifOp(vifCode_MSCAL) {
//Warship Gunner 2 has a rather big dislike for the delays //Warship Gunner 2 has a rather big dislike for the delays
if(((data[1] >> 24) & 0x60) == 0x60) // Immediate following Unpack if(((data[1] >> 24) & 0x60) == 0x60) // Immediate following Unpack
{ {
//Snowblind games only use MSCAL, so other MS kicks force the program directly.
vifExecQueue(idx); vifExecQueue(idx);
} }
} }
@ -399,6 +400,7 @@ vifOp(vifCode_MSCALF) {
vuExecMicro(idx, (u16)(vifXRegs.code) << 3); vuExecMicro(idx, (u16)(vifXRegs.code) << 3);
vifX.cmd = 0; vifX.cmd = 0;
vifX.pass = 0; vifX.pass = 0;
vifExecQueue(idx);
} }
} }
pass3 { VifCodeLog("MSCALF"); } pass3 { VifCodeLog("MSCALF"); }
@ -414,6 +416,7 @@ vifOp(vifCode_MSCNT) {
vuExecMicro(idx, -1); vuExecMicro(idx, -1);
vifX.cmd = 0; vifX.cmd = 0;
vifX.pass = 0; vifX.pass = 0;
vifExecQueue(idx);
} }
} }
pass3 { VifCodeLog("MSCNT"); } pass3 { VifCodeLog("MSCNT"); }