GAPCTTY.TXT

10.1 KB b6ac5c7331b8717f…























                                      GAPCTTY
                                          
                           Remote Communications Handler
            
                                  October 3, 1988
                                          
                                          
                                          
                   (C) Copyright 1988 The GAP Development Company




































            GAPCTTY       (C) Copyright 1988 The GAP Development Company


            GENERAL OVERVIEW
            ----------------
            
            GAPCTTY is a replacement for the DOS CTTY function. However,
            unlike the  CTTY function,  I/O is  not redirected.  It is a
            terminate and  stay resident  (TSR) type of program and must
            be turned on to use it and off to disable it.  Disabling the
            program removes it from memory.
            
            GAPCTTY was  designed  to  be  utilized  by  Bulletin  Board
            operators while  exiting to  DOS from  a remote location. It
            may also be used whenever there is a need to invoke CTTY.
            
            This program   was written  out of necessity because of bugs
            with the CTTY function in DOS 3.3 which can cause a computer
            to "hang" if a remote user types a backspace or an ESC while
            the cursor  is in column 0 of the local computer.  With some
            computers (Compaq) this problem does not occur, but with the
            majority of clones it is a real menace.
            
            GAPCTTY monitors  three interrupt  vectors :  DOS functions,
            keyboard, and  communications port.  The communications port
            is set  up to  provide input/output  at speeds  greater than
            19,200 bps.   The  keyboard is  monitored to  determine if a
            backspace was  pressed  on  the  local  keyboard  (yes,  the
            backspace IS  a problem).  The DOS interrupt 21 is monitored
            so that any local I/O can be sent to the remote terminal.
            
            The program monitors the carrier detect line and will reboot
            the computer if there is a loss of carrier.
            
            
            USAGE
            -----
            
            To use  GAPCTTY you  must provide it with three command line
            parameters :
            
              1 - Communication port (1 or 2)
              2 - On/Off flag
              3 - Ctrl-C checking (ON or Off)
            
            The communications port is either COM 1 or COM 2. The On/Off
            flag tells the program to either install itself in memory or
            remove itself  from memory.  The flag for Ctrl-C checking is
            provided so  that you  may use  GAPCTTY in  conjunction with
            programs that  do not  provide their  own communications I/O
            and you  wish to  prevent a  user from  breaking out  of the
            program (or  the batch  file that  runs the  program).   For
            simple remote  exits to  DOS, you  would normally leave this
            flag set to OFF.
            
            You must provide a valid com port number or the program will
            simply exit back to DOS.



                                       Page 2





            GAPCTTY       (C) Copyright 1988 The GAP Development Company


            
            Some sample invocations would appear as follows :
            
              GAPCTTY 1 ON ON   - Invoke GAPCTTY for COM 1 and do not
                                  allow a Ctrl-C from the remote
                                  terminal.
              GAPCTTY 1 ON OFF  - Invoke GAPCTTY for COM 1 but do allow
                                  a Ctrl-C from the remote terminal.
              GAPCTTY 1 OFF OFF - Reset interrupt vectors back to their
                                  previous state and remove program from
                                  memory.  The third parameter in this
                                  case is irrelevant.
            
            Since most  BBS programs  implement their remote exit to DOS
            by exiting to a batch file, a sample remote batch file might
            look like this :
            
              echo off
              cls
              set prompt=Type EXIT To Return To GAP$_$p$_
              gapctty 1 ON OFF
              command
              c:
              cd \gap
              gapctty 1 OFF OFF
              set prompt=$p$_
              gap
            
            It is  imperative that  you disable  GAPCTTY when  it is  no
            longer needed.  This is the equivalent of issuing a CTTY CON
            command to  DOS.   The program  must be disabled or when the
            user  returns   to  your  BBS  he/she  will  receive  double
            characters and  the display  will be  generally messy!    No
            permanent harm  of course  will come but as soon as the user
            logs off  and the  DTR line  is dropped,  your computer will
            reboot!
            
            If you  run GAPCTTY when there is no remote connection, your
            computer may reboot at an inopportune time (depending on how
            "noisy" your  com port  is).  This is normal and is for your
            protection.
            
            
            QUIRKS
            ------
            
            GAPCTTY will  work only with programs that use DOS for their
            I/O.  Programs that directly write to the screen or use BIOS
            services will  run just  fine on  the local computer but the
            remote terminal will receive absolutely nothing!
            
            The backspace  problem with DOS 3.3 and CTTY is definately a
            bazarr problem.   If  the backspace  were not  trapped,  the
            remote user  would receive  a space  instead  of  an  actual



                                       Page 3





            GAPCTTY       (C) Copyright 1988 The GAP Development Company


            backspace.   DOS sends  the space  and the  BIOS  takes  the
            responsibility of  repositioning the cursor.  It was strange
            to watch  the BIOS routines continuosly re-invoke themselves
            through software interrupts.  No wonder DOS has bugs!
            
            Cursor positioning  commands generated thru the BIOS are not
            supported (IE,  the CLS  command), however  ANSI codes  work
            just fine.
            
            GAPCTTY fully expects the keyboard buffer to be where it was
            when the  computer was turned on (the BIOS keyboard buffer).
            The current version does not support keyboard enhancers that
            provide for  buffers larger  than 16  bytes.    We  will  be
            working on  this problem and will provide a new version when
            a solution is found.
            
            The program uses the vector for interrupt 65h to store vital
            information which  means that  you may  not  use  any  other
            program that takes over this interrupt.






































                                       Page 4





            GAPCTTY       (C) Copyright 1988 The GAP Development Company


            LEGAL STUFF
            -----------
            
            Individuals are  granted a  license to  use the accompanying
            software freely:  copy it,  post it  on  computer  services,
            distribute it  through software exchanges, etc.  However, no
            fee must be charged other than the cost of duplication.
            
            The program may freely be distributed with other programs as
            long as no charge is made for those "other" programs.
            
            No part  of the  executible file  may be altered, especially
            when such  an alteration  would remove the name GAP from the
            program.
            
            COPYRIGHT
            ---------
            
            The  software   accompanying  this  documentation  is  owned
            exclusively by  GAP Development  Company.   It may  be  used
            freely by  individuals and  need not  be  registered.    The
            software may  NOT be  distributed commercially for profit or
            gain without written consent from GAP Development Company.
            
            The software contains valuable trade secrets and proprietary
            information and  is protected  by  federal  copyright  laws.
            Unauthorized use  of the  software or this documentation can
            result in civil damages and criminal prosecution.
            
            WARRANTY
            --------
            
            The software  is licensed AS IS and THERE ARE NO WARRANTIES,
            EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED
            WARRANTIES OF  MERCHANTABILITY AND  FITNESS FOR A PARTICULAR
            PURPOSE,  AND   ALL  SUCH   WARRANTIES  ARE   EXPRESSLY  AND
            SPECIFICALLY DISCLAIMED.   IN NO EVENT SHALL GAP DEVELOPMENT
            COMPANY BE RESPONSIBLE FOR ANY INDIRECT, SPECIAL, INCIDENTAL
            OR CONSEQUENTIAL DAMAGES OR LOST PROFITS TO YOU OR ANY OTHER
            PERSON OR  ENTITY REGARDLESS OF THE LEGAL THEORY, EVEN IF WE
            HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
            
            No dealer,  company or  person is  authorized to  expand  or
            alter either  these warranties  or this  agreement; any such
            representation will not bind GAP Development Company.
            
            
            
            
            
                              GAP Development Company
                                  24242 Porto Fino
                              Laguna Niguel, CA  92677




                                       Page 5