mirror of https://github.com/PCSX2/pcsx2.git
microVU:
- Fixed a big bug with the help of sudonim and rama which greatly increases mVU's compatibility! git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1270 96395faa-99c1-11dd-bbfe-3dabce05a288
This commit is contained in:
parent
5f1cc131c8
commit
47bdb31473
|
@ -322,7 +322,7 @@ microVUt(void) mVUanalyzeMflag(int Is, int It) {
|
||||||
mVUinfo |= _swapOps;
|
mVUinfo |= _swapOps;
|
||||||
if (mVUcount < 4) { mVUpBlock->pState.needExactMatch |= 0xf << (/*mVUcount +*/ 4); }
|
if (mVUcount < 4) { mVUpBlock->pState.needExactMatch |= 0xf << (/*mVUcount +*/ 4); }
|
||||||
int curPC = iPC;
|
int curPC = iPC;
|
||||||
for (int i = mVUcount, j = 0; i > 1; i--, j++) {
|
for (int i = mVUcount, j = 0; i > 0; i--, j++) {
|
||||||
incPC2(-2);
|
incPC2(-2);
|
||||||
if (doStatus) { mVUinfo |= _doMac; if (j >= 3) { break; } }
|
if (doStatus) { mVUinfo |= _doMac; if (j >= 3) { break; } }
|
||||||
}
|
}
|
||||||
|
|
|
@ -82,9 +82,10 @@ microVUt(int) mVUsetFlags(int* xStatus, int* xMac, int* xClip) {
|
||||||
u32 aCount = 1; // Amount of instructions needed to get valid mac flag instances for block linking
|
u32 aCount = 1; // Amount of instructions needed to get valid mac flag instances for block linking
|
||||||
|
|
||||||
// Ensure last ~4+ instructions update mac flags
|
// Ensure last ~4+ instructions update mac flags
|
||||||
|
setCode();
|
||||||
for (int i = mVUcount; i > 0; i--, aCount++) {
|
for (int i = mVUcount; i > 0; i--, aCount++) {
|
||||||
if (doStatus) { if (__Mac) { mVUinfo |= _doMac; } if (aCount > 4) { break; } }
|
if (doStatus) { if (__Mac) { mVUinfo |= _doMac; } if (aCount >= 4) { break; } }
|
||||||
incPC2(-2);
|
incPC(-2);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Status/Mac Flags Setup Code
|
// Status/Mac Flags Setup Code
|
||||||
|
|
Loading…
Reference in New Issue