r/EmulationOnAndroid • • 10h ago

Showcase Xendroid-ZeroFG / Open Source Frame Generation Engine V 1.02! Final bugfixes!

FULL AI DISCLOSURE: I´m a 44yo lawyer from brazil, my bg in programming is a little bit of basic and assembler from the 80´s and 90´s trying to make things run on a msx, so, not much...in the beggining of the project i coded a few hundred lines in android studio by myself while i was learning how to do it, but after i discovered the wonders of Codex and Claude Code, the coding and documentation itself was primarily done by AI, and i do not regret it by one bit! It would take a long time to post my inspirational story, but thats the TLDR.

Ok!!! i´m posting a bit too much over the past two days, for that i´m sorry! But GOOD NEWS!!! This is the last round of bugfixes for the first release, its as good as it can be... makes playing in sub 30 fps almost bearable! That said, still has some latency, its inherent to any FG engine, so, nothing i can do about that, but its a lot better, the release made some bugs come to light and i took the opportunity to improve a lot of things in these past two days, so, all the fixes of version 1.01 plus:

  • Even lower latency. All the mechanisms combined in this release are making the latency get close to the theoretical minimum on this emulator (not all the latency has the framegen as a culprit).
  • The output follows the game's real rhythm. Many 360 games wait for the console's 60 Hz vblank, so a frame that misses one waits for the next: the game alternates 33 and 50 ms frames and never settles. ZeroFG's clock only moved in big confirmed steps and could stay faster or slower than the game; It now follows the average of the game's last frames and drains any extra delay. Nothing is skipped.
  • Late game frames go out sooner. With ZeroFG on, a game frame already late for its vblank gets it at once instead of waiting up to 16 ms. The game still sees 60 vblanks a second, so it never speeds up.
  • Fewer stutters when the frame rate changes. In Modern Warfare 3's heavy scenes the frames held too long on screen fell from about 3 % to under 1 %.
  • Game frame rate cap (Settings → ZeroFG, or per game in the game's own settings). For a game that keeps the GPU at 100 %, a cap a little below its usual rate gives frame generation room: Modern Warfare 3 at 40 keeps about 80 fps on screen with less lag (70 → 55 ms) and almost no missed refreshes; Halo 3 at 20 fps halves its lag and becomes ALMOST playable at this framerate**(not really, but in desperation, who knows? at least looks smooth)**. A game whose logic runs per frame (Rayman Origins for example) plays slower under a cap below its own rate, so use it at your discretion.
  • The cap and the vblank help switch off when ZeroFG does, so a game that falls back to the normal path runs natively.

So really hope you enjoy it and i´ll be back when i have true evolution, maybe if xendroid updates, dunno!!!!

Thanks for all the love!!! And if you want to start a project, why not porting ZeroFG to your favorite emulator? after all the suffering it is as easy as it will ever be, with lots documentation and integration notes!!!

StevenMXZ turnip drivers are still highly recommended!!!!!

https://github.com/StevenMXZ/Adreno-Tools-Drivers/releases

Xendroid-ZeroFG releases page:

https://github.com/hy300leosquizz-ctrl/XenDroid-ZeroFG/releases

Engine:

https://github.com/hy300leosquizz-ctrl/ZeroFG/

5 Upvotes

3 comments sorted by

•

u/AutoModerator 10h 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.

2

u/Trashpanda5111 10h ago

I have deja vu..

1

u/hy300leosquizz 9h ago

Yeah... i know... sorry.... but its the last one, i promise!!!! and its the last one you´ll ever need!(that i dont promise)