PDA

View Full Version : Writing new keyboard driver for Universal, need info


Sess
27th September 2006, 10:18 PM
Im going to attempt to write a new keyboard handling daemon for the Universal, since it seems no one else is interested in writing a new keyboard driver for the Universal. I need a list of all the key codes for the HTC Universals hardware keys. Thanks for the help guys.

Trunk_z
28th September 2006, 12:05 AM
heh, i too am looking for the key codes... not for the same reason however.

I have the codes for up/down/left/right on the keyboard if they are of any use to you?

[Edit]
Found what I was after, hope they are of some use to you http://www.vijay555.com/?Releases:VJKeyPress:Key_List

vijay555
28th September 2006, 01:05 AM
How'd you find that?

Sess: what are you using for reference on the driver?
There are some example drivers on buzzdev.net

What are you trying to achieve though?

V

Trunk_z
28th September 2006, 01:26 AM
lol, it took me _hours_ on google to find.

hope you dont mind :)

Sess
29th September 2006, 08:03 AM
How'd you find that?

Sess: what are you using for reference on the driver?
There are some example drivers on buzzdev.net

What are you trying to achieve though?

V

I supposed I hadn't specified huh? Im writing a little "TSR" that I want to intercept all keyup messages. Then the app will check the keyboard register of the appropriate key to ensure its really "up". If its not, the message is discarded and the register will be added to a queue to monitor until it really is up, at which time the tsr will generate the appropriate keyup message and pass it along to the system. This should allow for simultaneous key presses on the Universal. With a little extra work, I might be able to make it a universal app.

steckbecken
4th October 2006, 06:34 PM
@Sess

You´ve got any further with keyboard drivers?

If you made it, i would buy it. Caus i need it. Got it?

Sess
4th October 2006, 10:45 PM
I've written the main code to check and remove the messages, but without the universal keboard registers this thing isn't going anywhere, I've got to compare the register status in order to determine whether or not to discard teh message. So if you'd like to help, get me the asm registers and addresses for the universal keyboard. :)

steckbecken
5th October 2006, 03:07 PM
What does these addresses look like? Is it something like:

0x31 for 1
0x32 for 2
0x33 for 3
...
0x41 for a
0x42 for b

etc.

steckbecken
8th October 2006, 07:49 PM
Tock tock...

What´s going on here?

Sess
10th October 2006, 03:36 AM
yea, but I need the hex address of the actual keyboard registers, so I can probe it FOR the keys. If I could just read the keyboard, I could easily figure out what each keycode is, by writing a quick util that constantly displays the content of the keyboard register and writing them down.

John Ericson
10th October 2006, 05:15 AM
perhaps they've done something similar in the linux port?

heidy
1st November 2006, 06:34 AM
What's the progress on the driver?

Yubastard
29th December 2006, 05:50 PM
man you rock!! you stil doing tht thing? pocke snes is already working on the HTC Universal and it would be good to have this driver. anyway I can help? did you find what you where looking for?

Sess
21st January 2007, 07:58 AM
Im sorry for the lack of updates, I've completely stopped working on the proeject as I was never able to get the key codes I needed. Im willing to share my source with anyone who wants to continue the project (seriously), but have since purchased a psp for my classic portable gaming needs. If anyone gets the information I requested, I will finish the app.

r3bel
21st January 2007, 07:26 PM
have you asked htc? :¬D lol

seriously, though, maybe the rom builders can supply you with a copy of the existing keyboard driver that you can engineer.

jas_pik
22nd January 2007, 10:31 AM
Interesting - very easy SIP( Soft Input Panel) - you can find http://sala.sallala.hu/pda/blimkeys/blimkeys_en.html
Working on PPC2002/2003 and WM5/WM6 in both modes QVGA/VGA.
Easy to edit - customize to your needs .
You need chacter finder - is here: http://sala.sallala.hu/webmester/charcodefinder/charcodefinder.php

Yubastard
24th January 2007, 06:05 PM
Im sorry for the lack of updates, I've completely stopped working on the proeject as I was never able to get the key codes I needed. Im willing to share my source with anyone who wants to continue the project (seriously), but have since purchased a psp for my classic portable gaming needs. If anyone gets the information I requested, I will finish the app.

from vijay's website. I don't know if it helps...

