home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Media Share 9
/
MEDIASHARE_09.ISO
/
pcboard
/
pcbwrap.zip
/
PCBWRAP.DOC
< prev
next >
Wrap
Text File
|
1993-07-14
|
7KB
|
163 lines
PCBWrap
Free DOS utility: PCBoard filelist reformatter
Version 1.00 - July 14, 1993
(c) 1993
by
David Daniel Anderson
Reign Ware
PCBWrap reformats downloaded PCBoard directory list "short" (45 character)
description lines into "long" (79 character) lines.
WARNING!!! PCBWrap OVERWRITES THE INPUT FILE, SO MAKE SURE THAT YOU EITHER WORK
ON A COPY OF YOUR FILES OR YOU KNOW WHAT YOU ARE DOING BEFORE YOU START.
(If you want them to be reformatted as they originally were, use the following
command [without the quotes]: "PCBWrap filename 31:1", which is very close.)
In scanned or downloaded PCBoard directory lists, after the first line of each
file's name/ size/ date/ description, all subsequent descriptor lines for that
filename have a left margin of 33. PCBWrap will decrease that to as little as
three (" | "). After the reformatting process, the lists will typically be
*at least* 20% smaller. PCBWrap processes about 1 meg/ minute on my 386sx-20
with a 120mb/15ms hard drive and 386MAX/Super PC-Kwik managing 8 megs RAM.
Usage: PCBWrap file(s)_to_wrap [left_margin[:padding] (1..31, default = 1:1)]
PCBWrap takes up to two parameters on the command line. The first is mandatory.
This is the filename (or names), which can include the DOS wildcards of "*"
and "?" (e.g. dos*.*). The second, which is optional, is the left margin
specification. Note: the left margin itself is composed of at least one space,
the "|" character, and at least one more (padding) space. Therefore, the
numbers in the second parameter signify how many spaces precede and follow
the "|" character (the sum must not exceed 32). However, you must use a
*colon* in the command line, since the "|" character is the DOS piping symbol.
Thus, the description for SHEZ90A.ZIP was changed from the first to the
second by specifying: "PCBWrap uploads", and to the third by specifying:
"PCBWrap uploads 12:10".
SHEZ90A.ZIP 233995 05-13-93 SHEZ v9.0A - ASP - The Premier Compression
Shell. Supports ZIP,LHA,ZOO,ARC,ARJ,SQZ,PAK
Completely redesigned mouse support. Other
new
options. Debugged new release Uploaded by Jim
Derr
SHEZ90A.ZIP 233995 05-13-93 SHEZ v9.0A - ASP - The Premier Compression
| Shell. Supports ZIP,LHA,ZOO,ARC,ARJ,SQZ,PAK Completely redesigned mouse
| support. Other new options. Debugged new release Uploaded by Jim Derr
SHEZ90A.ZIP 233995 05-13-93 SHEZ v9.0A - ASP - The Premier Compression
| Shell. Supports ZIP,LHA,ZOO,ARC,ARJ,SQZ,PAK Completely
| redesigned mouse support. Other new options. Debugged
| new release Uploaded by Jim Derr
NOTE!: PCBWrap will also AUTOMATICALLY remove the "Uploaded by:..." and
"Files:..." lines which PCBoard adds. However, you can override this
by SETting [DOS env. var.] "nostrip=true".
(At the "C:\" prompt type "set nostrip=true" - without the quotes.)
===============================================================================
PCBWrap is similar in function to Jim Robeson's COPYDESC v1.02, but more
powerful *and* smarter. I have collected his statements about COPYDESC below,
and follow each with comments about how PCBWrap compares.
Features of COPYDESC:
[by Jim Robeson; The Cricket BBS, Pacific Grove CA, 408-373-3773]
1) converts short lines to long lines
>>> PCBWrap ditto.
2) adjustable positioning of
2a) new text by the user
>>> PCBWrap ditto. [I handled this somewhat differently.]
2b) '|' character by the user
>>> PCBWrap ditto. [I handled this somewhat differently.]
3) The program is free.
>>> PCBWrap ditto. [I can't imagine charging for it either.]
4) includes Turbo C source.
>>> PCBWrap includes PASCAL (BP7) source. [It's all I know, but it works.]
5) parses the text so everything fits properly
>>> PCBWrap ditto. [Removes existing preceding "|" characters and spaces.]
6) packs the text so everything fits properly
>>> PCBWrap ditto. [Multiple spaces are changed to single spaces.]
7) It might work in the PCBTEST environment, but I haven't tested it that way.
>>> PCBWrap ditto. [I don't have a clue as to what this is.]
8) "I do know that it stuffs blanks between split-line hyphenated words.
Since that doesn't bother me, consider that "by design". <g>"
>>> PCBWrap is smarter, and does *not* stuff the blanks. [It did bother me.]
9) Also, it might try to compress unique separator lines.
>>> PCBWrap shouldn't, due to the extensive validating it does.
10) The test for the "first-line" of a description includes:
10a) a numeric in column 21,
>>> PCBWrap is more thorough, by testing for a 7-digit numeric value (the
filesize) ending in column 21. If it is less than 7-digits, it can only
be preceded by spaces.
10b) a '-' in each of 26 & 29,
>>> PCBWrap ditto. PCBWrap also checks for spaces in columns 22 and 23
(between the filesize and filedate).
10c) and an "acceptable" DOS filename character in column 1.
the '&' is not acceptable
no lower case alpha allowed ....
>>> PCBWrap accepts *any* non-space character in column 1. More flexible,
but not necessarily good. For my purposes, it is preferable.
11) description data in line one is NOT re-packed, it is taken as-is.
>>> PCBWrap is smarter, and does repack all information in line one - after
column 33.
12) Words might get added to line 1
>>> PCBWrap ditto. This is what both of these programs are supposed to do,
squeeze more text on each line.
13) If run without arguments, a bit of help appears.
>>> PCBWrap ditto, PCBWrap also will show help related to specific errors.
14) "This version will blow up if more than 39-40 lines are found in
any single file description. If a "hang" is experienced, check
the input file for really long descriptions. You could lower the
number of lines! If I continue to modify this, I will add a test
for this condition. Meanwhile, now you know too!"
>>> PCBWrap is smarter, and can handle descriptions containing *any* number
of lines.
15) As lines are being read into the buffer, test for buffer overrun.
If yes, spit out a message, pack what we have, and treat the remainder
of that set as comment lines.
>>> PCBWrap is smarter, and can handle descriptions containing *any* number
of lines. It does not need a buffer, but processes the lines dynamically.
16) Is a column 79 blank [added] in some cases, and if so, is that bad?
>>> PCBWrap *never* adds blanks, and never writes lines with leading or
trailing whitespace.
Finally, as stated before, PCBWrap will also optionally remove the "Files:..."
and "Uploaded by:..." lines while reformatting the file, which is a feature
not included in COPYDESC.
All this in just over half the bytes!