
                             
                                        
                                        
                                          

                          Load Processor 2.5

Table of Contents:                                             Section

 What RIPITUP is..................................................  1
 Why this program was written.....................................  1
 What RIPITUP does................................................  1
                                                                   
 The Quick Setup..................................................  2
 How to setup the Searchlight Autodoor............................  3
                                                                   
 Configuring RIPITUP using RIPITCFG...............................  4
   Primary Configuration..........................................  5
     Setting the Date Check.......................................  5
     Incrementing the Date Check Monthly..........................  5
     Converting Formats...........................................  5 
     Adding Files to Archives.....................................  5
     Where RIPITUP puts Failed Files..............................  5
     Setting Up Temp Directories..................................  5
     Virus Checker Configuration..................................  5
     GIF Tester Configuration.....................................  5
   Custom Configuration...........................................  6
     Registration.................................................  6
     Mail Setup...................................................  6
     Mailing Users on Errors..............(Registered Version Only) 7
     Upload Alarm Settings................(Registered Version Only) 7
     Striping Ansi from FILE_ID.DIZ files (Registered Version Only) 7
     Bypassing Recompress of files........(Registered Version Only) 7
   Archive Configuration..........................................  8
     Setting up for PKZIP, ARJ, LHA, SQZ, etc.....................  8
   RIP II Configuration........................................... waiting
   Other Options..................................................  9
     Access Level Bypass..........................................  9
     Filename Extension Bypass....................................  9
     PKWare's AVEXTRA.TXT.........................................  9
     Reformating FILE_ID.DIZ and DESC.SDI.........................  9
 Where files get written to.......................................  10
 Warnings.........................................................  10
                                                        
 Running RIPITUP from the Command Line............................  11
 What the Initialization Screen means.............................  12
 How RIPITUP works................................................  13
 What the heck are %1, %2, %3.....................................  13
 Setting Up a New Program to run, GIFTester example...............  13
 Reading the Log File.............................................  14
 Figuring Out Errors..............................................  14
 Known Error Levels for various programs..........................  14
 Software Tested with RIPITUP.....................................  15
 End Notes, and Thank-You's.......................................  16
 Who is Global-Tech?..............................................  17
                                                                   
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
                                                              Section: 1
What RIPITUP is:

  It has come to my attention that some people do not know what an Upload
  Processor is.  Do not feel bad, I did not either until I started running
  my own BBS.

  It started out as an simple problem, with me thinking, "Hey, I probably
  should, at least, scan for viruses on every file that get's uploaded to
  my system."  So I wrote a BIG batch file using parameters sent from my
  Searchlight system.  Well it got crazy fast, and I said to myself,
  "There has got to be an easier way."

  I found out there were programs written to do all these things.
  Basically a large batch file that shows a pretty screen to the user and
  accomplishes the processes the Sysop wants done to his files.

Why this program was written:

  No file processors in existence had the features I wanted.  I found a
  program called F-Brain, it was O.K. it did the job and hey, it even
  recompressed archives to their maximum compression.  It did not have RIP
  support, did not support SL well, it was real slow, and was not at all
  configurable.  Looking to the ones made for Searchlight I found yet the
  same problems, certain formats not supported, when a new archive format
  came around you had to wait on the author to upgrade his program so your
  door would support it.  All these products worked but, no RIP support.
  This was back in 93'.  Hence the beginning of RIPITUP.
  RIP...100%...from day one.

  As in every version of RIPITUP I do not redirect ALL of the output of the
  programs you are using to a null.  Then give you some nice, user friendly,
  screen to look at.  This burns up CPU time and I feel it is easier to
  solve errors and problems if you can see the output.  I did, however,
  "pretty it up a bit".  Plus, everyone that uses this program is a Sysop,
  not a user.  The user gets a wonderful screen in all modes.

What RIPITUP does:

  - HIGHLY configurable                    
  - Has RIP, ANSI, MONO, support  
  - Reformats FILE_ID.DIZ to Searchlight 76 character long description  
  - Strip Ansi from FILE_ID.DIZ  
  - RIP II compliant  
  - Audible ALARM upon initialization of new upload  
  - Date checks files uploaded within archives  
  - Auto Increments the DATE cutoff monthly  
  - Auto-detects Operating System and adjusts to compensate  
  - Dual Virus Scanning Option 
  - Checks for embedded archives and virus scans them  
  - Converts between ANY format  
  - Deletes unwanted files from archives    
  - Fast!, had to put delays in it to see what was going on  
  - File Extension Bypass  
  - Unrecognized Format Recompress Bypass  
  - Has been tested with PKZIP, ARJ, LHA, SCAN, Tb Anti-Virus 
  - Keeps -AV Security on ZIPs  
  - Mails Sysop on errors  
  - Mails users on errors, also send them a thank-you type note  
  - Memory efficient to allow the running of most any program  
  - Moves files offline for Sysop review  
  - Multi-Node support, multi-tasker friendly  
  - User Access Bypass  
  - Will Tests GIF's for integrity, resolution, etc    
  - Puts YOUR BBS Name in the title  
  - Scans for Viruses, whichever utility you choose  
  - Simple setup   
  - Test directories and disable features from the command line  
  - The best looking processor (In RIP and ANSI) 
  - Written with Turbo Pascal 7 0 and the Searchlight libraries  

 Well enough of that let's set this thing up!

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
                                                              Section: 2
