*************************************************************************
* >E-Keycodes: Documents Zap's internal key numbers			*
*************************************************************************

The key numbers used by Zap in the 'Keys' file and internally differ from the
wimp key numbers for some keys. The Zap key numbers mainly extend the WIMP
key numbers (documented under Wimp_Poll,8 p3-123 in RO3 PRM's) and separate
out some keypresses the WIMP assigns the same codes to.

Conversion to Zap key numbers takes place as soon as Zap gets a 'Key
Pressed' event and then the keys are buffered for later use.

Because of a combination of the fact that the WIMP does not take note of
very many Shift/Ctrl/Alt combinations when informing tasks about keypresses,
and the fact that some tasks do not always rehularly poll the WIMP, there
are cases when Zap is unable to determine which key has been pressed as the
state of the keyboard has changed by the time Zap is told about the keypress.
In these cases it assigns an internal key number of -1.  Key number -1
should always be ignored.

Key numbers are in the range 0-&1FF. 's' means 'shift', 'c' means 'ctrl',
'k' means 'keypad'. All numbers in the table below are in hex.

000 cSpace	100 scSpace	120 sSpace	140		160
001 cA		101 scA		121 ck/		141 sck/	161 k/
002 cB		102 scB		122 ck*		142 sck*	162 k*
003 cC		103 scC		123 ck#		143 sck#	163 k#
004 cD		104 scD		124 ck-		144 sck-	164 k-
005 cE		105 scE		125 ck+		145 sck+	165 k+
006 cF		106 scF		126 ckEnter	146 sckEnter	166 kEnter
007 cG		107 scG		127 ck.		147 sck.	167 k.
008 cH		108 scH		128		148		168 LLogo
009 cI		109 scI		129		149		169 Menu
00A cJ		10A scJ		12A		14A		16A RLogo
00B cK		10B scK		12B c[		14B sc[ (c{)	16B
00C cL		10C scL		12C c\		14C sc\ (c|)	16C sLLogo
00D cM		10D scM		12D c]		14D sc] (c})	16D sMenu
00E cN		10E scN		12E		14E		16E sRLogo
00F cO		10F scO		12F c-		14F sc- (c_)	16F
010 cP		110 scP		130 c0		150 sc0 (c))	170
011 cQ		111 scQ		131 c1		151 sc1 (c!)	171 sk/
012 cR		112 scR		132 c2		152 sc2 (c@)	172 sk*
013 cS		113 scS		133 c3		153 sc3 (c#)	173 sk#
014 cT		114 scT		134 c4		154 sc4 (c$)	174 sk-
015 cU		115 scU		135 c5		155 sc5	(c%)	175 sk+
016 cV		116 scV		136 c6		156 sc6 (c^)	176 skEnter
017 cW		117 scW		137 c7		157 sc7 (c&)	177 sk.
018 cX		118 scX		138 c8		158 sc8 (c*)	178 cLLogo
019 cY		119 scY		139 c9		159 sc9 (c()	179 cMenu
01A cZ		11A scZ		13A		15A		17A cRLogo
01B Escape	11B sEscape	13B cEscape	15B scEscape	17B
01C Backspace	11C sBackspace	13C cBackspace	15C scBackspace	17C scLLogo
01D Return	11D sReturn	13D cReturn	15D scReturn	17D scMenu
01E Home	11E sHome	13E cHome	15E scHome	17E scRLogo
01F cDelete	11F scDelete	13F		15F		17F sDelete

020-0FF are the standard ASCII characters with 07F Delete.
180-1BF are the function keys, Tab, Copy and the cursor keys using the same
	key numbers as the WIMP.

1C0 k0		1D0 sk0		1E0 ck0		1F0 sck0
1C1 k1		1D1 sk1		1E1 ck1		1F1 sck1
1C2 k2		1D2 sk2		1E2 ck2		1F2 sck2
1C3 k3		1D3 sk3		1E3 ck3		1F3 sck3
1C4 k4		1D4 sk4		1E4 ck4		1F4 sck4
1C5 k5		1D5 sk5		1E5 ck5		1F5 sck5
1C6 k6		1D6 sk6		1E6 ck6		1F6 sck6
1C7 k7		1D7 sk7		1E7 ck7		1F7 sck7
1C8 k8		1D8 sk8		1E8 ck8		1F8 sck8
1C9 k9		1D9 sk9		1E9 ck9		1F9 sck9
1CA F10		1DA sF10	1EA cF10	1FA scF1
1CB F11		1DB sF11	1EB cF11	1FB scF1
1CC F12		1DC sF12	1EC cF12	1FC scF1
1CD Insert	1DD sInsert	1ED cInsert	1FD scInsert
1CE PageDown	1DE sPageDown	1EE cPageDown	1FE scPageDown
1CF PageUp	1DF sPageUp	1EF cPageUp	1FF scPageUp

Note that, for backward compatibility, if Page Up and Page Down (with any
modifiers) are not defined, then the definitions of Cursor Up and Cursor Down
are used.
