Putty function key map:\r
+=========+======+===========+=============+=============+=============+=========+\r
| | EFI | | | | | |\r
- | | Scan | | | Normal | | |\r
- | KEY | Code | VT100+ | Xterm R6 | VT400 | Linux | SCO |\r
+ | | Scan | VT100+ | | Normal | | |\r
+ | KEY | Code | VTUTF8 | 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
Putty function key map:\r
+=========+======+===========+=============+=============+=============+=========+\r
| | EFI | | | | | |\r
- | | Scan | | | Normal | | |\r
- | KEY | Code | VT100+ | Xterm R6 | VT400 | Linux | SCO |\r
+ | | Scan | VT100+ | | Normal | | |\r
+ | KEY | Code | VTUTF8 | 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
if ((UnicodeChar == 'O') && ((TerminalDevice->TerminalType == TerminalTypeVt100) ||\r
(TerminalDevice->TerminalType == TerminalTypeTtyTerm) ||\r
(TerminalDevice->TerminalType == TerminalTypeXtermR6) ||\r
- (TerminalDevice->TerminalType == TerminalTypeVt100Plus)))\r
+ (TerminalDevice->TerminalType == TerminalTypeVt100Plus) ||\r
+ (TerminalDevice->TerminalType == TerminalTypeVtUtf8)))\r
{\r
TerminalDevice->InputState |= INPUT_STATE_O;\r
TerminalDevice->ResetState = RESET_STATE_DEFAULT;\r
Key.ScanCode = SCAN_END;\r
break;\r
}\r
- } else if (TerminalDevice->TerminalType == TerminalTypeVt100Plus) {\r
+ } else if ((TerminalDevice->TerminalType == TerminalTypeVt100Plus) ||\r
+ (TerminalDevice->TerminalType == TerminalTypeVtUtf8))\r
+ {\r
switch (UnicodeChar) {\r
case 'P':\r
Key.ScanCode = SCAN_F1;\r