THE QUICK SETUP!

1...The "SLBBS=" must be set in your operating system environment.
2...Either a "TMP=" or "TEMP=" must be set in the environment so the
    memory swapper know where to put the swapfile if it runs out of EMS
    or XMS memory.
3...Make a directory called RIPITUP copy all files from ZIP to it.
    See FILES.LST to make sure you received all program files.
4...Run RIPITCFG.EXE.
5...Change all paths to reflect your programs on your computer.
6...Log in to your BBS so all flags are all set to an active BBS mode.
7...Set your Autodoor in Searchlight CONFIG just like the AUTODOOR
    example in the next session.
8...Test you config by running a ->  Local Upload
9...Look for any problems!
10..Done

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
                                                              Section: 3

Upload Autodoor Example:

  This is not a standard door.  It MUST run as an upload autodoor!  This
  is configured in the SL config program.  Select General Setup, then
  Autodoors, then Upload Autodoor.  Your setup should look similar to the
  example below.


                                                 /L Just Logs, not necessary
                                                  but, a good idea.
                                                                
                                                                
 1. Command ....................... C:\BBS\RIPITUP\RIPITUP.EXE /L
 2. Directory Path .  <Ŀ
 3. Communications Support ........ None       
 4. Abort Method .................. Terminate  *Must be a DOT for Single
 5. Write Protection .............. No          or Multi-Node operation.
 6. Parameter File ................ None        DON'T put a FULL path!
 7. Pause After Door .............. No          The UPLOADS.BBS directory
						will always be tested by
                                                default.

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
                                                              Section: 4

               
                                  
                                  
                               


  RIPITCFG.EXE is the heart of the RIP IT UP!-Load Processor.  Once the
  config file is written, the processor will look here for direction.
  The file RIPITUP.DAT contains all the information for your path
  setups.  DO NOT ERASE this file unless you wish to start off with a
  fresh .DAT file.  PLEASE! test all formats and switches before going
  on line.

  When first installed the RIPITUP.DAT comes populated with some default
  settings.  Actually the settings I use on my BBS!

Opening Screen:

[1] Primary Configuration.  <-Sets the SysOps wants and needs.
[2] Custom Configuration.   <-Sets Mail and Registration information.
[3] Archive Configuration.  <-Sets Archive format information.
[4] RIP II Configuration.   <-To be implemented

[Q] Quit Rip-It Config.

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
                                                              Section: 5

Primary Setup:

 [1] Failed files will be MOVED/DELETED after failure of any test.

     Hitting the 1 will toggle Move or Delete

 [2] Files before Jan 1970 will be: MOVED/DELETED
 
     Only EXE, CMD, and COM files are tested within a archive!  Hitting 
     2 will let you set how new of files you want.  Use numbers for 
     input.  Or, Zero out the entries out for no DATE testing.  So, if 
     a archive is ALL text or no executables it will pass.  This was 
     done for speed, it takes a while to check a couple hundred files 
     for dates.  Plus 95% of the files out there have an EXE, CMD, or 
     COM inside.  As long as one executable file is greater than your 
     date set above, RIPITUP is programmed to allow the file to go to 
     the next check.  Files with extent you have not set like a .DLL 
     for example will be tested on a individual basis, and of course 
     re-compressed if they pass.  (Being you also have the re-archive 
     option set).

 [3] The "Files Before" date WILL/WILL NOT be incremented monthly.

     This feature will increment the Date Check every month.  For
     instance if you had this feature turned on now.  Next month it
     would read in #2 "Files before Feb 1970".  This was done so if you
     set a 6 month date period it will stay a 6 month period, without
     going into the configuration every month to change it.

 [4] Files uploaded will NOT be converted to another archive format.

     Hitting 4 will allow you to pick a file to convert to.  Note:  If
     you choose to do this, fully define this archive format.
     Everything that comes to your BBS is getting changed to this
     format.  Except those files extensions in BYPASS.TXT, REFUSE.TXT,
     or in -AV security type ZIP files!

     You can only do this after defining at least 1 archive format.


 [5] No files will be added to Re-compressed archives.

     Some people don't believe in this but, here it is.  Put a filename
     here and it will be added to every archive that comes in, as long
     as you are RE-COMPRESSING the archives that are uploaded to you.  
     This file should be located in the same directory as RIPITUP.EXE.

 [6] This command line will test all files with .GIF extensions for integrity.
  ex. - C:\PATH\GIFTEST.EXE %1%2

     Be sure to keep %1%2 together, %1 is the filename that GIFTEST
     will be passed and %2 is the extension. If you put a space in
     between it would be like trying to pass GIFTEST two commands.
     This is one of the only decent GIF testers I could find SHAREWARE.
     If anyone has a better one I would appreciate a pointer.  But, it
     works fine and returns a DOS ERROR LEVEL so....  Also if you like
     you can add the switches you desire in between the filename
     extension and the %1%2.  All the commands work in this manner -
     See the GIFTester example below for further information on this)

 [7] This command line will be used to test the TEMP directory for Viruses.
   ex. - C:\PATH\SCAN.EXE /NOMEM /NOBREAK /SUB %3

     SCAN works, but after reading this one article, I highly suggest
     you chose another one.  Oh well, something is better than nothing.

     Those using Desqview might be more inclined to use Thunderbyte
     Anti-Virus being that it is more memory efficient.  Whatever
     scanner you use you should set it to test every file in the %3 
     directory and all it's subdirectories.  The following are some 
     examples of various scanner configurations.

