Files
niakw--Prospero.Eden-Encore/README.md
T

20 KiB
Raw Blame History

Prospero.Eden Encore logo

Prospero.Eden Encore

Console-native emulation, made for the living room.

A maintained, controller-first continuation of ProsperoEden — focused on firmware 13.60, safer startup, modern game loading, TV navigation and reproducible native builds.

English · Français

Firmware 13.60 · hardware-tested target Vulkan + OpenGL TV-first UI Dynarmic

Install · Benefits · Compatibility · Builds · Credits

Source and host validation Native build verification License GPL-3.0-or-later

Encore tropical-night launcher artwork

Important

Firmware 13.60 is Encore's primary hardware-tested target, not a universal compatibility guarantee. The launcher and selected titles have been exercised on this firmware, but game performance, saved control profiles and end-of-match stability still need work. Other firmware versions are not qualified. A current development build is not automatically a stable release.

Before a console test: source, logs, upstream and package checklist — verify that the artifact and symbols match the exact tested SHA.


✨ Why Encore?

Emulation on a console is more than booting a game. It should be navigable from the couch, recoverable when settings go wrong and honest about what the hardware actually does.

What Encore brings
🎮 TV-first experience Tropical-neon launcher, game artwork, recent titles, controller navigation, quick settings and language support.
🧩 Newer loading formats ZBIC/zstd support for newer NSO content while retaining LZ4.
🛟 Recovery without surprises One-session Safe Launch, confirmed resets and guarded migration without silently overwriting saved preferences.
⚙️ Per-title profiles Minimum, Recommended, High and Ultra, plus Custom when you edit a preset.
🎨 Graphics choices Vulkan/RADV and OpenGL, shader cache management, upscaling and anti-aliasing controls.
🔍 Explainable performance Frame-time windows, guest/JIT activity, memory pressure, cache locks and IPC—not FPS alone.
🔐 Safer native operation One-shot filesystem access, fail-closed recovery paths, bounded logs and package provenance checks.

Our approach: preserve a working native foundation, select and adapt upstream improvements, then validate source → native package → real hardware independently.

Encore vs the original port
Dimension Original foundation Encore's emphasis
Hardware target Broad upstream development Firmware 13.60-focused qualification
Launcher Native frontend TV-first hero, library, recents and quick settings
Content loading Earlier formats ZBIC/zstd + LZ4
Recovery Base defaults Temporary Safe Launch and confirmed resets
Storage Original path behavior One internal/external root structure and guarded migration
Controller settings Base mappings Controller-first launcher profiles; game-owned actions still under investigation
Graphics Upstream rendering Pinned native adaptations and compiled-source evidence
Verification Upstream test coverage Host regressions, native packaging and device tests kept separate

Encore is not an official upstream release or a promise that every newer upstream commit has been included.


🚀 Install Encore

Tip

For a tested release, use GitHub Releases, read the release's specific firmware/gameplay validation notes, and verify checksums. GitHub Actions artifacts are experimental unless separately qualified.

Available packaging paths when published: full ZIP with the application folder; optional FFPFSC image. The native title ID is PPSA99008.

Application folder: /data/homebrew/PPSA99008/.

Persistent data root: /data/prosperoeden/, containing keys/, firmware/, roms/, updates/, mods/, save-import/ and save-export/.

Changing to external storage changes the root, not the subdirectory layout. Do not delete your persistent data root when upgrading an installation. Encore does not provide commercial software, keys, games or firmware.

Full setup and upgrades: INSTALL.md · Build from source · Support.


🎛️ Built for the couch

Feature What to expect
Home, Library, Recents Controller-friendly navigation, game metadata, cover/banner enrichment and offline fallback
Animated game launch Eden-branded case turn: local real front/back scans take priority; missing faces use cached game art. Artwork details
Quick Settings Per-title video changes without digging through debugging menus
Video profiles Minimum → Recommended → High → Ultra; Custom after manual adjustment
Safe Launch Conservative OpenGL, 1× internal resolution, 1080p, bilinear, handheld, 60 Hz and mods off for that run only
Controls Native launcher mapping profiles, vibration and deadzones
Languages Launcher catalogs for 29 languages, including complex-script text shaping
Visual tuning Resolution, filters, upscaling, sharpening and anti-aliasing options

Safe Launch does not erase saves or permanently overwrite preferences. Game-specific action binding is distinct from the launcher's physical controller mapping, and is not yet fully proven for the main match test.

