UINT32 ReadIOPort( UINT16 io_port, UINT8 len // 1, 2, 4 bytes ) { if ( 1 == len ) return (ReadPortByte( io_port ) & 0xFF); else if( 2 == len ) return (ReadPortWord( io_port ) & 0xFFFF); else if( 4 == len ) return ReadPortDword( io_port ); return 0; }
uint32_t ReadIOPort(uint32_t io_port, uint8_t size) { uint32_t result = 0; switch (size) { case 1: result = ReadPortByte(io_port); break; case 2: result = ReadPortWord(io_port); break; case 4: result = ReadPortDword(io_port); break; } return result; }