Virus Scanner setups:

   - For McAffes Scan :
     (Pre-2.0)
     SCAN.EXE /nomem /nopause /nobreak /sub /noexpire %3
     (Post-2.0)
     SCAN.EXE /nomem /nobreak /sub %3

   - For Thunderbyte Anti-Virus

     TBSCAN.EXE af ba co in nb nm ol %3

  - For F-Prot Anti-Virus

    F-PROT.EXE %3 /command /nobreak /nomem /noboot /old


 [8] This PATH is where you wish moved files to be stored.
  ex. - C:\BBS\RIPITUP\JUNK

     Self explanatory.  If the file is moved, this is where it ends up!
     If nothing if defined here a \JUNK directory will be created below
     wherever you are storing the RIPITUP executable.  Look here for
     ERRORS.LOG.  Of course you will be notified via SLMAIL if you have
     the MAIL feature turned on.  See below.

 [9] This PATH is where temporary files are to written/deleted from.
  ex. - C:\TEMP

     This is the directory where ALL NODES will start their temp
     directories.  So if a user is on node 3.  A directory called NODE3
     will be made below whatever you define here.  Example C:\TEMP\NODE3
     All files processing will be done in this directory or below and
     cleaned up afterward.

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
                                                              Section: 6
Custom Configuration:
                                                     Ŀ
[1] RIP IT UP!-Load Processor - Registration Name:      Leave blank or  
[2] RIP IT UP!-Load Processor - Registration Number:  REGISTER it, else 
[3] Full Path to SLMAIL.EXE:                             it will halt   
                                                     
    When prompted enter FULL Path

    ex. - C:\BBS                - Enter path or leave both fields
                                  blank for NO mail.

    Receiving the RIPITUP News: - Enter the persons name you want to
                                  receive the ERROR.LOG creation mail.
                                  Most systems will probably be SYSOP.
                                  The person named here will ONLY BE
                                  MAILED ON ERROR.LOG CREATION.  If
                                  there is an ERROR.LOG already there
                                  nothing will happen.  (No reason for
                                  mail overkill)

                                  Must have a MAIL subboard and support
                                  real names within the MAIL subboard.

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
                                                              Section: 7
Once REGISTERED the following menu will appear:


[1] Full Path to SLMAIL.EXE : C:\SLBBS
    Receiving the RIU News  : SYSOP
[2] Sound Alarm on upload?  : NO
[3] Mail users on errors?   : NO
[4] Mail thank-you letter?  : NO
[5] Strip the High-ANSi out of uploaded DIZ files? : NO
[6] Bypass re-compression of non-archived files?   : NO

[Q] Quit Back to MAIN

    When the ALARM is toggled to <YES> a new menu will come up.  Just
    push the number and hear the sound that will be played four times
    upon a user starting an upload check.

      [1] Bat
      [2] Bird Call
      [3] Explosion
      [4] Phone Ringing
      [5] Flying Saucer
      [6] Siren
      [7] Whoop
      [8] Phaser
      [Q] Quit and save last sound played

   If you have the mail user switch on, the filenames you need to create
   or edit in your RIPITUP HOME DIRECTORY are:

        For GIF test failure                 -  GIF.TXT
        For DATE Check Failure               -  DATE.TXT
        For VIRUS check failure              -  VIRUS.TXT
        For a file refused by REFUSE.TXT     -  REFUSED.TXT
        For INTEGRITY check failure          -  INTEG.TXT
        A little THANK-YOU note for the user -  THANKS.TXT

   Since we used the standard SLMAIL that Frank wrote for the BBS, all
   the high speed macros are available to you to use in your text
   files.

   Here is the complete list of macros available:

     \SB  Current Subboard
     \FD  Current File Directory
     \%N  Current User's Name
     \%U  Current User's Name, with spaces replaced by underbars
     \%K  Current User's First Name
     \%A  User's BBS Access Level
     \%F  User's FILES Access Level
     \%G  ANSI Graphics Mode (C, M, or N)
     \%T  User's time limit, in minutes
     \%M  Amount of time left in current session (in minutes)
     \%L  Time the user logged in (HH:MM)
     \%B  Current Baud Rate
     \%P  Active Communications Port (0-4)
     \%C  Sysop 'Chat Available' status (Y or N)
     \%S  BBS System Name
     \%O  Node Number (Multi-user systems only)

    For example you could make your THANKS.TXT look like this:
  Ŀ
   \%N,                                                                
            Thanks for the upload on node \%O in the \FD directory.    
                                                                       
                                              The Sysop                
                                                                       
  
           <<< ABOVE OPTIONS FOR REGISTERED VERSIONS ONLY >>>

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
                                                              Section: 8
