2.7 KiB
Phase 1.0A PacBrew and PS5 SDL analysis
Identities
| Source | Identity |
|---|---|
| PacBrew repository | c2abcfcb60f569128abd0e8e70ad03a67bee5ea7 |
| PS5 SDL fork | 0baf4ac49382b537ba449901b5b6d0d189bb1fbb |
| SDL reported revision | SDL-2.30.12-g0baf4ac4 |
| SDL license | Zlib |
The PacBrew SDL2 recipe builds the PS5 fork and enables OpenGL and LOADSO. Those two options are intentionally disabled here. PacBrew recipes were also reviewed for SDL2_image, SDL2_mixer, SDL2_ttf, freetype, zlib, libpng, OpenAL, elfldr and representative emulator ports. None is needed by the two Phase 1.0A binaries beyond SDL2 itself.
Native backend inventory
| Area | PS5 SDL implementation | APIs/dependencies | Phase 1.0A use |
|---|---|---|---|
| Video | Software surface, tiled direct-memory buffers, double buffer, VideoOut flip/equeue | SceVideoOut, kernel equeue/direct memory, user/system service |
Enabled |
| Render | SDL software renderer targeting the window framebuffer | SDL core software renderer | Enabled |
| Input | Up to four PS5 Pad users, buttons, axes, connect/disconnect polling | ScePad, SceUserService |
Enabled for one controller |
| Audio | 48 kHz, mono/stereo, S16 or F32, bounded 256-2048 sample buffers | SceAudioOut |
Enabled, RetroArch requests stereo |
| Keyboard/IME | PS5 keyboard and IME dialog | SceKeyboard, SceImeDialog |
Removed by reviewed overlay |
| Filesystem | PS5 implementation exists | user service/filesystem | Disabled |
| OpenGL/OSMesa | Optional source exists | Mesa/OSMesa | Disabled |
| LoadSO | Optional | dynamic loader | Disabled |
Reviewed overlay
The fork carries only a patch, not SDL source. The patch:
- removes keyboard/IME initialization and event pumping;
- replaces twelve freshly created worker threads per frame with a checked single-thread tile copy;
- rejects non-positive or non-tile-aligned framebuffer dimensions;
- passes a 100,000 microsecond timeout to
sceKernelWaitEqueue; - propagates copy and timeout errors to SDL.
SDL is configured with video, render, events, joystick, threads, timers and audio on; filesystem, file, loadso, OpenGL, Vulkan, haptic, sensor, locale, misc, libsamplerate, disk audio and dummy audio are off.
Classification
PS5_SDL_PARTIAL_CANDIDATE
The source contains real PS5 video, controller and audio backends and the
software RetroArch profile links them. It is not FULL because firmware-9.60
runtime behaviour, VideoOut ownership, error cleanup, disconnect recovery,
audio underrun/overrun reporting, exact flip timeout semantics and shutdown
after partial initialization have not been verified on hardware.
Static build and host audits are not runtime evidence.