Sounds like it to me, as well. Point being that an 8-bit transfer to the
data register on a drive expecting to return 16-bits won't work.
However, a 16-bit transfer to a drive expecting to return 8 bits WILL,
because the motherboard examines IOCS16 and and will break the
transfer into two 8-bit transfers if required. This was done for
compatibility with the original PC when the PC/AT came out.
In other words, 16-bit transfers always work. 8-bit transfers MIGHT work
IF you know the drive is an 8-bit drive. But it's pretty unlikely that
the drive will be an 8-bit drive, unless it's CompactFlash in 8-bit mode.
I'm pretty certain that the fourth rule is speaking only about the data
register, which is specifically excluded from the first rule, but the
wording of the fourth rule doesn't make that clear. Perhaps you dropped a
"data" between "transferring" and "in"? I don't have a copy of the spec
Essentially, rule 4 says that the 8-bit data register option has been
dropped by PIO modes 3 or 4. The data register is always 16 bits in
those modes. Since a 16-bit data register is also valid in PIO modes 0,
1, or 2, I think it's unlikely that a recent drive will support 8-bit
data when operating in those modes (does the drive even know what the PIO
mode is?); somebody would have had to go pretty far out of their way to
make it happen.
-----BEGIN GEEK CODE BLOCK-----
GCS/P d- s:+++ a+ C++ UB--(++++) !P L- !E W++ N++ o-- K w O- M+ V+++ PS+
PE++ Y+ PGP t+ 5+ X-- R tv++ b++ DI+++ D+ G e++ h--- r+++ z+++
------END GEEK CODE BLOCK------