Newer
Older
AMI-Aptio-BIOS-Reversed / MdeModulePkg / Universal / Console / ConSplitterDxe / ConSplitter.h
@Ajax Dong Ajax Dong 2 days ago 16 KB Full restructure
/** @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__ */