NWG/RFC# 747 MRC 21-MAR-78 44015

Recent Extensions to the SUPDUP Protocol

Network Working Group                                       Mark Crispin
Request for Comments 747                                           SU-AI
NIC 44015                                                  21 March 1978

Updates: RFC 734. See also RFC 746.

Recent Extensions to the SUPDUP Protocol

Recently,  some extensions  have been made to the SUPDUP protocol.   RFC
746,  by Richard   Stallman, documented  the SUPDUP  graphics extension.
In addition, a TTYOPT  bit has  been added and  two more  variables have
been added to the initial  negotiation.   This RFC describes the changes
from  RFC 734,  but excludes  the  detailed  information  in   RFC  746.
These  extensions  are  upwards  and   downwards  compatable,   and  are
completely  optional.    For most  SUPDUP   user  and  server  programs,
RFC   734   remains    an   adequate   description  of   the   protocol.
However,   it  is  suggested   that  if  the  console's  line  speed  is
known,  the  user SUPDUP  should be modified to  send the new ISPEED and
OSPEED  variables   (sending  0 for SMARTS if the  graphics extension is
not to  be used)  so  the server can  handle buffering for  the terminal
better.

Since these changes  are compatable  and optional, and since the  SUPDUP
protocol is being actively worked on at the present time, I have elected
to issue  this  update  RFC  rather  than  an  updated  version   of RFC
734.   An updated 734 will be issued when the protocol stabilizes again.

Three new variables  have  been added to  the initial  negotiation.   In
order,  they are SMARTS,  ISPEED,  and OSPEED.   Consequently, the count
should now be -10,,0, or, in octal, 777770000000.

The SMARTS  variable  specifies what "smarts" (in general, what graphics
capabilities)  the terminal  has.  Like the TTYOPT variable, a bit being
true implies  that the terminal has this option.  RFC 746 describes this
variable  and the  SUPDUP   graphics   option  in complete  detail.   If
the  graphics extension is not to be used, SMARTS should be set to 0.

The ISPEED  and OSPEED  variables are respectively the input and  output
baud rates  of the  terminal,  if  known.   For  example,  a  150./1200.
baud terminal  would  have an ISPEED of 150.   and an OSPEED of 1200.  A
speed  of zero means the line speed is indeterminate.

The %TPPRN   TTYOPT   bit  (value  0,,200) has  been  added.   This  bit
specifies  that the system should  swap parenthesis with square brackets
on input.   This is  often  desirable  for  LISP users  who  are using a
terminal  which has  parenthesis   as   a   shift  character   but   not
square   brackets. This bit is normally off and servers are not required
to implement it.