static uint8_t keyboard[12][8] = {
{'2', '3', '6', '9', 0x81 /* paste */ ,0x91, '0', 0x93 /* F3 */},
{'1', '5', '4', '8', 0x82 /* copy */, 0x83 /* cut */, 0x84 /* PTR */, 0x85 /* EXIT */},
- {'+', 189/*half*/, 0, '7', '>', 13, ']', 127},
+ {'+', '@', 0, '7', '>', 13, ']', 127},
{'.', '?', ';', '<', 'p', '[', '-', '='},
{',', 'm', 'k', 'l', 'i', 'o', '9', '0'},
{' ', 'n', 'j', 'h', 'y', 'u', '7', '8'},
{0, 0, 0, 0, 0, 0, 0, 0} /* FIXME: js 2 */
};
-/* FIXME: shift symbols */
+/* FIXME: shift symbols need double checking */
static uint8_t shiftkeyboard[12][8] = {
{'2', '3', '6', '9', 0x81 /* paste */ ,0x91, '0', 0x93 /* F3 */},
{'1', '5', '4', '8', 0x82 /* copy */, 0x83 /* cut */, 0x84 /* PTR */, 0x85 /* EXIT */},
- {'+', 189/*half*/, 0, '7', '>', 13, ']', 127},
- {'.', '?', ';', '<', 'P', '[', '-', '='},
- {',', 'M', 'K', 'L', 'I', 'O', '9', '0'},
- {' ', 'N', 'J', 'H', 'Y', 'U', '7', '8'},
- {'V', 'B', 'F', 'G', 'T', 'R', 'S', '6'},
- {'X', 'C', 'D', 'S', 'W', 'E', '3', '4'},
- {'Z', 0, 'A', '\t', 'Q', 27, '2', '1'},
+ {'+', 189/*half*/, 0, '7', '`', 13, ']', 127},
+ {'.', '/', ':', '<', 'P', '[', '_', '+'},
+ {',', 'M', 'K', 'L', 'I', 'O', '{', '}'},
+ {' ', 'N', 'J', 'H', 'Y', 'U', '&', '*'},
+ {'V', 'B', 'F', 'G', 'T', 'R', '%', '^'/* cent */},
+ {'X', 'C', 'D', 'S', 'W', 'E', '$'/*FIXME £ */, '$'},
+ {'Z', 0, 'A', '\t', 'Q', 27, '"', '\''},
{8, 0, 0, 0, 0, 0, 0, 0}, /* FIXME: js line */
{0, '.', 13, 97, '-', 85/*cancel*/, 86/*extra*/, 0x95},
{0, 0, 0, 0, 0, 0, 0, 0} /* FIXME: js 2 */
static uint8_t capslock = 0;
+
+/* What should we do with extra, not as if you can run emacs */
+
static void keydecode(void)
{
uint8_t c;