microVU: fixed a bug where xgkick delay info wasn't propagating through blocks correctly (fixes Sega Classics Collection)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1424 96395faa-99c1-11dd-bbfe-3dabce05a288
This commit is contained in:
cottonvibes 2009-06-23 03:56:52 +00:00
parent a4a1feae64
commit bc5c78f124
2 changed files with 5 additions and 4 deletions

View File

@ -73,9 +73,10 @@ public:
}
else { // Can do Simple Search (Only Matches the Important Pipeline Stuff)
for (int i = 0; i <= listSize; i++) {
if ((blockList[i].pState.q == pState->q)
&& (blockList[i].pState.p == pState->p)
&& (blockList[i].pState.flags == pState->flags)
if ((blockList[i].pState.q == pState->q)
&& (blockList[i].pState.p == pState->p)
&& (blockList[i].pState.xgkick == pState->xgkick)
&& (blockList[i].pState.flags == pState->flags)
&& !(blockList[i].pState.needExactMatch & 0xf0f)) { return &blockList[i]; }
}
}

View File

@ -317,7 +317,7 @@ microVUr(void*) mVUcompile(microVU* mVU, u32 startPC, uptr pState) {
mVUflagInfo = 0;
mVUsFlagHack = CHECK_VU_FLAGHACK;
for (int branch = 0; mVUcount < endCount; mVUcount++) {
for (int branch = 0; mVUcount < endCount; mVUcount++) {
incPC(1);
startLoop();
mVUincCycles(mVU, 1);