
/// RATSoft Updates
    US/Canadian Support BBS: R0dent Laboratories Support Systems
                             (909)/481-1927

    RATSoft/ST Distribution:
    """"""""""""""""""""""""
    R0dent Laboratories Software
    P.O. Box 391
    Alta Loma, CA. 91701

          ____________     ___________        
         /\___________\   /\__________\       
RATSoft / /           /  / / _____    /       
Version \/______     /   \/_/  / /   /
       /\______/    /         / /   /    ___________
      / /          /         / /   /    /\_______\__\
     / /    ______/         / /   /    / /  ___  /  /
    / /    /______  _______/ /   /_   / /  /__/ /  /
   / /           / /\_______\   /__\  \/_______/  /
   \/___________/ .\/______________/         \/__/
      1st Beta: November 26, 1994
      Released: December 27, 1994 (Merry Christmas and Happy New Year!)

Manuals
"""""""
If you're waiting for a manual, I will ship all remaining (some have already
been sent) this Friday (12/30). I have to wait for my paycheck to flip the
rest of the bill for the manuals. I know it's been ridiculously long you've
had to wait for them, and I'm including something extra to perhaps make up (a
little bit) for it.

Bug Fixes
"""""""""        
 o RATSOFT.PRG
   -----------
   * In the process of setting my own board back up, found some quirks
     concerning message base/file section setup - fixed.

   * Might have squashed the 'mysteriously disappearing time' bug.

   * When adding a base, levels in other bases won't get corrupted

   * Forwarding an e-mail then deleting it would cause a system error,
     fixed.

   * If in extended system, reloading the configuration won't corrupt user
     data

 o FL_CLEAN.RAT
   ------------
   * Long-standing bug that caused the file cleanup routines to crash at
     user #1 while adjusting user pointers fixed

New Stuff:
""""""""""

 o RATSOFT.PRG ............................................... RATSoft Main
   -----------
   * New Menu Functions:
     [~loc]: User must be local, if not, jump
     [clr0]: Restore Waitcall Screen Colors
     [clr1]: Restore On-Line Screen Colors
     (these are all requests)

   * When doing a $W file add in the file sections, you may enter a 
     RATSoft description file (.DSC) and RS will pull the filenames from
     the description file. File*Tool is still required to pull the 
     description.

   * RATSoft removes RATSoft description files (*.DSC) files from lost
     batch ques as the user is prompted again whether he or she wants
     a .DSC file or not anyway

   * Description files (*.DSC) are not included in downloads/day.

   * You can search for users by phone numbers in the user editor.

   * If you want RATSoft to set your color registers upon boot-up, rename
     COLORREG.DAX to COLORREG.DAT and modify the contents. It is set-up for
     standard ANSI colors. Remember that RATSoft will already alter the text/
     background color according to settings in your configuration.

   * In the Upload Que, you can reverse credit merely by using a negative
     value. For example, -1 reverses 1 credit for the file.

 o CONFIG.PRG ................................................. Config Edit
   ----------
   Under toggles, two new options:

   1. No Account Number Log-Ons: This was added for use when the p/w file
      is compressed making old account numbers no longer valid. However,
      no such utility has yet been written.

   2. File New*Scan by LC Date: When doing a new scan in the file sections
      they are scanned by last call date. For use with AREASORT. See
      below.

 o FILETOOL.RAT .............................................. File*Tool
   ------------
   File*Tool can scan for duplicate files!

   The DUP function scans an existing file (or upload) against all files
   on the system.

   Suggested Usage: Add DUP under [Offline_Upload] and run FT from your
                    LOGOFF.BAT file. Ex: FILETOOL UPLOAD

 o AREASORT.RAT .................................... * NEW * File Area Sort
   ------------
   After many requests, I finally wrote a utility which will sort your
   file area data. It will sort by filename, extension then filename, or
   date (which is the original order). Go into DOS (while not in a file
   area) and type AREASORT to get a list of command line options.

   After you sort your areas, you will want to set the File New*Scan by
   LC Date toggle in the configuration.

   PLEASE NOTE that the variables which determine the number of new files,
   will not be accurate and the max # of new files can not be modified
   in HIGHREAD.

 o USRNOTES.RAT ........................................ * NEW * User Notes
   ------------
   Brand new module which handles "user notes" or notations on a user
   account. A file, called USRNOTES.NOT resides in the same path as your
   InfoForms. This file contains ALL user notes. You can read and add
   user notes by the [+] and [=] options in the user editor. Three types
   of notes are available:

     Temporary     - note lasts for 45 days, then deleted by system
     Regular       - note lasts for 270 days, then deleted
     Permanent     - lasts as long as your data does, or until you
                     delete it

   Run USRNOTES with the parameter "CLEANUP" to do a complete clean up
   of the notes file. I would suggest running it with your midnight
   maintance by adding it to the schedular.

   In the future, RATSoft will make notations itself in the user notes,
   reflecting things such as account matches for new applicants, and
   profile changes.

 o FL_CLEAN.RAT .............................................. File Cleanup
   ------------
   It is now possible to pass command line parameter to this module. This
   means you can have it executed in the middle of the night, and dont have
   to sit there and watch it do its thing. Run with -? parameter for
   options.

   I have it in my schedular to run at midnight each night with the
   parameter "all_areas" (clean all areas, all conferences).

   This module is also considerably faster now as it isnt as heavy on the
   disk read/writes.

 o GSZRZSHL.RAT/GSZRZSH2.RAT .................................. GSZRZ Shell
   -------------------------
   These modules allows you to use the much better and faster GSZRZ xfer
   protocol. GSZRZ must be named GSZRZ.PRG and located in your RATSoft
   folder. The shell will add the appropiate parameter for the current
   modem port in use automatically.

   GSZRZSHL relies on a log file (usually registered versions), and
   GSZRZSH2 does not. I have found that some versions inaccurately report
   status codes and therefore, in some cases, the shell may not be able
   to determine the correct number of files transfered. This seems to have
   been eliminated with the most current registered versions.

   Command line parameters are, for downloads: -sz -r -H -M
                                      uploads: -rz -r -H -M

   NOTE: The "-H" parameter is for modem ports, the shell AUTOMATICALLY
         adds the needed number. It is not necessary to specify port, only
         to pass -H if you want the shell to auto-set the port.

Notes
"""""
If you have a bug or problem to report, please do so as immediately as
possible. Some beta-testers have reported problems that I can not duplicate,
and therefore, you may run into something similiar. The more quickly it's
reported to me, the faster it gets fixed.

[end]
          ____________     ___________        
         /\___________\   /\__________\       
RATSoft / /           /  / / _____    /       
Version \/______     /   \/_/  / /   /
       /\______/    /         / /   /
      / /          /         / /   / 
     / /    ______/         / /   / 
    / /    /______  _______/ /   /_
   / /           / /\_______\   /__\  
   \/___________/ .\/______________/        
       Released July 30, 1994
            ...finally!

Distribution/Support
""""""""""""""""""""
 If someone inquires about ordering RATSoft, tell them to obtain an order
 form and mail it the address below. EVERYTHING, AND I REPEAT EVERYTHING,
 is now handled through R0dent Laboratories Software and NO ONE ELSE! This
 means nothing should be going to J&J Computers or MicroWidgets in Utah.

 Support is still $30/year. You must be up to date by September 1st or
 access to support will be denied and new versions of RATSoft will be
 invalidated for your system.

 R0dent Laboratories Software
 P.O. Box 391
 Alta Loma, CA. 91701 USA
 
 All checks/MOs payable to Steve Hughey

To-Do List
""""""""""
 Rather than hold on to this any longer, I decided to release what I have.
 This is 2.1 mostly finished. I have to add Userlist support to the FIDO
 module and finish up a few more things (the GSZRZ shell for one -- GSZRZ
 doesn't always do what the docs say it's supposed to do), and that should be
 out within a week.

