TL;DR
A GitHub project has demonstrated God of War: Chains of Olympus and Ghost of Sparta running in browsers after their PSP code was recompiled to WebAssembly. The developer reports near-60-fps performance in tested scenes, but users must supply their own game data, and the project does not include it.
Recommended by digitechbytes.com · AI-assisted guides
Shopping for technology news & gadgets? Start with the guides we keep up to date:
Updated October 202614 Best Ford Transit Running Boards for 2027See the top picks →
A GitHub project has demonstrated God of War: Chains of Olympus and God of War: Ghost of Sparta running in a web browser after their PSP machine code was translated into C++ and compiled to WebAssembly. The approach uses a custom software layer for PSP system functions and WebGL2 graphics rather than running the games inside a conventional emulator, according to the project’s developer.
The developer says Chains of Olympus runs from startup through menus, cutscenes and combat, with music, dialogue and sound effects working. In scenes measured so far, it reached 60 frames per second in Chrome and Firefox on a laptop and could render at up to four times the PSP’s native 480-by-272 resolution. The project also supports phones with on-screen touch controls. Movies are currently skipped.
Ghost of Sparta was brought up using the same scripts and recompilation pipeline. The report says it runs at 55 to 60 frames per second at three times native resolution, after the developer added support for a DRM-protected file, several system calls and a lighting correction. The report does not provide independent benchmark results or testing details beyond those stated by its author.
The project does not distribute game files. Users must provide a disc image of a game they own; the scripts process that data into a web page on the user’s machine. The report says disc contents can be streamed through HTTP Range requests, so the browser downloads only the executable initially rather than fetching all game data at once.
A Different Route to Browser Play
The demonstration shows how ahead-of-time recompilation can bring older console software to browsers without asking users to install a traditional emulator. The PSP’s MIPS instructions are converted into C++, then compiled to WebAssembly; a compact reimplementation handles operating-system services, memory, input, sound and other hardware-facing behavior.
That makes the project relevant to preservation and access: browser delivery could make software easier to run across devices, while the custom graphics path uses WebGL2 to reproduce PSP rendering. But this is a developer project, not an official Sony release or a general guarantee that PSP games will work in browsers. The reported results cover two titles and depend on game data supplied by each user.
The performance notes also show that getting a game to run is only part of the work. The developer says an early version managed just six frames per second; profiling and changes to frame pacing, browser graphics-buffer handling and threading brought performance close to the reported target. That history illustrates how browser and graphics-driver behavior can matter as much as the original console’s workload.
How the PSP Code Reaches WebGL
The project builds on PSPRecomp, which analyzes a decrypted game executable, identifies functions and emits C++ in units based on blocks of guest code. The generated program uses a model of PSP registers and memory. A browser-focused profile then supplies services the game expects from the PSP, including cooperative threads, storage, controller input, audio, save data and system dialogs.
Graphics commands are decoded on the CPU and sent to a WebGL2 renderer. The implementation accounts for PSP-specific behavior such as texture formats, lighting, fog, framebuffers and stencil data. The graphics work runs on a separate worker thread with an OffscreenCanvas, allowing the game code to prepare later work while graphics commands are processed.
Sound effects are produced through a software recreation of the PSP’s voice system. The report says music and speech use FFmpeg’s ATRAC3+ decoder, with the resulting audio sent to an AudioWorklet. For Ghost of Sparta, the developer also describes implementing decryption for a small protected file needed during startup; the source does not establish that this supports every form of PSP copy protection or every game.
““PSP games running in the browser without an emulator.””
— Project description on GitHub
Limits of the Reported Tests
The GitHub report describes the developer’s own testing, but does not provide independent verification, a full list of laptop or phone specifications, or performance results across a broad range of devices. The figures apply to scenes measured so far, not necessarily every level or gameplay situation. The source also does not state when the report was published.
It remains unclear how broadly the approach will work across the PSP library, what setup or compatibility issues users may encounter, and whether future updates will support the skipped movie playback. The report says Ghost of Sparta needed title-specific work, so the success of two games does not establish that other titles will run without further changes. No game data is supplied, and the source does not detail the legal status of users’ individual files in every jurisdiction.
Compatibility Work Ahead
The project’s next practical test is whether additional PSP games can pass through the existing scripts and browser profile, or require more title-specific fixes. The developer’s account of porting Ghost of Sparta describes a useful step: it reached a working page through the same scripts, but initially stalled at startup until the protected-file handling and other issues were addressed.
The report does not announce a release schedule, a compatibility list or a roadmap for movie playback. Readers can consult the project repository for its scripts and technical notes; any broader claims about supported games or device performance will depend on further testing and updates.
Key Questions
Which God of War games are shown running in a browser?
The project report names God of War: Chains of Olympus and God of War: Ghost of Sparta, both originally released for PSP.
Is this a conventional PSP emulator?
The developer describes it as recompilation rather than conventional emulation: PSP machine code is translated into C++ and compiled to WebAssembly, with a custom software layer handling PSP services and WebGL2 graphics.
Does the project include the games?
No. The report says no game data is included; users must supply their own disc image for the scripts to process.
How fast do the games run?
The developer reports 60 frames per second in the scenes tested for Chains of Olympus, and 55 to 60 frames per second for Ghost of Sparta at three times native resolution. These are project-reported results, not independent benchmarks.
Do cutscenes and audio work?
The report says music, speech and sound effects work, and that Chains of Olympus plays through menus, cutscenes and combat. It also says movies are skipped for now, so video playback is not fully supported.
Source: hn
