From c7de829c796978e519984df2f1c8cfcf921a39a4 Mon Sep 17 00:00:00 2001 From: wdenk Date: Tue, 19 Nov 2002 11:04:11 +0000 Subject: * Patch by Thomas Frieden, 13 Nov 2002: Add code for AmigaOne board (preliminary merge to U-Boot, still WIP) * Patch by Jon Diekema, 12 Nov 2002: - Adding URL for IEEE OUI lookup - Making the autoboot #defines dependent on CONFIG_AUTOBOOT_KEYED being defined. - In the CONFIG_EXTRA_ENV_SETTINGS #define, the root-on-initrd and root-on-nfs macros are designed to switch how the default boot method gets defined. --- .../bios_emulator/scitech/src/pm/codepage/us_eng.c | 285 +++++++++++++++++++++ 1 file changed, 285 insertions(+) create mode 100644 board/MAI/bios_emulator/scitech/src/pm/codepage/us_eng.c (limited to 'board/MAI/bios_emulator/scitech/src/pm/codepage') diff --git a/board/MAI/bios_emulator/scitech/src/pm/codepage/us_eng.c b/board/MAI/bios_emulator/scitech/src/pm/codepage/us_eng.c new file mode 100644 index 0000000000..9aa871423e --- /dev/null +++ b/board/MAI/bios_emulator/scitech/src/pm/codepage/us_eng.c @@ -0,0 +1,285 @@ +/**************************************************************************** +* +* SciTech OS Portability Manager Library +* +* ======================================================================== +* +* The contents of this file are subject to the SciTech MGL Public +* License Version 1.0 (the "License"); you may not use this file +* except in compliance with the License. You may obtain a copy of +* the License at http://www.scitechsoft.com/mgl-license.txt +* +* Software distributed under the License is distributed on an +* "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or +* implied. See the License for the specific language governing +* rights and limitations under the License. +* +* The Original Code is Copyright (C) 1991-1998 SciTech Software, Inc. +* +* The Initial Developer of the Original Code is SciTech Software, Inc. +* All Rights Reserved. +* +* ======================================================================== +* +* Language: ANSI C +* Environment: Any +* +* Description: Keyboard translation code pages for US English keyboards. +* +****************************************************************************/ + +#include "event.h" + +/*--------------------------- Global variables ----------------------------*/ + +/* This table is used for all normal key translations, and is the fallback + * table if the key is not found in any of the other translation tables. + * If the code is not found in this table, the ASCII code is set to 0 to + * indicate that there is no ASCII code equivalent for this key. + */ +static codepage_entry_t US_normal[] = { + {0x01, 0x1B}, + {0x02, '1'}, + {0x03, '2'}, + {0x04, '3'}, + {0x05, '4'}, + {0x06, '5'}, + {0x07, '6'}, + {0x08, '7'}, + {0x09, '8'}, + {0x0A, '9'}, + {0x0B, '0'}, + {0x0C, '-'}, + {0x0D, '='}, + {0x0E, 0x08}, + {0x0F, 0x09}, + {0x10, 'q'}, + {0x11, 'w'}, + {0x12, 'e'}, + {0x13, 'r'}, + {0x14, 't'}, + {0x15, 'y'}, + {0x16, 'u'}, + {0x17, 'i'}, + {0x18, 'o'}, + {0x19, 'p'}, + {0x1A, '['}, + {0x1B, ']'}, + {0x1C, 0x0D}, + {0x1E, 'a'}, + {0x1F, 's'}, + {0x20, 'd'}, + {0x21, 'f'}, + {0x22, 'g'}, + {0x23, 'h'}, + {0x24, 'j'}, + {0x25, 'k'}, + {0x26, 'l'}, + {0x27, ';'}, + {0x28, '\''}, + {0x29, '`'}, + {0x2B, '\\'}, + {0x2C, 'z'}, + {0x2D, 'x'}, + {0x2E, 'c'}, + {0x2F, 'v'}, + {0x30, 'b'}, + {0x31, 'n'}, + {0x32, 'm'}, + {0x33, ','}, + {0x34, '.'}, + {0x35, '/'}, + {0x37, '*'}, /* Keypad */ + {0x39, ' '}, + {0x4A, '-'}, /* Keypad */ + {0x4E, '+'}, /* Keypad */ + {0x60, 0x0D}, /* Keypad */ + {0x61, '/'}, /* Keypad */ + }; + +/* This table is used for when CAPSLOCK is active and the shift or ctrl + * keys are not down. If the code is not found in this table, the normal + * table above is then searched. + */ +static codepage_entry_t US_caps[] = { + {0x10, 'Q'}, + {0x11, 'W'}, + {0x12, 'E'}, + {0x13, 'R'}, + {0x14, 'T'}, + {0x15, 'Y'}, + {0x16, 'U'}, + {0x17, 'I'}, + {0x18, 'O'}, + {0x19, 'P'}, + {0x1E, 'A'}, + {0x1F, 'S'}, + {0x20, 'D'}, + {0x21, 'F'}, + {0x22, 'G'}, + {0x23, 'H'}, + {0x24, 'J'}, + {0x25, 'K'}, + {0x26, 'L'}, + {0x2C, 'Z'}, + {0x2D, 'X'}, + {0x2E, 'C'}, + {0x2F, 'V'}, + {0x30, 'B'}, + {0x31, 'N'}, + {0x32, 'M'}, + }; + +/* This table is used for when shift key is down, but the ctrl key is not + * down and CAPSLOCK is not active. If the code is not found in this table, + * the normal table above is then searched. + */ +static codepage_entry_t US_shift[] = { + {0x02, '!'}, + {0x03, '@'}, + {0x04, '#'}, + {0x05, '$'}, + {0x06, '%'}, + {0x07, '^'}, + {0x08, '&'}, + {0x09, '*'}, + {0x0A, '('}, + {0x0B, ')'}, + {0x0C, '_'}, + {0x0D, '+'}, + {0x10, 'Q'}, + {0x11, 'W'}, + {0x12, 'E'}, + {0x13, 'R'}, + {0x14, 'T'}, + {0x15, 'Y'}, + {0x16, 'U'}, + {0x17, 'I'}, + {0x18, 'O'}, + {0x19, 'P'}, + {0x1A, '{'}, + {0x1B, '}'}, + {0x1E, 'A'}, + {0x1F, 'S'}, + {0x20, 'D'}, + {0x21, 'F'}, + {0x22, 'G'}, + {0x23, 'H'}, + {0x24, 'J'}, + {0x25, 'K'}, + {0x26, 'L'}, + {0x27, ':'}, + {0x28, '"'}, + {0x29, '~'}, + {0x2B, '|'}, + {0x2C, 'Z'}, + {0x2D, 'X'}, + {0x2E, 'C'}, + {0x2F, 'V'}, + {0x30, 'B'}, + {0x31, 'N'}, + {0x32, 'M'}, + {0x33, '<'}, + {0x34, '>'}, + {0x35, '?'}, + }; + +/* This table is used for when CAPSLOCK is active and the shift key is + * down, but the ctrl key is not. If the code is not found in this table, + * the shift table above is then searched. + */ +static codepage_entry_t US_shiftCaps[] = { + {0x10, 'q'}, + {0x11, 'w'}, + {0x12, 'e'}, + {0x13, 'r'}, + {0x14, 't'}, + {0x15, 'y'}, + {0x16, 'u'}, + {0x17, 'i'}, + {0x18, 'o'}, + {0x19, 'p'}, + {0x1E, 'a'}, + {0x1F, 's'}, + {0x20, 'd'}, + {0x21, 'f'}, + {0x22, 'g'}, + {0x23, 'h'}, + {0x24, 'j'}, + {0x25, 'k'}, + {0x26, 'l'}, + {0x2C, 'z'}, + {0x2D, 'x'}, + {0x2E, 'c'}, + {0x2F, 'v'}, + {0x30, 'b'}, + {0x31, 'n'}, + {0x32, 'm'}, + }; + +/* This table is used for all key translations when the ctrl key is down, + * regardless of the state of the shift key and CAPSLOCK. If the code is + * not found in this table, the ASCII code is set to 0 to indicate that + * there is no ASCII code equivalent for this key. + */ +static codepage_entry_t US_ctrl[] = { + {0x01, 0x1B}, + {0x06, 0x1E}, + {0x0C, 0x1F}, + {0x0E, 0x7F}, + {0x10, 0x11}, + {0x11, 0x17}, + {0x12, 0x05}, + {0x13, 0x12}, + {0x14, 0x14}, + {0x15, 0x19}, + {0x16, 0x16}, + {0x17, 0x09}, + {0x18, 0x0F}, + {0x19, 0x10}, + {0x1A, 0x1B}, + {0x1B, 0x1D}, + {0x1C, 0x0A}, + {0x1E, 0x01}, + {0x1F, 0x13}, + {0x20, 0x04}, + {0x21, 0x06}, + {0x22, 0x07}, + {0x23, 0x08}, + {0x24, 0x0A}, + {0x25, 0x0B}, + {0x26, 0x0C}, + {0x2B, 0x1C}, + {0x2C, 0x1A}, + {0x2D, 0x18}, + {0x2E, 0x03}, + {0x2F, 0x16}, + {0x30, 0x02}, + {0x31, 0x0E}, + {0x32, 0x0D}, + {0x39, ' '}, + }; + +static codepage_entry_t US_numPad[] = { + {0x4C, '5'}, + {0x62, '4'}, + {0x63, '6'}, + {0x64, '8'}, + {0x65, '2'}, + {0x66, '0'}, + {0x67, '.'}, + {0x68, '7'}, + {0x69, '1'}, + {0x6A, '9'}, + {0x6B, '3'}, + }; + +codepage_t _CP_US_English = { + "US English", + US_normal, EVT_ARR_SIZE(US_normal), + US_caps, EVT_ARR_SIZE(US_caps), + US_shift, EVT_ARR_SIZE(US_shift), + US_shiftCaps, EVT_ARR_SIZE(US_shiftCaps), + US_ctrl, EVT_ARR_SIZE(US_ctrl), + US_numPad, EVT_ARR_SIZE(US_numPad), + }; -- cgit