Have a look here for some further explanation of Virtual Key codes:

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wceddk/html/wceddkVirtual_Key_Codes.asp

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winui/WinUI/WindowsUserInterface/UserInput/VirtualKeyCodes.asp
VK_LBUTTON 1
VK_RBUTTON 2
VK_CANCEL 3
VK_MBUTTON 4
VK_XBUTTON1 5
VK_XBUTTON2 6
VK_BACK 8
VK_TAB 9
VK_CLEAR 12
VK_RETURN 13
VK_SHIFT 16
VK_CONTROL 17
VK_CTRL 17
VK_MENU 18
VK_PAUSE 19
VK_CAPITAL 20
VK_HANGEUL 21
VK_HANGUL 21
VK_KANA 21
VK_JUNJA 23
VK_FINAL 24
VK_HANJA 25
VK_KANJI 25
VK_ESCAPE 27
VK_CONVERT 28
VK_NONCONVERT 29
VK_ACCEPT 30
VK_MODECHANGE 31
VK_SPACE 32
VK_PRIOR 33
VK_NEXT 34
VK_END 35
VK_HOME 36
VK_LEFT 37
VK_UP 38
VK_RIGHT 39
VK_DOWN 40
VK_SELECT 41
VK_PRINT 42
VK_EXECUTE 43
VK_SNAPSHOT 44
VK_INSERT 45
VK_DELETE 46
VK_HELP 47
VK_0 48
VK_1 49
VK_2 50
VK_3 51
VK_4 52
VK_5 53
VK_6 54
VK_7 55
VK_8 56
VK_9 57
VK_A 65
VK_B 66
VK_C 67
VK_D 68
VK_E 69
VK_F 70
VK_G 71
VK_H 72
VK_I 73
VK_J 74
VK_K 75
VK_L 76
VK_M 77
VK_N 78
VK_O 79
VK_P 80
VK_Q 81
VK_R 82
VK_S 83
VK_T 84
VK_U 85
VK_V 86
VK_W 87
VK_X 88
VK_Y 89
VK_Z 90
VK_LWIN 91
VK_RWIN 92
VK_APPS 93
VK_SLEEP 95
VK_NUMPAD0 96
VK_NUMPAD1 97
VK_NUMPAD2 98
VK_NUMPAD3 99
VK_NUMPAD4 100
VK_NUMPAD5 101
VK_NUMPAD6 102
VK_NUMPAD7 103
VK_NUMPAD8 104
VK_NUMPAD9 105
VK_MULTIPLY 106
VK_ADD 107
VK_SEPARATOR 108
VK_SUBTRACT 109
VK_DECIMAL 110
VK_DIVIDE 111
VK_F1 112
VK_F2 113
VK_F3 (green key) 114
VK_F4 115
VK_F5 116
VK_F6 117
VK_F7 118
VK_F8 119
VK_F9 120
VK_F10 121
VK_F11 122
VK_F12 123
VK_F13 124
VK_F14 125
VK_F15 126
VK_F16 127
VK_F17 128
VK_F18 129
VK_F19 130
VK_F20 131
VK_F21 132
VK_F22 133
VK_F23 134
VK_F24 135
VK_NUMLOCK 144
VK_SCROLL 145
VK_OEM_FJ_JISHO 146
VK_OEM_NEC_EQUAL 146
VK_OEM_FJ_MASSHOU 147
VK_OEM_FJ_TOUROKU 148
VK_OEM_FJ_LOYA 149
VK_OEM_FJ_ROYA 150
VK_LSHIFT 160
VK_RSHIFT 161
VK_LCONTROL 162
VK_RCONTROL 163
VK_LMENU 164
VK_RMENU 165
VK_BROWSER_BACK 166
VK_BROWSER_FORWARD 167
VK_BROWSER_REFRESH 168
VK_BROWSER_STOP 169
VK_BROWSER_SEARCH 170
VK_BROWSER_FAVORITES 171
VK_BROWSER_HOME 172
VK_VOLUME_MUTE 173
VK_VOLUME_DOWN 174
VK_VOLUME_UP 175
VK_MEDIA_NEXT_TRACK 176
VK_MEDIA_PREV_TRACK 177
VK_MEDIA_STOP 178
VK_MEDIA_PLAY_PAUSE 179
VK_LAUNCH_MAIL 180
VK_LAUNCH_MEDIA_SELECT 181
VK_LAUNCH_APP1 182
VK_LAUNCH_APP2 183
VK_OEM_1 186
VK_OEM_PLUS 187
VK_OEM_COMMA 188
VK_OEM_MINUS 189
VK_OEM_PERIOD 190
VK_OEM_2 191
VK_OEM_3 192
VK_OEM_4 219
VK_OEM_5 220
VK_OEM_6 221
VK_OEM_7 222
VK_OFF (power off) 223
VK_OEM_AX 225
VK_OEM_102 226
VK_ICO_HELP 227
VK_ICO_00 228
VK_PROCESSKEY 229
VK_ICO_CLEAR 230
VK_PACKET 231
VK_OEM_RESET 233
VK_OEM_JUMP 234
VK_OEM_PA1 235
VK_OEM_PA2 236
VK_OEM_PA3 237
VK_OEM_WSCTRL 238
VK_OEM_CUSEL 239
VK_DBE_ALPHANUMERIC 240
VK_OEM_ATTN 240
VK_DBE_KATAKANA 241
VK_OEM_FINISH 241
VK_DBE_HIRAGANA 242
VK_OEM_COPY 242
VK_DBE_SBCSCHAR 243
VK_OEM_AUTO 243
VK_DBE_DBCSCHAR 244
VK_OEM_ENLW 244
VK_DBE_ROMAN 245
VK_OEM_BACKTAB 245
VK_ATTN 246
VK_DBE_NOROMAN 246
VK_CRSEL 247
VK_DBE_ENTERWORDREGISTERMODE 247
VK_DBE_ENTERIMECONFIGMODE 248
VK_EXSEL 248
VK_DBE_FLUSHSTRING 249
VK_EREOF 249
VK_DBE_CODEINPUT 250
VK_PLAY 250
VK_DBE_NOCODEINPUT 251
VK_ZOOM 251
VK_DBE_DETERMINESTRING 252
VK_NONAME 252
VK_DBE_ENTERDLGCONVERSIONMODE 253
VK_PA1 253
VK_OEM_CLEAR 254

