any harm in allowing only ctrl-Q to restart output?

Jerry Aguirre jerry at oliveb.UUCP
Sat Jan 19 11:22:08 AEST 1985


I have made a modification to our system to do this.  We run mostly
vt100s and the interference of type ahead with the vt100's Xon/Xoff can
be annoying.

The problem can occur when the user types during high baud rate
output.  For example cat a large file and while it is outputing type in
the next command.  The screen will contain blocks which are the vt100's
way of telling you that it's input buffer overflowed.  It can be hard
to duplicate this as system load may slow the output and some vt100s
have larger input buffers than others.  It is easy to exaggerate the
problem though.  Just cat a large file, quickly type control-S, type a
space, wait a few seconds, then type control-Q.  The resulting output
will be truncated because Unix restarted the output after the space and
the vt100's input buffer overflowed.

I modified the Berkeley "tset" command to examine the terminals termcap
for a ":QS:" entry.  This fits in with tset's use of other capital
termcap entries for setting delays and such.  If the QS entry is there
it does the appropriate ioctl to set "restart on control-Q only".
Fortunately all our systems had the appropriate ioctl to do this.  I
suggest you look hard before modifying your kernel.  The ioctl may be
there but just hard to find.  Check the tty(4) man page carefully.

I like the tset approach as it makes the change terminal dependent.
Terminals without built-in flow control still have the benefit of the
restart on any character "feature".  Also, as has been mentioned
before, this change does not destroy the restart on any character
feature.  The user of a vt100 never had that feature.  Even when Unix
sent the characters, the vt100 refused to display them!

I can post the diffs to tset but as has been mentioned the ioctl
required is very system dependent.  I have the changes for the BSD 2.8,
2.9, and 4.1 systems.  Even within BSD all three are different.

				Jerry Aguirre @ Olivetti ATC
{hplabs|fortune|idi|ihnp4|tolerant|allegra|tymix}!oliveb!jerry



More information about the Comp.unix.wizards mailing list