Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ tctl — Apollo

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

EMT

9.0;tctl (terminal_control), revision 9.0, 85/03/19
TCTL (TERMINAL_CONTROL) -- Set or display SIO line characteristics.
usage:  TCTL [-LINE number] [-NLD [msec]] [-SPEED rate [-FORCE]] [-ERASE chr]
                                        [-KILL chr] [-EOF chr] [-QUITCHR chr]
                                        [-INTCHR chr] [-SUSPCHR chr]
                                        [-PARITY {NONE|EVEN|ODD}]
                                        [-BPC {5|6|7|8}] [-STOP {1|1.5|2}]
                                        [-[NO]RAW] [-[NO]ECHO] [-[NO]SYNC]
                                        [-[NO]INSYNC] [-[NO]CVT_NL]
                                        [-[NO]CVTRAW_NL] [-[NO]QUIT] [-[NO]INT]
                                        [-[NO]SUSP] [-[NO]RTS] [-[NO]DTR]
                                        [-[NO]DCD_ENABLE] [-[NO]CTS_ENABLE]
                                        [-[NO]RTS_ENABLE]
                                        [-ERROR {[NO]FRAMING|[NO]PARITY|
                                        [NO]DCD_CHANGE|[NO]CTS_CHANGE}]
                                        [-DEFAULT]


FORMAT

  TCTL [options]


  TCTL sets or displays SIO line characteristics, which control how hardware and
  software connected to those lines should behave.

  COMMAND LINE SUMMARY (Complete description follows.)

  -LINE     number  set the line number to which this configuration
                    applies
  -NLD      [msec]  set newline delay, in milliseconds. default is 20.
  -SPEED    rate    set baud rate
  -FORCE            set baud rate even if it affects partner line
  -ERASE    chr     set erase character
  -KILL     chr     set kill character
  -EOF      chr     set end-of-file character
  -QUITCHR  chr     set quit character
  -INTCHR   chr     set interrupt character  (used primarily by DOMAIN/IX)
  -SUSPCHR  chr     set suspend character  (used primarily by DOMAIN/IX)
  -PARITY   NONE    don't send or check parity bit
            EVEN    send and check even parity
            ODD     send and check odd parity
  -BPC      {5|6|7|8}  set number of bits per character
  -STOP     {1|1.5|2}  set number of stop bits
  -[NO]RAW          enable/disable raw mode
  -[NO]ECHO         enable/disable echo
  -[NO]SYNC         enable/disable host_sync via node sending ctrl-s/ctrl-q
                    (enable implies -NORTS_ENABLE)
  -[NO]INSYNC       enable/disable input_sync, receiving ctrl-s/ctrl-q
  -[NO]CVT_NL       enable/disable transmitting new_lines (NL=10) as CR-LF
  -[NO]CVTRAW_NL    enable or disable transmitting new_lines (NL=10) as CR-LF
                    in raw mode
  -[NO]QUIT         enable/disable passing quits received to this process
  -[NO]INT          enable/disable passing interrupt faults to this process
  -[NO]SUSP         enable/disable passing suspension faults to this process
  -[NO]RTS          set/reset the request-to-send line
  -[NO]DTR          set/reset the data-terminal-ready line
  -[NO]DCD_ENABLE   enable/disable standard handling of carrier detect
  -[NO]CTS_ENABLE   enable/disable standard handling of clear-to-send
  -[NO]RTS_ENABLE   enable/disable synchronization via the request-to-send line
                    (enable implies -NOSYNC)
  -[NO]BP_ENABLE    enable/disable processing of bitpad input on this line
  -ERROR    [NO]FRAMING     enable/disable report of framing errors
            [NO]PARITY      enable/disable report of parity errors
            [NO]DCD_CHANGE  enable/disable report of change in DCD line
            [NO]CTS_CHANGE  enable/disable report of change in CTS line
  -DEFAULT          set all settable options to default values

  Valid speeds are 50, 75, 110, 134, 150, 300, 600, 1200, 2000, 2400, 3600,
  4800, 7200, 9600, and 19200.  'chr' may be a single ascii character or a
  one-byte hexadecimal value (e.g. 1a or 0f1).

  FULL DESCRIPTION


