In8, In16, and In32
Takes a bus identifier and an I/O address in that bus's I/O address space and performs whatever operations are necessary to acquire and return the requested data.
BYTE In8 ( LONG busTag, void *ioAddress);
WORD In16 ( LONG busTag, void *ioAddress );
LONG In32 ( LONG busTag, void *ioAddress );
An unsigned value of the size and data type defined by each respective function.
These functions are used only by HAMs written for adapters intended for bus architectures that have an I/O address space. The HAM is expected to use the function appropriate to the data width of the port where the input is to occur.
The value of ioAddress should be the port address the HAM would normally expect for the given bus architecture. For example, if an ISA board with a base port address of 300h is placed on an EISA bus, the HAM sets ioAddress to 300h when it wants to input from that base port.