GATEWAY2.DOC

12.6 KB 0e24c6bd41687e73…
  ******
 ********    ****    ********  ********                       ****   ***    ***
 **    **   **  **   ********  **    **  ***           ***   **  **   ***  ***
 **        **    **     **     **        ***           ***  **    **   ******
 **   ***  **    **     **     *****      ***    *    ***   **    **    ****
 **    **  ********     **     **          ***  ***  ***    ********    ***
 ********  **    **     **     **    **     ***********     **    **   ***
  ******   **    **     **     ********      ***   ***      **    **  ***


          GATEWAY (c) version 2.00  -  July 1987 by Hans D. Kellner


        Welcome to  Gateway and the  world of remote communications!  This
    program has been written as a utility for System Operators (Sysops) of
    bulletin boards.  It is now possible to run an external program and be
    able to control and see the program, even if the program uses the ANSI
    control codes.  Input is taken  from the COM line and system keyboard.
    Output is  sent to  the system  screen and out  through  the COM line.
    Several new features have  been added to version 2.00 of Gateway.  The
    most important  is the  support of a Fossil  driver  for input/output.
    Also, the program is now  one file that is installed with command line
    arguments.  A  few other changes  have been  added which are explained
    below.  Now enough chatter...  go on to the good stuff!







                             SYSTEM REQUIREMENTS
                             -------------------

        Gateway has been  written in  assembly language as a DOS character
    device  driver.  When loaded,  it only  requires a  little  over 2K of
    memory.  It may be run on an IBM PC or compatible using PC/MS DOS.  If
    the Fossil driver option is used  the program is less dependent on the
    hardware.  When the  Fossil option is  specified all COM  input/output
    and keyboard input is done through the  Fossil.  If direct port writes
    are used, COM input/output is done with direct read/writes to the 8250
    UART chip.   Also, keyboard  input will be done through BIOS call 16H.
    In  both  options, screen  output  is done  through BIOS call 10H.  If
    you  have installed  Gateway  with the  Fossil option,  then a  Fossil
    driver  must be loaded  before  Gateway may be used.  Two drivers that
    have been tested with Gateway are X00 by Ray Gwinn and OPUS!COM by Bob
    Hartman.  Other Fossil  drivers may work with  Gateway as long as they
    implement the same functions.  I used Vincent E. Perriello's document,
    'Fundamentals of  FOSSIL  implementation  and use',  Draft  version 3,
    March 7, 1987.   Gateway determines  the UART  port  address from  the
    RS_232_BASE table.  This is located  in the BIOS data  area at address
    0040:0000.  Gateway only  does this when  the Direct  write option has
    been specified.  Enough tech stuff...




                              CHANGES & ADDITIONS
                              -------------------

        With the release of  version 2.00 of  Gateway several changes have
    been made.  The most important addition is the ability to use a Fossil
    driver for input/ouput.  This makes Gateway very generic.  The program
    is  now one file that is  configured with command line arguments.  The
    support of COM1 through COM4 has been added.  Tabs are expanded on the
    system screen.  Some of the code  has been optimized  ( but I doubt if
    you will notice ).  That is all I can think of at the moment...



                                 INSTRUCTIONS
                                 ------------

        The Gateway program is  implemented as a device driver.  It should
    be loaded  with  your CONFIG.SYS file.  An example line  from a CONFIG
    file is shown below :

    DEVICE=[drive:][path\]Gateway.sys

        This example would load Gateway, defaulting to a Fossil driver for
    input/output onto COM line 1. The configuration of Gateway may also be
    changed with command line arguments. The arguments accepted are listed
    below :


                   -F           { Use Fossil driver (default)   }
                   -D           { Use Direct port writes        }

                   -1           { Use COM line 1    (default)   }
                   -2           { Use  '   '   2                }
                   -3           { Use  '   '   3                }
                   -4           { Use  '   '   4                }


    If no arguments are given, Gateway will default to -F -1 (Fossil driver
    on COM1).  The -F and -D  option are  mutually exclusive as are the COM
    line  values.  These arguments are  included on  the line  used to load
    Gateway.  Here are  several  examples that  could be  used in  your own
    Config.sys file :


    DEVICE=C:\GATEWAY.SYS -F -2         { Loads Gateway using Fossil    }
                                        { driver for COM line 2         }

    DEVICE=B:\SYS\GATEWAY.SYS -4 -F     { Loads Gateway using Fossil    }
                                        { driver for COM line 4         }

    DEVICE=C:\GATEWAY.SYS -D -2         { Loads Gateway using Direct    }
                                        { port writes on COM line 2     }

    DEVICE=GATEWAY.SYS -D -3            { Load Gateway using Direct     }
                                        { port writes on COM line 3     }

    The order of  the arguments does  not matter.  Drive and path are also
    optional.  After Gateway is loaded, it determines what COM line it has
    been  installed for.  It  then sets  its device  name according to the
    line chosen.  The names for each line are shown below :

                        GATE1           { COM line 1 }
                        GATE2           { COM line 2 }
                        GATE3           { COM line 3 }
                        GATE4           { COM line 4 }

    Simple and  original convention, eh?   This allows you to install more
    than one  copy of  Gateway  for separate  COM lines.  A  note for PCjr
    owners.  The external serial port should be addressed as COM1 when the
    Internal Modem is  not installed.  When installed,  the Internal Modem
    is addressed as COM1 and the external serial port as COM2.

        Once loaded,  the driver  may be  activated in two  possible ways.
    The first method uses  the DOS command CTTY.  This command changes the
    standard input  and output console.  An explanation of it may be found
    in your DOS manual.  This command is  executed from the DOS prompt.  A
    few example activations of Gateway are shown below :


                C>CTTY GATE1            { Make Gateway COM1 the standard }
                                        { console driver.                }

                A>CTTY GATE3            { Same as above except for a     }
                                        { COM3 version of Gateway.       }

        This will  cause all standard i/o to be  directed through Gateway.
    Notice that the  name after the CTTY command is the device name of the
    Gateway  program.  When finished  using  Gateway, enter  the following
    command at the prompt :

                                CTTY CON

    When this is  entered, DOS will restore the screen and keyboard as the
    standard input and output devices.

        The second  method for using the driver involves using the DOS i/o
    re-direction  symbols.  These are  explained in  the DOS manual.  With
    this method, the driver is only activated  during the execution of the
    program being re-directed.  An example :

                        A>COMMAND < GATE2 > GATE2

    When this  command is  entered at the  DOS prompt, several things take
    place. First, DOS determines  that all input and output will come from
    Gateway (COM2).  Then, the second  Command processor  (COMMAND.COM) is
    loaded.  Any  input  or output will  now be  sent through the  Gateway
    driver.  The Sysop will also be able to see output and can enter input
    from  the  keyboard.  When  the  user 'EXIT's  ( or Sysop ) the second
    Command.com, DOS  will revert back to the  screen and  keyboard as the
    input/output devices.

        Gateway may be  used for other applications.  Combine Gateway with
    a  communication  program  and its  'Drop to DOS' feature.  Leave  the
    program  in 'Host' mode, then access your computer remotely.  Now Drop
    or  exit to DOS.  A  batch  file  you have created then  runs a second
    Command.com and re-directs its i/o with  Gateway (example above).  You
    now have control of your computer!


                           NOTES : GOOD NEWS BAD NEWS
                           --------------------------

        Only  programs that use  standard  DOS input/output  calls may  be
    re-directed with Gateway.  Programs that use  BIOS i/o calls or direct
    screen writes will not have their i/o re-directed.

        Gateway  will correctly display ANSI  control codes on the Sysop's
    screen.  The user will  receive the codes untouched.  Not all the ANSI
    codes have been implemented though. The ones not recognized by Gateway
    are the following :

                          DSR - Device Status Report
                          CPR - Cursor Position Report
                          SM  - Set Mode
                          RM  - Reset Mode
                          KKR - Keyboard Key Reassignment

        A note to  programmers who plan to write programs for external BBS
    use.  Gateway will  only re-direct output  sent through  DOS  standard
    input/output calls.  I would suggest using the  ANSI control codes and
    the standard  i/o calls. This way your program may effectively be used
    with Gateway.

        Some programs  don't work  with the re-direction symbols but work
    perfectly fine  with the CTTY command.  Experimentation is the key to
    success.

       Gateway has  been tested  on the  OPUS Computer-Based Conversation
    System, by Wynn Wagner III. It has also been used with several of the
    popular  communications programs in  conjunction with their exit/jump
    to DOS commands. It has been run successfully on an IBM PCjr, XT, AT,
    and compatibles.

        PCjr owners  using the direct write  option should note the port
    assignment convention.  The external serial port should be addressed
    as COM1  when the Internal Modem is  not installed.  When installed,
    the Internal Modem is addressed as COM1 and the external serial port
    as COM2.

        The driver should not be activated when  there isn't a carrier on
    the other  end of  the modem.  If  it is, a loop  back occurs and any
    character output is  echoed by the modem and taken as input.  If this
    occurs turn the modem off.  If the modem does not echo characters, or
    is made not to,then the driver can be used when no carrier is present.



                               IMPORTANT STUFF
                               ---------------

        This program is Public Domain!  It may be  used freely  by anyone
    who does not  profit from  its use.  If you  profit from  MY  program
    then please  send  me $5.00 in American currency.  You may contact me
    at the location noted  at the end of this document.  Please feel free
    to pass Gateway along to others, but you may not sell it. If you wish
    to include  my program with  your software, please  contact me first.
    This document must  be included with  the program file  (GATEWAY.SYS)
    when distributed.



                                 DISCLAIMER
                                 ----------

        This program is provided as is.  You may use it at your own risk.
    There is no  warranty of  any kind or any form covering this program.
    The author may in no way be held liable for any damage of any form in
    connection  or arising from the  quality and/or  use of this  program
    and any associated files included with it.



                                  CONTACT
                                  -------

        Current versions of Gateway  may be downloaded from :
        
                            Corwin's Keep OPUS
                             (FidoNet 114/13)
                              (602)-894-1470
                            300-1200-2400 Baud

        File requests are accepted.  If you wish to contact me, address
    mail to  Hans Kellner through 114/13.   I regularly read the MEADOW
    conference mail.  You may enter messages there or through NetMail.


                                Good Luck!