Repository navigation
Fork Feature Gaps
114Source-attributed records, not necessarily 109 missing features
30Source groups with tracked register IDs
140Linked projects and related services in the A–Z directory
5Confirmed delivered since the earlier audit, retained for history
Search feature IDs Tracked sources PC CARD / PS2CF Controller forks Browse all projects A–Z Audit methodology Retired IDs
Features, fixes and companion workflows found across PS2 loaders, forks and tools, together with implemented work, historic proposals and design alternatives. Original entries were source-compared at the date recorded for each audit; subsequent merges can change whether a gap remains open. Project links and evidence are preserved for reproducibility.
A tracking list, not a roadmap
An entry documents a source-specific capability absent from RiptOPL or its PS2-Servers companion, with optional design choices and experimental features separately labelled. An entry does not promise a port.
Broad source comparison dated 2026-10-08 UTC (2026-10-07 Pacific); RA merge reconciled on 2026-10-08 Pacific against
rebuild/main@9ef8d643.
This pass rechecks changed OPHTML, LUNA, xeRAbora/OPL-RA and PS2-Launcher sources, verifies the surveyed repositories' current revisions,
and reconciles already implemented RiptOPL features. Existing historical rows retain their original evidence unless explicitly updated.
See revision and validation scope and retired IDs.
A focused 2026-10-15 supplement adds PS2CF and four newly surveyed launcher/OPL derivatives; the October 8 baseline is otherwise unchanged. New sections begin at PS2CF. Stable IDs are never reassigned. Tools and developer APIs are distinguished from game-loading features; source, emulator and console evidence are separate.
| Code | Source | What it is | Records |
|---|---|---|---|
CA |
Caduceus (PC) | Windows game-library manager, bundled OPLServer SMB host and xeRAbora-based achievement companion; compared against PS2-Servers below | 7 |
CO |
Caduceus OPL | XMB-style OPL console client paired with Caduceus, including a console achievement browser; related to already-listed OR4 | 7 |
CF |
PS2CF | Early Japanese PS2 PC CARD CompactFlash/SD-to-CF game loader and wLaunchELF filesystem driver (2026-10-14 release) | 4 |
DB |
OPL-DualSense-BT | DualSense Bluetooth menu/in-game PADEMU support, device discovery and cable-free secure pairing | 2 |
RI |
RIPPS2 | September–October 2026 RiptOPL-derived all-in-one console launcher with integrated memory-file, card-management and in-game UI tools | 4 |
DL |
Enhanced PS2 Disc Launcher | MechaPwn physical-disc boot and PS1 DKWDRV/PS1VModeNeg handoff, with conditional import-language override | 2 |
OF |
OPL FUTURE (beta) | Experimental OPL front-end status HUD and device selector dock; physical-console validation not established | 1 |
OM |
OrbitPS2 Manager | Windows/macOS/Linux desktop OPL/PS1 library management, layout migration and ZSO transformation; compared against PS2-Servers PC tools | 2 |
SM |
PS2SMB (HTTP-backed SMB) | Proof-of-concept virtual SMB share that reads remote HTTP/HTTPS byte ranges through a persistent chunk cache; hardware validation pending | 1 |
DN |
Daniel's PS5-style OPL | OPL fork with a PS5-like theme, GS-based frosted-glass compositing, horizontal card shelf and cover-art crossfade | 2 |
W |
wOPL | The continuation of KrahJohlito's uOPL | 4 |
O |
OPLattice | Grid themes, the SHELF interface and theme tooling | 15 |
OH |
OPHTML | HTML/CSS declarative UI compiler, zero-allocation C99 runtime and standalone Neutrino console launcher | 12 |
U |
Upstream OPL | Upstream changes and historical proposals not implemented in RiptOPL | 3 |
B |
BoliviaOS | A multifunction PS2 environment built on OPL | 7 |
P |
PS2-Launcher | An OPL-based launcher with a console-style interface | 7 |
OR |
ORBIT | A Neutrino-based PS2 launcher with console-side saves, achievements and a companion game catalog | 3 |
T |
Project Titan Magenta Edition | A PS2 operating-system/system-platform project with integrated game engines | 10 |
E |
OPL-Evolution | An experimental OPL fork with a unified dashboard | 1 |
H |
xeRAbora | RetroAchievements for real PS2 hardware | 0 |
R |
RETROLauncher | A Lua launcher for retro emulators and PS2 games | 1 |
M |
Modulo R1 | A Neutrino-based loader in beta | 1 |
N |
NHDDL | A deliberately small Neutrino front-end and launcher | 2 |
LU |
LUNA | An NHDDL/Neutrino-derived visual loader with a coordinated frontend/runtime, by darkladark | 9 |
L |
Extended APA | An OPL build for internal HDDs larger than 2 TiB | 1 |
X |
E2OPL | A historical OPL fork adding EXT2 USB storage | 1 |
MP |
Modular PADEMU | A historical modular controller-emulation branch | 2 |
K |
uOPL (historical) | KrahJohlito-era uOPL before the later wOPL line | 1 |
RR |
RRVE / exaconn OPL | The former RRVE repository, now carrying wheel and negCon experiments | 1 |
S |
Stable OPL | A stability-focused OPL fork with storage-driver changes | 1 |
Twelve more projects were checked and had nothing RiptOPL lacks — see Checked, nothing missing.
All 114 source-attributed records, not 114 independently missing capabilities. Some are optional designs, overlapping capabilities, experimental work, or now-implemented fixes. IDs never change when status changes; the older source descriptions below are preserved unless corrected by explicit merge evidence. Click a column heading to sort.
| ID | Feature | Area | Source | Type | Current assessment |
|---|---|---|---|---|---|
CA1 |
Curated SQLite desktop catalogue | PC library | Caduceus (PC) | Tool | Tracked / reassess |
CA2 |
ISO import, installed status and transfer queue | PC library | Caduceus (PC) | Tool | Tracked / reassess |
CA3 |
Cover conversion, migration and repair | PC artwork | Caduceus (PC) | Tool | Tracked / reassess |
CA4 |
PC RetroAchievements account/live progress dashboard | PC RetroAchievements | Caduceus (PC) | Tool | Tracked / reassess |
CA5 |
Live game detection and Discord presence | PC companion | Caduceus (PC) | Tool | Tracked / reassess |
CA6 |
Importable catalogue and safe SQLite backups | PC reliability | Caduceus (PC) | Tool | Tracked / reassess |
CA7 |
Guided first-run PS2 connection setup | PC onboarding | Caduceus (PC) | Tool | Tracked / reassess |
CO1 |
Interpolated XMB category and game-list rail | Console UI | Caduceus OPL | Optional | Tracked / reassess |
CO2 |
Game-details card with automatic RA checks | Console RetroAchievements | Caduceus OPL | Feature | Tracked / reassess |
CO3 |
Browse RA account achievements on the console | Console RetroAchievements | Caduceus OPL | Feature overlaps OR4 | Implemented / verify on hardware |
CO4 |
Text-and-points in-game unlock card | Console RetroAchievements | Caduceus OPL | Experimental | Tracked / reassess |
CO5 |
RA session-ready launch gating | Console launching | Caduceus OPL | Feature | Implemented / verify on hardware |
CO6 |
SMB ECHO and conditional reconnect on Refresh | Console network | Caduceus OPL | Fix | Implemented / verify on hardware |
CO7 |
Async initialize manual devices upon category focus | Console device handling | Caduceus OPL | Optional | Tracked / reassess |
CF1 |
PC CARD CF/ATA controller and adapter detection | Hardware & storage | PS2CF | Feature | Tracked / reassess |
CF2 |
FAT32/exFAT CF game listing, including large ISOs | Game storage | PS2CF | Feature | Tracked / reassess |
CF3 |
Read-only in-game PC CARD CF CD/DVD backend | In-game I/O | PS2CF | Feature | Tracked / reassess |
CF4 |
PC CARD cf:/ file management via wLaunchELF |
Companion file manager | PS2CF | Companion | Tracked / reassess |
DB1 |
DualSense Bluetooth input and feedback in menu/in-game | Controllers & input | OPL-DualSense-BT | Feature | Tracked / reassess |
DB2 |
Wireless pad scan and Secure Simple Pairing in OPL GUI | Controllers & input | OPL-DualSense-BT | Feature | Tracked / reassess |
RI1 |
VMC image browsing and PSU save management | File and save tools | RIPPS2 | Optional | Tracked / reassess |
RI2 |
Native physical memory-card backup and management UI | Memory cards | RIPPS2 | High-risk | Tracked / reassess |
RI3 |
In-game pause, resume, achievements and exit overlay | In-game UI | RIPPS2 | Experimental | Tracked / reassess |
RI4 |
Offline BIOS audio-to-theme pack toolchain | PC tools | RIPPS2 | Tool | Tracked / reassess |
DL1 |
Physical PS1 disc DKWDRV/PS1VModeNeg handoff | Disc launching | Enhanced Disc Launcher | Companion | Tracked / reassess |
DL2 |
Conditional import-disc OSD language override | Disc launching | Enhanced Disc Launcher | Optional | Tracked / reassess |
OF1 |
Dedicated carousel/device dock/status HUD UI primitives | Theme engine | OPL FUTURE | Optional | Tracked / reassess |
OM1 |
Convert PS1 VCD launcher layout between POPStarter and RiptOPL/POPSLoader, including batch migration | PC PS1 library | OrbitPS2 Manager | Tool | Tracked / reassess |
OM2 |
Local bulk ISO ↔ ZSO compression/decompression and conversion jobs | PC image tools | OrbitPS2 Manager | Tool | Tracked / reassess |
SM1 |
HTTP-range-backed, persistent-cache virtual SMB1 ISO files | PC SMB server | PS2SMB | Hardware pending | Tracked / reassess |
DN1 |
Configurable frosted-glass framebuffer blur compositing | Theme engine | PS5-style OPL | Optional | Tracked / reassess |
DN2 |
Horizontal CardShelf and crossfading cover-art wallpaper theme elements | Theme engine | PS5-style OPL | Optional | Tracked / reassess |
W1 |
Themes loaded from a .tar archive |
Theme engine | wOPL | Feature | Tracked / reassess |
W2 |
wsX widescreen X position |
Theme engine | wOPL | Feature | Tracked / reassess |
W3 |
PADEMU, GSM and cheat status icons | Theme engine | wOPL | Feature | Tracked / reassess |
W6 |
Info page without list navigation | Library & menu | wOPL | Optional | Tracked / reassess |
O1 |
Grid game list | Theme engine | OPLattice | Feature | Tracked / reassess |
O2 |
GameImage offset for non-selected games |
Theme engine | OPLattice | Feature | Tracked / reassess |
O3 |
Recently played list | Library & menu | OPLattice | Feature | Tracked / reassess |
O4 |
Sort modes | Library & menu | OPLattice | Feature | Tracked / reassess |
O5 |
MenuTabs device tab strip |
Theme engine | OPLattice | Feature | Tracked / reassess |
O6 |
GameCountText prefix and suffix |
Theme engine | OPLattice | Feature | Tracked / reassess |
O7 |
x_scaled widescreen alignment |
Theme engine | OPLattice | Feature | Tracked / reassess |
O8 |
VRAM texture budget clamp | Theme engine | OPLattice | Fix | Tracked / reassess |
O9 |
Play stats | Library & menu | OPLattice | Feature | Tracked / reassess |
O10 |
SHELF sidebar interface | Library & menu | OPLattice | Feature | Tracked / reassess |
O11 |
App subtitles | Library & menu | OPLattice | Feature | Tracked / reassess |
O12 |
Art conversion and VRAM checker | PC tools | OPLattice | Tool | Tracked / reassess |
O13 |
In-game screenshot importer | PC tools | OPLattice | Tool | Tracked / reassess |
O14 |
Browser theme previewer | PC tools | OPLattice | Tool | Tracked / reassess |
O15 |
Device staging and card sync scripts | PC tools | OPLattice | Tool | Tracked / reassess |
OH1 |
Declarative HTML/CSS flexbox compilation to zero-allocation C99 GS command list | Theme engine | OPHTML | Feature | Tracked / reassess |
OH2 |
Pre-resolved pairwise HarfBuzz font kerning on EE | Theme engine | OPHTML | Feature | Tracked / reassess |
OH3 |
Instant 1-byte palette theme switching without VRAM re-upload | Theme engine | OPHTML | Feature | Tracked / reassess |
OH4 |
Runtime 2D coordinate offsets for motion and expanding layouts | Theme engine | OPHTML | Feature | Tracked / reassess |
OH5 |
Runtime focus-subtree visibility masking with auto-bypassing navigation | Theme engine | OPHTML | Feature | Tracked / reassess |
OH6 |
Automated CRT overscan safe area and multi-layer alpha contrast linter | PC tools | OPHTML | Tool | Tracked / reassess |
OH7 |
Interactive web browser theme simulator and testbed | PC tools | OPHTML | Tool | Tracked / reassess |
OH8 |
Static VRAM budgeting and layout compiler | PC tools | OPHTML | Tool | Tracked / reassess |
OH9 |
Headless Play! emulator CI testbed with input scripting and frame diffs | PC tools | OPHTML | Tool | Tracked / reassess |
OH10 |
Fuzzed .uib loader with EE bus-alignment and malformed blob hardening |
Theme engine | OPHTML | Fix | Tracked / reassess |
OH11 |
Hard compiler safety limits for untrusted themes | Theme engine | OPHTML | Fix | Tracked / reassess |
U1 |
Per-game parental lock | Cheats, launching & network | Upstream OPL | Feature | Tracked / reassess |
U6 |
Launch announcement for Discord rich presence | Cheats, launching & network | Upstream OPL | Feature | Tracked / reassess |
U9 |
Bluetooth controller input lag | Controllers & input | Upstream OPL | Investigate | Closed upstream proposal |
B1 |
File explorer | Beyond game loading | BoliviaOS | Feature | Tracked / reassess |
B2 |
Music player | Beyond game loading | BoliviaOS | Feature | Tracked / reassess |
B3 |
Image and font viewers | Beyond game loading | BoliviaOS | Feature | Tracked / reassess |
B4 |
Text editor, code editor and terminal | Beyond game loading | BoliviaOS | Feature | Tracked / reassess |
B5 |
Memory card format and repair | Beyond game loading | BoliviaOS | Feature | Tracked / reassess |
B6 |
USB keyboard | Controllers & input | BoliviaOS | Feature | Tracked / reassess |
B7 |
PDF viewer | Beyond game loading | BoliviaOS | Feature | Tracked / reassess |
P1 |
Xbox One and Series controllers over USB | Controllers & input | PS2-Launcher | Feature | Tracked / reassess |
P2 |
Download covers from the PS2 | Library & menu | PS2-Launcher | Feature | Tracked / reassess |
P3 |
One games list across every device | Library & menu | PS2-Launcher | Feature | Tracked / reassess |
P4 |
Hold SELECT to leave a game | Controllers & input | PS2-Launcher | Feature | Tracked / reassess |
P5 |
Launch transition animation | Library & menu | PS2-Launcher | Feature | Tracked / reassess |
P6 |
More USB controllers: Steam Controller, Shanwan PS3 clones, ANT Esports GP300 | Controllers & input | PS2-Launcher | Feature | Tracked / reassess |
P7 |
Connected controller count on screen | Controllers & input | PS2-Launcher | Feature | Tracked / reassess |
OR3 |
RetroAchievements telemetry with Neutrino games | RetroAchievements | ORBIT | Feature | Implemented / verify on hardware |
OR4 |
Browse achievement titles and progress on the console | RetroAchievements | ORBIT | Feature | Implemented / verify on hardware |
OR5 |
Companion catalog for UDPFS games | Cheats, launching & network | ORBIT | Optional | Tracked / reassess |
T1 |
Graphics patches kept apart from cheats | Cheats, launching & network | Project Titan Magenta Edition | Feature | Tracked / reassess |
T2 |
Installable TPKG apps, in-process runtime and SDK | Beyond game loading | Project Titan Magenta Edition | Feature | Tracked / reassess |
T3 |
Smart IGR overlay with Resume / Return | Game compatibility | Project Titan Magenta Edition | Feature Hardware pending | Tracked / reassess |
T4 |
Named user profiles with per-profile VMC | Beyond game loading | Project Titan Magenta Edition | Feature | Tracked / reassess |
T5 |
Notification center and background-progress UI | Library & menu | Project Titan Magenta Edition | Feature | Tracked / reassess |
T6 |
Integrated lightweight web browser | Beyond game loading | Project Titan Magenta Edition | Feature | Tracked / reassess |
T7 |
Transactional .pup system updater |
Beyond game loading | Project Titan Magenta Edition | Feature | Tracked / reassess |
T8 |
Installable animated scene themes with audio | Theme engine | Project Titan Magenta Edition | Feature | Tracked / reassess |
T9 |
Xbox Bluetooth/BLE plus USB keyboard and mouse input | Controllers & input | Project Titan Magenta Edition | Feature Hardware pending | Tracked / reassess |
T10 |
Repository-backed package download pipeline | Beyond game loading | Project Titan Magenta Edition | Feature Target pending | Tracked / reassess |
E1 |
Controller, memory card, storage and network status | Library & menu | OPL-Evolution | Feature | Tracked / reassess |
R1 |
Retro emulator ROM libraries | Beyond game loading | RETROLauncher | Feature | Tracked / reassess |
M1 |
Choose between several network servers | Cheats, launching & network | Modulo R1 | Optional | Tracked / reassess |
N1 |
Generic forward-boot CLI | Launcher integration | NHDDL | Optional | Tracked / reassess |
N2 |
Reuse SYS-CONF/IPCONFIG.DAT for UDPFS IP |
Cheats, launching & network | NHDDL | Optional | Tracked / reassess |
LU2 |
Orbit depth-sorted ring library view | Library & menu | LUNA | Feature | Tracked / reassess |
LU4 |
Animated rotating ICO disc-label artwork |
Library & menu | LUNA | Feature | Tracked / reassess |
LU5 |
Per-drive Favorites that travel with the game HDD | Library & menu | LUNA | Optional | Tracked / reassess |
LU6 |
Staged temp-file writes for key persistent library state | Reliability / persistence | LUNA | Fix | Partial parity |
LU7 |
Neutrino physical power-button DEV9-safe shutdown | Game compatibility | LUNA | Fix | Tracked / reassess |
LU8 |
Neutrino in-game return / IGR | Game compatibility | LUNA | Feature WIP | Tracked / reassess |
L1 |
APA HDDs over 2 TiB | Internal HDD | Extended APA | Not planned | Tracked / reassess |
X1 |
EXT2 USB filesystem support | USB / game sources | E2OPL | Feature | Tracked / reassess |
MP1 |
Xbox 360 controllers over USB | Controllers & input | Modular PADEMU | Feature Historical | Tracked / reassess |
MP2 |
Generic USB HID gamepads | Controllers & input | Modular PADEMU | Feature Historical | Tracked / reassess |
K1 |
Write debug logs to a BDM device | Developer / diagnostics | uOPL (historical) | Feature Debug build | Tracked / reassess |
RR1 |
USB Driving Force wheel with negCon presentation | Controllers & input | RRVE / exaconn OPL | Feature Experimental | Tracked / reassess |
S1 |
ATA DRDY waiting for slow-starting SMR / SSD drives | Internal HDD | Stable OPL | Fix | Tracked / reassess |
OH12 |
Reusable console-launcher core archive | Launcher integration | OPHTML | Feature | Tracked / reassess |
LU9 |
Projected 3D game-case grid | Library & menu | LUNA | Feature | Tracked / reassess |
LU10 |
Animated ambient-orb Scroll library view | Library & menu | LUNA | Experimental | Tracked / reassess |
LU11 |
Neutrino VMC backing on APA/PFS | Game compatibility | LUNA | Feature | Tracked / reassess |
No feature records match. Clear the search or show All records.
ps2homebrew/wOPL — much of RiptOPL's Coverflow, Favorites and Neutrino work started here. These are the parts RiptOPL does not have yet.
| ID | Feature | What it does | Source |
|---|---|---|---|
W1 |
Themes loaded from a .tar archive |
Several themes packed into THM/thm.tar, with fonts and images read straight from the archive. |
PR #370 PR #378 |
W2 |
wsX widescreen X position |
A separate X coordinate per element for 16:9, so one theme file serves both 4:3 and widescreen. | src/themes.c |
W3 |
PADEMU, GSM and cheat status icons | On/off images showing each game's pad emulation, GSM and cheat settings, with built-in default images. | src/textures.c src/themes.c |
W6 |
Info page without list navigation Optional | Up, down and page buttons no longer move through the list from a game's info page. A design choice rather than a missing capability. | PR #308 |
coffeedevsolutions/OPLattice — nine patches to OPL's theme engine and menus, a sidebar interface, themes and PC tooling.
| ID | Feature | What it does | Source |
|---|---|---|---|
O1 |
Grid game list | A tile layout for the game list (columns, cell_width, gap, frame) with two-axis navigation. |
patch 01 |
O2 |
GameImage offset for non-selected games |
An image element can draw the game a set number of places down the page, which makes hero and filmstrip layouts possible. | patch 01 |
O3 |
Recently played list | The last 8 games launched, newest first, shown with RecentImage and RecentText elements. RiptOPL remembers only the last one. |
patch 02 |
O4 |
Sort modes | A to Z, Z to A, most recent first, or as scanned. OPLattice cycles them with R3, which RiptOPL uses for Favorites. | patch 02 |
O5 |
MenuTabs device tab strip |
Every device drawn at once with the active one highlighted, plus per-device label overrides. | patch 03 |
O6 |
GameCountText prefix and suffix |
Themes set their own wording around the game count. | patch 03 |
O7 |
x_scaled widescreen alignment |
Elements keep their position relative to a centred layout when widescreen is on. | patch 03 |
O8 |
VRAM texture budget clamp Fix | Caps texture size to the video memory left after the framebuffers, so an oversized theme image is rejected instead of risking a hang in hi-res modes. | patch 07 |
O9 |
Play stats | A launch count and playtime for each game. | patch 08 |
O10 |
SHELF sidebar interface | An opt-in sidebar with Home, Library, Apps and Settings pages. It opens with L3, which RiptOPL uses to switch between PS2 and PS1 views. | patch 09 |
O11 |
App subtitles | An optional subtitle key in an app's title.cfg. |
patch 09 |
O12 |
Art conversion and VRAM checker Tool | Converts art to indexed PNG8 and reports how much memory each theme's art cache will use. | palettize-art.py check-art.py |
O13 |
In-game screenshot importer Tool | Turns in-game screenshot BMPs from the memory card into the _SCR.png images the info page shows. |
import-igs.py |
O14 |
Browser theme previewer Tool | A single HTML file that renders a theme's layout before it goes on a console. | opl-theme-previewer.html |
O15 |
Device staging and card sync scripts Tool | Scripts that copy a build onto a USB device or HDD and sync a memory card. | tools/ |
coffeedevsolutions/OPHTML by coffeedevsolutions (Blake Coffee) — an HTML/CSS declarative UI compiler and zero-allocation C99 GS runtime (OPHTML / ps2ui), by the creator of OPLattice. While the repository also contains a standalone game launcher (console/ophtml.elf) booting ISOs via Neutrino and an SD2PSX memory-card loader (channel6), those launcher features overlap capabilities already native to RiptOPL (see callout below). Audited against main@03a5d56 (post-v0.10.0 source, format v7). The latest published release remains v0.10.0; the reusable console core, settings resolver and memory-card state changes are source additions planned for 0.11.0.
| ID | Feature | What it does | Source |
|---|---|---|---|
OH1 |
Declarative HTML/CSS flexbox compilation to zero-allocation C99 GS command list | Compiles modern CSS flexbox layouts (direction, wrap, alignment, justification, gap, percentage sizing, border radius) and dynamic UTF-8 text slots with multibyte truncation guards on the PC into a static .uib binary command list. The C99 runtime executes inside a pre-computed static arena (~7–8 KiB for an entire 6-screen app) and never calls malloc, measures text, or lays out elements on the PS2. |
@ophtml/layout runtime/ps2ui.c |
OH2 |
Pre-resolved pairwise HarfBuzz font kerning on EE | Measures kerning pairs at compile time via HarfBuzz and pre-resolves pairwise advance adjustments to exact pixel values per font size into compact tables. The C99 pen evaluates pairwise kerning in real-time on the EE with zero floating-point division or font-scaling overhead. | ps2ui_bake/fontgen.py ps2ui.c kerning |
OH3 |
Instant 1-byte palette theme switching without VRAM re-upload | Multiple themes (such as light and dark modes) share the same geometry, textures, and fonts in a single blob, differing only by a row in the tint table. Calling ps2ui_theme_set() updates a context pointer instantly with 0 bytes of VRAM transfer, requiring no asset reloading or GS re-initialization. |
ps2ui.h ps2ui.c |
OH4 |
Runtime 2D coordinate offsets for motion and expanding layouts |
ps2ui_offset_set(ctx, dx, dy) offsets all primitive and texture coordinates at render time, allowing smooth programmatic translations, sliding sidebars (such as expanding navigation rails), carousels, and parallax scrolling layers on static baked geometry without re-baking. |
ps2ui.c offset BACKLOG F27 |
OH5 |
Runtime focus-subtree visibility masking with auto-bypassing navigation | A 256-bit bitmask in ps2ui_visible_set() suppresses rendering of entire focusable subtrees (including backgrounds and borders) for empty or inactive elements. Crucially, ps2ui_move() automatically routes gamepad focus past hidden nodes rather than trapping navigation on invisible elements. |
ps2ui.c visibility BACKLOG F21 |
OH6 |
Automated CRT overscan safe area and multi-layer alpha contrast linter Tool | Build-time static analysis tool enforcing NTSC/PAL CRT action-safe and title-safe margins. Evaluates text contrast across translucent alpha scrims by compositing against worst-case black and white background scenes underneath, and validates seated-distance legibility (11px/14px thresholds based on visual arcminutes). | layout/src/lint.js findings.md (F-046) |
OH7 |
Interactive web browser theme simulator and testbed Tool |
ps2ui serve launches a local HTTP server that replays baked GS draw commands server-side and serves an interactive web preview with keyboard/controller D-pad navigation, theme switching, multi-screen navigation, and live slot text editing without requiring a PS2 console or emulator. |
ps2ui_bake/serve.py serve_page.html |
OH8 |
Static VRAM budgeting and layout compiler Tool | Models GS VRAM allocation at compile time, tracking 8 KiB page boundaries and 256 B block alignment groups for framebuffers, Z-buffers, CLUT palettes, and texture pages. Prevents console crashes and hangs by refusing over-budget themes at bake time with an itemized memory breakdown. | ps2ui_bake/vram.py check-vram-model.py |
OH9 |
Headless Play! emulator CI testbed with input scripting and frame diffs Tool | Continuous integration harness that builds the console ELF, boots it headlessly in the Play! emulator under xvfb, injects scripted gamepad inputs (Down, R1, L1), captures GS framebuffers, and asserts pixel-level image diffs against Python reference renders. | .github/workflows/hw.yml play_input.py |
OH10 |
Fuzzed .uib loader with EE bus-alignment and malformed blob hardening Fix |
Runtime loader hardened with LibFuzzer and ASan/UBSan against corrupted or malicious blobs. Enforces strict 4-byte struct alignment and 16-byte glyph/kern table alignment (PS2UI_ERR_ALIGN) to protect against unaligned EE memory access bus errors when reading untrusted themes from storage. |
fuzz_load.c ps2ui.c alignment |
OH11 |
Hard compiler safety limits for untrusted themes Fix | Compile-time safety ceilings that reject untrusted or maliciously crafted themes exceeding safe hardware parameters: canvas max 2048px (hardware scanout ceiling), max 10,000 DOM elements, max 64 nesting levels, and max 32 megapixel source images. | caps.py limits.js |
OH12 |
Reusable console-launcher core archive | Exports libophtml-console.a and an umbrella header for third-party launchers to reuse scanning, storage initialization, Neutrino argument construction, settings resolution and launch handoff while supplying their own main, UI and IOP module table. RiptOPL has internal equivalents but does not publish this kind of independently linkable launcher SDK. This is a developer integration gap, not additional game compatibility. |
Public core header Out-of-tree consumer |
What did not become a gap: The console launcher & runtime overlap
OPHTML also contains a standalone console game launcher (console/ophtml.elf) and sample environments (opl-env, channel6), its core game-loading and management capabilities directly overlap existing RiptOPL infrastructure and are not counted as gaps:
-
Neutrino No-IOP-Reset launch handoff: OPHTML launches Neutrino using
-qb,-bsd=, and-dvd=throughLoadELFFromFileWithPartitionNoReset. RiptOPL already has full native No-IOP-Reset handoff (src/elfldr_noreset.c), copying the child loader into BIOS-unused memory at0x84000and passing target paths and arguments toExecPS2so Neutrino can read its config and ISO without resetting OPL's live storage mounts. -
In-memory ISO9660 volume &
SYSTEM.CNFtitle ID extraction: OPHTML traverses sector 16 PVD records and parsesSYSTEM.CNFin memory. RiptOPL already performs sector 16 PVD root-directory traversal in memory to extractBOOT2game IDs and creation timestamps (src/retrogem.candsrc/ps2cnf.c). -
Dynamic cover art streaming & VRAM texture caching: OPHTML's streaming texture slots overlap RiptOPL's dedicated async texture worker (
src/texcache.c), which provides lookahead caching, multi-epoch invalidation, chunked staging, memory clamps, and SIO2 controller-bus read throttling. -
Virtualized list windowing & selection binding: OPHTML's
ps2ui_listwindowing and selection clamping are standard OPL core features in RiptOPL's item and GUI management. - Multi-device & SD2PSX/MMCE support: USB, internal HDD, MX4SIO, and MMCE channel support are already implemented in RiptOPL's storage drivers and RetroGEM/SD2PSX integration.
Validation status and emulator testing
OPHTML v0.10.0's ophtml.elf launcher has booted and proven its D-pad navigation and list virtualisation inside the Play! emulator in CI (via automated pad input injection and frame diffing). However, because Play! does not emulate USB, HDD or memory card controllers, physical-console bench cases C1–C8 remain formally [open] pending physical-console reports. Conversely, its underlying ps2ui GS rasterization runtime has undergone extensive physical PS2 hardware validation across multiple test sessions (documented in docs/bench-phase1.md and docs/bench-phase2.md).
The new OPL compatibility resolver maps only verified modes 2, 3 and 5; GSM and VMC CFG mapping remain unfinished. Last-played restoration overlaps RiptOPL. The launch breadcrumb records an attempted handoff but is not a proven hang detector or retry UI; it is not counted as one.
ps2homebrew/Open-PS2-Loader — RiptOPL derives from upstream OPL. A gap can be merged upstream or remain a proposal; its upstream state is not its RiptOPL implementation state.
| ID | Feature | What it does | Source |
|---|---|---|---|
U1 |
Per-game parental lock | A Parental Lock toggle in a game's settings; starting that game asks for the parental lock password. Upstream #1779 merged on 2026-10-05; RiptOPL has a settings/write parental gate but not this per-game launch lock. | PR #1779 |
U6 |
Launch announcement for Discord rich presence | When a game starts, a small UDP broadcast carries its title ID so a PC listener can set Discord rich presence. | PR #1736 |
U9 |
Bluetooth controller input lag Investigate | Shortens PADEMU Bluetooth polling delays to remove input lag. As submitted it also turns off rumble and the menu's pad delay, so it is a lead rather than a finished fix. Upstream #1675 closed without merge on 2026-10-05; retain it as a historical investigation, not an active upstream PR. | PR #1675 |
boliviaos.site — an OPL-based environment that adds file management, media and system tools around game loading. Its source is not published, so these entries come from the features its site lists.
| ID | Feature | What it does | Source |
|---|---|---|---|
B1 |
File explorer | Browse and move files across memory cards, USB, HDD and host from inside the loader, with transfers checked against the source. | boliviaos.site |
B2 |
Music player | Plays MP3 and OGG files with ID3 tags and a spectrum visualizer. | boliviaos.site |
B3 |
Image and font viewers | Views JPG and PNG images with zoom and transparency inspection, and TrueType fonts with Unicode coverage. | boliviaos.site |
B4 |
Text editor, code editor and terminal | Edits .txt and .cfg files, with a JavaScript editor and a command terminal. |
boliviaos.site |
B5 |
Memory card format and repair | Low-level memory card formatting and repair through Memory Card Annihilator. | boliviaos.site Memory Card Annihilator |
B6 |
USB keyboard | USB HID keyboard input. | boliviaos.site |
B7 |
PDF viewer | Reads PDF documents. The site lists it as still in development. | boliviaos.site |
Irfanlesnar/PS2-Launcher — an OPL-based launcher with a
console-style interface. Checked against its published v4.0 source, not only its README.
v5.0.0 (2026-10-06) is checked from its
release notes and README: the repository's v5.0.0 commit changed only README.md and CREDITS.md,
so v5.0's code is not published.
| ID | Feature | What it does | Source |
|---|---|---|---|
P1 |
Xbox One and Series controllers over USB | Wired Xbox controllers through a new IOP driver. RiptOPL supports DualShock 3, DualShock 4 and DualSense. v5.0 adds Xbox 360 pads, the gap tracked as MP1. | modules/xboxusb |
P2 |
Download covers from the PS2 | Fetches missing covers, or refreshes all of them, over the network from the console. | src/opl.c PS2-Launcher-Manager |
P3 |
One games list across every device | A single Games list combining every connected source, part of its console-style interface. v5.0 adds sorting that list by device. | src/opl.c |
P4 |
Hold SELECT to leave a game | Holding SELECT for 7–10 seconds in a game returns to the launcher, an alternative to the multi-button in-game reset combo. | ee_core/src/padhook.c |
P5 |
Launch transition animation | An animated transition as a game starts. OPL-Evolution adapted it too. | src/opl.c |
P6 |
More USB controllers: Steam Controller, Shanwan PS3 clones, ANT Esports GP300 | v5.0 lists the Steam Controller (2026), Shanwan PS3 clone pads and the ANT Esports GP300 Pro V2 wireless controller. RiptOPL's USB driver accepts only Sony's DualShock 3, DualShock 4 and DualSense IDs and has no clone-specific handling. | v5.0.0 release notes |
P7 |
Connected controller count on screen | The v5.0 interface shows how many controllers are connected. RiptOPL only says when no controller is detected. | v5.0.0 release notes |
PS2-Launcher v5.0 overlap
v5.0's Files tab (browse devices, copy, paste and delete files, launch games and ELFs) overlaps B1, and its Xbox 360 support overlaps MP1; those receive no new P-series IDs. Already in RiptOPL: MMCE storage, the full in-game resolution list (RiptOPL also has 720p, 1080i and 1080p), the IGR Path setting, per-game OSD language, and multitap emulation for extra players (set up in Controller Emulation rather than assigned automatically). Its new SMB IP options are not itemised; RiptOPL already offers DHCP or a static address with gateway and DNS, and reaches the server by IP or name. The faster Apps tab is a performance change, not a capability.
danielnuld/ps2-launcher by
danielnuld — a standalone PS2 launcher built around Neutrino.
Audited against d015baf7
and RiptOPL rebuild/main@dc6206f6.
Re-checked on 2026-10-06 against v1.0.2:
v1.0.1 and v1.0.2 are fixes (a 1024-game limit, cover loading, DNS with DHCP, and MemCard PRO 2 game IDs on every
launch, which RiptOPL already sends), so they add no entries. OR1 and OR2 have since shipped in RiptOPL (see Notes).
These are capability differences, not claims that every game or storage device has passed on a console.
| ID | Feature | What it does | Source |
|---|---|---|---|
OR3 |
RetroAchievements telemetry with Neutrino games | ORBIT passes a watch list to its Neutrino fork and loads an in-game agent that streams watched memory to xeRAbora. 2026-10-15 update: implemented, conditional. RiptOPL's complete RA kit now bundles ORBIT's RA Neutrino runtime and supports compatible local launches; UDPFS/UDPBD telemetry is experimental and requires saved watches, static IP and a known companion. Ordinary Neutrino/Ember installs do not gain this automatically. See PR #923 and current limitations. ORBIT reports one real-console UDPFS/Neutrino session with snapshots; that does not establish broad game compatibility. | launcher.c Neutrino agent console report |
OR4 |
Browse achievement titles and progress on the console | The selected game's panel lists individual achievement titles, descriptions, points and earned state. 2026-10-15 update: implemented in the RA interface. RiptOPL now has console achievement browsing with titles, points, descriptions and filters using the xerabora/Caduceus companion. The exact ORBIT presentation differs, and physical runtime behavior still varies by transport. See PR #916. ORBIT's phase-16b report records host/PCSX2 checks for this panel and leaves the console check open. | launcher.c achievements.c phase-16b evidence |
OR5 |
Companion catalog for UDPFS games Optional | An HTTP companion service lists titles, paths, IDs and precomputed RA hashes for games whose ISO data is served through UDPFS, without mounting UDPFS in the menu. RiptOPL already lists UDPFS files through its filesystem driver and has a separate games.csv catalog for HTTP streaming; this row tracks ORBIT's distinct UDPFS catalog workflow, not a missing ability to list or launch UDPFS games. |
launcher.c orbit_catalog.py console report |
ORBIT overlap and validation
ORBIT's on-console HTTPS cover fetch overlaps P2; its combined-source library and animated launch screen overlap P3 and P5; and its resumable Neutrino in-game menu overlaps the capability tracked in T3 and LU8. ORBIT's phase-13 report records a menu pass in one game at 480p, with other video modes and later core builds needing separate checks. Those overlaps receive no new OR-series IDs. ORBIT's standard-source and Neutrino per-game options, PS1/Apps paths and two interface languages also have RiptOPL counterparts.
sobecapaklebs-dev/project-titan-magenta-edition
— a PS2 operating-system/system-platform project with its own shell, services, application runtime and integrated
Titan Neutrino / Titan UL game engines. Re-audited against main@2a69c259
with VERSION 0.3.93-rc17.
| ID | Feature | What it does | Source |
|---|---|---|---|
T1 |
Graphics patches kept apart from cheats | Graphics patches such as widescreen live in ENH/<id>.enh, separate from gameplay cheats in CHT/. Per-game selections persist independently and graphics patches can carry @auto / @experimental metadata. RiptOPL currently feeds these through its normal cheat path instead of a separate enhancement class. |
TITAN_GAME_PATCHES.md |
T2 |
Installable TPKG apps, in-process runtime and SDK | TPKG v2 can install native R5900 application modules that execute inside Titan's application runtime and consume shared UI, input, notification, storage and media services. A public App/Game SDK lets software target Titan itself rather than only launching a separate ELF. | README TPKG format SDK |
T3 |
Smart IGR overlay with Resume / Return Hardware pending | For titles with a safe compatibility profile, Titan can suspend the running title, show a small in-game overlay, then resume the same threads without ResetEE/GS/IOP or return through the engine cleanup path. Unknown titles fail closed to return-only/legacy behavior. RiptOPL's IGR returns out of the game; it has no equivalent resumable in-game overlay. | TITAN_SMART_IGR.md |
T4 |
Named user profiles with per-profile VMC | Up to four named users can be created, selected and renamed, each carrying its own avatar and VMC path. RiptOPL has per-game VMC configuration but no system-wide user/profile layer that selects an exclusive VMC by user. | titan_user_profile.h titan_profile_storage.c |
T5 |
Notification center and background-progress UI | A system Notifications page and top status/ticker surface alerts plus background activity and download progress, including transfer bytes, percentage and speed. RiptOPL has transient dialogs/status text but no comparable system notification/activity service. | titan_notifications.h titan_shell_catalog.c |
T6 |
Integrated lightweight web browser | An installed system app stays inside the running shell and provides URL entry, lightweight HTML text/link parsing, scrolling and back/forward history. HTTP uses PS2IP directly; HTTPS is translated through Titan's configurable Stream Bridge. RiptOPL has network game protocols but no interactive web browser. | Internet / Titan Browser |
T7 |
Transactional .pup system updater |
Settings can discover forward-only TPUP update packages, verify table/payload CRCs, stage files privately and roll back already-published files if a multi-file update fails. RiptOPL updates are distributed as release artifacts rather than installed by an in-console transactional updater. | SYSTEM_UPDATE_PUP.md |
T8 |
Installable animated scene themes with audio |
.tthm packages can provide full HOME/TOP scene frames, reversible transition keyframes, bounded idle loops, background music, navigation/interface sounds and icon styling. RiptOPL's theme engine does not have Titan's packaged state/keyframe scene-animation model. |
THEME_AUTHORING.md |
T9 |
Xbox Bluetooth/BLE plus USB keyboard and mouse input Hardware pending | Titan's Unified Input has source paths for Bluetooth-capable Xbox One and Xbox Series pads over Bluetooth/BLE, plus USB keyboard and mouse input. Wired Xbox USB is already counted as P1; this row counts Titan's additional Bluetooth/HID input classes. Titan explicitly labels these host-contract PASS but physical-PS2 validation pending. | Modern Controller Matrix |
T10 |
Repository-backed package download pipeline Target pending | Titan can accept a static repository catalog, resolve package/dependency metadata, queue HTTP/HTTPS package downloads, verify size and SHA-256 plus TPKG structure, then atomically publish the package for installation. Its documentation calls this a Store foundation rather than a finished storefront and says real target downloads remain pending. | Store architecture Download Service |
Titan validation and overlap notes
Titan distinguishes source/host-contract completion from physical-PS2 validation. In particular, Smart IGR, the modern-controller paths and Store/Download path are kept above because this page audits implemented code capabilities, but Titan's own hardware/target-pending labels are preserved rather than treating them as proven compatibility.
Several other Titan capabilities are real but do not get extra T-series IDs because the same RiptOPL gap is already represented elsewhere on this page: direct cover/background fetching overlaps P2, its native wLaunchELF work overlaps B1, Project NES overlaps R1, its launch transition overlaps P5, and wired Xbox USB overlaps P1. Titan's Neutrino/UL launching, VMC support and ordinary PS2RD cheats also have RiptOPL equivalents and are not gaps by themselves.
officialjuicedesigns/OPL-Evolution — an experimental OPL fork with a unified PS2 and PS1 dashboard.
| ID | Feature | What it does | Source |
|---|---|---|---|
E1 |
Controller, memory card, storage and network status | A status strip showing each controller port, both memory card slots, the storage source and the network state. | src/evo_ui.c |
RiptOPL's RA build now follows upstream xeRAbora alpha.15. PR #881 implemented the larger watch sets and cadence (retired H2) and alignment-safe bounded reads (retired H3). H1 pointer chains were already present. These selected comparisons have no remaining H-series gap; RA with Neutrino remains the separate OR3 capability. Successful host tests and target builds do not establish console interoperability. See RetroAchievements for the paired client and validation scope.
Spaghetticode-Boon-Tobias/RETROLauncher — a launcher written in Lua for the Enceladus environment, covering retro emulators alongside PS2 and PS1 games.
| ID | Feature | What it does | Source |
|---|---|---|---|
R1 |
Retro emulator ROM libraries | Libraries of retro ROMs launched through emulators such as RetroArch, SNESticle and TempGBA. | README |
AdityaKumar7209/Modulo-R1-Beta-Preview---PS2 — a Neutrino-based loader in beta. Only its PC server source is published.
| ID | Feature | What it does | Source |
|---|---|---|---|
M1 |
Choose between several network servers Optional | Lists every UDPFS server found on the network and lets you pick one. RiptOPL already finds a server automatically — see Network Boot. | README |
pcm720/nhddl — a deliberately small Neutrino front-end whose README explicitly keeps OPL-only features such as PADEMU, IGR and cheats out of scope unless Neutrino itself provides them. Audited against the released v1.2.2 code and documentation. The core features most likely to look unique at first glance are already present in RiptOPL: PixelFX/RetroGEM visual Game ID signalling, per-title SD2PSX/MemCard PRO2 card switching, cover art, persistent title caching, remembered last-played selection, global and per-game Neutrino arguments, VMC handoff and the principal Neutrino storage backends. The two remaining differences below are launcher/network conveniences rather than missing game-source support.
| ID | Feature | What it does | Source |
|---|---|---|---|
N1 |
Generic forward-boot CLI Optional | Launching NHDDL with -mode=<type> and -dvd=<path> bypasses its UI and hands the target straight to Neutrino; -noinit can reuse an environment whose modules are already loaded. RiptOPL has positional HDD/BDM autolaunch entry points, but not an equivalent documented generic backend/path command line. |
Forward Boot Mode |
N2 |
Reuse SYS-CONF/IPCONFIG.DAT for UDPFS IP Optional |
When no explicit udpfs_ip is supplied, NHDDL can obtain the PS2 network address from the wLaunchELF/uLaunchELF-style SYS-CONF/IPCONFIG.DAT. RiptOPL's UDPFS path currently uses its own Network settings and the active Neutrino TOML instead of inheriting that shared file. |
UDPFS documentation IPCONFIG.DAT fix |
What did not become a gap
NHDDL's visual Game ID output and SD2PSX/MemCard PRO2 per-title switching both have direct RiptOPL equivalents. RiptOPL also already remembers the last-played title, caches parsed ISO metadata, supports global and per-game Neutrino arguments, and can hand VMCs to Neutrino. NHDDL's backend-forcing ELF filename suffixes are a different configuration interface for selecting a device mode, not a separate game-loading capability, so they are not counted independently.
LUNA by darkladark is a visual NHDDL/Neutrino-derived loader.
Current comparison: 475f7b25,
pinning frontend e9554ce6 and runtime 02cbf4f2. These are separate repositories; implementation links below point to their exact gitlink revisions.
The current views are List, Collections, 3D, Orbit and experimental Scroll. Constellation (LU1) and the old flat Grid (LU3) are historical, not current capabilities.
Collection display overlap: RiptOPL #977 adapts the Collection display from #733 as the native PSBBN Flow theme. It preserves R3 Favorites and uses the existing menu and artwork cache. This perspective fan does not implement LUNA's orbital ring or projected 3D grid listed below.
| ID | Feature | What it does | Source |
|---|---|---|---|
LU2 |
Orbit depth-sorted ring library view | Renders the selected game at the front of a tilted ring while the other cached covers move around it with perspective narrowing, size/brightness/opacity depth falloff and explicit rear-to-front sorting. RiptOPL's Coverflow is a linear carousel and has no equivalent orbital presentation. | view_orbit.c |
LU4 |
Animated rotating ICO disc-label artwork |
Classic view pairs the normal OPL _COV.png with _ICO.png disc art and rotates the disc texture continuously on a textured quad. RiptOPL already understands ICO as disc artwork and can toggle it at runtime, so the gap is specifically the animated disc presentation, not disc-art support itself. |
view_classic.c paired-art behavior is evidenced by the pinned implementation linked above |
LU5 |
Per-drive Favorites that travel with the game HDD Optional | LUNA resolves Favorites against the selected title's metadata device and stores them under that drive's /LUNA/favorites.txt; swapping game HDDs therefore swaps the Favorites set with the library. RiptOPL deliberately keeps one cross-device favourites.bin beside its shared master configuration, so this is a different persistence model rather than missing Favorites functionality. |
favorites.c RiptOPL favsupport.c |
LU6 |
Staged temp-file writes for key persistent library state Fix | LUNA writes a complete temporary file before replacing favorites.txt, lastTitle.bin and the ISO title-ID cache.bin; readers can recover completed temporary last-title/cache records after interrupted replacement. 2026-10-15: partial parity. RiptOPL now first writes favourites.bin.new, retains that complete copy across an interrupted main-file rewrite, and recovers it on load (PR #945). It still cannot use an atomic rename on every memory-card filesystem; LUNA's separate last-title/cache staging details warrant independent comparison. |
Favorites staging last-title staging cache staging |
LU7 |
Neutrino physical power-button DEV9-safe shutdown Fix | LUNA modifies Neutrino's IOP CD/DVD service so the native front-panel power event is handled by a priority-1 listener: it stops/synchronizes active emulated optical work, invokes DEV9's shutdown export when present, then issues the normal sceCdPowerOff. RiptOPL's OPL core already has its own orderly IGR/power-off path, but its Neutrino core does not include this coordinated DEV9 shutdown behavior. |
LUNA cdvdfsv.c RiptOPL Neutrino baseline |
LU8 |
Neutrino in-game return / IGR | LUNA extends the Neutrino runtime itself with a held L1+L2+R1+R2+START+SELECT IGR path. After 45 VBlank frames (roughly one second) it calls LUNA's shutdown RPC to quiesce optical/DEV9 activity, then uses the configured eec.ExitPath as the return ELF path, resets IOP and EE/GS state, and uses ExecPS2() to return directly to the memory-card ELF. RiptOPL has OPL-side IGR, but games launched through its current Neutrino core do not have Neutrino IGR, so this is a distinct missing runtime capability. The current README reports a physical FAT-PS2 test and requires installation on a memory card; this remains narrower than validation across all console and storage combinations. |
pad hook / combo EE IGR RPC client IOP shutdown RPC RiptOPL IGR scope |
LU9 |
Projected 3D game-case grid | A 6×4 projected game-case view with focus zoom and turn, sleeve shimmer, a selected-cover preview, scrolling titles and staggered entrance/exit transitions. The current frontend replaces the earlier flat Grid; it is not the same feature as O1 or the historical LU3. RiptOPL has Coverflow and list/theme views but no equivalent projected case-grid renderer. | Case-grid renderer 6x4 geometry |
LU10 |
Animated ambient-orb Scroll library view | An explicitly experimental library presentation pairing scrolling title/logo artwork with animated ambient orbs. RiptOPL has animated backgrounds and title lists, but no corresponding selectable orb/scroll library view. The comparison concerns the complete browsing presentation, not generic animation support. | Scroll renderer Scroll navigation |
LU11 |
Neutrino VMC backing on APA/PFS | Maps raw VMC files from an APA/PFS metadata partition into direct ATA extents for the Neutrino runtime. Requires normal boot, 8 KiB PFS zones, no indirect inode segments, and a shared 64-fragment budget for game plus both cards. The loader validates image geometry and mapping before launch. RiptOPL currently drops Neutrino VMC arguments for APA games because its bundled runtime lacks this PFS backing path. LUNA still requests a physical-console save/reboot/reload test; source implementation does not establish broad game compatibility. | PFS extent mapping Loader restrictions RiptOPL APA VMC restriction |
Current overlap and validation scope
Storage-source toggles, rescans, card creation/assignment, optional music and cheat selection are not counted again: RiptOPL already has those categories of functionality. LUNA's current README reports in-game return on a physical FAT PS2, while APA/PFS VMC save/reboot/reload and artwork performance on optional storage still need console testing. The older Constellation/Grid descriptions and HDD-only filter are superseded by the current frontend; neither describes today's selectable library views.
L10N37/Open-PS2-Loader-Extended-APA — an OPL build for internal HDDs formatted with PS2 HDD Manager's banked APA layout.
| ID | Feature | What it does | Source |
|---|---|---|---|
L1 |
APA HDDs over 2 TiB Not planned | Splits a large internal HDD into APA “banks” and lists and launches games from every bank. RiptOPL stays on the standard APA layout — see Internal HDD. | EXTENDED_APA.md |
E2OPL — a historical OPL branch whose defining change was read-only EXT2 support for USB storage. Its published README requires the EXT2 partition to be first, uses 4096-byte blocks and supports ISO files rather than USBExtreme splitting.
| ID | Feature | What it does | Source |
|---|---|---|---|
X1 |
EXT2 USB filesystem support | Loads PS2 ISO images from a read-only EXT2 USB partition, avoiding FAT32's 4 GiB file limit and fragmentation requirement. RiptOPL supports FAT/exFAT-style BDM filesystems but has no EXT2 filesystem driver, so this remains a distinct storage-format capability even though exFAT solves most of the same practical problem today. | SourceForge project source README |
belek666/Open-PS2-Loader modularPademu
— a 2020 experimental branch that split PADEMU into controller-specific modules. DS3/DS4 overlap modern OPL,
and its Xbox One USB path overlaps P1; the two controller classes below still have no
equivalent module in RiptOPL.
| ID | Feature | What it does | Source |
|---|---|---|---|
MP1 |
Xbox 360 controllers over USB Historical | A dedicated wired-Xbox-360 module recognizes Microsoft and several third-party VID/PID pairs, translates reports to DualShock 2 input and drives LEDs/rumble. RiptOPL has no xbox360usb PADEMU module. |
xbox360usb.c |
MP2 |
Generic USB HID gamepads Historical | A generic HID module parses a USB gamepad's HID report descriptor and maps buttons, hats and axes into the emulated DS2 report instead of requiring a controller-specific driver. This is separate from Titan's keyboard/mouse support and BoliviaOS's USB keyboard support. | hidusb.c |
Modular PADEMU status
These are historical source capabilities, not claims of current RiptOPL-era hardware validation. The branch head is
66b93542
from 2020. Its Xbox One USB module is not counted separately because modern Xbox One / Series USB support is already P1.
slimpuggamer/uOPL uOPL-1 — the
historical uOPL line mirrored by NathanNeurotic/uOPL. Most of the
features that once distinguished it are now directly present in RiptOPL: Favorites, Coverflow, per-game Neutrino,
Mode 7, legacy mass: app paths, the extra theme keys, one-button Disable All in the cheat selector and
cancellation of pending artwork work during launch.
| ID | Feature | What it does | Source |
|---|---|---|---|
K1 |
Write debug logs to a BDM device Debug build | Debug builds can switch LOG() from the normal debug transport to a block-device file and append messages to mass0:opllog.txt. RiptOPL still has UDP/PPC/DECI2-style debug output, but no equivalent BD Debug Log setting or file-backed BDM logger. |
include/ioman.h src/ioman.c |
exaconn/Open-PS2-Loader — the repository previously
listed here as the wOPL Ridge Racer V Edition. Its current 2026 source has moved beyond that label and contains
Logitech wheel work on master, plus a companion
Driving-Force-2-negCon-Edition
branch. The entry below describes the code that actually exists now rather than inferring features from the old RRVE name.
| ID | Feature | What it does | Source |
|---|---|---|---|
RR1 |
USB Driving Force wheel with negCon presentation Experimental | The DS34 USB path recognizes Logitech wheel devices, parses wheel/pedal reports and applies a spring/auto-centering command. The companion branch presents that wheel through the PS1 negCon protocol (0x23) instead of only emulating a normal DS2, which is useful to titles designed around negCon-style analog steering. RiptOPL's DS34 USB driver has no Logitech dfreport / negCon path. |
Logitech definitions auto-centering negCon branch |
mystyq/Stable-Open-PS2-Loader — a stability-focused fork. Its artwork TAR caching, large-list work, BDM HDD support, game-size fixes, MMCE work and other older changes either exist in RiptOPL or have since been superseded there. One lower-level ATA behavior remains materially different.
| ID | Feature | What it does | Source |
|---|---|---|---|
S1 |
ATA DRDY waiting for slow-starting SMR / SSD drives Fix | sOPL's in-game ATAD path adds an ata_wait_until_ready() loop that waits for BUSY to clear and DRDY to assert at driver start and around ATA commands. It was introduced specifically for newer SMR/SSD drives that can take longer to become ready. RiptOPL has its own post-ATAD settling and HDD-detection safeguards, but its current cdvdman/atad.c does not implement this in-driver DRDY wait strategy. |
commit 3495d55b current atad.c |
sOPL TAR claims vs. audited source
The May 2026 sOPL release text advertises ART/art.tar, CFG/cfg.tar and CHT/cht.tar.
The published release tag points to an older commit, while current master visibly carries the
ART reader/cache path. This survey does not turn an unlocated release-note claim into a separate gap. More importantly,
RiptOPL rebuild/main now has a unified TAR engine for all three archive kinds, including
art_cache.bin, cfg_cache.bin and cht_cache.bin, so none of those archive features
is a current RiptOPL gap regardless.
Awaiting Comparison cleared
All eight variants that were previously reserved for comparison have now been audited. OPL Daily Build, Grimdoomer OPL and X2P produced no remaining unique RiptOPL gap and are recorded in Checked, nothing missing. The five sources above produced six confirmed entries.
14 source-specific entries, not 14 unrelated feature concepts. These include seven missing PC companion capabilities and seven console UI, integration or behavior differences. CO3 overlaps existing OR4; CO1 and CO7 are optional design choices; CO4 is experimental and not equivalent to a validated physical-console feature.
| ID | Feature | Evidence and actual gap | Source |
|---|---|---|---|
CA1 |
Curated SQLite desktop catalogue PC companion | Game search, editable metadata and cover-backed catalogue; PS2-Servers manages roots/protocols rather than a persistent indexed game collection. | Implementation code |
CA2 |
ISO import, installed status and transfer queue PC companion | Local ISO ingestion, installed-library status and tracked transfers are managed from a single PC interface; PS2-Servers exposes directory roots. | Implementation code |
CA3 |
Cover conversion, migration and repair PC companion | Host checks valid covers and safely converts/resizes legacy JPEG to PNG; RiptOPL supports PNG display but PS2-Servers does not offer this manager. | Implementation code |
CA4 |
PC RetroAchievements account/live progress dashboard PC companion | Integrated account, compatibility, unlock-event and xeRAbora controls beyond the standalone client RiptOPL currently uses. | Implementation code |
CA5 |
Live game detection and Discord presence PC companion | Windows monitor samples open game-file handles and reconciles them with RA activity for game-aware presence and cover; more than existing U6 launch announcement. | Implementation code |
CA6 |
Importable catalogue and safe SQLite backups PC companion | Snapshot with SQLite VACUUM INTO, temporary file and atomic rename; catalogue import/backup is not a raw game/cover/VMC backup. | Implementation code |
CA7 |
Guided first-run PS2 connection setup PC companion | Step-by-step interactive console/server/network/ISO wizard inside the desktop app; PS2-Servers has documentation but not an equivalent first-run workflow. | Implementation code |
CO1 |
Interpolated XMB category and game-list rail Optional | Fixed XMB category navigation with eased horizontal/vertical list motion, category glyphs and cover previews; alternative to RiptOPL themes, not missing basic menu navigation. | Implementation code |
CO2 |
Game-details card with automatic RA checks | Opening the game card starts async hash/catalogue lookup and presents image support plus live session status; RiptOPL offers manual support checks but not this integrated screen. | Implementation code |
CO3 |
Browse RA account achievements on the console | Paginates account games, achievement icons, points, descriptions, dates and earned/locked/hardcore filters; this overlaps OR4 and is now available through RiptOPL's console-side xeRAbora/Caduceus achievement browser (2026-10-15); compare badge-image rendering and per-achievement hardcore metadata separately, rather than treating browsing as absent. | Implementation code |
CO4 |
Text-and-points in-game unlock card Experimental | Extends the RA event to include title and points and draws a 192x40 in-game card. The opt-in --achievements build is experimental; RiptOPL already has a simpler hardware-tested gold pulse. | Implementation code |
CO5 |
RA session-ready launch gating | Checks the paired account/PC readiness before loading a watch list; stale or offline sessions launch normally without RA. 2026-10-15: implemented for the paired Caduceus session. Local-storage RA launches now check whether the Caduceus session is ready and can fall back to an untracked game launch. See PR #923. | Implementation code |
CO6 |
SMB ECHO and conditional reconnect on Refresh Fix | On normal Refresh, tests whether SMB is healthy and reconnects only when failed. 2026-10-15: implemented in PR #898. The current RiptOPL SMB refresh checks the session and conditionally reconnects on failed health check. Retained as a historical source reference. | Implementation code |
CO7 |
Async initialize manual devices upon category focus Optional | On entering a disabled device category, queues source initialization in the I/O worker rather than requiring a second confirm; possible UX gain with IOP/performance trade-offs. | Implementation code |
Audited code: The actual OPL snapshot was compared against RiptOPL code, and the Caduceus desktop modules against PS2-Servers. RiptOPL already has normal RA hashing, watch lists, SMB reconnect, PNG artwork support and an in-game unlock indicator; none is newly counted as missing. CO4 is richer presentation, not a missing RA notification system. CO6 is a more proactive check, not missing basic SMB recovery. Caduceus OPL's custom account protocol needs a companion endpoint and cannot be obtained just by swapping SMB servers.
Rian6/Caduceus is the Windows-side application (Electron/React/TypeScript/SQLite) that manages a game catalogue and launches the separately sourced OPLServer SMB server. Rian6/Caduceus OPL is its cooperating console-side OPL derivative. That is a tightly paired host + console loader, not one interchangeable executable. Their source repositories are distinct; the OPL source is also tracked as an opl-snapshot submodule.
Our comparable pairing is PS2-Servers (host-side network service) and RiptOPL (PS2 launcher). PS2-Servers deliberately serves multiple kinds of PS2 clients; Caduceus invests more heavily in a companion library and account experience. The table identifies host-side product gaps as well as console-side differences, without treating them as interchangeable RiptOPL feature gaps.
Comparison scope and counting
Source checked on 2026-10-08: caduceus/main@311f4eab,
caduceus-opl/main@cc1713a8 (console gitlink opl-snapshot@2a98a9d7),
PS2-Servers/main@c1eb1e5a, and
RiptOPL/rebuild/main@7452341a.
Seven CA-series and seven CO-series source-attributed gaps are now listed, including optional and experimental distinctions. Console achievement browsing overlaps OR4, PC game-aware Discord presence goes beyond U6, and RiptOPL already has an in-game RA unlock overlay. Source/release evidence is not universal physical-PS2 validation.
| Capability | Caduceus + Caduceus OPL | PS2-Servers + RiptOPL | Gap / interpretation for us |
|---|---|---|---|
| Game-serving protocols | Bundles OPLServer for SMB game shares. Caduceus documents a default PS2 share, TCP 1024. |
PS2-Servers Desktop/Core support SMBv1, SMB2/3, UDPFS, UDPBD and experimental HTTP; Edge covers SMBv1, UDPFS and UDPBD. | Advantage: ours. The server's protocol support does not automatically make a console loader support the same protocol. PS2-Servers modes. |
| Desktop game library and ISO management | SQLite catalogue, cover images and details, local ISO import, installed-game list, download-link transfer tracking and JSON/SQLite catalogue import/backup. Host documentation. | PS2-Servers selects serving roots, checks access, configures protocols and logs traffic; no comparable curated SQLite game catalogue is documented. | Host companion gap. Optional catalogue + import/cover manager could sit above existing server backends. A Caduceus catalogue backup explicitly does not contain ISOs, covers, VMC saves or settings. |
| Current-game activity and Discord | Displays the detected running title and cover on PC; Discord Rich Presence can include title, cover and latest unlocked achievement. Presence integration. | PS2-Servers exposes service status, logs and diagnostics, not a documented game-aware desktop activity/presence layer. RiptOPL's separate Discord launch-announcement proposal is already U6. | Host companion opportunity for optional session reporting. Console and server activity are not the same proof of a successfully launched game; do not count U6 again. |
| PC RetroAchievements experience | Integrates a modified xeRAbora alpha.12, account progress browser, live events, sound and protected Windows token storage. | RiptOPL already supports xeRAbora telemetry and in-game unlocks, with alpha.15-aligned integration; PS2-Servers does not document an integrated RA account UI or controller. | Host companion gap. Consider an optional RA manager/UI; retain current RA protocol and client compatibility rather than replacing them with an older pinned adapter. |
| Achievements browsed on the PS2 | Caduceus OPL adds an account games/achievements category, points, icons, earned/locked/hardcore filters and pagination. It requests data over UDP 18198 using a capability stored on the private SMB share at ART/CADUCEUS.KEY. Wire protocol. |
RiptOPL has support checks, list badges and in-game telemetry/overlay, but no equivalent integrated RA account-progress browser is documented. ORBIT already supplies gap OR4. | Real console UI opportunity, already counted. A Caduceus OPL-only UDP service is not automatically available to RiptOPL; an explicit compatible host service and console client are needed. |
| In-game achievement pop-up | Displays an experimental notice with achievement name/points. The linked implementation still notes ongoing physical-console validation. Console status. | RiptOPL's unlock overlay already displayed an achievement on physical hardware in its recorded MMCE/USB tests; other routes remain unverified. | Overlap, not a new gap. Different visuals or message handling do not establish better launch compatibility. |
| UI and onboarding | Windows installer, first-run setup guide, XMB-style console UI, details card and art conversion into ART/<Game ID>_COV.png. |
PS2-Servers has cross-platform Desktop/Core/Edge and protocol-oriented setup tools. RiptOPL already has its own themes, artwork naming, launcher UI and device support. | Design/integration opportunity, not a missing loading feature. Reuse compatible interaction ideas, not hard-coded Caduceus artwork paths: RiptOPL also has filename-based VCD, ELF and Ember-folder identities. XMB/art reference. |
| Portability and diagnostics | Caduceus PC app is Windows-focused. Its paired OPL client and host must cooperate for integrated covers/achievements. | PS2-Servers Desktop works on Windows, Linux and macOS; Core runs headlessly; Go Edge targets NAS, routers and embedded Linux, with diagnostic and auto-negotiation options. | Advantage: ours. Keep protocol engines, headless portability, per-peer UDPFS handling and safety checks decoupled from any optional catalogue/RA frontend. Editions. |
Do not assume the two ecosystems can be swapped by changing the server address. Caduceus OPL expects the paired PS2 SMB share (normally port 1024), plus custom RA catalogue/session and account APIs on UDP 18197/18198. PS2-Servers Desktop normally advertises SMBv1 share games on port 1025 (Core/Edge default to 1111). Share name, port, root layout, credentials, services and console configuration must match. Two services cannot both bind the same host address, protocol and port. Caduceus' custom achievement browser needs a compatible server component; serving the same ISO files via PS2-Servers does not supply it.
Both ecosystems inherit the upstream warning that RA telemetry during SMB game streaming can disrupt loads; neither pairing demonstrates a fix for that issue. Keep host tokens and the Caduceus read-capability key private; UDP catalogue traffic is not encrypted. Caduceus PC sources currently have no top-level declared GitHub repository licence, so obtain clear reuse permission or review licensing before copying original application/bridge code. The inherited OPL/xeRAbora components have their own licences and notices.
- Optional PC library module: add metadata/catalogue, cover preparation, installed-game inventory and non-destructive backup as a frontend/sidecar to PS2-Servers; keep existing service implementations unchanged. Account for RiptOPL's disc-ID PS2 art and filename/folder-based VCD, ELF and Ember art identities.
- Read-only game-session reporting: surface the running title and its image/cover to an optional desktop view; only add Discord presence if the session identity is dependable. Avoid injecting traffic or polling into the hot UDPFS/SMB transfer paths.
- Optional RA account viewer: build on the compatible xeRAbora client already used by RiptOPL, with secrets held on the host, bounded requests and a separately tested console-side browser. Do not introduce a competing telemetry client or incompatible protocol by default; OR4/CO3 are now implemented; use the RA guide for current browser support and validation limits.
- Integration tests first: verify share/port selection, art naming, concurrent listeners, offline fallback, IOP resets, real-PS2 UI memory limits and performance before treating the pairing as interchangeable. Preserve existing servers and saved libraries during any migration.
mihhru/PS2CF 1.0 (2026-10-14; validation record) adds a different hardware storage bus, not merely another FAT32/exFAT formatting option. SCPH-10000 has hardware evidence; SCPH-15000 and SCPH-18000 are targets awaiting separate confirmation. CF/ATA adapter compatibility is hardware dependent. RiptOPL's implementation was merged in PR #955. CF1–CF3 therefore describe integrated capabilities awaiting real-console validation, not absent implementation. See the current CF guide. Related Launchstation file-manager work is tracked separately in #156; its status does not establish a RiptOPL hardware result.
| ID | Feature | Gap and integration boundary | Source |
|---|---|---|---|
CF1 |
16-bit PC CARD CF/ATA hardware backend | PS2CF detects a retail PCMCIA DEV9 revision (REV & 0xF0 == 0x20), checks controller/card state, reads CF CIS, selects a validated PIO profile and identifies ATA storage. RiptOPL now includes this distinct transport, with exclusive PC CARD ownership and runtime checks; hardware acceptance is pending. ROMVER/model must only be a hint; a PC CARD LAN adapter, empty slot, or owned DEV9 bus must never be seized. |
pccf_hw.c |
CF2 |
FAT32/exFAT CF game inventory | Enumerates PS2 ISOs from CF/SD-to-CF via the PC CARD slot, including single files larger than 4 GiB on exFAT. This is not identical to the already supported internal exFAT HDD or USB path. RiptOPL retains its own ART/CFG and image-title naming in the integrated backend. | CF block-device registration · hardware/ISO examples |
CF3 |
Dedicated read-only in-game CF/CDVD driver | The menu and in-game IOP drivers are distinct (pccf_bd, pccf_game, pccf_cdvdman). RiptOPL integrates both menu and read-only game paths; their console lifecycle remains unverified. CF-hosted OPL VMC, simultaneous PC CARD LAN and CF, and CF+network achievement telemetry are not claimed supported by PS2CF 1.0. |
module build list · limitations |
CF4 |
Companion wLaunchELF cf:/ file operations Companion |
PS2CF's wLaunchELF adds CF browsing, copy, rename, create and delete on FAT32/exFAT. This is a Launchstation file-manager gap, not proof RiptOPL needs to become a file manager. Cross-project tracking: Launchstation #156. Direct ELF launch from cf:/ remains unsupported upstream. |
wLaunchELF CF IOP module |
Integration safety: PS2CF disables competing network/HDD paths in its dedicated build. That blanket policy cannot be transplanted into RiptOPL. The new backend must own the PC CARD bus only when safe, fail closed on conflicts, preserve all other game devices, and not alter users' existing firmware or memory-card images. The current implementation reference defines ownership and remaining validation.
rodrigoGalvanDev/OPL-DualSense-BT is a new OPL fork with real-console testing of a DualSense and one Realtek Bluetooth adapter on a SCPH-90001. MiguelQueiroz010/OPL-DS4RTBT is a recent downstream fork; its initial README mirrors the original and is not counted as a separate source of independently verified capabilities. This is different from the historic U9 poll-delay experiment and from existing wired DualSense handling.
| ID | Feature | Gap and limitations | Source |
|---|---|---|---|
DB1 |
DualSense over Bluetooth in menu and game | Implements DualSense input/output reports, output CRC, SDP responses and in-game PADEMU operation. The fork reports input, vibration and a mixed wired-controller test on one console/dongle. Compare its menu driver and in-game driver independently to RiptOPL before porting; USB and Bluetooth PADEMU share limited IOP resources. | menu BT driver · in-game BT |
DB2 |
Wireless discovery and Secure Simple Pairing UI | Scans nearby pads and pairs DS4/DualSense using a GUI Search action and saved link keys without requiring prior USB pairing. Actual hardware confirmation is limited to the stated DualSense/adapter; DS4 discovery, other dongles and multiple wireless controllers need validation. Never overwrite existing paired-key storage without migration. |
btkeys.h · pairing UI |
akilluminati47/RIPPS2 is an actively developed, PS2-native derivative of RiptOPL. Its October beta publishes build-specific patch source and host tests. The entries below focus on functionally differentiated tools and interaction models; its ordinary OPL game loading, carousel and fetched cover art overlap capabilities already counted here (e.g. B1, P2/P3, CO3 and OR4), and should not create duplicate generic IDs.
| ID | Feature | Gap and boundaries | Source |
|---|---|---|---|
RI1 |
Browse VMCs as folders; import/export PSU saves | Integrated Memory Files browser treats virtual memory-card images as navigable save containers, with file copy/move and PSU import/export. Beyond the generic file-explorer concept already tracked as B1. Importing into VMCs must be transactional, guarded and backup-first before RiptOPL parity is claimed. | Memory Files patch · features |
RI2 |
Physical memory-card manager High-risk | Dedicated backup to VMC, restore saves and card erase/format workflow from the launcher. These are optional, potentially destructive operations: RiptOPL must not silently change cards or introduce formatting without explicit confirmation, backup and restore tests. | card manager patch |
RI3 |
Paused in-game actions panel Experimental | Overlay provides Resume, Achievements and Exit Game from an IGR combination. Distinct from RiptOPL's existing achievement notifications and OPL IGR; related in broad concept to the previously tracked Neutrino/ORBIT in-game UI. RIPPS2 itself leaves the menu disabled by default pending stronger console evidence: never call this hardware-proven across video modes. | IGR menu patch |
RI4 |
Offline personal BIOS audio / theme-pack tool Tool | The PC-side Audio Studio converts user-supplied audio (and locally provided BIOS assets) to ADP/OGG theme packs. This is a separate optional authoring workflow, not a reason to redistribute BIOS audio or copyrighted system assets. | audio-studio |
exalandru/Enhanced-PS2-Disc-Launcher is a standalone physical-disc companion, not an OPL ISO loader fork. Relevant because RiptOPL also has a disc path, but its source-level checks and MechaPwn-region behavior are not equivalent to ordinary ISO boot. The author's real-hardware validation is on SCPH-50000; other setups require independent confirmation.
| ID | Feature | Gap and integration boundaries | Source |
|---|---|---|---|
DL1 |
PS1 physical disc dispatch to DKWDRV with PS1VModeNeg fallback Companion | Chooses an installed DKWDRV ELF with -cdboot for PS1 discs, or PS1VModeNeg when appropriate. Distinct from POPStarter VCD/Ember image loading. This should remain a separately controlled launch path; no bundled firmware, DKWDRV or PS1 copyrighted binaries. |
main.c |
DL2 |
Conditional OSD language override for import PS2 discs Optional | For certain MechaPwn Japanese-console/foreign-disc cases, applies a configured language override only when console/disc regions warrant it. Relevant if RiptOPL ever builds a comparable physical-disc path; not automatically a generic OPL ISO setting. | disc region/language logic · configuration |
brunlx/OPL-Future---BETA explores theme primitives beyond changing colors and artwork. Its own QA report says static/build validation was performed, not physical-console verification. Visual layout choices are optional and not evidence of an underlying device or launch-path improvement.
| ID | Feature | What differs | Source |
|---|---|---|---|
OF1 |
Independent cover carousel, device selector dock and persistent status HUD Optional | Front-end element types allow bottom device tiles and separate status indicators around a cover carousel. RiptOPL has Coverflow and flexible themes, so this entry is limited to those dedicated composable UI primitives, not a claim that carousel artwork is absent. | UI element specifications · QA limits |
| Project | Why not another counted gap |
|---|---|
| MegaBitmap/PS2-SNL (SimpleNeutrinoLoader / UDPBDG) | PC-side game-list synchronization, BIN-to-ISO conversion and device installer merit a dedicated comparison with PS2-Servers, Caduceus CA2 and RiptOPL's existing network workflows. No new gap ID is assigned until this cross-tool parity audit distinguishes what is truly absent. |
| PS2BBL Extended | Configurable boot hotkeys, game-ID display, device paths and Neutrino handoff are bootloader-level facilities, not automatically missing OPL game-loader behavior. Useful companion reference for device ownership and launcher handoff, and relevant to Launchstation. |
| OdysseyLauncher / PS2 Webcore Launcher | Godot/Windows frontends, not demonstrated PS2-native storage/runtime substitutes; visual inspiration is not proof of a console feature gap. |
Scope of this focused 2026-10-15 pass: Source, patch files, build descriptions and stated hardware testing were compared where available. New CF/DB/RI/DL/OF identifiers are attributed to their sources; a gap is not a merge authorization or a claim of broad real-hardware compatibility. Before implementation, check latest RiptOPL and applicable PS2-Servers code for newly merged parity. Existing historical gap IDs and the 2026-10-08 broad audit are retained.
A focused code comparison against RiptOPL and PS2-Servers identified five additional source-attributed differences. These are not five shipping commitments or five verified console improvements. The source snapshots and corresponding branches are pinned in Revision and validation scope. Previous Caduceus, OPLattice, RIPPS2, OPHTML and HTTP/UDPFS records remain separate; overlaps are called out below.
Luden02/OrbitPS2-Manager is an Electron/Angular desktop library manager for Windows, macOS and Linux. It can import and catalog PS1/PS2 titles, download artwork, edit per-game CFG and manage VMC files. Those generic workflows overlap existing Caduceus CA entries and PS2-Servers' SQLite library/import tools; the two entries here deliberately track more specific operations.
| ID | Difference | Comparison and validation | Source |
|---|---|---|---|
OM1 |
Bidirectional PS1 launcher-layout migration | OrbitPS2 imports CUE/BIN/ZIP to VCD and can convert an installed PS1 library between POPStarter-style XX./SB. launcher apps and direct POPS//VCD/ RiptOPL/POPSLoader layout, including a library-wide action. PS2-Servers has PS1 VCD catalog/hash support, but no equivalent confirmed bidirectional bulk launcher-layout conversion. Preserve artwork by VCD filename in any future integration; never overwrite source VCDs or remove a working launcher before a verified replacement exists. |
rename/convert service · PS1 import modes |
OM2 |
Batch ISO/ZSO file transformation | Local worker-pool ISO → block-indexed LZ4/ZSO conversion, batch compression and reverse per-file ZSO → ISO. This differs from playing or streaming compressed files (RiptOPL and PS2-Servers already do that). Generic queued imports and cover downloads overlap Caduceus CA2/CA3 or existing tools; the missing component is a desktop transformation workflow. Only import tested output, preserve originals by default and compare performance, filesystem limits and image integrity. | ZSO worker-backed conversion |
forbenaj/ps2smb is a Python proof of concept: OPL still connects to a conventional SMB share, but the SMB server's file handles are backed by remote HTTP(S) ISO sources. Its source includes an Impacket SMB1/SMB2 virtual-file interception layer, a persistent chunk cache and a local admin/status endpoint. This is **not** RiptOPL's existing native HTTP game-streaming protocol and **not** ordinary local-file SMB hosting in PS2-Servers.
| ID | Difference | Scope, risk and status | Source |
|---|---|---|---|
SM1 |
Read-only virtual SMB share with HTTP-range sparse fetching | Remote file HEAD/Range probe, exact 206 Partial Content reads, 8-MiB disk-backed cache chunks, sequential prefetch and SMB1 file-open/read hooks. The PS2 sees a regular SMB game image; an HTTPS source must support reliable ranges. Upstream explicitly still requests a real-console game test; software tests do not establish consistent gameplay latency, FMV streaming or resets. This is a PS2-Servers host-side candidate, not a missing RiptOPL transport. Before adoption, enforce URL allowlists, bounded cache/storage, timeouts, content consistency and lawful user-supplied remote sources; avoid shipping arbitrary remote-catalog access by default. |
SMB hooks · HTTP range · persistent cache |
danielnuld/Open-PS2-Loader extends the standard OPL theme element ABI; this is **not** evidence that RiptOPL lacks basic cover art, theme switching, Coverflow, per-game backgrounds or game-details screens. Unlike a configuration-only theme, the source implements new FrostedPanel, CardShelf, CoverWallpaper and ItemTitle primitives in the runtime. RiptOPL's current theme element vocabulary lacks those exact elements; porting the entire older fork would risk losing modern RiptOPL driver, library and achievements work.
| ID | Difference | Scope and evidence | Source |
|---|---|---|---|
DN1 |
GS framebuffer-based frosted-glass blur panel Optional | Blur render targets are sized for GS frame/texture stride alignment and composite a sampled backdrop behind a theme-controlled transparent panel. This is a discrete compositing operation, not simply a semitransparent rectangle. Require per-video-mode VRAM/GS fallback and profiling (480i/480p/other RiptOPL modes, music and background art active) before any hardware claim. | GS blur render chain · FrostedPanel element |
DN2 |
CardShelf + animated CoverWallpaper + selected ItemTitle primitives Optional | Horizontal selection swaps navigation axes; shelf cards lift/scale the focused cover while crossfading wallpaper responds to the selection. ItemTitle exposes the readable game title separately from serial-ID ItemText. RiptOPL already implements alternative layouts, Coverflow and display-title logic, so this row counts only the distinct reusable theme-element API/presentation, not three missing game-library abilities. Front-end performance, texture lifetime and HD-video constraints need hardware validation. |
theme element implementation · theme configuration |
pcm720/udpfsd supports isolated concurrent UDPFS clients, read-only mode, UDPBD-with-UDPFS transport, Go binaries for embedded targets and optional CGO/libchdr CHD handling. YouKnow-sys/udpfs-server packages this family for Android. GorGylka/Server2PS2 provides an embedded Luckfox/Pico hardware deployment with SMB/UDPBD/UDPFS and a physical BOOT-button/LED mode selector. RiptOPL's PS2-Servers Desktop/Core/Edge already has UDPFS, UDPBD, SMB, embedded web UI, multi-client modes and portable deployment. None of those protocol categories is a newly missing RiptOPL game source; a device-specific button-controlled appliance is a different packaging/hardware proposition. Track as integration and server-protocol regression references rather than inflating feature counts. Edge does not presently include CHD or SMB2/3; Desktop/Core retain CHD where libchdr is installed. No end-to-end comparison on actual PS2 hardware was performed in this audit.
Audit boundary: this batch compared selected source modules, declarations, documentation and previous fork-gap evidence. The new entries are recorded as source-verified differences with explicit compatibility caveats. Other pre-existing IDs remain subject to the separate full re-audit described below.
Surveyed with the rest. Everything these offer is already in RiptOPL or does not apply to it.
| Project | Why nothing is listed |
|---|---|
| ps2homebrew/Open-PS2-Loader | RiptOPL is built on its master branch. Selected upstream changes and proposals are listed above under Upstream OPL pull requests. |
| ps2-mmce/Open-PS2-Loader | MMCE support, switching MMCEs to the boot card during in-game reset, and VMC groups are all in RiptOPL; the rest are upstream fixes. |
| Docmine17/Open-PS2-Loader-HTTP | RiptOPL's HTTP protocol comes from this project. Its only later change is an example games.csv. |
| NathanNeurotic/xerabora | At the earlier survey baseline, the RA loader used xeRAbora alpha.15; the current guide requires alpha.17. Pointer chains, larger watch sets and alignment-safe direct reads are implemented; the older client fork is historical. |
| SvenGDK/Open-PS2-Loader | An OPL v1.0.0 build for PSX DESR consoles. Everything it lists is in upstream OPL 1.2, which RiptOPL is based on. |
| rodrigo1593-dev/oplfork | Two experiments with PADEMU module loading. The same author's Bluetooth change is U9. |
| PS2-Widescreen/OPL-Widescreen-Cheats | A widescreen cheat collection that works with RiptOPL's cheat engine as it is. |
| ps2homebrew/Open-PS2-Loader-lang | RiptOPL builds its UI languages from this repository, including Galician and Serbian. |
| ps2homebrew/HDLGameInstaller | A separate app that installs games into APA partitions. RiptOPL does not write APA partitions. |
| Open PS2 Loader Daily Build (OPL DB / OPL TA) | Its historical ELM/PS1 page is superseded by RiptOPL's dedicated PS1 Games view and current POPSTARTER/Ember paths. Its theme sound effects, startup audio and related theme assets are also already present or extended in RiptOPL's current sound/theme engine. |
| grimdoomer/Open-PS2-Loader | The exFAT/GPT internal-HDD path that made this fork distinctive is already part of RiptOPL's internal HDD support. Its later 64-bit BDM LBA / VMC-range safety work is also present in RiptOPL's current bdmsupport.c. |
| X2P (Xbox-to-PlayStation) | X2P intentionally removes OPL features and presents a themed, USB-focused subset; it is not an Xbox emulator. Its sound/theme stack (SFX, startup audio and streamed OGG BGM) is already present and more extensively integrated in RiptOPL, so the audit found no net-added capability. |
- October 15 follow-up code comparison: added OM1–OM2 (OrbitPS2 Manager's PS1 launcher-layout conversion and batch ISO/ZSO transformation), SM1 (PS2SMB's HTTP-backed virtual SMB, with console validation pending), and DN1–DN2 (frosted GS blur and CardShelf/CoverWallpaper PS5 theme primitives). RiptOPL's existing HTTP, SMB, Coverflow, themes, ZSO playback and PS2-Servers' import tools are not gaps. Checked udpfsd, Android udpfs-server and Server2PS2 as supporting references without new ID assignments. Details and pinned source hashes are in this batch.
- October 15, 2026 status reconciliation: OR3 (RA Neutrino), OR4/CO3 (console achievement browser), CO5 (paired Caduceus gating) and CO6 (SMB ECHO refresh) are implemented in RiptOPL and now marked as such in the searchable register. LU6 has improved Favorites staging but is not identical to LUNA's entire temp-file design. U9 is a closed, unmerged upstream experiment. These stable IDs remain in the historical ledger and source counts.
- Focused October 15, 2026 source additions: added PS2CF (CF1–CF4; RiptOPL #955 / Launchstation #156), OPL-DualSense-BT (DB1–DB2), RIPPS2 (RI1–RI4), Enhanced PS2 Disc Launcher (DL1–DL2), and OPL FUTURE (OF1). Also recorded PS2-SNL, PS2BBL Extended and non-native launcher candidates without inflating the counted gaps. The previous source-wide audit remains dated October 8; this is a focused supplement, not a complete re-audit of every previously tracked repository.
- Caduceus pair: the Windows-side library/RA companion and its paired OPL fork are now compared with PS2-Servers + RiptOPL. 14 CA/CO source-attributed entries were added after code inspection; CO3 overlaps OR4 and CO4 is richer experimental notification rendering, not an absent RiptOPL unlock overlay.
- OPHTML: source is ahead of the v0.10.0 release. The reusable console-core archive is new OH12; per-game compatibility settings and last-played restoration overlap existing RiptOPL features. Planned cover decoding, search, Favorites and IGR are not counted as delivered features.
- LUNA: the actual frontend/runtime gitlinks replace the old September snapshot. LU9/LU10/LU11 cover the new case-grid, experimental Scroll view and restricted APA/PFS Neutrino VMC implementation. Retired views are no longer counted; the current README's FAT-PS2 IGR report replaces the stale WIP description.
- xeRAbora: H2/H3 were reconciled after the alpha.15 port in PR #881. The PC client is maintained upstream. Original-disc RA and pointer chains already existed; RA with Neutrino remains OR3.
-
PS2-Launcher: the existing v5.0.0 comparison still applies at
46bad5a4. Its later commit documents a controller rather than adding another implementation; the seven existing gaps remain. -
ORBIT and Titan: the current ORBIT master is the already compared v1.0.2 merge; Titan remains at the previously audited
2a69c259. No new gaps are asserted for unchanged snapshots. - Upstream OPL: #1779 is now merged upstream but remains U1 here; #1736 remains open; #1675 closed without merge and is explicitly historical. A closed proposal is not a shipped fix.
- wOPL: W4 and W5 are already implemented in RiptOPL. W1/W2/W3/W6 remain, preserving their original evidence and design-choice labels.
“Fork gap” is a source-specific difference, not an invitation to copy every fork, or a guarantee that a feature works on every PS2. Each record should establish: (1) a named upstream revision or release; (2) a relevant implementation file or tested feature; (3) the corresponding RiptOPL behavior on a named branch; (4) whether the difference is an actual missing function, an optional design, a companion capability, an experimental claim, or already implemented; and (5) the evidence level: source / host tests / PCSX2 / real console.
What is not counted: forks that only change branding, empty forks, generic copy repositories, unverified release claims, unsupported device compatibility, or new names for existing features. Multiple sources can receive different IDs for a similar feature; those IDs are source-attributed records, not an additive number of unique capabilities. Mark delivered work as implemented instead of deleting its provenance.
Reporting another project: link its repository or official source, exact branch/commit, feature code and hardware validation, then show where RiptOPL lacks (or already contains) it. Before creating another gap ID, check the register, the A–Z directory, and active PRs. Source differences affecting Launchstation, POPSLoader, launcHER or PS2-Servers should identify that companion rather than incorrectly claim an OPL game-loader gap.
Freshness: the October 8 comprehensive baseline has not been re-executed end-to-end. The October 15 pass corrects the five explicitly demonstrated implemented records, documents one partial-parity case and one closed historical proposal, and expands the project directory. The remaining records require revision-specific rechecks; their presence is not an assertion that they remain absent at HEAD.
Live repository revisions checked on 2026-10-08 UTC. A revision check establishes what source is current, not that every branch, release or hardware path was retested. The selected comparisons above were checked in source; unchanged historical variants retain their pinned branch evidence. NHDDL uses its maintained main branch rather than the repository default legacy.
Surveyed repository revisions
| Repository | Branch | Revision | Scope this pass |
|---|---|---|---|
| Luden02/OrbitPS2-Manager | main |
cb915ca6 |
2026-10-15 follow-up: Focused PS1 launcher conversion and ZSO batch code |
| forbenaj/ps2smb | master |
4ddd3fd9 |
2026-10-15 follow-up: SMB virtualization, range I/O, cache; console test still pending |
| danielnuld/Open-PS2-Loader | master |
fca8fcb0 |
2026-10-15 follow-up: PS5 theme ABI, blur and shelf primitives |
| pcm720/udpfsd | main |
58d7c8f1 |
2026-10-15 follow-up: Multiclient UDPFS/UDPBD server reference; no new gap |
| YouKnow-sys/udpfs-server | master |
19718a39 |
2026-10-15 follow-up: Android UDPFS wrapper; no new gap |
| GorGylka/Server2PS2 | main |
58c6f97b |
2026-10-15 follow-up: Embedded appliance/physical mode selector reference |
| NathanNeurotic/PS2-Servers | main |
c04106c1 |
2026-10-15 follow-up: Desktop/Core/Edge and game-library comparison |
| NathanNeurotic/Open-PS2-Loader | rebuild/main |
0f2b5e69 |
2026-10-15 follow-up: Contemporary OPL theme and network comparison |
| mihhru/PS2CF | main |
9b6ed370 |
2026-10-15 focused pass: PC CARD driver, build and validation files; SCPH-10000 reports |
| rodrigoGalvanDev/OPL-DualSense-BT | dualsense-bt |
971ae6e5 |
2026-10-15 focused pass: Menu/in-game BT code and hardware matrix |
| akilluminati47/RIPPS2 | main |
a26a9843 |
2026-10-15 focused pass: README, patch inventory and relevant feature patch files |
| exalandru/Enhanced-PS2-Disc-Launcher | main |
1bc315fa |
2026-10-15 focused pass: Physical disc launcher source and claimed hardware cases |
| brunlx/OPL-Future---BETA | main |
0ca08d10 |
2026-10-15 focused pass: UI documentation and static QA bounds |
| MegaBitmap/PS2-SNL | master |
10f41f12 |
2026-10-15 focused pass: Initial relevant PC/server workflow scan; no counted parity gap |
| AdityaKumar7209/Modulo-R1-Beta-Preview---PS2 | main |
13bdb68c |
Revision checked; existing detailed evidence retained |
| Docmine17/Open-PS2-Loader-HTTP | master |
6ee5bef2 |
Revision checked; existing detailed evidence retained |
| Irfanlesnar/PS2-Launcher | main |
46bad5a4 |
Selected implementation differences checked |
| Jay-Jay-OPL/OPL-Daily-Builds | master |
aa531a85 |
Revision checked; existing detailed evidence retained |
| L10N37/Open-PS2-Loader-Extended-APA | main |
5cb80589 |
Revision checked; existing detailed evidence retained |
| NathanNeurotic/Open-PS2-Loader | rebuild/main |
9ef8d643 |
Revision checked; existing detailed evidence retained |
| NathanNeurotic/neutrino | master |
a7b67364 |
Revision checked; existing detailed evidence retained |
| NathanNeurotic/uOPL | wOPL-base |
4ae74148 |
Revision checked; existing detailed evidence retained |
| NathanNeurotic/xerabora | main |
ebd18ed6 |
Revision checked; existing detailed evidence retained |
| PS2-Widescreen/OPL-Widescreen-Cheats | main |
f5b67cd6 |
Revision checked; existing detailed evidence retained |
| Spaghetticode-Boon-Tobias/RETROLauncher | main |
e6f95081 |
Revision checked; existing detailed evidence retained |
| SvenGDK/Open-PS2-Loader | main |
b7e64981 |
Revision checked; existing detailed evidence retained |
| belek666/Open-PS2-Loader | master |
41f7cf0b |
Revision checked; existing detailed evidence retained |
| coffeedevsolutions/OPHTML | main |
03a5d56f |
Selected implementation differences checked |
| coffeedevsolutions/OPLattice | main |
32f3fd7b |
Revision checked; existing detailed evidence retained |
| danielnuld/ps2-launcher | master |
28a23666 |
Revision checked; existing detailed evidence retained |
| dnunezx/LUNA | main |
475f7b25 |
Selected implementation differences checked |
| exaconn/Open-PS2-Loader | master |
73a4921d |
Revision checked; existing detailed evidence retained |
| ffgriever-pl/Memory-Card-Annihilator | master |
769d581d |
Revision checked; existing detailed evidence retained |
| grimdoomer/Open-PS2-Loader | master |
24340b5e |
Revision checked; existing detailed evidence retained |
| hacan359/Open-PS2-Loader | ra |
f4d559a3 |
Selected implementation differences checked |
| hacan359/xerabora | main |
d36ee3a5 |
Selected implementation differences checked |
| koraxial/Xbox-2-PlayStation-Emulator-AlFa | master |
160c3e18 |
Revision checked; existing detailed evidence retained |
| mystyq/Stable-Open-PS2-Loader | master |
770d5323 |
Revision checked; existing detailed evidence retained |
| officialjuicedesigns/OPL-Evolution | evo-development |
47119b71 |
Revision checked; existing detailed evidence retained |
| pcm720/nhddl | main |
821b6c9b |
Selected implementation differences checked |
| ps2-mmce/Open-PS2-Loader | master |
e2090114 |
Revision checked; existing detailed evidence retained |
| ps2homebrew/HDLGameInstaller | main |
ec37c81f |
Revision checked; existing detailed evidence retained |
| ps2homebrew/Open-PS2-Loader | master |
4cc74baa |
Selected implementation differences checked |
| ps2homebrew/Open-PS2-Loader-lang | main |
b23b743d |
Revision checked; existing detailed evidence retained |
| ps2homebrew/wOPL | wOPL-base |
4ae74148 |
Selected implementation differences checked |
| rodrigo1593-dev/oplfork | main |
0dbb0d35 |
Revision checked; existing detailed evidence retained |
| slimpuggamer/uOPL | uOPL-1 |
0daf81fe |
Revision checked; existing detailed evidence retained |
| sobecapaklebs-dev/project-titan-magenta-edition | main |
2a69c259 |
Revision checked; existing detailed evidence retained |
2026-10-08 retired IDs: W4 (live disc-art toggle), W5 (pad tick-wrap fix) and H1 (pointer chains) are already implemented in RiptOPL, in src/themes.c, src/pad.c and ee_core/src/ra.c respectively. LU1 and LU3 describe removed LUNA views from the earlier snapshot; their IDs remain reserved. OR1/OR2 remain retired, with PS1 save-icon coverage now extended to VCD and Ember by PR #876.
-
OPHTML parity checked on 2026-09-27: OPHTML / ps2ui by coffeedevsolutions (Blake Coffee), audited against
main@60810bd(version 0.10.0,.uibformat v7). While publicly titled as a web-technology UI toolkit, the source contains an embedded OPL-compatible game launcher (ophtml.elf) and environment. Overlapping launcher features (Neutrino no-reset launch insrc/elfldr_noreset.c, ISO9660 SYSTEM.CNF extraction insrc/retrogem.c, texture streaming insrc/texcache.c, and list windowing) were excluded as existing RiptOPL parity, leaving 11 genuine code-level gaps: declarative flexbox compilation to zero-allocation C99 GS runtime, pre-resolved pairwise HarfBuzz kerning on the EE, instant 1-byte palette theme switching, runtime 2D coordinate offsets, focus subtree visibility masking with automatic D-pad bypass, automated CRT overscan & multi-layer alpha contrast linter, browser-based theme simulation, static VRAM budgeting, Play! emulator CI testing, EE bus-alignment fuzzer hardening, and compiler safety ceilings. -
LUNA parity checked on 2026-09-22: LUNA by darkladark, audited against
main@23112ecand RiptOPLrebuild/main@abf14079. Eight source-backed gaps survived overlap checking. LU8 tracks LUNA's Neutrino in-game return because the implementation is present and RiptOPL's Neutrino core lacks IGR; it remains marked WIP because LUNA's current README has not promoted the feature to stable status. -
Previously awaiting variants fully audited on 2026-09-22: E2OPL's historical SourceForge source; OPL Daily Build
aa531a85; Modular PADEMU66b93542; Grimdoomer's large-capacity branchd1f51be4plus its later BDM LBA fix branch; historical uOPL0daf81fe; X2P160c3e18; exaconn master73a4921dand negCon branchf9717f76; and Stable OPL770d5323. Six new gaps survived code comparison; three projects moved to the no-gap table. -
Project Titan Magenta Edition parity checked on 2026-09-22: audited against upstream
main@2a69c259/VERSION0.3.93-rc17 and RiptOPLrebuild/main@abf14079. Titan's controller, Smart IGR and Store/Download documentation explicitly retains physical-target validation caveats; those rows describe source capability, not a hardware-compatibility guarantee. - NHDDL parity checked on 2026-09-20: RiptOPL already has the visual Game ID signal used by PixelFX/RetroGEM hardware, MMCE GameID switching for SD2PSX/MemCard PRO2 on cross-device launches, remembered last-played selection with optional autostart, persistent ISO metadata caching, and global/per-game Neutrino arguments. Those are therefore not N-series gaps.
-
Already in RiptOPL, so not listed: the fix from wOPL PR #435 (remember the last played game when it is
the first list entry), PS2RD cheat images (
.img), cover art fromART/art.tar(Interface settings), per-game configs fromCFG/cfg.tar, cheats fromCHT/cht.tar, persistent TAR index sidecars for all three archive kinds, the<name>_show_runtheme key, RetroAchievements for physical discs, per-game OSD language, virtual memory card creation, and the older USB driver that upstream PR #1752 proposes pinning. - Shipped since the survey: Ratchet & Clank 3 over SMB (was U5, from upstream PR #1761), Pro Evolution Soccer 2 defaulting to Accurate Reads (was U7, see Compatibility Modes) and Galician and Serbian UI languages (was U8, see Languages), all in PR #658; remembered per-game cheat selections (was U2, from upstream PR #1748, in PR #846, see Cheat modes); Create VMC on First Launch (was OR2, in PR #842, see Game Launching); out-of-bounds reads checked against the real media size (was U3, from upstream PR #1763, in PR #840); in-game reset without the VBLANK interrupt (was U4, from upstream PR #1762, in PR #841, see In-Game Reset); and animated 3D save icons (was OR1, in PR #843, see Artwork Settings). IDs are not reused.
-
wOPL's config format: wOPL moved to libconfig. RiptOPL reads and writes both formats, so files the two
loaders share, such as an app's
title.cfg, keep working in both. -
Device names: RiptOPL accepts
usb0:andata0:style names for its boot path and ties each launch to its device by driver name, but reads files throughmassN:. wOPL uses the typed names throughout. That is a different approach rather than a missing feature, so it is not counted. -
TAR archive status: the older survey note about
CFG/cfg.taris obsolete. RiptOPLrebuild/mainnow has one indexed/persistently cached TAR engine forART/art.tar,CFG/cfg.tarandCHT/cht.tar. Consequently, sOPL's TAR work is not a current gap, and an archive claim is counted only when its implementation can be located in the audited source.
One place to discover PS2 loaders, launchers and adjacent utilities, including projects with zero confirmed missing features, historical implementations, PC-side helpers, bootloaders and adjacent projects still needing closer comparison. The directory is not a claim that every GitHub fork is unique, maintained, safe to run or hardware-tested. All 140 entries have explicit destination links; no project is automatically a feature request.
New comparison candidates (2026-10-15; no confirmed gap IDs): OSD-XMB merits priority source comparison for its plugin-driven PS1/PS2 library, on-device artwork downloads, Neutrino per-game settings, memory-card tools and device startup; XEB+ and its Neutrino plugin for dashboard/device/config workflows; MMCEMAN, OpenWRT UDPBD and RetroNAS for driver/server compatibility; and OPL Manager, Apollo Save Tool and HDL Batch Installer for PC/console library and save workflows. Boot exploits, optical-disc modification and external PC tools are included as references, not assumed OPL features. Verify code, existing RiptOPL parity, and physical-console safety before promoting any entry to a gap.
| Project | Area | Assessment | What to look for |
|---|---|---|---|
| Android UDPFS Server | Network & RA | Further audit | Android-hosted UDPFS service |
| Apollo Save Tool | Tools & themes | Further audit | PS2 save import/export and memory-card management; compare with RiptOPL VMC workflows |
| BDMAssault (ISR) | PS1 & disc | Reference | Original BDM Assault driver compatibility tooling |
| BDMAssault (Okeanos) | PS1 & disc | Further audit | BDM/exFAT and POPStarter UDPFS adaptations; related to PS2CF hardware driver layering |
| BoliviaOS | Game loaders | Tracked gaps | Multifunction PS2 environment; project reference site |
| Caduceus desktop | Network & RA | Tracked gaps | Windows game-library manager, bundled OPLServer SMB host and xeRAbora-based achievement companion; compared against PS2-Servers below |
| Caduceus OPL | Tools & themes | Tracked gaps | XMB-style OPL console client paired with Caduceus, including a console achievement browser; related to already-listed OR4 |
| CheatDevice PS2 | Tools & themes | Reference | Standalone PS2 runtime cheat engine and code-management reference |
| DKWDRV | PS1 & disc | Reference | PS1 optical-drive compatibility driver |
| Docker OPL SMB server | Network & RA | Reference | Containerized SMB1/Samba game share |
| E2OPL | Game loaders | Tracked gaps | Historical USB EXT2 filesystem loader |
| Ember (PS1 runtime) | PS1 & disc | Reference | Independent PS1 emulator integrated as an optional RiptOPL core |
| Enhanced PS2 Disc Launcher | Game loaders | Tracked gaps | MechaPwn physical-disc boot and PS1 DKWDRV/PS1VModeNeg handoff, with conditional import-language override |
| ESR | PS1 & disc | Reference | Historical patched-DVD PS2 game boot method |
| Extended APA | Game loaders | Tracked gaps | An OPL build for internal HDDs larger than 2 TiB |
| Fortuna | Boot & file managers | Reference | Memory-card exploit for launching homebrew on compatible PS2 hardware |
| Fortuna Launcher | Boot & file managers | Further audit | Fortuna-oriented homebrew launching interface, separate from the exploit |
| Free McBoot Installer | Boot & file managers | Reference | FMCB installation entrypoint, not a game loader |
| FreeDVDBoot | Boot & file managers | Reference | DVD-player exploit enabling PS2 homebrew execution from optical media |
| FreeHDBoot | Boot & file managers | Reference | HDD-based PS2 homebrew boot environment |
| FreeMCBoot | Boot & file managers | Reference | Memory-card homebrew boot environment; distinct from the installer already listed |
| FunTuna | Boot & file managers | Reference | Fortuna-based FreeMCBoot launch package for supported consoles |
| FunTuna Fork | Boot & file managers | Reference | Alternative Fortuna homebrew boot bundle; audit differences before treating as a gap |
| GSM | Tools & themes | Reference | Standalone PS2 video-mode selection utility; OPL already incorporates GSM features |
| HDL Batch Installer | Tools & themes | Reference | Desktop batch-install GUI for HDLoader/APA HDD game images |
| hdl-dump | Tools & themes | Reference | Install HDL game images to APA-formatted HDD |
| HDLGameInstaller · ps2homebrew | Tools & themes | Reference | APA/HDLoader game installer; writes partitions |
| Homebrew Downloader | Tools & themes | Further audit | Console-side homebrew download and installation workflow |
| iLaunchELF | Boot & file managers | Further audit | Experimental HTTP-based PS2 ELF loader |
| ISR OPL fork | Game loaders | Reference | Historical upstream-derived build |
| launcHER | PS1 & disc | Reference | PS1 launch/runtime integration project |
| Launchstation · NathanNeurotic | Boot & file managers | Reference | Related file manager, dashboard and ELF launcher; CF work in PR #156 |
| LUNA | Game loaders | Tracked gaps | An NHDDL/Neutrino-derived visual loader with a coordinated frontend/runtime, by darkladark |
| LUNA Neutrino runtime | Game loaders | Reference | LUNA runtime modifications for Neutrino |
| LUNA NHDDL frontend | Game loaders | Reference | LUNA frontend/NHDDL component |
| MechaPwn | PS1 & disc | Reference | Mechacon/optical-disc region modification; not an OPL loader parity claim |
| Memory-Card-Annihilator · ffgriever-pl | Tools & themes | Reference | Memory-card formatting/repair reference; potentially destructive |
| MMCEMAN | Game loaders | Further audit | IOP driver for MMCE memory-card emulation and compatible devices |
| Modular PADEMU | Game loaders | Tracked gaps | A historical modular controller-emulation branch |
| Modulo R1 | Game loaders | Tracked gaps | A Neutrino-based loader in beta |
| mymcplus | Tools & themes | Further audit | Desktop PS2 memory-card image management and save import/export |
| Neutrino | Game loaders | Reference | Canonical modular PS2 game loader |
| Neutrino (ISR fork) | Game loaders | Reference | Historical Neutrino derivative |
| Neutrino (rickgaiser) | Game loaders | Reference | Canonical upstream distribution used for modular PS2 emulation |
| NHDDL | Game loaders | Tracked gaps | A deliberately small Neutrino front-end and launcher |
| OdysseyLauncher · GeekRhapsody | Tools & themes | Reference | Desktop Godot/.NET frontend, not PS2-native |
| Open PS2 Loader (canonical) | Game loaders | Tracked gaps | Upstream changes and historical proposals not implemented in RiptOPL |
| Open USB Loader | Game loaders | Reference | Historical PS2 USB game loader predating later OPL development |
| Open-PS2-Loader · grimdoomer | Game loaders | Reference | Internal exFAT/GPT HDD implementation reference |
| Open-PS2-Loader · ps2-mmce | Game loaders | Reference | OPL adaptation for MMCE devices |
| Open-PS2-Loader · SvenGDK | Game loaders | Reference | Historical PSX DVR/DESR-oriented OPL build |
| Open-PS2-Loader-HTTP · Docmine17 | Game loaders | Reference | HTTP loading fork, integrated into RiptOPL |
| OpenTuna | Boot & file managers | Reference | Open-source Fortuna-derived homebrew boot exploit |
| OpenWRT UDPBD | Network & RA | Further audit | Embedded OpenWRT router-based UDPBD game-serving solution |
| OPHTML | Game loaders | Tracked gaps | HTML/CSS declarative UI compiler, zero-allocation C99 runtime and standalone Neutrino console launcher |
| OPL CFG database | Tools & themes | Reference | Game metadata and configuration records |
| OPL Compatibility List | Tools & themes | Reference | Game compatibility database |
| OPL Evolution | Game loaders | Tracked gaps | An experimental OPL fork with a unified dashboard |
| OPL FUTURE (beta) | Game loaders | Tracked gaps | Experimental OPL front-end status HUD and device selector dock; physical-console validation not established |
| OPL language packs | Tools & themes | Reference | Official language-file source |
| OPL Manager | Tools & themes | Further audit | Desktop OPL library, naming, artwork and configuration manager |
| OPL Manager art archive | Tools & themes | Reference | Preserved static PS1/PS2 art database |
| OPL PC Tools | Tools & themes | Further audit | Desktop tooling for OPL device storage |
| OPL PS1 AIO Converter GUI | Tools & themes | Further audit | PS1 image-to-VCD conversion and multi-device POPStarter preparation |
| OPL Theme Editor | Tools & themes | Reference | Historical WYSIWYG OPL theme editor |
| OPL-Daily-Builds · Jay-Jay-OPL | Game loaders | Reference | Historical OPL daily-build packaging |
| OPL-DS4RTBT · MiguelQueiroz010 | Game loaders | Reference | Downstream DS4/DualSense wireless controller work; not separately counted |
| OPL-DualSense-BT | Game loaders | Tracked gaps | DualSense Bluetooth menu/in-game PADEMU support, device discovery and cable-free secure pairing |
| OPL-Server · elmariolo | Network & RA | Reference | Legacy OPL network server |
| OPL-Widescreen-Cheats · PS2-Widescreen | Tools & themes | Reference | Cheat collection, not another game loader |
| OPLattice | Game loaders | Tracked gaps | Grid themes, the SHELF interface and theme tooling |
| oplfork · rodrigo1593-dev | Game loaders | Reference | Historical PADEMU experiment; upstream polling proposal tracked |
| ORBIT | Game loaders | Tracked gaps | A Neutrino-based PS2 launcher with console-side saves, achievements and a companion game catalog |
| OrbitPS2 Manager | Tools & themes | Tracked gaps | Desktop migration & batch ZSO operations: OM1–OM2 |
| OSD-XMB | Boot & file managers | Further audit | XMB-style PS1/PS2 launcher with Neutrino, plugin, storage, VMC and artwork features |
| OSD-XMB Artwork DB | Tools & themes | Reference | Artwork database supporting OSD-XMB's on-console game-art download |
| OSDMenu | Boot & file managers | Reference | PS2 OSD/OSDSYS launcher patches |
| OSDSYS-Launcher | Boot & file managers | Reference | Launcher for supported PS2 OSDSYS system-menu updates |
| pcm720 OPL fork | Game loaders | Reference | Historical loader fork; verify distinct features before adding gaps |
| pfsshell | Tools & themes | Reference | PFS filesystem inspection and editing |
| Pixel Prime OPL theme | Tools & themes | Reference | Community visual theme, not necessarily a loader fork gap |
| POPSLoader | PS1 & disc | Reference | POPStarter and PS1 game launcher |
| POPStarter (official resource) | PS1 & disc | Reference | Original PS1 VCD launch layer built around Sony POPS; license and runtime requirements apply |
| Project Titan Magenta Edition | Game loaders | Tracked gaps | A PS2 operating-system/system-platform project with integrated game engines |
| PS1VModeNeg | PS1 & disc | Reference | Imported PS1 disc PAL/NTSC video selection |
| PS2 Discord RPC | Network & RA | Further audit | Discord presence from PS2 launches over SMB |
| PS2 OPL CFG compatibility database | Tools & themes | Reference | Historical game configuration compatibility records |
| PS2 Pnacher | Tools & themes | Reference | Desktop PS2 game-image patching tool; not a live game-loader feature |
| PS2-Covers | Tools & themes | Reference | Community PS2 cover-art archive for library-management workflows |
| PS2-Launcher | Game loaders | Tracked gaps | An OPL-based launcher with a console-style interface |
| PS2-Launcher Manager | Tools & themes | Reference | Companion cover/content-management web interface |
| PS2-Launcher Manager source | Tools & themes | Reference | Cover/image asset manager for PS2-Launcher |
| PS2-Servers · NathanNeurotic | Network & RA | Reference | Related network server used with RiptOPL |
| PS2-Webcore-Launcher · cha0ticd4rksid3 | Tools & themes | Reference | Windows-style frontend, not a PS2 console loader |
| PS2BBL | Boot & file managers | Reference | Basic PS2 and DESR bootloader |
| PS2BBL Extended | Boot & file managers | Further audit | Extended bootloader |
| PS2CF | Game loaders | Tracked gaps | Early Japanese PS2 PC CARD CompactFlash/SD-to-CF game loader and wLaunchELF filesystem driver (2026-10-14 release) |
| PS2Klient | Network & RA | Reference | PC graphical front end to PS2Client remote-development tools |
| PS2Link | Boot & file managers | Reference | Network-based PS2 ELF loading and remote development utility |
| ps2rd | Tools & themes | Reference | PS2 runtime cheat engine used as a reference for OPL cheat integrations |
| PS2RD CHT Manager | Tools & themes | Reference | PC-side cheat configuration files for RiptOPL and OPL |
| PS2RPC | Network & RA | Reference | Historical Discord presence integration |
| PS2SMB HTTP-backed SMB | Network & RA | Tracked gaps | Virtual SMB backed by remote HTTP ranges and persistent cache: SM1 (console pending) |
| PS2SP | Network & RA | Further audit | Companion PS2 server ecosystem integration |
| PS5 UI v2 OPL fork | Game loaders | Tracked gaps | PS5 theme GS blur and CardShelf/CoverWallpaper elements: DN1–DN2 |
| PSBBN Definitive Project | Boot & file managers | Further audit | BBN/PSBBN operating environment and HDD presentation |
| PSUManager | Tools & themes | Reference | PSU archive tooling used in RiptOPL build/release validation (non-GitHub source) |
| PSX XMB Manager | Tools & themes | Reference | Desktop PSX DVR game and homebrew installer |
| PyOPLM | Tools & themes | Further audit | CLI management of USB and SMB OPL libraries |
| RadMenu | Boot & file managers | Further audit | Configurable PS2 homebrew and ELF menu launcher |
| Retro GEM Disc Launcher | PS1 & disc | Reference | Game-disc launcher with Retro GEM ID integration |
| Retro GEM OPL fork | Game loaders | Reference | Retro GEM game-ID integration |
| Retro GEM POPStarter Starter | PS1 & disc | Reference | Disc launcher handoff |
| RETROLauncher | Game loaders | Tracked gaps | A Lua launcher for retro emulators and PS2 games |
| RetroNAS | Network & RA | Further audit | Network storage appliance supporting OPL game shares and related services |
| RIPPS2 | Game loaders | Tracked gaps | September–October 2026 RiptOPL-derived all-in-one console launcher with integrated memory-file, card-management and in-game UI tools |
| RiptOPL (this project) | Game loaders | Reference | RiptOPL itself; tracked baseline and implementation destination |
| RiptOPL Neutrino mirror | Game loaders | Reference | Neutrino runtime integration reference |
| Romman | Tools & themes | Reference | Command-line PS2 ROM and game-file management utility |
| RRVE / exaconn OPL | Game loaders | Tracked gaps | The former RRVE repository, now carrying wheel and negCon experiments |
| sd2psXtd Firmware | Game loaders | Reference | Memory-card emulation firmware relevant to launcher/device interoperability |
| sd2psXtd OPL fork | Game loaders | Reference | Storage/card ecosystem fork |
| Server2PS2 | Network & RA | Reference | Embedded Luckfox/Pico SMB/UDPBD/UDPFS appliance; compare with PS2-Servers Edge before treating hardware UI as a game-loader gap |
| SimpleNeutrinoLoader (PS2-SNL) | Game loaders | Further audit | Neutrino frontend with PC-side library sync and UDPBDG |
| Stable OPL | Game loaders | Tracked gaps | A stability-focused OPL fork with storage-driver changes |
| udpfsd | Network & RA | Reference | Go UDPFS server |
| uOPL (historical) | Game loaders | Tracked gaps | KrahJohlito-era uOPL before the later wOPL line |
| uOPL (RiptOPL archive) | Game loaders | Reference | User-maintained historical uOPL reference fork |
| USBUtil | Tools & themes | Reference | Historical desktop preparation of PS2 USB game images |
| wLaunchELF | Boot & file managers | Reference | Canonical ELF browser and file manager |
| wLaunchELF ISR | Boot & file managers | Reference | Intermediate wLaunchELF branch |
| wLaunchELF R3Z | Boot & file managers | Reference | Launchstation's upstream R3Z family |
| wLaunchELF R3Z FTP | Boot & file managers | Further audit | FTP and UDPFS remote device functionality |
| wOPL | Game loaders | Tracked gaps | The continuation of KrahJohlito's uOPL |
| Xbox-2-PlayStation-Emulator-AlFa · koraxial | Game loaders | Reference | USB-focused OPL-derived interface; not an Xbox emulator |
| XEB+ | Boot & file managers | Further audit | XtremeEliteBoot+ XMB-style PS2 launcher and extensible plugin host |
| XEB+ Neutrino loader plugin | Game loaders | Further audit | Lua/plugin Neutrino handoff |
| xerabora · NathanNeurotic | Network & RA | Reference | Historical xeRAbora integration fork |
| xeRAbora (PC) | Network & RA | Reviewed / no counted gap | RetroAchievements for real PS2 hardware |
| xeRAbora OPL (ra branch) | Game loaders | Reference | RetroAchievements OPL console integration (ra branch) |
No projects match this selection. Clear the search or choose All areas.
Assessment legend: “Tracked gaps” means one or more source-attributed register entries (some may have since shipped); “Reviewed / no counted gap” is a deliberate zero-gap finding; “Reference” is useful adjacent infrastructure; and “Further audit” means the project exists but no new difference has been demonstrated. Names and links are recorded as of October 15, 2026. Private repositories, unverified mirrors and generic copies with no evidenced variation are not individually enumerated. How to contribute missing projects.
Source: fork-gaps.html @ 00e273e37093. Read on the documentation website.
Start here
Storage and networking
- USB, MX4SIO and iLink
- MMCE
- Internal HDD: APA and exFAT
- PSX DESR DVR (experimental)
- PC CARD CompactFlash (experimental)
- SMB shares
- Network boot: UDPFS and UDPBD
- HTTP
- NBD server
Games and features
- Neutrino core
- PS1: POPStarter and Ember
- Per-game settings
- Virtual memory cards
- GSM video modes
- In-game reset
- Cheats
- PADEMU
- RetroAchievements
- Apps
Interface and customization
- Settings reference
- Controls
- Coverflow
- Favorites
- Theme engine
- Languages
- Japanese / Unicode game titles
Help and reference
- Troubleshooting
- ZSO format
- Backward-compatible PS3
- Credits and sources
- Features in other forks
- Project overview
Detailed references
- Documentation index
- Test builds and diagnostics
- VMC creation and recovery
- PC CARD CF implementation reference
- DESR DVR implementation reference
- Per-game parental lock
- SIO2MAN hook compatibility
- Fresh-start defaults and saved settings
- APA hard disk safety and code 402
- Autolaunch and global settings
- Folders, parental lock and audio
- Language maintenance
- HTTP server conformance tools
- APA recovery tool