Skip to content

gibbed/DemonsSoulsDebug

Repository files navigation

Demon's Souls Debug Patch

This is some code to patch Demon's Souls eboot.bin with additional functionality, such as debug menus.

Like what I've done? Consider supporting me on Patreon.

Build status

What it achieves

  • Enables the title debug menu.
  • Enables the runtime debug menu (press Select to toggle).
  • Increases memory arena sizes so the Northern Limit area files can be loaded.

Requires

  • LLVM, if building from source.
  • A retail copy of Demon's Souls. The following releases are supported:
    • US 1.00 (BLUS30443)
    • JP 1.04 (BCJS30022)
    • Asia v1.04 (BCAS20071)
    • Support for additional regional releases to come!

Instructions

Obtain Decrypted Executable

Obtain Decrypted Exectuable via RPCS3

  1. Run rpcs3.
  2. Click the Utilities menu, then the Decrypt PS3 Binaries menu item.
  3. Select eboot.bin from Demon's Souls directory and click open.
  4. rpcs3 will create an eboot.elf file next to eboot.bin, this is the decrypted file.

Building From Release

  1. Download the latest release for your release (not the source ZIP!).
  2. Place a decrypted copy of Demon's Souls eboot.bin at boot.elf.
  3. Run build.bat, if all goes well debug.elf will be created.
  4. Run it on a real PS3 or otherwise.
    • Replace the original EBOOT.BIN with debug.elf in the game directory.
      • Will probably require turning it into a SELF for running it on a real PS3.
    • Or just place it alongside EBOOT.BIN.

Building From Source

  1. Open tools\Tools.bin and build the entire solution with the Debug configuration.
  2. Place a decrypted copy of Demon's Souls eboot.bin in the appropriate bin directory.
    • For example, US 1.00 you would put it at bin\US_v100\boot.elf.
  3. Run the build .bat for your release. If all goes well debug.elf will be created in the appropriate bin directory.
    • For example, US 1.00 would be build_US_v100.bat.
  4. Run it on a real PS3 or otherwise.
    • Replace the original EBOOT.BIN with debug.elf in the game directory.
      • Will probably require turning it into a SELF for running it on a real PS3.
    • Or just place it alongside EBOOT.BIN.

TODO

  • Build scripts for *nix.
  • Porting patches to additional regional releases.
    • EU v1.00 (BLES00932)