Newer
Older
AMI-Aptio-BIOS-Reversed / EarlyVideoPei / VgaModeSetRefresh.c
@Ajax Dong Ajax Dong 2 days ago 741 bytes Init
int __thiscall VgaModeSetRefresh(int *this)
{
  int v2; // esi
  int v3; // ecx
  int v4; // ecx
  int v5; // eax
  int v6; // edx
  int v7; // ecx
  int v8; // edx
  int v9; // ecx
  int result; // eax

  v2 = *(this + 15);
  if ( (VgaCrtcRegAnd(0xD0u, 0xFFu) & 0x80u) == 0 )
  {
    PciRegWrite(v2, 510533632, 378054824);
    while ( PciRegRead(v2, 510533632) != 1 )
      ;
    PciRegWrite(v3, 510525440, -60816631);
    while ( PciRegRead(v2, 510525440) != 1 )
      ;
    v5 = PciRegRead(v4, 510533640);
    PciRegWrite(v7, v6, v5 | 0x73);
    VgaModeSetResolution(this);
    PciRegRead(v2, 510533696);
    PciRegWrite(v9, v8, 192);
  }
  do
    result = VgaCrtcRegAnd(0xD0u, 0xFFu);
  while ( (result & 0x40) == 0 );
  return result;
}