Instructions for ZIP - Fast File Transfer Utility
version 1.7 (27 Nov 1993)
(c)1988-93 E. Meyer
Requires: two IBM PC compatible computers with DOS 2.x or above;
serial (null modem) RS232C cable.
================================== CONTENTS ==================================
1. ABOUT ZIP: Brief description; Copyright and Licensing
2. PREPARING TO USE ZIP
A. Menu or Command-line mode
B. Setting serial port and speed
C. File and directory handling
D. Choosing the screen output mode
3. TRANSFERRING FILES
A. Sending files
B. Receiving files
C. Selecting files from a group
D. Reconciling similar directories
E. Backing up all subdirectories
F. Directory, Delete, and Log commands
4. SERVER MODE
A. Sending and fetching files
B. Server Directory, Delete, and Log commands
C. Comparing directory contents
5. FURTHER USAGE NOTES
A. Summary of options
B. Examples of command-line syntax
C. Automating use of ZIP (Redirection, @files, Batch files)
6. UTILITY PROGRAMS
A. Cloning ZIP with ZIPDUP
B. Changing defaults with ZIPCFG
7. TECHNICAL INFORMATION
A. General information
B. Appropriate serial cables
C. Using ZIP on the HP95/100LX palmtops
D. Error messages
E. About the program and author
================================ 1. ABOUT ZIP ================================
Anyone working with two computers probably needs to transfer programs or
data between them regularly. But especially where large amounts of data are
involved, exchanging floppy disks quickly grows tedious; and not all computers
have the same disk sizes, or disk drives at all. Keeping track of new or
modified files on each computer gets to be a problem, too.
ZIP is a tiny, fast utility to transfer files between two IBM compatible
computers; it requires no expensive additional hardware, just a simple serial
cable. It can be used from the DOS command line or a batch file, or run from
an interactive menu. It transfers files as simply as using the COPY command,
and has options that make it easy to reconcile directories on both computers.
Ideal for laptop or palmtop computers, it takes just 13k of disk space, and
consumes no memory when not in use.
There are good retail programs for this purpose, though they typically
cost over $100; if you're willing to buy or make your own cable, you can do
the same job with ZIP instead. ZIP doesn't have all the features of the fancy
programs, but it doesn't consume precious system memory either; it just
transfers files when you need to, as simply as using the COPY command. In
fact, even if you have other more complex programs, you may still find ZIP
easier to use in many situations because of its small size and simplicity.
ZIP is as fast as a serial (RS232) transfer program can be, and faster
than some free/shareware programs that also claim to operate "at 115200 bps".
(A few retail programs are somewhat faster still, but they rely on a
proprietary parallel cable design that is not readily available.) In most
cases ZIP achieves a throughput of about 14K per second; on slower PCs,
processor speed and disk performance can limit this to about 10K/sec. On any
system, large amounts of data can be sent more quickly using RAMdisks or hard
disks, rather than slow floppy disk drives. Although ZIP is designed to
operate at very high transmission speeds, it can also be used at slower speeds
in applications that demand this.
(Note: ZIP does not employ data compression, and has nothing to do with
the new file compression program PKZIP by Phil Katz.)
HOW YOU GOT YOUR COPY OF ZIP
ZIP circulates widely as "shareware", giving you the opportunity to try
the program at no cost, and to share it with others -- hence the name. If it
doesn't meet your needs, you don't have to pay for it. If you find the
program valuable and continue to use it, you can "register" your copy for a
modest fee. In return, you get an update disk and support from the author.
Shareware offers some unique advantages over retail software, because
users interact directly with the author. Obviously, costs are kept down
because glossy packaging, advertising, and retail markups are eliminated. But
shareware can also resist market trends and continue to provide useful kinds
of products that the big corporations have abandoned. And shareware authors
can respond more directly to user requests and concerns than software
publishers who release an update only when it seems profitable.
Shareware works when users give program authors useful feedback, and most
of all, when users support authors by registering their programs. This makes
it possible for quality shareware to continue to develop and improve. ZIP
would not have become what it is now without this kind of support. Please
support shareware by registering any programs that you use.
The use and distribution of ZIP are governed by the "COPYRIGHT AND
LICENSE" information below. Please read this carefully!
FILES YOU SHOULD HAVE
Be sure you have all the files which should be included in this package:
ZIP.DOC - This documentation file.
ZIPxx.UPD - Update notes and version history.
ZIP.COM - The file transfer program.
ZIPCFG.COM - The configuration (customizing) utility.
ZIPDUP.COM - The duplication (cloning) utility.
ORDER.FRM - Registration/site license order form.
COPYRIGHT AND LICENSE INFORMATION
The ZIP program and documentation are copyright (c)1988-93
Eric Meyer, all rights reserved worldwide. They may not be
circulated in any incomplete or modified form, nor sold for
profit, without written permission of the author. The use
or sale of ZIP is subject to the following terms:
PERSONAL USE. If you find ZIP valuable and continue to use it, you are
encouraged (but not required) to register, and help support the
development of high-quality, affordable software:
INDIVIDUAL REGISTRATION ..... $30 (US)
Registered users receive several benefits:
* The latest version of ZIP (and other useful programs)
on disk direct from the author.
* Support. You can get help with any questions or
problems you encounter in using ZIP. Future upgrades can
be ordered on disk when desired.
* Your registration verifies the legality of your
personal use of ZIP at your workplace as well.
SITE LICENSES. Any company or institution wishing to use ZIP in the course of
its business MUST purchase a SITE LICENSE. The cost of the license is
modest, and varies according to the number of computers on which ZIP may
be in use in the workplace:
Up to 10 copies................. $50 (US)
Up to 20 copies................ $100
Additional copies over 20........ $2 each
The purchaser of a site license receives several benefits:
* The latest version of ZIP (and other useful programs)
on disk direct from the author.
* Support. You can get help with any questions or
problems you encounter in using ZIP. Future upgrades can
be ordered on disk when desired.
* A license documents the legality of your company's
use of ZIP.
* Your employees can use ZIP at home and share it with
friends without raising issues of software piracy.
COMMERCIAL SALE. Any software dealer or library may offer ZIP for sale, as
long as the price charged for the disk containing ZIP does not exceed US
$6. With this single exception, the sale of ZIP, either alone or together
with other software or hardware, requires a licensing agreement. Please
write for terms.
ORDERING AND SOURCES. Site licenses and individual registrations may be
ordered directly from the author (see address below), by check or money
order in US currency; purchase orders are also accepted.
CREDIT CARD ORDERS ONLY (VISA,MC,AmEx,Discover), including
international, for licenses and registrations may be made through the
Public Software Library: phone (800)242-4775 or (713)524-6394, FAX
(713)524-6398, CompuServe [71355,470]. Mention item #10304. (There is a
$5 surcharge for this service.)
ZIP is distributed widely through "shareware" channels. Users with a
modem can download the latest version as the archive file ZIPxxx.ZIP,
available from either of the two primary distribution points:
(1) Glendale Litera BBS - Glendale, CA (818)956-6164.
(2) On CompuServe, in download library 4 (DL4) of the IBMCOM forum.
In addition, ZIP is available on a variety of other remote systems,
and by mail from many good software libraries, including the Public
Software Library, P.O. Box 35705, Houston TX 77235. (Disk #1674)
FOREIGN USERS. ZIP has a growing number of users elsewhere in the Americas,
Europe, and the Far East. In many countries, retail software is scarce or
expensive, and shareware is an even more attractive alternative.
Registrations from overseas are warmly encouraged, and users receive full
support, including disks by airmail, at no extra charge. Payment can be
made by international credit card through Public Software Library; or you
can send money orders in US currency, drawn on a US affiliate bank,
directly to the author. Modest amounts of US cash ($50 or less) can also
be sent safely by registered mail.
Address all correspondence to the author:
3541 Smuggler Way CompuServe: [74415,1305]
Boulder, Colorado 80303 USA Internet: [email protected]
THE CUSTOMARY DISCLAIMER: You undertake to use ZIP at
your own risk. The author does not warrant the suitability
of ZIP for any particular purpose, and assumes no liability
for damages of any kind resulting from its use.
========================== 2. PREPARING TO USE ZIP ===========================
In order to use ZIP, you will need to have a copy of the same version of
ZIP.COM on both computers, and the correct cable (a serial "null modem" cable,
or a serial cable with a null modem adapter) to connect between them. If
incompatible disk drives prevent you from getting ZIP.COM itself onto the
second computer to begin with, you can "clone" ZIP with the ZIPDUP utility
(see below). For further explanation of serial cables, or if you have an
HP95/100LX palmtop, see TECHNICAL INFORMATION.
If there is a problem with your cable or port/speed settings, the message
"Ready" or "Waiting" will remain on screen when you try to run ZIP; correct
the problem and try again.
ZIP's operation can be interrupted by pressing Escape, ^C, or Ctrl-Break:
(1) during initial connection attempt (otherwise, ZIP waits
as long as necessary for connection)
(2) during file transfer (on receiving end, your keypress
will not be noticed until the current file is finished)
(3) at any user prompts.
------------------------ A. MENU OR COMMAND LINE MODE ------------------------
ZIP can be used in either of two ways, described more fully below:
1. MENU-DRIVEN OPERATION. Simply type "ZIP" on both
machines. You will see a menu of choices including
sending, receiving, or fetching files; listing or comparing
directories; logging a new directory; deleting files;
entering server mode; unlinking the server; changing
parameters; or getting help with options. Just type the
highlighted letter of your selection.
2. COMMAND-LINE OPERATION. Any single operation can
be performed from the DOS command line, by providing the
correct arguments and options. For a brief help message
explaining syntax and options, type "ZIP /?".
Menu operation is most convenient when you plan to perform a series of
tasks from the keyboard; command-line use provides a quick way to perform a
single task, and is great for use in batch files.
-------------------- B. SETTING THE SERIAL PORT AND SPEED --------------------
IBM-compatible computers have anywhere from one to four serial (RS232)
ports, and on each computer you must tell ZIP which port you have connected
its cable to. By default ZIP uses the COM1 port. The standard port addresses
are: COM1: 03F8h COM3: 03E8h
COM2: 02F8h COM4: 02E8h
Some computers (including PS/2s) use different addresses for COM3 and COM4;
nonstandard port addresses can be specified in hexadecimal, but only by
modifying ZIP.COM with the ZIPCFG utility.
You can select any standard COM port during operation of ZIP: in menu
mode, just select the choice to modify "P"arameters. In command-line mode,
specify one of the following options:
/1-4 = use port COM1-4.
Data transmission can take place at a wide range of speeds. ZIP normally
works at the fastest possible speed, 115200 bps, and most users will not need
to change this. To accommodate certain computers or software environments, it
may be necessary to set a somewhat slower speed. In fact, ZIP can be slowed
down all the way to 2400 bps, so that it could even be used with a modem over
a telephone line, instead of a direct cable connection. In any event, you
must have the same rate set on both ends.
In menu mode, just select the choice to modify "P"arameters. In command
line mode, specify the option:
/Bnnnn = use speed nnnn (BPS)
The allowed speeds "nnnn" are 115200, 57600, 38400, 19200, 9600, 4800, 2400;
each may be abbreviated to as few as two digits ("/B96"). To change your
default setting, use ZIPCFG.
You will see a note in the ZIP signon message, "Speed=____ Port=____",
giving the port address and speed currently in use.
---------------------- C. FILE AND DIRECTORY HANDLING ------------------------
You can specify how you want ZIP to handle certain DOS file attributes.
By default, ZIP does not list or transfer Hidden or System files; it preserves
all file attributes, including Archive; and an error is generated if you
attempt to overwrite or delete an existing Read/only file.
You can also choose whether you want ZIP to create a new directory when
the one you specified does not exist; by default, ZIP reports an error.
To examine or alter these settings, in menu mode, select the choice to
modify "P"arameters, then press "S" to change file/directory handling. There
are five settings you can change:
include Hidden files? preserve Archive attribute?
include System files? overwrite Read/only files? create Directories?
Press a letter "H,S,A,R,D" to change any setting from YES to NO. They may be
specified independently on either end; the settings on the client or sending
end govern each operation.
In command line mode, you can specify the option:
/A = ADD (create) new directories
(Note: if you have used ZIPCFG to make directory creation your default, the /A
option will reverse this.) There is no command-line option to change the file
attribute settings, but the defaults can be changed with ZIPCFG.
--------------------- D. CHOOSING THE SCREEN OUTPUT MODE ---------------------
ZIP is capable of displaying in several colors (or shades) on computers
with color or greyscale capability; you can also choose instead a simple DOS
(monochrome) output mode if you prefer, or if you wish to redirect output (see
AUTOMATING). On the command line, specify the option:
/M = use MONOCHROME output
You can also make this your default with ZIPCFG. (Note: if you have done so,
the /M option will reverse this, producing color output.)
=========================== 3. TRANSFERRING FILES ============================
A. SENDING FILES
Transferring files between computers with ZIP is as easy as copying them
from one disk to another. In menu mode, simply select "S"end, and you will be
prompted for the filename(s) and then a directory to send them to. (For the
default directory on the other end, just press ENTER.) For command-line use,
give the filename(s) to send as part of the ZIP command, and if you want to
specify a destination directory, add it as an option in brackets:
C>zip FILESPEC /[DESTDIR]
In either mode, the "FILESPEC" can be a single FILE (including path), or
a GROUP specified by wildcards (eg, *.BAK), or an "@FILE" (see AUTOMATING), or
a LIST of any of these delimited by commas or spaces. Each item assumes or
continues the same path as the previous one, unless the new one begins with a
drive or root directory. Thus the list:
d:\sf\gort, ltrs\*.892, klaatu
refers to files D:\SF\GORT, D:\SF\LTRS\*.892, and D:\SF\LTRS\KLAATU.
Any other desired options may also follow the filename(s), though only
certain ones (/S and /P,N,E,T) are valid in menu mode. Take care not to send
two files with the same name to the same receiving directory, as one would
overwrite the other. Whether or not ZIP sends DOS Hidden or System files can
be determined with ZIPCFG.
The size of each file to be sent is shown in "k" (1k = 1024 bytes), and
the transfer in progress is indicated by continuously updating the amount
sent. A period "." will be left when the transfer is complete.
----------------------------- B. RECEIVING FILES -----------------------------
In menu mode, simply select "R"eceive, and you will be prompted for the
directory to receive files into. For command-line use, specify the option:
/R = RECEIVE files
and, if you want, a directory to receive files into, in brackets:
Do not supply a filespec before the /R option; the sender determines the
files to be sent. By default, files are received into the current directory.
Any destination directory specified by the sender overrides the receiver's
directory. If the specified directory does not exist, ZIP may attempt to
create it. Of the selection options, only /P may be used when receiving.
A received file bears the same filename, DOS timestamp, and file
attributes as the file sent (except that whether the Archive attribute is
preserved is user-configurable).
---------------------- C. SELECTING FILES FROM A GROUP -----------------------
If you want to transfer only certain files in a group with ZIP, you can
request that you be prompted to confirm each file individually: you will be
asked to press a key (Y/N) to determine whether each file is to be sent. (In
menu mode, you can select "O"ptions for a help message describing the file
selection options.) After the file (or for receiving, directory) names, in
either menu or command-line mode, specify the option:
/P = PROMPT to confirm files individually
If option /P is in use on the receiving end and "No" is entered, the message
"" will appear on the sending end.
This option can be specified independently on either or both ends, but
has no effect in server mode.
---------------------- D. BACKUPS AND OVERWRITING FILES ----------------------
ZIP offers several features that are particulary useful for reconciling
the contents of directories which are duplicated (in whole or part) on both
computers. By default, ZIP doesn't care what files may already exist on the
receiving end: it will transfer all files specified, whether or not they
overwrite existing ones. Three options are provided to modify this behavior.
(In menu mode, you can select "O"ptions for a help message describing the file
selection options.) After the names of files to be transferred, in menu or
command-line mode, specify one (or two) of these options:
/N = copy NONexisting files only
(cannot be used with /E or /T)
/E = copy EXISTING files only
/T = TIMESTAMP determines files sent
The /N option will prevent all existing files from being overwritten.
The /T option will allow overwrites only when the new copy has a more recent
timestamp. The /ET combination is especially useful for selective backup
purposes: it transfers only more recent copies of files that already exist.
Example: if you want to make the contents of two nearly identical
directories exactly so, do one transfer "*.* /T" each way; or use "*.* /N"
instead if you want differing versions of individual files to remain so.
These options can be specified only on the client or sending end.
---------------------- E. BACKING UP ALL SUBDIRECTORIES ----------------------
In many situations, you may have (or want to have) a similar directory
structure on two computers. While you could use the above methods to produce
this result one subdirectory at a time, ZIP offers an option to do this
automatically. In either menu or command-line mode, specify:
/S = process all SUBDIRECTORIES
Like the /S switch of the DOS XCOPY command, this causes the given command to
be processed on files in the specified directory, and then also in all its
The source and destination directories, whether default or specified, are
put in correspondence, and ZIP will either seek or create subdirectories of
the destination directory to match those of the source. Thus, if the two
computers have the following directory trees:
Sender: C:\ Receiver: D:\
then the command "ZIP C:\*.* /S[D:\BACKUP] will begin by transferring files
from C:\ to D:\BACKUP, then from C:\WORK to D:\BACKUP\WORK, etc. If the
directory D:\BACKUP\WORK does not exist, and the /A option was not used, the
operation will terminate with an error message.
The /S option is most commonly used for backup purposes either together
with /A, when you are trying to establish a corresponding directory structure
in the first place, and want the required directories to be created; or after
that, with /T, to back up files within those directories according to their
timestamps. But it can be combined with any of ZIP's file transfer options.
Use of complete directory specifications (including drive and path) is
recommended with /S to avoid unanticipated results.
------------------- F. DIRECTORY, DELETE, AND LOG COMMANDS -------------------
When ZIP is in menu mode, you will see choices for "D"irectory and
d"E"lete, offering simple file maintenance without exiting ZIP.COM.
The directory function provides an alphabetized file listing for your
reference, and shows the free space left on the disk (unless this is greater
than 64 MB). You will be prompted for the files to list. If you just press
[Enter], ZIP lists all files (*.*) in the default directory.
The delete function prompts for a filespec to delete; as always, a path
and/or wildcards may be included. It accepts only a single filespec, not a
list of them. Deletion is immediate; be careful, especially when using
Whether or not ZIP will list or delete DOS Hidden or System files, and
whether it will delete Read/only files, are user-configurable options.
Although you can always type the full path information for any files you
want to look for or transfer, if you're going to be working in a different
directory for a while, it can be more convenient to change ZIP's default
directory. In menu mode, the "L"og command will let you do this; you will be
prompted for the new drive and/or directory, or you can just press [Enter] to
check the current directory. Initially, of course, the default is the current
DOS directory. If the directory you specify does not exist, ZIP may attempt
to create it. (The Log command works much like the DOS commands CHDIR and
MKDIR, except that ZIP does not actually change the current DOS directory, it
simply keeps its own record of the directory you want to be working in.)
=============================== 4. SERVER MODE ===============================
It would obviously be easier to transfer files if you could do all the
typing from one keyboard, and "server mode" lets you do just that. ZIP can
remain on line on one end, ready to obey instructions from the other end (the
"client") automatically. To enter server mode: in menu mode, just select the
choice for ser"V"er. In command line mode, specify the option:
/V = SERVER mode
and if you want, a new default directory for ZIP operations in brackets:
Otherwise, the default is the current DOS directory.
ZIP will now wait to receive commands (described below) from the other
computer. When you are finished, you can press Escape, ^C, or Ctrl-Break to
exit server mode.
Alternatively, you can give an instruction to terminate server mode from
the other (client) keyboard. In menu mode, select the choice for "U"nlink
before quitting. In command-line mode, specify the option:
/U = UNLINK server
This option can be combined with any other ZIP function; the server is not
unlinked until the operation is complete.
----------------------- A. SENDING AND FETCHING FILES ------------------------
When one copy of ZIP is running in server mode, it is ready to accept any
files that you transfer to it from the other (client) keyboard; these will be
received on the server end, into any directory specified by the sender, or the
server's default directory.
You can also ask the server to send files to you. In menu mode, just
select "F"etch, and you will be prompted for the files to fetch and a
directory to put them in. In command-line mode, specify the option:
/F = FETCH specified files from server
and, if you want, a directory to put the received files in:
C>zip FILESPEC /F[DESTDIR]
Otherwise they will be put in the current directory.
You must specify the path with the filenames to be fetched, if they are
not to be found in the default directory on the server end. Any of the
selection options (/P,N,E,T) or directory options (/A,S) may be used.
--------------- B. SERVER DIRECTORY, DELETE, AND LOG COMMANDS ----------------
If your other computer is running ZIP in server mode, you can also
request a directory from it, delete files on it, or log a new directory on it.
In menu mode, when using the "D"irectory, d"E"lete, or "L"og commands, simply
type a ">" before an argument to indicate that it applies to the server. This
can be done either alone, or together with a request on the client end:
Directory: \WORK\*.BAK client alone
Delete: >B:\BACKUP\OLD.FIL server alone
Log: \WORK >B:\BACKUP combined
As a convenience, since the two computers may have a similar directory
structure, you can also type a quote mark (") to log the same default
directory for the server.
Log: >" ...logs same dir on the server as client
Log: C:\WORK >" ...logs C:\WORK on the server, too
Log: C:\WORK >D:" ...logs D:\WORK on the server
For command-line use, you can specify one of the options:
/D[FILESPEC] = Directory listing on server
/K[FILESPEC] = Kill (delete) file on server
/L[NEWDIR] - Log new directory on server
/D alone lists all files "*.*", or it can be followed by a filespec in
brackets, like "/D[\*.BAT]". /K requires a filespec in brackets.
Directory and deletion requests accept only a single filespec, not a list
of them. Deletion is immediate; be careful.
---------------------- C. COMPARING DIRECTORY CONTENTS -----------------------
If your other computer is running ZIP in server mode, you can also
compare the contents of directories, showing files that appear in one but not
the other, or that exist in different versions. (This can be used, for
example, as a preview of what files will be transferred if you use the /N or
/T option.) Common identical files are not shown.
In menu mode, just select the choice to "C"ompare. You will be prompted
for the files to compare. If you just press [Enter], ZIP compares all files
"*.*" in the default directory on each end. Type a ">" if you want to specify
a different directory on the server:
Compare: >\BACKUP client *.* with server \BACKUP\*.*
Compare: *.DOC client *.DOC with server *.DOC
Compare: *.DOC >\BACKUP client *.DOC with server \BACKUP\*.DOC
ZIP will produce two listings: first files on the client end that don't
match up with those on the server, and then vice versa. If a file appears on
both ends, but in differing versions, it will be flagged with a "+" or "-" to
indicate which appears to be the later (+) or earlier (-) version, according
to the files' timestamps.
Alternatively, from the command line, you can specify the option:
/C = Compare with server
All files "*.*" are compared, unless you provide a filespec. The option can
be followed by a directory in brackets:
C>zip FILESPEC /C[SRVRDIR]
otherwise, the default directory on the server is assumed.
========================== 5. FURTHER USAGE NOTES ============================
A. SUMMARY OF OPTIONS
The following options may be used in either menu or command-line mode:
/E,N Existing, Nonexisting files only
/T more recent Timestamp only
/P Prompt to confirm each
/S process Subdirectories
These command-line options are replaced by menu choices in menu mode:
/R Receive files
/F Fetch from server
/V serVer mode
/D[fspec] Directory from server
/L[dir] Log dir on server
/K[fspec] Delete files on server
/C[dir] Compare with server dir
/U Unlink server on exit
/1-4 port COM1-COM4 \
/Bnn speed 2400-115200 Bps > Parameters
/A Add new directories /
This option is available only from the command line or via ZIPCFG:
/M Monochrome (DOS) output
These options are available only in menu mode (Parameters) or via ZIPCFG:
include Hidden, System files
preserve Archive status
overwrite Read/only files
This option is available only from the command line:
--------------------- B. EXAMPLES OF COMMAND-LINE SYNTAX ---------------------
C>zip b:myfile *.doc send files B:MYFILE, B:*.DOC
C>zip *.bak /[b:\recs] send files *.BAK to directory B:\RECS
C>zip my.* /2 /p send files C:MY.* over COM2, with prompts
to confirm each file individually
C>zip *.* /n send all files which don't already exist
in receiver's default directory
C>zip a:chapter.* /et send all files A:CHAPTER.* of which an
older version exists on the receiving end
C>zip /r /3 receive files over COM3
C>zip /rp[\temp] receive, with default directory C:\TEMP,
prompting to confirm each file individually
BACKING UP DIRECTORIES:
C>zip \work\*.* /sa[f:\work] duplicate the entire subdirectory tree from
C:\WORK on down, to receiver's drive F:
ENTERING SERVER MODE:
C>zip /v2b38 wait as server, at 38400 bps on COM2
C>zip /v[d:\] wait as server, with default directory D:\
EXCHANGING FILES WITH SERVER:
C>zip b:\recs\my.* /f[\orig] fetch files MY.* from server directory
B:\RECS into client directory C:\ORIG
C>zip my.fil,my.bak /u send MY.FIL and MY.BAK to server's default
directory, then unlink server
FILE MANAGEMENT WITH SERVER:
C>zip /d[\work\*.bak] show all server's files \WORK\*.BAK
C>zip /k[junk] delete server's file JUNK
C>zip *.txt /c[\mydir] compare *.TXT with server's \MYDIR\*.TXT
C>zip /la[c:\recs] log server directory C:\RECS, creating it
if it doesn't alerady exist
------------------------- B. AUTOMATING USE OF ZIP ---------------------------
There are several ways of performing complex repetitive tasks, like
backing up several groups of files, more easily with ZIP, by taking advantage
of its own features (indirect filename lists in "@files") or those provided by
DOS (batch files, input/output redirection).
Standard DOS output redirection (">") can be used with ZIP. Thus, for
example, "ZIP /D[*.BAK] >ZOUTPUT" can be used to capture the output of a ZIP
directory listing in a file ZOUTPUT, to be examined or processed later. (As a
side effect, nothing would display on the screen; you can also use ">NUL" to
simply suppress output.)
Note that for output redirection to work, ZIP must be using ordinary DOS
output, not color output; this can be selected with the ZIPCFG utility, or
changed with the /M option.
Because ZIP accepts standard DOS input redirection ("<"), you can
automate a frequently performed series of tasks (sending groups of files to
different directories, etc) by running ZIP in menu mode with redirected input.
Redirected input is a sort of "script" describing a complex task. You
will need to create a text file containing exactly the keystrokes you would
use to perform a task; think about the way ZIP prompts for input, and work out
your responses carefully. (Note, for example, that when you select an option
like "S"end you don't press [Enter] afterward, but when you provide a filename
For example, if the file "ZINPUT" contains: Sc:\work\*.* /t
then "ZIP to directory E:\WORK on the server end, and similarly files in C:\WORK\ED to
D:\ED, then unlink ("U") the server and quit ("Q").
Any command-line options must precede the "<" redirection character. If
you use the /P option while running ZIP with redirected input, you will have
to type any "Y/N" responses from the keyboard yourself. You should always end
the file with "Q" to quit, since DOS does not return to the keyboard for
further input if the end of the input file is reached while the program is
Indirect File Lists (@files)
A number of file management and communications utilities can write a list
of filenames selected according to various criteria to a file, or accept the
name of such a file following an "@" sign to process all the filenames it
contains; ZIP also honors this convention. You can also create such a file
yourself, with any text editor, inserting the names of files which you may
often want to transfer as a group. Such an "@FILE" should contain complete
filespecs (with drive and path), separated by spaces and/or carriage returns.
ZIP can then be used to transfer those files.
For example, if file "FLIST" contains the names: c:\work\*.bak
then "ZIP @FLIST" will send files C:\WORK\*.BAK and C:\MYFILE.
Options can only be specified on the command line after the @file name
(not within the @file), and will affect all files transferred.
Since every function can be performed from the command line, ZIP is easy
to use in batch (.BAT) files. Batch files run a little more slowly than the
other methods above, but they can contain replaceable arguments, tests for the
existence of files or directories, prompts and jumps for the user to choose
different courses of action, and other powerful features. See your DOS manual
If an error occurs during operation in command-line mode, ZIP sets the
DOS error code, so that a batch file can test the ERRORLEVEL to determine
subsequent action. Normally 0, the value returned will indicate which of the
following errors occurred:
1 = argument error 8 = transmission error
2 = out of memory/too many files 16 = disk error (full?)
4 = connect error/no server 128 = user abort
============================ 6. UTILITY PROGRAMS =============================
A. CLONING ZIP WITH ZIPDUP
ZIP comes with a utility program, ZIPDUP, to make it possible to get
ZIP.COM onto another computer in the first place, when your two computers
don't share a common disk format. ZIPDUP duplicates or "clones" ZIP onto the
second computer over the serial cable. Because this feature will be used only
occasionally, it's not part of ZIP itself. ZIPDUP can, in fact, transfer any
file without the need for receiving software, but it's very slow and
cumbersome compared to ZIP itself. To clone ZIP with ZIPDUP:
1. Connect the cable to the desired serial port on each computer. You
must use COM1 or COM2 only; and the cable must have the DTR lines connected,
as well as the data lines -- see cabling diagram under TECHNICAL INFORMATION
below -- or ZIPDUP will not work. (In this event, you'll need to have a
telecom program running on both computers, to transfer ZIP.COM via XMODEM or
another similar protocol.)
2. Set up the receiving end: Make sure the DOS utilities DEBUG and MODE
are available (either in the current directory or in your PATH); you will have
to use MODE, and ZIPDUP uses DEBUG.
Be certain that the last character of your DOS prompt is ">". (Yes, this
actually matters!) If in doubt, type the command:
Then prepare to receive data by typing these two commands:
MODE COM#:96,N,8,1 ("#" = 1 or 2 only)
(Note: on some systems, like the HP100LX, it may be necessary to add ",P" to
the end of the MODE command.) The CTTY command gives control to the sending
computer, via the COM# port. The receiving system will seem to "lock up",
ignoring any keyboard input. If the ZIPDUP transfer fails, you will need to
3. Now, on the sending end, to duplicate your copy of ZIP.COM, type:
(Actually, you can omit the filename if it is "ZIP.COM"; otherwise, type it.)
You will be asked to specify the COM port (again, 1 or 2 only) that the
cable is connected to; if the connection can be made, the transfer will
proceed. When ZIPDUP is finished, you will find a duplicate copy of ZIP.COM
in the current directory on the receiving computer.
---------------------- B. CHANGING DEFAULTS WITH ZIPCFG ----------------------
A second utility, ZIPCFG, allows you to customize ZIP to your own
requirements. Certain "defaults" that are assumed unless you specify
otherwise (via command-line options or menu choices) can be changed: transfer
speed and port, file and directory handling, and display colors. Just type:
(Actually, you can omit the filename if it is "ZIP.COM"; otherwise, type it.)
To change your defaults, select "Edit" from the ZIPCFG menu, make
changes, then select "Save"; to restore the original distribution settings,
select "Restore". To exit without saving changes, select "Quit".
The "Edit" procedure takes you through a sequence of settings you can
change. For the port you may enter simply "COM1" through "COM4", or any other
specific hexadecimal address required by your hardware ("03F0", etc). For the
speed you must choose by letter from the allowed values.
The next set of choices configure ZIP's treatment of DOS file attributes
and directories. You can determine whether or not Hidden or System files will
be included in ZIP's operations; whether a file's Archive attribute should be
preserved when it is received on the other end; whether ZIP can overwrite or
delete files that have the Read/Only attribute; and whether ZIP should create
new directories when those you specify do not already exist.
Then there is a setting to force 40-column display width. Normally this
is set to "No"; you will see "Width=AUTO", and ZIP adapts itself to the
current video mode (40/80 columns).
Finally, ZIPCFG offers you a choice of color output (via the IBMPC BIOS)
or standard DOS output. You might want to select DOS output if color output
does not display correctly on your video system, or if you will want to
redirect output from ZIP to a file or device (color output does not redirect).
Whichever you choose as your default, the /M option will change to the other.
If you select color, ZIPCFG displays a palette and offers you a choice of
text colors. ZIP uses three different colors: a "message" color, a "hilight"
color for contrast, and an "active" color (during file transfer activity).
Each is specified by an "attribute byte" consisting of two hex digits, for a
background and foreground color. ("17" = "1", blue background, & "7", white
text.) The color digits are:
0 = BLACK 4 = red 8 = GREY C = bright red
1 = blue 5 = magenta 9 = bright blue D = bright magenta
2 = green 6 = brown A = bright green E = yellow
3 = cyan 7 = WHITE B = bright cyan F = BRIGHT WHITE
The palette will include 128 colors from 00-7F. Use of colors 8-F as
background (80-FF) is also possible but not recommended, since on most systems
this produces blinking video. Some colors may be invisible or indistinguish-
able on monochrome screens, though all MDA systems can display black, white
and bright white (which are the default colors), and in some cases grey also.
Please DO NOT distribute modified copies of ZIP.COM; this could confuse
other users. (ZIPCFG includes an option to restore the original default
========================== 7. TECHNICAL INFORMATION ==========================
A. GENERAL INFORMATION
ZIP requires about 128k of free memory to run. Like most communications
programs, ZIP does full CRC (Cyclic Redundancy Checksum) verification on the
data to guarantee accurate transfer. But ZIP uses its own transfer protocol,
which is not compatible with other programs. Be sure to use the same version
of ZIP on both ends: the transfer protocol may have changed. Do not disturb
the cable when ZIP is running, as it will be unable to resume its task; you
will have to abort the program and try again.
ZIP does not use interrupts, so it will not conflict with the IRQ usage
of other hardware or software; but do not use ZIP while another program is
using the same serial port.
Using any communications software in a multitasking environment often
requires special precautions. ZIP is DESQview-aware, and will disable
multitasking while transferring files. Under other environments, ZIP may need
to be given a "non-swappable" or "foreground-operation" status, so that other
tasks will not interfere with its operation. (Under Windows, you must create
a PIF file and give ZIP both background and foreground priority.) You may
also need to set a slower speed for ZIP to work reliably.
ZIP works well on the vast majority of systems. If you experience
unresolvable conflicts with other memory-resident software, such as background
processes or disk caches, do not use ZIP when that software is in operation.
------------------------ B. APPROPRIATE SERIAL CABLES ------------------------
SERIAL NULL MODEM CABLES, in various combinations of 9- and 25-pin
connectors, are available from a wide variety of sources, and a simple cable
in the configuration you need (for example, DB9 to DB25 female) should cost
about $10 at Radio Shack and other computer stores. Double-headed null modem
cables (both 9 and 25 pin on each end) are also made, and would be ideal for
use with ZIP; check computer supply catalogs.
If you're building or shopping for a cable, you need a "null modem"
cable, meaning the transmit and receive data lines should be crossed, and the
signal ground connected straight through. (The pin numbers depend on whether
you have a small DB9 or large DB25 connector, see figure.) No other
connections should be needed; ZIP uses no hardware handshaking lines. (NOTE:
ZIPDUP does require the DTR connections between pins 20/4 and 6.)
|--COMPUTER 1--| |--COMPUTER 2--|
DB9 or DB25 DB25 or DB9
pin 2 - - - - 3 - - - - - - - 2 - - - - 3 \ transmit &
3 - - - - 2 - - - - - - - 3 - - - - 2 / receive data
5 - - - - 7 - - - - - - - 7 - - - - 5 - signal ground
pin 4 - - - - 20 - - - - - - 6 - - - - 6 * \
6 - - - - 6 - - - - - - - 20 - - - 4 * \ DTR,CTS etc (optional)
7 - - - - 4 - - - - - - - 5 - - - - 8 /(* required for ZIPDUP)
8 - - - - 5 - - - - - - - 4 - - - - 7 /
Actually, any serial cable that doesn't work by itself, should work with a
"null modem adapter" attached. Use of a well shielded cable is recommended;
high speed transmissions can be especially susceptible to RF interference.
------------------ C. USING ZIP ON THE HP95/100LX PALMTOPS -------------------
The Hewlett-Packard 95/100LX palmtop computers are "nearly" IBM-
compatible; ZIP will work on them, but there are some special considerations.
You will need the HP serial cable, available separately or as part of the
ZIP automatically detects the 95/100LX and the current screen size, and
sets itself for the COM1 port. Thus you can use the same copy of ZIP.COM on
your LX as on your PC; modification with ZIPCFG is not needed. ZIP powers up
the serial port in WIRE mode, and turns it off again upon exit to conserve
On the 95LX, ZIP can be run in a variety of ways, including from the
Filer (highlight and press F4, Run) or from the DOS system prompt.
The 95LX serial port does not support DTR, so ZIPDUP will not work on it;
instead, to transfer ZIP.COM to the 95LX, you must use the 95LX's internal
software -- either the built-in COMM utility together with any PC telecom
program supporting XMODEM or KERMIT protocol, or the Connectivity Pack.
File transfers can fail on early versions of the 512k 95LX due to a bug
in its serial port handling. You can avoid this by performing a [Ctrl+Up+On]
reset (answering "No" at the prompt) before running ZIP, or (for some unknown
reason) by performing a Directory request with ZIP before transferring files.
The 100LX system manager software interferes with ZIP's use of the serial
port. You can avoid this problem by terminating SYSMGR and running ZIP from
the DOS prompt; or you can run ZIP from Application Manager if you install it
like this: Name: Zip
Path: C:\ZIP.COM |200
The "|200" after the path specifies a 200k memory allocation (you could get
away with about 135k if necessary), while an upside-down exclamation point in
the comment field (press [Fn+!]) tells SYSMGR not to interrupt ZIP.
----------------------------- D. ERROR MESSAGES ------------------------------
invalid command-line argument(s).
ZIP requires about 128k free RAM.
can't connect -- bad cable? wrong version?
function requires server mode on other computer.
global filespec (eg *.*) includes over 1024 files.
specified directory doesn't exist and can't be created.
@file nested or too large to read.
filename is in use by a directory or read/only file.
specified file doesn't exist, is read/only, etc.
trouble reading or writing to disk. (Disk full?)
you pressed Esc/^C/Ctrl-Break.
communication error, or error on other computer.
---------------------- E. ABOUT THE PROGRAM AND AUTHOR -----------------------
As of Fall 1993, ZIP has been well reviewed in numerous computer
newsletters; it has been included on the HP Palmtop Paper's subscriber disk
for HP95/100LX users, and on disk with the following computer books:
"DOS 6.0 Power Tools" by John Goodman & John Socha (Bantam Books)
"DOS Stuff Microsoft Forgot" by Tim Stanley (Que Books)
"The Little Laptop Book" by Steve Cummings (Peachpit Press)
"lightning fast and simple to learn... simply dazzling...
ZIP provides the fastest file transfer between PC's using
the tiniest amount of disk space... a simple, lean, and
very effective program, not to mention the fastest of all
the programs we looked at for this review."
-- Bil. Alvernaz, Quantum PC Report, June 1992
Eric Meyer has also written the VDE editor/word processor and a number of
other utilities for IBM PC compatibles. He holds an A.B. in physics and a
Ph.D. in history and philosophy of science, and has taught at the Universities
of Indiana, Oklahoma, and Colorado. A longtime advocate of microcomputers, he
has done programming in HP-41, Z80 assembler, BASIC, FORTRAN, LISP, C, and
APL; lately he has been working mostly in 8086 assembler. In a period of
escalating software complexity and prices, he still believes that useful,
inexpensive software should remain available to computer users worldwide.