#
#   $Id: keymap.dk 1.1 2003/01/16 17:39:36Z johnb Exp $
#
#   *** DO NOT REMOVE THE FOLLOWING NOTICE ***
#
#   Copyright (c) 1993 - 2002 Datalight, Inc.
#   All Rights Reserved
#
#   Datalight, Inc. is a Washington corporation with an address at
#   21520 30TH DR SE MS110 Bothell, WA, 98021
#   Tel: 800.221.6630  Fax: 425.951.8091
#   Http://www.datalight.com
#
#   This software, including without limitation all source code and
#   documentation, is the confidential, trade secret property of
#   Datalight, Inc., and is protected under the copyright laws of
#   the United States and other jurisdictions. Portions of the
#   software may also be subject to one or more the following US
#   patents: US#5860082, US#6260156.
#
#   In addition to civil penalties for infringement of copyright
#   under applicable U.S. law, 17 U.S.C. 1204 provides criminal
#   penalties for violation of (a) the restrictions on circumvention
#   of copyright protection systems found in 17 U.S.C. 1201 and
#   (b) the protections for the integrity of copyright management
#   information found in 17 U.S.C. 1202.
#
#   U.S. Government Restricted Rights. Use, duplication,
#   reproduction, or transfer of this commercial product and
#   accompanying documentation is restricted in accordance with
#   FAR 12.212 and DFARS 227.7202 and by a License Agreement.
#
#   IN ADDITION TO COPYRIGHT AND PATENT LAW, THIS SOFTWARE IS
#   PROTECTED UNDER A SOURCE CODE AGREEMENT, NON-DISCLOSURE
#   AGREEMENT (NDA), OR SIMILAR BINDING CONTRACT BETWEEN DATALIGHT,
#   INC. AND THE LICENSEE ("BINDING AGREEMENT"). YOUR RIGHT, IF ANY,
#   TO COPY, PUBLISH, MODIFY OR OTHERWISE USE THE SOFTWARE,IS SUBJECT
#   TO THE TERMS AND CONDITIONS OF THE BINDING AGREEMENT, AND BY
#   USING THE SOFTWARE IN ANY MANNER, IN WHOLE OR IN PART, YOU AGREE
#   TO BE BOUND BY THE TERMS OF THE BINDING AGREEMENT. CONTACT
#   DATALIGHT, INC. AT THE ADDRESS SET FORTH ABOVE IF YOU OBTAINED
#   THIS SOFTWARE IN ERROR.
#
#keymapping for remcon
#Gerrit van Niekerk  gerrit@osi.co.za
#NOTE This format is only temporarily. Im working on a nice text table
#format: modflags+keycode(decimal)=scancode ascii(hex)
#	modflags: shift, control and alt OR'ed together
#	keycode: java library value
#	eg. 'Control @' == 'Control+Shift+2' == '3+50=3 0'

#
# modifiers when pressed
#
1+0=0 0	   ;Shift
2+0=0 0     ;Ctrl
8+0=0 0     ;Alt
10+0=0 0    ;AltGr
0+144=0 0   ;Num Lock
0+20=0 0    ;caps lock
0+145=0 0   ;scroll Lock

128+0=0 0   ; don't display anything...
129+0=0 0   ; don't display anything...
130+0=0 0   ; don't display anything...
131+0=0 0   ; don't display anything...
132+0=0 0   ; don't display anything...


#
# cursor movement keys
#
0+8=e 8		;Backspace
0+9=f 9		;Tab
0+10=1c d	;Enter
0+27=1 1b	;Escape
0+33=49 e0	;Page Up
0+34=51 e0  ;Page Down
0+35=4f e0	;End
0+36=47 e0	;Home
0+37=4b e0	;Left
0+38=48 e0	;Up
0+39=4d e0	;Right
0+40=50 e0	;Down
0+106=37 2a	;NumPad *
0+107=4e 2b	;NumPad +
0+109=4a 2d	;NumPad -
0+111=e0 2f	;NumPad /
0+127=53 e0	;Delete
0+155=52 e0 ;Insert

