diff options
Diffstat (limited to 'libpcsxcore/psxdma.c')
-rw-r--r-- | libpcsxcore/psxdma.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/libpcsxcore/psxdma.c b/libpcsxcore/psxdma.c index 1274d93..df79b6d 100644 --- a/libpcsxcore/psxdma.c +++ b/libpcsxcore/psxdma.c @@ -167,8 +167,9 @@ void psxDma2(u32 madr, u32 bcr, u32 chcr) { // GPU PSXDMA_LOG("*** DMA 2 - GPU dma chain *** %lx addr = %lx size = %lx\n", chcr, madr, bcr); #endif - size = gpuDmaChainSize(madr); - GPU_dmaChain((u32 *)psxM, madr & 0x1fffff); + size = GPU_dmaChain((u32 *)psxM, madr & 0x1fffff); + if ((int)size <= 0) + size = gpuDmaChainSize(madr); // Tekken 3 = use 1.0 only (not 1.5x) |