From 915cac934f2d4d45cdcbed524fe3b90451b4e66c Mon Sep 17 00:00:00 2001 From: jgharston Date: Tue, 3 Jan 2023 07:33:26 +0000 Subject: [PATCH] Updated FXKBDSTATE layout. --- docs/Keyboard.txt | 419 +++++++++++++++++++++++----------------------- 1 file changed, 210 insertions(+), 209 deletions(-) diff --git a/docs/Keyboard.txt b/docs/Keyboard.txt index 99b9000..8781bde 100644 --- a/docs/Keyboard.txt +++ b/docs/Keyboard.txt @@ -1,209 +1,210 @@ - Apple II Keyboard - ================= - - <----------------------------------------------------Apple IIgs----------------------------------------------------> - <-------------------------------------Apple IIe/IIc-------------------------------------> - +-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+---------+ +-----+-----+-----+-----+ - | | ! | @ | # | $ | % | ^ | & | * | ( | ) | _ | + | | | | | | | - | ESC | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | DELETE | |CLEAR| = | / | * | - +-----+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+------+ +-----+-----+-----+-----+ - | | Q | W | E | R | T | Y | U | I | O | P | { | } | | | | | | | - | TAB | q | w | e | r | t | y | u | i | o | p | [ | ] | | | 7 | 8 | 9 | - | - +--------+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+ | +-----+-----+-----+-----+ - | | A | S | D | F | G | H | J | K | L | : | " | | | | | | | - | CONTROL | a | s | d | f | g | h | j | k | l | ; | ' | RETURN | | 4 | 5 | 6 | + | - +----------+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+----------+ +-----+-----+-----+-----+ - | | Z | X | C | V | B | N | M | < | > | ? | | | | | | E | - | SHIFT | z | x | c | v | b | n | m | , | . | / | SHIFT | | 1 | 2 | 3 | N | - +-----+-----+-+-----+--+--+--+--+-----+-----+-----+-----+-+---+-+---+-+---+-+-----+-----+ +-----+-----+-----+ T | - |CAPS |SOLID| OPEN | ~ | | | | | | | | | | | E | - |LOCK |APPLE| APPLE | ` | SPACE | \ | Lft | Rgt | Dwn | Up | | 0 | . | R | - +-----+-----+----------+-----+----------------------------+-----+-----+-----+-----+-----+ +-----------+-----+-----+ - - - Keycodes when running Applecorn MOS - ----------------------------------- - <----------------------------------------------------Apple IIgs----------------------------------------------------> - <-------------------------------------Apple IIe/IIc-------------------------------------> - +-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+---------+ +-----+-----+-----+-----+ -L+R | &1B | &A1 | &A2 | &A3 | &A4 | &A5 | &A6 | &A7 | &A8 | &A9 | &A0 | - | = | &1F | | &1B | &AC | &AF | &AA | -Rapp | &1B | &91 | &92 | &93 | &94 | &95 | &96 | &97 | &98 | &99 | &90 | - | = | &1F | | &1B | &9C | &9F | &9A | -Lapp | &1B | &81 | &82 | &83 | &84 | &85 | &86 | &87 | &88 | &89 | &80 | - | = | &1F | | &1B | &8C | &8F | &8A | -ctrl | &1B | ! | &00 | 3 | 4 | 5 | &1E | 7 | * | ( | ) | &1F | = | &7F | | &1B | &AC | &AF | &AA | -shift | &1B | ! | @ | # | $ | % | ^ | & | * | ( | ) | _ | + | &7F | | &1B | &9C | &9F | &9A | -key | &1B | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | &7F | | &1B | &8C | &8F | &8A | - +-----+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+------+ +-----+-----+-----+-----+ -L+R | &09 | &11 | &17 | &05 | &12 | &14 | &19 | &15 | &09 | &0F | &10 | &1B | &1D | | | &A7 | &A8 | &A9 | &AD | -Rapp | &09 | &11 | &17 | &05 | &12 | &14 | &19 | &15 | &09 | &0F | &10 | &1B | &1D | | | &97 | &98 | &99 | &9D | -Lapp | &09 | &11 | &17 | &05 | &12 | &14 | &19 | &15 | &09 | &0F | &10 | &1B | &1D | | | &87 | &88 | &89 | &8D | -ctrl | &E9 | &11 | &17 | &05 | &12 | &14 | &19 | &CD | &C9 | &0F | &10 | &1B | &1D | | | &A7 | &A8 | &A9 | &AD | -shift | &D9 | Q | W | E | R | T | Y | U | I | O | P | { | } | | | &97 | &98 | &99 | &9D | -key | &C9 | q | w | e | r | t | y | u | i | o | p | [ | ] | | | &87 | &88 | &89 | &8D | - +--------+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+ | +-----+-----+-----+-----+ -L+R | | &01 | &13 | &04 | &06 | &07 | &08 | &0A | &0B | &0C | ; | ' | &0D | | &A4 | &A5 | &A6 | &AB | -Rapp | | &01 | &13 | &04 | &06 | &07 | &08 | &0A | &0B | &0C | ; | ' | &0D | | &94 | &95 | &96 | &9B | -Lapp | | &01 | &13 | &04 | &06 | &07 | &08 | &0A | &0B | &0C | ; | ' | &0D | | &84 | &85 | &86 | &8B | -ctrl | | &01 | &13 | &04 | &06 | &07 | &CC | &CE | &CF | &0C | ; | ' | &0D | | &A4 | &A5 | &A6 | &AB | -shift | | A | S | D | F | G | H | J | K | L | : | " | &0D | | &94 | &95 | &96 | &9B | -key | CONTROL | a | s | d | f | g | h | j | k | l | ; | ' | &0D | | &84 | &85 | &86 | &8B | - +----------+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+----------+ +-----+-----+-----+-----+ -L+R | | &1A | &18 | &03 | &16 | &02 | &0E | &0D | , | . | / | | | &A1 | &A2 | &A3 | | -Rapp | | &1A | &18 | &03 | &16 | &02 | &0E | &0D | , | . | / | | | &91 | &92 | &93 | | -Lapp | | &1A | &18 | &03 | &16 | &02 | &0E | &0D | , | . | / | | | &81 | &82 | &83 | | -ctrl | | &1A | &18 | &03 | &16 | &02 | &0E | &0D | , | . | / | | | &A1 | &A2 | &A3 | | -shft | | Z | X | C | V | B | N | M | < | > | ? | | | &91 | &92 | &93 | | -key | SHIFT | z | x | c | v | b | n | m | , | . | / | SHIFT | | &81 | &82 | &83 | | - +-----+-----+-+-----+--+--+--+--+-----+-----+-----+-----+-+---+-+---+-+---+-+-----+-----+ +-----+-----+-----+ | -L+R | | | | &00 | &20 | &1C | &08 | &15 | &0A | &0B | | &A0 | &AE | &0D | -Rapp | | | | &00 | &20 | &1C | &08 | &15 | &0A | &0B | | &90 | &9E | &0D | -Lapp | | | | &00 | &20 | &1C | &08 | &15 | &0A | &0B | | &80 | &8E | &0D | -ctrl | | | | ` | &20 | &1C | &DC | &DD | &EE | &EF | | &A0 | &AE | &0D | -shift |CAPS |SOLID| OPEN | ~ | &20 | | | &DC | &DD | &DE | &DF | | &90 | &9E | &0D | -key |LOCK |APPLE| APPLE | ` | &20 | \ | &CC | &CD | &CE | &CF | | &80 | &8E | &0D | - +-----+-----+----------+-----+----------------------------+-----+-----+-----+-----+-----+ +-----------+-----+-----+ - With TAB set to &09 with *FX219,9 and keypad base set to &80 with *FX238,128. - - - AppleII ADB Extended Keyboard - ============================= - +-----+ +-----+-----+-----+-----+ +-----+-----+-----+-----+ +-----+-----+-----+-----+ +-----+-----+-----+ +-----+ - | | | | | | | | | | | | | | | | | | | | | === === === | | - | ESC | | f1 | f2 | f3 | f4 | | f5 | f6 | f7 | f8 | | f9 | f10 | f11 | f12 | | f13 | f14 | f15 | |POWER| - +-----+ +-----+-----+-----+-----+ +-----+-----+-----+-----+ +-----+-----+-----+-----+ +-----+-----+-----+ +-----+ - - +-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+------------+ +-----+-----+-----+ +-----+-----+-----+-----+ - | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | _ | + | | | Ins | | Pge | | | | | | - | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | DELETE | | Hlp |Home | Up | |CLEAR| = | / | * | - +-----+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+--------+ +-----+-----+-----+ +-----+-----+-----+-----+ - | | Q | W | E | R | T | Y | U | I | O | P | { | } | | | | | | Pge | | | | | | - | TAB | q | w | e | r | t | y | u | i | o | p | [ | ] | \ | | Del | End | Dwn | | 7 | 8 | 9 | - | - +---------+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+--------+ +-----+-----+-----+ +-----+-----+-----+-----+ - | | A | S | D | F | G | H | J | K | L | : | " | | | | | | | - | CAPS LOCK | a | s | d | f | g | h | j | k | l | ; | ' | RETURN | | 4 | 5 | 6 | + | - +-----------+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+------------+ +-----+ +-----+-----+-----+-----+ - | | Z | X | C | V | B | N | M | < | > | ? | | | | | | | | E | - | SHIFT | z | x | c | v | b | n | m | , | . | / | SHIFT | | Up | | 1 | 2 | 3 | N | - +---------+-----+-+---+---+-+-----+-----+-----+-----+-----+-----+---+-+-----+-------+------+ +-----+-----+-----+ +-----+-----+-----+ T | - | | | SOLID | | SOLID | | | | | | | | | | E | - | CTRL |OPTION | APPLE | SPACE | APPLE | OPTION| CTRL | | Lft | Dwn | Rgh | | 0 | . | R | - +---------+-------+-------+-----------------------------------------+-------+-------+------+ +-----+-----+-----+ +-----------+-----+-----+ - - - AppleII Extended Keyboard Keycodes when running Applecorn MOS - ------------------------------------------------------------- - +-----+ +-----+-----+-----+-----+ +-----+-----+-----+-----+ +-----+-----+-----+-----+ +-----+-----+-----+ +-----+ -L+R | &1B | | &A1 | &A2 | &A3 | &A4 | | &A5 | &A6 | &A7 | &A8 | | &A9 | &AA | &AB | &AC | | &AD | &AE | &AF | |POWER| -Rapp | &1B | | &91 | &92 | &93 | &94 | | &95 | &96 | &97 | &98 | | &99 | &9A | &9B | &9C | | &9D | &9E | &9F | |POWER| -Lapp | &1B | | &81 | &82 | &83 | &84 | | &85 | &86 | &87 | &88 | | &89 | &8A | &8B | &8C | | &8D | &8E | &8F | |POWER| -ctrl | &1B | | &A1 | &A2 | &A3 | &A4 | | &A5 | &A6 | &A7 | &A8 | | &A9 | &AA | &AB | &AC | | &AD | &AE | &AF | |POWER| -shift | &1B | | &91 | &92 | &93 | &94 | | &95 | &96 | &97 | &98 | | &99 | &9A | &9B | &9C | | &9D | &9E | &9F | |POWER| -key | &1B | | &81 | &82 | &83 | &84 | | &85 | &86 | &87 | &88 | | &89 | &8A | &8B | &8C | | &8D | &8E | &8F | |POWER| - +-----+ +-----+-----+-----+-----+ +-----+-----+-----+-----+ +-----+-----+-----+-----+ +-----+-----+-----+ +-----+ - - +-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+------------+ +-----+-----+-----+ +-----+-----+-----+-----+ -L+R | &00 | &A1 | &A2 | &A3 | &A4 | &A5 | &A6 | &A7 | &A8 | &A9 | &A0 | - | = | &1F | | &E6 | &E8 | &EB | | &1B | &AC | &AF | &AA | -Rapp | &00 | &91 | &92 | &93 | &94 | &95 | &96 | &97 | &98 | &99 | &90 | - | = | &1F | | &D6 | &D8 | &DB | | &1B | &9C | &9F | &9A | -Lapp | &00 | &81 | &82 | &83 | &84 | &85 | &86 | &87 | &88 | &89 | &80 | - | = | &1F | | &C6 | &C8 | &CB | | &1B | &8C | &8F | &8A | -ctrl | ` | 1 | &00 | 3 | 4 | 5 | &1E | 7 | 8 | 9 | 0 | &1F | = | &7F | | &E6 | &E8 | &EB | | &1B | &AC | &AF | &AA | -shift | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | _ | + | &7F | | &D6 | &D8 | &DB | | &1B | &9C | &9F | &9A | -key | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | &7F | | &C6 | &C8 | &CB | | &1B | &8C | &8F | &8A | - +-----+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+--------+ +-----+-----+-----+ +-----+-----+-----+-----+ -L+R | &09 | &11 | &17 | &05 | &12 | &14 | &19 | &15 | &09 | &0F | &10 | &1B | &1D | &1C | | &E7 | &E9 | &EA | | &A7 | &A8 | &A9 | &AD | -Rapp | &09 | &11 | &17 | &05 | &12 | &14 | &19 | &15 | &09 | &0F | &10 | &1B | &1D | &1C | | &D7 | &D9 | &DA | | &97 | &98 | &99 | &9D | -Lapp | &09 | &11 | &17 | &05 | &12 | &14 | &19 | &15 | &09 | &0F | &10 | &1B | &1D | &1C | | &C7 | &C9 | &CA | | &87 | &88 | &89 | &8D | -ctrl | &E9 | &11 | &17 | &05 | &12 | &14 | &19 | &CD | &C9 | &0F | &10 | &1B | &1D | &1C | | &E7 | &E9 | &EA | | &A7 | &A8 | &A9 | &AD | -shift | &D9 | Q | W | E | R | T | Y | U | I | O | P | { | } | | | | &D7 | &D9 | &DA | | &97 | &98 | &99 | &9D | -key | &C9 | q | w | e | r | t | y | u | i | o | p | [ | ] | \ | | &C7 | &C9 | &CA | | &87 | &88 | &89 | &8D | - +---------+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+--------+ +-----+-----+-----+ +-----+-----+-----+-----+ -L+R | | &01 | &13 | &04 | &06 | &07 | &08 | &0A | &0B | &0C | ; | ' | &0D | | &A4 | &A5 | &A6 | &AB | -Rapp | | &01 | &13 | &04 | &06 | &07 | &08 | &0A | &0B | &0C | ; | ' | &0D | | &94 | &95 | &96 | &9B | -Lapp | | &01 | &13 | &04 | &06 | &07 | &08 | &0A | &0B | &0C | ; | ' | &0D | | &84 | &85 | &86 | &8B | -ctrl | | &01 | &13 | &04 | &06 | &07 | &CC | &CE | &CF | &0C | ; | ' | &0D | | &A4 | &A5 | &A6 | &AB | -shift | | A | S | D | F | G | H | J | K | L | : | " | &0D | | &94 | &95 | &96 | &9B | -key | CAPS LOCK | a | s | d | f | g | h | j | k | l | ; | ' | &0D | | &84 | &85 | &86 | &8B | - +-----------+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+------------+ +-----+ +-----+-----+-----+-----+ -L+R | | &1A | &18 | &03 | &16 | &02 | &0E | &0D | , | . | / | | | &0B | | &A1 | &A2 | &A3 | | -Rapp | | &1A | &18 | &03 | &16 | &02 | &0E | &0D | , | . | / | | | &0B | | &91 | &92 | &93 | | -Lapp | | &1A | &18 | &03 | &16 | &02 | &0E | &0D | , | . | / | | | &0B | | &81 | &82 | &83 | | -ctrl | | &1A | &18 | &03 | &16 | &02 | &0E | &0D | , | . | / | | | &EF | | &A1 | &A2 | &A3 | | -shift | | Z | X | C | V | B | N | M | < | > | ? | | | &DF | | &91 | &92 | &93 | | -key | SHIFT | z | x | c | v | b | n | m | , | . | / | SHIFT | | &CF | | &81 | &82 | &83 | | - +---------+-----+-+---+---+-+-----+-----+-----+-----+-----+-----+---+-+-----+-------+------+ +-----+-----+-----+ +-----+-----+-----+ | -L+R | | | | &20 | | | | | &08 | &0A | &15 | | &A0 | &AE | &0D | -Rapp | | | | &20 | | | | | &08 | &0A | &15 | | &90 | &9E | &0D | -Lapp | | | | &20 | | | | | &08 | &0A | &15 | | &80 | &8E | &0D | -ctrl | | | | &20 | | | | | &EC | &EE | &ED | | &A0 | &AE | &0D | -shift | | | SOLID | &20 | SOLID | | | | &DC | &DE | &DD | | &90 | &9E | &0D | -key | CTRL | OPTION| APPLE | &20 | APPLE | OPTION| CTRL | | &CC | &CE | &CD | | &80 | &8E | &0D | - +---------+-------+-------+-----------------------------------------+-------+-------+------+ +-----+-----+-----+ +-----------+-----+-----+ - With TAB set to &09 with *FX219,9 and keypad base set to &80 with *FX238,128. - - - AppleMOS Regular Keymapping - =========================== -+==+====+====+====+====+====+====+====+====+=====+====+=====+=====+====+====+====+====+ -| | x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | -+==+====+====+====+====+====+====+====+====+=====+====+=====+=====+====+====+====+====+ -|0x| | | | | | | | | | Tab| | | | Ret| | | -| | c2 | cA | cB | cC | cD | cE | cF | cG | | | | | cL | cM | cN | cO | -| | a2 | aA | aB | aC | aD | aE | aF | aG | aH | aI | aJ | aK | aL | aM | aN | aO | -+--+----+----+----+----+----+----+----+----+-----+----+-----+-----+----+----+----+----+ -|1x| | | | | | | | | | | | Esc | | | | | -| | cP | cQ | cR | cS | cT | | cV | cW | cX | cY | cZ | c[ | c\ | c] | c6 | c_ | -| | aP | aQ | aR | aS | aT | aU | aV | aW | aX | aY | aZ | a[ | a\ | a] | a6 | a_ | -+--+----+----+----+----+----+----+----+----+-----+----+-----+-----+----+----+----+----+ -+--+----+----+----+----+----+----+----+----+-----+----+-----+-----+----+----+----+----+ -|7x| | | | | | | | | | | | | | | | BS | -+==+====+====+====+====+====+====+====+====+=====+====+=====+=====+====+====+====+====+ -|8x| | F1| F2| F3| F4| F5| F6| F7| F8 | F9| F10 | F11 | F12| F13| F14| F15| -| | K0| K1| K2| K3| K4| K5| K6| K7| K8 | K9| K* | K+ | K= | K- | K. | K/ | -| | La0| La1| La2| La3| La4| La5| La6| La7| La8 | La9| | | | | | | -+--+----+----+----+----+----+----+----+----+-----+----+-----+-----+----+----+----+----+ -|9x| | sF1| sF2| sF3| sF4| sF5| sF6| sF7| sF8 | sF9| sF10| sF11|sF12|sF13|sF14|sF15| -| | sK0| sK1| sK2| sK3| sK4| sK5| sK6| sK7| sK8 | sK9| sK* | sK+ |sK= |sK- |sK. |sK/ | -| | Ra0| Ra1| Ra2| Ra3| Ra4| Ra5| Ra6| Ra7| Ra8 | Ra9| | | | | | | -+--+----+----+----+----+----+----+----+----+-----+----+-----+-----+----+----+----+----+ -|Ax| | cF1| cF2| cF3| cF4| cF5| cF6| cF7| cF8 | cF9| cF10| cF11|cF12|cF13|cF14|cF15| -| | cK0| cK1| cK2| cK3| cK4| cK5| cK6| cK7| cK8 | cK9| cK* | cK+ |cK= |cK- |cK. |cK/ | -| |LRa0|LRa1|LRa2|LRa3|LRa4|LRa5|LRa6|LRa7|LRa8 |LRa9| | | | | | | -+--+----+----+----+----+----+----+----+----+-----+----+-----+-----+----+----+----+----+ -|Bx| | | | | | | | | | | | | | | | | -+--+----+----+----+----+----+----+----+----+-----+----+-----+-----+----+----+----+----+ -|Cx| | | | | | | Ins| Del| Home| End| PgDn| PgUp| <- | -> | Dn | Up | -| | | | | | | | | | | cI | | | cH | cU | cJ | cK | -+--+----+----+----+----+----+----+----+----+-----+----+-----+-----+----+----+----+----+ -|Dx| | | | | | |sIns|sDel|sHome|sEnd|sPgDn|sPgUp| s<-| s->| sDn| sUp| -+--+----+----+----+----+----+----+----+----+-----+----+-----+-----+----+----+----+----+ -|Ex| | | | | | |cIns|cDel|cHome|cEnd|cPgDn|cPgUp| c<-| c->| cDn| cUp| -+--+----+----+----+----+----+----+----+----+-----+----+-----+-----+----+----+----+----+ -|Fx| | | | | | | | | | | | | | | | | -+--+----+----+----+----+----+----+----+----+-----+----+-----+-----+----+----+----+----+ - With TAB set to &09 with *FX219,9 and keypad base set to &80 with *FX238,128. - s=shift, c=ctrl, a=apple, La=left apple, Ra=right apple, LRa=both apple. - - -Applecorn BBC MOS keyboard API calls -==================================== -OSBYTE 4 (237) - Cursor keys: 0:editing, 1:&88-&8A, 2:topbit &xC-&xF with ctrl+shift -OSBYTE 126 - Acknowledge Escape: effects set by OSBYTE 230 will be actioned -OSBYTE 200 - Break/Escape response: b0=ignore Escape entirely, b1=clear memory on RESET -OSBYTE 202 - Keyboard state: b5=ctrl, b4=shift at last keypress (may change) -OSBYTE 219 - TAB character: character for TAB key to return -OSBYTE 220 - ESC character: character to match as Escape key -OSBYTE 221-228 - Top-set interpretation: 0:ignore, 1:soft key, 2:key base -OSBYTE 229 - Escape enable: 0:Escape key, <>0:return character -OSBYTE 230 - Escape effects: 0:Escape closes and flushes, <>0 no Escape effects -OSBYTE 238 - Keypad base: character to add to keypad key offset -OSBYTE 254 - Keyboard map: <&C0:map that matches OSBYTE 0, &C0+n:semi-regular map - -Applecorn BBC MOS character read API calls -========================================== -OSBYTE 176 - VSync counter for flashing cursor -OSBYTE 198 - *EXEC handle -OSBYTE 199 - *SPOOL handle -OSBYTE 216 - Length of current soft key -OSBYTE 233 - Offset to current soft key -OSBYTE 244 - Soft keys not unstable - -OSBYTE 128,255 - Return XY<>0 if keypresses pending -OSBYTE 128,127 - Return raw low-level keycode + Apple II Keyboard + ================= + + <----------------------------------------------------Apple IIgs----------------------------------------------------> + <-------------------------------------Apple IIe/IIc-------------------------------------> + +-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+---------+ +-----+-----+-----+-----+ + | | ! | @ | # | $ | % | ^ | & | * | ( | ) | _ | + | | | | | | | + | ESC | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | DELETE | |CLEAR| = | / | * | + +-----+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+------+ +-----+-----+-----+-----+ + | | Q | W | E | R | T | Y | U | I | O | P | { | } | | | | | | | + | TAB | q | w | e | r | t | y | u | i | o | p | [ | ] | | | 7 | 8 | 9 | - | + +--------+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+ | +-----+-----+-----+-----+ + | | A | S | D | F | G | H | J | K | L | : | " | | | | | | | + | CONTROL | a | s | d | f | g | h | j | k | l | ; | ' | RETURN | | 4 | 5 | 6 | + | + +----------+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+----------+ +-----+-----+-----+-----+ + | | Z | X | C | V | B | N | M | < | > | ? | | | | | | E | + | SHIFT | z | x | c | v | b | n | m | , | . | / | SHIFT | | 1 | 2 | 3 | N | + +-----+-----+-+-----+--+--+--+--+-----+-----+-----+-----+-+---+-+---+-+---+-+-----+-----+ +-----+-----+-----+ T | + |CAPS |SOLID| OPEN | ~ | | | | | | | | | | | E | + |LOCK |APPLE| APPLE | ` | SPACE | \ | Lft | Rgt | Dwn | Up | | 0 | . | R | + +-----+-----+----------+-----+----------------------------+-----+-----+-----+-----+-----+ +-----------+-----+-----+ + + + Keycodes when running Applecorn MOS + ----------------------------------- + <----------------------------------------------------Apple IIgs----------------------------------------------------> + <-------------------------------------Apple IIe/IIc-------------------------------------> + +-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+---------+ +-----+-----+-----+-----+ +L+R | &1B | &A1 | &A2 | &A3 | &A4 | &A5 | &A6 | &A7 | &A8 | &A9 | &A0 | - | = | &1F | | &1B | &AC | &AF | &AA | +Rapp | &1B | &91 | &92 | &93 | &94 | &95 | &96 | &97 | &98 | &99 | &90 | - | = | &1F | | &1B | &9C | &9F | &9A | +Lapp | &1B | &81 | &82 | &83 | &84 | &85 | &86 | &87 | &88 | &89 | &80 | - | = | &1F | | &1B | &8C | &8F | &8A | +ctrl | &1B | ! | &00 | 3 | 4 | 5 | &1E | 7 | * | ( | ) | &1F | = | &7F | | &1B | &AC | &AF | &AA | +shift | &1B | ! | @ | # | $ | % | ^ | & | * | ( | ) | _ | + | &7F | | &1B | &9C | &9F | &9A | +key | &1B | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | &7F | | &1B | &8C | &8F | &8A | + +-----+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+------+ +-----+-----+-----+-----+ +L+R | &09 | &11 | &17 | &05 | &12 | &14 | &19 | &15 | &09 | &0F | &10 | &1B | &1D | | | &A7 | &A8 | &A9 | &AD | +Rapp | &09 | &11 | &17 | &05 | &12 | &14 | &19 | &15 | &09 | &0F | &10 | &1B | &1D | | | &97 | &98 | &99 | &9D | +Lapp | &09 | &11 | &17 | &05 | &12 | &14 | &19 | &15 | &09 | &0F | &10 | &1B | &1D | | | &87 | &88 | &89 | &8D | +ctrl | &E9 | &11 | &17 | &05 | &12 | &14 | &19 | &CD | &C9 | &0F | &10 | &1B | &1D | | | &A7 | &A8 | &A9 | &AD | +shift | &D9 | Q | W | E | R | T | Y | U | I | O | P | { | } | | | &97 | &98 | &99 | &9D | +key | &C9 | q | w | e | r | t | y | u | i | o | p | [ | ] | | | &87 | &88 | &89 | &8D | + +--------+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+ | +-----+-----+-----+-----+ +L+R | | &01 | &13 | &04 | &06 | &07 | &08 | &0A | &0B | &0C | ; | ' | &0D | | &A4 | &A5 | &A6 | &AB | +Rapp | | &01 | &13 | &04 | &06 | &07 | &08 | &0A | &0B | &0C | ; | ' | &0D | | &94 | &95 | &96 | &9B | +Lapp | | &01 | &13 | &04 | &06 | &07 | &08 | &0A | &0B | &0C | ; | ' | &0D | | &84 | &85 | &86 | &8B | +ctrl | | &01 | &13 | &04 | &06 | &07 | &CC | &CE | &CF | &0C | ; | ' | &0D | | &A4 | &A5 | &A6 | &AB | +shift | | A | S | D | F | G | H | J | K | L | : | " | &0D | | &94 | &95 | &96 | &9B | +key | CONTROL | a | s | d | f | g | h | j | k | l | ; | ' | &0D | | &84 | &85 | &86 | &8B | + +----------+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+----------+ +-----+-----+-----+-----+ +L+R | | &1A | &18 | &03 | &16 | &02 | &0E | &0D | , | . | / | | | &A1 | &A2 | &A3 | | +Rapp | | &1A | &18 | &03 | &16 | &02 | &0E | &0D | , | . | / | | | &91 | &92 | &93 | | +Lapp | | &1A | &18 | &03 | &16 | &02 | &0E | &0D | , | . | / | | | &81 | &82 | &83 | | +ctrl | | &1A | &18 | &03 | &16 | &02 | &0E | &0D | , | . | / | | | &A1 | &A2 | &A3 | | +shft | | Z | X | C | V | B | N | M | < | > | ? | | | &91 | &92 | &93 | | +key | SHIFT | z | x | c | v | b | n | m | , | . | / | SHIFT | | &81 | &82 | &83 | | + +-----+-----+-+-----+--+--+--+--+-----+-----+-----+-----+-+---+-+---+-+---+-+-----+-----+ +-----+-----+-----+ | +L+R | | | | &00 | &20 | &1C | &08 | &15 | &0A | &0B | | &A0 | &AE | &0D | +Rapp | | | | &00 | &20 | &1C | &08 | &15 | &0A | &0B | | &90 | &9E | &0D | +Lapp | | | | &00 | &20 | &1C | &08 | &15 | &0A | &0B | | &80 | &8E | &0D | +ctrl | | | | ` | &20 | &1C | &DC | &DD | &EE | &EF | | &A0 | &AE | &0D | +shift |CAPS |SOLID| OPEN | ~ | &20 | | | &DC | &DD | &DE | &DF | | &90 | &9E | &0D | +key |LOCK |APPLE| APPLE | ` | &20 | \ | &CC | &CD | &CE | &CF | | &80 | &8E | &0D | + +-----+-----+----------+-----+----------------------------+-----+-----+-----+-----+-----+ +-----------+-----+-----+ + With TAB set to &09 with *FX219,9 and keypad base set to &80 with *FX238,128. + + + AppleII ADB Extended Keyboard + ============================= + +-----+ +-----+-----+-----+-----+ +-----+-----+-----+-----+ +-----+-----+-----+-----+ +-----+-----+-----+ +-----+ + | | | | | | | | | | | | | | | | | | | | | === === === | | + | ESC | | f1 | f2 | f3 | f4 | | f5 | f6 | f7 | f8 | | f9 | f10 | f11 | f12 | | f13 | f14 | f15 | |POWER| + +-----+ +-----+-----+-----+-----+ +-----+-----+-----+-----+ +-----+-----+-----+-----+ +-----+-----+-----+ +-----+ + + +-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+------------+ +-----+-----+-----+ +-----+-----+-----+-----+ + | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | _ | + | | | Ins | | Pge | | | | | | + | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | DELETE | | Hlp |Home | Up | |CLEAR| = | / | * | + +-----+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+--------+ +-----+-----+-----+ +-----+-----+-----+-----+ + | | Q | W | E | R | T | Y | U | I | O | P | { | } | | | | | | Pge | | | | | | + | TAB | q | w | e | r | t | y | u | i | o | p | [ | ] | \ | | Del | End | Dwn | | 7 | 8 | 9 | - | + +---------+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+--------+ +-----+-----+-----+ +-----+-----+-----+-----+ + | | A | S | D | F | G | H | J | K | L | : | " | | | | | | | + | CAPS LOCK | a | s | d | f | g | h | j | k | l | ; | ' | RETURN | | 4 | 5 | 6 | + | + +-----------+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+------------+ +-----+ +-----+-----+-----+-----+ + | | Z | X | C | V | B | N | M | < | > | ? | | | | | | | | E | + | SHIFT | z | x | c | v | b | n | m | , | . | / | SHIFT | | Up | | 1 | 2 | 3 | N | + +---------+-----+-+---+---+-+-----+-----+-----+-----+-----+-----+---+-+-----+-------+------+ +-----+-----+-----+ +-----+-----+-----+ T | + | | | SOLID | | SOLID | | | | | | | | | | E | + | CTRL |OPTION | APPLE | SPACE | APPLE | OPTION| CTRL | | Lft | Dwn | Rgh | | 0 | . | R | + +---------+-------+-------+-----------------------------------------+-------+-------+------+ +-----+-----+-----+ +-----------+-----+-----+ + + + AppleII Extended Keyboard Keycodes when running Applecorn MOS + ------------------------------------------------------------- + +-----+ +-----+-----+-----+-----+ +-----+-----+-----+-----+ +-----+-----+-----+-----+ +-----+-----+-----+ +-----+ +L+R | &1B | | &A1 | &A2 | &A3 | &A4 | | &A5 | &A6 | &A7 | &A8 | | &A9 | &AA | &AB | &AC | | &AD | &AE | &AF | |POWER| +Rapp | &1B | | &91 | &92 | &93 | &94 | | &95 | &96 | &97 | &98 | | &99 | &9A | &9B | &9C | | &9D | &9E | &9F | |POWER| +Lapp | &1B | | &81 | &82 | &83 | &84 | | &85 | &86 | &87 | &88 | | &89 | &8A | &8B | &8C | | &8D | &8E | &8F | |POWER| +ctrl | &1B | | &A1 | &A2 | &A3 | &A4 | | &A5 | &A6 | &A7 | &A8 | | &A9 | &AA | &AB | &AC | | &AD | &AE | &AF | |POWER| +shift | &1B | | &91 | &92 | &93 | &94 | | &95 | &96 | &97 | &98 | | &99 | &9A | &9B | &9C | | &9D | &9E | &9F | |POWER| +key | &1B | | &81 | &82 | &83 | &84 | | &85 | &86 | &87 | &88 | | &89 | &8A | &8B | &8C | | &8D | &8E | &8F | |POWER| + +-----+ +-----+-----+-----+-----+ +-----+-----+-----+-----+ +-----+-----+-----+-----+ +-----+-----+-----+ +-----+ + + +-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+------------+ +-----+-----+-----+ +-----+-----+-----+-----+ +L+R | &00 | &A1 | &A2 | &A3 | &A4 | &A5 | &A6 | &A7 | &A8 | &A9 | &A0 | - | = | &1F | | &E6 | &E8 | &EB | | &1B | &AC | &AF | &AA | +Rapp | &00 | &91 | &92 | &93 | &94 | &95 | &96 | &97 | &98 | &99 | &90 | - | = | &1F | | &D6 | &D8 | &DB | | &1B | &9C | &9F | &9A | +Lapp | &00 | &81 | &82 | &83 | &84 | &85 | &86 | &87 | &88 | &89 | &80 | - | = | &1F | | &C6 | &C8 | &CB | | &1B | &8C | &8F | &8A | +ctrl | ` | 1 | &00 | 3 | 4 | 5 | &1E | 7 | 8 | 9 | 0 | &1F | = | &7F | | &E6 | &E8 | &EB | | &1B | &AC | &AF | &AA | +shift | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | _ | + | &7F | | &D6 | &D8 | &DB | | &1B | &9C | &9F | &9A | +key | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | &7F | | &C6 | &C8 | &CB | | &1B | &8C | &8F | &8A | + +-----+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+--------+ +-----+-----+-----+ +-----+-----+-----+-----+ +L+R | &09 | &11 | &17 | &05 | &12 | &14 | &19 | &15 | &09 | &0F | &10 | &1B | &1D | &1C | | &E7 | &E9 | &EA | | &A7 | &A8 | &A9 | &AD | +Rapp | &09 | &11 | &17 | &05 | &12 | &14 | &19 | &15 | &09 | &0F | &10 | &1B | &1D | &1C | | &D7 | &D9 | &DA | | &97 | &98 | &99 | &9D | +Lapp | &09 | &11 | &17 | &05 | &12 | &14 | &19 | &15 | &09 | &0F | &10 | &1B | &1D | &1C | | &C7 | &C9 | &CA | | &87 | &88 | &89 | &8D | +ctrl | &E9 | &11 | &17 | &05 | &12 | &14 | &19 | &CD | &C9 | &0F | &10 | &1B | &1D | &1C | | &E7 | &E9 | &EA | | &A7 | &A8 | &A9 | &AD | +shift | &D9 | Q | W | E | R | T | Y | U | I | O | P | { | } | | | | &D7 | &D9 | &DA | | &97 | &98 | &99 | &9D | +key | &C9 | q | w | e | r | t | y | u | i | o | p | [ | ] | \ | | &C7 | &C9 | &CA | | &87 | &88 | &89 | &8D | + +---------+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+--------+ +-----+-----+-----+ +-----+-----+-----+-----+ +L+R | | &01 | &13 | &04 | &06 | &07 | &08 | &0A | &0B | &0C | ; | ' | &0D | | &A4 | &A5 | &A6 | &AB | +Rapp | | &01 | &13 | &04 | &06 | &07 | &08 | &0A | &0B | &0C | ; | ' | &0D | | &94 | &95 | &96 | &9B | +Lapp | | &01 | &13 | &04 | &06 | &07 | &08 | &0A | &0B | &0C | ; | ' | &0D | | &84 | &85 | &86 | &8B | +ctrl | | &01 | &13 | &04 | &06 | &07 | &CC | &CE | &CF | &0C | ; | ' | &0D | | &A4 | &A5 | &A6 | &AB | +shift | | A | S | D | F | G | H | J | K | L | : | " | &0D | | &94 | &95 | &96 | &9B | +key | CAPS LOCK | a | s | d | f | g | h | j | k | l | ; | ' | &0D | | &84 | &85 | &86 | &8B | + +-----------+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+------------+ +-----+ +-----+-----+-----+-----+ +L+R | | &1A | &18 | &03 | &16 | &02 | &0E | &0D | , | . | / | | | &0B | | &A1 | &A2 | &A3 | | +Rapp | | &1A | &18 | &03 | &16 | &02 | &0E | &0D | , | . | / | | | &0B | | &91 | &92 | &93 | | +Lapp | | &1A | &18 | &03 | &16 | &02 | &0E | &0D | , | . | / | | | &0B | | &81 | &82 | &83 | | +ctrl | | &1A | &18 | &03 | &16 | &02 | &0E | &0D | , | . | / | | | &EF | | &A1 | &A2 | &A3 | | +shift | | Z | X | C | V | B | N | M | < | > | ? | | | &DF | | &91 | &92 | &93 | | +key | SHIFT | z | x | c | v | b | n | m | , | . | / | SHIFT | | &CF | | &81 | &82 | &83 | | + +---------+-----+-+---+---+-+-----+-----+-----+-----+-----+-----+---+-+-----+-------+------+ +-----+-----+-----+ +-----+-----+-----+ | +L+R | | | | &20 | | | | | &08 | &0A | &15 | | &A0 | &AE | &0D | +Rapp | | | | &20 | | | | | &08 | &0A | &15 | | &90 | &9E | &0D | +Lapp | | | | &20 | | | | | &08 | &0A | &15 | | &80 | &8E | &0D | +ctrl | | | | &20 | | | | | &EC | &EE | &ED | | &A0 | &AE | &0D | +shift | | | SOLID | &20 | SOLID | | | | &DC | &DE | &DD | | &90 | &9E | &0D | +key | CTRL | OPTION| APPLE | &20 | APPLE | OPTION| CTRL | | &CC | &CE | &CD | | &80 | &8E | &0D | + +---------+-------+-------+-----------------------------------------+-------+-------+------+ +-----+-----+-----+ +-----------+-----+-----+ + With TAB set to &09 with *FX219,9 and keypad base set to &80 with *FX238,128. + s=shift, c=ctrl, a=apple, La=left apple, Ra=right apple, LRa=both apple. + + + AppleMOS Regular Keymapping + =========================== ++==+====+====+====+====+====+====+====+====+=====+====+=====+=====+====+====+====+====+ +| | x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | ++==+====+====+====+====+====+====+====+====+=====+====+=====+=====+====+====+====+====+ +|0x| | | | | | | | | | Tab| | | | Ret| | | +| | c2 | cA | cB | cC | cD | cE | cF | cG | | | | | cL | cM | cN | cO | +| | a2 | aA | aB | aC | aD | aE | aF | aG | aH | aI | aJ | aK | aL | aM | aN | aO | ++--+----+----+----+----+----+----+----+----+-----+----+-----+-----+----+----+----+----+ +|1x| | | | | | | | | | | | Esc | | | | | +| | cP | cQ | cR | cS | cT | | cV | cW | cX | cY | cZ | c[ | c\ | c] | c6 | c_ | +| | aP | aQ | aR | aS | aT | aU | aV | aW | aX | aY | aZ | a[ | a\ | a] | a6 | a_ | ++--+----+----+----+----+----+----+----+----+-----+----+-----+-----+----+----+----+----+ ++--+----+----+----+----+----+----+----+----+-----+----+-----+-----+----+----+----+----+ +|7x| | | | | | | | | | | | | | | | BS | ++==+====+====+====+====+====+====+====+====+=====+====+=====+=====+====+====+====+====+ +|8x| | F1| F2| F3| F4| F5| F6| F7| F8 | F9| F10 | F11 | F12| F13| F14| F15| +| | K0| K1| K2| K3| K4| K5| K6| K7| K8 | K9| K* | K+ | K= | K- | K. | K/ | +| | La0| La1| La2| La3| La4| La5| La6| La7| La8 | La9| | | | | | | ++--+----+----+----+----+----+----+----+----+-----+----+-----+-----+----+----+----+----+ +|9x| | sF1| sF2| sF3| sF4| sF5| sF6| sF7| sF8 | sF9| sF10| sF11|sF12|sF13|sF14|sF15| +| | sK0| sK1| sK2| sK3| sK4| sK5| sK6| sK7| sK8 | sK9| sK* | sK+ |sK= |sK- |sK. |sK/ | +| | Ra0| Ra1| Ra2| Ra3| Ra4| Ra5| Ra6| Ra7| Ra8 | Ra9| | | | | | | ++--+----+----+----+----+----+----+----+----+-----+----+-----+-----+----+----+----+----+ +|Ax| | cF1| cF2| cF3| cF4| cF5| cF6| cF7| cF8 | cF9| cF10| cF11|cF12|cF13|cF14|cF15| +| | cK0| cK1| cK2| cK3| cK4| cK5| cK6| cK7| cK8 | cK9| cK* | cK+ |cK= |cK- |cK. |cK/ | +| |LRa0|LRa1|LRa2|LRa3|LRa4|LRa5|LRa6|LRa7|LRa8 |LRa9| | | | | | | ++--+----+----+----+----+----+----+----+----+-----+----+-----+-----+----+----+----+----+ +|Bx| | | | | | | | | | | | | | | | | ++--+----+----+----+----+----+----+----+----+-----+----+-----+-----+----+----+----+----+ +|Cx| | | | | | | Ins| Del| Home| End| PgDn| PgUp| <- | -> | Dn | Up | +| | | | | | | | | | | cI | | | cH | cU | cJ | cK | ++--+----+----+----+----+----+----+----+----+-----+----+-----+-----+----+----+----+----+ +|Dx| | | | | | |sIns|sDel|sHome|sEnd|sPgDn|sPgUp| s<-| s->| sDn| sUp| ++--+----+----+----+----+----+----+----+----+-----+----+-----+-----+----+----+----+----+ +|Ex| | | | | | |cIns|cDel|cHome|cEnd|cPgDn|cPgUp| c<-| c->| cDn| cUp| ++--+----+----+----+----+----+----+----+----+-----+----+-----+-----+----+----+----+----+ +|Fx| | | | | | | | | | | | | | | | | ++--+----+----+----+----+----+----+----+----+-----+----+-----+-----+----+----+----+----+ + With TAB set to &09 with *FX219,9 and keypad base set to &80 with *FX238,128. + s=shift, c=ctrl, a=apple, La=left apple, Ra=right apple, LRa=both apple. + + +Applecorn BBC MOS keyboard API calls +==================================== +OSBYTE 4 (237) - Cursor keys: 0:editing, 1:&88-&8A, 2:topbit &xC-&xF with ctrl+shift +OSBYTE 126 - Acknowledge Escape: effects set by OSBYTE 230 will be actioned +OSBYTE 200 - Break/Escape response: b0=ignore Escape entirely, b1=clear memory on RESET +OSBYTE 202 - Keyboard state: b7=ctrl, b6=shift, b1=extend, b0=apple at last keypress +OSBYTE 219 - TAB character: character for TAB key to return +OSBYTE 220 - ESC character: character to match as Escape key +OSBYTE 221-228 - Top-set interpretation: 0:ignore, 1:soft key, 2:key base +OSBYTE 229 - Escape enable: 0:Escape key, <>0:return character +OSBYTE 230 - Escape effects: 0:Escape closes and flushes, <>0 no Escape effects +OSBYTE 238 - Keypad base: character to add to keypad key offset +OSBYTE 254 - Keyboard map: <&C0:map that matches OSBYTE 0, &C0+n:semi-regular map + +Applecorn BBC MOS character read API calls +========================================== +OSBYTE 176 - VSync counter for flashing cursor +OSBYTE 198 - *EXEC handle +OSBYTE 199 - *SPOOL handle +OSBYTE 216 - Length of current soft key +OSBYTE 233 - Offset to current soft key +OSBYTE 244 - Soft keys not unstable + +OSBYTE 128,255 - Return XY<>0 if keypresses pending +OSBYTE 128,127 - Return raw low-level keycode