1+9=f 0		;shift-Tab


#Fx
0+112=3b 00 ;F1
0+113=3c 00	;F2
0+114=3d 00	;F3
0+115=3e 00	;F4
0+116=3f 00	;F5
0+117=40 00	;F6
0+118=41 00	;F7
0+119=42 00	;F8
0+120=43 00	;F9
0+121=44 00	;F10
0+122=85 00	;F11
0+123=86 00	;F12

#Ctrl Fx
2+112=5e 00	;Ctrl+F1
2+113=5f 00	;Ctrl+F2
2+114=60 00	;Ctrl+F3
2+115=61 00	;Ctrl+F4
2+116=62 00	;Ctrl+F5
2+117=63 00	;Ctrl+F6
2+118=64 00	;Ctrl+F7
2+119=65 00	;Ctrl+F8
2+120=66 00	;Ctrl+F9
2+121=67 00	;Ctrl+F10
2+122=89 00	;Ctrl+F11
2+123=8a 00	;Ctrl+F12

#Shift Fx
1+112=54 00	;Shift+F1
1+113=55 00	;Shift+F2
1+114=56 00	;Shift+F3
1+115=57 00	;Shift+F4
1+116=58 00	;Shift+F5
1+117=59 00	;Shift+F6
1+118=5a 00	;Shift+F7
1+119=5b 00	;Shift+F8
1+120=5c 00	;Shift+F9
1+121=5d 00	;Shift+F10
1+122=87 00	;Shift+F11
1+123=88 00	;Shift+F12

#Alt Fx
8+112=68 00	;Alt+F1
8+113=69 00	;Alt+F2
8+114=6a 00	;Alt+F3
8+115=6b 00	;Alt+F4
8+116=6c 00	;Alt+F5
8+117=6d 00	;Alt+F6
8+118=6e 00	;Alt+F7
8+119=6f 00	;Alt+F8
8+120=70 00	;Alt+F9
8+121=71 00	;Alt+F10
8+122=8b 00	;Alt+F11
8+123=8c 00	;Alt+F12

10+112=68 00	;AltGR+F1
10+113=69 00	;AltGR+F2
10+114=6a 00	;AltGR+F3
10+115=6b 00	;AltGR+F4
10+116=6c 00	;AltGR+F5
10+117=6d 00	;AltGR+F6
10+118=6e 00	;AltGR+F7
10+119=6f 00	;AltGR+F8
10+120=70 00	;AltGR+F9
10+121=71 00	;AltGR+F10
10+122=8b 00	;AltGR+F11
10+123=8c 00	;AltGR+F12

#numbers + other
0+49=2 31	;1
0+50=3 32	;2
0+51=4 33	;3
0+52=5 34	;4
0+53=6 35	;5
0+54=7 36	;6
0+55=8 37	;7
0+56=9 38	;8
0+57=a 39	;9
0+48=b 30	;0
0+44=33 2c	;,
0+46=34 2e	;.


# Mozilla specific accent modifiers for certain characters...
0+135=1b 5d ;]
1+135=1b 7d	;]
0+129=d 27	
1+129=d 2b	

# IE specific accent modifiers for certain characters...
0+186=1b 5d ;]
1+186=1b 7d	;]
0+219=d 27	
1+219=d 2b	


#numbers + other + shift
1+49=2 21	;!
1+50=3 22	;"
1+51=4 23	;#
1+52=5 cf	;
1+53=6 25	;%
1+54=7 26	;&
1+55=8 2f	;/
1+56=9 28	;(
1+57=a 29	;)
1+48=b 3d	;=
1+44=33 3b	;;
1+46=34 3a	;:

#num keypad
0+97=4f 31	;NumPad-1
0+98=50 32	;NumPad-2
0+99=51 33	;NumPad-3
0+100=4b 34	;NumPad-4
0+101=4c 35	;NumPad-5
0+102=4d 36	;NumPad-6
0+103=47 37	;NumPad-7
0+104=48 38	;NumPad-8
0+105=49 39	;NumPad-9
0+96=52 30	;NumPad-0
0+110=53 2c	;NumPad ,

