mrkeyoor.com_
Wed 02 Sept 07:09 UTC
Dev Toolsevaluationupdated 02 Sept 2026

shadPS4 review

shadPS4 is an early PlayStation 4 emulator core for Windows, Linux, and recent Apple-silicon Macs. It lets owners run supported games from their own dumps, but end users are directed to a separate Qt launcher and must check compatibility title by title.

Verdict

Our shadPS4 run installed 151 packages in a nested documentation project and found 49 npm vulnerabilities, but it did not build or test the C++ emulator. End users should try the official QtLauncher only after checking their exact game in the compatibility tracker and accepting that current releases still regress. Developers have an active, substantial emulator core to study, though our 971.3 MB checkout and platform-specific build guides show that contributing is a serious workstation task.

We ran it

Lab card: what happened when we ran shadPS4Screenshot of shadPS4 (shadps4.net)
Install✓ · 95s151 packages · 425 MB
Buildn/ano build script
Testsn/ano test script
Known vulns499 critical · 26 high · 12 moderate · 2 low (npm audit)
Repo42295 files~11,106,431 lines of source · 971.3 MB · 1 CI workflows · tests dir

Answers from our run

Does shadPS4 build from source?

Dependencies installed in 95 seconds (151 packages), and the project has no separate build step. We cloned commit e29cf71 into a clean Debian container with 3 CPUs and no project-specific setup.

Does shadPS4 have tests you can run?

Not through a standard command: the project exposes no test script or target that our harness could run.

Does shadPS4 have known vulnerabilities in its dependencies?

npm audit flagged 49 known advisories in the dependency tree, including 9 critical at the time of our run.

Who should not use shadPS4?

Players expecting console-like reliability across a library: the README calls shadPS4 early, and issue 4304 tracks current crashes, hangs, visual faults, and GPU-driver crashes by title.

What are the alternatives to shadPS4?

shadPS4 QtLauncher, fpPS4, ChonkyStation4. Our shadPS4 run installed 151 packages in a nested documentation project and found 49 npm vulnerabilities, but it did not build or test the C++ emulator.

Setup2/5GUI, legal dumps, firmware modules, and title checks are separate
Docs4/5Detailed platform builds and debugging guidance
Community5/532,719 stars with active pushes, reports, and pull requests
Maturity2/5The project says early; current regressions remain title-specific

Who it’s for

PlayStation 4 owners willing to dump their own games and firmware modules.
Emulator testers whose exact game has a useful report in the official compatibility tracker.
C++ developers interested in Vulkan, shader translation, operating-system libraries, or console internals.
Tinkerers who accept per-game fixes, regressions, logs, and frequent pre-release changes.

Who it’s NOT for

Players expecting console-like reliability across a library: the README calls shadPS4 early, and issue 4304 tracks current crashes, hangs, visual faults, and GPU-driver crashes by title.
End users expecting the repository itself to provide the friendly desktop interface: the README says this is the core and directs them to the separate QtLauncher.
Intel Mac owners or anyone below macOS 26.0: the documented macOS route does not support that hardware or older system versions.
Users without a legally owned PlayStation 4: supported firmware modules must be dumped from the user's own console.
Contributors whose policy forbids vulnerable documentation tooling: our install in externals/CLI11/book/ reported 49 known npm vulnerabilities, including 9 critical and 26 high.

Setup reality

Our sandbox found the Node project under externals/CLI11/book/, installed 151 npm packages in 95 seconds, and used 425 MB. That nested package had no build or test target, so both steps were skipped. Its audit reported 49 known vulnerabilities: 9 critical, 26 high, 12 moderate, and 2 low. We did not build or test the C++ emulator.

End users should obtain the separate QtLauncher, provide legally dumped games, and dump required firmware modules from their own PlayStation 4. No hosted account is required for the core, but game folders, firmware files, controllers, and per-game settings need local setup.

Source builds use recursive submodules, CMake, Clang, Vulkan, audio, input, and platform libraries. Windows uses Visual Studio tooling, Linux has a long package list, and macOS requires version 26.0 on Apple silicon. The repository is 971.3 MB before build output.

Version 0.18.0 is an early emulator core, while the GUI lives elsewhere

shadPS4 v0.18.0 is the C++ core that translates PlayStation 4 software for Windows, Linux, and macOS hosts. The README says plainly that development is early and a flawless experience should not be expected. It names several games that run, but those examples are no promise about a different title, region, update, or host. The practical buying guide is the separate compatibility repository. People who just want to play are sent to QtLauncher, a different repository that packages the core behind a graphical library interface.

The scale is unusual even before compilation. Our checkout at commit e29cf71 contained 42,295 files, about 11,106,431 lines of source, and occupied 971.3 MB. Much of that tree is external code, which is normal for an emulator that carries many low-level dependencies, but it changes the contributor experience. Clone recursively, expect long indexing, and keep build output off a cramped system drive. The GPL-2.0 license also matters if you plan to distribute a modified build rather than run one privately.

