mirror of https://github.com/PCSX2/pcsx2.git
IPU: Always process command if busy on DMA run
This commit is contained in:
parent
906898c785
commit
37f640ece2
|
@ -177,8 +177,11 @@ void WriteFIFO_IPUin(const mem128_t* value)
|
|||
|
||||
//committing every 16 bytes
|
||||
if( ipu_fifo.in.write((u32*)value, 1) == 0 )
|
||||
{
|
||||
if (ipuRegs.ctrl.BUSY && !CommandExecuteQueued)
|
||||
{
|
||||
CommandExecuteQueued = true;
|
||||
CPU_INT(IPU_PROCESS, 1 * BIAS);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -140,9 +140,11 @@ void IPU1dma()
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
if (ipuRegs.ctrl.BUSY && !CommandExecuteQueued)
|
||||
{
|
||||
CommandExecuteQueued = true;
|
||||
CPU_INT(IPU_PROCESS, totalqwc * BIAS);
|
||||
}
|
||||
|
||||
IPU_LOG("Completed Call IPU1 DMA QWC Remaining %x Finished %d In Progress %d tadr %x", ipu1ch.qwc, IPU1Status.DMAFinished, IPU1Status.InProgress, ipu1ch.tadr);
|
||||
}
|
||||
|
@ -188,7 +190,7 @@ void IPU0dma()
|
|||
|
||||
IPU_INT_FROM( readsize * BIAS );
|
||||
|
||||
if (ipu0ch.qwc > 0 && !CommandExecuteQueued)
|
||||
if (ipuRegs.ctrl.BUSY && !CommandExecuteQueued)
|
||||
{
|
||||
CommandExecuteQueued = true;
|
||||
CPU_INT(IPU_PROCESS, 4);
|
||||
|
|
Loading…
Reference in New Issue