OpenCore  1.0.4
OpenCore Bootloader
Loading...
Searching...
No Matches
TextOutputSystem.c File Reference
#include "OcConsoleLibInternal.h"
#include <Protocol/ConsoleControl.h>
#include <Protocol/GraphicsOutput.h>
#include <Protocol/SimpleTextOut.h>
#include <Library/BaseMemoryLib.h>
#include <Library/BaseLib.h>
#include <Library/DebugLib.h>
#include <Library/MemoryAllocationLib.h>
#include <Library/OcConsoleLib.h>
#include <Library/OcMiscLib.h>
#include <Library/BaseOverflowLib.h>
#include <Library/UefiBootServicesTableLib.h>

Go to the source code of this file.

Functions

STATIC EFI_STATUS EFIAPI ControlledOutputString (IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This, IN CHAR16 *String)
 
STATIC EFI_STATUS EFIAPI ControlledClearScreen (IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This)
 
STATIC EFI_STATUS EFIAPI ConsoleControlGetMode (IN EFI_CONSOLE_CONTROL_PROTOCOL *This, OUT EFI_CONSOLE_CONTROL_SCREEN_MODE *Mode, OUT BOOLEAN *GopUgaExists OPTIONAL, OUT BOOLEAN *StdInLocked OPTIONAL)
 
STATIC EFI_STATUS EFIAPI ConsoleControlSetMode (IN EFI_CONSOLE_CONTROL_PROTOCOL *This, IN EFI_CONSOLE_CONTROL_SCREEN_MODE Mode)
 
STATIC EFI_STATUS EFIAPI ConsoleControlLockStdIn (IN EFI_CONSOLE_CONTROL_PROTOCOL *This, IN CHAR16 *Password)
 
EFI_STATUS OcUseSystemTextOutput (IN EFI_CONSOLE_CONTROL_SCREEN_MODE InitialMode, IN OC_CONSOLE_RENDERER Renderer, IN BOOLEAN IgnoreTextOutput, IN BOOLEAN SanitiseClearScreen, IN BOOLEAN ClearScreenOnModeSwitch, IN BOOLEAN ReplaceTabWithSpace)
 

Variables

STATIC EFI_CONSOLE_CONTROL_SCREEN_MODE mConsoleMode = EfiConsoleControlScreenText
 
STATIC BOOLEAN mIgnoreTextInGraphics = FALSE
 
STATIC BOOLEAN mClearScreenOnModeSwitch = FALSE
 
STATIC BOOLEAN mReplaceTabWithSpace = FALSE
 
STATIC EFI_TEXT_STRING mOriginalOutputString
 
STATIC EFI_TEXT_CLEAR_SCREEN mOriginalClearScreen
 
STATIC EFI_CONSOLE_CONTROL_PROTOCOL mOriginalConsoleControlProtocol
 
STATIC EFI_GRAPHICS_OUTPUT_BLT_PIXEL mEfiBackgroundColors [8]
 
STATIC EFI_CONSOLE_CONTROL_PROTOCOL mConsoleControlProtocol
 

Detailed Description

Copyright (C) 2019, vit9696. All rights reserved.

All rights reserved.

This program and the accompanying materials are licensed and made available under the terms and conditions of the BSD License which accompanies this distribution. The full text of the license may be found at http://opensource.org/licenses/bsd-license.php

THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.

Definition in file TextOutputSystem.c.

Function Documentation

◆ ConsoleControlGetMode()

STATIC EFI_STATUS EFIAPI ConsoleControlGetMode ( IN EFI_CONSOLE_CONTROL_PROTOCOL * This,
OUT EFI_CONSOLE_CONTROL_SCREEN_MODE * Mode,
OUT BOOLEAN *GopUgaExists OPTIONAL,
OUT BOOLEAN *StdInLocked OPTIONAL )

Definition at line 208 of file TextOutputSystem.c.

◆ ConsoleControlLockStdIn()

STATIC EFI_STATUS EFIAPI ConsoleControlLockStdIn ( IN EFI_CONSOLE_CONTROL_PROTOCOL * This,
IN CHAR16 * Password )

Definition at line 305 of file TextOutputSystem.c.

