
04/19/93

  NOTE: You NEED to run GAPSETUP on each of your
Nodes in order to save out the new
configuration.

  GAPSETUP

    On the 3rd Miscellaneous Screen, there is a new field called
    "Return To Door Menu". If set to Yes, GAP will stay at the
    Door Menu when a user returns from a Door. This only applies to
    Doors that are invoked with the Open or Door Commands.

    The Modem Reset, Init, and Off Hook strings were moved to a new
    Configuration Screen and are now called "Modem Commands".

    On the Port Configuration Screen (used to be Modem Configuration
    Screen) there are 4 new fields where you specify the
    Communications Port Interface GAP should use and the DigiBoard
    Specific options if you are using an Intelligent DigiBoard.

    Following is an explanation of the new fields:

    Interface : The Com Port Interface to use:

      Standard    - Normal COM Interface. Same as what GAP has always used.

      DigiBoard   - Direct DigiBoard Interface.

      Int14/EBIOS - DigiBoard Interface via Interrupt 14 Enhanced BIOS
                    calls.

    DigiBoard Memory Window : The High Memory Address you have the
      DigiBoard configured to use as the communications area between
      the Board and the Host Computer. Must be one of: C000, C800
      D000, D800.

    DigiBoard I/O Port : The Port you have the DigiBoard configured
      to use. Must be one of: 100, 110, 120, 200, 220, 300, 320.
      
    DigiBoard Channel : The Communications Port Number on the
      DigiBoard to use for this instance of GAP. For the DigiBoard
      Interface, this is normally 1 - 8. For the Int14/EBIOS
      Interface, this is normally 4 - 11.


    If you do not have a DigiBoard installed, you should select the
    Standard Interface.


  GENERAL

    GAP now supports the DigiBoard COM/Xi series of Intelligent
    Serial Communications boards. These boards contain 4 or 8 serial
    ports along with their own on-board processor to control the ports.
    These boards are actually a single-board computer dedicated to handling
    serial port I/O.

    By moving the serial I/O functions from the Host Computer to the
    DigiBoard, the IRQ and Interrupt Latency bottleneck that plagues
    Multi-Tasking users is eliminated. 

    GAP supports the DigiBoard in two ways:
  
        Direct Programming and INT14/EBIOS calls.

      Direct Programming is the fastest because it eliminates the need
      for costly software interrupt calls to a slower BIOS. In addition
      it does not require the presence of a Device Driver which basically
      performs the same functions as the Direct Programming method.

      INT14/EBIOS requires that a Device Driver be loaded (this driver
      is supplied by DigiBoard). Serial Port I/O is performed by issuing
      software interrupts (Interrupt 14).

    Whether or not to use the Direct Interface or the Int14/EBIOS
    Interface depends on the external programs you are running. GAP
    and any Door program written with GAPCDR or GAPQBDR will work
    with the Direct Interface without problem. This Interface is
    faster and more reliable than the Int14/EBIOS Interface. However
    many Door programs will simply not work at all, no matter which
    interface you choose and those that will work with the DigiBoard
    require that the DigiBoard Device driver be installed. In that
    case, the Int14/EBIOS Interface must be used.

    The Direct Interface requires that you use the program
    RESETDIG.EXE in your AUTOEXEC.BAT file so that the DigiBoard is
    properly initialized each time you boot your computer. This
    program is needed in order to properly establish the
    communications channel between GAP and the DigiBoard. It need be
    run only once when the computer is first booted.

    NOTE: Do NOT use RESETDIG.EXE if you have elected to use the
          Int14/EBIOS Interface. If you do, you will essentially put
          the Device Driver to sleep and since GAP uses Enhanced
          BIOS calls, the communications routines will fail.

    When using the Int14/EBIOS interface and the DigiBoard supplied Device
    Driver, it is not necessary to turn on the "Character Waiting" flags
    for each of the ports. GAP does not use these flags as they basically
    defeat the purpose of using a multi-port board in a multi-tasking
    system. To use these flags an IRQ must be dedicated to the DigiBoard.
    If the flags are not used, the IRQ need not be set.

       Imagine running 8 ports under a Multi-Tasker where all 8 ports
       are in use. As characters are received by each of the 8 ports, an
       interrupt is generated. The Device Driver must service the
       interrupt request and since the driver runs on the Host Computer,
       it will be spending a lot of precious time figuring out which of
       the ports generated the interrupt and updating its "Character
       Waiting" flag for that port.

       By disabling the "Character Waiting" flags and not utilizing the
       IRQ, the Host Computer will not know it has 8 serial ports running
       at high speed at the same time.
  
    If, however, the the IRQ and Character Waiting flags are enabled,
    no harm is done. GAP simply will not utilize the flags.
  
    The Character Waiting flags are provided because making Interrupt
    14 calls takes longer than simply checking a memory address (which,
    by the way, is what the Direct Programming interface does).

    When Invoking a Door Program or when shelling to an External
    Protocol Driver, GAP will pass COM 1 as the Port Number to use.
    This Port Number should be ignored and your batch files should be
    configured so that each Node runs a Door or External Protocol
    based upon your DigiBoard Configuration. These configuration
    options for the door or protocol basically depend upon your
    DigiBoard Channel Number.

    In order to run a Node in Local Mode, you have always needed to
    set the "Communications Port" to 0. The same still applies. If
    you run 4 or 8 nodes with a DigiBoard but one of those nodes is
    a Local Only Node (i.e., no modem is involved), then for THAT
    node, select the STANDARD Interface and set the Port to 0.

    The Maximum Baud Rate for a DigiBoard Node should be no higher
    than 38400. Some of the newer boards (the 2 Port Board for
    instance) are capable of 115200 bps but we do not suggest setting
    the Channel that high. The COM/Xi supports speeds up to 57600
    but suffers from the "CRC Syndrome", meaning, it looses characters.

      If you experience lost characters and/or see a lot of CRC
      errors during File Transfers, then your Port Speed is set too
      high.

      But just because you are using a lower Port Speed doesn't mean
      things have slowed down. Remember that the DigiBoard is
      handling the COM Port I/O.


    NOTE: If using the Int14/EBIOS interface and you have the February 1993
          release of the XIDOS Device Driver, you MUST call the DigiBoard 
          BBS and download the patch to this driver since the 2/93 release
          has a bug that will cause all File Transfers and Attached Files
          to fail.

