PS2 Web Recomp - PS2 games statically recompiled to WebAssembly

PS2 Web Recomp - PS2 games statically recompiled to WebAssembly

PS2 Web Recomp brings PlayStation 2 games to the browser without an emulator. It translates the game's Emotion Engine machine code ahead of time into C++, compiles it to WebAssembly, and links it against a reimplementation of the PS2's OS and hardware that draws with WebGPU. The first title, Gran Turismo 4, runs at full speed (50 FPS) on a laptop's integrated GPU at twice the PS2's resolution. God of War II also plays through menus, cutscenes, and combat at 60 FPS. You bring your own disc image, and the scripts turn it into a web page on your machine. Requirements: git, CMake, Ninja, a C++20 compiler, Python 3, and 7-Zip for .7z archives. The page needs WebGPU (Chrome or Edge on Windows/macOS; on Linux enable chrome://flags/#enable-unsafe-webgpu and #enable-vulkan). Saves are kept in browser storage and can be exported/imported as .ps2 files.

PlayStation 2 games running in the browser without an emulator. The game's Emotion Engine machine code is translated ahead of time into C++, compiled to WebAssembly, and linked against a reimplementation of the PS2's operating system and hardware that draws with WebGPU.
  1. aceazzameen

    I don't know. There's suddenly so many decomps that run native (granted this post is about WebAssembly). Is there no concern about hidden malware? IMO it doesn't have the same level of trust and vetting that the emulator scene has. At least not yet.

  2. zuInnp

    All of this recomp stuff is pretty amazing. I really don't like how AI changed my profession, but hey at least I get something good from it.

  3. mamonoleechi

    - related thread:https://news.ycombinator.com/item?id=49991243 (God of War on PSP, recompiled to WebAssembly and running in the browser)

    - might interest you, if you like the topic you're currently reading: https://thegamingemporium.com/recent/

  4. Megabinator

    What about compiling the compiler to WebAssembly so it can be hosted anywhere and convert a project directly from a browser?

  5. eluusive

    Who would want to play Gran Turismo without long CD loading screens?

  6. kodablah

    I did similar for PS Vita over the past few months: https://github.com/cretz/vitaslop

    But instead of single games, I "built" an ARM-to-WASM transpiler in WASM. Also cool transcoding of WebGPU shaders, audio, and more.

    Only have tested a few games so far, it's early days, but works quite well in Chrome mobile on flagship Android phones.

  7. Hyperlisk

    Very cool! I'm working on something similar but am taking it much slower with a focus on accuracy. Mine recompiles into Golang to take advantage of built-in SIMD support.

    I've been building the tooling around the PS2 binaries and hope to have a standalone PSS player out soon that can play PSS files as they are encoded, via simulated renderer, and via in-game engine renderer. The future is so bright with LLMs!

  8. khalidkhair

    I wonder how "legal" hosting this would be given that it would require the host to basically distribute the game for free for everyone else

More from this day

2026-10-12