案例
FFTARecomp:Final Fantasy Tactics Advance 的静态重编译
基于 JRickey 的 gba-recomp 工具链,将使用者自有的 Final Fantasy Tactics Advance(美版)Game Boy Advance ROM 预先重编译为可在 Windows、Linux 和 Steam Deck 上运行的原生代码。ARM 与 Thumb 代码被转译为 C 并在本地编译,Rust 运行时则模拟主机的图形、声音、DMA、定时器及 BIOS 调用。移植另行加入宽屏、缩放、快进和可重映射操作。
使用条件与局限
- 所审阅源码晚于 v2.0 版(2026-10-13),标注为开发中。README 面向 Windows 10/11、Linux 和 Steam Deck;其重编译清单还列出 Android,并称游戏可从头到尾完整游玩。缺少 C 编译器时,重编译器会退回解释器;上游保留该解释器以处理自修改代码,并作为差分测试的参照。已知问题包括第一关短暂出现精灵剪影,以及首次启动时可能检测不到手柄。
- 需自备 Final Fantasy Tactics Advance(美版)ROM,序列号 AFXE;项目清单记录了预期的 SHA-1。BIOS 调用采用高层模拟,因此无需主机 BIOS。安装程序在使用者的 PC 上重编译游戏,项目上传内容排除 ROM、存档、内存转储及生成的游戏 C 代码。
- 从源码构建需要 Rust 和 Windows PowerShell(build-all.ps1)。C 编译器同时是运行时需求:重编译器输出 C11 并链接每款游戏的库。Windows 安装程序会下载 w64devkit 2.10.0 GCC 工具链,Linux 发布构建使用仅供构建的 Zig 交叉编译器。
- 注明日期的发布审计(2026-10-12)报告源码上传扫描无问题、26 项输入配置与菜单测试通过、Windows 和 Linux 发布构建成功,物理手柄行为则未测量。README 未引用与硬件或模拟器的对照结果;本合集未运行任何内容。
- FFTARecomp 的修改采用 MIT,并保留上游 gba-recomp 的声明(MIT OR Apache-2.0);gamedb.sqlite 函数元数据为 CC0 1.0,w64devkit 工具保留各自的 GPL 系许可。项目审计未确立标志与图标的来源,Square Enix 与 Nintendo 仍保有游戏权利。上游 gba-recomp 自称为 AI 辅助项目;未确立与 REA 的关联。
关于此条目
- 类型
- 案例
- 类别
- 独立重建案例
- 关联
- 独立重建项目
- 目标
- 游戏
来源复核于
说明已依据一手来源复核;这不代表已运行验证、经过安全审计或确认兼容。
一手来源
- README.md GitHub · Jorge262007/FFTARecomp · 修订 7af6256
- .recomp.json GitHub · Jorge262007/FFTARecomp · 修订 7af6256
- BUILDING.md GitHub · Jorge262007/FFTARecomp · 修订 7af6256
- docs/architecture.md GitHub · Jorge262007/FFTARecomp · 修订 7af6256
- docs/release_audit.md GitHub · Jorge262007/FFTARecomp · 修订 7af6256
- Licenses/CREDITS.md GitHub · Jorge262007/FFTARecomp · 修订 7af6256
- Licenses/LICENSE GitHub · Jorge262007/FFTARecomp · 修订 7af6256
- README.md GitHub · JRickey/gba-recomp · 修订 de4edf5