

THE SCSI HACKER  V1.1

A Format/Uitility Program for Apple's SCSI Card
And ANY Hard Drive


!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!! WARNING !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

THE SCSI HACKER IS A "NO FRILLS" PROGRAM DESIGNED FOR THOSE WHO
UNDERSTAND HARD DISK LOW-LEVEL FORMATTING (AND ITS IMPLICATIONS). THE
PROGRAM HAS LIMITED WARNING MESSAGES AND NO HELP MENUS. IT IS CAPABLE
OF TOTALLY DESTROYING ALL DATA ON ANY HARD DISK CONNECTED TO AN APPLE
SCSI CARD, WITHOUT ANY CHANCE OF RECOVERY VIA "UNDELETE" TYPE
PROGRAMS, ETC. THEREFORE, IF YOU DO NOT WHAT YOUR DOING, DO NOT USE
THIS PROGRAM!


(C) 1988 Joe Jaworski
18405 Tamarind Street
Fountain Valley, CA 92708
                                       GEnie: JVJAWORSKI
                                  CompuServe: [73307,310]


THE SCSI HACKER is FREEWARE. It is copyright material but you may use
it and/or distribute it free of charge to anyone for personal,
non-commercial use.


Revision History:

Version 1.0   First Release             12/19/88
Version 1.1   Fix Error reporting bug    3/19/89




To get the most out of SCSI HACKER, you will need the following:

1)   Apple SCSI Card (Rev C. EPROMs)

2)   A SCSI Integrated Hard Drive or ST506/SCSI Controller

3)   HDSCPartition program (included on the SCSI.TOOLS diskette)

4)   ADV.DISK.UTIL (from the GS System Tools diskette)

5)   DiskTimerGS (FREEWARE program, available on most BBSs)




INTRODUCTION

THE SCSI HACKER allows you to low-level format any hard disk drive in
your choice of interleaves. This will allow you to optimize your hard
drive for the fastest possible speed. It also provides an extended
("overnight") test program that will verify proper operation of a disk
after formatting. In addition, you can selectively park the heads on
any drive connected to the SCSI Bus.

Needless to say, you should have adequate backup before experimenting
with this program.


MAIN MENU

After launching, THE SCSI HACKER provides the following options in its
Main Menu. If you get an error message, either a SCSI Card was not
found in any of your slots or there are no devices currently active on
the SCSI Bus. If you get an SMP/ProDOS Error and an error number, see
note 6 in the section on troubleshooting at the end of this file.

NOTE: The Apple SCSI Card only issues a SCSI HARD RESET on power-up.
Among other things, this forces you to power-up your drive before your
system (unless the drive your using can respond to UNIT READYs before
the motor is up to speed). If things aren't working properly,
power-down for 10 seconds and power back up again- Drive first, then
Computer second.

Test Unit: This option performs a READ test of every block on a
formatted partition. It uses what is a called a "butterfly" test, in
which blocks are tested from the lowest to the highest and then are
incrementally changed, which excersizes the stepper motor and most of
the electronics on the hard drive. This test is non-destructive (only
does READs) to the data on the drive. If you receive an error, HACKER
will report the logical block number that is bad. Run Mr.Fixit or any
other bad-block lockout program to prevent ProDOS from using the
block. Depending upon how defects are mapped on your drive, bad blocks
may be normal.

Select Unit: This option allows you to select any unit currently
active on the SCSI bus. The currently selected volume (if any) is
listed at the bottom of the screen. Also included is the current slot.
If you have two SCSI cards installed in your system, only the one in
the upper-most physical slot can be used with SCSI HACKER.

Low-Level Format: This option allows you to perform a low-level format
of any drive. You will also have the opportunity to select an
interleave value for the low-level format. This test is destructive,
destroying all data, all partitions, and all directories on the drive
selected.

For the last time, don't play games with your data. Do a full back-up
before using this program.

Park Heads: This test will allow you to park the heads of any and/or
all devices currently active on the SCSI Bus.

Quit: This exits you from THE SCSI HACKER, getting you back to more
friendly territory.





OPTIMIZING YOUR HARD DRIVE

A Proper Interleave setting of your hard disk can make a tremendous
difference in performance. Most manufacturers who sell hard drives
(especially those who do in different markets) optimize the interleave
factor for either the IBM-XT or the Mac. These systems are faster that
IIGS's and use interleave factors that are completely different. The
object here is to maximize the interleave for the IIGS and GS/OS. Once
done properly, you will truly notice a speed-up in Disk I/O when using
your everyday applications.

A few notes that will save you headaches:

1) Low-level Format your drive at room temperature. I've worked on
these things long enough to know that most drives suffer from
temperature differential problems, aggrevated at the high end. Leave
your system powered-on for a half-hour before starting.

2) Make sure the drive is terminated. Look near the connector on the
Drive's printed circuit board for resistor termination packs. Make
sure they're firmly in their sockets. Also set the SCSI ID to 6 (for
single drive setups) and if you have a choice of LUN settings (see
your drive/subsystem manual), set the drive for LUN 0.


FINDING THE BEST INTERLEAVE

The first step is to find the best interleave for your setup. This is
a trial and error period that will take some time, but once done,
you'll never have to do it again.

Step by Step Procedure:

1) Low-level format the drive using the low-level format option in the
Main Menu. As a starting point, set the interleave value to 5.