ARCHIVE Configuration:

  Hit 1 type in the extension you wish to TEST for.  ex. "ZIP" NOT
  ".ZIP".  Once that information is entered the other information
  fields will open up.  Use The following list for guidance.  Yours
  should look similar.

  Remember that you want to have the archiver's overwrite if necessary
  in case people have doubled up on the same filename.  Also, you want to 
  make sure that any sub-directories will be made with a no prompt
  option.(example the -y in ARJ).  Extracts should be recursive also.

Archive setups:

EXT     :=  ZIP
Test    :=  C:\PATH\PKUNZIP.EXE -t %1%2
Compress:=  C:\PATH\PKZIP.EXE -rp -ex %1 %3
Extract :=  C:\PATH\PKUNZIP.EXE -d %1%2 %3\
Delete  :=  C:\PATH\PKZIP.EXE -d %1%2 @C:\BBS\RIPITUP\DELETE.IT
Comment :=  C:\PATH\PKZIP.EXE -z %1 < C:\BBS\RIPITUP\COMMENT.TXT

EXT     :=  ARJ
Test    :=  C:\PATH\ARJ.EXE T %1%2
Compress:=  C:\PATH\ARJ.EXE A -r %1 %3
Extract :=  C:\PATH\ARJ.EXE X -y %1%2 %3\
Delete  :=  C:\PATH\ARJ.EXE D %1%2 !C:\BBS\RIPITUP\DELETE.IT
Comment :=  C:\PATH\ARJ.EXE C %1%2 -zC:\BBS\RIPITUP\COMMENT.TXT

EXT     :=  LZH
Test    :=  C:\PATH\LHA.EXE T /m1 %1%2
Compress:=  C:\PATH\LHA.EXE %1 %3
Extract :=  C:\PATH\LHA.EXE X /m1 %1%2 %3\ {Trailing back slash important here}
Delete  :=  C:\PATH\LHA.EXE D %1%2 @C:\BBS\RIPITUP\DELETE.IT
Comment :=

EXT     :=  SQZ
Test    :=  C:\PATH\SQZ.EXE T %1%2
Compress:=  C:\PATH\SQZ.EXE %1 %3
Extract :=  C:\PATH\SQZ.EXE E %1%2 %3\
Delete  :=  C:\PATH\SQZ.EXE D %1%2 @C:\BBS\RIPITUP\DELETE.IT
Comment :=  C:\PATH\SQZ.EXE C %1%2 COMMENT.TXT


EXT     :=  ARC
Test    :=  C:\PATH\PKUNPAK.EXE -T %1%2
Compress:=  C:\PATH\PKPAK.EXE -A %1 %3
Extract :=  C:\PATH\PKUNPAK.EXE -X %1%2 %3\
Delete  :=  C:\PATH\PKPAK.EXE -D %1%2 @C:\BBS\RIPITUP\DELETE.IT
Comment :=

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
                                                              Section: 9

OTHER OPTIONS:

-  To skip processing on certain access levels make a text file called
   ACCESS.TXT and type in the access levels you wish the processor to skip
   processing on.  This file must be in the same directory as RIPITUP.EXE.

   Example:

   255
   254

   Just keep everything left justified and don't add spaces you should
   be fine.  Remember if you put 255 in there and try to test it as the
   SYSOP it will just bypass you.  Test as a guest or don't make this
   file until all your testing is complete.

-  The BYPASS.TXT is a text file of JUST EXTENSIONS you NEVER want to
   process.  Such as ANSIs, RIPs, or Text Files.  Do the same as above,
   make a text file of the extensions NO LEADING "."

   Example:

   RIP
   ANS
   TXT

-  The REFUSE.TXT is a text file of JUST EXTENSIONS you NEVER want to 
   ever get on your BBS.  Such as in my case, I hate GIF format type 
   files.  I have no use for them so they get moved or deleted.  Just 
   like in the above example, make a text file of the extensions NO 
   LEADING ".".  Now every file extension that gets uploaded that is of 
   type XXX gets moved or deleted.

   Example

   GIF
   SQX
   EDF
   SL2


-  To delete all those pesky BBS ads inside archives, follow the
   examples above when setting up the DELETE function.  Remember files
   with the -AV security will not be touched just DATE tested.  HINT:
   As I notice new pesty names inside ZIP's I add the names that are
   common to a DELETE.IT text file.

   This file is an option. But remember that if you are not going to 
   use the file you must remove all the delete function calls in the 
   RIPITCFG archive section and do this for every extension.

   Example:
   BBSAD.*
   CWBBS.ANS
   UNPROTEC.NET


-  If you are using PKZIP to re-compress and you have the REGISTERED 
   version of PKZIP.  Put the AVEXTRA.TXT in the directory with 
   RIPITUP.EXE.  This will be copied to the NODEXX directory when 
   RE-COMPRESSING.  Don't forget to add "-xavextra.txt" and "-!" in you 
   command line.  See ZIP documentation for further details.

