# PS2Recomp

> Experimental static recompiler that translates MIPS R5900 code from PlayStation 2 ELF executables into C++ and links it with a bundled runtime. ps2xAnalyzer or a Ghidra export script produces a per-game TOML of functions, stubs, skips and instruction patches; ps2xRecomp emits a literal instruction-by-instruction translation; ps2xRuntime and ps2xIOP supply guest memory, syscall dispatch, IOP module execution with HLE fallbacks and partial, largely stubbed GS/VU hardware. Output is not decompiled source, and getting a game to run remains per-game porting work.

- Type: Tool
- Targets: Binary · Game
- Category: Game analysis tools
- Relationship: Foundation tool
- Sources reviewed: 2026-10-18
- Added to the catalog: 2026-10-19
- Original resource: <https://github.com/ran-j/PS2Recomp>
- Primary source: <https://github.com/ran-j/PS2Recomp/blob/eb8688b2fd191129f103a39543002c005b33409c/README.md>
- Catalog page: <https://awesomerea.org/resources/ps2recomp/>
- Record JSON: <https://awesomerea.org/resources/ps2recomp/record.json>
- Chinese version: [简体中文](https://awesomerea.org/zh/resources/ps2recomp/index.md)

## Requirements & limits

- Building needs CMake 3.20+ and a C++20 compiler; the README says it is tested mainly with MSVC, and some vector paths need SSE4/AVX host support. CMake fetches ELFIO, toml11, fmt, libdwarf and raylib at configure time, plus Dear ImGui when the debug UI is enabled. GitHub lists five source-only prereleases, v0.0 to v0.4 (the latest from 2026-04-05), with no binaries attached; the reviewed main commit (2026-10-14) is 36 commits after v0.4.
- The user supplies the game ELF; the project ships no game code, and its project-description guidance names the original release as one the user must own. The preferred workflow exports functions from Ghidra with the bundled ExportPS2Functions.java script, while ps2_analyzer suits ELFs with debug symbols. Stub address bindings and game overrides target one exact ELF build and are not portable across games, regions or builds.
- The README lists very poor VU and GS performance and partial, often stubbed hardware emulation as limitations. The tree also holds Android and PS Vita build directories and a ps2xStudio front end.
- GPL-3.0; fetched dependencies keep their own licenses, and the README cites PCSX2 as a runtime reference.

## Primary sources

1. <https://github.com/ran-j/PS2Recomp/blob/eb8688b2fd191129f103a39543002c005b33409c/README.md>
2. <https://github.com/ran-j/PS2Recomp/blob/eb8688b2fd191129f103a39543002c005b33409c/LICENSE>
3. <https://github.com/ran-j/PS2Recomp/blob/eb8688b2fd191129f103a39543002c005b33409c/ps2xRecomp/CMakeLists.txt>
4. <https://github.com/ran-j/PS2Recomp/blob/eb8688b2fd191129f103a39543002c005b33409c/ps2xRuntime/CMakeLists.txt>
5. <https://github.com/ran-j/PS2Recomp/blob/eb8688b2fd191129f103a39543002c005b33409c/ps2xRecomp/tools/ghidra/ExportPS2Functions.java>
6. <https://github.com/ran-j/PS2Recomp/releases/tag/v0.4>
7. <https://github.com/ran-j/PS2Recomp/compare/v0.4...eb8688b2fd191129f103a39543002c005b33409c>

## More in Games

- [Xenosaga I Decomp Compatibility Kit](https://awesomerea.org/resources/decomp-compat-kit/index.md) · Tool
- [GB Recompiled](https://awesomerea.org/resources/gb-recompiled/index.md) · Tool
- [dtk-template](https://awesomerea.org/resources/dtk-template/index.md) · Tool
- [N64ModernRuntime](https://awesomerea.org/resources/n64modernruntime/index.md) · Tool
- [REDscript](https://awesomerea.org/resources/redscript/index.md) · Tool
- [Spice86](https://awesomerea.org/resources/spice86/index.md) · Tool

## About this entry

The description was reviewed against primary sources.
Original editorial content: MIT. Linked projects, papers and assets retain their own rights and licenses.
