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