home *** CD-ROM | disk | FTP | other *** search
-
- GEN - The archive generator
- ---------------------------
-
- (c) Wolfgang Thronicke & Friedrich Wichmann
- 1990-1991
-
-
-
- Manual for Version 0.12
-
-
-
- ---------------------------------------------------------------------------
- GEN is public domain. No charge has to be paid for it. Copy and distribute
- it as you like but keep the files of the distribution intact.
- We, the authors, are not liable for any damage resulting from the use of
- this program. Enjoy!
- ---------------------------------------------------------------------------
-
-
- CONTENTS
- --------
-
- 0. Introduction
- 1. Requirements and installation
- 2. Usage
- 3. Examples
- 4. How GEN works
- 5. Problems & Solutions
- 6. How to contact the authors
- 7. References
-
- 0. INTRODUCTION
- ---------------
-
- What is GEN?
-
- GEN is a small tool to create multiple archives with the most
- common compression tools for PCs. The basic aim of this program
- is to build archives with a given maximum size from a collection
- of files. Suppose you have installed a complex multi-file tool
- (as most compilers are!) and want to make a backup so that you can
- restore the installed tool any time you want. And you want to
- use your favorite compression tool to save space. But most of
- them are not capable of making multiple archives with a specified
- size.
-
- Does this sound somewhat familiar to you? Yes, you're right. There
- has been a tool called ZIPPER that was released in 1990 to the
- public. GEN is an enhanced version of this program. We changed the
- name because GEN is not limited to use only one archiver but
- GENerates archives using the most widespread archivers. Most bugs
- of the old ZIPPER release have been removed and some new features
- have been added.
-
- GENs features:
- ■ create multiple archives with a restricted size
- ■ can use different archiving programs
- ■ the same options for different archivers
- ■ autodetect of availiable archivers
- ■ steps through subdirectories (or not)
- ■ can behave like BACKUP
- ■ shell to DOS capability
- ■ diskmode to speed up archive creation on disks
- ■ requires less memory than ZIPPER
- ■ faster than ZIPPER
- ■ less bugs (hope so)
-
-
-
- 1. REQUIREMENTS & INSTALLATION
- ------------------------------
-
- This is all you need to use GEN:
-
- ■ an IBM compatible computer (PC/XT/AT)
- ■ PC-DOS or MS-DOS (preferrable >= Version 3.0)
- ■ at least 512k main memory
-
- This is all you have to do to use GEN:
-
- ■ copy GEN.EXE to any place you like (except NUL)
- ■ if you want to call GEN without issuing the complete
- path where it resides, adjust your PATH variable
- ■ make sure that the archivers you want to use are located in
- directories that can be found in the PATH environment
- variable
- ■ execute GEN.EXE with appropriate options
-
-
- 2. USAGE
- --------
-
- Usually GEN starts collecting files for the archives in
- the directory where it is invoked. This makes it very simple
- to handle a complete structure of subdirectories starting
- from a base directory. However, you can control this by special
- options.
-
- IMPORTANT:
- Please remember to supply enough space for the archives! You must
- at least have twice the space of the archive at the location where
- the archive is created! This is due to the philosophy used in most
- of the archiver programs that create a temporary file before updating
- an archive. Use the option -t<path> or the environment variable TMP
- to select an directory for the temporary archive file if the space
- is too small. For directly archiving to floppy disks please use the
- -d option (see below).
-
-
- General call:
-
- GEN
-
- called without parameters gives a short summary of options
- and supported archivers.
-
-
- GEN <arcspec> [options]* <arcname>
-
-
- arcspec : The type of the archive. This is usually the
- suffix of the archives, e.g. "lzh" for using LHARC or LHA.
- This parameter !must! be given to gen.
-
- List of currently supported archivers:
- lzh -> LHA 2.11 or LHARC 1.13
- ( if both are availiable LHA is used)
- zip -> PKZIP 1.10
- zoo -> ZOO 2.1 (for 2.01 see ENVIRONMENT VARIABLES ->)
- arj -> ARJ 2.00
- arc -> ARC 6.02
-
- Other versions of these archivers will work if they have
- the same options as the ones in the list.
-
- IMPORTANT: For ZOO 2.01 set environment variable ZOOLOW, because the
- old zoo version does not recognize the high compression
- option flag for zoo used by GEN by default.
-
-
- arcname : arcname is a filename specification that denotes the
- location where the archives will be stored. The filename
- can be an arbitrary MS-DOS file specification with the
- restriction that the name part of the file is only 5
- characters long and has no suffix
- e.g.: d:\archiv\demo stores the archives on drive
- D: in the directory ARCHIV
- with names like
- DEMO001.<arctype>
- DEMO002.<arctype>
- ...
-
- options : These parameters control the way the archives are build.
- Only -s must be specified. All other options are
- optional (!?!).
-
- -s<integer> Size of the target archive. <integer> is the maximum size
- of the archives in 1000 bytes. This option is mandatory.
- e.g. -s361 creates archives with 361000 bytes size.
-
- Note ! The number given is NOT a faktor of 1024 (1K).
-
-
- -b backup mode.
- GEN only looks at files with the archive
- bit set. This are files that have not been backed up
- before. After this operation the archive flag is reset.
- With this option you can make incremental backups to
- handle only the lately modified files.
-
- -d<driveletter>
- diskmode.
- GEN creates the archives one after the other
- temporary on drive <driveletter> and copies each to
- the target directory if it is complete. This can give
- significant speedup because you may specify a ramdisk
- for the temporary location or a harddisk when you want
- to write your archives directly to floppy-disks.
-
- -i<startnr> increment to next free archive.
- Usually GEN numbers archives with 1,2,... . With this
- option in effect GEN uses the next free number in
- the target directory if there exist already some archives
- with the specified name. If a number is given after
- -i (e.g. -i5) the archiv numbering will start with it.
-
- -n no recurse.
- GEN will not(!) look into subdirectories.
-
- -o overwrite mode.
- GEN will overwrite any existing archives with the
- same name in the target directory.
-
- -p pause before creating a new archiv.
- GEN waits for a <RETURN> from the user before
- creating a new archive. Useful when directly creating
- archives on floppy disks.
-
- -r[<file>] read filenames to be archived.
- -r without any filename will take filenames or directories
- from standart input. If a directory is specified and -n is
- not in effect all included subdirectories are also handled.
- When specifing filenames wildcards are allowed according to
- DOS specifications (i.e. *.pas will take all files ending
- with .pas). The filenames can also be read from a pipe.
- All '/' are converted '\' to handle MS-DOS conventions. This
- allows to use programs like "stuff (a unixish "find") to
- build the filelists.
- If a filename is given all file and directory specifications
- are read from this file.
-
- -t[<path>] specify temporary path.
- This options lets you specify the location for
- temporary files both for GEN and the used archiver.
- If no path is present GEN will use the environment
- variable TMP if set.
-
- ENVIRONMENT VARIABLES
- ---------------------
- a) GEN
- All Options can be put into the environment variable GEN. This is
- useful if you have one preferred archiver and options you want
- to use every time you call GEN. To set an environment variable
- consult your DOS Manual. The options are handled as if they have
- been given in the commandline.
-
- b) ZOOLOW
- Recently a new version of ZOO has been released that uses an
- alternative high compression method. GEN defaults to this "better"
- method. However, there may be situations which demand the standard
- compression. In these cases set ZOOLOW to a values. If ZOOLOW is not
- set then the high compression method will be used
-
- Example:
- 'set ZOOLOW=1' will disable high compression with ZOO.
-
-
-
- 3. EXAMPLES
- -----------
-
-
- Here are some examples of using GEN.
-
- > Create archives from all files in subdirectory \tools and it's subdirs
- with LHA as standard archiver. Restrict size to 361000 bytes.
- Create archives in \tools with name tool***.lzh
-
- Prepare: cd to \tools
- Call : GEN lzh -s361 tool
-
- > Same as above but don't step through subdirs
-
- Prepare: cd to \tools
- Call : GEN lzh -n -s361 tool
-
- > Same as above but store archives in another dir.
-
- Prepare: cd to \tools
- Call : GEN lzh -s361 \someotherdir\tool
-
- > or on another drive (say d:)
-
- Prepare: cd to \tools
- Call : GEN lzh -s361 d:\tool
-
- > store archives on floppies use hard-disk C: as location for creation.
- direct all temporary files to C:\temp
-
- Prepare: cd to \tools
- Call : GEN lzh -s361 -dc -tc:\temp a:\tool
-
-
- > store all .txt files starting from the current directory.
- Use STUFF
-
- Call : Stuff -name *.txt | GEN lzh -r -s361 d:\tool
-
-
- 4. HOW GEN WORKS
- ----------------
-
- This section gives you some information about the way GEN handles
- the archivers. It may help you to understand its behaviour when
- constructing the archives.
-
- GEN knows about the used archivers. We tried to smoothen out the differences
- between the common archiving programs such as command line options,
- handling of temporary files and other peculiarities.
-
- here is a short semi-algorithmic description of GEN:
-
- - read commandline
- - detect availiable archiver
- - set options
- - read in all files to be archived
- - WHILE not all files processed
- -- check availiable space on drives
- -- begin new archive
- -- LOOP until archive has grown to given size
- ---- put files into archive assuming no compression
- --- ENDLOOP
- - ENDWHILE
-
- GEN tries to put as many files into the archive as possible using
- an iterativ mechanism. It constructs calls to the archivers and
- evaluates the returned status code.
-
-
- 5. PROBLEMS & SOLUTIONS
- -----------------------
-
- In some cases GEN will have problems to construct the desired archives.
- There may be some situations that we want to point out:
-
- a) A file to be archived cannot be compressed to the maximum size of the
- archive.
- -> If there is still enough space to store the oversized archive
- a warning is given and GEN proceeds.
- -> Otherwise GEN aborts. (GEN cannot split files)
- Solution: Split the big file manually (We now this is absolutely
- ugly, but we have not thought of a portable way of splitting
- files in different archives yet).
-
- b) Too many files are specified
- Solution: Try to archive single subdirs alone. Although GEN uses a
- very economic string storage it is limited. We had no
- problems with approx. 2000 files. When gen finishes its work
- the number of bytes uses is printed. The limit is reached
- by approx. 180000 bytes. The number of files that can be
- archived depends on the length of the filenames+subdirpathes.
-
- c) GEN finds not enough space on the drives.
- Solution: GEN stores its temporary files in the current directory or
- at the location specified by -t. Also the archivers
- get a working dir specification if they are capable of this.
- Check if you have set any environment variables that
- affect the archivers. GEN wants twice the space of an archiv
- at the location where it is created because some archivers need
- this. With -d you can overcome this problem in case of floppies.
- If you have inserted a floppy with insuffcient space GEN allows
- you to fix the problem via shell-escape if possible.
-
-
-
- 6. HOW TO CONTACT THE AUTHORS
- -----------------------------
-
- No manual is perfect, no program is bugless. If you have any questions or
- problems feel free to contact us. We are interested in improving GEN and
- fixing further bugs. Any new ideas are welcome, too.
-
- Here are our e-mail addresses:
-
- Wolfgang Thronicke Friedrich Wichmann
- UUCP: wolf@cadlab.de
- wolft@uni-paderborn.de fwich@uni-paderborn.de
- ^ yes this is a different
- address!!
-
-
-
- 7. References:
- --------------
-
- (Please forgive any misspellings and typos)
-
- STUFF and ZOO are copyrighted by Rahul Dhasi.
- MS-DOS is trademark of Microsoft.
- LHA and LHARC are copyrighted by
- PKZIP is copyrighted by PKWARE Inc.
- ARC is copyrighted by SEA Inc.
- ARJ is copyrighted by Robert K Jung.
-
-
- -------------------------------------------------------------------------
- This program was written using Borland Turbo Pascal 6.0.
-