{"id":138779,"date":"2026-10-30T15:44:57","date_gmt":"2026-10-30T14:44:57","guid":{"rendered":"https:\/\/www.emu-france.com\/?p=138779"},"modified":"2026-10-30T15:46:31","modified_gmt":"2026-10-30T14:46:31","slug":"consoles-de-salon-shadps4-v0-21","status":"publish","type":"post","link":"https:\/\/www.emu-france.com\/?p=138779","title":{"rendered":"[Consoles de salon] ShadPS4 v0.21"},"content":{"rendered":"<p><a href=\"https:\/\/github.com\/shadps4-emu\/shadPS4\/\" target=\"_blank\" rel=\"noopener noreferrer\">ShadPS4<\/a> est un \u00e9mulateur pr\u00e9liminaire de PS4 pour Windows et Linux \u00e9crit en C++ cr\u00e9\u00e9 par Shadow (d&rsquo;ou il tire son nom), auteur et contributeur de projets prestigieux comme PCSX, PCSX2, PCSP, JPCSP, Arcadeflex, RPCS3&#8230;<br \/>\n&nbsp;<br \/>\nA noter qu&rsquo;un module permettant l&rsquo;utilisation du Netplay est disponible <a href=\"https:\/\/www.emu-france.com\/emulateurs\/5-consoles-de-salon\/369-sony-playstation-4\/8354-shadnet\/\">ici<\/a>.<br \/>\n&nbsp;<br \/>\n<a href=\"https:\/\/www.emu-france.com\/wp-content\/uploads\/2024\/09\/ShadPS4.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-81791\" src=\"https:\/\/www.emu-france.com\/wp-content\/uploads\/2024\/09\/ShadPS4.jpg\" alt=\"\" width=\"566\" height=\"166\" srcset=\"https:\/\/www.emu-france.com\/wp-content\/uploads\/2024\/09\/ShadPS4.jpg 2565w, https:\/\/www.emu-france.com\/wp-content\/uploads\/2024\/09\/ShadPS4-300x88.jpg 300w, https:\/\/www.emu-france.com\/wp-content\/uploads\/2024\/09\/ShadPS4-768x225.jpg 768w, https:\/\/www.emu-france.com\/wp-content\/uploads\/2024\/09\/ShadPS4-1024x300.jpg 1024w\" sizes=\"auto, (max-width: 566px) 100vw, 566px\" \/><\/a><br \/>\n&nbsp;<br \/>\nLes changements principaux en r\u00e9sum\u00e9:<br \/>\n<strong><em>Another week another release . There are ton of changes , so why not ?<\/strong>.<\/p>\n<p>&nbsp;<br \/>\n<strong>Core<\/strong><br \/>\n&#8211; Properly check where an input came from for digital->analog input smoothing<br \/>\n&#8211; cpu_patches: Work around Rosetta 2 mistranslating negated scalar compares<br \/>\n&#8211; file_sys: Report stable file identities in stat and fstat<br \/>\n&#8211; Allow file type identification for &lsquo;\/addcont&rsquo; path<br \/>\n&#8211; emulator: stop clearing temporary data on boot<br \/>\n&#8211; Add PT_SCE_MODULE_PARAM case<br \/>\n&#8211; cpu_patches: Fix JIT patching at addresses outside any module<br \/>\n&#8211; core: Fix MemoryManager::Free unmapping past the released rang<br \/>\n&#8211; file_sys: don&rsquo;t abort when a guest path goes through a regular file<br \/>\n&#8211; use VMA pointers instead of copies in TryWriteBacking<br \/>\n&#8211; cpu_patches: Workaround Rosetta 2 crash on VMASKMOVPS\/PD<br \/>\n&#8211; Handle ELF metadata and toolchain comments program headers<br \/>\n&#8211; common: reuse one high-resolution waitable timer per thread in AccurateSleep<br \/>\n&#8211; Don&rsquo;t abort when optional ELF metadata segments can&rsquo;t be read<br \/>\n&#8211; cpu_patches: Fix register clobbering in Rosetta 2 VMASKMOV workaround<br \/>\n&#8211; renderdoc: Add library name for macOS<br \/>\n&#8211; renderdoc: Add alternate path for macOS<br \/>\n&#8211; lru_cache: Fix early stop in ForEachItemBelow<br \/>\n&#8211; Avoid deadlock when Shutdown is re-entered on the same thread<br \/>\n&#8211; Check if elf info is initialized when shutting down<br \/>\n &nbsp;<br \/>\n<strong>Libraries<\/strong><br \/>\n&#8211; kernel: Implement I\/O event queue APIs with Core::Net integration<br \/>\n&#8211; kernel: fail rmdir on non-empty directories with ENOTEMPTY<br \/>\n&#8211; app_content: Implement sceAppContentTemporaryDataMount<br \/>\n&#8211; kernel: Try lock without wait in timed mutex if deadline has passed<br \/>\n&#8211; usbd: Implement libSceUsbStorage HLE for virtual USB media access<br \/>\n&#8211; http: allowing headers with surrounding whitespace<br \/>\n&#8211; kernel, rtc: Fix timezone and DST calculation<br \/>\n&#8211; music: Implement libSceMusicPlayerService HLE<br \/>\n&#8211; videodec2: Drain pending frames and wrap in RAII<br \/>\n&#8211; usbstorage: Correct OrbisUsbStorageDeviceInfo layout and population<br \/>\n&#8211; app_content: Implement sceAppContentAddcontUnmount<br \/>\n&#8211; app_content: Implement TemporaryData mount and unmount<br \/>\n&#8211; np_auth rewrite<br \/>\n&#8211; Ajm: Auto-detect and safely parse RIFF headers for ATRAC9<br \/>\n&#8211; libSceVoice: stub a disconnected microphone to fix BO2 and BO3 hangs<br \/>\n&#8211; net: report recv_queue_length in sceNetGetSockInfo<br \/>\n&#8211; kernel: Register missing filesystem symbols and fix \/dev\/null device<br \/>\n&#8211; kernel: return ENOENT from mkdir when the parent does not exist<br \/>\n&#8211; kernel: return EBADF when writing to a file opened read-only<br \/>\n&#8211; kernel: return EINVAL from ftruncate for bad lengths and read-only fds<br \/>\n&#8211; kernel: return ENOENT from unlink when the file does not exist<br \/>\n&#8211; pad: Implement scePadReadExt and scePadReadStateExt<br \/>\n&#8211; gnmdriver: Fix remapped compute queues starting at a stale ring offset<br \/>\n&#8211; app_content: Load additional content from linked services (SERVICE_ID_ADDCONT_ADD_n)<br \/>\n&#8211; app_content: Populate add-on entitlement keys<br \/>\n&#8211; app_content: Fix entitlement keys and service labels<br \/>\n&#8211; playgo: Fix language mask UB and default install speed<br \/>\n&#8211; kernel: Fix self-rename deletion and host path tracking in posix_rename<br \/>\n&#8211; music: Implement sceMusicPlayerServiceSetUsbStorageDeviceInfo<br \/>\n&#8211; kernel: Implement posix_flock and sceKernelFlock<br \/>\n&#8211; audio3d: Fix swapped attribute ids<br \/>\n&#8211; audio3d: Fix swapped attribute ids (OpenAL)<br \/>\n&#8211; kernel: Improve Neo mode handling and implement missing APIs<br \/>\n&#8211; kernel: return ENOENT from open(O_CREAT) when the parent does not exist<br \/>\n&#8211; videodec: libSceVdecCore HLE and VideoCore server interface callbacks<br \/>\n&#8211; np_trophy: Fix platinum trophy never unlocking<br \/>\n&#8211; threads: fix stack base value in windows<br \/>\n&#8211; share_play: Implement sceSharePlayGetCurrentConnectionInfoA<br \/>\n&#8211; net: answer PS4 device discovery on UDP 987<br \/>\n&#8211; np_score : fixed a few inaccurancy returns and data transfers<br \/>\n&#8211; kernel: Fix filesystem validation and posix_select<br \/>\n&#8211; pad: report the DualShock 4 touchpad height (942) instead of 950<br \/>\n&#8211; kernel: return ENOTDIR from mkdir when the parent is a file<br \/>\n&#8211; save_data: deliver backup completion callbacks<br \/>\n&#8211; fiber: Relocate fiber stacks away from GPU tracked heap on Windows<br \/>\n&#8211; np_score : improved score data transfer, comparable dates and improved friends ranking<br \/>\n&nbsp;<br \/>\n<strong>Video Core<\/strong><br \/>\n&#8211; Garbage Collector part 2<br \/>\n&#8211; vk_runtime: Copy every mip level in CopyImageWithBuffer<br \/>\n&#8211; Support stencil-only depth targets and decouple stencil sizing<br \/>\n&#8211; Fix CE\/DE counter synchronization in PM4 packets<br \/>\n&#8211; texture_cache: keep subresource data when its parent image is first created<br \/>\n&#8211; texture_cache: don&rsquo;t copy stale CPU-dirty image contents in ExpandImage<br \/>\n&#8211; Fix global CE task scheduling<br \/>\n&#8211; texture_cache: Drop GPU-modified images whose untracked edges the guest overwrote<br \/>\n&#8211; video_core: Handle PM4 IT_GET_LOD_STATS packet<br \/>\n&#8211; video_core: reset hash on image refresh<br \/>\n&#8211; video_core: Fix Ubscaled number format name<br \/>\n&#8211; vk_instance: Support RenderDoc on drivers without capture replay<br \/>\n&#8211; liverpool: Follow chained indirect buffers without returning<br \/>\n&#8211; liverpool: Advance past a packet by the size read before running it<br \/>\n&#8211; video_core: Compare subresource extents per dimension<br \/>\n&#8211; vk_rasterizer: Bound the render area of passes without attachments by the scissors<br \/>\n&#8211; video_core: Handle PM4 Type 2 and Rewind packets in Constant Engine<br \/>\n&#8211; video_core: Implement PM4 streamout buffer updates<br \/>\n&nbsp;<br \/>\n<strong>Shader Recompiler<\/strong><br \/>\n&#8211; Emit undefined 64-bit integers<br \/>\n&#8211; Preserve CFG fallthrough edges<br \/>\n&#8211; Stabilize phi deduplication order<br \/>\n&#8211; Account for singleton dimensions in LDS barrier analysis<br \/>\n&#8211; Exclude GetUserData from Phi folding<br \/>\n&#8211; Accept S_SLEEP as a scheduling hint<br \/>\n&#8211; Handle buffer cache invalidation instructions<br \/>\n&#8211; Add fast_shader_math setting to relax float rules<br \/>\n&#8211; info.has_derivatives.Assign now also checks for MimgModifier::CoarseDerivative<br \/>\n&#8211; Handle HW_ID.SE_ID reads<br \/>\n&#8211; Support GsOp::EmitCut in S_SENDMSG<\/em><br \/>\n&nbsp;<br \/>\nListe de compatibilit\u00e9 <a href=\"https:\/\/github.com\/shadps4-compatibility\/shadps4-game-compatibility\" target=\"_blank\" rel=\"noopener noreferrer\">ici<\/a>.<\/p>\n<p>&nbsp;<\/p>\n<p class=\"p_telecharger_icone_zip\"><p class=\"p_telecharger_icone_zip\"><a class=\"telecharger_icone_zip\" href=\"https:\/\/www.emu-france.com\/?wpfb_dl=8018\" title=\"Download ShadPS4\">T\u00e9l\u00e9charger ShadPS4 v0.21 (30.3 Mo)<\/a><\/p><\/p>\n<p class=\"p_telecharger_icone_zip\"><p class=\"p_telecharger_icone_zip\"><a class=\"telecharger_icone_zip\" href=\"https:\/\/www.emu-france.com\/?wpfb_dl=8235\" title=\"Download ShadPS4 (GUI)\">T\u00e9l\u00e9charger ShadPS4 (GUI) v398 (26.4 Mo)<\/a><\/p><\/p>\n<p class=\"p_telecharger_icone_zip\"><p class=\"p_telecharger_icone_zip\"><a class=\"telecharger_icone_zip\" href=\"https:\/\/www.emu-france.com\/?wpfb_dl=8354\" title=\"Download ShadNET\">T\u00e9l\u00e9charger ShadNET v0.1.1 build 261029 (24.6 Mo)<\/a><\/p><\/p>\n<p class=\"p_site_officiel\"><a class=\"site_officiel\" href=\"https:\/\/shadps4.net\/\" target=\"_blank\" rel=\"noopener noreferrer\">Site Officiel<\/a><\/p>\n<p class=\"p_en_savoir_plus\"><a class=\"en_savoir_plus\" href=\"https:\/\/www.emu-france.com\/emulateurs\/5-consoles-de-salon\/369-sony-playstation-4\/\">En savoir plus&#8230;<\/a><\/p>\n<div class=\"fcbkbttn_buttons_block\" id=\"fcbkbttn_left\"><div class=\"fb-share-button  \" data-href=\"https:\/\/www.emu-france.com\/?p=138779\" data-type=\"button_count\" data-size=\"small\"><\/div><\/div>","protected":false},"excerpt":{"rendered":"<p>ShadPS4 est un \u00e9mulateur pr\u00e9liminaire de PS4 pour Windows et Linux \u00e9crit en C++ cr\u00e9\u00e9 par Shadow (d&rsquo;ou il tire son nom), auteur et contributeur de projets prestigieux comme PCSX, PCSX2, PCSP, JPCSP, Arcadeflex, RPCS3&#8230; &nbsp; A noter qu&rsquo;un module &#8230;<\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"jetpack_post_was_ever_published":false},"categories":[1],"tags":[],"class_list":["post-138779","post","type-post","status-publish","format-standard","hentry","category-par-defaut","uentry","postonpage-1","odd","post-author-Jets"],"jetpack_publicize_connections":[],"jetpack_shortlink":"https:\/\/wp.me\/pKi2R-A6n","jetpack_likes_enabled":false,"jetpack_sharing_enabled":true,"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/www.emu-france.com\/index.php?rest_route=\/wp\/v2\/posts\/138779","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.emu-france.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.emu-france.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.emu-france.com\/index.php?rest_route=\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/www.emu-france.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=138779"}],"version-history":[{"count":3,"href":"https:\/\/www.emu-france.com\/index.php?rest_route=\/wp\/v2\/posts\/138779\/revisions"}],"predecessor-version":[{"id":138783,"href":"https:\/\/www.emu-france.com\/index.php?rest_route=\/wp\/v2\/posts\/138779\/revisions\/138783"}],"wp:attachment":[{"href":"https:\/\/www.emu-france.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=138779"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.emu-france.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=138779"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.emu-france.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=138779"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}