SharpEmu PS5 模拟器 Cover

SharpEmu PS5 模拟器

SharpEmu是一款完全用 C# 编写的 PS5 模拟器,可在 Windows、Linux 和 macOS 上运行。

游戏分类-
游戏大小-

重要提示:为防止链接经常被吞,一定要先保存到自己网盘,再下载

游戏截图

游戏简介

SharpEmu 可以加载真实 PS5 游戏的 eboot.bin 文件,并运行真正的 PlayStation 5 CPU 指令,而不是简化的替代指令。它可以读取游戏元数据(例如标题和版本),加载系统模块,并处理游戏依赖的大部分内核调用。部分游戏甚至可以运行到提交着色器并将视频帧输出到屏幕的程度。

SharpEmu 功能特色

CPU模拟
PS5 采用 AMD Zen 2 x86-64 芯片,因此与 PS3 或 PS2 模拟器不同,它无需解码特殊的指令集。难点不在于 CPU 本身,而在于围绕它运行的所有组件。SharpEmu 会解析游戏的 eboot.bin 文件和任何捆绑的 .elf 模块,并像真实主机一样将它们映射到内存中,然后在设置好正确的寄存器和内存状态后,将执行权交给主机 CPU。

系统模块和内核调用
PS5 游戏很少独立运行。它们通过 prx 和 sys_module 加载系统模块,这与真实操作系统向游戏提供音频、输入和线程等共享库的机制相同。SharpEmu 加载这些模块,并重新实现游戏通过这些模块发出的越来越多的内核调用,包括 Fiber 调度 API 的部分内容以及用于底层资源管理的 AMPR 导出。

图形:AGC 和着色器提交
PS5 游戏通过 AGC(索尼为主机提供的底层图形库)与 GPU 通信,而不是像 DirectX 那样使用友好的封装库。游戏要绘制任何内容,其着色器和资源提交都必须被拦截并转换为 PC GPU 可以理解的格式。在测试中,少数游戏能够成功提交实际的着色器并通过 PS5 的视频输出调用 sceVideoOut 输出实际帧,但随后就会出现问题。

PlayGo 和游戏元数据
PS5光盘使用PlayGo来控制游戏的哪些部分优先安装或加载,因此游戏可以在整个安装完成之前启动。SharpEmu读取PlayGo场景数据以及游戏的基本元数据(例如标题和版本),这些信息足以识别游戏并进入启动阶段,从而访问对模拟真正重要的CPU和内核代码。

相关游戏