home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Shareware Supreme Volume 6 #1
/
swsii.zip
/
swsii
/
167
/
CPYDSK11.ZIP
/
CPYDSK.DOC
< prev
next >
Wrap
Text File
|
1991-08-04
|
36KB
|
908 lines
C P Y D S K
A better diskcopy
Version 1.1
The authors do not guarantee this software free from defects and
may not be held held liable for loss caused by such. Your use
of this software constitutes your acceptance of these terms.
Copyright (c) M. Ferrel and R. Frazier 1990
All Rights Reserved
LICENSE
CPYDSK, in any version, is neither public domain software nor
free software. The program, its associated documentation and
supplementary files are property of the authors and may not be
sold without permission of the authors.
CPYDSK is provided as a SHAREWARE program. This means that you
are granted a limited license to use CPYDSK for a trial period
of 30 days to determine if it is suitable for your needs. Use
on any other basis or beyond the trial period requires
registration. A registration form is provided later in this
manual.
You may make copies of CPYDSK and give them to others subject to
the conditions stated above and provided that all files are
included without modification as a single unit. Electronic
bulletin boards may make CPYDSK available for downloading under
the same conditions.
Non-commercial PC user groups and computer clubs may distribute
CPYDSK on diskette subject to the previously stated conditions
except they are expressly allowed to charge a nominal fee for
distribution provided no more than $5 per diskette containing
the CPYDSK files is charged.
Commercial distributors of SHAREWARE or "Public Domain" software
and other commercial enterprises wishing to distribute CPYDSK
either alone or in combination with other hardware, software,
books or materials must obtain permission in writing from the
authors.
A registered user may use their copy of CPYDSK on more than one
computer as long as they only use their copy on one computer at
a time.
This license agreement can only be modified by written consent
of the authors.
WARRANTY
CPYDSK is supplied as is. The authors specifically disclaim all
warranties relating to this software, its associated
documentation and supplementary files, express or implied,
including without limitation any implied warranties of
merchantability or fitness for a particular purpose. The
authors will not be liable for any special, incidental,
consequential, indirect or similar damages or claims, including
loss of profits or any other commercial damage, even if the
authors or an agent of the authors has been advised of the
possibility of such damages. In no event will the authors'
liability for any damages ever exceed the price paid for the
license to use the software, regardless of the form of the
claim. The person using the software bears all risk as to the
quality and performance of the software.
GOVERNING LAW
The license agreement and warranty statement shall be construed,
interpreted and governed by the laws of the state of California.
Any action or proceeding brought by either party against the
other arising out of or related to this agreement shall be
brought only in a STATE or FEDERAL COURT of competent
jurisdiction located in Sonoma county, California. The parties
hereby consent to in personam jurisdiction of said courts.
INTRODUCTION
Is this you? You have one 5 1/4" floppy drive and/or one 3
1/2" drive. When you go to do a diskcopy on any disk larger
than 360KB, you do the 'floppy shuffle'. You know, 'Insert
Source Diskette'; drive whirrs for a moment; 'Insert Target
Diskette'; drive whirrs some more; 'Insert Source Diskette';
etc., etc., etc! What's more, *EVERYTHING* is copied from the
diskette: Empty cylinders as well as ones with data. And what
if you want to make another copy of the same diskette? When the
first copy is done, you have to repeat the whole process
including re-reading the Source diskette all over again. What a
waste of time!
If all this sounds familiar, then CPYDSK is for you. CPYDSK is
designed to avoid the 'floppy shuffle'. Here are some of the
features of CPYDSK:
* CPYDSK copies the Source data first using as much conventional
DOS memory as available. If necessary, expanded memory, if
present, will then be used. If expanded memory is not present
or is exhausted, auxillary disk space (usually a hard
disk) will be used, if that, too, is present.
* By default, CPYDSK will copy only those cylinders that have data
on them. You have the option to override this and make an
exact duplicate of the Source diskette if you wish.
* If the Target diskette requires it, CPYDSK will format the
Target diskette while copying the data. When the Target disk
requires formatting, CPYDSK will format all cylinders whether
or not it is only copying Source cylinders with data on them.
* If all the Source data could be read in one pass, CPYDSK will
give you the option to make multiple copies without re-reading
the Source data.
* CPYDSK options can be set using a menu or from the command
line. Command line settings can be reviewed and changed at
the menu or you can set a command line switch to skip the menu
and go directly to the copy operation. This last option allows
easy customizing via batch files.
INSTALLING CPYDSK
1. Read the READ.ME file for last minute items and a list of all
CPYDSK files supplied with this version.
To make a hardcopy of the READ.ME file, enter
COPY READ.ME PRN
2. The only file needed to run the program is CPYDSK.EXE. To
install CPYDSK, just copy CPYDSK.EXE to the desired disk and/or
subdirectory.
For example, assume your CPYDSK files were on a floppy disk in
drive A: and you wanted to install it on your hard disk C:.
Entering the following command from DOS will accomplish that.
COPY A:CPYDSK.EXE C:CPYDSK.EXE
Or, let's say you have a subdirectory named \UTILITY on your
hard disk C:. You can install CPYDSK in that subdirectory by
entering:
COPY A:CPYDSK.EXE C:\UTILITY\CPYDSK.EXE
STARTING CPYDSK
CPYDSK is invoked from the DOS command line by entering its
name, CPYDSK, optionally followed by command line parameters.
If you get the error message, "Bad command of filename", it is
because one of the following reasons:
1. The command was issued when not logged onto the drive and /
or directory that contained CPYDSK.EXE.
2. CPYDSK.EXE was not on a disk or in a subdirectory listed in
your PATH statememt.
3. CPYDSK was entered without also specifing the drive and / or
path which holds CPYDSK.EXE as part of the command.
Log onto the disk and / or subdirectory that contains CPYDSK.EXE
and try again. Or, check you DOS manual for information on how
to set your PATH statement or issue commands using full path
information.
*** WARNING! ***
Do not use CPYDSK with drives redirected with the ASSIGN or
SUBST commands. Careless use of CPYDSK with these commands
may result in undesired writing to either the Source or
Target diskettes.
****************
USING CPYDSK
I. CPYDSK WITH NO COMMAND LINE PARAMETERS.
The easiest way to use CPYDSK is without command line parameters
Enter:
CPYDSK
A menu will pop up on the screen. The following items will be
displayed with defaults similar to these:
Copying from Source floppy drive: A
To Target floppy drive: A
Temp storage drive (optional): C
Fast or Exact duplicate (F/E): F
Change options each new copy (Y/N): Y
Audible prompts (Y/N): Y
The values on the right side are program defaults. They tell
you the following:
* The diskette drive that will be used to read the Source
diskette is drive A:
* The diskette drive that will be used to write the Target
diskette is drive A:
* If necessary, data read from the Source diskette will be
stored on disk C: (Note, if the computer did not have a
hard disk, this space would be left blank)
* Only cylinders with data will be copied (the Fast option)
* When you answer 'Y' to the prompt to copy a new diskette, you
will be placed back in the menu so you can change any of the
options displayed.
* The program will beep when it prompts you to change diskettes
or answer a question.
The cursor will be located under the first item on the right
side.
The following keys are active at the menu:
Up / Down cursor arrow keys: Move to other options.
Tab / <Shift> Tab keys: Move to other options.
<Enter>: Move to the next option. If pressed on the last
option, this will end option selection and start the
copy operation.
<Esc>: Cancel copying and quit the program.
F1: Display help for that option.
To change an option, just type the correct letter over the one
displayed. If a temporary storage drive letter is displayed
and none is desired, press the space bar to blank the
selection.
II. COPYING WHERE SOURCE DRIVE AND TARGET DRIVE ARE THE SAME:
Make any changes required at the menu and, with the cursor at
the last option, press <Enter> to start the copy operation.
The computer will beep (if audible prompts are enabled) and you
will be prompted:
Put Source disk in drive d:
Press a key when ready . . .
d: will actually be the diskette drive you specified in the
first menu option.
Put the Source diskette into the specified drive and press any
key, except <Esc>. <Esc> will cancel the copy operation and
quit the program.
The program will read the data from the Source diskette and
display the copy status after each cylinder of data is read.
When all data that can be read are read, the computer will beep
again (if enabled) and prompt:
Put Target disk in drive d:
Press a key when ready . . .
Remove the Source diskette and replace it with the Target
diskette. Press a key (except <Esc>) to continue. The program
will now write the data and display copy status. If formatting
is required, that information will also be displayed.
After writting all the data read from the Source diskette, the
program will prompt again.
If all the Source data was read in the first pass, the program
will beep a new tone (if enabled) and prompt:
Make another copy of this diskette? (Y/N)
If you answer 'Y', you will be prompted for a Target diskette
again. Also the program will keep a count of the number of
copies that have been made and display the count in the lower
left corner of the display window. If you answer 'N' to this
prompt you will receive the 'Diskcopy another diskette? (Y/N)'
prompt described below.
If all the Source data could not be read in one pass, then you
will be prompted to switch back to the Source to read some more
data, then to the Target to write this block of data. This will
continue until the copying is complete. Under these
circumstances, when the copying is complete, you will not be
prompted to 'Make another copy of this diskette? (Y/N)'.
Instead you will go directly to the prompt:
Diskcopy another diskette? (Y/N)
Answer 'N' to this prompt to end the program. Answer 'Y' to
copy a new Source diskette.
If 'Change options each new copy' option is 'Y', you will be
place back in the menu to start another copy. If the option is
'N', you will be immediately prompted for a Source diskette.
III. COPYING WHERE SOURCE DRIVE AND TARGET DRIVE ARE NOT THE SAME:
Make any changes required at the menu and, with the cursor at
the last option, press <Enter> to start the copy operation.
The computer will beep (if audible prompts are enabled) and you
will be prompted:
Put Source disk in drive d:
Press a key when ready . . .
d: will actually be the diskette drive you specified in the
first menu option.
Put the Source diskette into the specified drive and press any
key, except <Esc>. <Esc> will cancel the copy operation and
quit the program.
The program will now prompt you for the Target drive:
Put Target disk in drive d:
Press a key when ready . . .
In this case d: will be the drive specified on the second menu
item.
The program will read the data from the Source diskette and
display the copy status after each cylinder of data is read.
When all data that can be read are read, the program will write
the data to the Target and display copy status. If formatting
is required, that information will also be displayed.
If all the Source data was read in the first pass, the program
will beep a new tone (if enabled) and prompt:
Make another copy of this diskette? (Y/N)
If you answer 'Y', you will be prompted for a Target diskette
again. Also the program will keep a count of the number of
copies have been made and display the count in the lower left
corner of the display window. If you answer 'N' to this
prompt you will receive the 'Diskcopy another diskette? (Y/N)'
prompt described below.
If all the Source data could not be read in one pass, the
program will automatically switch between writing to the Target
and reading from the Source. This will continue until the
copying is complete. Under these circumstances, when the
copying is complete, you will not be prompted to 'Make another
copy of this diskette? (Y/N)'. Instead you will go directly to
the prompt:
Diskcopy another diskette? (Y/N)
Answer 'N' to this prompt to end the program. Answer 'Y' to
copy a new Source diskette.
If 'Change options each new copy' option is 'Y', you will be
place back in the menu to start another copy. If the option is
'N', you will be immediately prompted for a Source diskette.
IV. CPYDSK WITH COMMAND LINE PARAMETERS.
The CPYDSK program can be started from the command line with the
following optional parameters:
cpydsk [s [[t] h]] [/[no]exact] [/[no]wait] [/[no]sound] [/[no]auto]
[/[no]mono] [/[no]relax]
Note the brackets ([]) signify the parameter is optional. If
the parameter is not specified, the default value shown is used.
s is the letter of the Source floppy. (default is A drive)
Enter the letter of the floppy drive you want to use for
reading the Source diskette.
t is the letter of the Target floppy. (default is A drive)
Enter the letter of the floppy drive you want to use for
writting to the Target diskette.
Note that if a Target floppy drive is specified on the
command line, the temporary data disk letter MUST also be
specified. If no temporary data disk is desired, put a
blank (press the space bar) for the temp storage disk
line on the Menu selection.
If not specified, the Target drive will be the same as the
Source drive.
h is the letter of the disk used to temporarily store
Source disk data (if needed).
Note the Source floppy letter must be specified first on
the command line if the temporary data disk letter is to
be specified. (Default temporary data disk is the first
hard disk drive found, usually C drive, or nothing if no
hard disk present - see /auto below)
The following parameters are 'switches' (i.e., you use them to
switch options on or off).
To enable a switch, type a / and at least the first letter of
the switch. For example, /exact can also be entered as /e or
/ex or /exa or /exac.
To disable a switch type a / the letters no and at least the
first letter of the switch. For example to disable waiting at
the menu before starting the copying (i.e., to skip the menu)
enter /now or /nowa or /nowai or /nowait.
/exact Make an exact duplicate of the Source. (default is /noexact)
This corresponds to the 'Fast or Exact' menu choice.
/exact will make an exact duplicate of the Source
diskette, just like the DOS DISKCOPY command does.
/noexact will skip diskette cylinders that do not have
data on them.
In either case, if the Target diskette is unformatted,
all tracks on the Target diskette will be formatted.
/wait Wait at menu before starting diskcopy. (default is /wait)
This corresponds to the 'Change options' menu choice.
/nowait will skip waiting at the menu and prompt
immediately for the Source diskette.
/sound Use audible prompts. (default is /sound)
This corresponds to the 'Audible prompts' menu choice.
/nosound will disable audible prompts.
/auto Automatically select the hard drive. (default is /auto)
If this switch is on, the program will find the first
hard drive letter and make that the default for
temporary data storage. If the h parameter (above) is
specified, this option is ignored.
/noauto disables this switch and no hard drive will be
selected unless the h parameter is specified.
/relax Allow any disk for temp. Source data. (default is /norelax)
If this switch is on, then the program will allow
any disk type to hold the temporary Source data
read during the diskcopy. This includes floppy
disks and ramdisks that look like floppies. The
program will not allow the temporary data disk to
be the same as the Source or Target disks.
/norelax forces the disk type for temporary Source
data storage to be a hard disk. Copying will be
faster with this option, if temporary disk storage
is needed.
WARNING! Do not use CPYDSK with drives redirected
with the ASSIGN or SUBST commands, especially if
the /relax switch is used. Careless use of CPYDSK
with these commands may result in the writing of
undesired data to either the Source or Target
diskettes.
/mono Turn off color display. (default is /nomono)
If this switch is on, the program displays in black
in white only. Useful for composite monitors.
/nomono will enable color display.
Examples:
cpydsk A:
Diskcopies from A: to A: using the default values for the other
parameters.
cpydsk B C /exact /nosound /nowait
Diskcopies from B: to B: using disk C: for Source temporary
data storage. An exact duplicate will be made, no audible
prompts and will not wait at the menu before prompting for the
Source diskette.
cpydsk A B C
Diskcopies from A: to B: using disk C: for Source temporary
data storage using the default values for the other
parameters.
TIPS
1. Careless use of CPYDSK with commands such as ASSIGN or
SUBST can lead to inadvertant writing on your Source disk.
Be safe. Put a write protect on your Source disk.
2. It is always a good idea to verify that the copy is good.
While it is unusual, it is possible for a copy to be made with
no reported errors that, when checked with a comparison utility,
shows an error. (This happens with DISKCOPY, too!) Check the
files with the DOS COMP command when using the FAST (/noexact)
option. Use DISKCOMP when using the EXACT (/exact) option.
3. If you don't have expanded memory but do have extended
memory, installing ramdisk in extended memory will enable CPYDSK
to use that extended memory rather than disk space and somewhat
speed up the copy operation.
4. When using a disk for temporary Source data storage, the
program creates a temporary file named $CPYDSK$.$$$ to hold
the data. Normally that file is erased when the program
quits or is stopped (by pressing <Esc> or <Ctrl>Break). If
under some unusual circumstance CPYDSK should happen to leave
that file behind, you can erase it by entering:
DEL $CPYDSK$.$$$
5. Use the EXACT (/exact) option if you intend to make a copy of
the Source Floppy for the purpose of backup before using an
Unerase utility. Unless you do this, the erased file data from
the Source Floppy will not be copied onto the Target Floppy.
6. CPYDSK copies the information from the Source Floppy to the
Target Floppy by copying disk tracks. This means that ALL files
are effectively erased from the Target Floppy. If the EXACT
option is set, then all data on the Target Floppy is written
over. There is no way to recover any of it.
On the other hand, if the FAST (/noexact) option is set, the
cylinders corresponding to those not copied from the Source will
still retain old Target Floppy data (assuming they had data in
them in the first place). This left over Target Floppy data
could be recovered, but only with a disk sector editor.
7. The Source and Target diskettes (the floppy disks themselves,
not the drives) must be the same capacity when using CPYDSK
(e.g. 360KB to 360KB, etc.). Don't use CPYDSK to copy a
diskette of one size to another of a different size (e.g. a
1.2Mb diskette to a 360KB diskette). Unpredictable results will
occur.
GLOSSARY
Source Floppy: The diskette you are making a copy of.
Target Floppy: The diskette you are copying to.
Track: An area on the surface of a disk in the shape of a ring
that data is stored on. Tracks are usually divided into
sections called sectors. MS-DOS disks used on most PC's have 40
tracks or 80 tracks on each side. Tracks on 40 track disks can
have 8 sectors (160KB (single sided) or 320KB (double sided) 5
1/4" disks) or 9 sectors (180KB (single sided) or 360KB (double
sided) 5 1/4" disks) per track. Tracks on 80 track disks can
have 9 sectors (720KB double sided 3 1/2" disks), 15 sectors
(1.2MB double sided 5 1/4" disks) or 18 sectors (1.44MB double
sided 3 1/2" disks).
Cylinder: The collection of tracks that sit on top of one
another on each side of the disk. A floppy disk has one or two
sides so a floppy disk cylinder is composed of one or two tracks
respectively. The number of disk cylinders is the same as the
number of tracks on a side.
---------------------------------------------------------------
MESSAGES
Put Source disk in drive d:
Press a key when ready . . .
Prompt to insert Source Floppy in drive specified by 'd:' and
when ready, to press a key. The data on the Source Floppy is
then read in.
Put Target disk in drive d:
Press a key when ready . . .
Prompt to insert Target Floppy in drive specified by 'd:' and
when ready, to press a key. The data that was read from the
Source Floppy is then written onto this Target Floppy.
Make another copy of this diskette? (Y/N)
Same Source as before. Does not have to re-read the Source
again. Only prompts for the Target.
Diskcopy another diskette? (Y/N)
If Y pressed, prompts for a new Source. You can change
options if 'Change options' line was set to Y before
starting. Otherwise uses already set options.
Copy operation aborted by user . . .
Press a key to exit . . .
<Esc> key was pressed, cancelling the copy operation.
Quitting the copy operation.
Press a key to exit . . .
<Ctrl> C was pressed, cancelling the copy operation.
Cannot copy a hard disk! Only floppies!
Press a key to exit . . .
The Source floppy drive specified for copying was
identified to be a hard disk from its media
parameters. The program aborts for safety.
Cannot copy to a hard disk! Only floppies!
Press a key to exit . . .
The Target floppy drive specified was identified to be
a hard disk from its media parameters. The program
aborts for safety.
*** DISK ERROR *** or
** READ ERROR Reading FAT ** or
** READ ERROR ** or
** WRITE ERROR ** Disk Probably Unusable! or
Press a key to exit . . .
The program experienced fatal errors reading or writing to
disk and could not continue. When writing to the Target
Floppy, this generally means the Target Floppy is unusable.
** WRITE ERROR ** Disk Probably Unusable!
Press a key to try again . . .
A write error occured with the Target diskette and it is
probably unusable. When you press a key, the program will
prompt you 'Make another copy of this diskette? (Y/N)'. At
this point you can try again with a different Target diskette:
Answer Y and at the next prompt, replace the problem diskette
with the new Target diskette. Otherwise, press N to stop
trying to make this copy.
*** Error reading Cylinder: n ***
An error occured trying to read Source cylinder number n. The
program recovers by reading each sector in the cylinder and
where the error occurs, storing dummy data. This dummy data
along with the good data is what is written to the Target. If
the bad areas occured where the Source diskette file allocation
table marked them as bad, all should be OK. Otherwise, the
Target diskette may not be usable.
Errors found reading Source diskette
Target diskette may be unusable!
Press a key to continue . . .
The program experienced one or more errors reading from the
Source diskette and tried to recover from them (see message
above). This warning is given as a reminder after writing to
the Target is complete.
Insufficient memory to proceed
Press a key to exit . . .
The program to could not find enough memory to do copying.
Unknown Disk Type - Copy aborted . . .
Press a key to exit . . .
The program could not recognize the floppy disk as a valid MS-
DOS disk. Because some ramdisk programs set the media
descriptor to unusual values (i.e., they do not make an exact
clone of a floppy in ram), CPYDSK will refuse to recognize
these as valid floppy disks.
Insufficient memory to use temp disk for copy
Proceeding without using temp disk . . .
The program was unable to set up a scratch pad to store data
read from the Source Floppy before writing it to the temporary
storage disk. The program will proceed without using the hard
disk.
Temp file cannot be on Source or Target
The drive specified to temporarily hold Source data was
either the same as the Source drive or the Target drive.
If the 'Change options' option was set to 'N' or the
command line option was /nowait, the optionis reset and you
are placed back in the menu to change the drive specified.
The <Esc> key can be specified to abort the operation if
desired at this point.
Drive d: is not a hard disk!
The drive 'd:' specified for temporary Source data storage
was not recognized as a hard disk. If the 'Change options'
option was set to 'N' or the command line option was
/nowait, it is reset and you are placed back in the menu to
change the hard disk specified. The <Esc> key can be
specified to abort the operation if desired at this point.
If you want the temporary file to be on a floppy (different
from the Source or Target) or a ramdisk that looks like a
floppy, restart CPYDSK with the /relax switch.
Unable to open temp file for diskcopy
The program was not able to open the temporary file on the
specified disk for storing Source data. As with the
previous message, the 'Change options' option is reset to
'Y' and you are placed in the menu to change the disk
specified. The <Esc> key can be specified to abort the
operation if desired at this point.
Wrong DOS version! Requires DOS 2.0 or higher
The program must be running under MS-DOS 2.0 or higher.
CPYDSK REGISTRATION FORM
Name ________________________________________________
(Company name) ________________________________________________
Address ________________________________________________
City _______________________State______Zip___________
Registration Fee per copy of CPYDSK is $10.00
Number of copies being registered ________ $ __________
The current CPYDSK release is $5.00 per diskette
Diskette format (check one): 5.25" ____ 3.5" ____
Number of diskettes ________ $ __________
Total $ __________
Please make checks out to R. Frazier. Send to:
CPYDSK REGISTRATION
179 Westridge Dr.
Petaluma, CA 94952
Registration will license you to use all future releases of
CPYDSK. You will never have to pay an "update" charge.
The authors can be contacted in writing at the address above or
on Directory Assistance BBS, (707) 538-8710.
We would greatly appreciate your comments, suggestions for
improvement and information on where and how you obtained
CPYDSK.