



















           Terminal Manager

           Multi-User OS/2

           Reference Manual

             Version 3.20































Terminal Manager is an unpublished work and is the copyright of Qiiq Ltd.
The Terminal Manager software, and data, or documentation related thereto, and the information disclosed there-
in, are confidential and proprietary to Qiiq Ltd and may be used only under the terms and conditions of a Licence
Agreement from Qiiq Ltd.  Neither the software, regardless of the form in which it exists, nor such data, nor infor-
mation,  may  be used or disclosed to others for any purpose except as specifically authorised in  writing  by  Qiiq
Ltd.   The  recipient, by accepting the documentation or by utilising the software, agrees to the  terms  and  condi-
tions  of the Licence Agreement and agrees that neither the software, nor the documentation, nor the  information
disclosed  therein,  nor  any  part  thereof, shall be reproduced or transferred to  other  documents  nor  used  nor
disclosed to others for manufacturing or for any other purpose except as specifically authorised in writing by  Qiiq
Ltd.
(c) Copyright 1990-1995  An unpublished work by Qiiq Ltd.  All rights reserved.
Terminal  Manager,  TermView,  TermPak and Qiiq are trademarks of Qiiq Ltd.  All  other  trademarks  are  acknow-
ledged.
Qiiq Ltd, Elm House, 17-19 Claygate Lane, Thames Ditton, Surrey, KT7 0DL, United Kingdom
Telephone +44 (0)181 339 0739 - FAX +44 (0)181 398 8443 - Email qiiq@cix.compulink.co.uk


-------------------------------------------

Contents

-------------------------------------------


1  Introduction

2  Overview of Terminal Manager

  2.1 System Requirements                  2-3

3  Installing Terminal Manager

  3.1 Installation Details                    3-5

4  Terminal Manager Operation

    4.1 Starting Terminal Manager                4-1
  4.1.1 Starting Terminal Manager From The Command Prompt  4-3
  4.1.2 Starting Terminal Manager From Presentation Manager  4-4
  4.1.3 Starting Terminal Manager Automatically        4-6
    4.2 Monitoring And Controlling Terminals           4-7
  4.2.1 Monitoring Terminal Status              4-7
  4.2.2 Displaying Log Records                4-9
  4.2.3 TermView Commands                 4-10
     4.2.3.1 The Terminal Status Panel -
        'Action' Pull-Down Menu            4-11
     4.2.3.2 The Terminal Status Panel -
        'Display' Pull-Down Menu            4-12
     4.2.3.3 The Terminal Status Panel -
        'Exit' Pull-Down Menu             4-12
     4.2.3.4 The Log Records Panel -
        'Action' Pull-Down Menu            4-13
     4.2.3.5 The Log Records Panel -
        'Display' Pull-Down Menu            4-13
     4.2.3.6 The Log Records Panel -
        'Exit' Pull-Down Menu             4-13
    4.3 Closing Down Terminal Manager              4-13
    4.4 Terminal Start-Up                    4-14
    4.5 Starting New Terminal Sessions              4-15
    4.6 Terminal Utility Programs                 4-19
  4.6.1  The CHECKSUM Program              4-19

Contents


  4.6.2  The DOWNLOAD Program              4-20
  4.6.3  The INFO Program                  4-20
  4.6.4  The PMSSET Program                4-20
  4.6.5  The RUNDOS Program                4-21
  4.6.6  The SETWY325 Program               4-21
  4.6.7  The SVIEW Program                 4-21
  4.6.8  The TACT Program                  4-22
  4.6.9  The TCONTROL Program              4-22
  4.6.10 The TDEACT Program                4-24
  4.6.11 The TRMATTR Program               4-24
  4.6.10 The TSTART Program                4-25
  4.6.10 The UPLOAD Program                4-25

5  The TRMMAN.INI File

    5.1 The SYSTEM Section                   5-2
  The BUS Statement                     5-3
  The SHELL Statement                    5-4
  The KEYBOARDCP Statement                5-4
  The TERMPAKPORTNO Statement             5-5
  The MAXLOGSIZE Statement                5-6
  The PMS Statement                     5-6
  The DELAYONLOAD Statement              5-7
  The DOSCPULIMIT Statement                5-8
    5.2 The PORT Sections                    5-9
  The PORTNO Statement                  5-10
  The ADAPTER Statement                  5-11
  The COMNAME Statement                 5-15
  The IRQ Statement                     5-15
  The IOBASE Statement                   5-16
  The TXBSZ Statement                    5-17
  The TXBLO Statement                   5-17
  The RXBSZ Statement                    5-18
  The RXBHI Statement                    5-18
  The RXBLO Statement                   5-19
  The TXFIFO Statement                   5-19
  The RXFIFO Statement                   5-20
    5.3 The TERMINAL Sections                 5-21
  The TERMNO Statement                  5-23
  The PORTNO Statement                  5-23
  The LOCATION Statement                 5-23
  The TERMTYPE Statement                 5-24
  The KBDTYPE Statement                  5-25
  The KBBSZ Statement                    5-28

                                      Contents


  The ATD Statement                     5-29
  The STATUSLINE Statement                5-30
  The DEFAULTROWS Statement               5-30
  The DEFAULTCOLS Statement               5-31
  The MAXROWS Statement                 5-31
  The MAXCOLS Statement                  5-32
  The SHELL Statement                    5-33
  The MAXSESSIONS Statement                5-33
  The BAUD Statement                    5-34
  The DATABITS Statement                  5-34
  The PARITY Statement                   5-35
  The STOPBITS Statement                  5-35
  The XONXOFF Statement                  5-36
  The FORCECTS Statement                 5-36
  The FORCEDSR Statement                 5-37
  The FORCEDCD Statement                 5-37
  The TOGGLERTS Statement                5-38
  The TOGGLEDTR Statement                5-39
  The IDLETIMEOUT Statement                5-39
  The ACTIVATE Statement                  5-39

6  The DOS-TERMINAL Feature

    6.1 Setting Up The Host Computer For DOS-Terminal       6-1
    6.2 Setting Up The MSDOS PC For DOS-Terminal       6-2
  6.2.1 Configuring TERM.EXE On The MSDOS PC      6-3
    The ADAPTER Statement                6-4
    The BAUD Statement                  6-5
    The PARITY Statement                 6-5
    The STOPBITS Statement                6-6
    The XONXOFF Statement                6-6
    The DISPLAY Statement                6-7
    The MODEM Statement                 6-8
    The F1,F2,F3 and F4 Statements             6-8
  6.2.2 Script Strings                     6-8
    6.3 Using TERM.EXE On The MSDOS PC          6-11
    6.4 Terminal Printing Using TERM.EXE            6-14
    6.5 File Transfer                       6-14
  6.6.1 The UPLOAD Program                6-16
  6.6.2 The DOWNLOAD Program              6-16





Contents


7  Printer Management System

    7.1 The PMS.INI File                    7-2
  7.1.1 The PRINTER Sections Of PMS.INI          7-2
    The PRINTERNO Statement               7-3
    The TERMNO Statement                7-4
    The SPEED Statement                  7-4
    The LATENCY Statement                7-5
    The BUFSZ Statement                  7-6
    The BUFLO Statement                 7-6
    The DRIVER Statement                 7-7
    The FORMFEED Statement               7-8
    7.2 The PMS Print Devices                  7-9
    7.3 The PMS Environment                  7-9
    7.4 The PMSSET Command                  7-10

Appendix A - Terminal Information

    A.1 Terminals With A PC-TERMINAL Mode          A-3
    A.2 The IBM 3151 ASCII Display Station            A-5
    A.3 The WYSE WY-55 Terminal               A-8
    A.4 The WYSE WY-60 Terminal               A-12
    A.5 The WYSE WY-120 Terminal               A-16
    A.6 The WYSE WY-325 Colour Terminal           A-20
  A.6.1 The SETWY325 Program               A-26
     A.6.1.1 The WYSE325 Section              A-27
     A.6.1.2 The PALETTE Section              A-27
    The COLORn Statements                A-28
    The BORDER Statement                A-28
     A.6.1.3 The COLORMAP Section             A-29
    A.7 The DOS-Terminal                    A-31
    A.8 ASCII Terminal Support                 A-32
  A.8.1 Special Key Sequences for ASCII Terminals       A-33
  A.8.2 DEC VT220 Support                 A-34
  A.8.3 Wyse WY50 Support                 A-35
  A.8.4 Wyse WY60 Support                 A-36
  A.8.5 ASCII Terminal Printing                A-39

Appendix B - Adapter Information

    B.1 The COM1 Through COM8 Adapters            B-3
    B.2 The ACCENT ASYNC-4 Adapter             B-4
    B.3 The AST Four-Port ASYNC/AT Adapter          B-5
    B.4 The DIGIBOARD Range Of Adapters           B-6

                                      Contents


    B.5 The HOSTESS Range Of Adapters             B-9
    B.6 The Qiiq S-Link Adapter                 B-11
    B.7 The Technology Concepts TCL+8 Adapter         B-12
    B.8 Non-Specific NS16450 Adapters              B-13
    B.9 Adapters Supported Via Standard OS/2 Device Drivers    B-14

Appendix C - Cable Configurations

    C.1 Cable Type 1                      C-2
    C.2 Cable Type 2                      C-3
    C.3 Cable Type 3                      C-4

Appendix D - Using Modems

    D.1 The MODEM, MODEMRST and MODEMLOG Files    D-2
    D.2 Establishing The Connection                D-6
    D.3 Baud Rate Settings Using Modems             D-8
    D.4 Flow Control Using Modems               D-10

Index

























Contents















































                                      Contents


-------------------------------------------

Chapter 1

Introduction

-------------------------------------------

This  manual is a component part of the Terminal Manager  software  pack-
age  and  describes the installation and operating  procedures  for  Terminal
Manager Version 3.20.

The Terminal Manager package comprises the following :-

  '` The Terminal Manager Reference Manual (this manual)

  '` One  3.5  inch 1.44MB diskette  containing  the  Terminal
     Manager software and related files (a 5.25 inch diskette is
     available on request).

  '` One hardware module called the TermPak which attaches
     to  the  computer's  RS232  serial  port  and  controls  the
     number  of  users  able to concurrently  use  the  facilities
     offered  by Terminal Manager (Note: On certain  versions
     of Terminal Manager, the TermPak is not required and  is
     therefore not supplied as part of the package)

This  manual assumes that the reader has a working knowledge of the  OS/2
environment  and  of  personal computer operating procedures.  It  is  struc-
tured primarily as a reference manual but is also designed to take the reader
through  the  process of installing Terminal Manager for  a  single  terminal
configuration  and starting Terminal Manager for day-to-day usage.  It  also
describes  how  to  configure the software for your  own  specific  require-
ments.

Chapter 2 gives an overview of Terminal Manager and specifies the  hard-
ware and software required for its use.

Chapter 3 details the installation procedure.

Chapter 4 describes the day-to-day operation of the software including start-
ing  Terminal Manager, controlling and monitoring terminals,  and  closing
down the system at the end of the working period.


Introduction                                    1-1


Chapter 5 describes the options available for configuring Terminal Manager
for your own specific requirements.

Chapter  6 describes the DOS-TERMINAL feature which allows DOS  PCs
to be connected in place of standard terminals.

Chapter  7 describes the Printer Management System which  provides  sup-
port for printers attached to terminals.

The   appendices  contain  technical  information  covering   communication
adapters, terminals, cable configurations and modems.

A  separate  manual,  Terminal  Manager  -  Multi-User  DOS  -  Reference
Manual describes the use of the Multi-User DOS feature which allows DOS
programs  to  be  used  on terminals.  The  Multi-User  DOS  feature  is  an
optional facility which may be ordered from your supplier.

We  have attempted to incorporate into this manual all the  information  re-
quired  for successful installation and use of Terminal  Manager,  however,
should  you  experience any problems, please contact your supplier  who  is
qualified to give you full technical assistance with the product.
























1-2                                    Introduction


-------------------------------------------

Chapter 2

Overview of Terminal Manager

-------------------------------------------

This chapter gives an overview of the features and facilities of the Terminal
Manager package.

Terminal  Manager is designed to operate under IBM  Operating  System/2,
or  OS/2 as it is more commonly known.  OS/2 is essentially  a  single-user
operating system with the capability of being networked with other OS/2 or
DOS  computers  to  share databases, files, printers  etc.   Multi-user  OS/2
working  can  thus  be achieved within a network  of  computers,  however,
each user must have their own fully functional computer.

Terminal  Manager is a software sub-system which runs alongside  standard
OS/2  and  provides  for multiple users to share a  single  computer  and  its
resources.   Each user accesses the central OS/2 computer through  the  use
of  a  low-cost dumb terminal, thus providing significant cost  benefits  over
the networked multi-user solution.

Terminals  are  connected into the computer's RS232  serial  ports,  COM1
through  COM8,  or into other third-party  multi-port  adapters.   Terminals
may  be connected directly to the computer or may be sited at remote  loca-
tions and connected using modem or packet-switched links.

The terminals supported by Terminal Manager usually have PC-style  key-
board  layouts making it easy for users to switch between using the  compu-
ter  directly  and  using a terminal.  Equally  importantly,  application  pro-
grams  designed  to use key combinations from a  PC-style  computer  key-
board function correctly when run at a terminal.

As  an  alternative to using dumb terminals, the  DOS-TERMINAL  feature
allows  DOS-based  PCs to function as  terminals.   The  DOS-TERMINAL
feature also allows DOS-based PCs to participate in file transfer  operations
with the host computer.

Terminal  Manager  provides support for printers attached to  the  auxiliary
ports  found  on most terminals, as well as printers attached  to  DOS-based
PCs being used as terminals.


Overview Of Terminal Manager                          2-1


The  programs which run at the terminals may be OS/2 protect  mode  pro-
grams or DOS real mode programs.

In order to be able to run on terminals, both OS/2 and DOS programs  must
be  text-mode programs.  These programs generally use  alphanumeric  text
screens  with a limited graphics capability obtained by using  the  line-draw-
ing  characters  in  the extended screen character set.   Any  OS/2  or  DOS
program  which  uses graphics screen displays is probably  not  suitable  for
terminal operation.

OS/2  protect mode applications designed to run only under OS/2  Presenta-
tion  Manager  are not able to be accessed from a terminal.   OS/2  terminal
programs  may  otherwise  use most of the facilities available  to  any  other
OS/2  program.   This  includes use of most of  the  API  (application  pro-
gramming  interface)  calls  for  the  base  operating  system,  the  Database
Manager, DB2/2, Communications Manager, LAN Server and many more.

Terminal input and output is achieved through the use of the standard  OS/2
KBD  and  VIO  API  calls.  Because of this, programs do  not  have  to  be
specifically  designed  to run on terminals and do not need to use  any  non-
OS/2  API  calls  in order for them to run happily  on  a  terminal.  Indeed,
many  off-the-shelf applications, utilities and language products already  run
on  terminals  under  Terminal Manager.  Text-mode  programs  written  in
OS/2's REXX language will also run happily on terminals.

If  you  are  running off-the-shelf software under  Terminal  Manager,  you
must  ensure  that the licence agreement for that software does  not  impose
any  restrictions  in  terms  of number of concurrent  users.   If  the  licence
agreement  appears to restrict multi-user operation, you should  contact  the
software producer or distributor to clarify or modify the licence agreement.

We  are unable to guarantee that all off-the-shelf OS/2 and  DOS  programs
will  run  under  Terminal  Manager because  the  OS/2  Operating  System
allows application programs to directly access the computer hardware as  an
alternative to using operating system calls.  Any application program which
accesses  the  screen,  keyboard or mouse hardware  directly  may  not  run
properly under Terminal Manager.

All  OS/2 protect-mode programs are inherently multi-user with  respect  to
file  and  record  locking procedures and  well-written  programs,  designed
with OS/2 multitasking in mind, should present no problem under Terminal
Manager.  This is because, even on a single-user, stand-alone OS/2 system,
multiple  programs or even multiple instances of the same program may  be
started  by  the  operator.  Each program must  therefore,  protect  any  file

2-2                          Overview Of Terminal Manager


access  against,  not  just other programs, but  multiple  instances  of  itself.
Even  though  all OS/2 programs must provide for file and  record  locking,
some  programs might take the easy route and lock an entire file  instead  of
just the section being updated.  For a word-processing program, locking  an
entire  document  file is probably the correct thing to do,  however,  for  an
accounts  program to lock one of the ledger files must be considered  a  bug
on a multitasking system such as OS/2.

Many  DOS  programs  are not designed for multi-user  operation  and  can
present problems when two or more terminals are running programs access-
ing the same data.  To overcome this problem, Terminal Manager  provides
a  mechanism to delay the running of a DOS program if it is likely to  clash
with another program already running.

Terminal  Manager  supports  the  attachment  of up  to  48  terminals  to  a
computer.   Your version of Terminal Manager is licensed for a number  of
concurrent  users which may be less than the number of  terminals  attached
to  the  computer.   If  more than the licensed number  of  users  attempt  to
access  the system, a system busy message is displayed at each of  the  addi-
tional  terminals and the terminals are put into a waiting queue until  one  of
the current users logs off the system.

The   number   of   concurrent   users  is  encoded   into   the   file   named
TRMMAN.OPT.   If your version of Terminal Manager was supplied  with
a  TermPak  device, then the TRMMAN.OPT file also  contains  the  serial
number of the TermPak hardware module supplied with Terminal Manager.
The correct TermPak must be attached to the computer in order to allow the
data  in  TRMMAN.OPT to be decoded.  The number of  concurrent  users
can be upgraded at any time by your supplier; the upgrade process  consists
of  replacing the existing TRMMAN.OPT file with a new file  encoded  for
the increased number of users.

-------------------------------------------
2.1  System Requirements

Terminal  Manager  runs under OS/2 versions 1.1, 1.2, 1.3,  2.0,  2.1  and
Warp 3.0.  Both the IBM and Microsoft editions of OS/2 1.x are supported.
The Multi-User DOS facility requires OS/2 version 2.0 or later.

Terminal  Manager  will  run on Micro Channel  Architecture  (MCA)  bus
systems  such  as the IBM Personal System/2 range, or on IBM  PC/AT  or
compatible  systems  using  derivations  of the AT  bus;  these  systems  are
sometimes   called   Industry  Standard  Architecture  (ISA)   bus   systems.
Terminal  Manager should also run happily on Extended Industry  Standard

Overview Of Terminal Manager                          2-3


Architecture  (EISA)  bus systems. The processor may be the  Intel  80286,
80386SX, 80386, 80486SX, 80486 or Pentium.  The Multi-User DOS facil-
ity will not run on the 80286 processor.

Terminal  Manager  is able to use monochrome or colour  display  adapters
such as the MDA, CGA, MCGA, EGA, VGA and Super-VGA.

Memory  requirements  depend very much on the mix  of  application  pro-
grams  to  be  run  on the computer and  at  the  terminals,   however,   you
should  consider  using  a  minimum of 4  megabytes  of  RAM.   Terminal
Manager  itself  is  not  particularly memory-hungry,  however,  if  you  are
running  different programs on a number of terminals, you should  consider
the  code  and data requirements for the required mix of programs.   If  you
have  insufficient  memory,  and you have enabled  swapping  in  the  OS/2
CONFIG.SYS  file, the system should still remain functional, but  response
times  will noticeably deteriorate both at the computer keyboard and  at  the
terminals.

Terminal Manager, and OS/2 itself, require the system to have a hard  disk.
Disk  capacity  depends  on the applications installed and the  data  file  and
database  storage  requirements.   Terminal Manager itself  uses  very  little
disk space.  The computer must have at least one diskette drive in order for
the Terminal Manager software to be installed.  The diskette drive may be a
3.5  inch 720KB, 1.44MB or 2.88MB drive.  If you have only a  5.25  inch
diskette drive, you should specially request a version of Terminal  Manager
on this format.

The  computer  must  have at least one RS232 serial port  for  connecting  a
terminal.  Other RS232 ports may be added from the following range :-

  '` COM1 through COM8 compatible adapters
  '` DIGIBOARD range of non-intelligent 4, 8 and 16 port adapters
  '` HOSTESS range of non-intelligent 4, 8 and 16 port adapters
  '` AST Four-Port Async/AT
  '` Qiiq S-Link 4-port adapter
  '` Technology Concepts CC8 adapters
  '` Accent Async-4 adapter
  '` Any adapter supplied with a suitable OS/2 device driver







2-4                          Overview Of Terminal Manager


At least one terminal is required from the following selection :-

  '` IBM  3151 ASCII Display Station models 31, 41, 35 or 45  equip-
     ped with the Cartridge For Connectivity

  '` WYSE WY-55

  '` WYSE WY-60

  '` WYSE WY-120

  '` WYSE WY-325 colour terminal

  '` Terminals that have a compatible PC-Terminal mode

  '` DOS PCs using the DOS-TERMINAL feature

  '` Most  ASCII  terminals  not  having a  PC-Terminal  mode  (if  the
     appropriate  support  files  have  been  provided  for  the   specific
     terminal)

























Overview Of Terminal Manager                          2-5















































2-6                          Overview Of Terminal Manager


-------------------------------------------

Chapter 3

Installing Terminal Manager

-------------------------------------------

This chapter describes the procedure for installing Terminal Manager on  to
the  hard  disk  of  your computer.   The  installation  procedure  is  mostly
automated and requires the operator to start just one program.

The  communication  adapters to be used by Terminal Manager  should  al-
ready  have  been  installed in the computer and  configured  in  accordance
with appendix B and the manufacturer's installation instructions.

Before  installing the software, it is recommended that you make a  number
of  back-up copies of the Terminal Manager diskettes.  You are licensed  to
make as many back-up copies as you wish, however, you may use Terminal
Manager on only one computer at a time.

If  your Terminal Manager package contains a hardware module  called  the
TermPak, it must be inserted into one of the RS232 serial ports  controlled
by  Terminal Manager.  The TermPak controls the number of users able  to
concurrently  access  the computer and sits between the RS232 port  on  the
host  computer  and  the cable from the terminal;  a label  on  the  TermPak
indicates  the  end  which  must be fitted to  the  computer.   TermPaks  are
available  for  9-pin  or  25-pin male or female  RS232  connectors;   if  the
TermPak supplied with the Terminal Manager package is not right for  your
system,  the appropriate version is available from your  supplier.   Alternat-
ively,  you  may insert an appropriate gender changer  device  between  the
computer  and  the TermPak.  The gender changer must provide  a  straight
signal-to-signal connection and must n_o_t_ be a null-modem type of device.

Terminal  Manager  initialisation and configuration is controlled  by  state-
ments  contained  in  the files named TRMMAN.INI  and  PMS.INI.   The
files  may be modified to reflect your configuration in respect of  communi-
cation adapters, terminals, printers and many other options.  After  installa-
tion,  TRMMAN.INI is set up for a configuration of one  terminal  attached
to the COM1 port and PMS.INI is set for one printer attached to the termi-
nal.  It is recommended that you experiment using this configuration before
setting  up  TRMMAN.INI and PMS.INI for your own  specific  configura-
tion.   Chapter 5 discusses the TRMMAN.INI file and chapter  7  discusses
the PMS.INI file.

Installing Terminal Manager                            3-1


Appendix  C  details  cable  configurations  for  attaching  terminals  to  the
computer.   It is recommended that you use the correct  cable  configuration
so  that  flow  control,  or pacing, of data  between  the  computer  and  the
terminal can be used.  Additionally, the computer is able to detect terminals
being switched on and off if the correct cable is used.  For ease of  experi-
mentation,  the installed TRMMAN.INI for COM1 will operate with just  a
basic  cable with Signal Ground, Transmit Data and Receive  Data  connec-
ted,  however, this cable is not able to detect a terminal being  switched  on
or  off  and always assumes that a terminal is present and  ready  to  receive
data.

The  Terminal  Manager  installation  program  must  be  started  from   the
command prompt in a full-screen session.

To start a full screen session under OS/2 1.x :-

1) Press  Ctrl+ESC  to  display  the  Task  List  window  of  Presentation
  Manager.
2) From  the   Task List window you should select the Group  -  Main  op-
  tion.
3) From  the Group - Main window, the option OS/2 Full Screen must  be
  selected  which  will  take you into a  full-screen  session  showing  the
  command prompt.


To start a full screen session under OS/2 2.0 or later :-

1) Press  Ctrl+ESC  to display the Window List  window  of  Presentation
  Manager.
2) From the  Window List window, double click on the Desktop option.
3) From the Desktop, double click on the OS/2 System icon.
4) From the OS/2 System window, double click on the Command Prompts
  icon.
5) From  the  Command Prompts window, double click on the  OS/2  Full
  Screen icon.

If  you  are  installing  Terminal Manager and  a  previous  version  already
exists  on the computer, TINSTALL may fail with an error  message  while
trying to copy the file TRMMAN.MSG.  This occurs because of a  problem
in OS/2 which causes the existing TRMMAN.MSG file on the hard disk  to
be   permanently   locked  and  thus  unable  to  be  replaced  by   the   new
TRMMAN.MSG being copied by TINSTALL.  OS/2 2.11 and later appear
to  have fixed the problem, however, you should wait for at least 5  minutes
after booting the system before installing Terminal Manager.

3-2                            Installing Terminal Manager


To overcome the problem on other versions of OS/2, you must remove  the
Terminal Manager DEVICE statements from the CONFIG.SYS file located
on  the boot drive.  The statements in CONFIG.SYS will appear  similar  to
the following :-

  DEVICE=C:\TRMMAN\TRMINT.SYS
  DEVICE=C:\TRMMAN\TRMMAN.SYS
  DEVICE=C:\TRMMAN\TRMDOS.SYS

The  OS/2 system editor may be used to remove the statements.   The  third
line  will  only be present if you have already  installed  Terminal  Manager
3.00 or later together with the optional Multi-User DOS facility.

After  modifying CONFIG.SYS, you should re-boot the computer and  then
resume  the  re-install  of Terminal Manager.  The  computer  must  be  re-
booted for the modifications to CONFIG.SYS to become effective.

The  Terminal  Manager  diskette must be inserted into  the  diskette  drive,
usually  drive A, and the following command must be entered at  the  com-
mand prompt, followed by the ENTER key:-

  A:TINSTALL

If  you  are  upgrading from a previous version of  Terminal  Manager  and
wish  to  maintain  your existing TRMMAN.INI  and  PMS.INI  files,  you
should specify a re-install by using the /R option :-

  A:TINSTALL /R

The  TINSTALL  program  installs the Terminal Manager  software  into  a
directory  called TRMMAN on the boot drive;  the boot drive  is  normally
drive  C.  Before proceeding, TINSTALL displays a message and waits  for
the  ENTER  key  to  be pressed;  pressing the ESC  key  at  this  point  will
terminate the installation procedure.

If you are re-installing Terminal Manager, a warning message will be  dis-
played reminding you that the DEVICE statements should be removed from
CONFIG.SYS  as  described  above.   You  may  press  ESC  to  exit  from
TINSTALL  or ENTER to continue with the installation if you are sure  that
the statements have been removed from CONFIG.SYS.

TINSTALL  copies  the Terminal Manager files from the  diskette  into  the
TRMMAN  directory  and then modifies or adds certain  statements  to  the
CONFIG.SYS  file  in  the root directory of the  boot  drive.   When  TIN-

Installing Terminal Manager                            3-3


STALL has successfully completed, the computer must be re-booted  before
the changes made to CONFIG.SYS become effective.

Whilst modifying CONFIG.SYS, TINSTALL creates a temporary file  with
the  name  CONFIG.$$$  and renames the existing  CONFIG.SYS  file  to
CONFIG.BAK.   After  the installation is completed,  TINSTALL  deletes
the CONFIG.$$$ file.

After  installation,  Terminal Manager is set for a  default  configuration  of
one terminal attached to the COM1 port and a single printer attached to  the
terminal;  the  terminal  is  set to be a  DOS  PC  running  the  TERM.EXE
program.   Before re-booting the computer, you may wish to make  changes
to the TRMMAN.INI and PMS.INI files to reflect your particular  adapter
and  terminal  configuration.   However, it is  recommended  that  you  first
attempt  to  successfully  connect  a single terminal  to  COM1  in  order  to
familiarise yourself with the operation of Terminal Manager before attempt-
ing to set up your customised configuration.

If  your Terminal Manager package contains a TermPak hardware  module,
the  default  TRMMAN.INI file assumes that the TermPak module  will  be
connected  to  the  COM1 port.  You should ensure that  the  TermPak  has
been  connected before running Terminal Manager.  If you wish to  connect
the  TermPak to any other port, you will need to modify the  TERMPAKPORTNO
statement  in TRMMAN.INI (see section 5.1).  If your  Terminal  Manager
package was supplied without a TermPak, the TERMPAKPORTNO statement  will
not appear in your TRMMAN.INI file.

Chapter 5 describes how to set up the TRMMAN.INI file for your  particu-
lar  configuration.   Chapter 7 describes how to set up the PMS.INI  file  to
specify the attachment of printers to terminals.  Appendix A describes  how
to  set  up  the  terminal.   Appendix  B  discusses  each  of  the   supported
communication  adapters.   Appendix C details the  connections  for  cables
between  the terminal and the computer.  Appendix D lists some  considera-
tions for attaching terminals using modems.

If  the  Terminal  Manager diskette contains the  optional  Multi-User  DOS
facility, this feature will also be installed by the TINSTALL program if you
are  installing  onto  a system containing OS/2 2.0  or  later.   The  separate
manual Terminal Manager - Multi-User DOS - Reference Manual  describes
how to set up and use the Multi-User DOS facility.





3-4                            Installing Terminal Manager


-------------------------------------------
3.1  Installation Details

The  installation  procedure described above is automatic and does  not  re-
quire  you  to  be aware of which files need to be copied  or  what  changes
should be made to CONFIG.SYS.

After installation, all the files required for normal operation will have  been
copied  into a directory called TRMMAN on the boot drive of  the  compu-
ter.  Its full path name would normally be C:\TRMMAN.

The  Terminal Manager diskette contains some files which are not  required
for normal operation and are therefore not copied as part of the  installation
procedure.   If  you  require any of these files, such as  the  sample  adapter
configuration  files (.XMP files), you may use them directly  from  diskette
or manually copy them into the TRMMAN directory.

TINSTALL    ensures   that   the   following   statements   appear   in    the
CONFIG.SYS file :-

  PRIORITY=ABSOLUTE      tells   the  OS/2  scheduler   to   allocate
                    processor timeslices evenly amongst  all
                    threads  and ensures that  terminal  pro-
                    grams  do  not  suffer  degradation  as  a
                    result  of  operations at  the  computer's
                    screen and keyboard.

  TIMESLICE=32,32       selects   the  minimum   and   maximum
                    timeslices allocated to each thread to  be
                    the  smallest  possible  value.   This  en-
                    sures   that  terminal  programs   appear
                    responsive.

  THREADS=nnn        sets  the number of threads allocated  by
                    OS/2 to the maximum to allow sufficient
                    for programs running on terminals.   nnn
                    is normally set to 512.

  DEVICE=n:\TRMMAN\TRMINT.SYS tells OS/2 to load the Terminal Manager
                    print   interceptor  at  operating   system
                    load time.




Installing Terminal Manager                            3-5


  DEVICE=n:\TRMMAN\TRMMAN.SYS tells OS/2 to load the Terminal Manager
                    port  device  driver at  operating  system
                    load time.

  DEVICE=n:\TRMMAN\TRMDOS.SYS tells OS/2 to load the Terminal Manager
                    Multi-User  DOS  device  driver.    This
                    statement will only appear if the Termi-
                    nal Manager diskette contains the optio-
                    nal Multi-User DOS feature and you are
                    installing onto OS/2 2.0 or later.

Programs running on terminals make use of the Terminal Manager dynamic
link libraries such as TRMMANA.DLL.  For OS/2 to be able to locate and
load  these libraries, the directory in which they are held must be named  in
the  LIBPATH  statement  along  with  other  directories  containing  OS/2
dynamic link libraries.  The LIBPATH statement after running  TINSTALL
will appear similar to, and may be longer than the following :-

  LIBPATH=C:\OS2\INSTALL;C:\OS2\DLL;C:\;C:\TRMMAN

TINSTALL also installs the Printer Management System files and creates  a
sub-directory  of the TRMMAN directory in which the print job queue  and
queued   jobs  are  stored  at  run-time  by  the  PMS.    The   sub-directory
\TRMMAN\PMS\SPOOL   may   contain,   at  any  one   time,   the   file
PMS.QUE and a number of files with the extension .JOB.

During Terminal Manager operation, certain other files might be created  in
the TRMMAN directory.

TERMVIEW.LOG  is created each time Terminal Manager is  loaded  and
contains log records used by the TermView module of Terminal Manager.

Terminal  start-up batch files may also be present;  these have  names  such
as START001.CMD.

The  TINSTALL program does not make any changes to the PATH  state-
ment  in  CONFIG.SYS.  If you wish to access any of the programs  in  the
TRMMAN directory whilst logged into other drives or directories, you will
need to ensure that the TRMMAN directory is included in the PATH state-
ment; this may be achieved either by setting it in CONFIG.SYS or by using
the SET command, possibly in a batch file.




3-6                            Installing Terminal Manager


-------------------------------------------

Chapter 4

Terminal Manager Operation

-------------------------------------------

This  chapter describes the day-to-day operation of Terminal  Manager  and
how  to configure the software for the start-up of Terminal Manager,  indi-
vidual terminals and additional sessions on the terminals.

Day-to-day  operations cover the initial start-up, control and  monitoring  of
terminals  using the TermView screen, and closing down the system  at  the
end of the working period.

While  Terminal  Manager  is  running,  the  keyboard  and  screen  of   the
computer  may  be used to run other OS/2 programs,  either  in  full-screen
text mode or in the Presentation Manager session.

Terminal  Manager itself uses just one OS/2 full-screen  text-mode  session,
leaving  other sessions free for any applications which need to run  in  their
own screen session.

After  Terminal  Manager  is  started,  the  TermView  screen  is  displayed
allowing the computer operator to monitor and control terminal  operations.
When  the operator wishes to use another application program,  the  Term-
View screen may be left running as a background session.


-------------------------------------------
4.1  Starting Terminal Manager

Before  any  of  the terminals are able to be  used,  the  Terminal  Manager
software must be started on the computer.

Terminal Manager may be started directly from the command line of a full-
screen  text-mode  session or may be included as an icon in a folder  on  the
OS/2 Desktop.  Alternatively, you may start Terminal Manager  automatic-
ally when the computer is initially loaded by placing the relevant statements
in  the  OS/2  startup initialisation  batch  file  STARTUP.CMD.   Sections
4.1.1, 4.1.2 and 4.1.3 below describe each of these methods.



Terminal Manager Operation                          4-1


Upon    loading,    Terminal    Manager    reads    its    initialisation     file,
TRMMAN.INI, and configures itself for the number of terminals,  sessions
etc.   The  TRMMAN.INI  file is described in detail in  chapter  5.   If  any
errors are detected in TRMMAN.INI, a message is displayed describing the
error  and possibly specifying the line number in TRMMAN.INI where  the
error  was detected;  in some cases the line number indicates the actual  line
causing  the  error  while in other cases it indicates the start  of  the  section
where  the  error was detected.  Depending on the type of  error,  Terminal
Manager  may continue to load or may terminate, requiring the error  to  be
corrected.

One error message is worth special mention :-

  TRM0095: 'TRMMAN.SYS' was not loaded at boot time

indicates  that  the  device driver TRMMAN.SYS  has  not  been  installed.
This  may happen if the DEVICE=n:\TRMMAN\TRMMAN.SYS statement is  not  pre-
sent  in  the  CONFIG.SYS file.  The error message may also  appear  as  a
result  of errors in TRMMAN.INI detected by TRMMAN.SYS.   If  errors
are detected by TRMMAN.SYS at initial load time, a message is  displayed
and the device driver terminates.

If  the  Printer Management System (PMS) is specified as  operational  (see
section  5.1),  Terminal Manager reads the PMS.INI file  and  displays  any
PMS-related error messages as described above.

The  first program to run on each terminal is termed the shell program  and
is discussed in sections 5.1 and 5.3.  The shell program initially inherits the
same  program  environment as exists when Terminal  Manager  is  started;
thereafter,  the shell program or any of its children may change  the  envir-
onment.   It  may  therefore  be necessary to  set  the  desired  environment
before  running Terminal Manager if the shell program requires  a  specific
environment setting.

The  program  environment includes the command search path  PATH,  the
data  search  path DPATH, the current drive and directory and  any  named
environment strings created using the SET command.

If  the PMS is operational, the first session on each terminal also inherits  a
PMS Environment as described in section 7.3.





4-2                          Terminal Manager Operation


4.1.1  Starting Terminal Manager From A Command Prompt

To  start Terminal Manager from a command prompt, a full-screen  session
must first be started as described below.

To start a full-screen session under OS/2 1.x :-

1) Press Ctrl+ESC to display the Task List window of Presentation Man-
  ager.

2) From  the   Task List window you should select the Group  -  Main  op-
  tion.

3) From  the Group - Main window, the option OS/2 Full Screen must  be
  selected  which  will  take you into a  full-screen  session  showing  the
  command prompt.

To start a full-screen session under OS/2 2.0 or later :-

1) Press  Ctrl+ESC  to display the Window List  window  of  Presentation
  Manager.

2) From the  Window List window, double click on the Desktop option.

3) From the Desktop, double click on the OS/2 System icon.

4) From the OS/2 System window, double click on the Command Prompts
  icon.

5) From  the  Command Prompts window, double click on the  OS/2  Full
  Screen icon.

The simplest way to start Terminal Manager is directly from the TRMMAN
directory  created  during  the installation of  the  software   The  following
commands  assume  that Terminal Manager was installed on drive  C.   The
current  default  drive is first set to be drive C and the current  directory  is
changed to the TRMMAN directory before entering the TM command  which
starts Terminal Manager :-

  C:
  CD \TRMMAN
  TM



Terminal Manager Operation                          4-3


If  you  wish terminal programs to inherit a specific  program  environment,
you may use OS/2 commands such as CD, PATH, DPATH and SET before
starting  Terminal  Manager.  The following command sequence sets  a  de-
fault drive and directory before starting Terminal Manager :-

  D:
  CD \TRMDIR
  TM

The TM command above will only be recognised if the current PATH  string
includes  the  TRMMAN  directory or if TRMMAN is  the  current  default
directory. Otherwise, the full path name n:\TRMMAN\TM must be specified  for
the command.

I_M_P_O_R_T_A_N_T__N_O_T_E_:_  If you start Terminal Manager from the  command
prompt  as described, the name for the session in the Presentation  Manager
Task/Window  List  will  always  be the latest  program  loaded.   This  can
cause  confusion when it is later wished to switch to the Terminal  Manager
session.

To  overcome this problem, it is better to start Terminal Manager in a  new
session  from  the command line and specify the name you wish to  be  dis-
played by the Task/Window List :-

  START "Terminal Manager" /N TM

or :-

  START "Terminal Manager" /N C:\TRMMAN\TM

The  name  assigned  within  quotes will then  be  displayed  any  time  you
switch to the Task/Window List.


4.1.2  Starting Terminal Manager From The OS/2 Desktop

Terminal  Manager may be started directly from the OS/2 Desktop  without
having to first start a full-screen text-mode session.

Under OS/2 1.x, the menu option must first be set up :-

1) Either the Group - Main or the Group - Utilities option in the Presenta-
  tion  Manager Task List window must be selected depending  on  which
  of the menus you wish to include the program in.

4-4                          Terminal Manager Operation


2) In the selected Group window, the action bar menu P_rogram displays a
  list of menu options.
3) Selecting  the  N_ew  option from the menu displays  the  New  Program
  window.   The  New  Program window displays the  four  fields  to  be
  entered.   The  Program Title field is the name that will  appear  in  the
  Task  List  window  while  Terminal Manager  is  running;  this  would
  generally be set to display the words Terminal Manager.  The Path and
  file  name  field  specifies  the  program  to  be  run.   If  the  Terminal
  Manager   software   is  installed  on  drive  C,  this  entry   would   be
  C:\TRMMAN\TM.EXE.   The  TM.EXE  program  does  not  take  any
  parameters and the Parameters field should be left blank.  The Working
  Directory field allows you to specify the initial default drive and  direc-
  tory  for  the shell program loaded on each terminal and may be  set  to
  any desired directory.
4) After  entering the fields, selecting the Add button will bring up a  pop-
  up menu How to run the program.
5) Choosing  the  option  Run the program full-screen  will  add  Terminal
  Manager to the selected Group menu.
6) Terminal  Manager can be started by selecting the new option from  the
  Presentation Manager window.

Under OS/2 2.0 or later, a program icon must first be created :-

1) Press  Ctrl+ESC  to display the Window List  window  of  Presentation
  Manager.
2) From the  Window List window, double click on the Desktop option.
3) From the Desktop, double click on the Templates icon.
4) From  the  Templates  window, drag a new program  object,  from  the
  peel-off stack of Program objects to the Desktop or into another  folder
  where  you  wish  to  place the new icon.   Dragging  is  performed  by
  pressing  the  right-hand mouse button while moving  the  mouse.   The
  action of creating a new program object will cause the Settings menu to
  be displayed for that object.
5) The  Path  and file name field specifies the program to be  run.   If  the
  Terminal Manager software is installed on drive C, this entry would be
  C:\TRMMAN\TM.EXE.   The  TM.EXE  program  does  not  take  any
  parameters and the Parameters field should be left blank.  The Working
  Directory field allows you to specify the initial default drive and  direc-
  tory  for  the shell program loaded on each terminal and may be  set  to
  any desired directory.
6) Click on the Session tab of the notebook object and select the OS/2  full
  screen button.  If you wish Terminal Manager to start when the icon  is
  clicked,  but  you wish to remain in the Presentation  Manager  screen,
  select the Start minimized check box.

Terminal Manager Operation                          4-5


7) Click  on the Window tab of the notebook object and select the  Display
  existing window button.
8) Click on the General tab of the notebook object and enter the Title field
  with the name you wish to be displayed in the Task/Window List.  You
  may wish at this point to edit the icon.
9) Double  click on the top left hand box of the window to close  the  new
  object down to its icon.
10)Double clicking on the icon will now run Terminal Manager.

The  default drive and directory for the shell program are as defined  in  the
Working Directory field described above.  The other environment  variables
such  as  PATH and DPATH are as set in SET PATH= and SET  DPATH=  state-
ments in CONFIG.SYS.

4.1.3  Starting Terminal Manager Automatically

In  normal usage, Terminal Manager would be started shortly  after  having
initially  loaded  the  computer and would remain  active  until  close-down,
normally  at  the  end  of the day.  In this situation,  it  is  probably  best  to
configure OS/2 to automatically start Terminal Manager at initial load  time
with no operator intervention required.

This configuration involves the use of the OS/2 start-up batch file START-
UP.CMD  located in the root directory of the boot drive.  When OS/2  first
loads,  it  looks  for the STARTUP.CMD file and,  if  found,  executes  the
statements contained in the file.

The  standard  OS/2  environment commands may be used  to  initialise  the
Terminal  Manager environment.  All the statements listed below, with  the
exception  of  the START statement are optional, but represent  a  typical  se-
quence for automatically starting Terminal Manager.

  SETLOCAL
  D:
  CD \TRMDIR
  PATH=%PATH%;D:\TRMAPPS;
  DPATH=%DPATH%;D:\TRMDATA;
  SET ORGNAME=SOFTCORP
  START "Terminal Manager" /C C:\TRMMAN\TM.EXE
  ENDLOCAL

The  SETLOCAL and ENDLOCAL commands allow you to temporarily change  the
current  drive, directory and environment strings so that terminal  programs
inherit the changed settings.  After the ENDLOCAL statement, the original set-

4-6                          Terminal Manager Operation


tings  are  restored for the remainder of  the  STARTUP.CMD  commands;
this  ensures that the changes made for Terminal Manager do  not  interfere
with any other command sequences in the batch file.

The D: statement and CD \TRMDIR statement cause terminal programs to  start
with a current directory of D:\TRMDIR.

In  the example above, the terminal programs might all be contained  in  the
directory D:\TRMAPPS.   The PATH=%PATH%;D:\TRMAPPS; statement  appends
this  directory name to the program search path previously  set.   Similarly,
for  any  program which uses the DPATH facility to locate  data  files,  the
DPATH=%DPATH%;D:\TRMDATA; statement appends the directory  D:\TRMDATA
to  the data search path.  It is not always desirable to append to the  existing
paths, and if necessary, completely new PATH and DPATH strings may be
set.

The  SET ORGNAME=SOFTCORP statement demonstrates the setting of  a  variable
into  the  program environment strings for any application which  looks  for
named strings in the environment area.

Finally,  the  START  statement  invokes Terminal Manager  in  its  own  full
screen  session  before passing on to the ENDLOCAL statement  which  restores
the original environment settings.

-------------------------------------------
4.2  Monitoring And Controlling Terminals

Shortly  after  loading, Terminal Manager displays the  TermView  control
screen.

TermView  provides two screen panels, one for displaying terminal  status,
the other for displaying activity log records.

An  action  bar is provided with each of the panels for  performing  control
functions.

4.2.1  Monitoring Terminal Status

The  first  panel  displayed after Terminal Manager  loads  is  the  Terminal
Status screen.

Details of each terminal defined in the TRMMAN.INI file are displayed  on
a  single screen line.  One of the terminals displayed will be  highlighted  to
indicate  that it is the current terminal for any operations selected  from  the

Terminal Manager Operation                          4-7


action bar pull-down menus. The current terminal may be changed by using
the cursor up, cursor down, home, end, page up and page down keys.   The
scroll  indicators  in  the top right corner of the panel  show  whether  more
data precedes or follows that displayed in the panel.

The following information is provided for each terminal :-

  Term    specifies  the  logical  terminal  number  assigned  to   the
          terminal by the TERMNO= statement in TRMMAN.INI.
  Port    specifies  the logical port number to which the terminal  is
          connected  and  relates  to  the  PORTNO=  statement  in  the
          [PORT] and [TERMINAL] sections of TRMMAN.INI.
  Location  is  the  text string specified in the LOCATION=  statement  in
          TRMMAN.INI  and  normally describes  the  location  or
          some other description of the terminal.
  Fgd    specifies  which session is currently in the  foreground  on
          the terminal, session 0 being the first session.
  Act    specifies the number of active sessions on the terminal.
  Max    specifies the maximum number of sessions configured  for
          the terminal.
  Status   specifies the current status of the terminal and may be one
          of the following :-

          Inactive  indicates  that  the  terminal  is  inactive  and
                 will be ignored by Terminal Manager should
                 it come online.
          Failed   indicates  that  the terminal is in  an  inactive
                 state because errors occurred while  attempt-
                 ing to run the shell program for the terminal.
          Offline  indicates  that  the  terminal is  active  but  is
                 currently    offline,   either   because   it    is
                 switched  off  or because no  connection  has
                 been made to a modem attached to the port.
          Bidding  indicates  that  the terminal is  online  and  is
                 bidding  for  access to the computer.   If  the
                 number  of users currently connected  to  the
                 computer  is less than the  number  licensed,
                 the bid will be immediately accepted and the
                 shell  program will be run.  If the  maximum
                 number   of  users  is  currently  active,   the
                 terminal  will  remain  in  the  bidding   state
                 until  one of the users disconnects  from  the
                 computer.


4-8                          Terminal Manager Operation


          Online   indicates that the terminal is currently online
                 and   running  either  the  shell  program   or
                 application programs.
          Logged On  is a status that may be set by some shell pro-
                 grams  which implement  user  identification
                 and   password   checking   before   allowing
                 access.    Once  the  user  has   satisfied   the
                 access  requirements, the shell program  puts
                 the terminal into the logged on state.

       When  a terminal is activated, the status will normally  change
       from inactive to offline to bidding to online, although the bid-
       ding state is usually too short to be noticeable.  Some commu-
       nication  adapters are unable to detect a powered-down  termi-
       nal   or  an  unconnected  cable  as  being  offline.    Terminal
       Manager consequently considers the terminal to be online  and
       attempts to initialise it.  This also occurs if the communication
       cable  is  not configured as described in appendix C, or  if  the
       FORCEDSR=YES  and  FORCEDCD=YES  statements  are  specified   in
       TRMMAN.INI.  Terminal  Manager attempts to  initialise  the
       terminal six times before it considers that the initialisation  has
       failed.  At this point, the terminal is put into an offline  condi-
       tion  and  Terminal Manager ignores the terminal  until  it  re-
       ceives  data  from  it, at which point it  will  again  attempt  to
       initialise it.  If for some reason a terminal appears not to  have
       initialised, pressing any key on the keyboard will send data  to
       Terminal Manager causing it to perform the initialisation.

4.2.2  Displaying Log Records

All significant events detected by Terminal Manager generate a log record.

TermView  uses  some  of the log records to maintain  the  Terminal  Status
screen panel.  Other records are generated purely for information  purposes
or as a result of some error situation occurring.

As  the log records are received by TermView, they are written to  the  file
TERMVIEW.LOG  in the TRMMAN directory.  The Log Records  screen
panel allows the users to view the log records from the  TERMVIEW.LOG
file.

From  the Terminal Status panel, the Log Records panel may be selected  to
show  either all log records or just the log records relating to  the  currently
selected terminal.

Terminal Manager Operation                          4-9


When  the  Log Records panel is selected, the most recent  log  records  are
displayed.   The  cursor  up, cursor down, home, end,  page  up  and  page
down  keys  may  be used to peruse the historical log  records.   The  scroll
indicators  in  the  top  right corner of the  panel  show  whether  more  log
records precede or follow those displayed in the panel.

If  the  panel is currently displaying the most recent log record,  any  newly
arriving records are displayed, scrolling previous records off the screen.

Each  log record occupies a line in the panel and starts with the time  stamp
allocated  to the log record when the event occurred.  If the event relates  to
a  specific terminal, the logical terminal number is displayed  following  the
time  stamp.   If the event relates to a particular session on  a  terminal,  the
session  number  is appended to the logical terminal number.   Text  descri-
bing  the  log  record and any other relevant  information  follows  the  time
stamp and terminal/session number.

TERMVIEW.LOG is cleared periodically and log records displayed on  the
screen  are  erased and replaced by newly-arriving  messages.   See  section
5.1 for a discussion on the MAXLOGSIZE statement in the TRMMAN.INI
file.


4.2.3  TermView Commands

Both  the  Terminal Status screen panel and the Log Records  panel  provide
an action bar for issuing commands to TermView.

The  F10 key takes the operator onto the action bar and highlights  the  first
of  the  action  bar  choices.  The cursor left  and  cursor  right  keys  move
between  action  bar choices. The cursor down key or the ENTER  may  be
pressed  to display the pull-down menu for the currently  highlighted  action
bar choice.  To move from the action bar back to the panel area, the F10 or
the ESC key may be pressed.

As  an alternative to using the cursor keys to select an action bar  item,  the
letter  highlighted  in  the  action bar may be pressed after  the  F10  key  to
immediately pull down the selected action bar menu.

When  a pull-down menu is displayed, the cursor up and cursor down  keys
may  be  used  to move between menu choices.  Pressing  the  ENTER  key
selects the currently highlighted option from the pull-down menu.



4-10                          Terminal Manager Operation


As  an  alternative to using the cursor keys and the ENTER key,  an  option
may be selected from a pull-down menu by entering the letter highlighted in
the menu item.

Pressing  the  F10 or the ESC key while the pull-down  menu  is  displayed
moves back onto the action bar choices.  Pressing the cursor right or cursor
left  keys while the pull-down menu is displayed displays the adjacent  pull-
down menu.

4.2.3.1  The Terminal Status Panel - 'Action' Pull-Down
                                       Menu

The Actions pull-down menu in the Terminal Status panel offers three menu
choices :-

  A_ctivate the terminal
        Activates the currently selected terminal allowing  Termi-
          nal  Manager  to  load  the  shell  program  whenever  the
          terminal is detected as being online.  The TACT  program
          may also be used from the command line of a terminal  or
          the host console to activate a terminal.

  D_eactivate the terminal
        Deactivates  the terminal.  Terminal Manager will  termi-
          nate  all  programs and sessions running  in  the  terminal.
          When  all  programs have terminated, the  RS232  signals
          DTR (Data Terminal Ready) and RTS (Request To  Send)
          are  turned off for one second in order to  disconnect  any
          modem attached to the port.  The terminal is then put into
          an  inactive  state and is effectively ignored  by  Terminal
          Manager until re-activated.  The TDEACT program  may
          also  be used from the command line of a terminal  or  the
          host console to deactivate a terminal.

  L_og the terminal off
        Terminal  Manager  will terminate all programs  and  ses-
          sions  running  in the terminal.  When all  programs  have
          terminated,   the  RS232  signals  DTR   (Data   Terminal
          Ready) and RTS (Request To Send) are turned off for one
          second  in order to disconnect any modem attached to  the
          port.  When Terminal Manager detects that the terminal is
          online  again, the shell program will be run in  the  termi-
          nal.   This  action has the effect of logging a user  off  the
          system and forcing a new logon.

Terminal Manager Operation                          4-11


4.2.3.2  The Terminal Status Panel - 'Display' Pull-Down
                                       Menu

The  Display pull-down menu in the Terminal Status panel offers two  menu
choices :-

  Display All L_og Records

        Switches  to  the Log Records panel and  displays  the  log
          records  for all terminals and all  non-terminal-related  log
          records.

  Display T_erminal Log Records

        Switches  to the Log Records panel and displays  only  the
          log records for the currently selected terminal.

4.2.3.3  The Terminal Status Panel - 'Exit' Pull-Down Menu

The  Exit  pull-down  menu in the Terminal Status  panel  offers  two  menu
choices :-

  Ex_it the program

        Causes Terminal Manager to terminate and return  control
          to the point in OS/2 from where it was started;  this might
          be the command prompt or a Presentation Manager  menu
          window.   Terminal  Manager  will not  perform  the  exit
          command unless all terminals are currently in the inactive
          state.

  D_eactivate All Terminals

        This  option deactivates all terminals as though  individual
          Deactivate  commands had been issued for each  terminal.
          The  command  is intended for use as a means  of  closing
          down  the system prior to exiting.  The  command  should
          be  used with caution since it will terminate  all  programs
          running  in  all  terminals.  The  TDEACT  program  may
          also  be used from the command line of a terminal  or  the
          host console to deactivate all terminals.




4-12                          Terminal Manager Operation


4.2.3.4  The Log Records Panel - 'Action' Pull-Down Menu

The  Actions  pull-down  menu in the Log Records panel  offers  one  menu
choice :-

  C_lear Log Records

        Allows  the operator to clear the TERMVIEW.LOG  file;
          after  the  command, all historical log records  have  been
          deleted.   The  TERMVIEW.LOG  file  is  newly  created
          every  time  Terminal  Manager  is  started.   If   terminal
          activity  creates a large number of log records, or  if  disk
          space  is  limited, it is advisable  to  periodically  perform
          this function to ensure that the disk does not become  full.
          Alternatively, you may use the MAXLOGSIZE  statement
          in the TRMMAN.INI file to specify the maximum size  of
          the file (see section 5.1).


4.2.3.5  The Log Records Panel - 'Display' Pull-Down Menu

The  Display  pull-down  menu in the Log Records panel  offers  one  menu
choice :-

  Display Terminal S_tatus

        This option switches back to the Terminal Status panel.

4.2.3.6  The Log Records Panel - 'Exit' Pull-Down Menu

The  Exit pull-down menu in the Log Records panel is identical to  the  Exit
pull-down in the Terminal Status panel described in section 4.2.3.3.


-------------------------------------------
4.3  Closing Down Terminal Manager

Before exiting from Terminal Manager, you should ensure that all terminals
have  exited  from any application programs and are back in the  shell  pro-
gram.

If  the  shell  program  you  are using reports  the  logged-on  status  in  the
TermView  Terminal Status screen panel, you can be sure that it is  safe  to
deactivate a terminal when any other status is displayed.

Terminal Manager Operation                          4-13


The SVIEW program may be used to peek at terminal screens to ensure that
no  activity is taking place before closing the system  down.   Alternatively,
the  TCONTROL  program  may  be used to take  control  of  the  session's
keyboard and close all programs running in it.

Terminal  Manager  will not allow the operator to exit unless  all  terminals
have been deactivated and are in the inactive state.  Terminals can be  deac-
tivated  individually  using  the  Actions pull-down  menu  of  the  Terminal
Status panel.  Alternatively, the Exit pull-down menu of the Terminal Status
and  Log  Records  panels  allows a deactivate command  to  be  sent  to  all
terminals.

Once  all terminals are in the inactive state, the Exit the program  option  of
the Exit pull-down will terminate Terminal Manager operation.

When any of the deactivate commands are issued, Terminal Manager  sends
a signal to each program running at the terminal telling it to terminate.   On
receiving  the termination signal, programs correctly written in  accordance
with  the  OS/2 design rules will perform tidy-up functions such  as  closing
files,  flushing buffers etc, before terminating, thus preserving the  integrity
of  files  and  databases used by the  application  system.   In  programming
terms, the DosExitList and DosSetSigHandler operating system API  (appli-
cation  programming interface) calls may be used to achieve a graceful  exit
from an application program.

Any program not correctly designed may cause problems when a deactivate
command  is issued.  The problems may range from  incompletely  updated
data  through  to ignoring the signal to terminate.  Such programs  must  be
considered  rogue  programs  which  are  potentially  problematic   whether
running under Terminal Manager or under OS/2 directly.


-------------------------------------------
4.4  Terminal Start-Up

If a terminal is powered up and connected to the computer, and in an active
state  in  the  TermView Terminal Status screen  panel,  Terminal  Manager
will  attempt  to initialise the terminal hardware and run the  shell  program
specified for that terminal.

An  additional  security feature, the ACTIVATE=NO statement,  is  available  in
TRMMAN.INI and specifies that a terminal is to be set as initially  inactive
whenever Terminal Manager is started.  This allows terminals to be  select-
ively activated by the operator once Terminal Manager is running.

4-14                          Terminal Manager Operation


The shell program may be set individually for each terminal or may  default
to  a  system-wide  shell program.  The SHELL= statement  in  the  [SYSTEM]
section  of TRMMAN.INI specifies the default system-wide shell  program;
if   the   [SYSTEM]   section   does  not  specify   a   SHELL=   statement,   the
TRMSHELL.EXE  program in the TRMMAN directory is assumed as  the
default  system-wide shell.  If a [TERMINAL] section does not contain its  own
SHELL= statement, the default system-wide shell is loaded instead.

When  the shell program exits, Terminal Manager drops the RS232  signals
RTS (Request To Send) and DTR (Data Terminal Ready) for one second  in
order  to  put the terminal offline and break any  modem  connection.   This
has the same effect as the Log the terminal off option of the Terminal Status
panel Actions pull-down menu.

The  default shell program TRMSHELL.EXE searches for a terminal  start-
up  file in the TRMMAN directory.  The start-up file is an OS/2  batch  file
with the following name format :-

  STARTnnn.CMD

where  nnn is the logical terminal number, with leading zeros,  assigned  by
the TERMNO= statement in the [TERMINAL] section of TRMMAN.INI.

If  the  start-up  file is found, TRMSHELL executes the  commands  in  the
batch  file.   When the batch file terminates TRMSHELL exits  causing  the
terminal to be logged off and put temporarily offline.

If  the  start-up  file is not found, TRMSHELL  loads  the  OS/2  command
processor  CMD.EXE.   If  the EXIT command is later  typed  at  the  OS/2
command  prompt, CMD.EXE and TRMSHELL.EXE will terminate  caus-
ing the terminal to be logged off and put temporarily offline.


-------------------------------------------
4.5  Starting New Terminal Sessions

Each terminal running under Terminal Manager is able to use multiple ses-
sions  in  much  the  same  way as multiple  sessions  may  be  used  on  the
computer itself.

The  maximum number of sessions allocated to each terminal is  defined  by
the MAXSESSIONS= statement in the TRMMAN.INI file and may be set from 1
to 8.  If MAXSESSIONS= is not specified, a default of 2 sessions is assumed.


Terminal Manager Operation                          4-15


Within  Terminal  Manager,  there is a fixed number  of  sessions  available
which is shared across all terminals.  With very high numbers of  terminals,
it  may not be possible to have the maximum of 8 sessions per terminal.   If
the maximum number of sessions is exceeded, an appropriate error message
is displayed when Terminal Manager is loaded.

The  first  session for each terminal, session 0, is  started  automatically  by
Terminal  Manager  when the terminal comes online;   session  0  normally
runs the shell program for the terminal.

Further sessions may be started either by the API (application programming
interface)  call  TrmStartSession or by using the TSTART command  at  the
OS/2  command  prompt on the terminal.  TrmStartSession is  described  in
the documentation for the Terminal Manager - Programmer's Toolkit.

The  ALT+ESC key combination on the left of the terminal keyboard  ad-
vances from one session to the next.  The CTRL+ESC key combination on
the left of the terminal keyboard always selects session 0, normally the shell
program.   When  using the ALT+ESC or  CTRL+ESC  combination,  the
ALT  or CTRL key must be held down while the ESC key is pressed.   The
session switch occurs when the ESC key is released.  The key sequence  for
switching between session is :-

  1) press the left ALT (or left CTRL) key
  2) press the ESC key
  3) release the ESC key
  4) release the left ALT (or left CTRL) key

Section  6.3  describes  alternative  keys  which  may  be  used  for  session
switching when an OS/2 or Windows PC running the TERM.EXE program
is used as the terminal.

When  a  session terminates, session 0 is brought to the foreground  if  it  is
still  active,  otherwise  the  next highest  session  becomes  the  foreground
session.   When  the last session terminates, the terminal is put  offline,  ef-
fectively logging off the terminal.

The  TSTART.EXE  command  is  similar to  the  standard  OS/2  START
command and has the following alternative syntaxes :-

  TSTART  ["session"]  [/K | /C | /N]  [drive:][path]command[.ext]
                                     [options]

  TSTART  ["session"]  [/K | /C]  "[drive:][path]command[.ext]  [options]"

4-16                          Terminal Manager Operation


where  the  elements  within  '[...]'  are optional.   Only  one  of  the  three
switches  /K  /C  /N  may be specified in a  command;   if  no  switches  are
specified, the /K switch is assumed.

  "session"  is  the  session title that is displayed on the  status  line  of
          some  types of terminal.  It may be up to 31 characters  in
          length.  If "session" is omitted, the name of the first pro-
          gram to run in the session is displayed.

  /K     is  the Keep switch and specifies that the  OS/2  command
          interpreter  CMD.EXE  be  used  to  run  the   command.
          After the command has been run, CMD.EXE will display
          its  command  prompt and the session will be  kept  active
          until the Exit command is entered.

  /C     is   the  Command  switch  and  specifies  that   the   OS/2
          command   interpreter  CMD.EXE  be  used  to  run   the
          command.  After the command has been run,  CMD.EXE
          will exit thus terminating the session.

  /N     is  the Named switch and specifies that the  named  com-
          mand is run directly without involving the OS/2 command
          interpreter CMD.EXE.  The named command must be  an
          executable  program  i.e.  it  cannot be a  batch  file  or  a
          command  that is an internal CMD.EXE  command.   The
          command name and options must not be enclosed in  double
          quotes.   If  the Named switch is not specified,  all  com-
          mands are run via CMD.EXE.
  drive
  path
  command
  .ext    specifies  the command to be run.  The command  and  op-
          tions strings will be passed to CMD.EXE for execution if
          the  Keep or Command switch was  specified.   Otherwise
          TSTART  attempts  to run command as an  executable  pro-
          gram passing the options string as its input parameters.  If
          command is not given, CMD.EXE is run.

  options  specifies  the  parameter  string  that  would  normally  be
          typed after the program name.

If  redirectional or other special symbols are to be included in  the  command
and  option  fields,  the two fields must be enclosed within a  set  of  double
quote characters, as in the second form of the command above.

Terminal Manager Operation                          4-17


The following examples demonstrate the use of the TSTART command.

  TSTART

starts  a new session running the CMD.EXE program with a  session  name
of CMD.EXE.  The session will terminate when EXIT is typed.

  TSTART "Sales Ledger" /N C:\ACCOUNTS\SALES.EXE

starts  a  session  named Sales Ledger running  the  program  SALES.EXE.
The   program   is   run  directly  without   involving   CMD.EXE.    When
SALES.EXE exits, the session terminates.

  TSTART /C "DIR C:>DIRLIST.LST"

starts a session running the CMD.EXE program.  CMD.EXE performs  the
DIR  command redirecting the output to the file DIRLIST.LST.  When  the
DIR command is completed, CMD.EXE exits, terminating the session.

The    TSTART    program   may   be   used   in   conjunction    with    the
STARTnnn.CMD  files, described in section 4.4, to automatically  start  all
the required sessions for each terminal.  The following example starts  three
sessions.

  SETLOCAL
  D:
  CD \WP
  TSTART "Word Processing" /N WP.EXE
  ENDLOCAL
  SETLOCAL
  E:
  CD \SALES
  TSTART "Sales Ledger" /N SALES.EXE
  ENDLOCAL
  F:
  CD \STOCK
  STOCK

The  important  point  to  note about the above sequence  is  that  the  initial
session,  in  which  the batch file is running, first starts  the  other  sessions
b_e_f_o_r_e_ it loads the program designated to be run in that session.




4-18                          Terminal Manager Operation


-------------------------------------------
4.6  Utility Programs

This section discusses the utility programs provided with Terminal Manager
for use on terminals.  The programs are all loaded onto the computer's hard
disk by the installation process.

Unless  noted,  the  programs  are  not designed  to  be  run  from  the  host
computer's keyboard and will display an error message if so.

4.6.1  The CHECKSUM Program

CHECKSUM.EXE is a utility program which you may be requested to  use
by your supplier for software support purposes.

The  program  scans a file and produces a checksum figure based  on  every
byte  in  the file.  Optionally, it will also change the size of a  file  although
this  option  should  be used with extreme care and  only  under  instruction
from your software supplier.

The CHECKSUM.EXE command syntax is as follows :-

  CHECKSUM filename [checksum] [file length]

where the elements within '[...]' are optional.

  filename  specifies  the name of the file to be checksummed.   If  no
          drive or path name is specified, it is assumed to be in  the
          current directory on the default drive.

  checksum  is  an optional parameter specifying the 4-digit  checksum
          to  be  compared  with  the  checksum  computed  by   the
          program;  the program will inform the operator if there is
          any discrepancy. If omitted, the program merely  displays
          the computed checksum of the specified file.

  file lengthis  an  optional  parameter which  specifies  the  length  to
          which  the  file must be set; normally this  length  will  be
          shorter than the original file length. This option is  provi-
          ded  for telephone support purposes where new files  may
          have been downloaded onto your system using a  commu-
          nications  program unable to maintain the  originating  file
          length.   For  this  parameter to be  effective,  the  correct
          checksum field must have been specified for the requested

Terminal Manager Operation                          4-19


          new  file size.  Extreme caution must be exercised  when
          using this option.

The  CHECKSUM program will generally be used to verify  which  version
of a program or other file is in use with your version of Terminal Manager.
The  program  may also be used when new files are downloaded  onto  your
system  over  a communications link to ensure that the files  were  correctly
received.

CHECKSUM  will run under either DOS or OS/2 on a terminal or the  host
console and is designed for incorporation into a batch file (.BAT or .CMD)
if  required.   If any errors are detected by CHECKSUM, such  as  a  mis-
match  between the computed and the specified checksum, an error code  is
returned by the program which can be tested in the batch file e.g.

  CHECKSUM C:\TRMMAN\TM.EXE 9A6B
  IF ERRORLEVEL 1 PAUSE

4.6.2  The DOWNLOAD Program

The  DOWNLOAD  program  may  be used from a  DOS  PC  running  the
TERM.EXE  program.  It provides for file transfer from the host  Terminal
Manager computer.

The program is described in section 6.5.

4.6.3  The INFO Program

The INFO program may be used at a terminal to display information  about
the Terminal Manager environment.

The programs displays the following information :-

  '` the version number of the Terminal Manager software
  '` the logical terminal number
  '` the logical port number to which the terminal is connected
  '` the terminal type
  '` the current session number
  '` maximum number of sessions configured for the terminal
  '` number of terminals configured
  '` maximum number of sessions configured system-wide




4-20                          Terminal Manager Operation


4.6.4  The PMSSET Program

The  PMSSET program is used to set the Printer Management System  PMS
Environment  settings for a session.  The program may be run at a  terminal
or at the host computer.

The program is described in section 7.4.

4.6.5  The RUNDOS Program

The  RUNDOS  program is used at a terminal to invoke  a  DOS  program.
RUNDOS is available only if the optional Multi-User DOS facility has been
installed.

The  program  is  described  in the  separate  manual  Terminal  Manager  -
Multi-User DOS - Reference Manual.

4.6.6  The SETWY325 Program

The  SETWY325  program is used to set the colour  palette,  border  colour
and colour map for the Wyse WY-325 colour terminal.

The program is described in appendix A.6.1

4.6.7  The SVIEW Program

The SVIEW program allows the operator at a terminal, or at a host session,
to  view the screen activity taking place at one of the terminals  attached  to
the system.  Any changes that take place on the viewed terminal are  imme-
diately reflected by the SVIEW program.

The SVIEW command syntax is as follows :-

  SVIEW <terminal> [ <session> ]

where the element within '[...]' is optional.  <terminal> is the logical termi-
nal  number  of  the terminal whose screen is to be  viewed.   The  optional
<session>  specifies  which of the terminal's sessions is to  be  displayed;  if
<session> is omitted, the current foreground session is displayed.

The  session's  screen  is displayed and a help list of function  keys  is  dis-
played  at the bottom of the screen.  The F5 key hides the function  key  list
allowing the operator to view the content of the terminal's screen complete-
ly;  the function key list is redisplayed when the next key is pressed.

Terminal Manager Operation                          4-21


The F7 key displays the previous session while the F8 key displays the next
session  in  sequence.   Unstarted or terminated  sessions  are  displayed  as
blank screens.

The F3 key exits the program.

The  SVIEW program is useful for monitoring activity at the terminal  prior
to deactivating the terminals and closing down Terminal Manager.


4.6.8  The TACT Program

The  TACT program may be used from the command line of a  terminal  or
the  host  console to activate a terminal or all terminals attached to  the  sys-
tem.

The TACT command syntax is as follows :-

  TACT <terminal>

where  <terminal> is the logical terminal number of the terminal to be  acti-
vated.  If it wished to activate all terminals, <terminal> may be specified  as
ALL.

The following are examples of the use of the TACT command :-

  TACT 10
  TACT ALL

The  TACT and TDEACT programs are provided for  remote  management
of  terminals,  particularly those attached to dial-in lines.   In  addition,  the
programs may be used prior to running file backup routines which may  fail
if  terminal  programs have locked files which need to  be  backed-up.   Be-
cause  of  the capability of the two programs to affect other  terminals  atta-
ched to the system, their use should be restricted.


4.6.9  The TCONTROL Program

The  TCONTROL  program allows the operator at a terminal, or at  a  host
session, to view the screen activity taking place at one of the terminals atta-
ched to the system and to send keystrokes to the terminal as though  entered
at the keyboard of the terminal.  Any changes that take place on the  termi-
nal being controlled are immediately reflected on the TCONTROL screen.

4-22                          Terminal Manager Operation


The TCONTROL command syntax is as follows :-

  TCONTROL <terminal>

where  <terminal> is the logical terminal number of the terminal to  be  con-
trolled.

The  controlling  terminal displays the currently active session  of  the  con-
trolled  terminal.   The  controlling operator may simply  view  the  activity
taking  place or may interact with the program running at the terminal;   the
operator at the controlled terminal may also interact with the program in the
normal way.

All keystrokes entered at the controlling terminal are passed to the program
at   the  controlled  terminal  until  the  CTRL-BREAK  key  is  hit  in   the
TCONTROL program.  This key displays a menu line.

Once  in  the menu line, the ESC key may be pressed to exit the  menu  and
continue controlling the terminal.

The  F3  key  exits the TCONTROL program but does not  affect  the  con-
trolled terminal.

The  F7 key sends a hot-key sequence to the controlled terminal  as  though
CTRL-ESC were pressed at the terminal's keyboard to switch to the  lowest
active  session;  the menu line is then erased and control of the  terminal  is
resumed.

The  F8 key sends a hot-key sequence to the controlled terminal  as  though
ALT-ESC  were pressed at the terminal's keyboard to cause a switch to  the
next  session;   the  menu line is then erased and control of  the  terminal  is
resumed.

The F9 key sends a keystroke sequence to the controlled terminal as though
CTRL-BREAK  were pressed at the terminal's keyboard;  the menu  line  is
then erased and control of the terminal is resumed.

The TCONTROL program is useful for supporting remote users by  talking
them through a program's screens and taking over the keyboard  interaction
where necessary.  It may also be used to gracefully exit from a program left
running  prior  to  deactivating  the  terminal  and  closing  down  Terminal
Manager.



Terminal Manager Operation                          4-23


4.6.10  The TDEACT Program

The  TDEACT program may be used from the command line of a  terminal
or  the host console to deactivate a terminal or all terminals attached  to  the
system.

The TDEACT command syntax is as follows :-

  TDEACT <terminal>

where <terminal> is the logical terminal number of the terminal to be  deac-
tivated.  If it wished to deactivate all terminals, <terminal> may be specified
as ALL.

The following are examples of the use of the TDEACT command :-

  TDEACT 10
  TDEACT ALL

The  TACT and TDEACT programs are provided for  remote  management
of  terminals,  particularly those attached to dial-in lines.   In  addition,  the
programs may be used prior to running file backup routines which may  fail
if  terminal  programs have locked files which need to  be  backed-up.   Be-
cause  of  the capability of the two programs to affect other  terminals  atta-
ched to the system, their use should be restricted.

4.6.11  The TRMATTR Program

The TRMATTR program displays a screen showing all combinations of the
screen attributes.

The  program is designed for use in checking out the colour settings  confi-
gured for the Wyse WY-325 colour terminal, the colour mapping  specified
for  the RUNDOS program and the attributes displayed by ASCII  terminals
defined by the TERMTYPE = ASCII statement in the TERMINAL section of the
TRMMAN.INI file.

The  program  displays  the  hexadecimal attribute  value  followed  by  two
characters representing the background colour and two characters represent-
ing the foreground colour;  the two sets of characters are displayed in  their
respective attributes.

The following abbreviations are used to describe the attribute :-


4-24                          Terminal Manager Operation


    Bk   black      Gy   light black (grey)
    Bl   blue      Lb   light blue
    Gn   green     Lg   light green
    Cy   cyan      Lc   light cyan
    Rd   red      Lr   light red
    Ma   magenta    Lm   light magenta
    Br   brown     Ln   light brown (yellow)
    Wh   white     Lw   light white

The  light attributes are generally displayed as blinking  foreground  charac-
ters in OS/2 and DOS full screen sessions on the host.

4.6.12  The TSTART Program

The  TSTART  program is used at a terminal to start additional  sessions  at
that terminal.

The program is described in section 4.6.

4.6.13  The UPLOAD Program

The   UPLOAD  program  may  be  used  from  a  DOS  PC   running   the
TERM.EXE  program.   It  provides for file transfer to  the  host  Terminal
Manager computer.

The program is described in section 6.5.



















Terminal Manager Operation                          4-25















































4-26                          Terminal Manager Operation


-------------------------------------------

Chapter 5

The TRMMAN.INI File

-------------------------------------------

The  initialisation file TRMMAN.INI provides Terminal Manager with  the
information  it  requires  to  initialise itself  for  your  chosen  terminal  and
hardware configurations.

TRMMAN.INI  must  be  located  in the  directory  reserved  for  Terminal
Manager i.e. its full path name must be \TRMMAN\TRMMAN.INI on the
boot drive.  The file is read by both the device driver TRMMAN.SYS  and
by the main Terminal Manager program TM.EXE.

The  file is an ASCII format text file and may be inspected or  modified  by
using  the  OS/2  system  editor E.EXE or any  other  text  editor  or  word
processor able to handle ASCII text files.

TRMMAN.INI  is  structured  in  the standard format of  .INI  files.   It  is
divided  into a number of sections each starting with a keyword enclosed  in
square  brackets  '[.....]'.  Within each section a number of  statements  are
specified,  each  starting  with a keyword followed  by  a  parameter  value.
The file may contain comment lines starting with the ';' character; anything
following  the  ';' character on any line of the file is treated  as  a  comment
and  is not used by Terminal Manager.    Blank lines are ignored  and  may
be inserted to aid readability.

The following section keywords are permissible :-

  [SYSTEM]  identifies certain system-wide characteristics of the  envir-
          onment  in which Terminal Manager is running  and  con-
          tains   information  used  by  both   TRMMAN.SYS   and
          TM.EXE.

  [PORT]   identifies  the characteristics of the  physical  communica-
          tion  adapters to be used for Terminal Manager  and  con-
          tains  information  read by  TRMMAN.SYS  at  computer
          boot  time.  PORT sections are not used by the  TM.EXE
          program.



The TRMMAN.INI File                              5-1


  [TERMINAL] identifies  the  characteristics of the terminals  attached  to
          each  of the ports described in the PORT sections. It  con-
          tains information read by TM.EXE when Terminal Man-
          ager is started.  TERMINAL sections are not used by  the
          TRMMAN.SYS program.

A  typical  TRMMAN.INI file usually has one SYSTEM  section,  multiple
PORT sections and multiple TERMINAL sections.

-------------------------------------------
5.1  The SYSTEM Section

The  SYSTEM section identifies certain system-wide characteristics  of  the
environment  in which Terminal Manager is running and contains  informa-
tion  used by both TRMMAN.SYS and TM.EXE.  If the SYSTEM  section
is  omitted,  default values are assumed.  If the SYSTEM  section  is  speci-
fied,  it  must the be first section in the file. Only one  SYSTEM  section  is
permitted in the TRMMAN.INI file.

I_M_P_O_R_T_A_N_T___N_O_T_E_:_   If  changes  are  made  to  any  statement  in  the
SYSTEM  section  which  is  used by  TRMMAN.SYS,  the  change  will  not
become effective until the next time the computer is booted.

The  format  of  the SYSTEM section is described  below.   The  keywords
representing  each  statement  in  the section may be  given  in  any  desired
order.

  [SYSTEM]

  BUS=      specifies  the  type  of bus  architecture  used  by  the
            computer
  SHELL=     specifies  the  default shell program  activated  when-
            ever a terminal comes online
  KEYBOARDCP=  specifies  the default code page file used  for  transla-
            ting keystrokes to internal character values
  TERMPAKPORTNO= specifies  the  adapter  port  to  which  the   TermPak
            module is connected
  MAXLOGSIZE=  specifies  the  maximum size to  which  the  TERM-
            VIEW.LOG file will be allowed to grow
  PMS=      specifies  whether the Printer Management System  is
            to be started
  DELAYONLOAD=  specifies  a time delay executed during the loading  of
            Terminal Manager


5-2                              The TRMMAN.INI File


  DOSCPULIMIT=  specifies  the  threshold at which  Terminal  Manager
            will  prevent further DOS programs from being  star-
            ted

The following sections describe each of the above keywords in detail.

The BUS Statement in the SYSTEM Section

The BUS statement is read by TRMMAN.SYS at computer boot time.  It is
used  to specify the type of bus architecture used by the computer on  which
the Terminal Manager software is installed.

I_M_P_O_R_T_A_N_T___N_O_T_E_:_   Any change made to the BUS statement  does  not
become effective until the computer is rebooted.

The following keyword parameters may follow the BUS keyword :-

  AT     specifies  that the bus architecture is based on that  of  the
          IBM  PC/AT  and compatibles.  This  bus  architecture  is
          sometimes referred to as ISA (Industry Standard Architec-
          ture).
  MCA    specifies  that  the computer is using  the  Micro  Channel
          Architecture  bus  found  in the IBM PS/2  range  and  its
          compatibles.

The following is an example of the use of the BUS statement :-

  BUS = AT

The  purpose of the BUS statement is to allow TRMMAN.SYS to  optimise
the  time  taken to service each interrupt received from  the  communication
adapters.   MCA systems allow interrupts to be serviced more quickly  than
AT bus systems.

If  the  BUS  statement is omitted, Terminal Manager will  select  a  default
based on the machine identification held in the ROM BIOS of the computer.
The machine identification is used by TRMMAN.SYS to compare against a
list of known MCA computers; if a match is found, the statement BUS=MCA is
assumed, otherwise BUS=AT is assumed.

The list of MCA computers held internally by TRMMAN.SYS may become
out of date as more MCA models are introduced by various  manufacturers.
If  you  are sure that your computer is an MCA model, you  should  specify
the BUS=MCA statement.  If you are in any doubt about which bus architecture

The TRMMAN.INI File                              5-3


your  computer  is  using,  you  should  omit  the  BUS  statement  and   let
TRMMAN.SYS choose a default.

Once  TRMMAN.SYS has read the TRMMAN.INI file it is only then  able
to  test  the  hardware to determine whether the bus  type  specified,  or  as-
sumed  by  TRMMAN.SYS,  is correct.  At this point, a  message  will  be
displayed if the actual bus type is found to be different.

The SHELL Statement in the SYSTEM Section

The shell program is the name given to the first program loaded whenever a
terminal comes online.  Normally, the shell program will prompt the opera-
tor for a user name and password.  Terminal Manager allows you to specify
a different shell program for each terminal if required.

The  SHELL  statement  in the SYSTEM section is used  by  the  TM.EXE
program.   It  specifies the full path name of the shell program that  will  be
run  for each terminal if the TERMINAL section does not name  a  specific
shell  program  for the terminal.  Each TERMINAL section may  include  a
SHELL  statement  that  specifies the shell program to  be  loaded  for  that
terminal.   If  the SHELL statement is omitted in the  TERMINAL  section,
the  default  program  specified by the SHELL statement  in  the  SYSTEM
section is loaded.

If no SHELL statement is specified in the SYSTEM section, the shell  pro-
gram name defaults to \TRMMAN\TRMSHELL.EXE on the boot drive.

The following is an example of the use of the SHELL statement :-

  SHELL = C:\OS2\CMD.EXE

The  name  of  the shell program, including the drive  and  path  specifiers,
must  not  exceed 40 characters in length.  The drive and full path  must  be
specified.

The KEYBOARDCP Statement in the SYSTEM Section

Terminal  Manager  is designed to handle terminals  having  PC-style  key-
boards.   These  keyboards generate special scan codes whenever  a  key  is
pressed or released.  In a similar manner to OS/2 itself, Terminal  Manager
must translate these scan codes into internal code values that will be  under-
stood by the application programs requesting keyboard input.  This  transla-
tion is performed by using a keyboard code page translation table located in
some file accessible to Terminal Manager.

5-4                              The TRMMAN.INI File


The KEYBOARDCP statement is used by the TM.EXE program and speci-
fies  the  full  path  name of a file containing  the  required  keyboard  code
pages.  Terminal Manager uses the same format of keyboard code page  file
as  the  base keyboard driver contained in OS/2.  The majority  of  terminal
keyboards  supported  by  Terminal Manager are able  to  use  the  standard
keyboard code pages in the KEYBOARD.DCP file shipped with OS/2.

The  default  keyboard  code  page  file  specified  by  the  KEYBOARDCP
statement may be overridden by the KBDTYPE statement of a TERMINAL
section.   Keyboard  code pages are discussed in more detail in  section  5.3
describing the KBDTYPE statement in the TERMINAL section.

If  no  KEYBOARDCP statement is specified, the keyboard code  page  file
name defaults to \OS2\KEYBOARD.DCP on the boot drive.

The following is an example of the use of the KEYBOARDCP statement :-

  KEYBOARDCP = C:\OS2\KEYBOARD.DCP

The  name  of  the  keyboard code page file, including  the  drive  and  path
specifiers, must not exceed 40 characters in length.  The drive and full path
must be specified.

The TERMPAKPORTNO Statement in the SYSTEM Section

The  TERMPAKPORTNO  statement is only used if a  TermPak  was  sup-
plied  as  part of your Terminal Manager package.  The  statement  informs
the  TM.EXE program of the port to which the TermPak hardware  module
is connected.

The  TermPak is used by Terminal Manager to control the number of  users
logged on to the computer at any one time.

The  parameter value after the TERMPAKPORTNO keyword specifies  the
logical  port number assigned to a port by one of the PORT sections  of  the
file.  The PORT section is described later in section 5.2.

The port to which the TermPak is connected may be reserved solely for  the
TermPak or may also have a terminal connected to it; the TermPak  module
does not affect the operation of the terminal in any way.

If  the  TermPak  shares  a port with a terminal, it  should  preferably  be  a
directly-connected  local  terminal  to  avoid  any  potential  problems  with
modem connections.

The TRMMAN.INI File                              5-5


The following is an example of the use of the TERMPAKPORTNO  state-
ment :-

  TERMPAKPORTNO = 1

The use of the TERMPAKPORTNO statement is optional.  If the  statement
is omitted, it is assumed that the TermPak is connected to the port specified
in the first TERMINAL section of the TRMMAN.INI file.

The MAXLOGSIZE Statement in the SYSTEM Section

The  MAXLOGSIZE statement allows you to specify the  maximum  length
to which the TERMVIEW.LOG file will grow.

TERMVIEW.LOG  is  used  by the TermView program  to  record  all  log
messages generated by the system.  Section 4.2.2 discusses the log records.

The   parameter  value  after  the  MAXLOGSIZE  keyword  specifies   the
maximum  file  size  in  kilobytes  (KB); a  kilobyte  is  1,024  bytes.   The
parameter may be in the range 1 to 65535.

Whenever     the    TermView    program    writes    a    record     to     the
TERMVIEW.LOG  file, it checks whether the maximum length of  the  file
will  be  exceeded, if so, it deletes all past records from the  file  and  starts
writing new records from the beginning of the file.

The following is an example of the use of the MAXLOGSIZE statement :-

  MAXLOGSIZE = 64

If the MAXLOGSIZE statement is omitted, a default value of 64 is assumed
i.e.  the  maximum  size  of the log file will be  65536  bytes.   The  default
value is generally acceptable unless there is likely to be a shortage of avail-
able  disk  space,  or,  unless you wish to record  log  records  over  a  long
period.

The PMS Statement in the SYSTEM Section

The PMS statement specifies whether the Printer Management System is  to
be  started. The following keyword parameters may follow the  PMS  key-
word.

  YES    specifies that the Printer Management system is to be star-
          ted

5-6                              The TRMMAN.INI File


  NO     specifies that the Printer Management System is not to  be
          started

The  PMS  should  only be started if you  require  to  use  terminal-attached
printers, otherwise, you should specify PMS = NO in order to allow more re-
sources  for  application  programs.   The  Printer  Management  System  is
described in detail in chapter 7.

The use of the PMS statement is optional, and if omitted, a default of PMS =
YES is assumed.

The DELAYONLOAD Statement in the SYSTEM Section

The  DELAYONLOAD  statement  allows a delay  period  to  be  specified
before Terminal Manager starts the loading of the terminal programs.

The  statement  is provided for use in certain system  configurations  where
abnormally  high  processor  and/or disk activity  may  cause  the  Terminal
Manager  load  to  fail.   When Terminal Manager  is  started,  it  initialises
multiple  threads  and processes in a pre-determined order.   Each  of  these
threads and processes reports back to Terminal Manager when it has  initia-
lised  itself so that the next process/thread can be started.  To avoid  system
lockout,  Terminal Manager requires that each thread/process  reports  back
within a fixed time period or else the Terminal Manager loading will termi-
nate.

If  Terminal  Manager  is  loaded at OS/2 boot  time  from  the  startup  file
STARTUP.CMD,    and    other   applications   are    also    started    from
STARTUP.CMD  which require large amounts of disk access or  processor
time,  the  process/thread started by Terminal Manager may not be  able  to
complete  its  initialisation in the time period required.  In  these  situations,
the  DELAYONLOAD  statement  may  be  used  to  delay  the  starting  of
Terminal  Manager's  threads  and processes until  other  applications  have
been loaded and disk and processor activity has decreased.

The   following   is  an  example  of  the  use   of   the   DELAYONLOAD
statement :-

  DELAYONLOAD = 30

The time period is expressed in seconds in the range 0 through 65535.

If  the DELAYONLOAD statement is omitted, no delay is  introduced  into
the loading process.

The TRMMAN.INI File                              5-7


The DOSCPULIMIT Statement in the SYSTEM Section

The  DOSCPULIMIT  statement specifies the threshold at  which  Terminal
Manager will prevent further DOS programs from being run.

Native OS/2 programs are written taking into account the fact that the  CPU
is  being  used to run other applications concurrently.   One  common  DOS
programming practice, outlawed in OS/2, is that of looping while  constant-
ly  testing  for an event to occur; this technique is known  as  polling.   The
OS/2  operating  system  provides mechanisms which  obviate  the  need  to
employ  polling.  An OS/2 program thus never actively waits for  an  event,
instead,  it is suspended until the event occurs, thus taking up no CPU  time
during the waiting period.

DOS programs on the other hand, are generally written to assume that  they
are  the only program running in the CPU and most employ polling  techni-
ques.   On  a single-tasking DOS machine, this does not present  a  problem
since  the  CPU has nothing else to do during the waiting time in  any  case.
However,  when  these programs are run in DOS sessions under  OS/2,  the
polling takes its toll and, on all but the fastest machines, CPU  performance
can appear sluggish when multiple DOS programs are being run.  This ap-
plies  to  DOS  programs  whether  running  on  terminals  under  Terminal
Manager or directly on the host machine under OS/2.

On a single-user OS/2 system, the operator is in complete control of  which
programs are being run and can decide not to run any more DOS  programs
if  responsiveness suffers.  On a multi-user system however, no one user  is
able  to  know which other DOS programs are running.  If too  many  users
decide  to  run DOS programs, performance can decrease  for  other  users,
even those running native OS/2 programs.

To  overcome  this  problem, each DOS program may be  assigned  a  CPU
index value indicating its level of CPU usage.  This value is set in a  special
Settings file associated with the DOS program.  The CPUINDEX  statement
in  the  Settings  file specifies the CPU index for  the  DOS  program.   The
Settings  file and the use of the CPUINDEX statement are discussed  in  the
separate manual Terminal Manager - Multi-User DOS - Reference Manual.

Terminal  Manager maintains a count of the total CPU index values  for  all
DOS programs running at any one time.  Whenever a new DOS program is
started,  Terminal Manager adds the program's CPU index to the  total  and
compares  the  new  total with the value  specified  in  the  DOSCPULIMIT
statement.   If  the  DOSCPULIMIT value is exceeded, a  message  is  dis-
played to the terminal operator and the running of the new DOS program is

5-8                              The TRMMAN.INI File


suspended  until  either  the  operator elects to  end  the  program,  or  until
another  DOS  program  exits and reduces the total CPU  index  to  a  value
which does not exceed the DOSCPULIMIT value.

The  parameter  value  after  the  DOSCPULIMIT  keyword  specifies   the
maximum  total CPU index value which must not be exceeded.   The  value
may be in the range 1 to 65535.

The following is an example of the use of the DOSCPULIMIT statement :-

  DOSCPULIMIT = 100

If  the  DOSCPULIMIT  statement is omitted, a default value  of  65535  is
assumed.

The  DOSCPULIMIT statement is only effective if the optional  Multi-User
DOS facility is installed.

-------------------------------------------
5.2  The PORT Sections

The  PORT sections identify the characteristics of the physical  communica-
tion adapters to be used for Terminal Manager and contain information read
by TRMMAN.SYS at computer boot time. The PORT sections allow  logi-
cal port numbers to be assigned to each physical port on the adapters.   The
PORT  sections  are  used by TRMMAN.SYS  for  allocating  memory  for
transmit  and receive buffers and for initialising associated  variables.   The
TRMMAN.INI  file  contains as many PORT sections as there  are  adapter
ports to which terminals may be connected.

I_M_P_O_R_T_A_N_T___N_O_T_E_:_   Changes made to PORT sections do  not  become
effective until the computer is rebooted.

Each PORT section is in the format described below.  The keyword  state-
ments within each PORT section may be given in any desired order.

[PORT]

  PORTNO=  assigns a logical port number to an adapter port
  ADAPTER=  specifies the type of communication adapter
  COMNAME=  specifies the name of a communication device driver
  IRQ=    specifies the interrupt request level used by the adapter
  IOBASE=  specifies the I/O port address used by the software to  talk
          to the adapter

The TRMMAN.INI File                              5-9


  TXBSZ=   allows  you  to set the size of the transmit  buffer  for  the
          port
  TXBLO=   allows  you  to  specify  the  low  trigger  point  at  which
          processes waiting for space in the buffer will be run
  RXBSZ=   allows you to set the size of the receive buffer
  RXBHI=   allows  you to specify the trigger point at which  the  flow
          control procedure will stop reception of data i.e. when  to
          send XOFF and/or drop the DTR signal
  RXBLO=   allows  you to specify the trigger point at which  the  flow
          control procedure will restart reception of data  i.e.  when
          to send XON and/or raise the DTR signal
  TXFIFO=  allows  you  to optimise the operation of the  first-in  first-
          out transmit buffer used on some communication adapters
  RXFIFO=  allows  you  to optimise the operation of the  first-in  first-
          out receive buffer used on some communication adapters

As  a general rule, the TXBSZ=, TXBLO=, RXBSZ=, RXBHI=,  RXBLO=  statements
may  be  omitted,  allowing Terminal Manager  to  provide  default  values.
Only if you fully understand their use should you consider specifying values
for these statements.

If you are using the standard adapter ports COM1 through COM8, the  IRQ
and  IOBASE  statements may also be omitted since  Terminal  Manager  is
able to provide the correct default values in these cases.

The  following  sections describe each of the above keyword  statements  in
detail.

The PORTNO Statement in the PORT Section

The PORTNO statement is mandatory and assigns a logical port number  to
a  port on an adapter.  The purpose of assigning a logical port number is  so
that  TERMINAL  sections in the TRMMAN.INI file  and  other  Terminal
Manager  components may identify a port without having to refer to  physi-
cal  addresses  or  other hardware dependent characteristics  of  the  adapter
port. The logical port number assigned must be unique within the  computer
or Local Area Network environment.  It may be in the range 1-999.

The following is an example of the use of the PORTNO statement :-

  PORTNO = 2

A PORTNO statement must be present in every PORT section.


5-10                              The TRMMAN.INI File


The ADAPTER Statement in the PORT Section

The  ADAPTER  statement  is mandatory and tells  Terminal  Manager  the
type  of communication adapter used for the port.  The  following  keyword
parameters may be specified after the ADAPTER keyword.

  COM1 - COM8specifies the standard adapters for the ports named COM1
          through  COM8.  PC/AT computers and  compatibles  are
          normally limited to COM1 and COM2 while PS/2 compu-
          ters   and  compatibles  are  additionally  able  to   specify
          COM3  through  COM8.  On PS/2 computers,  COM1  is
          normally built into the motherboard while COM2 through
          COM8  are provided by adding a number of Dual  Async
          Adapter/A boards.

        If  one of these adapter ports is specified, the IOBASE=  and
          IRQ=  statements may be omitted since Terminal  Manager
          knows the values for these types of adapter.  If IOBASE= or
          IRQ= are specified, they must be as in the table below.

          Adapter    IOBASE     IRQ

          COM1   03F8    4
          COM2   02F8    3
          COM3   3220    3
          COM4   3228    3
          COM5   4220    3
          COM6   4228    3
          COM7   5220    3
          COM8   5228    3

        The  file  COM1COM8.XMP on the  Terminal  Manager
          diskette contains an example of the use of the  ADAPTER
          statement   for   the  COM1   through   COM8   adapters.
          Appendix B.1 discusses the use of these adapters.

  ACCENT4  specifies   a  port  on  an  ACCENT  ASYNC-4   adapter
          designed  for  PC/AT  computers  and  compatibles.   The
          ASYNC-4  adapter is configurable in a number  of  ways.
          Valid  and recommended configurations are  described  in
          appendix  B.2.  The file ACCENT4.XMP on the  Termi-
          nal  Manager  diskette contains an example of  the  use  of
          the  ADAPTER  statement for  the  ACCENT  ASYNC-4
          adapter.

The TRMMAN.INI File                              5-11


  AST4    specifies a port on an AST Four-Port Async/AT  adapter
          designed  for  PC/AT  computers  and  compatibles.   The
          AST  Four-Port  adapter  is configurable in  a  number  of
          ways.   Valid  and recommended  configurations  are  de-
          scribed  in  appendix  B.3.  The file  AST4.XMP  on  the
          Terminal Manager diskette contains an example of the use
          of the ADAPTER statement for the AST Four-Port  adap-
          ter.

  DIGIBOARD4
  DIGIBOARD8
  DIGIBOARD16specifies  a port on one of the following Digiboard  range
          of adapters :-

          DIGIBOARD4 Digiboard PC/4 or MC/4 with 4 ports
          DIGIBOARD8 Digiboard PC/8 or MC/8 with 8 ports
          DIGIBOARD16Digiboard  PC/16  or  MC/16  with   16
                    ports

        The  Digiboard adapters are configurable in a  number  of
          ways.   Valid  and recommended  configurations  are  de-
          scribed  in  appendix  B.4.   The  files   DIGIBD4.XMP,
          DIGIBD8.XMP  and DIGIBD16.XMP on  the  Terminal
          Manager  diskette  contain  examples  of  the  use  of   the
          ADAPTER statement for the Digiboard adapters.

  HOSTESS4
  HOSTESS8
  HOSTESS16  specifies  a port on one of the following Hostess range  of
          adapters from Comtrol Corporation :-

          HOSTESS4  HOSTESS with 4 ports
                HOSTESS/MC with 4 ports
                HOSTESS 550 with 4 ports
                HOSTESS 550/MC with 4 ports

          HOSTESS8  HOSTESS with 8 ports
                HOSTESS/MC with 8 ports
                HOSTESS 550 with 8 ports
                HOSTESS 550/MC with 8 ports

          HOSTESS16  HOSTESS 550 with 16 ports
                HOSTESS 550/MC with 16 ports


5-12                              The TRMMAN.INI File


        The  HOSTESS adapters are configurable in a number  of
          ways.   Valid  and recommended  configurations  are  de-
          scribed  in  appendix B.5.  The  files  HOSTESS4.XMP,
          HOSTESS8.XMP and HOSTES16.XMP on the  Termi-
          nal  Manager  diskette contain examples of the use  of  the
          ADAPTER statement for the HOSTESS adapters.

  SLINK4   specifies  a  port  on the S-Link  4-port  adapter  available
          directly from Qiiq Ltd.

        The  S-Link adapter is configurable in a number of  ways.
          Valid  and recommended configurations are  described  in
          appendix B.6.  The file SLINK4.XMP contains an exam-
          ple  of the use of the ADAPTER statement for the  S-Link
          4-port adapter.

  TCL8    specifies  a  port  on the CC8D  or  CC8B  adapters  from
          Technology Concepts.

        The  TCL  adapter is configurable in a  number  of  ways.
          Valid  and recommended configurations are  described  in
          appendix B.7.  The file TCL8.XMP contains an  example
          of the use of the ADAPTER statement for the TCL  adap-
          ters.

  NS16450  describes a non-specific adapter using the National Semi-
          conductor  NS16450 or compatible communications  chip.
          This  option is included to allow the user some  degree  of
          flexibility   in  configuring  communication  adapters   not
          otherwise specifically supported.  It cannot be guaranteed,
          however,  that  a  non-specific  adapter  can  be  used   by
          Terminal  Manager since other hardware control,  outside
          the scope of the communication chip, might be  necessary
          for successful operation.  Appendix B.8 discusses the  use
          of non-specific adapters in more detail.

        If this statement is specified, the PORT section must  also
          include the IOBASE= and IRQ= statements.

  COMDRIVER  specifies that Terminal Manager will not interface directly
          to the hardware of the adapter.  Instead, it will use a stan-
          dard OS/2 device driver supplied, either with OS/2  itself,
          or  as  part of the adapter package, or from  a  third-party
          device  driver  supplier.  If you have an adapter  which  is

The TRMMAN.INI File                              5-13


          able to be directly supported by Terminal Manager, it will
          always be more efficient to let Terminal Manager  control
          it  directly  rather  than via a standard  device  driver.   A
          detailed  discussion  on the use of  standard  OS/2  device
          drivers is given in appendix B.9.

        If   this  option  is  chosen,  you  must  also   include   the
          COMNAME  statement  described below.  The  IRQ  and
          IOBASE statements are not used with this option since the
          information  provided  by these statements is  required  by
          the  standard  device  driver  itself  and  not  by  Terminal
          Manager.

The following is an example of the use of the ADAPTER statement :-

  ADAPTER = COM3

The ADAPTER statement must be specified in each PORT section.

Multi-port  adapters  provide a number of ports on a single board,  each  of
which  is described in a PORT section as though it were a discrete  port  on
its  own individual board.  Care should be taken to ensure that all the  ports
on directly-controlled adapters are described in PORT statements i.e. on all
adapters  other than COMDRIVER adapters.  If you do not wish to  use  all
ports  on these adapters, you must define the ports in PORT statements  but
you  do  not  have  to allocate the logical port  number  in  a  corresponding
TERMINAL section.  The TERMINAL section is described in section 5.3.

It  should be noted that, if a directly-controlled adapter board has a  number
of ports which share a single IRQ level, or if a number of ports on physical-
ly  separate directly-controlled adapter boards share an IRQ level, a  PORT
section  must be specified for all possible ports which may interrupt on  that
IRQ  level, even if they are not intended to be used for Terminal  Manager.
An  exception to this is if a directly-controlled adapter board contains  ports
which  may be physically configured out, possibly by means of switches  on
the board.  On MCA-bus systems, Terminal Manager will allow other OS/2
drivers to control any of the COM2-COM8 ports not directly controlled  by
itself,  even though they might physically be on the same adapter  board  as
ports  controlled  directly  by Terminal Manager and  share  the  same  IRQ
level.

For adapters controlled via an OS/2 device driver i.e. those with ports  de-
fined  as ADAPTER = COMDRIVER, it is not necessary for Terminal  Manager  to
control all ports on that adapter.

5-14                              The TRMMAN.INI File


A number of adapters use the National Semiconductor 16550A  communi-
cation  chip  which  provides transmit and receive  first-in  first-out  (FIFO)
buffers.  These FIFO buffers reduce the number of interrupts to the proces-
sor  and  generally  improve  the response  time  of  the  system.   Terminal
Manager  checks all adapters to determine whether the 16550A chip  is  in-
stalled  and  will  use its FIFO capabilities if present.  The  sections  on  the
TXFIFO= and RXFIFO= statements discuss the use of the 16550A FIFO buffers.

The COMNAME Statement in the PORT Section

The COMNAME statement is used only if ADAPTER = COMDRIVER is specified.
The  statement  informs Terminal Manager of the OS/2 device name  of  the
device driver installed to directly interface to the hardware of the adapter.

The following is an example of the use of the COMNAME statement :-

  COMNAME = AUX8

If  you have an adapter which is able to be directly supported  by  Terminal
Manager,  it will always be more efficient to let Terminal Manager  control
it directly rather than via a standard device driver.

Appendix B.9 discusses the use of standard OS/2 device drivers in detail.

The IRQ Statement in the PORT Section

The  IRQ  statement specifies the interrupt request level used  by  the  port.
The IRQ level is usually set on the adapter board by switches or by the POS
(programmable  option  select) facility on the PS/2.  The IRQ  statement  is
not used if ADAPTER = COMDRIVER has been specified.

The  IRQ  statement  may  be omitted if the  adapter  type  specified  in  the
ADAPTER  statement  is  COM1  through COM8.  In  these  cases,  if  the
statement  is used, it must specify IRQ=4 for a COM1 adapter and  IRQ=3  for
COM2 through COM8 adapters.  For all other adapter types, this statement
is mandatory.  The technical documentation supplied with the adapter board
will contain instructions on how to set the correct IRQ level for that particu-
lar board.

The following is an example of the use of the IRQ statement :-

  IRQ = 3



The TRMMAN.INI File                              5-15


It  should be noted that, if a directly-controlled adapter board has a  number
of ports which share a single IRQ level, or if a number of ports on physical-
ly  separate directly-controlled adapter boards share an IRQ level, a  PORT
section  must be specified for all possible ports which may interrupt on  that
IRQ  level, even if they are not intended to be used for Terminal  Manager.
An  exception to this is if a directly-controlled adapter board contains  ports
which  may be physically configured out, possibly by means of switches  on
the board.  On MCA-bus systems, Terminal Manager will allow other OS/2
drivers to control any of the COM2-COM8 ports not directly controlled  by
itself,  even though they might physically be on the same adapter  board  as
ports  controlled  directly  by Terminal Manager and  share  the  same  IRQ
level.

With  the  exception  of  the DIGIBOARD, HOSTESS  and  TCL  range  of
adapters, sharing of interrupts on an IRQ level between physically  separate
boards  is not supported on PC/AT compatible computers.  Apart  from  the
above exception, computers based on the AT bus may have individual ports
sharing  a  single IRQ level only if all the ports are physically on  the  same
board i.e. if the board is designed to support IRQ sharing within the bounds
of the board itself. The DIGIBOARD, HOSTESS and TCL adapters for the
AT bus provide for connections between separate boards to implement  IRQ
sharing.  Adapters for the PS/2, and compatible computers using the  MCA
bus, may share IRQ levels since this is a standard feature of the MCA  bus.
On MCA-bus systems, Terminal Manager will share IRQ levels with  other
device drivers and will pass on any interrupts not generated by the  adapters
under its control.

The IOBASE Statement in the PORT Section

The  IOBASE  statement  specifies  the  base  input/output  address  for  the
adapter  port.  Each adapter port uses a block of consecutive I/O  addresses
starting  from the base address specified.  The address is given in its  hexa-
decimal  form as will normally be shown in the documentation  accompany-
ing  the  adapter board.  The IOBASE statement is not used  if  ADAPTER  =
COMDRIVER has been specified.

The following is an example of the use of the IOBASE statement :-

  IOBASE = 3F8

If  the adapter type specified in the ADAPTER statement is COM1  through
COM8,  this  statement may be omitted.  In these cases, if the  statement  is
used,  the  address  specified must be as detailed in  the  description  of  the
ADAPTER statement described earlier.

5-16                              The TRMMAN.INI File


For other types of adapter port, this statement is mandatory.  The  technical
documentation  supplied with the adapter board will contain instructions  on
how to select the addresses to be used for that particular board.

The TXBSZ Statement in the PORT Section

The TXBSZ statement specifies the size of the buffer to be allocated to hold
data  for  transmission.  The minimum size allowable is 64 bytes  while  the
maximum  size is 4096.  It should be noted that there is a limit on  the  total
buffer area used by all ports combined which might influence the choice  of
buffer size.

The TXBSZ statement specifies the actual number of bytes allocated for the
buffer.   The number of bytes able to be held in the buffer is one  less  than
TXBSZ.

The following is an example of the use of the TXBSZ statement :-

  TXBSZ = 1512

The TXBSZ statement is optional and if omitted, a default size of 980 bytes
is assumed.

It  is recommended that you omit this statement and let  Terminal  Manager
use the default value.

The TXBLO Statement in the PORT Section

The TXBLO statement is specified in terms of the number of bytes  remain-
ing  in  the transmit buffer which have yet to be  transmitted.   Whenever  a
byte  is taken from the buffer and transmitted, the number of bytes  remain-
ing is checked.  If it is below or equal to the specified number, any applica-
tion thread waiting for space in the buffer is unblocked and allowed to run.

The following is an example of the use of the TXBLO statement :-

  TXBLO = 512

TXBLO  is  used by TRMMAN.SYS to reduce operating  system  overhead
for programs which perform large amounts of terminal output.   Processing
threads are blocked whenever the buffer becomes full; if the thread were  to
be  unblocked whenever a space becomes available in the buffer, the  thread
would  be able to write just one byte to the buffer before having to  suspend
again.   This  would involve the operating system  overhead  of  suspending

The TRMMAN.INI File                              5-17


and  then  running the thread for every byte transmitted.  By setting  a  rea-
sonable value for TXBLO, the process will suspend until 'TXBSZ-TXBLO'
bytes  are able to be written to the buffer; this write can be performed  very
quickly  with  no  operating system overhead until the  buffer  becomes  full
again.

TXBLO  may be specified between 1 and TXBSZ inclusive. If the  TXBLO
statement is omitted, a default value of TXBSZ divided by 4 is assumed.  If
TXBLO is set to the same value as TXBSZ, an application thread,  suspen-
ded waiting for space, will be run whenever a byte becomes available in the
buffer; generally, this is not desirable.

The  TXBLO statement is only valid if the TXBSZ statement is  also  speci-
fied i.e. it is only valid if TXBSZ is not defaulted.

It  is recommended that you omit this statement and let  Terminal  Manager
select the appropriate default value.

The RXBSZ Statement in the PORT Section

The RXBSZ statement specifies the size of the buffer to be allocated to hold
received  data.   If this statement is omitted, a default buffer of 64  bytes  is
allocated.  The minimum size allowable is 64 bytes while the maximum size
is  4096  bytes.   It should be noted that there is a limit on  the  total  buffer
area used by all ports combined which might influence the choice of  buffer
size.

The following is an example of the use of the RXBSZ statement :-

  RXBSZ = 128

RXBSZ  specifies the actual number of bytes allocated for the  buffer.   The
number of bytes able to be held in the buffer is 1 less than RXBSZ.

It  is recommended that you omit this statement and let  Terminal  Manager
use the default value.  However, if a DOS PC is connected to the port using
the DOS-TERMINAL facility, and, if file transfer will be used on that  PC,
you should set RXBSZ to a minimum of 300 to avoid potential transmission
errors on busy host systems.

The RXBHI Statement in the PORT Section

The  RXBHI statement is specified in terms of the number of bytes  held  in
the receive buffer.  When the specified number is reached or exceeded,  the

5-18                              The TRMMAN.INI File


flow control mechanism is activated i.e. XOFF is sent or the DTR signal  is
dropped, or both.

The following is an example of the use of the RXBHI statement :-

  RXBHI = 108

RXBHI  may  be  specified  between  RXBLO+8  and  RXBSZ-8.   If   the
RXBHI statement is omitted, a default value of RXBSZ-20 is assumed.

The  RXBHI  statement is only valid if the RXBSZ statement is  also  speci-
fied i.e. it is only valid if RXBSZ is not defaulted.

It  is recommended that you omit this statement and let  Terminal  Manager
select the appropriate default value.

The RXBLO Statement in the PORT Section

The  RXBLO statement is specified in terms of the number of bytes held  in
the  receive  buffer.  When an application thread is about to remove  a  byte
from  the  buffer, the number of bytes in the buffer is  checked  against  the
RXBLO value and,  if it is the same, the flow control mechanism is  deacti-
vated i.e. XON is sent or the DTR signal is raised, or both.

The following is an example of the use of the RXBLO statement :-

  RXBLO = 20

RXBLO may be specified between 1 and RXBSZ-16.  If the RXBLO state-
ment is omitted, a default value of 20 is assumed.

The  RXBLO statement is only valid if the RXBSZ statement is  also  speci-
fied i.e. it is only valid if RXBSZ is not defaulted.

It  is recommended that you omit this statement and let  Terminal  Manager
use the default value.

The TXFIFO Statement in the PORT Section

The TXFIFO statement may only be used for adapters on which the  Natio-
nal   Semiconductor  16550A  communication  chip  is  present.    Terminal
Manager  checks all adapter ports to determine whether the 16550A chip  is
present.


The TRMMAN.INI File                              5-19


The  16550A  chip contains a first-in first-out (FIFO) buffer for  data  being
transmitted from the computer.  The FIFO buffer reduces the interrupt pro-
cessing  time required for transmitted data and generally makes  the  system
more responsive.

The  FIFO  transmit  buffer is able to hold up to  16  bytes.   The  TXFIFO
statement  tells  Terminal Manager how many bytes to load  into  the  FIFO
each time an interrupt signalling an empty FIFO buffer is received.

Although it would seem preferable to always load the maximum of 16 bytes
each  time the FIFO is signalled as being empty, this may lead to  problems
with flow control, or pacing, of data.  The 16550A will always transmit the
contents  of  the  FIFO and, during this time, it is unable  to  recognise  any
flow  control  information coming from the terminal (such as XOFF  or  the
DTR  signal dropping).  Most terminals are able to operate at speeds  of  up
to 19200 baud without needing to invoke any flow control mechanism  back
to  the  computer.  However, some terminal  functions,  including  printing,
can  involve  lengthy operations during which the terminal attempts  to  halt
the  flow of data from the computer.  If the terminal's receive buffer is  less
than  16  bytes  long  and the FIFO of the 16550A is  being  filled  with  16
bytes,  data  may be lost if the terminal needs to halt the flow of  data  from
the  computer.  Generally this situation will cause corruption of data on  the
screen  and/or  printer.   If you experience corruptions  which  you  suspect
may  be  due  to the use of the transmit FIFO, you should  set  the  transmit
FIFO limit to 1 and determine whether this overcomes the problem.

The following is an example of the use of the TXFIFO statement :-

  TXFIFO = 4

The  parameter  value  specified for the TXFIFO statement may  be  in  the
range  1 to 16.  If the ADAPTER = COMDRIVER statement is specified, the  value
for the TXFIFO statement may be either 1 or 16.

The  use of the TXFIFO statement is optional.  If the statement  is  omitted,
and  if  the adapter is found to contain the 16550A, a default value  of  8  is
assumed.

The RXFIFO Statement in the PORT Section

The RXFIFO statement may only be used for adapters on which the  Natio-
nal   Semiconductor  16550A  communication  chip  is  present.    Terminal
Manager  checks all adapter ports to determine whether the 16550A chip  is
present.

5-20                              The TRMMAN.INI File


The  16550A  chip contains a first-in first-out (FIFO) buffer for  data  being
received  by the computer.  The FIFO buffer reduces the interrupt  process-
ing  time  required for received data and generally makes the  system  more
responsive.

When  a  number  of characters are received in quick  succession  from  the
terminal, the 16550A buffers up the characters until a pre-specified  number
of  characters is contained in its FIFO buffer. At this point it  will  interrupt
the  processor  to  signal that received data is ready to  be  processed.   The
threshold  at  which the 16550A interrupts the processor is specified  in  the
RXFIFO statement.  The value may be 1, 4, 8 or 14.

Unlike  the  transmit FIFO buffer, use of the receive FIFO buffer  does  not
have any adverse effect on flow control.

The  following  is an example of the use of the RXFIFO statement to  set  a
threshold of 8 bytes as the trigger point for interrupting the processor :-

  RXFIFO = 8

The  use of the RXFIFO statement is optional.  If the statement  is  omitted,
and  if the adapter is found to contain the 16550A, a default value of  14  is
assumed.


-------------------------------------------
5.3  The TERMINAL Sections

The TERMINAL sections contain information used by TM.EXE to identify
and  configure itself for each attached terminal. Each  TERMINAL  section
assigns a logical terminal number to a terminal and associates it with one of
the logical port numbers assigned in a PORT section.  There will  normally
be  the  same number of TERMINAL sections as there are  PORT  sections
although,  if a terminal is not attached to one of the ports,  no  TERMINAL
section will be present for the PORT.

Each  TERMINAL section is in the format described below.  The  keyword
statements  within  each TERMINAL section may be given  in  any  desired
order.

  [TERMINAL]

  TERMNO=  assigns a logical terminal number to the terminal
  PORTNO=  specifies to which port the terminal is attached

The TRMMAN.INI File                              5-21


  LOCATION=  allows  you  to specify a description that may  be  used  to
          indicate the location or user of the terminal
  TERMTYPE=  specifies the type of terminal
  KBDTYPE=  specifies the type of keyboard attached to the terminal
  KBBSZ=   specifies the size of the terminal's keystroke buffer
  ATD=    specifies the name of an ASCII Terminal Definition file
  STATUSLINE=allows you to select whether the status line on the terminal
          will be displayed or hidden
  DEFAULTROWS=specifies  the  default  number of rows, or  lines,  for  the
          terminal screen
  DEFAULTCOLS=specifies  the default number of columns for  the  terminal
          screen
  MAXROWS=  specifies  the maximum number of rows, or lines, for  the
          terminal screen
  MAXCOLS=  specifies the maximum number of columns for the  termi-
          nal screen
  SHELL=   names  the program to be run whenever the terminal  first
          comes online
  MAXSESSIONS=allows you to set the maximum number of sessions able to
          be active at any one time on the terminal
  BAUD=    specifies the baud rate for the terminal
  DATABITS=  specifies  the  number  of data bits in  each  character  ex-
          changed with the terminal
  PARITY=  specifies  the  type  of parity checking being  used  by  the
          terminal
  STOPBITS=  specifies  the  number  of stop bits in  each  character  ex-
          changed with the terminal
  XONXOFF=  specifies whether the XON/XOFF flow control protocol is
          to be used
  FORCECTS=  allows  the RS232 Clear To Send signal to be  considered
          permanently high
  FORCEDSR=  allows the RS232 Data Set Ready signal to be considered
          permanently high
  FORCEDCD=  allows  the RS232 Data Carrier Detect signal to be  con-
          sidered permanently high
  TOGGLERTS= specifies  whether the RS232 Request To Send  signal  is
          held permanently high or is toggled on and off
  TOGGLEDTR= specifies whether the RS232 Data Terminal Ready signal
          is held permanently high or is toggled on and off
  IDLETIMEOUT=sets  the length of the idle period after which the  terminal
          will be logged off
  ACTIVATE=  specifies whether the terminal is to be activated  immedia-
          tely when Terminal Manager is first started


5-22                              The TRMMAN.INI File


The  following  keyword statements must always be present in  a  TERMI-
NAL section :-

  TERMNO=
  PORTNO=
  TERMTYPE=

All other keyword statements are assigned a default value if not specified in
the  TERMINAL  section.  The default values assigned are  detailed  in  the
following sections.

The TERMNO Statement in the TERMINAL Section

The  TERMNO statement assigns a logical terminal number to  a  terminal.
The  logical terminal number must be unique within the computer or  Local
Area Network environment.  The value may be in the range 1 through 999.

The  logical  terminal number provides a means of identifying  a  particular
terminal  rather  than specifying the physical port to which it  is  connected.
A  terminal  may thus be moved from port to port, or  between  computers,
while retaining its original identification.  The terminal number is also used
in the names of certain files which relate specifically to the terminal.

The following is an example of the use of the TERMNO statement :-

  TERMNO = 28

The TERMNO statement must be specified for each TERMINAL section.

The PORTNO Statement in the TERMINAL Section

The  PORTNO statement specifies the logical port number, assigned in  one
of the PORT sections, to which the terminal is connected.

The following is an example of the use of the PORTNO statement :-

  PORTNO = 2

The PORTNO statement must be specified for each TERMINAL section.

The LOCATION Statement in the TERMINAL Section

The  LOCATION statement specifies a character string which may be  used
to  describe the terminal, possibly to specify in which department  or  office

The TRMMAN.INI File                              5-23


the terminal is located.  The string may be up to 30 characters in length and
must be enclosed in single or double quotes.

The following is an example of the use of the LOCATION statement :-

  LOCATION = "Mr. Smith's Office"

This use of the LOCATION statement is optional.  If the statement is omit-
ted, a default string is assumed in the following format :-

  $nnn

where  nnn is the logical port number to which the terminal is connected.

The TERMTYPE Statement in the TERMINAL Section

The TERMTYPE statement is mandatory and identifies the type of terminal
being used.  Terminal Manager needs to know this information so that it  is
able  to  send the correct commands to the terminal for  screen  display  and
keyboard control.

The  following  parameter keywords may be specified after  the  TERMTYPE=
keyword representing the terminals supported by Terminal Manager :-

  IBM3151      specifies  one  of the IBM  3151  ASCII  Display
               Station  models  31, 35, 41 or 45.  The  terminal
               must   be   equipped  with  the   Cartridge   For
               Connectivity.    The  IBM  3151  and  its   setup
               parameters  are  discussed in  detail  in  appendix
               A.2.
  WYSE55       specifies  the  WYSE WY-55  terminal  equipped
               with  the  Enhanced  PC-style  Keyboard.   The
               WYSE   WY-55  and  its  setup  parameters   are
               discussed in detail in appendix A.3.
  WYSE60       specifies  the  WYSE WY-60  terminal  equipped
               with  the  AT-style Keyboard or  the  Enhanced
               PC-style Keyboard.  The WYSE WY-60 and its
               setup   parameters   are  discussed  in   detail   in
               appendix A.4.
  WYSE120      specifies  the WYSE WY-120 terminal  equipped
               with  the  AT-style Keyboard or  the  Enhanced
               PC-style  Keyboard.  The WYSE  WY-120  and
               its  setup  parameters  are discussed  in  detail  in
               appendix A.5.

5-24                              The TRMMAN.INI File


  WYSE325      specifies  the  WYSE  WY-325  colour   terminal
               equipped  with  the  Enhanced  PC-style   Key-
               board.  The WYSE WY-325, its associated  util-
               ity   program  SETWY325.EXE  and   its   setup
               parameters  are  discussed in  detail  in  appendix
               A.6.
  PC-TERMINAL    is  used  to  specify a terminal  which  has  a  PC
               terminal capability but is not specifically  suppor-
               ted  by  Terminal Manager.   The  terminal  must
               support  the  PC Terminal  functions  detailed  in
               appendix  A.1.  Because Terminal  Manager  has
               no  knowledge of any capabilities of the  terminal
               except  the PC Terminal functions,  the  terminal
               must be manually configured for the setup  char-
               acteristics described in appendix A.1.
  DOS-TERMINAL    is   used   to  specify  a  DOS  PC   running   the
               TERM.EXE program supplied with the Terminal
               Manager  package.   TERM.EXE and  the  DOS-
               TERMINAL feature are described in chapter 6.
  ASCII        specifies  that a standard ASCII terminal is  atta-
               ched which generates ASCII characters from  the
               keyboard  rather the scan codes generated by  the
               other  terminal  types.   Appendix  A.8  provides
               further  information on the use of  ASCII  termi-
               nals.

            If the TERMTYPE=ASCII statement is specified, there
               will  usually be an ATD statement present in  the
               same TERMINAL section.

The following is an example of the use of the TERMTYPE statement :-

  TERMTYPE = IBM3151

The  TERMTYPE  statement must be specified in every  TERMINAL  sec-
tion.

The KBDTYPE Statement in the TERMINAL Section

The  KBDTYPE  statement informs Terminal Manager of the type  of  key-
board attached to the terminal specified in the TERMTYPE statement.  The
statement allows you to identify a number of characteristics of the keyboard
and has the following format :-


The TRMMAN.INI File                              5-25


  KBDTYPE=<type>,<country>,<subcountry>,<code page>,<code page file>

Not  all parameters are required and if any are omitted, certain defaults  are
assumed.  If a parameter is to be omitted, but subsequent parameters are  to
be  specified,  the  positional  comma of the  omitted  parameter  should  be
included.   After  a parameter has been specified, and  all  following  para-
meters are to be defaulted, there is no requirement to include the  positional
commas for those following parameters.

The  following  are descriptions of the meaning of each  of  the  parameters
following the KBDTYPE= keyword.

  <type>       identifies  the  physical  layout  of  the  keyboard
               with  respect  to the positioning of  keys  and  the
               number of function keys.  The permissible values
               for <type> are :-

            0 - PC/AT style keyboard with F1-F10 keys
            1 - Enhanced style keyboard with F1-F12 keys

            If  the  <type>  parameter  is  omitted,  a   default
               value  is  assumed  based  on  the  terminal   type
               specified in the TERMTYPE statement.

  <country>      specifies the abbreviation for the country suppor-
               ted  by the key-top engravings.   The  <country>
               parameter  is  used  for  searching  the  keyboard
               code  page file for the correct code page  transla-
               tion  table.   Table  5.1  details  the   permissible
               values  that may be specified for  the  <country>
               parameter.

            If  the  <country>  parameter  is  omitted,  default
               values will be assumed for <country>,  <subcoun-
               try> and <code page> based on the country identi-
               fication defined in the CONFIG.SYS file at  boot
               time and returned by the OS/2 API call DosGet-
               CtryInfo.

  <subcountry>    extends  the  specification  of  the  keyboard   for
               countries  which  have more  than  one  keyboard
               model.  <subcountry> is used in conjunction  with
               <country>  to locate the appropriate code page  in
               the code page file.

5-26                              The TRMMAN.INI File


            If  <subcountry> is omitted, the  default  specified
               in table 5.1 is used according to the value  given,
               or defaulted, for the <country> parameter.

  <code page>    specifies  the  code page number to  be  used  for
               translating  scan  codes  to  internal  key  values.
               Some  countries  have more than one  code  page
               for  translating the keyboard scan codes.   <code
               page>  is used in conjunction with  <country>  and
               <subcountry> to locate the appropriate code  page
               in the code page file.

            If <code page> is omitted, the default specified  in
               table 5.1 is used according to the value given,  or
               defaulted, for the <country> parameter.

  <code page file>  specifies  the name of the file that is to  be  sear-
               ched for the code page for translating scan  codes
               to  internal keyboard values.  The full path  name
               of the file, including the drive, must be  specified
               and must not exceed 40 characters in length.

            If the <code page file> parameter is omitted,  the
               default  file  specified  by  the   KEYBOARDCP
               statement in the SYSTEM section is searched.

The following are examples of the use of the KBDTYPE statement :-

  KBDTYPE = 0    specifies  that  the keyboard type is type  '0'  and
               that all subsequent parameters are to be defaulted
  KBDTYPE = 1,UK   specifies that the keyboard is of type '1' and  has
               key-top  markings for the United Kingdom  key-
               board layout
  KBDTYPE = 1,UK,,850 has  the  same  effect  as  the  previous   example
               except that code page number '850' is to be  used
               for  translating keyboard scan codes into  internal
               values
  KBDTYPE = 1,UK,168,850,C:\TRMMAN\OURCP.DCP
            specifies  the  same  parameters  as  the  previous
               example  and also identifies the keyboard  as  the
               model  168  keyboard.   The  code  page  file   is
               named  instead of using the default  specified  by
               the  KEYBOARDCP statement in the  SYSTEM
               section.

The TRMMAN.INI File                              5-27


If the KBDTYPE statement is omitted, default values are assumed based on
the  terminal  type specified in the TERMTYPE statement and  the  country
identification returned by OS/2.

-------------------------------------------

             Country    Subcountry       Code Page

Belgium        BE      120      437,850
Canadian French    CF      058      863,850
Denmark        DK      159      865,850
France         FR      189,120    437,850
Germany        GR      129      437,850
Italy          IT       141,142    437,850
Latin America     LA      171      437,850
Holland        NL      143      437,850
Norway        NO      155      865,850
Portugal        PO      163      860,850
Spain         SP      172      437,850
Swiss French      SF      150      437,850
Swiss German     SG      150      437,850
Finland        SU      153      437,850
Sweden        SV      153      437,850
United Kingdom    UK      166,168    437,850
USA          US      103      437,850

Note: Where multiple Subcountry and Code Page options are available,
    the first value is used as the default

           Table 5.1 - Keyboard Code Pages
-------------------------------------------


The KBBSZ Statement in the TERMINAL Section

The KBBSZ statement defines the maximum number of keystrokes that  are
able to be held in the keyboard buffer for the terminal.  Once the maximum
has  been  reached,  Terminal Manager responds to  further  keystrokes  by
sending a BELL (07) character to the terminal.

Under  normal operation, using the default setting, the operator  will  rarely
experience  the  buffer  full condition.  However, if the  operator  is  typing
well ahead of the application and is anticipating responses to future  screens
or  prompts, the BELL may sound on the terminal; at this point, the  opera-

5-28                              The TRMMAN.INI File


tor  would  usually pause to allow the application to catch up with  the  key-
strokes already entered.

In some installations, where the actions of the operator are being  simulated
by  a program running on an attached PC, the sending of the BELL  charac-
ter  is  undesirable.  In these situations, the keyboard buffer may  be  set  to
some  size  able to hold an entire sequence of keystrokes sent from  the  PC
program  such that it can be assured that the buffer will never fill  to  capa-
city.

The following is an example of the use of the KBBSZ statement :-

    KBBSZ = 1024

KBBSZ may be in the range 16 through 5460.

The  use of the KBBSZ statement is optional.  If the statement is omitted,  a
default buffer size of 60 keystrokes is assumed.

When  setting  the size, it should be remembered that the  buffer  is  shared
amongst  all the sessions running on that terminal.   Generally,  background
sessions are suspended awaiting keyboard input.  However, if a background
session  is not requesting keyboard input, e.g. if it is performing  a  proces-
sor-intensive  task,  any  keystrokes entered into that  session  will  take  up
buffer space until the application reads the keystrokes via a keyboard opera-
tion.

The ATD Statement in the TERMINAL Section

The  ATD statement is used when the TERMTYPE=ASCII statement is  specified
in the TERMINAL section.

The  parameter  following the ATD keyword specifies the  full  path  name,
including the drive, of the ASCII Terminal Definition file containing control
information  for the terminal.  The file name, including the drive  and  path
specifiers,  must  not exceed 40 characters in length.  The  file  usually  has
the .ATD extension.

Terminal  Manager has no built-in direct support for specific ASCII  termi-
nals.   Instead,  it  relies on the information provided in the  .ATD  file  for
keyboard  character conversion, screen controls etc.  The use of  the  .ATD
file  and  other  information  related to the  support  of  ASCII  terminals  is
contained in appendix A.8


The TRMMAN.INI File                              5-29


The following is an example of the use of the ATD statement :-

  ATD = C:\TRMMAN\VT220.ATD

The  current  release  of Terminal Manager is  supplied  with  VT220.ATD
configured  for  supporting the DEC VT220 terminal, WY50.ATD  for  the
Wyse WY50 terminal and WY60.ATD for the Wyse WY60 terminal opera-
ting  in  its native ASCII mode .  Other .ATD files may  be  available  from
your supplier, alternatively, the Terminal Manager - Programmer's  Toolkit
may be used to generate .ATD files specific to your requirements.

If  the TERMTYPE=ASCII statement is specified but the ATD statement is  omit-
ted,  a  default  name of \TRMMAN\ASCII.ATD on the boot  drive  is  as-
sumed.

The STATUSLINE Statement in the TERMINAL Section

The STATUSLINE statement specifies whether the terminal's status line  is
to  be displayed or not.  The information displayed on the status line  varies
according to the terminal type.  The following parameter keywords may  be
specified after the STATUSLINE= keyword :-

  ON
  OFF

The following is an example of the use of the STATUSLINE statement :-

  STATUSLINE = ON

The  use  of  the  STATUSLINE statement is optional.  If  the  statement  is
omitted, STATUSLINE=ON is assumed.

The DEFAULTROWS Statement in the TERMINAL Section

Some  terminal  types are able to be configured for screen sizes  other  than
the  standard  80  columns  by 25 rows e.g. 132 columns  by  25  rows,  80
columns by 43 rows etc.

The  DEFAULTROWS statement specifies the number of rows that will  be
initially set for each new session starting on the terminal.  Once a session is
started,  an application program running in that session may issue the  Vio-
SetMode API call to change the number of columns and/or rows.



5-30                              The TRMMAN.INI File


Appendix A details the available screen sizes for each of the terminal  types
supported by Terminal Manager.  The following is an example of the use of
the DEFAULTROWS statement :-

  DEFAULTROWS = 25

The  use of the DEFAULTROWS statement is optional.  If the statement  is
omitted,  a  default  is  assumed based on the terminal  type  as  detailed  in
appendix A.

The DEFAULTCOLS Statement in the TERMINAL Section

Some  terminal  types are able to be configured for screen sizes  other  than
the  standard  80  columns  by 25 rows e.g. 132 columns  by  25  rows,  80
columns by 43 rows etc.

The  DEFAULTCOLS statement specifies the number of columns that  will
be  initially  set for each new session starting on the terminal.  Once  a  ses-
sion is started, an application program running in that session may issue the
VioSetMode API call to change the number of columns and/or rows.

Appendix A details the available screen sizes for each of the terminal  types
supported by Terminal Manager.  The following is an example of the use of
the DEFAULTCOLS statement :-

  DEFAULTCOLS = 132

The  use of the DEFAULTCOLS statement is optional.  If the  statement  is
omitted,  a  default  is  assumed based on the terminal  type  as  detailed  in
appendix A.

The MAXROWS Statement in the TERMINAL Section

The  MAXROWS  statement specifies the maximum number  of  rows  that
may be set for the terminal.

As described above, the screen size of the terminal may vary depending  on
the  setting of the DEFAULTROWS and DEFAULTCOLS  statements  and
on the use of the API call VioSetMode.  The size of the screen may be in-
creased from that set when a session is started. Therefore, Terminal  Man-
ager  must know the maximum size that will be set so that it is able to  allo-
cate  sufficient  memory to hold its internal copy of the screen  data,  called
the  Logical  Video Buffer, for the largest possible screen size  that  will  be
requested  by  application programs running on the  terminal.   You  should

The TRMMAN.INI File                              5-31


only consider setting MAXROWS higher than the default for the terminal if
an  application program that you are likely to use requires the larger  screen
size;   setting large screen sizes increases the amount of  memory  allocated
for the Logical Video Buffer even if the larger screen size is never  actually
used.

The  valid values for MAXROWS are dependent upon the terminal  type  as
detailed in appendix A.

The following is an example of the use of the MAXROWS statement :-

  MAXROWS = 43

The  use of the MAXROWS statement is optional.  If the statement is  omit-
ted,  either the default value for the terminal type or the  DEFAULTROWS
value will be assumed, whichever is the larger.

The MAXCOLS Statement in the TERMINAL Section

The  MAXCOLS statement specifies the maximum number of columns  that
may be set for the terminal.

As described above, the screen size of the terminal may vary depending  on
the  setting of the DEFAULTROWS and DEFAULTCOLS  statements  and
on the use of the API call VioSetMode.  The size of the screen may be in-
creased from that set when a session is started. Therefore, Terminal  Man-
ager  must know the maximum size that will be set so that it is able to  allo-
cate  sufficient  memory to hold its internal copy of the screen  data,  called
the  Logical  Video Buffer, for the largest possible screen size  that  will  be
requested  by  application programs running on the  terminal.   You  should
only consider setting MAXCOLS higher than the default for the terminal  if
an  application program that you are likely to use requires the larger  screen
size;   setting large screen sizes increases the amount of  memory  allocated
for the Logical Video Buffer even if the larger screen size is never  actually
used.

The  valid  values for MAXCOLS are dependent upon the terminal  type  as
detailed in appendix A.

The following is an example of the use of the MAXCOLS statement :-

  MAXCOLS = 132



5-32                              The TRMMAN.INI File


The  use of the MAXCOLS statement is optional.  If the statement  is  omit-
ted,  either the default value for the terminal type or  the  DEFAULTCOLS
value will be assumed, whichever is the larger.

The SHELL Statement in the TERMINAL Section

The shell program is the name given to the first program loaded whenever a
terminal comes online.  Normally, the shell program will prompt the opera-
tor for a user name and password.  Terminal Manager allows you to specify
a different shell program for each terminal if required.

The SHELL statement in the TERMINAL section specifies the name of  the
shell  program  for the terminal being described.  Different  shell  programs
may be specified in other TERMINAL sections.

The  full  path name of the program must be given including  the  drive.   If
the  SHELL  statement  is omitted in the TERMINAL  section,  the  default
shell program specified by the SHELL statement in the SYSTEM section  is
assumed.

If  no  SHELL  statement is specified in the  TERMINAL  section,  and  no
SHELL  statement  is specified in the SYSTEM section, the  shell  program
name defaults to \TRMMAN\TRMSHELL.EXE on the boot drive.

The following is an example of the use of the SHELL statement :-

  SHELL = C:\OS2\CMD.EXE

The  name  of  the shell program, including the drive  and  path  specifiers,
must not exceed 40 characters in length.

The MAXSESSIONS Statement in the TERMINAL Section

The MAXSESSIONS statement specifies the maximum number of  sessions
that  the  terminal  is  able to support at any one time.   The  value  may  be
between 1 and 8.

The following is an example of the use of the MAXSESSIONS statement :-

  MAXSESSIONS = 4

Only the number of sessions realistically required should be specified  since
the  memory  for the maximum number of sessions is allocated even  if  the
sessions are never started.

The TRMMAN.INI File                              5-33


The  use  of the MAXSESSIONS statement is optional.  If the  statement  is
omitted, a default value of 2 is assumed.

The BAUD Statement in the TERMINAL Section

The  BAUD statement informs Terminal Manager of the baud rate  used  by
the  terminal.   The parameter following the BAUD= keyword may be  one  of
the following :-

  56000, 38400, 19200, 9600, 7200, 4800, 3600, 2400, 2000, 1800,
  1200, 600, 300, 150, 134, 110, 75, 50.

The  user  guide supplied with the terminal should  contain  instructions  on
setting  the baud rate for the terminal.  Ports specified with the  ADAPTER  =
COMDRIVER statement are usually limited to a maximum of 19200.

The following is an example of the use of the BAUD statement :-

  BAUD = 1200

The  use  of the BAUD statement is optional.  If the statement is  omitted  a
default of 9600 is assumed.

The DATABITS Statement in the TERMINAL Section

The  DATABITS  statement informs Terminal Manager of  the  number  of
data bits to be used for communicating with the terminal.  The values 7 or 8
may  be  specified, however, the 7 databits option may only be used  if  the
TERMTYPE=ASCII  statement  is  specified.  All terminals with a  PC  mode  of
operation require the DATABITS value to be set to 8.

The  user  guide supplied with the terminal should  contain  instructions  on
setting the number of data bits for the terminal.

The following is an example of the use of the DATABITS statement :-

  DATABITS = 8

The  use of the DATABITS statement is optional.  If the statement is  omit-
ted, a default value of 8 is assumed.





5-34                              The TRMMAN.INI File


The PARITY Statement in the TERMINAL Section

The  PARITY  statement informs Terminal Manager of the  type  of  parity
checking employed by the terminal.

The following keyword values may follow the PARITY= keyword :-

  EVEN    specifies that even parity checking is to be used
  ODD    specifies that odd parity checking is to be used
  NONE    specifies that no parity bit is to be added to characters
  ZERO    specifies  that  a bit with the value zero is to  be  added  to
          characters
  ONE    specifies  that  a bit with the value one is to  be  added  to
          characters

Not  all  communication  adapters are able to  handle  the  PARITY=ZERO  and
PARITY=ONE  options.   Any  limitations on communication  adapters  are  de-
tailed in appendix B.

The  user  guide supplied with the terminal should  contain  instructions  on
setting the parity checking for the terminal.

The following is an example of the use of the PARITY statement :-

  PARITY = NONE

The  use of the PARITY statement is optional.  If the statement  is  omitted,
PARITY=NONE is assumed.

The STOPBITS Statement in the TERMINAL Section

The STOPBITS statement informs Terminal Manager of the number of stop
bits  to  be  used for communicating with the terminal.  The values  1  or  2
may be specified.

The  user  guide supplied with the terminal should  contain  instructions  on
setting the number of stop bits for the terminal.

The following is an example of the use of the STOPBITS statement :-

  STOPBITS = 1

The  use  of the STOPBITS statement is optional.  If the statement  is  omit-
ted, a default value of 1 is assumed.

The TRMMAN.INI File                              5-35


The XONXOFF Statement in the TERMINAL Section

The XONXOFF statement specifies whether XON/XOFF flow control is  to
be  enabled.  XON/XOFF control is enabled if XONXOFF=YES is  specified,  or
disabled if XONXOFF=NO is specified.

The following is an example of the use of the XONXOFF statement :-

  XONXOFF = YES

The  user  guide supplied with the terminal should  contain  instructions  on
selecting XON/XOFF flow control for the terminal.

The  use of the XONXOFF statement is optional.  If the statement  is  omit-
ted, XONXOFF=YES is assumed.

Appendix D discusses XON/XOFF considerations when using modems.

The FORCECTS Statement in the TERMINAL Section

The FORCECTS statement specifies whether the CTS signal is to be forced
high.  Forcing  CTS high effectively disables the CTS signal  from  control-
ling the flow of data to a terminal from the computer.

The  following  keyword values may be specified following  the  FORCECTS=
keyword :-

  YES
  NO

A  local  terminal  connected directly to the  computer  would  normally  be
configured  for  XON/XOFF flow control using the  XONXOFF=YES  statement
and  would  not require Terminal Manager to check the CTS  signal  before
transmitting  data.   In this situation, the terminal cable  might  be  strapped
with  CTS held high.  If the cable is not strapped to hold CTS  high,  FOR-
CECTS=YES  will  have  the  same effect.  In the cable, if  the  CTS  signal  is
strapped to the RTS signal from the computer, and the TOGGLERTS=YES state-
ment is specified, unnecessary interrupt processing may result.

The following is an example of the use of the FORCECTS statement :-

  FORCECTS = YES



5-36                              The TRMMAN.INI File


The use of the FORCECTS statement is optional.  If it is omitted, a  default
of FORCECTS=YES is assumed.

The FORCEDSR Statement in the TERMINAL Section

The FORCEDSR statement specifies whether the DSR signal is to be forced
high.  The following keyword values may be specified following  the  FOR-
CEDSR= keyword :-

  YES
  NO

The  DSR  and  DCD signals must both be high for  Terminal  Manager  to
consider  that  the  terminal  is still attached  and  online  to  the  computer.
Specifying FORCEDSR=YES effectively causes Terminal Manager to ignore  the
DSR signal and assume it to be high.

If both DSR and DCD are forced high either by straps in the terminal  cable
or  by  specifying the FORCEDSR=YES and FORCEDCD=YES  statements,  Terminal
Manager  will  not  be  able to detect if a terminal is  switched  off  or  if  a
modem connection is broken.  This situation could cause security  problems
if  the terminal is later switched on before the IDLETIMEOUT period  has
expired.

The following is an example of the use of the FORCEDSR statement :-

  FORCEDSR = YES

The use of the FORCEDSR statement is optional.  If it is omitted, a default
of FORCEDSR=NO is assumed.

The FORCEDCD Statement in the TERMINAL Section

The  FORCEDCD  statement  specifies  whether the DCD  signal  is  to  be
forced  high. The following keyword values may be specified following  the
FORCEDCD= keyword :-

  YES
  NO

The  DSR  and  DCD signals must both be high for  Terminal  Manager  to
consider  that  the  terminal  is still attached  and  online  to  the  computer.
Specifying FORCEDCD=YES effectively causes Terminal Manager to ignore  the
DCD signal and assume it to be high.

The TRMMAN.INI File                              5-37


If both DSR and DCD are forced high either by straps in the terminal  cable
or  by  specifying the FORCEDSR=YES and FORCEDCD=YES  statements,  Terminal
Manager  will  not  be  able to detect if a terminal is  switched  off  or  if  a
modem connection is broken.  This situation could cause security  problems
if  the terminal is later switched on before the IDLETIMEOUT period  has
expired.

The following is an example of the use of the FORCEDCD statement :-

  FORCEDCD = YES

The use of the FORCEDCD statement is optional.  If it is omitted, a default
of FORCEDCD=NO is assumed.

The TOGGLERTS Statement in the TERMINAL Section

The  TOGGLERTS  statement  specifies  whether the RTS  signal  is  to  be
toggled  off  between transmission of data.  The following  keyword  values
may be specified after the TOGGLERTS= keyword :-

  YES
  NO

If  the  TOGGLERTS=YES  statement is specified, the RTS  signal  will  only  be
raised  whenever data is ready to be transmitted and will be  dropped  when
all  data  has been sent.  If the terminal cable has a strap between  RTS  and
CTS,  this toggling of RTS will cause unnecessary interrupts to the  proces-
sor.

If the TermPak module is connected to the port, RTS is always high and the
TOGGLERTS statement is ignored.

The following is an example of the use of the TOGGLERTS statement :-

  TOGGLERTS = NO

The  use of the TOGGLERTS statement is optional. If its is omitted, a  de-
fault  of  TOGGLERTS=NO is assumed and RTS will always be held  high.   This
default is acceptable in the majority of cases where terminals are  connected
directly to the computer or via full-duplex modems.





5-38                              The TRMMAN.INI File


The TOGGLEDTR Statement in the TERMINAL Section

The  TOGGLEDTR  statement  specifies whether the DTR signal  is  to  be
toggled  off  whenever  the  receive  buffer  becomes  full.   The  following
keyword values may be specified after the TOGGLEDTR= keyword :-

  YES
  NO

If the TOGGLEDTR=YES statement is specified, the DTR signal from the compu-
ter may be used as a means of flow control in place of XON/XOFF,  how-
ever,  care should be exercised with this option when using modems,  since
many modems disconnect the line when DTR is dropped.

The following is an example of the use of the TOGGLEDTR statement :-

  TOGGLEDTR = NO

The use of the TOGGLEDTR statement is optional.  If it is omitted, a  de-
fault of TOGGLEDTR=NO is assumed and DTR will always be held high.

The IDLETIMEOUT Statement in the TERMINAL Section

The IDLETIMEOUT statement specifies the timeout in minutes after which
the  terminal  will be logged off if there is no input or output activity  at  the
terminal.  The parameter value following the IDLETIMEOUT= keyword may be
specified  in  the range 0-65535 where 0 represents an infinite  timeout  per-
iod.

The following is an example of the use of the IDLETIMEOUT statement :-

  IDLETIMEOUT = 20

The use of the IDLETIMEOUT statement is optional.  If it is omitted, a de-
fault  value  of 0 is assumed i.e. the terminal will not be logged  off  due  to
inactivity.

The ACTIVATE Statement in the TERMINAL Section

The ACTIVATE statement specifies whether the terminal is to be  activated
automatically when Terminal Manager is started.

The  following  keyword values may be specified after the  ACTIVATE=  key-
word :-

The TRMMAN.INI File                              5-39


  YES
  NO

If  ACTIVATE=YES is specified, Terminal Manager will run the  shell  program
as soon as the terminal is detected as being online.

If ACTIVATE=NO is specified, Terminal Manager ignores the terminal until the
operator  issues  a  command,  via the  TermView  screen,  to  activate  the
terminal.

The  use of the ACTIVATE statement is optional.  If the statement is  omit-
ted, ACTIVATE=YES is assumed.

































5-40                              The TRMMAN.INI File


-------------------------------------------

Chapter 6

The DOS-TERMINAL Feature

-------------------------------------------

The  Terminal  Manager  package includes  the  DOS-TERMINAL  feature
which  allows  a  DOS-based  personal  computer  (PC)  to  be  attached  to
Terminal Manager in place of a standard terminal.  The  DOS-TERMINAL
software  is licensed for use on as many DOS-based PCs as you  require  to
be connected to the host Terminal Manager computer.

On  the host computer running Terminal Manager, the DOS PC  is  defined
as a special terminal type called a DOS-TERMINAL terminal.

On the DOS PC, the TERM.EXE program is used to establish the  connec-
tion to Terminal Manager and allow the PC to function as a terminal.  Once
the  DOS  PC  is connected and operating as a terminal, it  functions  in  all
respects the same as a standard terminal and is able to display colour output
if  an  application  program  uses it and if the PC has  a  colour  screen.   In
addition,  the PC may participate in file transfer operations to and from  the
host Terminal Manager computer.

On   the  slower  4.77  MHz  8088-based  PCs,  screen  functions  such   as
scrolling and updating may appear somewhat slower than a standard  termi-
nal.

-------------------------------------------
6.1  Setting Up The Host Computer For DOS-TERMINAL

To take advantage of the DOS-TERMINAL feature, you must let  Terminal
Manager  on the host computer know that a PC is connected  by  specifying
the   statement  TERMTYPE=DOS-TERMINAL  in  the  [TERMINAL]  section   of   the
TRMMAN.INI  file.   The KBDTYPE= statement may also be used  to  specify
which type of keyboard is attached to the PC being used as a terminal.  The
TERMTYPE=  and  KBDTYPE=  statements and all other parameters  that  may  be
used in the [TERMINAL] section are discussed in detail in section 5.3.

The  TERM.EXE program on the DOS PC uses the standard screen size  of
80 columns by 25 rows, therefore, the DEFAULTROWS=, MAXROWS=, DEFAULTCOLS=
and MAXCOLS= statements should be omitted or should specify these  standard
sizes.

The DOS-TERMINAL Feature                           6-1


The  STATUSLINE= statement has no effect for  DOS-TERMINAL  terminals.
The BAUD=, PARITY=, STOPBITS= and XONXOFF= statements must be set the same
as the corresponding settings on the DOS PC as described below.

DOS-TERMINAL  terminals  always use 8 bits for data  and  therefore  the
DATABITS=  statement should be set to 8 or omitted so that the default of 8  is
assumed.

All other statements in the [TERMINAL] section operate the same as for  stan-
dard terminals.

-------------------------------------------
6.2  Setting Up The DOS PC For DOS-TERMINAL

The  DOS-TERMINAL  feature runs under DOS version 2.0  or  later.   In
addition,  the facility may also be used in OS/2 or Windows  DOS  sessions
with  the  restrictions listed in section 6.3 and in the section  describing  the
BAUD statement.

The DOS-TERMINAL software must first be installed onto the DOS PC by
running the install batch procedure TERMINST.BAT which copies the re-
quired files from the Terminal Manager diskette.  TERMINST.BAT  copies
the files into the current default directory from either drive A: or drive  B:.
The command to run TERMINST.BAT is as follows :-

  n:TERMINST n:

where  n:  is the drive containing the Terminal Manager diskette, that  is  to
say, A: or B:.

The following sample commands create a sub-directory called  TRMTERM
on  drive  C:  and run the TERMINST.BAT procedure  to  copy  the  DOS-
TERMINAL files into that sub-directory :-

  C:         to make drive C: the default drive
  MD \TRMTERM    to create the directory TRMTERM
  CD \TRMTERM    to make the new directory the default
  A:TERMINST A:    to copy the DOS-TERMINAL files

For  local connection to the host Terminal Manager computer, cable type  1
described in appendix C.1 will allow either XON/XOFF or DTR/CTS flow
control  and will also allow Terminal Manager to detect when the DOS  PC
is  turned  off  or the TERM.EXE program is exited.   For  connection  via
modem, cable type 3 should be used between the DOS PC and the modem.

6-2                           The DOS-TERMINAL Feature


6.2.1  Configuring TERM.EXE On The DOS PC

TERM.EXE is configurable in the following ways :-

  '` selection of communication adapter
  '` line speed or baud rate
  '` type of parity checking
  '` number of stop bits
  '` method of flow control or pacing
  '` colour or monochrome display operation
  '` script strings for issuing modem commands

TERM.EXE assumes certain defaults for the above options.  These defaults
may be overridden by statements contained in the TERM.EXE initialisation
file  TERM.INI.   TERM.EXE  reads the TERM.INI file  on  loading  and
configures itself to operate accordingly.  If TERM.INI is not found, all  the
defaults are assumed.

TERM.INI  is an ASCII format text file and may be inspected  or  modified
by  using the DOS editor, EDLIN, or any other text editor or word  proces-
sor  able  to  handle  ASCII text files.   Alternatively,  since  TERM.INI  is
usually  a very small file, it may be created by typing its contents using  the
DOS COPY command :-

  COPY CON TERM.INI
  ... data ...<ENTER key>
      .
  ... data ...<ENTER key>
  <F6 function key>
  <ENTER key>

TERM.INI is structured in the standard format of .INI files.  It has a single
section  starting with a keyword enclosed in square brackets -  [DOS-TERMI-
NAL].  Following the section keyword are a number of statements each start-
ing  with  a keyword followed by a parameter value.  The file  may  contain
comment  lines  starting  with the ';' character; anything  following  the  ';'
character  on any line of the file is treated as a comment and is not used  by
TERM.EXE.    Blank lines are ignored and may be inserted to aid readabil-
ity.

The format of the DOS-TERMINAL section is described below. The  key-
words  representing  each statement in the section may be given in  any  de-
sired order.


The DOS-TERMINAL Feature                           6-3


[DOS-TERMINAL]

  ADAPTER=  specifies the communication adapter to be used
  BAUD=    specifies the baud rate
  PARITY=  specifies the type of parity checking to be used
  STOPBITS=  specifies the number of stop bits
  XONXOFF=  specifies  whether XON/XOFF flow control is to be  used
          for   communication  with  the  host   Terminal   Manager
          computer
  DISPLAY=  specifies whether the DOS PC is to operate as a colour  or
          a monochrome terminal
  MODEM=   specifies  a  script  string for initialising  a  modem  when
          TERM.EXE is loaded
  F1=    specifies a script string which is interpreted whenever  the
          F1 key is pressed immediately after TERM.EXE is loaded
  F2=    specifies a script string which is interpreted whenever  the
          F2 key is pressed immediately after TERM.EXE is loaded
  F3=    specifies a script string which is interpreted whenever  the
          F3 key is pressed immediately after TERM.EXE is loaded
  F4=    specifies a script string which is interpreted whenever  the
          F4 key is pressed immediately after TERM.EXE is loaded

The following sections describe each of the above keywords in detail.

The ADAPTER Statement in the DOS-TERMINAL Section

The  ADAPTER statement specifies which of the two communication  adap-
ters is to be used by TERM.EXE.  The following keyword parameters  may
be specified after the ADAPTER keyword.

  COM1    specifies the standard COM1 port at address 3F8 (hexade-
          cimal) using the IRQ4 interrupt level.
  COM2    specifies the standard COM2 port at address 2F8 (hexade-
          cimal) using the IRQ3 interrupt level.

The following is an example of the use of the ADAPTER statement :-

  ADAPTER = COM1

If  the  ADAPTER  statement is omitted, a default  of  ADAPTER=COM1  is  as-
sumed.




6-4                           The DOS-TERMINAL Feature


The BAUD Statement in the DOS-TERMINAL Section

The  BAUD statement informs TERM.EXE of the baud rate to be used  for
communication with the host Terminal Manager computer.  The  parameter
following the BAUD= keyword may be one of the following :-

  56000, 38400, 19200, 9600, 7200, 4800, 3600, 2400, 2000, 1800,
  1200, 600, 300, 150, 134, 110, 75, 50.

On 4.77 MHz 8088-based PCs, selecting a baud rate above 9600 may cause
data  characters  to  be lost during transmission or  reception;   a  maximum
rate of 9600 should be specified for these types of PC.

When  running  in  an OS/2 or Windows DOS session,  the  range  of  baud
rates available is restricted e.g.  a 6MHz IBM PC-AT supports a  maximum
of  4800  baud  while  a  16MHz IBM  PS/2  Model  55SX  will  support  a
maximum  of 9600 baud.  If the TERM.EXE program emits low  frequency
warning  beeps, this is an indication that errors are being detected  probably
due to characters arriving too fast.

The following is an example of the use of the BAUD statement :-

  BAUD = 1200

The  use  of the BAUD statement is optional.  If the statement is  omitted  a
default of 9600 is assumed.

The PARITY Statement in the DOS-TERMINAL Section

The PARITY statement informs TERM.EXE of the type of parity  checking
to be used for communicating with the host Terminal Manager computer.

The following keyword values may follow the PARITY= keyword :-

  EVEN    specifies that even parity checking is to be used
  ODD    specifies that odd parity checking is to be used
  NONE    specifies that no parity bit is to be added to characters
  ZERO    specifies  that  a bit with the value zero is to  be  added  to
          characters
  ONE    specifies  that  a bit with the value one is to  be  added  to
          characters

The following is an example of the use of the PARITY statement :-


The DOS-TERMINAL Feature                           6-5


  PARITY = NONE

The  use of the PARITY statement is optional.  If the statement  is  omitted,
PARITY=NONE is assumed.

The STOPBITS Statement in the DOS-TERMINAL Section

The  STOPBITS statement informs TERM.EXE of the number of  stop  bits
to  be used for communicating with the host Terminal  Manager  computer.
The values 1 or 2 may be specified.

The following is an example of the use of the STOPBITS statement :-

  STOPBITS = 1

The  use  of the STOPBITS statement is optional.  If the statement  is  omit-
ted, a default value of 1 is assumed.

The XONXOFF Statement in the DOS-TERMINAL Section

The XONXOFF statement specifies whether XON/XOFF flow control is  to
be enabled.

If   XONXOFF=YES   is   specified,  XON/XOFF  flow  control   is   used   and
TERM.EXE  does not require any RS232 signal level to be present  on  the
Clear  To  Send (CTS) line before it will communicate with the  host.   The
Data Terminal Ready (DTR) signal is held permanently high.

If  XONXOFF=NO  is specified, TERM.EXE requires CTS to be high  before  it
sends any data to the host Terminal Manager computer.  The DTR signal is
held  high  until TERM.EXE wishes to stop the flow of data from  the  host
computer.

For  both  options,  the  Data Carrier Detect  (DCD)  and  Data  Set  Ready
(DSR) signals at the DOS PC end are not used by TERM.EXE and Request
To Send (RTS) is held permanently high.

The following is an example of the use of the XONXOFF statement :-

  XONXOFF = YES

The  use of the XONXOFF statement is optional.  If the statement  is  omit-
ted, XONXOFF=YES is assumed.


6-6                           The DOS-TERMINAL Feature


The DISPLAY Statement in the DOS-TERMINAL Section

The  DISPLAY statement informs TERM.EXE whether to identify itself  to
the host Terminal Manager system as a monochrome or a colour terminal.

The  following  parameter keywords may be specified  after  the  DISPLAY=
keyword :-

  MONOCHROME   specifies  that  TERM.EXE  will identify  itself  as  a
            monochrome  display.   Even  if the DOS  PC  has  a
            colour   display,  TERM.EXE  will  set  the   display
            adapter into monochrome-compatible mode to make it
            operate   similar  to  a  monochrome  display.    Most
            colour  display adapters are unable to  display  under-
            lined characters in monochrome-compatible mode and
            underlined  characters  will  usually  be  displayed  in
            blue instead.

  COLOR      specifies  that  TERM.EXE  will identify  itself  as  a
            colour  display.   If the DOS PC has  a  monochrome
            display,  TERM.EXE  will override  this  setting  and
            identify itself as a monochrome display.

Character display attributes are treated differently by Terminal Manager for
the  two  types  of display.  If the host application  is  written  according  to
OS/2 design recommendations, it should test the type of display and use the
appropriate  colour or monochrome attribute bit settings.  If a  monochrome
display  is  specified  for a terminal, the host  Terminal  Manager  software
performs  a  translation  into monochrome for any  colour  attributes  that  a
program  may issue.  If a colour display is specified for a terminal,  Termi-
nal  Manager  will  not  perform any  translation  and  the  application  will
appear the same on the terminal as on the host computer's colour screen.

Because  of  the relatively slow speed of the  RS232  communications  line,
some  applications working in colour may appear to operate  differently,  in
respect   of   screen   handling,  when  run  on   a   colour   terminal   using
TERM.EXE.  If this occurs, it is worthwhile setting TERM.EXE to operate
in monochrome mode to determine if it is preferable to the colour mode.

The use of the DISPLAY statement is optional.  If the statement is omitted,
a  default  is  assumed  based  on the type  of  display  adapter  detected  by
TERM.EXE.



The DOS-TERMINAL Feature                           6-7


The MODEM Statement in the DOS-TERMINAL Section

The  MODEM  statement  defines a script string  which  is  interpreted  just
once immediately after TERM.EXE loads.

The  MODEM  script  string is normally used to send  an  initialisation  se-
quence  to  an  attached modem and might possibly also  include  a  dialling
sequence for automatically accessing the host Terminal Manager computer.

Script  strings are described in section 6.2.2 below together  with  examples
of their use.

The F1, F2, F3 and F4 Statements in the DOS-TERMINAL
                                     Section

The  F1, F2, F3 and F4 statements define script strings which are  interpre-
ted  whenever  the  associated function key is  pressed  prior  to  connection
being established with the host Terminal Manager computer.

The  script  strings might be used to hold the modem  commands  for  auto-
dialling host computers.

The  function  key  retains  the  script  string  for  subsequent  presses  until
connection  is  made with the host Terminal Manager  computer;   once  the
connection is established, the function key becomes controlled by the appli-
cation  running  at the host and can no longer generate the script  string.   If
the host connection is broken, the TERM.EXE program must be exited and
re-entered if access to one of the script strings is required.

Script  strings are described in section 6.2.2 below together  with  examples
of their use.

6.2.2  Script Strings

Script  strings  are designed to hold  frequently-used  modem  configuration
and dialling commands.

The following statements in the TERM.INI file define script strings :-

  MODEM= defines the script used after TERM.EXE loads
  F1=  defines the script used when the F1 key is pressed
  F2=  defines the script used when the F2 key is pressed
  F3=  defines the script used when the F3 key is pressed
  F4=  defines the script used when the F4 key is pressed

6-8                           The DOS-TERMINAL Feature


Each statement keyword is followed by the script string, delimited by single
or  double quotes.  Each script string may be up to 80 characters in  length.
The  start  and end delimiter of the string must be the same i.e.  if  it  starts
with  a  single  quote, it must end with a single quote.  If one  of  the  quote
characters  is  required in the string, the string must be delimited  using  the
other quote character.

The   MODEM=   script   string   is  sent  to   the   modem   immediately   after
TERM.EXE loads and may be used to initialise a modem and possibly issue
the command to dial the host computer.

The F1=, F2=, F3= and F4= script strings are sent to the modem whenever the
operator presses the corresponding function key i.e. F1 through F4.   These
function  key  script  strings may be used  to  contain  modem  initialisation
strings  or  possibly alternate host computer telephone  numbers.  The  four
function key script strings are only available until connection is  established
with the host computer, thereafter, keystroke scan codes are sent to the host
Terminal Manager computer whenever the keys are pressed.

Some  modems require command strings to be in upper case characters  and
you should ensure that the text in the script string is in the correct case.

The less than character, <, has special significance in the script strings and
instructs  TERM.EXE to send a CR character (decimal 13) to  the  modem.
The  CR  character  simulates  the pressing of the ENTER  key  on  the  PC
keyboard.

In addition to the text to be sent to the modem, each script string may con-
tain  script  commands enclosed within brace characters, {...}.   The  script
commands  are interpreted by TERM.EXE as the script string is  processed.
All  script  commands  must  be in upper  case  characters.   The  following
script commands are currently available :-

  {DELAY nnn}  instructs  TERM.EXE  to  introduce  a  delay  in  the
            sending  of  data  to  the modem.   The  delay  nnn  is
            expressed  in  tenths of a second.  If  nnn  is  omitted,
            i.e.  if  the  command {DELAY} is used,  a  delay  of  1
            second will be introduced.

  {ECHO CHECK}  instructs  TERM.EXE to wait for the modem to  echo
            each character before the next one is sent.

  {ECHO SUPP}  operates the same as {ECHO CHECK} but also suppresses
            display of the echoed characters.

The DOS-TERMINAL Feature                           6-9


  {ECHO NORMAL}  resets the effect of any previous ECHO command i.e.
            TERM.EXE will not wait for the modem to echo and
            will display everything echoed from the modem.

  {LB}      instructs TERM.EXE to send the left brace character,
            {, to the modem.  The left brace character itself  may
            not  be part of the script string since it is  reserved  as
            the start delimiter of a script command.

  {RB}      instructs TERM.EXE to send the right brace  charac-
            ter, }, to the modem.  The right brace character itself
            may not be part of the script string since it is reserved
            as the end delimiter of a script command.

  {LT}      instructs TERM.EXE to send the less than  character,
            <,  to  the modem.  The character itself may  not  be
            part of the script string since it instructs  TERM.EXE
            to send the CR character.

  {MODE <speed>,<parity>,<databits>,<stopbits>}

          allows  dynamic  reconfiguration of  the  communica-
            tions  adapter.  <speed> is any of the  valid  baud  rate
            values. <parity> may be one of the following :-

            N no parity
            O odd parity
            E even parity
            0 parity bit forced to 0
            1 parity bit forced to 1

          <databits>  may be set to 7 or 8.  <stopbits> may  be
            set to 1 or 2.

          The  facility  is included to  overcome  problems  that
            may  arise when accessing the host computer  through
            some  X25 PADs (packet assembler/disassembler)  or
            through  dial-up  nodes to other wide  area  networks.
            Many PADs operate with a default configuration of 7
            data  bits  and even parity  while  Terminal  Manager
            systems  usually operate with 8 data bits and  no  par-
            ity.   The  MODEM=  statement  in  the  TERM.INI   file
            could  include  a MODE command  to  configure  the
            adapter  to  suit the PAD; one of the F1  through  F4

6-10                           The DOS-TERMINAL Feature


            statements  could  contain  the  MODE  command  to
            configure for the host.  The operator could then press
            the  relevant  function key as soon as  the  connection
            with the host is made.

The following are examples of the use the script-related statements  contain-
ing a mix of text and script commands.

  MODEM = "ATV0<ATE0<{DELAY 5}ATD7148869152"
  F1 = "ATD 714 886 9152<"
  F2 = "{MODE 2400,N,8,1}"


-------------------------------------------
6.3  Using TERM.EXE On The DOS PC

TERM.EXE  is started by typing the command TERM while in  the  directory
into which the DOS-TERMINAL files were installed.

TERM.EXE  expects  to read the file TERM.PAR from  the  current  direc-
tory.   If  TERM.PAR is not found, the program terminates  with  an  error
message.

TERM.EXE  then  tries  to read the initialisation file  TERM.INI  from  the
current  directory.   If  the file is not found, all the default  settings  are  as-
sumed.

After  loading  and  reading the two files, TERM.EXE  displays  its  signon
message.    On  a  colour  display,  the  signon  message  will  be  white   if
DISPLAY=MONOCHROME was specified or green if DISPLAY=COLOR was specified.

If  the DOS PC is locally connected to the host Terminal  Manager  compu-
ter,  TERM.EXE connects to the host and is ready for use.  If the  terminal
has  been activated (see section 4.2.3.1) the signon message will be  cleared
after a second or so and the shell program screen will appear.

If  the  DOS PC is connected via a modem, the modem  command  may  be
directly typed to dial the host computer telephone's number.  Alternatively,
the  dial  command can be set in the MODEM statement of  the  TERM.INI
file and is then sent immediately TERM.EXE loads.  Another alternative  is
to  set the dial command in one of the F1, F2, F3 or F4 statements  so  that
the dial command is sent to the modem when the operator presses the  asso-
ciated function key.


The DOS-TERMINAL Feature                           6-11


If  the DOS PC has lights on the keyboard showing the status of  the  NUM
LOCK,  CAPS LOCK and SCROLL LOCK keys, these lights  will  always
accurately   reflect  the  shift  lock  status  being  maintained  by   Terminal
Manager for the terminal.

All  keystrokes entered at the DOS PC are sent to the host  Terminal  Man-
ager  computer with the exception of the key combinations used for  exiting
back to DOS :-

  CTRL+ALT+END
  CTRL+ALT+ENTER
  CTRL+ALT+BS

CTRL+ALT+END  is treated by TERM.EXE as the command to drop the  RS232
signals  and exit back to DOS.  If the correct cable type is used (cable  type
1),  the  effect  of dropping these signals will  cause  Terminal  Manager  to
terminate  any processes running at the terminal and the  TermView  screen
will  display the Offline status.  If the DCD and the DSR signals are  strap-
ped  high  at  the host, or if the FORCEDCD=YES  and  FORCEDSR=YES  statements
have been specified in the TERMINAL section of TRMMAN.INI, the  host
will  not  detect TERM.EXE exiting and will therefore leave  all  processes
running for that terminal.

CTRL+ALT+ENTER  is  an  alternative key sequence for  CTRL+ALT+END  and  per-
forms in exactly the same way.

CTRL+ALT+BS  causes  TERM.EXE to exit back to DOS after first  sending  a
special  control sequence to the host to tell it to terminate all  processes  for
that  terminal.   This way of exiting is useful if the DCD  and  DSR  signals
are strapped high at the host, or if FORCEDCD=YES and FORCEDSR=YES are speci-
fied.   Exiting  using  this key sequence ensures that  the  all  processes  are
properly closed.

I_M_P_O_R_T_A_N_T___N_O_T_E_:_  For the reasons described below,  if  TERM.EXE
does not connect with the host computer, it is operating in ASCII  keystroke
mode instead of scan code keystroke mode.  In this situation, the  following
key  combination  must  be  used to exit from  the  program  instead  of  the
CTRL+ALT key combinations described above :-

  CTRL+END

As  a general rule, try exiting using CTRL+ALT key combinations  and  if
this fails, use the CTRL+END combination.


6-12                           The DOS-TERMINAL Feature


If  the  DOS PC is locally attached to the host, running  TERM.EXE  again
after  exiting  will normally cause the shell program to appear  at  the  DOS
PC.   However, if the DCD and DSR signals are strapped high at  the  host,
or  if  the FORCEDCD=YES and FORCEDSR=YES statements have been  specified  in
the  TERMINAL  section  of TRMMAN.INI, Terminal  Manager  will  not
have  terminated the programs previously running on your terminal  (unless
you  exited using CTRL+ALT+BS).  In this situation, TERM.EXE will  connect
directly  into  the  previously  active session.  To force  a  redisplay  of  the
screen data immediately after coming back into TERM.EXE, the  following
key combination must be pressed :-

  CTRL+HOME

This key sequence will normally force a redisplay of session 0 of your pre-
viously  active  group  of sessions and you may  then  switch  to  whichever
session you wish to interact with.

Use  of the CTRL+HOME key sequence also ensures that  TERM.EXE  is
sending scan codes to the host for each keystroke rather than ASCII  charac-
ters.   When TERM.EXE is loaded, it is designed to send  ASCII  keystroke
codes  to  allow  the  operator to issue  dialling  commands  to  an  attached
modem.   When  the host connection is made, Terminal  Manager  then  in-
structs  TERM.EXE  to send scan codes for each keystroke.   If  you  come
back  into a previously active session by re-entering TERM.EXE,  the  host
software   does   not  know  that  you  have  exited  and   come   back   into
TERM.EXE  and  will  not  properly  recognise  the  keystrokes  until   the
CTRL+HOME key combination is pressed.

If  TERM.EXE is running in an OS/2 or Windows DOS Session, the  alter-
nate  key  sequences below may be used to switch between sessions  on  the
host computer :-

  CTRL+ALT+LEFTSHIFT instead of CTRL+ESC
  CTRL+ALT+RIGHTSHIFT instead of ALT+ESC

The  alternate key sequences leave the original key sequences  available  for
switching between sessions on the PC on which the TERM.EXE program is
running.







The DOS-TERMINAL Feature                           6-13


-------------------------------------------
6.4  Terminal Printing Using TERM.EXE

The TERM.EXE program supports the use of printers attached to the  DOS
PC as destination printers for the Printer Management System (the PMS).

At  the host side, the printer is defined in exactly the same way as a  printer
attached  to  a  standard terminal.  Chapter 7 describes  the  PMS  and  how
printers are configured.

The  TERM.EXE  program drives the printer via the  BIOS-level  routines.
This  means  that  printer  redirection  can  be  performed,  using  the  DOS
MODE  command,  to  allow use of parallel or serial  ports  for  printer  at-
tachment to the PC.

The  Print  Screen key operates under the control of the PMS.   The  screen
data  is therefore not necessarily printed on the printer attached to  the  PC.
Instead,  it  is routed to whichever printer is assigned to  that  terminal.   In
most  cases, this will actually be the attached printer, however, you  should
be aware that it depends upon the printer configuration set in PMS.INI.

-------------------------------------------
6.5  File Transfer

TERM.EXE  allows the DOS PC to be involved in file  transfer  operations
with  the  host Terminal Manager computer.  Two  file  transfer  commands
are present on the host :-

  UPLOAD   transfers files from the DOS PC to the host
  DOWNLOAD  transfers files from the host to the DOS PC

Both  commands may be run from the command line, from a  .CMD  batch
file  or  as  child processes from a user-written  application  program.   The
programs return a completion code of 0 if the transfer was successful or  10
if an error occurred.  The completion code may be tested in a .CMD file by
the 'IF ERRORLEVEL' batch instruction e.g.

  UPLOAD PEOPLE.DAT
  IF ERRORLEVEL 1 GOTO COMERR
  ECHO File transfer OK
  GOTO QUIT
  :COMERR
  ECHO **** File Transfer Error ****
  :QUIT

6-14                           The DOS-TERMINAL Feature


While  file transfer is in progress, the keyboard of the DOS PC  is  disabled
and the user is not able to switch to any other session running on the termi-
nal.   Additionally,  file transfer may only be started  from  the  foreground
session  and  an  error message will result if run  in  a  background  session
(presumably from a .CMD file or a user-written program).

If terminal printing is in progress when file transfer is started, it is  suspen-
ded until the file transfer completes.

UPLOAD  and DOWNLOAD are able to transfer any file whether it  be  in
text  format  or  binary format.  The correct file length is  preserved  at  the
receiving end.

In  order to avoid communication errors, the baud rate must be set  to  1200
or  higher.   In addition, the RXBSZ statement in the PORT section  of  the
TRMMAN.INI  file should specify at least 300 bytes for the receive  buffer
size :-

  [PORT]
    .
    RXBSZ = 300
    .

You  should  omit the RXBLO and RXBHI statements and  allow  Terminal
Manager to select the appropriate defaults.  Section 5.2 discusses the use of
the RXBSZ, RXBLO and RXBHI statements.

Although  file transfer may perform correctly if lower values  are  specified
for RXBSZ, errors may not become apparent until the host system becomes
busy as a result of other terminal activity.

The  load caused by file transfer on the host processor may be decreased  if
the host communication adapter to which the DOS PC is connected employs
the  buffered  16550A communication chip.  In this case, the  TXFIFO  and
RXFIFO  statements in the PORT section of TRMMAN.INI may be  set  to
their maximum values :-

  [PORT]
    .
    TXFIFO = 16
    RXFIFO = 14
    .

Section 5.2 discusses the use of the TXFIFO and RXFIFO statements.

The DOS-TERMINAL Feature                           6-15


6.5.1  The UPLOAD Program

The  UPLOAD  program transfers a file from the DOS PC's  local  disk  or
diskette to a host system disk or diskette.

The command format is :-

  UPLOAD <dos file> { <host file> }

<dos  file> specifies the name of a file on the DOS PC and may be  a  fully
qualified  path  and  file name.  If just a file name is  specified,  the  file  is
searched for in the current default drive and directory of the DOS PC.

<host file> is an optional parameter which specifies the name of the file  to
be  created on the host Terminal Manager system.  It may be a  fully  quali-
fied path and file name.  If just a file name is specified, the file is created in
the  host's current default drive and directory.  If just a drive  and/or  direc-
tory  name  is  specified, a file with the same name as the  DOS  PC  file  is
created  in  that location.  If the parameter is omitted, a file  with  the  same
name  as the DOS PC file is created in the host's current default  drive  and
directory.

6.5.2  The DOWNLOAD Program

The DOWNLOAD program transfers a file from a host system disk or dis-
kette to the DOS PC's local disk or diskette.

The command format is :-

  DOWNLOAD <host file> { <dos file> }

<host  file>  specifies the name of a host file and may be a  fully  qualified
path  and file name.  If just a file name is specified, the file is searched  for
in the host's current default drive and directory.

<dos  file> is an optional parameter which specifies the name of the file  to
be  created on the DOS PC.  It may be a fully qualified path and file  name.
If  just a file name is specified, the file is created in the DOS  PC's  current
default  drive and directory.  If just a drive and/or directory name is  speci-
fied  ending with : or \, a file with the same name as the host file is  created
in  that location.  If the parameter is omitted, a file with the same  name  as
the host file is created in the DOS PC's current default drive and directory.



6-16                           The DOS-TERMINAL Feature


-------------------------------------------

Chapter 7

Printer Management System

-------------------------------------------

This chapter describes the Terminal Manager Printer Management System
- the PMS.  The PMS may be installed as an optional component of Termi-
nal  Manager to control the routing of print data from application  programs
to printers attached to the terminals.

The  OS/2  print  spooler may continue to be used for  control  of  printers,
such  as LPT1, attached to the host PC system.  The PMS operates  outside
of  the  scope of the OS/2 spooler and controls printers attached  directly  to
terminals.

The  PMS provides for peer-to-peer printing, allowing print jobs  generated
at  any terminal, or at the host, to be printed on any terminal-attached  prin-
ter in the system.  The method of sending data to the terminal printers is  to
multiplex  print  data with screen and keyboard data so that printing  can  be
performed concurrently with normal terminal operation.

By  default, the PMS is loaded at Terminal Manager start time but  may  be
disabled  by placing the following statement in the SYSTEM section  of  the
TRMMAN.INI file :-

  PMS = NO

The  configuration of the PMS is controlled by statements contained  in  the
PMS.INI file.

After initial installation, as described in chapter 3, a single printer is  confi-
gured   for   the  single  terminal  defined  by  the   installation   procedure.
PMS.INI may subsequently be modified to suit your specific configuration.

The following section discusses the PMS.INI file.







Printer Management System                           7-1


-------------------------------------------
7.1  The PMS.INI File

The  initialisation  file PMS.INI provides the Printer  Management  System
with  the  information it requires to initialise itself for  your  chosen  printer
configuration.

PMS.INI  must be located in the directory reserved for  Terminal  Manager
i.e.  its  full path name must be \TRMMAN\PMS.INI on  the  boot  drive.
The  file is read by the PMS programs when Terminal Manager  is  started.
The  file is an ASCII format text file and may be inspected or  modified  by
using  the  OS/2  system  editor E.EXE or any  other  text  editor  or  word
processor able to handle ASCII text files.

PMS.INI  is  structured  in the standard format of .INI files.   It  is  divided
into  a number of sections each starting with a keyword enclosed  in  square
brackets '[.....]'.  Within each section a number of statements are specified,
each starting with a keyword followed by a parameter value.  The file  may
contain  comment  lines starting with the ';'  character;  anything  following
the  ';'  character on any line of the file is treated as a comment and  is  not
used  by  the  PMS.    Blank lines are ignored and may  be  inserted  to  aid
readability.

Each  of the sections in the file define a printer attached to a terminal.   The
sections start with the PRINTER keyword :-

  [PRINTER]

Statements  describing  the printer characteristics follow on  lines  after  the
keyword and are described in the following section.

-------------------------------------------
7.1.1  The PRINTER Sections Of PMS.INI

The  PRINTER sections describe each of the individual printers to  be  con-
trolled by the PMS.  The PMS.INI file will contain a PRINTER section for
each printer to be controlled by the PMS.

Each PRINTER section assigns a logical printer number and describes var-
ious characteristics and parameters of a printer.

Each  PRINTER  section  is in the format described  below.   The  keyword
statements  within  each  PRINTER  section may be  given  in  any  desired
order.

7-2                           Printer Management System


[PRINTER]

  PRINTERNO=   assigns a logical printer number to the printer

  TERMNO=    specifies  the terminal number to which the printer  is
            attached

  SPEED=     specifies  the printing speed of the printer  in  charac-
            ters per second

  LATENCY=    specifies  the frequency with which data will  be  sent
            to the printer

  BUFSZ=     specifies  the  size  of the buffer  to  be  allocated  for
            holding printer data

  BUFLO=     specifies  the  low  threshold  of  the  buffer   holding
            printer data

  DRIVER=    specifies  the name of the printer driver  program  for
            handling output to the printer

  FORMFEED=    specifies how form feed should be handled at the  end
            of a print job

The following sections describe each of the above keywords in detail.

The PRINTERNO Statement in the PRINTER Section

The  PRINTERNO statement assigns a logical printer number to  a  printer.
The  logical  printer number must be unique within the  computer  or  Local
Area Network environment.  The value may be in the range 1 through 999.
The  logical printer number is used to reference the printer in  certain  PMS
utility  commands  and in PMS API  (Application  Programming  Interface)
calls.

The following is an example of the use of the PRINTERNO statement :-

  PRINTERNO = 28

The PRINTERNO statement must be specified for each PRINTER section.




Printer Management System                           7-3


The TERMNO Statement in the PRINTER Section

The TERMNO statement specifies the logical terminal number to which the
printer  is  connected.   The  logical terminal number  is  that  defined  in  a
TERMINAL  section  of  the  TRMMAN.INI  file.   The  following  is   an
example of the use of the TERMNO statement :-

  TERMNO = 10

The use of the TERMNO statement is mandatory.

The SPEED Statement in the PRINTER Section

The SPEED statement informs the PMS of the speed of an attached printer.

The value following the SPEED keyword represents the number of  charac-
ters  per second able to be printed by the printer.  The value may be  in  the
range 1 through 65534.

The SPEED value allows the PMS to optimise output to the printer to avoid
potential  temporary  lock-out  of the screen and  keyboard  sections  of  the
terminal.   If you suspect that lock-out is occurring, you should  reduce  the
SPEED value.  In general, you should set the SPEED value to less than  the
characters-per-second  rate quoted in your printer documentation  since  this
figure  is  usually  a best-case figure.  Dot matrix  printers  usually  operate
close to the quoted rate although the speed of feeding lines and page-throws
can  reduce  the  rate.  Daisy-wheel printers are extremely  variable  in  the
throughput  rates achieved.  Ideally, you should arrive at a SPEED  rate  by
timing a sample print job representing the typical use of the printer.

The  SPEED  and  LATENCY statements may be used  to  juggle  the  best
terminal performance.  Additionally, the baud rate of the terminal set in the
TRMMAN.INI file is also a consideration.  If you do not want to  concurr-
ently print and operate the terminal, you could set SPEED to the  maximum
and  LATENCY  to some large value that reflects the  printer's  buffer  size
and  the print speed.  Then you can be sure that you are driving the  printer
flat-out,  however,  keyboard responsiveness will suffer since  the  terminal
will  probably frequently invoke flow-control to halt the flow of  data  from
the host.

If  you want responsive keyboard operation you could set LATENCY  to  1
and  reduce the SPEED to a point where the printer is pausing very  slightly
between bursts of printing.


7-4                           Printer Management System


The following is an example of the use of the SPEED statement :-

  SPEED = 200

The use of the SPEED statement is mandatory.

The LATENCY Statement in the PRINTER Section

The   LATENCY  statement  specifies  the  frequency  at  which   Terminal
Manager  will send data to a terminal-attached printer.  The latency time  is
specified in one-tenths of a second.

Data  is sent to printers in small packets interspersed with   terminal  screen
data thus allowing the terminal operator to continue normal operation  while
a  job prints on the terminal printer.  The maximum amount of data sent  to
the printer will never exceed the number characters per second specified  in
the  SPEED  statement, however, the data is not sent all in  one  burst  each
second.   Instead,  the number of characters per second is divided  over  the
latency period so that the printer is fed a regular number of data bursts  that
will equal the characters per second rate specified in the SPEED statement.

As  an  example, the following statement specifies a latency  period  of  one
fifth of a second :-

  LATENCY = 2

If  the SPEED statement specified 200 characters per second, the  effect  of
the  above statement would cause approximately 40 characters to be sent  to
the printer every fifth of a second.

The  best choice of the latency setting depends on a combination  of  printer
speed,  line speed and the printer's internal buffer size.  In  addition,  some
terminals  are  better designed for keyboard operation during  printing  than
others.   In  general,  the smaller the latency period, the  smoother  will  be
keyboard and screen operations, unless the printer is a relatively high speed
device.

The  latency  period  may be specified in the range 1 through  600  i.e.  one
tenth of a second though to 60 seconds.

The use of the LATENCY statement is optional and, if omitted, a default of
1 is assumed i.e. one tenth of a second.



Printer Management System                           7-5


The BUFSZ Statement in the PRINTER Section

The BUFSZ statement specifies the size of the buffer allocated internally by
the  PMS  for servicing the printer.  Each terminal-attached printer  has  its
own buffer allocated.  The value is specified in number of bytes and may be
256 through to 8192.

The  buffer  smooths out disk reads and prevents pauses  in  printing  while
data is fetched from the disk.

The following is an example of the use of the BUFSZ statement :-

  BUFSZ = 1512

The  BUFSZ  statement  is optional and, if omitted, a default  size  of  1024
bytes is assumed.  Generally,  the default value is acceptable and increasing
the  value  is only of benefit if the printer is a relatively  high  speed  device
and  the terminal is to be dedicated exclusively to printing while  print  jobs
are being output.

The BUFLO Statement in the PRINTER Section

The BUFLO statement is used in conjunction with the BUFSZ statement  to
specify the point at which further data will be read from disk into the buffer
allocated  for  that printer.  BUFLO is specified in terms of the  number  of
bytes remaining in the buffer.

The BUFLO statement may be set according to printer speed and the corre-
sponding BUFSZ statement to ensure a smooth flow of data to the printer.

The following is an example of the use of the BUFLO statement :-

  BUFLO = 100

The  values  specified  by  the  BUFLO statement may  be  in  the  range  0
through to the value specified in the BUFSZ statement.

The  use  of  the BUFLO statement is optional and, if  omitted,  a  value  of
BUFSZ divided by 8 is assumed.

As with the BUFSZ statement, the default value is acceptable for the major-
ity of installations.



7-6                           Printer Management System


The DRIVER Statement in the PRINTER Section

The  DRIVER  statement specifies the print driver program to  be  used  for
formatting output to the printer.

The driver program is a dynamic link library and must be accessible in  one
of  the  directories  named in the  LIBPATH  statement  in  CONFIG.SYS,
although  by  convention,  PMS print drivers are  held  in  the  \TRMMAN
directory on the boot drive.

The parameter following the DRIVER keyword is the name of the  dynamic
link  library.   The  print driver dynamic link library must  have  the  .DLL
extension,  however,  the  .DLL extension is not required  in  the  DRIVER
statement.

The following is an example of the use of the DRIVER statement :-

  DRIVER = PMSXPAR

Use  of the DRIVER statement is optional.  If the statement is  omitted,  the
PMSNULL driver is assumed.

Print drivers are intended to be targeted for specific terminal/printer  confi-
gurations.  This is because the driver must ensure that the print data  stream
does  not contain any control code that could be erroneously interpreted  by
the terminal before the terminal passes it to the printer.

Two general-purpose print drivers are supplied with Terminal Manager :-

  PMSNULL  The  PMSNULL  driver converts  non-displayable  ASCII
          characters   to  spaces  to  preserve  the  integrity  of   the
          communications link between the host and the terminal.

  PMSXPAR  The  PMSXPAR  driver  passes  all  data  through  to  the
          terminal  allowing an application to  send  printer-specific
          escape sequences e.g. for bold or condensed print.  If you
          use  the  PMSXPAR  driver, and XON/XOFF  is  set  for
          flow-control      in     the     TERMINAL     section      of
          TRMMAN.INI,  you  should ensure that the  data  stream
          going  to the printer does not contain the XON  or  XOFF
          characters  (11  hex  and 13 hex)  which  might  upset  the
          communications link between the host and the terminal.



Printer Management System                           7-7


PMS  print  drivers  are designed to be implemented  independently  of  the
base  PMS  by either users, suppliers or third-party software  houses.   The
structure  and  implementation  of  drivers  is  very  straightforward  for   a
competent   'C'  programmer.   The  Terminal  Manager  -   Programmer's
Toolkit describes how to write a print driver.

I_M_P_O_R_T_A_N_T__N_O_T_E_:_  PMS print drivers are not the same architecture  as
Presentation  Manager  printer drivers and the two types of driver  may  not
be interchanged.

The FORMFEED Statement in the PRINTER Section

The FORMFEED statement informs the print driver how form feed  should
be treated at the end of each print job.

The  following  parameter keywords may be specified after  the  FORMFEED=
keyword :-

  NONE    specifies that no form feed character is added at the end of
          a  print  job.  Any form feed characters embedded  in  the
          print data by the application will of course be printed.

  COMPULSORY specifies that a form feed character is always added at  the
          end of a print job.

  CONDITIONALspecifies that a form feed is added if no form feed charac-
          ter  is detected in the last two bytes of the print job.   If  a
          form  feed is detected in the last two bytes, no  form  feed
          character is added.

Whether  or  not  a form feed is added to the print job,  the  standard  PMS
print drivers PMSNULL and PMSXPAR always add a final carriage  return
character to ensure that the next print job starts at column 1.

The following is an example of the use of the FORMFEED statement :-

  FORMFEED = CONDITIONAL

If the FORMFEED statement is omitted, FORMFEED=CONDITIONAL is assumed.






7-8                           Printer Management System


-------------------------------------------
7.2  The PMS Print Devices

When  Terminal  Manager and the PMS are running, six  additional  printer
device  names  are  made available to supplement  the  standard  OS/2  print
devices  LPT1,  LPT2  etc.   The PMS devices  are  named  TPT1,  TPT2,
TPT3, TPT4, TPT5 and TPT6.

Any  program writing data to the TPT devices will generate a print job  that
will be intercepted by the PMS.  When the print job is completed, the  PMS
will  print  the data on a terminal-attached printer.   In  practice,  completed
print jobs are held in a queue until the appropriate printer is available.

Many  application  programs allow the operator to specify the name  of  the
print device and normally assume a default of LPT1.  By changing the print
device  to  one of the TPT devices, that application is  immediately  able  to
utilise terminal-attached printers.

Although  there  are  six print devices available  for  terminal  printing,  the
number of terminal-attached printers able to be used is not limited to six.  A
single  application  program could, if suitably designed, generate  jobs  that
would  print  on  all terminal-attached printers in the  system.   In  order  to
achieve this, the PMS uses a PMS Environment Area to link the logical TPT
devices with terminal-attached printers.

-------------------------------------------
7.3  The PMS Environment

The  PMS Environment maintains a number of PMS settings for  controlling
print jobs sent to the TPT print devices.

Each  session  on  a terminal has its own PMS  Environment  allowing,  for
example,  each session to send its print jobs to a different printer.   When  a
session is started, the PMS Environment is inherited from the session  from
which  it  was started.  The first session started at each  terminal  inherits  a
default  PMS  Environment.  The PMS Environment for a  session  may  be
modified by the PMSSET command, or by PMS API calls from application
programs.   Any  changes  to a session's PMS  Environment  remain  active
until changed or until the session terminates.  Section 7.4 describes the  use
of the PMSSET command.  The Terminal Manager - Programmer's Toolkit
describes  the PmsGetEnv and PmsSetEnv API calls available for  interroga-
ting or setting the PMS Environment.



Printer Management System                           7-9


The  PMS Environment for each session links the six TPT print  devices  to
logical  printer  numbers defined in the PMS.INI file.   The  logical  printer
number  is  referred to as the PRINTERNO setting.  Each of  the  TPT  de-
vices  may be linked to a different logical printer number if required i.e.  at
any one point in time, a session has access to six terminal-attached printers.
Whenever  a print job is started on a TPT device, the PMS  remembers  the
printer  number  currently associated with the TPT device and  ensures  that
the  job will go to that printer, even if the TPT device is subsequently  reas-
signed to another printer.

Logical  printer  numbers  range from 1 through  999,  however,  the  PMS
Environment PRINTERNO settings may also be assigned the value 0.  This
value  indicates  that  subsequent jobs sent to the relevant  TPT  device  will
print on the first available terminal-attached printer.

The  first session started on each terminal inherits a default PMS  environ-
ment.   If the terminal has a printer attached i.e. if a PRINTER section  has
been defined in PMS.INI with the TERMNO statement specifying the termi-
nal  number, the PRINTERNO settings for each of the TPT devices are  set
to the logical printer number of that printer; this ensures that jobs generated
at  that  terminal are printed on the printer attached to the  terminal.   If  the
terminal does not have a printer attached, the PRINTERNO settings for  the
TPT devices are set to 0, allowing print jobs to print on any available  prin-
ter.

Jobs  may also be sent to printer-attached terminals from  applications  run-
ning in host sessions i.e. not on a terminal.  All host sessions share a  single
set  of  PMS environment settings which are independent  of  terminal  ses-
sions.   The default PRINTERNO for the TPT devices on the host is  0  i.e.
jobs  sent  to the TPT devices from host applications will print on  the  first
available  terminal-attached printer.  The PMSSET command may  be  used
on the host to change the PRINTERNO settings for any of the TPT devices.
If a PRINTERNO setting is changed by one host session, it affects all other
host sessions.

-------------------------------------------
7.4  The PMSSET Command

The  PMSSET  command may be used to display or modify a  PMS  Envir-
onment setting for one of the TPT devices in the session in which it is used.

The format of the command is :-

  PMSSET <print device> [ PRINTERNO = <logical printer number> ]

7-10                           Printer Management System


where the elements within '[...]' are optional.  <print device> specifies  the
TPT  device involved in the operation.  <logical printer number>  specifies
the  printer  number  on  which all subsequent  output  to  that  TPT  device
should be printed.

if the optional PRINTERNO clause is not specified as follows :-

  PMSSET TPT1

then PMSSET will display the current environment setting for the  specified
TPT device, TPT1 in the above example.

In  the example below, a session is set so that six printers  are  concurrently
available :-

  PMSSET TPT1 PRINTERNO=5
  PMSSET TPT2 PRINTERNO=9
  PMSSET TPT3 PRINTERNO=13
  PMSSET TPT4 PRINTERNO=4
  PMSSET TPT5 PRINTERNO=10
  PMSSET TPT6 PRINTERNO=0

If  a program subsequently generates a job to device TPT1, it will  print  on
printer number 5, if output is sent to TPT2 it will print on printer 9 etc.   If
output  is  sent to TPT6, it will print on the first available  printer  (because
the special PRINTERNO of 0 has been specified).

PMSSET may be issued from the command line or from within a batch file.
If the operation is successful, an ERRORLEVEL of 0 is returned  otherwise
an ERRORLEVEL of 1 is returned.  The ERRORLEVEL may be tested  in
a batch file :-

  .
  .
  PMSSET TPT1 PRINTERNO=10
  IF ERRORLEVEL 1 GOTO DISPERR
  .
  .

Section  4.4 describes the use of terminal startup batch files.   The  relevant
PMSSET  commands  may be included in the startup batch  files  to  ensure
that each terminal is allocated its unique PMS Environment settings.



Printer Management System                           7-11















































7-12                           Printer Management System


-------------------------------------------

Appendix A

Terminal Information

-------------------------------------------

One  of  the  design  aims  of Terminal Manager  has  been  to  ensure  that
maximum performance and functionality can be obtained from the terminals
attached to the computer.

Rather  than  offering support for a single generic terminal  type,  Terminal
Manager supports specific models of terminal and uses as many as  possible
of  the  unique  features  of each.  In addition, to provide  the  user  with  a
degree of flexibility, a generic PC-Terminal option is available which offers
less functionality than the named terminal types.

Terminal Manager works best with terminals that have a PC mode of opera-
tion.   In  this  mode, the keyboard generates scan codes for  the  press  and
release  of each key, unlike the ASCII mode of operation in which  a  single
ASCII  character  is  generated for each key pressed.   Although  PC  mode
terminals  are  preferred, Terminal Manager includes  the  ASCII  Terminal
Support (ATS) facility which allows attachment of terminals having just  the
ASCII mode of operation.  The ATS facility is described in section A.8.

PC  mode  terminals will automatically generate repeat  keystrokes  when  a
key is pressed.  However, some terminals include an option in their setup to
not generate repeat keys i.e. a scan code value is sent to the computer  only
when  a key is pressed or released.  If this option is available on any of  the
named  terminals, it should be selected so that Terminal Manager is able  to
generate key repeats internally;  this saves the processor overhead  involved
when  each  repeat generates an interrupt to the  processor.   The  following
sections for each terminal type discuss whether automatic key repeat can be
disabled at the terminal.

Terminal  Manager requires the RS232 signals Data Carrier  Detect  (DCD)
and Data Set Ready (DSR) to be high before it recognises that a terminal  is
connected.   Before being able to transmit to a terminal, the Clear To  Send
(CTS)  signal must also be high.  These signals can be raised high by  cross
connecting  with  signals  raised  by a terminal or  by  strapping  to  signals
raised by the computer.  Alternatively, the FORCEDCD, FORCEDSR  and
FORCECTS statements in the TERMINAL section of the TRMMAN.INI


Terminal Information                               A-1


file  may  be used to logically force the signals high;  section  5.2  discusses
the use of these statements.

The  minimum  cable  required  for local connection  of  a  terminal  to  the
computer  uses  pins  2,  3 and 7  (in  conjunction  with  the  FORCEDCD,
FORCEDSR and FORCECTS statements).  However, it is advisable to  use
the cable type recommended for each terminal type so that Terminal  Man-
ager is able to properly handle flow control with the terminal and is able  to
detect  the  terminal  being switched on or off.   The  connections  for  each
cable type are detailed in appendix C.

Terminal Manager will support transmission rates up to 56000 baud,  how-
ever, unless the additional speed is absolutely necessary, it is recommended
that  terminals  be  driven  at a maximum of 9600  baud  to  avoid  possible
processor overload.

All terminals operating in PC mode require the number of data bits to be set
to  8 since the scan codes generated by the keyboard when in PC mode  use
all  8  bits.  Terminals operating in ASCII mode may be set for 7 or  8  data
bits as required.

The number of stop bits should be set to 1.  It is normal to set parity off for
the type of terminal operation supported by Terminal Manager.

Terminals may be directly connected to the host system using local  cabling
or  may  be  sited  remotely using  modem  connections.   To  maintain  the
highest  level of data integrity, particularly when terminal-attached  printers
are  configured,  it is recommended that error-correcting  modems  be  em-
ployed.

The  Terminal Manager Printer Management System supports  the  attach-
ment  of printers to the auxiliary ports found on the majority  of  terminals.
Some terminals connect printers using parallel ports while others use  serial
RS232  connections.   Terminal Manager is unable to  automatically  confi-
gure  the printer port on terminals.  This task must be  performed  manually
in  accordance with the instructions supplied with the terminal.   In  particu-
lar,  serially-attached  printers must be configured for the  same  baud  rate,
stop bits etc as the auxiliary serial port setting on the terminal.







A-2                               Terminal Information


-------------------------------------------
A.1  Terminals With A PC-TERMINAL Mode

This section contains information, additional to that presented at the start of
appendix  A,  specific to terminals set up for use by  Terminal  Manager  as
PC Terminals.

Terminals not specifically named that have a PC-TERMINAL mode may  be
used  by  Terminal  Manager.   The terminal  must  be  configured  for  PC
Terminal mode from the terminal setup menus.  The terminal must generate
the repeat sequences whenever is a key is held down.

Since Terminal Manager has no knowledge of any capabilities of the termi-
nal other than those provided in PC Terminal mode, support for the  termi-
nal is limited in comparison with the named terminals.

The PC-Terminal Status Line

Terminal  Manager does not control the status line for PC-Terminal  termi-
nals.   The  only  options available for the status line are  those  able  to  be
selected by the user from the terminal setup menus.

If the keyboard has lights indicating the status of the NUM-LOCK,  CAPS-
LOCK  and  SCROLL-LOCK  keys, or if their status  is  displayed  on  the
status  line, these cannot be reset by Terminal Manager and they  may  lose
synchronisation  with  the  status  of the keyboard  as  viewed  by  Terminal
Manager and the application programs.

PC-Terminal Screen Modes

Only one screen mode is available for PC-Terminal terminals :-

  '` 80 columns x 25 rows

PC-Terminal Printing

Terminal Manager supports printers attached to PC-Terminals but is unable
to automatically configure the printer port;  this should be performed man-
ually before using the terminal.

PC-Terminal Setup Menus

The  menus and the selection of options for PC-Terminals cannot be  shown
since  these vary from one manufacturer's terminal to another.  In  general,

Terminal Information                               A-3


the terminal should be configured as follows :-

  '` the communication mode should be set for Full Duplex or Conver-
     sational  or  Echo or Character mode.  These are  names  used  by
     different manufacturers for the same feature
  '` flow  control should be set for XON/XOFF and may  be  displayed
     by  different  manufacturers  as  XON/XOFF  or  Pacing  or   XPC
     Handshake
  '` the screen size should be set for 25 rows x 80 columns
  '` attributes should be character based
  '` end of line wrap should be turned off
  '` a  received  CR  should  be interpreted as  just  CR  by  itself  (not
     CR/LF)
  '` autoscrolling mode should be on
  '` key repeat should be turned on

Not all terminals will present menus for all of the above options since some
of the options might be implicit when the PC-Terminal mode is selected.

Terminal  Manager uses the following sequences for controlling  operations
on PC-Terminal terminals :-

CTRL-G Bell              ESC E  Insert line
CTRL-H Cursor left           ESC G  Set character attribute
CTRL-J Cursor down          ESC N  Screen display on
CTRL-K Cursor up           ESC O  Screen display off
CTRL-L Cursor right          ESC Q  Insert space
CTRL-M Cursor to start of line      ESC R  Delete line
CTRL-Q XON (from the host)      ESC T  Erase to end line
CTRL-S XOFF (from the host)      ESC U  Monitor mode on
CTRL-T Bidirectional off        ESC W  Delete character
CTRL-V Cursor down          ESC Y  Erase to end page
CTRL-Z Home and erase to end      ESC `  Transparent print on
CTRL-^ Cursor home          ESC a  Transparent print off
ESC "  Unlock keyboard        ESC d  Normal video
ESC '  Protect mode off        ESC j  Cursor up
ESC (  Write protect mode off      ESC l  Set duplex edit
ESC .  Set cursor attribute       ESC u  Monitor mode off
ESC =  Position cursor         ESC w  Scroll on
ESC ?  Interrogate cursor        e   XON (from terminal)
ESC A  Auxiliary print off        g   XOFF (from terminal)
ESC C  Character mode on



A-4                               Terminal Information


-------------------------------------------
A.2  The IBM 3151 ASCII Display Station

This section contains information, additional to that presented at the start of
appendix A, specific to the IBM 3151 terminal.

The IBM 3151 is available in two basic model types :-

  '` models 31 and 41
  '` models 35 and 45

All  models are functionally the same; the models 31 and 35  have  different
colour screen phosphors from the models 41 and 45 and the models 31  and
41  have different keyboard layouts than the models 35 and 45.  Models  35
and  45  are the preferred models having the same keyboard layouts  as  PC
keyboards.

The  IBM 3151 must be equipped with the Cartridge For  Connectivity  to
allow it to be used in PC Mode with Terminal Manager.  This cartridge has
an   IBM   part  number  94X1984.   An  alternative   IBM   part   number,
94X1991,  comprises the 94X1984 cartridge together with replacement  key
caps  for  conversion  of  the model 31 and  41  keyboards  to  standard  PC
keyboard layout.

The  terminal  is configured for use as described in the  Guide  To  Opera-
tions  manual  supplied  with  the terminal and the  User's  Guide  for  the
Connectivity Cartridge supplied with the Connectivity Cartridge.

The  terminal  may be configured to work in one of a  number  of  machine
modes.  For Terminal Manager usage, the terminal should be configured  to
work in the 925PC mode.

The  TERMINAL  section  of  the  TRMMAN.INI  file  should  define  the
terminal type as follows :-

  TERMTYPE = IBM3151

The  IBM  3151  should use cable type 1, as described in  appendix  C,  for
local  connection to the computer.  This cable type allows for  flow  control
using the RS232 signals if desired and enables the computer to detect if  the
terminal is switched off.

The IBM 3151 generates its own key repeat sequences.


Terminal Information                               A-5


The IBM 3151 Status Line

The  status  line  of  the  IBM 3151 can be  displayed  or  hidden  using  the
STATUSLINE statement in the TERMINAL section of the  TRMMAN.INI
file.

If the status line is displayed, it is in the form :-

  ncs <session name>

where  ncs  represents  the status of  the  NUM-LOCK,  CAPS-LOCK  and
SCROLL-LOCK keys respectively.  If the lock status is on, the correspond-
ing  letter  is displayed in upper case, if off, it is displayed  in  lower  case.
<session name> is the title of the current session being displayed.

Because  the  status line can be updated at any time by  Terminal  Manager,
the  ncs status displayed will always stay in synchronisation with  the  status
as viewed by Terminal Manager and the application programs.

IBM 3151 Screen Modes

The following screen modes are available for the IBM 3151 :-

  '` 80 columns x 25 rows (default)

IBM 3151 Printing

The IBM 3151 connects printers via the auxiliary serial port.

The  Printer  Setup  Menu  allows  the  operator  to  select  the  options  for
communication with the printer.














A-6                               Terminal Information


IBM 3151 Setup Menus

The  following  represent the suggested menu choices that should  be  made
when setting up the terminal configuration.

  --------------  S E S S I O N   M A N A G E M E N T  -------------

  Session Type                        SINGLE SESSION BY SINGLE PORT

                                      Application Type
  Session 1 (Main Port)                         925PC

  ------------------  G E N E R A L   S E T U P  -------------------

  Machine Mode      925PC             Line Wrap                  OFF
  Screen           NORMAL             Edit Mode               DUPLEX
  Scroll             JUMP             Attribute               SCREEN
  Auto LF             OFF             Attribute Character     HIDDEN
  CRT Saver            ON

  -------------  C O M M U N I C A T I O N   S E T U P -------------

  Operating Mode     ECHO             Interface               RS232C
  Line Speed (bps)   9600             Line Control             IPRTS
  Word Length (bits)    8             Break Signal             500ms
  Parity               NO             Parity Check               OFF
  Stop Bit              1
  Pacing               ON

  --------------------- S C R E E N   S E T U P --------------------

  Row and Column  25 x 80

  ------------------------------------------------------------------











Terminal Information                               A-7


-------------------------------------------
A.3  The WYSE WY-55 Terminal

This section contains information, additional to that presented at the start of
appendix A, specific to the Wyse WY-55 terminal.

The Wyse WY-55 terminal is available with a number of keyboard  options.
The keyboard supported by Terminal Manager is the following :-

  '` Enhanced PC-style Keyboard

Instructions for configuring the terminal are contained in the WY-55 User's
Guide supplied with the terminal.

The  terminal must be configured to operate in the PC TERM mode  as  de-
scribed  below.   Key repeats are handled internally by  Terminal  Manager
and should be turned off at the terminal.

The  terminal is able to display the graphic characters 0 to 31,  however,  if
XON/XOFF is being used for flow control, the graphic character  displayed
for  value  19  will be the single exclamation mark '!'  instead  of  a  double
exclamation mark.

The Wyse WY-55 should use cable type 1, as described in appendix C,  for
local  connection to the computer.  This cable type allows for  flow  control
using the RS232 signals if desired and enables the computer to detect if  the
terminal is switched off.

It  is important to ensure that either RS232 or XON/XOFF flow  control  is
used  since  some Wyse WY-55 terminal functions can take  relatively  long
periods  of time during which loss of data and corruption of the screen  may
occur.

If  flow  control is to be XON/XOFF, the 'F4 Comm'  setup  menu  should
have 'MDM RC HSK = XON-XOFF/XPC' and 'MDM XMT HSK = XON-XOFF'.  If RS232
flow  control  is to be used, 'MDM RC HSK = DTR' and 'MDM XMT HSK  =  NONE'
should  be  selected.  It is recommended that cable type 1 be used  for  both
types of flow control.

If  the  port to which the Wyse WY-55 is connected  contains  the  National
Semiconductor  NS16550A  communication  chip,  the  'F4  Comm'  setup
menu  should be set for the 'XMT LIM = NONE' option.  This will  ensure  that
the  first-in first-out receive buffer on the 16550A is able to be used  to  full
effect.   If  the  16550A  chip is not being used, 'XMT  LIM  =  60  CPS'  will

A-8                               Terminal Information


smooth out the receive character processing at the computer.

Many  of the set-up options listed below are configured automatically  when
a terminal first comes on-line, however, it is recommended that you  confi-
gure the terminal as shown to avoid any possible problems.

The Wyse WY-55 Status Line

The  status  line of the Wyse WY-55 can be displayed or  hidden  using  the
STATUSLINE statement in the TERMINAL section of the  TRMMAN.INI
file.

If  the status line is to be displayed, Terminal Manager selects the  standard
status line option of the terminal as follows :-

  <locks> <mode> <cpos> <session name>

where each of the above fields contains the following information :-

  <locks>    is maintained by the terminal and represents the status
            of  the  NUM-LOCK  and  CAPS-LOCK  keys.   The
            contents  of this field usually correspond to the  lights
            on the keyboard.

  <mode>     is maintained by the terminal and represents the cur-
            rent communication mode that the terminal is set  for.
            This field will normally contain the FDX message.

  <cpos>     is maintained by the terminal and displays the current
            cursor position.

  <session name> is  maintained by Terminal Manager and is the  name
            of  the  current session being displayed.  The  field  is
            updated whenever a session change occurs.   Because
            of  limitations  of the terminal, the field can  only  be
            updated  on a session change;  if the session  name  is
            changed  by an application program, the  change  will
            not appear until a session change occurs.

The  Wyse WY-55 imposes limitations on the way that  Terminal  Manager
handles  the keyboard lock status message and the  corresponding  keyboard
lights;  Terminal Manager is not able to directly control the terminal  status
or keyboard lights.  Whenever a session change occurs, Terminal  Manager
is  able  to resynchronise its internal status with that of the terminal  for  the

Terminal Information                               A-9


NUM-LOCK and CAPS-LOCK keys.  Terminal Manager is unable to con-
trol or synchronise with the SCROLL-LOCK message or keyboard light.

Changes  in  the  terminal's  keyboard lock status  caused  by  the  operator
pressing  the  CAPS-LOCK  or NUM-LOCK  keys  cause  a  corresponding
change  in Terminal Manager's internal lock status.  In these situations,  the
two keyboard status settings will remain in synchronisation.

If an application program changes the CAPS-LOCK or NUM-LOCK status,
Terminal Manager will change its internal status but is unable to change the
terminal status message or the keyboard lights.  In this situation, the  termi-
nal  status will remain out of synchronisation until the next  session  change
occurs.

Wyse WY-55 Screen Modes

The following screen modes are available for the Wyse WY-55 :-

  '` 80 columns x 25 rows (default)
  '` 132 columns x 25 rows
  '` 80 columns x 43 rows
  '` 132 columns x 43 rows

Wyse WY-55 Printing

The Wyse WY-55 connects printers via the auxiliary serial port.

The  'F5  PORTS'  menu controls the configuration  of  the  attached  serial
printer.  If the application wishes to send null bytes to the printer, the NULLS
SUPPRESS = OFF option should be selected.


Wyse WY-55 Setup Menus

The  recommended  set-up  options  for  each  of  the  Wyse  WY-55  menu
screens  are described below although some options will depend upon  your
system requirements, particularly with regard to the auxiliary port.








A-10                               Terminal Information



 ---------------------------  F1 DISP  --------------------------------

   COLUMNS = 80           CURSOR = BLINK LINE     SCRN SAVER = ON
   LINES = 25             DISPLAY = DARK          CHAR CELL = 10 x 16
   PAGE = 1 x LINES       AUTOPAGE = OFF          80/132 CLR = ON

 ---------------------------  F2 GENRL  -------------------------------

   PERSONALITY = PC TERM  ENHANCE = OFF           STATUS LINE = ON
   SCRL = JUMP            AUTOSCRL = ON           WRAP EOL = OFF
   RCV CR = CR            MONITOR = OFF           RECOGNISE DEL = OFF

 ---------------------------  F3 KEYBD  -------------------------------

   KEYCLICK = OFF         REPEAT = OFF            KEYCODE = SCAN
   KEYLOCK = CAPS         LANGUAGE = UK           CORNER KEY = FUNCT
   CODEPG = PC-MULTINAT'L ASCII FONT = WY ASCII   ASCII = MULTINATIONAL

 ---------------------------  F4 COMM  --------------------------------

 COMM = FDX                XMT LIM = NONE        ANSWERBACK MODE = OFF
 MDM RX HSK = XON-XOFF/XPC MDM RC HSK LEVEL=192  MDM XMT HSK = XON-XOFF
 AUX RX HSK = NONE         SEND ACK = ON         AUX XMT HSK = NONE

 ---------------------------  F5 PORTS --------------------------------

 MDM BAUD RATE = 9600    MDM DATA/PARITY = 8/NONE  MDM STOP BITS = 1
 AUX BAUD RATE = 9600    AUX DATA/PARITY = 8/NONE  AUX STOP BITS = 1
 HOST PORT = MODEM PORT  PRINTER ATTACHED = ON     NULLS SUPPRESS = OFF

 ---------------------------  F6 MISC ---------------------------------

  WPRT INTENSITY = DIM    WPRT REV = OFF         WPRT UNDRLN = OFF
  BLK END = US/CR         ATTRIBUTE = CHAR       MULTIPLE PAGE = OFF
  MARGIN BELL = OFF       BELL VOLUME = 1        REST/ACT. TIMES = NONE

 ----------------------------------------------------------------------

The  'F7  ANSI1',  'F8  ANSI2',  'F9  TABS',  'F10  ANSBK'  and   'F11
FKEYS'  menus  are  not used.  Any changes made to the  menus  must  be
stored  in  non-volatile RAM by using the 'F12 EXIT' menu  and  selecting
'YES'.


Terminal Information                               A-11


-------------------------------------------
A.4  The WYSE WY-60 Terminal

This section contains information, additional to that presented at the start of
appendix A, specific to the Wyse WY-60 terminal.

The Wyse WY-60 terminal is available with a number of keyboard  options.
The keyboards supported by Terminal Manager are the following :-

  '` AT-style Keyboard
  '` Enhanced PC-style Keyboard

Instructions for configuring the terminal are contained in the WY-60 User's
Guide supplied with the terminal.

The  terminal must be configured to operate in the PC TERM mode  as  de-
scribed  below.   Key repeats are handled internally by  Terminal  Manager
and should be turned off at the terminal.

The  terminal is able to display the graphic characters 0 to 31,  however,  if
XON/XOFF is being used for flow control, the graphic character  displayed
for  value  19  will be the single exclamation mark '!'  instead  of  a  double
exclamation mark.

The Wyse WY-60 should use cable type 1, as described in appendix C,  for
local  connection to the computer.  This cable type allows for  flow  control
using the RS232 signals if desired and enables the computer to detect if  the
terminal is switched off.

It  is important to ensure that either RS232 or XON/XOFF flow  control  is
used with the WY-60 since some terminal functions can take relatively long
periods  of time during which loss of data and corruption of the screen  may
occur if no flow control is used.

Terminal  Manager  will  automatically set the flow control  method  at  the
terminal each time the terminal comes on-line.  If the 'XONXOFF=YES'  state-
ment  has been defined in the TERMINAL section in TRMMAN.INI, or  if
the statement has been omitted, Terminal Manager will set the terminal  for
XON/XOFF control.  Otherwise, flow control using the RS232 signals  will
be selected.

If  flow  control  is to be XON/XOFF, Terminal Manager will  set  the  'F4
Comm'   setup   menu   to  be   'RCV   HNDSHAKE=XON/XOFF'   and   'XMT
HNDSHAKE=XON/XOFF'.    If   RS232  flow  control  is  to  be   used,   'RCV

A-12                               Terminal Information


HNDSHAKE=DTR' and 'XMT HNDSHAKE=NONE' will be selected.  It is recommended
that cable type 1 be used for both types of flow control.

I_M_P_O_R_T_A_N_T___N_O_T_E_:_   Terminal Manager is unable to  automatically  set
the  'XPC HANDSHAKE=ON' option and this must be performed manually by  the
user  during  the  initial configuration of the terminal.  It is safe  to  set  this
option even if RS232 flow control is to be used.

Terminal  Manager will automatically set the 'XMT LIM=' option to  optimise
receive  character  processing at the computer.  The setting chosen  for  this
option  is  dependent  upon the presence  of  the  National  Semiconductor
NS16550A  chip  on  the communication adapter to  which  the  terminal  is
attached.

Many  of the set-up options listed below are configured automatically  when
a terminal first comes on-line, however, it is recommended that you  confi-
gure the terminal as shown to avoid any possible problems.

The Wyse WY-60 Status Line

The  status  line of the WY-60 can be displayed or hidden using  the  STA-
TUSLINE statement in the TERMINAL section of the TRMMAN.INI file.

If  the status line is to be displayed, Terminal Manager selects the  standard
status line option of the terminal as follows :-

  <locks> <mode> <time> <cpos> <session name>

where each of the above fields contains the following information :-

  <locks>    is maintained by the terminal and represents the status
            of  the  NUM-LOCK  and  CAPS-LOCK  keys.   The
            contents  of this field correspond to the lights  on  the
            keyboard.
  <mode>     is maintained by the terminal and represents the cur-
            rent communication mode that the terminal is set  for.
            This field will normally contain the FDX message.
  <time>     is maintained by the terminal and displays the current
            time.  Terminal Manager informs the terminal of  the
            time  when it first comes on-line or whenever  a  ses-
            sion switch occurs.
  <cpos>     is maintained by the terminal and displays the current
            cursor position.


Terminal Information                               A-13


  <session name> is  maintained by Terminal Manager and is the  name
            of  the  current session being displayed.  The  field  is
            updated whenever a session change occurs.   Because
            of  limitations  of the terminal, the field can  only  be
            updated  on a session change;  if the session  name  is
            changed  by an application program, the  change  will
            not appear until a session change occurs.

The WY-60 imposes limitations on the way that Terminal Manager  handles
the  keyboard  lock status message and the corresponding  keyboard  lights;
Terminal  Manager  is  not  able to directly control  the  terminal  status  or
keyboard  lights.  Whenever a session change occurs, Terminal Manager  is
able  to  resynchronise  its internal status with that of  the  terminal  for  the
NUM-LOCK and CAPS-LOCK keys.  Terminal Manager is unable to con-
trol or synchronise with the SCROLL-LOCK message or keyboard light.

Changes  in  the  terminal's  keyboard lock status  caused  by  the  operator
pressing  the  CAPS-LOCK  or NUM-LOCK  keys  cause  a  corresponding
change  in Terminal Manager's internal lock status.  In these situations,  the
two keyboard status settings will remain in synchronisation.

If an application program changes the CAPS-LOCK or NUM-LOCK status,
Terminal Manager will change its internal status but is unable to change the
terminal status message or the keyboard lights.  In this situation, the  termi-
nal  status will remain out of synchronisation until the next  session  change
occurs.

Wyse WY-60 Screen Modes

The following screen modes are available for the Wyse WY-60 :-

  '` 80 columns x 25 rows (default)
  '` 132 columns x 25 rows
  '` 80 columns x 43 rows
  '` 132 columns x 43 rows

Changing screen modes on the Wyse WY-60 can take 2 or 3 seconds.

Wyse WY-60 Printing

The Wyse WY-60 connects printers via the auxiliary serial port.

The F4 COMM menu described below should be set in accordance with  the
corresponding printer settings.

A-14                               Terminal Information


Wyse WY-60 Setup Menus

The  recommended set-up options for each of the WY-60 menu screens  are
described below.

-----------------------------  F1 DISP  -------------------------------

COLUMNS=80             STATUS LINE=STANDARD      BACKGROUND=DARK
LINES=25               SCRL SPEED=JUMP           SCRN SAVER=ON
PAGE LENGTH=1 * LINES  CURSOR=BLINK LINE         DISPLAY CURSOR=ON
ATTRIBUTE=CHAR         ANSWERBACK MODE=OFF       ANSWERBACK CONCEAL=OFF

-----------------------------  F2 GENERL  -----------------------------

PERSONALITY=PC TERM     ENHANCE=OFF               FONT LOAD=ON
COMM MODE=FULL DUPLEX   END OF LINE WRAP=OFF      SEND ACK=OFF
DATA/PRINTER=MODEM/AUX  AUTOSCRL=ON               INIT TABS=OFF
RCVD CR=CR              MONITOR=OFF               WIDTH CHANGE CLEAR=ON

-----------------------------  F3 KEYBRD  -----------------------------

KEYCLICK=OFF              KEYLOCK=CAPS              KEY REPEAT=OFF
RETURN=CR                 ENTER=CR                  CORNER KEY=FUNCT
XMT LIMIT=60CPS           FKEY XMT LIMIT=NONE       BREAK=250MS
WYSEWORD=OFF              LANGUAGE=US               MARGIN BELL=OFF

------------------------------  F4 COMM  ------------------------------

BAUD=9600                 DATA/STOP BITS=8/1        PARITY=NONE
RCV HNDSHAKE=XON/XOFF     XMT HNDSHAKE=XON/XOFF     XPC HNDSHAKE=ON
AUX BAUD RATE=9600        AUX DATA/STOP BITS=8/1    AUX PARITY=NONE
AUX RCV HNDSHAKE=NONE     AUX XMT HNDSHAKE=XON/XOFF

------------------------------  F5 MISC  ------------------------------

BLOCK END=US/CR           LABELS=ON                 WPRT INTENSITY=DIM
AUTO PAGE=OFF             SAVE LABELS=OFF           WPRT REVERSE=OFF
TVI955 ATTRIBUTE=NO SPACE PAGE EDIT=OFF             WPRT UNDERLINE=OFF
VP60 BLK END=NONE                                   TEST=OFF

-----------------------------------------------------------------------

The  'F6 TABS', 'F7 A/BACK', 'F8 F/KEYS' and 'F9  LABELS'   menus
are not used.

Terminal Information                               A-15


-------------------------------------------
A.5  The WYSE WY-120 Terminal

This section contains information, additional to that presented at the start of
appendix A, specific to the Wyse WY-120 terminal.

The  Wyse  WY-120  terminal is available with a number  of  keyboard  op-
tions.  The keyboards supported by Terminal Manager are the following :-

  '` AT-style Keyboard
  '` Enhanced PC-style Keyboard

Instructions  for  configuring  the  terminal are  contained  in  the  WY-120
User's Guide supplied with the terminal.

The  terminal must be configured to operate in the PC TERM mode  as  de-
scribed  below.   Key repeats are handled internally by  Terminal  Manager
and should be turned off at the terminal.

The  terminal is able to display the graphic characters 0 to 31,  however,  if
XON/XOFF is being used for flow control, the graphic character  displayed
for  value  19  will be the single exclamation mark '!'  instead  of  a  double
exclamation mark.

The Wyse WY-120 should use cable type 1, as described in appendix C, for
local  connection to the computer.  This cable type allows for  flow  control
using the RS232 signals if desired and enables the computer to detect if  the
terminal is switched off.

It  is important to ensure that either RS232 or XON/XOFF flow  control  is
used since some WY-120 terminal functions can take relatively long periods
of time during which loss of data and corruption of the screen may occur.

If  flow  control is to be XON/XOFF, the 'F4 Comm'  setup  menu  should
have 'Rcv Hndshk=XPC' and 'Xmt Hndshk=XON/XOFF'.  If RS232 flow control is
to  be used, 'Rcv Hndshk=DTR' and 'Xmt Hndshk=None' should be selected.   It
is recommended that cable type 1 be used for both types of flow control.

If  the port to which the WY-120 is connected contains the National  Semi-
conductor  NS16550A  communication  chip, the 'F3  Keybd'  setup  menu
should  be set for the 'Xmt Lim=None' option.  This will ensure that the  first-
in first-out receive buffer on the 16550A is able to be used to full effect.   If
the  16550A  chip  is not being used, 'Xmt Lim=60cps' will  smooth  out  the
receive character processing at the computer.

A-16                               Terminal Information


Many  of the set-up options listed below are configured automatically  when
a terminal first comes on-line, however, it is recommended that you  confi-
gure the terminal as shown to avoid any possible problems.

The Wyse WY-120 Status Line

The  status line of the WY-120 can be displayed or hidden using the  STA-
TUSLINE statement in the TERMINAL section of the TRMMAN.INI file.

If  the status line is to be displayed, Terminal Manager selects the  standard
status line option of the terminal as follows :-

  <locks> <mode> <cpos> <session name>

where each of the above fields contains the following information :-

  <locks>    is maintained by the terminal and represents the status
            of  the  NUM-LOCK  and  CAPS-LOCK  keys.   The
            contents  of this field usually correspond to the  lights
            on the keyboard.

  <mode>     is maintained by the terminal and represents the cur-
            rent communication mode that the terminal is set  for.
            This field will normally contain the FDX message.

  <cpos>     is maintained by the terminal and displays the current
            cursor position.

  <session name> is  maintained by Terminal Manager and is the  name
            of  the  current session being displayed.  The  field  is
            updated whenever a session change occurs.   Because
            of  limitations  of the terminal, the field can  only  be
            updated  on a session change;  if the session  name  is
            changed  by an application program, the  change  will
            not appear until a session change occurs.

The  WY-120  imposes  limitations  on  the  way  that  Terminal   Manager
handles  the keyboard lock status message and the  corresponding  keyboard
lights;  Terminal Manager is not able to directly control the terminal  status
or keyboard lights.  Whenever a session change occurs, Terminal  Manager
is  able  to resynchronise its internal status with that of the terminal  for  the
NUM-LOCK and CAPS-LOCK keys.  Terminal Manager is unable to con-
trol or synchronise with the SCROLL-LOCK message or keyboard light.


Terminal Information                               A-17


Changes  in  the  terminal's  keyboard lock status  caused  by  the  operator
pressing  the  CAPS-LOCK  or NUM-LOCK  keys  cause  a  corresponding
change  in Terminal Manager's internal lock status.  In these situations,  the
two keyboard status settings will remain in synchronisation.

If an application program changes the CAPS-LOCK or NUM-LOCK status,
Terminal Manager will change its internal status but is unable to change the
terminal status message or the keyboard lights.  In this situation, the  termi-
nal  status will remain out of synchronisation until the next  session  change
occurs.


Wyse WY-120 Screen Modes

The following screen modes are available for the Wyse WY-120 :-

  '` 80 columns x 25 rows (default)
  '` 132 columns x 25 rows


Wyse WY-120 Printing

The Wyse WY-120 connects printers via the auxiliary parallel port.

No menu options need to be set in the terminal configuration screens.

The  Wyse  WY120 has a firmware problem when the terminal  is  printing
and  keyboard  operation is in progress.  Occasionally, the  terminal  misses
the  press or release of a keystroke and fails to transmit it to the host.   This
normally  exhibits itself by the failure of a character to be echoed  from  the
host,  or,  by  the host continuing to repeat a keystroke after the  key  is  re-
leased.  In the second case, pressing any other key will stop the key  repeat-
ing.












A-18                               Terminal Information


Wyse WY-120 Setup Menus

The recommended set-up options for each of the WY-120 menu screens are
described below.


  --------------------------  F1 Disp  -----------------------------

  Columns = 80           Cursor = Blink Line     Scrn Saver = On
  Lines = 25             Display = Dark          Char Cell = 10 x 16
  Page = 1 x Lines       Autopage = Off          80/132 Clr = On

  --------------------------  F2 Genrl  ----------------------------

  Personality = PC TERM  Enhance = Off           Status Line = On
  Scrl = Jump            Autoscrl = On           Wrap EOL = Off
  Rcv CR = CR            Monitor = Off

  --------------------------  F3 Keybd  ----------------------------

  Keyclick = Off         Repeat = Off            Keycode = Scan
  Xmt Lim = 60 cps       Margin Bell = Off       Bell Volume = 2
  Language = UK

  --------------------------  F4 Comm  -----------------------------

  Data Rate = 9600       Data/Parity = 8/None    Stop Bits = 1
  Rcv Hndshk = XPC       Xmt Hndshk = XON/XOFF   Comm = FDX

  --------------------------  F5 Misc  -----------------------------

  WPRT Intensity = Dim   WPRT Rev = Off          WPRT Undrln = Off
  Blk End = US/CR        Attribute = Char

  ------------------------------------------------------------------


The 'F6 Tabs', 'F7 Ansbk' and 'F8 Fkeys' menus are not used.







Terminal Information                               A-19


-------------------------------------------
A.6  The WYSE WY-325 Colour Terminal

This section contains information, additional to that presented at the start of
appendix A, specific to the Wyse WY-325 colour terminal.

Unlike  the  colour  mode of the  DOS-TERMINAL  TERM.EXE  program
running on a DOS PC, the Wyse WY-325 is not able to directly display  all
colour  combinations able to be output by an application program.   Instead,
the  Wyse  WY-325  provides  colour output through the  use  of  up  to  11
colour palettes. Only one colour palette may be active at any one time,  and
when  the  terminal is used for non-Terminal Manager use, the  operator  is
able  to  select  the required colour palette.   Terminal  Manager,  however,
provides  much more flexible control over the use of the colour  palettes  by
only  ever using a single palette but allowing the operator to set the  colours
used in that palette whenever a change is required.

The colour palette comprises 8 palette colour slots each of which specifies a
true foreground and background colour to be used when a character is  dis-
played using that palette colour slot; the palette therefore allows the  termi-
nal  to display data in up to 8 foreground/background colour  combinations.
The  palette  colour  slots are numbered 1 to 8. In addition  to  the  8  fore-
ground/background  combinations,  the  displayed  character  may  also   be
made to blink.

The  PC console is able to display up to 16 foreground colours and 8  back-
ground colours giving a total of 128 foreground/background colour  combi-
nations.   In addition, each colour combination may be made to  blink.   On
some  PCs,  however, depending on the operating system in use,  the  blink
capability  is  used  to specify the intensity of the  background  attribute  in-
stead,  thus  giving  the possibility of 16 foreground colours  and  16  back-
ground  colours  -  a total of 256  foreground/background  colour  combina-
tions.

Although  the colour combinations available on the Wyse WY-325  terminal
appear  limited  in comparison to those on the PC console,  most  programs
use colour combinations sparingly and the terminal's colour capabilities  are
generally sufficient for most programs.

Terminal Manager allows the true colour combinations in the palette colour
slots to be changed at any time using the SETWY325 program, thus  allow-
ing  custom colour combinations for each application program if  necessary.
SETWY325 lets the operator specify a palette file usually having the  .PAL
extension.  The palette file may be created using any text editor and is  de-

A-20                               Terminal Information


scribed in section A.6.1.  The palette file specifies the true foreground  and
background colours to be assigned to each of the 8 palette colour slots.
When  displaying colour output on the Wyse WY-325, some form  of  con-
version from the 128/256 PC console colour combinations to the 8 terminal
colour  combinations  must be performed.  This conversion, referred  to  as
colour  mapping,  is defined in the palette file, for example,  by  specifying
that  output  displayed  on  the PC console as a cyan  foreground  on  a  red
background  should be made to display according to the colours set  in  pal-
ette  colour  slot  3.   The user is able to  easily  experiment  with  different
colour mappings until the preferred colour combination is found.

The  palette file also allows the user to specify the colour to be used for  the
video overscan border surrounding the screen.

Although  only  one  colour palette is active at a  time,  Terminal  Manager
maintains the colour palette, border colour and colour map on a per-session
basis.   If the user press the hot-keys to switch from session to  session,  the
appropriate  colour palette and border colour is loaded into the  terminal  as
each  session is displayed.  If the user starts a new session, the new  session
inherits  the colour palette, border colour and colour map from the  original
session,  although  these may be subsequently  changed  using  SETWY325
without  affecting  the original session.  When a terminal comes  on-line,  a
default  colour  palette and border colour is loaded into the  terminal  and  a
default colour map is used.

In  addition  to changing the colour palette, border colour  and  colour  map
using  the  SETWY325  program,  an  application  program  may  call   the
Terminal  Manager API (application programming interface)  call  TrmSet-
Wyse325  to  provide for colour changing during the operation of  the  pro-
gram   itself.   TrmSetWyse325  is  documented  in  the   manual   Terminal
Manager - Programmer's Toolkit.

The  Wyse  WY-325  terminal is available with a number  of  keyboard  op-
tions.  The keyboard supported by Terminal Manager is the following :-

  '` Enhanced PC-style Keyboard

Instructions  for  configuring  the  terminal are  contained  in  the  WY-325
User's Guide supplied with the terminal.

The  terminal must be configured to operate in the PC TERM mode  as  de-
scribed  below.   Key repeats are handled internally by  Terminal  Manager
and should be turned off at the terminal.


Terminal Information                               A-21


The  terminal is able to display the graphic characters 0 to 31,  however,  if
XON/XOFF is being used for flow control, the graphic character  displayed
for  value  19  will be the single exclamation mark '!'  instead  of  a  double
exclamation mark.

The Wyse WY-325 should use cable type 1, as described in appendix C, for
local  connection to the computer.  This cable type allows for  flow  control
using the RS232 signals if desired and enables the computer to detect if  the
terminal is switched off.

It  is important to ensure that either RS232 or XON/XOFF flow  control  is
used  since some Wyse WY-325 terminal functions can take relatively  long
periods  of time during which loss of data and corruption of the screen  may
occur.

If  flow  control is to be XON/XOFF, the 'F4 Comm'  setup  menu  should
have 'Rcv Hndshk=XON-XOFF/XPC' and 'Xmt Hndshk=XON-XOFF'.  If RS232 flow
control  is  to be used, 'Rcv Hndshk=DTR' and 'Xmt  Hndshk=None'  should  be
selected.   It  is  recommended that cable type 1 be used for  both  types  of
flow control.

If  the port to which the Wyse WY-325 is connected contains  the  National
Semiconductor  NS16550A  communication  chip,  the  'F4  Comm'  setup
menu should be set for the 'Xmt Lim=None' option.  This will ensure that  the
first-in  first-out  receive  buffer  on the 16550A is able to  be  used  to  full
effect.   If the 16550A chip is not being used, 'Xmt Lim=60cps' will  smooth
out the receive character processing at the computer.

Many  of the set-up options listed below are configured automatically  when
a terminal first comes on-line, however, it is recommended that you  confi-
gure the terminal as shown to avoid any possible problems.

The Wyse WY-325 Status Line

The  status line of the Wyse WY-325 can be displayed or hidden  using  the
STATUSLINE statement in the TERMINAL section of the  TRMMAN.INI
file.

If  the status line is to be displayed, it is displayed in the colour assigned  to
palette  colour  slot  7.  Terminal Manager selects the  standard  status  line
option of the terminal as follows :-

  <locks> <mode> <cpos> <session name>


A-22                               Terminal Information


where each of the above fields contains the following information :-

  <locks>    is maintained by the terminal and represents the status
            of  the  NUM-LOCK  and  CAPS-LOCK  keys.   The
            contents  of this field usually correspond to the  lights
            on the keyboard.

  <mode>     is maintained by the terminal and represents the cur-
            rent communication mode that the terminal is set  for.
            This field will normally contain the FDX message.

  <cpos>     is maintained by the terminal and displays the current
            cursor position.

  <session name> is  maintained by Terminal Manager and is the  name
            of  the  current session being displayed.  The  field  is
            updated whenever a session change occurs.   Because
            of  limitations  of the terminal, the field can  only  be
            updated  on a session change;  if the session  name  is
            changed  by an application program, the  change  will
            not appear until a session change occurs.

The  Wyse WY-325 imposes limitations on the way that Terminal  Manager
handles  the keyboard lock status message and the  corresponding  keyboard
lights;  Terminal Manager is not able to directly control the terminal  status
or keyboard lights.  Whenever a session change occurs, Terminal  Manager
is  able  to resynchronise its internal status with that of the terminal  for  the
NUM-LOCK and CAPS-LOCK keys.  Terminal Manager is unable to con-
trol or synchronise with the SCROLL-LOCK message or keyboard light.

Changes  in  the  terminal's  keyboard lock status  caused  by  the  operator
pressing  the  CAPS-LOCK  or NUM-LOCK  keys  cause  a  corresponding
change  in Terminal Manager's internal lock status.  In these situations,  the
two keyboard status settings will remain in synchronisation.

If an application program changes the CAPS-LOCK or NUM-LOCK status,
Terminal Manager will change its internal status but is unable to change the
terminal status message or the keyboard lights.  In this situation, the  termi-
nal  status will remain out of synchronisation until the next  session  change
occurs.





Terminal Information                               A-23


Wyse WY-325 Screen Modes

The following screen modes are available for the Wyse WY-325 :-

  '` 80 columns x 25 rows (default)
  '` 132 columns x 25 rows
  '` 80 columns x 43 rows
  '` 132 columns x 43 rows

Wyse WY-325 Printing

The  Wyse  WY-325 connects printers via the auxiliary parallel port  or  via
the second serial port.

The  'F6 Misc' menu controls the configuration of the attached  printer.   If
the application wishes to send null bytes to the printer, the NULLS SUPPRESS =
OFF option should be selected.




























A-24                               Terminal Information


Wyse WY-325 Setup Menus

The  recommended  set-up  options  for each of  the  Wyse  WY-325  menu
screens  are described below although some options will depend upon  your
system  requirements, particularly with regard to the auxiliary parallel  port
and the second serial port.

 --------------------------  F1 Disp  --------------------------------

  Columns = 80           Cursor = Blink Line     Scrn Saver = On
  Lines = 25             Display = Dark          Char Cell = 10 x 16
  Page = 1 x Lines       Autopage = Off          80/132 Clr = On

 --------------------------  F2 Genrl  -------------------------------

  Personality = PC TERM  Enhance = Off           Status Line = On
  Scrl = Jump            Autoscrl = On           Wrap EOL = Off
  Rcv CR = CR            Monitor = Off           Recognise DEL = Off

 --------------------------  F3 Keybd  -------------------------------

  Keyclick = Off         Repeat = Off            Keycode = Scan
  Keylock = Caps         Margin Bell = Off       Bell Volume = 2
  Language = UK          Corner Key = Funct

 --------------------------  F4 Comm  --------------------------------

 Data Rate = 9600        Data/Parity = 8/None    Stop Bits = 1
 Rcv Hndshk=XON/XOFF-XPC Rcv Hndshk Level = 192  Xmt Hndshk = XON/XOFF
 Comm = FDX              XmtLim = 60 cps         Host Port = Serial 1

 --------------------------  F5 Attr  --------------------------------

  Color Map = Reverse    Intensity Attribute = Off   Attribute = Char
  WPRT Intensity = Dim   WPRT Rev = Off              WPRT Undrln = Off

 ---------------------------------------------------------------------

The 'F6 Misc' menu is used to configure an attached printer; the other op-
tions  in the menu are not used.  The 'F7 ANSI1', 'F8 ANSI2', 'F9  Tabs',
'F10  Ansbk'  and 'F11 Fkeys' menus are not used.  Any changes  made  to
the  menus  must  be stored in non-volatile RAM by  using  the  'F12  Exit'
menu and selecting 'YES'.


Terminal Information                               A-25


-------------------------------------------
A.6.1  The SETWY325 Program

The SETWY325 program is used to load the terminal's colour palette.  The
program takes a single parameter :-

  SETWY325 <palette file>

where  <palette  file> is the full name, and possibly full path,  of  the  file
containing  the  palette  specification.  Palette files usually  have  the  .PAL
extension.   A sample Wyse WY-325 palette file, SAMPL325.PAL,  is  in-
stalled into the TRMMAN directory.

The palette file is an ASCII format text file and may be created or modified
using  the  OS/2  system  editor E.EXE or any  other  text  editor  or  word
processor able to handle ASCII text files.

The  palette file is structured in the standard format of .INI files as used  by
other  components of Terminal Manager e.g. TRMMAN.INI.  It is  divided
into  a number of sections each starting with a keyword enclosed  in  square
brackets '[.....]'.  Within each section a number of statements are specified,
each starting with a keyword followed by a parameter value.  The file  may
contain  comment  lines starting with the ';'  character;  anything  following
the  ';'  character on any line of the file is treated as a comment and  is  not
used  by SETWY325.    Blank lines are ignored and may be inserted to  aid
readability.

The WYSE325 section must be the first section in the file, although it  need
not start on the first line of the file.  Other sections of the file can appear in
any desired order.

The following section keywords are permissible :-

  [WYSE325]  is an empty section identifying the file as a Wyse WY-325
          colour palette file.

  [PALETTE]  contains   statements  which  define  the  foreground   and
          background colours to be assigned to each of the 8 palette
          colour  slots and the colour of the video  overscan  border
          of the screen.

  [COLORMAP] contains  statements  defining  the  translation  of  colours
          displayed  on  the  PC console into  a  palette  colour  slot
          number to be used for displaying on the terminal.

A-26                               Terminal Information


A.6.1.1  The WYSE325 Section

The WYSE325 section must be present in every palette file and must be the
first section in the file.  This allows the SETWY325 program to verify  that
the named file is a palette file created for SETWY25.

The  section  is a blank section having no statements and serves  to  identify
the  file as a palette file for the SETWY325 program.  The  WYSE325  sec-
tion will usually be followed immediately by the next section of the file, for
example :-

  [WYSE325]
  [PALETTE]
    .
    .
    .

A.6.1.2  The PALETTE Section

The  PALETTE section defines the true foreground/background  colours  to
be  used for each of the 8 palette colour slots.  It also defines the  colour  to
be used for the screen overscan border.

There may be only one PALETTE section in the palette file.

The  PALETTE  section  is in the format described  below.   The  keyword
statements within the section may be given in any desired order.

  [PALETTE]

     COLOR1=defines  the  foreground/background  colour  combination
          for palette colour slot 1
     COLOR2=defines  the  foreground/background  colour  combination
          for palette colour slot 2
     COLOR3=defines  the  foreground/background  colour  combination
          for palette colour slot 3
     COLOR4=defines  the  foreground/background  colour  combination
          for palette colour slot 4
     COLOR5=defines  the  foreground/background  colour  combination
          for palette colour slot 5
     COLOR6=defines  the  foreground/background  colour  combination
          for palette colour slot 6
     COLOR7=defines  the  foreground/background  colour  combination
          for palette colour slot 7

Terminal Information                               A-27


     COLOR8=defines  the  foreground/background  colour  combination
          for palette colour slot 8
     BORDER=defines the colour of the video overscan border

The COLORn Statements in the PALETTE Section

The  COLORn  statements  define the  foreground  and  background  colour
combination for the relevant palette colour slot.

The colour combination is defined in the form :-

  <foreground colour>_ON_<background colour>

where  <foreground  colour>  and <background colour> may  be  one  of  the
following :-

  BLACK
  BLUE
  GREEN
  CYAN
  RED
  MAGENTA
  YELLOW
  WHITE

Only those statements necessary to change from the existing colour  combi-
nations need be specified.

The following is an example of the use of the COLORn statements :-

  COLOR1 = YELLOW_ON_BLUE

The BORDER Statement in the PALETTE Section

The BORDER statement specifies the colour to be used to display the video
overscan border of the screen.

The following parameter keywords may be specified after the BORDER= key-
word :-

  BLACK
  BLUE
  GREEN
  CYAN

A-28                               Terminal Information


  RED
  MAGENTA
  YELLOW
  WHITE
  DIM_BLUE
  DIM_GREEN
  DIM_CYAN
  DIM_RED
  DIM_MAGENTA
  DIM_YELLOW
  DIM_WHITE

The  BORDER  statement  need only be used if the border colour  is  to  be
changed from the existing colour.

The following is an example of the use of the BORDER statement :-

  BORDER = DIM_BLUE

A.6.1.3  The COLORMAP Section

The COLORMAP section defines the translation of colours displayed on the
PC console into a palette colour slot to be used for displaying on the termi-
nal.   The  actual  colour  displayed on the  terminal  is  determined  by  the
colours  assigned to that palette colour slot in the PALETTE section  of  the
file,  or the current colour combination of the palette colour slot if no  reas-
signment was specified in the PALETTE section..

There may be only one COLORMAP section in the palette file.

The  COLORMAP section is in the format described below.  The  keyword
statements within the section may be given in any desired order.

  [PALETTE]

    <PC foreground colour>_ON_<PC background colour>=<colour slot>
    .
    .
    .
    <PC foreground colour>_ON_<PC background colour>=<colour slot>

The  section  will  contain as many statements as  necessary  to  change  the
mapping  from that which is currently active.  The following is an  example
of the use of the statements in the COLORMAP section :-

Terminal Information                               A-29


  BLACK_ON_WHITE = COLOR3

The  above  statement  would cause everything displayed as  a  black  fore-
ground  on  a  white background to  appear  in  the  foreground/background
colour  combination  assigned to COLOR3 in the PALETTE section  of  the
file, or the current colour combination of COLOR3 if no reassignment  was
specified in the PALETTE section.

The  statement  keyword is formed by specifying the following  colours  for
the  <PC foreground colour> and <PC background colour> parts of  the  key-
word :-

        BLACK        LIGHTBLACK
        BLUE        LIGHTBLUE
        GREEN        LIGHTGREEN
        CYAN        LIGHTCYAN
        RED        LIGHTRED
        MAGENTA      LIGHTMAGENTA
        BROWN        LIGHTBROWN
        WHITE        LIGHTWHITE

The  LIGHT colour names specified above are used for consistency.   LIGHT-
BLACK  is  in  fact grey and LIGHTBROWN is yellow.  Under DOS, or  in  a  full
screen  Windows  or OS/2 DOS session, the LIGHT background  colours  are
interpreted  as  a  blink of the associated foreground colour  on  a  non-light
rendition  of the background colour.  In Windows or OS/2 windowed  DOS
sessions, the true light background rendition appears.

The  <colour slot> parameter defines which of the palette colour slots is  to
be  used instead of the PC attribute combination.  In addition  to  specifying
the colour slot, the character displayed on the terminal may also be made to
blink.  The following values may be specified for <colour slot> :-

        COLOR1       COLOR1_BLINK
        COLOR2       COLOR2_BLINK
        COLOR3       COLOR3_BLINK
        COLOR4       COLOR4_BLINK
        COLOR5       COLOR5_BLINK
        COLOR6       COLOR6_BLINK
        COLOR7       COLOR7_BLINK
        COLOR8       COLOR8_BLINK




A-30                               Terminal Information


-------------------------------------------
A.7  The DOS-Terminal

A  DOS-Terminal  is essentially a DOS PC running the  Terminal  Manager
TERM.EXE program to function as a terminal.

The DOS-TERMINAL feature and the TERM.EXE program are  described
in detail in chapter 6.





































Terminal Information                               A-31


-------------------------------------------
A.8  ASCII Terminal Support

Terminal  Manager  is designed to operate best when  using  terminals  that
have  a  PC mode of operation.  However, limited support  is  provided  for
users  wishing  to connect regular ASCII/ANSI terminals not having  a  PC
mode such as the DEC VT220.

ASCII  terminals  differ  in two major areas from  the  PC  mode  terminals
supported  by Terminal Manager.  Firstly, the screen control codes are  not
known  to Terminal Manager and are probably unique to a  given  terminal,
secondly,  the keyboards of ASCII terminals function differently than  key-
boards on the named PC mode terminals.

The  PC mode keyboards generate scan codes whenever a key is pressed  or
released.  Terminal Manager converts the scan codes into ASCII or  exten-
ded ASCII characters that may be understood by application programs.

ASCII  keyboards  generate  pure ASCII codes instead  of  scan  codes  and
Terminal  Manager  must treat these ASCII codes in a special  way  so  that
they  may be presented to an application program as though they had  come
from  a  genuine PC keyboard.  This special handling must  also  include  a
means  of simulating the pressing of keys that are present on PC  keyboards
but  which  may  not be present on ASCII  keyboards.   Terminal  Manager
must  therefore perform the task of converting combinations of ASCII  key-
strokes  into a sequence of keystrokes resembling those generated by  a  PC
keyboard.

In  general, a PC keyboard is able to generate many more sequences than  a
pure ASCII keyboard and it is likely that a number of keys present on a  PC
keyboard  may  not  be  able to be represented or  simulated  on  an  ASCII
keyboard.

The Terminal Manager - Programmer's Toolkit includes a means of  gener-
ating  a  file  that  will control  Terminal  Manager's  processing  of  ASCII
keystrokes  and  also  defines the screen control codes  for  a  given  ASCII
terminal.  This file is termed the ASCII Terminal Definition file and normal-
ly has the extension .ATD.

The Toolkit user is therefore able to generate a file containing the  informa-
tion  required  by Terminal Manager to allow it to support  the  majority  of
ASCII/ANSI  terminals on the market.  Additionally, because the  file  con-
trols  the  mapping  of ASCII keys to PC scan codes,  .ATD  files  may  be
tailored to suit the requirements of specific application programs.

A-32                               Terminal Information


If  Terminal Manager finds the TERMTYPE=ASCII statement in  a  TERMINAL
section,  it  loads the ASCII Terminal Definition file specified by  the  ATD=
statement  contained  in that TERMINAL section.  If the ATD=  statement  is
not   specified,   Terminal   Manager  attempts  to   load   the   default   file
ASCII.ATD.

Each  .ATD file usually has a dynamic link library associated with it.  If  an
ASCII terminal is defined and the .ATD file is specified in the ATD  state-
ment,  the  associated dynamic link library must be available for  access  by
OS/2.    Normally,  these  dynamic  link  libraries  will  be  located  in   the
\TRMMAN directory on the boot drive.

ASCII  terminals may have screen sizes that are different from the  standard
PC screen size of 80 columns by 25 rows; many ASCII terminals have only
24  rows.   If  an application program requests details  of  the  screen  from
OS/2, using the VioGetMode API call, it will be passed the true dimensions
of the terminal screen.  Well-written applications should always  interrogate
the  environment  in  which  they are running  and  modify  their  operation
accordingly.   However, some programs may present problems  running  on
ASCII  terminals  if they blindly make the assumption that the screen  is  80
by 25.

A.8.1  Special Key Sequences For ASCII Terminals

Because  ASCII terminal keyboards do not have the same key layout as  PC
keyboards,  keys  such as the PC function keys (F1 to F12),  Insert,  Delete
etc  may not appear on the keyboard.  Instead, the .ATD file for the  termi-
nal  will have defined certain keys on the keyboard to represent the  missing
PC  keys.  Documentation describing how to access these  unavailable  keys
should always be provided with any custom-built .ATD file.

The  following  keys on the PC keyboard present a  special  problem  when
representing them on an ASCII keyboard :-

  '` the ALT key
  '` the CTRL key
  '` the SHIFT key

These  three  keys  are usually pressed in conjunction with  another  key  to
perform some application-defined function e.g. CTRL+A, SHIFT+F1 etc.
In   addition,  CTRL+ESC  and  ALT+ESC  are  required   by   Terminal
Manager for switching between sessions at the terminal.  On ASCII  termi-
nals,  even  if the keyboard has keys bearing the above legends, no  code  is
generated  when  these keys are pressed and the host  is  therefore  unaware

Terminal Information                               A-33


that the next key pressed is to be processed in conjunction with one of these
keys.   To  overcome this problem, the .ATD file is able to  designate  four
special keys on the keyboard.  These keys are termed META keys :-

  '` META-ALT
  '` META-CTRL
  '` META-SHIFT
  '` META-CLEAR

The keys allocated to the META keys will always send a unique code to the
host.   Whenever  one  of the META keys  is  pressed,  Terminal  Manager
assumes  that  the associated PC key is pressed for the duration of  the  next
keystroke  after  which it assumes that the associated PC key  has  been  re-
leased.  For example, the pressing of CTRL+C on a PC keyboard involves
pressing  CTRL, pressing and releasing 'c' and then releasing  CTRL.   On
the  ASCII  keyboard  this is simulated by pressing  and  releasing  META-
CTRL  and then pressing and releasing 'c'; when META-CTRL  is  pressed
Terminal  Manager assumes that the PC CTRL key is pressed, after the  'c'
is pressed, it assumes that the CTRL key has been released.

Documentation describing how to access the META keys should always  be
provided with any custom-built .ATD file.

The  pressing of META keys is cumulative e.g. if META-CTRL is  pressed
followed  by META-SHIFT followed by META-ALT,  Terminal  Manager
treats  the  next character key as though it was pressed in  conjunction  with
the  ALT+CTRL+SHIFT  keys.   Pressing a META key  more  than  once
before  pressing  a  character  key  treats the  character  key  as  though  the
META  key was pressed just once i.e. the META key state does not  toggle
up and down with successive presses.

If you press a META key by mistake, or if you are uncertain which META
keys  you have pressed, you may press the META-CLEAR key to reset  all
META key states i.e. ALT, CTRL and SHIFT are considered not pressed.

A.8.2  DEC VT220 Support

Terminal  Manager  is  supplied  with  an  ASCII  Terminal  Definition  file
(.ATD  file)  specially configured to support the DEC VT220.   The  file  is
named   VT220.ATD  and  is  accompanied  by  its  dynamic   link   library
ATS220.DLL.

In  the  VT220.ATD file, the mapping of VT220 keys to simulate  PC  keys
has  been chosen arbitrarily without consideration for use with any  specific

A-34                               Terminal Information


OS/2 application.  If you use VT220 terminals with Terminal Manager, you
may  find  it more convenient to generate your own .ATD file with  a  key-
board  mapping designed to run with your specific mix of  application  pro-
grams.   Additionally,  VT220.ATD has been configured for a  US  VT220
keyboard;  if you wish to use a non-US keyboard, you should generate your
own .ATD file.  Figure A.1 lists the mapping of VT220 keys to PC keys.

The  VT220  support files are copied onto the hard disk  of  your  computer
when  Terminal  Manager  is installed.   The  following  statements  should
appear  in  the TERMINAL section of TRMMAN.INI  (assuming  drive  C
was the installation drive) :-

  TERMTYPE = ASCII
  ATD = C:\TRMMAN\VT220.ATD

The  VT220 has a limited screen size of 80 columns by 24 rows in  contrast
to  a standard PC screen size of 80 columns by 25 rows.  If  an  application
program  requests  details of the screen from OS/2, using  the  VioGetMode
API  call,  it will be told that the screen is 80 columns by  24  rows.   Well-
written  applications  should  always interrogate the  environment  in  which
they  are running and modify their operation accordingly.  However,  some
programs may present problems running on the VT220 if they blindly make
the assumption that the screen is 80 by 25.

A.8.3  Wyse WY50 Support

Terminal  Manager  is  supplied  with  an  ASCII  Terminal  Definition  file
(.ATD  file)  specially configured to support the Wyse WY50.  The  file  is
named   WY50.ATD  and  is  accompanied  by  its  dynamic   link   library
ATSWY50.DLL.

In  the  WY50.ATD file, the mapping of WY50 keys to  simulate  PC  keys
has  been chosen arbitrarily without consideration for use with any  specific
OS/2 application.  If you use WY50 terminals with Terminal Manager, you
may  find  it more convenient to generate your own .ATD file with  a  key-
board  mapping designed to run with your specific mix of  application  pro-
grams.   Additionally,  WY50.ATD  has been configured for  a  US  WY50
keyboard;  if you wish to use a non-US keyboard, you should generate your
own .ATD file.  Figure A.2 lists the mapping of WY50 keys to PC keys.

The  WY50  support files are copied onto the hard disk  of  your  computer
when  Terminal  Manager  is installed.   The  following  statements  should
appear  in  the TERMINAL section of TRMMAN.INI  (assuming  drive  C
was the installation drive) :-

Terminal Information                               A-35


  TERMTYPE = ASCII
  ATD = C:\TRMMAN\WY50.ATD

The  WY50 has a limited screen size of 80 columns by 24 rows  in  contrast
to  a standard PC screen size of 80 columns by 25 rows.  If  an  application
program  requests  details of the screen from OS/2, using  the  VioGetMode
API  call,  it will be told that the screen is 80 columns by  24  rows.   Well-
written  applications  should  always interrogate the  environment  in  which
they  are running and modify their operation accordingly.  However,  some
programs may present problems running on the WY50 if they blindly  make
the assumption that the screen is 80 by 25.

A.8.4  Wyse WY60 Support

Terminal  Manager  is  supplied  with  an  ASCII  Terminal  Definition  file
(.ATD  file)  specially configured to support the Wyse WY60.  The  file  is
named   WY60.ATD  and  is  accompanied  by  its  dynamic   link   library
ATSWY60.DLL.

If  possible, the WY60 should be used in its PC Terminal  mode,  however,
some  communication  multiplexers  have  proved  unsuitable  for  the  scan
codes  generated  by  PC  Terminal  mode.   The  WY60  ASCII   Terminal
Support  files  are  supplied to allow users in a similar  position  to  use  the
WY60 in its native ASCII mode.

In  the  WY60.ATD file, the mapping of WY60 keys to  simulate  PC  keys
has  been chosen arbitrarily without consideration for use with any  specific
OS/2 application.  If you use WY60 terminals with Terminal Manager, you
may  find  it more convenient to generate your own .ATD file with  a  key-
board  mapping designed to run with your specific mix of  application  pro-
grams.   Additionally,  WY60.ATD  has been configured for  a  US  WY60
keyboard;  if you wish to use a non-US keyboard, you should generate your
own .ATD file.  Figure A.3 lists the mapping of WY60 keys to PC keys.

The  WY60  support files are copied onto the hard disk  of  your  computer
when  Terminal  Manager  is installed.   The  following  statements  should
appear  in  the TERMINAL section of TRMMAN.INI  (assuming  drive  C
was the installation drive) :-

  TERMTYPE = ASCII
  ATD = C:\TRMMAN\WY60.ATD




A-36                               Terminal Information


-------------------------------------------
          PC Key          VT220 Key

        META_SHIFT     PF1
        META_ALT      PF2
        META_CTRL     PF3
        META_CLEAR    PF4

        F1          F6
        F2          F7
        F3          F8
        F4          F9
        F5          F10
        F6          F11
        F7          F12
        F8          F13
        F9          F14
        F10          F15
        F11          F16
        F12          F17

        PAUSE/BREAK    F18
        NUM-LOCK      F19
        ESC          F20

        HOME        FIND
        INSERT        INSERT HERE
        DELETE        REMOVE
        END          SELECT
        PAGE UP       PREV SCREEN
        PAGE DOWN     NEXT SCREEN

Notes:
1) The  VT220  main keyboard keys function as indicated by  the  key-top
  legend.
2) The  VT220  Cursor  Pad  keys function  as  indicated  by  the  key-top
  legend.
3) The  VT220  Numeric  Pad keys function as indicated  by  the  key-top
  legend.
4) The  VT220  CTRL key has no effect and does not  perform  the  same
  function as the PC CTRL key.

        Figure A.1 - VT220 to PC Keyboard Mapping
-------------------------------------------

Terminal Information                               A-37


-------------------------------------------
          PC Key          WY50 Key

        META_SHIFT     F13
        META_ALT      F14
        META_CTRL     F15
        META_CLEAR    F16

        PAUSE/BREAK    BREAK
        ESC          ESC+ESC or CLR LINE
                    or CLR SCRN

        HOME        HOME
        INSERT        INSERT CHAR
                    or INSERT LINE
        DELETE        DELETE CHAR
                    or DELETE LINE
        END          SHIFT+HOME
        PAGE UP       PAGE PREV
        PAGE DOWN     PAGE NEXT

        BS          DEL
        LEFT ARROW     LEFT ARROW or BS

Notes:

1) All other keys are as indicated by the keyboard legend.
2) The  WY50  CTRL  key has no effect and does not  perform  the  same
  function as the PC CTRL key.
3) Because  of keyboard code limitations of the WY50, the BS  key  func-
  tions  the  same as the left arrow key i.e. it is  a  non-destructive  back-
  space.  The WY50 DEL key functions like the PC BS key.

      Figure A.2 - Wyse WY50 to PC Keyboard Mapping
-------------------------------------------










A-38                               Terminal Information


-------------------------------------------
          PC Key          WY60 Key

        META_SHIFT     F13 or CTRL-Z
        META_ALT      F14 or CTRL-X
        META_CTRL     F15 or CTRL-C
        META_CLEAR    F16 or CTRL-V

        PAUSE/BREAK    BREAK
        ESC          ESC+ESC or CLR LINE
                    or CLR SCRN
        HOME        HOME
        INSERT        INSERT CHAR
                    or INSERT LINE
                    or INS or REPL
        DELETE        DELETE CHAR
                    or DELETE LINE
        END          SHIFT+HOME
        PAGE UP       PAGE PREV
        PAGE DOWN     PAGE NEXT
        BS          DEL
        LEFT ARROW     LEFT ARROW or BS

        CTRL-ESC      CTRL-B
        ALT-ESC       CTRL-N

Notes:

1) All other keys are as indicated by the keyboard legend.
2) The  WY60  CTRL key has no effect unless used in  combination  with
  the  other keys shown above.  It does not perform the same function  as
  the PC CTRL key.
3) Because  of keyboard code limitations of the WY60, the BS  key  func-
  tions  the  same as the left arrow key i.e. it is  a  non-destructive  back-
  space.  The WY60 DEL key functions like the PC BS key.

      Figure A.3 - Wyse WY60 to PC Keyboard Mapping

-------------------------------------------
A.8.5  ASCII Terminal Printing

Currently, Terminal Manager does not support the attachment of printers to
ASCII terminals configured using the ASCII Terminal Support facility.


Terminal Information                               A-39















































A-40                               Terminal Information


-------------------------------------------

Appendix B

Adapter Information

-------------------------------------------

Terminal  Manager  supports  a wide range of  communication  adapters  in
addition to the standard COM1 through COM8 adapters.

An adapter board will be designed for use with either the AT bus, found on
the IBM PC/AT and compatible computers, or the Micro-Channel Architec-
ture (MCA) bus found on the IBM PS/2 and compatible computers.

Some adapter types are available for both types of bus architecture.

Each  adapter  board must be allocated an IRQ level as  documented  in  the
user  manual for the adapter.  In general, each adapter board in an  AT  bus
computer must be assigned a different IRQ level since IRQ levels cannot be
shared  across  boards on the AT bus.  However, some adapter  types  have
on-board logic and external connections which allow a number of  physical-
ly  separate  boards to be connected together to appear as a single  board  to
the  PC/AT;  these  types of board are able to share IRQ levels  on  the  AT
bus.

The MCA bus allows IRQ levels to be shared across a number of physically
separate boards without the need for special logic or external connections.

If  a  directly-controlled adapter board, i.e. one not defined as  ADAPTER  =
COMDRIVER,  has  a number of ports which share a single IRQ level,  or  if  a
number  of  ports on physically separate directly-controlled  adapter  boards
share an IRQ level, a PORT section must be specified for all possible  ports
which  may interrupt on that IRQ level, even if they are not intended  to  be
used for Terminal Manager.  An exception to this is if a  directly-controlled
adapter  board  contains  ports  which  may  be  physically  configured  out,
possibly  by  means  of  switches  on  the  board.   On  MCA-bus  systems,
Terminal  Manager  will  allow  other OS/2 drivers  to  control  any  of  the
COM2-COM8  ports  not  directly  controlled by  itself,  even  though  they
might  physically be on the same adapter board as ports  controlled  directly
by Terminal Manager and share the same IRQ level.




Adapter Information                               B-1


For adapters controlled via an OS/2 device driver i.e. those with ports  de-
fined  as ADAPTER = COMDRIVER, it is not necessary for Terminal  Manager  to
control all ports on that adapter.

On MCA-bus systems, Terminal Manager will share IRQ levels with  other
device drivers and will pass on any interrupts not generated by the  adapters
under its control.

Before  attempting  to  use  Terminal Manager with  a  specific  board,  the
manufacturer's installation and testing procedures must first have been car-
ried  out.  Part of the installation procedure will normally involve  choosing
the range of addresses for the board and the IRQ level.  Terminal  Manager
places  some  restrictions  on the address ranges for  certain  adapter  types.
Any  restrictions imposed by Terminal Manager are detailed in  the  follow-
ing  sections.   You  should  ensure that the addresses  you  choose  are  not
being used by any other device in the computer.

Currently,  the  adapters supported by Terminal Manager all  use  the  same
family  of communication chips manufactured by  National  Semiconductor.
The specific chips are :-

  NS16450
  NS16550
  NS16550A

The   NS16450   and   NS16550  are   functionally   equivalent   while   the
NS16550A provides additional features.

The  NS16550A contains two 16 byte first-in first-out (FIFO)  buffers,  one
for  transmitted  data,  the other for received data.  These  buffers  may  be
used by Terminal Manager to decrease the processing overhead needed  for
communication   with  the  terminal.   Section  5.2  on  the   RXFIFO   and
TXFIFO statements gives details of the use of these FIFO buffers.

Terminal  Manager  will  test each adapter port to determine  whether  it  is
fitted with the NS16550A and will use the FIFO capabilities if present.

The following sections discuss each adapter in detail.







B-2                               Adapter Information


-------------------------------------------
B.1  The COM1 Through COM8 Adapters

The  COM1  through  COM8 adapters are the standard  adapters  found  on
PC/AT and PS/2 systems.

AT-bus  systems may use COM1 and COM2 while MCA-bus systems  may
additionally provide COM3 through COM8.

IRQ  sharing  is  possible  only on  MCA  systems  where  COM2  through
COM8 all share the same IRQ level.

The addresses and IRQ levels for COM1 through COM8 are fixed by IBM,
as listed below, and are known to Terminal Manager.


            Adapter    IOBASE      IRQ

        COM1   03F8    4
        COM2   02F8    3
        COM3   3220    3
        COM4   3228    3
        COM5   4220    3
        COM6   4228    3
        COM7   5220    3
        COM8   5228    3

When  Terminal Manager is not running, the ports are able to  be  accessed
through  the  standard  COM device drivers.  When  Terminal  Manager  is
running,  any port which is Inactive (see section 4.2.1) may be used via  the
standard  COM driver, however, an error status will be displayed if an  at-
tempt  is  made to activate the terminal while the port is still in  use  by  the
COM driver.












Adapter Information                               B-3


-------------------------------------------
B.2  The ACCENT ASYNC-4 Adapter

The  ACCENT  ASYNC-4  adapter is available only  for  AT-bus  systems.
Two  versions  of  the  adapter are in  circulation,  the  ASYNC-4  and  the
ASYNC4-II;  for Terminal Manager, both versions are functionally equiva-
lent.

Each  adapter  board provides four ports.  Up to four adapters  may  be  in-
stalled  in the computer if sufficient IRQ levels are available.  Each  adapter
board must use a unique IRQ level since there is no in-built mechanism  for
sharing interrupts between the boards.

The  ASYNC-4  may  be  configured for a  range  of  address  possibilities.
Terminal Manager restricts the range of addresses to the following :-

        Port 1 Port 2 Port 3 Port 4

         220   228   230   238
         240   248   250   258
         260   268   270   278
         280   288   290   298

The  IRQ level may be set for 3 or 4 on the ASYNC4 version of  the  board
or  2,3,4,5  or  7  on the ASYNC4-II version  of  the  board.   The  adapter
allows  each port to have a different IRQ level if desired, however,  Termi-
nal  Manager  imposes the restriction that all ports on a  single  board  must
use the same IRQ level.

The  Operations  Manual supplied with the adapter details the  switch  set-
tings for address and IRQ level selection.

On the ASYNC4-II, switches SW1, SW2 and SW3 must be set to ON.












B-4                               Adapter Information


-------------------------------------------
B.3  The AST Four-Port Async/AT Adapter

The  AST  Four-Port Async/AT adapter is available only  for  AT-bus  sys-
tems.

Each  board provides four ports.  Up to two adapters may be installed  in  a
computer  if  sufficient IRQ levels are available.  Each adapter  board  must
use  a  unique  IRQ level since there is no  in-built  mechanism  for  sharing
interrupts between the boards.

The  AST  Four-Port may be configured for one of two  address  ranges  as
follows :-

        Port 1 Port 2 Port 3 Port 4

         1A0   1A8   1B0   1B8
         2A0   2A8   2B0   2B8

The IRQ level may be set for 2 through 7.

The User's Manual supplied with the adapter details the switch settings for
address and IRQ level selection.

I_M_P_O_R_T_A_N_T__N_O_T_E_:_  The AST Four-Port should be avoided, if possible,
since  it can prove unreliable in certain computers.  AST have  provided  no
satisfactory  response  to  this  problem.  The  problem  manifests  itself  by
stopping  operation of peripherals on IRQ3 and IRQ4 while the AST  Four-
Port  is  in use (even though the AST Four-Port is configured  to  use  some
other IRQ).















Adapter Information                               B-5


-------------------------------------------
B.4  The DIGIBOARD Range Of Adapters

Terminal Manager supports the Digiboard range of non-intelligent adapters,
namely :-

  PC/4    four port AT/ISA-bus adapter
  PC/8    eight port AT/ISA-bus adapter
  PC/16   sixteen port AT/ISA-bus adapter
  MC/4   four port MCA-bus adapter
  MC/8   eight port MCA-bus adapter
  MC/16  sixteen port MCA-bus adapter

The adapters are supplied either with non-buffered communication chips or,
on  request, with buffered 16550A chips.  Terminal Manager does  not  use
the  Status Register facility on the adapters and the Status  Register  address
may be set to some unused address location.

On  AT-bus systems, up to four adapters may be installed in  the  computer
all  sharing a single IRQ level if required;  the IRQ sharing is  implemented
via  connectors  for  daisy-chaining adapters  together.   Terminal  Manager
supports the sharing of IRQ levels on these adapters.  AT-bus adapters  also
have  the  option of using two IRQ levels per  adapter,  however,  Terminal
Manager  requires that all ports on an individual adapter use the  same  IRQ
level.

On  MCA-bus  systems,  multiple adapters may  be  installed  provided  the
address ranges do not overlap;  all adapters may share a single IRQ level in
MCA-bus systems.

Valid  IRQ  levels  for  the AT-bus adapters are 2  through  7.   Valid  IRQ
levels for the MCA-bus adapters are 3, 4, 5, 7, 10, 11, 12, 15.

The  Digiboard adapters may be configured for a choice of address  ranges,
however, Terminal Manager imposes certain restrictions.

DIGIBOARD PC/4 Address Ranges

        Port 1 Port 2 Port 3 Port 4

         110   118   120   128
         190   198   1A0   1A8
         210   218   220   228
         290   298   2A0   2A8

B-6                               Adapter Information


DIGIBOARD MC/4 Address Ranges

        Port 1 Port 2 Port 3 Port 4

        AB80 AB88 AB90 AB98
        AC00 AC08 AC10 AC18
        BB80 BB88 BB90 BB98
        BC00 BC08 BC10 BC18
        CB80 CB88 CB90 CB98
        DB80 DB88 DB90 DB98
        DC00 DC08 DC10 DC18

The RJ45 version of the MC/4 uses the following address ranges :-

        Port 1 Port 2 Port 3 Port 4

        2B40  2B48  2B50  2B58
        3B00  3B08  3B10  3B18
        3B40  3B48  3B50  3B58
        4B00  4B08  4B10  4B18
        4B40  4B48  4B50  4B58
        5B00  5B08  5B10  5B18
        5B40  5B48  5B50  5B58

DIGIBOARD PC/8 Address Ranges

  Port 1 Port 2 Port 3 Port 4 Port 5 Port 6 Port 7 Port 8

   110   118   120   128   130   138   140   148
   190   198   1A0   1A8   1B0   1B8   1C0   1C8
   210   218   220   228   230   238   240   248
   290   298   2A0   2A8   2B0   2B8   2C0   2C8

DIGIBOARD MC/8 Address Ranges

  Port 1 Port 2 Port 3 Port 4 Port 5 Port 6 Port 7 Port 8

  AB80 AB88 AB90 AB98 ABA0 ABA8 ABB0 ABB8
  AC00 AC08 AC10 AC18 AC20 AC28 AC30 AC38
  BB80 BB88 BB90 BB98 BBA0 BBA8 BBB0 BBB8
  BC00 BC08 BC10 BC18 BC20 BC28 BC30 BC38
  CB80 CB88 CB90 CB98 CBA0 CBA8 CBB0 CBB8
  DB80 DB88 DB90 DB98 DBA0 DBA8 DBB0 DBB8
  DC00 DC08 DC10 DC18 DC20 DC28 DC30 DC38

Adapter Information                               B-7


DIGIBOARD PC/16 Address Ranges

Ports  Addresses

1-8  110  118  120  128  130  138  140  148
9-16  150  158  160  168  170  178  180  188

1-8  210  218  220  228  230  238  240  248
9-16  250  258  260  268  270  278  280  288

I_M_P_O_R_T_A_N_T__N_O_T_E_:_  The Digiboard PC/16 is factory-configured for  an
address  range; two PAL (Programmable Array Logic) chips on  the  board
determine  which  address  range is used.  Terminal  Manager  requires  the
version  of the adapter designed for the UNIX operating system.  The  PAL
chip numbers are 40000332 and 40000333 for the first adapter installed in a
computer and 40000334 and 40000335 if a second adapter is installed.

DIGIBOARD MC/16 Address Ranges

Ports  Addresses

1-8  3000  3008  3010  3018  3020  3028  3030  3038
9-16  3040  3048  3050  3058  3060  3068  3070  3078

1-8  4000  4008  4010  4018  4020  4028  4030  4038
9-16  4040  4048  4050  4058  4060  4068  4070  4078

1-8  5000  5008  5010  5018  5020  5028  5030  5038
9-16  5040  5048  5050  5058  5060  5068  5070  5078

1-8  6000  6008  6010  6018  6020  6028  6030  6038
9-16  6040  6048  6050  6058  6060  6068  6070  6078

1-8  7000  7008  7010  7018  7020  7028  7030  7038
9-16  7040  7048  7050  7058  7060  7068  7070  7078










B-8                               Adapter Information


-------------------------------------------
B.5  The HOSTESS Range Of Adapters

The  HOSTESS  range of adapters offers both AT and  MCA  bus  versions
and  is available as a four port, eight port or sixteen port board.  The  adap-
ters supported are :-

      AT-bus Adapters    MCA-bus Adapters

      Hostess 4-port     Hostess/MC 4-port
      Hostess 550 4-port   Hostess 550/MC 4-port
      Hostess 8-port     Hostess/MC 8-port
      Hostess 550 8-port   Hostess 550/MC 8-port
      Hostess 550 16-port   Hostess 55/MC 16-port

Up  to  eight  adapters may be installed in the  computer  if  sufficient  IRQ
levels are available.  In addition, Terminal Manager currently has an  upper
limit  of  32  ports, therefore, the combination of 4, 8  and  16  port  boards
must  not  exceed  this  limit.  The Hostess 550  versions  use  the  buffered
16550A communication chip allowing Terminal Manager to take  advantage
of the first-in first-out buffers.

IRQ levels may be shared between individual boards.  On AT bus boards, a
connector is provided to link the boards together so that on-board logic  can
handle  the IRQ sharing.  On MCA bus boards, the features inherent in  the
MCA bus provide the IRQ sharing.

The IRQ level may be set for 2 through 12 depending on the version of  the
adapter which you are using.

The  Mask  Register  on  the Hostess adapter should  be  disabled.   This  is
achieved  on AT-bus adapters by setting switches on the board.  On  MCA-
bus adapters, this is achieved by the Programmable Option Select feature of
PS/2 computers.

The User's Guide supplied with the adapter describes how to configure  the
board for address and IRQ level selection.

The  Hostess  adapter  may be configured for a  choice  of  address  ranges,
however, Terminal Manager imposes certain restrictions.

The address ranges for the 4-port boards and the 8-port boards overlap;  the
4-port  board uses the low addresses of the range.  The following  table  de-
tails the valid address ranges for 4-port and 8-port adapters.

Adapter Information                               B-9


  Port 1 Port 2 Port 3 Port 4 Port 5 Port 6 Port 7 Port 8

   280   288   290   298   2A0   2A8   2B0   2B8
   2C0   2C8   2D0   2D8   2E0   2E8   2F0   2F8
   300   308   310   318   320   328   330   338
   500   508   510   518   520   528   530   538
   540   548   550   558   560   568   570   578
   580   588   590   598   5A0   5A8   5B0   5B8
   640   648   650   658   660   668   670   678
   680   688   690   698   6A0   6A8   6B0   6B8
   700   708   710   718   720   728   730   738


The  address ranges for the 16-port boards overlap and extend upon  the  8-
port board addresses.  The following address ranges are valid :-

Port 1...Port 9 10   11   12   13   14   15   16

280   ...2C0  2C8  2D0  2D8  2E0  2E8  2F0  2F8
500   ...540  548  550  558  560  568  570  578
580   ...5C0  5C8  5D0  5D8  5E0  5E8  5F0  5F8
680   ...6C0  6C8  6D0  6D8  6E0  6E8  6F0  6F8
700   ...740  748  750  758  760  768  770  778






















B-10                               Adapter Information


-------------------------------------------
B.6  The Qiiq S-Link Adapter

The  S-LINK  adapter  is available only for AT-bus  systems.   Each  board
provides four ports.  Up to three adapters may be installed in a computer  if
sufficient  IRQ levels are available.  Each adapter board must use  a  unique
IRQ  level  since there is no in-built mechanism for  sharing  interrupts  be-
tween the boards.

The  S-LINK  adapter may be configured for one of three  address  ranges  as
follows :-

        Port 1 Port 2 Port 3 Port 4

         180   188   190   198
         1A0   1A8   1B0   1B8
         2A0   2A8   2B0   2B8

The  IRQ  level  may  be set for 3, 4, 5, 6, 7, 10, 11, 12, 14  or  15.   Switches  1
through 10 of switch block 1 at the top left corner of the board select the IRQ
to  be  used.   Only one of the switches should be set to the  ON  position;  all
others should be set OFF.  The switches select the IRQ as follows :-

    Switch 1 2 3 4 5 6 7 8 9 10

    IRQ  3 4 5 6 7 10 11 12 14 15

Switches 11 and 12 of switch block 1 select the port base addresses :-

     Switch 11      Switch 12  Port Base Addresses

    OFF      OFF   180  188  190  198
    OFF      ON    1A0  1A8  1B0  1B8
    ON      OFF   2A0  2A8  2B0  2B8
    ON      ON    Invalid setting

The  jumper blocks JP1, JP2, JP3 and JP4 must have no  jumpers  connected.
The jumper block JP5 must have a jumper between pin 2 and pin 3.







Adapter Information                               B-11


-------------------------------------------
B.7  The Technology Concepts CC8 Adapter

The Technology Concepts CC8D and CC8B adapters are available for  AT-
bus  and  MCA-bus systems.  The CC8D uses the  National  Semiconductor
NS16450  while  the CC8B uses the NS16550A with  receive  and  transmit
first-in  first-out buffers;  in all other respects, the adapters  are  equivalent.
Each adapter provides eight ports.  Up to two adapters may be installed in a
computer.

IRQ levels may be shared between individual boards.  On AT bus boards, a
connector is provided to link the boards together so that on-board logic  can
handle  the IRQ sharing.  On MCA bus boards, the features inherent in  the
MCA bus provide the IRQ sharing.

For Terminal Manager, one of two address ranges may be selected from the
table below :-

  Port 1 Port 2 Port 3 Port 4 Port 5 Port 6 Port 7 Port 8

   180   188   190   198   1A0   1A8   1B0   1B8
   280   288   290   298   2A0   2A8   2B0   2B8

The address ranges are described in the adapter documentation for the  AT-
bus  version  as  the  ARNET addresses.  The IRQ level  may  be  set  for  2
through  7,  10  through 12 or 15 for AT-bus boards, and 3,  10  or  15  for
MCA-bus  boards.  The documentation supplied with the adapter  describes
how to configure the board for address and IRQ level selection.

The  eight  ports from each board are brought out to an  external  box  with
eight  9-way  connectors.  These connectors do not bring though  the  DCD
(Data    Carrier    Detect)   signal;    the   TERMINAL    section    of    the
TRMMAN.INI  file  should therefore include 'FORCEDCD=YES'  to  overcome
the lack of this signal and cable type 1, described in appendix C, should  be
used.

On  the  MCA-bus version, ports 5 through 8 bring through  only  the  RTS
(Request  To Send) and CTS (Clear To Send) signals.  For these ports,  the
TERMINAL  section  should include the  statements  'XONXOFF=YES',  'FO-
RCEDCD=YES' and 'FORCEDSR=YES'; XON/XOFF flow control must be used for
these  ports.  Terminal Manager is not able to detect a terminal  attached  to
ports  5 through 8 being switched on or off.  Cable type 2, as  described  in
appendix  C,  should  be  used for terminals attached  to  these  ports.   The
TermPak module should not be connected to ports 5 through 8.

B-12                               Adapter Information


-------------------------------------------
B.8  Non-Specific NS16450 Adapters

This  adapter  option  is provided to allow the  user  to  configure  Terminal
Manager  for  an unknown adapter which uses the  National  Semiconductor
NS16450   family   of   communication  chips.   If  the   adapter   uses   the
NS16550A,  Terminal  Manager  will use the transmit  and  receive  first-in
first-out (FIFO) buffers provided on this chip.

Clearly,  no  details  can be given on address  ranges,  IRQ  levels,  adapter
configuration etc since adapters from various sources will differ.

If you are attempting to use a non-specific adapter, you should bear in mind
the  comments at the start of appendix B concerning IRQ level  sharing  and
the requirement to ensure that all ports on an adapter, and all ports assigned
to an IRQ level, are made known to Terminal Manager by the use of PORT
sections in the TRMMAN.INI file.

It  is  not guaranteed that all non-specific adapters can be  made  to  operate
under Terminal Manager since they may contain hardware logic, other than
the communication chip itself, which needs to be initialised or  manipulated
for proper operation of the adapter.

Terminal Manager cannot provide the kind of error checking on the content
of TRMMAN.INI PORT sections for non-specific adapters as it can for  the
named adapters.

If  you  are unable to get a non-specific adapter to  operate  correctly  when
driven  directly  by  Terminal Manager, and if it is supplied  with  an  OS/2
device driver, you could try configuring it as described in appendix B.9.















Adapter Information                               B-13


-------------------------------------------
B.9  Adapters Supported Via Standard OS/2 Device Drivers

Terminal Manager has its own built-in device drivers supporting a range  of
third-party  adapters  as  detailed  in  section  5.2.   These   special-purpose
device  drivers  are  optimised for terminal  traffic  and  provide  significant
benefits  over  the standard OS/2 device driver architecture.   The  standard
OS/2 device drivers are referred to as Category 1 Device Drivers stemming
from the category code used in the DosDevIoctl API call for controlling  the
device driver operations.

It is intended that Terminal Manager will directly support the more  popular
intelligent  and  non-intelligent  communication  adapters  available  on  the
market,  however,  there  will inevitably be a time  lag  before  support  for
some adapters is available.

Most third-party communication adapters are now supplied with a Category
1 Device Driver for OS/2.  To allow use of these adapters, Terminal Man-
ager  is able to use the Category 1 Device Driver supplied by the  manufac-
turer or a third-party software vendor.

If  you have an adapter which is supported directly by  Terminal  Manager,
you  should  always  let Terminal Manager control the  adapter  rather  than
using the Category 1 Device Driver supplied with the adapter.  The  built-in
Terminal  Manager  drivers will always drive the adapter  more  efficiently,
and   with  considerably reduced processor overhead, than  the  Category  1
Device Drivers.

The Terminal Manager TINSTALL program is not able to install the Cate-
gory  1 Device Driver automatically and this must be  performed  according
to the instructions supplied with the adapter.

Normally,  the Category 1 Device Driver installation will place a  statement
into the CONFIG.SYS file in the form :-

  DEVICE = n:\xxx\yyyyyyyy.yyy zzz ... zzz

where  n:\xxx\yyyyyyyy  is  the  full path and file name  of  the  Category  1
Device  Driver  to be loaded at operating system boot-time.  zzz  ...  zzz
represents possible parameters required by the driver at boot-time.

TINSTALL also places similar statements into CONFIG.SYS.  The relative
order of the statements in CONFIG.SYS is not significant.


B-14                               Adapter Information


As with directly-supported adapters, each port on the Category 1 adapter  to
be  used by Terminal Manager must be specified in a PORT section  in  the
TRMMAN.INI  file.   Unlike directly-supported adapters, not all  ports  on
the Category 1 adapter need be controlled by Terminal Manager.

To  specify that a Category 1 adapter is to be used, the  ADAPTER  state-
ment in the PORT section must be in the form :-

  ADAPTER = COMDRIVER

The  Category  1 Device Driver will have associated a unique  device  name
with each of the ports on the adapter.  These device names will be listed  in
the documentation supplied with the adapter.

For  each  port  specified with the  ADAPTER=COMDRIVER  statement,  Terminal
Manager  will also need to know the device name associated with  that  port
on the adapter.  The following statement performs this function :-

  COMNAME = dddddddd

where  dddddddd  is  the  device name which may be up  to  8  characters  in
length.

The  IRQ  and IOBASE statements are not used for Category 1  ports  since
the definition of these characteristics lies within the scope of the Category 1
Device Driver.  All other statements are optional.

Because  Terminal Manager is not able to directly access the port  hardware
to  determine  whether  it  supports  first-in  first-out  (FIFO)  buffers,   the
TXFIFO and RXFIFO statements may always be used in the PORT section.
Terminal  Manager will attempt to instruct the Category 1 driver to use  the
FIFOs in accordance with the TXFIFO and RXFIFO statements.  No  error
condition  will arise if the device driver or the communication adapter  does
not  support  FIFO  operation.  N_O_T_E_:_  FIFO operation  is  referred  to  as
Extended  Hardware Buffering by the standard OS/2  drivers  COM01.SYS,
COM02.SYS and COM.SYS.

The  following  is  an example of a PORT section describing a  port  on  an
adapter being driven by a Category 1 Device Driver :-

  [PORT]
    PORTNO = 5
    ADAPTER = COMDRIVER
    COMNAME = AUX3

Adapter Information                               B-15


Category 1 Device Drivers are limited in their support of XON/XOFF flow
control  and are not able to recognise XON/XOFF coming from the  termi-
nal.  Although this will not normally present a problem, it should be  borne
in mind if screen corruptions appear or the terminal hangs or misbehaves in
some other way.








































B-16                               Adapter Information


-------------------------------------------

Appendix C

Cable Configurations

-------------------------------------------

This appendix describes the configuration of cables for connecting terminals
to a computer running Terminal Manager.

The cable diagrams do not assume the use of either male or female  connec-
tors since this will depend on the adapter and terminal being used.  In  addi-
tion, some adapters use 9-way connectors while others use 25-way  connec-
tors.

The  cable  diagrams are annotated using the RS232 names for  the  signals.
The  following  table  gives the pin numbers  corresponding  to  the  RS232
names for 9-way and 25-way connectors.

  Name   25-way Pin   9-way Pin   Function

  TD      2       3     Transmit Data

  RD      3       2     Receive Data

  RTS      4       7     Request To Send

  CTS      5       8     Clear To Send

  DSR      6       6     Data Set Ready

  SG      7       5     Signal Ground

  DCD      8       1     Data Carrier Detect

  DTR      20       4     Data Terminal Ready

  RI       22       9     Ring Indicator

Appendix A discusses which cable type should be used for a given terminal.
Some  adapters  listed in appendix B may specify the use of a  special  cable
type to overcome any limitations on the adapter pin-out.


Cable Configurations                               C-1


-------------------------------------------
C.1  Cable Type 1

This cable is the most commonly used for local connection of a terminal  to
a  computer running Terminal Manager.  It provides the connections  allow-
ing  RS232 flow control if required as well as allowing  Terminal  Manager
to detect a terminal being switched on or off.


      Computer         Terminal

        TD  -----------------------> RD
        RD  <----------------------- TD
        CTS <----------------------- DTR
              |
        RI  <-/
        DSR <----------------------- RTS
              |
        DCD <-/
        SG  ------------------------ SG
        DTR -----------------------> CTS
                                 |
                                 \-> DSR






















C-2                               Cable Configurations


-------------------------------------------
C.2  Cable Type 2

This cable is for adapters such as the Technology Concepts MCA-bus adap-
ters  CC8D and CC8B which, for ports 5 through 8, present only  the  RTS
and CTS control signals at the RS232 interface.  This cable must be used in
conjunction  with  the 'FORCEDSR=YES' and 'FORCEDCD=YES' statements  in  the
TERMINAL  section  of the TRMMAN.INI file.  Ports 1 through 4  of  the
MCA bus adapter and all ports on AT bus adapters may use cable type 1  in
conjunction with the FORCEDCD=YES statement in TRMMAN.INI.

With  this type of cable, flow control using XON/XOFF must be  employed
since the necessary RS232 signals are not available for flow control use.

Terminal  Manager  is unable to detect a terminal being switched on  or  off
with this type of cable.


      Computer         Terminal

        TD  -----------------------> RD
        RD  <----------------------- TD
        CTS <----------------------- DTR
        SG  ------------------------ SG
                                 /-- RTS
                                 |
                                 |-> CTS
                                 |
                                 \-> DSR



Note:   The  TERMPAK  device must not be attached to  a  port  using  this
cable type.











Cable Configurations                               C-3


-------------------------------------------
C.3  Cable Type 3

This  cable is used for connecting a modem to the computer or for  connect-
ing  a terminal to a modem.  Some terminals might not need all of  the  sig-
nals provided, however, they should not cause any problems.


      Computer/            Modem
       Terminal

        TD  -----------------------> TD
        RD  <----------------------- RD
        RTS -----------------------> RTS
        CTS <----------------------- CTS
        DSR <----------------------- DSR
        SG  ------------------------ SG
        DCD <----------------------- DCD
        DTR -----------------------> DTR
        RI  <----------------------- RI

























C-4                               Cable Configurations


-------------------------------------------

Appendix D

Using Modems

-------------------------------------------

Terminals  may be connected locally using direct cabling links into the  host
computer, or they may be connected remotely across telephone lines via the
use of modems.

Terminal  Manager  is  designed to support the connection  of  all  standard
modems  through its use of the RS232 interface signals and its facilities  for
handling  modem  command language strings.  To ensure a high  degree  of
data  integrity, you should consider using error-correcting modems  if  pos-
sible.

Most modems available today are of the intelligent type normally incorpora-
ting  an internal microprocessor which controls functions such as  automatic
dialling,  automatic  answering and automatic baud rate detection.   In  gen-
eral, the intelligent modems make life easier for the user, however, because
they  provide such a wealth of functions and option settings,  the user  must
take care to configure the modem for correct operation.

The  means of configuring the modems differ amongst various  manufactur-
ers' products and, because of the vast number of modems on the market,  it
is  not possible to describe the precise procedures necessary to  configure  a
particular  modem.   Rather, this section describes how  Terminal  Manager
uses  the  modem  and the general rules for ensuring  that  the  modem  will
operate correctly with Terminal Manager.

Modem options and functions are selected in a number of ways :-

  '` internal/external switch settings
  '` external control panel switches and buttons
  '` use of a command language

The  commonly  used  command languages are the Hayes  AT  set  and  the
command set specified by the CCITT V25bis standard.  Additionally, some
modems  also support their own proprietary command languages.   The  AT
command  language  is by far the most commonly  available.   This  section
assumes that an AT-type modem is being used although Terminal  Manager
is able to support any other required command language.

Using Modems                                  D-1


-------------------------------------------
D.1  The MODEM, MODEMRST and MODEMLOG Files

Terminal Manager provides support for modem command languages via the
use of three files created by the user in the TRMMAN directory :-

  MODEM.nnn
  MODEMRST.nnn
  MODEMLOG.nnn

where  the  nnn  in each file name represents  the  logical  terminal  number
assigned  to the terminal in the TERMINAL section of  the  TRMMAN.INI
file;  'nnn' must always be 3 bytes long with leading zeros if necessary.

The  MODEM.nnn file contains the modem initialisation  commands  which
are sent to the modem whenever a terminal is activated, either automatically
after  Terminal Manager starts, or as result of an activate  command  issued
from  the TermView screen or from the TACT command line  utility.   The
file  is also sent each time the terminal goes offline prior to  coming  online
again.

The MODEMRST.nnn file contains the modem reset commands which  are
sent  to the modem whenever a terminal goes offline, or when the  operator
uses  the TermView command to log the terminal off.  The file is also  sent
whenever  an  active terminal is deactivated using the TermView  screen  or
the TDEACT command line utility.

If  MODEM.nnn  or  MODEMRST.nnn does not  exist,  no  command  se-
quence  is  sent  at the relevant point.  The presence of one or  both  of  the
files  also serves to indicate to Terminal Manager that the terminal  is  atta-
ched via a modem.  This causes Terminal Manager to periodically flush any
received data while waiting for the terminal to come online; such data could
be  status messages from the modem such as the 'RING' message and  pos-
sible  'NO  CARRIER'  messages if a voice  caller  inadvertently  calls  the
modem line.

The  MODEMLOG.nnn  file is used to log data received from  the  modem
during  the initialisation and reset operations.  The file is typically used  for
diagnostic  purposes during the initial configuration of a  modem-connected
terminal  in order to ensure that the modem is correctly responding  to  data
sent from the MODEM.nnn and MODEMRST.nnn files.  The file  contains
only data coming from the modem, that is to say, echoed command  charac-
ters  and  status response messages;  if command echo is turned  off  at  the
modem and the modem is in quiet mode, no data will be written to the  file.

D-2                                  Using Modems


If  the file exists, all data coming from the modem during initialisation  and
reset  is  appended  to  the end of the file.  The  file  is  therefore  prone  to
growth  and should be deleted once the initial configuration has  been  veri-
fied  to be functioning correctly.  If the file does not exist,  Terminal  Man-
ager  will  not  create it and data received from the modem  will  simply  be
flushed  from  the system.  The file may be created and inspected  by  using
the OS/2 editor E.EXE.

The  MODEM.nnn and MODEMRST.nnn files are ASCII text  files  which
may  be  created using the OS/2 editor E.EXE.   Carriage  return/line  feed
pairs  (0D/0A  hexadecimal)  are  sent to the  modem  as  a  single  carriage
return  (0D hexadecimal) to simulate the pressing of the ENTER key at  the
end of a command sequence;  after sending a carriage return to the modem,
Terminal  Manager waits one second before sending any further  data.   All
other  characters in the file are sent to the modem with the exception of  the
tilde  '~' character.  If Terminal Manager encounters the tilde  character  in
the file, the tilde character is not sent and the next character is read instead.
If  the next character is in the ASCII range '@' through '_' (40 through  5F
hexadecimal) 40 hexadecimal is subtracted from it and the resulting  charac-
ter  is  sent to the modem;  this facility allows the low ASCII  characters  in
the  range 00 through 1F hexadecimal to be sent.  If the character  after  the
tilde is the ASCII '1' character (hexadecimal 31), a delay of 1.25 seconds is
executed  before further data is sent to the modem. This feature  allows  the
sending  of  the  AT escape sequence '+++' which forces  the  modem  to
drop  into command mode.  For the '+++' sequence to be  recognised  by
the  modem,  it  must be preceded and followed by  a  minimum  period  of
inactivity  known  as  the  escape guard  time;   most  modems  default  the
escape  guard time to one second.  Successive '~1' sequences may  be  used
to  introduce  longer  delays if required.   For  AT-command  modems,  the
ATS12= command may be used to set the guard time if required.

If  the  character after the tilde is not '1' and is not in the  '@'  through  '_'
range, it is sent intact.  If it is wished to send the tilde character itself to the
modem, two adjacent tilde characters must appear in the file.

It  is recommended that the MODEM.nnn and MODEMRST.nnn files  start
with  a  blank  line  so that a carriage return character  will  be  sent  to  the
modem  first  to ensure that the modem is ready to accept a  new  command
should  there  have  been spurious data already in  the  modem's  command
buffer.   If  the  file does not end with a carriage  return  (0D  hexadecimal)
character,  Terminal  Manager  will  itself  send  a  carriage  return  to   the
modem.



Using Modems                                  D-3


MODEM.nnn  will usually set the modem to a state suitable  for  answering
an   incoming   call.    The   commands  below  might   be   found   in   the
MODEM.nnn file for a US Robotics Sportster 14400 modem.  You  should
check  with  your modem's reference manual to ensure that  the  commands
below  are  appropriate to your particular brand of modem since the  use  of
specific AT commands differs between modem manufacturers.

  AT&F    Resets the modem back to its factory defaults.

  AT&B1    Tells the modem to maintain a fixed baud rate when  talk-
          ing  to the host port.  By default, the Sportster  varies  the
          speed according to the connection rate negotiated with the
          calling modem.

  AT&C1    Tells the modem to turn on DCD only when a  connection
          is  established  and a carrier is present;   the  modem  will
          turn DCD off when the connection is broken.  Setting this
          option  ensures that Terminal Manager only considers  the
          terminal to be online while a carrier is present.

  AT&D2    Tells the modem to break the connection and go back into
          command  mode when Terminal Manager drops the  DTR
          signal.   The  modem  will then be  ready  to  receive  the
          MODEM.nnn  data to initialise it for the next  call.   This
          command  is essential to ensure that Terminal Manager  is
          able to terminate a call.

  AT&H1    Disables  XON/XOFF  flow control  for  data  transmitted
          from  the host to the modem and specifies that  flow  con-
          trol is to be controlled by the modem raising and lowering
          the CTS signal.

  AT&I0    Disables  the  modem  from recognising  as  flow  control
          characters  the  XON/XOFF characters  transmitted  from
          the host.

  AT&N0    Tells the modem to negotiate the highest possible  connec-
          tion rate with the remote modem.

  AT&R1    Tells the modem to ignore the RTS signal set by the host.

  ATS0=1   Sets  the  modem  into auto-answer  and  specifies  that  it
          answers after 1 ring.


D-4                                  Using Modems


The  above  commands  would  normally be sent to  the  modem  using  the
shorthand form, where all the commands are in the same line of the file and
only a single AT appears at the start of the line, for example :-

  AT&F&B1&C1&D2&H1&I0&N0&R1S0=1

The  shorthand form of the command will execute faster than  placing  each
command on a separate line since Terminal Manager delays for one  second
after sending each carriage return to the modem.

MODEMRST.nnn  will  usually  reset the modem  after  a  call  terminates.
This  file is not always needed since Terminal Manager will loop  back  and
send   the   MODEM.nnn  file  shortly  after   sending   MODEMRST.nnn.
However,  for modems which leave auto-answer enabled after the end  of  a
call,  it  might be desirable to turn off auto-answer at the end of a  call  and
then let the last command of the subsequent MODEM.nnn sequence turn on
auto-answer  again.  This will stop the modem from answering a call  while
the MODEM.nnn data is still being sent to the modem.   MODEMRST.nnn
is  also  sent  to  the modem when a terminal is  deactivated  and,  again,  it
might  be desirable to turn off auto-answer while the terminal port  is  inac-
tive.

The  commands  below might be found in the MODEMRST.nnn file  for  a
US   Robotics  Sportster  14400  modem.   You  should  check   with   your
modem's  reference  manual  to ensure that the  commands  below  are  ap-
propriate  to  your particular brand of modem since the use of  specific  AT
commands differs between modem manufacturers.

  ~1+++~1  Tells Terminal Manager to delay for 1.25 seconds  before
          sending  the '+++' modem escape sequence which  puts
          the  modem  into command mode if not already  in  com-
          mand mode.  After sending the escape sequence, a further
          1.25 second delay is executed.  The delays implement  the
          escape  guard  time and are necessary to  ensure  that  the
          modem  recognises  the '+++' characters as  the  escape
          sequence  and  does not treat them as data.   NOTE:  This
          sequence must appear on a line by itself.

  ATS0=0   Turns off auto-answer.

  ATH0    Tells  the modem to go on-hook and disconnect  any  cur-
          rent     call.      In    any    case,     after     sending     the
          MODEMRST.nnn file, Terminal Manager drops the DTR
          signal which causes the modem to disconnect.

Using Modems                                  D-5


-------------------------------------------
D.2  Establishing The Connection

When connecting terminals using modems, the following parameter settings
should appear in the TERMINAL section of the TRMMAN.INI file :-

  FORCECTS = NO
  FORCEDSR = NO
  FORCEDCD = NO
  TOGGLEDTR = NO
  XONXOFF = YES
  IDLETIMEOUT = 3 (optional)

NOTE:    The  XONXOFF=YES  statement  turns  on  XON/XOFF   flow
control between the terminal and the host computer.  You should be careful
not  to  confuse  this setting with the selection  for  XON/XOFF  offered  in
many  modems.  In general, when using PC mode  terminals,  XON/XOFF
must  be  disabled  at  the  modems.

The XONXOFF, FORCECTS and TOGGLEDTR statements are  discussed
further in section D.4.

The  IDLETIMEOUT  parameter ensures that Terminal Manager  will  dis-
connect  a  call  if the specified period of inactivity is  detected.   This  will
ensure  that  a port does not become blocked by a terminal  left  online  and
also protects the caller from inadvertently running up high telephone bills.

Terminal Manager does not consider a terminal to be online until the RS232
signals  DCD  (Data Carrier Detect) and DSR (Data Set  Ready)  are  high.
The  FORCEDCD  and FORCEDSR statements above ensure that  the  two
signals  are  read  directly from the RS232 interface  and  are  not  logically
forced  high  by  the software.  Cable type 3,  described  in  appendix  C.3,
should  be  used to connect the host to the host modem and the  terminal  to
the terminal modem.

Before a terminal is activated at the host, the host modem must be  powered
on.  When the terminal is activated, either automatically on starting Termi-
nal  Manager  or by using the TermView screen, Terminal  Manager  raises
the  DTR (Data Terminal Ready) signal at the host computer.  If  the  TOG-
GLERTS  =  NO  statement  is specified (or is assumed  by  default),  the  RTS
(Request To Send) signal is also raised.

Terminal  Manager then tries to open the MODEM.nnn file and,  if  found,
sends the contents of the file to the modem.

D-6                                  Using Modems


It  then  waits  for both the DCD and DSR signals to  come  high  before  it
considers  the  terminal  to  be online.  For the modem  to  raise  DCD  and
DSR, the connection must have been established between the two  modems.
DCD  and DSR will not be raised unless the modems are able to  communi-
cate  at the same speed (either by having been set for the same speed  or  by
one of the modems detecting the carrier frequency of the other).

If a DOS PC is being used as the terminal, the TERM.EXE program is de-
signed  to  send  ASCII key codes immediately after loading  and  until  the
connection  is established with the host computer.  Unlike dumb  terminals,
dialling  instructions may therefore be sent to the modem directly  from  the
TERM.EXE  program.  In addition, TERM.EXE allows modem  command
strings  to be defined using the MODEM, F1, F2, F3 and F4 statements  in
the TERM.INI file - see section 6.2.1.

If  a dumb terminal is being used, the operator would normally  have  man-
ually  dialled the host telephone number and switched the modem  into  data
mode  when  the  host  end answered.  It is not  generally  possible  for  the
terminal operator to dial the host using modem control commands from  the
keyboard of a dumb terminal.  This is because the terminal is usually opera-
ting  in  PC  mode  and sends scan codes for  keys  rather  than  the  ASCII
characters  required for communication with the modem.   However,  some
modems  have internal storage areas for holding commonly  used  telephone
numbers  which  may  be  triggered  from  control  panel  switches.   Other
models of modem may be set to dial a single pre-defined number  whenever
the  terminal  raises its DTR (Data Terminal Ready) signal.   In  both  these
cases,   the  modem  must  have  been  pre-configured  with  the   telephone
numbers.   The  TERM.EXE  program  may  be  used  to  pre-configure   a
modem.

When  pre-configuring  the  modem from a PC, it is preferable  to  use  the
TERM.EXE program rather than one of the other communication or termi-
nal emulation packages on the market.  The reason for this is that the  other
package  may,  without your knowledge, change the  modem  configuration
setting  after you've performed the direct dialogue with the modem.   Apart
from  any commands sent to the modem as a result of the  MODEM  state-
ment  in the TERM.INI file, the TERM.EXE program sends only  the  data
you type to the modem.

The  terminal  modem  would  normally be  configured  to  ensure  that  the
connection is broken when the DTR signal is dropped as a result of a  dumb
terminal  being powered-off or the TERM.EXE program exiting on a  DOS
PC  .  For most AT-command modems, the AT&D2 command  selects  this
operation.

Using Modems                                  D-7


After  having  dialled the host from the terminal, the modems  will  connect
and  Terminal Manager will detect the terminal being online.  It then  waits
for one second before sending data to the terminal.  This one second period
allows  the modem to send any status text messages to the host such  as  the
'CONNECT'   message  from  an  AT-command  modem.   After  the   one
second  period, Terminal Manager flushes any received data, then  sends  a
command  sequence  to the terminal and waits for the correct  response.   If
the  correct  response  does  not arrive after  three  seconds,  the  command
sequence  is re-sent.  After six tries, if the correct response sequence is  not
received,  Terminal  Manager  sends any MODEMRST.nnn  file  and  then
drops  the  DTR  signal  on the host causing the  modem  connection  to  be
broken.   One  of  the reasons for the correct  terminal  response  not  being
received  could  be  a  baud  rate  incompatibility  in  some  section  of   the
communication link.  This is discussed further in section D.3.

When  the modem goes offline, or when the shell program  exits,  Terminal
Manager  sends  the contents of any MODEMRST.nnn file  to  the  modem
before  dropping the DTR signal for one second to ensure the connection  is
broken.   If  the terminal is not being deactivated,  Terminal  Manager  will
then loop back to send the MODEM.nnn file again and await the arrival  of
the next call.

-------------------------------------------
D.3  Baud Rate Settings Using Modems

The  choice  of baud rate setting clearly depends on the  capabilities  of  the
modem and it is generally preferable to choose the highest setting provided.
However, there are some considerations to be made to ensure that  potential
problem areas are avoided.

A single modem link may be thought of as comprising three sections :-

  '` remote terminal to remote modem
  '` remote modem to host modem
  '` host modem to host computer

In  the  most  extreme case, each of the three sections of the  link  could  be
operating  at  different baud rates with buffering in the  modems  compensa-
ting for the differences in baud rate between the two ends of the link, that is
to say, between the terminal and the host computer.

You  should ensure that the host modem is set to maintain a fixed baud  rate
to  the  host  and similarly for the terminal modem to  the  terminal.   Some
modems  default  to varying these baud rates according to the  baud  rate  at

D-8                                  Using Modems


which the modems themselves connect.  On a US Robotics Sportster 14400,
for  example, the AT&B1 command ensures that a fixed speed will be  used
to  communicate with the host or the terminal while allowing the modem  to
modem rate to vary.

The  baud rate between the two modems may be either a  fixed,  pre-confi-
gured  rate  or the modems may dynamically configure themselves  by  sen-
sing  the carrier frequency transmitted from the other end.

The  majority  of  modems will auto-detect the baud rate  that  the  attached
device is using; all subsequent data sent to or received from the device  will
be  at that auto-detected baud rate.  However, the  auto-detection  generally
only  occurs  when  a command language sequence is  sent  to  the  modem;
until this point the modem is operating at the baud rate last used or at  some
default,  power-up baud rate probably set as an option by an  earlier  com-
mand  language  sequence.   For  this reason, you  should  always  create  a
MODEM.nnn file at the host end to ensure that the host modem  configures
itself   for  the  correct  speed.   For  AT-command  modems,   a   minimal
MODEM.nnn  file would contain just the single 'AT' sequence to force  the
modem to auto-detect the baud rate.

A  similar mismatch of baud rates may occur between the terminal  and  the
remote modem. Again, the terminal modem would auto-detect the baud rate
only  when  the  first command language sequence is  sent  to  it,  however,
because  dumb terminals send scan codes instead of ASCII data, the  termi-
nal operator is not normally able to communicate with the modem using the
command   language   (unless  the  terminal  is  a  DOS   PC   running   the
TERM.EXE program).  The terminal modem must therefore be  pre-confi-
gured so that the default baud rate is correct.

The method of setting the default baud rate for the terminal modem depends
on the manufacturer and the model type of the modem.  Some modems  are
set  with internal/external straps or switches while others may be  set  using
the  modem command language via the TERM.EXE program.  You  should
take  care  to ensure that the default baud rate you are setting relates  to  the
baud  rate  between  the modem and the terminal and not  the  baud  rate  at
which the modem will talk to the other modem.

You  should  let  the  modems negotiate the  highest  possible  speed.    For
optimum  performance, the baud rate between the host and its  modem  and
the baud rate between the terminal and its modem should be set the same or
higher than the maximum baud rate between the two modems.



Using Modems                                  D-9


If  terminals  are dialling-in using modems of differing speeds,  you  should
set  the BAUD statement in the TERMINAL section of the  TRMMAN.INI
file to be equal or higher than the highest possible connection speed.

Once the connection between the two modems has been made and the  baud
rate between them has been established, the host modem will raise its  DCD
and  DSR  signals causing Terminal Manager to detect the  online  terminal
and attempt to solicit a response from it.  If Terminal Manager is unable  to
solicit a good response from the terminal, or if garbled data appears on  the
terminal screen, a mismatch of baud rates somewhere in the link may be the
cause.

If  you experience problems which seem to be related to the baud rate,  you
should  try setting all three sections of the communication link to run at  the
same speed.

-------------------------------------------
D.4  Flow Control Using Modems

If  the  terminal attached to the modem is operating in PC mode,  that  is  to
say,  if  the  TERMTYPE  statement  in  the  TERMINAL  section  of   the
TRMMAN.INI  file  is set to anything other than TERMTYPE = ASCII,  it  will
send  scan  codes and not ASCII data and the modems at both  ends  of  the
link  must  be  set not to operate in XON/XOFF mode.  This  is  because  a
terminal  in PC mode does not send the normal XON/XOFF characters  (11
and 13 hexadecimal).  Moreover, certain keys on the keyboard generate the
11  and  13  codes  which may confuse the  modem.   In  particular,  if  the
terminal  keyboard  appears  to freeze after typing the  R  key  and  possibly
unfreezes  after  typing  the  W key, the modem  is  almost  certainly  set  to
operate  in  XON/XOFF  mode  and must  be  reconfigured.   If  an  ASCII
terminal  is  attached (using TERMTYPE=ASCII in the  TERMINAL  section  of
TRMMAN.INI) normal XON/XOFF control may be used by the modem.

To  achieve  flow control for PC mode terminals, the  following  statements
must  appear  in  the  TERMINAL section of  the  TRMMAN.INI  file  and
XON/XOFF must be disabled at the modem :-

  FORCECTS = NO
  TOGGLEDTR = NO
  XONXOFF = YES

The  FORCECTS=NO statement ensures that the CTS (Clear To Send)  signal  is
not  logically forced high allowing the host modem to use this signal to  halt
or  resume  data  transmission from the  host.   The  XONXOFF=YES  statement

D-10                                  Using Modems


allows Terminal Manager to control the flow of data from the terminal  and
also  allows  the terminal to control the flow of data from  the  host.   When
the  host is set for XONXOFF=YES for a PC mode terminal it recognises 65  and
67 hexadecimal as the halt and resume codes from the terminal and uses  11
and  13 hexadecimal to control the flow of data from the  terminal.   Setting
the  modem to not use XON/XOFF ensures that all data is  passed  between
the host and the terminal and the 11 and 13 codes are not acted upon by  the
modem  itself.   The TOGGLEDTR=NO statement stops Terminal  Manager  from
dropping  the  DTR signal when it wants to halt the flow of  data  from  the
terminal;   dropping  DTR  in  a  modem  link  would  otherwise  cause  the
modem to disconnect from the line.

At  the  terminal end of the link, it is extremely unlikely  that  the  operator
would ever be able to type fast enough to cause the modem to halt the  flow
of data, however, this could occur if file transfer between a  DOS-TERMI-
NAL  and  the  host  is taking place.  Should this  happen,  the  CTS  signal
dropping  on the modem will stop the terminal from sending any more  data
to  the  modem  until the modem has transmitted the  previous  data.   Most
terminals  will  buffer up subsequent data and sound the  alarm  beep  when
keystrokes  start  to  be  lost.  The flow control  between  the  host  and  the
terminal  is  independent  of the flow control between  the  modem  and  the
terminal because of the effect of the XONXOFF=YES statement.























Using Modems                                  D-11















































D-12                                  Using Modems


-------------------------------------------

Index

-------------------------------------------

ACTIVATE statement  4-14 5-39
ADAPTER statement (in TERM.INI)  6-4
ADAPTER statement (in TRMMAN.INI)
    5-11
Adapters
 Accent  5-11 B-4
 AST  5-12 B-5
 COM1-COM8  5-11 5-15 B-3
 COMDRIVER  5-13/14 B-2 B-14
 Digiboard  5-12 B-6
 Hostess  5-12 B-9
 S-Link  5-13 B-11
 Technology Concepts  5-13B-12
ASCII Terminal Definition File  5-29/30
ASCII Terminal Support  A-1 A-32
ATD file
  see ASCII Terminal Definition File
ATD statement  5-29/30 A-33
BAUD statement (in TERM.INI)  6-5
BAUD statement (in TRMMAN.INI)
    5-34
BUFLO statement  7-6
BUFSZ statement  7-6
BUS statement  5-3
CHECKSUM.EXE  4-19
COMNAME statement  5-14/15
CONFIG.SYS
 DEVICE statement  3-5/6 4-2
 LIBPATH statement  3-6
 PATH statement  3-6
 PRIORITY statement  3-5
 THREADS statement  3-5
 TIMESLICE statement  3-5
DATABITS statement  5-34
DEFAULTCOLS statement  5-31
DEFAULTROWS statement  5-30
DELAYONLOAD statement  5-7
DISPLAY statement  6-7 6-11
DOS programs  2-2/3 4-21 5-8
DOS-TERMINAL section  6-4
DOSCPULIMIT statement  5-8
DOWNLOAD.EXE  6-16
DRIVER statement  7-7
F1 F2 F3 F4 statements  6-8
File transfer  5-18 6-14/16
FORCECTS statement  5-36 D-6 D-10



Index


FORCEDCD statement  4-9 5-37 D-6
FORCEDSR statement  4-9 5-37/38 D-6
FORMFEED statement  7-8
IDLETIMEOUT statement  5-39 D-6
INFO.EXE  4-20
IOBASE statement  5-16
IRQ statement  5-15
KBBSZ statement  5-28
KBDTYPE statement  5-5 5-25
KEYBOARDCP statement  5-4 5-27
LATENCY statement  7-5
LOCATION statement  4-8 5-23
MAXCOLS statement  5-32
MAXLOGSIZE statement  4-10 5-6
MAXROWS statement  5-31
MAXSESSIONS statement  4-8 4-15
    5-33
MODEM statement  6-8
MODEM.nnn file  D-2/5
MODEMLOG.nnn file  D-2/5
MODEMRST.nnn file  D-2/5
Modems  D-1/11
PARITY statement (in TERM.INI)  6-5
PARITY statement (in TRMMAN.INI)
    5-35
PMS  5-6 7-1
PMS Environment  4-2 7-9/10
PMS statement  5-6 7-1
PMS.INI  3-1 3-4 4-2 7-2/7
PMSNULL  7-7
PMSSET.EXE  7-10
PMSXPAR  7-7
PORT section  5-1 5-9 5-21
PORTNO statement  4-8 5-10 5-23
PRINTER section  7-2/7
PRINTERNO statement  7-3
Printers  2-1
REXX  2-2
RUNDOS.EXE  4-21
RXBHI statement  5-18
RXBLO statement  5-19
RXBSZ statement  5-18
RXFIFO statement  5-20 B-2
Script string  6-8
SETWY325.EXE  A-20/30
Shell program  4-2 4-11/14 5-4 5-33
SHELL statement  4-15 5-4 5-33
SPEED statement  7-4/5
STARTnnn.CMD  3-6 4-15 4-18
STARTUP.CMD  4-1 4-6
STATUSLINE statement  5-30 A-6 A-9


                                        Index


    A-13 A-17 A-22
STOPBITS statement (in TERM.INI)  6-6
STOPBITS statement (in TRMMAN.INI)
    5-35
SVIEW.EXE  4-14 4-21
SYSTEM section  5-1/2
TACT.EXE  4-22
TCONTROL.EXE  4-14 4-22
TDEACT.EXE  4-24
TERM.EXE  6-1 6-11 D-7
TERM.INI  6-3/11
TERM.PAR  6-11
Terminal
 ASCII  5-25
 DOS-TERMINAL  5-25 6-1/3 6-11
 IBM 3151  5-24 A-5
 PC-Terminal  5-25 A-1 A-3
 WYSE WY-120  5-24 A-16
 WYSE WY-325  5-25 A-20
 WYSE WY-55  5-24 A-8
 WYSE WY-60  5-24 A-12
TERMINAL section  5-2 5-21 6-1
TERMNO statement (in PMS.INI)  7-4
TERMNO statement (in TRMMAN.INI)
    4-8 4-15 5-23
TermPak  1-1 2-3 3-4 5-5 5-38
TERMPAKPORTNO statement  3-4 5-5
TERMTYPE statement  5-24 A-33
TermView  4-1/13 5-6 5-40
TERMVIEW.LOG  3-6 4-9 4-10 4-13 5-6
TINSTALL program  3-3
TM.EXE  4-4/5
TOGGLEDTR statement  5-39 D-6 D-10
TOGGLERTS statement  5-38
TPT1-6  7-9/11
TRMATTR.EXE  4-24
TRMMAN.INI  3-1 3-4 4-2 5-1
TRMMAN.OPT  2-3
TRMMAN.SYS  4-2
TRMMANA.DLL  3-6
TRMSHELL.EXE  4-15 5-33
TSTART.EXE  4-16/18
TXBLO statement  5-17
TXBSZ statement  5-17
TXFIFO statement  5-19 B-2
UPLOAD.EXE 6-16
VT220.ATD file  5-30
WY50.ATD file  5-30
WY60.ATD file  5-30
XONXOFF statement (in TERM.INI)  6-6
XONXOFF statement (in TRMMAN.INI)
    5-36 A-12 D-6 D-10


Index

