for Optimus PDA
KeyPad User Manual
Last Updated 12 - APR - 2007
written & programmed by
Senior of Engineer/IT R&D Center
SungSungSungSung----Gyu AhnGyu AhnGyu AhnGyu Ahn
Contents
1. Introducing KeyPad
o 1.1 Each name of part and general operation of Keypad
o 1.2 Displaying the operation status of KeyPad
2. HotKey
o 2.1 HotKey Function
o 2.2 Editing
o 2.3 Assign special key
3. Other functions
o AutoRepeat Function
o Fn+Fn key Blocking Function
o Version Display
4. KeyMap Function
5. KeyCode index ( quote from MSDN)
1. Introducing KeyPad
Traditionally the term “Keypad” refers to the physical set of keys or buttons used for
information input. This term, however has been extended to cover an application that is
used on the Optimus PDA using the touch screen.
1.1 Each name of part and general operation of KeyPad.
Direction When you use direction cursor
Send/End When you use calling or receiving telephone in PhoneUI program or using
special key for application program
Shift Modify KeyMap Mode..
Fn Making to operate specific action regarding each function.
BackSp Input Back Space.
Enter Input the key that has the changing line.
Number When you input key value directly, you use it. Initial keys are number.
The detailed operation of KeyPad is as following
Normal with Fn Key
Dir. - Up VK_UP VK_PAGEUP
Dir. - Down VK_DOWN VK_PAGEDOWN
Dir. - Left VK_LEFT VK_HOME
Dir. - Right VK_RIGHT VK_END
Send VK_F21 Windows Key ( Show Window Menu)
End VK_F22 VK_ESCAPE
BackSp VK_BACK (or depending on keyMap) VK_SPACE
Enter VK_RETURN (or depending on KeyMap) VK_TAB
Fn Switch Function Mode Show Current Input method that is
using
Shift Change KeyMap. Execute Task Manager.
Number / * / # Keyboard Input – depending on KeyMap. Execute HotKey function. HotKey
(Explained in HotKey)
1.2 Display Keypad operating status
The KeyPad icon is shown in the taskbar as shown below. Clicking or tapping on this icon
activates the application for use. Pressing down on the icon for longer brings up the
Select Menu allowing for the input method to be changed.
• : Character input status
• : Status on waiting next input key after Fn Key is already pushed
You can change the status of input method among by pressing
the Shift key. The input values for each input method is shown in the table below.
Some keys on the keypad contain multiple values. Alternative values can be selected by
multiple presses of the required button – very much like on a mobile phone. For example, if you
push the “2” key repeatedly in succession, A is first shown followed by B then C then A again.
2. HotKey
Using the KeyPad program, actions can be set against particular Hotkeys.
Long Push forLong Push forLong Push forLong Push for
SIP Select MenuSIP Select MenuSIP Select MenuSIP Select Menu
Click forClick forClick forClick for
Show SIP MenuShow SIP MenuShow SIP MenuShow SIP Menu
Hotkeys are selected by simultaneously pressing the Fn + Number key. Hotkeys can be
configured by selecting “KeyPad” in the control panel.
These are example options for HotKey function.
• Send : Auto run PhoneUI
• F1~F0 / F* / F#: number(1~0) + */#
• FS : Fn+S(send)
• FE : Fn+E(end)
• Fsh : Fn+Shift
• Fen : Fn+Enter
• Fbk : Fn+BackSpace
2.1 HotKey Function
Each Fn key combination can operate one of 3 actions below.
• CharacterCharacterCharacterCharacter string string string string Input Input Input Input: Input saved character string without prefix when Fn key
operates.
• Execute ProgramExecute ProgramExecute ProgramExecute Program: Execute designated program when Fn key operates. In this case,
program path starts with ''''\\\\''''. If saved character string begins with ''''\\\\'''', application
program operates. If saved character string does not begin with ''''\\\\'''', Fn key input
only character string.
• Special key InputSpecial key InputSpecial key InputSpecial key Input: Emulate special keys such as ESC/ALT/Ctrl+C that are difficult
to operate with characters. Special key Input begins with '_'.
In control panel, these functions are indicated by icons as below.
• : Character string Input
• : Execute application program
• : Special key Input
• : Not assigned
• : Disabled – You can choose Enable/Disable the assigned Fn key operation.
When you choose Disable, this icon appears regardless of its function.
If there are icons of execute application program or Special key input without ''''\\\\'''' or '_''_''_''_' in
control panel, these are processed with comment.
If character strings begin with parenthesis ( '(''(''(''(' ), it erases character strings before
parenthesis and only shows inside the parenthesis shown as below.
• _A409(Show TaskManager) ⇒ (Show TaskManager)
• \Windows\PWord.exe(MS Pocket Word) ⇒ (MS Pocket Word)
• _5B(Windows Menu Key) ⇒ (Windows Menu Key)
2.2 Editing
To change a particular Hotkey setting, first click within the region of the Hotkey option to
be modified. If a menu appears, select “Edit String.” Now modify the text. Alternatively
clicking “Program Select” instead of “Edit String”, a particular function key can be
assigned to run a program instead of insert text.
If inputting the selection manually, the chosen path for applications should always start
with ‘\’. Omitting the “\” result in the Hotkey function operating in character string input
mode.
If you click an item, select menu appears. Each menu is explained below.
• Edit String: Edit Fn key function as input character string directly.
• Input Single Key: A window pops up for _XX/_XXXX (XX indicates KeyCode
showed in Hexcode) format special key input. You can input special key directly in
Combo box. Otherwise you can choose DropDown List of KeyCode.
• Program Select: File Dialog box appears to choose exe (execute file), bat(script),
lnk (Link file), etc.
• Clear: Empty the item.
• Enable: Enable or Disable the item.
2.3 Assign Special Key
To assign special key, start with ‘_’ and input charater string with Hexcode. These
Hexcodes are keycodes. Refer to Code table in the last page.
If you want to assign ESC key, you just input ESC keycode (0x1A).
_1A
In case of combining special key such as Shift/Ctlr/ALT and another key, input keycode in
order.
For example of Ctrl-C which is shortcut for copy, Ctrl keycode is 0x11and C keycode
is0x43. Input like this.
_1143
However, direct keycode input recorded in control panel, it is hard to find the exact key or
operation. You can use comment with parentheses to check the assign of Fn key easily
because only comment in parentheses shows in control panel like below.
_1143(Ctrl-C/Copy)
3. Other functions
3.1 AutoRepeat Function
If you push a key long, the key is inputted again automatically.
• LongPush Delay: Time takes till automatic repeat starts. (Time takes till recognize
LongPush)
• Repeat Interval: Interval time between key input.
3.2 Fn+Fn Key Blocking Function
In case of combining Fn+Fn keys, block SIP window popup.
3.3 Version Display
Display versions of KeyPad program and control panel program.
4. KeyMap Function
You can change the setting of key functions freely using KeyMap Function. You can add
or delete keymap. You can select keymaps in control panel.
4.1 Install KeyMap
To install KeyMap, copy and paste KMPKMPKMPKMP file to \Storage (or IPSM)\system\Keypad. You
can choose KeyMap setting in control panel after install KMP file and Soft Reset
The first setting of KeyMap is Numeric. You can change the initial setting by adding
Default.kmp file.
4.2 Writing KeyMap
IIII Icon Index
K[Num]K[Num]K[Num]K[Num] Key Input
EEEE Start key of KeyMap Mode
RRRR End key of KeyMap Mode
TTTT Translate
Icon Index
Designate an icon among these (from 0 to 10 in order) to
display present keymap on the tray.
Key Input
Define the key column that will be input when you press the keypad.
You can define K0~K13.
K0~K9: Keypad: Number 1~9
K10, K11: Keypad: * and #
K12, K13: Keypad: Backspace and Enter
In case that each key does not have definition, output will be default functions such as
Arabic numbers, *, #, backspace, enter.
Input keyscan value (Hex code, Not ASCII)) for key column. In most of the cases, it is
hard to know keyscan value for certain key. You can input _(ASCII)_(ASCII)_(ASCII)_(ASCII) format. If you input 1
after ‘_’, keyscan value of keypad 1 is inputted. If you input _A, keyscan value of A is
inputted. However, it is hard to input keyscan value of special key. Thus you can input
“^defined character” such as “^S” is used for “VK_SHIFT.”
Here is the table of special characters that you can input.
• ^S : VK_SHIFT;
• ^C : VK_CONTROL;
• ^T : VK_TAB;
• ^R : VK_RETURN;
• ^B : VK_BACK;
• ^D : VK_DELETE;
• ^I : VK_INSERT;
• ^H : VK_HANGEUL
When you write a keymap, you should be cautious that input is not the actual character
code but key value that means keypad input. If you input _A or h41 (A in ASCII code) in
the keymap, the output can’t be “A”. The input will be “a” in most cases because you
only press the A in keypad. If you want to input “A” when you press 1 in keypad, you
should write the keymap as follows.
K0K0K0K0[tab][tab][tab][tab]^S_A^S_A^S_A^S_A
Press Shift key first and press “A” key.
One keypad can have 10 key values. In this case, keymap will be as follows.
K0K0K0K0[tab][tab][tab][tab]1stKeySeq1stKeySeq1stKeySeq1stKeySeq[tab][tab][tab][tab]2ndKeySeq2ndKeySeq2ndKeySeq2ndKeySeq[tab][tab][tab][tab] ... ... ... ... [tab][tab][tab][tab]10thKeySeq10thKeySeq10thKeySeq10thKeySeq
If q and z are with 1 in keypad, input comes out in order. In this case, keymap will be as
follows.
K0K0K0K0[tab][tab][tab][tab]_Q_Q_Q_Q[tab][tab][tab][tab]_Z_Z_Z_Z
Enter key/ Close key of Keymap mode
If a certain keymap uses specific language, you should input a certain key with Shift key
to use the keymap.
• EEEE[tab][tab][tab][tab]^H^H^H^H
• RRRR[tab][tab][tab][tab]^H^H^H^H
Here is English keymap that summarize the explanation above.
English.kmpEnglish.kmpEnglish.kmpEnglish.kmp
I 3 - Icon index 3 – Select small letters
K0 _Q _Z Press 1 key, input q and z
K1 _A _B _C Press 2 key, input a/b/c
K2 _D _E _F
K3 _G _H _I
K4 _J _K _L
K5 _M _N _O
K6 _P _R _S
K7 _T _U _V
K8 _W _X _Y
K9 ^S_2 Press 0 key, input @ (Shift+2)
K10 BE Direct input keyscan value .key
K11 BK Direct input keyscan value –key
K12 ^B VK_BACK
K13 ^R VK_RETURN
Translate
Translate function is change the output of certain characters into another one when the
character is being input after a certain character.
In case of French, when input ‘~’ first and input ‘a’, the two characters change into ã by
using Translate function.
Write as below to use Translate function.
TTTT[tab][tab][tab][tab](PrevKeyCode)(Input(PrevKeyCode)(Input(PrevKeyCode)(Input(PrevKeyCode)(InputKeyIndex)KeyIndex)KeyIndex)KeyIndex)[tab][tab][tab][tab]KeySeqKeySeqKeySeqKeySeq
Input key code value directly for previous key code, and input keyindex(K0 ~ K13) for
following key code.
Forced assignment of IMM Status
Keypad has a key that can change the status of IMM when keymap changes. The status of
IMM may change forcibly by external program. In this case, you can change the status of
IMM as you want forcibly by L.
L 0 : Do not change the status of IMM by force.
L 1 : Change the status of IMM in English.
L 2 : Change the status of IMM in native language.
5. KeyMap Hex value Index
Virtual key codesVirtual key codesVirtual key codesVirtual key codes
Symbolic constantSymbolic constantSymbolic constantSymbolic constant Hexadecimal valueHexadecimal valueHexadecimal valueHexadecimal value Mouse or keyboard equivalentMouse or keyboard equivalentMouse or keyboard equivalentMouse or keyboard equivalent
VK_LBUTTON 01 Left mouse button
VK_RBUTTON 02 Right mouse button
VK_CANCEL 03 Control-break processing
VK_MBUTTON 04 Middle mouse button on a three-button mouse
— 05–07 Undefined
VK_BACK 08 BACKSPACE key
VK_TAB 09 TAB key
— 0A–0B Undefined
VK_CLEAR 0C CLEAR key
VK_RETURN 0D ENTER key
— 0E–0F Undefined
VK_SHIFT 10 SHIFT key
VK_CONTROL 11 CTRL key
VK_MENU 12 ALT key
VK_PAUSE 13 PAUSE key
VK_CAPITAL 14 CAPS LOCK key
— 15–19 Reserved for Kanji systems
— 1A Undefined
VK_ESCAPE 1B ESC key
— 1C–1F Reserved for Kanji systems
VK_SPACE 20 SPACEBAR
VK_PRIOR 21 PAGE UP key
VK_NEXT 22 PAGE DOWN key
VK_END 23 END key
VK_HOME 24 HOME key
VK_LEFT 25 LEFT ARROW key
VK_UP 26 UP ARROW key
VK_RIGHT 27 RIGHT ARROW key
VK_DOWN 28 DOWN ARROW key
VK_SELECT 29 SELECT key
2A OEM-specific
VK_EXECUTE 2B EXECUTE key
VK_SNAPSHOT 2C PRINT SCREEN key
VK_INSERT 2D INS key
VK_DELETE 2E DEL key
VK_HELP 2F HELP key
3A–40 Undefined
VK_LWIN 5B Left Windows key on a Microsoft Natural Keyboard
VK_RWIN 5C Right Windows key on a Microsoft Natural Keyboard
VK_APPS 5D Applications key on a Microsoft Natural Keyboard
5E–5F Undefined
VK_NUMPAD0 60 Numeric keypad 0 key
VK_NUMPAD1 61 Numeric keypad 1 key
VK_NUMPAD2 62 Numeric keypad 2 key
VK_NUMPAD3 63 Numeric keypad 3 key
VK_NUMPAD4 64 Numeric keypad 4 key
VK_NUMPAD5 65 Numeric keypad 5 key
VK_NUMPAD6 66 Numeric keypad 6 key
VK_NUMPAD7 67 Numeric keypad 7 key
VK_NUMPAD8 68 Numeric keypad 8 key
VK_NUMPAD9 69 Numeric keypad 9 key
VK_MULTIPLY 6A Multiply key
VK_ADD 6B Add key
VK_SEPARATOR 6C Separator key
VK_SUBTRACT 6D Subtract key
VK_DECIMAL 6E Decimal key
VK_DIVIDE 6F Divide key
VK_F1 70 F1 key
VK_F2 71 F2 key
VK_F3 72 F3 key
VK_F4 73 F4 key
VK_F5 74 F5 key
VK_F6 75 F6 key
VK_F7 76 F7 key
VK_F8 77 F8 key
VK_F9 78 F9 key
VK_F10 79 F10 key
VK_F11 7A F11 key
VK_F12 7B F12 key
VK_F13 7C F13 key
VK_F14 7D F14 key
VK_F15 7E F15 key
VK_F16 7F F16 key
VK_F17 80H F17 key
VK_F18 81H F18 key
VK_F19 82H F19 key
VK_F20 83H F20 key
VK_F21 84H F21 key
VK_F22 85H F22 key
VK_F23 86H F23 key
VK_F24 87H F24 key
88–8F Unassigned
VK_NUMLOCK 90 NUM LOCK key
VK_SCROLL 91 SCROLL LOCK key
VK_LSHIFT 0xA0 Left SHIFT
VK_RSHIFT 0xA1 Right SHIFT
VK_LCONTROL 0xA2 Left CTRL
VK_RCONTROL 0xA3 Right CTRL
VK_LMENU 0xA4 Left ALT
VK_RMENU 0xA5 Right ALT
BA-C0 OEM-specific; reserved. See following tables.
C1-DA Unassigned
DB-E2 OEM-specific; reserved. See following tables.
E3 – E4 OEM-specific
E5 Unassigned
E6 OEM-specific
E7-E8 Unassigned
E9-F5 OEM-specific
VK_ATTN F6 ATTN key
VK_CRSEL F7 CRSEL key
VK_EXSEL F8 EXSEL key
VK_EREOF F9 Erase EOF key
VK_PLAY FA PLAY key
VK_ZOOM FB ZOOM key
VK_NONAME FC Reserved for future use
VK_PA1 FD PA1 key
VK_OEM_CLEAR FE CLEAR key
Symbolic constantSymbolic constantSymbolic constantSymbolic constant Hexadecimal valueHexadecimal valueHexadecimal valueHexadecimal value Mouse or keyboard equivalentMouse or keyboard equivalentMouse or keyboard equivalentMouse or keyboard equivalent
VK_OEM_SCROLL 0x91 None
VK_OEM_1 0xBA ";:" for US
VK_OEM_PLUS 0xBB "+" any country/region
VK_OEM_COMMA 0xBC "," any country/region
VK_OEM_MINUS 0xBD "-" any country/region
VK_OEM_PERIOD 0xBE "." any country/region
VK_OEM_2 0xBF "/?" for US
VK_OEM_3 0xC0 "`~" for US
VK_OEM_4 0xDB "[{" for US
VK_OEM_5 0xDC "\|" for US
VK_OEM_6 0xDD "]}" for US
VK_OEM_7 0xDE "'"" for US
VK_OEM_8 0xDF None
VK_OEM_AX 0xE1 AX key on Japanese AX keyboard
VK_OEM_102 0xE2 "<>" or "\|" on RT 102-key keyboard
Symbolic constantSymbolic constantSymbolic constantSymbolic constant Hexadecimal Hexadecimal Hexadecimal Hexadecimal
valuevaluevaluevalue
DescriptionDescriptionDescriptionDescription
VK_DBE_ALPHANUMERIC 0x0f0 Changes the mode to
alphanumeric.
VK_DBE_KATAKANA 0x0f1 Changes the mode to Katakana.
VK_DBE_HIRAGANA 0x0f2 Changes the mode to Hiragana.
VK_DBE_SBCSCHAR 0x0f3 Changes the mode to single-byte
characters.
VK_DBE_DBCSCHAR 0x0f4 Changes the mode to double-byte
characters.
VK_DBE_ROMAN 0x0f5 Changes the mode to Roman
characters.
VK_DBE_NOROMAN 0x0f6 Changes the mode to non-Roman
characters.
VK_DBE_ENTERWORDREGISTERMODE 0x0f7 Activates the word registration
dialog box.
VK_DBE_ENTERIMECONFIGMODE 0x0f8 Activates a dialog box for setting
up an IME environment.
VK_DBE_FLUSHSTRING 0x0f9 Deletes the undetermined string
without determining it.
VK_DBE_CODEINPUT 0x0fa Changes the mode to code input.
VK_DBE_NOCODEINPUT 0x0fb Changes the mode to no-code
input.
Top Related