if this still doesn't work, can you tell me exactly what I need in order to complete the project? I have never programed a driver before but I have some coding skillz, maybe I can do it. :)

franklinromeo
27th January 2007, 08:46 PM
Hello if any1 is still working on the keyboard I can provide the keys. I've figured out that if you''re setting your buttons for the snes emulator you see the specific codes such as
Up-0x26
left-0x25

and so on.

Yubastard
28th January 2007, 10:04 PM
Hello if any1 is still working on the keyboard I can provide the keys. I've figured out that if you''re setting your buttons for the snes emulator you see the specific codes such as
Up-0x26
left-0x25

and so on.

that is oh-so-awesome. wonder if the author of this thread will tell us exactly how the codes look like. or if these are the ones, or the ones I posted from vj's website.

please answer, we know you don't have the time, or necessity, but maybe we can help.:)

r3bel
28th January 2007, 10:14 PM
that is oh-so-awesome. wonder if the author of this thread will tell us exactly how the codes look like. or if these are the ones, or the ones I posted from vj's website.

please answer, we know you don't have the time, or necessity, but maybe we can help.:)
i don't think that's what he's after.

he'll need someting that looks like a memory address, not a value (i think)

Develo
11th March 2007, 08:45 AM
As far as i understood, yes, he needs the address for the keyboard registers, not the keyboard key values sent when a key is pressed.

Anyone now where he keyboard controller resides? (what chip on the HTC I mean). Maybe a datasheet can be found...

D.

Develo
15th March 2007, 07:44 AM
Just realized this thread was started some time ago, and the last post was done a couple of months ago. Has there been any progress? Detecting multiple keystrokes simultanously would be pretty cool, and not just for the console emulators...

D.

r3bel
15th March 2007, 08:07 PM
i think it's a very sad dead-end. :¬(

Develo
17th March 2007, 04:18 PM
Anyone have any ideas about how to do this? any thoughts at all, pointers, hints or whatever?

I'd be willing to look into this myself, eventually, but I don't even know where to start...

Develo
16th April 2007, 06:46 AM
Nobody knows anything about this?? Can I get at least a pointer on how to write a driver for WM5/6?

Dev.

dizzy33
16th May 2007, 11:08 AM
Making a new keyboard driver would be really great ... I just bought my universal, very disapointed about the multiple key stroke problem, just thinking about coming back to my good old X50v !

If anyone could be able to write a new driver, I would be ready (like many other users) to donate for it !

MrMmmkay
30th September 2008, 08:51 AM
Hi!

This Thread is now over a year old, is it in the meantime possible to write a new driver for the Uni? Or is it possible da take a Driver from another Device and change it so that it works on the Uni?

MrMmmkay

cr2
30th September 2008, 12:15 PM
Or is it possible da take a Driver from another Device and change it so that it works on the Uni?


The current driver is in no way universal-specific, it's called pxa27x_keyboard and is used by many other devices.