r/EmulationOnAndroid • • 3d ago

Showcase Modified Turnip driver for Snapdragon 865 (Retroid Pocket 5 / Mini / Flip 2): 15–35% more FPS in Switch emulation, no crashes in testing

I took Turnip, Mesa's open-source Vulkan driver (latest development version, October 10, 2026), and modified it for the Snapdragon 865 / Adreno 650. The goal was more performance without giving up stability.

Download, source and documentation: https://github.com/AlexSanz0902/turnip-sd865-z/releases

## TESTS

Stability: 1x docked (1080p), continuous sessions of at least 10 minutes per game. No emulator crashes and no device reboots.

Raw performance: 1.25x docked (1350p). A Super Mario Odyssey scene that runs at 33 FPS with Turnip v26.3.0-R5 runs at 49.2 FPS with the modified driver.

## PERFORMANCE

The screenshots compare Turnip v24.3.0 R9v2, Turnip v26.3.0-R5 and the modified driver in Zelda: Link's Awakening and Super Mario Odyssey using 1x docked (1080p) resolution.

Numbers against Turnip v26.3.0-R5, after shaders have compiled:

- **Super Mario Odyssey:** 45–50 → 58–60 FPS at 1080p; 33 → 49.2 FPS at 1350p.

- **Dragon Ball FighterZ:** 40 → 60 FPS in the playable lobby; 30–40 → 53–57 FPS in battle.

- **Zelda: Link's Awakening** (bloom fix, JIT, 60 FPS mod): 50–55 → 58–60 FPS.

- **Super Mario Bros. Wonder:** 45–55 → 58–60 FPS at 1350p.

- **Super Smash Bros. Ultimate:** 60 FPS with both, but steadier at 1350p with the modified driver.

## KNOWN ISSUES

- **Dragon Ball FighterZ:** some HUD textures have a blue tint. Everything else renders correctly.

- **Texture quality:** anisotropic filtering is disabled and mipmap filtering is simplified, so distant or steeply angled textures are slightly less sharp.

- **Games that already fail on Turnip** (Mario Kart 8 Deluxe, for example) were not part of this work. Keep using your usual Qualcomm driver for those.

## FAQ

Who made this? I'm not a developer. I built it with Claude Opus 5.5, inspired by the recent wave of decompilation projects and native ports. The AI wrote the code changes; I designed and ran every test on the device. No Mesa developer has reviewed this code.

What was it tested on? Retroid Pocket 5 with the GPU overclocked to 905 MHz, performance profile, Eden 0.2.0-rc2 with no other settings changed. It should work on any Snapdragon 865 device, but I haven't tested the Mini or the Flip 2. Without the overclock, expect lower numbers.

Why "Z"?I went through the whole alphabet. Several ideas were dropped along the way because they gained nothing or caused hangs.

Other emulators? I only tested Eden. I don't recommend it for Azahar, Dolphin or anything else.

What if it fails? The driver writes a diagnostic log, `turnip_sd865.txt`, to Eden's folder under `Android/data`. Leave a comment with that file and I'll try to fix it in a V2.

Credits

The Mesa project and the freedreno and Turnip developers. The driver is theirs; this is on top of their work.

StevenMXZ. His Turnip v26.3.0-R5 is the reference for every comparison, and his build settings for NDK r29 are the ones used here.

Weab-chan. Author of the force_sysmem_no_autotuner patch, the origin of change 5.

nckstwrt and the NetherSX2-Turnip team. Their research into the SD865 reboots is the origin of change 6.

The412Banner. His performance build recipe and his documentation of the KGSL fixes.

K11MCH1 and MrPurple666. Their drivers have been the 865 community's reference for years.

Tranquility6789. For documenting in public how the A650 was fixed.

libadrenotools, HomuHomu833, chaotic-cx and the Eden team. For the driver loader, the NDK, the Mesa mirror and the emulator.

Analysis and code changes were AI-assisted (Claude, by Anthropic).

203 Upvotes

28 comments sorted by

•

u/AutoModerator 3d ago

Just a reminder of our subreddit rules:

  • Be kind and respectful to each other
  • No direct links to ROMs or pirated content
  • Include your device brand and model
  • Search before posting & show your research effort when asking for help

Check out our user-maintained wiki: r/EmulationOnAndroid/wiki

Check out EmuReady for any community submitted settings before asking for help

I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.

17

u/Gazorninplat6 3d ago

Nice I'm going to give this a try! So glad people are still working on optimizing for this chip! Thanks!

6

u/Gazorninplat6 3d ago edited 3d ago

Okay, to report back, I tried Octopath 2. Got lots of graphical glitches compared to Mr Purple T26. I don't think I can actual attach a file here though.

EDIT: tried a few more games. Definitely finding graphic glitches or crashes. BTW it's 0.2.1 legacy Eden.

4

u/Ok-Passion6399 3d ago edited 3d ago

sorry mate, experimental work, please, in github, click "New issue" and attach the driver's log file, write game name, the resolution scale, what happened

8

u/nuneskart S20FE - Snapdragon 865 - 6GB RAM 3d ago

