Commodore Amiga 1200 — Commodore Amiga 1200 (PAL) Hardware Reference Manual PDF (EN)

The Copper can store data into the following registers: o Any register whose address is $20 or above. o Any register whose address is between $10 and $20 if the Copper danger bit is a 1. The Copper danger bit is in the Copper's control register, COPCON, which is described in the "Control Register" section. o The Copper cannot write into any register whose address is lower than $10. Appendix B contains all of the machine register addresses.

The following example MOVE instructions point bit-plane pointer 1 at $21000 and bit- plane pointer 2 at S25000.2 DC.W $00E0,$0002 ;Move $0002 to register $0E0 (BPL1PTH) DC.W $00E2,$1000 ;Move $1000 to register $0E2 (BPL1PTL) DC.W $00E4,$0002 ;Move $0002 to register $0E4 (BPL2PTH) DC.W $00E6,$5000 ;Move $5000 to register $0E6 (BPL2PTL) Normally, the appropriate assembler ".i" files are included so that names, rather than addresses, may be used for referencing hardware registers. It is strongly recommended that you reference all hardware addresses via their defined names in the system include files.

This will allow you to more easily adapt your software to take advantage of future hardware or enhancements. For example: INCLUDE "hardware/custom.i" DC.W bplpt+$00,$0002 ;Move $0002 into register $0E0 (BPLlPTH) DC.W bplpt+$02,$1000 ;Move $1000 into register $0E2 (BPLlPTL) DC.W bplpt+$04,$0002 ;Move $0002 into regi3ter $0E4 (PL2PTH) DC.W bplpt+$06,$5000 ;Move $5000 into register $0E6 (BPL2PTL) For use in the hardware manual examples, we have made a special include file (see Appendix J) that defines all of the hardware register names based off of the "hardware/custom.i" file. This was done to make the examples easier to read from a hardware point of view.

Most of the examples in this manual are here to help explain the hardware and are, in most cases, not useful without modification and a good deal of additional code. 1 Hexadecimal numbers are distinguished from decimal numbers by the $ prefix. 2 All sample code segments are in assembly language. - 16 Coprocessor Hardware -