hcj@lzaz.ATT.COM (HC Johnson) (12/16/88)
Thought I would try to describe what has happened in adding the rs232 port to minix. Several key areas show up. 1. lib/ioctl needed to be more general. right now its very tty specific. 2. kernel/tty.c implies that an ODONE message might be useful to rs232. NO. The problem is that is but one message Q to tty, and once a single message is waiting, all others are discarded. (You did notice that interrupt() does not return the error codes!). The result is that both kbd, rs232, and midi, have to run thru 1 input buffer, and ODONE has to be added as a special code (much like OPERATOR). When all is done, I can log in on the minix thru the port. And I can call out using cu. Ah, cu. 3. cu problems. Cu runs as a parent/child one sending one receiving. with the child allowed to swap in only every .5 seconds, it is very sluggish. I solved this by extracting the receive() process and let the child exec it rather than call it. 4. Scattered around is non support of changing baud rates. Anyway, after trying several approaches, I am going to leave kbd/tty alone, and put in separate drivers for rs232 and midi. This means cloning tty.c for the most part but will make for a cleaner division of whats new and whats old. Also solutions to rs232 throughput problems can then be separated from keyboard niceties. This will all get posted after Xmas. Howard C. Johnson ATT Bell Labs ...lzaz!hcj