Hacking Drive Setup 1.3.x : Usenet posts

Recently the following very interesting post showed up at comp.sys.mac.hardware.storage.
It explains a bit more how Drive Setup determines what drives are supported.

A reply was posted later.

Subject: Hacking Drive Setup to support Fireball 6.4S
Date: Thu, 18 Dec 1997 01:38:20 GMT
From: nebulus@netcom.com (Bruce McDiffett)
Organization: Cineplex Odious
Newsgroups: comp.sys.mac.hardware.storage,comp.sys.mac.hardware.misc


I just finished installing, formatting, testing, and starting to use a
new Quantum Fireball 6.4ST (that's 6.4GB, fast, narrow, SCSI) on my
PowerMac 8600/200, and I thought I'd share my experiences, in the hope
someone else might save a few minutes later on.

I suppose I should protect my posterior by reminding you that hacking any
software is risky, formatting disk drives always dangerous.  Make sure
you have backups of everything before you start fooling around - unless
you're merely interested in contributing to the overall entropy of the
universe, in which case you should just switch to Windows and be done 
with it.

First off, the system's a pretty straight up 8600.  The internal 2.1G
Fireball is partitioned to run System 7.6 off one partition, OS 8 off
another.  The results I'll be discussing apply to both systems.  I
haven't tried any of this on any other machines, so YMMV.

I bought the drive from All Macs (1.800.WE-FIX-MACS) for $379.95, not a
bad deal for a 6.4GB drive.  I opted for a Fireball instead of, say,
one of the firesale Micropolis Tomahawks or IBM UltraStars, mainly
because I didn't want any problems.  I figured that if the internal
Fireball that shipped with the drive has worked well (which it has),
then I ought to have few problems using a larger version of the same
drive.  So far, this has proven true (though these are the kinds of
pronouncements that rattle through the fabric of space and time to
bring down the wrath of the almighty Murphy.  :-> ).

Installation of the hardware was trivial - I continue to love the
chassis design on the 8600!  The only extra hardware I needed was the
four small screws to fasten the drive to the 8600's mounting bracket. I
chose to install the drive internally since the internal bus supports fast
(10MB/sec) transfers - the external bus only 5MB/sec.

Next was the formatting step - and this was the tricky part.  I wanted
to use the same driver on both the original and the new Fireballs, but
Apple's Drive Setup (at least up to 1.3.1) claims that the 6.4S is
"unsupported."  The problem seems to be a bit that's set in the
Fireball code in Drive Setup. There are a couple of ways around it, all
of which seem to work fine and install functionally identical drivers
on the disk.  The following procedure is just one of the ways, but is the
most error-resistant, IMHO:

    1. Make a copy of Drive Setup 1.3.1.
    2. Open the copy with a resource editor (I prefer Resourcerer).
    3. Find all resources of types 'fSCR'

        You'll note that these all have names that resemble disk drives,
        such as "SEAGATE,ST12550N" or "CONNER,CP2255-240Mb" .

    4. Delete all resources other than the one named "QUANTUM,*" .

        As long as the resource named "QUANTUM,FIREBALL*" is in the
        resource fork, Drive Setup will continue to report the 6.4S as
        unsupported. Once it's removed, the code flows through to the
        "QUANTUM,*" entry and the drive can be initialized.

        It is possible to hack the "QUANTUM,FIREBALL*" entry to allow
        the 6.4S to be recognized, but just removing the whole resource
        seems to be a less error-prone procedure.  If you're
        interested, you can change the hex sequence at offset 0x34 from

            0007 0800 0000 0001    to

            0007 0800 0000 0000

        and achieve the same result.  I don't know what other side
        effects (on other Fireballs, for example) this change might have.

        I'm suggesting you remove all the other resources just to make
        sure you don't accidentally propagate a mangled copy of Drive
        Setup.  With all the other resources removed, this copy will
        pretty rapidly be detected as special-purpose, even if mislabelled.

    5. Save your new copy of Drive Setup (in an outburst of uncontrolled
    originality, I named this new copy "Drive Setup, Quantum,* only").

    6. Now when you run Drive Setup, it should  recognize the 6.4S just 
    fine, and do all of its standard stuff (all the updating, partitioning,
    and low-level formatting seems to work repeatably and reliably).

I chose seven partitions, one 180MB system partition, and 6 1GB partitions
(makes for easy backup for me).

I tested the performance of the drive using FWB's Hard Disk Toolkit
2.0.6, and the v8.0.8 version of the Apple driver on the new 6.4S matched
that of v8.0.6 on the original 2.1 drive.

Since I was in a disk-formatting state of mind, I also used FWB HDT 2.0.6
to reformat the new drive, just to see if the FWB driver was faster.  The
results from HDT's BenchTest showed almost no difference between the
FWB and Apple drivers, so I reverted to the Apple driver.  I didn't need
the added complexity when bug-hunting, and I want future OS updates
from Apple to be able to update the disk driver directly.

In case you're curious, the results from Bench Test on the new drive are
as follows:

    Sustained read:      7.1 MB/sec (low 6.7, high 7.7)
    Sustained write:     8.9 MB/sec (low 8.7, high 9.0)

    Avg. access:        10.2 ms
    Avg. seek            3.1 ms

    Reads/sec         1824
    Writes/sec         597

    Random reads were averaging about 2.5 MB/sec (over a range of sizes).

    I also found having the Iomega Zip driver (v5.0.3) loaded would
    reduce the sustained read and write rates by almost 2.5 MB/sec (!).
    I only mount Zips manually now.  :->

So far the drive has worked well - it's fast, relatively quiet, and most
importantly, hasn't caused me any problems.  Good luck in your own
adventures in data destruction!

Microsoft Internet Explorer - Who Do You Have To Blow Today?

The following was posted as a reply. It explains a bit more.

Subject: Re: Hacking Drive Setup to support Fireball 6.4S
Date: Mon, 22 Dec 1997 13:19:17 +0100
From: a8604659@unet.univie.ac.at (Joerg Erdei)
Organization: University of Vienna
Newsgroups: comp.sys.mac.hardware.storage,comp.sys.mac.hardware.misc
References: <nebulusELD37x.JI2@netcom.com> <3499005F.CF5@mail1.nai.net>

John Albert <jalbert@mail1.nai.net> wrote:

> Bruce, thanks for a VERY informative posting. This is the first "hack"
> of Drive Setup that I have seen that actually WORKS on many
> non-Apple-labeled Quantums. I've tried other "step-by-step" approaches,
> as posted either here or on the web, and none worked. Drive Setup still
> "saw" my Quantum Lightning 730s as "non-supported", and refused to "act"
> upon it.
> I think the "key" to getting this hack to work reliably is the step
> that deletes ALL other "fSCR" resources, other than the "generic" one
> for a given manufacturer, in this case, Quantum.
> Thanks again.

The "key" is: Drive Setup looks for all its fSCR resources one after one
by ID and the first one that 'fits' (regarding to the disk name) will be
used. Then the bit at $3B tells the formatter if it should do an 'Apple
Vendor Interrogation'. This is where the non-Apple Fireballs get the
'not supported'. Most universal resources like Quantum,* don't have that
bit set and will work, but as said, the Fireballs are cought into the
Quantum,Fireball* and never reach the Quantum,*. But if you look through
all the resources the Quantum Fireballs are a very special case
(partially universal fSCR).

If I will ever have spare time I will compare all universal fSCR
resources and try to create a real universal fSCR (* or *,*).
FYI: renaming Quantum.* to Fujitsu.* will work with (all ?) Fujitsu


eMail:      a8604659@unet.univie.ac.at

Click here to return to my homepage.