View Single Post
Old 17 August 2002, 00:22   #2
Codetapper
2 contact me: email only!

Codetapper's Avatar
 
Join Date: May 2001
Location: Auckland / New Zealand
Posts: 3,128
Post Wasting DMA cycles

Galahad might correct me on this but I think this is what happens!

The game on an accelerated Amiga runs the code a lot faster as you would expect. But the blitter is a lot slower in comparison to the CPU. On the A500, the blitter was very fast, but not so on accelerated Amigas.

The game therefore gets to the point where it needs to blit some data and it starts into a loop saying "are you finished yet?" OVER and OVER! Just like when somebody is watching over your shoulder, this doesn't exactly help and actually slows down the blitter as DMA time is wasted while checking that the blit operation is finished so often.

There is a BlitWait macro in WHDLoad which tests CIAA which can avoid some blitter slowdown so this should be used in cases like this where heavy blitter usage occurs. Also moving some code to fast memory can avoid the slowdown in some cases. (I believe Galahad has done this for SWOS).

And yes this is bloody annoying I agree!
Codetapper is offline  
 
Page generated in 0.06397 seconds with 9 queries