EasyManua.ls Logo

Commodore Amiga - Putting Together a Copper Instruction List

Commodore Amiga
321 pages
Print Icon
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
The
Copper control register, called COPCON, contains only one bit, bit #1. This bit,
called CDANG (for Copper Danger Bit) protects all registers numbered between $10 and
$IF
inclusive. This range includes the blitter control registers. When CDANG
is
0,
these registers cannot .be written by the Copper. \Vhen CDANG is
1,
these registers can
be written by the Copper. Preventing the Copper from accessing the blitter control
registers prevents a "runaway" Copper (caused by a poorly formed instruction list) from
accidentally affecting system memory.
NOTE
The CDANG
bit
is
cleared after a reset.
Putting
Together
a
Copper
Instruction
List
The
Copper instruction list contains all the register resetting done during the vertical
blanking interval and the register modifications necessary for making mid-screen altera-
tions. As you are planning what will happen during each display field, you may find
it
easier
to
think of each aspect of the display as a separate subsystem, such as playfields,
sprites, audio, interrupts, and so on. Then you can build a separate list of things
that
must be done for each subsystem individually
at
each video beam position.
When you have created all these intermediate lists of things to be done, you must merge
them together into a single instruction list
to
be executed by the Copper once for each
display frame.
The
alternative
is
to
create this all-inclusive list directly, without the
intermediate steps.
For
example, the bit-plane pointers used in playfield displays and the sprite pointers
must be rewritten during the vertical blanking interval so the
data
will be properly
retrieved when the screen display
starts
again. This can be done with a Copper instruc-
tion list
that
does the following:
WAIT until first line of the display
MOVE
data
to
bit-plane pointer 1
MOVE
data
to
bit-plane pointer 2
MOVE
data
to
sprite pointer 1
and so on
As another example, the sprite DMA channels
that
create movable objects can be reused
multiple times during the same display field. You can change the size and shape of the
reuses of a sprite; however, every multiple reuse normally uses the same set of colors
Coprocessor Hardware
15

Table of Contents

Other manuals for Commodore Amiga

Related product manuals