From f2761d7523b26d19f82f7b384b3b41efd0f60c67 Mon Sep 17 00:00:00 2001 From: "SND\\ckain_cp" Date: Tue, 24 Sep 2013 12:36:24 +0000 Subject: Changed DMA4 burst transfer factor from 1/3 to 1/2. Fixes Harry Potter and the Philosopher's Stone git-svn-id: https://pcsxr.svn.codeplex.com/svn/pcsxr@87306 e17a0e51-4ae3-4d35-97c3-1a29b211df97 --- libpcsxcore/psxdma.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'libpcsxcore') diff --git a/libpcsxcore/psxdma.c b/libpcsxcore/psxdma.c index 0750977c..4f5290bd 100755 --- a/libpcsxcore/psxdma.c +++ b/libpcsxcore/psxdma.c @@ -49,8 +49,10 @@ void psxDma4(u32 madr, u32 bcr, u32 chcr) { // SPU } SPU_writeDMAMem(ptr, (bcr >> 16) * (bcr & 0xffff) * 2); - // Jungle Book - 0-0.333x DMA - SPUDMA_INT((bcr >> 16) * (bcr & 0xffff) / 3); + // Jungle Book - max 0.333x DMA length + // Harry Potter and the Philosopher's Stone - max 0.5x DMA length + //u32 dmalen=64 + ((bcr >> 18) * (bcr & 0xffff)); // less linear to DMA length which should work with both games above? + SPUDMA_INT((bcr >> 16) * (bcr & 0xffff) / 2); return; case 0x01000200: //spu to cpu transfer -- cgit v1.2.3