[comp.os.vms] New pseudo terminal driver

KVC@BUSTER.NRC.COM (Kevin Carosso) (06/11/88)

Ok folks, I've got the pseudo-terminal distribution just about made up.
I got lots of votes and they were all in favor of submission to INFO-VAX.
I'll be sending the thing in 4 parts of about 32K each.

In addition, Glen Everhart has the distribution and it will appear on the
Spring '88 (Cincinatti) DECUS VAX SIG tape.

I'm also gonna throw it onto the PMDF V3.0 distribution (sorry Beta sites,
the Beta tapes are already made).

Finally, various sites have volunteered to make it available via anonymous
FTP and the BITNET LISTSERV mechanism.

The pseudo-terminal driver has some significant enhancements now and is
quite different then previous incarnations.  Old applications, however, will
work with little or no change.  The three things that might need changing
are:

1) Terminal side device name is now TWAn:

2) Since the driver now has flow control on writes to the PY device,
   applications need to watch for SS$_DATAOVERUN in the IOSB upon
   completion of a write QIO to the PY.  The quick, 95% fix is to ignore
   that status, since most applications only write a few characters at a
   time and really won't lose any input data.

   The proper fix is to save the data that wasn't delivered (you also get
   a count of characters really delivered in the IOSB) and wait for an
   XON AST and then continue writing.  Another, even easier, work-around
   hack might be to disable HOSTSYNC on the TW terminal.  I didn't
   try this.

3) Since the PY driver now has a real SENSEMODE which works exactly like
   a SENSEMODE to a terminal device and returns the associated TW terminal
   characteristics, you can no longer use a SENSEMODE QIO to get the
   PY's DEVDEPEND longword (since you really get the TW's) to find out
   the unit number of your associated TW.  You need to use $GETDVI
   instead.  It was always recommended that $GETDVI be used for this purpose
   anyway.
   
I have made these three changes to the PHOTO utility from USC and I've
tested it under VMS V4.7 as well as V5.0.  I will distribute it along with
the PTY distribution.  It could actually use a lot of work to fix up
lots of rough edges, but I don't have the time right now.  I did remove
the requirement that it be installed with PHY_IO privilege.  It works
better with PHY_IO, since it can then propagate your real terminal's
characteristics to the pseudo-terminal, but I made it usable without
privilege for those sites that don't wish to INSTALL it.  It really
can be done without the PHY_IO at all, but needs a bit of reorganization
to do so.

I'm building the distribution with the new VMS_SHARE utility that
was posted a few weeks ago (successor to VMS_SHAR, I gather...).  I
will first send a copy to my BITNET address to verify that it unpacks
correctly after being attacked by the evils of I-B-M...  :-)

        /Kevin Carosso                     kvc@nrc.com
         Network Research Co.              kvc@ymir.bitnet