PKinsert History Documentation (in Reverse Order) Page 1 of 6 Version 6.6 Released November 14th, 1991 New Features ~~~~~~~~~~~~ Auto-park cursor at column/row 1/1 for clearer displays when running in DESQview window. Added logic to compare previous history taglines against each other to filter out duplicates. Eliminated the node number configuration value which was used to create work directories. This new version, using a random number seed, sequentially seeks an available directory name (it always bothered me to keep track of which node number I was using). Also eliminated the configurable Network delay retry attempts value. It's now hard-coded for 5 retries. Added display of errorlevel code on exit. Pound (#) signs within TEXT ENTRIES are replaced with the current node number (except in the Tagline field). Node numbers are retrieved from the Pcboard.Sys and/or Door.Sys file in the current directory. If none is available, the node number defaults to zero (0). Example: Config Value D:\PKINSERT\NODE-#.LOG Becomes D:\PKINSERT\NODE-0.LOG (default value) (/L)OG PATH PARAMETER IS NO LONGER VALID. Using the above feature, it is possible to customize the log file names for every node. Those wishing to retain ONE configuration file in a MULTI-USER environment, and do not have Pcboard.Sys and/or Door.Sys available, you may specify node numbers using the (/N)ode parameter. Bugs Squashed ~~~~~~~~~~~~~ If file swapping went past two on a @filelist it would create a conflict with another open file. Fixed by having the compiler assign free file handles instead of assigning them myself. Version 6.5 Released October 22nd, 1991 Refer to the Pkinsert.Doc manual for upgrade instructions. Special thanks to John Theos from AAxiss BBS for Beta testing. New Features ~~~~~~~~~~~~ Errorlevel 113 exit for 'Unknown Configuration File Format'. Errorlevel 114 exit for 'Unable to Locate File' (see next feature). PKinsert History Documentation (in Reverse Order) Page 2 of 6 Depending on the configuration options chosen, Pkinsert will verify the location of the executable it will need (Pkzip, Pkunzip, and Scan). Since Pkinsert moves around quite a lot (keeps DOS shell commands short), it will ONLY search Pathed directories. Failure to locate a needed file will cause Pkinsert to end with an error. If a Pcboard V14.5a Pcboard.Sys or Door.Sys file exists in the start-up directory, Pkinsert will log the node number, user name, and bps rate (and city if Door.Sys is available). Pkinsert will also use the node number to create it's work directory, overriding a previous node number value. Node number priority sequence follows (least to most): Configuration File Environment Variable Command Line Pcboard.Sys Door.Sys Improved the standard log file output. Now includes many of the same results as the Fail and Pass log files. I finally had time to incorporate a feature which had been pinned on my cork board for quite a while, called "Tagline History". PKinsert will keep a record of past system Taglines in the archive comment screen. SysOps and Users can then track the trajectory an archive took through various systems. This feature is enabled by setting the "Number of Taglines to Keep :" bigger than zero. Pkinsert must also Test, Delete, or Scan in order to pick up the tagline information. When disabled, PKinsert will clear any old Histories. Note - Pkinsert recognizes taglines through a unique 4 byte signature. Other utilities wishing to be compatible or use Pkinsert's tagline info, should use this standard. The 4 byte signature comes immediately after a Cr/Lf sequence in the archive comment. Signature (in Hex): FF 08 xx FF {Tagline} Pkinsert will not delete Pkzip.Exe and Pkunzip.Exe from any file named Pkz###.Exe (where ### is bigger or equal to 110). You can therefore enter Pkzip.Exe and Pkunzip.Exe as filespecs in the Pkinsdel.Lst file, without worrying about killing Pkzip upgrades. :) Previously, if disk space ran short (as specified in configuration file), an archive would be renamed to .Err. In Version 6.5 an archive will be renamed to .Hld (configurable) if a file measures 0 bytes, disk space runs out, or the file is not a valid archive (Rename option must be enabled). Another new feature is the '@Filelist' command line option. Any filename preceded with an '@' symbol will be expected to contain a list of files to process. Each file specification in this list must PKinsert History Documentation (in Reverse Order) Page 3 of 6 occupy a separate line. Wildcarding is accepted. ie. Files.Lst ~~~~~~~~~ D:\Arc\*.Zip Archive.Zip E:\Main\Files\Backup.Z?? \Work\A*.Tmp You may also use a combination of directory pipes. ie. C:\>Dir D:\Arc >>Files.Lst C:\>Dir E:\Main\Files\*.Zip >>Files.Lst Instead of entering redundant directory information you can tell Pkinsert to change drives and directories. Use the 'Cd' command followed by a space, or back-slash, and the directory name. ie. Files.Lst ~~~~~~~~~ Archive.Zip Cd\Arc *.Zip Cd E:\Main\Files Good*.Zip Bad*.Old Ugly*.$$$ Cd\C:\Temp Backup.Z?? These techniques can be used together for greatest versatility. Note - Normal array size boundaries apply ONLY to wildcards within this list. There is NO LIMIT to the amount of filespecs contained in the file list. If you have a directory of several thousand archives you could use a command sequence along these lines: C:\>Dir J:\Uploads\*.Zip >>Files.Lst C:\>Pkinsert @*.Lst Wildcarding is also acceptable for filelist names. Bugs Squashed ~~~~~~~~~~~~~ Virus Comment files where not being added to the extended fail log. I was using an "AND" where it should have been "OR". Redundant CR/LF sequences where being added under odd circumstances. Version 6.4 Released September 22nd, 1991 Set maximum file read length to 8k. This solves a string overflow PKinsert History Documentation (in Reverse Order) Page 4 of 6 problem reading an extremely large capture file (created by shelling to Pkzip). In cases where the limit is exceeded, an ///EOI/// (end-of-input) marker will be displayed. This has no other effect than limiting the amount of text scrolled on the screen. In order to properly link with other PCBoard archive utilities, the handling of the Extended Pass and Fail logs has changed. Details follow. If an Extended Pass log already exists, Pkinsert will rename this log to Fail before appending it's own Fail report. Ie. The archive has passed test #1 which created Pcbpass.Txt. Then comes Pkinsert (test #2) and the archive fails. The Pcbpass.Txt from test #1 is renamed to Pcbfail.Txt and Pkinsert appends it's report. If an Extended Fail log already exists, it will be used to append the Pass or Fail reports. Ie. The archive could fail test #1 but pass Pkinsert (test #2). In this case Pkinsert would append it's Pcbpass.Txt report to the already existing Pcbfail.Txt log. Batch files should therefore start with deleting any old Pass or Fail logs. Otherwise Pkinsert will simply append it's reports. Version 6.3 Released September 8th, 1991 Pkinsert will recognize and process self-extracting Zips. File reading and swapping from disk was unbearable. It turns out that for every record accessed, the last position within a file was being lost. I have to apologize to everyone for this one ... When renaming was enabled and Pkinsert ran out of work space (or other disk related errors), it would exit without renaming the archive. Pkinsert will now rename archives to .Err on these occasions. In a batch file you could move these .Err files to a directory for re-processing under supervision. If a nested archive was corrupt and file renaming was set to No, Pkinsert wouldn't clean up it's work directories. After extracting nested archives, Pkinsert wouldn't kill them as it was supposed to. Version 6.2 Released August 10, 1991 Reason for Upgrade ~~~~~~~~~~~~~~~~~~ Matthew Cooley reported an incompatibility problem with the new PKinsert History Documentation (in Reverse Order) Page 5 of 6 PCBoard V14.5a (Beta) features. New Features ~~~~~~~~~~~~ /D Command line option. Path to Pcb upload description file. /TEST Command line option. Zero byte file errorlevel code 112. Standard tagline signature developed. In HEX: FF 08 xx FF . Bugs Squashed ~~~~~~~~~~~~~ If a virus was found and rename was disabled, Pkinsert would not clean it's work directories. Version 6.1 Released August 2, 1991 Split code from 3 to 5 modules. Pkinsert will display any size status file. V6.0 was limited to 6k. If Pass/Fail extended logs exist, Pkinsert will delete them before creating a new one. This saves 2 lines in the Pcbtest.Bat file. Process error codes from Add and Delete functions. They are the ones which can report if archive is read-only. Clean-up work directories before Add and Delete functions. This gives Pkzip a bit more room to create it's work file. Check files for unique 4 byte Zip signature. This is more reliable than using file name extensions. No matter what name an archive carries, Pkinsert will test it. New Errorlevel code 111 for illegal archive compression used. Pkinsert code stands at 2,461 lines in five Quick Basic V4.5 modules and 108,814 bytes compiled. Version 6.0 Released July 25, 1991 There's been so many features added, I can't remember them all. The following where the major ones. Total revamp of the configuration module. Pkinsert will process `nested' archives. Verbose log files based on results. Configurable disk swapping. Exit with Dos error levels. etc. The current code stands at 2,260 lines in Quick Basic V4.5. PKinsert History Documentation (in Reverse Order) Page 6 of 6 Special thanks to Steve Greenspon, aka Doodle Bug, for his suggestions, testing, and listening to me rant and rave about the latest sub or function. (grin) Version 5.1 Released April 27, 1991 Fixed an incompatibility problem with COUNTRY.SYS. Thanks to Yan Wolf from Top 50 BBS in Paris, France for his help in tracking down this problem. Version 5.0 Released March 13, 1991 10k Smaller and much faster! New features include ... - Random work directory names. - 0 byte files are no longer processed. - Complete activity logging to disk. - All options can be toggled on or off. - Configuration path may be entered by environment variable or command line. - Various configuration file names may be used. - PKinsert will change drives and directories as it handles archives for shorter DOS commands. - PKinsert may add the virus scanner version to the archive comment. - Compatible with Digital Research DOS 5.0 (actually, this is what prompted this new release). Version 4.02 Fixed the colours in PKinserts logo. Also fixed a variable I had forgotten about. PKinsert will now process numerous file specs again! . PKTMP environment variable is now external. Version 4.00 PKinsert now works with DOS4! ;-) Corrupted archives are caught and renamed. Virus checking is also possible using McAfee Associates' SCAN.EXE program. Work drive can be selected for quicker processing on a RAM Drive. Configuration is now internal. No more messin' around with a word processor. And last but not least PKinsert goes COLOUR! Version 3.20 Added support for DOSv4.0. Uses prodoor's TAGLINE environment variable. Will now skip the archive test if set to [N]o. Version 3.1 Got rid of a few bugs. The timer feature in v3.0 wasn't working and I got rid of it. Also shortened much of PKinsert's output. Error trapping is also much improved! Let's hope it won't need it.