{
  "added_at": "2026-11-09",
  "additional_evidence_urls": [
    "https://github.com/nicklesimba/sonic-battle-decomp/blob/d150f0d135efa1a0c63908a1ff7336648f4ca8cc/decomp/README.md"
  ],
  "category": "reconstruction-cases",
  "class": "game",
  "description_en": "Sonic Battle decomp reconstructs the USA Rev 0 Game Boy Advance game as matching C and assembly. Its build checks the user's ROM hash, compiles recovered code with agbcc and compares a linked whole-ROM image with the original. The author reports 51.81% of executable text decompiled to C; handwritten assembly accounts for additional reproduced bytes.",
  "description_zh": "Sonic Battle decomp 用匹配的 C 与汇编重建美版 Rev 0 GBA 游戏。构建流程检查用户 ROM 的哈希，使用 agbcc 编译恢复的代码，再将完整 ROM 与原版比较。作者报告可执行代码中 51.81% 已反编译为 C；其余已复现字节中还包含手写汇编。",
  "entry_url": "https://awesomerea.org/resources/sonic-battle-decomp-case/",
  "entry_url_zh": "https://awesomerea.org/zh/resources/sonic-battle-decomp-case/",
  "evidence_class": 2,
  "evidence_status": "observed",
  "evidence_url": "https://github.com/nicklesimba/sonic-battle-decomp/blob/d150f0d135efa1a0c63908a1ff7336648f4ca8cc/README.md",
  "group": "cases",
  "id": "sonic-battle-decomp-case",
  "json_url": "https://awesomerea.org/resources/sonic-battle-decomp-case/record.json",
  "kind": "case-study",
  "markdown_url": "https://awesomerea.org/resources/sonic-battle-decomp-case/index.md",
  "markdown_url_zh": "https://awesomerea.org/zh/resources/sonic-battle-decomp-case/index.md",
  "name": "Sonic Battle: a matching GBA decompilation",
  "name_zh": "Sonic Battle：逐字节匹配的 GBA 游戏反编译",
  "reconstruction_method": "matching-decompilation",
  "record_type": "resource",
  "relationship": "independent-reconstruction",
  "requirement_facets": [
    "prerequisites",
    "prerequisites",
    "limits",
    "license"
  ],
  "requirements": [
    "A USA Rev 0 Sonic Battle ROM matching the documented SHA-1 is required.",
    "Python 3, ARM binutils and the pinned agbcc toolchain are required.",
    "The author estimates that some executable code cannot be matched as C.",
    "No licence file in the repository."
  ],
  "requirements_zh": [
    "需要 SHA-1 与文档一致的美版 Rev 0 Sonic Battle ROM。",
    "需要 Python 3、ARM binutils 和指定版本的 agbcc 工具链。",
    "作者估计部分可执行代码无法用 C 逐字节匹配。",
    "仓库中没有许可证文件。"
  ],
  "scope": "unknown",
  "targets": [
    "game"
  ],
  "url": "https://github.com/nicklesimba/sonic-battle-decomp",
  "verification": "source-reviewed",
  "verified_at": "2026-11-06"
}
