본문으로 건너뛰기
PS5PCEM

빌드 0.3.5 · 2026년 10월 16일

프로젝트 현황

에뮬레이터가 할 수 있는 일을 하위 시스템별로 정리했습니다. 게임별 단계는 호환성 페이지에 있고, 이 페이지는 그 뒤의 엔지니어링을 다룹니다.

현재 빌드

0.3.5

정식 릴리스

기록된 게임

33개 중 10개 완주

최근 확인 2026년 10월 17일

기준 시스템

NVIDIA GeForce RTX 3070 Ti

이 사이트의 모든 시간

하위 시스템

각 부분의 현재 상태

전체 목록이 있는 구현 현황 문서를 요약했습니다.

Guest execution

작동

Native x86-64 guest execution on Windows and Linux, 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.
  • Linux 0.3.5 adds native execution, X11 presentation, PulseAudio and guest fibers; Windows game measurements do not establish Linux performance.

AGC command stream

부분

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

  • Ordered AGC completion acknowledgement removes intermittent retirement races.
  • Two bounded CPU workers prepare graphics and compute commands while one Vulkan backend owner preserves execution and completion order.
  • 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

부분

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.
  • Typed buffer accesses retain their resource bindings and per-access formats; comparison samplers follow the instructions that use them.
  • Asynchronous pipeline compilation is enabled by default with two workers and a compute shader warmup catalog.
  • Version 0.3.4 adds bounded S_SWAPPC_B64/S_CALL_B64 subroutines and verified fetch returns, native-format BY2/BY4 and PCK2/PCK4 loads, horizontal gathers, DS atomics and permutes.
  • The October 9 scalar-call checkpoint passes 259/259 GPU-analysis and 232/232 Vulkan tests; RDNA2 passes 271/281 with the same ten existing failures and one reported leak. Instruction probes do not establish new game FPS results.

Vulkan rendering

작동

The default renderer on Windows and Linux: 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.
  • Timeline retirement avoids waits for unrelated buffers and retains upload data until its GPU readers complete. Public guest completion remains ordered.
  • Correct HTILE/DCC metadata clears and a larger Tetris render-target cache reduce stale UI copies and repeated readbacks.
  • GPU compute detile covers 4/8/16-byte 2D and 3D standard and PRT surfaces; RB+ and MSAA still fall back to the CPU.
  • Single-sample packed 11/11/10 UNORM targets now blend through a storage-buffer copy and fragment-shader unpack/blend/repack path. Game lighting remains incomplete.
  • VideoOut reports 1080p SDR and keeps 120 Hz unavailable; the default game preference requests performance mode. Internal resolution remains game-controlled.

Direct3D 12 rendering (experimental)

부분

A native Windows backend in development builds after 0.3.5, selected in launcher Settings or with PS5_GRAPHICS_API=d3d12. Games do not run through it yet.

  • Native device, direct queue, fences, upload/default/readback buffers, raw UAV descriptors and GPU copies behind a small C interface over COM.
  • RDNA2 shaders reuse the shared decoder, IR and SPIR-V generation, then go through SPIRV-Cross to HLSL and D3DCompiler Shader Model 5.1 bytecode.
  • Bounded DISPATCH_DIRECT, a restricted DRAW_INDEX_AUTO into one linear RGBA8 target, and a three-buffer DXGI flip swapchain with the renderer and FPS in the window title.
  • Hardware probes passed on an RTX 3070 Ti on 17 October 2026. Raiden IV stops at its first indexed draw, so no D3D12 game boot or FPS is claimed; Linux keeps Vulkan.

Audio and media

작동

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.
  • The observed PS5 multichannel ATRAC9 layout decodes as interleaved mono streams; Yōtei movie audio now starts at the correct point.
  • The unsupported movie haptics track preserves timing through silence, without emulating controller vibration. Competing audio ports no longer repeatedly reopen the host device.

Input

작동

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.
  • Windows games now drive rumble and LightBar through scePad calls, with coordinated Sony HID output and XInput motor fallback. DualSense USB feedback is physically confirmed; advanced audio haptics and adaptive triggers remain unsupported.
  • Launcher-managed input profiles support controller, keyboard or hybrid control.

Windows and Linux launchers

작동

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

  • Remembers up to 48 titles, with grid/table views, search, release display and update checks.
  • Ships the debug PKG extractor with NAPS mapping and Kraken payload support.
  • Reads artwork from each title's local sce_sys/icon0.png.
  • Detects DualSense and DualShock controllers and persists sound and input profiles.
  • Version 0.3.5 ships a GTK 3 Linux launcher and four Linux package formats. Installed packages and AppImages use writable XDG settings and data directories.
  • The development build after 0.3.5 adds Turkish, Japanese, Hindi and Korean, for twelve interface languages in both launchers.

Memory

작동

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.
  • MemoryPool reserve, expand, commit, decommit, batch and statistics use shared backing with ownership checks and rollback. Batch MOVE remains unsupported.

Fonts, PNG, RTC and AMPR

부분

FreeType glyph rendering, PNG encoding, calendar operations and software counter commands replace further HLE placeholders.

  • Noto Sans fallback, glyph metrics, rasterization, clipping, scaling, slant and kerning are implemented. Missing-glyph fallback fixes Jurassic Park's font-atlas startup; writing-line APIs remain incomplete.
  • PNG accepts pitched RGBA/BGRA and produces 8-bit RGB/RGBA at compression levels 0–9. RTC adds validation, FILETIME conversions and checked tick arithmetic; host DST conversion remains absent.
  • AMPR provides 128 software counters, coherent pairs, timestamps and deferred counter waits with ordered completion. WaitOnAddress remains a placeholder.
  • The release preparation passes all 594 HLE tests; no new full playthrough or FPS improvement is inferred from these checks.

VR presentation

보류

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.

일부러 주장하지 않는 것

메뉴는 게임플레이가 아니고, 렌더링된 프레임이 플레이 가능하다는 뜻도 아닙니다. 올바르게 그리지만 플레이하기에는 너무 느린 게임도 있으며 그렇게 기록되어 있습니다. 여기서는 어떤 빌드에서도 확인하지 않은 단계를 주장하지 않습니다.

더 깊이

저장소의 문서

하위 시스템의 내부 구조(RDNA2, GPU, Vulkan, 메모리, 로더, HLE, CPU, 진단, 런타임)는 아키텍처 문서에 정리되어 있습니다.

개발 후원하기

PS5PCEM은 GPL-3.0-or-later이며 공개적으로 개발됩니다. 후원 방법은 Boosty와 Patreon 두 가지입니다.