GIF: Fix GIF FIFO behaviour when the FIFO drains

This commit is contained in:
refractionpcsx2 2021-09-11 00:26:54 +01:00
parent 73bb8e4fdf
commit 980c954bf4
1 changed files with 2 additions and 2 deletions

View File

@ -292,7 +292,7 @@ __fi void gifInterrupt()
}
// If the dma has data waiting and there's something in the fifo, drain the fifo
// If the GIF is currently paused, check if the FIFO is full, otherwise fill it
if (((gifch.qwc > 0) || (!gif.gspath3done)) && (CheckPaths() || gif_fifo.fifoSize == 16 || readSize))
if ((!CheckPaths() && gif_fifo.fifoSize == 16) || (readSize && gif_fifo.fifoSize > 0))
return;
}
@ -804,7 +804,7 @@ void gifMFIFOInterrupt()
// If the dma has data waiting and there's something in the fifo, drain the fifo
// If the GIF is currently paused, check if the FIFO is full, otherwise fill it
if (((gifch.qwc > 0) || (!gif.gspath3done)) && (CheckPaths() || gif_fifo.fifoSize == 16 || readSize))
if ((!CheckPaths() && gif_fifo.fifoSize == 16) || (readSize && gif_fifo.fifoSize > 0))
return;
}