mirror of
https://github.com/Abdess/retroarch_system.git
synced 2026-04-13 04:12:33 -05:00
New profiles: citron (Switch), clk (multi-system), demul (Hikaru), eka2l1 (Symbian/N-Gage), gsplus (Apple IIGS), lexaloffle (PICO-8), openmsx (MSX), ryujinx (Switch), shadps4 (PS4), tsugaru (FM Towns), x16emu (Commander X16), xroar (Dragon/CoCo), zc210 (Zelda Classic). Updated: amiberry, fsuae (standalone Amiga), ymir (Saturn standalone).
136 lines
4.6 KiB
YAML
136 lines
4.6 KiB
YAML
emulator: shadps4
|
|
type: standalone
|
|
source: "https://github.com/shadps4-emu/shadPS4"
|
|
upstream: "https://github.com/shadps4-emu/shadPS4"
|
|
profiled_date: "2026-03-26"
|
|
core_version: "pre-release 2026-03-25"
|
|
display_name: "shadPS4 (PlayStation 4)"
|
|
cores:
|
|
- shadps4
|
|
systems:
|
|
- ps4
|
|
mode: standalone
|
|
analysis_date: "2026-03-26"
|
|
analysis_commit: "31b2d9c (depth=1)"
|
|
|
|
notes: |
|
|
shadPS4 is a standalone PlayStation 4 emulator. Most PS4 system libraries
|
|
are reimplemented in HLE. For better game compatibility, real firmware
|
|
modules (.sprx) can be loaded in LLE mode from the sys_modules/ directory.
|
|
|
|
Modules are loaded by sysmodule_internal.cpp via loadModuleInternal().
|
|
If a module exists in sys_modules/, it is loaded as LLE. If absent and
|
|
an HLE implementation exists, the emulator falls back to HLE. If neither,
|
|
the module is stubbed and games needing it may fail.
|
|
|
|
Game-specific overrides are supported: sys_modules/{CUSA_ID}/ takes
|
|
priority over the global sys_modules/ directory.
|
|
|
|
System fonts are mounted from fonts/font/ (/preinst/common/font on real
|
|
PS4) and fonts/font2/ (/system/common/font2 on real PS4). These are SST
|
|
(Sony Standard Text) typeface files in OTF format. The emulator mounts
|
|
the directories wholesale; games load individual fonts by name. Without
|
|
fonts, the emulator warns "No dumped system fonts, expect missing text
|
|
or instability."
|
|
|
|
All firmware files are extracted from a real PS4 via FTP:
|
|
- .sprx modules from /system/common/lib/
|
|
- font/ from /preinst/common/font/
|
|
- font2/ from /system/common/font2/
|
|
|
|
Batocera configgen (shadps4Generator.py) configures display, input, and
|
|
saves but does not map BIOS/firmware paths. The emulator uses its own
|
|
user directory for sys_modules/ and fonts/.
|
|
|
|
files:
|
|
- name: "libSceLibcInternal.sprx"
|
|
required: false
|
|
hle_fallback: true
|
|
path: "shadps4/sys_modules/"
|
|
description: "PS4 C standard library"
|
|
source_ref: "src/core/libraries/sysmodule/sysmodule_internal.cpp:221"
|
|
|
|
- name: "libSceNgs2.sprx"
|
|
required: false
|
|
hle_fallback: true
|
|
path: "shadps4/sys_modules/"
|
|
description: "PS4 next-generation audio system"
|
|
source_ref: "src/core/libraries/sysmodule/sysmodule_internal.cpp:213"
|
|
|
|
- name: "libSceRtc.sprx"
|
|
required: false
|
|
hle_fallback: true
|
|
path: "shadps4/sys_modules/"
|
|
description: "PS4 real-time clock library"
|
|
source_ref: "src/core/libraries/sysmodule/sysmodule_internal.cpp:215"
|
|
|
|
- name: "libSceJpegEnc.sprx"
|
|
required: false
|
|
hle_fallback: true
|
|
path: "shadps4/sys_modules/"
|
|
description: "PS4 JPEG encoder"
|
|
source_ref: "src/core/libraries/sysmodule/sysmodule_internal.cpp:217"
|
|
|
|
- name: "libScePngEnc.sprx"
|
|
required: false
|
|
hle_fallback: true
|
|
path: "shadps4/sys_modules/"
|
|
description: "PS4 PNG encoder"
|
|
source_ref: "src/core/libraries/sysmodule/sysmodule_internal.cpp:218"
|
|
|
|
- name: "libSceFont.sprx"
|
|
required: false
|
|
hle_fallback: true
|
|
path: "shadps4/sys_modules/"
|
|
description: "PS4 font rendering library"
|
|
source_ref: "src/core/libraries/sysmodule/sysmodule_internal.cpp:224"
|
|
|
|
- name: "libSceFontFt.sprx"
|
|
required: false
|
|
hle_fallback: true
|
|
path: "shadps4/sys_modules/"
|
|
description: "PS4 FreeType font library"
|
|
source_ref: "src/core/libraries/sysmodule/sysmodule_internal.cpp:225"
|
|
|
|
- name: "libSceUlt.sprx"
|
|
required: false
|
|
path: "shadps4/sys_modules/"
|
|
description: "PS4 user-level threading library"
|
|
source_ref: "src/core/libraries/sysmodule/sysmodule_internal.cpp:214"
|
|
|
|
- name: "libSceJpegDec.sprx"
|
|
required: false
|
|
path: "shadps4/sys_modules/"
|
|
description: "PS4 JPEG decoder"
|
|
source_ref: "src/core/libraries/sysmodule/sysmodule_internal.cpp:216"
|
|
|
|
- name: "libSceJson.sprx"
|
|
required: false
|
|
path: "shadps4/sys_modules/"
|
|
description: "PS4 JSON parser"
|
|
source_ref: "src/core/libraries/sysmodule/sysmodule_internal.cpp:219"
|
|
|
|
- name: "libSceJson2.sprx"
|
|
required: false
|
|
path: "shadps4/sys_modules/"
|
|
description: "PS4 JSON v2 parser"
|
|
source_ref: "src/core/libraries/sysmodule/sysmodule_internal.cpp:220"
|
|
|
|
- name: "libSceCesCs.sprx"
|
|
required: false
|
|
path: "shadps4/sys_modules/"
|
|
description: "PS4 character encoding conversion"
|
|
source_ref: "src/core/libraries/sysmodule/sysmodule_internal.cpp:222"
|
|
|
|
- name: "libSceAudiodec.sprx"
|
|
required: false
|
|
path: "shadps4/sys_modules/"
|
|
description: "PS4 audio decoder"
|
|
source_ref: "src/core/libraries/sysmodule/sysmodule_internal.cpp:223"
|
|
|
|
- name: "libSceFreeTypeOt.sprx"
|
|
required: false
|
|
path: "shadps4/sys_modules/"
|
|
description: "PS4 FreeType OpenType library"
|
|
source_ref: "src/core/libraries/sysmodule/sysmodule_internal.cpp:226"
|