home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ftp.wwiv.com
/
ftp.wwiv.com.zip
/
ftp.wwiv.com
/
pub
/
BBS
/
RTMBP200.ZIP
/
RTMBP200.DOC
< prev
next >
Wrap
Text File
|
1992-06-10
|
43KB
|
832 lines
RBBS Turbo Message Base Packer Version 2.00 (RTMBP)
Copyright 1992 by Walter C. Ames. All rights reserved.
Created January 5, 1992
╔═══════════════════════════════════════════════════════════════════════╗
║ TABLE OF CONTENTS ║
╚═══════════════════════════════════════════════════════════════════════╝
License/Warranty/Registration . . . . . . . . . . . . . . . . . . . . .1
License . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1
Warranty. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1
Registration. . . . . . . . . . . . . . . . . . . . . . . . . . . . .1
Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
About RTMBP . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
RTMBP Features. . . . . . . . . . . . . . . . . . . . . . . . . . . 2
Kudos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Installation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Assumptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
System Requirements . . . . . . . . . . . . . . . . . . . . . . . . 3
Installation Summary. . . . . . . . . . . . . . . . . . . . . . . . 3
Packing Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
Default Packfile. . . . . . . . . . . . . . . . . . . . . . . . . . 4
Pack-in-Place (PIP) . . . . . . . . . . . . . . . . . . . . . . . . 4
PIP with Truncate . . . . . . . . . . . . . . . . . . . . . . . . . 4
Command Line Syntax/Usage . . . . . . . . . . . . . . . . . . . . . . 5
Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Command Line Switches . . . . . . . . . . . . . . . . . . . . . . . 6
Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Creating Your Configuration File. . . . . . . . . . . . . . . . . . . 9
RTMBP Log File. . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Appendix. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Error Levels. . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Error Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Benchmarks. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Problem Reporting . . . . . . . . . . . . . . . . . . . . . . . . . 14
╔═══════════════════════════════════════════════════════════════════════╗
║ LICENSE * WARRANTY * REGISTRATION ║
╚═══════════════════════════════════════════════════════════════════════╝
Distribution and/or use is permitted under the following terms:
You may copy and distribute verbatim copies of the RTMBP documentation
and executable code as you receive it, in any medium, provided that you
conspicuously and appropriately publish on each copy a valid copyright
notice "Copyright 1992 by Walter C. Ames"; keep intact the notices on all
files that refer to this license agreement and to the absence of any
warranty. PROVIDE UNMODIFIED COPIES OF THE DOCUMENTATION AS PROVIDED
WITH THE PROGRAM; and give any of the other recipients of the RTMBP
program a copy of this license agreement along with the program. You may
charge a distribution fee for the physical act of transferring a copy,
but no more than is necessary to recover your actual costs incurred in
the transfer. Under no circumstances is RTMBP to be distributed in such a
way as to be construed as "value added" in a sales transaction, such as,
but not limited to, software bundled with a modem or CD-ROM software
collections, without the prior written consent of the author.
Warranty
THIS PRODUCT IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, INCLUDING
ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. THE
ENTIRE RISK AS TO THE RESULTS AND PERFORMANCE OF THIS PROGRAM IS ASSUMED
BY YOU. FURTHERMORE, I THE AUTHOR DO NOT WARRANT, GUARANTEE, OR MAKE ANY
REPRESENTATIONS REGARDING THE USE OF OR THE RESULTS OF THE USE OF THE
PROGRAM, OR THAT THE PROGRAM WILL RUN WITHOUT ERROR, AND YOU RELY ON THE
PROGRAM AND RESULTS SOLELY AT YOUR OWN RISK. I THE AUTHOR CANNOT ACCEPT
RESPONSIBILITY FOR SYSTEM DAMAGE, LOSS OF PROFIT, OR ANY OTHER SPECIAL,
INCIDENTAL, OR CONSEQUENTIAL DAMAGES RESULTING FROM THE USE OR INABILITY
TO USE THIS PRODUCT.
Registration
This program is being released under the "SHAREWARE" concept. This means
that you can evaluate it for a trial period of 30 days to see if it meets
your needs. If after a period of 30 days you continue to use it then
registration is required. If you do not register the program after 30
days you must discontinue use of the program. See RTMBP200.REG for
details on registration.
NOTE: If you feel that 30 days is insufficient time to evaluate this
program, please contact me electronically at any of the enclosed network
addresses or by calling my BBS. I may at my discretion extend the
evaluation period on a case-by-case basis.
-1-
╔═══════════════════════════════════════════════════════════════════════╗
║ INTRODUCTION ║
╚═══════════════════════════════════════════════════════════════════════╝
About RTMBP
RTMBP is a full featured RBBS Message Maintenance utility. RTMBP when
set-up properly can eliminate most of the need for SysOp intervention in
the area of Message Base maintenance. RTMBP is very flexible and
configurable to suit any RBBS-PC SysOp's needs. RTMBP will allow you to
Pack/Purge and Renumber Messages. It will Pack/Purge by age or amount of
Messages or both. It can optionally exclude up to 51 names from the
Purging/Packing process. RTMBP also includes a special SysOp feature
for excluding Messages from the Purging process on the fly. Further
RTMBP was designed to work well with RUTI-20 and Overmail Message
processing utilities. (Note: Other processors may work, but have not yet
been tested.) In addition RTMBP correctly handles OverMail's High Water
Mark to prevent re-scanning of the message bases upon completion of the
Pack/Purge. RTMBP's log file is brief but to the point and reports all of
the information needed to properly tune ones Message Maintenance.
Logging is optional and can be turned off if no logging is desired.
Screen writes are colorful, clean, and informative for those of you awake
at 3:00 in the morning. Otherwise, writing to the screen can be
optionally disabled.
RTMBP's Features
o Encompasses the best features of other RBBS message utilities
while adding speed, configurability and ease of use.
o Supports RBBS-PC's CC: (Carbon Copy) message base format.
o Packs/Purges Messages by x Number of days.
o Packs/Purges Messages by x Number of Messages.
o Renumbers Messages and updates Last Message Read indicators.
o Optionally runs PCRelay's RESET program for you if you are
running a PCRelay Technology network.
o Several comprehensive exclusion switches allow you to exclude just
about any message from being Purged/Packed.
o Repairs "Broken Message Chains" when encountered.
o Resizes Message Bases to recover unused disk space.
o Selectively Back up any/all Message Bases.
o Continues processing on Non-Fatal Errors.
o Intelligent support for the OverMail High Water Mark.
o Special Exclude character for Messages you wish to save.
o Command line or Configuration file operation.
o Completely Configurable including Video and Logging.
o Configuration program to aid in initial set-up.
-2-
Kudos
I would like to take this opportunity to give special thanks to those
individuals who contributed to the development of RTMBP. Their names are
listed alphabetically below.
Dave Brodmann Brodmann's Place (301)843-5732
Sam Colemen Port-of-Call (301)249-4193
Tom Collins MSFA BBS (410)536-1935
Tom Hansen Church Chatters (402)592-9266
Dan Shore The Shoreline (301)946-2771
Gregg Snyder Elusive Diamond (703)323-6423
╔═══════════════════════════════════════════════════════════════════════╗
║ INSTALLATION PROCEDURES ║
╚═══════════════════════════════════════════════════════════════════════╝
Assumptions
Three basic assumption are made:
1) You are an RBBS-PC SysOp with an operational RBBS installation.
2) You are familiar with the operation of DOS and RBBS.
3) You would like to automate your message base maintenance.
System Requirements
Although RTMBP was designed to be as generic as possible, the following
system configuration is required as a minimum:
1) An IBM PC, XT, AT, PS/2, or a 100% compatible.
2) A completely operational copy of RBBS-PC CPC12 - CPC17.4.
3) MS/PC-DOS 3.1 or above. (SHARE.EXE optional for share-locking.)
Installation Summary
1) Read the documentation to become familiar with options.
2) Run the enclosed RTMBPCFG program to create your configuration
file.
3) Determine the configuration options to be used for each of your
message base files (see RTMBP.CFG reference).
4) Edit the parameters in the newly created configuration file to the
needs of your system.
5) Run RTMBP.
Note: For precautionary measures, it is recommended that you back
up your message bases prior to executing RTMBP, just as you would with
any new message base utility. If running RTMBP with the renumbering
option, make sure to backup your User files as well.
-3-
╔═══════════════════════════════════════════════════════════════════════╗
║ PACKING METHODS ║
╚═══════════════════════════════════════════════════════════════════════╝
There are three basic packing methods available with RTMBP, each offering
certain advantages and disadvantages. As a SysOp, you should be able to
determine which is the most practical for your system.
Packfile (Default)
The default method requires more disk space than the other two, but is
the safest in practice. This is because it initially copies each message
to be saved to a temporary file. Once it has successfully copied all
messages to be saved, it deletes the original message base file and
renames the temporary file. So even in the event of a power outage,
lock-up, or other oddity, your message base will be kept intact. Safety
has its price and this method will cost you a little more time and a lot
more disk I/O.
Pack-in-Place (PIP)
This method requires no additional disk space and considerably less disk
I/O, and results in zero disk fragmentation. Unlike the default method,
PIP does not utilize a temporary file, it packs the messages into
the same file it is reading from. Therefore, if you experience a power
outage, lock-up, or other annoying occurrence while packing a file,
message base corruption is almost a given. Fortunately, only one message
base is opened at a time, so only one can be corrupted in such an event.
You will probably find that the advantages of this method outweigh the
risks by far.
PIP with Truncate
This method is nothing more than the PIP method described above with the
additional function of recovering unused disk space. Where the PIP
method retains old data at the end of the file (marked as garbage), the
PIP with truncate method clips off the garbage from the end of the file,
thus freeing up space on your disk.
-4-
╔═══════════════════════════════════════════════════════════════════════╗
║ COMMAND LINE SYNTAX/USAGE ║
╚═══════════════════════════════════════════════════════════════════════╝
The general format for RTMBP is:
RTMBP [mode] [switches] [options]
o where "mode" basically indicates whether RTMBP is to be run on single
or multiple message bases, the latter requiring a configuration file.
The configuration file contains several global settings as well as the
specific paths and filenames for each message base to be packed, and
the switch settings to be used on each. The configuration file must
follow the RTMBP standard format (please refer to the sample config-
uration file "SAMPLE.CFG").
o where "switches" are used only on the command line, and control the
logging function, screen writes, and ANSI settings.
o where "options" are used for the most part in the configuration file to
specify the packing method and options for each message base, but may
also be used at the command line when in single file mode.
Modes
╔════════════╤══════════════════════════════════════════════════════════╗
║ [mode] │ Description ║
╠════════════╪══════════════════════════════════════════════════════════╣
║ none │ If no mode is specified, RTMBP will use the default ║
║ │ configuration file named RTMBP.CFG. This file is ║
║ │ initially created when you run "RTMPBCFG" during ║
║ │ installation. If you attempt to run RTMBP in default ║
║ │ mode without a configuration file, no packing will ║
║ │ occur. Instead, a help screen will appear. ║
╟────────────┼──────────────────────────────────────────────────────────╢
║/C<FileName>│ This mode allows you to use an alternative ║
║ │ configuration file (instead of the default, RTMBP.CFG), ║
║ │ by typing "/C" followed by the complete path and ║
║ │ filename of the alternate configuration file. You may ║
║ │ have as many alternative configuration files as you'd ║
║ │ like, however, they all must conform to the specified ║
║ │ RTMBP.CFG format! ║
╟────────────┼──────────────────────────────────────────────────────────╢
║ <MsgName> │ This mode allows you to pack a single RBBS message ║
║ │ base, simply by typing the complete path and file name ║
║ │ of the message base to be packed. All options apply ║
║ │ here, however, command line switches do not. In ║
║ │ other words, log file suppression, screen write ║
║ │ reduction, and ANSI are not available when in single ║
║ │ file mode. ║
╚════════════╧══════════════════════════════════════════════════════════╝
-5-
Command Line Switches
There are four available command line switches, one for help and the
others for controlling the logging, screen writes, and ANSI features.
╔════════╤══════════╤═══════════════════════════════════════════════════╗
║ Switch │ Type │ Description ║
╟────────┼──────────┼───────────────────────────────────────────────────╢
║ /? │ Help │ This switch will invoke the help screen, which ║
║ │ │ will provide you with a summary of command line ║
║ │ │ options. ║
║────────┼──────────┼───────────────────────────────────────────────────║
║ /A │ Feature │ This switch will change the way RTMBP writes ║
║ │ │ to the screen making remote operation more ║
║ │ │ pleasant. With the /A switch enabled all ║
║ │ │ screen writes will use ANSI control codes to ║
║ │ │ position the cursor. ║
║────────┼──────────┼───────────────────────────────────────────────────║
║ /L │ Feature │ This switch will cause RTMBP to disable its ║
║ │ │ logging feature and will no longer log it's ║
║ │ │ activities to disk. ║
║────────┼──────────┼───────────────────────────────────────────────────║
║ /V │ Feature │ This switch will cause RTMBP to reduce the ║
║ │ │ level of screen writes to the bare minimum. ║
║ │ │ RTMBP will only display the current message ║
║ │ │ file and copyright notice in this mode. ║
╚════════╧══════════╧═══════════════════════════════════════════════════╝
Options
The following options may be used within your Configuration File. They
are categorized by "Type" and "Authority." Those of type "LIMIT" serve
to limit the number of messages saved. Those of type "FEATURE" turn on
various optional features available. Those of type "EXCLUSION" serve to
prevent purging of messages that would otherwise be purged by selected
LIMIT options. These options are also available at the command line when
in single file mode.
Multiple options and switches may be used simultaneously and in any order
as long as they are separated by a space. If conflicting options are
used together, the switch with the highest "authority" will rule. For
example, if you tell RTMBP to purge all messages over seven days old
(with /D7) and also tell it to exclude all SysOp messages from the purge
(with the /S switch), all SysOp messages will be saved, even those over
seven days old.
-6-
╔════════╤══════════╤═══════════════════════════════════════╤═══════════╗
║ Option │ Type │ Description │ Authority ║
╠════════╪══════════╪═══════════════════════════════════════╪═══════════╣
║ /B │ Feature │ Backup Message Base Before │ Absolute ║
║ │ │ Pack/Purge. │ ║
║ │ │ │ ║
║ │ │ This will create a backup copy of │ ║
║ │ │ your message base prior to purging, │ ║
║ │ │ creating a file with the same name, │ ║
║ │ │ but with a "BAK" extension. (Note: │ ║
║ │ │ This will require additional disk │ ║
║ │ │ space. Make sure you have room!) │ ║
║ │ │ This option is not available in │ ║
║ │ │ conjunction with the /P or /P+ │ ║
║ │ │ options. │ ║
╟────────┼──────────┼───────────────────────────────────────┼───────────╢
║ /D │ Limit │ Delete by Number of Days. │ Secondary ║
║ │ │ │ ║
║ │ │ Here you may specify the maximum │ ║
║ │ │ number of days worth of messages to │ ║
║ │ │ save, allowing older messages to be │ ║
║ │ │ purged. For example, the switch │ ║
║ │ │ "/D7" will cause RTMBP to purge all │ ║
║ │ │ messages older than 7 days (unless │ ║
║ │ │ exclusion switches have been set-- │ ║
║ │ │ see below). │ ║
╟────────┼──────────┼───────────────────────────────────────┼───────────╢
║ /N │ Limit │ Delete Down to Number of Messages. │ Secondary ║
║ │ │ │ ║
║ │ │ Here you may set the maximum number │ ║
║ │ │ of messages to be saved. For │ ║
║ │ │ example, the switch "/N100" will │ ║
║ │ │ cause RTMBP to purge all messages │ ║
║ │ │ except for the most recent 100 │ ║
║ │ │ (unless exclusion switches have been │ ║
║ │ │ set--see below). │ ║
╟────────┼──────────┼───────────────────────────────────────┼───────────╢
║ /O │ Feature │ OverMail High Water Mark Support. │ Absolute ║
║ │ │ │ ║
║ │ │ This switch enables intelligent │ ║
║ │ │ support and replacement of the │ ║
║ │ │ OverMail Highwater mark. │ ║
╟────────┼──────────┼───────────────────────────────────────┼───────────╢
║ /P │ Feature │ Pack In Place (PIP). │ Absolute ║
║ │ │ │ ║
║ │ │ This method writes packed messages │ ║
║ │ │ directly into the file it reads them │ ║
║ │ │ from (i.e., it does not use a │ ║
║ │ │ temporary file as an intermediary). │ ║
║ │ │ This method is not as safe as the │ ║
║ │ │ Default mode, however, it requires │ ║
║ │ │ no additional disk space and results │ ║
║ │ │ in zero disk fragmentation. │ ║
╚════════╧══════════╧═══════════════════════════════════════╧═══════════╝
-7-
╔════════╤══════════╤═══════════════════════════════════════╤═══════════╗
║ Option │ Type │ Description │ Authority ║
╠════════╪══════════╪═══════════════════════════════════════╪═══════════╣
║ /P+ │ Feature │ Truncate File Size w/ PIP. │ Absolute ║
║ │ │ │ ║
║ │ │ This method packs files in the same │ ║
║ │ │ way as PIP, however, it frees the │ ║
║ │ │ unused portion of the file. │ ║
╟────────┼──────────┼───────────────────────────────────────┼───────────╢
║ /Rx, │ Feature │ Renumber. │ Absolute ║
║ │ │ │ ║
║ │ │ This option will renumber the │ ║
║ │ │ messages after they are packed, and │ ║
║ │ │ subsequently update the user files. │ ║
║ │ │ By using only a "/R", the messages │ ║
║ │ │ will be renumbered absolutely. By │ ║
║ │ │ using "/Rx" (where x equals the high │ ║
║ │ │ message number), the messages will │ ║
║ │ │ be renumbered ONLY if message │ ║
║ │ │ numbers exist which exceed this │ ║
║ │ │ value. By using "/Rx,<FileName>" │ ║
║ │ │ (where <FileName> is the name of the │ ║
║ │ │ User file), the User file will be │ ║
║ │ │ updated as well. │ ║
╟────────┼──────────┼───────────────────────────────────────┼───────────╢
║ /S │ Exclusion│ Don't purge any mail To/From SysOp. │ Absolute ║
║ │ │ │ ║
║ │ │ No matter what other switches are │ ║
║ │ │ used concurrently, this switch will │ ║
║ │ │ prevent all SysOp messages from being │ ║
║ │ │ purged. │ ║
╟────────┼──────────┼───────────────────────────────────────┼───────────╢
║ /X │ Exclusion│ Special exclude switch. │ Absolute ║
║ │ │ │ ║
║ │ │ This switch allows you to exclude │ ║
║ │ │ selected messages(s) from the purge, │ ║
║ │ │ no matter what other options you │ ║
║ │ │ have selected. There are two ways │ ║
║ │ │ to use this switch: │ ║
║ │ │ │ ║
║ │ │ /X&name&name! 1 to 5 names can │ ║
║ │ │ be excluded from │ ║
║ │ │ the purge. The │ ║
║ │ │ names must be de- │ ║
║ │ │ limited by an │ ║
║ │ │ ampersand(&), and │ ║
║ │ │ the final name must │ ║
║ │ │ be terminated with │ ║
║ │ │ an exclamation │ ║
║ │ │ point(!). │ ║
║ │ │ -or- │ ║
║ │ │ continued, next page │ ║
╚════════╧══════════╧═══════════════════════════════════════╧═══════════╝
-8-
╔════════╤══════════╤═══════════════════════════════════════╤═══════════╗
║ Option │ Type │ Description │ Authority ║
╠════════╪══════════╪═══════════════════════════════════════╪═══════════╣
║ │ │ /X@FileName! Up to 50 names can │ ║
║ │ │ be excluded from │ ║
║ │ │ the purge if placed │ ║
║ │ │ in a file (one name │ ║
║ │ │ per line; case is │ ║
║ │ │ not important). │ ║
║ │ │ This option requires │ ║
║ │ │ the full path and │ ║
║ │ │ file name of list │ ║
║ │ │ of names to be │ ║
║ │ │ excluded. It must │ ║
║ │ │ be preceded by a │ ║
║ │ │ (@) and terminated │ ║
║ │ │ with an (!). │ ║
╟────────┼──────────┼───────────────────────────────────────┼───────────╢
║ /Y │ Exclusion│ Don't purge any unread mail. │ Absolute ║
║ │ │ │ ║
║ │ │ No matter what other switches are │ ║
║ │ │ used concurrently, this switch │ ║
║ │ │ prevents unread mail from being │ ║
║ │ │ purged. This should be used on │ ║
║ │ │ local conferences only! │ ║
║ │ │ │ ║
║ │ │ Why/Y? │ ║
║ │ │ By all means, use this switch if │ ║
║ │ │ you prefer to cater to the callers │ ║
║ │ │ that are too inconsiderate to │ ║
║ │ │ respond to and kill their own │ ║
║ │ │ mail; or use this switch if you │ ║
║ │ │ have little to no new mail, to │ ║
║ │ │ keep your message bases as large │ ║
║ │ │ and impressive as possible! │ ║
╚════════╧══════════╧═══════════════════════════════════════╧═══════════╝
╔═══════════════════════════════════════════════════════════════════════╗
║ CREATING YOUR CONFIGURATION FILE ║
╚═══════════════════════════════════════════════════════════════════════╝
Before long you will have RTMBP perfectly fine-tuned. Depending on
activity levels and other characteristics, each of your message bases may
require different levels of maintenance; RTMBP can be configured to meet
the needs of each. To get you started, RTMBP includes a utility,
RTMBPCFG.EXE, which reads your ConfMail.Def file and creates a generic
configuration file, RTMBP.CFG, which is yours to modify.
Before executing this utility, be sure you have the following:
1) This document.
2) The full path and filename to your ConfMail.Def.
3) A good understanding of the options available to you.
-9-
4) An idea of the options you will be using.
5) A text editor (e.g., EDLIN or QEDIT).
To execute this utility, simply run RTMBPCFG.EXE at the command line.
You will be prompted to enter the full path and filename to your
ConfMail.Def. The program will write the full path and filename of each
of the messages bases defined in your ConfMail.Def, saving you from this
tedious chore.
You will notice that the configuration file has three components:
1) Remarks which contain useful reference information;
2) A complete list of message bases found in your ConfMail.Def, next
to which you may add individual message base options;
3) Global variables enclosed by "#GlobalBegin" and "#GlobalEnd".
Using a text editor you can tailor the configuration file to meet
individual message base requirements.
╔══════════════════════════════════════════════════════════════════════╗
║ THE LOG FILE ║
╚══════════════════════════════════════════════════════════════════════╝
Unless you disable the logging feature (with the /L switch), information
regarding each message base file will be collected and appended to a log
file for your records. The following is a sample log file entry:
RBBS Turbo Message Base Packer (c)1992 Version: 2.00
The GreyHawk BBS (410)461-9943/465-3891->GREYHAWK(1:261/1116 or8:936/203)
═════════════════════════════════════════════════════════════════════════
Start Date: 3-7-1992 Start Time: 11:17
─────────────────────────────────────────────────────────────────────────
Message Base Start Size End Size Before After Del EC
C:\RBBS\MESS\SYS-261M.DEF 68608 68608 53 50 3 0
C:\RBBS\MESS\BATCHM.DEF 154624 154624 77 72 5 0
C:\RBBS\MESS\C_ECHOM.DEF 654848 654848 235 215 20 0
C:\RBBS\MESS\HDRIVESM.DEF 262400 262400 106 101 5 0
C:\RBBS\MESS\HD4SALEM.DEF 247040 247040 103 99 4 0
C:\RBBS\MESS\HSTM.DEF 269056 269056 102 98 4 0
C:\RBBS\MESS\RBBSNETM.DEF 1408 1408 2 2 0 0
C:\RBBS\MESS\RBBSSYSM.DEF 31744 31744 26 21 5 0
C:\RBBS\MESS\RBBSNEWM.DEF 640 640 0 0 0 0
C:\RBBS\MESS\RBBSDEVM.DEF 22912 22912 16 8 8 0
C:\RBBS\MESS\RBBS-PCM.DEF 294656 294656 236 221 15 0
─────────────────────────────────────────────────────────────────────────
Totals 2007936 2007936 956 887 69
─────────────────────────────────────────────────────────────────────────
End Date : 3-7-1992 End Time : 11:19 Elapsed Time: : 0:00:28
═════════════════════════════════════════════════════════════════════════
-10-
╔══════════════╤════════════════════════════════════════════════════════╗
║ Item │ Explanation ║
╠══════════════╪════════════════════════════════════════════════════════╣
║ Message Base │ Drive, path, and filename of message base to be ║
║ │ packed. ║
╟──────────────┼────────────────────────────────────────────────────────╢
║ Start Size │ The size of the message base file prior to the ║
║ │ execution of RTMBP (in bytes). ║
╟──────────────┼────────────────────────────────────────────────────────╢
║ End Size │ The size of the message base file after the execution ║
║ │ of RTMBP (in bytes). ║
╟──────────────┼────────────────────────────────────────────────────────╢
║ Before │ The number of messages in message base prior to the ║
║ │ execution of RTMBP. ║
╟──────────────┼────────────────────────────────────────────────────────╢
║ After │ The number of messages in the message base after the ║
║ │ execution of RTMBP. ║
╟──────────────┼────────────────────────────────────────────────────────╢
║ Del │ The number of messages deleted during the execution of ║
║ │ RTMBP. ║
╟──────────────┼────────────────────────────────────────────────────────╢
║ EC │ The error code returned when program was exited. ║
╚══════════════╧════════════════════════════════════════════════════════╝
-11-
╔═══════════════════════════════════════════════════════════════════════╗
║ APPENDIX ║
╚═══════════════════════════════════════════════════════════════════════╝
Error Levels
0 RTMBP exited successfully with no apparent errors.
1 RTMBP could not find the specified configuration file.
2 RTMBP could not open the log file.
Error Codes
╔═══════╤═══════════════════════════════════════════════════════════════╗
║ Error │ Error Message ║
║ Code │ & Outcome ║
╠═══════╪═══════════════════════════════════════════════════════════════╣
║ 10 │ Could not find specified message base. ║
║ │ ║
║ │ SFM: Pack aborted and error logged. ║
║ │ CFM: Pack is aborted for that message base. Program logs(*) ║
║ │ the error and procedes to the next message base. If at ║
║ │ the end of the configuration file, program terminates. ║
╟───────┼───────────────────────────────────────────────────────────────╢
║ 15 │ Message base was in use by RBBS at runtime. ║
║ │ ║
║ │ SFM: Pack aborted and error logged. ║
║ │ CFM: Pack is aborted for that message base. Program logs(*) ║
║ │ the error and procedes to the next message base. If at ║
║ │ the end of the configuration file, program terminates. ║
╟───────┼───────────────────────────────────────────────────────────────╢
║ 20 │ Could not find specified UserFile. ║
║ │ ║
║ │ SFM: Pack aborted and error logged. ║
║ │ CFM: Message base packed and renumbered. Program logs(*) ║
║ │ the error and procedes to the next message base. If at ║
║ │ the end of the configuration file, program terminates. ║
╟───────┼───────────────────────────────────────────────────────────────╢
║ 25 │ UserFile was in use by RBBS at runtime. ║
║ │ ║
║ │ SFM: Message base packed and renumbered, User file not ║
║ │ updated, error logged. ║
║ │ CFM: Message base packed and renumbered, User file not ║
║ │ updated. Program logs(*) the error and procedes to the ║
║ │ next message base. If at the end of the configuration ║
║ │ file, program terminates. ║
╠═══════╧═══════════════════════════════════════════════════════════════╣
║ SFM - Single File Mode ║
║ CFM - Config File Mode ║
║ (*) - Log file will not be updated if /L switch is used. ║
╚═══════════════════════════════════════════════════════════════════════╝
-12-
╔═══════╤═══════════════════════════════════════════════════════════════╗
║ Error │ Error Message ║
║ Code │ & Outcome ║
╠═══════╪═══════════════════════════════════════════════════════════════╣
║ 30 │ Could not find the /X@Names.Lst file for this message base. ║
║ │ ║
║ │ SFM: Pack aborted and error logged. ║
║ │ CFM: Program ignores all switches and options and defaults ║
║ │ to /N999 and procedes to next message base. If at the ║
║ │ end of the configuration file, program terminates. ║
╟───────┼───────────────────────────────────────────────────────────────╢
║ 40 │ Could not find the LastRead.Net for PCRelay RESET support ║
║ │ ║
║ │ SFM: N/A Message base packed. ║
║ │ CFM: Program logs(*) the error and procedes to the next ║
║ │ message base. If at the end of the configuration file, ║
║ │ program terminates. (Warning: This may be harmful to ║
║ │ PCRelay operation.) ║
╟───────┼───────────────────────────────────────────────────────────────╢
║ 50 │ Corrupt Message base or not a valid RBBS message base. ║
║ │ ║
║ │ SFM: Pack aborted and error logged. ║
║ │ CFM: Pack is aborted for that message base. Program logs(*) ║
║ │ the error and procedes to the next message base. If at ║
║ │ the end of the configuration file, program terminates. ║
╟───────┼───────────────────────────────────────────────────────────────╢
║100 │ Fatal Memory Error ║
║ │ ║
║ │ SFM: Pack aborted and error logged. ║
║ │ CFM: Pack aborted and error logged(*). ║
╠═══════╧═══════════════════════════════════════════════════════════════╣
║ SFM - Single File Mode ║
║ CFM - Config File Mode ║
║ (*) - Log file will not be updated if /L switch is used. ║
╚═══════════════════════════════════════════════════════════════════════╝
Benchmarks
(based on an average HD speed of 24ms)
╔═════════════════════════════════════════════╗
║ Messages Per Minute (MPM) ║
╔═════════════════════════╬══════════════════════╤══════════════════════╣
║ CPU ║ DOS │ DesqView ║
╠═════════════════════════╬══════════════════════╪══════════════════════╣
║ 286-12 ║ 1800 │ 1500 ║
║ ║ │ ║
║ 386-SX16 ║ 2000 │ 1800 ║
║ ║ │ ║
║ 386-33 ║ 3500 │ 2500 ║
║ ║ │ ║
║ 486-33 ║ 4500 │ 3000 ║
╚═════════════════════════╩══════════════════════╧══════════════════════╝
-13-
╔═══════════════════════════════════════════════════════════════════════╗
║ PROBLEM REPORTING ║
╚═══════════════════════════════════════════════════════════════════════╝
If you uncover a problem with the operation of this program please
contact the author using one of the following methods.
1) BBS - The GreyHawk BBS Node 1 (410)461-9943 USR DS V.32Bis
Node 2 (410)465-3891 USR DS V.32Bis
2) USPS - Walter C. Ames
3126 Wheaton Way
Ellicott City, MD 21043
3) NetMail - RelayNet ->GREYHAWK R/O Capable
FidoNet 1:261/1116 or 1:261/1117
RBBSNet 8:936/203 or 8:936/204
-14-