AnyPS5

For PC tinkerers: relinks PS5 binaries into native builds, with no emulator in the loop

Tool for automatic PS5 executables porting to Linux and Windows

No video published yet. The write-up below covers what the tool does and how to try it.

Category
Developer tools
Audience
Developers
Language
C++
Licence
GPL-2.0

Published Updated

AnyPS5 is a C++ porting toolchain that rewrites a PS5 game executable into a native Windows or Linux program instead of running it under an emulator. It is for people who are comfortable building a C++ project from source: graphics and systems programmers, reverse-engineering hobbyists, and anyone curious how far a non-emulated port path can actually get. It is not a one-click way to play console games on a PC, and the project's own status page is honest about how much is still missing.

What it does

The repository bundles three pieces that together take a PS5 executable to a running desktop process.

  • A relinker (core/relinker) converts the executable into the target system's native format.
  • Implementations of the PS5's system prx libraries (core/libs/prx) stand in for the console's own libraries and are linked dynamically.
  • A shader recompiler (core/shader/recompiler/Recompiler.cpp) emits Vulkan SPIR-V, validated with SPIRV-Tools when the project is built with ANYPS5_ENABLE_SPIRV_TOOLS.

There is no emulation layer and no separate runtime process sitting underneath the game. Input is handled through SDL: mapped game controllers work, including analog sticks and triggers, and keyboard and mouse bindings can be set in an anyps5-input.ini file, with the format documented in docs/user/INPUT_MAPPING.md.

Two badges in the README track coverage — one for system libraries, one for shaders. The library figure is the share of functions the project has declared so far, not the share of every PS5 system function, so it will move in both directions as the surface grows. Tested titles live in docs/user/COMPATIBILITY.md. The one benchmark the project publishes is its own: Dreaming Sarah, a 2D platformer, at a stable 60 fps on a GTX 1050 Ti with an i5-7500. That is the authors' note in their compatibility material, not an independent measurement, and a 2D platformer is a modest workload.

How it works

The design choice worth understanding is relinking rather than interpreting. An emulator keeps the console's instruction and system semantics alive at runtime; AnyPS5 instead rewrites the binary into something the host loader accepts, then satisfies the imports the game expects with its own reimplementations of console libraries. Shaders get the same treatment one level down — PS5 shader code is recompiled ahead of execution into SPIR-V that a Vulkan driver can take directly.

The error model is blunt on purpose. Any unsupported or unexpected state throws std::runtime_error, the message from what() goes to stderr, and the process terminates. You get a clear failure instead of a silent wrong result, which is the right trade for a project at this stage, but it does mean a game can stop dead on the first unimplemented call.

Getting started

You need Windows or Linux, a Vulkan-capable GPU, and your own copy of the PS5 game files — the channel's summary of the project states those three plainly. The project does not publish memory or VRAM minimums; the GTX 1050 Ti / i5-7500 machine in the README is one configuration someone ran, not a stated floor. The code is C++ under GPL-2.0.

The repository is github.com/boykopovar/AnyPS5. The README points at docs/dev/BUILD.md for build instructions rather than at a prepared download, so plan on compiling it yourself; usage is covered in docs/user/USAGE.md. Before spending an evening on it, read docs/user/COMPATIBILITY.md to see whether anything you own has been tried, and docs/dev/TechnicalDebt.md for what the authors already know is rough.

Nothing in the project charges money: there is no service, no account and no API key in the loop, so the only cost is the hardware you already have and the games you already own. AnyPS5 does not help you obtain game files, and the README's disclaimer frames the work as interoperability and research.

When to use it / when not

The main catch is age. The repository was created in August 2026 and was last pushed in October 2026; the video about it counted roughly 110 open issues at the time, library and shader coverage are both partial, and unsupported paths crash rather than degrade. Four thousand stars in two months is interest, not maturity.

Use it instead of a PS5 emulator when you want the game as an ordinary native process — no interpreter in the path, Vulkan shaders compiled ahead of time, and source you can read and patch. Don't use it if you want to play a big-name title tonight, if you don't have the game files on hand, or if you are not prepared to build a C++ project and read a stack of design docs.

Take this repository seriously if you work on binary translation, loaders or shader compilers, or if you simply want to follow a hard problem being solved in the open with its technical debt written down. As a way to play games, it is early and narrow — one documented 2D title at 60 fps on modest hardware is a real result, but it is a starting point, not a library of working ports. As an engineering project, it is one of the more interesting things to appear in the console-porting space this year, and the contributing and conventions docs suggest the author expects company.

More in Developer tools

All of Developer tools →