{"repo":"ran-j/PS2Recomp","free":true,"listed":false,"github":"https://github.com/ran-j/PS2Recomp","clone":"git clone https://github.com/ran-j/PS2Recomp.git","description":"Playstation 2 Static Recompiler & Runtime Tool to make native PC ports","language":"C++","stars":3178,"topics":["ps2","recompile","reverse-engineering","tool","static-recompilation"],"license":"GPL-3.0","category":"security-tools","readme_excerpt":"PS2Recomp: PlayStation 2 Static Recompiler (Experimental) Also check our WIKI This project statically recompiles PS2 ELF binaries into C++ and provides a runtime to execute the generated code. Modules ps2xAnalyzer : scans ELF/functions and writes TOML config ( stubs , skip , instruction patches). ps2xRecomp : reads TOML + ELF, decodes R5900 instructions, and generates C++ output. ps2xRuntime : hosts memory, function registration, syscall dispatch, and hardware stubs. ps2xIOP : portable, instance-owned IOP HLE services, game profiles, and the C plugin ABI. Features Translates MIPS R5900 instructions to C++ code PS2-specific MMI and VU0 macro support. Single-file or multi-file output. Configurable stubs, skips, and instruction patches. Instruction-driven syscall handling. How It Works PS2Recomp works by: Parsing a PS2 ELF file to extract functions, symbols, and relocations Decoding the MIPS R5900 instructions in each function Translating those instructions to equivalent C++ code Generating a runtime that can execute the recompiled code The translated code is very literal, with each MIPS instruction mapping to a C++ operation. For example, addiu $r4, $r4, 0x20 becomes ctx- r4 = ADD32(ctx- r4, 0X20); . Current Behavior stubs entries generate wrappers that call known runtime syscall/stub handlers by name. stubs also supports address bindings with handler@0xADDRESS for stripped games (for example sceCdRead@0x00123456 ). Address bindings also support generic return handlers for tria","default_branch":null,"files":null,"tree":[],"storefront":"/r/ran-j","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/ran-j/PS2Recomp/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}