SharpEmu est un émulateur PlayStation 5 expérimental développé par par274, entièrement écrit en C# et conçu pour fonctionner sur Windows, Linux et macOS, même si le développement se concentre surtout sur Windows. Le projet est codé from scratch, sans reprendre d’autres émulateurs, et sert autant d’émulateur que de plateforme d’étude de l’architecture PS5.

L’émulateur est encore très jeune: aucun jeu commercial n’est jouable, mais il peut déjà charger des eboot.bin, exécuter des instructions CPU, lire les métadonnées des jeux, charger des modules système et initier certaines étapes du pipeline graphique. Plusieurs jeux testés atteignent des stades avancés comme sceVideoOut ou AGC, ce qui montre que le rendu commence à fonctionner, même si encore limité.
Le développement est actif, avec des builds Windows disponibles et des progrès réguliers. SharpEmu se concentre sur la mise en place d’une base technique solide avant de viser la compatibilité avancée ou la jouabilité.
En résumé, SharpEmu est un projet PS5 ambitieux, méthodique et en pleine construction, qui pose les fondations nécessaires pour une future émulation complète de la console.

Voici les changements:
– Game compat updates (#691) (996de70)
– [GUI] Update library page layout (#690) (77f2297)
– [GUI] Redesign options page (#699) (f08308d)
– fix vulkan error from astrobot (#689) (5f1bd5a)
– [GUI] Update window chrome controls (#700) (753ddf9)
– Merge media decoding into one FFmpeg bridge (#706) (5864328)
– Shader cfg ssa (#707) (444af50)
– VideoOut: track guest-flip FPS and label load/stall gaps (#708) (ec65419)
– Metal: skip waitUntilCompleted when the command buffer is already Completed (#709) (79aa764)
– Metal: opt-in long-edge drawable cap via SHARPEMU_METAL_CAP_DRAWABLE (#711) (b75e4e0)
– Pad: implement scePadGetTriggerEffectState under its own NID (#712) (b572738)
– Apply SDWA ABS/NEG as float sign-bit, not integer, modifiers (#713) (539baa6)
– Shader: implement V_BFE_I32 and correct VOP3 0x36A mapping (#714) (e5e02c0)
– gpu: size single-channel 16-bit and two-channel 8-bit formats (#715) (fc5b6ba)
– Vulkan: enable textureCompressionBC when the device supports it (#716) (0dd5433)
– Share one guest image across sRGB/UNORM aliases (#717) (e1695cf)
– fix(gpu): one vertex attribute per guest stream view (#718) (eb0653e)
– AGC: follow command-buffer branches across arena switches (#720) (3f9bd2b)
– AGC: deliver compute-queue completion events at the queue fence (#721) (531e35b)
– fix(gpu): reflect guest CPU writes into large and render-target-aliased images (#722) (82c2c7f)
– Kernel: correct equeue event delivery and waiter lifetime (#723) (816ec4a)
– CPU: gate periodic import logs and fast-path memcpy/memmove leaves (#724) (532251c)
– Ampr: cooked-id index preload and host FD LRU cache (#725) (93c9f14)
– Vulkan: abandon timed-out guest fences without blocking later frames (#726) (c4ae4a2)
– Combined: Pad, AGC, Metal, Vulkan, Ampr, overlay, and CPU hot-path fixes (#727) (97bd8c4)
– [GUI] Add inline per-game settings and unify options styling (#728) (a7ec3d5)
– AGC: retain label producers and report failed release writes (#719) (ecd6570)
– Required imports for Astro Bot (#710) (544f588)
– [GUI] Add grid settings to GUI and implement grid snapping (#729) (7c9740f)
– [GUI] few stability patches for GUI (#732) (c387b96)
– Astrobot – Vulkan fix (#733) (a8fa9c9)
– AGC: correct GS program registers, stop dropping rect-list draws, add a missing size export (#734) (ea9be74)
– Icons in about section (#735) (5ee7cd1)
– Astrobot – Vulkan fix : 0x8A (#736) (cf3bd0b)
– AGC: honour DCC fast clears instead of drawing the clear quad (#738) (4b5ea6a)
– [Memory/Kernel] Fix Windows allocation-granularity and mutex-resolution bugs (#748) (f36ce40)
– Ampr: fix path case on Linux (#750) (8df4039)
– Fix Vulkan presenter synchronization and frame handling issues (#747) (f3d9439)
– Renderdoc (#753) (8eb2c1e)
– [videoout] guard degenerate guest buffer ranges (#755) (26bda04)
– chore: bump version to 0.0.3-release.2 (#756) (da0de5c)
Télécharger Sharpemu v0.0.3 R2 (56.7 Mo)
Site Officiel
En savoir plus…