-  To implement the DIZ reformating, simply rename or delete 
   FILEINFO.EXE out of each nodes home directory.  The DIZ reformat 
   option works the following way.  If a archive just has a FILE_ID.DIZ 
   the first line will be used for a short description, and the whole file
   will be used for the long.  If the archive has both a DIZ and 
   DESC.SDI file the SDI (Short Description Inside) will be used for 
   the short description and as the first line of the long description.  
   The reformatted DIZ will follow.  If the SDI file is the only 
   information to be found inside an archive, then that will be used 
   for both the long and short descriptions.

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
                                                              Section: 10

Where files get written to:

  The ERRORS.LOG file will be written to the same directory as defined
  for your junk directory.

  The PROCESS.LOG file, which is created with the use of the /L switch,
  will be located in the working nodes home directory.

  If in LOCAL mode a OUTPUT.<current display setting> will be created in
  current nodes home directory.
  
/////////////////////////////////////////////////////////////////////////////
///                          ***** WARNINGS *****                         ///
/////////////////////////////////////////////////////////////////////////////

1. The processor does not care what you put of it's configuration
   fields.  It will attempt to do that command regardless.  This may
   cause either loss of files or a RUNTIME ERROR, depending on where
   the problem occurred.  Once again, test all formats and the way you
   do business BEFORE putting it on line.

2. Remember to tack on the .EXE part in the Searchlight Upload
   autodoor.  Just like Searchlight doors, if there is no extension
   "strange things may happen."

3. If you don't have an archive format on your machine don't define it.
   Any unrecognized formats will be virus scanned and date tested and
   converted depending on the feature you have set.  I suggest everyone
   have at least SCAN, PKZIP, PKUNZIP and ARJ on there machine.

4. The processor uses REAL names to mail a user back.  Your MAIL sub
   must use REAL names.  Not just ALIASES!

5. If you put BOGUS information in the registration name and/or
   registration number the processor WILL NOT START!  Count on it.

6. These settings used in the examples are by no means the standard or
   whatever.  If there is a better way let me know.

7. If you receive a RIU_ERROR #2 Cannot find Searchlight .SL2 files
   your not in a Searchlight main nodes directory.  Stay in the directory
   Searchlight dropped you into for that node.

8. Make sure you have a "SET SLBBS=" and "SET TEMP=" statement in you
   AUTOEXEC.BAT.

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
                                                              Section: 11

The Commands you may use from the DOS prompt:

  From a SEARCHLIGHT NODE DIRECTORY, after shelling out of SL.  (in other
  words go to a DOS prompt after logging in the BBS, and stay in the
  directory you dropped into.  Type a full path to RIPITUP)

  ex.- C:\BBS\RIPITUP\RIPITUP.EXE /?

  /B   -  Bypass DATE Check as set in RIPITCFG
  /L   -  Logs all users and processes that were completed in PROCESS.LOG
  /U   -  Forces a directory to process
           ex. RIPITUP /UC:\DOWNLOAD
  /D   -  Delay Time In Status and Window Updates
           ex. RIPITUP /D20

  The /U forces a directory that has just received a new Upload or you are
  running tests on.  I use it to process and test files I just downloaded
  from the DOS prompt.

  The bypass or /B was added because sometimes I download OLD files and
  I want to put them up on the BBS.  Rather than unzipping it, scanning
  it, etc..  I just type RIPITUP /B /UC:\DOWNLD.  Then the file gets
  converted and checked with worrying about the processor kicking it out.

  *********************************************************************
  *****  The above switches are for the SysOp to use at the       *****
  *****  COMMAND line NOT for the Autodoor setup!  The following  *****
  *****  switches below can be used in the autodoor SLBBS setup.  *****
  *********************************************************************

  The /D is to add a delay between each process.  I have a single node
  486/40DX it was TOO fast, the users could not see what was happening
  with small files.  This switch will slow it down.  It is multi-tasker
  aware and a value of 20 is a little over 1 second.

  The /L was for us at GTSoft for debugging purposes, but we left it
  for those who want to see every process that was ran on the file 
  uploaded.  This will also write the command line that RIPITUP 
  executed or tried to execute.  The output file will be called 
  PROCESS.LOG in the current nodes directory.  We highly suggest you 
  turn this feature on until you have thoroughly tested the processor.

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
                                                              Section: 12

When RIPITUP starts it will look like this on the Sysop side:

 RIP IT UP!-Load Processor    Version 2.5    Global-Tech Software   ޲


  Initializing the Upload System
  Sending Data to <User Name or Filename>
  Operating System is Desqview
  This Program is UN-Registered!
.................................................

  The first line checks to see that Searchlight is loaded and grabs all
  the information about the user and the BBS system name.

  The second line tells where the file is being written.  If local, the 
  name reflects the output filename.  If the user is a remote, the user 
  name will be inserted.

  The third line just detects the operating system.  I am sure you know
  what it is, but the processor needs to know.

  The fourth is the little nag for you to register this thing!!  I believe
  it is worth it now that we have all known bugs out.  Right now this only
  adds one second to the startup procedure.  In a registered version the
  delay is gone and the registration name will be shown.

  The dots reflect data being sent.  Each "." is one line of either a RIP
  or Ansi being sent.  This was added because with callers at 2400 and
  below it takes a couple seconds for the main screen to be sent.

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
                                                              Section: 13

