Category : Utilities for DOS and Windows Machines
Archive   : ASZR201.ZIP
Filename : AS.DOC

 
Output of file : AS.DOC contained in archive : ASZR201.ZIP

+----------------------------------------------------+
| Archive Sizer, (C) Copyright 1991-93, Scott Jibben |
| Version 2.01 |
+----------------------------------------------------+


This is a list of the files that should accompany this software
package:

FILE_ID.DIZ - BBS Description File.
AS.DOC - Archive Sizer Documentation.
DISTSAMP.DOC - Sample of a distribution license.
SITESAMP.DOC - Sample of a site license.
SITEINFO.DOC - Information and applications of licensing.
LICENSE.DOC - License for Archive Sizer software.
PRICE.DOC - Pricing guidelines for site/distribution licenses.
ORDERFRM.DOC - The order form.
CC-ORDER.DOC - Information to register by credit card.
AS.EXE - Archive Sizer executable.
CATALOG.JSW - Information on Jibben Software Products.
WHATSNEW.TXT - The Version History of Archive Sizer.
AVEXTRA.TXT - Information regarding PKZIP AV codes.
ARJ-SEC.TXT - Information regarding ARJ Security envelope.


What this software does

This software is a file sizing utility. It supports two modes of
operation.

1. It can size any type of file to a desired size creating
multiple files with the *.AS file extension. These file will be
exactly the size requested except for the last file created.
Using this mode of operation you will be able to size any file
to your requirements. The only disadvantage of using this
method is that you will have to use Archive Sizer to "reassemble"
the files back to the original file.

2. It can size files created by archive/compression software to
your desired size. This will create multiple files that retain
compatibility with the software that created the archive. The
only disadvantage to using this method is if the internal
compressed files are larger than the requested size. Archive Sizer
can't force the files to be smaller and retain compatibility. In
this case it is recommended to use method 1.

The current compression software files that Archive Sizer supports
are:

ARC created by System Enhancements Associates ARC software.
ARJ created by Robert K. Jung's ARJ software.
HYP created by P. Sawatzki and K.P. Nischke's Hyper software.
LZH created by Haruyasu Yoshizaki's LHA software.
ZIP created by PKWare's PKZip (tm) software.



Requirements for Archive Sizer

Archive Sizer allocates memory as needed when processing. However, I
suggest that you have at least 200KB of free memory to run it.
If you are going to process large Arc/Arj/Hyp/Lzh/Zip files (with a lot
of files, not total size), I suggest that you have 400KB of free memory
to run Archive Sizer.


Installation Instructions

It is relatively simple to install Archive Sizer. All you have to do
is copy the files to a subdirectory that is listed in your PATH
statement in your AUTOEXEC.BAT file. You could also just create a
new subdirectory, copy the files there, and then add the new sub-
directory to the PATH statement. I won't go into the details of making
subdirectories and modifying your path as you should have good examples
of this in your DOS manual.




The concept of Shareware

Archive Sizer is being released as a Shareware product. Shareware is
a marketing concept, in which you get to try out a software package
for a period of time. If you find that the software is useful
to you (you are still using it), you are obligated to send in a
registration fee for that software to the author.

Archive Sizer's trial period is 21 days. That means, once you start
using Archive Sizer, you have 21 days to decide whether or not it is
useful to you. If it is useful, please promptly send in the requested
registration fee. If it is not useful, you are expected to delete it
and stop using it.

Archive Sizer is fully functional. However, it has a message that will
appear every time it is used to size or reassemble files.

Here's what you get when you register (Please use ORDER.FRM to order
this software):

1. Support. You can call and leave e-mail to me on any of the BBS'
listed in the Technical Support section of this document or
CompuServe and get a response from me. I will more than likely
answer all questions, but the registered individuals will
definitely get top priority. You will also receive unlimited
telephone support for the program. Registered users will get a
phone number that they will be able to use to receive support
between the hours of 6:00 pm - 10:00 pm (Central Standard Time)
Monday-Friday.

2. You will receive a disk with the most recent version of Archive
Sizer. The software will also have the registration reminder
screen removed. Your name and serial number will also be displayed
when the software is run.

3. Special access to new products. You will be allowed access to
beta test any software package that I'm in the process of creating.
The beta software will be available only on the Warehouse BBS.
Also you must make arrangements with Jibben Software to get access
to the new software. (see Technical Support section of this
document for details).

4. You will also have low cost upgrades of this software.



Advantages of Using Archive Sizer

