This message is from the T13 list server.
On 4/15/02, Pat LaVarre <[EMAIL PROTECTED]> wrote: >Sorry, when it's Microsoft vs. Ansi, Microsoft wins. > >Here, however, we have Ansi's own words requiring a device to tell the >host to >copy only 5 bytes and not 6: > > Revision 18 > 19 August 1998 > ... > Ata/Atapi 4 ... > 8.21 PACKET ... A0h ... > 8.21.5 Normal outputs ... > 8.21.5.2 Data transmission ... > ... > 5) if the byte count is odd, the last valid byte transferred is > on DD[7:0] and the data on DD[15:8] is a pad byte of > undefined value; > 6) if the last transfer of a command has a pad byte, the byte > count shall be odd. > ... > I/O - Shall be cleared to zero if the transfer is to the device. > Shall be set to one if the transfer is to the host. > >Surely the assymetry between this T13 text and the analogous T13 text for >AtapiDma is plain? > >How does it serve anyone's interest here in T13 to have the choice between >Pio & Dma change the count of bytes copied? > Pat, This is patently ridiculous. It is NOT POSSIBLE for the device to transfer exactly 5 data bytes across the 16-bit data bus. The device doesn't know or care what the operating system does with the pad byte. You are confusing the device layer with the Operating System layer. The DATA that the device sends across the ATA bus is IDENTICAL between PIO mode and DMA mode. SCSI creates the IgnoreWideResidue message to handle this situation. ATAPI chose not to implement the SCSI Messaging system. However, "in the real world", very few SCSI devices actually implemented the IgnoreWideResidue message since SCSI also specifies that data Block lengths shall be a multiple of 4. The hosts typically don't need the wide residue message for fixed block size devices. (Although that message is usually implemented by the SCSI hosts to handle variable record size devices). I would only care, however, it some attempt to add a messaging system to ATAPI broke the existing devices. If you can add COMPLETLY transparent messaging to ATAPI then make a proposal. But please don't require any changes from the device suppliers or from the hosts ;-) In otherwords, any change would have to be completely backwards compatible so as to be transparent. ...Harlan
