A work-in-progress PlayStation® 3 emulator
ChuckStation 3 is an experimental PS3 emulator based on "ChonkyStation3" (https://github.com/liuk7071/ChonkyStation3).
- A cleaner source structure
- Cross-platform CI
- An experimental Android port
- Learning and experimentation
«
- Repository: https://github.com/ChuckStation/ChuckStation3
- Upstream: https://github.com/liuk7071/ChonkyStation3
- License: GNU GPL v3
This project is a downstream fork of ChonkyStation3. The emulator core comes from the original project.
- Windows / Linux / macOS — SDL or Qt6
- Android — Experimental NativeActivity frontend
- C++23 compiler
- GCC 13+, Clang 16+, or MSVC 2022+
- CMake 3.20+
- Ninja
git clone --recursive https://github.com/ChuckStation/ChuckStation3.git
cd ChuckStation3
cmake --preset default
cmake --build --preset defaultcmake --preset qt
cmake --build --preset qtcmake --preset debug
cmake --build --preset debugThe executable will be placed in:
build//bin/
NOTE: The Android port is experimental.
- ARM64 ("arm64-v8a") core builds successfully
- NativeActivity frontend works
- EGL rendering is initialized
- Touch controls are connected
- Audio currently uses a null backend
- Commercial games are not supported yet
cd android
./gradlew :app:assembleReleaseAPK output:
android/app/build/outputs/apk/release/app-release-unsigned.apk
When ChuckStation 3 starts, it creates:
Filesystem/
├── dev_flash/
└── dev_hdd0/
These folders contain the virtual PS3 filesystem.
ChuckStation 3 currently does not install ".pkg" files directly.
- Install the game using RPCS3.
- Copy the game folder from RPCS3's "dev_hdd0/game/" into ChuckStation 3.
- Decrypt "EBOOT.BIN" using RPCS3.
- Put the decrypted "EBOOT.elf" beside the original "EBOOT.BIN".
- Decrypt required ".edat" files.
PS3 system software is required for games.
Install the PS3 firmware using RPCS3, then copy the required files into ChuckStation 3's "dev_flash".
Currently required PRX files include:
liblv2.prx libsre.prx libspurs_jq.prx libkey2char.prx libl10n.prx libfiber.prx libresc.prx libsync2.prx
This list may change as development continues.
- ChonkyStation3 — Original emulator code
- RPCS3 — PS3 emulation research
- PSL1GHT — Open-source PS3 SDK
- psdevwiki — PS3 technical information
- Panda3DS — Logger helper
- Dolphin — "BitField" utility