Electron keyboard layout ======================== +-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+ | | ! | " | # | $ | % | & | ' | ( | ) | @ | = | ^ ~ | | \ | | | ESC | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | LEFT|RIGHT|BREAK| +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+ |CAPS | Q | W | E | R | T | Y | U | I | O | P | £ { | _ } | [ ] | o | FUNC| q | w | e | r | t | y | u | i | o | p | UP | DOWN| COPY| ++----++----++----++----++----++----++----++----++----++----++----++----++----+---+-+ | | A | S | D | F | G | H | J | K | L | + | * | | | CTRL| a | s | d | f | g | h | j | k | l | ; | : | RETURN | +-----+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+-----+--+--+ | | Z | X | C | V | B | N | M | < | > | ? | | | | SHIFT | z | x | c | v | b | n | m | , | . | / | SHIFT | DEL | +--------+-----+--+--+-----+-----+-----+-----+-----+-----+-----+--+--+--------+-----+ | | | | +-----------------------------------------------+ Electron keyboard keycodes ========================== +-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+ FUNC | &1B | &81 | &82 | &83 | &84 | &85 | &86 | &87 | &88 | &89 | &80 | &AD | &8C | &8D | | CTRL | &1B | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | &00 | &1D | ~ | \ | | SHIFT | &1B | ! | " | # | $ | % | & | ' | ( | ) | @ | = | ^ | | |BREAK| | &1B | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | &8C | &8D | | | ESC | | | | | | | | | | | | LEFT|RIGHT| | +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+ FUNC | | &A0 | &A6 | &94 | &A1 | &A3 | &A8 | &A4 | &98 | &9E | &9F | &8F | &8E | &8B | CTRL | | &11 | &17 | &05 | &12 | &14 | &19 | &15 | &09 | &0F | &10 | { | } | ] | SHIFT |CAPS | Q | W | E | R | T | Y | U | I | O | P | £ | _ | [ | o | FUNC| q | w | e | r | t | y | u | i | o | p | &8F | &8E | &8B | | | | | | | | | | | | | UP | DOWN| COPY| ++----++----++----++----++----++----++----++----++----++----++----++----++----+---+-+ FUNC | | &90 | &A2 | &93 | &95 | &96 | &97 | &99 | &9A | &9B | &AB | &AA | &0D | CTRL | | &01 | &13 | &04 | &06 | &07 | &08 | &0A | &0B | &0C | &3B | &3A | &0D | SHIFT | CTRL| A | S | D | F | G | H | J | K | L | + | * | &0D | | | a | s | d | f | g | h | j | k | l | ; | : | &0D | | | | | | | | | | | | | | RETURN | +-----+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+-----+--+--+ FUNC | | &A9 | &A7 | &92 | &A5 | &91 | &9D | &9C | &AC | &AE | &AF | | &7F | CTRL | | &1A | &18 | &03 | &16 | &02 | &0E | &0D | &1C | &1E | &1F | | &7F | SHIFT | SHIFT | Z | X | C | V | B | N | M | < | > | ? | SHIFT | &7F | | | z | x | c | v | b | n | m | , | . | / | | &7F | | | | | | | | | | | | | | DEL | +--------+-----+--+--+-----+-----+-----+-----+-----+-----+-----+--+--+--------+-----+ | &20 | | SPACE | +-----------------------------------------------+ Electron Keymapping =================== Electron Keymapping =================== +==+====+====+====+====+====+====+====+====+====+====+=====+=====+=====+=====+=====+=====+ | | x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | +==+====+====+====+====+====+====+====+====+====+====+=====+=====+=====+=====+=====+=====+ |0x| c0 | cA | cB | cC | cD | cE | cF | cG | cH | cI | cJ | cK | cL | cM | cN | cO | | | | | | | | | | | | | | | |Retrn| | | +--+----+----+----+----+----+----+----+----+----+----+-----+-----+-----+-----+-----+-----+ |1x| cP | cQ | cR | cS | cT | cU | cV | cW | cX | cY | cZ | Esc | c, | c- | c. | c/ | +--+----+----+----+----+----+----+----+----+----+----+-----+-----+-----+-----+-----+-----+ +--+----+----+----+----+----+----+----+----+----+----+-----+-----+-----+-----+-----+-----+ |7x| | | | | | | | | | | | | | | | Del | +--+----+----+----+----+----+----+----+----+----+----+-----+-----+-----+-----+-----+-----+ |8x| f0 | f1 | f2 | f3 | f4 | f5 | f6 | f7 | f8 | f9 | | Copy| <- | -> | Dn | Up | +--+----+----+----+----+----+----+----+----+----+----+-----+-----+-----+-----+-----+-----+ |9x| fA | fB | fC | fD | fE | fF | fG | fH | fI | fJ | fK | fL | fM | fN | fO | fP | +--+----+----+----+----+----+----+----+----+----+----+-----+-----+-----+-----+-----+-----+ |Ax| fQ | fR | fS | fT | fU | fV | fW | fX | fY | fZ | f: | f; | f, | f- | f. | f/ | +--+----+----+----+----+----+----+----+----+----+----+-----+-----+-----+-----+-----+-----+ |Bx| | | | | | | | | | | | | | | | Del | +--+----+----+----+----+----+----+----+----+----+----+-----+-----+-----+-----+-----+-----+ |Cx| | | | | | | | | | |Break| | | | | | +--+----+----+----+----+----+----+----+----+----+----+-----+-----+-----+-----+-----+-----+ Top-bit-set keypresses are translated with *FX221-*FX228. Setting characters &9x and &Ax to &01 programs them to be language firm keys rather than *KEY soft keys. There is no TAB key on the Electron keyboard. After-market additions generate Ctrl-H. Because of the restricted Electron keyboard there is no such thing as modified function or editing keys. For instance, SHIFT+cursors gives £ _ ^ | and not Shift+fkey. Modified Electron cursor keys can be translated to standard keycodes with the following code: To generate editing key characters &87-&8B: * in program startup use: *FX4,1 * when reading keypresses use: K%=GET IF INKEY-256=1:A%=INSTR("[^|_`]~\}{",CHR$K%)-1:IF A%>-1:K%=&87+A%MOD5 For standard keycodes: * in program startup use: *FX4,2 *FX225,128 * when reading keypresses use: K%=GET IF INKEY-256=1:A%=INSTR("[^|_£]~\}{",CHR$K%)-1:IF A%>-1:K%=(A%DIV5)*16+&9B+(A%MOD5)