CS/A65 Computer Board Memory Map
This section summarizes the I/O memory addresses used by the different boards into one table, so you can try to find out which boards are compatible.
Many boards have jumpers to set the I/O area. In these tables all possible addresses are documented, with "(default)" for the default setting, and "(opt)" for the other settings.
I/O $E8**
$80* | $81* | $82* | $83* | $84* | $85* | $86* | $87* | $88* | $89* | $8a* | $8b* | $8c* | $8d* | $8e* | $8f* | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Main boards | ||||||||||||||||
PETCPU | UART | |||||||||||||||
Main BIOS | Control, UART (opt) | Control, UART (opt) | ||||||||||||||
AUXCPU | AUXCPU control (default) | AUXCPU control (opt) | ||||||||||||||
I/O boards | ||||||||||||||||
Video | CRTC, Control (default) | CRTC, Control (opt) | ||||||||||||||
PETIO | PIA1 (default) | PIA2 (default) | VIA (default) | |||||||||||||
Ethernet | CS8900A (default) | CS8900A (opt) | ||||||||||||||
PC floppy | WD1770 (opt) | VIA (opt) | WD1770 (default) | VIA (default) | ||||||||||||
DRVIO | WD177x, Control (default) | CIA (default) | WD177x, Control (opt) | CIA (opt) | ||||||||||||
DUART | UART1, UART2 | |||||||||||||||
SCSI | SCSI (opt) | SCSI (Default) | ||||||||||||||
Ramdisk | Ramdisk (default) | Ramdisk (opt) | ||||||||||||||
Special purpose boards | ||||||||||||||||
VIA Prototyping | VIA (alt1) | VIA (alt2) | ||||||||||||||
Block Transfer engine | Blitter (alt) | |||||||||||||||
Deprecated boards | ||||||||||||||||
csakey | PIA1, ACIA (default) | PIA1, ACIA (opt) | ||||||||||||||
csaiec | PIA | VIA |
I/O $EB**
$b0* | $b1* | $b2* | $b3* | $b4* | $b5* | $b6* | $b7* | $b8* | $b9* | $ba* | $bb* | $bc* | $bd* | $be* | $bf* | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Main boards | ||||||||||||||||
CPU816 | $ebff Control (default) |
I/O $EC**
$c0* | $c1* | $c2* | $c3* | $c4* | $c5* | $c6* | $c7* | $c8* | $c9* | $ca* | $cb* | $cc* | $cd* | $ce* | $cf* | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Main boards | ||||||||||||||||
Gecko | UART | VIA | ||||||||||||||
Special purpose boards | ||||||||||||||||
USB+Ethernet | CS8900A | SL811HS (device 0-7) SL811HS (host 8-f) | ||||||||||||||
keyemu | shared RAM keybd1 | |||||||||||||||
Deprecated boards | ||||||||||||||||
csakey | PIA1, ACIA (prototype) |
I/O $ED**
$d0* | $d1* | $d2* | $d3* | $d4* | $d5* | $d6* | $d7* | $d8* | $d9* | $da* | $db* | $dc* | $dd* | $de* | $df* | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Special purpose boards | ||||||||||||||||
keyemu | shared RAM keybd2 |
I/O $EF**
$f0* | $f1* | $f2* | $f3* | $f4* | $f5* | $f6* | $f7* | $f8* | $f9* | $fa* | $fb* | $fc* | $fd* | $fe* | $ff* | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Main boards | ||||||||||||||||
Main CPU | Control reg, CPU addr | MMU | ||||||||||||||
Main BIOS | Control, UART (opt) | Control, UART (default) | ||||||||||||||
CPU816 | $efff Control (opt) | |||||||||||||||
I/O boards | ||||||||||||||||
Video | CRTC, Control (opt since 1.4) | CRTC, Control (opt since 1.4) | ||||||||||||||
PETIO | PIA1 (opt) | PIA2 (opt) | VIA (opt) | |||||||||||||
Special purpose boards | ||||||||||||||||
COPRO | Control register | |||||||||||||||
Block Transfer engine | Blitter (alt) |
Note: The csakey schematics actually shows $e9x only, while my implementation has $e1x for PET compatibility and a jumper for $c1x.
Note: The PC floppy schematics actually shows $8e*/8f* only, but for testing I found it incompatible with the PETCPU. So my prototype has a jumper now.
This section summarizes the bus (physical) memory addresses used by the different boards into one table, so you can find out which boards are compatible.
Many boards have jumpers to set the memory area. In these tables all possible addresses are documented, with "(default)" for the default setting, and "(opt)" for the other settings.
The table uses sections of 64k
Map
$0**** | $1**** | $2**** | $3**** | $4**** | $5**** | $6**** | $7**** | $8**** | $9**** | $a**** | $b**** | $c**** | $d**** | $e**** | $f**** | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Main boards | ||||||||||||||||
Main BIOS (ex.1 - max RAM, V3.0+ boards) | 32k boot RAM, 32k boot ROM | 256k ROM ($48000-$4FFFF shared as boot) | 512k RAM ($80000-$87FFF shared as boot) | |||||||||||||
Main BIOS (ex.2 - max ROM, V3.0+ boards) | 32k boot RAM, 32k boot ROM | 256k RAM ($40000-$47FFF shared as boot) | 512k ROM ($88000-$8FFFF shared as boot) | |||||||||||||
Main BIOS (ex.3 - minimum, and V2.x boards) | 32kRAM, 32kROM | |||||||||||||||
Gecko (V2.1+, when used with a Main CPU) | 32k RAM, 32k ROM | |||||||||||||||
I/O boards | ||||||||||||||||
Video | 64k dRAM, partially used as Video RAM (default) | 64k RAM (opt) | ||||||||||||||
Special purpose boards | ||||||||||||||||
CSAEMU | 64k window into emulated CPU address space |
Note: the BIOS board has a plethora of jumpers and options. The examples shown are only a few of the available possibilities)