Skip to content
PORTSNATIVE.
HomeCatalog
Web GamesEmulatorsToolsNews
PORTSNATIVE.

A catalog for discovering ports and related projects. We link to official sources and do not host original game files.

ExploreCatalogMy list
InformationAbout usSuggest a portSupportDonationsLegal notice
© 2026 PortsNative
Back to catalog
P.T. for Android (Dual Screen)
PORTSNATIVE

P.T. for Android (Dual Screen)

NATIVE PORTROLE-PLAYING / RPGANDROIDALPHA

P.T. for Android (Dual Screen)

P.T.

TechnologyNative C/C++ port (engine reimplementation)

Available forAndroid

View official project

About the project

P.T. es un videojuego en primera persona de tipo videojuego de terror desarrollado por el estudio nipón Kojima Productions y distribuido por Konami bajo la dirección del creador de videojuegos Hideo Kojima y del cineasta mexicano, ganador del Oscar, Guillermo del Toro. Salió a la venta el 12 de agosto de 2014 para PlayStation 4 en exclusividad.

Official project information

Author's original READMEOpen on GitHub ↗

P.T. for Android (experimental)

An unofficial Android build of LoreanXavier's native PC port of P.T., for Snapdragon handhelds and phones. It runs the same native code as the PC port, not an emulator, and reads everything from your own copy of the game.

All of the real work is LoreanXavier's. They rebuilt P.T. in C++ and wrote the Vulkan renderer, and gave their blessing to this Android build. This fork only adds the Android layer: the APK, the Snapdragon driver setup, the setup from your .pkg, touch controls, the microphone, the AYN Thor's second screen and handheld tuning. If you enjoy this, please support the original project (Patreon). Their original README is in README_UPSTREAM.md.

This is an experimental build, made on an AYN Thor Max and tested by players on phones and tablets from Xiaomi, Motorola and others. Expect rough edges. It contains no game files, and nothing here helps you get them.

Will it run on my device?

GPUQualcomm Adreno 6xx, 7xx or 8xx (Snapdragon). The right graphics driver is picked for you: tested on the Adreno 740 (Snapdragon 8 Gen 2, AYN Thor), 710 (7s Gen 2) and 810 (7s Gen 4).
Android10 or newer, 64-bit
Not supportedMali, Immortalis, Samsung Xclipse, PowerVR, Google Tensor, MediaTek. The game needs a texture format those GPUs lack.
ControllerA built-in or connected gamepad, or the on-screen touch controls.

On the AYN Thor it runs at about 60 fps in the start room and roughly 25 to 35 fps in the heavier later loops. A mid-range phone (Adreno 710) gets around 20 to 25 fps at 50% resolution.

What you need

Your own copy of P.T. (CUSA01127, the US release; the European and Japanese releases should work too) as one of:

  • a fake PKG (.pkg) made from your dump. The app takes the game files out of it by itself. If it came zipped (.rar, .zip, .7z), unpack it first with a file manager such as ZArchiver.
  • the three files from a dump folder: chunk1.psarc, texture.qar and pathid_list_ps4.bin.

A store (PlayStation Store) PKG will not work: it is encrypted for the console that owns it, and this app does not touch that.

Installing

  1. Download the latest PT-Android-*.apk from Releases and install it.
  2. Start P.T. and choose Choose your P.T. .pkg, then pick your package in Android's file picker. Setting up takes a minute or two and needs about 1.4 GB free. Afterwards you can let the app delete the .pkg to get that space back.
  3. That's it: from then on the game starts straight away.

Updating: from v0.2.1 on, a new APK installs right over the old one and keeps your game files and saves. Coming from v0.2.0 or older, uninstall that first (one time only) and pick your .pkg again.

If you have the three extracted files instead, choose I already have the extracted files, copy them into your Download folder (loose or in a CUSA01127 folder), and allow All files access when asked.

Controls

