Network Working Group                                           J. White
Request for Comments: 216                     UCSB Computer Research Lab
Categories: D.3, G.3                                      September 1971
NIC: 7546


                Telnet Access To UCSB's Online System

Contents

  I.      Motivation .................................................1
  II.     Limitations ................................................2
  III.    System Documentation .......................................2
  IV.     System Access ..............................................3
  V.      Software Structure .........................................3
  VI.     Virtual OLS Keyboard .......................................4
  VII.    NETOLS Commands ...........................................10
          A. HELP ...................................................10
          B. PREFIX .................................................10
          C. SHIFT and UNSHIFT ......................................10
          D. FULLDUPLEX and HALFDUPLEX ..............................10
          E. STATE ..................................................11
          F. LOGOUT .................................................11
  VIII.   OLS Display ...............................................11
  IX.     Instructing User Telnet ...................................12
  X.      Examples ..................................................14
          A. Logon ..................................................14
          B. Newton-Raphson Square Root Approximation ...............15
          C. Remote Job Entry .......................................16

  Figures

  Figure 1. OLS Keyboard .............................................2
  Figure 2. Keys With One-for-One Mappings ...........................6
  Figure 3. Keys Represented as Strings ..............................7
  Figure 4. Characters With One-for-One Mappings ....................12
  Figure 5. Characters Which Map Into Strings .......................13

I.  Motivation

  A teletype-compatible interface to UCSB's Online System (OLS) has
  been implemented in accordance with the Telnet protocol adopted by
  the NWG.  This Server Telnet is responsive to connection requests
  directed by User Telnet's to socket number 1, host address 3.
  Although OLS is not a teletype system and although much of its power
  as mathematical tool rests in its graphical display capabilities,
  enough of the System survives the Telnet transformation to justify
  such an implementation.



White                                                           [Page 1]

RFC 216          Telnet Access To UCSB's On-Line System   September 1971


II.  Limitations

  In this Telnet-style implementation of OLS, all curvilinear display
  generated by the user on Levels II and III, Real and Complex, is
  disregarded by the System and hence not returned to the user through
  the Net.  The same is true of the display of special, user-created
  characters.  Although special characters may be constructed and
  stored, their display will be suppressed, both during the process of
  construction and later when they are invoked from the Type level.
  All other display generated by the System will be relayed to the user
  intact, in some cases with stylistic transformation having first been
  applied.  For example, Greek characters are displayed as lower-case
  a-z.  All such transformations are described in detail in this
  document.  Finally, those elements of the System (the operators which
  edit user programs are prime examples) which assume a fixed-screen
  display device function abnormally in a Telnet environment.  For such
  a device, the System can "remember" the position on the screen of a
  previously displayed segment of text and return to that position to,
  for example, underscore it.  But when the "screen" marches forward --
  relentlessly -- through a continuous medium, as it does with Telnet's
  virtual teletype, that kind of strategy fails.  Hence, the
  underscoring is not relocated, but rather appears on the current
  line, beginning in the next available character frame.

  OLS assumes, normally, that the user is equipped with the specially-
  designed double keyboard depicted in Figure 1.  Conventions are
  defined in this document, which enable a Telnet user to simulate that
  keyboard; in particular, a means is provided for designating keys on
  the upper, or operator keyboard.

III.  System Documentation

  This document has three purposes:

  Figure 1. OLS Keyboard. [Please view the PDF version of this RFC.]

  (1) to describe the means by which a Telnet user simulates an OLS
      keyboard,

  (2) to describe the transformations applied to output generated by
      the System, and

  (3) to enumerate those aspects of the System, which are unique to or
      behave differently for Network (Telnet) users.

  In particular, this document is not a user's manual for OLS.  Such a
  manual is available and on file with the NIC.  In addition, a copy
  should exist at each Network site in its NIC collection; the user



White                                                           [Page 2]

