/** @file
ConSplitter.h -- Header for ConSplitter
Copyright (c) HR650X BIOS Decompilation Project
**/
#ifndef __CONSPLITTER_H__
#define __CONSPLITTER_H__
#include "../uefi_headers/Uefi.h"
//
// Function Prototypes
//
EFI_STATUS
EFIAPI
ConSplitterInitializeHiiProtocol(
VOID
);
EFI_STATUS
EFIAPI
ConSplitterTextOutReset(
VOID
);
EFI_STATUS
EFIAPI
ConSplitterTextOutOutputString(
VOID
);
EFI_STATUS
EFIAPI
ConSplitterTextOutTestString(
VOID
);
EFI_STATUS
EFIAPI
ConSplitterTextOutQueryMode(
VOID
);
EFI_STATUS
EFIAPI
ConSplitterTextOutSetMode(
VOID
);
EFI_STATUS
EFIAPI
ConSplitterTextOutSetAttribute(
VOID
);
EFI_STATUS
EFIAPI
ConSplitterTextOutClearScreen(
VOID
);
EFI_STATUS
EFIAPI
ConSplitterTextOutSetCursorPosition(
VOID
);
EFI_STATUS
EFIAPI
ConSplitterTextOutEnableCursor(
VOID
);
EFI_STATUS
EFIAPI
ConSplitterTextInReset(
VOID
);
EFI_STATUS
EFIAPI
ConSplitterTextInReadKeyStroke(
VOID
);
EFI_STATUS
EFIAPI
ConSplitterTextInWaitForKey(
VOID
);
EFI_STATUS
EFIAPI
ConSplitterPointerReset(
VOID
);
EFI_STATUS
EFIAPI
ConSplitterPointerGetState(
VOID
);
EFI_STATUS
EFIAPI
ConSplitterTextOutDriverBindingSupported(
VOID
);
EFI_STATUS
EFIAPI
ConSplitterTextOutDriverBindingStart(
VOID
);
EFI_STATUS
EFIAPI
ConSplitterTextOutDriverBindingStop(
VOID
);
EFI_STATUS
EFIAPI
ConSplitterDriverEntryPoint(
VOID
);
EFI_STATUS
EFIAPI
ConSplitterRegisterKeyNotify(
VOID
);
EFI_STATUS
EFIAPI
ConSplitterUnregisterKeyNotify(
VOID
);
EFI_STATUS
EFIAPI
ConSplitterGetDriverName(
VOID
);
EFI_STATUS
EFIAPI
ConSplitterGetControllerName(
VOID
);
EFI_STATUS
EFIAPI
ConSplitterConOutNotifyHandler(
VOID
);
EFI_STATUS
EFIAPI
ConSplitterConInNotifyHandler(
VOID
);
EFI_STATUS
EFIAPI
ConSplitterStdErrNotifyHandler(
VOID
);
EFI_STATUS
EFIAPI
ConSplitterDumpModeTable(
VOID
);
EFI_STATUS
EFIAPI
ConSplitterGetDebugLevel(
VOID
);
EFI_STATUS
EFIAPI
ConSplitterCopyMem(
VOID
);
EFI_STATUS
EFIAPI
ConSplitterIsLanguageEnUs(
VOID
);
EFI_STATUS
EFIAPI
ConSplitterReadUnaligned64(
VOID
);
EFI_STATUS
EFIAPI
ConSplitterIsProtocolGuidMatch(
VOID
);
EFI_STATUS
EFIAPI
ConSplitterLocateHob(
VOID
);
EFI_STATUS
EFIAPI
ConSplitterSynchronizeTextOut(
VOID
);
EFI_STATUS
EFIAPI
ConSplitterFlushBuffer(
VOID
);
EFI_STATUS
EFIAPI
ConSplitterScrollTextBuffer(
VOID
);
EFI_STATUS
EFIAPI
ConSplitterClearTextBuffer(
VOID
);
EFI_STATUS
EFIAPI
ConSplitterReconstructModeTable(
VOID
);
EFI_STATUS
EFIAPI
1: Global Data (.data section)(
VOID
);
EFI_STATUS
EFIAPI
following globals are defined in the .data section of(
VOID
);
EFI_STATUS
EFIAPI
binding protocol instances (installed via InstallMultipleProtocolInterfaces)(
VOID
);
EFI_STATUS
EFIAPI
Out driver binding:(
VOID
);
EFI_STATUS
EFIAPI
= protocol GUID array(
VOID
);
EFI_STATUS
EFIAPI
= driver binding protocol structure(
VOID
);
EFI_STATUS
EFIAPI
In driver binding:(
VOID
);
EFI_STATUS
EFIAPI
driver binding:(
VOID
);
EFI_STATUS
EFIAPI
GUIDs referenced from .rdata(
VOID
);
EFI_STATUS
EFIAPI
= EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL GUID(
VOID
);
EFI_STATUS
EFIAPI
= EFI_GRAPHICS_OUTPUT_PROTOCOL GUID(
VOID
);
EFI_STATUS
EFIAPI
= EFI_DEVICE_PATH_PROTOCOL GUID(
VOID
);
EFI_STATUS
EFIAPI
= (secondary text output mode protocol)(
VOID
);
EFI_STATUS
EFIAPI
= EFI_UGA_DRAW_PROTOCOL GUID (or GOP mode protocol)(
VOID
);
EFI_STATUS
EFIAPI
= EFI_SIMPLE_POINTER_PROTOCOL GUID(
VOID
);
EFI_STATUS
EFIAPI
= (text output mode protocol alt)(
VOID
);
EFI_STATUS
EFIAPI
= EFI_ABSOLUTE_POINTER_PROTOCOL GUID(
VOID
);
EFI_STATUS
EFIAPI
= gEfiConsoleOutDeviceGuid(
VOID
);
EFI_STATUS
EFIAPI
= EFI_HII_DATABASE_PROTOCOL GUID(
VOID
);
EFI_STATUS
EFIAPI
= EFI_SERIAL_IO_PROTOCOL GUID (or debug port)(
VOID
);
EFI_STATUS
EFIAPI
= gEfiGlobalVariableGuid (for "ConOutDev"/"ConInDev" UEFI vars)(
VOID
);
EFI_STATUS
EFIAPI
= gEfiConsoleControlGuid or gEfiSimpleTextOutProtocolGuid for HOB matching(
VOID
);
EFI_STATUS
EFIAPI
/ unk_6020 = DebugLib protocol GUIDs(
VOID
);
EFI_STATUS
EFIAPI
table and boot services cached globally(
VOID
);
EFI_STATUS
EFIAPI
gImageHandle = 0; // 0x6118(
VOID
);
EFI_STATUS
EFIAPI
UINT64 gBootServices = 0; // 0x6110(
VOID
);
EFI_STATUS
EFIAPI
//(
VOID
);
EFI_STATUS
EFIAPI
gBootServicesLocal = 0; // 0x6138(
VOID
);
EFI_STATUS
EFIAPI
UINT64 gSystemTableLocal = 0; // 0x6148(
VOID
);
EFI_STATUS
EFIAPI
image handles for each driver binding(
VOID
);
EFI_STATUS
EFIAPI
gImageHandleTextOut = 0; // 0x5EB8 (ImageHandle_0)(
VOID
);
EFI_STATUS
EFIAPI
(ImageHandle_1)(
VOID
);
EFI_STATUS
EFIAPI
(ImageHandle_2)(
VOID
);
EFI_STATUS
EFIAPI
Out state(
VOID
);
EFI_STATUS
EFIAPI
*gConSplitterTextOutPrivate = NULL; // 0x6070 (qword_6070)(
VOID
);
EFI_STATUS
EFIAPI
(p_n0xA = active count)(
VOID
);
EFI_STATUS
EFIAPI
In state(
VOID
);
EFI_STATUS
EFIAPI
*gConSplitterTextInPrivate = NULL; // 0x5D90(
VOID
);
EFI_STATUS
EFIAPI
(n0xA = active count)(
VOID
);
EFI_STATUS
EFIAPI
(n0xA_2)(
VOID
);
EFI_STATUS
EFIAPI
state(
VOID
);
EFI_STATUS
EFIAPI
gConSplitterPointerActiveCount = 0; // 0x6200 (n0xA_0)(
VOID
);
EFI_STATUS
EFIAPI
(i count)(
VOID
);
EFI_STATUS
EFIAPI
(i_0 count)(
VOID
);
EFI_STATUS
EFIAPI
(j count)(
VOID
);
EFI_STATUS
EFIAPI
(j_0 count)(
VOID
);
EFI_STATUS
EFIAPI
list anchors for child devices(
VOID
);
EFI_STATUS
EFIAPI
Out children: anchored at gConSplitterTextOutChildren(
VOID
);
EFI_STATUS
EFIAPI
(i, i_1)(
VOID
);
EFI_STATUS
EFIAPI
(i_0, i_1_2)(
VOID
);
EFI_STATUS
EFIAPI
In children(
VOID
);
EFI_STATUS
EFIAPI
(j, j_1)(
VOID
);
EFI_STATUS
EFIAPI
/ 0x61A8 / 0x6188(
VOID
);
EFI_STATUS
EFIAPI
management(
VOID
);
EFI_STATUS
EFIAPI
gConSplitterModeCount = 0; // 0x605C (dword_605C)(
VOID
);
EFI_STATUS
EFIAPI
(dword_6100)(
VOID
);
EFI_STATUS
EFIAPI
(dword_5FF4)(
VOID
);
EFI_STATUS
EFIAPI
(dword_5FF0)(
VOID
);
EFI_STATUS
EFIAPI
table (9 bytes per entry: columns(4) + rows(4) + valid(1))(
VOID
);
EFI_STATUS
EFIAPI
*gConSplitterModeTable = NULL; // 0x60D0 (qword_60D0)(
VOID
);
EFI_STATUS
EFIAPI
buffer pointers (double-buffered for scrollback)(
VOID
);
EFI_STATUS
EFIAPI
*gConSplitterTextBuffer = NULL; // 0x60C8 (src / qword_60C8)(
VOID
);
EFI_STATUS
EFIAPI
(src_0 / qword_60D8)(
VOID
);
EFI_STATUS
EFIAPI
(src_1 / qword_60B8)(
VOID
);
EFI_STATUS
EFIAPI
(dst / qword_60F8)(
VOID
);
EFI_STATUS
EFIAPI
(dst_0 / qword_60F0)(
VOID
);
EFI_STATUS
EFIAPI
and display state(
VOID
);
EFI_STATUS
EFIAPI
gConSplitterCursorColumn = 0; // low part of n15(
VOID
);
EFI_STATUS
EFIAPI
part of n15(
VOID
);
EFI_STATUS
EFIAPI
UINT32 gConSplitterColumns = 0; // n80(
VOID
);
EFI_STATUS
EFIAPI
(n15)(
VOID
);
EFI_STATUS
EFIAPI
guards (nested call protection)(
VOID
);
EFI_STATUS
EFIAPI
gConSplitterTextOutRecursionCount = 0; // 0x6040 (byte_6040)(
VOID
);
EFI_STATUS
EFIAPI
(byte_6041)(
VOID
);
EFI_STATUS
EFIAPI
(byte_6042)(
VOID
);
EFI_STATUS
EFIAPI
(byte_6058)(
VOID
);
EFI_STATUS
EFIAPI
(byte_606C)(
VOID
);
EFI_STATUS
EFIAPI
In blocked state(
VOID
);
EFI_STATUS
EFIAPI
gConSplitterTextInBlocked = 0; // 0x6059 (byte_6059)(
VOID
);
EFI_STATUS
EFIAPI
(byte_6179)(
VOID
);
EFI_STATUS
EFIAPI
(byte_607E)(
VOID
);
EFI_STATUS
EFIAPI
/ cursor visibility(
VOID
);
EFI_STATUS
EFIAPI
gConSplitterCursorVisible = 0; // 0x6004 (byte_6004)(
VOID
);
EFI_STATUS
EFIAPI
(byte_6008)(
VOID
);
EFI_STATUS
EFIAPI
LED state (low 2 bits = Scroll Lock state)(
VOID
);
EFI_STATUS
EFIAPI
gConSplitterLedState = 0; // 0x5D60 (byte_5D60)(
VOID
);
EFI_STATUS
EFIAPI
(byte_5D61)(
VOID
);
EFI_STATUS
EFIAPI
output mask (determines which debug level messages print)(
VOID
);
EFI_STATUS
EFIAPI
gConSplitterDebugMask = 0; // 0x5FFC(
VOID
);
EFI_STATUS
EFIAPI
protocol handle (keyboard layout database)(
VOID
);
EFI_STATUS
EFIAPI
gConSplitterHiiHandle = 0; // 0x6048 (qword_6048)(
VOID
);
EFI_STATUS
EFIAPI
(qword_6060)(
VOID
);
EFI_STATUS
EFIAPI
list handle(
VOID
);
EFI_STATUS
EFIAPI
gConSplitterHobListHandle = 0; // 0x6130 (qword_6130)(
VOID
);
EFI_STATUS
EFIAPI
protocol handles(
VOID
);
EFI_STATUS
EFIAPI
gConSplitterDebugProtocol = 0; // 0x6128 (qword_6128)(
VOID
);
EFI_STATUS
EFIAPI
/ 0x6168 / 0x6158(
VOID
);
EFI_STATUS
EFIAPI
notification state(
VOID
);
EFI_STATUS
EFIAPI
gConSplitterLastKeyScan = 0; // 0x6078 (word_6078)(
VOID
);
EFI_STATUS
EFIAPI
(word_5E40)(
VOID
);
EFI_STATUS
EFIAPI
filter table (8 entries, 12 bytes each)(
VOID
);
EFI_STATUS
EFIAPI
entry has: ScanCode(2) + UnicodeChar(2) + ShiftState(4) + Reserved(4)(
VOID
);
EFI_STATUS
EFIAPI
define which key combinations the splitter intercepts for(
VOID
);
EFI_STATUS
EFIAPI
handling (e.g. hotkeys for console switching).(
VOID
);
EFI_STATUS
EFIAPI
gConSplitterKeyFilter[8 * 12]; // 0x5DE0 (word_5DE0)(
VOID
);
EFI_STATUS
EFIAPI
filter override flags (1 byte per filter entry)(
VOID
);
EFI_STATUS
EFIAPI
to 1 when a default notification handler is overridden.(
VOID
);
EFI_STATUS
EFIAPI
gConSplitterKeyFilterOverride[8]; // 0x6050 (byte_6050)(
VOID
);
EFI_STATUS
EFIAPI
In keyboard self-test state(
VOID
);
EFI_STATUS
EFIAPI
gConSplitterKeyboardTestPassed = 0; // 0x6068 (dword_6068, but used as byte)(
VOID
);
EFI_STATUS
EFIAPI
(byte_6041) - shared with blocked flag(
VOID
);
EFI_STATUS
EFIAPI
event for keyboard polling(
VOID
);
EFI_STATUS
EFIAPI
gConSplitterTimerEvent = 0; // 0x5EC0 area(
VOID
);
EFI_STATUS
EFIAPI
scaling factors(
VOID
);
EFI_STATUS
EFIAPI
gConSplitterScaleX = 0; // 0x5F80 (dword_5F80)(
VOID
);
EFI_STATUS
EFIAPI
(dword_5F88)(
VOID
);
EFI_STATUS
EFIAPI
(dword_5F90)(
VOID
);
EFI_STATUS
EFIAPI
mode tracking data (off_5F10)(
VOID
);
EFI_STATUS
EFIAPI
gConSplitterResolutionModeData[6] = {0}; // 0x5F10(
VOID
);
EFI_STATUS
EFIAPI
events(
VOID
);
EFI_STATUS
EFIAPI
*gConSplitterConOutNotifyEvent = NULL; // 0x5EE8(
VOID
);
EFI_STATUS
EFIAPI
VOID *gConSplitterConInNotifyReg = NULL; // 0x5F30(
VOID
);
EFI_STATUS
EFIAPI
interface pointers (installed on system table)(
VOID
);
EFI_STATUS
EFIAPI
*gConSplitterConOutInterface = NULL; // off_5FA0(
VOID
);
EFI_STATUS
EFIAPI
VOID *gConSplitterStdErrInterface = NULL; // off_5F30(
VOID
);
EFI_STATUS
EFIAPI
change notification structures(
VOID
);
EFI_STATUS
EFIAPI
gConSplitterResolutionEvent = 0; // 0x5F70 (off_5F70)(
VOID
);
EFI_STATUS
EFIAPI
2: Library Helpers(
VOID
);
EFI_STATUS
EFIAPI
3: Text Out Protocol Implementation(
VOID
);
EFI_STATUS
EFIAPI
mode state from current mode table(
VOID
);
EFI_STATUS
EFIAPI
children - reset to defaults(
VOID
);
EFI_STATUS
EFIAPI
internal text buffer(
VOID
);
EFI_STATUS
EFIAPI
buffer as dirty (needs re-initialization)(
VOID
);
EFI_STATUS
EFIAPI
starting position in the scrollback buffer(
VOID
);
EFI_STATUS
EFIAPI
if (CursorCol > 0) {(
VOID
);
EFI_STATUS
EFIAPI
if ((UINTN)(BufferPos + 2) >= (UINTN)gConSplitterTextBufEnd) {(
VOID
);
EFI_STATUS
EFIAPI
position after scroll(
VOID
);
EFI_STATUS
EFIAPI
return(
VOID
);
EFI_STATUS
EFIAPI
character(
VOID
);
EFI_STATUS
EFIAPI
position(
VOID
);
EFI_STATUS
EFIAPI
character to buffer(
VOID
);
EFI_STATUS
EFIAPI
global cursor position(
VOID
);
EFI_STATUS
EFIAPI
be recalculated(
VOID
);
EFI_STATUS
EFIAPI
dispatch to all active child devices(
VOID
);
EFI_STATUS
EFIAPI
resetting cursor position and dispatching)(
VOID
);
EFI_STATUS
EFIAPI
mode state(
VOID
);
EFI_STATUS
EFIAPI
children - return defaults(
VOID
);
EFI_STATUS
EFIAPI
in this mode(
VOID
);
EFI_STATUS
EFIAPI
each child's mode(
VOID
);
EFI_STATUS
EFIAPI
children - reset cursor to origin(
VOID
);
EFI_STATUS
EFIAPI
children - update local state(
VOID
);
EFI_STATUS
EFIAPI
4: Text In (Keyboard) Protocol Implementation(
VOID
);
EFI_STATUS
EFIAPI
6: Simple Pointer Protocol Implementation(
VOID
);
EFI_STATUS
EFIAPI
7: Driver Binding Protocol Implementation(
VOID
);
EFI_STATUS
EFIAPI
if controller supports text output protocol(
VOID
);
EFI_STATUS
EFIAPI
the controller supports text output(
VOID
);
EFI_STATUS
EFIAPI
if already connected(
VOID
);
EFI_STATUS
EFIAPI
protocol to get the text output interface(
VOID
);
EFI_STATUS
EFIAPI
for duplicate device path(
VOID
);
EFI_STATUS
EFIAPI
child device node(
VOID
);
EFI_STATUS
EFIAPI
into linked list of text out children(
VOID
);
EFI_STATUS
EFIAPI
this is the first child, set up the mode table(
VOID
);
EFI_STATUS
EFIAPI
up graphics output protocol notification(
VOID
);
EFI_STATUS
EFIAPI
the child node for this controller(
VOID
);
EFI_STATUS
EFIAPI
protocols on this handle(
VOID
);
EFI_STATUS
EFIAPI
from linked list(
VOID
);
EFI_STATUS
EFIAPI
the node(
VOID
);
EFI_STATUS
EFIAPI
if we need to update mode state(
VOID
);
EFI_STATUS
EFIAPI
children removed - clean up resources(
VOID
);
EFI_STATUS
EFIAPI
8: Driver Entry Point(
VOID
);
EFI_STATUS
EFIAPI
(gSystemTableLocal == 0) {(
VOID
);
EFI_STATUS
EFIAPI
= 0;(
VOID
);
EFI_STATUS
EFIAPI
= gBS->CreateEvent ((
VOID
);
EFI_STATUS
EFIAPI
= gBS->RegisterProtocolNotify ((
VOID
);
EFI_STATUS
EFIAPI
Setup variable for default mode configuration(
VOID
);
EFI_STATUS
EFIAPI
variable exists - check its contents(
VOID
);
EFI_STATUS
EFIAPI
console mode bit (offset depends on(
VOID
);
EFI_STATUS
EFIAPI
variable layout - bit 0 in first byte)(
VOID
);
EFI_STATUS
EFIAPI
configure the default mode(
VOID
);
EFI_STATUS
EFIAPI
(gConSplitterModeTable != NULL) {(
VOID
);
EFI_STATUS
EFIAPI
the mode and cursor(
VOID
);
EFI_STATUS
EFIAPI
= 20Hz keyboard poll(
VOID
);
EFI_STATUS
EFIAPI
9: Key Notification Support(
VOID
);
EFI_STATUS
EFIAPI
is blocked (self-test mode) - register in the global(
VOID
);
EFI_STATUS
EFIAPI
list for later activation(
VOID
);
EFI_STATUS
EFIAPI
into notification linked list (i_1 list)(
VOID
);
EFI_STATUS
EFIAPI
path - register on each child device(
VOID
);
EFI_STATUS
EFIAPI
= gBS->AllocatePool ((
VOID
);
EFI_STATUS
EFIAPI
on each Text In child device(
VOID
);
EFI_STATUS
EFIAPI
the child pointer(
VOID
);
EFI_STATUS
EFIAPI
on this child (if it supports KeyNotify)(
VOID
);
EFI_STATUS
EFIAPI
if this replaces a default key filter(
VOID
);
EFI_STATUS
EFIAPI
into notification list(
VOID
);
EFI_STATUS
EFIAPI
the notification node in the linked list(
VOID
);
EFI_STATUS
EFIAPI
from each child device(
VOID
);
EFI_STATUS
EFIAPI
10: Component Name Protocol(
VOID
);
EFI_STATUS
EFIAPI
11: Console Notification Handlers(
VOID
);
EFI_STATUS
EFIAPI
any text output handles(
VOID
);
EFI_STATUS
EFIAPI
to start the driver on this handle(
VOID
);
EFI_STATUS
EFIAPI
device path protocol notify if not yet done(
VOID
);
EFI_STATUS
EFIAPI
any text input handles(
VOID
);
EFI_STATUS
EFIAPI
the driver(
VOID
);
EFI_STATUS
EFIAPI
the system table console input handle and protocol(
VOID
);
EFI_STATUS
EFIAPI
up system table mode(
VOID
);
EFI_STATUS
EFIAPI
the 8 default key filters(
VOID
);
EFI_STATUS
EFIAPI
to ConOutNotifyHandler but for StdErr(
VOID
);
EFI_STATUS
EFIAPI
EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL on the handle(
VOID
);
EFI_STATUS
EFIAPI
12: Debug and Diagnostic Functions(
VOID
);
EFI_STATUS
EFIAPI
CMOS index register 0x70, save high bit (NMI enable)(
VOID
);
EFI_STATUS
EFIAPI
only(
VOID
);
EFI_STATUS
EFIAPI
| EFI_D_WARN(
VOID
);
EFI_STATUS
EFIAPI
HOB list from SystemTable->BootServices(
VOID
);
EFI_STATUS
EFIAPI
13: Console Mode Management(
VOID
);
EFI_STATUS
EFIAPI
have UGA Draw protocol - use it for mode switching(
VOID
);
EFI_STATUS
EFIAPI
display buffer(
VOID
);
EFI_STATUS
EFIAPI
UGA Draw - use text output scrolling(
VOID
);
EFI_STATUS
EFIAPI
cursor position and attribute(
VOID
);
EFI_STATUS
EFIAPI
UGA Draw protocol from the reference device(
VOID
);
EFI_STATUS
EFIAPI
Blt buffer size from current mode dimensions(
VOID
);
EFI_STATUS
EFIAPI
the buffer to the screen(
VOID
);
EFI_STATUS
EFIAPI
the attribute of the first character in the first line(
VOID
);
EFI_STATUS
EFIAPI
mode and cursor(
VOID
);
EFI_STATUS
EFIAPI
character by character(
VOID
);
EFI_STATUS
EFIAPI
of line marker found(
VOID
);
EFI_STATUS
EFIAPI
new attribute(
VOID
);
EFI_STATUS
EFIAPI
max mode from reference device(
VOID
);
EFI_STATUS
EFIAPI
mode table: 9 bytes per mode entry(
VOID
);
EFI_STATUS
EFIAPI
= 4(cols) + 4(rows) + 1(valid)(
VOID
);
EFI_STATUS
EFIAPI
old table if it exists(
VOID
);
EFI_STATUS
EFIAPI
mode table(
VOID
);
EFI_STATUS
EFIAPI
previous mode if valid(
VOID
);
EFI_STATUS
EFIAPI
mode to 0(
VOID
);
EFI_STATUS
EFIAPI
default cursor setting(
VOID
);
#endif /* __CONSPLITTER_H__ */