Console I/O Overview - Intel Extensible Firmware Interface Specification

Intel extensible firmware interface specification
Table of Contents

Advertisement

7
Console I/O Protocol
This chapter defines the Console I/O protocol. This protocol is used to handle input and output of
text-based information intended for the system user during the operation of code in the EFI boot
services environment. Also included here are the definitions of three console devices: one for input
and one each for normal output and errors.
These interfaces are specified by function call definitions to allow maximum flexibility in
implementation. For example, there is no requirement for compliant systems to have a keyboard or
screen directly connected to the system. Implementations may choose to direct information passed
using these interfaces in arbitrary ways provided that the semantics of the functions are preserved
(in other words, provided that the information is passed to and from the system user).
7.1

Console I/O Overview

The EFI console is built out of the
and
protocols.
SIMPLE_INPUT
SIMPLE_TEXT_OUTPUT
These two protocols implement a basic text-based console that allows platform firmware, EFI
applications, and EFI OS loaders to present information to and receive input from a system
administrator. The EFI console consists of 16-bit Unicode characters, a simple set of input control
characters (Scan Codes), and a set of output-oriented programmatic interfaces that give
functionality equivalent to an intelligent terminal. The EFI console does not support pointing
devices on input or bitmaps on output.
The EFI specification requires that the
protocol support the same languages as
SIMPLE_INPUT
the corresponding
protocol. The
protocol is
SIMPLE_TEXT_OUTPUT
SIMPLE_TEXT_OUTPUT
recommended to support at least the Unicode ISO Latin 1 character set to enable standard terminal
emulation software to be used with an EFI console. The ISO Latin 1 character set implements a
superset of ASCII that has been extended to 16-bit characters. Any other number of Unicode code
pages may be optionally supported.
Version 1.02
12/12/00
151

Advertisement

Table of Contents
loading

Table of Contents