RFC 216          Telnet Access To UCSB's On-Line System   September 1971


  should consult his Station Agent.  This document is titled "UCSB On-
  Line System Manual" [NIC 5748]; its contents are current as of 1
  January 71.  A revision to the manual is currently in preparation and
  will be distributed when available.  In addition, tutorial manuals
  for two of the subsystems available under OLS-MOLSF (Mathematically-
  Oriented Language Single-Precision Floating-Point) and COL (Card
  Oriented Language) -- will soon be made available.  The latter has
  already been published and is being transmitted to the NIC for
  distribution, while the former is nearing completion.

  Documentation of the third subsystem of OLS--NET-- has already been
  distributed through the NIC as two RFC's: "Network On-Line Operators"
  [21 April 71, RFC 121, NIC 5833] and "A User Telnet--Description of
  an Initial Implementation" [9 August 71, RFC 206, NIC 7176].  Net
  currently houses a set of operators for system-call-level interaction
  with UCSB's NCP, a User Telnet, and an operator (invoked by ID on
  Level II), which returns the status of Network hosts.

  Staff members at the Computer Center will be happy to field questions
  about OLS from Network users.  In particular, an OLS consultant is
  available for such purposes at (805) 961-4044.  Questions about OLS,
  including those specific to use of the System through the Network,
  may also be addressed to Jim White, UCSB's Technical Liaison, at
  (805) 961-3454 (if necessary, messages can be left at the Computer
  Center Office, (805) 961- 2261).

IV.  System Access

  The Network user is encouraged to explore the System and is invited
  to do so with the following accounting parameters:

  User Number: 196
  Id Number: 57372
  User Name: ARPA
  Problem Name: (affiliation)-(name)
                  in 16 characters or less
                  (e.g., UCSB-White)

  Such use of the System will not be billed.  Production users are
  asked to establish their own accounts with the Computer Center ((805)
  961-2261), the use of which will be billed in accordance with the
  then-current rate structure.

V.  Software Structure

  This document is the description of a Network front-end to the Online
  System, logically distinct from OLS itself.  This front-end is
  hereafter referred to as NETOLS.  NETOLS is always responsive to



White                                                           [Page 3]

RFC 216          Telnet Access To UCSB's On-Line System   September 1971


  connection requests direct4ed to socket 1.  When contacted by a
  Network user, NTCLS performs the Network functions required to
  establish a duplex connection to him.  The number of such duplex
  connections (and hence the number of Network users) is bounded by an
  assembly parameter whose current value is five.

  Before the Network connection is established, NETOLS secures for the
  user a port into OLS.  Sixty-four such ports exist and are shared by
  local, dial-up, and Network users.  Should none be available, NETOLS
  will abort the connection sequence.

  Once a port has been secured and a Network connection established,
  NETOLS will effectively push the _SYST_ key for the user by
  transmitting to OLS the 8-bit code representing that key.  A login
  sequence is thus initiated and the user is transmitted the lines:

     UCSB ON-LINE SYSTEM
     ENTER USER NUBMER

  to which he should respond with his user number.  Beginning at this
  point in time and continuing for the life of the Network connection,
  NETOLS's sole function is that of interpreter--interpreting input
  from the user and making it meaningful to the user (it is at this
  point, for example, that curvilinear and special-character display
  are discarded).

  When the user breaks his Network connection to NETOLS, if eh hasn't
  logged out of OLS already, NETOLS performs that function for him by
  pushing_ SYST_ _DOWN_, just as it pushed the initial _SYST_.  The OLS
  port acquired for the user is then released, and hence available for
  use by other users.  It should be noted that the user can log out of
  OLS and back on again without the Network connection's being broken,
  since that action is transparent to NETOLS, who attaches no special
  significance to the Key sequence, which accomplishes it.

