The
blitter uses up
to
four DMA channels. Three DMA channels are dedicated
to
retrieving
data
from memory
to
the blitter. These
~re
designated as source
A,
source B,
and source C.
The
one destination
DMA
channel
is
designated as destination
D.
As
is
shown in the following sections,
it
is
not always necessary to use all the sources, nor
is
it
always appropriate
to
use
the destination DMA channel.
Each channel may be independently enabled by bits 11,
10,
9,
and 8 of BLTCONO.
These are called USEA, USEB, USEC, and USED. All three sources (if enabled) are
fetched from memory
in
a pipelined fashion and held in registers for logic combination
before being sent
to
the destination. Each channel has its own memory pointer register
and its own modulo register.
A quick summary of blitter features and operations follows. Each of these topics
is
dis-
cussed in this chapter.
The
reader
is
also referred
to
the descriptions of registers whose
names
start
with
"BLT"
in
appendix
A.
o DATA COPYING -
The
blitter can copy bit-plane image
data
anywhere
in
the
lower 512K of memory.
o MULTIPLE POINTERS AND MODULOS -
The
blitter
is
provided with a
separate pointer and modulo register for each of the sources and for the destina-
tion. This allows the blitter
to
move
data
to
and from identical rectangular
windows within different sizes of larger playfield images.
o ASCENDING AND DESCENDING ADDRESSING - The blitter can change
addresses in an ascending or descending manner.
That
is,
it
can either
start
at
the bottom address of both the source and the destination areas and move the
. .
data
while incrementing addresses or
start
at
the top address of the source and
destination and decrement addresses during the move.
o RECTANGULAR AND LINEAR ADDRESS SCANNING - The blitter can pre-
cess either linear or rectangular regions.
o LOGIC OPERATIONS - Instead of simply retrieving
data
from a single source,
the blitter can retrieve
data
from up to three sources as
it
prepares the result for
a possible destination area. Before a blit is started, the blitter
is
set up
to
per-
form one
out
of
258
possible logic operations on the three
data
sources as they
are being transferred.
o SHIFTING - The blitter can shift one or two of its
data
sources up to
15
bits
before applying
it
to
the logic operation, allowing movement of images
in
memory across word boundaries.
166 Blitter Hardware