Skip to content

FFTARecomp v2.0

Latest

Choose a tag to compare

@james2doyle james2doyle released this 19 Oct 23:37
· 1 commit to main since this release

v2.0 — raylib engine, native launch screen, Steam Deck AppImage

Bring your own ROM — Final Fantasy Tactics Advance (USA) is the only user-supplied file; the launch BIOS is bundled (clean-room emibios, LGPL-3.0-or-later, committed at bios/).

New in v2.0

  • Native raylib engine and launch screen — the V2 backend replaces the SDL/recomp-ui stack. The launch screen has box art, a native ROM picker, and drag-and-drop; the in-game settings menu is now raygui with Display, Graphics, Audio, Save states, and Assist sections.
  • Steam Deck / SteamOS AppImage — built in a pinned Debian 12 container (glibc 2.35 floor), with Game Mode defaults (borderless fullscreen and the resize-driven widescreen view). It unpacks to a writable XDG data directory; updating the AppImage keeps the ROM pick, settings, and saves.
  • Shader and frame stack — MMPX edge smoothing, sharp scaling, pixel grid, LCD subpixel grille, LCD boost, dither, and deband, plus frame interpolation and LCD ghosting. Each is toggleable in the in-game menu.
  • Fast-forward 2–10x — hold Tab, 2, or the right trigger, or tap the on-screen FF pill to latch it. The speed is set in Assist and persists across sessions.
  • Widescreen — validated up to 448 px on desktop; Android uses a density-scaled expanded view.
  • Android controllers and touch — built-in, USB, and Bluetooth pads work label-wise; the pad's menu/center button, the Back key, or a touch long-press / three-finger tap opens the settings menu. Android versionCode is now 2.
  • Save states — slot selector, save, load, and resume under Save states, alongside cartridge saves.
  • Strict fully-static execution — zero interpreter fallback on executed paths, kept there by the self-healing coverage loop.
  • ROM-free release pipeline — tag pushes only create the draft shell; the artifacts are built and verified on the maintainer's machine. No ROM or retail BIOS material is uploaded to GitHub.

Artifacts

Artifact What SHA-256
FFTARecomp-v2.0-linux-x64.zip Linux x64 (extract → run → pick ROM) fdfee8c7cd572f66825520e68be178428a6d002e348702970593857562cef24a
FFTARecomp-v2.0-linux-x86_64.AppImage Steam Deck / SteamOS, glibc 2.35+ 25bae8617091369c4a7e58465964d86808fdd998dfc9a43c1a039c0c5d41eb03
FFTARecomp-v2.0-windows-x64.zip Windows 10+ x64, statically linked bef4b57935d49ae25005a85c56165adf29c2fb6fc46b6aca5482f36b535e639e
FFTARecomp-v2.0-android-arm64-v8a.apk Android 9+ (API 28), arm64-v8a 09858a46c2ae5a5e1cd2c24f24784403e87b2f5569f6709ac9f52c23d940c245
  • The Linux zip and AppImage are built in a pinned Debian 12 container (glibc 2.35 floor); the Windows build is a static executable. Linux needs the standard OpenGL/X11 stack, which desktops already ship.
  • The ROM is hash-verified at launch (SHA-1 4ac05441…); a mismatch means the dump is not the expected USA ROM.
  • The APK is debug-signed (tracked open decision). If an existing install was signed with a different key, uninstall it and reinstall; back up the 64 KiB ffta_us.sav first if needed.
  • The AppImage needs FUSE. Without it, use APPIMAGE_EXTRACT_AND_RUN=1 or --appimage-extract-and-run.
  • Every executed path is strict fully-static (zero interpreter fallback), kept that way by the self-healing coverage loop.

Experimental preview — back up important saves. Unofficial, non-commercial preservation project; not affiliated with Square Enix or Nintendo.

Full Changelog: v1.6...v2.0