Here is how it works:

  Basically a BBS lives for files.  I was seeing on the Searchlight
  registered net that people were asking programmers "hey, I need this
  extension tested could you upgrade your program to", blah, blah, blah.
  So I was thinking every real program returns a DOS error level no matter
  what it is.  Sysops are pretty bright, in general, let them program it
  themselves.  All's we need is a simple medium.  Hence the RIPITUP!-Load
  processor.  You pick the extension and tell it what you want it to do.
  You can stick any program or batch file you wish in the configuration.

  The processor works on DOS EXIT CODES and continues to process that file
  as long as zeros are returned.  For those of you who have NO idea what I
  am talking about, whenever a program executes the programmers put in
  return codes to tell them what happened in the execution of their
  program.  So this number can be used in batch files and with other
  programs.  If everything went O.K. it comes back to DOS or the
  program that called it with a "0", meaning no error occurred.  This
  allows you the flexibility to add in any program that returns a DOS
  EXIT CODE, (99.9% do!).  Check with the documentation of the program
  you wish to use with RIPITUP.

  RIPITUP passes all file information around through parameters.  Just 
  like a batch file uses %1, %2, etc. so does RIPITUP, with a twist.

What the heck do %1, %2, and %3 mean?

  Note:  Don't go crazy trying to figure out what %1, %2, %3 is for.
  Just follow the examples that come with the processor and look at the
  output in your PROCESS.LOG to figure out any error your having.  Once
  you have a good understanding of how the processor uses these
  % variables you will be able to customize the processor to your needs.

  Some programs, like LHA, insist on a trailing backslash after the
  name of the directory you want to uncompress to.  Remember you must
  be able to type the same command from the DOS prompt that you are
  trying to execute inside RIPITUP.  Again, examine closely your
  PROCESS.LOG.

For example:  The GIFTester

  Lets say you receive a new GIF tester and want to use it with the
  processor to test new GIF uploads.  The executable is called NGT.EXE
  (New Gif Tester) and it only excepts filenames, NO extension.  The
  old way of testing with GIFTEST was GIFTEST %1%2.  This means when
  the processor sees a .GIF in the directory being processed it would
  pass the filename and extension to GIFTEST %1 being the filename and
  %2 being the extension.  Now the new NGT only excepts filenames. In
  the configuration you would have C:\PATH\NGT.EXE %1.  So on execution
  NGT would be passed just the filename for it to test NOT the
  extension because you did not put in the %2.  All functions are this
  flexible, to allow you to use anything with all the switches and
  things you want.  Please let me know how I could make these features
  better or easier for you to use.

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
                                                              Section: 14

Reading the log files:

 RIPITUP!-Load Processor Errors Logfile 

User GUEST Uploaded VIRUS.ZIP on Node #1 at 21:02:21 on 03/19/1994
RIU ERROR #7: SCAN ERROR #13: Virus scanner failed. (Possible virus infection!)

User GUEST Uploaded OLD.ZIP on Node #1 at 10:35:50 on 03/20/1994
RIU ERROR #8: File failed date test.

User GUEST Uploaded BAD.ZIP on Node #1 at 10:36:38 on 03/20/1994
RIU ERROR #5: .ZIP ERROR #2: Possible Integrity!

User GUEST Uploaded TEST.ZIP on Node #1 at 13:21:45 on 11/03/1994
RIU ERROR #5: .ZIP ERROR #10: Possible Integrity!

User GUEST Uploaded TEST.ZIP on Node #1 at 11:31:57 on 11/03/1994
RIU ERROR #5: .ZIP ERROR #512: Possible Integrity!



  The top lines in every example are pretty self-explanatory.  In the
  second line, the internal RIPITUP error is shown. The RIU ERROR number is
  our error level scheme we developed here at GTSoft.  After that you will
  see the error level returned by the program called.

Figuring out Errors:

  In the first example we see that the Scan Error is a #13.  Below, I
  have taken some samples of various programs error levels and typed
  them in.  Now since I was using Scan as my anti-Virus program, I
  would look up what a SCAN error level 13 would be.  Sure enough, it's
  a virus infection.  You would most likely want to delete this file.

  In the second example you will see that no other external error was 
  returned.  The reason for this is, we do date testing internally 
  within RIPITUP and there is no number to return except for ours.  In 
  this archive there were no .EXE, .COM or .CMD files that met the 
  criteria as set in the RIPITCFG so the file was moved.

  In the third example we have an error level returned by PKUNZIP of #2
  We know that the program running at the time was PKUNZIP, and NOT
  PKZIP because in our archive configuration for .ZIP files, it is
  configured to run -> C:\PATH\PKUNZIP.EXE -t %1%2 for an integrity
  check.  Now, if you look under PKUNZIP, Error Level #2 you will see
  that this means there is a internal error within this ZIP file.

  For the forth and fifth example I have edited the RIPITCFG data to
  cause the two most common errors called in to Global-Tech.  In the
  example they are integrity errors but they may fall anywhere within
  the realm of the processor as you go and set it up.

  Lets look at them one at a time.  In the fourth example you'll see a
  .ZIP error #9 which errored on the integrity check.  Once again for
  the .ZIP files we are using PKUNZIP for integrity checks.  If you
  look at the error levels for PKUNZIP Error Level #9 you will see that
  it is file not found.  What file?  You say.  Well for that we will
  have to look in our PROCESS.LOG.

 RIPITUP!-Load Processor Process Logfile 