03/21/93

  Released GAP Communications Version 6.2

  The communications routines were modified to support the
  DigiBoard COM/Xi series of Intelligent Communications Boards.
    
    These boards come with either 4 or 8 Serial Ports and include
    an onboard Micro Processor. 
 
    GAP programs the board directly, meaning no Device Driver is
    needed and best of all, no Interrupts are generated to the
    Host computer. This is a boon under a MultiTasking environment
    since the MultiTasker will no longer have to switch tasks
    everytime a character arrives at one of the serial ports.

    Each Port is programmed to use an a 8k Receive and an 8k Transmit
    Buffer.

    DigiBoard support will be available in all versions of GAP from
    Single Node to 99 Node at no extra cost.

    Although the Communications routines support the DigiBoard, it
    is not available in the 03/21/92 release except in GAPCom which
    is still in Alpha Testing.


  GAPSETUP

    The Phone Template now allows you to enter an 'X' in the
    character positions. An 'X' tells GAP that anything is allowed
    in the field. This is necessary for some European countries.

      If you do decide to allow any character in a Phone Number,
      you need to disable 'Force Registration' so that GAP won't
      attempt to validate the phone number.


  GAPFILE

    During Importing, GAPFILE will no longer allow a description
    to overflow into the Password field. This was fixed several
    years ago but somehow got broken again.

    You may Globally change any and all Passwords to a password
    of your choosing or no password at all. To do this, enter
    an '*' in the Old Field, and the new password (or blank)
    in the New Field.

    You may now include files that are in the Root Directory of
    a drive in your FileBase. To do so, leave off the trailing
    slash. For instance, a file in the Root Directory of Drive
    C: would have a 'Where' Field of 'C:'.


  GAPPACK

    The ISAM Pack routines were not closing the original Data File
    after the packing process was completed. For some NetWare Lite
    users, this was preventing GAPPACK from renaming or copying
    the Data File to a Backup File.


