It's great to see PPSSPP ported to new platforms, feel free to give it a go.
Here's an incomplete list of platforms that PPSSPP could or could not be ported to (last updated 2024):
Platform | State | Comments |
---|---|---|
Windows | Done | |
Android | Done | |
Linux | Done | x86-32/64, ARM32/64, RISCV-64 |
macOS | Done | Limited native UI |
iOS | Done | JIT works but not on the App Store builds |
Nintendo Switch | Done | by m4xw! |
Raspberry Pi | Done | R4+ recommended |
Windows UWP/Xbox One/WinPhone10 | Done | Windows Phone support is discontinued, too slow |
These platforms were supported once, but aren't anymore due to lack of maintainer interest:
Platform | State | Comments |
---|---|---|
Blackberry 10 | Worked | JIT for ARM |
Symbian | Worked | JIT for ARM |
Pandora | Worked | |
DragonBox Pyra | Worked | |
Meego | Worked | |
Wii U | Proof-of-concept | |
Xbox 360 | Proof-of-concept | Hacked consoles only |
These are ports that never happened or are deemed impossible:
Platform | State | Comments |
---|---|---|
Playstation 3 | Barely possible | Hacked consoles only. Unlikely to happen |
Windows Phone 7.x | NOT POSSIBLE | No native code support |
Windows Phone 8 | NOT POSSIBLE | JIT not allowed, way too slow |
Wii | NOT POSSIBLE | Not enough RAM |
Xbox Original | NOT POSSIBLE | Not enough RAM. Weak CPU? |
Playstation 2 | NOT POSSIBLE | Not enough RAM, weak CPU. |
Gamecube | NOT POSSIBLE | Not enough RAM, weak CPU. |
Dreamcast | NOT POSSIBLE | Not enough RAM, weak CPU. |
It's a common question why there's no homebrew port of PPSSPP for the PlayStation 3. Unfortunately, while techically possible, it's a lot harder than it seems, and would need somebody doing months of dedicated work, maybe a year, to make it run well.
The main issue is that the PS3 uses "big-endian" CPUs. All platforms that PPSSPP currently run on are little-endian, just like the PSP itself. With all the memory copying and low level bit manipulation that happens during emulation, it's very easy for code that assumes little-endian byte order to slip in. So, first of all somebody would need to bring up PPSSPP on some other easier-to-debug big-endian platform (like old PowerPC Mac, perhaps) and fix all the endian-ness bugs.
Second, the PS3 uses the CELL processor, which is really unsuitable for emulation due to being terrible at executing branchy code, the main core being PowerPC-based, and the SPUs would be nearly useless. The IR interpreter would run far too slowly, so JIT compilation would be the only option. PowerPC is simply unsuitable because PPSSPP doesn't have any PowerPC JIT backends, and writing a good one would be a major effort.
Third, programming the PS3 GPU isn't very easy, and we'd need to link a full shader compiler into the app. I don't know if there's an existing suitable one.
Finally, the number of people who are interested enough in the PS3 and PSP to do this, and have the skills to do a good emulator port (including JIT), appears to be zero.