Why PyGame
- Python 3 is on Knulli (part of EmulationStation stack)
- PyGame 2.5.2 with SDL 2.32.8 — SDL_MESA/KDG GPU driver works
- Game loop model maps perfectly to TUI + gamepad input
- No cross-compilation needed (unlike Love2D, Rust, or C)
- Rounded rects via
border_radius parameter (pygame
2.0+)
Why No PortMaster
- PortMaster’s
get_controls adds SDL config that
conflicts with Knulli’s ES launcher
- AQUAPING handles controller input via PyGame joystick API
directly
- ES shGenerator already sets
SDL_GAMECONTROLLERCONFIG