X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=plugins%2Fdfsound%2Fdma.c;h=8d647ff34664181b8875cca1fed92aa2a9671deb;hb=63a4f6b6a3b0315590cd3009df2c92480ed2d98b;hp=85b746ceb988388d1a7cfb39e2d3d0c9e433f846;hpb=650adfd2da779ba8855623362c2900583e22931e;p=pcsx_rearmed.git diff --git a/plugins/dfsound/dma.c b/plugins/dfsound/dma.c index 85b746ce..8d647ff3 100644 --- a/plugins/dfsound/dma.c +++ b/plugins/dfsound/dma.c @@ -27,9 +27,9 @@ unsigned short CALLBACK SPUreadDMA(void) { - unsigned short s=spuMem[spuAddr>>1]; - spuAddr+=2; - if(spuAddr>0x7ffff) spuAddr=0; + unsigned short s=spu.spuMem[spu.spuAddr>>1]; + spu.spuAddr+=2; + if(spu.spuAddr>0x7ffff) spu.spuAddr=0; return s; } @@ -43,13 +43,13 @@ void CALLBACK SPUreadDMAMem(unsigned short *pusPSXMem, int iSize, { int i; - do_samples_if_needed(cycles); + do_samples_if_needed(cycles, 1); for(i=0;i>1]; // spu addr got by writeregister - spuAddr+=2; // inc spu addr - if(spuAddr>0x7ffff) spuAddr=0; // wrap + *pusPSXMem++=spu.spuMem[spu.spuAddr>>1]; // spu addr got by writeregister + spu.spuAddr+=2; // inc spu addr + if(spu.spuAddr>0x7ffff) spu.spuAddr=0; // wrap } } @@ -67,10 +67,10 @@ void CALLBACK SPUreadDMAMem(unsigned short *pusPSXMem, int iSize, void CALLBACK SPUwriteDMA(unsigned short val) { - spuMem[spuAddr>>1] = val; // spu addr got by writeregister + spu.spuMem[spu.spuAddr>>1] = val; // spu addr got by writeregister - spuAddr+=2; // inc spu addr - if(spuAddr>0x7ffff) spuAddr=0; // wrap + spu.spuAddr+=2; // inc spu addr + if(spu.spuAddr>0x7ffff) spu.spuAddr=0; // wrap } //////////////////////////////////////////////////////////////////////// @@ -82,20 +82,20 @@ void CALLBACK SPUwriteDMAMem(unsigned short *pusPSXMem, int iSize, { int i; - do_samples_if_needed(cycles); + do_samples_if_needed(cycles, 1); - if(spuAddr + iSize*2 < 0x80000) + if(spu.spuAddr + iSize*2 < 0x80000) { - memcpy(&spuMem[spuAddr>>1], pusPSXMem, iSize*2); - spuAddr += iSize*2; + memcpy(&spu.spuMem[spu.spuAddr>>1], pusPSXMem, iSize*2); + spu.spuAddr += iSize*2; return; } for(i=0;i>1] = *pusPSXMem++; // spu addr got by writeregister - spuAddr+=2; // inc spu addr - spuAddr&=0x7ffff; // wrap + spu.spuMem[spu.spuAddr>>1] = *pusPSXMem++; // spu addr got by writeregister + spu.spuAddr+=2; // inc spu addr + spu.spuAddr&=0x7ffff; // wrap } }