{
  "added_at": "2026-10-29",
  "additional_evidence_urls": [
    "https://github.com/mstan/MegaManXSNESRecomp/blob/adc1fea7baf90614a4272a90336cfcea563c504c/symbols/README.md",
    "https://github.com/mstan/MegaManXSNESRecomp/blob/adc1fea7baf90614a4272a90336cfcea563c504c/docs/mod-source-roms.md",
    "https://github.com/mstan/MegaManXSNESRecomp/blob/adc1fea7baf90614a4272a90336cfcea563c504c/docs/validation/coverage-2026-09-28.md",
    "https://github.com/mstan/MegaManXSNESRecomp/blob/adc1fea7baf90614a4272a90336cfcea563c504c/assets/saber-zero/CREDITS.md",
    "https://github.com/mstan/MegaManXSNESRecomp/blob/adc1fea7baf90614a4272a90336cfcea563c504c/.github/workflows/build.yml",
    "https://github.com/mstan/MegaManXSNESRecomp/blob/adc1fea7baf90614a4272a90336cfcea563c504c/.gitmodules",
    "https://github.com/mstan/MegaManXSNESRecomp/blob/adc1fea7baf90614a4272a90336cfcea563c504c/.gitignore",
    "https://github.com/mstan/MegaManXSNESRecomp/blob/adc1fea7baf90614a4272a90336cfcea563c504c/LICENSE",
    "https://github.com/RetroPortingToolKit/snesrecomp/blob/0f5708d108bf4acfb21dd7ff75a0cdb2376eb238/README.md",
    "https://github.com/RetroPortingToolKit/snesrecomp/blob/0f5708d108bf4acfb21dd7ff75a0cdb2376eb238/LICENSE",
    "https://github.com/mstan/MegaManXSNESRecomp/releases/tag/v2.2.9-alpha"
  ],
  "category": "reconstruction-cases",
  "description_en": "Statically translates the 65816 CPU code of the SNES Mega Man X (USA Rev 1) to C with the snesrecomp framework; the PPU, audio, DMA and other hardware run in the framework’s runtime, and a LakeSnes-derived interpreter executes whatever the static pass cannot prove. The C is generated locally from the user’s ROM, with function names imported from community DiztinGUIsh annotations. Playable Zero, co-op and rollback netplay, X2/X3 boss weapons and adaptive widescreen are layered on top, using assets extracted locally from the user’s own sequel ROMs.",
  "description_zh": "借助 snesrecomp 框架，将 SNES 版《洛克人 X》（美版 Rev 1）的 65816 CPU 代码静态转译为 C；PPU、音频、DMA 等硬件由框架运行时处理，静态分析无法证明的部分则交给源自 LakeSnes 的解释器执行。C 代码在本地由使用者的 ROM 生成，函数名取自社区的 DiztinGUIsh 注解。项目在此基础上加入可操作的 Zero、合作与回滚联机、X2／X3 的头目武器以及自适应宽屏，所用素材在本地从使用者自有的续作 ROM 中提取。",
  "entry_url": "https://awesomerea.org/resources/megaman-x-snes-recomp-case/",
  "entry_url_zh": "https://awesomerea.org/zh/resources/megaman-x-snes-recomp-case/",
  "evidence_url": "https://github.com/mstan/MegaManXSNESRecomp/blob/adc1fea7baf90614a4272a90336cfcea563c504c/README.md",
  "group": "cases",
  "id": "megaman-x-snes-recomp-case",
  "json_url": "https://awesomerea.org/resources/megaman-x-snes-recomp-case/record.json",
  "kind": "case-study",
  "markdown_url": "https://awesomerea.org/resources/megaman-x-snes-recomp-case/index.md",
  "markdown_url_zh": "https://awesomerea.org/zh/resources/megaman-x-snes-recomp-case/index.md",
  "name": "Mega Man X Recompiled: a snesrecomp static recompilation",
  "name_zh": "Mega Man X Recompiled：基于 snesrecomp 的静态重编译",
  "reconstruction_method": "static-recompilation",
  "record_type": "resource",
  "relationship": "independent-reconstruction",
  "requirements": [
    "Reviewed at the main commit of release v2.2.9-alpha (2026-10-18), which offers a Windows ZIP and a Linux AppImage. The snesrecomp README lists the game as fully playable, and this README says the adaptive widescreen renderer was playtested through the ending on Windows. Execution is interpreter-first: compiled bodies replace only code the analysis proves, the rest stays interpreted, and Rockman X (Japan v1.1) is a separate variant that keeps its original view.",
    "Supply your own Mega Man X (USA) Rev 1 ROM as .sfc or .smc, headered or not. Zero, co-op and the X3 weapons also need the user’s Mega Man X3 USA ROM, and the X2 weapons the Mega Man X2 USA ROM; their assets are extracted on the user’s machine. README states that ROMs, extracted assets and the generated src/gen C are neither committed nor in the downloads; the Saber Zero sprites and sounds from the Zashiko Mod are included with permission for non-commercial use.",
    "Source builds clone the snesrecomp, recomp-ui and dizProjects submodules, stage the ROM and run tools/regen.sh, which emits per-bank C from recomp/bank*.cfg. CMake with Ninja and SDL3, or SDL2 as a fallback, is the maintained build: Windows 10+ through MSYS2 mingw64 with Python 3.9+ and rustup, Linux with gcc or clang, and macOS on Apple Silicon or Intel.",
    "CI compiles ROM-free setup hosts and runs the ROM-free CTest regressions; ROM-backed state tests and a replay suite that stops at the first WRAM, co-op, camera or VRAM mismatch need the user’s ROMs. A dated coverage checkpoint reports two 12,000-frame routes matching the control build’s CPU and WRAM traces and final snapshots, without comparing audio, and the v2.2.9 release notes report Windows and Linux checks of all 28 Boss Rush pairs.",
    "The project and the pinned snesrecomp framework are under the PolyForm Noncommercial License 1.0.0; the interpreter is LakeSnes-derived (MIT), vendored dependencies keep their own licenses, and Capcom keeps its game rights. README presents the project as part of R.A.I.D. (Retro AI Development), a Discord community for AI-assisted retro reverse engineering."
  ],
  "requirements_zh": [
    "审阅版本为 main 上发布版 v2.2.9-alpha（2026-10-18）对应的提交，该版提供 Windows ZIP 与 Linux AppImage。snesrecomp 的 README 将本作列为可完整游玩，本项目 README 称自适应宽屏渲染器已在 Windows 上试玩至结局。执行以解释器为先：编译后的函数体只替换分析能够证明的代码，其余部分仍由解释器执行；Rockman X（日版 v1.1）是单独的变体，保留原始视野。",
    "需自备《洛克人 X》美版 Rev 1 ROM（.sfc 或 .smc，有无文件头均可）。Zero、合作模式与 X3 武器还需使用者自有的《洛克人 X3》美版 ROM，X2 武器则需《洛克人 X2》美版 ROM；所需素材在使用者的机器上提取。README 声明 ROM、提取的素材及生成的 src/gen C 代码既未提交，也不在下载包中；Saber Zero 的精灵与音效来自 Zashiko Mod，经许可收录，仅限非商业用途。",
    "从源码构建需克隆 snesrecomp、recomp-ui 与 dizProjects 子模块，放入 ROM 后运行 tools/regen.sh，由 recomp/bank*.cfg 按存储体生成 C 代码。官方维护的构建方式是 CMake 配合 Ninja 与 SDL3（SDL2 作为后备）：Windows 10 及以上通过 MSYS2 mingw64，并需 Python 3.9+ 与 rustup；Linux 使用 gcc 或 clang；macOS 支持 Apple Silicon 与 Intel。",
    "CI 编译不含 ROM 衍生内容的设置宿主，并运行无需 ROM 的 CTest 回归测试；依赖 ROM 的状态测试，以及在首个 WRAM、合作、镜头或 VRAM 不一致处停止的回放测试，都需要使用者的 ROM。一份注明日期的覆盖率检查点报告称，两条 12,000 帧路线与对照构建的 CPU、WRAM 轨迹及最终快照一致，但未比较音频；v2.2.9 发布说明报告在 Windows 和 Linux 上检查了 Boss Rush 的全部 28 组头目组合。",
    "项目及固定版本的 snesrecomp 框架均采用 PolyForm Noncommercial License 1.0.0；解释器源自 LakeSnes（MIT），随附依赖保留各自许可，Capcom 仍保有游戏权利。README 称项目属于 R.A.I.D.（Retro AI Development），这是一个面向 AI 辅助复古逆向工程的 Discord 社区。"
  ],
  "targets": [
    "game"
  ],
  "url": "https://github.com/mstan/MegaManXSNESRecomp",
  "verification": "source-reviewed",
  "verified_at": "2026-10-19"
}
