x86BiosReadPciAddressPort
INT64 __fastcall x86BiosReadPciAddressPort(INT64 a1, UINT16 a2){
unsigned int v2;
int v4;
int v5;
v2 = 0;
if( !XmPciBiosPresent )
return 0i64;
if( a2 + (int)a1 > 3 )
LODWORD(a1) = 3 - a2;
if( (_DWORD)a1 )
{
v4 = a1 - 1;
if( v4 )
{
v5 = v4 - 1;
if( v5 )
{
if( v5 == 1 )
return(unsigned int)XmPCIConfigAddress;
}
else
{
return(HIBYTE(XmPCIConfigAddress) << 16) | (unsigned int)*(unsigned __int16 *)((char *)&XmPCIConfigAddress + a2);
}
}
else
{
return *(unsigned __int16 *)((char *)&XmPCIConfigAddress + a2);
}
}
else
{
return *((unsigned __int8 *)&XmPCIConfigAddress + a2);
}
return v2;
}Referenced by:
x86BiosReadIoSpace