03/09/93

  GAPBBS

    Added support for GAPCom (soon to come) so that GAPBBS and
    GAPCom can talk to each other behind the scenes. More support
    to come in future releases.

    When writing a DOOR.SYS file, GAP will no longer write all of
    the Forums a user is a member of. Instead, GAP will just write
    a 0 (for the Main Board).

      This should NOT present a problem since we do NOT know of ANY
      DOORs that use the FORUM Membership line in DOOR.SYS. If you
      have a Door that DOES use this info, speak up now or we will
      leave it as it is.

      The above change was made for those who have a LOTS of Forums
      configured. Reading the MEMBER file while writing DOOR.SYS 
      slows these systems down tremendously.

    Fixed the TimeCredits while Uploading so that the credits are in
    effect while entering the Descriptions. It seems users with a 1
    to 1 Upload Credit (no time lost, no time gained) were being
    logged off for 'Expired Time' after they spend several minutes
    filling out the Descriptions. (Whatever time they gained during
    the actual uploading was being lost filling out the
    Descriptions).

    Local Downloads are implemented. The process is automatic. If
    you or a user are on locally, GAP will prompt you for the path
    to copy the file(s) to.


02/07/93

  GAPCALL

    Fixed a problem with GAPCALL and running from the Command Line.
    Seems it would sometimes (or all the times, depending upon who
    was running it) produce a Divide by 0 error when exiting.

  GAPFILE

    Fixed a problem with the Move Files Utility Function. If you were
    moving more than 200 files, the last file on the screen was causing
    problems with the first file.

    To tell GAPFILE to NOT create a DOS Window when using the
    Stray Files command, a new toggle was added to the Stray Files
    Menu. You can toggle the window on and off by checking the
    "Use DOS Window" prompt on the Menu. Note that in order to
    "remember" this toggle, we had to add a new field in the
    GAPFILE.CNF configuration file. This means any previous defaults
    you had set up for the Utility Menus will be lost.


  GAPBBS

    Fixed a problem with sending files using Zmodem. Because of the
    change Microsoft made to the time routines in the C Library, the
    Zmodem dates were off. We implemented a work-a-round.


  QWK/GAPNET/UTI

    Fixed a problem with messages that have lower case names in the
    TO and FROM fields. This was causing the New Mail flags to not
    be updated.


01/25/93

  Fixed a problem with GAPSETUP and editing the DOORS files.


01/17/93

  GAPFILE

    On the Utility Menu there is a new function that allows you to
    merge one FileBase with another. Using this utility, you can
    take a FileBase and merge all of its files with your current
    FileBase.

    One use of this new feature would be if you just purchased
    a CD and the CD came with its own FileBase. Instead of loosing
    your existing files or having to export them and then re-import
    them into the CD FileBase, you can simply merge them with the
    files from the CD.

    To use this feature, you will need a FILES.DAT from your old
    FileBase. It should be renamed to FILESOLD.DAT or something
    similar. You won't need the .IDX file or the FILEKEY.DAT and .IDX
    files. GAPFILE will merge all of the files in the FILESOLD.DAT
    with the files in your current FILES.DAT. Any duplicates, that
    is, any files in the FILESOLD.DAT that are already in the 
    current FileBase will not be merged. Their names along with the
    Area and Subject where they are located will be written to the
    IMPORT.LOG file.

  GAPBBS    

    The Overlay Manager was patched so that it opens GAPBBS.EXE
    using shared attributes. You should keep in mind that if you
    share your EXE files between your nodes, you still need to set
    the EXE's to Read Only. Even though the Overlay Manager will
    open the EXE in shared mode, DOS continues to open and load
    files using exclusive access mode. This means that if two
    nodes try to run GAPMENU, GAPBBS, or any of the other EXE files
    at exactly the same time, only ONE Node will be given access
    rights to the EXE. The only inconvienence of setting your EXE
    files to Read Only is forgetting to reset the attribute when 
    you install new updates (you won't be able to copy the updated
    EXE on top of the old file).


    The workings of the ARCREAD.BAT have been modified slightly.
    You will need to change your ARCREAD.BAT or use the supplied
    file.

    GAP will now pass as the first parameter, the full path of where
    the file to be read should be extracted to (which will be one
    of your Work Directories). The other 3 parameters remain the
    same but they've been moved up one (for instance, the old
    parameter 1, Name of Archive to Process, is now parameter 2).

    Your batch file needs to be modified so that it extracts the
    file to be read into the work directory. GAP will then display
    the extracted file from your work directory. After displaying it
    the file will be deleted.

    