I've designed Archive Sizer to make the least demands on your
hardware. Archive Sizer is at least 2 times faster than any other
software package of this type for sizing archive files (Arc/Arj/Hyp
/Lzh/Zip). In some instances, I've found it to be up to 10 times
faster. I wrote it for creating/reassembling *.AS files as fast as
possible as well.

One other benefit from using Archive Sizer is the amount of disk
space it requires to process an archive file. My closest competitor
requires 2-3 times the disk space of the original file, ie, if
you had a 2MB ZIP file you would have to have up to 6MB of free
disk space in order to break it up! Archive Sizer automatically
determines the disk space required and will tell you if you don't
have enough BEFORE you create the files.

The algorithm in which I calculate the amount of files to put in a
archive file is highly optimized. Archive Sizer will sometimes have
one less file than other software packages of this type and the files
will be closer to the requested size.

Archive Sizer can handle any file created using PKZIP (tm). All other
software packages of this type that I've seen, have the tendency to
crash if the ZIP file is too large or there are too many files in
the ZIP file. One of my beta testers ran AS on a 170 Megabyte Zip
file and AS processed it without problems.

Archive Sizer is also the only software package that I know of that
supports archive file formats as well as any file sizing.

As far as I know, Archive Sizer is the only sizing utility for Arc,
Arj, Hyper, and Lzh files.



Why Archive Sizer will not Re-Assemble Archive Files

Archive Sizer was never intended to be used to reassemble archive
files, only *.AS files. At first thought, it may seem unreasonable to
you, but there are several reasons why. Hopefully after reading the
main reasons you'll understand why I chose not to.

1. Some archivers already provide the ability to combine archives
(ARJ).

2. There would be no way for AS to 'know' how many files are in a set.
With the *.AS file standard, I can store the number of split files
in the file. With the archives, there is no provision for this.
For instance, if you would tell it to reassemble myzip-01.zip, how
many files should AS expect to put together? Since modifying the
archives format would make it a 'corrupted' file, there is no way to
track this.

3. The other problem is that people would expect when they split an
archive and then reassemble, that it would be identical to the
original file. AS/ZC are so effective on creating files that match
the size parm because they grab files from anywhere in the archive
to create them. You can see this for yourself, just split a zip and
compare the files in xxx-01.zip to the original xxx. You'll notice
that I don't just take the first so many files until the size hits
the limit and then start the next file. xxx-01.zip can contain the
1st, 8th, 22nd, 30th, etc. files. Given this fact, it is impossible
to reassemble a archive file (zip) back to it's original state.
There is no way for me to flag each file as being the 1st, 4th, etc.
file of the original.

4. Finally, I have to ask you, "Why?". I seriously wonder why you
would want to put the zips back together. The files still unzip
fine. Why take the _extra_ step to reassemble the files into one
file, then unzip the one big file? Isn't it easier to just run
something like "PKUNZIP mym8-?.zip". This one command will unzip
all the zips, mym8-1, mym8-2, etc. Just use the '?' where the
numbers are in the zips.



Using Archive Sizer

The software is fairly straight-forward and easy to use. In fact,
I doubt that you will need to read this document in order to be
able to use the software. Archive Sizer will always display all of
your options when you just type in AS and press Enter. The
following is a list of the options with their descriptions. Since
there are two modes of operating AS, I've listed the examples for
these modes separately following the parameter descriptions.


+------------------------+
| Parameter Descriptions |
+------------------------+

[/L] - This option causes Archive Sizer to display its license
information and information about contacting the author
for support.

[file] - This parameter is to be replaced with the name of the
file that you wish to size. If there is an archive file
in the location that you've specified, AS will be able to
detect the file by the files extension. Therefore, you
would be able to just type in ARCFILE instead of
ARCFILE.ARC. AS will not process a file if it finds more
than one file with the supported file extensions (if you
specify ABC and there is an ABC.ARC and ABC.ZIP file in
that location). In order for AS to process a file in this
case you must apply the files extension as well. If
you specify a file that doesn't have one of the supported
file extensions, AS will default to the *.AS file format.
You can also 'force' this method of sizing with the /A
option. Also, if you specify just an *.AS file, (no other
parameters), AS will report information on the *.AS file.

[max size] - This is option is used for specifying the maximum size of
the files that you wish to create. AS will use this
value in attempting to keep your files a certain size or
smaller. There are several ways to specify this size.
The first is to just specify a size in bytes, like 200000.
Note that there are NO commas in this number. The other
two methods are 'preset' values for floppy disk sizes.
The old Zip Chunker presets are available, /5L, /5H, /3L,
and /3H. There is also a new one called /3E for the new
2.88MB floppy disks. The last method is using the /S:
option. After /S: you specify the size of the floppy that
you wish to size to. The list of different options is
listed on the info screen. For example, to size for a
3.5" high density floppy, the option would be /S:1.44.
The default [max size] is 1.44MB.

