home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Gold Fish 1
/
GoldFishApril1994_CD2.img
/
d4xx
/
d447
/
dfc
/
dfc5.doc
< prev
next >
Wrap
Text File
|
1991-02-02
|
8KB
|
180 lines
DFC5 --- A disk formatter/copier
Written by Tom Rokicki & Sebastiano Vigna
DFC5 is a new, exciting, general-purpose disk copier and formatter
which we hope will meet the needs of a large number of Amiga users.
This program is essentially a development of Tom Rokicki's previous
DFC4 program: the principle adopted has been to eliminate everything
that wasn't absolutely necessary, to reduce the size of the program as
much as possible, to squeeze every ounce of speed from the standard
trackdisk.device through an utterly async design, and to incorporate a
number of useful thrills such as voice, multiple passes copies and
checksum for the RAM buffer.
Main features:
- DFC5 copies from/to any combination of Amiga drives.
- DFC5 has a switchable 880K RAM buffer that allows for any number of
duplicates while only reading the source disk once. The combination
of destination drives can be changed at each pass.
- DFC5 checksums the RAM buffer. If some badly written program is
trashing your memory, you are alerted. Thus, buffered copies are as
safe as direct copies.
- DFC5 is smaller than 11.5K, and even on a 1 megabyte Amiga you should
be able to do single-pass multiple copies.
- DFC5 will automatically switch to multiple (2, 3, or 4) pass copies
if there isn't enough memory for a full 880K buffer. This even allows
for making multiple copies with multiple passes on any Amiga.
- DFC5 starts from track 79---no more last-moment verify errors!
- DFC5 lets you retry/skip any read, write or verify errors.
- DFC5 is highly system-friendly. Only drives actually used are
inhibited, and the use of CPU time is negligible.
- DFC5 is totally asynchronous, both in handling the disk and in the
user interface; you can, for instance, turn verify on/off at any time,
even while copying.
- DFC5 has the option of incrementing the creation date of the copy
so AmigaDOS doesn't get confused. If, however, the option is switched
on and the disk in not an AmigaDOS disk, the user is alerted.
- DFC5 can be activated many times, and each copy can do a different
task; for instance you can copy from DF0: to DF1:, while formatting
DF2: and doing a multiple pass copy on DF3:!
- DFC5 is faster than diskcopy---actually it pushes the use of the
standard trackdisk.device to its limits (125 secs for a disk-to-disk
copy).
- DFC5 alerts the user with sound (and optionally voice) about the
operations in progress---so you can really be doing something else!
- DFC5 can format both OFS and FFS disks.
To use DFC5, you have simply to click on its icon. You will see four
rows of gadgets. The first one has at most one gadget selected: it's
the source. The second one lets you select the destination drive(s).
The third one contains the option gadgets. The fourth one contains
the action gadgets. Notice that the Auto gadget is currently
disabled; because of a bug in the 1.3 trackdisk.device, its
implementation has been delayed to a 2.0-only version of the program.
Every gadget can be activated via mouse or via keyboard. The first row
can be activated with 0,1,2,3, and the second one with 4,5,6,7. For the
other gadgets, you can use the capital letter of its name. The only
exception is FFS, which will be activated by N (New File System). F
is already used for FORMAT. As a bonus, you can use Q or ESC to exit,
instead of hitting the close gadget. Finally, you can use RETURN to
start a copy operation---which means GO for a non-buffered copy, and
REPEAT for a buffered copy (see below).
- VERIFY turns on and off verify at any time (you can also format
without verifying)---but this is not recommended.
- BUFFER allocates a buffer to make multiple copies. Once a buffer
is allocated, you can select the same drive for source and
destination, and you can select REPEAT to make another copy of the
same disk without rereading the original. If DFC5 can't allocate an
880K buffer, it will try to allocate one for 2, 3 or 4 passes copies,
and will alert the user accordingly (if no buffer at all can be
allocated, a warning is issued). To do multiple pass copies, GO a
first time, REPEAT the first disk chunk for all the disks you need, GO
another time to read another disk chunk etc.
- TALK activates DFC5's abilities to give its status by voice.
Currently only English is supported.
- FFS enables the formatting of an FFS disk; for copying it is
ignored.
- DATE toggles on or off the slight change of the date of an AmigaDOS
disk. This change is necessary so AmigaDOS can distinguish otherwise
identical disks; if two truly identical disks are inserted in the
drives, AmigaDOS gets confused and crashes. However, if for some
reason you want a ``physical'' copy, you would turn off this option.
A non-AmigaDOS disk copied with the DATE option on will generate a
warning, since this option will probably subtly corrupt the disk. You
have time to switch off the DATE option, if you want, until the
progress bar is in the middle.
- STOP will stop at any time any operation. Note that pressing STOP
while a multiple pass copy buffer is allocated and no copy operation
is running will reset the pass counter (i.e., you can start a fresh
new copy).
- GO copies from the source to the destination if BUFFER is switched
off, or copies from the source to the buffer if BUFFER is switched on.
- REPEAT works only with the buffer, and writes it to all
destinations. Note that when the buffer is on, you can select the
same drive both in the source row and in the destination row. This
allows, for instance, to read a source from df0: and then write it to
both df0: and df1:.
- FORMAT formats all destination drives. If VERIFY is selected, the
process is verified.
DFC5 will issue requesters if it finds an error on read, write, or
verify. You can ask to retry the operation or you can choose that you
don't want to bother yourself with it. If you want to stop, it's
usually better to first press the STOP gadget and then cancel the
requester, or another requester might be issued between the two
operations. Note that errors from the Unit 4 are checksum errors of
the RAM buffer.
Because of a bug in the 1.3 trackdisk.device, a track with an error on
a sector in it might be read completely wrong, yielding incorrect data
even on the good sectors.
Please note that you have absolute freedom in the use of the RAM
buffer: this means some more care, too. For instance, if while doing
multiple pass copies you STOP two times, the pass counter will be
reset. But if you hit REPEAT at this time (before reading a new chunk
with GO), DFC5 will write on what it thinks is the ``last pass read'',
i.e., the last chunk of disk, even if this wasn't actually the last
piece of disk read. If you STOP while you're reading into the buffer,
DFC5 will not increase the pass counter, since it thinks you have put
in the wrong disk or something like that. This means also that
REPEATing at this time will write on the previous disk chunk, with the
first tracks probably trashed by the stopped GO operation. So be
careful. A more restrictive mechanism will be implemented in the
2.0-only release.
The progress bar is drawn in a different color if you're doing a GO
for a buffered operation---so you can be sure you read the new chunk
in the buffer. Note also that the progress bar is not updated if
something locked the screen (like using menus). The update is delayed
until the screen is unlocked (thus DFC5 won't get stuck as will almost
all programs which do any rendering to their windows).
This program is in the public domain; anyone can do anything they want
with it. This software is made available on an as-is basis; don't
come to us if you destroy your entire fish disk library with it! Of
course, it was tested rather extensively before it was released . . .
Comments, complaints, desiderata are welcome.
Tomas Rokicki Sebastiano Vigna
Box 2081 BIX: svigna
Stanford, CA 94309. Via Valparaiso, 18
U.S.A. I-20144 Milano ITALY