3 * Console.c - VirtualBox Console control emulation
7 * Copyright (C) 2010 Oracle Corporation
9 * This file is part of VirtualBox Open Source Edition (OSE), as
10 * available from http://www.virtualbox.org. This file is free software;
11 * you can redistribute it and/or modify it under the terms of the GNU
12 * General Public License (GPL) as published by the Free Software
13 * Foundation, in version 2 as it comes in the "COPYING" file of the
14 * VirtualBox OSE distribution. VirtualBox OSE is distributed in the
15 * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
19 extern EFI_RUNTIME_SERVICES
* gRS
;
20 static EFI_CONSOLE_CONTROL_SCREEN_MODE CurrentMode
= EfiConsoleControlScreenText
;
24 IN EFI_CONSOLE_CONTROL_PROTOCOL
*This
,
25 OUT EFI_CONSOLE_CONTROL_SCREEN_MODE
*Mode
,
26 OUT BOOLEAN
*GopUgaExists
, OPTIONAL
27 OUT BOOLEAN
*StdInLocked OPTIONAL
31 // EfiConsoleControlScreenText;
32 // EfiConsoleControlScreenGraphics;
43 IN EFI_CONSOLE_CONTROL_PROTOCOL
*This
,
44 IN EFI_CONSOLE_CONTROL_SCREEN_MODE Mode
53 IN EFI_CONSOLE_CONTROL_PROTOCOL
*This
,
61 EFI_CONSOLE_CONTROL_PROTOCOL gConsoleController
=
68 EFI_GUID gEfiConsoleControlProtocolGuid
= EFI_CONSOLE_CONTROL_PROTOCOL_GUID
;
72 InitializeConsoleSim ()
75 // EG_PIXEL BackgroundClear = {0, 0, 0, 0};
76 // CHAR16* bgc = L"BackgroundClear";
77 // UINTN dataSize = sizeof(BackgroundClear);
80 Status
= gBS
->InstallMultipleProtocolInterfaces (
82 &gEfiConsoleControlProtocolGuid
,
87 // get background clear
88 // Status = gRS->GetVariable(bgc, &gEfiAppleNvramGuid, 0, &dataSize, &BackgroundClear);
89 // if(!EFI_ERROR(Status))
92 // Status = gRS->SetVariable(bgc, &gEfiAppleBootGuid,
93 // EFI_VARIABLE_BOOTSERVICE_ACCESS | EFI_VARIABLE_RUNTIME_ACCESS,
94 // sizeof(BackgroundClear), &BackgroundClear);
96 ASSERT_EFI_ERROR (Status
);