X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?p=pcsx_rearmed.git;a=blobdiff_plain;f=plugins%2Fdfxvideo%2Fgpu.c;h=a2b4f921cfbbc5b2d920f37756267102c21e3123;hp=9a614de2171425dbb1aca9d2212de49c28f43df5;hb=9f21ebfe5570056501063c4165a0debf880f534f;hpb=e64dc4c54e96643522dc4b8c205d143c7d9b2f1d diff --git a/plugins/dfxvideo/gpu.c b/plugins/dfxvideo/gpu.c index 9a614de2..a2b4f921 100644 --- a/plugins/dfxvideo/gpu.c +++ b/plugins/dfxvideo/gpu.c @@ -649,7 +649,7 @@ void CALLBACK GPUwriteStatus(uint32_t gdata) // WRITE STATUS } lGPUstatusRet|=GPUSTATUS_INTERLACED; } - else lGPUstatusRet&=~GPUSTATUS_INTERLACED; + else lGPUstatusRet&=~(GPUSTATUS_INTERLACED|0x80000000); if (PSXDisplay.PAL) lGPUstatusRet|=GPUSTATUS_PAL; @@ -1042,6 +1042,7 @@ long CALLBACK GPUdmaChain(uint32_t * baseAddrL, uint32_t addr) uint32_t dmaMem; unsigned char * baseAddrB; short count;unsigned int DMACommandCounter = 0; + long dmaWords = 0; GPUIsBusy; @@ -1056,6 +1057,7 @@ long CALLBACK GPUdmaChain(uint32_t * baseAddrL, uint32_t addr) if(CheckForEndlessLoop(addr)) break; count = baseAddrB[addr+3]; + dmaWords += 1 + count; dmaMem=addr+4; @@ -1067,7 +1069,7 @@ long CALLBACK GPUdmaChain(uint32_t * baseAddrL, uint32_t addr) GPUIsIdle; - return 0; + return dmaWords; } ////////////////////////////////////////////////////////////////////////