

RoboSoft systems is pleased to offer several utilities for the GAP sysop 
in our GAP-Pro line of programs.  The GAP-Pro line currently consists 
of:

    GAP_LIST - The External File Lister for GAP
    GAP_Verify - The External Filebase Verifier for GAP
    Forum_Shuffle - The Forum Arranger for GAP
    GAP_Merge - The Filebase Merger/Re-arranger for GAP

All of the GAP-Pro utilities are available for download from The Cookie 
Jar at 714-997-0350.


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


              GAP_LIST - The External File Lister for GAP          

GAP_LIST is an external program used to generate file listings for GAP 
BBSs.  It will allow you to easily and quickly create file listings 
while you wait or in an event.

Why do you need a program such as this when GAPFILE can already produce 
file listings?  Well, to start with, GAP_LIST was created with just one 
purpose in mind -- to create file lists.  It has been highly optimized 
for this specific mission.  GAP_LIST also generates all of the
requested listings with just a single pass through the database.  What 
this adds up to is speed and flexibility. On my system I can generate 
condensed and enhanced listings for all areas AND for each subject in 
those areas, in well under half the time it takes to do just a 
condensed listing with GAPFILE.

Here's a brief list of GAP_LIST's major features:

 - Creates Master lists of all areas and subjects specified in the 
   configuration file.      
 - Creates Area (Forum) lists including all subjects or individual 
   subjects specified in the configuration file.    
 - Creates individual listings for each area/subject.  (Registered 
   version only)    
 - Can create separate Condensed, Enhanced, Raw, and New (Registered 
   version only) File listings in each of the categories above.    
 - Creates a color summary bulletin listing the number of files and 
   total bytes in each area and subject.    
 - Allows files to be excluded from the listings according to security 
   level.    
 - Multi-user version can be run while users are still online.    
 - Configuration file is plain ASCII so it's easy to change and you can 
   have any number of different configurations.           

GAP_LIST comes in two versions, one for single-node boards and one for 
multi-node boards.  (The multi-node version is available to registered 
users only.) You can use the single-node version on multi-node boards, 
but you must be sure that all nodes are inactive before running 
GAP_LIST. The multi-node version allows you to generate file listings
while users are online and can be easily set up to run from an event.  
(The multi-node version requires that you have a multi-node version of 
GAP.)


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


     GAP_Verify - The External Filebase Verifier for GAP
       

GAP_Verify is a batch mode maintenance tool for the GAP filebase.  It's 
primary functions are:

  1.  Verify the size, date, and location of files in  the 
      filebase.  
  2.  Word-wrap the enhanced descriptions to fit the 72-character line 
      allowed by GAP.  
  3.  Extract and use FILE_ID.DIZ descriptions if found in .ZIP files.  
  4.  Re-parse the keywords using a sysop-defined list of words to be 
      excluded from use as indexed keywords.  
  5.  Look for "lost" files on the hard drive.  These are files that 
      exist on the hard drive but aren't in the GAP filebase.

There are many options available to control exactly what gets done and 
how it is accomplished, but these are the base functions.

To provide for extremely fast operation, GAP_Verify makes use of 
advanced virtual memory techniques.  If you have a couple megabytes of 
EMS/XMS memory available, GAP_Verify should just about fly on your 
machine.  The verify process should run anywhere from twice as fast to 
upwards of ten times as fast as the GAPFILE UPDATE function, depending 
on exactly what is being updated.

GAP_Verify can word-wrap the enhanced descriptions to 72-character 
lines, optionally filtering out the high-ASCII characters often used to 
draw cute boxes around the descriptions.  

You can have GAP_Verify look for a FILE_ID.DIZ in each .ZIP file it 
verifies.  If found, the DIZ description will be extracted and used to 
replace the current description.  Related to this function is the 
ability to specify a list of words which should not be indexed as 
keywords if found in the DIZ description.  This can cut down 
tremendously on the size of your FILEKEY files by eliminating nonsense 
keywords.

