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 >
Text File  |  1992-06-10  |  43KB  |  832 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14.  
  15.  
  16.  
  17.  
  18.  
  19.               RBBS Turbo Message Base Packer Version 2.00 (RTMBP)
  20.             Copyright 1992 by Walter C. Ames.  All rights reserved.
  21.                            Created January 5, 1992
  22.  
  23.  
  24.  
  25.  
  26.  
  27.  
  28.  
  29. ╔═══════════════════════════════════════════════════════════════════════╗
  30. ║                            TABLE OF CONTENTS                          ║
  31. ╚═══════════════════════════════════════════════════════════════════════╝
  32.  
  33.  
  34.  
  35.  
  36. License/Warranty/Registration . . . . . . . . . . . . . . . . . . . . .1
  37.   License . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1
  38.   Warranty. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1
  39.   Registration. . . . . . . . . . . . . . . . . . . . . . . . . . . . .1
  40.  
  41.  
  42. Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . .  2
  43.   About RTMBP . . . . . . . . . . . . . . . . . . . . . . . . . . . .  2
  44.   RTMBP Features. . . . . . . . . . . . . . . . . . . . . . . . . . .  2
  45.   Kudos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  3
  46.  
  47.  
  48. Installation. . . . . . . . . . . . . . . . . . . . . . . . . . . . .  3
  49.   Assumptions . . . . . . . . . . . . . . . . . . . . . . . . . . . .  3
  50.   System Requirements . . . . . . . . . . . . . . . . . . . . . . . .  3
  51.   Installation Summary. . . . . . . . . . . . . . . . . . . . . . . .  3
  52.  
  53.  
  54. Packing Methods . . . . . . . . . . . . . . . . . . . . . . . . . . .  4
  55.   Default Packfile. . . . . . . . . . . . . . . . . . . . . . . . . .  4
  56.   Pack-in-Place (PIP) . . . . . . . . . . . . . . . . . . . . . . . .  4
  57.   PIP with Truncate . . . . . . . . . . . . . . . . . . . . . . . . .  4
  58.  
  59.  
  60. Command Line Syntax/Usage . . . . . . . . . . . . . . . . . . . . . .  5
  61.   Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  5
  62.   Command Line Switches . . . . . . . . . . . . . . . . . . . . . . .  6
  63.   Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  7
  64.  
  65.  
  66. Creating Your Configuration File. . . . . . . . . . . . . . . . . . .  9
  67.  
  68.  
  69. RTMBP Log File. . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
  70.  
  71.  
  72. Appendix. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
  73.   Error Levels. . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
  74.   Error Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
  75.   Benchmarks. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
  76.   Problem Reporting . . . . . . . . . . . . . . . . . . . . . . . . . 14
  77.  
  78.  
  79.  
  80.  
  81.  
  82. ╔═══════════════════════════════════════════════════════════════════════╗
  83. ║                    LICENSE * WARRANTY * REGISTRATION                  ║
  84. ╚═══════════════════════════════════════════════════════════════════════╝
  85.  
  86. Distribution and/or use is permitted under the following terms:
  87.  
  88. You may copy and distribute verbatim copies of the RTMBP documentation
  89. and executable code as you receive it, in any medium, provided that you
  90. conspicuously and appropriately publish on each copy a valid copyright
  91. notice "Copyright 1992 by Walter C. Ames"; keep intact the notices on all
  92. files that refer to this license agreement and to the absence of any
  93. warranty.  PROVIDE UNMODIFIED COPIES OF THE DOCUMENTATION AS PROVIDED
  94. WITH THE PROGRAM; and give any of the other recipients of the RTMBP
  95. program a copy of this license agreement along with the program.  You may
  96. charge a distribution fee for the physical act of transferring a copy,
  97. but no more than is necessary to recover your actual costs incurred in
  98. the transfer. Under no circumstances is RTMBP to be distributed in such a
  99. way as to be construed as "value added" in a sales transaction, such as,
  100. but not limited to, software bundled with a modem or CD-ROM software
  101. collections, without the prior written consent of the author.
  102.  
  103.                                  Warranty
  104.  
  105. THIS PRODUCT IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, INCLUDING
  106. ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.  THE
  107. ENTIRE RISK AS TO THE RESULTS AND PERFORMANCE OF THIS PROGRAM IS ASSUMED
  108. BY YOU. FURTHERMORE, I THE AUTHOR DO NOT WARRANT, GUARANTEE, OR MAKE ANY
  109. REPRESENTATIONS REGARDING THE USE OF OR THE RESULTS OF THE USE OF THE
  110. PROGRAM, OR THAT THE PROGRAM WILL RUN WITHOUT ERROR, AND YOU RELY ON THE
  111. PROGRAM AND RESULTS SOLELY AT YOUR OWN RISK.  I THE AUTHOR CANNOT ACCEPT
  112. RESPONSIBILITY FOR SYSTEM DAMAGE, LOSS OF PROFIT, OR ANY OTHER SPECIAL,
  113. INCIDENTAL, OR CONSEQUENTIAL DAMAGES RESULTING FROM THE USE OR INABILITY
  114. TO USE THIS PRODUCT.
  115.  
  116.                                Registration
  117.  
  118. This program is being released under the "SHAREWARE" concept.  This means
  119. that you can evaluate it for a trial period of 30 days to see if it meets
  120. your needs.  If after a period of 30 days you continue to use it then
  121. registration is required.  If you do not register the program after 30
  122. days you must discontinue use of the program.  See RTMBP200.REG for
  123. details on registration.
  124.  
  125. NOTE:  If you feel that 30 days is insufficient time to evaluate this
  126. program, please contact me electronically at any of the enclosed network
  127. addresses or by calling my BBS.  I may at my discretion extend the
  128. evaluation period on a case-by-case basis.
  129.  
  130.                                     -1-
  131.  
  132.  
  133.  
  134.  
  135.  
  136. ╔═══════════════════════════════════════════════════════════════════════╗
  137. ║                              INTRODUCTION                             ║
  138. ╚═══════════════════════════════════════════════════════════════════════╝
  139.  
  140.  
  141.                                 About RTMBP
  142.  
  143. RTMBP is a full featured RBBS Message Maintenance utility.  RTMBP when
  144. set-up properly can eliminate most of the need for SysOp intervention in
  145. the area of  Message Base maintenance.  RTMBP is very flexible and
  146. configurable to suit any RBBS-PC SysOp's needs.  RTMBP will allow you to
  147. Pack/Purge and Renumber Messages.  It will Pack/Purge by age or amount of
  148. Messages or both.  It can optionally exclude up to 51 names from the
  149. Purging/Packing process.  RTMBP also includes a special SysOp feature
  150. for excluding Messages from  the Purging process on the fly.  Further
  151. RTMBP was designed to work well with RUTI-20 and Overmail Message
  152. processing utilities.  (Note: Other processors may work, but have not yet
  153. been tested.)  In addition RTMBP correctly handles OverMail's High Water
  154. Mark to prevent re-scanning of the message bases upon completion of the
  155. Pack/Purge. RTMBP's log file is brief but to the point and reports all of
  156. the information needed to properly tune ones Message Maintenance.
  157. Logging is optional and can be turned off if no logging is desired.
  158. Screen writes are colorful, clean, and informative for those of you awake
  159. at 3:00 in the morning.  Otherwise, writing to the screen can be
  160. optionally disabled.
  161.  
  162.  
  163.                              RTMBP's Features
  164.  
  165.    o  Encompasses the best features of other RBBS message utilities
  166.       while adding speed, configurability and ease of use.
  167.    o  Supports RBBS-PC's CC: (Carbon Copy) message base format.
  168.    o  Packs/Purges Messages by x Number of days.
  169.    o  Packs/Purges Messages by x Number of Messages.
  170.    o  Renumbers Messages and updates Last Message Read indicators.
  171.    o  Optionally runs PCRelay's RESET program for you if you are
  172.       running a PCRelay Technology network.
  173.    o  Several comprehensive exclusion switches allow you to exclude just
  174.       about any message from being Purged/Packed.
  175.    o  Repairs "Broken Message Chains" when encountered.
  176.    o  Resizes Message Bases to recover unused disk space.
  177.    o  Selectively Back up any/all Message Bases.
  178.    o  Continues processing on Non-Fatal Errors.
  179.    o  Intelligent support for the OverMail High Water Mark.
  180.    o  Special Exclude character for Messages you wish to save.
  181.    o  Command line or Configuration file operation.
  182.    o  Completely Configurable including Video and Logging.
  183.    o  Configuration program to aid in initial set-up.
  184.  
  185.                                     -2-
  186.  
  187.  
  188.  
  189.                                    Kudos
  190.  
  191. I would like to take this opportunity to give special thanks to those
  192. individuals who contributed to the development of RTMBP.  Their names are
  193. listed alphabetically below.
  194.  
  195. Dave Brodmann          Brodmann's Place            (301)843-5732
  196. Sam Colemen            Port-of-Call                (301)249-4193
  197. Tom Collins            MSFA BBS                    (410)536-1935
  198. Tom Hansen             Church Chatters             (402)592-9266
  199. Dan Shore              The Shoreline               (301)946-2771
  200. Gregg Snyder           Elusive Diamond             (703)323-6423
  201.  
  202.  
  203. ╔═══════════════════════════════════════════════════════════════════════╗
  204. ║                         INSTALLATION PROCEDURES                       ║
  205. ╚═══════════════════════════════════════════════════════════════════════╝
  206.  
  207.                                Assumptions
  208.  
  209. Three basic assumption are made:
  210.  
  211.   1)   You are an RBBS-PC SysOp with an operational RBBS installation.
  212.   2)   You are familiar with the operation of DOS and RBBS.
  213.   3)   You would like to automate your message base maintenance.
  214.  
  215.                             System Requirements
  216.  
  217. Although RTMBP was designed to be as generic as possible, the following
  218. system configuration is required as a minimum:
  219.  
  220.   1)   An IBM PC, XT, AT, PS/2, or a 100% compatible.
  221.   2)   A completely operational copy of RBBS-PC CPC12 - CPC17.4.
  222.   3)   MS/PC-DOS 3.1 or above. (SHARE.EXE optional for share-locking.)
  223.  
  224.  
  225.                            Installation Summary
  226.  
  227.   1)   Read the documentation to become familiar with options.
  228.   2)   Run the enclosed RTMBPCFG program to create your configuration
  229.        file.
  230.   3)   Determine the configuration options to be used for each of your
  231.        message base files (see RTMBP.CFG reference).
  232.   4)   Edit the parameters in the newly created configuration file to the
  233.        needs of your system.
  234.   5)   Run RTMBP.
  235.  
  236.      Note:  For precautionary measures, it is recommended that you back
  237. up your message bases prior to executing RTMBP, just as you would with
  238. any new message base utility.  If running RTMBP with the renumbering
  239. option, make sure to backup your User files as well.
  240.  
  241.                                     -3-
  242.  
  243.  
  244.  
  245.  
  246.  
  247. ╔═══════════════════════════════════════════════════════════════════════╗
  248. ║                             PACKING METHODS                           ║
  249. ╚═══════════════════════════════════════════════════════════════════════╝
  250.  
  251. There are three basic packing methods available with RTMBP, each offering
  252. certain advantages and disadvantages.  As a SysOp, you should be able to
  253. determine which is the most practical for your system.
  254.  
  255.  
  256.  
  257.                              Packfile (Default)
  258.  
  259. The default method requires more disk space than the other two, but is
  260. the safest in practice.  This is because it initially copies each message
  261. to be saved to a temporary file.  Once it has successfully copied all
  262. messages to be saved, it deletes the original message base file and
  263. renames the temporary file.  So even in the event of a power outage,
  264. lock-up, or other oddity, your message base will be kept intact.  Safety
  265. has its price and this method will cost you a little more time and a lot
  266. more disk I/O.
  267.  
  268.  
  269.                             Pack-in-Place (PIP)
  270.  
  271. This method requires no additional disk space and considerably less disk
  272. I/O, and results in zero disk fragmentation.  Unlike the default method,
  273. PIP does not utilize a temporary file, it packs the messages into
  274. the same file it is reading from.  Therefore, if you experience a power
  275. outage, lock-up, or other annoying occurrence while packing a file,
  276. message base corruption is almost a given.  Fortunately, only one message
  277. base is opened at a time, so only one can be corrupted in such an event.
  278. You will probably find that the advantages of this method outweigh the
  279. risks by far.
  280.  
  281.  
  282.                              PIP with Truncate
  283.  
  284. This method is nothing more than the PIP method described above with the
  285. additional function of recovering unused disk space.  Where the PIP
  286. method retains old data at the end of the file (marked as garbage), the
  287. PIP with truncate method clips off the garbage from the end of the file,
  288. thus freeing up space on your disk.
  289.  
  290.                                     -4-
  291.  
  292.  
  293. ╔═══════════════════════════════════════════════════════════════════════╗
  294. ║                        COMMAND LINE SYNTAX/USAGE                      ║
  295. ╚═══════════════════════════════════════════════════════════════════════╝
  296.  
  297. The general format for RTMBP is:
  298.  
  299.      RTMBP [mode] [switches] [options]
  300.  
  301.  
  302. o where "mode" basically indicates whether RTMBP is to be run on single
  303.   or multiple message bases, the latter requiring a configuration file.
  304.   The configuration file contains several global settings as well as the
  305.   specific paths and filenames for each message base to be packed, and
  306.   the switch settings to be used on each.  The configuration file must
  307.   follow the RTMBP standard format (please refer to the sample config-
  308.   uration file "SAMPLE.CFG").
  309.  
  310. o where "switches" are used only on the command line, and control the
  311.   logging function, screen writes, and ANSI settings.
  312.  
  313. o where "options" are used for the most part in the configuration file to
  314.   specify the packing method and options for each message base, but may
  315.   also be used at the command line when in single file mode.
  316.  
  317.  
  318.                                    Modes
  319.  
  320. ╔════════════╤══════════════════════════════════════════════════════════╗
  321. ║ [mode]     │ Description                                              ║
  322. ╠════════════╪══════════════════════════════════════════════════════════╣
  323. ║ none       │ If no mode is specified, RTMBP will use the default      ║
  324. ║            │ configuration file named RTMBP.CFG.  This file is        ║
  325. ║            │ initially created when you run "RTMPBCFG" during         ║
  326. ║            │ installation.  If you attempt to run RTMBP in default    ║
  327. ║            │ mode without a configuration file, no packing will       ║
  328. ║            │ occur.  Instead, a help screen will appear.              ║
  329. ╟────────────┼──────────────────────────────────────────────────────────╢
  330. ║/C<FileName>│ This mode allows you to use an alternative               ║
  331. ║            │ configuration file (instead of the default, RTMBP.CFG),  ║
  332. ║            │ by typing "/C" followed by the complete path and         ║
  333. ║            │ filename of the alternate configuration file.  You may   ║
  334. ║            │ have as many alternative configuration files as you'd    ║
  335. ║            │ like, however, they all must conform to the specified    ║
  336. ║            │ RTMBP.CFG format!                                        ║
  337. ╟────────────┼──────────────────────────────────────────────────────────╢
  338. ║ <MsgName>  │ This mode allows you to pack a single RBBS message       ║
  339. ║            │ base, simply by typing the complete path and file name   ║
  340. ║            │ of the message base to be packed.  All options apply     ║
  341. ║            │ here, however, command line switches do not.  In         ║
  342. ║            │ other words, log file suppression, screen write          ║
  343. ║            │ reduction, and ANSI are not available when in single     ║
  344. ║            │ file mode.                                               ║
  345. ╚════════════╧══════════════════════════════════════════════════════════╝
  346.                                     -5-
  347.  
  348.  
  349.  
  350.  
  351.                            Command Line Switches
  352.  
  353. There are four available command line switches, one for help and the
  354. others for controlling the logging, screen writes, and ANSI features.
  355.  
  356. ╔════════╤══════════╤═══════════════════════════════════════════════════╗
  357. ║ Switch │ Type     │ Description                                       ║
  358. ╟────────┼──────────┼───────────────────────────────────────────────────╢
  359. ║ /?     │ Help     │ This switch will invoke the help screen, which    ║
  360. ║        │          │ will provide you with a summary of command line   ║
  361. ║        │          │ options.                                          ║
  362. ║────────┼──────────┼───────────────────────────────────────────────────║
  363. ║ /A     │ Feature  │ This switch will change the way RTMBP writes      ║
  364. ║        │          │ to the screen making remote operation more        ║
  365. ║        │          │ pleasant.  With the /A switch enabled all         ║
  366. ║        │          │ screen writes will use ANSI control codes to      ║
  367. ║        │          │ position the cursor.                              ║
  368. ║────────┼──────────┼───────────────────────────────────────────────────║
  369. ║ /L     │ Feature  │ This switch will cause RTMBP to disable its       ║
  370. ║        │          │ logging feature and will no longer log it's       ║
  371. ║        │          │ activities to disk.                               ║
  372. ║────────┼──────────┼───────────────────────────────────────────────────║
  373. ║ /V     │ Feature  │ This switch will cause RTMBP to reduce the        ║
  374. ║        │          │ level of screen writes to the bare minimum.       ║
  375. ║        │          │ RTMBP will only display the current message       ║
  376. ║        │          │ file and copyright notice in this mode.           ║
  377. ╚════════╧══════════╧═══════════════════════════════════════════════════╝
  378.  
  379.  
  380.                                   Options
  381.  
  382. The following options may be used within your Configuration File.  They
  383. are categorized by "Type" and "Authority."  Those of type "LIMIT" serve
  384. to limit the number of messages saved.  Those of type "FEATURE" turn on
  385. various optional features available.  Those of type "EXCLUSION" serve to
  386. prevent purging of messages that would otherwise be purged by selected
  387. LIMIT options.  These options are also available at the command line when
  388. in single file mode.
  389.  
  390. Multiple options and switches may be used simultaneously and in any order
  391. as long as they are separated by a space.  If conflicting options are
  392. used together, the switch with the highest "authority" will rule.  For
  393. example, if you tell RTMBP to purge all messages over seven days old
  394. (with /D7) and also tell it to exclude all SysOp messages from the purge
  395. (with the /S switch), all SysOp messages will be saved, even those over
  396. seven days old.
  397.  
  398.                                     -6-
  399.  
  400. ╔════════╤══════════╤═══════════════════════════════════════╤═══════════╗
  401. ║ Option │ Type     │ Description                           │ Authority ║
  402. ╠════════╪══════════╪═══════════════════════════════════════╪═══════════╣
  403. ║ /B     │ Feature  │ Backup Message Base Before            │ Absolute  ║
  404. ║        │          │  Pack/Purge.                          │           ║
  405. ║        │          │                                       │           ║
  406. ║        │          │ This will create a backup copy of     │           ║
  407. ║        │          │ your message base prior to purging,   │           ║
  408. ║        │          │ creating a file with the same name,   │           ║
  409. ║        │          │ but with a "BAK" extension.  (Note:   │           ║
  410. ║        │          │ This will require additional disk     │           ║
  411. ║        │          │ space.  Make sure you have room!)     │           ║
  412. ║        │          │ This option is not available in       │           ║
  413. ║        │          │ conjunction with the /P or /P+        │           ║
  414. ║        │          │ options.                              │           ║
  415. ╟────────┼──────────┼───────────────────────────────────────┼───────────╢
  416. ║ /D     │ Limit    │ Delete by Number of Days.             │ Secondary ║
  417. ║        │          │                                       │           ║
  418. ║        │          │ Here you may specify the maximum      │           ║
  419. ║        │          │ number of days worth of messages to   │           ║
  420. ║        │          │ save, allowing older messages to be   │           ║
  421. ║        │          │ purged.  For example, the switch      │           ║
  422. ║        │          │ "/D7" will cause RTMBP to purge all   │           ║
  423. ║        │          │ messages older than 7 days (unless    │           ║
  424. ║        │          │ exclusion switches have been set--    │           ║
  425. ║        │          │ see below).                           │           ║
  426. ╟────────┼──────────┼───────────────────────────────────────┼───────────╢
  427. ║ /N     │ Limit    │ Delete Down to Number of Messages.    │ Secondary ║
  428. ║        │          │                                       │           ║
  429. ║        │          │ Here you may set the maximum number   │           ║
  430. ║        │          │ of messages to be saved.  For         │           ║
  431. ║        │          │ example, the switch "/N100" will      │           ║
  432. ║        │          │ cause RTMBP to purge all messages     │           ║
  433. ║        │          │ except for the most recent 100        │           ║
  434. ║        │          │ (unless exclusion switches have been  │           ║
  435. ║        │          │ set--see below).                      │           ║
  436. ╟────────┼──────────┼───────────────────────────────────────┼───────────╢
  437. ║ /O     │ Feature  │ OverMail High Water Mark Support.     │ Absolute  ║
  438. ║        │          │                                       │           ║
  439. ║        │          │ This switch enables intelligent       │           ║
  440. ║        │          │ support and replacement of the        │           ║
  441. ║        │          │ OverMail Highwater mark.              │           ║
  442. ╟────────┼──────────┼───────────────────────────────────────┼───────────╢
  443. ║ /P     │ Feature  │ Pack In Place (PIP).                  │ Absolute  ║
  444. ║        │          │                                       │           ║
  445. ║        │          │ This method writes packed messages    │           ║
  446. ║        │          │ directly into the file it reads them  │           ║
  447. ║        │          │ from (i.e., it does not use a         │           ║
  448. ║        │          │ temporary file as an intermediary).   │           ║
  449. ║        │          │ This method is not as safe as the     │           ║
  450. ║        │          │ Default mode, however, it requires    │           ║
  451. ║        │          │ no additional disk space and results  │           ║
  452. ║        │          │ in zero disk fragmentation.           │           ║
  453. ╚════════╧══════════╧═══════════════════════════════════════╧═══════════╝
  454.                                      -7-
  455.  
  456. ╔════════╤══════════╤═══════════════════════════════════════╤═══════════╗
  457. ║ Option │ Type     │ Description                           │ Authority ║
  458. ╠════════╪══════════╪═══════════════════════════════════════╪═══════════╣
  459. ║ /P+    │ Feature  │ Truncate File Size w/ PIP.            │ Absolute  ║
  460. ║        │          │                                       │           ║
  461. ║        │          │ This method packs files in the same   │           ║
  462. ║        │          │ way as PIP, however, it frees the     │           ║
  463. ║        │          │ unused portion of the file.           │           ║
  464. ╟────────┼──────────┼───────────────────────────────────────┼───────────╢
  465. ║ /Rx,   │ Feature  │ Renumber.                             │ Absolute  ║
  466. ║        │          │                                       │           ║
  467. ║        │          │ This option will renumber the         │           ║
  468. ║        │          │ messages after they are packed, and   │           ║
  469. ║        │          │ subsequently update the user files.   │           ║
  470. ║        │          │ By using only a "/R", the messages    │           ║
  471. ║        │          │ will be renumbered absolutely.  By    │           ║
  472. ║        │          │ using "/Rx" (where x equals the high  │           ║
  473. ║        │          │ message number), the messages will    │           ║
  474. ║        │          │ be renumbered ONLY if message         │           ║
  475. ║        │          │ numbers exist which exceed this       │           ║
  476. ║        │          │ value.  By using "/Rx,<FileName>"     │           ║
  477. ║        │          │ (where <FileName> is the name of the  │           ║
  478. ║        │          │ User file), the User file will be     │           ║
  479. ║        │          │ updated as well.                      │           ║
  480. ╟────────┼──────────┼───────────────────────────────────────┼───────────╢
  481. ║ /S     │ Exclusion│ Don't purge any mail To/From SysOp.   │ Absolute  ║
  482. ║        │          │                                       │           ║
  483. ║        │          │ No matter what other switches are     │           ║
  484. ║        │          │ used concurrently, this switch will   │           ║
  485. ║        │          │ prevent all SysOp messages from being │           ║
  486. ║        │          │ purged.                               │           ║
  487. ╟────────┼──────────┼───────────────────────────────────────┼───────────╢
  488. ║ /X     │ Exclusion│ Special exclude switch.               │ Absolute  ║
  489. ║        │          │                                       │           ║
  490. ║        │          │ This switch allows you to exclude     │           ║
  491. ║        │          │ selected messages(s) from the purge,  │           ║
  492. ║        │          │ no matter what other options you      │           ║
  493. ║        │          │ have selected.  There are two ways    │           ║
  494. ║        │          │ to use this switch:                   │           ║
  495. ║        │          │                                       │           ║
  496. ║        │          │ /X&name&name!    1 to 5 names can     │           ║
  497. ║        │          │                  be excluded from     │           ║
  498. ║        │          │                  the purge.  The      │           ║
  499. ║        │          │                  names must be de-    │           ║
  500. ║        │          │                  limited by an        │           ║
  501. ║        │          │                  ampersand(&), and    │           ║
  502. ║        │          │                  the final name must  │           ║
  503. ║        │          │                  be terminated with   │           ║
  504. ║        │          │                  an exclamation       │           ║
  505. ║        │          │                  point(!).            │           ║
  506. ║        │          │               -or-                    │           ║
  507. ║        │          │                  continued, next page │           ║
  508. ╚════════╧══════════╧═══════════════════════════════════════╧═══════════╝
  509.                                     -8-
  510.  
  511. ╔════════╤══════════╤═══════════════════════════════════════╤═══════════╗
  512. ║ Option │ Type     │ Description                           │ Authority ║
  513. ╠════════╪══════════╪═══════════════════════════════════════╪═══════════╣
  514. ║        │          │ /X@FileName!    Up to 50 names can    │           ║
  515. ║        │          │                 be excluded from      │           ║
  516. ║        │          │                 the purge if placed   │           ║
  517. ║        │          │                 in a file (one name   │           ║
  518. ║        │          │                 per line; case is     │           ║
  519. ║        │          │                 not important).       │           ║
  520. ║        │          │                 This option requires  │           ║
  521. ║        │          │                 the full path and     │           ║
  522. ║        │          │                 file name of list     │           ║
  523. ║        │          │                 of names to be        │           ║
  524. ║        │          │                 excluded.  It must    │           ║
  525. ║        │          │                 be preceded by a      │           ║
  526. ║        │          │                 (@) and terminated    │           ║
  527. ║        │          │                 with an (!).          │           ║
  528. ╟────────┼──────────┼───────────────────────────────────────┼───────────╢
  529. ║ /Y     │ Exclusion│ Don't purge any unread mail.          │ Absolute  ║
  530. ║        │          │                                       │           ║
  531. ║        │          │ No matter what other switches are     │           ║
  532. ║        │          │ used concurrently, this switch        │           ║
  533. ║        │          │ prevents unread mail from being       │           ║
  534. ║        │          │ purged.  This should be used on       │           ║
  535. ║        │          │ local conferences only!               │           ║
  536. ║        │          │                                       │           ║
  537. ║        │          │            Why/Y?                     │           ║
  538. ║        │          │ By all means, use this switch if      │           ║
  539. ║        │          │ you prefer to cater to the callers    │           ║
  540. ║        │          │ that are too inconsiderate to         │           ║
  541. ║        │          │ respond to and kill their own         │           ║
  542. ║        │          │ mail; or use this switch if you       │           ║
  543. ║        │          │ have little to no new mail, to        │           ║
  544. ║        │          │ keep your message bases as large      │           ║
  545. ║        │          │ and impressive as possible!           │           ║
  546. ╚════════╧══════════╧═══════════════════════════════════════╧═══════════╝
  547.  
  548.  
  549. ╔═══════════════════════════════════════════════════════════════════════╗
  550. ║                    CREATING YOUR CONFIGURATION FILE                   ║
  551. ╚═══════════════════════════════════════════════════════════════════════╝
  552.  
  553. Before long you will have RTMBP perfectly fine-tuned.  Depending on
  554. activity levels and other characteristics, each of your message bases may
  555. require different levels of maintenance; RTMBP can be configured to meet
  556. the needs of each.  To get you started, RTMBP includes a utility,
  557. RTMBPCFG.EXE, which reads your ConfMail.Def file and creates a generic
  558. configuration file, RTMBP.CFG, which is yours to modify.
  559.  
  560. Before executing this utility, be sure you have the following:
  561.  
  562.   1)   This document.
  563.   2)   The full path and filename to your ConfMail.Def.
  564.   3)   A good understanding of the options available to you.
  565.  
  566.                                  -9-
  567.  
  568.   4)   An idea of the options you will be using.
  569.   5)   A text editor (e.g., EDLIN or QEDIT).
  570.  
  571. To execute this utility, simply run RTMBPCFG.EXE at the command line.
  572. You will be prompted to enter the full path and filename to your
  573. ConfMail.Def. The program will write the full path and filename of each
  574. of the messages bases defined in your ConfMail.Def, saving you from this
  575. tedious chore.
  576.  
  577. You will notice that the configuration file has three components:
  578.  
  579.   1)   Remarks which contain useful reference information;
  580.   2)   A complete list of message bases found in your ConfMail.Def, next
  581.        to which you may add individual message base options;
  582.   3)   Global variables enclosed by "#GlobalBegin" and "#GlobalEnd".
  583.  
  584. Using a text editor you can tailor the configuration file to meet
  585. individual message base requirements.
  586.  
  587. ╔══════════════════════════════════════════════════════════════════════╗
  588. ║                              THE LOG FILE                            ║
  589. ╚══════════════════════════════════════════════════════════════════════╝
  590.  
  591. Unless you disable the logging feature (with the /L switch), information
  592. regarding each message base file will be collected and appended to a log
  593. file for your records.  The following is a sample log file entry:
  594.  
  595.  
  596. RBBS Turbo Message Base Packer (c)1992                     Version: 2.00
  597. The GreyHawk BBS (410)461-9943/465-3891->GREYHAWK(1:261/1116 or8:936/203)
  598. ═════════════════════════════════════════════════════════════════════════
  599. Start Date: 3-7-1992   Start Time: 11:17
  600. ─────────────────────────────────────────────────────────────────────────
  601. Message Base                Start Size   End Size  Before  After  Del  EC
  602. C:\RBBS\MESS\SYS-261M.DEF        68608      68608      53     50    3   0
  603. C:\RBBS\MESS\BATCHM.DEF         154624     154624      77     72    5   0
  604. C:\RBBS\MESS\C_ECHOM.DEF        654848     654848     235    215   20   0
  605. C:\RBBS\MESS\HDRIVESM.DEF       262400     262400     106    101    5   0
  606. C:\RBBS\MESS\HD4SALEM.DEF       247040     247040     103     99    4   0
  607. C:\RBBS\MESS\HSTM.DEF           269056     269056     102     98    4   0
  608. C:\RBBS\MESS\RBBSNETM.DEF         1408       1408       2      2    0   0
  609. C:\RBBS\MESS\RBBSSYSM.DEF        31744      31744      26     21    5   0
  610. C:\RBBS\MESS\RBBSNEWM.DEF          640        640       0      0    0   0
  611. C:\RBBS\MESS\RBBSDEVM.DEF        22912      22912      16      8    8   0
  612. C:\RBBS\MESS\RBBS-PCM.DEF       294656     294656     236    221   15   0
  613. ─────────────────────────────────────────────────────────────────────────
  614. Totals                         2007936    2007936     956    887   69
  615. ─────────────────────────────────────────────────────────────────────────
  616. End Date  : 3-7-1992    End Time  : 11:19       Elapsed Time:  :  0:00:28
  617. ═════════════════════════════════════════════════════════════════════════
  618.  
  619.  
  620.                                    -10-
  621.  
  622.  
  623. ╔══════════════╤════════════════════════════════════════════════════════╗
  624. ║ Item         │ Explanation                                            ║
  625. ╠══════════════╪════════════════════════════════════════════════════════╣
  626. ║ Message Base │ Drive, path, and filename of message base to be        ║
  627. ║              │ packed.                                                ║
  628. ╟──────────────┼────────────────────────────────────────────────────────╢
  629. ║ Start Size   │ The size of the message base file prior to the         ║
  630. ║              │ execution of RTMBP (in bytes).                         ║
  631. ╟──────────────┼────────────────────────────────────────────────────────╢
  632. ║ End Size     │ The size of the message base file after the execution  ║
  633. ║              │ of RTMBP (in bytes).                                   ║
  634. ╟──────────────┼────────────────────────────────────────────────────────╢
  635. ║ Before       │ The number of messages in message base prior to the    ║
  636. ║              │ execution of RTMBP.                                    ║
  637. ╟──────────────┼────────────────────────────────────────────────────────╢
  638. ║ After        │ The number of messages in the message base after the   ║
  639. ║              │ execution of RTMBP.                                    ║
  640. ╟──────────────┼────────────────────────────────────────────────────────╢
  641. ║ Del          │ The number of messages deleted during the execution of ║
  642. ║              │ RTMBP.                                                 ║
  643. ╟──────────────┼────────────────────────────────────────────────────────╢
  644. ║ EC           │ The error code returned when program was exited.       ║
  645. ╚══════════════╧════════════════════════════════════════════════════════╝
  646.  
  647.  
  648.  
  649.  
  650.  
  651.  
  652.  
  653.  
  654.  
  655.  
  656.  
  657.  
  658.  
  659.  
  660.  
  661.  
  662.  
  663.  
  664.  
  665.  
  666.  
  667.  
  668.  
  669.  
  670.  
  671.  
  672.  
  673.  
  674.                                    -11-
  675.  
  676. ╔═══════════════════════════════════════════════════════════════════════╗
  677. ║                                APPENDIX                               ║
  678. ╚═══════════════════════════════════════════════════════════════════════╝
  679.  
  680.  
  681.                                Error Levels
  682.  
  683.      0    RTMBP exited successfully with no apparent errors.
  684.      1    RTMBP could not find the specified configuration file.
  685.      2    RTMBP could not open the log file.
  686.  
  687.  
  688.                                 Error Codes
  689.  
  690. ╔═══════╤═══════════════════════════════════════════════════════════════╗
  691. ║ Error │ Error Message                                                 ║
  692. ║ Code  │ & Outcome                                                     ║
  693. ╠═══════╪═══════════════════════════════════════════════════════════════╣
  694. ║ 10    │ Could not find specified message base.                        ║
  695. ║       │                                                               ║
  696. ║       │ SFM:  Pack aborted and error logged.                          ║
  697. ║       │ CFM:  Pack is aborted for that message base.  Program logs(*) ║
  698. ║       │       the error and procedes to the next message base.  If at ║
  699. ║       │       the end of the configuration file, program terminates.  ║
  700. ╟───────┼───────────────────────────────────────────────────────────────╢
  701. ║ 15    │ Message base was in use by RBBS at runtime.                   ║
  702. ║       │                                                               ║
  703. ║       │ SFM:  Pack aborted and error logged.                          ║
  704. ║       │ CFM:  Pack is aborted for that message base.  Program logs(*) ║
  705. ║       │       the error and procedes to the next message base.  If at ║
  706. ║       │       the end of the configuration file, program terminates.  ║
  707. ╟───────┼───────────────────────────────────────────────────────────────╢
  708. ║ 20    │ Could not find specified UserFile.                            ║
  709. ║       │                                                               ║
  710. ║       │ SFM:  Pack aborted and error logged.                          ║
  711. ║       │ CFM:  Message base packed and renumbered.  Program logs(*)    ║
  712. ║       │       the error and procedes to the next message base.  If at ║
  713. ║       │       the end of the configuration file, program terminates.  ║
  714. ╟───────┼───────────────────────────────────────────────────────────────╢
  715. ║ 25    │ UserFile was in use by RBBS at runtime.                       ║
  716. ║       │                                                               ║
  717. ║       │ SFM:  Message base packed and renumbered, User file not       ║
  718. ║       │       updated, error logged.                                  ║
  719. ║       │ CFM:  Message base packed and renumbered, User file not       ║
  720. ║       │       updated. Program logs(*) the error and procedes to the  ║
  721. ║       │       next message base.  If at the end of the configuration  ║
  722. ║       │       file, program terminates.                               ║
  723. ╠═══════╧═══════════════════════════════════════════════════════════════╣
  724. ║ SFM - Single File Mode                                                ║
  725. ║ CFM - Config File Mode                                                ║
  726. ║ (*) - Log file will not be updated if /L switch is used.              ║
  727. ╚═══════════════════════════════════════════════════════════════════════╝
  728.  
  729.                                    -12-
  730.  
  731. ╔═══════╤═══════════════════════════════════════════════════════════════╗
  732. ║ Error │ Error Message                                                 ║
  733. ║ Code  │ & Outcome                                                     ║
  734. ╠═══════╪═══════════════════════════════════════════════════════════════╣
  735. ║ 30    │ Could not find the /X@Names.Lst file for this message base.   ║
  736. ║       │                                                               ║
  737. ║       │ SFM:  Pack aborted and error logged.                          ║
  738. ║       │ CFM:  Program ignores all switches and options and defaults   ║
  739. ║       │       to /N999 and procedes to next message base.  If at the  ║
  740. ║       │       end of the configuration file, program terminates.      ║
  741. ╟───────┼───────────────────────────────────────────────────────────────╢
  742. ║ 40    │ Could not find the LastRead.Net for PCRelay RESET support     ║
  743. ║       │                                                               ║
  744. ║       │ SFM:  N/A  Message base packed.                               ║
  745. ║       │ CFM:  Program logs(*) the error and procedes to the next      ║
  746. ║       │       message base.  If at the end of the configuration file, ║
  747. ║       │       program terminates.  (Warning:  This may be harmful to  ║
  748. ║       │       PCRelay operation.)                                     ║
  749. ╟───────┼───────────────────────────────────────────────────────────────╢
  750. ║ 50    │ Corrupt Message base or not a valid RBBS message base.        ║
  751. ║       │                                                               ║
  752. ║       │ SFM:  Pack aborted and error logged.                          ║
  753. ║       │ CFM:  Pack is aborted for that message base.  Program logs(*) ║
  754. ║       │       the error and procedes to the next message base.  If at ║
  755. ║       │       the end of the configuration file, program terminates.  ║
  756. ╟───────┼───────────────────────────────────────────────────────────────╢
  757. ║100    │ Fatal Memory Error                                            ║
  758. ║       │                                                               ║
  759. ║       │ SFM:  Pack aborted and error logged.                          ║
  760. ║       │ CFM:  Pack aborted and error logged(*).                       ║
  761. ╠═══════╧═══════════════════════════════════════════════════════════════╣
  762. ║ SFM - Single File Mode                                                ║
  763. ║ CFM - Config File Mode                                                ║
  764. ║ (*) - Log file will not be updated if /L switch is used.              ║
  765. ╚═══════════════════════════════════════════════════════════════════════╝
  766.  
  767.  
  768.                                 Benchmarks
  769.                   (based on an average HD speed of 24ms)
  770.  
  771.                           ╔═════════════════════════════════════════════╗
  772.                           ║           Messages Per Minute (MPM)         ║
  773. ╔═════════════════════════╬══════════════════════╤══════════════════════╣
  774. ║ CPU                     ║ DOS                  │ DesqView             ║
  775. ╠═════════════════════════╬══════════════════════╪══════════════════════╣
  776. ║ 286-12                  ║ 1800                 │ 1500                 ║
  777. ║                         ║                      │                      ║
  778. ║ 386-SX16                ║ 2000                 │ 1800                 ║
  779. ║                         ║                      │                      ║
  780. ║ 386-33                  ║ 3500                 │ 2500                 ║
  781. ║                         ║                      │                      ║
  782. ║ 486-33                  ║ 4500                 │ 3000                 ║
  783. ╚═════════════════════════╩══════════════════════╧══════════════════════╝
  784.                                    -13-
  785.  
  786. ╔═══════════════════════════════════════════════════════════════════════╗
  787. ║                           PROBLEM REPORTING                           ║
  788. ╚═══════════════════════════════════════════════════════════════════════╝
  789.  
  790.  
  791. If you uncover  a problem with  the operation of  this program please
  792. contact the author using one of the following methods.
  793.  
  794.    1)  BBS     - The GreyHawk BBS  Node 1 (410)461-9943 USR DS V.32Bis
  795.                                    Node 2 (410)465-3891 USR DS V.32Bis
  796.  
  797.    2)  USPS    - Walter C. Ames
  798.                  3126 Wheaton Way
  799.                  Ellicott City, MD 21043
  800.  
  801.    3)  NetMail - RelayNet ->GREYHAWK  R/O Capable
  802.                  FidoNet 1:261/1116 or 1:261/1117
  803.                  RBBSNet 8:936/203  or 8:936/204
  804.  
  805.  
  806.  
  807.  
  808.  
  809.  
  810.  
  811.  
  812.  
  813.  
  814.  
  815.  
  816.  
  817.  
  818.  
  819.  
  820.  
  821.  
  822.  
  823.  
  824.  
  825.  
  826.  
  827.  
  828.  
  829.  
  830.                                    -14-
  831.  
  832.