VI.  Virtual OLS Keyboard

  A major function of NETOLS is to provide a mapping between elements
  of the Telnet character set and the keys on an OLS keyboard (Figure
  1).  The lower, or operand portion of that keyboard is fairly easily
  represented, since it's similar to a standard typewriter keyboard.
  Most of the keys on the lower keyboard are mapped on a one-for-one
  basis from elements of the Telnet character set.  Upper-case
  alphabetics are mapped into the alphabetics, lower-case, and
  miscellany of punctuation into itself.  All such one-for-one mappings
  are depicted in Figure 2.  A line of that figure reads as follows:

     For ['half arrow' - see the PDF version of this RFC]:



White                                                           [Page 4]

RFC 216          Telnet Access To UCSB's On-Line System   September 1971


     The key labeled ['half arrow'] (meaning logical not) on the lower
     portion of an OLS keyboard is struck by causing the user's User
     Telnet to transmit '~' (tilde).

  Those lower-keyboard keys not listed in Figure 2, and _all_ the keys
  on the upper- keyboard (hereafter referred to collectively as _non-
  standard_ keys), are represented by the Telnet user in the following
  manner.  For each such key, a character string has been defined; the
  string is called the _name_ of the key.  In most cases, the name of a
  key is identical to its label in Figure 1.  The name of the _SIN_
  key, for example, is 'SIN (in the Online System User's Manual,
  upper-keyboard keys are denoted by underscoring their labels, to
  distinguish, for example, the key _SIN_ from the three keys 'SIN').

     Every non-standard key on the OLS keyboard is struck by typing its
     name (or any unique abbreviation thereof), preceded by a special
     _prefix_ character and followed by a space.

  NETOLS interprets the prefix, name, and space from them generates a
  single, 8-bit code, which forwards to OLS.

  The default prefix character is semi-colon (';'), chosen simply
  because for touch typists it's one of the home keys.  The prefix can
  be changed by the user to any character listed in Figure 2.  The
  procedure for so doing is described in Section VII-B. To send the
  prefix character through NETOLS to OLS, type it twice in succession.
  Thus, if the default prefix is in effect, ';;' is mapped into a
  single semi-colon and relayed to OLS.

  The names of all non-standard keys are listed in Figure 3.  A line of
  that figure reads as follows:

     For _SIN_:

     They key denoted _SIN_ in the OLS User's Manual (the trigonometric
     function sine) is named 'SIN', and hence is struck by typing
     'SIN', preceded by the prefix and followed by a space.

  Assuming, then, that the default prefix ';' is in effect, SIN is
  struck by ';SIN_' ('_' is used here and in following examples to
  denote a space).  Furthermore, if the user chooses, he may abbreviate
  that as ';SI_', since the key desired remains uniquely identified.
  Further abbreviation (to ';S_') is unsatisfactory and hence
  disallowed since the single character 'S' is insufficient to
  distinguish between a number of keys whose names begin with that
  character.  Key names may be typed by the user in either upper- or
  lower-case.




White                                                           [Page 5]

RFC 216          Telnet Access To UCSB's On-Line System   September 1971


  As each character of a non-standard key's name is typed by the user,
  NETOLS consults it table of key names.  If the character string so
  far specified cannot possibly lead to a valid name, the most recent
  character is ignored ('?' echoed).  Hence, typing ';SJIN_' will be
  accepted as _SIN_, the erroneous 'J' being ignored (and a question
  mark echoed), and the subsequent 'JN_' accepted.  If when the
  terminating space is typed, no single key is uniquely identified a
  '?'  is echoed and the space ignored.  Thus, ';S_I_' will be
  recognized as _SIN_; the first space is

To Push         (OLS Explanation)        Send      (Telnet Explanation)

