Learning resource
Decomp Academy
A free, English, in-browser course in matching decompilation maintained by Jack Price-Burns: learners read a function's target assembly, write C, and the original console compiler grades the result byte for byte. Lessons build from reading registers and arithmetic through control flow, structs, floating point, the ABI, globals, optimizer behaviour and 64-bit integers, then finish with functions adapted from open-source decompilation projects. The curriculum now spans GameCube PowerPC, Game Boy Advance Thumb and Nintendo 64 MIPS courses, and the frontend source is on GitHub.
Requirements & limits
- Reviewed at frontend commit a21f9d0 (2026-09-23); the repository was first published in June 2026 and has had commits most months since. The README still describes a single GameCube course of 258 lessons, but the reviewed curriculum and the live site list 755 lessons in three courses: GameCube (263), Game Boy Advance (251) and Nintendo 64 (241), each in four tiers from warm-up to real functions.
- Lessons run in the browser at decomp-academy.dev and the README says no signup is needed to start; an account stores progress. Grading compiles the learner's C with the original compilers and diffs it using objdiff: Metrowerks CodeWarrior GC/2.0 for GameCube and SGI IDO 5.3 for Nintendo 64 on the hosted backend, a separate AGPL-3.0 repository that the README says runs the CodeWarrior compilers under wibo, and agbcc built to WebAssembly in the browser for Game Boy Advance.
- No game files are needed: the later lessons adapt functions from open-source decompilation projects the README credits (Star Fox Adventures, Pikmin 2, Metroid Prime, Mario Party 4), and targets are generated server-side from each lesson's reference C. This repository contains no compiler, and the backend README says it commits only wibo, not MWCC; for local development the README expects Node 18+ and a sibling Star Fox Adventures decompilation checkout that supplies MWCC and binutils, while .env.example says a fresh clone uses the hosted compile API by default.
- The frontend is AGPL-3.0, which also covers modified versions run as a network service. This collection read the README, curriculum metadata, one real-function lesson and the live home page; it did not solve lessons or check grading. A CLAUDE.md lesson-authoring guide for Claude Code is committed, but the README does not say how lessons were written, and REA is not mentioned.
About this entry
- Type
- Learning resource
- Category
- Learning resources
- Relationship
- Learning resource
- Targets
- Binary · Game
Sources reviewed
The description was reviewed against primary sources. This does not establish runtime testing, security auditing or verified compatibility.
Primary sources
- README.md GitHub · JackPriceBurns/decomp-academy-fe · Revision a21f9d0
- src/curriculum/01-gamecube-c/_course.md GitHub · JackPriceBurns/decomp-academy-fe · Revision a21f9d0
- src/curriculum/02-gba/_course.md GitHub · JackPriceBurns/decomp-academy-fe · Revision a21f9d0
- src/curriculum/03-n64-c/_course.md GitHub · JackPriceBurns/decomp-academy-fe · Revision a21f9d0
- src/curriculum/01-gamecube-c/04-proving-ground/01-mastery/001-spellstone-setstate.md GitHub · JackPriceBurns/decomp-academy-fe · Revision a21f9d0
- .env.example GitHub · JackPriceBurns/decomp-academy-fe · Revision a21f9d0
- CLAUDE.md GitHub · JackPriceBurns/decomp-academy-fe · Revision a21f9d0
- LICENSE GitHub · JackPriceBurns/decomp-academy-fe · Revision a21f9d0
- README.md GitHub · JackPriceBurns/decomp-academy-be · Revision d80447d
More in References and learning
- OWASP Firmware Security Testing Methodology (FSTM) · Learning resource
- Installation and client setup · Documentation
- CLI and Evidence · Documentation
- MCP contracts and generated catalog · Documentation
- Native binary investigation · Documentation
- Cross-layer JavaScript application workflows · Documentation