Files
libretro/emulators/vita3k.yml
T
Abdessamad Derraz 3199bc2a55 fix: state standalone versions from their code
Each standalone profile records where its version is read: the source
at its pin (clk 2026-07-23-136-g9020107, shadps4 0.20.1 WIP, eden
v0.2.0-401-g26a03d2), the APK, binary or archive read (kind package),
or, where no reading can be made, kind unverified with the reason: a
host the tools cannot read, a forge gone or not answering, no build
recorded as read, a pin on another branch. Those keep their value,
unconfirmed.
2026-10-27 19:21:40 +01:00

67 lines
3.1 KiB
YAML

emulator: Vita3K
type: standalone
source: "https://github.com/Vita3K/Vita3K"
upstream: "https://github.com/Vita3K/Vita3K"
profiled_date: "2026-10-23"
source_commit: "6ec8e6ce31f3d6099b14eb9dd0320c09ef6386b6"
core_version: "v0.2.1"
version_basis:
kind: file
path: "vita3k/CMakeLists.txt"
pattern: 'set\(VITA3K_APP_VER_HI (\d+)\)\nset\(VITA3K_APP_VER_MID (\d+)\)\nset\(VITA3K_APP_VER_LO (\d+)\)\nset\(VITA3K_APP_VERSION "v'
format: "v{1}.{2}.{3}"
display_name: "Vita3K (PS Vita)"
cores:
- vita3k
- "vita3k-sa"
systems: [sony-playstation-vita]
# Standalone emulator, no libretro core exists.
# Firmware PUP files are one-time installations: install_pup() decrypts and
# extracts partition images (os0, vs0, sa0, pd0) into the emulator data directory.
# The PUP file itself is deleted after extraction.
# Three separate PUP packages exist on Sony servers:
# 1. PSVUPDAT.PUP (main firmware) from psv.update.playstation.net
# 2. PSP2UPDAT.PUP (font package) from psp2.update.playstation.net (sd_ prefix)
# 3. PSP2UPDAT.PUP (preinst firmware) from psp2.update.playstation.net (pre_ prefix)
# Vita3K uses hybrid LLE/HLE: some modules always loaded from firmware (libc,
# libSceFt2, libpvf, libcdlg), others toggleable per-module via settings.
files:
- name: PSVUPDAT.PUP
path: "psvita/PSVUPDAT.PUP"
required: true
hle_fallback: true
note: >
Main PS Vita firmware. Decrypted via SCE keys, extracts os0 (kernel),
vs0 (system modules and apps), sa0 (fonts), pd0 (system data).
Games load LLE modules from vs0/sys/external/*.suprx. Preload modules
(libc, libSceFt2, libpvf) are always LLE. Without firmware most games fail.
Some simple titles may run on HLE alone.
source_ref: "vita3k/packages/src/pup.cpp:260-314, vita3k/app/src/app.cpp:176, vita3k/module/src/load_module.cpp:142-161, 187"
- name: PSP2UPDAT.PUP
path: "psvita/PSP2UPDAT.PUP"
required: false
hle_fallback: true
note: >
Supplementary firmware font package. Populates the sa0 partition with
system fonts (PVF format), which the renderer registers as the firmware
font directory when the partition holds content.
source_ref: "vita3k/packages/src/pup.cpp:296-297, vita3k/app/src/app.cpp:177, vita3k/renderer/src/renderer.cpp:161-167"
notes: |
Standalone PS Vita emulator. No libretro core.
Firmware installed via File > Install Firmware or CLI --firmware flag.
PUP files validated by SCEUF magic header only (vita3k/packages/src/pup.cpp:119), no hash check.
After install, four partitions are extracted:
os0 (FAT, kernel modules), vs0 (FAT, system modules/apps),
sa0 (FAT, fonts), pd0 (exFAT, system data/BGM).
Module loading: app0:sce_module/{name}.suprx (game-bundled) then
vs0:sys/external/{name}.suprx (firmware). Auto-LLE modules include
libhttp, libssl, libult, libsas, libpgf, libfios2, libsystemgesture,
libSceXml, libSceSqlite, librudp, libatrac, libface, libsmart,
libsceavplayer, libSceJson, and more (vita3k/module/src/load_module.cpp:142-162).
A third optional preinst firmware PUP (pd0 partition: system BGM, resources)
is available from Sony but not commonly required for game compatibility.