8 ms·
Yamaha DX7 chip reverse-engineering, part V: the output circuitry
- kens 5y agoAuthor here if there are any questions about my latest DX7 post.
- annoyingnoob 5y agoI love your work and your site, thank you.
- deleted 5y ago[deleted]
- pantulis 5y agoThanks for this! Will you be dissecting the M1? ;)
- jacquesm 5y agoWill you donate an electron microscope? ;)
- lostgame 5y agoI just wanted to thank you for this. I ‘grew up’ on the YM2612 due to the Genesis being my childhood console. As a rapper/producer these days - I’m always reaching back there when composing Beats - with the self-imposed limitations included, of course. Some prouducers still prefer an MPC2000 over a DAW.
- corysama 5y agoThey'd like this over in https://www.reddit.com/r/ReverseEngineering/ https://www.reddit.com/r/ReverseEngineering/
- kens 5y agoIt looks like someone submitted it there.
- deleted 5y ago[deleted]
- orangesite 5y agoThank you so much for doing these, my childhood is complete!
- null4bl3 5y agoHave you tried out the korg Opsix?
- kens 5y agoNo, I'm more on the chip side of things than the synth side so I haven't tried out much.
- wrs 5y agoHave you interacted with the folks at Plogue making the OPS7 emulator? They seem to be obsessed with reverse engineering to get bit-level hardware accuracy (but with a logic analyzer).
- justaj 5y agoWhat do you think about the dexed softsynth [0]? It's supposedly the closest modeled softsynth to the DX7 in existence. 0: https://asb2m10.github.io/dexed/ https://asb2m10.github.io/dexed/
- TonyTrapp 5y agoMaybe the closest free plugin, but it's not on the level of accuracy as Plogue's Chipsynth OPS7, which is bit-accurate. The author has an interesting video here, with more to come hopefully: https://www.youtube.com/watch?v=XJ97iXQrqzw https://www.youtube.com/watch?v=XJ97iXQrqzw
- raphlinus 5y agoIt's not bad, but I've heard that the person who started it is a jerk who constantly posts self-serving comments on HN, and always seems to pop up on threads about the DX7.
- ajxs 5y agoWhen I started doing my research into the DX7 I pored over Dexed's source code to understand how its emulation worked. It was really amazing to discover what an interesting legacy its source code has! The bulk of Dexed's code is derived from Raph Levien's (hi Raph!) Music Synthesizer For Android (msfa). However there's additional code derived from Steffen Ohrendorf's ppplay[0], which in turn builds upon different people's research, reverse-engineering, and experimentation going back decades. Going through it, I really felt like I was looking at something organic built not just from, but upon the passion, and dedication of so many different talented people, over many years. Very cool! [0] https://github.com/stohrendorf/ppplay https://github.com/stohrendorf/ppplay
- raphlinus 5y agoHi Anthony! Yes, I'm really pleased with the way it started as an individual project and turned into a collaboration. And I think it's likely that Ken's detailed and excellent investigative work will find its way into further code improvements.
- ddingus 5y agoNone yet, reading with great interest. Really, I just want to echo the many, "THANK YOU!!" sentiments related to your work out there.
- wildzzz 5y agoIt would be interesting to have this design on an FPGA that has a built-in DAC. I could see a very general purpose midi keyboard that has an interface that would allow switching between multiple different simulated synthesizers.
- klodolph 5y agoSure, but this is known to be easy to emulate in software. The FPGA isn't really necessary.
- dharma1 5y agoIt’s nice if you want a portable (size of a cigarette pack) hardware fm synth with megahertz sample rate oscillators (no aliasing), with built in effects
- klodolph 5y agoFor the same reason that dynamite can be used to dig holes in your garden, yes, an FPGA can be used to simulate a DX7. If you're going for a "no aliasing" simulation then you're not after the DX7 sound anyway (which has fairly heavy aliasing), and you might as well just wire up some bandlimited FM in software. I still don't see how using an FPGA helps you, except that it lets you throw money at a problem instead of having to learn signal processing theory. I'm not trying to pooh-pooh FPGAs, it's just that CPUs have a ton of processing power these days, and we have tons of signal processing techniques to deal with aliasing other than just cranking the sample rate up to infinity. The amount of processing power it requires for bandlimited synthesis is a function of sample rate, if you keep the other design parameters fixed. Low sample rates are inefficient because your filters get really large--so you oversample. Likewise, at high sample rates (megahertz is well beyond "high") it gets easier and easier to deal with aliasing, and at some point, you're just churning through more data without reducing the aliasing (because at some point it's below the noise floor anyway).
- dharma1 5y ago
- sparklingmango 5y agoHN loves the DX7.
- httpsterio 5y agoI mean, why not? It's not the first but one of the first FM synths and the one that definitely made the biggest splash. Affordable and versatile so it became a staple in studios, music classes and with home players as well. The sound chip YM2612 is also what elevated video game audio when it was still in its' infancy to something more akin to "real" sounding instruments. Historically it's been very influential since the 80s so it's no wonder it's struck a chord with people now in their 30s, 40s and older.
- klodolph 5y agoIMO the YM2612 was neat but shortly after it appeared, we started getting multichannel PCM-based (or ADPCM) sound chips which were much more flexible and had more naturalistic sounds.
- w0mbat 5y agoThe same thing happened in the pro synth world. When the DX7 came out in 1983, people were wowed by the decent piano sound, for example, which was something analog synths never did well. There were lots of sounds like that - bells, xylophone etc. Then sample based keyboards started to get more affordable, and RAM and ROM got cheaper. Eventually in 1988 came the Korg M1. Megabytes of samples in ROM let it do a perfect piano sound, along with a horde of other great sounds, natural and unnatural. The M1 became the best-selling synth in history and the world's fascination with FM finally faded.
- ajxs 5y agoI think by 1988 the world was well and truly suffering from "DX7 preset fatigue". To quote Philip Oakey from Human League: "They get really bland after a while. And when we get into what I call the DX Sound Hunt, it drives me up the wall. Someone in the studio will say, ‘Okay! Let’s have a bell sound.’ Then we start going through the 128 sounds on our DX —we have the Sycologic MX1 expander board— and playing every one, including the whistle, the train, and the bombs. If we find something we like, it has probably turned up on 50 records that have been made over the past few years..." [0] I was wondering whether the Korg M1 was really what turned the tide against the digital synth revolution that the DX7 kicked off, and whether it really was the first of its kind. I looked up Yamaha's synth chronology[1], and it really seems like Yamaha didn't produce anything between 1983-1990 that wasn't an FM synth. I'm actually very surprised. My internal chronology was off. I had thought Yamaha had started making PCM-based synths before that! [0] https://meganlavengood.com/the-yamaha-dx7-in-synthesizer-history https://meganlavengood.com/the-yamaha-dx7-in-synthesizer-his... [1] https://usa.yamaha.com/products/contents/music_production/synth_chronology/index.html https://usa.yamaha.com/products/contents/music_production/sy...
- cmdrriker 5y agoMy first real interest in computing came from my Uncle showing me his DX7. It made such cool synths as well what I thought at the time was a decent piano sound especially in the early 80s. A Huge bulky instrument it also had a midi interface too which was new (yikes) at the time.
- chiph 5y agoWhy are there two store-and-hold circuits? Is it for smoothing the output waveform? I was thinking it could be to produce a stereo output using a single chip by alternating between left/right [0]. But the output is summed and as far as I know, the 1/4" jack is mono. [0] My first CD player, the Sony CDP-101 did this. It only had a single DAC so there was a 11µs delay between left + right channels. While I loved it, any $60 Walmart player has better sound these days.
- kens 5y agoOne theory is that it reduces intermodulation distortion since any particular signal only changes half as much. Another theory is that it was to support stereo, but as you say, the DX7 is mono. I did some Fourier analysis to see if it reduced artifacts from the time-domain multiplexing, but the effect was small. TL;DR: I don't know.