[/E] - Using this option will cause Archive Sizer to erase the
original archive file. This only works for archive files.
NOTE: It has been disabled for *.AS files.


+------------------------+
| Parameter Descriptions |
+------------------------+

[/F] - This option is only valid for archive files, NOT *.AS
files. It is used to make AS size the resulting files so
that when the new files are uncompressed they will fit on
the [max size] that you specified using a floppy size.
Note: this only works when using a valid floppy disk
preset (see the [max size] option).

[/D:path] - This option is used to tell AS where to put the files that
it creates. This is how you tell AS to put the new files
on a floppy disk. AS will prompt you to put in a new
floppy disk when it is needed. You can also use this
option to put the files on another hard disk or
sub-directory. It will work as long as you provide a
valid destination. Note: when using this option with a
floppy disk size preset (see [max size] option), the disk
must be able to support the size you requested. Also,
when sizing to a floppy drive, make sure you have enough
blank, formatted disks available for the process.

[/A] - This option is used for 'force' sizing the file into
an *.AS file. This is helpful if you want to size an
archive file to fit on a floppy when there are internal
files that are larger than the disk size you are
attempting to size for.

[/R] - This option is used to reassemble *.AS files back to the
original file. It is simple to use. Just supply one of
the *.AS filenames and this option and AS will reassemble
it back together.

[/M] - This option will report the smallest allowable value for
[max size]. It is useful for determining the value that
you can use for [max size] before making the attempt to
size a file.

[/N] - This option will report the number of new files that will
be created.

[/T] - This option will allow Archive Sizer to use the current
date and time for the new files that are created.

[/K] - This option will allow you to keep the backup files in ARJ
files. It only works for ARJ files. The default is to
delete backup files in ARJ ( version 2.30+ ) files.

[/L#] - This option will allow you to leave # amount of space ( in
bytes ) on the first file. It works with *.AS and archive
files. The primary use for this option is to 'leave
space' in the first file to reserve room for other
software on that disk.


+----------+
| Examples |
+----------+

For All Types of Files
----------------------

C:\WORK>AS

The example above will display Archive Sizer's Information screen. This
displays all the available command line options.


C:\WORK>AS \L

The example above will display Archive Sizer's license information. It
also displays information about support BBS and the authors CompuServe
ID.


C:\WORK>AS workdata /m

The example above will display the smallest allowable size for the [max
size] parameter for sizing.


C:\WORK>AS file 500000 /n

The example above will display the number of new files that will be
created when sizing the file. It doesn't actually size the file.


C:\WORK>AS myfile 500000 /t

The example above will size myfile to be 500,000 bytes and will use the
current system date and time on the files.

C:\WORK>AS myfile /L50000

The example above will size myfile to fit on 3.5" high density floppy
disks. However, the first file will be 50,000 bytes smaller than the
rest. This would allow for the storage of AS.EXE (or other 'install'
type programs) on the first disk of the split files.


+----------+
| Examples |
+----------+

For Archive Files
-----------------

Here are some examples on the use of AS for archive files:

C:\WORK>AS workdata

The above example will break out files from WORKDATA that will
be equal to or smaller than the size of a file that would fit on a
3.5" HD disk. It will also save the original file. WORKDATA can be a
Arc, Arj, Hyp, Lzh, or Zip file. AS will automatically detect the file
by it's filename extension. AS will not process the file if there are
two or more WORKDATA files with any combination of extensions; Arc,
Arj, Hyp, Lzh, or Zip. If WORKDATA doesn't have one of the support
file extensions (or any extension) then AS will default to sizing as an
*.AS file.


C:\WORK>AS 123data.zip /5L /E

The above example will break out files from 123DATA.ZIP and these
files will be equal to or smaller than what would fit on a 5.25"
low density disk. It will delete 123DATA.ZIP when it is done.


C:\WORK>as 123data.zip /S:360 /E

The above example will work exactly as the previous example. The only
difference is the use of the /S: parameter instead of /5l.


C:\TELIX\UL>AS e:\games\biggame.lzh 200000

The above example will break out files from E:\GAMES\BIGGAME.LZH
and these files will be equal to or smaller than 200,000 bytes.
The original file, E:\GAMES\BIGGAME.LZH, will be saved as well.
Also, the new LZH files will be created in C:\TELIX\UL.