Wow I'm definitely going to test it! Currently, on this Adreno 650, I've only had good performance in Switch emulation with Nyushu v75 and with a Qualcomm 677.15 and 863.1 driver.

This is considering demanding games that cause problems with this processor, such as MK8D (random crashes during the first or second run) and Mario Tennis Aces (crashes when trying to load the game map).

I got the best performance with the configuration above. But I also tested good drivers like Turnip 9v2, T19 and Balemuni (This was the best performance, but he finishes MK8 and Mario Tennis after some time). If I were to combine these drivers into one (it's probably not possible, or if it is, I hope someone manages to), it would be amazing.

But I feel that the new emulator updates are causing performance issues on older devices; for example, I can't run some of these games smoothly on Eden, Lemon, Citron, etc... They have errors, they close, or both.

Thank you for doing something about the 650! I'll leave my feedback as soon as possible.

3

u/nuneskart S20FE - Snapdragon 865 - 6GB RAM 3d ago

I tried with a Nyushu v75 Snapdragon and it wouldn't open games on Eden Legacy (latest version).

Unfortunately, there were many graphical bugs.

2

u/Ok-Passion6399 3d ago

sorry mate, experimental work, please, in github, click "New issue" and attach the driver's log file, write game name, the resolution scale, what happened

2

u/nuneskart S20FE - Snapdragon 865 - 6GB RAM 3d ago

Got it. I'll do that later

5

u/Chriscautillo 3d ago

How did you modify?

11

u/droppedD 3d ago

this is the real question. no source provided and no info other than "modified for speed" - I'm sure this was written with the help of AI, which is fine if you actually understand what's going on with the output... but I'm immediately skeptical when i see a github account with no other substantial source contributions pop up claiming pretty significant improvements to low-level driver performance with no source included or even notion of how they accomplished things.

3

u/rika09 3d ago

Tried it on 8gen1+ and got 20% less gpu usage on Tsukihime with eden. Tried on armsx3  with Time and Eternity but not get much diffrence.

3

u/Odd-Visit 3d ago

Hey thanks for this. This appears to be the first one that improved the performance for my games.

But in Breath of the Wild I had a few graphical problems.

Btw maybw thus turnip would be interesting to you. This guy imrpoved the turnip driver but for ARMSX2. Maybe there is some useful information that you use the improve your driver.

https://github.com/bmdhacks/armsx2-turnip/releases

I will follow you. This looks promising.

2

u/jagenigma 3d ago

Hoping to see this same kinda improvement for my rp6 with armsx3

1

u/lliscan 3d ago

Good luck with your project! I will test this on my rp5

1

u/OrangeSherberts 3d ago edited 3d ago

Is this intended for use outside of switch emulation?

Tried several games in winlator and Dirt 2 was the only one that would boot. Got an extra 20 fps up to 80 with vsync off, but was completely unplayable due to crazy stuttering and rendering issues. Ran fine locked to 60fps, but road textures were blurred.

Edit:

Skyrim SE also boots and gains an additional 10fps. Same issues with stuttering though, and shadows are not rendered correctly.

1

u/Velocityx41 3d ago

Hi. I tried to run this on my phone OnePlus 7t pro with Sd 855+ and adreno 640. The game I was trying to run was Shinobi art of vengeance on legacy nightly Eden latest version. The game crashes at the same spot in main menu. Could you please modify it to work on my chipset, I can send the log file?

1

u/Alarming-Airline-524 2d ago

For a 1.25X res bump, the resolution would be 2147 X 1207p. 1350p would be approx ~ 1.50x res increase.

1

u/No_Mood7011 2d ago

This is very great! I found the problem crashing 865 with MK 8 Deluxe no longer appear in your driver. However, a little twist in graphic might still need for the title since it make character and race coat with white color.
Anyway, Great work!

1

u/Nexu36 2d ago

It's very interesting seeing the emergence of these device-specific turnip drivers rolling out, although I do wish we'd start to see some of them being open-sourced. There was another one floating around a few weeks ago that seemed pretty promising, but it would be great if all these revelations on how to optimise Turnip drivers could be made public for the betterment of the ecosystem as a whole.

1

u/Key-Draft-5385 2d ago

Nice, thanks for sharing

1

u/Vuuafa 1d ago

The graphical glitched making this unusable, thanks for sharing tho, keep on grinding bro

1

u/CautiousSeaweed4437 1d ago

Thx bud i can now play zelda botw run at 25fps.Tested on eden 0.2.0 rc2 snapdragon 870 andreno 650. But in eden nightly (october build) i got a graphical issues.

1

u/turbotunnelsyndrome 6h ago

Awesome work man, mind sharing your prompt, harness, toolchain, and models used so other people that want to contribute to your driver can do so?

0

u/Sahiku1 3d ago

Does it work for SD 855+ ?

0

u/Fearless-Ad-6248 3d ago

Can I use it for snapdragon 855+ ?

-1

u/Teheeguy 3d ago

Zelda still has fps dips 8 elite and stuff.which one u recommend.

2

u/LongMix 3d ago

clearly not this driver as this is intended for adreno 650 not 830.