Path: utzoo!mnetor!uunet!seismo!sundc!pitstop!sun!gorodish!guy
From: guy@gorodish.Sun.COM (Guy Harris)
Newsgroups: comp.unix.wizards
Subject: Re: tset (BSD?)
Message-ID: <52295@sun.uucp>
Date: 6 May 88 17:34:34 GMT
References: <8776@sol.ARPA> <4493@hoptoad.uucp> <98@skep2.ATT.COM> <352@cloud9.UUCP>
Sender: news@sun.uucp
Lines: 19

> For forms and such that use raw mode, the System V tty driver's VMIN &
> VTIME allow you to simulate this without much CPU/code cost.  Also, you
> can specify alternate characters that tell the read() "I got enough,
> return."

Yes, but you can't do them both at the same time.  VMIN and VTIME work in
"non-canonical" mode; the two alternate end-of-line characters work in
"canonical" mode.

In fact, the VTIME element of "c_cc" is the *SAME* element as the VEOL (first
alternate end-of-line character) element of "c_cc".

There is no form of "non-canonical" mode in the "standard" UNIX tty drivers
that also has a "terminator" character.  Jack Slingwine put such a mode into
the tty driver at Computer Consoles, for the benefit of an intelligent terminal
we were using; he added an IBRK bit to the "c_lflag" field, and if it was set
you were in a mode where one of VMIN or VTIME worked as it did in non-canonical
mode (I forget which one it was) and the other of the two held the
"end-of-record" character.