Home | History | Annotate | Line # | Download | only in dev
      1  1.7  tsutsui /*	$NetBSD: zkbdmap.h,v 1.7 2012/05/07 18:36:16 tsutsui Exp $	*/
      2  1.1     ober /* $OpenBSD: zaurus_kbdmap.h,v 1.19 2005/05/10 08:26:12 espie Exp $ */
      3  1.1     ober 
      4  1.1     ober /*
      5  1.1     ober  * Copyright (c) 2005 Dale Rahn <drahn (at) openbsd.org>
      6  1.1     ober  *
      7  1.1     ober  * Permission to use, copy, modify, and distribute this software for any
      8  1.1     ober  * purpose with or without fee is hereby granted, provided that the above
      9  1.1     ober  * copyright notice and this permission notice appear in all copies.
     10  1.1     ober  *
     11  1.1     ober  * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
     12  1.1     ober  * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
     13  1.1     ober  * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
     14  1.1     ober  * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
     15  1.1     ober  * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
     16  1.1     ober  * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
     17  1.1     ober  * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
     18  1.1     ober  */
     19  1.1     ober 
     20  1.1     ober #define KC(n) KS_KEYCODE(n)
     21  1.1     ober 
     22  1.1     ober static const keysym_t zkbd_keydesc_us[] = {
     23  1.1     ober     KC(0),	KS_Control_L,
     24  1.1     ober     KC(2),	KS_Tab,		KS_Tab,		KS_Caps_Lock,
     25  1.1     ober     KC(3),	KS_Cmd_Screen1,	KS_f2,				/* Addr, */
     26  1.1     ober     KC(4),	KS_Cmd_Screen0,	KS_f1,				/* Cal, */
     27  1.1     ober     KC(5),	KS_Cmd_Screen2,	KS_f3,				/* Mail, */
     28  1.1     ober     KC(6),	KS_Cmd_Screen3,	KS_f4,				/* Home, */
     29  1.1     ober     KC(8),	KS_1,		KS_exclam,
     30  1.1     ober     KC(9),	KS_2,		KS_quotedbl,
     31  1.1     ober     KC(10),	KS_q,
     32  1.1     ober     KC(11),	KS_w,		KS_W,		KS_asciicircum,
     33  1.1     ober     KC(12),	KS_a,
     34  1.1     ober     KC(13),	KS_z,
     35  1.1     ober     KC(14),	KS_Cmd,		KS_Alt_L,
     36  1.1     ober     KC(16),	KS_Cmd_BrightnessDown,	KS_3,	KS_numbersign,
     37  1.5   nonaka     KC(17),	KS_Cmd_BrightnessUp,	KS_4,	KS_dollar,
     38  1.1     ober     KC(18),	KS_e,		KS_E,		KS_equal,
     39  1.1     ober     KC(19),	KS_s,
     40  1.1     ober     KC(20),	KS_d,		KS_D,		KS_grave,
     41  1.1     ober     KC(21),	KS_x,
     42  1.1     ober     /* KC(22),	^/t (right japanese) */
     43  1.1     ober     KC(24),	KS_5,		KS_percent,
     44  1.1     ober     KC(25),	KS_r,		KS_R,		KS_plus,
     45  1.1     ober     KC(26),	KS_t,		KS_T,		KS_bracketleft,
     46  1.1     ober     KC(27),	KS_f,		KS_F,		KS_backslash,
     47  1.1     ober     KC(28),	KS_c,
     48  1.1     ober     KC(29),	KS_minus,	KS_minus,	KS_at,
     49  1.5   nonaka     KC(30),	KS_Cmd_Debugger,KS_Escape,			/* Cancel, */
     50  1.1     ober     KC(32),	KS_6,		KS_ampersand,
     51  1.1     ober     KC(33),	KS_y,		KS_Y,		KS_bracketright,
     52  1.1     ober     KC(34),	KS_g,		KS_G,		KS_semicolon,
     53  1.1     ober     KC(35),	KS_v,
     54  1.1     ober     KC(36),	KS_b,		KS_B,		KS_underscore,
     55  1.1     ober     KC(37),	KS_space,
     56  1.5   nonaka     KC(38),	KS_KP_Enter,					/* OK, */
     57  1.1     ober     KC(40),	KS_7,		KS_apostrophe,
     58  1.1     ober     KC(41),	KS_8,		KS_parenleft,
     59  1.5   nonaka     KC(42),	KS_u,		KS_U,		KS_braceleft,
     60  1.1     ober     KC(43),	KS_h,		KS_H,		KS_colon,
     61  1.1     ober     KC(44),	KS_n,
     62  1.1     ober     KC(45),	KS_comma,	KS_slash,	KS_less,
     63  1.1     ober     KC(46),	KS_Cmd_Screen4,	KS_f5,				/* Menu, */
     64  1.1     ober     KC(48),	KS_9,		KS_parenright,
     65  1.1     ober     KC(49),	KS_i,		KS_I,		KS_braceright,
     66  1.1     ober     KC(50),	KS_j,		KS_J,		KS_asterisk,
     67  1.1     ober     KC(51),	KS_m,
     68  1.1     ober     KC(52),	KS_period,	KS_question,	KS_greater,
     69  1.5   nonaka     KC(54),	KS_KP_Left,	KS_KP_Left,	KS_Home,	/* left, */
     70  1.1     ober     KC(56),	KS_0,		KS_asciitilde,
     71  1.1     ober     KC(57),	KS_o,
     72  1.1     ober     KC(58),	KS_k,
     73  1.1     ober     KC(59),	KS_l,		KS_L,		KS_bar,
     74  1.5   nonaka     KC(61),	KS_KP_Up,	KS_KP_Up,	KS_Prior,	/* up, */
     75  1.5   nonaka     KC(62),	KS_KP_Down,	KS_KP_Down,	KS_Next,	/* down, */
     76  1.1     ober     KC(64),	KS_Delete,	KS_BackSpace,
     77  1.1     ober     KC(65),	KS_p,
     78  1.1     ober     KC(68),	KS_Return,
     79  1.5   nonaka     KC(70),	KS_KP_Right,	KS_KP_Right,	KS_End,		/* right, */
     80  1.5   nonaka     KC(80),	KS_KP_Right,					/* OK, (ext) */
     81  1.5   nonaka     KC(81),	KS_KP_Down,					/* tog left, */
     82  1.1     ober     KC(83),	KS_Shift_R,
     83  1.1     ober     KC(84),	KS_Shift_L,
     84  1.5   nonaka     KC(88),	KS_KP_Left,					/*Cancel (ext)*/
     85  1.5   nonaka     KC(89),	KS_KP_Up,					/* tog right, */
     86  1.5   nonaka     KC(93),	KS_Mode_switch					/* Fn */
     87  1.1     ober };
     88  1.1     ober 
     89  1.6  tsutsui static const keysym_t zkbd_keydesc_us_c860[] = {
     90  1.6  tsutsui     KC(2),	KS_Tab,		KS_Tab,		KS_Caps_Lock,
     91  1.6  tsutsui     KC(3),	KS_Cmd_Screen0,	KS_f1,				/* Cal, */
     92  1.6  tsutsui     KC(4),	KS_Cmd_Screen1,	KS_f2,				/* Addr, */
     93  1.6  tsutsui     KC(5),	KS_Cmd_Screen2,	KS_f3,				/* Mail, */
     94  1.6  tsutsui     KC(6),	KS_Cmd_Screen3,	KS_f4,				/* Home, */
     95  1.6  tsutsui     KC(7),      KS_Power,                                       /* XXX */
     96  1.6  tsutsui     KC(8),	KS_1,		KS_exclam,
     97  1.6  tsutsui     KC(9),	KS_2,		KS_quotedbl,
     98  1.6  tsutsui     KC(10),	KS_q,
     99  1.6  tsutsui     KC(11),	KS_w,		KS_W,		KS_asciicircum,
    100  1.6  tsutsui     KC(12),	KS_a,
    101  1.6  tsutsui     KC(13),	KS_z,
    102  1.6  tsutsui     KC(14),	KS_Cmd,		KS_Alt_L,
    103  1.6  tsutsui     KC(15),	KS_KP_Right,					/* OK, (ext) */
    104  1.6  tsutsui     KC(16),	KS_Cmd_BrightnessDown,	KS_3,	KS_numbersign,
    105  1.6  tsutsui     KC(17),	KS_Cmd_BrightnessUp,	KS_4,	KS_dollar,
    106  1.6  tsutsui     KC(18),	KS_e,		KS_E,		KS_equal,
    107  1.6  tsutsui     KC(19),	KS_s,
    108  1.6  tsutsui     KC(20),	KS_d,		KS_D,		KS_grave,
    109  1.6  tsutsui     KC(21),	KS_x,
    110  1.6  tsutsui     KC(22),	KS_Control_L,
    111  1.6  tsutsui     KC(23),	KS_KP_Left,					/*Cancel (ext)*/
    112  1.6  tsutsui     KC(24),	KS_5,		KS_percent,
    113  1.6  tsutsui     KC(25),	KS_r,		KS_R,		KS_plus,
    114  1.6  tsutsui     KC(26),	KS_t,		KS_T,		KS_bracketleft,
    115  1.6  tsutsui     KC(27),	KS_f,		KS_F,		KS_backslash,
    116  1.6  tsutsui     KC(28),	KS_c,
    117  1.6  tsutsui     KC(29),	KS_minus,	KS_minus,	KS_at,
    118  1.6  tsutsui     KC(30),	KS_Cmd_Debugger,KS_Escape,			/* Cancel, */
    119  1.6  tsutsui     KC(31),	KS_KP_Down,					/* tog left, */
    120  1.6  tsutsui     KC(32),	KS_6,		KS_ampersand,
    121  1.6  tsutsui     KC(33),	KS_y,		KS_Y,		KS_bracketright,
    122  1.6  tsutsui     KC(34),	KS_g,		KS_G,		KS_semicolon,
    123  1.6  tsutsui     KC(35),	KS_v,
    124  1.6  tsutsui     KC(36),	KS_b,		KS_B,		KS_underscore,
    125  1.6  tsutsui     KC(37),	KS_space,
    126  1.6  tsutsui     KC(38),	KS_KP_Enter,					/* OK, */
    127  1.6  tsutsui     KC(39),	KS_KP_Up,					/* tog right, */
    128  1.6  tsutsui     KC(40),	KS_7,		KS_apostrophe,
    129  1.6  tsutsui     KC(41),	KS_8,		KS_parenleft,
    130  1.6  tsutsui     KC(42),	KS_u,		KS_U,		KS_braceleft,
    131  1.6  tsutsui     KC(43),	KS_h,		KS_H,		KS_colon,
    132  1.6  tsutsui     KC(44),	KS_n,
    133  1.6  tsutsui     KC(45),	KS_comma,	KS_slash,	KS_less,
    134  1.6  tsutsui     KC(46),	KS_Cmd_Screen4,	KS_f5,				/* Menu, */
    135  1.6  tsutsui     KC(48),	KS_9,		KS_parenright,
    136  1.6  tsutsui     KC(49),	KS_i,		KS_I,		KS_braceright,
    137  1.6  tsutsui     KC(50),	KS_j,		KS_J,		KS_asterisk,
    138  1.6  tsutsui     KC(51),	KS_m,
    139  1.6  tsutsui     KC(52),	KS_period,	KS_question,	KS_greater,
    140  1.6  tsutsui     KC(54),	KS_KP_Left,	KS_KP_Left,	KS_Home,	/* left, */
    141  1.6  tsutsui     KC(56),	KS_0,		KS_asciitilde,
    142  1.6  tsutsui     KC(57),	KS_o,
    143  1.6  tsutsui     KC(58),	KS_k,
    144  1.6  tsutsui     KC(59),	KS_l,		KS_L,		KS_bar,
    145  1.6  tsutsui     KC(61),	KS_KP_Up,	KS_KP_Up,	KS_Prior,	/* up, */
    146  1.6  tsutsui     KC(62),	KS_KP_Down,	KS_KP_Down,	KS_Next,	/* down, */
    147  1.6  tsutsui     KC(64),	KS_Delete,	KS_BackSpace,
    148  1.6  tsutsui     KC(65),	KS_p,
    149  1.6  tsutsui     KC(68),	KS_Return,
    150  1.6  tsutsui     KC(70),	KS_KP_Right,	KS_KP_Right,	KS_End,		/* right, */
    151  1.6  tsutsui     KC(75),	KS_Shift_R,
    152  1.6  tsutsui     KC(84),	KS_Shift_L,
    153  1.6  tsutsui     KC(93),	KS_Mode_switch					/* Fn */
    154  1.6  tsutsui };
    155  1.6  tsutsui 
    156  1.1     ober #ifdef WSDISPLAY_COMPAT_RAWKBD
    157  1.1     ober static const char xt_keymap[] = {
    158  1.1     ober     /* KC(0), */	0x1d, /* KS_Control_L, */
    159  1.1     ober     /* KC(1), */	0x00, /* NC */
    160  1.1     ober     /* KC(2), */	0x0f, /* KS_Tab,	KS_Tab,		KS_Caps_Lock, */
    161  1.1     ober     /* KC(3), */	0x3c, /* KS_Cmd_Screen1,	KS_f2,		Addr, */
    162  1.1     ober     /* KC(4), */	0x3b, /* KS_Cmd_Screen0,	KS_f1,		Cal, */
    163  1.1     ober     /* KC(5), */	0x3d, /* KS_Cmd_Screen2,	KS_f3,		Mail, */
    164  1.1     ober     /* KC(6), */	0x3e, /* KS_Cmd_Screen3,	KS_f4,		Home, */
    165  1.1     ober     /* KC(7), */	0x00, /* NC */
    166  1.3   nonaka     /* KC(8), */	0x02, /* KS_1,	KS_exclam, */
    167  1.3   nonaka     /* KC(9), */	0x03, /* KS_2,	KS_quotedbl, */
    168  1.3   nonaka     /* KC(10), */	0x10, /* KS_q, */
    169  1.3   nonaka     /* KC(11), */	0x11, /* KS_w,	KS_W,	KS_asciicircum, */
    170  1.3   nonaka     /* KC(12), */	0x1e, /* KS_a, */
    171  1.3   nonaka     /* KC(13), */	0x2c, /* KS_z, */
    172  1.3   nonaka     /* KC(14), */	0x38, /* KS_Cmd,	KS_Alt_L, */
    173  1.1     ober     /* KC(15), */	0x00, /* NC */
    174  1.3   nonaka     /* KC(16), */	0x04, /* KS_3,	KS_numbersign, */
    175  1.3   nonaka     /* KC(17), */	0x05, /* KS_4,	KS_dollar, */
    176  1.3   nonaka     /* KC(18), */	0x12, /* KS_e,	KS_E,	KS_equal, */
    177  1.3   nonaka     /* KC(19), */	0x1f, /* KS_s, */
    178  1.3   nonaka     /* KC(20), */	0x20, /* KS_d,	KS_D,	KS_grave, */
    179  1.3   nonaka     /* KC(21), */	0x2d, /* KS_x, */
    180  1.1     ober     /* KC(22), */	0x00, /* ^/t (right japanese) */
    181  1.1     ober     /* KC(23), */	0x00, /* NC */
    182  1.3   nonaka     /* KC(24), */	0x06, /* KS_5,	KS_percent, */
    183  1.3   nonaka     /* KC(25), */	0x13, /* KS_r,	KS_R,	KS_plus, */
    184  1.3   nonaka     /* KC(26), */	0x14, /* KS_t,	KS_T,	KS_bracketleft, */
    185  1.3   nonaka     /* KC(27), */	0x21, /* KS_f,	KS_F,	KS_backslash, */
    186  1.3   nonaka     /* KC(28), */	0x2e, /* KS_c, */
    187  1.3   nonaka     /* KC(29), */	0x0c, /* KS_minus, KS_minus,	KS_at, */
    188  1.3   nonaka     /* KC(30), */	0x01, /* KS_Escape, Cancel */
    189  1.1     ober     /* KC(31), */	0x00, /* NC */
    190  1.3   nonaka     /* KC(32), */	0x07, /* KS_6,	KS_ampersand, */
    191  1.3   nonaka     /* KC(33), */	0x15, /* KS_y,	KS_Y,	KS_bracketright, */
    192  1.3   nonaka     /* KC(34), */	0x22, /* KS_g,	KS_G,	KS_semicolon, */
    193  1.3   nonaka     /* KC(35), */	0x2f, /* KS_v, */
    194  1.3   nonaka     /* KC(36), */	0x30, /* KS_b,	KS_B,	KS_underscore, */
    195  1.3   nonaka     /* KC(37), */	0x39, /* KS_space, */
    196  1.3   nonaka     /* KC(38), */	0x9c, /* KS_KP_Enter,	ok */
    197  1.1     ober     /* KC(39), */	0x00, /* NC */
    198  1.3   nonaka     /* KC(40), */	0x08, /* KS_7,	KS_apostrophe, */
    199  1.3   nonaka     /* KC(41), */	0x09, /* KS_8,	KS_parenleft, */
    200  1.3   nonaka     /* KC(42), */	0x16, /* KS_u,	KS_U,	KS_braceleft, */
    201  1.3   nonaka     /* KC(43), */	0x23, /* KS_h,	KS_H,	KS_colon, */
    202  1.3   nonaka     /* KC(44), */	0x31, /* KS_n, */
    203  1.3   nonaka     /* KC(45), */	0x33, /* KS_comma, KS_slash,	KS_less, */
    204  1.3   nonaka     /* KC(46), */	0x3f, /* KS_Cmd_Screen4,	KS_f5,	Menu, */
    205  1.1     ober     /* KC(47), */	0x00, /* NC */
    206  1.3   nonaka     /* KC(48), */	0x0a, /* KS_9,	KS_parenright, */
    207  1.3   nonaka     /* KC(49), */	0x17, /* KS_i,	KS_I,	KS_braceright, */
    208  1.3   nonaka     /* KC(50), */	0x24, /* KS_j,	KS_J,	KS_asterisk, */
    209  1.3   nonaka     /* KC(51), */	0x32, /* KS_m, */
    210  1.3   nonaka     /* KC(52), */	0x34, /* KS_period, KS_question, KS_greater, */
    211  1.1     ober     /* KC(53), */	0x00, /* NC */
    212  1.3   nonaka     /* KC(54), */	0xcb, /* KS_KP_Left, left, */
    213  1.1     ober     /* KC(55), */	0x00, /* NC */
    214  1.3   nonaka     /* KC(56), */	0x0b, /* KS_0,	KS_asciitilde, */
    215  1.3   nonaka     /* KC(57), */	0x18, /* KS_o, */
    216  1.3   nonaka     /* KC(58), */	0x25, /* KS_k, */
    217  1.3   nonaka     /* KC(59), */	0x26, /* KS_l,	KS_L,	KS_bar, */
    218  1.1     ober     /* KC(60), */	0x00, /* NC */
    219  1.3   nonaka     /* KC(61), */	0xc8, /* KS_KP_Up, up, */
    220  1.3   nonaka     /* KC(62), */	0xd0, /* KS_KP_Down, down, */
    221  1.1     ober     /* KC(63), */	0x00, /* NC */
    222  1.3   nonaka     /* KC(64), */	0x0e, /* KS_Delete,	KS_BackSpace, */
    223  1.3   nonaka     /* KC(65), */	0x19, /* KS_p, */
    224  1.1     ober     /* KC(66), */	0x00, /* NC */
    225  1.1     ober     /* KC(67), */	0x00, /* NC */
    226  1.3   nonaka     /* KC(68), */	0x1c, /* KS_Return, */
    227  1.1     ober     /* KC(69), */	0x00, /* NC */
    228  1.3   nonaka     /* KC(70), */	0xcd, /* KS_KP_Right, right, */
    229  1.1     ober     /* KC(71), */	0x00, /* NC */
    230  1.1     ober     /* KC(72), */	0x00, /* NC */
    231  1.1     ober     /* KC(73), */	0x00, /* NC */
    232  1.1     ober     /* KC(74), */	0x00, /* NC */
    233  1.1     ober     /* KC(75), */	0x00, /* NC */
    234  1.1     ober     /* KC(76), */	0x00, /* NC */
    235  1.1     ober     /* KC(77), */	0x00, /* NC */
    236  1.1     ober     /* KC(78), */	0x00, /* NC */
    237  1.1     ober     /* KC(79), */	0x00, /* NC */
    238  1.3   nonaka     /* KC(80), */	0xcd, /* KS_KP_Right, OK, (ext) */
    239  1.3   nonaka     /* KC(81), */	0xd0, /* KS_KP_Down, tog left, */
    240  1.1     ober     /* KC(82), */	0x00, /* NC */
    241  1.3   nonaka     /* KC(83), */	0x36, /* KS_Shift_R, */
    242  1.3   nonaka     /* KC(84), */	0x2a, /* KS_Shift_L, */
    243  1.1     ober     /* KC(85), */	0x00, /* NC */
    244  1.1     ober     /* KC(86), */	0x00, /* NC */
    245  1.1     ober     /* KC(87), */	0x00, /* NC */
    246  1.3   nonaka     /* KC(88), */	0xcb, /* KS_KP_Left, cancel (ext), */
    247  1.3   nonaka     /* KC(89), */	0xc8, /* KS_KP_Up, tog right, */
    248  1.1     ober     /* KC(90), */	0x00, /* NC */
    249  1.1     ober     /* KC(91), */	0x00, /* NC */
    250  1.1     ober     /* KC(92), */	0x00, /* NC */
    251  1.3   nonaka     /* KC(93), */	0xb8, /* KS_Mode_switch Fn */
    252  1.1     ober };
    253  1.6  tsutsui 
    254  1.6  tsutsui static const char xt_keymap_c860[] = {
    255  1.6  tsutsui     /* KC(0), */	0x00, /* NC */
    256  1.6  tsutsui     /* KC(1), */	0x00, /* NC */
    257  1.6  tsutsui     /* KC(2), */	0x0f, /* KS_Tab,	KS_Tab,		KS_Caps_Lock, */
    258  1.6  tsutsui     /* KC(3), */	0x3b, /* KS_Cmd_Screen0,	KS_f1,		Cal, */
    259  1.6  tsutsui     /* KC(4), */	0x3c, /* KS_Cmd_Screen1,	KS_f2,		Addr, */
    260  1.6  tsutsui     /* KC(5), */	0x3d, /* KS_Cmd_Screen2,	KS_f3,		Mail, */
    261  1.6  tsutsui     /* KC(6), */	0x3e, /* KS_Cmd_Screen3,	KS_f4,		Home, */
    262  1.6  tsutsui     /* KC(7), */	0x00, /* XXX */
    263  1.6  tsutsui     /* KC(8), */	0x02, /* KS_1,	KS_exclam, */
    264  1.6  tsutsui     /* KC(9), */	0x03, /* KS_2,	KS_quotedbl, */
    265  1.6  tsutsui     /* KC(10), */	0x10, /* KS_q, */
    266  1.6  tsutsui     /* KC(11), */	0x11, /* KS_w,	KS_W,	KS_asciicircum, */
    267  1.6  tsutsui     /* KC(12), */	0x1e, /* KS_a, */
    268  1.6  tsutsui     /* KC(13), */	0x2c, /* KS_z, */
    269  1.6  tsutsui     /* KC(14), */	0x38, /* KS_Cmd,	KS_Alt_L, */
    270  1.6  tsutsui     /* KC(15), */	0xcd, /* KS_KP_Right, OK, (ext) */
    271  1.6  tsutsui     /* KC(16), */	0x04, /* KS_3,	KS_numbersign, */
    272  1.6  tsutsui     /* KC(17), */	0x05, /* KS_4,	KS_dollar, */
    273  1.6  tsutsui     /* KC(18), */	0x12, /* KS_e,	KS_E,	KS_equal, */
    274  1.6  tsutsui     /* KC(19), */	0x1f, /* KS_s, */
    275  1.6  tsutsui     /* KC(20), */	0x20, /* KS_d,	KS_D,	KS_grave, */
    276  1.6  tsutsui     /* KC(21), */	0x2d, /* KS_x, */
    277  1.6  tsutsui     /* KC(22), */	0x1d, /* KS_Control_L, */
    278  1.6  tsutsui     /* KC(23), */	0xcb, /* KS_KP_Left, cancel (ext), */
    279  1.6  tsutsui     /* KC(24), */	0x06, /* KS_5,	KS_percent, */
    280  1.6  tsutsui     /* KC(25), */	0x13, /* KS_r,	KS_R,	KS_plus, */
    281  1.6  tsutsui     /* KC(26), */	0x14, /* KS_t,	KS_T,	KS_bracketleft, */
    282  1.6  tsutsui     /* KC(27), */	0x21, /* KS_f,	KS_F,	KS_backslash, */
    283  1.6  tsutsui     /* KC(28), */	0x2e, /* KS_c, */
    284  1.6  tsutsui     /* KC(29), */	0x0c, /* KS_minus, KS_minus,	KS_at, */
    285  1.6  tsutsui     /* KC(30), */	0x01, /* KS_Escape, Cancel */
    286  1.6  tsutsui     /* KC(31), */	0xd0, /* KS_KP_Down, tog left, */
    287  1.6  tsutsui     /* KC(32), */	0x07, /* KS_6,	KS_ampersand, */
    288  1.6  tsutsui     /* KC(33), */	0x15, /* KS_y,	KS_Y,	KS_bracketright, */
    289  1.6  tsutsui     /* KC(34), */	0x22, /* KS_g,	KS_G,	KS_semicolon, */
    290  1.6  tsutsui     /* KC(35), */	0x2f, /* KS_v, */
    291  1.6  tsutsui     /* KC(36), */	0x30, /* KS_b,	KS_B,	KS_underscore, */
    292  1.6  tsutsui     /* KC(37), */	0x39, /* KS_space, */
    293  1.6  tsutsui     /* KC(38), */	0x9c, /* KS_KP_Enter,	ok */
    294  1.6  tsutsui     /* KC(39), */	0xc8, /* KS_KP_Up, tog right, */
    295  1.6  tsutsui     /* KC(40), */	0x08, /* KS_7,	KS_apostrophe, */
    296  1.6  tsutsui     /* KC(41), */	0x09, /* KS_8,	KS_parenleft, */
    297  1.6  tsutsui     /* KC(42), */	0x16, /* KS_u,	KS_U,	KS_braceleft, */
    298  1.6  tsutsui     /* KC(43), */	0x23, /* KS_h,	KS_H,	KS_colon, */
    299  1.6  tsutsui     /* KC(44), */	0x31, /* KS_n, */
    300  1.6  tsutsui     /* KC(45), */	0x33, /* KS_comma, KS_slash,	KS_less, */
    301  1.6  tsutsui     /* KC(46), */	0x3f, /* KS_Cmd_Screen4,	KS_f5,	Menu, */
    302  1.6  tsutsui     /* KC(47), */	0x00, /* NC */
    303  1.6  tsutsui     /* KC(48), */	0x0a, /* KS_9,	KS_parenright, */
    304  1.6  tsutsui     /* KC(49), */	0x17, /* KS_i,	KS_I,	KS_braceright, */
    305  1.6  tsutsui     /* KC(50), */	0x24, /* KS_j,	KS_J,	KS_asterisk, */
    306  1.6  tsutsui     /* KC(51), */	0x32, /* KS_m, */
    307  1.6  tsutsui     /* KC(52), */	0x34, /* KS_period, KS_question, KS_greater, */
    308  1.6  tsutsui     /* KC(53), */	0x00, /* NC */
    309  1.6  tsutsui     /* KC(54), */	0xcb, /* KS_KP_Left, left, */
    310  1.6  tsutsui     /* KC(55), */	0x00, /* NC */
    311  1.6  tsutsui     /* KC(56), */	0x0b, /* KS_0,	KS_asciitilde, */
    312  1.6  tsutsui     /* KC(57), */	0x18, /* KS_o, */
    313  1.6  tsutsui     /* KC(58), */	0x25, /* KS_k, */
    314  1.6  tsutsui     /* KC(59), */	0x26, /* KS_l,	KS_L,	KS_bar, */
    315  1.6  tsutsui     /* KC(60), */	0x00, /* NC */
    316  1.6  tsutsui     /* KC(61), */	0xc8, /* KS_KP_Up, up, */
    317  1.6  tsutsui     /* KC(62), */	0xd0, /* KS_KP_Down, down, */
    318  1.6  tsutsui     /* KC(63), */	0x00, /* NC */
    319  1.6  tsutsui     /* KC(64), */	0x0e, /* KS_Delete,	KS_BackSpace, */
    320  1.6  tsutsui     /* KC(65), */	0x19, /* KS_p, */
    321  1.6  tsutsui     /* KC(66), */	0x00, /* NC */
    322  1.6  tsutsui     /* KC(67), */	0x00, /* NC */
    323  1.6  tsutsui     /* KC(68), */	0x1c, /* KS_Return, */
    324  1.6  tsutsui     /* KC(69), */	0x00, /* NC */
    325  1.6  tsutsui     /* KC(70), */	0xcd, /* KS_KP_Right, right, */
    326  1.6  tsutsui     /* KC(71), */	0x00, /* NC */
    327  1.6  tsutsui     /* KC(72), */	0x00, /* NC */
    328  1.6  tsutsui     /* KC(73), */	0x00, /* NC */
    329  1.6  tsutsui     /* KC(74), */	0x00, /* NC */
    330  1.7  tsutsui     /* KC(75), */	0x36, /* KS_Shift_R, */
    331  1.6  tsutsui     /* KC(76), */	0x00, /* NC */
    332  1.6  tsutsui     /* KC(77), */	0x00, /* NC */
    333  1.6  tsutsui     /* KC(78), */	0x00, /* NC */
    334  1.6  tsutsui     /* KC(79), */	0x00, /* NC */
    335  1.6  tsutsui     /* KC(80), */	0x00, /* NC */
    336  1.6  tsutsui     /* KC(81), */	0x00, /* NC */
    337  1.6  tsutsui     /* KC(82), */	0x00, /* NC */
    338  1.7  tsutsui     /* KC(83), */	0x00, /* NC */
    339  1.6  tsutsui     /* KC(84), */	0x2a, /* KS_Shift_L, */
    340  1.6  tsutsui     /* KC(85), */	0x00, /* NC */
    341  1.6  tsutsui     /* KC(86), */	0x00, /* NC */
    342  1.6  tsutsui     /* KC(87), */	0x00, /* NC */
    343  1.6  tsutsui     /* KC(88), */	0x00, /* NC */
    344  1.6  tsutsui     /* KC(89), */	0x00, /* NC */
    345  1.6  tsutsui     /* KC(90), */	0x00, /* NC */
    346  1.6  tsutsui     /* KC(91), */	0x00, /* NC */
    347  1.6  tsutsui     /* KC(92), */	0x00, /* NC */
    348  1.6  tsutsui     /* KC(93), */	0xb8, /* KS_Mode_switch Fn */
    349  1.6  tsutsui };
    350  1.1     ober #endif
    351  1.1     ober 
    352  1.1     ober #define KBD_MAP(name, base, map) \
    353  1.2    peter 			{ (name), (base), __arraycount(map), (map) }
    354  1.1     ober 
    355  1.1     ober static const struct wscons_keydesc zkbd_keydesctab[] = {
    356  1.2    peter 	KBD_MAP(KB_US,			0,	zkbd_keydesc_us),
    357  1.2    peter 
    358  1.2    peter 	{0, 0, 0, 0}
    359  1.1     ober };
    360  1.1     ober 
    361  1.6  tsutsui static const struct wscons_keydesc zkbd_keydesctab_c860[] = {
    362  1.6  tsutsui 	KBD_MAP(KB_US,			0,	zkbd_keydesc_us_c860),
    363  1.6  tsutsui 
    364  1.6  tsutsui 	{0, 0, 0, 0}
    365  1.6  tsutsui };
    366  1.6  tsutsui 
    367  1.1     ober #undef KBD_MAP
    368  1.1     ober #undef KC
    369