/* This function is called each second during the boot manager waits the timeout. */
VOID EFIAPI PlatformBootManagerWaitCallback(UINT16 TimeoutRemain)
/* This function is called each second during the boot manager waits the timeout. */
VOID EFIAPI PlatformBootManagerWaitCallback(UINT16 TimeoutRemain)
{
  EFI_GRAPHICS_OUTPUT_BLT_PIXEL_UNION  Black;
  EFI_GRAPHICS_OUTPUT_BLT_PIXEL_UNION  White;
  UINT16                               Timeout;
  EFI_STATUS                           Status;
  Timeout = PcdGet16 (PcdPlatformBootTimeOut);
  Black.Raw = 0x00000000;
  White.Raw = 0x00FFFFFF;
  Status = BootLogoUpdateProgress (
             White.Pixel,
             Black.Pixel,
             L"Press ESCAPE for boot options",
             White.Pixel,
             (Timeout - TimeoutRemain) * 100 / Timeout,
             0
             );
  if (EFI_ERROR (Status)) {
    Print (L".");
  }
}