Skip to content

PS5PCEM 0.3.6

Latest

Choose a tag to compare

@iStark iStark released this 30 Oct 10:32
· 34 commits to main since this release

PS5PCEM 0.3.6

This release collects 71 commits after 0.3.5, including merged contributor
history, plus release preparation. It introduces the experimental native
DirectX 12 renderer, ZAR loading/extraction, launcher FPS limits and motion
sensor input, alongside Vulkan performance, graphics, audio and save fixes.

Downloads

  • Windows x64: portable ZIP and per-user installer. The three applications
    and installer carry SHA-256 Authenticode signatures and timestamps using
    the same Artur Strazewicz / PS5PCEM certificate as 0.3.5. The certificate
    is self-signed; Windows/SmartScreen can still warn.
  • Linux x64: .deb, .rpm, .pacman and .AppImage, with the native GTK 3
    launcher, game-run and pkgextractor. See the
    Linux guide.
  • SHA256SUMS.txt covers all six packages. Linux packages do not use
    Windows Authenticode signatures.

The CPU baseline remains x86-64-v3 (AVX2/BMI2/FMA). Vulkan remains the
default renderer on both platforms. DirectX 12 is Windows-only and
experimental. Windows packages include the pinned Microsoft DXC compiler,
DXIL validator and license notices; keep these DLLs beside the executables.
Linux requires glibc 2.31+, Linux 5.11+ with FSGSBASE/Syscall User Dispatch,
GTK 3, X11/XWayland, Vulkan 1.2 and PulseAudio or PipeWire's PulseAudio service.
The AppImage uses these system libraries. Games, firmware, keys, saves and
shader caches are not included.

Native DirectX 12

The Windows library and Settings now offer Vulkan / DirectX 12. This is
a native D3D12/DXGI backend, not a Vulkan translation layer. Unsupported work
is reported explicitly; it neither silently switches APIs nor skips draws
and reports them as successfully rendered.

  • Shared RDNA2 translation feeds SPIRV-Cross HLSL, Shader Model 5.1 and DXC
    Shader Model 6 wave shaders. Shader/PSO caches retain compiled programs.
  • Indexed, instanced, bounded indirect, triangle-fan and rectangle draws;
    NGG passthrough routing, linked varyings, scalar buffers, blend state,
    depth/stencil attachments, HTILE expansion and mixed multiple render targets.
  • Tiled surfaces, BC textures, video sampling, packed RGBA4444, RGBA16F and
    R16_UNORM; cube/2D-array textures, mip chains, 3D volume sampling and
    anisotropic filtering. DMA transfers now populate uploaded font atlases.
  • Checked fragment loops reject exhausted shader execution instead of
    publishing truncated results. Guest clipping, depth clamps and fractional
    shadow bias preserve the supported raster behavior.
  • Bounded resource pools, CPU scratch reuse, exact surface-conversion caches,
    immutable inputs and ordered command groups reduce allocations and waits.
    Experimental retention modes that did not demonstrate a speedup stay off
    by default.

Terminator 2D reaches first-level gameplay on D3D12. Raiden IV reaches its
first-stage sequence. Super Woden GP reaches the world map with readable
labels. Asterix and Quake II remain bring-up work: their Vulkan playability
does not imply D3D12 playability. MSAA, general compute-image handling and
other unsupported paths still limit this backend. See the
implementation and dated tests.

Vulkan graphics and performance

  • Raiden IV: retained render passes, descriptor reuse, bounded resource
    preparation, transient uploads, validated vector-only scalar loads and
    indexed snapshot lookup reduce CPU work. The measured PPSA08832 Vulkan
    profile is selected automatically by ordinary CLI and launcher launches.
    Other games retain their own defaults.
  • ASTRO BOT: RG16F DCC clears, stable prepared storage bindings and streamed
    texture MIN_LOD fix the reproduced colored noise and stale texture levels.
    Long compute loops can complete; exhausted dispatchers are diagnosed.
    An exact NVIDIA RGBA16F RGB-mask path saves/restores alpha bits on the GPU
    and reduces an isolated expensive pass without dropping effects.
  • Severed Steel: corrected menu presentation, depth-array views, DCC
    velocity clears and exposure-data publication. The maintainer confirms the
    observed black-frame flicker is gone. The local raster workaround remains
    necessary; full ray tracing is not implemented.
  • Super Woden GP: shared copy orientation and guest vertex/UV transforms
    restore upright interface text and icons. No title-specific flipped image
    replacement is used.
  • OXIDE Room 104: bounded per-lane FLAT pointer snapshots remove initial
    compute faults. A title-specific virtual -noraytracing preference uses the
    game's raster path to reach the introduction and GET UP prompt.
  • Scalar condition tracking, base-level storage views, overlap/readback
    diagnostics and opt-in RenderDoc capture improve correctness and debugging.

Selected historical Windows development measurements, RTX 3070 Ti,
with their original scope retained:

Scene and API Recorded result Scope
Raiden IV, Vulkan 86.59 FPS over 1,800 frames / 20.7867 s Warm scripted route, October 20; lowest 60-frame interval 50.58 FPS, so not a stable 60 FPS minimum
Severed Steel, Vulkan 8.70 FPS over 261 flips / 30.0004 s Stationary Trash Compactor scene, October 21; 13 FPS target not reached
ASTRO BOT, Vulkan 161.448 → 3.593 ms for one completed draw Isolated HDR pass, October 24; not whole-game FPS
ASTRO BOT title, Vulkan 11.55 → 12.20–12.35 FPS Same-process title comparison, October 24; optimized gameplay FPS not measured

