From: turtle@newshub.sdsu.edu (Andrew Scherpbier)
Subject: New console/kdb driver
Organization: San Diego State University, College of Sciences
Date: Sun, 12 Apr 1992 16:43:19 GMT

We spent some time looking at pccons.c and decided that the terminal
emulation leaves a lot to be desired.  The arrow and function keys
don't send anything and the escape sequences which are accepted are
a small subset of a more standard ANSI emulation.
The following patch will change pccons.c so that all keys send something
reasonable in all states (shift, control, alt, numlock, capslock)
It is also very easy to change the things keys send (look in the code,
you'll see what I mean)
I am still working on adding more escape sequences for the terminal
emulation, but I thought many people would appreciate the fact that
with this patch they can at least use the cursor keys in tcsh and bash.

The escape sequences which we added are:

	ESC [ n J	where n is 0, 1, or 2.  Previously 0 was
			always assumed which made things weird when
			logged into another machine and using the 
			ansi terminal type
	ESC [ n J	where n is 0, 1, or 2. Samek as above.
	ESC [ fg ; bg r	We added this to see how hard it would be
			to add new escape sequences.  This changes
			the foreground and background colors for
			the standout mode.  We know this sequence
			interferes with the VT100 scrolling region
			stuff, but it was meant only as a test.
			I have no idea what this will do on a mono
			display...

The function keys send all the same escape sequences as the Xenix console
driver.  (We had the Xenix man pages handy...)  However, we did not
make provisions for sending special codes for control-shift; in this case
shift is assumed.
When pressing the alt key with any other key, the normal sequence is sent,
but all characters in the sequence have their high bit set.

This is only a preliminary version of the new driver.  We am going to add more
escape sequences (All the ones we can think of...) and make it so that the
string the function keys send can be configured with an escape sequence.

If you have any suggestions about what else we should add, drop a note.

I am including a compressed and uuencoded version of the patch file.

Andrew Scherpbier	Mike Halderman
turtle@kiwi.sdsu.edu	mrh@io.nosc.mil


begin 644 pccons.diff.Z
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
FU)"-APDW]L;[3IR&XU\!&LBQF T1_"4=6^1@C)';\3O>R,C8(P.Q
 
end