Touch controls: without a controller, on-screen controls show up: drag on the left half to walk, on the right half to look, and the buttons for Use, Zoom, Back, Pause and Name (the voice part). They also appear whenever you touch the screen, and fade out after a few seconds without a touch or as soon as a controller is used. To turn them off for good: Display > Touch controls > Off.

Controller: The Xbox-layout controls of the PS4 original. Near the end the game asks you to say a name: say it out loud and the game hears it through the microphone, or hold both triggers instead.

The app asks for the microphone once, before the first start. The speech recognizer (whisper.cpp) runs on the device and only listens in that last part; nothing is recorded or sent anywhere, and the app has no internet permission. You can test the microphone in the game's settings.

When something goes wrong

The app writes its log to Download/PT-logs: pt.log for the latest run, pt-previous.log for the one before, plus pt-crash.txt after a crash. Attach those when you report a problem, with your device and chip. From a computer, adb pull /storage/emulated/0/Download/PT-logs grabs them.

These settings help when the game runs slowly or looks wrong (Settings > Display):

  • Resolution: Auto picks a value for your GPU; 50% is the fastest. Settings > Graphics > Image clarity sharpens a lower resolution at almost no cost.
  • Graphics driver: the bundled Mesa Turnip (default), your device's own driver, or one you imported, from the next start. If the chosen one cannot run your GPU, the game falls back to the others by itself.
  • Import a driver: pick an AdrenoTools driver .zip (for example a Turnip build from K11MCH1's releases) with the file picker.

If no driver works at all, the next start shows a screen to try again, import a driver or pick one before the game loads.

(The older render_scale.txt and driver.txt files in Download/PT-logs still work, but only if the app can read them: Android often hides files made by a file manager from other apps.)

Dual-screen handhelds

On an AYN Thor (or a similar handheld with a second screen) the bottom screen shows the hallway's clock, frozen at 23:59 (or 00:00 when the hallway's turns), with the loop you're on, and the radio and other subtitle lines as they play (the whole broadcast, even the lines the main screen skips on repeat loops, with static marking where the voice drops out). Change it in the game's settings under Display > Second screen: clock and subtitles, clock only, dim clock, or off.

Known issues

  • The speech recognizer is new on Android: if it doesn't hear you, hold both triggers.
  • The PC extras that need a desktop (upscalers, ray tracing, VR, enhanced textures, loop previews) are off.

Maintaining

How releases, the signing key, logs and the known fixes work: docs/MAINTAINING.md.

Building

Every push to the android-port branch builds the APK on GitHub Actions (.github/workflows/android.yml). Locally: tools/android/build_native.sh with ANDROID_NDK_HOME set, then ./gradlew assembleRelease in android/. More detail in docs/android.md.

Credits

  • P.T. PC port by LoreanXavier: the game itself, as native C++ and Vulkan.
  • Mesa Turnip, the open-source Adreno Vulkan driver, in the KIMCHI AdrenoTools build.
  • Turnip for Adreno 710/720/722 by Vauzi-17 (Mesa, MIT; source and patch in that repository), used automatically on those GPUs.
  • libadrenotools by bylaws, which loads that driver in an app.
  • SDL3 for the Android activity, input and audio.
  • whisper.cpp (MIT) with OpenAI's Whisper base.en model (MIT) and the Silero VAD (MIT), which hear the name at the end.
  • Special Elite by Astigmatic (Apache-2.0), the typewriter face of the icon and the second screen.
  • LibertyRecompAndroid, whose GTA IV port showed the way for Turnip on Android handhelds.

P.T. is the work of Kojima Productions and is owned by Konami. This project is not affiliated with, endorsed by or connected to either of them, or to LoreanXavier. The port's own code is under the MIT license (see LICENSE).

Read official guide
CALIFICACIÓN
—
Loading votes…
Advertisement

PROJECT FILE

Project type
NATIVE PORT
Genre
Role-Playing / RPG
Status
alpha
Original platform
—
Technology
Native C/C++ port (engine reimplementation)
Version
—
Updated
—

Target platforms 1

Android
View on GitHub
Advertisement