All registers are r/w unless otherwise noted $C000 Keyboard Register (r), 80STORE off (w) $C001 80STORE on $C002 AUXRD off $C003 AUXRD on $C004 AUXWRT off $C005 AUXWRT on $C006 CXROM off $C007 CXROM on $C008 AUXZP off $C009 AUXZP on $C00A C3ROM off $C00B C3ROM on $C00C 80COL off (w) $C00D 80COL on (w) $C00E ALTCH off (w) $C00F ALTCH on (w) $C010 Clear keyboard strobe $C011 Read LCBANK2 as bit 7 $C012 Read LCRAM as bit 7 $C013 Read AUXRD as bit 7 $C014 Read AUXWR as bit 7 $C015 Read CXROM as bit 7 $C016 Read ALTZP as bit 7 $C017 Read C3ROM as bit 7 $C018 Read 80STORE as bit 7 $C019 VBL register (bit 7 = high during VBL) $C01A Read TEXT as bit 7 $C01B Read MIXED as bit 7 $C01C Read PAGE2 as bit 7 $C01D Read HIRES as bit 7 $C01E Read ALTCH as bit 7 $C01F Read 80COL as bit 7 $C020 Cassette Out $C021 $C022 Text Color Register (low nibble = background, high nibble = foreground) $C023 $C024 $C025 Key Modifiers Register $C026 NEED THIS INFO BADLY! $C027 NEED THIS INFO BADLY! $C028 $C029 New Video Register (bit 5 = monochrome video bit) $C02A $C02B $C02C $C02D Slot Register $C02E Mega II Vertical Counter bits 1-8 $C02F Mega II Horizontal counter bits 0-5 and Vertical Counter Bit 0 $C030 Speaker $C031 $C032 $C033 Clock Chip Data Register $C034 Clock Chip Control Register / Border Color $C035 Shadow Register bit 0: Set to disable shadowing standard bank $00/$01 video to banks $E0/$E1 bit 1: bit 2: bit 3: Set to disable shadowing bank $01 superhires screen to bank $E1 bit 4: bit 5: bit 6: Set to disable shadowing bank $00/$01 page $Cx locations to banks $E0/$E1 bit 7: $C036 CYA Register $C037 DMA Bank Address Register $C038 SCC B Command Register $C039 SCC A Command Register $C03A SCC B Data Register $C03B SCC A Data Register $C03C $C03D $C03E $C03F $C040 $C041 Interrupt Enable Register $C042 $C043 $C044 $C045 $C046 $C047 Clear VBL interrupt $C048 $C049 $C04A $C04B $C04C $C04D $C04E $C04F $C050 TEXT off $C051 TEXT on $C052 MIXED off $C053 MIXED on $C054 PAGE2 off $C055 PAGE2 on $C056 HIRES off $C057 HIRES on $C058 AN0 on $C059 AN0 off $C05A AN1 on $C05B AN1 off $C05C AN2 on $C05D AN2 off $C05E AN3 on $C05F AN3 off $C060 Cassette In $C061 Button 0 (bit 7 = high when pressed) [ aka Command key ] $C062 Button 1 (bit 7 = high when pressed) [ aka Option key ] $C063 Button 2 (bit 7 = high when pressed) $C064 Paddle 0 (bit 7 = high when timer expires) $C065 Paddle 1 (bit 7 = high when timer expires) $C066 Paddle 2 (bit 7 = high when timer expires) $C067 Paddle 3 (bit 7 = high when timer expires) $C068 State Register $C069 $C06A $C06B $C06C $C06D $C06E $C06F $C070 Paddle Trigger $C072 $C073 $C074 $C075 $C076 $C077 $C078 $C079 $C07A $C07B $C07C $C07D $C07E $C07F $C080 Read LC bank 2, write protect LC RAM $C081 Read ROM, and second read write-enables LC RAM $C082 Read ROM, write protect LC RAM $C083 Read LC bank 2, and second read write-enables LC RAM $C084 Same as $C080 $C085 Same as $C081 $C086 Same as $C082 $C087 Same as $C083 $C088 Read LC bank 1, write protect LC RAM $C089 Read ROM, and second read write-enables LC RAM $C08A Read ROM, write protect LC RAM $C08B Read LC bank 1, and second read write-enables LC RAM $C08C Same as $C088 $C08D Same as $C089 $C08E Same as $C08A $C08F Same as $C08B $C090 | $C09F Slot 1 Access $C0A0 | $C0AF Slot 2 Access $C0B0 | $C0BF Slot 3 Access $C0C0 | $C0CF Slot 4 Access $C0D0 | $C0DF Slot 5 Access $C0E0 | $C0EF Slot 6 Access $C0F0 | $C0FF Slot 7 Access