2) After formatting is completed, Run the HDSCPartition program that
came on the SCSI.TOOLS diskette included with your Apple SCSI Card.

NOTE: If you have upgraded your SCSI card to a Rev C ROM via your
dealer, make sure you also get a copy of the diskette called "SCSI
Card Utilities". If your dealer is stupid (not uncommon), ask him if
you can make a copy of the diskette included in the box with the new
SCSI cards.

With HDSCPartition, It doesn't matter what partition sizes you set at
this point, as long as you set one that is at least 10 megabytes in
size.

NOTE: If you're launching these programs from the FINDER, be sure to
answer EJECT from the Finder's request to initialize the volume. DO
NOT use the Advanced Disk Utility (ADU) at this point. The two
programs do two different things. HDSCPartition creates a DPM (Device
Partition Map), while ADU will only allow you to modify the DPM. If
ADU doesn't find a DPM, it will low-level format your drive at 1:1
interleave, something you do not want. Hence, don't use ADU at this
time.

3) After running HDSC partition and then quitting, answer "Initialize"
to the Finder's prompts this time, instead of EJECT. This will
high-level format your drive, allowing you to name the volume(s). If
you're not using the FINDER, run Copy II Plus or the FILER or any
other program that does high-level formatting. Name the disk(s)
anything you want. At this point, don't worry about capacity, even if
your 64 Magabyte drive only shows up as 20 Megabytes. We'll be fixing
that shortly.

The High-Level Format should take only a few seconds. If it takes
longer, (indicating that a low-level format has been forced), you
messed up somewhere, so go back and start over.

4) Put a Copy of DiskTimerGS on the new volume and launch it from
there. Write down the test results.

5) Now try an interleave factor of 10 ($0A), going through each step
again. Now do it again with 15($0F).

What we're doing at this point is finding the best interleave factor.
For example, suppose you get the following results from DiskTimerGS:


InterLeave:         5($05)    10($0A)   15($0F)   20($14)

READ Timing:        90        61        69        78


In this example, the READ numbers from DiskTimerGS got dramatically
better when going from an interleave of 5 to 10. This means that the
optimum interleave factor is somewhere between 5 and 10. (Don't
concern yourself with the SEEK or ADAPTER numbers from DiskTimerGS).
Also, you might want to run DiskTimerGS twice each time to make sure
your numbers are stable.

Now go back and do the interleave one at time, from 5 through 10. Your
results might look like this:


InterLeave:      5($05)    6($06)   7($07)   8($08)  9($09)

READ Timing:     90        95       96       58      59

Bingo! An interleave of 8 is best. This is where the READ timing drops
off dramatically. However, as a rule of thumb always add 1 or 2 to get
best overall performance when using real applications. Therefore, the
best interleave for your drive is 9 or 10.

Now do the following:

1) Reformat at an interleave of 10 (if needed).

2) Run HDSCPartition as described above.

3) Run ADU.

4) Select your drive and set up your partitions exactly the way you
want them. You should now get your full capacity. The partitions will
be named "Apple //" from HDSCPartition. Name them to whatever you want
to use as the volume names, adjusting partition size accordingly.

5) You're Done! Your hard drive will now work at peak performance.


USING TEST

It's a good idea to run the TEST option at least two passes on each
partition before using your drive. TEST will run continuously until
stopped by the ESC key, so if you want, you can run it overnight or
all day while you're at work. Be patient. Even two passes can take
over an hour, depending upon the capacity of your drive. You'll have
to high-level format the drive before running test.


PROBLEMS, TROUBLESHOOTING, CAVEATS

1) It has been reported that PARK doesn't work right on Chinook
drives. The park routine simply issues a SCSI STOP UNIT command to the
unit selected. However, Seagate, Quantum, and Rodime drives support
this command, as it is part of the Common Command Set and Apple's SCSI
variation.

2) If your subsystem uses an ST-506 drive and a separate SCSI
controller (in addition to Apple's SCSI card), make sure the drive's
defects are recorded in the Primary List. The low-level format routine
will map out primary list defects, but not grown defects. You may have
to use an IBM or Mac with appropriate software to access the Mode
Select pages to do this. Check the manual of the Controller. An
alternative to fixing defects is to run a bad block mapping program
(ala Mr.Fixit), but this is a less reliable method of finding all the
media defects.

3) If your low-level format operation takes a horrendous amount of
time, your controller is probably doing media Certifies. This is good,
since all defects are being mapped out for you. Be patient.

4) SCSI HACKER won't run if it doesn't find an Apple SCSI card and at
least one Unit on the SCSI Bus that will respond to a UNIT READY
command. Therefore, the program won't work if you try to use it with
anyone elses Apple Disk Controller card.

5) The permissable Interleave Factors are governed by the physical
number of sectors on your drive. For standard RLL 26 sector units, you
can use from 0 to 25 (0 or 1 will both format out to an interleave
factor of 1). For 13 sector MFM drives, expect a range of 0 through
12. SCSI HACKER won't format if you specify a number out of range and
will report an error message.

6) All error numbers reported are passed from the SmartPort and/or
ProDOS 8. See APDA's SCSI reference manual or the ProDOS 8 reference
manual for a list of error codes and their meanings.


Most of all, have Fun! And I hope I took a little mystery out of this
Hard disk game.
-Joe




