{
  "added_at": "2026-10-19",
  "additional_evidence_urls": [
    "https://github.com/DaBrown95/tsbodp/blob/0beb04fdc3142a9860059600d1037725f1bc6c77/assets/progress.json",
    "https://github.com/DaBrown95/tsbodp/blob/0beb04fdc3142a9860059600d1037725f1bc6c77/config/targets/us-eu.json",
    "https://github.com/DaBrown95/tsbodp/blob/0beb04fdc3142a9860059600d1037725f1bc6c77/config/targets/us-rev1.json",
    "https://github.com/DaBrown95/tsbodp/blob/0beb04fdc3142a9860059600d1037725f1bc6c77/Makefile",
    "https://github.com/DaBrown95/tsbodp/blob/0beb04fdc3142a9860059600d1037725f1bc6c77/tools/build_rom.py",
    "https://github.com/DaBrown95/tsbodp/blob/0beb04fdc3142a9860059600d1037725f1bc6c77/AGENTS.md",
    "https://github.com/DaBrown95/tsbodp/blob/0beb04fdc3142a9860059600d1037725f1bc6c77/LICENSE.md"
  ],
  "category": "reconstruction-cases",
  "description_en": "Rebuilds the USA/Europe Game Boy Advance release of The Sims: Bustin' Out byte for byte while gradually replacing ROM regions with matching C compiled by agbcc. The README calls it an AI-driven experiment in which almost all code, analysis and tooling are AI-generated. Most of the ROM is still copied from the user’s dump, so whole-ROM equality does not mean the game has been decompiled.",
  "description_zh": "逐字节重建 The Sims: Bustin' Out 的 Game Boy Advance 美欧版，并逐步用 agbcc 编译、结果一致的 C 代码替换 ROM 区域。README 称这是由 AI 驱动的实验，几乎所有代码、分析与工具都由 AI 生成。ROM 的大部分仍从使用者的转储中复制，因此整个 ROM 一致并不代表游戏已完成反编译。",
  "entry_url": "https://awesomerea.org/resources/sims-bustin-out-gba-decomp-case/",
  "entry_url_zh": "https://awesomerea.org/zh/resources/sims-bustin-out-gba-decomp-case/",
  "evidence_url": "https://github.com/DaBrown95/tsbodp/blob/0beb04fdc3142a9860059600d1037725f1bc6c77/README.md",
  "group": "cases",
  "id": "sims-bustin-out-gba-decomp-case",
  "json_url": "https://awesomerea.org/resources/sims-bustin-out-gba-decomp-case/record.json",
  "kind": "case-study",
  "markdown_url": "https://awesomerea.org/resources/sims-bustin-out-gba-decomp-case/index.md",
  "markdown_url_zh": "https://awesomerea.org/zh/resources/sims-bustin-out-gba-decomp-case/index.md",
  "name": "The Sims: Bustin' Out: an AI-driven partial GBA matching decompilation",
  "name_zh": "The Sims: Bustin' Out：AI 驱动的部分 GBA 一致性反编译重建",
  "reconstruction_method": "matching-decompilation",
  "record_type": "resource",
  "relationship": "independent-reconstruction",
  "requirement_facets": [
    "scope",
    "prerequisites",
    "prerequisites",
    "testing",
    "license"
  ],
  "requirements": [
    "The progress report at this commit (verified 18 Oct 2026) counts 2,285 matching C functions covering 288,700 bytes and 4,060 bytes of assembly glue, while 16,484,456 of the 16,777,216 ROM bytes remain unconverted. It marks the code inventory as incomplete, and the README treats function boundaries in the ROM map as provisional.",
    "Requires the user’s own USA/Europe revision 0 ROM (game code ASIE) matching SHA-1 fb5662172fadebf4577f6f6f163741fc041c11e6; unconverted regions in the built ROM come from that dump. A USA revision 1 dump serves only as an audit and comparison reference. ROMs, extracted assets and game binaries are not included.",
    "The documented build host is macOS with Python 3.10+ and Xcode’s command line tools. The pinned toolchain uses pret/agbcc as the matching C compiler, selected GCC 3.0.2 and Binutils 2.10.1 builds with host-compatibility patches, Binutils 2.43.1, Capstone, pyelftools and Pillow. The README notes that choosing these tools does not establish the original game’s toolchain.",
    "make build fails if any byte differs, and each verified build includes changed-source negative controls that must be rejected; make test runs tests without a ROM. mGBA is listed only for optional bounded runtime observations, and no gameplay equivalence is claimed.",
    "MIT covers the project’s own source, tools and documentation, not original game code, assets, trademarks or Nintendo’s header logo. Adapted Krawall routines (LGPL-2.1), selected GCC runtime sources (GPL-2.0 with exceptions) and Newlib string functions keep their own notices. The project accepts no contributions; the agents or models used are not named."
  ],
  "requirements_zh": [
    "此提交的进度报告（验证时间 2026 年 10 月 18 日）统计 2,285 个一致的 C 函数，共 288,700 字节，另有 4,060 字节汇编衔接代码；16,777,216 字节 ROM 中仍有 16,484,456 字节未转换。报告将代码清单标为未完成，README 也说明 ROM 映射中的函数边界仍属暂定。",
    "需使用者自备美欧版第 0 修订 ROM（游戏代码 ASIE），SHA-1 为 fb5662172fadebf4577f6f6f163741fc041c11e6；构建出的 ROM 中未转换区域取自该转储。美版第 1 修订转储仅用作审计与比对参照。仓库不含 ROM、提取的素材或游戏二进制。",
    "文档所述构建宿主为 macOS，需 Python 3.10+ 及 Xcode 命令行工具。固定版本的工具链以 pret/agbcc 为一致性 C 编译器，另含带宿主兼容补丁的 GCC 3.0.2 与 Binutils 2.10.1 选定版本、Binutils 2.43.1、Capstone、pyelftools 和 Pillow。README 指出，选用这些工具并不能确定原游戏使用的工具链。",
    "make build 在任何字节不同时失败，每次通过验证的构建都包含必须被拒绝的源码改动反向对照；make test 无需 ROM 即可运行测试。mGBA 仅列为可选的有限运行观察工具，项目不主张游戏行为等价。",
    "MIT 仅覆盖项目自有的源码、工具和文档，不覆盖原游戏代码、素材、商标或 Nintendo 的 ROM 头部标志。改编的 Krawall 例程（LGPL-2.1）、选用的 GCC 运行库源码（GPL-2.0 及例外条款）和 Newlib 字符串函数保留各自声明。项目不接受外部贡献；未说明所用智能体或模型。"
  ],
  "targets": [
    "game"
  ],
  "url": "https://github.com/DaBrown95/tsbodp",
  "verification": "source-reviewed",
  "verified_at": "2026-10-18"
}
