/** @file\r
Header file for Terminal driver.\r
\r
-Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>\r
+Copyright (c) 2006 - 2019, Intel Corporation. All rights reserved.<BR>\r
Copyright (C) 2016 Silicon Graphics, Inc. All rights reserved.<BR>\r
SPDX-License-Identifier: BSD-2-Clause-Patent\r
\r
TerminalTypeVt100,\r
TerminalTypeVt100Plus,\r
TerminalTypeVtUtf8,\r
- TerminalTypeTtyTerm\r
+ TerminalTypeTtyTerm,\r
+ TerminalTypeLinux,\r
+ TerminalTypeXtermR6,\r
+ TerminalTypeVt400,\r
+ TerminalTypeSCO\r
} TERMINAL_TYPE;\r
\r
typedef struct {\r
#define INPUT_STATE_LEFTOPENBRACKET 0x04\r
#define INPUT_STATE_O 0x08\r
#define INPUT_STATE_2 0x10\r
-#define INPUT_STATE_LEFTOPENBRACKET_2 0x20\r
+#define INPUT_STATE_LEFTOPENBRACKET_TTY 0x20\r
+#define INPUT_STATE_1 0x40\r
+#define INPUT_STATE_LEFTOPENBRACKET_2ND 0x80\r
\r
#define RESET_STATE_DEFAULT 0x00\r
#define RESET_STATE_ESC_R 0x01\r
/**\r
Build termial device path according to terminal type.\r
\r
- @param TerminalType The terminal type is PC ANSI, VT100, VT100+ or VT-UTF8.\r
+ @param TerminalType The terminal type is PC ANSI, VT100, VT100+, VT-UTF8, TTY-Term,\r
+ Linux, XtermR6, VT400 and SCO.\r
@param ParentDevicePath Parent device path.\r
@param TerminalDevicePath Returned terminal device path, if building successfully.\r
\r
| F12 | 0x16 | | ESC @ | |\r
+=========+======+===========+==========+==========+\r
\r
+Putty function key map:\r
+ +=========+======+===========+=============+=============+=============+=========+\r
+ | | EFI | | | | | |\r
+ | | Scan | | | Normal | | |\r
+ | KEY | Code | VT100+ | Xterm R6 | VT400 | Linux | SCO |\r
+ +=========+======+===========+=============+=============+=============+=========+\r
+ | F1 | 0x0B | ESC O P | ESC O P | ESC [ 1 1 ~ | ESC [ [ A | ESC [ M |\r
+ | F2 | 0x0C | ESC O Q | ESC O Q | ESC [ 1 2 ~ | ESC [ [ B | ESC [ N |\r
+ | F3 | 0x0D | ESC O R | ESC O R | ESC [ 1 3 ~ | ESC [ [ C | ESC [ O |\r
+ | F4 | 0x0E | ESC O S | ESC O S | ESC [ 1 4 ~ | ESC [ [ D | ESC [ P |\r
+ | F5 | 0x0F | ESC O T | ESC [ 1 5 ~ | ESC [ 1 5 ~ | ESC [ [ E | ESC [ Q |\r
+ | F6 | 0x10 | ESC O U | ESC [ 1 7 ~ | ESC [ 1 7 ~ | ESC [ 1 7 ~ | ESC [ R |\r
+ | F7 | 0x11 | ESC O V | ESC [ 1 8 ~ | ESC [ 1 8 ~ | ESC [ 1 8 ~ | ESC [ S |\r
+ | F8 | 0x12 | ESC O W | ESC [ 1 9 ~ | ESC [ 1 9 ~ | ESC [ 1 9 ~ | ESC [ T |\r
+ | F9 | 0x13 | ESC O X | ESC [ 2 0 ~ | ESC [ 2 0 ~ | ESC [ 2 0 ~ | ESC [ U |\r
+ | F10 | 0x14 | ESC O Y | ESC [ 2 1 ~ | ESC [ 2 1 ~ | ESC [ 2 1 ~ | ESC [ V |\r
+ | Escape | 0x17 | ESC | ESC | ESC | ESC | ESC |\r
+ | F11 | 0x15 | ESC O Z | ESC [ 2 3 ~ | ESC [ 2 3 ~ | ESC [ 2 3 ~ | ESC [ W |\r
+ | F12 | 0x16 | ESC O [ | ESC [ 2 4 ~ | ESC [ 2 4 ~ | ESC [ 2 4 ~ | ESC [ X |\r
+ +=========+======+===========+=============+=============+=============+=========+\r
+\r
+\r
Special Mappings\r
================\r
ESC R ESC r ESC R = Reset System\r