I've put up a new version of QCTerm this weekend, Version 0.95, October 27,
2001. This new version has several new nice features:
SMART RETURN
The smart return feature that we talked about here on the list a week or so
ago is now the standard default configuration beginning with this version.
This won't have any impact on you if you've already downloaded a copy of
QCTerm. Downloading a new copy never changes your configuration settings, but
it will affect all new users.
If already have a copy of QCTerm loaded on your PC and you wish to set the
return key to be equal to the ENTER key when in block mode, simply go to the
Terminal/Preferences... pulldown menu and change the setting manually.
The action of the RETURN key becomes an ENTER key when block mode is turned
on and AutoLF is turned off. The second criterion is for Qedit users. This is
the same method that ScreenJet uses and I want to thank Alan Yeo for his
comments in this regard.
We were going to call this "smart return" feature the "Roy Brown Memorial Key
Function" in honor of Roy's long fight for this feature, but Roy said
something ugly about our "F12 kludge" for an ENTER key. Personally, I really
like the F12 key as a stable ENTER key. It's very reminiscent of the early
terminals that I grew up on. Nonetheless, because of Roy's untoward comment,
we voted here to rescind his chance at immortality and we will now just call
it the "smart return" feature instead.
REDEFINABLE KEYS
We've establish a new series of escape sequences so that the 10 keys on a PC
keyboard can now be defined to be something different than their standard
defaults. The keys are the INSERT, DELETE, HOME, END, PAGE UP, PAGE DOWN, UP
ARROW, DOWN ARROW, LEFT ARROW, and RIGHT ARROW. The sequences to define these
keys are:
Esc %f<x>k<l>L<text>
where
<x>
45 = insert key
46 = delete key
36 = home key
35 = end key
33 = page up
34 = page down
38 = up arrow
37 = left arrow
40 = down arrow
39 = right arrow
and
<l> is the length of the following text string.
As an example, to program the HOME key to transmit a sequence to the HP3000,
the escape sequence might be:
Esc %f36k6Lshowtime
The behavior of these new programmable keys are a hybrid of the "normal" and
"transmit" characteristics of the standard function keys. A carriage return
is *always* appended to the sequence of characters you program up, but
pressing the key a second time doesn't wait for a DC1 to be returned as a
"transmit" function key does before it transmits the text sequence again.
However, the text you specify is transmitted as a unit whole, rather than a
single character at a time, as a "normal" function key does.
We felt this behavior would be most useful on the widest range of host
computers.
To clear a programmed key, transmit a zero-length definition, in this manner:
Esc %f36k0L
A hard reset will clear all of the key definitions.
AUTO-RECOGNIZATION OF ADVANCED TELNET
This is the coolest feature of the bunch and this note is as much for WRQ and
ScreenJet as anyone. Last weekend, I was getting ready to resubmit the draft
RFC for the advanced telnet feature, suppress local echo, telnet option 45,
when I started thinking, always dangerous in itself. Up to now, all option 45
information has been flowing from the host to the client terminal, but the
client hasn't been requesting (commanding) anything of the host.
By far, our single greatest support call has dealt with "why can I see my
passwords?" or "why do I get double echoing?" The answer in both cases was
that the user had the terminal set to "advanced" telnet while talking to a
host that didn't understand the protocol (which is of course virtually
everyone at the moment), and the corrective action was merely to put the
terminal back into "standard" telnet. Because this support call has been so
common, this remedy is the very first item in the support FAQ.
But there is a very simple cure for this problem, and I am appalled and
embarassed that I didn't think of this earlier, but I only thought of the
right and proper solution this last weekend. Jeff Bandle was kind enough to
almost immediately create new telnet software on the HP3000 to handle the
autorecognition of whether or not the host supports advanced telnet by having
the MPE transmit back the sequence WILL 45 when the client queries DO 45, a
conversational feature that up to now hasn't been used.
It is standard telnet behavior for a host or client to return WONT X when
commanded to perform DO X if it doesn't know what X is. Consequently, every
other host in the world right at the moment will return WONT 45 to the DO 45
command, and thus based on that information, we can reliably set QCTerm into
a "standard" telnet mode of operation and completely eliminate the support
call.
But with Jeff's new telnet code, MPE (and everyone will get this version
shortly I understand) now responds WILL 45 to our DO 45 so that we can
reliably set QCTerm to "advanced" telnet, completely automatically. Blessedly
cool, actually.
The standard handshake procedure for a telnet logon is to perform function
negotiations and then (more or less) quit those negotiations when the host
transmits a WILL 1 (echo), although they don't have to. It has become
traditional that the client must necessarily respond with a DO 1 to the
server's WILL 1. To make QCTerm work simply and reliably, we now transmit a
DO 45 right after the DO 1, in this manner:
======================================
38.453 Telnet: <192.168.1.1 contacted>
38.562 SERVER Do: 3
38.562 CLIENT Wont: 3
38.562 SERVER Will: 1
38.562 CLIENT Do: 1
38.562 CLIENT Do: 45 <--- QCTerm asks: "Can you do advanced?"
38.562 SERVER Do: 33
38.562 CLIENT Will: 33
38.562 SERVER Dont: 3
38.562 CLIENT Wont: 3
38.562 SERVER Will: 45 <--- MPE responds "Yes"
38.625 Received: aics-research: '17
39.93 CLIENT Dont: 1 <--- QCTerm then suppresses host echo
39.93 Transmitted: h and puts QCTerm into "advanced" mode
39.93 SERVER Wont: 1
40.102 Transmitted: e
40.102 Transmitted: l
40.266 Transmitted: l
40.43 Transmitted: o
40.594 Transmitted:
40.766 Transmitted: m
40.812 Transmitted: a
40.922 Transmitted: n
41.031 Transmitted: a
41.094 Transmitted: g
41.203 Transmitted: e
41.312 Transmitted: r
41.531 Transmitted: .
41.75 Transmitted: s
41.859 Transmitted: y
41.914 Transmitted: s
42.352 Transmitted: '13
42.414 SERVER Do: 45
42.414 CLIENT Will: 45
42.461 Received: '10ENTER ACCOUNT (SYS) PASSWORD:'17
44.711 Transmitted: x
44.82 Transmitted: x
44.93 Transmitted: x
45.039 Transmitted: x
45.039 Transmitted: x
45.211 Transmitted: x
45.43 Transmitted: '13
45.43 SERVER Dont: 45
45.43 CLIENT Wont: 45
47.406 Received: '10'13'10
47.953 Received: HP3000 Release: C.55.03 User Version: C.55.03
SUN, OCT 28, 2001, 6:30 PM'13'10MPE/iX HP31900
C.05.08 Copyright Hewlett-Packard 1987. All righ
ts reserved.'13'10
48.016 Received: :'17
=======================================
The new version can be downloaded from:
http://aics-research.com/qcterm
Be sure to unzip the downloaded file to the c:\ root, as it is primed to do.
QCTerm won't work anywhere else.
Wirt Atmar
* To join/leave the list, search archives, change list settings, *
* etc., please visit http://raven.utc.edu/archives/hp3000-l.html *
|