Freedom Universal Keyboard fix

; Remap for the Orange M600 (HTC S200) and the Freedom Universal Keyboard.
; For some reason the :"{}|+_;'[]\-= keys are all incorrect. Here is a fix.
;
; Based on the excellent simple-sample.
;
; Please note that parameters in this file should be in the same order as described.
; 
; Keyboard layout name (displayed in AEKMapSettings)
Layout Freedom Universal Keyboard

; Hint for the layout to be shown in lower right corner of the screen
Hint Freedom ; I did not want to do a full abbreviation :)

; "Hardware" parameter adjust keyboard processing algoritm to 
; specific hardware. Most of the keyboards will work with default 
; settings (no Hardware parameter or empty), but specifying 
; correct hardware platform may help you to resolve some issues
; Valid values and AEKMap versions are:
;
;Wizard
;   "HTC Wizard" is a device sold by many brands under different names:
;   O2 XDA Mini S / I-Mate K-Jam / Qtek 9100 / T-Mobile MDA Vario /
;   Orange SPV M3000 / Dopod 838 / Vodafone VPA Compact II
;   Specifying Wizard as hardware platform will allow AEKMap to distinguish 
;   joystik and Enter/Arrows on hardware keyboard.
;   Requires AEKMap v1.1.3 or later.
;
Hardware Wizard

; Scancodes note:
; "Scan Code" may be defined using AEKMapScan utility located in AEKMap 
; installation directory.

; The "scan code" word in this file defined as follow:
; low byte: real key scan code .
; high byte treated as bit flags: 
;  7 6 5 4 3 2 1 0 
;  0 0 0 0 0 0 0 0     All Zero: "Clear" keypress (no shift/ctrl/alt/win/capslock)
;          | | | ^---- Shift+CapsLock combination is ON
;          | | ^------ Ctrl key is pressed
;          | ^-------- Alt key is pressed
;          ^---------- Win key is pressed
;       
;
;
; Please note that system may not support different Shift/Win/Alt trigger 
; combinations for particular key.
;
; Flag examples for different keypressings of "A" key:
; scancode  condition
;   0041    clear "A" key hook
;   0141    Shift+A key hook
;   0241    Ctrl+A key hook
;   0441    Alt+A key hook
;   0841    Win+A key hook
;   0341    Ctrl+Shift+A
;   0741    Ctrl+Alt+Shift+A key hook


; Shift key scan codes.
; Specify up to four 4-digit hex scancodes to enable internal shift key 
; monitoring routine. Or leave it empty for using shift key state returned by system.
; Standard keyboard shift scancode is 0110
ShiftKey

; Capslock key scan codes.
; Specify up to four 4-digit hex scancodes to enable internal capslock 
; monitoring routine. Or leave it empty to use capslock state returned by system
; Standard keyboard capslock scancode is 0014
CapslockKey 0014 0114 0214 0314

; Ctrl key scan codes.
; Specify up to four 4-digit hex scancodes to enable internal Ctrl key 
; monitoring routine. Or leave it empty to use Ctrl state returned by system
; Standard keyboard Ctrl scancode is 0211
CtrlKey

; Alt key scan codes.
; Specify up to four 4-digit hex scancodes to enable internal Alt key 
; monitoring routine. Or leave it empty to use Alt state returned by system
; Standard keyboard Alt scancode is 0412
AltKey

; "Win" key scan codes.
; Specify up to four 4-digit hex scancodes to enable internal Win key 
; monitoring routine. Or leave it empty to use Win key state returned by system
; Standard keyboard Win scancode is 085B
WinKey


; Accent Key scan codes. 
; If your layout should contain "Accented character" key switch you may specify 
; up to four 4-digit hex scancodes here.
; Or leave it empty if you need no such functionality
AccentKey

; Accent 2 Key scan codes.
; If your layout should contain different types of accented characters 
; you may specify up to four 4-digit hex scancodes of Accent 2 key switch here.
;
; Set AccentKey2 scan codes exactly the same as AccentKey to cycle thru 
; Normal -> Accented -> Alternative Accented -> back to Normal
;
; Or leave it empty if you need no such functionality
AccentKey2

