Please remember to add a category to the bottom of each page that you create.
See categories help for further details, but most will probably be [[Category:HTC ModelName]].

HTC Raphael/Keyboard Codes

From XDA-Developers
Jump to: navigation, search

Read register 10 to get key code:

000.536 7803d720: str    r3, [[r5]]       # b2300000 = 000001ce <-- Write to KSC chip
000.536 7803d790: str    r3, [[r5]]       # b2300000 = 00000010 <-- Set reg
000.536 7803d878: str    r3, [[r5]]       # b2300000 = 000001cf <-- Read that reg from KSC chip
000.536 7803d940: streq  r2, [[r5]]       # b2300000 = 00000200
000.536 7803d944: ldr    r3, [[r3]]       # b230000c = 00000033 <-- Keycode
000.536 7803d944: ldr    r3, [[r3]]       # b230000c = 00000000

Reg 11 gets some sort of flag (generally 0x40, but sometimes 0x00).


Keymap

Empty column means the scancode for that device matches RAPH800. "??" in column means key for that scancode is not yet known.

Scancode RAPH800 RAPH110 RAPH100/RAPH120
01 TAB  ?? CAPS
02 q TAB
03 w q
04 e w
05 r e
06 t r
07 y t
08 1 WIN 1
0b u y
0c i u
0d o i
0e p o
0f BKSP p p
10 ** CAPS - =
11 a a
12 4  ! 4
15 s s
16 d d
17 f f
18 g g
19 h h
1a j j
1b k k
1c 7 ' 7
1f l l
Scancode RAPH800 RAPH110 RAPH100/RAPH120
20 ENTER ENTER
21 ** LSHIFT  ?? LSHIFT
22 z z
23 x x
24 c c
25 v v
26 9  ; 9
29 b b
2a n n
2b m m
2c ** RSHIFT  ?? RSHIFT
2d UP UP
2e 0  : 0
2f CTRL OK CTRL
30 2 @ 2
33 ** Fn Calendar Fn
34 TXT Contacts SMS/MMS
35 - / -
36 SYM AT&T / Data SYM
37 SPACE SPACE
38 , ,
39 . .
3a 5 ( 5
3d RIGHT RIGHT
3e DOWN DOWN
3f LEFT LEFT
Scancode RAPH800 RAPH110 RAPH100/RAPH120
40 = BKSP BKSP
41 /  ? /
42 3 _ 3
43 6 ) 6
44 8 " 8
47 EMAIL EMAIL

57 keys


Special keys.. Not positive on what this is doing.. the LEDs are probably controlled by the cc addr, so maybe these are changing the functionality of the keyboard.

On RAPH120, pressing "caps" toggles the Fn LED.

Caps

  • Turning on: ce,13,16 followed by ce,13,12
  • Turning off: ce,13,12 and ce,13,16

Shift

  • First press is temporary "caps": ce,13,16 and ce,13,12
  • Second press locks shift (different from caps lock?): ce,13,12 and ce,13,12
  • Third press clears: ce,13,12 and ce,13,16

Fn

  • First press: ce,13,14 and ce,13,14
  • Second press: ce,13,14 and ce,13,14 again ?
  • Third press: ce,13,16 and ce,13,16

eg:

000.608 7803dad4: str    r3, [[r6]]       # b2300000 =000001ce
000.608 7803db0c: str    r3, [[r6]]       # b2300000 =00000013
000.608 7803db48: str    r3, [[r6]]       # b2300000 =00000216
000.608 7803dad4: str    r3, [[r6]]       # b2300000 =000001ce
000.608 7803db0c: str    r3, [[r6]]       # b2300000 =00000013
000.608 7803db48: str    r3, [[r6]]       # b2300000 =00000216

Back to Raphael Main Page or Back to Raphael Research