View Single Post
Old 23 October 2019, 13:48   #7
Registered User

Join Date: Jul 2015
Location: The Netherlands
Posts: 2,065
Originally Posted by phx View Post
I don't quite understand that. When you synchronise your program with a copper interrupt at the first line with bitplane-fetches, you will be starting with the least amount of free DMA slots. Why is that an advantage?
Because the CPU doesn't actually use all free slots, but the Blitter normally does. This means that bitplane fetches slow down the CPU by a relatively lower amount than they slow down the Blitter. By running the main part of the logic during bitplane fetches you make optimal use of this difference.

Perhaps this is best explained by looking at 4 bitplane mode. In 4 bitplane mode the CPU is normally not slowed down* during bitplane fetches, but the Blitter is slowed down by 50% during 4BPL bitplane fetches. Meanwhile when there is no bitplane fetches, both run at full speed**.

Edit: if you start your game logic with restoring old blits or other blits that use all DMA slots, that will do better in VBlank. It's purely the logic-only parts that benefit from this.

*) there are some exceptions to this, but they are really rather rare.
**) assuming no other DMA

Last edited by roondar; 23 October 2019 at 14:08.
roondar is online now  
Page generated in 0.04840 seconds with 11 queries