Since the main UI on vanilla VME boards usually is a RS232 based terminal of some sort I am trying to figure out the way forward here. While I like the idea of diserial.c it seems to drain a lot CPU cycles. I got Average speed 45% for the fccpu1 board wich has three ACIA6850 and a PIT68230.
I can have done something wrong myself admitedly but when I study the code it seems to do a lot of updating of various signals in the RS232/diserial hook up.
For instance in device_serial_interface where the clock drive calls to rcv_edge which calls rcv_callback for every clock cycle, even when the line has no data on it. This is when my fan is working hard despite I am not typing anything on the terminal.
Why not update the signal in an event driven fashion, only when it changes state? I might have missed something fundamental about emulation though, let me know.
I have also looked at:
1) use one of the emulated VTxxx terminals but that would require firmwares
2) build a live socket connection to a native VTxxx terminal emulator or build in a simple telnet/ssh server
Any advice here is appreciated