| For this to be possible, both the following would have to be true :-
o There would have to exist a native SCSI command that would
do this. But, according to my non-current SCSI spec, both the
READ LONG and READ(10) commands only allows 2 bytes for the
transfer length, which means that the limit is 64K bytes.
Of course, there might have been an improvement here or there
might even be a vendor-specific SCSI command that would do
this for certain disk drives.
If it were me, I'd ask this question in ASK_SSAG.
o There would have to exist a means within WIN32 of sending
a native SCSI command to a disk drive - a bit like
IO$_DIAGNOSE under OpenVMS.
You could try the NT Developers conference for an
answer to this question ...
Hope this gets some discussion going ...
/Ian
|
| re .2 - allowed transfer length with SCSI commands ...
READ(6) has one byte to count logical blocks
(256*512 -> 131,072 bytes)
(00h means 256 blocks)
READ(10) has two bytes to count logical blocks
(65535*512 -> 33,553,920 bytes)
(0000h means 0 blocks)
READ LONG has two bytes to count bytes
Early SCSI chips we used had only a sixteen-bit byte counter (5380).
Later chips had 24-bit (53C810) and 32-bit (1040B) counters. The
actual transfer length limitaion is specific to each operating system.
(I recall early versions of the OpenVMS SCSI drivers only allowed for
127-block transfers, maybe that's been increased in later versions.)
-- Kenny House
|