Cloned Games

PS2Recomp - Playstation 2 Static Recompiler & Runtime Tool to make native PC Ports

ToolActive

Tooling used for decompilation and recompilation work.

Links, repository & details

About

PS2Recomp is an experimental static recompiler that translates PlayStation 2 ELF binaries into C++ and provides a runtime to execute the generated code. It has four modules: an analyzer, the recompiler for R5900 instructions, a runtime for memory, syscalls and hardware stubs, and an IOP module for running IRX modules.

How it differs from the original

The README notes that performance is very bad for VU and GS, and that hardware emulation is partial with many paths stubbed.

Getting started

For retail or stripped games, export function data from Ghidra, run the recompiler with the resulting TOML config, then build the generated output and link it with the runtime.

Known issues & limitations

  • Performance is very bad for VU and GS.
  • Hardware emulation is partial, and many paths are stubbed.

What you need to run it

Original game files required. The project ships code only; you provide your own copy of the game.

  • A user must own the original release.

Additional notes

Inspiration
The README says the project is inspired by N64Recomp.
Game overrides
Per-game runtime patch modules, called game overrides, can replace function bindings by address for one specific game build.

FAQ

What is PS2Recomp - Playstation 2 Static Recompiler & Runtime Tool to make native PC Ports?
PS2Recomp - Playstation 2 Static Recompiler & Runtime Tool to make native PC Ports is an open-source tool. Tooling used for decompilation and recompilation work.
Do I need the original game files to run PS2Recomp - Playstation 2 Static Recompiler & Runtime Tool to make native PC Ports?
Yes. The project does not include the original game's assets, so you need your own copy.
Share: