案例
Paper Mario:覆盖四个版本的一致性 Nintendo 64 反编译
将 Paper Mario 的 Nintendo 64 代码重建为 C 源码,可重新构建美版、日版、PAL 版和 iQue 版 ROM。构建流程从使用者自备的原 ROM 取得素材和比较输入,再将每个产物与记录的 SHA-1 比对。项目可变的进度报告显示已无未匹配函数,但 README 仍称反编译在进行中;该项目与 PaperBoat 原生移植不同。
使用条件与局限
- README 称这是一个进行中的反编译项目,可构建美版、日版、PAL 版和 iQue 版 ROM,并分别列出 SHA-1。针对所审版本,papermar.io 可变的进度 CSV 显示四个版本均无未匹配函数(美版共 12,679 个),其美版页面宣布美版、PAL 版和 iQue 版已达 100%。产物是 N64 ROM,不是原生 PC 可执行文件;HarbourMasters 的 PaperBoat 移植是另一个项目。
- 至少需要一个自行取得、且与所列 SHA-1 一致的原始 ROM,作为对应版本的 baserom.z64 提供;Nix 方式要求四个版本齐备。configure 会从这些 ROM 拆分素材,源码不附带 ROM 或提取后的素材。
- SETUP.md 支持 Linux、macOS、WSL 2 和 Nix。构建使用 Python configure 脚本和 ninja、通过 cargo 安装的 pigment64、宿主 MIPS binutils/GCC/cpp,以及下载的编译器:项目自有 GCC/binutils、GCC 2.7.2、EGCS 和静态重编译的 IDO 5.3。由于 macOS 上没有 EGCS,configure 拒绝在 macOS 上进行 iQue 一致性构建。
- 一致性构建最后会依据各版本的 checksum.sha1 执行 sha1sum 校验,输出“papermario.z64: OK”。--non-matching、--modern-gcc 和 --shift 构建跳过该校验,因此不属于一致性结果。Jenkins 构建全部四个版本及一个可平移的美版构建,并发布进度报告;本合集未运行上述任何检查。
- 所审源码树没有顶层许可证文件,GitHub 也未识别出许可证,因此未确立源码的再使用授权。原 ROM 和提取的素材仍受各自权利约束,下载的编译器另有条款。所审来源未确立 AI 或 REA 使用归因,也不主张运行复现。
关于此条目
- 类型
- 案例
- 类别
- 独立重建案例
- 关联
- 独立重建项目
- 目标
- 游戏
来源复核于
说明已依据一手来源复核;这不代表已运行验证、经过安全审计或确认兼容。
一手来源
- README.md GitHub · pmret/papermario · 修订 1104f1f
- SETUP.md GitHub · pmret/papermario · 修订 1104f1f
- CONTRIBUTING.md GitHub · pmret/papermario · 修订 1104f1f
- tools/configure/src/configure/main.py GitHub · pmret/papermario · 修订 1104f1f
- install_compilers.sh GitHub · pmret/papermario · 修订 1104f1f
- install_deps.sh GitHub · pmret/papermario · 修订 1104f1f
- Jenkinsfile GitHub · pmret/papermario · 修订 1104f1f
- progress.py GitHub · pmret/papermario · 修订 1104f1f
- ver/us/checksum.sha1 GitHub · pmret/papermario · 修订 1104f1f
- ver/jp/checksum.sha1 GitHub · pmret/papermario · 修订 1104f1f
- ver/pal/checksum.sha1 GitHub · pmret/papermario · 修订 1104f1f
- ver/ique/checksum.sha1 GitHub · pmret/papermario · 修订 1104f1f
- https://papermar.io/progress-us
- https://papermar.io/reports/progress_us.csv
- https://papermar.io/reports/progress_jp.csv
- https://papermar.io/reports/progress_pal.csv
- https://papermar.io/reports/progress_ique.csv