Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.2 9/18/84; site cornell.UUCP Path: utzoo!watmath!clyde!burl!ulysses!mhuxr!mhuxt!houxm!vax135!cornell!jqj From: jqj@cornell.UUCP (J Q Johnson) Newsgroups: net.emacs Subject: Re: flow control Message-ID: <529@cornell.UUCP> Date: Fri, 8-Nov-85 08:34:19 EST Article-I.D.: cornell.529 Posted: Fri Nov 8 08:34:19 1985 Date-Received: Sun, 10-Nov-85 08:18:45 EST References: <1133@ulysses.UUCP> Reply-To: jqj@cornell.UUCP (J Q Johnson) Organization: Cornell Univ. CS Dept. Lines: 29 Summary: We've beaten this topic to death, and it doesn't belong on net.emacs anyway. Let's at least move the discussion to net.dcom or something! To summarize: 1/ many people don't like XON/XOFF flow control. In particular, most versions of Emacs, since they traditionally use C-s and C-q as important commands, work MUCH better in a non-flowcontrolled environment. 2/ it is possible in most cases to substitute padding for XON/XOFF. However, padding calculations can be VERY complex. One generally doesn't want to pad for the worst case; on a VT100 at 19.2Kb, this would be a pad after every single character! Also, padding is a problem with terminal emulators, since my emulated VT100 (a VT101 is one such emulator) may have very different padding requirements from a real one. 3/ doing padding requires that the program know a great deal about the terminal and about display processing. At the very least it needs to know the output baud rate (which is not always available over network connections), and the precise terminal type. Now that it is becomming common to put a windowing system between the program and a "virtual" terminal, it becomes necessary either for the program to know about the characteristics of that windowing system or for the windowing system to be sufficiently fast to handle any incoming data rate. 4/ padding uses up bandwidth, which can sometimes be too costly (e.g. if you are paying Tymnet a percharacter charge). Using timed delays, however, does not work since downstream buffering can completely foul up your timing. 5/ in some environments flowcontrol cannot be disabled. For example, some "intelligent" front ends insist on processing ^S/^Q. In such situations, your ONLY option is to use a flow-controlled version of Emacs. Current GNU Emacs has such an option, as do some versions of Gosling Emacs.