Cosmos/source/Cosmos.System2/Keyboard/ScanMaps/DE_Standard.cs
2020-06-10 23:01:57 +03:00

142 lines
9.2 KiB
C#
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

using System;
using System.Collections.Generic;
using System.Linq;
using Cosmos.HAL;
namespace Cosmos.System.ScanMaps
{
/// <summary>
/// DE_Standard class. Represent DE_Standard keyboard layout.
/// </summary>
public class DE_Standard
: ScanMapBase
{
/// <summary>
/// Create new instance of the <see cref="DE_Standard"/> class.
/// </summary>
public DE_Standard()
{
}
/// <summary>
/// Init key list.
/// </summary>
protected override void InitKeys()
{
_keys = new List<KeyMapping>(101);
#region Keys
/* Scan Norm Shift Ctrl Alt Num Caps ShCaps ShNum ConsoleKeyEx */
_keys.Add(new KeyMapping(0x00, ConsoleKeyEx.NoName));
_keys.Add(new KeyMapping(0x01, ConsoleKeyEx.Escape));
/* ^1234567890ß´ °!"§$%&/()=?` __²³£__{[]}\_ */
_keys.Add(new KeyMapping(0x29, '^', '°', '^', '^', '°', '^', ConsoleKeyEx.Backquote));
_keys.Add(new KeyMapping(0x02, '1', '!', '1', '1', '!', '1', ConsoleKeyEx.D1));
_keys.Add(new KeyMapping(0x03, '2', '"', '2', '2', '"', '2', '²', ConsoleKeyEx.D2));
_keys.Add(new KeyMapping(0x04, '3', '§', '3', '3', '§', '3', '³', ConsoleKeyEx.D3));
_keys.Add(new KeyMapping(0x05, '4', '$', '4', '4', '$', '4', '£', '£', ConsoleKeyEx.D4));
_keys.Add(new KeyMapping(0x06, '5', '%', '5', '5', '%', '5', ConsoleKeyEx.D5));
_keys.Add(new KeyMapping(0x07, '6', '&', '6', '6', '&', '6', ConsoleKeyEx.D6));
_keys.Add(new KeyMapping(0x08, '7', '/', '7', '7', '/', '7', '{', ConsoleKeyEx.D7));
_keys.Add(new KeyMapping(0x09, '8', '(', '8', '8', '(', '8', '[', ConsoleKeyEx.D8));
_keys.Add(new KeyMapping(0x0A, '9', ')', '9', '9', ')', '9', ']', ConsoleKeyEx.D9));
_keys.Add(new KeyMapping(0x0B, '0', '=', '0', '0', '=', '0', '}', ConsoleKeyEx.D0));
/* -, =, Bksp, Tab */
_keys.Add(new KeyMapping(0x0C, 'ß', '?', 'ß', 'ß', '?', 'ß', '\\', ConsoleKeyEx.Minus));
_keys.Add(new KeyMapping(0x0D, '´', '`', '´', '´', '`', '´', ConsoleKeyEx.Equal));
_keys.Add(new KeyMapping(0x0E, ConsoleKeyEx.Backspace));
_keys.Add(new KeyMapping(0x0F, ConsoleKeyEx.Tab));
/* qwertzuiopü+ QWERTZUIOPÜ* @_€________~ */
_keys.Add(new KeyMapping(0x10, 'q', 'Q', 'q', 'Q', 'q', 'Q', '@', ConsoleKeyEx.Q));
_keys.Add(new KeyMapping(0x11, 'w', 'W', 'w', 'W', 'w', 'W', ConsoleKeyEx.W));
_keys.Add(new KeyMapping(0x12, 'e', 'E', 'e', 'E', 'e', 'E', '€', ConsoleKeyEx.E));
_keys.Add(new KeyMapping(0x13, 'r', 'R', 'r', 'R', 'r', 'R', ConsoleKeyEx.R));
_keys.Add(new KeyMapping(0x14, 't', 'T', 't', 'T', 't', 'T', ConsoleKeyEx.T));
_keys.Add(new KeyMapping(0x15, 'z', 'Z', 'z', 'Z', 'z', 'Z', ConsoleKeyEx.Y));
_keys.Add(new KeyMapping(0x16, 'u', 'U', 'u', 'U', 'u', 'U', ConsoleKeyEx.U));
_keys.Add(new KeyMapping(0x17, 'i', 'I', 'i', 'I', 'i', 'I', ConsoleKeyEx.I));
_keys.Add(new KeyMapping(0x18, 'o', 'O', 'o', 'O', 'o', 'O', ConsoleKeyEx.O));
_keys.Add(new KeyMapping(0x19, 'p', 'P', 'p', 'P', 'p', 'P', ConsoleKeyEx.P));
_keys.Add(new KeyMapping(0x1A, 'ü', 'Ü', 'ü', 'Ü', 'ü', 'Ü', ConsoleKeyEx.LBracket));
_keys.Add(new KeyMapping(0x1B, '+', '*', '+', '*', '+', '*', '~', ConsoleKeyEx.RBracket));
/* ENTER, CTRL */
_keys.Add(new KeyMapping(0x1C, ConsoleKeyEx.Enter));
_keys.Add(new KeyMapping(0x1D, ConsoleKeyEx.LCtrl));
/* asdfghjklöä# ASDFGHJKLÖÄ' ____________ */
_keys.Add(new KeyMapping(0x1E, 'a', 'A', 'a', 'A', 'a', 'A', ConsoleKeyEx.A));
_keys.Add(new KeyMapping(0x1F, 's', 'S', 's', 'S', 's', 'S', ConsoleKeyEx.S));
_keys.Add(new KeyMapping(0x20, 'd', 'D', 'd', 'D', 'd', 'D', ConsoleKeyEx.D));
_keys.Add(new KeyMapping(0x21, 'f', 'F', 'f', 'F', 'f', 'F', ConsoleKeyEx.F));
_keys.Add(new KeyMapping(0x22, 'g', 'G', 'g', 'G', 'g', 'G', ConsoleKeyEx.G));
_keys.Add(new KeyMapping(0x23, 'h', 'H', 'h', 'H', 'h', 'H', ConsoleKeyEx.H));
_keys.Add(new KeyMapping(0x24, 'j', 'J', 'j', 'J', 'j', 'J', ConsoleKeyEx.J));
_keys.Add(new KeyMapping(0x25, 'k', 'K', 'k', 'K', 'k', 'K', ConsoleKeyEx.K));
_keys.Add(new KeyMapping(0x26, 'l', 'L', 'l', 'L', 'l', 'L', ConsoleKeyEx.L));
_keys.Add(new KeyMapping(0x27, 'ö', 'Ö', 'ö', 'Ö', 'ö', 'Ö', ConsoleKeyEx.Semicolon));
_keys.Add(new KeyMapping(0x28, 'ä', 'Ä', 'ä', 'Ä', 'ä', 'Ä', ConsoleKeyEx.Apostrophe));
_keys.Add(new KeyMapping(0x29, '#', '\'', '#', '\'', '#', '\'', ConsoleKeyEx.Backslash));
/* Left Shift*/
_keys.Add(new KeyMapping(0x2A, ConsoleKeyEx.LShift));
/* <yxcvbnm,.- >YXCVBNM;:_ |______µ___ */
_keys.Add(new KeyMapping(0x2B, '<', '>', '<', '>', '<', '>', '|', '|', ConsoleKeyEx.OEM102));
_keys.Add(new KeyMapping(0x2C, 'y', 'Y', 'y', 'Y', 'y', 'Y', ConsoleKeyEx.Z));
_keys.Add(new KeyMapping(0x2D, 'x', 'X', 'x', 'X', 'x', 'X', ConsoleKeyEx.X));
_keys.Add(new KeyMapping(0x2E, 'c', 'C', 'c', 'C', 'c', 'C', ConsoleKeyEx.C));
_keys.Add(new KeyMapping(0x2F, 'v', 'V', 'v', 'V', 'v', 'V', ConsoleKeyEx.V));
_keys.Add(new KeyMapping(0x30, 'b', 'B', 'b', 'B', 'b', 'B', ConsoleKeyEx.B));
_keys.Add(new KeyMapping(0x31, 'n', 'N', 'n', 'N', 'n', 'N', ConsoleKeyEx.N));
_keys.Add(new KeyMapping(0x32, 'm', 'M', 'm', 'M', 'm', 'M', 'µ', ConsoleKeyEx.M));
_keys.Add(new KeyMapping(0x33, ',', ';', ',', ';', ',', ';', ConsoleKeyEx.Comma));
_keys.Add(new KeyMapping(0x34, '.', ':', '.', ':', '.', ':', ConsoleKeyEx.Period));
_keys.Add(new KeyMapping(0x35, '-', '_', '-', '_', '-', '_', ConsoleKeyEx.Slash));
/* Right Shift */
_keys.Add(new KeyMapping(0x36, ConsoleKeyEx.RShift));
/* Print Screen */
_keys.Add(new KeyMapping(0x37, '*', '*', '*', '*', '*', '*', ConsoleKeyEx.NumMultiply));
// also numpad multiply
/* Alt */
_keys.Add(new KeyMapping(0x38, ConsoleKeyEx.LAlt));
/* Space */
_keys.Add(new KeyMapping(0x39, ' ', ConsoleKeyEx.Spacebar));
/* Caps */
_keys.Add(new KeyMapping(0x3A, ConsoleKeyEx.CapsLock));
/* F1-F12 */
_keys.Add(new KeyMapping(0x3B, ConsoleKeyEx.F1));
_keys.Add(new KeyMapping(0x3C, ConsoleKeyEx.F2));
_keys.Add(new KeyMapping(0x3D, ConsoleKeyEx.F3));
_keys.Add(new KeyMapping(0x3E, ConsoleKeyEx.F4));
_keys.Add(new KeyMapping(0x3F, ConsoleKeyEx.F5));
_keys.Add(new KeyMapping(0x40, ConsoleKeyEx.F6));
_keys.Add(new KeyMapping(0x41, ConsoleKeyEx.F7));
_keys.Add(new KeyMapping(0x42, ConsoleKeyEx.F8));
_keys.Add(new KeyMapping(0x43, ConsoleKeyEx.F9));
_keys.Add(new KeyMapping(0x44, ConsoleKeyEx.F10));
_keys.Add(new KeyMapping(0x57, ConsoleKeyEx.F11));
_keys.Add(new KeyMapping(0x58, ConsoleKeyEx.F12));
/* Num Lock, Scrl Lock */
_keys.Add(new KeyMapping(0x45, ConsoleKeyEx.NumLock));
_keys.Add(new KeyMapping(0x46, ConsoleKeyEx.ScrollLock));
/* HOME, Up, Pgup, -kpad, left, center, right, +keypad, end, down, pgdn, ins, del */
_keys.Add(new KeyMapping(0x4A, '-', '-', '-', '-', '-', '-', ConsoleKeyEx.NumMinus));
_keys.Add(new KeyMapping(0x4E, '+', '+', '+', '+', '+', '+', ConsoleKeyEx.NumPlus));
_keys.Add(new KeyMapping(0x47, '\0', '\0', '7', '\0', '\0', '\0', ConsoleKeyEx.Home, ConsoleKeyEx.Num7));
_keys.Add(new KeyMapping(0x48, '\0', '\0', '8', '\0', '\0', '\0', ConsoleKeyEx.UpArrow, ConsoleKeyEx.Num8));
_keys.Add(new KeyMapping(0x49, '\0', '\0', '9', '\0', '\0', '\0', ConsoleKeyEx.PageUp, ConsoleKeyEx.Num9));
_keys.Add(new KeyMapping(0x4B, '\0', '\0', '4', '\0', '\0', '\0', ConsoleKeyEx.LeftArrow, ConsoleKeyEx.Num4));
_keys.Add(new KeyMapping(0x4C, '\0', '\0', '5', '\0', '\0', '\0', ConsoleKeyEx.Num5));
_keys.Add(new KeyMapping(0x4D, '\0', '\0', '6', '\0', '\0', '\0', ConsoleKeyEx.RightArrow, ConsoleKeyEx.Num6));
_keys.Add(new KeyMapping(0x4F, '\0', '\0', '1', '\0', '\0', '\0', ConsoleKeyEx.End, ConsoleKeyEx.Num1));
_keys.Add(new KeyMapping(0x50, '\0', '\0', '2', '\0', '\0', '\0', ConsoleKeyEx.DownArrow, ConsoleKeyEx.Num2));
_keys.Add(new KeyMapping(0x51, '\0', '\0', '3', '\0', '\0', '\0', ConsoleKeyEx.PageDown, ConsoleKeyEx.Num3));
_keys.Add(new KeyMapping(0x52, '\0', '\0', '0', '\0', '\0', '\0', ConsoleKeyEx.Insert, ConsoleKeyEx.Num0));
_keys.Add(new KeyMapping(0x53, '\b', '\b', ',', '\b', '\b', '\b', ConsoleKeyEx.Delete, ConsoleKeyEx.NumPeriod));
_keys.Add(new KeyMapping(0x5b, ConsoleKeyEx.LWin));
_keys.Add(new KeyMapping(0x5c, ConsoleKeyEx.RWin));
#endregion
}
}
}