#alphabet
0+65=1e 61	;a
0+66=30 62	;b
0+67=2e 63	;c
0+68=20 64	;d
0+69=12 65	;e
0+70=21 66	;f
0+71=22 67	;g
0+72=23 68	;h
0+73=17 69	;i
0+74=24 6a	;j
0+75=25 6b	;k
0+76=26 6c	;l
0+77=32 6d	;m
0+78=31 6e	;n
0+79=18 6f	;o
0+80=19 70	;p
0+81=10 71	;q
0+82=13 72	;r
0+83=1f 73	;s
0+84=14 74	;t
0+85=16 75	;u
0+86=2f 76	;v
0+87=11 77	;w
0+88=2d 78	;x
0+89=15 79	;y
0+90=2c 7a	;z

#keys plus shift
1+65=1e 41	;A
1+66=30 42	;B
1+67=2e 43	;C
1+68=20 44	;D
1+69=12 45	;E
1+70=21 46	;F
1+71=22 47	;G
1+72=23 48	;H
1+73=17 49	;I
1+74=24 4a	;J
1+75=25 4b	;K
1+76=26 4c	;L
1+77=32 4d	;M
1+78=31 4e	;N
1+79=18 4f	;O
1+80=19 50	;P
1+81=10 51	;Q
1+82=13 52	;R
1+83=1f 53	;S
1+84=14 54	;T
1+85=16 55	;U
1+86=2f 56	;V
1+87=11 57	;W
1+88=2d 58	;X
1+89=15 59	;Y
1+90=2c 5a	;Z

#keys plus control
2+65=1e 1	;A
2+66=30 2	;B
2+67=2e 3	;C
2+68=20 4	;D
2+69=12 5	;E
2+70=21 6	;F
2+71=22 7	;G
2+72=23 8	;H
2+73=17 9	;I
2+74=24 a	;J
2+75=25 b	;K
2+76=26 c	;L
2+77=32 d	;M
2+78=31 e	;N
2+79=18 f	;O
2+80=19 10	;P
2+81=10 11	;Q
2+82=13 12	;R
2+83=1f 13	;S
2+84=14 14	;T
2+85=16 15	;U
2+86=2f 16	;V
2+87=11 17	;W
2+88=2d 18	;X
2+89=15 19	;Y
2+90=2c 1a	;Z

#keys with alt
8+49=78 0	;1
8+50=79 0	;2
8+51=7a 0	;3
8+52=7b 0	;4
8+53=7c 0	;5
8+54=7d 0	;6
8+55=7e 0	;7
8+56=7f 0	;8
8+57=80 0	;9
8+48=81 0	;0
8+187=82 0	;-
8+219=83 0	;=

8+220=2b 0	;\
8+219=1a 0	;[
8+221=1b 0	;]
8+186=27 0	;;
8+222=28 0	;'
8+188=33 0	;,
8+190=34 0	;.
8+191=35 0	;/

8+65=1e 0	;A
8+66=30 0	;B
8+67=2e 0	;C
8+68=20 0	;D
8+69=12 0	;E
8+70=21 0	;F
8+71=22 0	;G
8+72=23 0	;H
8+73=17 0	;I
8+74=24 0	;J
8+75=25 0	;K
8+76=26 0	;L
8+77=32 0	;M
8+78=31 0	;N
8+79=18 0	;O
8+80=19 0	;P
8+81=10 0	;Q
8+82=13 0	;R
8+83=1f 0	;S
8+84=14 0	;T
8+85=16 0	;U
8+86=2f 0	;V
8+87=11 0	;W
8+88=2d 0	;X
8+89=15 0	;Y
8+90=2c 0	;Z

