These ASCII Markdown pages supply Copperline’s IO Map, debugger console,
control protocol, DAP adapter, and VS Code register tree. Offsets are relative
to $DFF000. Access descriptions give the usual CPU-visible direction;
individual pages describe exceptions such as AGA palette readback. Debugger
inspection can also show internal latches behind write-only registers.
Field names follow Amiga Hardware Reference Manual terminology. The pages also describe Copperline’s implementation limits, including registers that are only latched or have no effect. They are a programming reference for the emulator, not a complete specification of external chip signals.
| Offset | Register | Access | Chipset |
|---|---|---|---|
| $000 | BLTDDAT | read | OCS/ECS/AGA |
| $002 | DMACONR | read | OCS/ECS/AGA |
| $004 | VPOSR | read | OCS/ECS/AGA |
| $006 | VHPOSR | read | OCS/ECS/AGA |
| $008 | DSKDATR | read | OCS/ECS/AGA |
| $00A | JOY0DAT | read | OCS/ECS/AGA |
| $00C | JOY1DAT | read | OCS/ECS/AGA |
| $00E | CLXDAT | read | OCS/ECS/AGA |
| $010 | ADKCONR | read | OCS/ECS/AGA |
| $012 | POT0DAT | read | OCS/ECS/AGA |
| $014 | POT1DAT | read | OCS/ECS/AGA |
| $016 | POTGOR | read | OCS/ECS/AGA |
| $018 | SERDATR | read | OCS/ECS/AGA |
| $01A | DSKBYTR | read | OCS/ECS/AGA |
| $01C | INTENAR | read | OCS/ECS/AGA |
| $01E | INTREQR | read | OCS/ECS/AGA |
| $020 | DSKPTH | write | OCS/ECS/AGA |
| $022 | DSKPTL | write | OCS/ECS/AGA |
| $024 | DSKLEN | write | OCS/ECS/AGA |
| $026 | DSKDAT | write | OCS/ECS/AGA |
| $028 | REFPTR | write | OCS/ECS/AGA |
| $02A | VPOSW | write | OCS/ECS/AGA |
| $02C | VHPOSW | write | OCS/ECS/AGA |
| $02E | COPCON | write | OCS/ECS/AGA |
| $030 | SERDAT | write | OCS/ECS/AGA |
| $032 | SERPER | write | OCS/ECS/AGA |
| $034 | POTGO | write | OCS/ECS/AGA |
| $036 | JOYTEST | write | OCS/ECS/AGA |
| $038 | STREQU | write | OCS/ECS/AGA |
| $03A | STRVBL | write | OCS/ECS/AGA |
| $03C | STRHOR | write | OCS/ECS/AGA |
| $03E | STRLONG | write | OCS/ECS/AGA |
| $040 | BLTCON0 | write | OCS/ECS/AGA |
| $042 | BLTCON1 | write | OCS/ECS/AGA |
| $044 | BLTAFWM | write | OCS/ECS/AGA |
| $046 | BLTALWM | write | OCS/ECS/AGA |
| $048 | BLTCPTH | write | OCS/ECS/AGA |
| $04A | BLTCPTL | write | OCS/ECS/AGA |
| $04C | BLTBPTH | write | OCS/ECS/AGA |
| $04E | BLTBPTL | write | OCS/ECS/AGA |
| $050 | BLTAPTH | write | OCS/ECS/AGA |
| $052 | BLTAPTL | write | OCS/ECS/AGA |
| $054 | BLTDPTH | write | OCS/ECS/AGA |
| $056 | BLTDPTL | write | OCS/ECS/AGA |
| $058 | BLTSIZE | write | OCS/ECS/AGA |
| $05A | BLTCON0L | write | ECS/AGA |
| $05C | BLTSIZV | write | ECS/AGA |
| $05E | BLTSIZH | write | ECS/AGA |
| $060 | BLTCMOD | write | OCS/ECS/AGA |
| $062 | BLTBMOD | write | OCS/ECS/AGA |
| $064 | BLTAMOD | write | OCS/ECS/AGA |
| $066 | BLTDMOD | write | OCS/ECS/AGA |
| $070 | BLTCDAT | write | OCS/ECS/AGA |
| $072 | BLTBDAT | write | OCS/ECS/AGA |
| $074 | BLTADAT | write | OCS/ECS/AGA |
| $078 | SPRHDAT | write | ECS/AGA |
| $07A | BPLHDAT | write | ECS/AGA |
| $07C | DENISEID | read | ECS/AGA |
| $07E | DSKSYNC | write | OCS/ECS/AGA |
| $080 | COP1LCH | write | OCS/ECS/AGA |
| $082 | COP1LCL | write | OCS/ECS/AGA |
| $084 | COP2LCH | write | OCS/ECS/AGA |
| $086 | COP2LCL | write | OCS/ECS/AGA |
| $088 | COPJMP1 | write | OCS/ECS/AGA |
| $08A | COPJMP2 | write | OCS/ECS/AGA |
| $08C | COPINS | write | OCS/ECS/AGA |
| $08E | DIWSTRT | write | OCS/ECS/AGA |
| $090 | DIWSTOP | write | OCS/ECS/AGA |
| $092 | DDFSTRT | write | OCS/ECS/AGA |
| $094 | DDFSTOP | write | OCS/ECS/AGA |
| $096 | DMACON | write | OCS/ECS/AGA |
| $098 | CLXCON | write | OCS/ECS/AGA |
| $09A | INTENA | write | OCS/ECS/AGA |
| $09C | INTREQ | write | OCS/ECS/AGA |
| $09E | ADKCON | write | OCS/ECS/AGA |
| $0A0 | AUD0LCH | write | OCS/ECS/AGA |
| $0A2 | AUD0LCL | write | OCS/ECS/AGA |
| $0A4 | AUD0LEN | write | OCS/ECS/AGA |
| $0A6 | AUD0PER | write | OCS/ECS/AGA |
| $0A8 | AUD0VOL | write | OCS/ECS/AGA |
| $0AA | AUD0DAT | write | OCS/ECS/AGA |
| $0B0 | AUD1LCH | write | OCS/ECS/AGA |
| $0B2 | AUD1LCL | write | OCS/ECS/AGA |
| $0B4 | AUD1LEN | write | OCS/ECS/AGA |
| $0B6 | AUD1PER | write | OCS/ECS/AGA |
| $0B8 | AUD1VOL | write | OCS/ECS/AGA |
| $0BA | AUD1DAT | write | OCS/ECS/AGA |
| $0C0 | AUD2LCH | write | OCS/ECS/AGA |
| $0C2 | AUD2LCL | write | OCS/ECS/AGA |
| $0C4 | AUD2LEN | write | OCS/ECS/AGA |
| $0C6 | AUD2PER | write | OCS/ECS/AGA |
| $0C8 | AUD2VOL | write | OCS/ECS/AGA |
| $0CA | AUD2DAT | write | OCS/ECS/AGA |
| $0D0 | AUD3LCH | write | OCS/ECS/AGA |
| $0D2 | AUD3LCL | write | OCS/ECS/AGA |
| $0D4 | AUD3LEN | write | OCS/ECS/AGA |
| $0D6 | AUD3PER | write | OCS/ECS/AGA |
| $0D8 | AUD3VOL | write | OCS/ECS/AGA |
| $0DA | AUD3DAT | write | OCS/ECS/AGA |
| $0E0 | BPL1PTH | write | OCS/ECS/AGA |
| $0E2 | BPL1PTL | write | OCS/ECS/AGA |
| $0E4 | BPL2PTH | write | OCS/ECS/AGA |
| $0E6 | BPL2PTL | write | OCS/ECS/AGA |
| $0E8 | BPL3PTH | write | OCS/ECS/AGA |
| $0EA | BPL3PTL | write | OCS/ECS/AGA |
| $0EC | BPL4PTH | write | OCS/ECS/AGA |
| $0EE | BPL4PTL | write | OCS/ECS/AGA |
| $0F0 | BPL5PTH | write | OCS/ECS/AGA |
| $0F2 | BPL5PTL | write | OCS/ECS/AGA |
| $0F4 | BPL6PTH | write | OCS/ECS/AGA |
| $0F6 | BPL6PTL | write | OCS/ECS/AGA |
| $0F8 | BPL7PTH | write | AGA |
| $0FA | BPL7PTL | write | AGA |
| $0FC | BPL8PTH | write | AGA |
| $0FE | BPL8PTL | write | AGA |
| $100 | BPLCON0 | write | OCS/ECS/AGA |
| $102 | BPLCON1 | write | OCS/ECS/AGA |
| $104 | BPLCON2 | write | OCS/ECS/AGA |
| $106 | BPLCON3 | write | ECS/AGA |
| $108 | BPL1MOD | write | OCS/ECS/AGA |
| $10A | BPL2MOD | write | OCS/ECS/AGA |
| $10C | BPLCON4 | write | AGA |
| $10E | CLXCON2 | write | AGA |
| $110 | BPL1DAT | write | OCS/ECS/AGA |
| $112 | BPL2DAT | write | OCS/ECS/AGA |
| $114 | BPL3DAT | write | OCS/ECS/AGA |
| $116 | BPL4DAT | write | OCS/ECS/AGA |
| $118 | BPL5DAT | write | OCS/ECS/AGA |
| $11A | BPL6DAT | write | OCS/ECS/AGA |
| $11C | BPL7DAT | write | AGA |
| $11E | BPL8DAT | write | AGA |
| $120 | SPR0PTH | write | OCS/ECS/AGA |
| $122 | SPR0PTL | write | OCS/ECS/AGA |
| $124 | SPR1PTH | write | OCS/ECS/AGA |
| $126 | SPR1PTL | write | OCS/ECS/AGA |
| $128 | SPR2PTH | write | OCS/ECS/AGA |
| $12A | SPR2PTL | write | OCS/ECS/AGA |
| $12C | SPR3PTH | write | OCS/ECS/AGA |
| $12E | SPR3PTL | write | OCS/ECS/AGA |
| $130 | SPR4PTH | write | OCS/ECS/AGA |
| $132 | SPR4PTL | write | OCS/ECS/AGA |
| $134 | SPR5PTH | write | OCS/ECS/AGA |
| $136 | SPR5PTL | write | OCS/ECS/AGA |
| $138 | SPR6PTH | write | OCS/ECS/AGA |
| $13A | SPR6PTL | write | OCS/ECS/AGA |
| $13C | SPR7PTH | write | OCS/ECS/AGA |
| $13E | SPR7PTL | write | OCS/ECS/AGA |
| $140 | SPR0POS | write | OCS/ECS/AGA |
| $142 | SPR0CTL | write | OCS/ECS/AGA |
| $144 | SPR0DATA | write | OCS/ECS/AGA |
| $146 | SPR0DATB | write | OCS/ECS/AGA |
| $148 | SPR1POS | write | OCS/ECS/AGA |
| $14A | SPR1CTL | write | OCS/ECS/AGA |
| $14C | SPR1DATA | write | OCS/ECS/AGA |
| $14E | SPR1DATB | write | OCS/ECS/AGA |
| $150 | SPR2POS | write | OCS/ECS/AGA |
| $152 | SPR2CTL | write | OCS/ECS/AGA |
| $154 | SPR2DATA | write | OCS/ECS/AGA |
| $156 | SPR2DATB | write | OCS/ECS/AGA |
| $158 | SPR3POS | write | OCS/ECS/AGA |
| $15A | SPR3CTL | write | OCS/ECS/AGA |
| $15C | SPR3DATA | write | OCS/ECS/AGA |
| $15E | SPR3DATB | write | OCS/ECS/AGA |
| $160 | SPR4POS | write | OCS/ECS/AGA |
| $162 | SPR4CTL | write | OCS/ECS/AGA |
| $164 | SPR4DATA | write | OCS/ECS/AGA |
| $166 | SPR4DATB | write | OCS/ECS/AGA |
| $168 | SPR5POS | write | OCS/ECS/AGA |
| $16A | SPR5CTL | write | OCS/ECS/AGA |
| $16C | SPR5DATA | write | OCS/ECS/AGA |
| $16E | SPR5DATB | write | OCS/ECS/AGA |
| $170 | SPR6POS | write | OCS/ECS/AGA |
| $172 | SPR6CTL | write | OCS/ECS/AGA |
| $174 | SPR6DATA | write | OCS/ECS/AGA |
| $176 | SPR6DATB | write | OCS/ECS/AGA |
| $178 | SPR7POS | write | OCS/ECS/AGA |
| $17A | SPR7CTL | write | OCS/ECS/AGA |
| $17C | SPR7DATA | write | OCS/ECS/AGA |
| $17E | SPR7DATB | write | OCS/ECS/AGA |
| $180 | COLOR00 | write | OCS/ECS/AGA |
| $182 | COLOR01 | write | OCS/ECS/AGA |
| $184 | COLOR02 | write | OCS/ECS/AGA |
| $186 | COLOR03 | write | OCS/ECS/AGA |
| $188 | COLOR04 | write | OCS/ECS/AGA |
| $18A | COLOR05 | write | OCS/ECS/AGA |
| $18C | COLOR06 | write | OCS/ECS/AGA |
| $18E | COLOR07 | write | OCS/ECS/AGA |
| $190 | COLOR08 | write | OCS/ECS/AGA |
| $192 | COLOR09 | write | OCS/ECS/AGA |
| $194 | COLOR10 | write | OCS/ECS/AGA |
| $196 | COLOR11 | write | OCS/ECS/AGA |
| $198 | COLOR12 | write | OCS/ECS/AGA |
| $19A | COLOR13 | write | OCS/ECS/AGA |
| $19C | COLOR14 | write | OCS/ECS/AGA |
| $19E | COLOR15 | write | OCS/ECS/AGA |
| $1A0 | COLOR16 | write | OCS/ECS/AGA |
| $1A2 | COLOR17 | write | OCS/ECS/AGA |
| $1A4 | COLOR18 | write | OCS/ECS/AGA |
| $1A6 | COLOR19 | write | OCS/ECS/AGA |
| $1A8 | COLOR20 | write | OCS/ECS/AGA |
| $1AA | COLOR21 | write | OCS/ECS/AGA |
| $1AC | COLOR22 | write | OCS/ECS/AGA |
| $1AE | COLOR23 | write | OCS/ECS/AGA |
| $1B0 | COLOR24 | write | OCS/ECS/AGA |
| $1B2 | COLOR25 | write | OCS/ECS/AGA |
| $1B4 | COLOR26 | write | OCS/ECS/AGA |
| $1B6 | COLOR27 | write | OCS/ECS/AGA |
| $1B8 | COLOR28 | write | OCS/ECS/AGA |
| $1BA | COLOR29 | write | OCS/ECS/AGA |
| $1BC | COLOR30 | write | OCS/ECS/AGA |
| $1BE | COLOR31 | write | OCS/ECS/AGA |
| $1C0 | HTOTAL | write | ECS/AGA |
| $1C2 | HSSTOP | write | ECS/AGA |
| $1C4 | HBSTRT | write | ECS/AGA |
| $1C6 | HBSTOP | write | ECS/AGA |
| $1C8 | VTOTAL | write | ECS/AGA |
| $1CA | VSSTOP | write | ECS/AGA |
| $1CC | VBSTRT | write | ECS/AGA |
| $1CE | VBSTOP | write | ECS/AGA |
| $1D0 | SPRHSTRT | write | ECS/AGA |
| $1D2 | SPRHSTOP | write | ECS/AGA |
| $1D4 | BPLHSTRT | write | ECS/AGA |
| $1D6 | BPLHSTOP | write | ECS/AGA |
| $1D8 | HHPOSW | write | ECS/AGA |
| $1DA | HHPOSR | read | ECS/AGA |
| $1DC | BEAMCON0 | write | ECS/AGA |
| $1DE | HSSTRT | write | ECS/AGA |
| $1E0 | VSSTRT | write | ECS/AGA |
| $1E2 | HCENTER | write | ECS/AGA |
| $1E4 | DIWHIGH | write | ECS/AGA |
| $1E6 | BPLHMOD | write | AGA |
| $1E8 | SPRHPTH | write | AGA |
| $1EA | SPRHPTL | write | AGA |
| $1EC | BPLHPTH | write | AGA |
| $1EE | BPLHPTL | write | AGA |
| $1FC | FMODE | write | AGA |
| $1FE | NO-OP | write | ECS/AGA |