Table
6-2:
Blitter Registers
in
Line-drawing Mode
Register
Bit
Bit
Name
Number
Name
State
Purpose
BLTCONO
15,14,13,12
START
Code for horizontal position
of first pixel
BLTCONO
11,10,9,8
USE
1011
Required for line-drawing
BLTCON1 15,14,13,12
BSH 0
Starts texture
at
bit 0
BLTCONI
5
Reserved
BLTCONI
4,3,2
Octant select code
(See
figure
6-10
below.)
BLTCON1
1
SING
0,1
Set for single-bit-width line
BLTCON1
0
LINE
1
Enables line-drawing mode
BLTADAT
All
8000
Index required for line-drawing
BLTBDAT
All
o to
FFFF
Line texture register
BLTSIZE
5-0
w
02
Required for line-drawing
BLTSIZE
15-6
h
Line length up
to
1024
BLTAMOD
All
2(2Y -
2X)
*
BLTBMOD
All
2(QY)
*
BLTCMOD All
Wid
th
of total image
BLTDMOD
All
Width of total image
BLTAPT
All
(2Y
- X)
*
BLTCPT
All
Starting address of line
BLTDPT All
Starting address of line
* Y and X are the height and width of the rectangle enclosing the line.
OCTANTS
IN
LINE
DRAWING
Standard computer graphics texts, such as Newman and Sproul, discuss a system for
dividing the Cartesian plane into eight regions called octants for purposes of line draw-
ing. Figure 6-10 shows the numerical codes Amiga has assigned
to
each octant. The
dotted lines in the figure represent the x-axis and y-axis.
Line drawing based on octants is a simplification
that
takes advantage of symmetries
between x and -x, y and
-yo
The octant code and several values derived from delta x
and delta
yare
loaded into blitter control registers as shown in table
6-3.
184 Blitter Hardware