/* Set the video device into the specified mode and clears the visible portions of the output display to black. */
EFI_STATUS EFIAPI GraphicsOutputSetMode(IN EFI_GRAPHICS_OUTPUT_PROTOCOL *This, IN UINT32 ModeNumber)
/* Set the video device into the specified mode and clears the visible portions of the output display to black. */
EFI_STATUS EFIAPI GraphicsOutputSetMode(IN EFI_GRAPHICS_OUTPUT_PROTOCOL *This, IN UINT32 ModeNumber)
{
  RETURN_STATUS                  Status;
  EFI_GRAPHICS_OUTPUT_BLT_PIXEL  Black;
  GRAPHICS_OUTPUT_PRIVATE_DATA   *Private;
  if (ModeNumber >= This->Mode->MaxMode) {
    return EFI_UNSUPPORTED;
  }
  Private = GRAPHICS_OUTPUT_PRIVATE_FROM_THIS (This);
  Black.Blue     = 0;
  Black.Green    = 0;
  Black.Red      = 0;
  Black.Reserved = 0;
  Status = FrameBufferBlt (
             Private->FrameBufferBltLibConfigure,
             &Black,
             EfiBltVideoFill,
             0,
             0,
             0,
             0,
             This->Mode->Info->HorizontalResolution,
             This->Mode->Info->VerticalResolution,
             0
             );
  return RETURN_ERROR (Status) ? EFI_DEVICE_ERROR : EFI_SUCCESS;
}