01/10/93

  GAP is now compiled with Microsoft C version 7.0. We have not
  yet utilized any of the advanced features of the new compiler
  (such as Dynamic overlays, and optimum code generation), but
  will work into that in a future release. The new compiler
  changed the base date for time calculations. As such, any 
  program that accesses GAP's message files will show incorrect
  message dates until that program installs a work-a-round.

  Fixed a problem with the View/Change Stats menu where users 
  were being allowed to select the number of a field that was
  not displayed and change the information contained in the 
  unseen field.

  We think we may have finally caught the Phantom Sysop and locked
  him up. Only time will tell since he isn't a regular visitor.


  GAPSETUP

    On the Files System Screen, there are two new options. These
    are: 'Copy Files From Drives' and 'To Drive'. These options
    enable GAP to copy files from a CD-ROM to a hard drive. This
    is necessary when working with very slow CDs or 'juke boxes'.

    Copy Files From Drives - You enter the letters of the Drives 
      that GAP is to copy files from. You may currently enter up
      to 18 drive letters. If you leave this field blank, GAP will
      not copy any files.
    
    To Drive - This is the Hard Disk drive that GAP copies the
      files onto. GAP will create a work directory off of the
      root of this drive and copy the files into that directory.
      After the files are downloaded, GAP will delete the files
      and remove the directory.

    Although this feature is designed primarily for CD-ROM's, it
    can also be used to copy files from a slow hard drive to a
    faster hard drive, or from a Network drive on the Server to
    a local drive on a Workstation.


  GAPBBS

    Due to popular demand, GAP now supports the viewing and reading
    of any Archive file format, including self contained archives
    (EXE or COM files).

    GAP internally supports the viewing of ARC's and ZIP's and
    externally supports other compression formats via a batch file.

    The internal support for the reading of a text file within an
    ARC or ZIP has been removed. This is now performed externally
    via a batch file.

    When a user selects the Archive View Command, if the archive is
    not an ARC or ZIP, GAP will shell to a batch file called
    ARCVIEW.BAT. This file goes in your Default Directory. A sample
    batch file is included. It handles ARC, ZIP, and LZH formats.
    This batch file must invoke the compression program so that
    it creates a listing of the archive. The listing is redirected
    to a file called ARCVIEW.TXT, which must be placed in your
    Default Directory. GAP will delete this file after it has
    displayed it to the user.

    When a user selects the Archive Read Command, GAP will shell to
    a batch file called ARCREAD.BAT. This file goes in your Default
    Directory. A sample batch file is included. This batch file must 
    invoke the compression program so that it extracts the file
    specified by the 3rd parameter passed to it. The file must be
    extracted into your Default Directory. GAP will rename this file
    to ARCREAD.TXT and display it to the user. After displaying the
    file, GAP will delete it.

  GAPFILE

    GAPFILE was modified to support the new PKZIP compression 
    format. The next release will support the ARCVIEW and ARCREAD
    batch files so that it will support any archive format and
    allow reading of a text file from within an archive.