0-9             Decimal Digits           0-9         Decimal Digits
A-Z             Alphabetics              A-Z         UC Alphabetics
_-5             Greek Characters         a-z         LS Alphabetics
!               Exclamation Mark          !          Exclamation Mark
+               Plus Sign                 +          Plus Sign
_               Underscore                _          Underscore
-               Minus Sign                -          Minus Sign
@               Commercial At             @          Commercial At
/               Slash                     /          Slant
#               Number Sign               #          Number Sign
'               Apostrophe                '          Apostrophe
&               Ampersand                 &          Ampersand
$               Dollar Sign               $          Dollar Sign
*               Asterisk                  *          Asterisk
%               Percent                   %          Percent
=               Equal Sign                =          Equal Sign
TAB             Horizontal Tab           HT          Horiz. Tab. (_[)
:               Colon                     :          Colon
;               Semi-Colon                ;          Semi-Colon
[               Left Bracket              [          Left Bracket
]               Right Bracket             ]          Right Bracket
(               Left Parenthesis          (          Left Parenthesis
)               Right Parenthesis         )          Right Parenthesis
<               Less Than                 <          Less Than
>               Greater Than              >          Greater Than
,               Comma                     ,          Comma
"               Quotation Marks           "          Quotation Marks
?               Question Mark             ?          Question Mark
[half arrow]    Logical Not               ~          Tilde
|               Logical Or                |          Vertical Line
BACK            Backspace              BS, DEt       Backspace/Rubout
RETURN          Carriage Return           CR         Carr. Return (_M)
SPACE           Space                     SP         Space

               Figure 2. Keys With One-for-One Mappings




White                                                           [Page 6]

RFC 216          Telnet Access To UCSB's On-Line System   September 1971


To Push          (OLS Explanation)          The Key Name Is

[circle .]           Multiply                       *          1
[circle +]           Add                            +
[circle -]           Subtract                       -
RETURN               Carriage Return                .
[circle /]           Divide                         /
L0                   Level 0                        0
LI                   Level I                        1
L II                 Level II                       2
L III                Level III                      3
L IV                 Level IV                       4
L V                  Level V                        5
L VI                 Level VI                       6
L VII                Level VII                      7
[circle +]           Add                            ADD        2
ARC                  Argument                       ARG
ATAN                 Arc Tangent                    ATAN
BACK                 Backspace                      BACK       3
CASE                 Case                           CASE
[cent sign]          Cent                           SignCENT
CLR                  Clear Tab                      CLEAR
CMPLX                Complex                        CMPLX
CON                  Contract                       CON
CONJ                 Conjugate                      CONJ
CONV                 Convolve                       CONV
COS                  Cosine                         COS
CTX                  Context                        CTX
DEL                  Delta                          DEL
DIFF                 Forward Difference             DIFF
DISPLAY              Display                        DISPLAY
[circle /]           Divide                         DIV        4
DWN                  Down                           DOWN
ENL                  Enlarge                        ENL
ENTER                Enter                          ENTER
ERASE                Erase                          ERASE
ESCAPE               Escape                         ESCAPE
EVAL                 Evaluate                       EVAL
EXP                  Exponentiate                   EXP
                    NETOLS Command                 FULLDUPLEX 5
                    NETOLS Command                 HALFDUPLEX
                    NETOLS Command                 HELP
ID                   Identity                       ID
INV                  Invert                         INV
[down arrow]         Line Feed Down                 LFDN
[up arrow]           Line Feed Up                   LFUP

                Figure 3. Keys Represented As Strings



White                                                           [Page 7]

RFC 216          Telnet Access To UCSB's On-Line System   September 1971


To Push           (OLS Explanation)        The Key Name Is

LIST                 List                         LIST
LOAD                 Load                         LOAD
LOG                  Logarithm                    LOG
                    NETOLS Command               LOGOUT
LS                   Left Shift                   LS
MAX                  Maximum                      MAX
MOD                  Modulus                      MOD
[circle .]           Multiply                     MULT         6
NEG                  Negate                       NEG
[half arrow]         Logical Not                  NOT          7
|                    Logical Or                   OR           8
PRED                 Predicate                    PRED
                    NETOLS Command               PREFIX
PROD                 Running Product              PROD
PT                   Point                        PT
PWR                  Power                        PWR
REAL                 Real                         REAL
REFL                 Reflect                      REFL
REPT                 Repeat                       REPT
RESET                Reset                        RESET
RETURN               Carriage Return              RETURN       9
RS                   Right Shift                  RS
0-9                  Superscript 0-9              S0-S9
SEL                  Select                       SELECT
SET                  Set Tab                      SET
                    NETOLS Command               SHIFT
SIN                  Sine                         SIN
SORT                 Sort                         SORT
SQ                   Square                       SQ
SQRT                 Square Root                  SQRT
                    NETOLS Command               STATE
STORE                Store                        STORE
SUB                  Substitute                   SUB
[circle -]           Subtract                     SUBTRACT     10
SUM                  Running Sum                  SUM
SYST                 System                       SYST
TEST                 Test                         TEST
TYPE                 Type                         TYPE
                    NETOLS Command               UNSHIFT
UP                   Up                           UP
USER                 User                         USER

            Figure 3 (cont'd) Keys Represented As Strings






White                                                           [Page 8]

RFC 216          Telnet Access To UCSB's On-Line System   September 1971


  1. Alternate names for [circle .], [circle +], [circle -], RETURN,
     and [circle /] are 'MULT', 'ADD', 'SUBTRACT', 'RETURN', and 'DIV',
     respectively. RETURN can also be represented as the single
     character CR (carriage return), as indicated in Figure 2.

  2. An alternate name for [circle +] is '+'

  3. Alternates for BACK are the single characters BS (backspace) and
     DEL (rubout), as indicated in Figure 2.

  4. An alternate name for [circle /] is 'DIV'.

  5. NETOLS commands are explained in Section VII.

  6. An alternate name for [circle .] is 'MULT'.

  7. An alternate for '[half arrow]' is the single character '~'
     (tilde), as indicated in Figure 2.

  8. An alternate for '|' is the single character '[2 vertical lines]'
     (vertical line), as indicated in Figure 2.

  9. An alternate name for RETURN is '.' RETURN can also be represented
     as the single character CR (carriage return), as indicated in
     Figure 2.

 10. An alternate name for [circle -] is '-'.

  Notes for Figure 3.

  Ignored (and a '?' echoed, indicating that 'S' alone is ambiguous).

  At any point in the entry of a key name, either Altmode (ESC) or '?'
  may be typed by the user.  NETOLS will then determine whether a key
  has been uniquely specified by the characters already typed.  If so,
  it will echo the remaining characters of the key's name, and consider
  them entered by the user.  A subsequent space from the user will
  cause the indicated key to be pushed.  If no single key is uniquely
  specified, NETOLS will echo Bel, causing a bell to be run on many
  terminals.  More of the key name is then expected from the user.

  If after at least one character of the key name has been entered by
  the user and accepted by NETOLS (and before the terminating space is
  typed) the prefix is typed a second time, all already entered
  characters of the name are discarded by NETOLS.  Thus ';CO;SIN_' is
  interpreted as _SIN_.  If a carriage return is typed in the same





White                                                           [Page 9]

RFC 216          Telnet Access To UCSB's On-Line System   September 1971


  context, the initial prefix will also be discarded.  Hence, ';CO%S'
  ('%' denotes carriage return) is interpreted as the lower-keyboard
  key 'S'.

VII.  NETOLS Commands

  A number of commands to LETOLS are defined and all are described in
  this section.  The format for each such command is the same as that
  for the non-standard keys, and hence the command keywords are
  included in Figure 3.  All of the conventions of Section VI apply as
  well to the entry of commands.  The user should understand, however,
  that such commands are processed by NETOLS, not OLS, and that they
  are defined only for Network users of OLS.

A.  HELP

  The HELP command (invoked with ';HELP_' if';' is the prefix)
  reproduces for the user the third column of Figure 3; the names of
  all non-standard keys and the keywords for all defined NEOLS commands
  are listed in their collating sequence on the user's virtual
  teletype.

B.  PREFIX

  Issuing the PREFIX command causes the next character typed to become
  the prefix, provided it is one of those listed in Figure 2.
  Consequently, ';PREFIX_@' makes '@' the prefix, '@PREFIX_;' restores
  the defaults situation.

C.  SHIFT and UNSHIFT

  The SHIFT command causes a perturbation of lines 2 and 3 of Figure 2.
  After SHIFT is issued, all subsequent upper-case alphabetics are
  mapped into the Greek characters (rather than into the alphabetics),
  and lower-case alphabetics into alphabetics (rather than into the
  Greek characters).  This convention change may be found convenient if
  the user's User Telnet sends lower-case alphabetics by default, and
  requires, for example, that a shift key be held down to send upper-
  case characters.

  The UNSHIFT command nullifies the effect of SHIFT.

D.  FULLDUPLEX and HALFDUPLEX

  Issuing the FULLDUPLEX command causes all subsequent characters typed
  by the user to be echoed by _NETOLS_.  HALFDUPLEX nullifies the
  effect of FULLDUPLEX, disabling echo by NETOLS.  Half-duplex is the
  default situation.



White                                                          [Page 10]

RFC 216          Telnet Access To UCSB's On-Line System   September 1971


E.  STATE

  The STATE command causes the current prefix, the mode of operation
  ('HALFDUPLX' or 'FULLDUPLEX'), and the case convention ('SHIFT IS ON'
  or 'SHIFT IS OFF') to be displayed on the user's virtual teletype in
  the following form:

     PREFIX IS;
     HALFDUPLEX
     SHIFT IS OFF

F.  LOGOUT

  Issuing the LOGOUT command causes the user to be logged out of OLS
  (i.e., _SYST_ _DOWN_ to be pushed) and his Network connection to
  NETOLS to be broken.  About three seconds elapse between the two
  events.

VIII.  OLS Display

  NETOLS suppresses all but alphameric display before it reaches the
  user.  Alphameric display is mapped into the Telnet character set
  according to Figures 4 and 5.  Figure 4 lists all those OLS display
  character, which have one-for-one mappings.  A line of that figure
  reads as follows:

     For '[half harrow]'

     The character logical not, displayed as '[half arrow]' on an OLS
     terminal, is represented in Telnet as '~' (tilde).

  Alphabetics are mapped into upper-case alphabetics and Greek
  characters into lower-case alphabetics.  Numerics are mapped into
  numerics, and a miscellany of punctuation into itself.  In addition a
  number of carriage control characters are appropriately mapped-- line
  feed down into LF, TAB into HT, BACK into BS, etc.; line feed up is
  suppressed.  ERASE is represented as Bel.

  Figure 5 lists those OLS display characters which are mapped into
  strings of Telnet characters.  In most cases, these character strings
  are stylistic representations of characters peculiar to OLS.  For
  example, the _ADD_ key is normally displayed in List mode as '[circle
  +]'.  In this Telnet implementation, '(+)' is an attempt to represent
  that graphic.  Superscripts are represented as underscored numerics.
  Carriage return is represented as CR LF.  No attempt is made to
  effectively represent RS which, on an OLS display device, repositions
  the beam to the upper left corner of the screen; it is made
  equivalent to carriage return.



White                                                          [Page 11]

RFC 216          Telnet Access To UCSB's On-Line System   September 1971


IX.  Instructing a User Telnet

  For local users, all echoing _that's done at all_

To Display       (OLS Explanation)  OLS Sends  (Telnet Explanation)
0-9                Decimal Digits     0-9        Decimal Digits
_-Z                Alphabetics        A-ZUC      Alphabetics
_-5                Greek Characters   a-z        LC Alphabetics
!                  Exclamation Mark   !          Exclamation Mark
+                  Plus Sign          +          Plus Sign
_                  Underscore         _          Underscore
-                  Minus Sign         -          Minus Sign
@                  Commercial At      @          Commercial At
/                  Slash              /          Slant
#                  Number Sign        #          Number Sign
'                  Apostrophe         '          Apostrophe
&                  Ampersand          &          Ampersand
$                  Dollar Sign        $          Dollar Sign
*                  Asterisk           *          Asterisk
%                  Percent            %          Percent
=                  Equal Sign         =          Equal Sign
TAB                Horizontal Tab.    HT.        Horiz. Tab (_I)
:                  Colon              :          Colon
;                  Semi-Colon         ;          Semi-Colon
[                  Left Bracket       [          Left Bracket
]                  Right Bracket      ]          Right Bracket
(                  Left Parenthesis   (          Left Parenthesis
)                  Right Parenthesis  )          Right Parenthesis
<                  Less Than          <          Less Than
>                  Greater Than       >          Greater Than
,                  Comma              ,          Comma
"                  Quotation Marks    "          Quotation Marks
?                  Question Mark      ?          Question Mark
[half arrow]       Logical Not        ~          Tilde
|                  Logical Or         |
                                     |          Vertical Line
BACK               Backspace          BS         Backspace
SPACE              Space              SP         Space
ENL/[up arrow]     Line Feed Up
CON/[down arrow]   Line Feed Down     LF         Line Feed ([up arrow]J)
_                  List Mode Space    _          Underscore
[shaded rectangle] List Mode Rubout   X          Upper-case X
_                  List Mode Pointer  _          Underscore
BREAK              Break              SP         Space
ERASE              Erase              BEL        Bell (_G)

            Figure 4. Characters With One-for-One Mappings




White                                                          [Page 12]

RFC 216          Telnet Access To UCSB's On-Line System   September 1971


To Display          (OLS Explanation)              OLS Sends

:                     Post List                  (:)
[circle +]            List Mode Add              (+)
[circle -]            List Mode Subtract         (-)
[circle .]            List Mode Multiply         (*)
[circle /]            List Mode Divide           (/)
[arrow]               List Carriage Return       ([2 vertical lines])
RETURN                Carriage Return            CR LF
RS                    Reset to Upper Left        CR LF
[cent sign]           Cent Sign                  C BS [2 vertical lines]
0-9                   Superscript 0-9            0 BS _
                                                 -
                                                9 BS _

             Figure 5. Characters Which Map Into Strings

  is done by OLS; the terminal never echoes.  In general, OLS does not
  echo the user's input.  There are exceptions to this rule, but they
  are relatively few in number and occur primarily on the SYST level.
  In particular, upper keyboard keys are never echoed except in List
  mode.  The Network user is advised to instruct his telnet to operate
  in full-duplex mode, i.e., to echo nothing.  The FULLDUPLEX command
  provided by NETOLS is provided because it can be provided, but its
  use is not recommended.

  OLS is meant to be used in character-at-a-time mode, and the user
  should so instruct his User Telnet.  For those users provided with
  only a line-at-a-time mode, the end-of-line character should not be
  transmitted to NETOLS.

  NETOLS flushes without comment all Telnet control characters it
  detects in the input stream.  Characters in the Telnet character set
  which have no meaning to NETOLS are echoed as '?' and discarded.
  Exceptions are LF (line feed) and NUL, which are flushed without
  comment.















White                                                          [Page 13]

RFC 216          Telnet Access To UCSB's On-Line System   September 1971


X.  Examples

A.  LOGON

  The dialogue which logs a user onto OLS, assuming the user number of
  Section IV, is as followings:

  TELNET ENTRY            OLS QUERY/RESPONSE

                                  UCSB ONLINE SYSTEM
                                  ENTER USER NUBMER (196)
  196%                            ID NUMBER=
  57372%                  USER NAME= (ARPA)
  ARPA%                   JOB NAME= (UCSB-WHITE)
  UCSB-WHITE%             AUTOSAVE CODE = integer
  MOLSF %                 LOAD (MOLSF)
                                  FILE LOADED

  In this and succeeding examples, '%' denotes CR (carriage return).
  Entries echoed by OLS are enclosed in parentheses above.  The user
  should substitute for 'UCSB-WHITE' his own affiliation and name.  The
  procedure above loads the math subsystem of OLS.  To load instead
  either COL or NET, substitute its name for 'MOLSF'.  To load a
  different subsystem (say COL) after logging in:

  TELNET ENTRY                    OLS QUERY/RESPONSE
  ;SYST_                          WORK AREAS UPDATED
  ;LOAD _COL%                     LOAD (COL)
                                          FILE LOADED

  Again, '_' denotes a space, not an underscore.




















White                                                          [Page 14]

RFC 216          Telnet Access To UCSB's On-Line System   September 1971


B.  NEWTOWN-RAPHSON SQUARE ROOT APPROXIMATION

  A simple user program can be constructed to approximate the square
  root of a number N using the Newton-Rapshon iteration procedure,
  which derives the (k+1)th approximation from the kth by the following
  algorithm:

     X k+1= (xk+n/kk)/2

  The following entries construct the user program:

  ;LIST_)TYPE_%ENTER_N
  ;1_;REAL_;LOAD_;ENTER_;STORE_N
  ;TYPE_% ENTER_FIRST_GUESS
  ;1_;LOAD_;ENTER_;STORE_X
  ;TYPE_%#_OF_INTERATIONS?
  ;0_;LOAD_;ENTER_;STORE_N
  ;1_;REPT_(;LOAD_N ;/_X;+_X ;/_2
          ;STORE_X ; DISP_%/_X ;+_X ;/_2
  ;LIST_;STORE_;USER_;1_;SQRT_

  To display the user program, enter:

  ;USER_;DISP_;SQRT_

  When executed, the program obtains from the user the number N whose
  square root is sought, an initial guess, and the number of iterations
  to be performed.  The program then computes and displays the results
  of each iteration, and then calls itself, permitting a second square
  root to be computed.  The program is executed as follows:

  TELNET ENTRY                    OLS QUERY/RESPONSE

  ;USER_;1_;SQRT_                 ENTER N
  3 ;ENTER_                               ENTER FIRST GUESS
  1 ;ENTER_                               #OF ITERATIONS?
  4 ;ENTER_                               2.       +00
                                          1.75     +00
                                          1.73214+00
                                          1.73205+00

                                          ENTER N
                  etc.








White                                                          [Page 15]

RFC 216          Telnet Access To UCSB's On-Line System   September 1971


C.  Remote Job Entry

  A file of card images can be constructed with the help of the COL
  subsystem of OLS ard submitted as a batch job.  Assuming COL has been
  loaded, the following entries construct a card file which invokes the
  Fortran compiler:

  ;2_//jobname_JOB_(acct#,name , , , , , ,T) ; STORE_
  //_EXEC_FORTGCLG ; STORE_
  //FORT.SYSIN_DD_* ; STORE_
  source-statement-1 ;STORE_

                  ...
  source-statement-N ; STORE_
  /* ; STORE_

  To display the completed file, type:

          ;3_;DISP_%

  To submit the file, type:

          ;4_;SUB_%

  To watch for it in execution, type:

          ;DISP_J%%%...

  When execution is complete, 'printed' output can be retrieved with
  the following dialogue:

  TELNET ENTRY                    OLS QUERY/RESPONSE

  ;CMPLX_;LOAD_                   UNIT = (2314)
  2314%                                   VOL=SER= (MVT180)
  MVT180%                         DSNAME= (RJEOUT)
  RJEOUT%                         MEMBER= (jobname)
  Jogname%                                NOW LOADING
                                          FILE LOADED

  The output can then be examined by entering:

     ;2_;DISP_1%%%...


  NOTE: Text within brackets describes non-ASCII characters that were
  part of the original document.  Please see the PDF file for the
  original representation.



White                                                          [Page 16]