weirdbeardgame dd559960a5
Upload Objdiff Progress Report Artifacts / upload (map[game_id:SLUS_210.07 language:us]) (push) Canceled after 0s
Add Cdvd, need to fix reloactions
2026-09-17 06:55:39 -05:00
2026-09-17 06:55:39 -05:00
2026-08-21 02:52:11 -05:00
2026-09-17 06:55:39 -05:00
2026-08-10 19:36:56 -05:00
2026-08-21 23:07:33 -05:00
2026-08-21 06:30:59 -05:00
2026-07-12 15:06:31 -05:00
2026-08-21 06:30:59 -05:00
2026-08-10 19:10:03 -05:00

Mulbery (桑)

What is Mulberry?

Mulberry is a project that aims to have a matching source decompilation of the PS2 game Kuon. Once we have a matching decompiled rom we want to port the game to modern hardware.

Disclaimer

No game assets are hosted on this repository. You must provide them yourself, copying them from a legal copy.

Getting Started & Building

Linux (x86-64) or macOS (aarch64) are required in order to build this project. You'll also need at least python 3.8 to run any command. Your operating system should come with python3 already installed. If not, please follow your distribution's instructions to install it. Python is a mandatory dependency, as many core tools are written in python. On Ubuntu, if necessary, python3 can be installed with the following command:

sudo apt install python3-full

Install dependencies (Ubuntu)

sudo apt install make python3-venv

Install decompals binutils

This project requires a custom PS2-specific version of binutils to assemble the extracted MIPS assembly. The system-provided binutils-mips-linux-gnu package may not work correctly with PS2 assembly, so manual installation is required.

On Linux, download the binutils-mips-ps2-decompals-linux-x86-64.tar.gz (v0.10) package, or on macOS aarch64 binutils-mips-ps2-decompals-macos-arm64.tar.gz (v0.10).

Extract the archive to a location of your choice, for example:

sudo mkdir -p /opt/binutils-mips-ps2-decompals
sudo tar -xzf binutils-mips-ps2-decompals-linux-x86-64.tar.gz -C /opt/binutils-mips-ps2-decompals

Then add the bin directory to your PATH environment variable:

export PATH="/opt/binutils-mips-ps2-decompals/:$PATH"

To make this change persistent, add the line above to your shell configuration file (for example ~/.bashrc, ~/.zshrc, or equivalent), then restart your terminal or reload your shell.

Verify the installation by running:

mips-ps2-decompals-as --version

If the installation was successful, the command should print the assembler version information.

Setup a Virtual Environment for Python

Python's virtual environments are the preferred way to use this software, as you may not be allowed to install packages globally.

python3 -m venv .venv
source .venv/bin/activate
python3 -m pip install -r requirements.txt

Copy assets from game DVD/ISO

The main executable is needed in order to perform the decompilation.

Build Instructions

To do a basic build run

make clean
make configure
make build

In that order to ensure a clean building environment each time

Command Help

To have a list all available commands, run make without targets:

make

Decompiling a TU

  1. Add the decompiled code to the TU's c file in src/
  2. Update config/kuon.yaml:
    1. Replace asm with c for the TU you are decompiling
    2. Add a leading dot (.) to the type (e.g., rodata -> .rodata) of each subsection that belongs to the TU
  3. Reconfigure the project
  4. Build the project
S
Description
No description provided
Readme MIT
13 MiB
Languages
C 86.5%
Python 12.8%
Makefile 0.7%