GAP_Verify can re-parse the existing keywords using the keyword 
exclusion list mentioned above.  The parsing algorithm used by 
GAP_Verify is slightly different than that used by GAP itself and 
should result in a slight improvement in the resulting list of 
keywords.

GAP_Verify can also print out a list of the files encountered in the 
directories it searched during the verification process that did not 
show up in the filebase.  If used correctly, this can help find a lot 
of dead wood on your hard drives (or locate files that fell into the 
cracks).

One particularly handy use for GAP_Verify is to periodically scan your 
upload area and extract the FILE_ID.DIZ descriptions from the files 
uploaded in non-batch mode.  It will also update the file sizes to 
correct for comments added to the ZIP during UPCHECK processing.

Because the whole idea behind GAP_Verify is speedy verification of your 
filebase, it allows a great degree of control over which files are 
verified and which directories are searched when looking for files.  
You can tell GAP_Verify to ignore one or more partitions during its 
scan of the filebase.  Any files that reside on those partitions, 
according to the location in the filebase, will be completely skipped.  

You can tell GAP_Verify to scan entire partitions, specific 
directories, or any combination of the two.  So if you want it to scan 
all of drive D:, but only a couple directories on drive E:, GAP_Verify 
can handle it.

You can provide a list of specific files that should be skipped.  This 
list gives you complete control over exactly which characteristic of 
the file (size, date, location, description, DIZ, keywords) should be 
skipped/ignored during the verification.  Because this list might be 
rather lengthy, GAP_Verify can even generate one for you.

If you use the parameter file method to tell GAP_Verify which 
partitions and/or directories to scan, it will automatically create a 
file containing the names of the directories it scanned.  If, on a 
later run, you haven't modified the parameter file, GAP_Verify will 
simply load the directory names from the file it previously created.  
If your directory structure changes infrequently, this technique can 
save quite a bit of startup time.

GAP_Verify will automatically create a log file listing information 
about all the filebase entries it modified.

All the GAP_Verify parameters can be specified on the command line.  If 
you missed one or more required parameters, GAP_Verify will prompt you 
for those parameters.  Because there are so many control parameters 
whose command-line versions are a bit cryptic, you can set up an 
environment variable with a default set of parameters and specify 
overrides or additions, if necessary, on the command line.

If you don't want to mess with the command line, just put GAP_Verify in 
your GAP default directory and run it.  It will prompt you for each 
required parameter and give you a complete explanation of what each is 
for.  There are a few of the "fine tuning" features of GAP_Verify that 
are only available from the command line, but you'll probably never 
miss them if you really don't want to mess with the command line.

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

         Forum_Shuffle - The Forum Arranger for GAP
          
Forum_Shuffle will allow you to quickly and easily change the
arrangement of the forums on your GAP BBS.  It will do everything 
except update your menus.  All you have to do is figure out what order 
you want the forums in and Forum_Shuffle will do the rest, including 
rearranging all the files required for GAPQWK and MainMail.

-----------------------------------------------------------------------
         
         
       GAP_Merge - The Filebase Merger/Re-arranger for GAP


GAP_Merge is a GAP filebase maintenance utility that will allow you to 
merge two GAP filebases together or to re-arrange the ordering of 
subjects in an existing GAP filebase.  The merge function is great when 
adding a CD-ROM, such as one of the Pier Exchange CDs, that comes with 
a GAP filebase.

GAP_Merge will allow you to specify the mapping of subjects from source 
to destination filebase.  If you want files from Area 0, Subject 5 in 
the source to end up in Area 2, Subject 3 in the destination, GAP_Merge 
can handle it.  It will also do drive translations so you can map drive 
E: from the source filebase to drive X: in the destination filebase.

If the destination filebase does not exist, GAP_Merge will create it.  
This allows you to use the subject mapping capabilities to move your 
files around.

GAP_Merge comes in single-node and multi-node versions.  The multi-node 
version allows you to merge filebases while users are still online.  
(This isn't really recommended due to the heavy load the merge places 
on the system, but you can do it if you have to.)