Under the hood: CPU, graphics, JIT and memory
  • Dynarmic remains the production JIT. Experimental cross-core shared JIT and anticipatory compilation remain disabled in stable profiles due to unqualified concurrency/lifetime behavior.
  • Vulkan/RADV and OpenGL are independent graphics routes. The native graphics build uses pinned source adaptations, tests, source fingerprints and archive checks rather than treating source presence as proof of compiled integration.
  • Shader cache allocation and file size do not prove hit rate. Cold pipeline creation, long CPU waits and shader-cache reuse must be measured separately.
  • Memory package declarations, sparse page tables, committed guest backing and JIT code-cache policies are not interchangeable. Sparse JIT remains an experimental scope, not unlimited physical-memory access.
  • Diagnostics can distinguish a running compositor from actual guest progression; detailed capture has costs and is not automatically enabled in quiet gameplay.

See Architecture, Performance roadmap and Integration audit.


🧪 Compatibility & current limits

Target Evidence Status
Firmware 13.60 Device boot, launcher and selected title sessions Primary tested target
Other firmware versions No equivalent hardware qualification Not claimed
Newer NSO content ZBIC/zstd and LZ4 source/native paths Implemented; title-dependent
Main match test Gameplay captured across full sessions Stutters and end-match freeze unresolved
Adventure title sessions Previously reported broadly playable Not a universal compatibility claim
Custom game actions Launcher mapping ≠ guest's saved control actions In-match persistence unresolved
In-game HUD freshness Graphics activity can outlive guest progress Under investigation

Performance, stated accurately: the last available full-match capture (2efd8b3c) recorded 858 frame intervals above 50 ms, ten above 500 ms and a prolonged guest-progress stall while presentation remained active. Later changes have passed various source/native checks; no matching later device capture proves these changes improved FPS or removed the freeze.

Read the measured stress analysis · Gameplay recovery plan

Warning

A 30 FPS compositor counter is not proof that a game is advancing. Encore does not promise universal title compatibility, 60 FPS, glitch-free HUD updates or automatic conversion of custom gameplay bindings.


📦 Builds & validation

dev/ps5-sparse-jit · Source & host checks · Native package checks · On-device qualification

  1. Source and host gates: lock in memory/JIT lifetime, launcher contracts, source-provenance assertions and trace-derived regressions.
  2. Native build: compile, link, assemble, inspect the installable title and upload both application archives and debug symbols.
  3. Real hardware: independently verify startup, controls, frame pacing, content freshness, gameplay progression and safe return to the launcher.

Source preflight · Native build artifacts · Build guide

Download an artifact from a successful run matching the commit you want to test, not a previous green build. Passing CI alone does not make a release.

Changes in Encore R1

  • A firmware-13.60-focused native port with a redesigned launcher, controller-first UX and one-session Safe Launch.
  • ZBIC/zstd loading alongside the existing LZ4 path.
  • Title-aware video presets, multilingual UI and guarded data migration.
  • A pinned native graphics/toolchain integration with explicit provenance and regression checks.
  • Reworked observability and crash-recovery paths, with open tracking of gameplay stutter, content freshness and saved in-game controls.

🛡️ Safety, independence and responsible use

Encore hardens one-shot filesystem operations and rejects unsafe migrations, but filesystem access is not a post-elevation sandbox. Bounded logs, pinned sources and automated checks reduce specific risks without making the environment infallible.

See SECURITY.md, CONTRIBUTING.md, SUPPORT.md and CODE_OF_CONDUCT.md.

This is an unofficial community fork. It does not ship copyrighted commercial games, firmware, keys or DLC, and it does not grant third-party distribution rights.


Credits

Encore is built from and depends on the work of many upstream projects. The list below covers the direct repositories and pinned build/runtime inputs used by Encore. Each entry identifies its upstream author, known contributor or project-maintainer account; a project account is not presented as the sole person who wrote its code. This list is not exhaustive; transitive dependencies of Eden and the individual licence details are documented in THIRD_PARTY_NOTICES.md.

Emulator and launcher foundations

  • ProsperoEden — Authors / maintainers: BlackBearReloaded (@blackbearreloaded) — original PS5 emulator port/fork Encore is based on.
  • Eden — Authors / maintainers: Eden Emulator Project team (@eden-emulator) and contributors — emulator core used by Encore.
  • Citron Neo emulator — Authors / maintainers: Citron Neo team (@citron-neo); SM/audio fixes by @HopeSuffers — upstream HLE ServiceManager/audio initialization fixes referenced by Encore's disabled-by-default experimental backport (not part of the current shipping binary).
  • ProsperoPuzzles — Authors / maintainers: BlackBearReloaded (@blackbearreloaded) — origin of the launcher drawing/text/animation/sound framework used by Encore.

