Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

Drxtool Wii U

From GameBrew
Revision as of 06:31, 25 April 2024 by HydeWing (talk | contribs) (Created page with "{{Infobox WiiU Homebrews |title=drxtool |image=drxtoolwiiu.png |description=A gamepad + drh firmware modification tool by WulfyStylez/SALT. |author=WulfyStylez/SALT |lastupdated=2016/12/14 |format=exe |type=PC Utilities |version=2.0 |license=Mixed |download=https://dlhb.gamebrew.org/wiiuhomebrews/drxtoolwiiu.zip |website=https://gbatemp.net/threads/release-drxtool-gamepad-drh-firmware-hacking-utility.453143/ |source=https://gbatemp.net/threads/rel...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
drxtool
Drxtoolwiiu.png
General
AuthorWulfyStylez/SALT
TypePC Utilities
Version2.0
LicenseMixed
Last Updated2016/12/14
Links
Download
Website
Source

drxtool allows you to extract, modify, and rebuild 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.

User guide

Extraction:

  • Drag and drop a binary onto drxtool to extract it to [filename]_extracted.
  • The extracted content will be split into its components, including separate sections for firmwares.
  • Language files are consolidated due to varying layouts per firmware version.

Rebuilding:

  • Drop an extracted folder onto drxtool to rebuild it into [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.)

For flashing binaries with ios-level hax, adjust the first big-endian u32 in blob_header.bin by incrementing it by 1. Additionally, modify the version in app.xml. Updating VER_.bin is unnecessary, as the gamepad and drh are indifferent to their versions; only IOS matters.

Other update methods include potentially using libdrc to push an update directly to the gamepad (remove the first 0x10, a big-endian header used by IOS), or writing the payload directly to the serial EEPROM (remove the first 0x10+0x1000+0x4000), which is useful for unbricking.

Changelog

v2.0 2016/12/14

  • Initial public release.

v1.0 2016/08/10

  • It lives!

External links

Advertising: