# Paper Mario：覆盖四个版本的一致性 Nintendo 64 反编译

> 将 Paper Mario 的 Nintendo 64 代码重建为 C 源码，可重新构建美版、日版、PAL 版和 iQue 版 ROM。构建流程从使用者自备的原 ROM 取得素材和比较输入，再将每个产物与记录的 SHA-1 比对。项目可变的进度报告显示已无未匹配函数，但 README 仍称反编译在进行中；该项目与 PaperBoat 原生移植不同。

- 类型：案例
- 目标：游戏
- 类别：独立重建案例
- 关联：独立重建项目
- 来源复核于：2026-10-18
- 收录于：2026-10-18
- 原始资源：<https://github.com/pmret/papermario>
- 一手来源：<https://github.com/pmret/papermario/blob/1104f1f71b824042a5fa1f958f2d861b603320fd/README.md>
- 目录页面：<https://awesomerea.org/zh/resources/paper-mario-matching-decomp-case/>
- 记录 JSON：<https://awesomerea.org/resources/paper-mario-matching-decomp-case/record.json>
- 英文版：[English](https://awesomerea.org/resources/paper-mario-matching-decomp-case/index.md)

## 使用条件与局限

- **前提条件：**至少需要一个自行取得、且与所列 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 一致性构建。
- **范围：**README 称这是一个进行中的反编译项目，可构建美版、日版、PAL 版和 iQue 版 ROM，并分别列出 SHA-1。针对所审版本，papermar.io 可变的进度 CSV 显示四个版本均无未匹配函数（美版共 12,679 个），其美版页面宣布美版、PAL 版和 iQue 版已达 100%。产物是 N64 ROM，不是原生 PC 可执行文件；HarbourMasters 的 PaperBoat 移植是另一个项目。
- **测试证据：**一致性构建最后会依据各版本的 checksum.sha1 执行 sha1sum 校验，输出“papermario.z64: OK”。--non-matching、--modern-gcc 和 --shift 构建跳过该校验，因此不属于一致性结果。Jenkins 构建全部四个版本及一个可平移的美版构建，并发布进度报告。
- **许可：**所审源码树没有顶层许可证文件，GitHub 也未识别出许可证，因此未确立源码的再使用授权。原 ROM 和提取的素材仍受各自权利约束，下载的编译器另有条款。

## 一手来源

1. <https://github.com/pmret/papermario/blob/1104f1f71b824042a5fa1f958f2d861b603320fd/README.md>
2. <https://github.com/pmret/papermario/blob/1104f1f71b824042a5fa1f958f2d861b603320fd/SETUP.md>
3. <https://github.com/pmret/papermario/blob/1104f1f71b824042a5fa1f958f2d861b603320fd/CONTRIBUTING.md>
4. <https://github.com/pmret/papermario/blob/1104f1f71b824042a5fa1f958f2d861b603320fd/tools/configure/src/configure/main.py>
5. <https://github.com/pmret/papermario/blob/1104f1f71b824042a5fa1f958f2d861b603320fd/install_compilers.sh>
6. <https://github.com/pmret/papermario/blob/1104f1f71b824042a5fa1f958f2d861b603320fd/install_deps.sh>
7. <https://github.com/pmret/papermario/blob/1104f1f71b824042a5fa1f958f2d861b603320fd/Jenkinsfile>
8. <https://github.com/pmret/papermario/blob/1104f1f71b824042a5fa1f958f2d861b603320fd/progress.py>
9. <https://github.com/pmret/papermario/blob/1104f1f71b824042a5fa1f958f2d861b603320fd/ver/us/checksum.sha1>
10. <https://github.com/pmret/papermario/blob/1104f1f71b824042a5fa1f958f2d861b603320fd/ver/jp/checksum.sha1>
11. <https://github.com/pmret/papermario/blob/1104f1f71b824042a5fa1f958f2d861b603320fd/ver/pal/checksum.sha1>
12. <https://github.com/pmret/papermario/blob/1104f1f71b824042a5fa1f958f2d861b603320fd/ver/ique/checksum.sha1>
13. <https://papermar.io/progress-us>
14. <https://papermar.io/reports/progress_us.csv>
15. <https://papermar.io/reports/progress_jp.csv>
16. <https://papermar.io/reports/progress_pal.csv>
17. <https://papermar.io/reports/progress_ique.csv>

## 同分区更多条目：游戏

- [《纸片马力欧 RPG》：早期阶段的 GameCube 一致性反编译](https://awesomerea.org/zh/resources/paper-mario-ttyd-decomp-case/index.md) · 案例
- [Perfect Dark：生成一致 ROM 的 Nintendo 64 反编译重建](https://awesomerea.org/zh/resources/perfect-dark-matching-decomp-case/index.md) · 案例
- [Petari：Super Mario Galaxy 一致性反编译重建](https://awesomerea.org/zh/resources/petari-smg-decomp-case/index.md) · 案例
- [《幻影沙漏》：早期阶段的 Nintendo DS 一致性反编译](https://awesomerea.org/zh/resources/phantom-hourglass-ds-decomp-case/index.md) · 案例
- [《皮克敏2》：覆盖五个版本、已完全匹配的 GameCube 反编译](https://awesomerea.org/zh/resources/pikmin-2-matching-decomp-case/index.md) · 案例
- [pokecrystal：一致构建的《精灵宝可梦 水晶》反汇编](https://awesomerea.org/zh/resources/pokecrystal-disassembly-case/index.md) · 案例

## 关于此条目

说明已依据一手来源复核。
原创说明采用 MIT 许可；外部项目、论文与素材保留各自的权利和许可。