11/15/92

  LOGON.BAT and the Sysop Defined Menu Items are no longer credited
  against a user as a Door Opened.

  Fixed a problem with Zmodem Uploads where a single error could
  cause the entire transfer to be aborted.


  When Moving Files using the Move Files Utility Menu option in
  GAPFILE, if there are more than 200 files in the directory, you
  may now move files beyond the 200th file.

    200 files will be displayed at a time. You will process the
    group of 200 files in the normal fashion (i.e., tag the files
    to be moved and press F9 to move them). After the files are moved
    the next 200 files will be displayed. If there are no files in
    the group to be moved, you may press PGDN to bring up the next 
    group of 200 files.

    You may also include only those files that are older than so
    many days. For instance, if you want to move only those files
    that are older than 30 days, you may specify 30 in the new Menu
    Option field for Move Files and any files less than 30 days old
    will not appear in the list of files.

      Keep in mind that while filtering files, the displaying of
      any files found will be slower since GAPFILE has to check the
      date on each of the files.

      If you don't want to filter files by their age, simply leave
      the "Older Than" field at 0.


  Also, during the Move Files utility, you may now press F6 to see
  an Enhanced Description of the current file (the file where the
  cursor is).

    This will allow you to see who uploaded the file, how many times
    it has been downloaded, the last access date, etc.

  Remember that the Active Function Keys are ALWAYS explained by
  pressing the F2 key. If you need to see what key does what, don't
  forget the F2 key!

 
