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.
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
- Run rpcs3.
- Click the
Utilities
menu, then the Decrypt PS3 Binaries
menu item.
- Select
eboot.bin
from Demon's Souls directory and click open.
- rpcs3 will create an
eboot.elf
file next to eboot.bin
, this is the decrypted file.
Building From Release
- Download the latest release for your release (not the source ZIP!).
- Place a decrypted copy of Demon's Souls
eboot.bin
at boot.elf
.
- Run
build.bat
, if all goes well debug.elf
will be created.
- 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
- Open
tools\Tools.bin
and build the entire solution with the Debug configuration.
- 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
.
- 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
.
- 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.