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









Reply via email to