x86BiosReadIoSpace
UINT32 __fastcall x86BiosReadIoSpace(UINT64 a1, INT64 a2){
unsigned __int16 v2;
UINT32 result;
if( XmPciBiosPresent )
{
if( (unsigned __int16)(a2 - 3320) <= 3u )
return x86BiosReadPciAddressPort((unsigned int)a1, (unsigned __int16)a2 - 3320);
if( XmPCIConfigAddress < 0 && (unsigned __int16)(a2 - 3324) <= 3u )
return x86BiosReadPciDataPort((unsigned int)a1, (unsigned __int16)a2 - 3324);
}
if( (unsigned __int16)(a2 - 112) <= 1u )
return x86BiosReadCmosPort((unsigned int)a1, a2, (unsigned int)a1);
v2 = x86BiosIoSpace + a2;
if( (_DWORD)a1 )
{
if( (_DWORD)a1 == 3 )
{
return __indword(v2);
}
else
{
LOWORD(result) = __inword(v2);
return(unsigned __int16)result;
}
}
else
{
LOBYTE(result) = __inbyte(v2);
return(unsigned __int8)result;
}
}Referenced by:
XmInOp
XmInsOp