A PSP emulator for Android, Windows, Mac and Linux, written in C++. Want to contribute? Join us on Discord at https://discord.gg/5NJB6dD or just send pull requests / issues. For discussion use the forums at forums.ppsspp.org. https://www.ppsspp.org
Find a file
Henrik Rydgård be0899e2cf
Some checks are pending
Generate Linux AppImage / build (aarch64) (push) Waiting to run
Generate Linux AppImage / build (x86_64) (push) Waiting to run
Build / build-windows (ARM64) (push) Waiting to run
Build / build-windows (x64) (push) Waiting to run
Build / build-uwp (push) Waiting to run
Build / test-windows (push) Blocked by required conditions
Build / build (ios) (push) Waiting to run
Build / build (macos) (push) Waiting to run
Build / build (clang-normal) (push) Waiting to run
Build / build (gcc-normal) (push) Waiting to run
Build / build (macos-libretro) (push) Waiting to run
Build / build (android-libretro) (push) Waiting to run
Build / build (qt) (push) Waiting to run
Build / build (android-vr) (push) Waiting to run
Build / build (android-arm64) (push) Waiting to run
Build / build (android-arm32) (push) Waiting to run
Build / build (android-x86_64) (push) Waiting to run
Build / build (clang-libretro) (push) Waiting to run
Build / build (gcc-libretro) (push) Waiting to run
Build / test (macos-latest) (push) Blocked by required conditions
Build / test (ubuntu-latest) (push) Blocked by required conditions
Build / test-headless-alpine (push) Waiting to run
Generate Docker Layer / build (push) Waiting to run
Merge pull request #21176 from hrydgard/achievements-config-fix
Make it possible to have RetroAchievements enabled in a game config.
2026-01-30 14:21:18 +01:00
.github UWP: Migrate from C++/CX to C++/WinRT 2026-01-04 10:07:07 -05:00
ai_instructions/mac_camera Move camera docs under ai_instructions/mac_camera 2025-11-09 12:25:03 +00:00
android Remove unused initial work for adding NEON support to ARM JITs. 2026-01-29 17:41:57 +01:00
assets Merge pull request #21174 from hrydgard/ios-fixes 2026-01-30 01:50:57 +01:00
cmake FindFFmpeg.cmake: do not search for postproc 2025-11-05 19:37:58 +01:00
Common Fix some bugs and warnings from a pass of static analysis 2026-01-29 17:41:54 +01:00
Core Make it possible to have RetroAchievements enabled in a game config. 2026-01-30 09:43:31 +01:00
ext Fix some bugs and warnings from a pass of static analysis 2026-01-29 17:41:54 +01:00
ffmpeg@ee9265e96a Update ffmpeg submodule. I had forgotten I switched to a branch a while back, merge it to master. 2025-12-16 23:42:24 +01:00
GPU Add workaround for Tales of Phantasia X. 2026-01-29 23:16:51 +01:00
gradle/wrapper Update to the latest version of the Android gradle plugin 2026-01-19 15:47:40 +01:00
headless GPU header cleanup: Avoid including GPUCommon.h in some places 2025-11-23 20:37:37 +01:00
icons Delete Symbian app icon 2025-08-08 09:34:04 +00:00
ios iOS: Track controller connect/disconnect, reset controls on disconnect. 2026-01-26 11:44:30 +01:00
libretro Remove unused initial work for adding NEON support to ARM JITs. 2026-01-29 17:41:57 +01:00
macOS Add macOS camera bridge and polish PSP camera emulation 2025-11-09 00:01:07 +00:00
pspautotests@4374348477
Qt Add a "Savestate slot count" setting. 2026-01-09 12:20:39 +01:00
scripts Add websocket testing script 2025-08-26 10:26:35 +02:00
SDL Fix #20356 - Flatpak application doesn't close until controller is unplugged. 2026-01-28 16:40:01 +02:00
source_assets Delete obsolete stuff from buttons.svg 2025-09-18 10:39:48 -06:00
Tools langtool regex: make the replacement parameter optional (default to empty) 2026-01-29 21:53:22 +01:00
UI Make it possible to have RetroAchievements enabled in a game config. 2026-01-30 09:43:31 +01:00
unittest Bugfix GetFriendlyPath, use in more places 2026-01-29 23:15:32 +01:00
UWP Remove unused initial work for adding NEON support to ARM JITs. 2026-01-29 17:41:57 +01:00
Windows Fix some bugs and warnings from a pass of static analysis 2026-01-29 17:41:54 +01:00
.editorconfig
.gitattributes
.gitignore Add convenient UI on the pause screen for changing/locking the screen orientation 2025-11-26 11:14:37 +01:00
.gitlab-ci.yml
.gitmodules import aemu_postoffice as a submodule instead 2026-01-19 22:14:51 +01:00
.ycm_extra_conf.py
appveyor.yml
asciifont_atlasscript.txt Fix references to the old font files 2025-11-14 10:10:44 +01:00
b-appstore.sh
b-ios.sh Fix references to icon files 2025-09-18 11:40:04 -06:00
b.sh Add (not very tested) CMake build for AtlasTool 2025-09-10 13:02:50 -06:00
build.gradle.kts Modernize the gradle setup a little more. 2026-01-19 15:47:40 +01:00
build_fontatlas.sh Minor cleanup of fontatlas scripts (they still need more cleanup) 2025-09-12 12:17:27 -06:00
build_ppgeatlas.sh
CMakeLists.txt Remove unused initial work for adding NEON support to ARM JITs. 2026-01-29 17:41:57 +01:00
CMakePresets.json
copyrelease.sh
copysym.sh
Dockerfile
font_atlasscript.txt Fix references to the old font files 2025-11-14 10:10:44 +01:00
git-version.cmake
gradle.properties Clean up gradle.properties 2026-01-19 15:47:43 +01:00
gradlew
gradlew.bat
history.md
LICENSE.TXT
link_readme.py
notinstalled.txt
ppge_atlasscript.txt
ppsspp.desktop.in
ppsspp.iss Installer script fix 2025-11-23 11:11:18 +01:00
ppsspp_config.h
README.md More README.md updates 2025-07-14 11:07:49 +02:00
settings.gradle.kts Converting the gradle setup to modern 2025-10-22 12:18:12 +02:00
tesselationhwON-mesa3drun.sh
test.py

