# 《马力欧卡丁车 Wii》：进行中的 PAL 版一致性反编译

> 《马力欧卡丁车 Wii》的进行中一致性反编译，目标为 PAL 版（RMCP01）：用 Metrowerks 编译器从 C 与 C++ 源码重建 main.dol 和 StaticR.rel 模块，并与仓库保存的 SHA-1 比对。构建从使用者自备的光盘镜像中拆分这些二进制，开发时用 objdiff 比对目标文件。README 的进度徽章指向的 decomp.dev 页面在审阅时无法访问，默认分支最后更新于 2025 年 9 月。

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

## 使用条件与局限

- README 只列出一个支持版本 RMCP01（PAL 版）；configure.py 未定义其他版本，CI 也只构建 RMCP01。仓库由 riidefi/mkw 更名而来，README 的徽章和克隆命令仍使用旧名；CONTRIBUTING.md 和 HACK.md 仍描述早先基于 mkwutil 与 ppcdis 的构建结构，而固定提交中已不含这些内容。产物是 Wii 的 main.dol 和 StaticR.rel，不是 PC 移植。
- 需将自己的 RMCP01 光盘镜像复制到 orig/RMCP01，可接受 ISO（GCM）、RVZ、WIA、WBFS、CISO、NFS、GCZ 和 TGC 格式，config.yml 记录了两个二进制的预期 SHA-1。README 称仓库不含任何游戏素材或汇编；decomp-toolkit 依据仓库提交的、源自游戏的符号表和拆分表，在本地拆分 main.dol 与 StaticR.rel。
- 构建需要 Python 与 ninja，可在 Windows（推荐原生工具）、macOS（需 wine-crossover）或 Linux（x86 上自动下载 wibo，其他架构用 Wine）上进行。configure.py 固定 decomp-toolkit v1.3.0、objdiff v2.4.0、binutils 2.42-1、sjiswrap v1.2.0、wibo 0.6.16 及 20240706 编译器包；游戏、NW4R、EGG、RFL 和 MSL 代码及链接器使用 Metrowerks Wii/0x4201_127，Revolution SDK、TRK、DWC 和 GameSpy 库使用 GC/3.0a5.2。
- 标为 Matching 的目标文件（configure.py 所列 213 个中有 106 个；105 个为 NonMatching，2 个为 Equivalent）由源码编译，各二进制的其余部分取自拆分出的原始文件；默认 ninja 目标会先按 config/RMCP01/build.sha1 校验 main.dol 和 StaticR.rel，再报告进度。CI 在存放原始文件的私有容器中构建 RMCP01，并上传进度报告。审阅时 decomp.dev 在新旧仓库名下均无报告。
- 仓库采用 CC0-1.0；lib/gamespy 沿用 IGN Entertainment 为 GameSpy SDK 提供的 BSD 式许可证，任天堂的游戏、光盘内容和下载的编译器各自保留权利。

## 一手来源

1. <https://github.com/snailspeed3/mkw/blob/78572c95c41dbf6cbb7dd251a567e538560ce1d8/README.md>
2. <https://github.com/snailspeed3/mkw/blob/78572c95c41dbf6cbb7dd251a567e538560ce1d8/configure.py>
3. <https://github.com/snailspeed3/mkw/blob/78572c95c41dbf6cbb7dd251a567e538560ce1d8/config/RMCP01/config.yml>
4. <https://github.com/snailspeed3/mkw/blob/78572c95c41dbf6cbb7dd251a567e538560ce1d8/config/RMCP01/build.sha1>
5. <https://github.com/snailspeed3/mkw/blob/78572c95c41dbf6cbb7dd251a567e538560ce1d8/tools/project.py>
6. <https://github.com/snailspeed3/mkw/blob/78572c95c41dbf6cbb7dd251a567e538560ce1d8/CONTRIBUTING.md>
7. <https://github.com/snailspeed3/mkw/blob/78572c95c41dbf6cbb7dd251a567e538560ce1d8/HACK.md>
8. <https://github.com/snailspeed3/mkw/blob/78572c95c41dbf6cbb7dd251a567e538560ce1d8/.github/workflows/build.yml>
9. <https://github.com/snailspeed3/mkw/blob/78572c95c41dbf6cbb7dd251a567e538560ce1d8/LICENSE>
10. <https://github.com/snailspeed3/mkw/blob/78572c95c41dbf6cbb7dd251a567e538560ce1d8/lib/gamespy/license.txt>

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

- [《马力欧卡丁车：双重冲刺!!》：调试版 GameCube 一致性反编译](https://awesomerea.org/zh/resources/mario-kart-double-dash-decomp-case/index.md) · 案例
- [Mario Party 4：美版 GameCube 一致性反编译重建](https://awesomerea.org/zh/resources/mario-party-4-decomp-case/index.md) · 案例
- [MediEvil 反编译：早期阶段、以校验值把关的 PlayStation 项目](https://awesomerea.org/zh/resources/medievil-decomp-case/index.md) · 案例
- [《密特罗德 Prime》：PrimeDecomp 的 GameCube 版一致性反编译](https://awesomerea.org/zh/resources/primedecomp-metroid-prime-decomp-case/index.md) · 案例
- [MinecraftLCE：处于早期阶段的 Minecraft: Nintendo Switch Edition 反编译](https://awesomerea.org/zh/resources/minecraft-lce-switch-decomp-case/index.md) · 案例
- [《时之笛》：16 个版本均以 MD5 校验 ROM 构建的反编译](https://awesomerea.org/zh/resources/ocarina-of-time-decomp-case/index.md) · 案例

## 关于此条目

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