Skip to content
PS5PCEM

Release 0.3.1-beta.1 · September 15, 2026

Project status

What the emulator can do, subsystem by subsystem. The observed title milestones live on the compatibility page; this page is the detail behind them.

Current build

0.3.1-beta.1

Pre-release

Titles tested

5 of 13 completable

Confirmed September 8, 2026

Reference host

NVIDIA GeForce RTX 3070 Ti

Every timing on this site

Subsystems

Where each part of the emulator stands

Condensed from implementation-status.md in the repository, which carries the complete list.

Guest execution

Working

Native x86-64 guest execution on Windows, with ELF/SELF loading, relocation, module linking and TLS.

  • ELF and SELF loading, relocation, module linking, TLS and firmware HLE.
  • Contained-fault diagnostics keep a faulting guest thread from taking down the host.
  • Native cooperative fibers retain suspended guest stacks across switches.
  • Inspection, decoding and HLE components also build on Linux and macOS; native execution is Windows-only.

AGC command stream

Partial

Stateful AGC command-stream execution drives graphics, compute and VideoOut work.

  • Ordered AGC completion acknowledgement removes intermittent retirement races.
  • Guest image allocations share a range-based alias registry across colour, depth/stencil, storage and sampled use.
  • Descriptor recovery no longer replays each kernel's prolog once per resource it names.

RDNA2 shader translation

Partial

A growing RDNA2-to-SPIR-V pipeline covers graphics and compute workloads.

  • Merged NGG vertex programs translate, including fetch-shader continuations ending in S_SETPC_B64.
  • Runtime shaders can pass through a common typed IR before SPIR-V; PS5_GPU_SHADER_IR=1 selects legalized IR and PS5_GPU_SSA=1 adds phi/def-use state, constant folding and iterative DCE.
  • Structured control flow restores UI text in titles that previously lost it.
  • Fetch-shader continuations, exact layered rendering and some scanout paths are still incomplete.

Vulkan rendering

Working

VideoOut reaches a Vulkan swapchain with resident render targets and timeline scheduling.

  • Persistent render targets, large writable storage buffers, resident storage images, and bounded texture and pipeline caches.
  • Fifty-six host formats are reachable, spanning BC1–BC7, signed and unsigned integer and normalized channels, R16/RG16, half-float and RGBA32_FLOAT.
  • Image layout and access state is tracked per aspect, mip and array layer.
  • The default profile waits on each submitted batch; the opt-in timeline scheduler keeps several batches in flight.
  • GPU compute detile covers 4/8/16-byte 2D and 3D standard and PRT surfaces; RB+ and MSAA still fall back to the CPU.

Audio and media

Working

Host audio at 48 kHz, plus H.264/AAC playback through FFmpeg.

  • SceAvPlayer returns synchronized NV12 video and stereo PCM through the title's own allocation and file callbacks.
  • Observed intro movies play at about their native frame rate in ReleaseFast builds.

Input

Working

DualSense and DualShock 4 pads are read directly over HID, with XInput and keyboard fallbacks.

  • Sony pads work without a translation layer; the launcher reports which one it found.
  • The launcher can drive motors and the light bar as a check.
  • Launcher-managed input profiles support controller, keyboard or hybrid control.

Savedata and storage

Working

A mounted slot becomes a writable /savedata0, so titles store and reload progress.

  • Games save through the ordinary file API and find their data again on the next run.
  • The launcher groups every local slot by title ID.
  • Portable settings and savedata are kept beside the application.

Windows launcher

Working

A native library with local cover art, per-title saves, input profiles and direct launching.

  • Remembers up to eight recent titles.
  • Reads artwork from each title's local sce_sys/icon0.png.
  • Detects DualSense and DualShock controllers and persists sound and input profiles.

Memory

Working

A freeing, thread-safe allocator and aligned direct-memory ranges keep long runs stable.

  • Aligned Windows direct-memory ranges share 64 KiB section views, so temporary uploads, readbacks and 16 KiB guest pages no longer accumulate as an ever-growing host commit charge.
  • The opt-in GPU page tracker tracks 16 KiB guest pages by generation and handles the first native CPU store as an invalidation fault.

VR presentation

Deferred

VR titles map their plugins and boot, but there is no host headset bridge.

  • Headset, tracking, controller and host OpenXR support are intentionally deferred.
  • Pistol Whip and Propagation: Paradise Hotel reach engine bootstrap without VR presentation.

What is deliberately not claimed

Reaching a menu is not gameplay, and rendering a frame is not playability. Several titles render correctly but far too slowly to play, and those are recorded as such. Nothing on this site claims a milestone that has not been observed on a build.

Go deeper

Documentation in the repository

Subsystem internals — RDNA2, GPU, Vulkan, memory, loader, HLE, CPU, diagnostics and runtime — are indexed in the architecture documentation.

Support development

PS5PCEM is GPL-3.0-or-later and developed in the open. Development can be supported through Boosty or Patreon.