PPSSPP - a fast and portable PSP emulator

Created by Henrik Rydgård

Additional code by many contributors, see the Credits screen

Originally released under the GPL 2.0 (and later) in November 2012

Official website: https://www.ppsspp.org/

Discord: https://discord.gg/5NJB6dD

No BIOS file required to play, PPSSPP is an "HLE" emulator. Default settings balance good compatibility and speed.

To contribute, see the development page. Help testing, investigating, or fixing is always welcome. See the list of issues.

For the latest source code, see our GitHub page.

For documentation of all kinds (usage, reference, development), see the documentation on the main website

For build instructions and other development tutorials, see the wiki.

To download fresh development builds for Android, Windows and Mac, go to the /devbuilds page

For game compatibility, see community compatibility feedback.

What's new in 1.19.3

  • Fixed crash on startup in Tony Hawk's Underground 2 (#20573)
  • Fixed crash/hang when accessing the menu in FFII if readbacks were configured to copy-to-tex (#20573)
  • Fix issue with detection of some types of saving, for the save reminders on exit (#20623)
  • Fixed music and other audio in modded games (various football games, Crazy Taxi w/ original soundtrack, etc) (#20566, #20571)
  • Fix exiting not functioning correctly on Windows in some circumstances (#20607)
  • Minor UI and key binding fixes (#20604)
  • Fix crash/blackscreen when switching from skip buffer effects to auto-frameskip rendering (#20605)
  • Fix bug in Mac/Linux builds where the mouse got hidden and stuck if you enabled mouse input mapping (#20612)
  • Fix black screen on save/load in the Football Manager Handheld games (#20616)
  • Translation improvements

What's new in 1.19.2

  • In-game save/load not properly detected for saving reminder (#20500)
  • Install savedata from ZIP was partially broken (#20498)
  • Fixed module loader bug affecting a few games (#20513)
  • Fixed some hangs in the Windows debugger (#20510)
  • Fix performance problem in texture replacement (#20520)
  • Assorted fixes (#20518, #20514, #20502, #20515)

What's new in 1.19.1

  • Fix selecting background image on Android (#20477)
  • Fix RetroAchievements regression for multi-executable games (#20469)
  • Possible fix for Mac audio device selection issue (#20482)
  • Add workaround for Dragon's Lair not working with LLE scePsmf (#20468)
  • Prevent trying to load obviously-corrupt CSO/CHD files (#20466)
  • Fix regression for homebrew apps that request extra memory (#20457)
  • Fix grid drawing in the various Robot Taisen games (#20456)
  • Fix crash in UI when viewing a directory with multiple NPDRM ISOs (#20453)

What's new in 1.19

  • Audio

    • Brand new sceAtrac implementation, fixing Flatout and multiple other long-standing issues! (#20098, #20136, #20138, #20162)
    • More correctly implemented sceAtrac-through-sceSas functionality, fixing voice in Sol Trigger and multiple minis (#20156)
    • Better support for using sceAudiocodec directly, fixing music in some homebrew apps (#20199, #20246, #20253, #20209)
    • Volume control improvement (#19969, #19971)
  • Rendering fixes and performance

    • Important: This will be the last major version with D3D9 support. D3D11 will of course continue to be supported, along with Vulkan and OpenGL.
    • Fix smoke effects in Jak'n'Daxter by re-using the fix from Ratchet & Clank (#20032)
    • Software depth buffer rendering added to fix lens flares in multiple games efficiently (Midnight Club LA, Wipeout, Syphon Filter etc) (#19748, #19764, #20231, #19955, etc)
    • Multiple rendering-related crash fixes (#20270, #20346, #20344)
    • Texture replacement load speed corrected and can now be controlled (#20286), regression fix for zipped packs (#19860)
    • Additional assorted compatibility and other fixes (#20376, #20070, #19685)
    • Persona 1/2 readback fixes (#20067, #20068)
    • Other correctness fixes (#20233, #20255, #19686)
  • General emulation

    • Allow disabling HLE on a per-module basis (if games ship the module so we can load it). Enabled for sceCcc (#20218), and more importantly scePsmf (#20208), fixing multiple issues.
    • Additional module loading improvements (#20114)
    • More precise sleep function on Windows (#20054)
    • More replacement texture improvements, allow replacing game icons (#19975, #19978)
    • Disable certain features like fast-forward when networking is on, to avoid de-syncs (#20311)
    • Fixes mono Atrac3 as video soundtrack (#19800)
    • Improvements to RISC-V support (#20352)
  • Control and input

    • Touch gliding support added (#19983)
    • Allow simultaneous DInput and XInput input (#20347)
  • New "Dear ImGui"-based PSP debugger: ImDebugger

    • Allows very rapid development of debugging features as-needed, and also implements a pretty good Ge debugger for stepping through draws.
    • Unlike the old Win32 debugger (but similar to the unmaintained web debugger), works on all platforms (though cumbersome on touchscreens)
    • Major commits (though there are many more): (#20242, #20240, #20294)
  • Multiplayer

    • Added Infrastructure multiplayer support, with automatic DNS configuration (#19865, #19869, #20221, #20220, #19875)
      • Note: Only games that people have made "revival servers" for will work. See here.
    • Implement more of sceNet (prerequisite for the former feature).
    • Socket re-mapping implemented (#19827)
    • Assorted bugfixes, thanks ANR2ME (#20247, #20245, #19843, #19849, #19836)
  • UI

    • Loading spinner now actually spins properly, the app no longer appears to hang (#20341)
    • Minor features: Asks for confirmation on exit in most scenarios (#19996, #20023), DPI scaling (#20013), can pause without menu (#19883)
    • As usual a lot of tweaks, perf fixes, and fixes for hangs and crashes (#20343, #20332, #20305, #20303, #20299, #20163, #20152, #20143, #20079, #20137, #20374)
    • Two new color themes (#20334, #20335), related themability fixes (#19984, #19995, #20308)
    • Improvements and bug fixes in the savedata manager (#19771, #20170)
    • Add "Move to trash" deletion funcionality to multiple platforms (#20230, #20261)
    • Add ability to take "raw" screenshots of gameplay (#20029)
    • More files can be loaded directly from ZIP (#20243)
    • Developer Settings are now tabbed for easier access (#20228)
    • Switch to the full libpng API so we can disable gamma correction, like the real PSP (#20033)
    • Support displaying the battery percentage on more platforms (#19973, #19967)
    • Allow picking a background image on iOS (#20370)
  • Platform compatibility

    • Exclude older Macs from using Vulkan (too many black screens, hangs) (#20236)
    • Use portable-file-dialogs to provide file-open dialogs on Linux (#20175)
    • "Cache full ISO in RAM" is now correctly hidden where it doesn't work (#20165)
    • Now rendering at proper resolution on newer Macs (#20011)
    • Mouse input improved on Android, including separate button mapping (#19915)
    • Use the correct font again on Mac/iOS (#19874)
    • Multiple file access optimizations made to make the most out of the flawed foundation called Android Scoped Storage (#19668)

What's new in 1.18.1

  • Crashfix in PBP reader (#19580)
  • Fix minor theme issue in the Homebrew Store (#19582)

What's new in 1.18