; Accent 3 Key scan codes (I'm CRAZY of Greek layout !!!).
; If your layout should contain 3 different types of accented characters 
; (e.g. accents, "Dialitica" and combined in Greek) you may specify here 
; up to four 4-digit hex scancodes for Accent 3 key switch.
;
; You may set AccentKey3 scan codes exactly the same as AccentKey. In this case
; accent state will cycle thru 
; Normal -> Accented -> Accented2 -> Accented3 -> back to Normal
;
; Or leave it empty if you need no such functionality
AccentKey3


; List of external commands for binding to keys
;
; Exec <ID> <Executable path> [<Command line parameters>]
;
; <ID> is an command identifier 4digit hex number for reference 
; in key definitions (see below). The valid ID range is 0001..00FF.
; All other ID's are reserved.
;
; <Executable path> is a fully qualified application file name in quotes.
; No escape symbols should be used.
; <Command line parameters> are specified "as is", without 
; additional quotes or escapes
;
; Eg.:

Exec 0001 fexplore.exe
Exec 0002 "\Windows\notes.exe"


; Key line description format depends on AccentKey, AccentKey2 and AccentKey3 presense.
; In the case you need no accented characters:
;
;Key <ScanCode> <Normal> [<ICQ Normal>]
;
;If you define scan code(s) for Accent Key only:
;Key <ScanCode> <Normal> <Accented> [<ICQ Normal> <ICQ Accented>]
;
;If you need two different Accent key sets:
;Key <ScanCode> <Normal> <Accented> <Accented2> [<ICQ Normal> <ICQ Accented> <ICQ Accented2>]
;
;And finally - if you need 3 different Accent key sets:
;Key <ScanCode> <Normal> <Accented> <Accented2> <Accented3> [<ICQ Normal> <ICQ Accented> <ICQ Accented2> <ICQ Accented3>]
;
; where 
;
; <ScanCode> is a key scancode, (see notes above)
;
; <Normal> is a char or keypressing to be generated normally
; <Accented> is a char or keypress to be generated if "Accented" trigger is active. 
;     Allowed only if AccentKey parameter is not empty
; <Accented2> is a char or keypress to be generated if "Accented2" trigger is active. 
;     Allowed only if AccentKey2 parameter is not empty
; <Accented3> is a char or keypress to be generated if "Accented3" trigger is active. 
;     Allowed only if AccentKey3 parameter is not empty
;
; <ICQ Normal>, <ICQ Accented> <ICQ Accented2> and <ICQ Accented3> are the same as 
; previous but used if ICQ window having focus. If you need no alternative characters
; for ICQ - do not specify specify these codes
;
;
; All numbers are assumed to be in HEX and prefixed with "c", "k" or "e", 
; where
; c - Keystroke should be sent as unicode character. Use "Character Map" desctop 
;     application (Start - Programs - Accessories - System Tools) to find unicode
;     character codes (see it in the left lower corner of the screen)
;
; k - Not alphanumeric keypressing should be generated.  (REGISTERED VERSION ONLY)
;     The parameter is scancode as described above. Any combination of 
;     Shift/Ctrl/Alt/Win trigger key flags may be specified.
;
; e - Run "Exec" line with ID specified (registered version only)
;     
;
; 

; Remaps

Key 010d k0875	; Remap shift enter to Okay

Key 00db k00bd	; Remap - to [
Key 00bf k00bb	; Remap = to /
Key 00dd k00db	; Remap [ to ]
Key 00ba k00dd	; Remap ] to ;
Key 00bb k00ba	; Remap ; to =
Key 00c0 k00de	; Remap ' to ` (accent to backtick)
Key 00bd k00bf	; Remap / to -
Key 00de k00c0	; Remap ` to ' (backtick to accent)

Key 01db k01bd	; Remap - to {
Key 01bf k01bb	; Remap + to ?
Key 01dd k01db	; Remap { to }
Key 01ba k01dd	; Remap } to :
Key 01bb k01ba	; Remap : to +
Key 01c0 k01de	; Remap " to ~
Key 01bd k01bf	; Remap ? to _
Key 01de k01c0	; Remap ~ to "


Key 0231 k0251 ; Remap Ctrl+1 to Ctrl+Q (closes current application)
Key 0232 e0001 ; Execute external command #1 by pressing Ctrl+2
Key 0233 e0002 ; Execute external command #2 by pressing Ctrl+3