PS5 platform, graphics and packaging

  • PS5 Native App Boilerplate — Authors / maintainers: BlackBearReloaded (@blackbearreloaded) — native runtime, packaging and base platform integration.
  • PS5 OpenGL — Authors / maintainers: BlackBearReloaded (@blackbearreloaded) — OpenGL 4.6 runtime used by Encore.
  • Mihawk's PS5 Mesa — Authors / maintainers: Mihawk (@mihawk-99) and Mesa contributors — Mesa/RADV source used by the Vulkan path.
  • Mihawk's PS5 Vulkan — Authors / maintainers: Mihawk (@mihawk-99) — PS5 Vulkan/RADV build and link recipes.
  • Mihawk's PS5 PayloadSDK — Authors / maintainers: Mihawk (@mihawk-99) and upstream SDK authors — PayloadSDK fork used by the RADV toolchain.
  • PS5 Payload SDK — Authors / maintainers: John Törnblom (@john-tornblom) and contributors @ps5-payload-dev — PS5 homebrew SDK used by the native toolchain.
  • ps5-vulkan — Authors / maintainers: @mpereiraesaa and contributors — earlier PS5 Vulkan platform work used by the graphics stack.
  • PSBrew/MkPFS — Authors / maintainers: PSBrew team (@PSBrew) — optional reproducible .ffpfsc image packaging.
  • SharpProspero — Authors / maintainers: SvenGDK (@SvenGDK) — source/reference used by the native packaging toolchain.

Compatibility, media, text and build inputs

  • Encore overrides — Authors / maintainers: @niakw — companion database/source of the four general video tiers, title-specific overrides and the generated PlayStation Auto control profile.
  • ghost-land/Nlib-API — Authors / maintainers: ghost-land team (@ghost-land) and contributors — runtime title metadata and rich launcher media source (icons, 1080p banners, screenshots and local-player metadata).
  • kinnay/zbic — Authors / maintainers: @kinnay; zstd source files from Atmosphère — ZBIC/zstd NSO decompression support.
  • FFmpeg — Authors / maintainers: Fabrice Bellard (original creator), FFmpeg team and contributors — H.264/VP8/VP9 decoding in the PS5 build.
  • HarfBuzz — Authors / maintainers: Behdad Esfahbod, David Corbett, Khaled Hosny and HarfBuzz contributors — shaping for Arabic, Thai and other complex scripts in the launcher.
  • fmt — Authors / maintainers: Victor Zverovich (@vitaut) and contributors — formatting headers used by build/runtime validation paths.
  • LLVM — Authors / maintainers: LLVM community (@llvm) and contributors — compiler-rt pieces used by the PS5 cross build.
  • pacbrew — Authors / maintainers: ps5-payload-dev team and contributors — pinned PS5 OpenSSL/zlib packages.
  • zlib — Authors / maintainers: Jean-loup Gailly and Mark Adler (@madler) — pinned native dependency used by the PS5 toolchain setup.
  • Boost.Context — Authors / maintainers: Boost.Context team and Boost contributors — pinned context runtime source used by Eden's PS5 build.
  • Xbyak — Authors / maintainers: Mitsunari Shigeo (@herumi) — x86/x64 JIT assembler used by Dynarmic/Eden and adapted by Encore's JIT allocator path.
  • SPIRV-LLVM-Translator — Authors / maintainers: Khronos Group and SPIRV-LLVM-Translator contributors — macOS host-toolchain support for the graphics build.
  • stb — Authors / maintainers: Sean T. Barrett (@nothings) and authors of stb components — launcher font baking/system-font loading support.

PS5 input/audio research reused directly

All credit for the original projects belongs to their respective authors and contributors. Encore's changes do not imply endorsement by those projects or their maintainers.

Community

Prospero.Eden Encore is an unofficial community fork distributed under GPL-3.0-or-later. See LICENSE. Third-party components keep their own licenses and attribution; the component map is in THIRD_PARTY_NOTICES.md and the collected full texts are in LICENSES. Release ZIPs and the installable PS5 title carry those notices; the standalone .ffpfsc therefore keeps a legal/ directory inside the installed title.

Encore is not affiliated with, sponsored by, endorsed by, or supported by Sony Interactive Entertainment, Nintendo, the Eden Emulator Project, or other upstream projects unless they expressly state otherwise. Product, project and company names and logos are used only for attribution, compatibility identification or description of upstream lineage. Copyright licensing does not itself grant trademark rights.

No encryption keys, Nintendo firmware, commercial games, DLC, updates or other proprietary console content are included. Use only software and console data you are lawfully entitled to use.

Nlib is queried at runtime; Encore does not ship a pre-seeded Nlib media library. Copyright/trademark rights in remote icons, banners, screenshots and metadata remain with their respective rightsholders. Encore does not claim that such remote media is public-domain, royalty-free or independently redistributable.

The launcher SFX are generated locally and deterministically by tools/launcher/generate-sfx.py; no third-party audio samples or external generative-audio service output is included.

This project is provided without warranty, subject to the complete terms in the applicable licenses.