Show HN:Decomp Academy – 学习将 GameCube 游戏反编译为匹配的 C 代码

Hacker News Top 工具

摘要

Decomp Academy 是一个交互式在线平台,教会用户如何通过编写字节匹配的 C 代码,针对 2001 年 MWCC 编译器生成的真实 PowerPC 汇编输出来反编译 GameCube 游戏。

过去几个月,我深入参与了反编译社区。我亲手反编译了我童年钟爱的一款游戏(Star Fox Adventures)。开始时我完全没有反编译经验——更糟的是,我几乎没碰过 C 语言和汇编。 学习反编译很有挑战性。很难找到好的学习资源,而且现有的开源项目要么不活跃,要么缺乏实质性的学习材料。 于是我做成了 Decomp Academy!Decomp Academy 是一种交互式学习方式,教你如何将 PowerPC 汇编反编译回 C 语言。网站运行一个实时的 Metrowerks CodeWarrior GC/2.0 编译器,把你的 C 代码转换成汇编,然后检查你的汇编与目标汇编的匹配程度。只要有一条指令或一个比特不对,就算失败。这是视频游戏反编译的金标准,比普通反编译严格得多。 截至目前,网站上有 250 多节课程,从最基础的内容开始,因此只要有一点点编程经验的人都能直接上手,即使你不是 C 语言专家。部分课程还使用了来自活跃开源反编译项目(Star Fox Adventures、Mario Party 4、Pikmin、Metroid Prime)的真实函数。这样做的目的是让你学完所有必要知识后,能够直接参与并贡献到真实的反编译项目中。 网站完全免费、开源,无需注册即可访问所有课程。所有课程都以 Markdown 格式保存在仓库中(src/curriculum),添加或修改课程非常简单。网站还很新,课程每天都在快速更新,而且即将推出完整的 C++ 部分。网站已经深受反编译社区的欢迎,我很高兴能在 HN 上分享它。我热切期望其他人能为这个项目做出贡献,希望它能成为互联网上学习反编译艺术的最佳资源。请告诉我你的想法! 源码:<a href="https://github.com/JackPriceBurns/decomp-academy-fe" rel="nofollow">https://github.com/JackPriceBurns/decomp-academy-fe</a>
查看原文
查看缓存全文

缓存时间: 2026/06/28 01:52

# Decomp Academy — 学习 GameCube 反编译 (MWCC GC/2.0) 来源: https://decomp-academy.dev/ Decomp Academy Decomp Academy MWCC GC/2\.0 ## 学习如何将 GameCube 汇编反编译为字节匹配的 C 语言 从从未读过寄存器开始,到逐指令匹配真实的《星际火狐大冒险》函数。你编写 C 代码,真实的 2001 年编译器实时评分。 步骤 1 阅读汇编 逐指令研究零售编译器生成的 PowerPC 目标代码。 步骤 2 编写 C 语言 重构原始源码。提示和参考解近在咫尺。 步骤 3 编译器评分 真实的 MWCC GC/2.0 编译你的代码并进行差分 —— 匹配每一个字节才能获胜。 ## 课程大纲 读汇编 · 写 C · 编译器逐字节评分。 返回到 → (https://decomp-academy.dev/lesson/foundations-welcome) 0/268 已匹配 函数重构中 招募 已解决 尝试过 未开始 概念(阅读) 难度 1–5 I 热身 学会阅读机器语言 0/10 II 核心惯用法 C 语言编译成的各种形式 0/164 III 真实的 ABI 栈帧、全局变量、优化器、64 位 0/80 IV 实战演练 完整的真实《星际火狐大冒险》函数 0/14

相似文章

Snowboard Kids 2 已实现100%反编译

Hacker News Top

作者宣布,任天堂64游戏《Snowboard Kids 2》现已完全反编译,意味着所有函数都有了对应的C语言实现,并能够编译回原始汇编代码。该项目耗时近两年,功劳归于N64反编译社区以及AI编程助手(Claude、GLM、Codex)的加速作用。

模拟器调试:Area 5150 的 Lake Effect

Lobsters Hottest

本文详细介绍了在MartyPC模拟器上调试Area5150演示中“Lake”效应的过程,解释了需要特定标题hack的原因,以及通过总线嗅探和动态时钟实现周期精确CGA模拟的后续修复方法。

Windows NT 用于 GameCube/Wii

Hacker News Top

该项目将 Windows NT 移植到任天堂 GameCube 和 Wii 主机,支持多种输入设备和驱动程序。它是开源的,可在 GitHub 上获取。

这个周末你打算做什么?

Lobsters Hottest

一位开发者描述了将《完美黑暗64》关卡移植到 noclip.website 的过程,强调了读取 N64 显示列表和重新实现渲染引擎的挑战。