⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 keymaps.c

📁 nucleus 源码包括具体的内核适合研究 nucleus
💻 C
字号:
// keymaps.c

// Mostly defines lookup tables for scancode conversions
// Currently supports german and US layouts

// v0.1: Doug Gale
//	- Initial revision. Most code transplanted from other source files.
//	- Added United States keyboard map. Unfinished.
//	- Added function and macro to conveniently change active keymap

#include <drivers/input/keyboard.h>
#include <drivers/input/keys_def.h>

// =========================================================================
// English layout
// =========================================================================

// Normal (unshifted, non-extended) keys
static unsigned char norm_map_us[] =
  {/*      1    2    3    4    5    6    7*/
     27,  49,  50,  51,  52,  53,  54,  55,
   /*  8   9    0   -    =  bks  tab    q*/
     56,  57,  48, 45,  61,   8,   9, 113,
   /*  w   e    r    t   y    u    i    o*/
    119, 101, 114, 116, 121, 117, 105, 111,
   /*  p   [   ]  Ent  Ctl    a    s    d*/
    112,  91,  93,  13, 255,  97, 115, 100,
   /*  f   g    h    j    k    l    ;    '*/
    102, 103, 104, 106, 107, 108,  59,  39,
   /* `  Shf    \    z    x    c    v    b*/
     96, 255,  92, 122, 120,  99, 118,  98,
   /*  n   m    ,    .   /  Shf    *  Alt*/
    110, 109,  44,  46,  47, 255,  42, 255,
   /*Sp  Cap   F1   F2   F3   F4   F5   F6*/ /*Funktionstasten (ab 2. #0)*/
     32, 255,   0,   0,   0,   0,   0,   0,
   /*F7   F8   F9  F10  Num  Scr    7    8*/ /*Numpad Zahlen*/
      0,   0,   0,   0, 255, 255,  55,  56,
   /*  9   -    4    5    6    +    1    2*/ /*Numpad Zahlen*/
     57,  45,  52,  53,  54,  43,  49,  50, /*80*/
   /*  3   0    .  Sys   #0    <   #0   #0*/ /*Numpad Zahlen, letzten 2 = F11-F12*/
     51,  48,  46,   0,   0,  60,   0,   0,
   /* #0  #0   #0   #0   #0   #0   #0  #13*/
      0,   0,   0,   0,   0,   0,   0,  13,
   /* #0   /   #0   #0   #0   #0   #0   #0*/
    255,  47, 255, 255,   0,   0,   0,   0,
   /* #0  #0   #0   #0   #0   #0   #0   #0*/
      0,   0,   0,   0,   0,   0,   0,   0,
   /* #0  #0   #0   #0   #0   #0   #0   #0*/
      0,   0,   0,   0,   0,   0, 255,   0, /*120; Pause = 119*/
   /* #0  #0   #0    #0  #0   #0   #0   #0*/
      0,   0,   0,   0, 255, 255, 255,   0};/*3 Windows-Tasten*/

  /*Erweiterte Tasten, F1-F10, Einfg-Bild runter, Link-Rechts*/
static unsigned char ext_map_us[] =
  {  0,   0,   0,   0,   0,   0,   0,   0,
     0,   0,   0,   0,   0,   0,   0,   0,
     0,   0,   0,   0,   0,   0,   0,   0,
     0,   0,   0,   0,   0,   0,   0,   0,
     0,   0,   0,   0,   0,   0,   0,   0, /*40*/
     0,   0,   0,   0,   0,   0,   0,   0,
     0,   0,   0,   0,   0,   0,   0,   0,
    32,   0,  59,  60,  61,  61,  63,  64,
    65,  66,  67,  68,   0,   0,   0,   0,
     0,   0,   0,   0,   0,   0,   0,   0, /*80*/
     0,   0,   0,   0,   0,   0,   0,   0,
     0,   0,   0,   0,   0,   0,   0,   0,
     0,  47,   0,   0,   0,  71,  72,  73,
    75,  77,  79,  80,  81,  82,  83,   0,
     0,   0,   0,   0,   0,   0,   0,   0, /*120*/
     0,   0,   0,   0,   0,   0,   0,   0};

  /*Tasten mit Umschalt-Taste*/
static unsigned char shift_map_us[] =
{  /*      !    @     #    $    %    ^    &*/
     27,  33,  64,   35,  36,  37,  94,  38,
   /* *    (    )    _    +   bks  tab    Q*/
     42,  40,  41,  95,  43,    8,   9,  81,
   /*  W   E    R    T    Y    U    I    O*/
     87,  69,  82,  84,  89,  85,  73,  81,
   /*  P   {    }  Ent   #0    A    S    D*/
     80, 123, 125,  13,   0,  65,  83,  68,
   /* F    G    H    J    K    L    :    "*/
     70,  71,  72,  74,  75,  76,  58,  34,
   /* 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -