Path3 Masking Fix: GGIF MFIFO didn't set the GIF state, also added the path 3 stalling stuff to there too.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5247 96395faa-99c1-11dd-bbfe-3dabce05a288
This commit is contained in:
refraction 2012-05-30 19:26:37 +00:00
parent 489bce662d
commit 8862d0c963
1 changed files with 15 additions and 0 deletions

View File

@ -455,6 +455,21 @@ void gifMFIFOInterrupt()
GIF_LOG("gifMFIFOInterrupt");
mfifocycles = 0;
if(gifUnit.gifPath[GIF_PATH_3].state == GIF_PATH_WAIT)
{
gifUnit.gifPath[GIF_PATH_3].state = GIF_PATH_IDLE;
if(vif1Regs.stat.VGW)
{
CPU_INT(DMAC_VIF1, 1);
if(!gifUnit.Path3Masked())
CPU_INT(DMAC_MFIFO_GIF, 16);
if(!gspath3done || gifch.qwc > 0) return;
}
}
if (dmacRegs.ctrl.MFD != MFD_GIF) {
DevCon.Warning("Not in GIF MFIFO mode! Stopping GIF MFIFO");
return;