User GUEST Uploaded TEST.ZIP at 13:21:35 on 11/03/1994
 Searching BYPASS.TXT

User GUEST Uploaded TEST.ZIP at 13:21:36 on 11/03/1994
 INTEGRITY CHECK C:\PATH\PKUNZIP.EXE -o -t .ZIP > C:\TEMP\AVTEST.1

User GUEST Uploaded TEST.ZIP at 13:21:49 on 11/03/1994
 Moved or Deleted file


  In this log file you can see that we tried to unzip a file called
  .ZIP.  Now since there is no file called .ZIP the program PKUNZIP
  returned an error level, and since that error level was not a 0,
  RIPITUP assumes a failure and moves the file.  To fix this problem, I
  just replaced the .ZIP with the correct full filename variable 
  -> %1%2 with the RIPITCFG program, archive configuration.

  In the fifth example you see an .ZIP error level of 512.  Now since
  PKZIP only returns error levels less then 255.  We must look elsewhere.
  The memory swapper we use here at GTSoft also will return error levels,
  when it cannot perform assigned tasks.  Such as running PKUNZIP.  This
  is exactly what happened, an error level 512 (hexadecimal 200) cannot
  find program file.  This means you probably did not type a correct path
  or you have a misspelling.  
  
  Below, if you look at the exit codes for the memory swapper, you will 
  see that 200h is file not found. THE SIMPLE RULE IS:
  
   ** IF YOU HAVE A RETURNED ERROR OVER 255, CHECK YOUR PATHS AND TYPING. **

  Here are some common programs ERROR LEVELS returned.  These are
  excerpts from the actual programs documentation.

Exit codes for SCAN version greater than 2.00:

     ERROR LEVEL  DESCRIPTION
      
           0      No errors occurred and no viruses were found.
           1      Error occurred while accessing a file (reading
                  or writing).
           2      A VirusScan database (*.DAT) file is
                  corrupted.
           3      An error occurred while accessing a disk
                  (reading or writing).
           4      An error occurred while accessing the file created 
                  with the /AF option; the file has been damaged.
           5      Insufficient memory to load program or complete 
                  operation.
           6      An internal program error occurred.
           7      An error in accessing an international message
                  file (MCAFEE.MSG).
           8      A file required to run VirusScan, such as SCAN.DAT, 
                  is missing.
           9      Incompatible or unrecognized option(s) or option 
                  argument(s) were specified in the command line.
          10      A virus was found in memory.
          11      An internal program error occurred.
          12      An error occurred while attempting to remove
                  a virus, such as no CLEAN.DAT file found, or
                  VirusScan was unable to remove the virus.
          13      One or more viruses was found in the master
                  boot record, boot sector, or file(s).
          14      The SCAN.DAT file is out of date; upgrade
                  VirusScan data files.
          15      VirusScan self-check failed. It may be
                  infected or damaged.
          16      An error occurred while accessing a specified
                  drive or file.
          17      No drive, directory or file was specified;
                  nothing to scan.
          18      A validated file has been modified (/CF or
                  /CV options).
       19-99      Reserved.
        100+      Operating system error; Scan adds 100 to
                  the original error number.

Exit codes f  o  r SCAN version less than 2.00:

     ERROR LEVEL  DESCRIPTION
      
	  0       No viruses found
	  1       One or more viruses found
	  2       Abnormal termination (program error)
	  3       One or more uncertified files found
	  4       Ctrl-C or Ctrl-Break aborted scan


Exit codes for Thunderbyte Anti Virus Scan:

     ERROR LEVEL  DESCRIPTION
      
          0       No viruses found / No error occurred
          1       No files found
          2       Error occurred
          3       Files have been changed
          4       Virus found by heuristic analysis
          5       Virus found by signature scanning
        255       Sanity check failed


Exit codes for F-Prot Anti-Virus:

     ERROR LEVEL  DESCRIPTION
      
          0       Normal exit nothing found
          1       Abnormal termination - unrecoverable error (usually a
                  missing system file)
          2       Selftest failed - program has been modified.
          3       A Boot/File virus infection found.
          4       Virus search string found in memory.
          5       Program terminated with ^C.
          6       At least one virus was removed.
          7       Insufficient memory to run the program.


Exit codes for PKZIP:

     ERROR LEVEL  DESCRIPTION
      
	  0       No error.
	  1       Bad file name or file specification.
	  2,3     Error in .ZIP file.
	  4-11    Insufficient Memory.
	  12      No files were found to add to the .ZIP file, or no files
		  were specified for deletion.
	  13      File not found.  The specified .ZIP file or list file was
		  not found.
	  14      Disk full.
	  15      .ZIP file is read-only and can not be modified.
	  16      Bad or illegal parameters specified. (help screen displayed)
	  17      Too many files.
	  18      Could not open file.
	  255     User pressed control-c or control-break

