[comp.sys.m88k] A question about IO under DG/UX

newton@gumby.cs.caltech.edu (Mike Newton) (11/19/90)

This may be a general SysV / BSD question, but for now i'll try just asking
this list.  On DG/UX 4.30 i would like to 

	[1] have two open file descriptors (numbers unimportant):
		#1 : opens (for writing) the ttypN side of a pty/tty pair
		#2 : opens (for reading) /dev/tty01

	[2] i do not want _any_ character interpretation on either line.
		(ie: 'raw' mode is great, but 'cbreak' with all special
		 processing characters turned off is also ok.  equiv is
		 true of ATT mode).


	[3] i dont care if i have to use SysV semanics or BSD, though
		i prefer BSD.

Now comes the hard part:

	[4] when (system) buffers fill up i want the IO to stop.
		 ie: if  what is on 'tty01' is sending characters
		 too fast, i'd like the terminal driver to de-assert
		 (turn off) RTS until there is buffer space. i dont
		 want ^g (bells) as one normally gets in BSD cooked mode.

		 Additionally, i'd like something similar for
		 the pty pair.

Is this possible?  I've tried many ways, all w/o luck.
I know that I can peek at the number of chars that the system thinks
is in the buffer, but at 19200, i'd rather not do the extra context
switching.

Many thanks,
- mike (newton@gumby.cs.caltech.edu)


ps: has anyone actually played with the modem signal lines as defined
in the DG/UX /usr/include/sys/_int_bsd_tty_ioctl.h ?  
(ex: TIOCCBRK	(clear break cond.),  TIOCM_LE (line enabled)
     TIOCM_DTR (data terminal ready), TIOCM_RTS (request to send)...??)
If so, how'd you do it????


ps: i've (w/ help from a friend) written a replacement for 'cu' on DG/UX.
It runs a little faster/more reliably, and can actually send (ok: fake)
breaks (the DG version doesnt seem to do this!).  But even with all this
I need to have hardware flow control in order to hope to run at 19200.