# Project Arwing：由一致性反汇编重编译的 Star Fox

> 依据运行覆盖率和递归下降反汇编 Star Fox 的 65816 与 SuperFX 代码，重新汇编出与原 ROM 一致的文件，再静态翻译为 C，运行于从零编写的 SNES 运行时，支持 Windows、macOS 和 Linux。录制会话中未执行到的代码，以及与 ROM 不再一致的 RAM 代码，回退到解释器执行；README 报告两条路径的逐帧哈希一致。生成的 C 是机械翻译而非手工反编译的源码，结果仍为项目报告。

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

## 使用条件与局限

- **前提条件：**需自备 Star Fox (USA) (Rev 2) ROM，并与 README 给出的 SHA-1 一致；其他修订版和地区版本未经测试。构建时从该 ROM 提取图形、模型与音乐。源码构建需要无文件头的映像，安装程序则会去除 512 字节的拷贝机文件头。仓库不含任何游戏数据。
- **前提条件：**发布版面向 Windows x64、macOS 11+（未经公证）及 Linux x86_64／ARM64 AppImage。源码构建需要 Python（Windows 上为 3.10+），并分别搭配 Visual Studio 2022 Build Tools、Xcode 命令行工具与 SDL2，或 gcc、SDL2、FreeType 与 DejaVu 字体；tools/build.py 依次执行提取、汇编、重编译和编译。
- **测试证据：**README 报告重新汇编的 ROM 逐字节一致，含 34,472 条 65816 指令和 14,577 条 SuperFX 指令；在 2 万帧游戏过程中，99.4% 的 CPU 分派和 100% 的 SuperFX 分派以重编译代码执行。README 列出可游玩的部分为开场、标题、训练、Corneria 及随机游玩到达的其他关卡。标签均为自动生成，未执行到的代码仍作为数据由解释器运行，音频仅经过间接检查，未与实机对照。
- **测试证据：**tools/build.py 会比较重新汇编 ROM 的 SHA-1，但不一致时只发出警告。文档中的贡献者检查会比对重编译运行与 --interp 运行的 --hashlog 输出。CI 在没有 ROM 的情况下以零填充数据完成汇编和重编译。
- **许可：**MIT 覆盖 tools/、src/、installer/、res/ 及构建脚本；LICENSE 排除 asm/（Nintendo Star Fox 代码的反汇编）及任何从 ROM 提取的内容。这是与 Nintendo 无关的非官方爱好者项目。

## 一手来源

1. <https://github.com/carlosrmz009/arwing/blob/d8fe7aaf67e0f4ba77c9814852d2ffaccd7d63c7/README.md>
2. <https://github.com/carlosrmz009/arwing/blob/d8fe7aaf67e0f4ba77c9814852d2ffaccd7d63c7/LICENSE>
3. <https://github.com/carlosrmz009/arwing/blob/d8fe7aaf67e0f4ba77c9814852d2ffaccd7d63c7/tools/build.py>
4. <https://github.com/carlosrmz009/arwing/blob/d8fe7aaf67e0f4ba77c9814852d2ffaccd7d63c7/tools/recomp.py>
5. <https://github.com/carlosrmz009/arwing/blob/d8fe7aaf67e0f4ba77c9814852d2ffaccd7d63c7/.github/workflows/build.yml>

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

- [RaceWave46：AI 辅助的《Wave Race 64》Windows 重编译](https://awesomerea.org/zh/resources/racewave46-wave-race-64-recomp-case/index.md) · 案例
- [Saints Reborn：基于 ReXGlue 的 Saints Row 静态重编译](https://awesomerea.org/zh/resources/saints-reborn-recomp-case/index.md) · 案例
- [Savage Wind Recomp：《塞尔达传说：旷野之息》静态重编译](https://awesomerea.org/zh/resources/savagewindrecomp/index.md) · 案例
- [SF2Recomp：将《Shadow Fight 2》静态重编译到原生平台](https://awesomerea.org/zh/resources/sf2recomp-case/index.md) · 案例
- [Sin & Punishment：开发中的 N64 静态重编译移植](https://awesomerea.org/zh/resources/sin-punishment-recompiled-case/index.md) · 案例
- [Skate 3 Recomp：通过 ReXGlue 实现的 Xbox 360 原生重编译](https://awesomerea.org/zh/resources/skate3-recomp-case/index.md) · 案例

## 关于此条目

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