[comp.emacs] Fix for microEMACS under VMS

ittfb@dcatla.UUCP (04/30/87)

I've gotten a bunch of requests for information on the ^S problem I
described in an earlier posting, so I decided to post the fix.

Here's what I did.  It didn't involve vmsvt.c (although I changed that to
eliminate the 50 pad characters) and set up the vt100 keypad in the proper
mode.  The change that stopped the ^S's was made in termio.  In the function
"ttopen()", the author sets the port status to what would be "raw" in Unix
and I believe is "PASSALL" under VMS.  I changed that mode to "PASSTHRU"
which passes all characters but ^S and ^Q, which it processes normally for
flow control.  The I changed the key bindings for ^S and ^Q functions to
some other keys in emacs.rc.

Change:
	newmode[1] &= ~(TT$M_TTSYNC | TT$M_HOSTSYNC);
to:
	newmode[1] &= ~(TT$M_HOSTSYNC);
in file vmsvt.c, function ttopen().

We also changed the bind.c and input.c files so that they would accept
vt100 (as opposed to vt52) function and cursor control codes.  I think
this is basically a kludge, however, and we are planning to rewrite the
cursor and function key parser as a state machine, which should be more
general and robust.  (Of course if anyone has done this, let me know.)

I hope this helps.  Please e-mail any questions.

Tom Blakely
DCA Inc.
(404)442-4866
{akgua, sun!sunatl, gatech}!dcatla!ittfb