Spectrum keyboard layout with Symbol-Shift-only Characters ========================================================== Key Characters +-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+ |EDIT |CAPS |TRUE | INV |LEFT |DOWN | UP |RIGHT|GRAPH| DEL | | ! | @ | # | $ | % | & | ' | ( | ) | _ | | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | +-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+ | Q | W | E | R | T | Y | U | I | O | P | | <= | <> | >= | < | > | [ | ] | (C) | ; | " | | q | w | e | r | t | y | u | i | o | p | +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+ | A | S | D | F | G | H | J | K | L |ENTER| | ~ | | | \ | { | } | ^ | - | + | = |ENTER| | a | s | d | f | g | h | j | k | l |ENTER| +----+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+-----+ | SHIFT | Z | X | C | V | B | N | M | EXT | BREAK | | EXT | : | £ | ? | / | * | , | . | SYM | SPACE | | SHIFT | z | x | c | v | b | n | m | SYM | SPACE | +--------+-----+-----+-----+-----+-----+-----+-----+-----+-------+ Character Codes +-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+ | &07 | &06 | &04 | &05 | &08 | &0A | &0B | &09 | &0F | &0C | | ! | @ | # | $ | % | & | ' | ( | ) | _ | | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | +-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+ | Q | W | E | R | T | Y | U | I | O | P | | &C7 | &C9 | &C8 | < | > | [ | ] | &7F | ; | " | | q | w | e | r | t | y | u | i | o | p | +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+ | A | S | D | F | G | H | J | K | L | &0D | | ~ | | | \ | { | } | ^ | - | + | = | &0D | | a | s | d | f | g | h | j | k | l | &0D | +----+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+-----+ | SHIFT | Z | X | C | V | B | N | M | &0E | BREAK | | &0E | : | £ | ? | / | * | , | . | SYM | &20 | | SHIFT | z | x | c | v | b | n | m | SYM | &20 | +--------+-----+-----+-----+-----+-----+-----+-----+-----+-------+ Notes: Top line: Shift+key Middle line: Symbol+key Bottom line: unshifted key The Symbol-Shifted keypresses can be converted to Symbol-Shifted characters with: LET k$=INKEY$ IF k$>CHR$171 THEN LET k$=(CHR$127+"|!]["+k$+k$+k$+"!}{\~")(CODEk$-193+22*(k$CHR$205)) This converts: KEY TOKEN CHR$ CHAR CHR$ | KEY TOKEN CHR$ CHAR CHR$ | KEY TOKEN CHR$ CHAR CHR$ S NOT 195 -> | 124 | Q <= 199 -> <= 199 | A STOP 226 -> ~ 126 I AT 172 -> (C) 127 | E >= 200 -> >= 200 | G THEN 203 -> } 125 U OR 197 -> ] 93 | W <> 201 -> <> 201 | F TO 204 -> { 123 Y AND 198 -> [ 91 | | D STEP 205 -> \ 92