Exit codes for PKUNZIP:

     ERROR LEVEL  DESCRIPTION
      
	  0       No error.
	  1       Warning error (such as failed CRC check).
	  2,3     Error in .ZIP file.
	  4-8     Insufficient Memory.
	  9       File not found.  No .ZIP files found.
	  10      Bad or illegal parameters specified. (help screen displayed)
	  11      No files found to extract/view etc.
	  13      Header error.
	  15      CRC error.
	  23      Bad Table.
	  50      Disk Full.
	  51      Unexpected EOF in .ZIP file.
	  255     User pressed control-c or control-break

Exit codes for ARJ:

     ERROR LEVEL  DESCRIPTION
      
	  0       Success
	  1       Warning specified file to add to archive not found,
		  specified file to list, extract, etc., not found,
		  or answering negatively to "OK to proceed to next
		  volume..." prompt
	  2       Fatal error
	  3       CRC error (header or file CRC error)
	  4       ARJ-SECURITY error or attempt to update an
		  ARJ secure archive
	  5       Disk full or write error
	  6       Can't open archive or file
	  7       Simple user error (bad parameters)
	  8       Not enough memory

Exit codes for LHA

     ERROR LEVEL  DESCRIPTION
      
	  0       Normal.
	  1       CRC error occurred, probably with 'e','x','t' commands.
		  Or LHA failed to create files because of disk space, or
		  because of files in existence.
	  2       Fatal error.  Process terminated without transactions.
	  3       Failed to write temporary files in the archive.  You may
		  find a temporary file LHTEMP)2(.LZH on your working
		  directory.  You may rename this file with extension
		  LZH, and use it as an archive.


Error Levels in Hex for Memory Swapper:

     ERROR LEVEL  DESCRIPTION
      
         $0101    Error preparing for swap: no space for swapping
         $0102    Error preparing for swap: program too low in memory
         $0200    Program file not found
         $0201    Program file: Invalid drive
         $0202    Program file: Invalid path
         $0203    Program file: Invalid name
         $0204    Program file: Invalid drive letter
         $0205    Program file: Path too long
         $0206    Program file: Drive not ready
         $0207    Batch file/COMMAND: COMMAND.COM not found
         $0208    Error allocating temporary buffer
         $03xx    DOS-error-code xx calling EXEC
         $0400    Error allocating environment buffer
         $0500    Swapping requested, but prep_swap has not
         $0501    MCBs don't match expected setup
         $0502    Error while swapping out
         $0600    Redirection syntax error
         $06xx    DOS error xx on redirection

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
                                                              Section: 15
Versions of Software used for testing:

      Scan      9.21 v.114
      Scan      V.2.1.5
      F-Prot    2.17
      TbAV      6.34
      PKZIP     2.04G
      ARJ       2.41
      LHA       2.55b
      SQZ       1.08.3
      PKPAK     3.61
      GIFTEST   4B12

ALL FILES ABOVE ARE AVAILABLE IN THE FREE DIRECTORY AT (804) 541-0517.

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
                                                              Section: 16

End Notes and Thanks:

  Let me know of any problems you encounter along the way.  I convert
  to ZIP's myself and really only care about testing and uncompressing
  the other formats.  Because on "MY BBS" everything is gonna be a
  .ZIP.  Make sure whatever format is your favorite on "YOUR BBS", that
  all functions work to their MAXIMUM capability!

  The program was written in Turbo Pascal 7.0 using the Searchlight
  TPU's.  Just Mike, Baker, and me (Dan) worked on RIPITUP! Processor.

  Thanks to the Crash and Burn Society for their efforts in RIP and
  helping me come back down to the user level with the documentation,
  and also David Druce at the NYC BBS for his many calls and patience.
  Not to forget Frank Larosa for writting the BEST BBS software.

  If you really want to call be voice you can (804) 861-4744 after 6
  EST but, I prefer you call the BBS (804) 541-0517 or get in touch
  though the SL_Net.  I monitor the DOORS and SLBBS-R subs.  If you
  call, be nice to the wife and leave a message, I will be happy to call
  you back if I am not there.

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
                                                              Section: 17
                                                           
Who Wrote This:

  All of us are, or were, members of the US Army Information Software 
  Development Team at Ft. Lee, VA. (USAISSDCL) with time on our hands 
  now and again.  Presently working on the Standard Army Ammunition 
  System Modernization or SAAS-MOD.  Tracking every piece of ammo the 
  Army has, a database from hell, for sure.  (Our last machine was a 14 
  GIG monster with 2 386 based processor.  Thank GOD for better 
  processors and databases these days).  We are giving Oracle 7 and the 
  RISC based HP-9000 a run for it money though, presently we are up to 
  1.8 million lines of code.

  Members of Global-Tech Software are:

     Michael A. Allen - (Founder, now gone to Germany)
     Daniel C. Slagle - (Searchlight guy, we just don't do BBS stuff)
     Steve Baker      - (The Novell guru)
