I've never found a way to detect this from the host side with anything approaching usefulness.
It's just one of those things, like detecting whether the power cable is plugged in to the drive, or the data cable is fully connected.
At 12:09 PM +0200 5/9/04, Thomas Jansen wrote:
This message is from the T13 list server.
Hi,
I was just wondering if it is possible to detect whether two devices are simultaneously jumpered as device 0 or 1.
In case of an ATA and ATAPI unit, issuing a command EC and getting the status 0x59 does the trick. But what if two ATA/ATAPI units are used. I know the ID data checksum (if supported) will probably fail but that can be caused by other reasons as well.
I have been playing with the thought to count the asserted IRQs but when both devices fire their interrupts almost simultaneously I assume I'll detect only one.
This lead two the following question ...
How does the service interrupt handle this? Assuming device 1 asserts the interrupt line exactly at the same time device 0 asserts it. Does device 1 sample the interrupt line to check whether it's already asserted? If so, what if two devices want to assert their service interrupts at exactly the same time? (somewhat like a network collision)
Thanks is advance,
Thomas
--
--------------------- I make stuff go. ---------------------
Larry Barras Apple Computer Inc. 1 Infinite Loop MS: 306-2TC Cupertino, CA 95014 (408) 974-3220