10+65=1e 0	;A
10+66=30 0	;B
10+67=2e 0	;C
10+68=20 0	;D
10+69=12 0	;E
10+70=21 0	;F
10+71=22 0	;G
10+72=23 0	;H
10+73=17 0	;I
10+74=24 0	;J
10+75=25 0	;K
10+76=26 0	;L
10+77=32 0	;M
10+78=31 0	;N
10+79=18 0	;O
10+80=19 0	;P
10+81=10 0	;Q
10+82=13 0	;R
10+83=1f 0	;S
10+84=14 0	;T
10+85=16 0	;U
10+86=2f 0	;V
10+87=11 0	;W
10+88=2d 0	;X
10+89=15 0	;Y
10+90=2c 0	;Z


# keys with ALTGR
10+49=2 0    ;
10+50=3 40   ;@
10+51=4 9c   ;
10+52=5 24   ;$
10+53=6 d5   ;
10+54=7 0    ;
10+55=8 7b   ;{
10+56=9 5b   ;[
10+57=a 5d   ;]
10+58=b 7d   ;}
10+123=8 7b  ;{
10+91=9 5b   ;[
10+93=a 5d   ;]
10+125=b 7d   ;}


# accented keys

# base
128+65=1e 0	;
128+69=12 0	;
128+73=17 0	;
128+79=18 0	;
128+85=16 0	;
# shift
129+65=1e 0	;
129+69=12 0	;
129+73=17 0	;
129+79=18 0	;
129+85=16 0	;
# ctrl
130+65=1e 0	;
130+69=12 0	;
130+73=17 0	;
130+79=18 0	;
130+85=16 0	;
# alt
136+65=1e 0	;
136+69=12 0	;
136+73=17 0	;
136+79=18 0	;
136+85=16 0	;
# altgr
138+65=1e 0	;
138+69=12 0	;
138+73=17 0	;
138+79=18 0	;
138+85=16 0	;


# base
144+65=1e 0	;
144+69=12 0	;
144+73=17 0	;
144+79=18 0	;
144+85=16 0	;
# shift
145+65=1e 0	;
145+69=12 0	;
145+73=17 0	;
145+79=18 0	;
145+85=16 0	;
# ctrl
146+65=1e 0	;
146+69=12 0	;
146+73=17 0	;
146+79=18 0	;
146+85=16 0	;
# alt
152+65=1e 0	;
152+69=12 0	;
152+73=17 0	;
152+79=18 0	;
152+85=16 0	;
# altgr
154+65=1e 0	;
154+69=12 0	;
154+73=17 0	;
154+79=18 0	;
154+85=16 0	;


# base
160+65=1e 0	;
160+69=12 0	;
160+73=17 0	;
160+79=18 0	;
160+85=16 0	;
# shift
161+65=1e 0	;
161+69=12 0	;
161+73=17 0	;
161+79=18 0	;
161+85=16 0	;
# ctrl
162+65=1e 0	;
162+69=12 0	;
162+73=17 0	;
162+79=18 0	;
162+85=16 0	;
# alt
168+65=1e 0	;
168+69=12 0	;
168+73=17 0	;
168+79=18 0	;
168+85=16 0	;
# altgr
170+65=1e 0	;
170+69=12 0	;
170+73=17 0	;
170+79=18 0	;
170+85=16 0	;


# base
176+65=1e 0	;
176+69=12 0	;
176+73=17 0	;
176+79=18 0	;
176+85=16 0	;
# shift
177+65=1e 0	;
177+69=12 0	;
177+73=17 0	;
177+79=18 0	;
177+85=16 0	;
# ctrl
178+65=1e 0	;
178+69=12 0	;
178+73=17 0	;
178+79=18 0	;
178+85=16 0	;
# alt
184+65=1e 0	;
184+69=12 0	;
184+73=17 0	;
184+79=18 0	;
184+85=16 0	;
# altgr
186+65=1e 0	;
186+69=12 0	;
186+73=17 0	;
186+79=18 0	;
186+85=16 0	;


# base
192+65=1e 0	;
# shift
193+65=1e 0	;
# ctrl
194+65=1e 0	;
# alt
200+65=1e 0	;
# altgr 
202+65=1e 0	;


0+160=56 3c    ;<
1+160=56 3e    ;>
10+160=56 5c   ;\


