I built a similar thing, primarily for my own fun. As a reaction to various C64 tools being scattered/old/unsupported exes and often with not OSX builds, my approach was to build a low-friction web app, which I could mess around with easily across whatever machine I was sitting in front of, whenever I had a few moments (kids...)
Basically : select a byte (or a range with shift) and use the buttons at the top to tag it with some metadata like a label, a comment, mark it as the lo/hi byte of a pointer etc - and it'll update the disassembly immediately. It saves all your work in browser local storage by default but if you sign in you can work from 'the cloud' (cheapo Firebase account) - I haven't shared widely before so no idea how that will hold up to the HN effect...
Nice to see an MCP integration here as well. In my experience, coding agents are great at analyzing MOS6502 code. Because the code is limited to only 64 kB, it does not overwhelm the agent. And in parallel it can write specs and even extract assets via normal coding tools.
Using my similar tool [0], I feel I get roughly a 100x speedup. I will definitely try regenerator2000.
One thing I’ve always found tricky when reversing C64 code is self-modifying code, pretty much every game and demo uses STA to patch operands at runtime. Does the auto-analysis flag writes into code regions, or is that something you’d handle manually with the VICE debugger integration?
A 6502 disassembler with a TUI: A modern take on Regenerator
(github.com)77 points by wslh 20 March 2026 | 10 comments
Comments
I built a similar thing, primarily for my own fun. As a reaction to various C64 tools being scattered/old/unsupported exes and often with not OSX builds, my approach was to build a low-friction web app, which I could mess around with easily across whatever machine I was sitting in front of, whenever I had a few moments (kids...)
https://46c.io/
Examples : https://46c.io/project/NVXAZ7JY/code/ram/0E2B https://46c.io/project/8VM2EY7T/library
Basically : select a byte (or a range with shift) and use the buttons at the top to tag it with some metadata like a label, a comment, mark it as the lo/hi byte of a pointer etc - and it'll update the disassembly immediately. It saves all your work in browser local storage by default but if you sign in you can work from 'the cloud' (cheapo Firebase account) - I haven't shared widely before so no idea how that will hold up to the HN effect...
Enjoy!
Using my similar tool [0], I feel I get roughly a 100x speedup. I will definitely try regenerator2000.
[0] https://github.com/s-macke/OpcodeOracle
(Edit): you kids have it easy.