工具

GB Recompiled Game Boy 静态重编译器

将 Game Boy 和 Game Boy Color ROM 转换为可移植 C 项目的静态重编译器:它解码并分析分 bank 的 LR35902 代码,生成 C 代码及机器可读的元数据,再与共享的 SDL2 运行时链接,由运行时处理视频、音频、输入、存档和硬件时序。静态分析未覆盖的跳转目标会回退到解释器执行。仓库还提供差分对比、回放以及画面和音频捕获工具,并附有一个 Pokémon Crystal 移植,借助对特定 ROM 的挂钩实现原生功能。

使用条件与局限

  • README 称其为实验性重编译器,不声称兼容全部游戏,并说明代码生成成功不代表每个场景都能正确运行。ACCURACY.md(生成于 2026-07-13)报告 Blargg 测试 ROM 通过 8/8、Mooneye 通过 63/67,并说明这并不衡量商业游戏的兼容性。
  • 使用者需自备 .gb 或 .gbc ROM;仓库不含任何 ROM。随附的 Crystal Recompiled 移植本身不含 ROM:它要求使用者提供特定的美版/欧版 Rev 1 ROM,在写出任何源自 ROM 的内容前先校验哈希,并把生成的项目放在被忽略的本地目录或私有缓存中;其分发政策禁止发布 ROM、生成的 C 代码或提取出的资产。该移植的 alpha 版只在 macOS arm64 上完成了端到端验证。
  • v0.1.0 版本(2026-08-03)提供 Linux x64、macOS Intel 与 Apple 芯片以及 Windows x64 的预构建 gbrecomp 压缩包;所审阅的 main 提交比它多 13 个提交,最后一次提交为 2026-09-10。从源码构建需要 CMake 3.20+、Ninja、SDL2 开发文件和支持 C11/C++20 的编译器,生成的项目同样用 CMake 和 Ninja 构建。ANDROID.md 另行说明了单 ROM 生成 APK 的流程,本条目未审阅。
  • CTest 测试套件覆盖相互独立的不变量。README 指出差分模式与解释器共用运行时设备,因而不是独立的硬件参照,SameBoy 对比以及画面、音频和状态捕获则作为另外的证据。仓库唯一的 GitHub 工作流负责构建发布包,并用生成的测试 ROM 做冒烟测试;另有一个可选的手动任务以私下持有的 ROM 检查 Crystal 移植,不会发布任何内容。
  • 采用 MIT 许可证;内置的 Dear ImGui 保留其自身许可。README 声明与 Nintendo 无关联,Crystal 移植也声明与 Nintendo、The Pokémon Company、Game Freak 和 Creatures 无关联。README 要求贡献者和编程代理阅读 AGENTS.md,但未提及使用 REA。本目录未构建或运行该工具,也不代表任何游戏兼容性。

关于此条目

类型
工具
类别
游戏分析工具
关联
基础工具
目标
二进制 · 游戏

来源复核于

说明已依据一手来源复核;这不代表已运行验证、经过安全审计或确认兼容。

一手来源

  1. README.md GitHub · arcanite24/gb-recompiled · 修订 9150f87
  2. ACCURACY.md GitHub · arcanite24/gb-recompiled · 修订 9150f87
  3. ports/pokemon-crystal/README.md GitHub · arcanite24/gb-recompiled · 修订 9150f87
  4. ports/pokemon-crystal/LEGAL.md GitHub · arcanite24/gb-recompiled · 修订 9150f87
  5. .github/workflows/release.yml GitHub · arcanite24/gb-recompiled · 修订 9150f87
  6. LICENSE GitHub · arcanite24/gb-recompiled · 修订 9150f87
  7. https://github.com/arcanite24/gb-recompiled/releases/tag/v0.1.0