The complete Manic Miner disassembly
67 points by sandebert 16 hours ago | 8 comments
b3lvedere 12 hours ago
I've played Manic Miner and Jet Set Willy countless times back in those days. Very fun to read it completely disassembled. Thank you.
replyaa-jv 12 hours ago
Ah, this is delightful - as a life-long collector of old machines, having kept every computer I've used personally/professionally since 1978, the Speccie is one of the greatest ways to spend an afternoon - and even though there are a huge, huge number of other titles, Manic Miner is still a top 5 favorite in the playlist.
replyThe disassembly is particularly nice to read, such as the sprite-drawing routine:
https://skoolkit.ca/disassemblies/manic_miner/asm/36852.html
Curious that there are snippets of the original project source code still embedded in the 'dead' memory space of the Manic Miner binary .. I find myself wondering if this could be the basis of a ML-driven rewrite into the original source form, as a kind of archaic protogenesis .. but, anyway, still a curio:
https://skoolkit.ca/disassemblies/manic_miner/asm/37708.html
Indeed, for anyone with a new or old interest in assembly language, of any competency, this disassembly is a delightful read ..
He used Claude Code to 'vibe code' the assembly changes, leveraging the fact that the disassembly identifies about 2KB of unused memory. It’s a fascinating look at how LLMs can now navigate and modify 40-year-old Z80 assembly when provided with a well-documented codebase like this one.
The video sparked a lot of discussion in the comments, with some people being very upset he used AI for this.
[0] https://www.youtube.com/watch?v=gxxNgZgd88I"
I’ve tried to visualize the “navigate and modify” process you mentioned in [0]. It’s mesmerizing.
Because reverse engineering outcomes are comparatively easy to verify, it’s a good fit for training for AI. I expect major progress in the next few years, potentially to the point where reverse engineering many binaries becomes highly automated.
[0] https://github.com/s-macke/OpcodeOracle