Files
ppsspp/ios
Henrik RydgårdandClaude Opus 5.5 f364f297f1 Touch controls: Use the full width when the side insets are only for a top corner
On the iPhone Duo's cover screen, the camera sits in a box in the top right
corner, which gives a side inset down the whole right edge in portrait. The
controls are far below it, so they lose width for nothing. iOS 27.1 reports
the box as an occlusion region, and from that we report how far down the side
insets are needed (SYSPROP_DISPLAY_SIDE_INSETS_BOTTOM). When that's within the
top third, the game screen and the touch layout editor skip the side insets.
The rest of the UI, including the FPS counter, still keeps them.

The regions can show up after the size and insets have settled, so the insets
are now recomputed on every layout, and a screen recreates its views when its
layout mode changes, since the touch controls are placed for the bounds they
were created in.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-26 09:39:49 +01:00
..
2024-05-27 00:57:36 +08:00
2026-10-13 01:06:55 +02:00
2026-08-07 06:56:07 +02:00
2025-06-03 13:05:45 +02:00
2026-10-10 16:28:27 +02:00

Updating with a self-built MoltenVK

Probably won't be needed again.

cp -r ../dev/build-molten/MoltenVK/Package/Release/MoltenVK/static/MoltenVK.xcframework ios/MoltenVK

The Old iOS Build Instructions

Important Notes

These instructions have not been updated for a long time and may be outdated.

Prerequisites:

  • Xcode (from the Mac App Store) with command line tools installed
  • MacPorts (from macports.org); easiest to install with their package installers
  • cmake build system (from MacPorts); run "sudo port install cmake" from the command line

If you need to build ffmpeg yourself too, then you'll also need:

  • gas-preprocessor; download the zip from https://github.com/mansr/gas-preprocessor, unzip and from the command line run:

      sudo cp gas-preprocessor.pl /usr/bin/
      sudo chmod +rw /usr/bin/gas-preprocessor.pl
    
  • you may need pkg-config (from MacPorts); run "sudo port install pkgconfig" from the command line

Most of this is done from the command line:

Change directory to wherever you want to install ppsspp (eg. "cd ~"), and then clone the main ppsspp repository:

git clone https://github.com/hrydgard/ppsspp.git

Change directory to the newly created ppsspp directory and run:

git submodule update --init

The above command will pull in the submodules required by PPSSPP, such as the lang directory. FFmpeg is built as part of PPSSPP, from ext/ffmpeg.

Then do the following:

mkdir build-ios
cd build-ios
cmake -DCMAKE_TOOLCHAIN_FILE=../cmake/Toolchains/ios.cmake -GXcode ..

You now should have an Xcode project file in the build-ios directory named PPSSPP.xcodeproj. Open it up in Xcode and do Product->Build to build the debug version, or Product->Build For->Archiving to build the release version (which is much faster). If your iOS device is plugged in, you may be able to just Run in Xcode to install and test it. Otherwise, copy the PPSSPP app from build-ios/Debug-iphoneos/PPSSPP.app or build-ios/Release-iphoneos/PPSSPP.app to the /Applications directory on your device and from ssh or MobileTerminal do a "chmod +x PPSSPP" inside the PPSSPP.app directory. If this is the first time you've installed the PPSSPP app, you'll have to respring or restart your device for the icon to show up.