What does HackerNews think of yamaha_dx7_rom_disassembly?

Yamaha DX7 Firmware ROM annotated disassembly.

Language: Assembly

I browsed through the repository as discovered by colejohnson66 downthread https://github.com/ajxs/yamaha_dx7_rom_disassembly. This is an example of superb, meticulous, lovingly documented work. The kind of thing you don't see every day, congratulations. The attention to detail is really just chef's kiss, starting with a really good repository name (a small thing, but still), continuing through clear and apparently comprehensive documentation of what you did and why, then on to beautifully formatted and commented assembly language (much better than the original source code I'd wager) with coherent and consistent paragraph commenting a particular delight, and finally (and very importantly) dedication to making sure others can reproduce your results and generate a matching binary too. There are likely to be other things of beauty in there I have forgotten to highlight, it's just that good. Oh the FAQ of course, what a great FAQ. Really I am being very wordy for someone that's lost for words.

BTW, I love retro computing too, this is my best attempt so far in the field https://github.com/billforsternz/retro-sargon. I aspire to similar standards to your good self, but I'm not there yet.

I'll mention this even though it isn't exactly the Motorola 6800: I've been doing a lot of work recently with the Hitachi 6303, which is a member of Hitachi's family of Motorola 680x alternatives. The Hitachi 6303 is featured in a lot of 80s Japanese synthesisers, particularly Yamaha's DX/TX range. The Motorola 680x series also features in the Ensoniq ESQ family of synthesisers, probably many more.

I became acquainted with this architecture disassembling the Yamaha DX7 firmware: https://github.com/ajxs/yamaha_dx7_rom_disassembly It's a great instruction set to work with. It's my first experience with 8-bit programming, and I found it very intuitive.

Very cool! This is really great work! It's awesome that there's been so many synthesiser related topics on Hacker News lately. I did a similar project myself to disassemble, and fully annotate the firmware for the Yamaha DX7: https://github.com/ajxs/yamaha_dx7_rom_disassembly

The biggest hint I could give anyone looking to disassemble a synthesiser operating system is to direct your attention towards the code processing individual MIDI messages. The code is invariably is huge mess, however you'll be able to very quickly identify the operating system's core functions, since the corresponding SysEx parameter numbers clearly identify what functionality you're looking at.