Skip to content

Commit

Permalink
Fix Pro S RGB FW patch
Browse files Browse the repository at this point in the history
Previously, pok3rtool would only dump version string.

This patch has been tested on Pro S RGB with modified Vortex Core
bootloader. While capable of dumping bootloader, the keyboard resets a
few times after being plugged into a computer (which can interrupt dump
process) but will eventually settle into a working state.

Additional notes:
Vortex Core bootloader with few minor changes can help Pro S RGB recover
from bricks. Like with many similar boards, this bootloader checks a
region in the firmware for a magic string and boots into firmware if
found.

Core's bootloader checks for 0x03045040 @ 0x3bf8 and fails to boot into
Pro S RGB FW. Changing references to 0x3bf8 to 0x4ff8 and the magic
string to 0x03040000 allows the bootloader to jump to FW.
  • Loading branch information
hansemro committed Sep 9, 2022
1 parent 4d53fcd commit d5290ee
Show file tree
Hide file tree
Showing 2 changed files with 3 additions and 12 deletions.
Binary file modified binaries/Pro_S_RGB/ProSRGB_fw_patched.bin
Binary file not shown.
15 changes: 3 additions & 12 deletions binaries/Pro_S_RGB/patch.txt
Original file line number Diff line number Diff line change
Expand Up @@ -3,21 +3,12 @@ Cooler Master MasterKeys Pro S RGB firmware patch
Patch based off of Igor Calabria's patch for Pro M White:
https://github.com/pok3r-custom/pok3rtool/issues/6#issuecomment-592815597

FW offset 0x3400 (?)
FW offset 0x3400

67fa: ff 28 cmp r0,#0xff
67fc: 0c d1 bne 0x00006818
67fe: 68 68 ldr r0,[r5,#0x4]
67fc: 04 d1 bne 0x00006808
67fe: 60 68 ldr r0,[r4,#0x4]
6800: 3c 21 movs r1,#0x3c
6802: 31 e0 b 0x00006868
6804: 00 bf nop
6806: 00 bf nop
6808: 00 bf nop
680a: 00 bf nop
680c: 00 bf nop
680e: 00 bf nop
6810: 00 bf nop
6812: 00 bf nop
6814: 00 bf nop
6816: 00 bf nop

0 comments on commit d5290ee

Please sign in to comment.