Bug Fixes
"""""""""
 There are a few things which have yet to be hammered out, mainly the problem
 with 19200+ on modem 2. If anyone has any insight into this whole ordeal,
 let me know. I have the official word from Atari, and the books from Zilog.
 I can get it to work with about 50% of the modems, but that leaves the other
 half out in the dark. Code would be useful.

 I also haven't the foggest idea what seems to cause certain users to have
 wacked time limits. If you experience this, you are going to need to send
 me a copy of your PASSWORD.DAT, or if you're a good enough hacker, atleast
 the 2000 byte record of that specific user. Otherwise, be quiet about it.
 I can't dup it.

 o RATSOFT.PRG
   -----------
   * Marking files in an e-mail (during logon) and the "lost que" prompt
     showing up

   * 80+ char lines without breaks in RATSOFT.LOG

   * SysOp Next works if RATSoft isn't the front end

 o SPELL.RAT
   ---------
   * Shouldn't randomly crash. If this module is crashing a lot on you,
     check your RAM. You may have a bad RAM chip as this module shuffles
     huge portions of memory around frequently

 o SCRIPT.RAT
   ----------
   * SPACE$(sp%) works.

 o MSG_2.RAT
   ---------
   * If a base is "private" (a netmail base), and the "private" flag IS NOT
     set on a specific message, the message will NOT be shown unless it is
     specifically addressed to an individual.

New Stuff:
""""""""""

 o RATSOFT.PRG ............................................... RATSoft Main
   -----------
   * If an e-mail, which has been forwarded, is deleted, the attached files
     won't be deleted, but are deleted when the forwarded mail is deleted

   * Several /U attaches may be done during the course of message entry,
     allowing users who wish to upload one file at a time to attach several
     files to a message

   * [F]ile Lists can include all conferences at once

   * RATSoft updated for better handling of large capacity message bases.
     Remember that RATSoft's internal format should NOT exceed 500 msgs
     per base. RAT*Fido can handle in the neighborhood of 32,000 msgs per
     base.

   * You may now add and edit message bases directly from the message
     base [C]hange prompts. In the message bases, you may also toggle
     the "show mail bases" flag. This makes it easier to manage bases,
     and does not require switching to a non-existant base to create a
     new one. It also prevents users with sysop access from dropping into
     "zero" bases.

   * If you delete a message base or file areas, the appropiate pointers in
     the p/w file are reset

   * Put AREA.xxx files on any drive you like! Remember to move the file 
     first. You must keep the same folder scheme, then go into the file
     area, press "$E" and tell RATSoft where you want to keep the file

 o MSG_2.RAT ................................................ FIDO Module                                               FIDO Module
   ---------
   * File attaches recognized and supported -- refuses files which are
     attached to private bases, and only 1 file may be attached to a
     message

   * Searches are much quicker.

   * You can forward netmails.

 o MASSMASK.RAT ................................... Mass Mask Applicator
   ------------
   * Searches by mask name or number possible

   * May optionally apply the new mask name and number to updated
     accounts

 o FSE.RAT .......................................... Full Screen Editor
   -------
   * May use the right mouse button to call up the File Selector

 o FILETOOL.RAT .............................................. File*Tool
   ------------
   * Refuses non-standard FILE_ID.DIZ files. I may make conversion a
     future project.

 o SCRIPT.RAT ............................................... RAT*Script
   ----------
   * Two new commands for comparing dates: IDATE# and ITIME#. These
     return the integer values of a given date or time,

     _x%=IDATE#      ; Return current date in integer form
     _x%=ITIME#      ; Return current time
     _x%=IDATE#(dt$) ; Return integer form of 'dt$' (mm/dd/yy)
     _x%=ITIME#(tm$) ; Return integer form of 'tm$' (hh:mm:ssxm)
                       (use am/pm)

     July 1, 1994 would be 940701
     1:30:45pm would be 133045

 o FIDOCOMP.RAT ....................................... FIDO Msg Manager
   ------------
   * FIDOCOMP will run a lot faster on systems with less memory.

[end]

          ____________     _____________        
         /\___________\   /\____________\       
RATSoft / /           /  / /            /       
Version \/______     /  / /  ____      / ___
       /\______/    /  / /  / / /     / /\__\
      / /          /  / /  /_/ /     / _\/__/ 
     / /    ______/  / /  /___\     / /\__\
    / /    /______  / /            / / /  /  
   / /           / / /            / / /  /
   \/___________/ .\/____________/ / /  /        
                           _______/ /  /
                          /\_______/  /
                          \/_________/

General
"""""""
 There are some example files and extra tid-bits in the \EXTRAS\ folder
 which are not installed.

 Support RATSoft. The future of your BBS greatly depends on it.

 *NOTICE* DO NOT USE STZIP v2.4 with File*Tool! It fails to handle
 directories correctly during file conversions. Use ZIPJR.TTP v2.3 renamed
 as STZIP.TTP in your RATSOFT folder. (If you use v2.4 due to
 incompatibilities, you may still use it, but may not be able to use any
 conversion facilities in File*Tool)

 There appears to be a bug in all versions of Geneva which causes 3
 consecutive Pexec()'s to cause a "GEMDOS called recursively error".
 I have no concrete evidence, and don't wish to knock Geneva in any way,
 but until it gets remedied, I suggest you don't run RATSoft under Geneva.

Bug Fixes:
""""""""""

 o FILETOOL.RAT
   ------------
   Some stuff in File*Tool, mainly with command line driven operations
   from batch files                           

 o CALLBACK.RAT
   ------------
   CBV checks for invalid numbers (1-900's, 911, 1-700's, 853-1212, and
   555-xxxx) correctly

 o DATAEDIT.PRG
   ------------
   DataEditor: The "Bi-Directional" and "Full Screen" selections "stick"
   for the protocol editor

 o S_CHECK.TTP
   -----------
   Script Checker: Problem with a blank line immediately following a
   PROCEDURE or FUNCTION definition fixed (it only caused minor formatting
   errors.)

 o FS_CHAT.TTP
   -----------
   Full Screen Chat would sometimes get confused as to which modem port it
   was using

 o RATSOFT.PRG
   -----------
   * Batch files executed from batch files (nested) would sometimes cause
   RATSoft to bomb. Corrected.

   * RATSoft wouldn't always free screen memory it used to store the
   bottom window in the profile editor(s). This could of caused anywhere
   from 32 to several hundred k to suddenly disappear, depending on your
   video mode.

   * Corrected small bug in determing users age

   * Corrected some incompatibilities with Falcon printer output
   throughout RATSoft and some modules

New Stuff:
""""""""""

 o RATSOFT.PRG ............................................... RATSoft Main
   -----------
   * Maximum k-bytes/day added

   * AutoForwarding in e-mail. When mail is sent (not a reply), the mail may
   be redirected, or forwarded, automatically to another user's mailbox.

   * MailBoxes may be closed, preventing any mail from being sent to the
   user, baring mail addressed to ALL, mail sent by sysops, or replies to
   the mail which the user initially sent.

   * A new menu and environment function, both which do the same thing.
   [cpmt] changes a prompt, as does CP as an environment string. [cmpt]
   has the disadvantage that the new prompt MAY NOT contain a right
   bracket. Examples of each:

   [cmpt:5,{200}Press (RETURN) to Continue!]

   ...or from a script...

   ENV "CP:5,{200}Press (RETURN) to Continue!"


   This can allow you to change prompts depending on which users are
   online.

   * Saves batch que if a user logs off with files still remaining in their
   que. RATSoft will hold these files for 1 day (if they download the file
   on the 26th, for example, if they don't call back, the "saved que" will
   be deleted on the morning of the 28th) OR until a CleanUp is done. When
   a cleanup is done, the entire saved que directory is wiped as pointers
   may have changed.

   * You may run a script from prompt #22 (the "Out of Time" one) in which
   the script changes the users time left, and RATSoft will not log the
   user off if they have 1 or more minutes after the script is completed.

   * More intelligent error trapping. Errors are more intelligently
   reported, errors which occur in modules will show up in the log, and
   RATSoft will now display an alert if an error occurs during the boot-up
   process and abort instead of going into a "System Recovery..." loop.
   The alert will contain the last file accessed, and although this may
   not be COMPLETELY accurate, it will be the culprit 9 times out of 10.
   Also, << Error Recovery >> is shown at the top right hand corner during
   an error recovery, indicating RATSoft will retrieve error information
   from an ERROR.!!! file.

   * The line editor defaults to line lengths of 32k characters when
   [E]diting a text file. If you need word wrap, /N to the desired line
   length. This makes editing ASCII text files with longer line lengths
   easier remotely. The FSE still will axe everything past the 78th
   column.

   * Prompts 583-604 new.

   * Tag 167 returns random banner, centered; 168, left justified (not
   centered). Jim Stottlemire wanted this for RIP.

   * {169} returns the number of active accounts.

   * RAT-DOS has a "DOSKEY". The last 25 commands entered can be scrolled
   through using the up and down arrow keys. These keys used to give the
   user +/- 1 minute, now the left and right keys do that. There is no
   command to +/- a user 10 minutes anymore. I really doubt you'll miss it.
 
   * New File Search Option: Search by Last Call Date.

   * By using the -B command line option, you can execute RATSoft, have it
   run a a batch file, then immediately exit. Example:

   -Bbatch ...or... -Bc:\dir\batch.bat

   * CNCT_STR.DAT contains alternative "connect strings" with cooresponding
   batch files to execute. The basic idea behind this was easy FAX
   receiving, although I'm not sure what FAX software currently available
   allows receiving a FAX merely by command line parameters. The connect
   string is stored in CONNECT.STR in your \RATSOFT\ folder or in the
   {100} variable tag.

   * Usage data is modified in the same manner as the Profile Editor now

   * WAITCNCT.BAT along with all batch files in CNCT_STR.DAT can now use the
   {100} tag to pass the connect string to a launched program. For example:

   c:
   cd \myprog\
   myprog {100}

   * New menu functions.

   [cdir]: Change directory, ie: [cdir:d:\ratsoft\]
   [uval]: Uploads validator, all files
   [uvnw]: Uploads validator, just new files
   [wque]: Write Que File, ie: [wque:d:\path\que_file.que] * 
   [gque]: Append to Que w/Que File, ie: [gque:d:\path\que_file.que] *
   [nque]: Erase Que in memory, import New que, same format *
   [msnw]: Sets # of new messages for the current message base
   [fsnw]: Sets # of new files for the current file area
  
           [* see info below on que files]

 o MSG_2.RAT ................................................ FIDO Module                                               FIDO Module
   ---------
   * Smarter SmartWrap. Works better with converted RATSoft
   bases and you won't end up with a bunch of extra lines at the end
   of the included msg.

   * Continuous Scroll is recognized.

 o HIGHREAD.RAT ............................................. High Read Cnfg
   ------------
   * New Module which sets the number of new messages for each
   file section or message base. Follows the same layout as BASEMARK. This
   module is a compliment to the new functions, [msnw] and [fsnw], which
   only set the current area/base. I've included my MESGBASE.DAT and
   FILEAREA.DAT command files in the \EXTRAS\ folder if you wish to see how
   I suggest setting it up.

 o DATAEDIT.PRG ............................................. Data Editor
   ------------
   * TRANLATE.DAT now can contain a color-limitation parameter, which can
   be set using the Data Editor. You may select which color modes (2, 4,
   16, or 256+) a certain translation will be displayed in. This allows
   you to switch resolutions without needing to modify TRANLATE.DAT.

   * TRANLATE.DAT screen has all tags (&50-&79) available on screen.

 o CONFIG.PRG ............................................... Config Edit
   ----------
   * The Resource File, CONFIG.RSC, is no longer needed. CONFIG.PRG now
   contains all resource information.
 
   * New 'Double-Screen' toggle in Toggles. This doubles the screen by using
   an 8x8 font on a screen which is normally 8x16. This toggle will ONLY
   work in 640x400 (ST high) or greater. This allows 50 lines in ST high
   or 60 lines in TT medium. More in some Falcon resolutions or TT high.
   [ This does the same thing as the RUN_8X8.PRG utility I put out a few
     months ago ]

   * Toggles contains a option which reads "3 CRs Engage Edit Prompt".
   This means 2 blank lines (or 3 CR's) in the msg editor will force the
   [Edit] prompt. Some sysops may perfer this, I personally find it
   annoying. :-)

 o CALLBACK.DAT ............................................. CBV Data File
   ------------
   * CALLBACK.DAT may contain the parameter "HANGUP=NO". If so, it will not
   drop carrier on the user if the callback was successful.

 o FL_CLEAN.RAT ............................................. File Cleanup
   ------------
   * File Section Cleanup now has progress display and reports totals at end.

 o SCRIPT.RAT ............................................... RATScript
   ----------
   * FSTR$() works exactly like STR$() except it formats the
   number with commas. For example:

   OUT STR$(3300)
   OUT FSTR$(3300)

   ...would result in...

   3300
   3,300

   * Added hooks for interactive modules (GATEWAY, BASEMARK, etc.) in the
   script processor as well as message and file hooks. Tags 91 and 158
   will now work from a script, however, you can not update these,
   obviously.

