Progress bar powered by decomp.dev
Dogcomp: A Dog's Life Decompilation Project. Currently working on the SCES_512.48 (PAL) release.
The setup can be built on Linux or Windows (through WSL). Follow the instructions below to set up the build environment.
Clone the repo to your local machine:
git clone https://github.com/IWILLCRAFT-M0d/dogcomp && cd dogcompExtract the file SCES_512.48 from your game copy and put it into the elf folder.
If you don't have Python 3.9 or higher, install it:
sudo apt-get install python3 python3-pipCreate a Python environment for the project:
python3 -m venv .venvActivate the environment:
source .venv/bin/activateThen install the required Python packages:
pip3 install -U -r requirements.txtInstall the MIPS assembler:
sudo apt-get install binutils-mips-linux-gnuSetup the compiler using the provided script:
./tools/setup_prodg_linux.shRun the configure script and the build with ninja:
python3 configure.py && ninjaThe default behavior is to split the binary using Splat, build the object files (inserting the split assembly in place of non-matching functions), link the matching executable, and confirm that the checksum of the built executable matches the original.
You can change a little the behavior by passing any of the following arguments to configure.py:
--clean/-c- Delete any existing build files and configure the project.--clean-only/-C- Delete any existing build files without configuring the project.--skip-checksum/-s- Skip the checksum verification step.--objdiff/-diff- Builds target object files for comparison with Objdiff and generates an Objdiff configuration file.