What is PSL1GHT?
PSL1GHT is a lightweight PlayStation 3 homebrew SDK that uses open-source PlayStation 3 toolchains to compile user applications that run from the XMB menu (GameOS homebrew). It provides a comprehensive set of libraries and tools for PS3 development, including graphics, audio, input, networking, and system utilities.Get Started
Install PSL1GHT and set up your development environment
Quick Start
Build your first PS3 homebrew application
API Reference
Explore the complete API documentation
Examples
Browse sample projects and code examples
Key Features
Hardware-Accelerated Graphics
Use the RSX Graphics Synthesizer for 3D rendering with vertex and fragment shaders
Full Controller Support
Access PS3 controllers, keyboard, mouse, camera, and PlayStation Move
SPU Programming
Harness the Cell processor’s Synergistic Processing Units for parallel computation
Network Capabilities
Berkeley sockets for TCP/UDP networking with HTTP and SSL support
System Integration
File I/O, dialogs, save data, and on-screen keyboard utilities
Build Tools
Complete toolchain with fself, pkg creation, and library linking
Architecture Overview
PSL1GHT is built around the PlayStation 3’s unique hardware architecture:- PPU (PowerPC Processing Unit): The main 64-bit PowerPC processor that runs your application code
- SPU (Synergistic Processing Unit): Six available SPUs for parallel processing tasks
- RSX: NVIDIA-based graphics processor for hardware-accelerated rendering
- XMB Integration: Applications run from the PlayStation 3’s XMB menu interface
PSL1GHT requires the ps3toolchain - a GCC toolchain that supports the PowerPC 64-bit architecture with patched newlib environment.
Current Status
Graphics
Hardware-accelerated 3D graphics are fully supported through the RSX library. Vertex shaders are operational, with fragment shader support in development.Input
PS3 controllers are fully supported with XMB integration. Pressing the PS button brings up the in-game XMB menu when the framebuffer is active.Filesystem
Full filesystem support including access to the internal PS3 hard drive, game disc contents, and external USB devices.Networking
Berkeley sockets are available for network programming, though some features (like hostname lookups) remain incomplete.Debugging
By default, PSL1GHT redirects stdout and stderr to the lv2 TTY interface. Use Kammy’s ethdebug module to retrieve debugging information over UDP.SPUs
Full access to raw SPU programming with communication between PPU and SPU. See the SPU samples for implementation examples.Supported Libraries
PSL1GHT provides wrappers for the following PS3 system libraries (SPRX):- libio: Pad, mouse, and keyboard input
- liblv2: Low-level system calls
- libsysutil: System utilities and dialogs
- libgcm_sys: Graphics Command Manager
- libsysmodule: System module loading
- libpngdec/libjpgdec: Image decoding
- libgem: PlayStation Move support
- libaudio: Audio playback
- libcamera: Camera support
- libfont: Font rendering
- libnet/libhttp/libssl: Networking
Community and Support
PSL1GHT is maintained by the PS3 homebrew community and built on contributions from developers worldwide.GitHub Repository
View source code and contribute
ps3libraries
Additional libraries for PSL1GHT