diff options
author | notaz | 2011-06-25 01:49:35 +0300 |
---|---|---|
committer | notaz | 2011-07-08 00:15:08 +0300 |
commit | b03e0caf5e153551cb71065ffaa4361b7f7e492b (patch) | |
tree | c192a2d7f859235c2a4867c32556500996ff8141 /plugins/dfxvideo/gpu.c | |
parent | 4e44d6f63e9f1af3236fbbe2f59016cd42a67d98 (diff) | |
download | pcsx_rearmed-b03e0caf5e153551cb71065ffaa4361b7f7e492b.tar.gz pcsx_rearmed-b03e0caf5e153551cb71065ffaa4361b7f7e492b.tar.bz2 pcsx_rearmed-b03e0caf5e153551cb71065ffaa4361b7f7e492b.zip |
gpus: return DMA word count to avoid 1 list walk
Diffstat (limited to 'plugins/dfxvideo/gpu.c')
-rw-r--r-- | plugins/dfxvideo/gpu.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/plugins/dfxvideo/gpu.c b/plugins/dfxvideo/gpu.c index 9a614de..0d105f8 100644 --- a/plugins/dfxvideo/gpu.c +++ b/plugins/dfxvideo/gpu.c @@ -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; } //////////////////////////////////////////////////////////////////////// |