◆ ConsoleControlSetMode()

STATIC EFI_STATUS EFIAPI ConsoleControlSetMode ( IN EFI_CONSOLE_CONTROL_PROTOCOL * This,
IN EFI_CONSOLE_CONTROL_SCREEN_MODE Mode )

Definition at line 248 of file TextOutputSystem.c.

◆ ControlledClearScreen()

STATIC EFI_STATUS EFIAPI ControlledClearScreen ( IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL * This)

Definition at line 141 of file TextOutputSystem.c.

◆ ControlledOutputString()

STATIC EFI_STATUS EFIAPI ControlledOutputString ( IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL * This,
IN CHAR16 * String )

Definition at line 99 of file TextOutputSystem.c.

◆ OcUseSystemTextOutput()

EFI_STATUS OcUseSystemTextOutput ( IN EFI_CONSOLE_CONTROL_SCREEN_MODE InitialMode,
IN OC_CONSOLE_RENDERER Renderer,
IN BOOLEAN IgnoreTextOutput,
IN BOOLEAN SanitiseClearScreen,
IN BOOLEAN ClearScreenOnModeSwitch,
IN BOOLEAN ReplaceTabWithSpace )

Definition at line 329 of file TextOutputSystem.c.

Variable Documentation

◆ mClearScreenOnModeSwitch

STATIC BOOLEAN mClearScreenOnModeSwitch = FALSE

Definition at line 49 of file TextOutputSystem.c.

◆ mConsoleControlProtocol

STATIC EFI_CONSOLE_CONTROL_PROTOCOL mConsoleControlProtocol
Initial value:
= {
}
STATIC EFI_STATUS EFIAPI ConsoleControlSetMode(IN EFI_CONSOLE_CONTROL_PROTOCOL *This, IN EFI_CONSOLE_CONTROL_SCREEN_MODE Mode)
STATIC EFI_STATUS EFIAPI ConsoleControlLockStdIn(IN EFI_CONSOLE_CONTROL_PROTOCOL *This, IN CHAR16 *Password)
STATIC EFI_STATUS EFIAPI ConsoleControlGetMode(IN EFI_CONSOLE_CONTROL_PROTOCOL *This, OUT EFI_CONSOLE_CONTROL_SCREEN_MODE *Mode, OUT BOOLEAN *GopUgaExists OPTIONAL, OUT BOOLEAN *StdInLocked OPTIONAL)

Definition at line 322 of file TextOutputSystem.c.

◆ mConsoleMode

Definition at line 35 of file TextOutputSystem.c.

◆ mEfiBackgroundColors

STATIC EFI_GRAPHICS_OUTPUT_BLT_PIXEL mEfiBackgroundColors[8]
Initial value:
= {
{ 0x00, 0x00, 0x00, 0x00 },
{ 0x98, 0x00, 0x00, 0x00 },
{ 0x00, 0x98, 0x00, 0x00 },
{ 0x98, 0x98, 0x00, 0x00 },
{ 0x00, 0x00, 0x98, 0x00 },
{ 0x98, 0x00, 0x98, 0x00 },
{ 0x00, 0x98, 0x98, 0x00 },
{ 0x98, 0x98, 0x98, 0x00 },
}

Definition at line 82 of file TextOutputSystem.c.

◆ mIgnoreTextInGraphics

STATIC BOOLEAN mIgnoreTextInGraphics = FALSE

Definition at line 42 of file TextOutputSystem.c.

◆ mOriginalClearScreen

STATIC EFI_TEXT_CLEAR_SCREEN mOriginalClearScreen

Definition at line 70 of file TextOutputSystem.c.

◆ mOriginalConsoleControlProtocol

STATIC EFI_CONSOLE_CONTROL_PROTOCOL mOriginalConsoleControlProtocol

Definition at line 77 of file TextOutputSystem.c.

◆ mOriginalOutputString

STATIC EFI_TEXT_STRING mOriginalOutputString

Definition at line 63 of file TextOutputSystem.c.

◆ mReplaceTabWithSpace

STATIC BOOLEAN mReplaceTabWithSpace = FALSE

Definition at line 56 of file TextOutputSystem.c.