github shadps4-emu/shadPS4 v.0.19.0
shadps4 v0.19.0 - codename The Shadoween special

latest release: Pre-release-shadPS4-2026-10-02-bf794b3fe7db0425fdc2f329f705d5d09446882d
2 hours ago

Welcome back to another shadPS4 release . It is over one month since our previous release and guess what we are back again with a lot more fixes and a lot more playable games . Rapid work has been done in different areas of the emu, but i guess the glory goes to the huge amount of GPU fixes that improved so many games, some of them are really playable now . I won't steal the fun of discovering these, so here is a brief list of changes.

Core

  • Rewrote signal emulation again
  • Fixed incorrect error return on attempting to create a file in a nonexistent folder in a writable mount
  • Fix reserved region coalescing in POSIX address space code
  • Support loading entitlements from RIF licenses
  • Optimized logger by replacing hash map with table lookup and hide implementation details
  • Support loading DLC as ZAR
  • Reworked slot vector
  • Fixed sceKernelReserveVirtualRange alignment and add ClearName

Libraries

  • Use present scheduler for blank frame prepare
  • np_auth : Change default GetAuthorizationCode returns to be valid
  • np_trophy: Fixed displaying of trophy name
  • http2 : Fixes and cleanups
  • np_tss : Added TSS support
  • camera : Use a system mapping for camera frame data
  • np_utility: Initial impelmentation
  • vdec2: support for h265/hevc
  • ajm mp3: rely on ffmpeg parser for packet boundaries
  • Kernel.Pthread: Remove RunThread stack logging
  • np_web_api : Added pTo and pFrom to OrbisNpPeerAddressA support
  • Very basic HLE Keyboard library
  • scePthreadRwlockTimedrdlock / scePthreadRwlockTimedwrlock take a relative timeout in microseconds
  • Implemented sceKernelGetProcessType
  • Implemented sceKernelReleaseFlexibleMemory and POSIX mlock/munlock aliases

Video Core

  • Improve tsharp robustness
  • Use stb_image_write for screenshots
  • Emulate scaled min/max blending
  • Do not auto-select a software rendering device
  • Decode sRGB for A2R10G10B10Srgb display buffers
  • Handle QuadStrip as a triangle strip
  • Add R8G8Srgb fallback to R8G8Unorm
  • buffer_cache: Refactor buffer manager with sparse arenas
  • Commit the emulated-LDS allocation taken from the stream buffer
  • Only enable sampler comparison for comparison fetches
  • Respect SPI_BARYC_CNTL front-face encoding
  • Invalidate cached images after raw buffer writes
  • Fixed locking behaviour for signals delivered to GPUComm thread
  • buffer_cache: Rework memory tracker and implement batched uploads
  • Moved on_submit callback before EndSession
  • Fixed compute shader floating-point mode
  • page_manager: Keep the fault probe within the faulting page
  • Bind a default sampler for S# with undefined fields
  • Fix sparse backing offsets, barriers, and memory budgeting
  • texture_cache: Avoid associating color images with stencil
  • Fixed mip layout and detiling of tiled textures

Shader recompiler

  • Properly handle BaryCoord attributes on non-AMD GPUs
  • Compute GDS offset dynamically instead of as compile-time constant
  • Storage buffer related clean-up
  • Neo: MIMG instructions
  • Improve ssa rewrite pass correctness and readability
  • Add support for virtual registers
  • Add ssa destruction pass
  • Decorate written storage buffers as Coherent
  • Structurize later in the pipeline and cleanup
  • Enhance shared memory barrier handling and add divergent loop detection
  • Split resource tracking and flatten load from buffer for sharp source
  • Reimplemented B64 SALU opcodes with U64 masks
  • Implemented S_MEMTIME
  • Implement S_BITSET0_B64 and S_BITSET1_B64
  • Skip lowering for null buffer sharps
  • Implemented some V_CMPX_U64 ops
  • Lower wave64 constructs for wave32
  • Refactor runtime info as two tagged unions
  • resource_patching_pass: Accept ds_append/consume without users
  • Implement support for base vertex/instance in indirect draws
  • Recognize sharp sources broadcast via V_READFIRSTLANE_B32
  • Properly check for immediate args in GetRealValue
  • Refactored parser to enable vertex count calculation for position only copy shaders
  • Implemented fragment sample coverage input
  • Added pull-model barycentric support
  • Test S_BITCMP_B64 against the full 64-bit src
  • Fixed geometry invocation count comparison
  • Lower ballot and MBCNT as a pair
  • Define SampleId for BaryCoordSmoothSample on the KHR path
  • Eliminate readlanes before the tessellation and ring passes
  • Read user data from the flat buffer
  • Fix gradient and offset for 1D images
  • Lower PackedAncillary from attribute loads
  • resource_patching: Patch thread id add instead of id itself
  • Allow InverseBallot folding to fail on unhandled immediate arguments
  • Fix OpImageTexelPointer coords for 1D
  • V_CVT_PK_U8_F32 fixup
  • V_ALIGNBIT_B32 / V_ALIGNBYTE_B32 fixup

ShadNet

  • Online trophy support

Don't miss a new shadPS4 release

NewReleases is sending notifications on new releases.