Agnus

Lord of the RAM

Agnus is the central chip that controls access to the Chip RAM for the CPU and the other chips.

Blitter

Co-processor for image manipulation. Transfer and logic operations on memory.

Usage

    • Copy memory from one place to another and perform logical operations on it.

    • fill areas

    • Draw lines

Amiga Hardware Reference Manual Blitter

Copper

Video beam synchronized co-processor. It can modify memory when the video output reach different positions.

Instructions

The cooper is a co-processor so it has it's own set of instructions. There are only three of them, WAIT, MOVE and SKIP. All the cooper instructions are made up of two 16-bits word in memory.

WAIT

The copper waits until the video beam counters are equal to (or greater) then the coordinates in the instruction. While waiting it is not using the bus. The first word of the instruction contains the vertical and horizontal coordinates of the beam position to wait for. The second word is like a mask that selects what parts in the first word to use. The wait is also used to stop the cooper list by waiting for a position that the beam can not reach.

Wait Instruction Word 1

0: Always set to 1.

15-8: Vertical beam position.

7-1: Horizontal beam position.

Wait Instruction Word 2

0: Always set to 0.

15: Normally 1, if 0 also wait for blitter to finish.

14-8:

7-1:

MOVE

Transfer the data in word 2 to the register given by word1.

Move Instruction Word 1

0: Always 0.

8-1: Register dest address.

15-9: Not used, should be set to 0.

Move Instruction Word 2

15-0: The 16 bits of data to be moved to the register.

SKIP

Skip the next instruction if the video beam counters are equal to (or greater) then the coordinates in the instruction.

Wait Instruction Word 1

0: Always set to 1.

15-8: Vertical beam position.

7-1: Horizontal beam position.

Wait Instruction Word 2

0: Always set to 1.

15: 1

14-8:

7-1:

Cooper List

A cooper-list is simply a sequential group of instructions. There are two cooper list COP1LC and COP2LC. Each vertical blank the cooper restart from COP1LC. To switch the list used write the address of the cooper-list to the location register and then write to the copper strobe address for that list, COPJMP1 or COPJMP2.

COPCON

Normally the cooper can not access all register in it's possible range. The can be changed by setting the copper danger bit (CDANG) in the copper control register (COPCON) to 1.

Usage

    • Modify sprites mid-screen.

    • Update color palette

    • Modify audio settings

    • Control the blitter

    • Interrupt 68k to do stuff.

Vikke.net Copper - 2013

Amiga Hardware Reference Manual Copper