BBC Master Keyboard Table ========================= +-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+ +-----+ +-----+ +-----+-----+-----+-----+ ctrl | &A0 | &A1 | &A2 | &A3 | &A4 | &A5 | &A6 | &A7 | &A8 | &A9 | | | | &AE | | &AB | &AD | &AF | &AA | shft | &90 | &91 | &92 | &93 | &94 | &95 | &96 | &97 | &98 | &99 | | | | &9E | | &AB | &AD | &AF | &AA | norm | &80 | &81 | &82 | &83 | &84 | &85 | &86 | &87 | &88 | &89 | |BREAK| | &8E | | &AB | &AD | &AF | &AA | +-----+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+ +-----+-----+-----+-----+ ctrl | &1B | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | &1E | &1C | &AC | &AD | | &B7 | &B8 | &B9 | &A3 | shft | &1B | ! | " | # | $ | % | & | ' | ( | ) | 0 | = | ~ | | | &9C | &9D | | &B7 | &B8 | &B9 | &A3 | norm | &1B | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | ^ | \ | &8C | &8D | | &B7 | &B8 | &B9 | &A3 | +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+ +-----+-----+-----+-----+ ctrl | | &11 | &17 | &05 | &12 | &14 | &19 | &15 | &09 | &0F | &10 | &00 | &1B | &1F | &AE | | &B4 | &B5 | &B6 | &FF | shft | | Q | W | E | R | T | Y | U | I | O | P | @ | [ | £ | &9E | | &B4 | &B5 | &B6 | &FF | norm | TAB | q | w | e | r | t | y | u | i | o | p | @ | [ | _ | &8E | | &B4 | &B5 | &B6 | &FF | ++----++----++----++----++----++----++----++----++----++----++----++----++----++----+-----++ +-----+-----+-----+-----+ ctrl | | &01 | &13 | &04 | &06 | &07 | &08 | &0A | &0B | &0C | ; | : | &1D | &0D | | &B1 | &B2 | &B3 | &AC | shft | | A | S | D | F | G | H | J | K | L | + | * | } | &0D | | &B1 | &B2 | &B3 | &AC | norm | CTRL| a | s | d | f | g | h | j | k | l | ; | : | ] | &0D | | &B1 | &B2 | &B3 | &AC | +-----+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+-----++-----+----+ +-----+-----+-----+-----+ ctrl | | &1A | &18 | &03 | &16 | &02 | &0E | &0D | , | . | / | | &7F | | &B0 | &AE | &9D | shft | | Z | X | C | V | B | N | M | < | > | ? | | &7F | | &B0 | &AE | &9D | norm | SHIFT | z | x | c | v | b | n | m | , | . | / | SHIFT | &7F | | &B0 | &AE | &9D | +--------+-----+--+--+-----+-----+-----+-----+-----+-----+-----+--+--+---------+-----+ +-----+-----+-----------+ | | | &20 | Keypad &90-&FF translated +-----------------------------------------------+ via keypad offset Low-level keyboard codes before being translated by Shift, Ctrl, Caps. +--+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+ | | x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | +--+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+ |0x|TAB | | | | | | | | | | | | |RETN| | | +--+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+ |1x| | | | | | | | | | | |ESC | | | | | +--+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+ |2x|SPC | | | | | | | | | | | | , | - | . | / | +--+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+ |3x| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | : | ; | | | | | +--+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+ |4x| | | | | | | | | | | | | | | | | +--+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+ |5x| | | | | | | | | | | | [ | \ | ] | ^ | _ | +--+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+ |6x| | a | b | c | d | e | f | g | h | i | j | k | l | m | n | o | +--+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+ |7x| p | q | r | s | t | u | v | w | x | y | z | | | | |DEL | +--+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+ |8x| f0 | f1 | f2 | f3 | f4 | f5 | f6 | f7 | f8 | f9 | |Copy| <- | -> |Down| Up | +--+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+ |9x| | | | | | | | | | | | | |KRet| | | +--+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+ |Ax| | | | K# | | | | | | | K* | K+ | K, | K- | K. | K/ | +--+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+ |Bx| K0 | K1 | K2 | K3 | K4 | K5 | K6 | K7 | K8 | K9 | | | | | | | +--+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+ |Cx| | | | | | | | | | | | | | | | | +--+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+ |Dx| | | | | | | | | | | | | | | | | +--+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+ |Ex| | | | | | | | | | | | | | | | | +--+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+ |Fx| | | | | | | | | | | | | | | |KDel| +--+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+ &00 translated to the current TAB character code &01 toggles Caps Lock status (Compact: Extend key) &02 toggles Shift Lock status &90-&9F is added to keypad offset minus &C0 (ie &9D defaults to &0D) &A0+ is added to keypad offset minus &B0 (ie &B0 defaults to '0') On the Master Compact, Ctrl-Shift-BLOCK sets bit 7 on the next keypress and inserts NULL,key in the keyboard buffer, unless cancelled by the Escape key.