These are dated observations, not benchmarks of the packaged release or
minimum performance across entire games. Internal rendering remains controlled
by the guest game even when output is set to 1920×1080.

Audio, saves and firmware

  • Raiden IV audio: ATRAC9-backed NGS2 sampler processing restores observed
    effects. The maintainer confirmed button sounds and music at death;
    continuous menu/stage music is not claimed fixed.
  • KeyWe: save memory returns the readiness result expected by Unity, and
    the shipped Dialogs.prx joins deferred plug-in discovery. Fresh-save and
    restart runs reach the post-office tutorial with a real save on disk.
  • Jets 'n' Guns 2: valid empty save containers can be remounted, fixing the
    reproduced first-run startup failure.
  • Animal Well / issue #7: implement the NGS2 voice channel-information
    query. The missing import resolves; local gameplay validation is unavailable.
  • ASTRO BOT / issue #8: kernel AMM imports and native APR command execution
    cover converted AMPR modules. Registration lifetime, submit and completion
    handling are corrected. The PPSA21567 reporter's later zero-filled APR
    stream remains unresolved; invalid streams fail before I/O. Selective
    bundled-module HLE routing is available for diagnosis. Local PPSA21564
    improvements do not establish a fix for that different package.
  • Reviewed Demon's Souls bring-up adds import routing, offline NP request
    lifetimes, safe output handling, memory checks, AMPR registration fixes and
    nested /devlog/app writes. Two unknown guest CRT imports still return
    unavailable; JPEG encoding and complete sparse-memory support are not
    claimed. Demon's Souls gameplay remains unverified locally.

Launchers, archives and controllers

  • Twelve interface languages on Windows and Linux: Turkish, Japanese,
    Hindi and Korean join English, Russian, German, French, Chinese, Spanish,
    Arabic and Portuguese. Existing saved language IDs retain their meaning.
  • 30 / 60 / 120 FPS / Unlimited in both launchers. The limit paces completed
    guest flips, not just the host window. Unlimited remains the default.
  • Read-only .zar launch support streams raw/zstd blocks with a bounded
    cache. Extracted executables take precedence; ambiguous multiple archives
    are not selected automatically.
  • Separate Extract PKG / Extract ZAR buttons, live logs, cancellation and
    output-folder selection in both launchers. Extraction validates archive
    paths and sizes; game data is never bundled with PS5PCEM.
  • DualSense / DualShock 4 motion input on Windows: calibrated gyroscope
    and accelerometer reports feed libScePad motion/orientation state, with
    reset and sampling controls. ASTRO BOT's later tilt tutorial still needs
    a dedicated physical-controller verification.
  • The README links the official Discord community and its language channels.
    The refreshed English launcher screenshot shows API selection, FPS limits
    and both extraction buttons.

Compatibility changes since 0.3.5

Title New result and remaining limits
Severed Steel — newly documented First-level rendering, corrected exposure flicker; low FPS, raster workaround and later graphics limits remain
ASTRO BOT PPSA21564 Character control confirmed; opening graphics and streamed textures improved; unresolved resources and later scenes still require work
Raiden IV x Mikado Remix Playable · Completable, maintainer-confirmed on Vulkan; much faster recorded route, but no stable 60 FPS minimum
KeyWe Playable · Completable, maintainer-confirmed; development checks verify save creation/reload and the opening tutorial
Terminator 2D: No Fate First-level gameplay on DirectX 12; existing Vulkan grade retained
Super Woden GP Upright Vulkan UI; DirectX 12 map startup and text restored; racing not verified in these checks
OXIDE Room 104 Advances beyond the earlier black screen to the introduction and GET UP prompt; character control unverified
Jets 'n' Guns 2 First-run save initialization repaired; existing Vulkan playable grade retained
Quake II / Asterix Additional D3D12 startup support; Vulkan results remain separate
Animal Well / Demon's Souls Import/firmware bring-up; no new local gameplay claim

Full reports, dates and API-specific limitations remain in the
compatibility table.
Thank you to kleinergoo7 for PR #10 and subsequent bring-up contributions,
and to everyone providing issue logs, test results and controller feedback.
Original contributor commits and attribution are preserved.

Screenshots from the documented runs

KeyWe — post-office tutorial, Vulkan, October 30.

KeyWe tutorial

ASTRO BOT — corrected streamed textures in the opening sequence, Vulkan,
October 24. This image is a cinematic, not a gameplay benchmark.

ASTRO BOT opening sequence

Terminator 2D — first-level gameplay through DirectX 12, October 22.

Terminator 2D DirectX 12 gameplay

Super Woden GP — restored DirectX 12 map text, October 30.

Super Woden GP DirectX 12 map

Severed Steel — Trash Compactor after exposure correction, Vulkan, October 21.

Severed Steel after exposure correction

Raiden IV — Vulkan first-level capture, October 17.

Raiden IV gameplay

English Windows launcher — API selection, FPS limit and PKG/ZAR extraction.

PS5PCEM launcher

See the release validation record
for build, test, signature and package checks. Linux remains experimental;
the dated Windows measurements above are not Linux performance results.

Full source changes: v0.3.5...v0.3.6