Hacking [RELEASE] drxtool - gamepad+drh firmware hacking utility

WulfyStylez

SALT/Bemani Princess
OP
Member
Joined
Nov 3, 2013
Messages
1,149
Trophies
0
XP
2,877
Country
United States
Hey! I finally got around to rewriting this and making it more useful. Hopefully this will inspire and assist with some useful hacks and research. From the readme:

drxtool enables extraction, modification, and rebuilding of drc (gamepad) and drh (host) firmware binaries, including actual firmware (e.g. drc_fw.bin, drh_fw.bin) as well as language data (lang_00.bin, etc.) this subsequently allows for firmware RE and patching, switching out graphics, enabling debug modes, etc.
drop a binary onto drxtool to extract it to [filename]_extracted. it will be split into its components, including separate sections for firmwares. language files are a big blob since their layout is determined per-firmware-version.
drop an extracted folder onto drxtool to rebuild it to [foldername].bin.
in both cases, drxtool can be invoked from command line/terminal for additional debug output.

this has been tested and is working on all DRC, DRH, and language data dating back to the very first external beta builds for near-final gamepad hardware (v16, though v15 likely ran on this hardware as well). earlier hardware uses a different update format (the hw has all likely been destroyed by now.)

to flash binaries with ios-level hax, try bumping up the first big-endian u32 in blob_header.bin by 1, as well as bumping up the version in app.xml. updating VER_.bin isn't necessary as the gamepad and drh don't care what version they're on, only IOS.
other update methods include potentially using libdrc to push an update directly to the gamepad (strip the first 0x10 as this is a big-endian header used by IOS) or by writing the payload directly to the serial eeprom (strip the first 0x10+0x1000+0x4000), which is useful for unbricking.

good luck, and try not to brick!

changelog:
2.0 - 12/14/2016:
- initial public release
1.0 - 08/10/2016:
- it lives!


downloads (v2.0):
MEDIAFIRE
MEGA
 

Attachments

  • drxtool-v2.0.zip
    31.2 KB · Views: 960
Last edited by WulfyStylez, , Reason: minor clarification

asper

Well-Known Member
Member
Joined
May 14, 2010
Messages
949
Trophies
1
XP
2,109
Country
United States
The files your tool (good tool!) supports are updates binaries.

In the full DRC firmware (32MBs - you can obtain it by hardware-dumping) 1st release, with no updates (so i suppose v5128):
ERR starts at: 0x1D2D8E
IMG starts at: 0x245830
INDX starts at: 0x100000
LVC starts at: 0x100070
UMI starts at: 0x23EEEE
VER starts at: 0x100070
WIFI starts at: 0x195AD8

The section in which they are located in the full firmware is 0x0100000 (8.388.608 bytes).
 
Last edited by asper,

WulfyStylez

SALT/Bemani Princess
OP
Member
Joined
Nov 3, 2013
Messages
1,149
Trophies
0
XP
2,877
Country
United States
Yep, modifications to allow stuff like region unlocking/changing and enabling the DK Menu (not that you need it on retail, but...) are possible now. I'd check out libdrc's RE docs for a crash course on firmware format and gamepad internals, since there's quite a lot going on.
As an example, you can tear into the main ARM processor's firmware by loading LVC_.bin as ARM little-endian at address 0x0 in your tool of choice.

EDIT: I do have plans to release something allowing people to change boot screens too, as was demonstrated in the past. At the moment that tool's still in proof-of-concept state (haven't touched it since I made that video) and needs a rework, so expect to see it eventually.
 
Last edited by WulfyStylez,

xtheman

Well-Known Member
Member
Joined
Jan 28, 2016
Messages
5,837
Trophies
0
Location
???
XP
3,840
Country
United States
  • Like
Reactions: AboodXD

Antonio Ricardo

Well-Known Member
Member
Joined
Apr 29, 2013
Messages
359
Trophies
0
Age
39
Location
Rio de Janeiro
XP
512
Country
Brazil
I think most dificult is the touch screen gamepad, i dont know if a gamepad stream on pc would be good.
@WulfyStylez we can control a game with Pro Controller and use a touch screen gamepad on other device?
Because Gamepad will not last forever, one day will broke. @Maschell is doing a great work with HID but we have to look a way to substitute touch screen, i dont know if this is possible.
 
Last edited by Antonio Ricardo,
  • Like
Reactions: TotalInsanity4

driverdis

I am Justice
Member
Joined
Sep 21, 2011
Messages
2,867
Trophies
2
Age
32
Location
1.048596β
XP
2,849
Country
United States
It isn't It still needs to be the same region as the base console to connect so JPN drc won't link to USA wii u.

I thought the problem was that it could link up and work normally until an update tries to apply, which will fail as the gamepad region does not match the console region.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    ZeroT21 @ ZeroT21: seems like every kid these days +2