bstempleton@watmath.UUCP (Brad Templeton) (10/20/83)
Because I sometimes use noisy modem lines like this one, I set my INTR character to ^C instead of rubout (del or ^? as some call it) which is the silly unix default, since it is the most common character on a noisy line. But silly more ignores this fact and still breaks when it gets a rubout even though it should be paying no special attention. Much as I hate to say it, this makes me want to agree with Ian Allen about unix programmers, which are a trademark of BTL. -- Brad Templeton - Waterloo, Ont. (519) 886-7304
perry@gatech.UUCP (10/22/83)
My experience with noisy lines is that framing errors are much more common that any single character (like rubout). Since the dh and dz drivers both turn framing errors into the current interrupt character, it doesn't matter what you set it to--you'll still get interrupts on a noisy line. And since more runs in CBREAK mode, the interrupt character terminates the program. It's also true that more treats a rubout in response to its prompt the same way it treats a q. It probably should check for your current interrupt character instead of assuming the default rubout. -- Perry Flinn Ga Tech School of ICS, Atlanta perry.gatech@rand-relay allegra!gatech!perry
chris@umcp-cs.UUCP (10/24/83)
Actually, the entire issue of breaks, framing errors, and interrupt characters is thorougly mishandled by the Berkeley newtty driver. The device drivers carefully convert framing errors to the appropriate character from tp->t_chr (I don't know what they've called it in 4.2). It should just pass the break as a special magic code, on up into the higher level protocols. There should be flags for ignoring BREAK/FEs, and for generating interrupts regardless of the interrupt character (or lack thereof, even in RAW mode) when a BREAK/FE is detected. (They look the same to most hardware.) Berkeley should throw the whole thing out and write a new one that's basically compatible with the System 5 setup, with the addition (of course) of those ever-so-fun job control characters. In the meantime, you have two options: suffer with the noise, or turn off your interrupt completely (``stty intr u'') -- this will make all the device drivers ignore BREAK/FEs. Chris -- In-Real-Life: Chris Torek, Univ of MD Comp Sci UUCP: {seismo,allegra,brl-bmd}!umcp-cs!chris CSNet: chris@umcp-cs ARPA: chris.umcp-cs@CSNet-Relay
dmmartindale@watcgl.UUCP (Dave Martindale) (10/27/83)
More has the character RUBOUT compiled into it as one of the cases in a switch statement. The code is prettier this way than if an IF was used to check against your current interrupt character, but is thus braindamaged. Lesson to all programmers: avoid compiling things like RUBOUT as the interrupt character into your program if it in fact can be changed by the user. Vi suffers from a related problem: if one of your arrow keys transmits ^Z, you can't use it and still be able to suspend your program, even if you reassign your suspend character. The reason is that ^Z is compiled in (a case of a switch again) as the suspend character, and if you pick another suspend character vi will arrange to map it to ^Z internally, which means that you can't map the ^Z from the arrow key into one of hjkl because that would remap the suspend character too.
thomas@utah-gr.UUCP (Spencer W. Thomas) (10/31/83)
I understand that you will have to have a System V license in order to get 4.3Bsd. =Spencer