On 8/17/2016 6:17 PM, Chuck Guzis wrote:
On 08/17/2016 02:59 PM, js at
cimmeri.com wrote:
Hi, Chuck. Excellent question -- and they do
respond per your
minimum, but beyond that, I'm not sure. When a drive wouldn't work,
I only thought to check for unit ready, unit identify, and to see
what would happen with a START or STOP unit command.
Even the Teac MT-2ST would respond to those 3 (for the START or STOP
command, it retensions the entire tape). Interestingly, the Teac
also doesn't provide a unit name like all the others do eg. "ARCHIVE
PYTHON etc..." It just shows up as a blank during bootup on a PC
with an Adaptec SCSI card. This lack of name seems to make it
invisible to Windows (XP) ASPI.
I have MSDOS software than allows one to issue direct SCSI commands,
but doing that is beyond my present know-how.
Well, that's all good. SCSI
tape covers a lot of ground--from 9 track
1/2" open-reel drives and includes various technologies, from simple
DCxxx QIC carts, to DDS, SLT, DLT... All have their peculiarities.
For example, some permit rewriting of blocks; others put this strictly
off-limits. Lots of features are vendor-optional, which include things
such as partitioned data sets and robot auto-loaders. Read-after-write
verification is optional (but is a good thing, particularly if the drive
firmware includes recovery by erase-and-rewrite.
Linux can be pretty decent about a one-size fits all and has several
optional packages that people have submitted, including the st toolkit.
If you can program C, I might have some DOS I/O library functions that
may interest you.
Generally speaking, the "safe, always there" commands are INQUIRY
(0x12), TEST UNIT READY (0x00), REWIND (0x01), REQUEST SENSE (0x03),
READ(6) (0x08), WRITE(6) (0x0a) WRITE FILEMARKS (0x10), MODE SENSE
(0x1a), MODE SELECT (0x15), UNLOAD (0x1b) and perhaps SPACE (0x11).
Chuck,
Where might I find information on how to form SCSI command data blocks so as to try the
above commands? I sent just an "01" to the TEAC MT-2ST, and it did rewind..
but did not react to any of the other above commands just by sending single bytes.
Oddly, the OnStream drive did *not* accept an 01 command.
Thank you-
-John
Of course, commands such as MODE SENSE, MODE SELECT
and REQUEST SENSE
have variable implementations. Status for a given condition isn't
guaranteed to be the same across devices; for instance on the Qualstar
SCSI half-inch drives like to return a record of zero length instead of
setting the "filemark hit" status on a read operation.
Generally speaking, however, as long as you stick to the above list and
the simplest options, you'll be good with anything.
--Chuck