The official tracker has 2,032 open game reports

The compatibility repository listed 2,032 open reports on September 2, 2026. That volume is useful because a PlayStation 4 title can behave differently by CUSA identifier, game update, driver, and emulator revision. It also means a green result for one title cannot stand in for the catalog. The debugging guide asks reporters to name the exact CUSA code, attach logs, and distinguish a game crash from a reproducible emulator defect. Check that tracker before spending time dumping and configuring a game.

Issue 4304 is an open aggregate of known regressions, while the main repository had 217 combined issues and pull requests. Its list includes games that crash on boot, hang during play, render incorrectly, or can crash a GPU driver. Those reports are more useful than a general argument about whether shadPS4 "works." Use the exact release and hardware named in a report, test without mods, and retain the previous working emulator build when an update changes behavior. Early emulation rewards careful version control on the user's side.

What happened when we ran it

Our sandbox installed 151 npm packages in 95 seconds and used 425 MB, but that operation ran inside externals/CLI11/book/. The directory belongs to a nested Node documentation project rather than the C++ emulator build described by shadPS4. No build script or target existed there, so the harness skipped build. No test script or target existed there either, so it skipped tests. Our test method therefore produced no evidence that the emulator compiled, launched, or ran a game.

The npm audit reported 49 known vulnerabilities: 9 critical, 26 high, 12 moderate, and 2 low. Those findings belong to the 151-package nested tooling tree. They should not be presented as flaws in the emulator binary without tracing whether any affected package ships or runs there. Contributors who execute that documentation toolchain still have to account for them. The repository scan found one CI workflow and a tests directory, but our selected Node target did not invoke either the C++ build or those tests.

A real source build starts with CMake and recursive submodules

The Linux guide recommends Clang 18 and tells developers to clone with recursive submodules. Debian and Ubuntu need Vulkan development files plus audio, input, SSL, PNG, and other system packages before CMake configuration. Windows has Visual Studio 2022 and VS Code routes; the documented MSYS2 route is currently broken. These are platform-native C++ builds, unrelated to the 95-second npm install in our lab. A contributor should follow the relevant operating-system guide and treat our harness result as a map of an accidental nested target.

macOS has the narrowest gate: the README requires macOS 26.0 or newer and excludes Intel Macs. Linux offers a Docker build guide, though our repository scan found no Dockerfile, so read that guide's expected layout before assuming a root-level image build. The core also expects Vulkan-capable graphics, while debugging can involve RenderDoc, shader dumps, stack traces, and per-game logs. This is reasonable machinery for emulator development and far more work than installing a normal desktop application.

Legal firmware dumps are part of the 0.18.0 setup

shadPS4 can load a documented set of PlayStation 4 firmware modules, and the README says they must come from a legally owned console. Games likewise need local folders or ELF files; the project does not supply commercial content. Controllers have default mappings, while keyboard and mouse bindings can be customized per game. Command-line users point the core at a game ID or executable. Most players will prefer the QtLauncher because the core repository intentionally does not include its GUI.

Release 0.18.0 added fixes for shadNet authorization, kernel event flags, video playback through dumped modules, and several GPU cases. GitHub recorded 32,719 stars, a September 1, 2026 push, and 217 combined issues and pull requests. Recent pull requests touch shader translation, video decoding, handheld motion controls, and network behavior. That is active engineering rather than a finished compatibility promise. The release cadence and issue traffic justify testing, while the project's own early-status warning should control expectations.

The 49 audit findings do not answer whether your game runs

Our 49 npm findings are a maintenance concern for one nested tool, while game compatibility lives in the C++ core, firmware dump, driver, and exact title revision. Keep those questions separate. For an end user, the sensible path is QtLauncher, the official compatibility report for the title, a legally dumped setup, and a rollback copy of any version that works. For a developer, shadPS4 is active and unusually instructive, but the lab result on this page is intentionally no substitute for a full CMake build and game test.

Alternatives

ProjectWhat it isPick it when
shadPS4 QtLauncherThe official graphical launcher intended for people who want to use the shadPS4 core.pick this instead when you are an end user who wants library management and a graphical interface.
fpPS4A PlayStation 4 compatibility layer written in Free Pascal.pick this instead when your title works better there or you want to study a Pascal implementation.
ChonkyStation4Another C++ PlayStation 4 emulator under active development.pick this instead when comparing emulator behavior or implementation choices matters more than using the largest community.

What people are saying

  1. [velocity-scout] shadps4-emu/shadPS4

Sources

  1. shadPS4 repository
  2. shadPS4 v0.18.0 release
  3. shadPS4 Linux build guide
  4. shadPS4 macOS build guide
  5. shadPS4 debugging and issue guide
  6. Known regressions issue 4304
  7. Official shadPS4 game compatibility tracker

More dev tools reviews

herdr · loguru · poetry · croc · brew · workmux · the whole board →