Spell Checker (SPELL.RAT)
"""""""""""""""""""""""""
[released in separate file]

IMPORTANT: You >MUST< locate the dictionary directory on the Paths page
(2nd screen) in the Configuration Editor! Make sure to do this or RATSpell
won't be able to find the dictionary.

Even though the Spell Checker was released in a separate file, the
information for it is included here so that all update information may be
kept in a common place.

The spell checker includes an approx. 60,000 word dictionary, and of
course, the accompanying module which checks spelling and offers
suggestions. The speed of the spell checker depends on two very obvious
factors: Your disk drive speed and available memory.

The included dictionary is 517k. Before you start screaming about memory
requirements and how you're gonna need a 14 meg Falcon to run the board
on, have no fear, it will run on only about 120k, which is usually what
you need lying around for running most modules which handle large amounts
of data.

When the spell checker is launched, RATSoft will allocate 60% of your
memory for immediately use by the Spell Checker. If this is enough to
swallow the whole dictionary, great, if not, the spell checker will buffer
what it can and rely on the ever-so-speedy search through a file approach
when it needs something it doesn't have buffered.

The spell checker will highlight misspellings and offer the user some
obvious choices: Quit, Ignore, or Suggest. The suggestion routines
aren't the best in the world, but they work in most cases and catch most
stupid mistakes.

On my TT, the spell checker is quite speedy and goes about its business in
no time flat. On the other hand, my 520ST with 2.5 megs doesn't fair as
well. But this is only to be expected.

You may add words to the dictionary, although you must first decompile the
dictionary, and re-compile it in order for RATSoft to use it. Go into
RATDos and type "SPELL". A list of command line parameters will be shown
on the screen. When you decompile a dictionary, it writes out 26 separate
files all named RS_x.DIC, one for each letter of the alphabet. Just add
your word where ever you want. It's not necessary to stick the word in it's
appropriately alphabetized placed as the re-compiler will alphabetize and
throw out duplicates.

The dictionary comes courtesy of DB Writer. I got permission, so I used it
(in a rather modified and expanded form). I will be the first to admit
it's a bit lacking, but I'm sure some industrious RATSoft sysop who has a
burning desire to have the most complete dictionary on the planet will
include the words he/she finds necessary. Be nice and share.
It's missing some stuff which some might want to add like abbreviations
and some computer-related terms (I did add RATSoft, and the names of
all Atari computers, however).

And before some genius goes "Hey Steve! How about a thesaurus? Doesn't
that sound way neat-o?", remember that I write BBS software, and I'm not
employed by Word Perfect Corp, although I would be if they offered me a
job.

Que File Format
"""""""""""""""
Follows a simple ASCII format, each file occupying 5 lines, as follows:

Line 1: # of bytes (decimal)
Line 2: Name of file, INCLUDING PATH!
Line 3: Area File it's located in, if any, INCLUDING PATH!
Line 4: File # in Area File, if any
Line 5: Attributes, it's passed decimal, bit masked as follows:
        Bit 0: Free
        Bit 1: Database
        Bit 2: Not an Area File
        Bit 3: Arc Utilities Archive
        Bit 4: [reserved]
        Bit 5: File Mail
        Bit 6-31: [reserved]

You may write out your own que files for RATSoft to read with the [gque] or
[nque] commands, HOWEVER, you MUST set the appropriate bits! 9 times out
of 10, you'll want to set 2, or RATSoft will try to update the data in an
area file. In fact, the only bits you should EVER set are 0 or 2.

[end]

          ____________     _____________        
         /\___________\   /\____________\       
RATSoft / /           /  / /            /       
Version \/______     /  / /  ____      / ___
       /\______/    /  / /  / / /     / /\__\
      / /          /  / /  /_/ /     / / /  / 
     / /    ______/  / /  /___\     / / /  /___
    / /    /______  / /            / / /  /____\  
   / /           / / /            / / /  ____  /
   \/___________/ .\/____________/  \/__/   /_/       

Installation for the Mentally Challanged:
"""""""""""""""""""""""""""""""""""""""""
 o un-ZIP, run INST_20H.PRG

Bug Fixes:
""""""""""
 o [macr] works.

New Stuff:
""""""""""
 o CONFIG.PRG: In the modem configuration, if you select any of the
   secondary modem ports or the Falcon's serial port, the baud rate
   selections go from 300-57.6k bps. You can not, obviously, go over
   the maximum allowed by your modems, nor push anything over 19.2k
   from the modem 1/MFP-based port. Most modems have a maximum DTE
   of 38400 or 57600.

 o CONFIG.PRG/DATAEDIT.PRG: More multi-tasking AES friendly.
   CONFIG.PRG no longer installs background icons when running in
   MT mode, thus letting desktop icons show through. Both are
   MTOS/Geneva compatible.

 o CBV can handle multiple data files, based on US area codes. This
   was for people who have more than 1 local area code. For example,
   in my area, there are two local area codes, 909 and 714. My main
   CALLBACK.DAT is set for 1 local area code: 909, including and
   excluding all the necessary prefixes. A second data file,
   CALL_714.DAT, has the local area code set for 714, the appropiate
   prefixes included and excluded, and the local dial string changed
   to ATDT1714#. DATAEDIT.PRG was updated to allow you to choose which
   data file to load, and the local area code string only handles 3
   characters now.

 o FIDO Module is capable of converting internal RATSoft msg bases
   over to the FIDO format. This can be a bit tricky. Enter the base
   you wish to convert, go into the section editor, change the module
   type to "2". DO NOT ENTER THE NEW PATHS FOR THE FIDO MODULE,
   AND IMMEDIATELY HIT "Z". Change your origin and taglines, then
   hit "C" to Convert the base. RAT/FIDO will ask for the destination
   file name, and if successful, all the data will be appropiately
   updated when the conversion is complete.

   You will loose all file attaches in the conversion.

   NOTE: This DOES NOT delete the old msgs. You will need to this
   manually!

 o FIDO Module handles search options. Work just like the internal
   ones, and in most cases, are faster than the internal msg bases,
   although this really depends on your hard drive and machine. FIDO
   module also includes the familiar +, -, >, and < commands for
   getting around.

