IbizaPocholo
NeoGAFs Kent Brockman
Snowboard Kids 2 is 100% Decompiled
Snowboard Kids 2 for the Nintendo 64 has reached 100% matching decompilation. A brief note on what that means, how we got here, and what comes next.
blog.chrislewis.au
I'm very pleased to announce that Snowboard Kids 2 is 100% decompiled!
All of the game's functions have now been implemented in C and compile to assembly that matches the original game. There's still some occasional __asm__ hackery,<a href="https://blog.chrislewis.au/snowboard-kids-2-is-100-decompiled/#fn:1">1</a> and plenty of code needs better names and documentation, but every function now has a matching C implementation.
That matters because a matching decompilation turns the game from a pile of MIPS assembly into a codebase we can read, build, study, and modify. It should help with recompilation, asset extraction, modding, and generally understanding the mechanics of the N64's greatest game.
This project would not have been possible without the N64 decompilation Discord community, whose members have been incredibly generous with their time. I would particularly like to thank Bl00D4NGEL, inspectredc, SlaveOfIDO, and queueRAM for their significant contributions to the project, especially across the final ten functions.
![]()
Leaderboard shared on discord for tracking work on the remaining Snowboard Kids 2 functions.
The community was more important than any model: people answered my dumb questions, explained tooling, and decompiled functions themselves. With that said, coding agents also greatly accelerated the decompilation effort, particularly Claude, GLM, and Codex. I don't want to turn this into another AI blog post<a href="https://blog.chrislewis.au/snowboard-kids-2-is-100-decompiled/#fn:2">2</a>, but I do have a couple of observations:
- Based on my experience with the final ten functions, which were among the most difficult, the most effective model appeared to be Codex 5.5 xhigh. Historically Claude was more effective, and I expect this to keep changing, perhaps even by the time you read this.
- Frontier models are now very effective at decompilation, but this comes at a cost. GLM has probably been the best value for money for this specific kind of work. If you want to try coding agents on your own decompilation project but are put off by high subscription fees, that is where I would start.
What next?
Reaching 100% decompilation was not technically blocking the recompilation effort, but it was more interesting to me personally. With the decompilation finished, my next goal is to release a high-quality recompilation of Snowboard Kids 2.
That's already in a pretty good state thanks to help from sonicdcer and DarioSamo, but there are still bugs to squash before I'm comfortable releasing it.
![]()
Screenshot from Snowboard Kids 2: Recompiled. Note the use of widescreen and expanded draw distance. This can lead to some visual quirks.
There's also plenty of work left to do in the decompilation project itself. A 100% match doesn't mean the source is perfectly understood. Many functions still have generated names, many structures need to be cleaned up, and graphics/audio assets are still mostly treated as binary blobs. The project is now in a much better place for that work, but the work still needs doing.
Finally, I'm interested in starting a Snowboard Kids 1 decompilation. I think it would be very cool to have a 'Super Snowboard Kids'<a href="https://blog.chrislewis.au/snowboard-kids-2-is-100-decompiled/#fn:3">3</a> that combines both games and allows you to play all the original tracks on the second game's more modern engine. I have no idea how feasible that ultimately is, but it's a fun thing to think about.
GitHub - cdlewis/snowboardkids2-decomp: Decompilation of snowboard kids 2 (N64)
Decompilation of snowboard kids 2 (N64). Contribute to cdlewis/snowboardkids2-decomp development by creating an account on GitHub.