I/O Map: &00 - Port A Data I/O, page ROM in &01 - Port B Data I/O, page ROM in &02 - Port C Data I/O, page ROM in &03 - READ(82c55): Control WRITE: Control, page ROM in &04 - Port A Data I/O, page ROM out &05 - Port B Data I/O, page ROM out &06 - Port C Data I/O, page ROM out on reading b7=TxRDY for PortA, b1=RxRDY for PortB &07 - READ(82c55): Control WRITE: Control, page ROM in &10+n - Z80 SIO &18+n - Baud rate selection At the hardware level, On the BBC host: 6522 VIA is use for the I/O Port A is set for input, PortB is set for output CA1 active signals that data is present in PortA CB1 active signals that data can be written to PortB CA1 and CB1 go active on negative edge On the CoPro side: Z80 PIO used for I/O PortA is output, writing to 6522's PortA PortB is input, reading from 6522's PortB PortC reads 6522's CA1 and CB1 handshake lines