feat: add emulator profiles and cross-reference engine (tier 2)
New two-tier architecture:
- Tier 1: Platform configs (what the UI checks) - unchanged
- Tier 2: Emulator profiles (what the code actually loads)
11 emulator profiles from source code analysis:
cemu, citra, dolphin, duckstation, flycast,
melonds, pcsx2, ppsspp, rpcs3, vita3k, xemu
Each profile documents every file the emulator loads with
source code references (file:line), hashes, and notes.
New scripts/cross_reference.py computes gaps between what
platforms declare and what emulators need.
Current gap: 200 undeclared files, 24 already in repo.
DuckStation alone recognizes 105 PS1/PS2 BIOS variants.
generate_pack.py gains --include-extras flag (future use).
_registry.yml maps platforms to their emulators.
2026-03-17 18:46:38 +01:00
|
|
|
emulator: PPSSPP
|
2026-03-25 07:00:17 +01:00
|
|
|
type: standalone + libretro
|
|
|
|
|
core_classification: official_port
|
|
|
|
|
source: "https://github.com/libretro/ppsspp"
|
|
|
|
|
upstream: "https://github.com/hrydgard/ppsspp"
|
|
|
|
|
profiled_date: "2026-03-24"
|
2026-03-18 05:19:57 +01:00
|
|
|
core_version: "Git"
|
|
|
|
|
display_name: "Sony - PlayStation Portable (PPSSPP)"
|
2026-03-25 07:00:17 +01:00
|
|
|
cores:
|
|
|
|
|
- ppsspp
|
feat: add emulator profiles and cross-reference engine (tier 2)
New two-tier architecture:
- Tier 1: Platform configs (what the UI checks) - unchanged
- Tier 2: Emulator profiles (what the code actually loads)
11 emulator profiles from source code analysis:
cemu, citra, dolphin, duckstation, flycast,
melonds, pcsx2, ppsspp, rpcs3, vita3k, xemu
Each profile documents every file the emulator loads with
source code references (file:line), hashes, and notes.
New scripts/cross_reference.py computes gaps between what
platforms declare and what emulators need.
Current gap: 200 undeclared files, 24 already in repo.
DuckStation alone recognizes 105 PS1/PS2 BIOS variants.
generate_pack.py gains --include-extras flag (future use).
_registry.yml maps platforms to their emulators.
2026-03-17 18:46:38 +01:00
|
|
|
systems: [sony-psp]
|
|
|
|
|
|
2026-03-25 07:00:17 +01:00
|
|
|
pack_structure:
|
|
|
|
|
libretro: "PPSSPP"
|
feat: add emulator profiles and cross-reference engine (tier 2)
New two-tier architecture:
- Tier 1: Platform configs (what the UI checks) - unchanged
- Tier 2: Emulator profiles (what the code actually loads)
11 emulator profiles from source code analysis:
cemu, citra, dolphin, duckstation, flycast,
melonds, pcsx2, ppsspp, rpcs3, vita3k, xemu
Each profile documents every file the emulator loads with
source code references (file:line), hashes, and notes.
New scripts/cross_reference.py computes gaps between what
platforms declare and what emulators need.
Current gap: 200 undeclared files, 24 already in repo.
DuckStation alone recognizes 105 PS1/PS2 BIOS variants.
generate_pack.py gains --include-extras flag (future use).
_registry.yml maps platforms to their emulators.
2026-03-17 18:46:38 +01:00
|
|
|
|
2026-03-25 07:00:17 +01:00
|
|
|
data_directories:
|
|
|
|
|
- ref: ppsspp-assets
|
|
|
|
|
destination: ""
|
|
|
|
|
source_ref: "libretro/libretro.cpp:537,549"
|
feat: add emulator profiles and cross-reference engine (tier 2)
New two-tier architecture:
- Tier 1: Platform configs (what the UI checks) - unchanged
- Tier 2: Emulator profiles (what the code actually loads)
11 emulator profiles from source code analysis:
cemu, citra, dolphin, duckstation, flycast,
melonds, pcsx2, ppsspp, rpcs3, vita3k, xemu
Each profile documents every file the emulator loads with
source code references (file:line), hashes, and notes.
New scripts/cross_reference.py computes gaps between what
platforms declare and what emulators need.
Current gap: 200 undeclared files, 24 already in repo.
DuckStation alone recognizes 105 PS1/PS2 BIOS variants.
generate_pack.py gains --include-extras flag (future use).
_registry.yml maps platforms to their emulators.
2026-03-17 18:46:38 +01:00
|
|
|
|
|
|
|
|
notes: |
|
2026-03-25 07:00:17 +01:00
|
|
|
Full HLE emulator. No Sony firmware or BIOS required.
|
|
|
|
|
All PSP kernel modules (flash0:/kd/*.prx) are reimplemented in C++.
|
|
|
|
|
Libretro core loads assets from system/PPSSPP/ via VFS.
|
|
|
|
|
Assets include replacement PGF fonts (18 files in flash0/font/),
|
|
|
|
|
game compatibility database (compat.ini), language mapping (langregion.ini),
|
|
|
|
|
and post-processing shaders (shaders/).
|
|
|
|
|
Libretro fork (2020-03-18) behind upstream.
|
|
|
|
|
PSP_DEFAULT_FIRMWARE = 660 (Core/ConfigValues.h:40).
|
|
|
|
|
|
|
|
|
|
files:
|
|
|
|
|
- name: "ppge_atlas.zim"
|
|
|
|
|
path: "PPSSPP/ppge_atlas.zim"
|
|
|
|
|
description: "PPGe dialog texture atlas for save/load dialogs, on-screen keyboard, system UI"
|
|
|
|
|
required: false
|
|
|
|
|
source_ref: "Core/Util/PPGeDraw.cpp:227-228"
|
|
|
|
|
note: "PanicAlert if missing. System dialogs render without graphics but core continues running."
|
|
|
|
|
|
|
|
|
|
- name: "ppge_atlas.meta"
|
|
|
|
|
path: "PPSSPP/ppge_atlas.meta"
|
|
|
|
|
description: "PPGe atlas metadata (glyph positions, UV coords)"
|
|
|
|
|
required: false
|
|
|
|
|
source_ref: "Core/Util/PPGeDraw.cpp:235-237"
|
|
|
|
|
note: "Loaded after ppge_atlas.zim. Without it, dialog UI has no glyph layout."
|