[end]

          ____________     _____________        
         /\___________\   /\____________\       
RATSoft / /           /  / /            /       
Version \/______     /  / /  ____      / _______
       /\______/    /  / /  / / /     / /\______\
      / /          /  / /  /_/ /     / / / ___  /
     / /    ______/  / /  /___\     /  \/____  /
    / /    /______  / /            / _____/ / /
   / /           / / /            / /\_____/ /
   \/___________/ .\/____________/  \/______/       

Installation:
"""""""""""""
 o un-ZIP, run INST_20G.PRG

Bug Fixes:
""""""""""
 o Denying/granting menu commands

 o Schedular fixes concerning date editing; check for morons who think
   "0" is a valid priority

 o Key "0" from the wait-call screen works again

New Stuff:
""""""""""

 o [bane] reinstated, it was not made into an external module. It now
   records who added the banner and shows it when [L]isted. New
   prompts were included, these are in the 480-490 range.

 o Changing the max. number of msgs allows the high/low entry depending
   on the module in use, and only compacts local bases.

 o For the FIDO module, any base which has a node address of 9999 or
   greater is treated as local, meaning taglines are not added, nor
   is the user prompted for routing. This is the NODE ADDRESS, the
   rest of the address does not matter, this means that in a:b/c.d
   the "b" must be 9999 or greater.

[end]

FIDO Module v0.99b
=-=-=-=-=-=-=-=-=-