C:\EXCEL\XLS>AS XLSHEETS.LZH /s:1.44 /d:a:

The above example will break out files from XLSHEETS.LZH. The new
files will fit on a 1.44MB floppy. The files will be created on
drive A:. When the floppy is filled with a file, Archive Sizer will
prompt for a formatted blank disk for the next file. The original
file will be saved. This process requires NO hard disk space, only
formatted blank floppy disks. Also, AS will check to determine if the
size you specified matches type of floppy hardware is available. At
any prompt you can press Esc to abort the process.


+----------+
| Examples |
+----------+

C:\CLIPART\PICS>AS CA-PICS.ARC /s:1.44 /f

The above example will break out files from CAP-PICS.ARC. The new Arc
files when uncompressed will fit on a 1.44MB floppy disk. The original
file will be saved. This process requires NO hard disk space, only
formatted blank floppy disks. Also, AS will check to determine if the
size you specified matches type of floppy hardware is available. At
any prompt you can press Esc to abort the process.


C:\WORK>as accounts /S:360 /K

The above example will process the ACCOUNTS.ARJ file and keep the
backup files in the file. If you wanted to delete the backup files,
you would not use the /K option.



For *.AS Files
--------------

C:\WORK>as bigdb-1

The above example will display the *.AS file information for the
BIGDB-1.AS file. Note: the file extension is optional.


C:\WORK>as bigdata.db

The above example will size the BIGDATA.DB file into *.AS files. The
new *.AS files will be created in the C:\WORK directory. BIGDATA.DB
will not be erased when processing is completed.


C:\WORK>as data.lzh /a

The above example will size the DATA.LZH file into *.AS files. The new
*.AS files will be created in the C:\WORK directory. Note: the /A
option over-rides the normal LZH file sizing. DATA.LZH will not be
erased when processing is completed.


C:\WORK>as bigdata.db /d:a: /s:1.44

The above example will size the BIGDATA.DB file into *.AS files. The
new *.AS files will be created on the A: drive (if A: is a 1.44MB
drive). Archive Sizer will prompt for new disks. This option requires
NO hard disk space for processing. BIGDATA.DB will not be erased when
processing is completed.


+----------+
| Examples |
+----------+

C:\WORK>as bigdb-1 /r

The above example will reassemble the *.AS files in the BIGDB-#.AS
series of file names.


C:\WORK>as bigdb-3 /r

The above example will reassemble the *.AS files in the BIGDB-?.AS
series of file names. Note: Archive Sizer will start at the first file
name in the series even though the file above is not the first file.


C:\WORK>as bigdb-1 /r /d:d:\access

The above example will reassemble the *.AS files in the BIGDB-?.AS
series of file names. The created file will be placed in the D:\ACCESS
directory.

C:\WORK>as a:bigdb-1 /r

The above example will reassemble the *.AS files from the A: floppy
drive. When AS needs another disk, it will prompt for it.



Miscellaneous

Archive Sizer will not allow you to process a file if there isn't
enough free disk space available.

If Archive Sizer finds a file in the original archive file that is
larger than the maximum size specified, it will give you the option of
continuing to process the archive file. The result of this type of
operation is that there will be some files that have only one file in
them but they will still be larger than the maximum size.

If the original file is already smaller than the maximum size then
Archive Sizer will tell you and not process the file.

Archive Sizer will in most cases be able to detect that a file passed
to it is a valid archive file or not. It will not be able to detect if
the internal files have been corrupted, though.

Archive Sizer CAN handle password encrypted files and retain the
password in ZIP files. It can also retain the encryption and password
for 'garbled' ARJ files.


+--------------------------------+
| Archive Sizer Programming Info |
+--------------------------------+


Archive Sizer will return the following DOS Error Levels when it
aborts in an error state:

1. Out of memory.
2. Incorrect [max size] for floppy drive specified.

3. Can't open file.
4. Zip file is corrupt/invalid or multi-volume.
5. Can't process multi-volume Zip files.
6. File version isn't compatible with Archive Sizer.
7. File is already an *.AS file.
8. The requested max size will create too many files.
9. File is not an *.AS file.
10. Process aborted.
11. There isn't enough disk space available to process file(s).
12. The internal data of this *.AS is corrupt/invalid.
13. Arc file is corrupt/invalid.
14. Lzh file is corrupt/invalid.
15. A file exists that AS wanted to create.
16. Couldn't find the requested file.
17. The file name given isn't specific enough.
18. The [max size] value is invalid.
19. Arj file is corrupt/invalid.
20. Can't process multi-volume ARJ files.
21. Can't process Secured ARJ files.
22. Hyper file is corrupt/invalid.
23. Unknown/All other errors.


