How are Plug N Play ISA cards detected and initialized?
By: Frank Durda IV
By: Frank Durda IV In a nutshell, there a few I/O ports that all of the PnP boards respond to when the host asks if anyone is out there. So when the PnP probe routine starts, he asks if there are any PnP boards present, and all the PnP boards respond with their model # to a I/O read of the same port, so the probe routine gets a wired-OR “yes” to that question. At least one bit will be on in that reply. Then the probe code is able to cause boards with board model IDs (assigned by Microsoft/Intel) lower than X to go “off-line”. It then looks to see if any boards are still responding to the query. If the answer was “0”, then there are no boards with IDs above X. Now probe asks if there are any boards below “X”. If so, probe knows there are boards with a model numbers below X. Probe then asks for boards greater than X-(limit/4) to go off-line. If repeats the query. By repeating this semi-binary search of IDs-in-range enough times, the probing code will eventually identify all PnP b
By: Frank Durda IV
By: Frank Durda IV
By: Frank Durda IV