11/08/92

  Any file that fails the upload integrity check will now be written
  to the caller log.


  When UnRegistering users in a Forum or a Range of Forums, GAPUSER
  will no longer loop thru each User Record. Instead, it will simply
  delete any Member Record that belongs to the Forum(s) being
  unregistered. This will speed up the process of UnRegistering
  users but it also means that User Names cannot be displayed, just
  User Numbers.


  If running a Subscription board and a user's subscription is
  expired, when unregistering the user in private Forums, GAP will no
  longer go through every Forum to see if it is a Private Forum and
  if so, delete the user from the Member record of that Forum.
  Instead, GAP will now index through the Member File for just that
  user and delete any records that belong to a Private Forum. This
  should speed up log ons for users who's subscription is expired.

 
  When replying to a message, you may now reply to the person that
  the message is for (the To Person in the message header). To do so,
  you simply append a 'T' after the Reply command in the message
  disposition prompt:

    R  - Reply normally (to the person who left the message)
    RT - Reply to the person the message is To (if the message
         is to YOU, then you will reply to yourself).

    For instance, if Bob Jones leaves Sally Smith a message and you
    issue a RT at the prompt, you will reply to Sally Smith instead of
    Bob Jones. 


  When replying to a message, you may now delete the message you are
  replying to (providing "Allow Deleting of Messages" is turned on or
  you have Sysop level).

    To do so, simply append a 'D' after the Reply command in the
    message disposition prompt:

      R   - Reply normally
      RT  - Reply to the To person of a message

      RD  - Reply normally, delete message after reply
      RTD - Reply to the To person of message, delete after reply


   When reading messages and invoking the user editor to edit the
   record of the person who left the message (the To user), using the
   'F' command, you may now alternatively edit the record of the
   person the message is To.

     To do so, simply append a 'T' after the 'F' command:

       F  - Edit user record belonging to the person who left the
            message.
       FT - Edit the user record belonging to the person the message
            is To.



  If you are using LOGON.BAT to simply create a DOOR.SYS file you may
  remove that file since GAP will now write a DOOR.SYS file when a
  user Logs On. DOOR.SYS won't be created when the Sysop logs in
  locally (Sysop In or Sysop In Quick).

    If you want GAP to write a LOGON.BAT file, then on the Third
    Miscellaneous Screen in GAPSETUP there is a new option down at
    the bottom where you tell GAP to write the file.


  When Joining a Forum, if there is a LOGON.BAT in the Forum's
  Default directory, GAP will run the batch file. As with the regular
  LOGON.BAT file, this will not occur if it is the Sysop on-line or
  if an Event is pending.


  The 5 Node version has been replaced by a 6 Node version.

  The 10 Node version has been replaced by a 99 Node version.

  GAP now consists of the following versions:

        Single Node - $ 79.00
        3  Node     -  159.00
        6  Node     -  259.00
        99 Node     -  359.00

  On the 2nd Miscellaneous Info Screen, there is a new field, below
  the "Node Number" field, where you may tell GAP how many nodes you
  are actually using. This option is used during WHO and CHAT
  displays and when using the "Network Monitor" Window in GAPMENU.

    If you are running the 99 Node version and are only using 15
    Nodes, you can set this field to 15 and GAP will only display
    15 Nodes when showing the WHO-CHAT-NETMON screens.

    Similarly, if you are running the 6 Node version and are only
    using 4 nodes, you can set this field to 4 and GAP will only
    display 4 nodes while using those functions.

    This field needs to be set to the highest number of Nodes in
    your system and should be the same for ALL Nodes in that system.

      Meaning, you need to edit the configuration for each of your
      Nodes and set this field to the same number.



  Fixed some problems with messages addressed TO the Sysop
  and the Sysop being told he has no mail to read.


  GAPBBS will recognize a Quick LogOff (G Q), and NOT display
  the ENEWS file if the user knows how to issue the command.

    The Quick Log Off will NOT be allowed if the Quick Log On
    is NOT Allowd.


  If you have a FAX Modem and your Modem returns "CONNECT FAX" or
  returns FAX anywhere in the CONNECT String when there is a FAX on
  the other end instead of a Modem Caller, GAPMENU will shell out to
  a file called FAX.BAT (in the DEFAULT Directory for the Node). If
  the file doesn't exist, nothing will happen - except for GAPMENU
  recycling. If the file IS Present, then the FAX.BAT file can run
  your FAX Software to retrieve the incomming FAX transmission.

       YOU are responsible for creating the FAX.BAT file which
       will call your FAX software to retrieve the FAX.

    Once the FAX is received, GAPMENU will regain control and bring
    the BBS back up.


  GAPBBS will now strip leading spaces in front of any command
  that it expects to receive.


  OFF, LOGOFF, BYE, GOODBYE, and any combination thereof will
  be recognized as a legitimate Log Off Command.


  In GAPUSER, there are two new fields. These fields relate to
  QWK Networking and if you are not a HUB for a QWK Network, you
  can simply ignore these two fields. The two new fields are at the
  bottom right hand side of the screen and are:

                QWK Network Status
             Allow Non Echo Forums

        QWK Network Status allows a user to send messages to your
        BBS using a QWK Mail Door (or internal QWK) where the
        messages are not FROM the user. 

        If you run a QWK Network HUB, you will want to set this
        field to Yes for ANY user that is a "node" off of your
        HUB. By setting this field to Yes, you are allowing the
        user to UPLOAD messages that do NOT have his/her name in
        the FROM field of the message. This field is used by
        GAP's QWK/REP Modules.

        The second new field, "Allow Non Echo Forums" goes with
        "QWK Network Status". If a user has Network Status, then
        you can optionally allow the user to have access to your
        non Echoed Forums. With other systems, your QWK Network Users
        are required to use two separate accounts on your BBS. One
        for Network Mail and one for personal Mail. By setting this
        flag to Yes, you are allowing the QWK Network User to have
        access to the Forums you have that are NOT ECHOED (Same as
        if the User were just using a Mail Reader). 

          If you prefer that the Netmail Node have two separate 
          accounts on your BBS, leave this field set to NO. With
          this field set to NO, the Node will have to call back
          using a different Name and import/export non-echoed Forums
          in the normal manner (where he/she has to read the messages
          with an off-line Mail Reader).

          If you have insurances from your Netmail Node that he/she
          will place the messages from your Non-Echoed Forums into
          private Forums where only the Sysop has access to those
          Forums, then you can set this field to YES.

            If you do NOT understand the differences between allowing
            a Net Status User access to NON Echoed Forums, then 
            DEFINATELY set this field to NO.

              You should NOT set this field to YES unless you
              KNOW for a FACT, that the Node has set up restricted
              access to the Forum where he is importing your
              non-echoed messages (on his/her board).

        We will have a separate manual for those who use the 
        internal QWK modules to implement QWK Networking. 


  Fixed a problem with Read Only Forums and not being able to Read
  Mail or Import Mail.

  Any Marked files will now be displayed with the word "Marked" in
  the date field (condensed listing).

  GAP will no longer say a user is Available for Chat when a user
  has his/her Chat Availability turned off.