OPTIONS

  If no options are specified,  the  current  settings  of  the  SIO  lines  are
  displayed.

  -DEFAULT            Set  all  settable  options to their default values.  This
                     allows you to quickly reset values to known states.

  -LINE n            Specify the SIO line to be affected by  subsequent  options
                     on  this  command line. 'n' is an integer in the range 0-3.
                     The default SIO line  is  line  1  or  standard  input  (if
                     standard input is directed to an SIO line).

  -SPEED baud         Set the speed of the line, for both input and output.  The
                     possible baud rates are: 50, 75, 110, 134, 150,  300,  600,
                     1200,  2000,  2400,  3600,  4800,  7200,  9600, 19200.  The
                     initial setting is 9600 baud.  Note that 3600 baud  is  not
                     supported on DN3xx systems.  Speeds for partner line(s) may
                     occasionally need to be forced:  see -FORCE below.

  -FORCE             Valid only if -SPEED is also specified.  This option forces
                     the  speed  of the line specified by -LINE to be set to the
                     correct speed (specified by -SPEED).  If  the  line  has  a
                     "partner   line"  that  is  currently  set  to  some  other
                     (incompatible) speed, -FORCE will reset the partner  line's
                     speed  to  9600  baud.    See  example  4  below.  For more
                     information  about  partner  lines,  see  the  SIO_$CONTROL
                     description in Programming with General System Calls.

  -NLD [n]            Set  NEWLINE  delay.    This is the number of milliseconds
                     required following the output of a line feed (NEWLINE).  If
                     'n' is omitted or not set, 20 milliseconds is the default.

  -ERASE char         Set  the  erase character.  This option is valid only when
                     data is being passed to the  SIO  line  in  "cooked"  mode.
                     'char'  may  be  any  character  or  a one-byte hexadecimal
                     value.  Some characters may require quoting in  the  Shell.
                     The erase character is initially set to BACKSPACE (08 hex).

  -KILL char          Set  the  kill  character.  This option is valid only when
                     data is being passed to the SIO line in "cooked" mode.  The
                     kill character is initially set to CTRL/X.

  -EOF char           Set  the  end-of  file  character.    The EOF character is
                     initially set to CTRL/Z.

  -QUITCHR char
                     Set  the  quit  character.  The quit character is initially
                     set to CTRL/].

  -INTCHR char       Set the interrupt character.  This  is  used  primarily  by
                     DOMAIN/IX.  The interrupt character is initially CTRL/C.

  -SUSPCHR char
                     Set the suspend character.    This  is  used  primarily  by
                     DOMAIN/IX.  The suspend character is initially CTRL/P.

  -[NO]RAW           Turn raw mode on or off.  In raw mode, full 8-bit bytes are
                     transmitted in both directions, without any interpretation.
                     The initial setting is -NORAW.

  -[NO]ECHO           Turn  the echoing of input characters over the SIO line on
                     or off.  The initial setting is ECHO.

  -[NO]SYNC          The terminal normally sends CTRL/S  (XON)  when  its  input
                     buffer  begins  to  fill, and CTRL/Q (XOFF) when the buffer
                     begins to empty, to synchronize it with a  high-speed  data
                     source.   This option enables or disables that behavior (it
                     is initially enabled).  -SYNC implies -NORTS_ENABLE.

  -[NO]CVT_NL        Enable or disable conversion of  LF  to  CR-LF  on  output.
                     CVT_NL  causes  NEWLINEs  (LF)  to  be transmitted as CR-LF
                     sequences.  This option is valid only when  data  is  being
                     passed  to  the  SIO  line  in  "cooked" mode.  The initial
                     setting is -NOCVT_NL.  NOTE: EMT always puts the  SIO  line
                     in  "raw"  mode, so -CVT_NL has no effect in that instance.
                     Use the OUTTERM command within EMT.

  -[NO]CVTRAW_NL
                     Similar to -CVT_NL, but applies only to raw mode.

  -[NO]INSYNC         Enable  or  disable  reacting  to  CTRL/S  and CTRL/Q when
                     received by node.  -INSYNC  causes  transmissions  to  halt
                     when CTRL/S is received and resume when CTRL/Q is received.
                     The initial setting is -NOINSYNC.

  -PARITY state
                     Select parity checking state.  Valid states are:

                     NONE   don't send or check parity bit
                     EVEN   send and check even parity
                     ODD    send and check odd parity

                     The initial state is NONE.

  -BPC n             Set number of bits per character.  'n' is an integer in the
                     range 5-8.  The initial number of bits per character is 8.

  -STOP n            Set number of stop bits.  'n' may be 1, 1.5,  or  2.    The
                     initial number of stop bits is 1.

  -[NO]QUIT           Enable/disable quits for the current process.  The initial
                     setting is -NOQUIT.

  -[NO]INT           Enable/disable interrupts for the  current  process.    The
                     initial setting is -NOINT.

  -[NO]SUSP          Enable/disable suspend faults for the current process.  The
                     initial setting is -NOSUSP.

  -[NO]RTS           Enable/disable  the  request-to-send  line.    The  initial
                     setting  is -RTS.  Note that you may NOT use this option if
                     -RTS_ENABLE is specified.

  -[NO]DTR           Enable/disable the data-terminal-ready line.   The  initial
                     setting is -DTR.  Note that -DTR is not valid if -LINE 3 is
                     specified.

  -[NO]DCD_ENABLE
                     Enable/disable  standard  handling  of carrier detect.  The
                     initial setting is -NODCD_ENABLE.

  -[NO]CTS_ENABLE
                     Enable/disable  standard  handling  of  clear-to-send.  The
                     initial setting is -NOCTS_ENABLE.

  -[NO]RTS_ENABLE
                     Enable/disable  RTS  flow  control.  The initial setting is
                     -NORTS_ENABLE.  Enable implies -NOSYNC.

  -[NO]BP_ENABLE
                     Enable/disable processing of bit-pad input (from a graphics
                     tablet) on the SIO line.  When enabled,  data  received  on
                     this  line is not delivered through STREAM_$GET_REC, but is
                     accumulated by the interrupt routine,  and  passed  to  the
                     display  driver  a  point  at  a  time,  much  as  with the
                     touchpad.  This processing has the additional property that
                     subsequent   points  within  +/-1  in  both  the  X  and  Y
                     dimensions  are  ignored.      The   initial   setting   is
                     -NOBP_ENABLE.

  -ERROR state       Select error reporting state.  Valid states are:

                     [NO]FRAMING     enable/disable reported framing errors
                     [NO]PARITY      enable/disable reported parity errors
                     [NO]DCD_CHANGE  enable/disable report on DCD line
                     [NO]CTS_CHANGE  enable/disable report on CTS line

                     Only FRAMING is initially enabled.


