The self test is bypassed by unmapping the MPSC and activating the handlers when everything is normal.
Now i can send data from the Rainbow to a Putty terminal. There is no transmission in the other direction, as far as i can see...
I've changed z80dart_channel::receive_data to print fifo depth and apparently, the rx register is not being read -- maybe interrupt service routine does not run?
(this is from error.log when raibow is connected to remote loopback i.e. TCP echo service)
[:upd7201:cha] Z80DART ":upd7201" Channel A : Receive Data Byte '2f' (fifo -1)
[:upd7201:cha] Z80DART ":upd7201" Channel A : Receive Data Byte '2f' (fifo 0)
[:upd7201:cha] Z80DART ":upd7201" Channel A : Receive Data Byte '2f' (fifo 1)
[:upd7201:cha] Z80DART ":upd7201" Channel A : Receive Data Byte '2f' (fifo 2)
[:upd7201:cha] Z80DART ":upd7201" Channel A : Receive Data Byte '2f' (fifo 2)
[:upd7201:cha] Z80DART ":upd7201" Channel A : Receive Data Byte '2f' (fifo 2)
[:upd7201:cha] Z80DART ":upd7201" Channel A : Receive Data Byte '2f' (fifo 2)
[:upd7201:cha] Z80DART ":upd7201" Channel A : Receive Data Byte '2f' (fifo 2)
<...>