Quote:
Originally Posted by Mark Nord
As you can see at .text:0000CE00 and .text:0000CE28 "%d" is given as parameter to _sprintf, while in the corresponding PRS505 code, the second LDR points to "kHold%d".
So the necessary code for detection of a number-key-hold event is there, but it will trigger the generation of a simple key press event
With Intel-Opcodes I would try to find a "free" string-resource replace it with "kHold%d",0 and point at .text:0000CE28 to this.
But with ARM-Opcodes I'm not sure if this can be done.
|
Try it, "%d" replaced with "kHold%d" at 0000CE28
[UPDATE]
Bad... Unfortunately both were replaced... 0000CE00 and 0000CE28
.text:0000CE00 LDR R3, =(off_1ABB4 - 0x1A7B8)
.text:0000CE04 LDR R1, [R10,R3] ; "kHold%d"
.text:0000CE08 MOV R2, R6
.text:0000CE0C BL .sprintf
.text:0000CE10 MOV R0, R5
.text:0000CE14 MOV R1, SP
.text:0000CE18 BL SubcpuThreadPostDigitEvent
.text:0000CE1C B loc_CE98
.text:0000CE20 ; ---------------------------------------------------------------------------
.text:0000CE20
.text:0000CE20 loc_CE20 ; CODE XREF: SubcpuThreadPostKeyEvent+F0j
.text:0000CE20 MOV R4, SP
.text:0000CE24 MOV R0, SP ; s
.text:0000CE28 LDR R3, =(off_1ABB4 - 0x1A7B8)
.text:0000CE2C LDR R1, [R10,R3] ; "kHold%d"
.text:0000CE30 MOV R2, R6
.text:0000CE34 BL .sprintf