EXAMPLES

  1. $ tctl                                            Display current
     Status of Line 1:                                  settings.
     Erase (character delete) character: 08 (hex)
     Kill (line delete) character: 18 (hex)
     End of file character: 1A (hex)
     Quit character: 1D (hex)
     Interrupt character: 03 (hex)
     Suspend character: 10 (hex)
     New line delay: 0
     Speed: 9600
     Raw: FALSE,         Echo: TRUE,         Cvt_NL: TRUE
     CvtRaw_NL: FALSE,   Host_Sync: TRUE,    Input_Sync: FALSE
     RTS: TRUE,          DTR: TRUE,          DCD: FALSE
     CTS: FALSE,         Quit_Enable: FALSE, Int_Enable: FALSE
     Susp_Enable: FALSE, DCD_Enable: FALSE,  CTS_enable: FALSE
     BP_enable: FALSE    RTS_enable: FALSE
     Eight bits per character, Parity: None, One stop bit
     Errors enabled: FRAMING

  2. $ tctl -line 2 -quitchar 0FE -insync -speed 300   Set quit character to
                                                        hex FE, enable input
                                                        synchronization, set
                                                        speed to 300 baud on
                                                        SIO line 2.

  3. $ tctl -parity odd -quitchar '#' -kill !       Set parity to odd,
                                                     quit character to #
                                                     (quoted because #
                                                     normally begins a
                                                     comment in the Shell),
                                                     and kill character
                                                     to ! on line 1.

  4. $ tctl -line 2 -speed 50
     ?(tctl) Speed requested is incompatible with current speed
             of partner line 1.  Resubmit  command  with -FORCE
             if permissable to reset partner line to 9600 baud.

     $ tctl -line 2 -speed 50 -force
     ?(tctl) Warning: Speed of partner line has been reset to 9600 baud.


RELATED TOPICS

  More information is available.  Type:

  - HELP EMT
   for  details  about  configuring  your node as a dumb terminal to communicate
    with a remote host via an SIO line.

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026