Files
chimera-gfx-Public/docs/retroarch/phase-1.0a-pacbrew-sdl-analysis.md
Chimera GFX release export a6037502d7
phase0-ci / build-and-audit (push) Successful in 2m14s
Publish Chimera GFX source
2026-09-03 03:27:14 +02:00

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.