[net.unix-wizards] to RAW or not to RAW

chris@umcp-cs.UUCP (06/14/83)

For a Xerox 1750 nroff post-processor I wrote, I wanted to send any
character from ^A to ~.  Luckily 4.1BSD has this wonderful bit called
LLITOUT.  In LLITOUT you can send anything, yet the tty driver still
responds to ^S/^Q.  No need to even turn off CRMOD, or any other.

Best of all, it's wonderfully non-portable. :-)

			- Chris ({seismo,allegra}!umcp-cs!chris)

guy@rlgvax.UUCP (06/14/83)

Well, the LITOUT transmit-characters-unprocessed (except for parity, it
looks like) bit IS available in USG UNIX, only it's turned on by turning
OPOST *off*.  (Seems a lot of TTY driver features which were activated by
turning bits on in, say, the 4.1 driver are activated by turning a bit off
in the USG driver; turning DECCTLQ on in 4.1 is equivalent to turning IXANY
off in USG.)  That's one nice thing about the USG driver; you get a bit for
most features, and can selectively turn them on and off without affecting
other things (a la carte as opposed to full dinner).  For example, you
can select

	7-bits-plus-parity vs. 8-bits
	XON/XOFF flow control on or off
	process signal characters (interrupt, quit)
	process break signals as interrupt
	process erase/kill/EOF characters

independently of one another (for example, you can have an 8-bit terminal
with XON/XOFF flow control - in fact, you can have 8 bits plus parity).  You
can also efficiently turn off all "special" output processing (CR-NL mapping,
tab expansion, delays) with one bit - this is also independent of input
processing and 7-bit vs. 8-bit processing.  You can also get at other
capabilities of the hardware - 5-bit characters for Baudot lines, for example.

It is, unfortunately, rather baroque and complicated; but since serial lines
are used to interface to a wide variety of equipment (normal terminals, 8-bit
terminals, Baudot lines, other computers running various protocols) it gives
you the ability to talk to all of them without having to tweak the tty driver.
Most users and hardware don't need all this, but its nice to have it there
when you do need it.

		Guy Harris
		RLG Corporation
		{seismo,mcnc,we13,brl-bmd,allegra}!rlgvax!guy