Hi Ray, I tried it yesterday
It can boot normally in Win Emulator. But I encounter issues mentioned in https://bugzilla.tianocore.org/show_bug.cgi?id=2639 in Unix. I think it is not related to this change. Thanks Guomin > -----Original Message----- > From: Ni, Ray <ray...@intel.com> > Sent: Friday, July 15, 2022 10:23 AM > To: Jiang, Guomin <guomin.ji...@intel.com>; devel@edk2.groups.io > Cc: GuoMinJ <newexplor...@gmail.com>; Andrew Fish <af...@apple.com> > Subject: RE: [Patch v2 04/11] EmulatorPkg: Remove All UGA Support > > Guomin, > Did you try booting the Emulator Win and Linux with this change? > > > -----Original Message----- > > From: Jiang, Guomin <guomin.ji...@intel.com> > > Sent: Friday, July 15, 2022 9:51 AM > > To: devel@edk2.groups.io > > Cc: GuoMinJ <newexplor...@gmail.com>; Andrew Fish > <af...@apple.com>; > > Ni, Ray <ray...@intel.com> > > Subject: [Patch v2 04/11] EmulatorPkg: Remove All UGA Support > > > > From: GuoMinJ <newexplor...@gmail.com> > > > > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2368 > > > > Remove All UGA Support in EmulatorPkg. > > > > Signed-off-by: Guomin Jiang <guomin.ji...@intel.com> > > Cc: Andrew Fish <af...@apple.com> > > Cc: Ray Ni <ray...@intel.com> > > --- > > EmulatorPkg/EmuGopDxe/Gop.h | 10 +-- > > EmulatorPkg/EmuGopDxe/GopScreen.c | 14 ++-- > > EmulatorPkg/Include/Protocol/EmuFileSystem.h | 24 +++--- > > .../Include/Protocol/EmuGraphicsWindow.h | 18 ++-- > > .../Library/PlatformBmLib/PlatformBm.h | 4 +- > > .../Library/PlatformBmLib/PlatformBmData.c | 6 +- > > EmulatorPkg/Unix/Host/Gasket.h | 12 +-- > > EmulatorPkg/Unix/Host/Host.h | 3 +- > > EmulatorPkg/Unix/Host/Ia32/Gasket.S | 2 +- > > EmulatorPkg/Unix/Host/X11GraphicsWindow.c | 82 +++++++++---------- > > EmulatorPkg/Unix/Host/X64/Gasket.S | 2 +- > > EmulatorPkg/Win/Host/WinGopScreen.c | 10 +-- > > 12 files changed, 92 insertions(+), 95 deletions(-) > > > > diff --git a/EmulatorPkg/EmuGopDxe/Gop.h > b/EmulatorPkg/EmuGopDxe/Gop.h > > index 7f7dc4e8eb9f..59ebfda912eb 100644 > > --- a/EmulatorPkg/EmuGopDxe/Gop.h > > +++ b/EmulatorPkg/EmuGopDxe/Gop.h > > @@ -1,13 +1,13 @@ > > /*++ @file > > > > -Copyright (c) 2006 - 2008, Intel Corporation. All rights > > reserved.<BR> > > +Copyright (c) 2006 - 2022, Intel Corporation. All rights > > +reserved.<BR> > > Portions copyright (c) 2010,Apple Inc. All rights reserved.<BR> > > SPDX-License-Identifier: BSD-2-Clause-Patent > > > > **/ > > > > -#ifndef __UGA_H_ > > -#define __UGA_H_ > > +#ifndef GOP_H_ > > +#define GOP_H_ > > > > #include <PiDxe.h> > > > > @@ -60,8 +60,6 @@ typedef struct { > > extern EFI_DRIVER_BINDING_PROTOCOL gEmuGopDriverBinding; extern > > EFI_COMPONENT_NAME_PROTOCOL gEmuGopComponentName; > > > > -#define EMU_UGA_CLASS_NAME L"EmuGopWindow" > > - > > #define GOP_PRIVATE_DATA_SIGNATURE SIGNATURE_32 ('G', 'o', 'p', 'N') > > typedef struct { > > UINT64 Signature; > > @@ -83,7 +81,7 @@ typedef struct { > > GOP_MODE_DATA *ModeData; > > > > // > > - // UGA Private Data knowing when to start hardware > > + // Private Data knowing when to start hardware > > // > > BOOLEAN HardwareNeedsStarting; > > > > diff --git a/EmulatorPkg/EmuGopDxe/GopScreen.c > > b/EmulatorPkg/EmuGopDxe/GopScreen.c > > index 88d95b88e162..113b496861b4 100644 > > --- a/EmulatorPkg/EmuGopDxe/GopScreen.c > > +++ b/EmulatorPkg/EmuGopDxe/GopScreen.c > > @@ -10,7 +10,7 @@ Module Name: > > > > Abstract: > > > > - This file produces the graphics abstration of UGA. It is called by > > + This file produces the graphics abstration of GOP. It is called by > > EmuGopDriver.c file which deals with the EFI 1.1 driver model. > > This file just does graphics. > > > > @@ -209,7 +209,7 @@ EmuGopBlt ( > > // the number of bytes in each row can be computed. > > // > > if (Delta == 0) { > > - Delta = Width * sizeof (EFI_UGA_PIXEL); > > + Delta = Width * sizeof (EFI_GRAPHICS_OUTPUT_BLT_PIXEL); > > } > > > > // > > @@ -220,8 +220,8 @@ EmuGopBlt ( > > OriginalTPL = gBS->RaiseTPL (TPL_NOTIFY); > > > > // > > - // Pack UGA Draw protocol parameters to > > EMU_GRAPHICS_WINDOWS__BLT_ARGS structure to adapt to > > - // GopBlt() API of Unix UGA IO protocol. > > + // Pack GOP protocol parameters to > EMU_GRAPHICS_WINDOWS__BLT_ARGS > > + structure to adapt to // GopBlt() API of GOP protocol. > > // > > GopBltArgs.DestinationX = DestinationX; > > GopBltArgs.DestinationY = DestinationY; @@ -232,8 +232,8 @@ > > EmuGopBlt ( > > GopBltArgs.Delta = Delta; > > Status = Private->EmuGraphicsWindow->Blt ( > > > > Private->EmuGraphicsWindow, > > - (EFI_UGA_PIXEL > > *)BltBuffer, > > - > > (EFI_UGA_BLT_OPERATION)BltOperation, > > + BltBuffer, > > + > > + BltOperation, > > &GopBltArgs > > ); > > > > @@ -384,7 +384,7 @@ ShutdownGopEvent ( > > > > Routine Description: > > > > - This is the UGA screen's callback notification function for exit-boot- > services. > > + This is the screen's callback notification function for > > exit-boot-services. > > All we do here is call EmuGopDestructor(). > > > > Arguments: > > diff --git a/EmulatorPkg/Include/Protocol/EmuFileSystem.h > > b/EmulatorPkg/Include/Protocol/EmuFileSystem.h > > index 15de43ac022e..062508fafc9d 100644 > > --- a/EmulatorPkg/Include/Protocol/EmuFileSystem.h > > +++ b/EmulatorPkg/Include/Protocol/EmuFileSystem.h > > @@ -7,19 +7,19 @@ > > > > UEFI 2.0 can boot from any valid EFI image contained in a > SimpleFileSystem. > > > > -Copyright (c) 2006 - 2010, Intel Corporation. All rights > > reserved.<BR> > > +Copyright (c) 2006 - 2022, Intel Corporation. All rights > > +reserved.<BR> > > Portions copyright (c) 2011, Apple Inc. All rights reserved. > > SPDX-License-Identifier: BSD-2-Clause-Patent > > > > **/ > > > > -#ifndef _EMU_UGA_IO_H_ > > -#define _EMU_UGA_IO_H_ > > +#ifndef EMU_GRAPHICS_WINDOW_H_ > > +#define EMU_GRAPHICS_WINDOW_H_ > > > > #include <Protocol/SimplePointer.h> > > #include <Protocol/SimpleTextIn.h> > > #include <Protocol/SimpleTextInEx.h> > > -#include <Protocol/UgaDraw.h> > > +#include <Protocol/GraphicsOutput.h> > > > > #define EMU_GRAPHICS_WINDOW_PROTOCOL_GUID \ > > { 0x30FD316A, 0x6728, 0x2E41, { 0xA6, 0x90, 0x0D, 0x13, 0x33, 0xD8, > > 0xCA, 0xC1 } } @@ -29,13 +29,13 @@ typedef struct > > _EMU_GRAPHICS_WINDOW_PROTOCOL > EMU_GRAPHICS_WINDOW_PROTOCOL; typedef > > EFI_STATUS (EFIAPI *EMU_GRAPHICS_WINDOWS_CLOSE)( > > - EMU_GRAPHICS_WINDOW_PROTOCOL *Uga > > + EMU_GRAPHICS_WINDOW_PROTOCOL *GraphicsWindows > > ); > > > > typedef > > EFI_STATUS > > (EFIAPI *EMU_GRAPHICS_WINDOWS_SIZE)( > > - EMU_GRAPHICS_WINDOW_PROTOCOL *Uga, > > + EMU_GRAPHICS_WINDOW_PROTOCOL *GraphicsWindows, > > UINT32 Width, > > UINT32 Height > > ); > > @@ -43,13 +43,13 @@ EFI_STATUS > > typedef > > EFI_STATUS > > (EFIAPI *EMU_GRAPHICS_WINDOWS_CHECK_KEY)( > > - EMU_GRAPHICS_WINDOW_PROTOCOL *Uga > > + EMU_GRAPHICS_WINDOW_PROTOCOL *GraphicsWindows > > ); > > > > typedef > > EFI_STATUS > > (EFIAPI *EMU_GRAPHICS_WINDOWS_GET_KEY)( > > - EMU_GRAPHICS_WINDOW_PROTOCOL *Uga, > > + EMU_GRAPHICS_WINDOW_PROTOCOL *GraphicsWindows, > > EFI_KEY_DATA *key > > ); > > > > @@ -88,10 +88,10 @@ typedef struct { > > typedef > > EFI_STATUS > > (EFIAPI *EMU_GRAPHICS_WINDOWS_BLT)( > > - IN EMU_GRAPHICS_WINDOW_PROTOCOL *GraphicsWindows, > > - IN EFI_UGA_PIXEL *BltBuffer OPTIONAL, > > - IN EFI_UGA_BLT_OPERATION BltOperation, > > - IN EMU_GRAPHICS_WINDOWS__BLT_ARGS *Args > > + IN EMU_GRAPHICS_WINDOW_PROTOCOL *GraphicsWindows, > > + IN EFI_GRAPHICS_OUTPUT_BLT_PIXEL *BltBuffer OPTIONAL, > > + IN EFI_GRAPHICS_OUTPUT_BLT_OPERATION BltOperation, > > + IN EMU_GRAPHICS_WINDOWS__BLT_ARGS *Args > > ); > > > > typedef > > diff --git a/EmulatorPkg/Include/Protocol/EmuGraphicsWindow.h > > b/EmulatorPkg/Include/Protocol/EmuGraphicsWindow.h > > index 7c495b25eb1b..ed7b71611f90 100644 > > --- a/EmulatorPkg/Include/Protocol/EmuGraphicsWindow.h > > +++ b/EmulatorPkg/Include/Protocol/EmuGraphicsWindow.h > > @@ -6,13 +6,13 @@ SPDX-License-Identifier: BSD-2-Clause-Patent > > > > **/ > > > > -#ifndef _EMU_UGA_IO_H_ > > -#define _EMU_UGA_IO_H_ > > +#ifndef EMU_GRAPHICS_WINDOW_H_ > > +#define EMU_GRAPHICS_WINDOW_H_ > > > > #include <Protocol/SimplePointer.h> > > #include <Protocol/SimpleTextIn.h> > > #include <Protocol/SimpleTextInEx.h> > > -#include <Protocol/UgaDraw.h> > > +#include <Protocol/GraphicsOutput.h> > > > > #define EMU_GRAPHICS_WINDOW_PROTOCOL_GUID \ > > { 0x30FD316A, 0x6728, 0x2E41, { 0xA6, 0x90, 0x0D, 0x13, 0x33, 0xD8, > > 0xCA, 0xC1 } } @@ -22,13 +22,13 @@ typedef struct > > _EMU_GRAPHICS_WINDOW_PROTOCOL > EMU_GRAPHICS_WINDOW_PROTOCOL; typedef > > EFI_STATUS (EFIAPI *EMU_GRAPHICS_WINDOWS_CLOSE)( > > - EMU_GRAPHICS_WINDOW_PROTOCOL *Uga > > + EMU_GRAPHICS_WINDOW_PROTOCOL *GraphicsWindow > > ); > > > > typedef > > EFI_STATUS > > (EFIAPI *EMU_GRAPHICS_WINDOWS_SIZE)( > > - EMU_GRAPHICS_WINDOW_PROTOCOL *Uga, > > + EMU_GRAPHICS_WINDOW_PROTOCOL *GraphicsWindow, > > UINT32 Width, > > UINT32 Height > > ); > > @@ -36,13 +36,13 @@ EFI_STATUS > > typedef > > EFI_STATUS > > (EFIAPI *EMU_GRAPHICS_WINDOWS_CHECK_KEY)( > > - EMU_GRAPHICS_WINDOW_PROTOCOL *Uga > > + EMU_GRAPHICS_WINDOW_PROTOCOL *GraphicsWindow > > ); > > > > typedef > > EFI_STATUS > > (EFIAPI *EMU_GRAPHICS_WINDOWS_GET_KEY)( > > - EMU_GRAPHICS_WINDOW_PROTOCOL *Uga, > > + EMU_GRAPHICS_WINDOW_PROTOCOL *GraphicsWindow, > > EFI_KEY_DATA *key > > ); > > > > @@ -83,8 +83,8 @@ typedef > > EFI_STATUS > > (EFIAPI *EMU_GRAPHICS_WINDOWS_BLT)( > > IN EMU_GRAPHICS_WINDOW_PROTOCOL *GraphicsWindows, > > - IN EFI_UGA_PIXEL *BltBuffer OPTIONAL, > > - IN EFI_UGA_BLT_OPERATION BltOperation, > > + IN EFI_GRAPHICS_OUTPUT_BLT_PIXEL *BltBuffer OPTIONAL, > > + IN EFI_GRAPHICS_OUTPUT_BLT_OPERATION BltOperation, > > IN EMU_GRAPHICS_WINDOWS__BLT_ARGS *Args > > ); > > > > diff --git a/EmulatorPkg/Library/PlatformBmLib/PlatformBm.h > > b/EmulatorPkg/Library/PlatformBmLib/PlatformBm.h > > index b89ffd77e4de..462049e2b048 100644 > > --- a/EmulatorPkg/Library/PlatformBmLib/PlatformBm.h > > +++ b/EmulatorPkg/Library/PlatformBmLib/PlatformBm.h > > @@ -1,6 +1,6 @@ > > /*++ @file > > > > -Copyright (c) 2006 - 2018, Intel Corporation. All rights > > reserved.<BR> > > +Copyright (c) 2006 - 2022, Intel Corporation. All rights > > +reserved.<BR> > > Portions copyright (c) 2011, Apple Inc. All rights reserved. > > SPDX-License-Identifier: BSD-2-Clause-Patent > > > > @@ -60,7 +60,7 @@ typedef struct { > > EMU_VENDOR_DEVICE_PATH_NODE EmuBus; > > EMU_VENDOR_DEVICE_PATH_NODE EmuGraphicsWindow; > > EFI_DEVICE_PATH_PROTOCOL End; > > -} EMU_PLATFORM_UGA_DEVICE_PATH; > > +} EMU_PLATFORM_GRAPHICS_WINDOW_DEVICE_PATH; > > > > // > > // Platform BDS Functions > > diff --git a/EmulatorPkg/Library/PlatformBmLib/PlatformBmData.c > > b/EmulatorPkg/Library/PlatformBmLib/PlatformBmData.c > > index efb03def37eb..b69c4728d1a7 100644 > > --- a/EmulatorPkg/Library/PlatformBmLib/PlatformBmData.c > > +++ b/EmulatorPkg/Library/PlatformBmLib/PlatformBmData.c > > @@ -1,6 +1,6 @@ > > /*++ @file > > > > -Copyright (c) 2006 - 2018, Intel Corporation. All rights > > reserved.<BR> > > +Copyright (c) 2006 - 2022, Intel Corporation. All rights > > +reserved.<BR> > > Portions copyright (c) 2011, Apple Inc. All rights reserved. > > SPDX-License-Identifier: BSD-2-Clause-Patent > > > > @@ -8,7 +8,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent > > > > #include "PlatformBm.h" > > > > -EMU_PLATFORM_UGA_DEVICE_PATH gGopDevicePath = { > > +EMU_PLATFORM_GRAPHICS_WINDOW_DEVICE_PATH gGopDevicePath > = { > > { > > { > > { > > @@ -40,7 +40,7 @@ EMU_PLATFORM_UGA_DEVICE_PATH > gGopDevicePath = { > > gEndEntire > > }; > > > > -EMU_PLATFORM_UGA_DEVICE_PATH gGopDevicePath2 = { > > +EMU_PLATFORM_GRAPHICS_WINDOW_DEVICE_PATH > gGopDevicePath2 = { > > { > > { > > { > > diff --git a/EmulatorPkg/Unix/Host/Gasket.h > > b/EmulatorPkg/Unix/Host/Gasket.h index 6dafc903cfce..1ffdfb334524 > > 100644 > > --- a/EmulatorPkg/Unix/Host/Gasket.h > > +++ b/EmulatorPkg/Unix/Host/Gasket.h > > @@ -1,7 +1,7 @@ > > /** @file > > > > Copyright (c) 2008 - 2011, Apple Inc. All rights reserved.<BR> > > - Copyright (c) 2011 - 2019, Intel Corporation. All rights > > reserved.<BR> > > + Copyright (c) 2011 - 2022, Intel Corporation. All rights > > + reserved.<BR> > > > > SPDX-License-Identifier: BSD-2-Clause-Patent > > > > @@ -200,7 +200,7 @@ ReverseGasketUint64Uint64 ( > > ); > > > > // > > -// Gasket functions for EFI_EMU_UGA_IO_PROTOCOL > > +// Gasket functions for EFI_EMU_GRAPHICS_WINDOW_PROTOCOL > > // > > > > EFI_STATUS > > @@ -243,10 +243,10 @@ GasketX11RegisterKeyNotify ( EFI_STATUS > EFIAPI > > GasketX11Blt ( > > - IN EMU_GRAPHICS_WINDOW_PROTOCOL *GraphicsWindows, > > - IN EFI_UGA_PIXEL *BltBuffer OPTIONAL, > > - IN EFI_UGA_BLT_OPERATION BltOperation, > > - IN EMU_GRAPHICS_WINDOWS__BLT_ARGS *Args > > + IN EMU_GRAPHICS_WINDOW_PROTOCOL *GraphicsWindows, > > + IN EFI_GRAPHICS_OUTPUT_BLT_PIXEL *BltBuffer OPTIONAL, > > + IN EFI_GRAPHICS_OUTPUT_BLT_OPERATION BltOperation, > > + IN EMU_GRAPHICS_WINDOWS__BLT_ARGS *Args > > ); > > > > EFI_STATUS > > diff --git a/EmulatorPkg/Unix/Host/Host.h > > b/EmulatorPkg/Unix/Host/Host.h index 0c81cdfc01f5..ff30f5dce567 100644 > > --- a/EmulatorPkg/Unix/Host/Host.h > > +++ b/EmulatorPkg/Unix/Host/Host.h > > @@ -1,6 +1,6 @@ > > /*++ @file > > > > -Copyright (c) 2006 - 2019, Intel Corporation. All rights > > reserved.<BR> > > +Copyright (c) 2006 - 2022, Intel Corporation. All rights > > +reserved.<BR> > > Portions copyright (c) 2008 - 2011, Apple Inc. All rights > > reserved.<BR> > > > > SPDX-License-Identifier: BSD-2-Clause-Patent @@ -106,7 +106,6 @@ > > SPDX-License-Identifier: BSD-2-Clause-Patent #include > > <Protocol/SimplePointer.h> #include <Protocol/SimpleTextIn.h> > > #include <Protocol/SimpleTextInEx.h> -#include <Protocol/UgaDraw.h> > > #include <Protocol/SimpleFileSystem.h> > > > > #include <Protocol/EmuThunk.h> > > diff --git a/EmulatorPkg/Unix/Host/Ia32/Gasket.S > > b/EmulatorPkg/Unix/Host/Ia32/Gasket.S > > index 36197ff26028..6fcdd265cf30 100644 > > --- a/EmulatorPkg/Unix/Host/Ia32/Gasket.S > > +++ b/EmulatorPkg/Unix/Host/Ia32/Gasket.S > > @@ -371,7 +371,7 @@ ASM_PFX(GasketSecEmuThunkAddress): > > ret > > > > // > > -// Gasket functions for EFI_EMU_UGA_IO_PROTOCOL > > +// Gasket functions for EFI_EMU_GRAPHICS_WINDOW_PROTOCOL > > // > > > > ASM_GLOBAL ASM_PFX(GasketX11Size) > > diff --git a/EmulatorPkg/Unix/Host/X11GraphicsWindow.c > > b/EmulatorPkg/Unix/Host/X11GraphicsWindow.c > > index a30cc19dbe0a..b3880e198855 100644 > > --- a/EmulatorPkg/Unix/Host/X11GraphicsWindow.c > > +++ b/EmulatorPkg/Unix/Host/X11GraphicsWindow.c > > @@ -1,6 +1,6 @@ > > /*++ @file > > > > -Copyright (c) 2004 - 2019, Intel Corporation. All rights > > reserved.<BR> > > +Copyright (c) 2004 - 2022, Intel Corporation. All rights > > +reserved.<BR> > > Portions copyright (c) 2008 - 2011, Apple Inc. All rights > > reserved.<BR> > > > > SPDX-License-Identifier: BSD-2-Clause-Patent @@ -700,8 +700,8 @@ > > HandleEvents ( > > > > unsigned long > > X11PixelToColor ( > > - IN GRAPHICS_IO_PRIVATE *Drv, > > - IN EFI_UGA_PIXEL pixel > > + IN GRAPHICS_IO_PRIVATE *Drv, > > + IN EFI_GRAPHICS_OUTPUT_BLT_PIXEL pixel > > ) > > { > > return ((pixel.Red >> Drv->r.csize) << Drv->r.shift) > > @@ -709,15 +709,15 @@ X11PixelToColor ( > > | ((pixel.Blue >> Drv->b.csize) << Drv->b.shift); } > > > > -EFI_UGA_PIXEL > > +EFI_GRAPHICS_OUTPUT_BLT_PIXEL > > X11ColorToPixel ( > > IN GRAPHICS_IO_PRIVATE *Drv, > > IN unsigned long val > > ) > > { > > - EFI_UGA_PIXEL Pixel; > > + EFI_GRAPHICS_OUTPUT_BLT_PIXEL Pixel; > > > > - memset (&Pixel, 0, sizeof (EFI_UGA_PIXEL)); > > + memset (&Pixel, 0, sizeof (EFI_GRAPHICS_OUTPUT_BLT_PIXEL)); > > > > // Truncation not an issue since X11 and EFI are both using 8 bits per > > color > > Pixel.Red = (val >> Drv->r.shift) << Drv->r.csize; > > @@ -782,7 +782,7 @@ X11KeySetState ( > > if ((Drv->KeyState.KeyToggleState & EFI_CAPS_LOCK_ACTIVE) == 0) { > > // > > // We could create an XKeyEvent and send a XK_Caps_Lock to > > - // the UGA/GOP Window > > + // the GOP Window > > // > > } > > } > > @@ -812,32 +812,32 @@ X11RegisterKeyNotify ( > > > > EFI_STATUS > > X11Blt ( > > - IN EMU_GRAPHICS_WINDOW_PROTOCOL *GraphicsIo, > > - IN EFI_UGA_PIXEL *BltBuffer OPTIONAL, > > - IN EFI_UGA_BLT_OPERATION BltOperation, > > - IN EMU_GRAPHICS_WINDOWS__BLT_ARGS *Args > > + IN EMU_GRAPHICS_WINDOW_PROTOCOL *GraphicsIo, > > + IN EFI_GRAPHICS_OUTPUT_BLT_PIXEL *BltBuffer OPTIONAL, > > + IN EFI_GRAPHICS_OUTPUT_BLT_OPERATION BltOperation, > > + IN EMU_GRAPHICS_WINDOWS__BLT_ARGS *Args > > ) > > { > > - GRAPHICS_IO_PRIVATE *Private; > > - UINTN DstY; > > - UINTN SrcY; > > - UINTN DstX; > > - UINTN SrcX; > > - UINTN Index; > > - EFI_UGA_PIXEL *Blt; > > - UINT8 *Dst; > > - UINT8 *Src; > > - UINTN Nbr; > > - unsigned long Color; > > - XEvent ev; > > + GRAPHICS_IO_PRIVATE *Private; > > + UINTN DstY; > > + UINTN SrcY; > > + UINTN DstX; > > + UINTN SrcX; > > + UINTN Index; > > + EFI_GRAPHICS_OUTPUT_BLT_PIXEL *Blt; > > + UINT8 *Dst; > > + UINT8 *Src; > > + UINTN Nbr; > > + unsigned long Color; > > + XEvent ev; > > > > Private = (GRAPHICS_IO_PRIVATE *)GraphicsIo; > > > > // > > // Check bounds > > // > > - if ( (BltOperation == EfiUgaVideoToBltBuffer) > > - || (BltOperation == EfiUgaVideoToVideo)) > > + if ( (BltOperation == EfiBltVideoToBltBuffer) > > + || (BltOperation == EfiBltVideoToVideo)) > > { > > // > > // Source is Video. > > @@ -851,9 +851,9 @@ X11Blt ( > > } > > } > > > > - if ( (BltOperation == EfiUgaBltBufferToVideo) > > - || (BltOperation == EfiUgaVideoToVideo) > > - || (BltOperation == EfiUgaVideoFill)) > > + if ( (BltOperation == EfiBltBufferToVideo) > > + || (BltOperation == EfiBltVideoToVideo) > > + || (BltOperation == EfiBltVideoFill)) > > { > > // > > // Destination is Video > > @@ -868,32 +868,32 @@ X11Blt ( > > } > > > > switch (BltOperation) { > > - case EfiUgaVideoToBltBuffer: > > - Blt = (EFI_UGA_PIXEL *)((UINT8 *)BltBuffer + > > (Args->DestinationY > * Args->Delta) + Args->DestinationX * sizeof > > (EFI_UGA_PIXEL)); > > - Args->Delta -= Args->Width * sizeof (EFI_UGA_PIXEL); > > + case EfiBltVideoToBltBuffer: > > + Blt = (EFI_GRAPHICS_OUTPUT_BLT_PIXEL *)((UINT8 *)BltBuffer + > (Args->DestinationY * Args->Delta) + Args- > > >DestinationX * sizeof (EFI_GRAPHICS_OUTPUT_BLT_PIXEL)); > > + Args->Delta -= Args->Width * sizeof > > + (EFI_GRAPHICS_OUTPUT_BLT_PIXEL); > > for (SrcY = Args->SourceY; SrcY < (Args->Height + Args->SourceY); > SrcY++) { > > for (SrcX = Args->SourceX; SrcX < (Args->Width + Args->SourceX); > SrcX++) { > > *Blt++ = X11ColorToPixel (Private, XGetPixel (Private->image, > > SrcX, > SrcY)); > > } > > > > - Blt = (EFI_UGA_PIXEL *)((UINT8 *)Blt + Args->Delta); > > + Blt = (EFI_GRAPHICS_OUTPUT_BLT_PIXEL *)((UINT8 *)Blt + > > + Args->Delta); > > } > > > > break; > > - case EfiUgaBltBufferToVideo: > > - Blt = (EFI_UGA_PIXEL *)((UINT8 *)BltBuffer + (Args->SourceY > > * > Args->Delta) + Args->SourceX * sizeof > > (EFI_UGA_PIXEL)); > > - Args->Delta -= Args->Width * sizeof (EFI_UGA_PIXEL); > > + case EfiBltBufferToVideo: > > + Blt = (EFI_GRAPHICS_OUTPUT_BLT_PIXEL *)((UINT8 *)BltBuffer + > (Args->SourceY * Args->Delta) + Args- > > >SourceX * sizeof (EFI_GRAPHICS_OUTPUT_BLT_PIXEL)); > > + Args->Delta -= Args->Width * sizeof > > + (EFI_GRAPHICS_OUTPUT_BLT_PIXEL); > > for (DstY = Args->DestinationY; DstY < (Args->Height + Args- > >DestinationY); DstY++) { > > for (DstX = Args->DestinationX; DstX < (Args->Width + Args- > >DestinationX); DstX++) { > > XPutPixel (Private->image, DstX, DstY, X11PixelToColor (Private, > > *Blt)); > > Blt++; > > } > > > > - Blt = (EFI_UGA_PIXEL *)((UINT8 *)Blt + Args->Delta); > > + Blt = (EFI_GRAPHICS_OUTPUT_BLT_PIXEL *)((UINT8 *)Blt + > > + Args->Delta); > > } > > > > break; > > - case EfiUgaVideoToVideo: > > + case EfiBltVideoToVideo: > > Dst = Private->image_data + (Args->DestinationX << Private- > >pixel_shift) > > + Args->DestinationY * Private->line_bytes; > > Src = Private->image_data + (Args->SourceX << > > Private->pixel_shift) @@ -920,7 +920,7 @@ X11Blt ( > > } > > > > break; > > - case EfiUgaVideoFill: > > + case EfiBltVideoFill: > > Color = X11PixelToColor (Private, *BltBuffer); > > for (DstY = Args->DestinationY; DstY < (Args->Height + Args- > >DestinationY); DstY++) { > > for (DstX = Args->DestinationX; DstX < (Args->Width + > > Args->DestinationX); DstX++) { @@ -937,7 +937,7 @@ X11Blt ( > > // Refresh screen. > > // > > switch (BltOperation) { > > - case EfiUgaVideoToVideo: > > + case EfiBltVideoToVideo: > > XCopyArea ( > > Private->display, > > Private->win, > > @@ -960,7 +960,7 @@ X11Blt ( > > } > > > > break; > > - case EfiUgaVideoFill: > > + case EfiBltVideoFill: > > Color = X11PixelToColor (Private, *BltBuffer); > > XSetForeground (Private->display, Private->gc, Color); > > XFillRectangle ( > > @@ -974,7 +974,7 @@ X11Blt ( > > ); > > XFlush (Private->display); > > break; > > - case EfiUgaBltBufferToVideo: > > + case EfiBltBufferToVideo: > > Redraw (Private, Args->DestinationX, Args->DestinationY, Args->Width, > Args->Height); > > break; > > default: > > diff --git a/EmulatorPkg/Unix/Host/X64/Gasket.S > > b/EmulatorPkg/Unix/Host/X64/Gasket.S > > index 030faa8e4c36..1b4614ab618d 100644 > > --- a/EmulatorPkg/Unix/Host/X64/Gasket.S > > +++ b/EmulatorPkg/Unix/Host/X64/Gasket.S > > @@ -427,7 +427,7 @@ ASM_PFX(GasketSecEmuThunkAddress): > > ret > > > > // > > -// Gasket functions for EFI_EMU_UGA_IO_PROTOCOL > > +// Gasket functions for EFI_EMU_GRAPHICS_WINDOW_PROTOCOL > > // > > > > ASM_GLOBAL ASM_PFX(GasketX11Size) > > diff --git a/EmulatorPkg/Win/Host/WinGopScreen.c > > b/EmulatorPkg/Win/Host/WinGopScreen.c > > index 661573d7771c..69abcfc79564 100644 > > --- a/EmulatorPkg/Win/Host/WinGopScreen.c > > +++ b/EmulatorPkg/Win/Host/WinGopScreen.c > > @@ -1,6 +1,6 @@ > > /** @file > > > > -Copyright (c) 2006 - 2018, Intel Corporation. All rights > > reserved.<BR> > > +Copyright (c) 2006 - 2022, Intel Corporation. All rights > > +reserved.<BR> > > SPDX-License-Identifier: BSD-2-Clause-Patent > > > > Module Name: > > @@ -396,10 +396,10 @@ WinNtWndSize ( > > // TODO: Delta - add argument and description to function comment > > EFI_STATUS > > WinNtWndBlt ( > > - IN EMU_GRAPHICS_WINDOW_PROTOCOL *GraphicsIo, > > - IN EFI_UGA_PIXEL *BltBuffer OPTIONAL, > > - IN EFI_UGA_BLT_OPERATION BltOperation, > > - IN EMU_GRAPHICS_WINDOWS__BLT_ARGS *Args > > + IN EMU_GRAPHICS_WINDOW_PROTOCOL *GraphicsIo, > > + IN EFI_GRAPHICS_OUTPUT_BLT_PIXEL *BltBuffer OPTIONAL, > > + IN EFI_GRAPHICS_OUTPUT_BLT_OPERATION BltOperation, > > + IN EMU_GRAPHICS_WINDOWS__BLT_ARGS *Args > > ) > > { > > RETURN_STATUS RStatus; > > -- > > 2.26.2.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#91508): https://edk2.groups.io/g/devel/message/91508 Mute This Topic: https://groups.io/mt/92393247/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-