🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.sys.amiga.tech
Article #9762

Re: Possibilities for speeding/expanding standard floppies

#9762
From: Dave Haynie
Date: Mon, 12 Sep 1988 18:32
70 lines
4396 bytes
in article <5565@pasteur.Berkeley.EDU>, koster@cory.Berkeley.EDU (David Ashley) says:
> 
> Maybe they can be turned off with an action_inhibit. Anyway, 18 percent is a
> worthy increase, and at the same time, improvements could be incorporated. I
> have seen IBM PC's, with their measly 8088, do very fast disk directories.

You must be using that "Dir" command built into the IBM's COMMAND.COM.  A real
Dir command, loaded from disk like an AmigaDOS Dir command, can be painfully
slow on an IBM (specifically an 8088 based machine like the Bridge Card).  Not
only that, but you pay for the IBM's disk layout in other ways.  For instance,
try searching 12 different rather full directories in your search path on an
IBM.  You barely notice delay on an Amiga.  Try large multiple-file copies.  The
Amiga's file system is inherently better than the IBM's at some tasks, the IBM's
is no doubt better than the Amiga's at other tasks.

> The Amiga, on the other hand, stores file headers as linked lists so that to
> get a directory will require reads over the whole disk. [...[
> Also better error checking could be used. The Amiga will throw away an
> entire track, 11 independent sectors, if any of the checksums in any
> of the sectors is bad. 

You're confusing two different pieces of Amiga software here.  Sure you're not
using that IBM more that you should be?  The directory format is a function
of the File System, which is a program used directly by AmigaDOS.  It determines
the layout and allocation of data blocks on a disk, and may include a level of
checking (Standard FileSystem runs a simple 32 bit checksum on each block, 
FFS doesn't).

The problem you're seeing with entire tracks getting clobbered is a function
of the trackdisk.device, the Amiga EXEC device driver that all programs, file
systems included, will use to read, write, or format blocks of data.  Similar
programs are called by file systems to support hard disks or ram disks.  The
action a device driver takes is completely up to that driver.  

> Don't let anyone fool you; this was a short-cut. The people that made the 
> Amiga just didn't want to spend time trying to recover from disk errors...

The trackdisk driver keeps two checksums on each 512 byte block, but they're not 
very good check mechanisms.  They could have been better.  The recovery could 
have been better too, but don't kid yourself; there's alot of code involved in
reading the Amiga floppies.  The trackdisk device must completely decode the
RAW MFM format the Paula chip returns from the floppies.  This format has been
chosen to be easily decoded in a single blit operation, but it's still not
trivial.  And unlike IBM machines, there aren't really 11 independent sectors
(though an IBM can only give you 9 here anyway); the track is always read
and written as a single track.  That's the only way it can be accessed.  The 11
sectors you get are just a convention of the formatting software.  There are 
more possibilities on a bad track than just a single bad "sector".  For 
example, if the floppy drive died in mid-write, you might end up with two 
readable copies of 4 or 5 sectors, no valid versions of all the remaining
sectors.  If you need better recovery of disks gone bad, DiskSalv 1.2 will
handle some bad track stuff like this, it's free, and it'll be out in a week or
two.  This level of recover really doesn't belong in the trackdisk.device.

> What is FFS? 

A filing system that's part of Amiga OS V1.3.  It's intended mainly for hard
disk drives, and, in concert with a good DMA driven hard disk controller, is one 
of the fastest filing systems you'll find on any microcomputer.



Does that mean I should delete all the stuff I wrote?

> David Ashley
> koster@cory.berkeley.edu (Soon to be turned off)
-- 
Dave Haynie  "The 32 Bit Guy"     Commodore-Amiga  "The Crew That Never Rests"
   {ihnp4|uunet|rutgers}!cbmvax!daveh      PLINK: D-DAVE H     BIX: hazy
		"I can't relax, 'cause I'm a Boinger!"
Technical Details
Message-ID: <4705@cbmvax.UUCP>
Path: arc1-ca.pugleaf.net!utzoo!attcan!uunet!cbmvax!daveh
References: <5565@pasteur.Berkeley.EDU>

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!attcan!uunet!cbmvax!daveh
From: daveh@cbmvax.UUCP (Dave Haynie)
Newsgroups: comp.sys.amiga.tech
Subject: Re: Possibilities for speeding/expanding standard floppies
Message-ID: <4705@cbmvax.UUCP>
Date: 12 Sep 88 18:32:21 GMT
References: <5565@pasteur.Berkeley.EDU>
Organization: Commodore Technology, West Chester, PA
Lines: 70