home *** CD-ROM | disk | FTP | other *** search
/ DP Tool Club 15 / CD_ASCQ_15_070894.iso / vrac / bws_13.zip / BWSAVE.DOC next >
Text File  |  1994-05-11  |  15KB  |  358 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.                                  BWSave 
  7.  
  8.  
  9.  
  10.                     A simple Blue Wave packet merger. 
  11.  
  12.                 Version 1.3                     May, 1994 
  13.  
  14.  
  15.  
  16.  
  17.  
  18.  
  19.  
  20.  
  21.  
  22.  
  23.  
  24.  
  25.  
  26.         (c) Copyright  David A. Gersic 1993.  All rights reserved 
  27.  
  28.  
  29.         Quick Start: 
  30.         
  31.         For people who hate reading entire documentation files 
  32.         just to find out what a program does, this compressed 
  33.         file contains a program that will merge Blue Wave mail 
  34.         packets so that you can keep important  messages in a 
  35.         format where they are easily used and found. The command 
  36.         line options can be displayed by running BWSAVE.EXE with 
  37.         no other options, or with /?. 
  38.  
  39.  
  40.         Installation: 
  41.         
  42.         Installation of BWsave is simple, just decompress the 
  43.         executable file (BWSAVE.EXE) into a subdirectory that is 
  44.         on your DOS path or other similarly convenient place. 
  45.  
  46.  
  47.         Operation: 
  48.         
  49.         BWSave takes several command line arguments to control 
  50.         its operation. Two are required, and the other four are 
  51.         optional and modify BWSave's operation. The two required 
  52.         parameters are the source and destination mail packet 
  53.         names. The source packet is the one that you have that 
  54.         you want messages saved from, and the destination packet 
  55.         is where those messages are going. The destination packet 
  56.         name must be the last file name on the command line. If 
  57.         the destination packet does not exist, BWSave will create 
  58.         it for you. 
  59.         
  60.         In its simplest use, the command line:  
  61.  
  62.         BWSAVE CONNECTN.SA1 CONNECTN.999 
  63.  
  64.         will uncompress CONNECTN.SA1 and CONNECTN.999 to 
  65.         temporary directories, add messages marked for saving in 
  66.         CONNECTN.SA1 to the packet in CONNECTN.999 and recompress 
  67.         CONNECTN.999. If CONNECTN.999 does not exist, BWSave will 
  68.         create it.
  69.          
  70.         
  71.         Command Line Options: 
  72.  
  73.         BWSave has four optional command line options that change 
  74.         its default behaviour (save all messages marked 'Save'). 
  75.         They are: 
  76.         
  77.         /all            This causes BWSave to copy all messages 
  78.                         from the source packets to the 
  79.                         destination packet, regardless of the 
  80.                         status of the 'Save' attribute. 
  81.         
  82.         /conf='AT'      This switch causes BWSave to copy all 
  83.                         messages from the conference specified by 
  84.                         'AT' (the area tag) to the destination 
  85.                         packet regardless of the status of the 
  86.                         'Save' attribute.  
  87.         
  88.         /noinf          Causes BWSave not to copy the 
  89.                         BBS_NAME.INF file to the destination 
  90.                         packet. (See "Bugs", below.) 
  91.         
  92.         /unread         This causes BWSave to mark each message 
  93.                         it saves to the destination packet as 
  94.                         having not yet been read. 
  95.         
  96.         The Area Tag (for the /conf= switch) depends on the BBS 
  97.         software in use. It is a string of characters that the 
  98.         BBS uses to keep track of the various message areas 
  99.         available. On bbs software that uses the 'Hudson' message 
  100.         base (Remote Access, QuickBBS, etc.), this is a number 
  101.         from "1" to "200" and would be used like /conf=200 or 
  102.         /conf=32. On other software (like Telegard), the area tag 
  103.         is a name, like C_ECHO, or RA_UTIL, which would be used 
  104.         as /conf=C_ECHO. The comparison is not case sensitive, so 
  105.         /conf=c_echo would also work. 
  106.  
  107.         The easiest way to discover what Area Tag your favourite 
  108.         message area has is to check from within Blue Wave. There 
  109.         are two places that this information can be displayed, 
  110.         the 'Area to Read' screen, and while reading a message in 
  111.         the area. From the 'Area to Read' screen, highlighting a 
  112.         message area and pressing the <Tab> key will display a 
  113.         box with information about the message area that looks 
  114.         like: 
  115.         
  116.         ┌─ Current Area Information ────────────────────────────┐ 
  117.         │                        Main                           │ 
  118.         │                    (Local Base)                       │ 
  119.         │ Area Tag  : 1                                         │ 
  120.         │ Msg Types : Public and Private Msgs Allowed           │ 
  121.         │ Name Used : David Gersic                              │ 
  122.         │                                                       │ 
  123.         │ Total Msgs: 8    Unread Msgs: 0     Personal Msgs: 0  │ 
  124.         └───────────────────────────────────────────────────────┘ 
  125.         
  126.         While reading a message in the conference, the <I> key 
  127.         presents a similar box. 
  128.         
  129.         In either case, the Area Tag line displays what the BBS 
  130.         is using, and what should be specified with the /conf= 
  131.         switch. 
  132.         
  133.         The command line switches are treated as a logical 'OR' 
  134.         during BWSave's processing. BWSave will copy a message to 
  135.         the destination packet if it is marked 'Save' OR if 
  136.         '/all' is in effect OR if /conf= is in effect and the 
  137.         current message is in the specified conference. 
  138.  
  139.         BWSave also now has the ability to handle more than one 
  140.         source packet at a time. Multiple packet names can be 
  141.         passed to BWSave on the command line (the last file name 
  142.         on the command line is assumed to be the destination 
  143.         packet name), either individually or via DOS wildcards. 
  144.         BWSave will decompress the destination packet, decompress 
  145.         each source packet, add the messages from the source 
  146.         packets, and recompress the destination packet after all 
  147.         source packets have been processed. With a large 
  148.         destination packet and many source packets, this can be 
  149.         quite a time saver. 
  150.  
  151.         Warning: you should specify a valid Blue Wave packet file 
  152.         name for the save packet name. BWSave doesn't care what 
  153.         you name it, but Blue Wave will only "see" correct file 
  154.         names. 
  155.         
  156.  
  157.         Speed: From my own testing, most of BWSave's processing 
  158.         time is spent shelling to the archiving programs. A good 
  159.         disk cache does speed up BWSave's operation, though, as 
  160.         it is disk intensive. I use, and recommend, HyperDisk, 
  161.         but others like SmartDrive, NCache, or PC-Kwik should 
  162.         work. 
  163.  
  164.  
  165.         Bugs: 
  166.         
  167.         As far as I know, there are no actual bugs in BWSave, but 
  168.         there are a few potential bits of wierdness. 
  169.         
  170.         First, BWSave makes no attempt to keep you from saving 
  171.         the same message twice. This can lead to a saved message 
  172.         packet with duplicate messages in it if you accidentally 
  173.         BWSave the same source packet more than once. Fortunatly, 
  174.         Blue Wave can delete messages from mail packets, so this 
  175.         is only a minor annoyance. 
  176.  
  177.         Second, any changes in the message areas on the bbs may 
  178.         produce strange results once a new packet is merged with 
  179.         an older one. The symptom of this is messages "moving" 
  180.         from one message area to another. If you notice that all 
  181.         of your saved messages in the "NETMAIL" area just moved 
  182.         to "SWEEDISH_COOKING", you'll know that your sysop has 
  183.         been rearanging his message areas. The simplest recovery 
  184.         from this is to replace the BBS_NAME.INF file in your 
  185.         saved mail packet with one from an older mail packet. 
  186.         Note that this is not the same as the BBS_NAME.INF file 
  187.         in your Blue Wave directory. The /noinf switch will keep 
  188.         BWSave from undoing your fix the next time you save 
  189.         messages to your destination packet. Other than start a 
  190.         new save packet, or live with your NetMail being listed 
  191.         as being in the Sweedish_Cooking echo, there isn't much 
  192.         you or I can do about this. 
  193.  
  194.         Third, I detect the type of archiver used to compress the 
  195.         mail packet, but only Zip, LHA, ARJ, and Pak format 
  196.         archives can be handled. Any other archiver will give you 
  197.         an error message. If somebody wants to NetMail me the 
  198.         command lines that should be used for Zoo, ARC, and ARC6 
  199.         formats, I'll be happy to add them. Archiver detection 
  200.         may not be perfect, either, as I only use and tested Zip, 
  201.         LHA, and ARJ. 
  202.         
  203.         Fourth, BWSave assumes that it can find your archive 
  204.         utilities on your DOS PATH, and that they are named 
  205.         PKZIP/PKUNZIP, LHA, or ARJ. If you have renamed them, 
  206.         BWSave will not be able to find them and may work in 
  207.         strange and wonderous ways.                
  208.  
  209.  
  210.         Legal Caveats: 
  211.         
  212.         While I have tried my hardest to develop and test this 
  213.         software to ensure that there are no bugs in it, I make 
  214.         no claim that it is perfect. If any bugs are found, I 
  215.         would appreciate a report of them, but I take no 
  216.         responsibility for any damage they may do. 
  217.         
  218.         This software is copyrighted material. It may be 
  219.         distributed freely, but only in complete and unmodified 
  220.         form. If you are going to use it regularly, you must 
  221.         register it. As this is a simple utility that I wrote 
  222.         because I wanted one, I'm only asking for $5. If it isn't 
  223.         worth $5 to you, delete it from your disk. Remember, 
  224.         shareware only works if you pay. 
  225.  
  226.  
  227.         Thanks go to: 
  228.         
  229.         George Hatchew, author of the Blue Wave mail system. 
  230.         
  231.         Fabrice Bellard, author of Lzexe. 
  232.         
  233.         Bob Stout, keeper of the C_Echo SNIPPETs. 
  234.         
  235.         Heinz Ozwirk, for a modified version of his archiver 
  236.         detection code. 
  237.         
  238.         Walter Bright, for the file_copy() function. 
  239.         
  240.         Ray Gardner, for a much faster insertion sort than I 
  241.         could write. 
  242.  
  243.         Michael Tatum and George Worley for pointing out a few 
  244.         bugs that I missed in version 1.0.   
  245.         
  246.         George Worley for pointing out a bug in 1.1, also. 
  247.  
  248.  
  249.         New in version 1.1: 
  250.         
  251.         Deleting all of the messages in a message area was 
  252.         confusing BWSave which would then run out of memory 
  253.         trying to add a new message to the saved packet; fixed. 
  254.         Only about 120 messages could be saved; fixed. I tested 
  255.         saving up to over 1600 messages and had no problems with 
  256.         BWSave or Blue Wave handling the packet. 
  257.         
  258.  
  259.         New in version 1.2: 
  260.         
  261.         BWSave was producing a <BBS Name>.MIX file that the Blue 
  262.         Wave reader couldn't work with. It appeared that BWSave 
  263.         was not saving some messages marked for saving, but in 
  264.         fact the messages were in the save packet; you just 
  265.         couldn't see them with the Blue Wave reader. As far as I 
  266.         can tell, using the 1.2 version of BWSave will 'correct' 
  267.         the broken save packet and all saved messages will show 
  268.         up automagically. 
  269.         
  270.  
  271.         New in version 1.3: 
  272.         
  273.         Added '/all' switch to save _all_ messages in the source 
  274.         mail packet regardless of the Mark status.   
  275.  
  276.         Added '/conf=' switch to save all messages from a 
  277.         specific conference. 
  278.         
  279.         Added '/noinf' switch to suppress copying of the 
  280.         BBS_NAME.INF file from the source packet. 
  281.         
  282.         Added '/unread' switch to change the 'Read' status of all 
  283.         messages moved to the destination packet. 
  284.         
  285.         Fixed (finally, I hope) the bug that was producing what 
  286.         appeared to be duplicated messages if the destination 
  287.         packet had originally been created by a Blue Wave door. 
  288.         
  289.         Changed sorting algorthms to what should be a faster one, 
  290.         especially on large destination packets. 
  291.         
  292.         Added 'spinner' to the sort so that BWSave doesn't look 
  293.         like it's not doing anything while the messages are being 
  294.         put in the proper order. 
  295.         
  296.         Added wild card expansion for the source packet name(s) 
  297.         and multiple source packet handling without recompressing 
  298.         the destination packet each time. 
  299.         
  300.         Fixed some memory allocation leaks and cleaned up some 
  301.         memory use, allowing BWSave to handle more messages in 
  302.         the destination packet (now can handle up to 2360 
  303.         messages in the destination packet). 
  304.         
  305.         Removed display of conference titles. 
  306.         
  307.         Added conference area tag to display of message being 
  308.         saved. 
  309.         
  310.         Added 'xx messages moved to archive packet.' to end of 
  311.         BWSave's execution. 
  312.         
  313.         
  314.         In The Works: 
  315.         
  316.         Unlimited size destination packets. This will probably be 
  317.         somewhat slower than the current memory-based approach, 
  318.         so it may be an option rather than the default behavior. 
  319.         
  320.         OS/2 native version of BWSave. The current BWSave was 
  321.         develloped and tested in a DOX box under OS/2, but a 32-
  322.         bit 'native' version should be out this summer. A 32-bit 
  323.         DOS version may also be done at the same time. 
  324.         
  325.         User-modifiable configuration file for the archiver 
  326.         command lines, default command line switches, and other 
  327.         information. 
  328.         
  329.         Updating PKTSTATS.BW file directly so that the 
  330.         destination packet always displays correctly in the 
  331.         packet list window of Blue Wave. 
  332.         
  333.         More command line options. 
  334.  
  335.  
  336.         For Those Who Are Interested: This software was written 
  337.         in the C language, using Microsoft's C compiler ver. 
  338.         6.00, and compressed with Fabrice Bellard's Lzexe file 
  339.         compressor. 
  340.  
  341.  
  342.         Contacting the Author: 
  343.          
  344.         U.S. Mail:      David Gersic 
  345.         927 E. Garden St. 
  346.         DeKalb, Il 60115 
  347.         (815) 753-8548 
  348.  
  349.         BITNET:         A02DAG1@NIU.BITNET 
  350.  
  351.         Internet:       a02dag1@noc.niu.edu 
  352.  
  353.         FidoNet:        1:11/70 
  354.  
  355.  
  356.         BWSave   
  357.         (c) Copyright  David A. Gersic 1993.  All rights reserved 
  358.