BEFORE AFTER EXCLUSIVE FILL
____________________ ___________________
| | | |
| 1 1 1 1 | | 1111 1111 |
| 1 1 1 1 | | 111 111 |
| 1 1 1 1 | | 11 11 |
| 11 11 | | 1 1 |
| 1 1 1 1 | | 11 11 |
| 1 1 1 1 | | 111 111 |
| 1 1 1 1 | | 1111 1111 |
|____________________| |___________________|
Figure 6-7: Single-Point Vertex Example
The blitter uses the fill carry-in bit as the starting fin state beginning at the right most
edge of each line. For each "1" bit in the source area, the blitter flips the fill state, either
filling or not filling the space with ones. This continues for each line until the left edge of
the blit is reached, at which point the filling stops.
BLITTER DONE FLAG
When the BLTSIZE register is written the blit is started. The processor does not stop while
the blitter is working, though; they can both work concurrently, and this provides much of
the speed evident in the Amiga. This does require some amount of care when using the
blitter.
A blitter done flag, also called the blitter busy flag, is provided as DMAF BLTDONE in
DMACONR. This flag is set when a blit is in progress.
NOTE
If a blit has just been started but has been locked out of memory access because of, for
instance, display fetches, this bit may not yet be set. The processor, on the other hand,
may be running completely uninhibited out of FAST memory or its internal cache, so it will
continue to have memory cycles.
- 180 Blitter Hardware -