[comp.sys.ibm.pc.hardware] initializing scsi hard drive

gwoho@nntp-server.caltech.edu (g liu) (02/04/91)

i have a scsi hard drive. presumable the drive is suposed to know where
all the bad tracks are and aviod them, so it appears to have no
bad tracks.  it however has a bad track that is not in its list of
bad blocks. if i send a command to read it, it never responds.
(its a st277n)
there is what looks like a battery on the drive.
what happens if i remove it?
i want to know how i can tell the drive to low level format itself,
check for bad blocks and store them in the memory.
if i just remove the batery, i supose the memory would go, and the drive
would have to do a media analysys and remark the bad tracks. either that
or quit working forever. (or maybe until i send it the right command)
(i have the software to send arbitrary commands down the scsi)
i have a future domain tmc880 controller.
any help would be appreciated.
gwoho liu.

hanke@nessie.cs.id.ethz.ch (Norbert Hanke) (02/05/91)

If you can execute arbitrary SCSI commands, you might try to issue a
FORMAT UNIT command. Command format:

Byte 0     0    0    0    0    0    1    0    0     X'04'
Byte 1     ----LUN----   FmtD CmpL  DefectListForm. 
Byte 2     0    0    0    0    0    0    0    0     X'00'
Byte 3     Interleaving factor (MSB)
Byte 4     Interleaving factor (LSB)
Byte 5     0    0    0    0    0    0   Flag Link

The FmtD, CmpL and DefectListForm fields are rather difficult to use, my
Fuji manuals has 10 pages dealing with these; I suggest leaving them at
zero. This should work with most SCSI drives.

Norbert Hanke
ETH Zurich