[Info-vax] SET TERM /TTSYNC on ancient VMS versions
hans.huebner at gmail.com
hans.huebner at gmail.com
Wed Aug 15 14:01:42 EDT 2018
Hi,
I've been playing around with VAX LISP recently (see https://netzhansa.blogspot.com/2018/08/evaluating-vax-lisp-30.html for my experience report) and one quirk that I found annoying is the fact that ^S and ^Q cannot be bound to editor functions. The Editor Programming Manual (http://bitsavers.trailing-edge.com/pdf/dec/vax/lang/lisp/3.0/AA-Y923D-TE_VAX_LISP_VMS_3.0_Editor_Programming_Guide_Aug1989.pdf) states in 3.3.1:
"You cannot bind the characters ^S and ^Q, which lock and unlock your terminal. This is a limitation of the operating system."
Annoyingly, this restriction is actively enforced in the LISP editor:
Lisp> (bind-command "View File" #\^S)
Warning in EVAL: Cannot bind #\^S in a command sequence.
(even though this is only signalled as a warning, no binding is performed).
Now, as far as my experience goes, SET TERM/NOTTSYNC switches off software flow control, making Ctrl-S/Ctrl-Q to be just standard control characters. Are they still treated specially even with /NOTTSYNC? I know from experience that one could very well read and write ^S and ^Q from the terminal driver as I have implemented several asynchronous protocols back in the day, however that was on VMS V5.x.
I've discussed this with people who were in the VAX LISP team back in the day, but they could not remember why this restriction existed in the editor. Is it possible that /NOTTSYNC was added in a later version of VMS only (the VAX LISP project started in 1982)?
Thanks,
Hans
More information about the Info-vax
mailing list