This is the format of Archive Sizer *.AS files (in C notation):

struct as_header {
unsigned long signature; // always 0x10af5341
unsigned int version;
char file_name[13];
struct ftime file_date_time; // Borland C++ ftime struct
int file_attributes;
unsigned long this_file_size;
unsigned long total_file_size;
unsigned long this_file_num;
unsigned long total_file_num;
unsigned long crc32;
unsigned long original_crc32;
};

This header will always be present at the beginning of an *.AS file.



Technical Data

Archive Sizer was written entirely in C++ using Borland C++ 3.1.
This is a partial explanation of AS's speed and size. The other main
reason for AS's speed and size is that I access the archive file
directly vs. making calls to the archiving software.


Technical Support

For technical support I (Scott Jibben) can be reached at the following
on-line systems:

The Warehouse BBS: 612-379-8272 1200-57600 baud V.32bis/HST 16.8K
(N81) - 6 Lines. The Warehouse is my first (main) line of support.
Since I am a co-sysop of this BBS, I usually log on several times a day
to check for email. This BBS is a subscription BBS, however anyone
logging on will receive access rights to the file area where my
software can be downloaded for FREE and a message area that is
dedicated to my software.

Terrapin Station BBS: 612-623-0152 1200-9600 V.32 (N81)
Terrapin Station is the second home for Archive Sizer. This BBS is
used by many professional computer people. One of it's focal points is
programming, but there are several other topics that are discussed on
this BBS. I usually check into this BBS at least once a week.

Painters Workshop BBS: 414-722-0242 1200-14400 V.32bis/HST (N81)
Painters Workshop is Distribution Site #003 for Jibben Software. If
you need help with Jibben Software products the sysop, Duane Heller
will be able to help you. I log onto this BBS once every two weeks.
Duane contacts me at least once a week.

CompuServe:
My CompuServe ID is 72657,3303. Feel free to send me an E-Mail any
time. I usually log on to CompuServe at least once a day.


Acknowledgments


I would like to thank those people that have assisted me in the
development of this software:

Travis Carter and Randy Clark, sysops of the Warehouse BBS, for testing
the software and providing a message forum for supporting software
written by me.

Chris Edmonson, who gave me some valuable insight on various
methods of designing the dynamic memory allocation code.

Howard Ekman, sysop of Terrapin Station BBS, for providing a second
home for Archive Sizer and testing AS.

Robert Jung, author of ARJ, for testing AS to ensure it works properly
with ARJ archive files. Robert also gave me some timely information
regarding how ARJ files are organized, etc.

Steve Lee (publisher of PC Shareware Magazine) and Steve Townsley
(CompuServe sysop for the UKSHARE forum) for testing AS with new
versions of PKZip and for giving my software such good exposure in the
U.K.

Keith Ledbetter, author of the BEST file finding utility money can
buy; Supersonic Search Tool (SST), for providing valuable information
about the internal file formats of several archiving software
packages. This saved me valuable time and effort.

Kenjirou Okubo and Haruyasu Yoshizaki (Author of LHA) for testing AS to
ensure it works properly with LHA archive files.

Bob Ostrander, editor of Public Brand Software, for testing AS to
make sure that it worked, specifically the /F option.

My wife and daughter, for the patient support and active involvement in
getting this business rolling.

Finally, all of the people who've registered my software. I really
appreciate it!




Disclaimers, etc.


Jibben Software specifically disclaims all other warranties, expressed
or implied, including but not limited to implied warranties of
merchantability and fitness for a particular purpose, functionality or
data integrity. In no event shall Jibben Software be liable for any
loss of profit or any other commercial damage, including but not
limited to special, incidental, consequential or other damages.



Borland is a registered trademark of Borland International, Inc.

PKWARE, PKLITE, PKZIP and PKUNZIP are registered trademarks of PKWare
Incorporated.



  3 Responses to “Category : Utilities for DOS and Windows Machines
Archive   : ASZR201.ZIP
Filename : AS.DOC

  1. Very nice! Thank you for this wonderful archive. I wonder why I found it only now. Long live the BBS file archives!

  2. This is so awesome! 😀 I’d be cool if you could download an entire archive of this at once, though.

  3. But one thing that puzzles me is the “mtswslnkmcjklsdlsbdmMICROSOFT” string. There is an article about it here. It is definitely worth a read: http://www.os2museum.com/wp/mtswslnk/