Settings

Theme

The complete Manic Miner disassembly

skoolkit.ca

71 points by sandebert a day ago · 11 comments

Reader

A_Venom_Roll a day ago

Perfect timing - Sharopolis just released a video [0] using this exact disassembly to mod Super Mario-style physics into the game.

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"

  • s-macke a day ago

    AI is very effective for reverse engineering. Unless you’re doing it purely for fun, it makes sense to use AI where it helps.

    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

    • pjmlp 6 hours ago

      My first agent test was pointing it out to my toy compiler repo (L98) and ask to translate the AT&T Assembly files that gave me so much trouble to come up with (my head has Intel syntax burned into it), and translate it back to Intel syntax.

      In a couple of seconds I had it back.

      Didn't bother commiting the changes, because it works and was a toy compiler anyway.

  • qingcharles 15 hours ago

    The newest February Google Deep Think update is excellent at writing 16-bit x86 CGA code. It very quickly put together a complete 3D software renderer in assembler. I'm trying to replace the rendering functions of the original 8086 Elite PC since there have been significant improvements in how to write video RAM since it came out.

    I'll have to try Opus 4.6 now.

b3lvedere a day 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.

aa-jv a day 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.

The 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 ..

andybak a day ago

oh dear god. i can port this to VR now... Claude!

dhosek a day ago

A bit frustrating for someone who doesn’t know Manic Miner so I didn’t know which system this was written for or anything about the game. I hate it when stuff like this gets linked and there’s no broader context to the page.

  • zabzonk a day ago

    Type "Manic Miner" into your browsers search bar?

  • gizajob a day ago

    At this stage, if you don’t already know which system Manic Miner runs on, then you don’t need to read the disassembly. For some of us it’s almost genetically encoded information.

    And yeah, Google.

  • davidguetta 15 hours ago

    it's not an airport you don't have to announce your departure

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection