Repository navigation
PS5PCEM 0.3.4
This release fixes a launcher regression that prevented games from starting
in packaged installations. Updating both the launcher and runner is recommended.
It also adds working font rendering, fixes Jurassic Park's font-atlas startup,
implements MemoryPool and AMPR counters, and expands RDNA2 shader support.
These are the changes since 0.3.3, covering the October 7–9 development
commits. The portable ZIP and per-user installer include the updated launcher,
runner and PKG extractor. All three applications and the installer carry
timestamped SHA-256 Authenticode signatures using the same
Artur Strazewicz / PS5PCEM certificate as the previous release.
Important launcher fix
The launcher could pass its own executable path as the runner's working
directory because a shortened Windows path lacked its terminating zero.
Windows rejected CreateProcessW with ERROR_DIRECTORY before the game
started. The development zig-out\bin layout masked the defect, while ordinary
portable and installed layouts exposed it. The directory is now correctly
terminated.
If Windows refuses to create the runner process, the launcher now displays
Windows' explanation, the numeric error code and advice for the relevant
failure. The messages cover application-control policy, security-software
blocking, access errors and damaged executables, in all eight launcher
languages. The status line also retains the error number.
Fonts and Jurassic Park
- Font HLE now owns real FreeType faces and provides glyph metrics,
rasterization, clipping, scaling, slant and kerning, with bounded caches.
An embedded Noto Sans fallback and dependency license notices are included. - Valid characters absent from the font use its
.notdefglyph. This fixes
Jurassic Park Classic Games Collection failing on U+007F while building
its Latin-1/ImGui atlas, which terminatedCarbonMainThreadand left the
remaining threads waiting before normal GPU submissions. - Two October 8 development launches passed the former failure. The first
level rendered and the map overlay responded to keyboard input. This is a
startup regression fix for an already listed game, not a new full-playthrough
verification. Font writing-line APIs remain incomplete.
Jurassic Park — first level at the park gates after the font fix, October 8.
This is an unedited development capture, not a fresh FPS measurement of the
packaged release.
Firmware and memory
- MemoryPool: implement the six missing reserve, expand, commit, decommit,
batch and block-statistics exports. Pools use shared physical backing,
preserve data across decommit/recommit, account for ownership and support
ordered commit/decommit/protection batches with rollback and partial-result
reporting. BatchMOVEremains unsupported. - PNG encoding: implement query/create/encode/delete. Pitched RGBA/BGRA
input can produce 8-bit RGB/RGBA PNGs with row filtering, compression levels
0–9, bounded writes and valid PNG/zlib checksums. Palette, grayscale, 16-bit
and interlaced output remain unsupported. - RTC: add calendar validation, current-clock offsets, days-in-month,
Windows FILETIME conversion and tick addition for ticks, microseconds,
seconds, minutes, hours and weeks. Correct the invalid-value error code and
reject arithmetic overflow without modifying output. Host DST conversion
is not added. - AMPR: complete three command-size query exports and implement 128
software counters with field-preserving stores, bitwise operations, wrapping
addition, coherent pairs, reads and execution-time timestamps. Correct the
ordinary versus_04_00counter argument signatures. - Unsatisfied counter waits retain a private command snapshot and resume
when the dependency is satisfied, preserving later writes and completion
events. Reset cancels and joins bounded workers.WaitOnAddress, hardware
queue priorities and cycle-accurate accelerator timing remain incomplete.
Details: MemoryPool,
PNG/RTC/export coverage,
AMPR counters.
Graphics and shader coverage
- Packed 11/11/10 UNORM blending: copy a single-sample target into a storage
buffer, unpack its channels, apply guest blending in the fragment shader,
and repack the result. This fills a format gap in Vulkan's fixed-function
blending. It does not establish that all Yōtei lighting defects are fixed. - DS instructions: add
DS_ORDERED_COUNT, increment/decrement atomics,
DS_MSKOR, high-half byte/halfword accesses andDS_PERMUTE/DS_BPERMUTE.
Ordered count updates once per active guest wave. Exact wave-launch ordering,
multi-dword ordered counts and GDS permutes remain unsupported. - MIMG multi-texel loads: implement
BY2/BY4andPCK2/PCK4, including
explicit mip levels for the validated native 2D formats. Typed integer
bindings, result packing, bounds and register preservation are covered.
Corresponding stores and unvalidated format combinations remain unsupported. - Horizontal gathers: implement
IMAGE_GATHER4Hand
IMAGE_GATHER4H_PCK, including typed texture access, packed raw texels,
result widths, offsets and edge handling for the validated subsets. - Scalar shader calls: implement bounded
S_SWAPPC_B64andS_CALL_B64
subroutines, nested calls, full 64-bit return addresses and verified AGC
fetch-shader calls. Resource analysis follows the callee. Invalid boundaries,
recursion, escaping/clobbered links and unsupported dynamic calls are
rejected. This is not an unrestricted dynamic call stack. - Output defaults: report 1920×1080 SDR output with the supported default
refresh mode; keep 120 Hz unavailable. An unset game preset now requests
performance mode. Internal render resolution remains controlled by each
game; frame diagnostics also report large internal color targets.
Details: multi-texel loads,
horizontal gathers,
scalar calls.
Validation and current limits
The included development checks on the RTX 3070 Ti pass 174 multi-texel
dispatches / 178,176 result words, 1,242 horizontal-gather dispatches /
635,904 words, and 42 scalar-call dispatches / 21,504 words. These are
native Vulkan instruction probes, not game FPS benchmarks. The scalar-call
checkpoint passes 259/259 GPU-analysis and 232/232 Vulkan module tests.
The RDNA2 suite passes 271/281, retaining the same ten existing failures
and one reported leak; the full suite is not green.
The final release builds and packaging checks are recorded in the
release verification report.
No new game is graded playable or completable by these instruction checks,
and no new game FPS result is claimed. Existing Subnautica, GTA III, Little
Nightmares, Big Helmet Heroes and Yōtei measurements remain dated development
results. First-use compilation, texture churn, incomplete rendering and
long-session stability still need work. See the
compatibility table.
Windows 10 version 2004 or newer, an x86-64-v3 CPU (AVX2, BMI2, FMA) and a
current Vulkan 1.2 driver are required. AVX-512 is not required. No games,
firmware, keys, saves or driver caches are included. The signing certificate
is self-signed, so Windows trust/SmartScreen warnings may still appear;
SHA256SUMS.txt contains the download hashes.