Bug Fixes:
""""""""""
 o Won't ask for a destination for a public access base, also won't
   ask "[C]rash, [H]old, etc." unless the Edit flag for the user is
   set, they have sysop level, or they are the sponser. This also
   holds true for netmail.

 o Can access the ALT keys without it trying to "SAVE" on return.

 o Origin line changing works from "Z".


o))
(( RATSoft/ST v2.0f [ the big "f" looks stupid, so I forwent doing it... ]
o))

RATSoft/ST v2.0f released on October 4, 1993

Howdy Kids! This is Uncle Steve with another RATSoft update!

Installation:
"""""""""""""
   un-ZIP, run INST_20F.PRG, follow dialogs.

   It's impossible to screw this up, SO DON'T TRY!

Geneva Notes:
"""""""""""""
This past weekend at Glendale, I picked up a copy of Geneva, the
multi-tasking software from Gribnif. I am terribly impressed, and
unlike MultiTOS, it has found a permanent home on my TT's hard
drive.

Geneva runs just fine with RATSoft, as long as a few precautions are
taken. First of all, RATSoft needs to be set up as a single-tasking
application. More than anything, this is because RATSoft does not operate
in a window to maintain decent output speed. If there is a demand for
RATSoft-in-a-window I >may< consider it for Geneva. You can still switch
out of RATSoft to the desktop or another application while RATSoft is
running, although RATSoft it is "put to sleep" while you are off doing
other things.

Falcon Notes:
"""""""""""""
From the "Nothing Atari does anymore surprises me" department:

v2.0e works on the Falcon, in any color mode (although it doesn't
handle palette changes in true color), with or without NVDI.
Previously, every time RATSoft went to update the window, it would put the
cursor at the top of the screen, thus screwing up your display.

Well, Atari, in their infinite wisdom (I'm sure they have a reason for it,
but...), decided they were going to axe almost all of the VT52 emulation in
TOS except for monocrome support. Therefore, you might as well be running
RATSoft in monocrome if you don't have NVDI! As the screen scrolling is so
pathetically slow without NVDI in 16+ colors anyway, it's probably all
for the better. With NVDI, however, you get full 16 (or 256 or 262,162)
while RATSoft is running. "Killer ANSI, man..."

FYI: I was using VT52 commands to save and restore cursor positition when
updating the window. Atari decided to axe these commands, as well, and
that's why your cursor ended up at the top of the screen. I changed to
saving the cursor positition in variables and restoring them through a
positition command, which works just fine on a non-NVDI'ed Falcon. (This
command, as it turns out, was also not present in TOS 1.0, which, if anybody
is still using, should be burried with the rest of the dinosaurs, and
replaced with nothing less than 1.4).

I'm told Warp 9 3.80 also "fixes" this problem, but as I do not own Warp 9,
I can not account for it first hand.

And yet another TOS 4.0x thing: The way GEMDOS handles files is a little
different. Previously, you could tell GEMDOS to execute "PROG*.PRG", and it
would match with wildcarding. It no longer does that. I really didn't
discover this until recently, as I was always using PowerDOS for networking
with my TT. PowerDOS, which replaces GEMDOS, does not have this
"bug" or "feature". This also goes for renaming and deleting functions in
GEMDOS, so if your scripts delete by wildcarding, it probably won't work
unless you use fsfirst(), fsnext() to locate filenames.

Lastly, I discovered how easy it was to make the Falcon's serial port
ST-compatible, and Neal is building the hardware for it. It's an
extremely cheap hardware hack that can be done without even taking
the top off your computer. This is still currently only a "theory"
and provided everything works out, DCD will run through the old MFP
interupt on the Falcon, making online games and so forth completely
compatible.

Just Thought You Might Want to Know...
""""""""""""""""""""""""""""""""""""""
Neal discovered why he hasn't had any luck with CD-ROM drivers. The MiNT
based CD-ROM drivers work just fine with RATSoft, but you must do a couple
of things. First of all, follow VERY closely what is said in the CD-ROM
info posted on the support boards, secondly, if you use ICD's HD software,
change "Maximum Sector Size" to 2048. If this value is anything less,
the FAT table on some of your HD partitions are gonna pack up and get
outta town. Prepare for some significant system slowdown, though. MiNT also
tends to be a little unstable at times, so watch your system.

In the R0dent Labs Freeware Section (see conference "A"), I posted a little
utility calld RunTT. This is nothing more than a simple command line driven
utility which can set or remove the "Use TT RAM" and "malloc() from TT RAM"
flags for executables. As using a file selector or other methods is
painfully time consuming, this goes at it in one big swoop and gets the job
done. Not really of any use if you don't have "alternative RAM" or virtual
memory on your machine...

RATSOFT.INI
"""""""""""
I've had a couple of people loose their RATSOFT.INI files, and it's
not explained anywhere as to what exactly the file is supposed to
contain. The version of CONFIG.PRG included with this update
automatically updates the RatPath specification in RATSOFT.INI (if
it's changed), as it will create a new one should the old one
mysteriously disappear. For your general reference, here is
RATSOFT.INI in it's MOST BASIC FORM! Many utilities will use this
file to store data, and all will add the data as is necessary, but
for RATSoft to run, it needs the following data:

------ Cut -------
[RATSoft]
Version = v<version>
RatPath = d:\RATSOFT\
;
*END*
------ Cut -------

Bug Fixes:
""""""""""

 o Timers ignored in local mode, except for BBS operations and chat
   pager timers

 o Real Name bases will not display "N/A" for the date/time of a msg

 o Text folder won't show up as entry 5 for WAITCALL.DAT in the wait-call
   help screen

 o Can run on a Falcon without NVDI without the "repositioning" at
   the top of the screen (see above).

 o I >think< there might have been a problem with the full screen chat
   dropping characters, and I >think< I fixed it. It's hard to tell
   whether it's the FSC or just my lame typing.

 o Fixed a long standing bug which would cause some tags in the
   script processor to "disappear" or be skipped over. This drove me
   nuts, and it was a chore tracking it down, but it's gone...

 o WW_INPUT$ in script won't axe the last line, should the user use
   up to the last allowed line

 o CONFIG.PRG won't crash if no MODEM_PS.RST is found.

 o BASEMARK fixed for extended systems.

 o "Type /? for help!" shouldn't show up in the msg editors at the
   wrong times. 10 blank lines will trigger it.

 o Schedular fixed for non-US-spec machines.

 o Using [D]ump from the Voting Booths remotely won't mistakenly pull
   up the file selector.

 o Reseting the DTR for modem 1 (devno 6) won't flash the floppy
   light or turn on the TT's internal speaker (a weird one indeed).

 o File*Tool CHNG command works again, and File*Tool has been updated
   to correctly handle paths with extensions. Also, ArcDisplay = 1
   should be compatible will all machines, as it no longer swaps
   between pyschical and logical screens, but just redirects to a
   dummy file.

New Stuff:
""""""""""

 o [tset:x] sets a translation by it's INTERNAL number. These numbers
   are not listed in the DataEdit window. Load up TRANLATE.DAT with a
   text editor to see these numbers, they are the first line every
   translation, preceeded with a "#". 0 is ASCII.

   NOTE: If a translation is set prior to the user logging on (from
         PRELOGON for example), the translation selection is skipped
         during the logon procedure. This allows for auto-detecting
         translations such as ANSI and RIP.

 o Things which depended on a 640 vertical resolution done away with.
   But this does not mean if you have 140 columns across the screen,
   RATSoft is going to utilize it.

 o Through a toggle in the configuration, TOS's critical error
   handler can be replaced with a simple routine which returns an
   error code. The advantage is your system won't hang up with "The
   Disk in Drive x May be Damaged" or other such alert boxes.
   RATSoft will take "appropiate action" in such actions,
   WHENEVER POSSIBLE. Nothing is completely safe, but you'll most
   likely want to turn this option on to keep your system from
   displaying disk alert boxes. This will also do away with the
   "The Disk in Drive A is not Responding" or "Insert Disk A into
   Drive A" type of alerts should some moronic co-sysop be trying
   to access "A" or "B" from the DOS shell. This may not be
   compatible with MiNT, it appears to be compatible with Geneva.

 o Through another toggle, RATSoft can be forced to re-boot on ALL
   system errors rather than those it just deems as "critical" enough
   to cause a system reboot. As it appears MiNT doesn't like RATSoft
   to re-run itself, this option should be turned on if you use MiNT.

 o On the Falcon, you may select "ST-Compatible" or "Falcon SCC" for
   the serial port selection, depending if you have a normal Falcon
   or if it has been MFP-DCD hacked to be ST-compatible.

 o Various dialogs touched up to look nicer. Can't have RATSoft
   un-appealing to the eye...  that would make it Turbo.

 o FindIt! (FINDIT.RAT) utility included. This is slightly updated from
   the one which was posted online. About the only change is the /O option
   which turns on output while running over the modem. This now defaults to
   off (in non-local mode), as the path names flying by can be hell at
   2400 baud or below.

 o RATSoft now checks the GEM global array to see if you're running it
   under a multi-tasking environment and then bitches appropiately.
   The dialog also has a "Override" option, but I must warn you, it
   >may< crash while multi-tasking considering what other
   programs are running, and I can garauntee you your screen will
   look mighty screwed up. Previously, it scanned the cookie jar for
   the "MiNT" cookie.

 o TRANLATE.DAT can be "resident". Advantage: speed. Disadvantage: It
   takes precious memory. Configurable through a toggle.

 o An ASCII (ID #0) can be in TRANLATE.DAT. If you create a new
   translation for ASCII, you must make sure the ID for this
   translation is 0. Create the new translation with DATAEDIT, then
   load TRANLATE.DAT into a text editor and edit the id to #0.

 o If you run your system in real-name only mode, you may wish to change
   the "Alias" prompt under the profile editor to "Real Name." RATSoft
   will not allow the user to to modify option "C" in real-name only mode.
   They must use "A" to change their name. You may also wish to "delete"
   the option on the profile menu so it simply appears blank. Remove the
   variable code at the end of the line, and the name, and option, although
   DO NOT forget to leave a blank space there, or the rest of the menu
   will be offset for cursor positioning in VT52/ANSI.

 o "Drop downs" in CONFIG.PRG compatible with Geneva.

 o Banner Editor yanked from RATSOFT.PRG to save space in the main
   program. This will be released as a module within a couple of days,
   I just didn't have time to finish it for the update. [bane] is no
   longer a valid command.

 o RATSoft now allows people to download files by entering the filename
   (or mask). This also works for batch marks. So if the user entered:
   1,5,*.ZIP,15-17, RATSoft would mark files 1, 5, all files with a ".ZIP"
   extender (by doing a wildcard match), and finally files 15-17.

   If the user is just doing a single download, if they use a mask,
   the first occurance is found and used, otherwise, during a batch mark
   situation, all files matching the mask are used. And who said RATSoft
   didn't try to make life easy?

 o {161} and {162} report the number of downloads and number of "k"
   the user has "left" in theory. {163} and {164} do the same,
   but take into consideration the max. number of downloads allowed per
   day and time left. The difference is what the user has left
   to download, over a course of many calls, or what they can grab on
   their current call.

 o I included a new COMPUTER.DAT as I noticed a lot of people using
   an antique version which has no Falcon entry and still uses "o"'s
   instead of "0"'s. Wish I could add a Falcon040, or FalconPPC
   (Power PC), but then again, this is Atari we're talking about.

 o During a new user logon, after the user is automatically taken to
   the Settings page of the profile editor since they seem to miss it
   otherwise.

 o [pfst] dials up the SETTINGS page of the profile editor without
   needing to use [S]ettings from the first page.

 o MODEM_PS.RST includes an entry for the ZOOM high speed modems
   thanks to Todd Harrington. NOTE: If you are using a modem not
   listed in that file, PLEASE EITHER FOLLOW THE FORMAT IN
   MODEM_PS.RST TO ADD AN ENTRY FOR YOUR MODEM, OR SEND ME EXACTLY
   WHAT YOU NEEDED TO DO IN ORDER TO GET IT TO WORK WITH YOUR MODEM.
   THIS INCLUDES INITIALIZATIONS STRINGS AND NVRAM SETTINGS!

 o Due to TOS 4.0x's inability to locate XYZ*.TTP, your copy of XYZ
   must be named XYZ.TTP. As always, XYZ.RAT should be installed for
   your protocols.

 o Schedular now allows the sysop on during the 15 min. period before a
   high priority event. Also the user is kicked off 2 minutes before
   a high priority event to assure the event runs on time.

 o Several new prompts, see 16F.PMT to see which prompts were
   changed. This is the file that the installer will use to update
   your PROMPT.DAT, so don't go looking for it in your RATSOFT
   folder, but rather the folder where the update is located.

 o After editing the schedular, you are prompted if you like to
   "F"orce it to accept the changes. If you don't force it, it won't be
   updated until the next time it is executed.

 o RST_BOOT.PRG in the EXTRAS folder goes in the AUTO folder and does
   some cleaning up of the AUTO folder should the board crash and
   some temporary files not get deleted as they should be. As it does
   not remain resident, it does not eat up any additional memory when
   in your AUTO folder.

 o CD_ROM.PRG in the EXTRAS folder is used for grabbing descriptions
   from CD-ROM's.

 o Script Processor has some major improvements, most notably it runs
   much faster! (Albeit still not on par with Pure C... :-))

 . MAJOR WARNING: In order to speed up the script processor, it quickly
   finds the proper routine for the command it needs to execute. Due to
   this, you should never use variable names where the first 1-4 characters
   match a script command. For example, never use a variable called print$
   or goto$, as these are all commands, and the script processor may
   mistakenly interpet these. An easy away around this is to simply put
   a preceeding character: _print$ and _goto$ are completely legal.
   It's also just as easy to use single letter variables, like a$,
   b$, x%, etc. A small price to pay for the speed increase.

 . The Script Processor now "checks" the scripts before they run. This
   isn't the most impressive check-out routine in the world, but it
   generally gets the job done. The first line in the file contains
   the byte size of the script. If this changes, the script processor
   just runs the script quickly through S_CHECK.TTP to assure
   formatting. This won't correct any bugs or programming errors, but
   it will do away with the need to format the scripts before you
   run them. (Option can be toggled in CONFIG/Toggles)

 . Number variables now come in two flavors: Those suffixed with a "#" are
   8-byte floating point variables. These are slow in computations (not
   that the script processor is setting any land speed records), but can
   handle floating point numbers. On the other hand, those suffixed with a
   "%" are 4-byte integers. A quick example:

   test#=89.95
   test%=89.95

   OUT STR$(test#)+", "+STR$(test%)

   ... outputs ...

   89.95, 89

   As test% is an INTEGER variable, it does not care what's behind the
   decimal.

   These also include arrays, so you may actually have 20 number arrays.
   As always, up to 500 of each type of non-array variable may exist.

 . INPAUX$ gets all characters currently in the modem buffer.
   Usage: string$=INPAUX$

 . WW_INPUT$() accepts "/S", ".S" and a blank line as valid "SAVE"
   parameters.

 . MODEM, like PRINT, OUT, LPRINT, etc., outputs a string to the modem
   (if anyone is online). Useful for sending translation-specific data
   that may look like trash on your screen. Also needed for sending
   ESC sequences to the modem you don't want RATSoft to attempt to
   interpet.

 . LOCAL# returns TRUE if the user online is calling from the console
   or FALSE if the caller is remote. You should use this instead of
   checking baud rate for 38400.

 . MOVE(from$,too$), moves files. Returns FALSE if the move fails.

 . COPY(from$,too$), same idea, only copies.

 . MSG_GET$, converts the msg buffer (used with WW_INPUT$) into a
   SINGLE string, each line terminated by a CR/LF.

 . MAR$(), the message array. MAR$(1) cooresponds to the first line
   of the msg buffer, MAR$(2) the 2nd, etc. The message array is used
   with WW_INPUT$().

 . DATE$ returns the date in mm/dd/yyyy US-format. TIME$ returns the
   time in 24-hour format.

 . DAYS_SINCE(d$) returns the number of days since the specified
   date, which must be in mm/dd/<yy>yy format.

 . MIN_SINCE(d$) returns the number of minutes since the specified
   time, which must be in 24-hour or am/pm format. Seconds are
   discarded.

 . _BV#(var%). This is what I'm labeling the "BBS Global Array", it's
   basically an array to be used for obscure values that really don't
   fit in anywhere else. The following are so far defined:

   _BV#(0)    This returns FALSE if the user DID NOT download during
              the goodbye sequence, otherwise a non-zero value.
              Usage: For all those "logoff message" scripts people
              get carried away writing. This allows you to skip the
              right over it if the user probably isn't at the keyboard
              because the system asked "Download batch que before
              you log off?" See LOGOFF.SCP in the EXAMPLES
              folder for an example.

 . Since accessing the DTA for FSFIRST()/FSNEXT() can be a bit
   intimidating, a few new functions have been added:

   file$=FL1ST$(mask$)       - like FSFIRST, ignors folders, system
                               files, and disk labels
   folder$=DIR1ST$(mask$)    - Locates directories, ignors files,
                               system files, and disk labels
   file$=XFSFIRST$(mask$,a%) - Exactly like FSFIRST(), except it
                               returns the file name in file$.
   next$=XFSNEXT$            - Like FSNEXT() for the above 3 functions

   >> For XFSFIRST$(),XFSNEXT$ note the prefix "X". Using these
      in conjuction with FSFIRST(), FSNEXT could yield some funny
      results.

   After any of these calls, the 'size%' variable contains the size (in
   bytes) of the last file returned. 'attr%' contains the attributes for
   the file, which are as follows:

   bit
   ---
     0 write protected
     1 hidden
     2 system file
     3 disk label
     4 folder
     5 archive bit

   A simple directory display program:

   file$=XFSFIRST$(mask$,-1)  ; Search all, so use "-1"
   DO UNTIL file$=""
     IF BTST(attr%,4)=TRUE    ; Folder?
       OUT "* "+file$
     ELSE                     ; Nope... just a file
       OUT file$+" is "+STR$(size%)+" bytes"
     ENDIF
     file$=XFSNEXT$
   LOOP

   NOTES: Unlike FSFIRST() and FSNEXT(), these return the actual filename,
          excluding path. When the last file/folder has been reached,
          the return string will be blank. The variable "size#" after
          each call contains the size of the file.

          Because of the way GEMDOS operates, you can not use two search
          functions nested within each other, or do any other disk access
          while FSFIRST/FSNEXT functions are in use.

FIDO Module:
""""""""""""
This update includes the FIDO module. This is the first wide-spread release
of a message module. The FIDO module still has a "beta" version number on
it, because it still does not include some features I had originally
intended to put in there. However, you can't miss what you don't know
about. Testing has been minimal due to time constraints.

I had originally planned to have the FIDO module out by Glendale, and those
who dropped by the booth got a beta copy of the FIDO module. Unfortuantely,
the day after Glendale, I got rather sick, and as I'm typing up these
update docs, I'm still not much better. For that reason, it was delayed.
While some of you were far more concerned with getting the FIDO module than
my health, I managed to only delay it about two weeks and incorporate some
new features.

Whenever you go to create a new message base and wish it to be a FIDO msg
base, simply change the module type from "0" to "2" after the module has
been created. You will see "RATSoft/FIDO vx.xx" indicating that RATSoft
knows you wish to use the FIDO msg module.

Initially, when creating the base, when asked for the "msg base" folder,
you should indicate the complete filename of the HDR and MSG files you wish
to utilize, MINUS THE EXTENDER! For example, M:\FIDOMSG\N_RATSFT
The FIDO module will then look for M:\FIDOMSG\N_RATSFT.HDR and
M:\FIDOMSG\N_RATSFT.MSG.

Use the "Z" command to set the parameters for the message module. This is
nothing more than your address (for the origin taglines), and the tagline
you wish to use, or if you wish, a file name, in which case the FIDO module
will read an ASCII list of taglines and use them randomly.

FIDOCOMP.RAT should be a scheduled event to run after your msgs are
imported to their appropiate bases and all outgoing msgs have been sent
for that day.  This simply "compacts" the base down to the maximum number
of msgs allowed in the base. All base totals are adjusted
automatically.

Setting up net-mail is pretty simple. For each netmail base you wish to
carry, you will need to create a message base, anywhere on the board, in any
conference, for each netmail base. You >MUST< set the REAL NAMES ONLY and
MAIL flags for these bases! These bases, although they are technically a
"regular" msg base are NOT shown to the user in the msg base lists, nor even
to you, unless you toggle the "show private" (or "show mail") flag on, which
then "un-hides" those bases. This is controlled through the [mpri] command,
which is only available to a sysop, regardless of the user's flag for this
command. I have this set up as "~" in MESGCMDS.DAT.

The setup is exactly the same as above, with one exception: When RATSoft asks
for a description, you need to enter an "id" which RATSoft will then identify
the base by. This ALWAYS begins with a "#" prefix. For regular fidonet mail,
you may set this to "#fido" or "#anet" for AtariNET, etc.

When the user goes to send email, if they enter that id flag, the msg module
associated is automatically called allowing the user to send mail through
that network. You may wish to set up a sort of e-mail menu, which allows to
select between normal mail and network mail. A new command function, [m_ml],
controls this. For example, you may have a menu set up like so:

[Type_II]
Menu {

  [1] Send Local Mail
  [2] Send FIDONet Mail
  [3] Send AtariNET Mail
}
Prompt = {200}Select: 
Do = [menu]
1;Email{200}[mail]
2;FIDO{200}[m_ml:#fido,mail:send]
3;ANET{200}[m_ml:#anet,mail:send]
 ;Exit{200}[quit]

For the FIDO module, a few commands can be passed with the [m_ml] command:

   mail:send = send mail
    mail:new = scan for new mail (RATSoft does this automatically during
                                  logon, provided the "mail scan" toggle
                                  is set in the configuration)
   mail:read = read mail (the FIDO module will prompt for "From you" or
                          "to you", and allow the user to delete either)

Remember that you MUST specify the netmail id! If you try something like
[m_ml:mail:send], it simply won't work.

As FIDO messages are formatted about a billion different ways, it was
tricky to decide what the best way to go about things was. When a
user includes a message there are basically two different options:
CUT and SMARTWRAP. Cut does a RATSoft-style include, which perserves
format 100% but axes off the end of any lines which exceeded the
allowed maximum, on the other hand, SmartWrap does it's best attempt
at wrapping the msg to the maximum line length while perserving
format, include ID's, and paragraphs. It doesn't always work so hot,
but it is rather intelligent in what it does. 9 times out of 10 it
works nicely.

Also, QUOTING from within the FIDO module uses FIDO-style quoting,
such as "SH>" instead of RATSoft's normal "]". Also, [I]ncludes do the
same thing, and includes can get burried multiple layers deep, unlike
RATSoft's internal format which is smart enough to axe off the old
include.

As the way FIDO msg structures are designed, no [E]dit has been
incorporated due to the extremely slow time it would take to update
the files on a slower system or large base. The Edit flag for the
msg bases controls the [F]lags option, which edits all 16 flags for
the given msg.

As no sooner will I have this module out than people will start
asking for the QWK module, I suggest you look into using a QWK door
which utilizes the QBBS format style message bases. There are
several, and in theory they should work with RATSoft's FIDO module,
although I haven't formally tested this. The guy who was writing the
QWK module for RATSoft bailed to the PC platform, and I have no
earthly idea when I'll have time to finish it. If anyone is
interested in taking up the project, let me know. You must have a
good grip of 'C'.

Programmers Stuff:
""""""""""""""""""
It should be noted that some of the arrays for the file/message portion
of the environment table have been changed:

name                  old type new type
--------------------- -------- --------
max. number of msgs   float    int  (2 bytes) << NOTE THESE
message hi            float    long (4 bytes) << ARE
message history       float    long           << ARRAYS!
file totals           float    long

This makes RATSoft run a tiny bit faster, and doesn't unneedly suck
up space for floating points numbers which aren't needed (so I wasn't
too bright when I first did up the structures for the environment
table.)

Enjoy the update!
-----------------

"You've lived in a hole in Utah all your life. Now you're in California,
 what are you going to do?"

"I'm going to Disney Land!"



Think Atari will do ET for the Jaguar?  Gee... I sure hope so, after
I get mine after their initial release in December... 1996!

[end]

RATSoft/ST v2.0e released on Sept. 11th, 1993
          ____________     _____________        
         /\___________\   /\____________\       
RATSoft / /           /  / /            /       
Version \/______     /  / /  ____      / _______
       /\______/    /  / /  / / /     / /\______\
      / /          /  / /  /_/ /     / / / ___  /
     / /    ______/  / /  /___\     / / / _____/
    / /    /______  / /            / / / /  __
   / /           / / /            / / / /__/ /
   \/___________/ .\/____________/  \/______/       

RATSoft/ST v2.0e released on Sept. 11th, 1993

Installation:
"""""""""""""

 1. You know the drill by now. Run INST_20E.PRG from the desktop.
    Follow directions.

Bug Fixes:
""""""""""

 o Forwarding Mail will not lock up the system. Stupid mistake I let
   get out in 'd'.

 o SEND [d:\path]filename.ext works again.

 o Minor bug fix to CONFIG.PRG with interfacing with the Help System when
   not running as an ACC.

New Stuff:
""""""""""

 o You can define different color sequences in WS_COLOR.DAT for 16+ color
   modes under a [16_Color] header. If you want to add this, simply copy
   the current [Color] section and paste it to the end, change the header
   to [16_Color] and modify the sequences to your fancy.

 o Add news placed under ENWS ([N]ews), ANWS no longer works. Dump it from
   your SYSOPCMD.DAT file and remove it from SYSOPCMD.TXT if you like.

 o News system updated, each time you delete, edit, or view, you're given
   a list of e-mail files with their titles.

See ya at Glendale!

[end]
          ____________     _____________           __
         /\___________\   /\____________\         /\_\
RATSoft / /           /  / /            /        / / /
Version \/______     /  / /  ____      / _______/ / /
       /\______/    /  / /  / / /     / /\_______/ /
      / /          /  / /  /_/ /     / / / ___  / /
     / /    ______/  / /  /___\     / / / /  / / /
    / /    /______  / /            / / / /__/ / /
   / /           / / /            /  \/______/ /
   \/___________/ .\/____________/         \/_/

RATSoft/ST v2.0d released on Labor Day, Sept. 6th, 1993
** SECOND RELEASE: Sept. 7th, 1993 **
[ Some quick fixes and revisions were made. Only 9 originals went out,
  so it was re-released. ]

Installation:
"""""""""""""

 1. Run INST_20D.PRG from the desktop. Follow dialog boxes.

Bug Fixes:
""""""""""

 o Runs in TT-RAM or virtual memory (finally). This includes virtual
   memory programs such as OutSide for the Falcon030. If you use Outside
   or other virtual memory managers, you may run and malloc() both from
   TT (or virtual) RAM, but remember it will be a lot slower. For TT
   users, turn on both TT-RAM flags for added performance.

 o VOTE.RAT: Wouldn't recognize DCD off SCC. Fixed.

 o FL_CLEAN.RAT, TOP_DL.RAT, MASSPATH.PRG: CONFx folder scheme not
   required.

 o If a user enters some obscenely large number (over 2 billion) at the
   "Name/Act #" prompt" the system won't error due to an integer overflow.

 o FSE.RAT: "Quote Unavailable" fixed for sysops.

 o USERLIST.RAT: ANSI bug with 16+ colors fixed.

 o Uploads Validator: File*Tool changes saved correctly, e-mail bug
   fixed.

Recommendations/Other Stuff:
""""""""""""""""""""""""""""

 o Before anyone asks, no, I do not know how RATSoft works with Geneva,
   Gribnif's new multi-tasking environment. I plan to pick up a copy at
   Glendale. This seems a lot more promising than MultiTOS, but then
   again, I haven't actually seen it.

 o If you run RATSoft in any screen resolutions outside of ST-medium
   or ST-high I STRONGLY recommend you turn OFF "Memory Buffers" in
   the configuration, unless you've got a pile of RAM. In med. or high,
   a screen takes a measly 32k. TT medium (or Falcon 16 color 640x480)
   takes 153k, a 256 color Falcon screen takes OVER 300k. And if you've
   got something like a ScreenBlaster, the requirements are even
   higher. As RATSoft buffers screens occassionally, 32k isn't much, but
   chopping away 300+k for a single screen can be quite a load. With
   memory buffers OFF, the screen "save" is dumped to disk. While slower,
   it saves precious memory.

 o FIDO module will be released at the Glendale Atari Show, September
   18th and 19th, 1993. Come see Neal and I, bring a disk, and get
   your copy. Otherwise, you'll have to wait until the show's all over
   with. Incidently, if you intend to get fully into FIDO, make sure
   you've got a 4 meg machine. With Binkley, and the FIDO module, the
   memory requirements, while not excessive, are up there.

New Stuff:
""""""""""

 NOTE: You will need to modify FILETOOL.DAT for your system!

 o File*Tool: New "Multi-Function" options. This allows you to take any
   file extender and associate it with a program, just like you would
   on the desktop. Look in the provided FILETOOL.DAT for format
   information, it's very simple to follow. If a tilde (~) preceeds the
   filename, it means it's only available while in LOCAL mode. This means
   you can view an uploaded GIF simply by entering ".X" from the Uploads
   Que Editor, view a text file, or play a MOD. In addition, if the file
   is an archive, it will first give you a verbose of the files contained
   within, and then allow you to extract a file to act upon.

   For picture viewing, I HIGHLY recommend GEMView, currently at version
   2.46. This an incredible picture viewer. This is Shareware at it's
   best!

 o File*Tool: Like multi-function options, there are multi-utility options
   which allow a key to be assigned to a specific program. For example, if
   you want to be able to edit a text file easily with one key stroke, you
   can have your favorite text editor assigned to one of these keys, or a
   text viewer, alternative GIF viewer, etc. These are defined under
   [Multi_Utility] and are keys .1 through .0. Like above, a ~ preceeding
   the filename indicates local-mode operation only. See included
   FILETOOL.DAT for examples.

 o File*Tool: Options which are only available in local mode can be
   over-ridden by an ESC from the console when a remote caller is online. A
   A msg is displayed, and the ESC must be entered within 5 seconds, or
   the system returns a "local mode" only msg and halts the function.

 o File*Tool won't be as likely to delete an original archive if a
   conversion fails.

 o File*Tool: When using a multi-xxxx option, passing /P will /Prevent
   FT from deleting the extracted file. For example, if you want to pull
   a text file out of an archive and save it in the work folder, pass /P.
   Example: .x /p

 o I adjusted some parameters in the ARCHIVE.DAT and FILETOOL.DAT files
   which could of caused the system to hang in some instances from the
   archive programs. SIT support is added to ARCHIVE.DAT (if you did not
   download the SIT stuff, you will need to add UNSIT.TTP to your system).
   ARJ support (extraction only -- as that's all that's available for the
   ST currently) added to FILETOOL.DAT.

 o If a file called LOGON.xxx exists, it is displayed immediately after the
   logon bulletins. This is for people who wish to include scripts, text
   files, whatever, during the logon procedure that users can not turn off
   (skip).

 o Copy routine in RATSoft smoother and faster.

 o VOTE.RAT: It turns out some users are just plain stupid and fail to
   see that the voting booths are numbered, which requires entering
   a number. Instead, they start entering all sorts of jibberish.
   Therefore, any invalid command gives them a detailed explanation of
   what to do, "*" goes to all Mandatory voting booths (which they
   haven't voted on), and "!" goes to all un-attended voting booths.

 o ALT+X: Toggles between line editor and full screen editor. Back by
   popular demand.

 o Option C in Uploads Que changes what conference the file is slated
   for. While this option has hardly any real value, as you select the
   target conference when validating, it might come into use if you
   have file sysops.

[end]

          ____________     _____________
         /\___________\   /\____________\
RATSoft / /           /  / /            /
Version \/______     /  / /  ____      / _________        
       /\______/    /  / /  / / /     / /\______\_\
      / /          /  / /  /_/ /     / / / ___  / /
     / /    ______/  / /  /___\     / / / /  / / /
    / /    /______  / /            / / / /__/ / /
   / /           / / /            /  \/______/ /
   \/___________/ .\/____________/         \/_/

RATSoft/ST v2.0a released on Monday, August 16th, 1993

Want a Manual?
==============

The RATSoft manuals are available for $19.95 to existing sysops. They are
around 260 pages and it comes in an ever-so-snazzy box. If you would like to
to order one, you may order online on my BBS (see [I]nformation), or
by calling one of these numbers:

Voice: (801)/265-0835 [9-5 PT]
  Fax: (801)/262-6035

FIDO Module
===========

Due for release at the end of August at the latest. It's done, it just
needs to go into some simple testing, and I hope to package up some sort of
starter kit to get people going as easily as possible. If I want you to
beta test it, I'll come to you.

Newsletter
==========

A RATSoft newsletter is in the works. If you're interested in adding an
article or two, please let me know. The exact format hasn't been decided,
but I hope to make it more than just techy jargon about RATSoft.

Some sysop testimonials might also be good for the newsletter as I hope
sysops running "the competition" will read it.

Bug Fixes:
""""""""""

 o Another caller ID thing... it would help if I had caller ID in my
   area, but alas, I don't. It works now, so I'm told. Remember, all
   the info for caller ID support is in CALL_ID.DAT, which allows you to
   use it with ANY modem that supports CID.

 o OK to run BASEMARK.RAT from the main menu

 o CONFIG.PRG: Some minor changes, color addition mentioned below

 o Complaints about e-mail pointers: Uh, I don't have this problem, but it
   should not exist. I shifted some stuff around to make extra certain.

Additions, Modifications, Changes, and Suggestions Implemented:
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""

 o DATAEDIT.PRG included in this archive as it seems some received a
   corrupted one on their RATSoft masters

 o Due to some user information being shifted around, your upload que
   pointers will be all new until you validate uploads once. Also, the
   location for names of masks has been moved, so those will be blank until
   another mask is applied.

 o In CALLBACK.DAT, there are two new definitions dealing with caller ID
   support, these are:

   Invalid_Cid_Name : [name]
   Invalid_Cid_Num : [num]

   These are meant to be the strings returned by the modem in the event
   the caller is long distance or "private", so caller ID will still
   engage. Up to 5 of each type of cmd may be in a single CALLBACK.DAT.

 o On the Colors page of the configuration, you may now choose an "exit
   color" which RATSoft will switch to when exiting.

 o SCRIPT.RAT: Script no longer treats vertical bars as CR's. This was a
   compatibility thing from VERY old versions of RATSoft, so you may need
   to do some minor revamping of older scripts.

 o I guess this wasn't clear, but if you don't want RATSoft to ask for a
   password on a guest account, the password should read "DONTASK". As
   terms often get confused: A >GUEST< is an account which has been
   previously set up by the sysop, and a >VISITOR< is someone who goes
   through the application process, but their account is not saved.

 o If the new user prompts for real name, city, state, street address, zip,
   and data phone number are left blank, RATSoft will not prompt for that
   information. The others are mandatory.

 o You may now use File*Tool commands which modify an archive or change the
   file name from the [Online] options.

 o [T]ype'ing a file (or TYPE) uses page breaks.

 o LOGFILE.RAT: Pass "CLEANUP" to delete all "old days" from the log. Useful
   if you're on vacation, so the system can archive the log, then delete
   the old info from RATSOFT.LOG so you drive doesn't get full with the
   log. This must run after "PACK"! [ Really released with 2.0, but wasn't
   documented. ]

[end]
          ____________     _____________
         /\___________\   /\____________\
RATSoft / /           /  / /            /
Version \/______     /  / /  ____      /
       /\______/    /  / /  / / /     /
      / /          /  / /  /_/ /     /
     / /    ______/  / /  /___\     /
    / /    /______  / /            /
   / /           / / /            /
   \/___________/ .\/____________/

RATSoft/ST v2.0 online update released on August 1st, 1993
RATSoft/ST v2.0 package began shipping mid-July, 1993

Falcon030 Notes
===============

If you are using RATSoft/ST v2.0 with a Falcon030, there are some things
you should take into consideration:

First of all, the Falcon030 does not use the ST/MSTE/TT method of handling
the serial port. Rather than using the MFP, it uses the SCC,
which allows increased performance, but causes some problems:

[ The Falcon030 that was used for testing was equiped with TOS 4.04, and
  defective NVRAM, so... there may be some differences between my machine
  and a real WORKING Falcon... typical Atari. Oh, and I've been waiting
  for weeks for a replacement. ]

 - Many doors which monitor the DCD (Data Carrier Detect) will not work
   correctly on the Falcon. Usually, the DCD is detected by reading one of
   the registers on the MFP. The Falcon's DCD is found on a
   SCC read register, and RATSoft knows how to detect this, and will
   detect DCD correctly, however, many of these doors will not.

 - Due to changes in the BIOS output routines in TOS 4.xx, you should run a
   screen accelator like NVDI and turn on "TOS Compatibility". Otherwise,
   you will see no color.

 - When running RATSoft, set your video mode to 16 colors. The more colors
   which are available, the slower the scrolling becomes as there are more
   bitplanes the machine must re-draw. If things are even too slow in 16
   color mode, switch down to 4 colors, or use ST-high or ST-medium
   compatibility. While running RATSoft in 256 colors or True Color is
   possible, the scrolling may be too slow. As the Falcon is so new, I'm
   sure there will be screen accelators just around the corner which will
   dramatically increase the screen output speed. These will be of a great
   advantage when running RATSoft.

 - Provided you are in atleast a 16 color mode, RATSoft will display all 16
   ANSI colors, exactly like a PC, provided you are in ANSI.

 - I do not have the needed information to push the Zilog SCC over 19.2k,
   as that's all TOS's Rsconf() allows. If anyone has the necessary
   registers which set the baud rate on the SCC-related ports, PLEASE
   let me know.

Bug Fixes:
""""""""""
 Thanks to all the great bug reporters (even you Jeff! <grin>).

 o VOTE.RAT: Deletes polls correctly. This bug caused a variety of
   problems before.

 o USERLIST.RAT: Average age is correct when a search is used.

 o BASEMARK.RAT: If a user did not have access to a particular message
   base, BASEMARK would throw the numbering off. For example, a user might
   un-mark base 5, and base 3 would be affected.

 o Some incompatibilities with some modems and 2400 baud connects
   fixed.

 o In the Fix I and Fix II releases of 1.6l, some bugs were fixed with the
   message compaction routines, and the errors which would occur during
   logoff after a message base was deleted.

 o Caller ID bugs smashed, once and for all.

 o Screen saver works in all resolutions, all color modes, and all
   machines. Finally.

 o Re-draw bug with TOS 4.xx (and MultiTOS) with CONFIG.PRG corrected when
   multiple windows are open.

 o "Last on mm/dd/yy at hh:mm" for file section d/ls was not shown with 1.6l
   due to a bug. Fixed in 2.0.

 o File*Tool: Bug which caused files worked on by ARCC not being updated,
   and a bug with the OTHER mode of BBS advertisements fixed.

 o Some bugs with the system timers corrected

 o RATSoft now looks in the TEXT folder for the BOOT_x.TXT files, rather
   than the RATSOFT folder, as was originally intended.

Additions, Modifications, Changes, and Suggestions Implemented:
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
 o You may use modem 2 on the MSTE/TT. Using the AUTO folder program
   FAST_SER, you can up the speed on the port to 38.4k or 57.6k. If you
   are using Binkley and FidoDoor, you will need to change the
   configuration for both of these programs to modem 2. In addition,
   you'll end up needing to dump a lot of your online games. XYZ.RAT
   automatically removes the "-C" (carrier detect) option from the
   command line when XYZ is used, as it will not detect the carrier
   properly. XYZ will eventually time-out if someone hangs up, but
   the delay may be intolerable for some. FZP.RAT has been modified
   for use with modem 2.

 o A simple TTP program has been included to set the modem port, although
   RATSoft does not need it. Simply run it with no parameters to set the
   active modem port.

 o ANSI emulation has been improved. It's faster, and now does all ANSI
   correctly. In previous versions the sequence ESC[31;1m would create red
   text with a "bold" font. This really wasn't correct, it's supposed to be
   bright red. Where as, ESC[31m creates a darker red. This is exactly how
   its done on the PC. If you are in atleast 16 colors (Falcon/TT users
   only), you will see all the pretty colors as they were meant to be seen!
   I tested it with a bunch of screens I made with The Draw! on my PC, and
   it looks identical on my Falcon as what I see on the PC (with the
   exception of flashing text).

 o The blockiness of the 8 x 16 ANSI font (for resolutions of 640 x 400 or
   above) has been "smoothed out", and looks MUCH nicer.

 o Color Modes: You may no longer choose an entire palette to use online or
   at the wait-call screen. Since this was not compatible with all Atari
   machines (like my Falcon in the higher resolutions), I just dumped the
   whole thing for something more simple: You have two basic choices on
   each screen: Black Background or White Background. This, unlike the old
   method, is compatible with ALL machines and should be compatible with
   all future machines, no matter what kind of color schemes Atari throws
   at me. If you are in a 16 color mode, just leave your color palette the
   same, as those are the correct ANSI colors. However, you, along with all
   ST-medium users might want to change the green color (color 3) to a more
   pleasing blue as the green is just plain ugly. Do this with the CONTROL
   PANEL or Color (or VDI Color) with X-Control. SAVE your desktop when
   done.

 o Resource files have been modified to be more appealing with TT/Falcon
   16+ color video modes.

 o E-mail pointers are reset whenever the user deletes all their e-mail.

 o Caller ID support: Now uses a file called CALL_ID.RAT which contains
   the caller ID strings RATSoft is to recognize. I did not include this
   file with the update, as almost no one will use it, but posted it
   seperately on-line. The default set-up contains the setup strings for
   the Supra FaxModem. There are also strings for the ZyXEL series modems
   which may be uncommented.

 o Users logging on with guest accounts are automatically asked for an
   alias to be used while online. It is no longer necessary to have the
   alias for the account set to "ASK".

 o File*Tool: New CMNT command which adds comments. Really only useful for
   ZIP's. I did not include an updated FILETOOL.DAT, and you will need to
   add the changes yourself if you wish to add these functions. First,
   under the menu headings, add:

   Z,CMNT,Add Archive Comment

   ...and under the archive definitions, under the *ZIP portion, add...

   COMMENT; %0STZIP.TTP -az %1 !*.* ~!*.* <%0ZIPCOMNT.TXT

 o I've included the TRANLATE.DAT that's being passed around with v2.0. It
   includes more ANSI, a 16-color VT52 mode. The installation program will
   modify TRANLATE.DAT based on the number of representable colors on your
   system.

[end]
