Plogue, a Canadian software company, have recently released a (software) emulation of the DX-7 in excruciating detail. Here you can see part of the trouble they went through: https://www.youtube.com/watch?v=XJ97iXQrqzw. Suffice to say that they used a logic analyzer to discover gritty details that no other analysis of the DX-7 I know has ever paid attention of.
Another venerable DX7 software emulation worth mentioning is the free and open source Dexed[0], which also doubles as a patch librarian for a real DX7.
I like to think I’m a synth nerd in the know, and certainly chat a lot and read synth forums. But Plogue have flown under my radar. This looks like great stuff at a good price. Do you own any of their soft synths?
They have some great things. I bought their Bitcrusher plugin years ago, which is really fun, and I think I still receive software updates for that.
Chipsounds is great if you're into 8-bit / chiptunes and the like (they also have a "chipsynths" series of plugins emulating SNES/MEGADRIVE, and other classic game consoles, but I haven't tested them...)
And Bidule is quite a thing. Is some sort of modular VST synth with tremendous options for routing that seems very well suited to prepare live performances. The Philip Glass Ensemble, through Michael Resman has used it at least once to make complex live setups: https://www.plogue.com/michael-riesman.html
Plogue has been around for a while but nobody could fault you for missing them. I have been and active member of KVR VST for over 20 years which is where I heard of them but never owned anything of theirs. It was only recently announced that they released this 'sample accurate' DX7 clone.
I have TX7 for and the Arturia DX-7V. Typically FM or Phase Distortion(Casio CZ synths) arent really the type of sound I go for, but they definitely shine in clanky metallic dissonance.
I have two of their sample players (one for Garritan products, and their free sfz player), I've got Bidule (which is a semi-modular environment where you can combine processing units and plugins in complex graphs; a bit like Reaktor), and recently bought the OPS7, because it sounds so damn authentic and is fun to play with: it has two layers, so you get something similar to the DX-1/5 sound.
Retro synth emulators are terrible at proper analog audio emulation. Higan (the "most accurate" SNES emulator) uses cubic teaming for the output without an attempt to emulate the stairstepped ZOH DAC or analog lowpass, or implement a brick wall. Plogue is one of the few developers to produce proper analog emulation, and they say they document all their research (https://youtu.be/V3yWXVAZgO0), but I'll have to check again to see if I can find it in the video or not.
I was under the impression that, despite the name, the Yamaha FM synths didn't actually use frequency Modulation but rather phase modulation. With Frequency modulation you can't have an operator feed back on its self.
If you take a DX7 patch and implement it on something like the PreenFM2 or PreenFM3 (which uses actual FM), any algorithm with more than a few operators is going to sound quite different.
I still love the old Yamaha FM synths though, the lo-fi-ness of the DACs are so musical/magical.
> I was under the impression that, despite the name, the Yamaha FM synths didn't actually use frequency Modulation but rather phase modulation. With Frequency modulation you can't have an operator feed back on its self.
It’s true that it’s phase modulation, but phase is just the derivative of frequency, and the derivative is a linear operator (essentially a 6dB/oct EQ). So I don’t think it’s an especially important piece of terminology to get correct.
The statement about feedback is actually backwards. You cannot directly incorporate feedback into a phase modulation system. In the Yamaha system, the feedback is delayed by a sample to make it work. In an FM synth, this would not be necessary, and you could just directly feed the output back into the input.
One thing that is different in the preenfm2 compared to the Yamahas stuff is, that it uses linear FM and therefore will not do operator feedback.
The guy behind the preenfm2 says, that feedback is not that important, when you have a variety of waveforms for modulation. Linear FM also has the advantage of being a bit "friendlier/warmer" when using complex waveforms as modulators (Higher harmonics of the modulator will have a smaller effect than in phase modulation).
One thing you loose when not having feedback: The normal feedback happens after the amplification/envelope if I remember correctly Therefore the amount of feedback scales with the amplitude. With feedback you therefore get less harmonics and therefore a "softer" sound at lower amplitudes. This is quite useful, because it mirrors the behavior of most natural sound sources. It is the same idea as using a lowpass gate or using the same envelope for the amp and the filter in subtractive synthesis. Of course FM synths give you enough options to get this effect in another way. I still like the yamaha style feedback though....
I will say—my personal experience, in dissecting DX7 presets, is that feedback is not really used that much. If you are porting DX7 sounds to a different architecture, you can remove the feedback and replace it with something like a noise source, or another operator, much of the time, or even remove it altogether.
This is just my personal experience. I often dig through DX7 patches in order to reimplement them for demoscene projects.
Sounds like you’re getting good use out of the TX81Z. I have the TX802, which is on paper a better synth, but controlling it from a DAW is much more of a pain because the program change messages control the “performance”, rather than the patch. So it’s been exiled from my rack, at least for now.
Agreed, and what's more: back then it wasn't all that apparent, the fact that they're still playing almost 40 years later is what proves it, most other gear - even very high end - from that era is long gone.
> phase is just the derivative of frequency, and the derivative is a linear operator (essentially a 6dB/oct EQ).
FM (if strong enough to create negative frequencies) and PM are equivalent when you're modulating a signal with a sine wave. As soon as you chain modulators, they're no longer mathematically equivalent or capable of producing the same sounds, since frequency-modulating a signal by a complex wave is different from phase-modulating a signal by the same complex wave (which can produce sharp corners given a bounded input with sharp corners).
I think direct feedback in PM is possible, at least for low modulation indices. The Yamaha implementation is in software, so a one sample delay is the easiest implementation (otherwise you'd have to solve a rather complex equation at every step).
The distinction that I’m making is exactly that. You can’t incorporate direct feedback into a phase modulation synthesizer, you need to incorporate delay into the feedback path. By comparison, you can use direct feedback with subtractive or FM synthesis.
The one-sample delay basically turns the feedback into an iterated function system. With certain parameters, you end up with aperiodic results—cool in theory, but in practice, often just used as a noise source.
But if we take the simplest example, f(x) = sin(x + c*f(x)), we can solve it, (numerically). If I run it up to 0.5π for c=0.5, I get something that's (obviously) very close to the function with a short delay. So I take that as the possibility of direct feedback, although in a electronic circuit, feedback also has a minute delay.
"FM Synthesis" is a generic term that encompasses both phase modulation and frequency modulation.
And in John Chowning's original article, he bops back and forth between the two without mentioning it.
In practice, phase modulation is more useful and makes more sense. And yes, the DX-7 uses phase modulation throughout.
---
With Frequency Modulation, you can have an operator feed back on itself. However... with such an arrangement it is entirely possible for it to get stuck at 0 Hz. Not very musical.
---
And phase modulation makes a lot more sense. Watch as I demonstrate.
Student: "How does FM synthesis work?"
Teacher: "Well, do you know what happens if we have one oscillator modulating the frequency of another oscillator?"
Student: "You mean like vibrato?"
Teacher: "Yes, exactly. Now imagine a vibrato at the same frequency as the second oscillator."
Student: "That's doesn't even make sense."
Teacher: "Not to worry, the Bessel Functions still apply."
Student: "What's a Bessel Function. Can I calculate it?"
Teacher: "Not directly. It's kind of complicated."
Student: "Mutherfucker!"
Okay, now let's try phase modulation.
Student: "How does phase modulation work?"
Teacher: "Okay... Do you know how distortion works?"
Student: "I'm a guitar player. I'm intimately familiar with distortion."
Teacher: "Great! So distortion is a nonlinearity on the Y axis of a waveform."
Student: "Yep!"
Teacher: "Well, phase modulation is a nonlinearity on the X axis of a waveform. We stretch the waveform here [hand gesture], and compress the waveform over here [hand gesture]."
Student: "Hmm, warping the waveform along the X axis. That sounds kind of like PWM."
The numerically controlled oscillator (NCO) aka Direct Digital Synthesizer (DDS) at the heart of this is one of the most elegant things I've encountered. I once used an NCO to adjust for belt speed variation in a machine that applied hot glue to corrugated boxes in a production environment. The CPU I had at the time was constrained to 512 Bytes of EEPROM to store the program in, and it (the NCO) really helped fit that along with all the I/O to read the input thumbwheels into the thing.
The customer kept adding features, and when I was all done, I had all the code in 511 bytes.
All a phase accumulator is is a long register you add to, and only take the top N bits off of. It's quite easy to have 64 bits of frequency resolution, regardless of how many bits your SINE table lookup is going to the DAC.
It's funny how this works though: customer makes yet another request, at first your response is 'forget it'. Then, late at night when the house is quiet you really start to think about it and bit by bit the solution starts to present itself. Then a highly annoying bout of code golf later you manage to squeeze the feature in, and end up with more free space than you had before...
It was a 68HC11, I forget the specific model number, they had a few development boards for $68.11 in the local college bookstore, so that's how I prototyped it. ;-)
Interestingly, the DX7's log drum patch is having a massive comeback in the South African genre Amapiano. I would draw a parallel here to the 808 bass, in that I wouldn't be surprised to see the Log Drum become a lasting element in South African electronic music.
Anecdote I read on Gearspace- Nine Inch Nails used to destroy DX7s on stage during their tour. They would basically go to pawn shops in each town they played and buy up the DX7s. They were so reliable that they typically didnt have to worry about whether or not they worked, and the keyboard was great for playing and controlling other things via midi. They sold in such numbers that they were ubiquitous, but kinda sad to know that many were destroyed unnecessarily...
The whole, "destroy instruments onstage" thing always seemed so wasteful and stupid to me. Why not do something useful and give it to someone who might use it?
Nope, just destroy it because you or your audience are knuckledraggers.
For a number of years, the FM patent was the most profitable patent that Stanford owned. It's interesting that it was a patent from the music department - not engineering, not biotech that made the most money...
> Each operator has its own phase accumulator. The patent describes a 96 stage shift register to store the phase increment for the 6 operators each of the synth’s 16 voices.
Why this was allowed to be patented? This is a pretty much obvious thing to do when you have this kind of limitations.
It seems like people reviewing patents don't really understand what they are about. There is plenty of stuff like this in audio space.
The Dave Smith quote in the footnotes springs to mind:
"If you have a lot of patents and somebody comes after you, chances are one of your patents will overlap enough with one of their patents that you can negotiate a deal so nobody gets hurt. Whereas if you don't have anything to offer and you have nothing in your stable of patents, then you're stuck"
I just chalked this kind of weird specificity up to the legal minutiae required to patent musical hardware. Maybe someone with legal experience can weigh in on this. I'm guessing that if you go into this level of detail regarding the technical implementation, it probably makes it much easier to litigate patent infringement later, and narrows the possibility that someone else can get away with a similar implementation. The titles of some of Yamaha's other musical patents are pretty obscure: "Electronic musical instrument with user programmable tone generator modules (5,040,448)", "Electronic musical instrument capable of varying a tone synthesis operation algorithm (4,558,857)", etc.
There's a history of Chowning and FM here. Practical FM is closely linked to CCRMA's Samson Box which was designed by Peter Samson of System Concepts, who were better known for building affordable(ish) DEC KL10 clones.
When Chowning met Dave Bristow, who was Yamaha's product specialist and designed many of the DX7 presets, he apparently asked if Bristow could explain FM to him because he didn't really understand how to use it.
This was partly a joke and... partly not. It was also before they wrote this together:
Really good article. My first synth, that I had to save up for as a teen, was a DX7. However, wasn't FM synthesis part of the New England Digital's Synclavier system, which was available in the late 70s? Certainly the DX7 was really the first mass-market commercial offering, but I believe the Synclavier was first to market with frequency modulation. I wonder what the arrangement was with John Chowning, if anything, on this.
> Somewhere in this lull, a tiny Vermont-based synthesizer company aptly named the New England Digital Corporation beat Yamaha to the punch by producing the world’s first digital synthesizer, the “Synclavier.” Though only 20 units were sold at $41,685 each, and they were all reserved for top-notch musicians, Stanford took no chances, and swiftly sued the company for infringing on its FM synthesis patent. From that point forward, the university received a sum of $43 every time a Synclavier was sold.
Yamaha had been working on FM synthesis for a few years already at that point.
The DX7 was the first affordable, fully digital programmable keyboard to hit the market.
Also, technology for digital synthesis was already there, the big game was to avoid patent infringement from other companies.
For example, Casio invented the "Vowel–consonant synthesis" used in their 80s Casiotone keyboards mostly to prevent conflicts with an existing patent from Allen Organs[0]. And later, they came out with the "Phase Distortion Synthesis" as an *alternative* FM synthesis[1].
There's a solo album by Eddie Jobson (circa 1985) "Theme of Secrets", which is an excellent showcase for the Synclavier (IIRC the entire album is done with it).
That's a pretty good record, I still have it. The opening song sounds like a marble falling on a huge sheet of glass. Quite the sound effect for the time.
I've been restoring a closely related DX11 recently - one interesting tidbit of over-engineering, the keyboard matrix for the tact switches on the front panel (not just the musical keys) has a diode for every switch, to apparently allow "chords" of 3 or more programming buttons to be held and scanned at once. Can't see why it's needed during programming of the patches, but I might be missing something. Maybe someone had a kickback deal with the diode vendor to ship an extra 40 of them per unit :).
I think without that diode there would be ambiguity about which switch is pressed, it keeps the rows and columns in the matrix separate so no current can flow back to other rows/colums when one key is pressed.
You can definitely do 2 simultaneous keys unambiguously without diodes; 3 keys is where you sometimes get "phantom keys" by bridging other rows / columns to each other. Depends on the matrix layout though, if you have say an 8 x 8 matrix for 64 keys and each pressed key is on the same column or row, you can read 8 simultaneously without any problems.
Most PC keyboards leverage this so they can skip diodes, and just route the matrix so that common simultaneous combinations (modifier keys, WASD for games etc.) don't interfere with each other.
Hm. I don't know about that, I thought that the problem already existed for 2 diagonally opposing sets of buttons: you can't tell the difference between the two.
So in essence because the diode solution requires rows times columns diodes and this one only has a couple of parts per row and per column it scales better and for larger keyboards will end up with a substantially reduced parts count and a simpler circuit.
That patent is quite a bit younger than the synth though, so it's kind of logical that that technique would not be used, and my hunch on why they used those diodes back then is likely correct, even if we have a smarter way of doing this now.
On a related note (pun intended) I once had a problem with one of these synths and its rubber contact strip. I would hit certain keys then hear a neighbor note or the same note an octave away. I thought there was a short in the scanning circuitry (I had resoldered some joints that appeared weak earlier by a ribbon connector for the keybed.)
Turns out the rubber contact strip was installed inverted. I think this one didn't have notches to make sure it was oriented correctly. After flipping it, notes sounded as expected.
I repair them to keep them in play, impossible to get some of the parts so I tend to use one that is too far gone to repair a number (usually three or so) of others and then I still end up with some more spares that might come in handy later.
They are incredibly durable, one that I got had been in a fire but it still worked, even though more than half of the keyboard had been burned off. The mainboard went on to repair one that was otherwise good but had a fried CPU. Another one I got had been owned by a touring musician, who apparently didn't know about flight cases :) There wasn't a lick of paint on the outer case. I got it for free because it wouldn't turn on any more. Turned out that the voltage selector had somehow been moved in transport and got stuck between the two settings, leaving it disconnected. That was the fastest fix ever, there simply wasn't anything wrong with it. (And good thing that voltage selector had not been pushed a tiny little bit further because then it would have been end-of-story for sure).
So, I have a pretty large collection of spares, looms, main boards, display boards, keys (they do break, especially as the plastic ages it can get more brittle, more so in synths that have been in the sun), switches, PSUs and so on. Every now and then I put an ad out to get people to sell me their broken ones or to help them out and then a new batch of working DX-7's goes back into the world. It's never going to make me a dime, especially not when counting the time but it feels pretty good to keep these oldies alive, and to see how happy musicians are when their baby works again.
The DX7ii I have is a fucking tank of a machine and I'm playing it until it breaks, fixing it, and then playing it some more. I guess I kind of understand typical "car guys" now.
The best part is being able to map the sliders to /almost/ any parameter within a patch, so it's possible to have expressive control over the tonality of your instrument while playing live. Sure it involves menu diving to figure out ahead of time, but I'm a programmer. It's really more about the joy of being like "this sound needs more wonk, lets tie this parameter to the output of this other function and ooOOOH not what I was expecting but let's go"
Hah! You're using it like it was intended to be used, the DX-7 is first and foremost a performing musician's tool, that's exactly why it was built as strong as it was, made to be tossed in the back of the car on the way to gigs.
Oh man, if only I knew what was wrong with it half the time. I've replaced the ROM with 1.9 since it supposedly has diagnostics but they don't tell me much. I've been trying to design a new cartridge for it, but writing to it is always super funky. The service manual doesn't exactly say what the timings are supposed to be, just the pinout.
Mostly though I've just got some weird dirty hiss (sounds like a rainstorm) on the output all the time that makes it unsuitable for recording. I use DEXED + midi in that case, but it's still fun on it's own (also weirdly I find menu-diving to edit patches easier than being presented with that big DEXED UI)
In the 90s, when FM was considered inherently uncool, the DX7 was the keyboard du jour to use as a controller and subsequently smash to pieces in live sets for industrial, ebm, techno.
They were dirt cheap and as mentioned, insanely solid.
Same thing happened to to the Casio CZ line. I bought one at a time they were very undesirable for $75 and they now go for $500+
I had a CZ101 in the day, preferred the sound from PD synthesis as it was better at base sounds IMHO.
That and the DX7 was used to death and more so - 99% just used the pre-sets and got to stage that you could name the sound they used on a sound and all got cliché.
The only problem with using it as a controller (The original DX7) was that their MIDI implementation was incomplete. So you only got velocity values of 0-100 instead of 0-127. It still has a wonderful key-bed. I've owned a couple of 'em.
Do you work at all with KX88's? I've got one laying around. Got it for the college dorm. Wasn't as good as my acoustic, but it kept my fingers working. How can I contact you directly?
So far I've only seen the originals, a DX7ii would be hard because I don't have a stash of spares for them so the first couple would likely end up as donors.
It's the level of tech that I grew up with so I'm not sure where you'd learn it other than just to get your hands on one and to start digging in. Very few tools required if you stick to the test-and-replace-subsystems level, a screwdriver, a good DVM, a soldering iron (a good one, preferably one that is isolated from mains), a lot of spare time and a notebook so that you can keep track of what you find and build up a store of knowledge over time to help diagnose problems faster.
About 200K DX-7's were made, which is enough that you can find them and not so many that there is no value in repairing them, on top of that the degree to which people are attached to their synths is something that still amazes me. The level of emotion when a dead synth comes back to life with the owners is always quite gratifying, it's some of the best time spent for me.
You don't happen to have a hi-hat decay slider for an MPC60 lying around? Can't find a replacement for the life of me, and I've taken to sad attempts like this when the opportunity arises :D
The cap? Or the actual slider? If you have the specs of the slider I can dig around for a suitable substitute, alternatively I can go on the lookout for a donor synth.
Ah, that's a missed chance. I never thought of that. That one chassis is long gone (I took off it what I could) and the burned keyboard I took apart outside the house. The keys that were still good went into the spares bin.
Next time I have one of these die-hards I'll be sure to take pictures.
If anyone is interested in exploring software based FM synthesis, Csound is capable of doing FM synthesis [1], and can model the Yamaha TX81Z FM Synthesizer [2]. (I had one years ago and I loved the sounds).
> In mathematical terms, FM synthesis is achieved by using the instantaneous amplitude of a sound wave (the modulator) to adjust the rate of change in the phase angle of another wave (the carrier).
> As convoluted as this sounds, it makes more sense when visualised: [1]
Author here: Thanks for pointing this mistake out! I'm not sure how I didn't validate this. I believe the mistake lies in the absolute value aspect of the formula.
Unfortunately I can't find the script I used to create those diagrams. I've been meaning to revisit this article, and update it with some of my more recent discoveries. I'll make sure to update this when I do so!
I'm not sure. Intuitively I would think "phase angle" means "offset into the sine wave lookup table".
If you step through the lookup table with constant size steps, you would get a sine wave. If the steps are not constant size then you get a distorted sine wave. The "rate of change of the phase angle" would then be the step size.
What matters for FM is an instantaneous quantity: the derivative or increment of the instantaneous phase, i.e. how the phase changes from sample to sample.
What is usually called frequency, and has the same value in boring cases like an unvarying sinusoid, is the inverse of the period of the resulting sound as someone would hear it, which is not instantaneous and needs on the order of one period's worth of samples (usually more) to estimate, for a certain definition of period (e.g. interval between zero crossings) or a certain mathematically reasonable calculation (e.g. estimating the frequency of the strongest component from a fixed-length window of past samples).
Author here: This is one reason why I used that term. I was definitely thinking in terms of the 'phase accumulator' looking up the sin table.
Everyone is absolutely right that this is the same as frequency. I think I was used that particular poetic flourish to emphasise how complicated the academic, mathematic explanation is, in contrast with the diagram. Quite likely I picked up that exact phrasing of "phase angle" from some academic literature in particular.
> I think I was used that particular poetic flourish to emphasise how complicated the academic, mathematic explanation is, in contrast with the diagram
is a totally different to what the person you are replying to said
I've edited my post to clarify. It's a reason why I used that term. The second part of my post is not directly addressing what GP said. One of my aims in writing this article was to create something that could be interesting to read, with someone like myself as the target audience. Part of that involves using some artistic flourish.
This is exactly how direct digital synthesis works and the 'step size' is labelled 'frequency' (specifically, frequency in HZ = step size / size of table * update rate)
It helps me to think of the difference between AM and FM radio.
In an AM radio signal, the frequency of the carrier is constant; the amplitude of the audio modulates the amplitude of the carrier.
In an FM radio signal, the amplitude of the audio modulates the frequency of the carrier. That's the difference!
In musical terms, I very much like some analog, and some FM, synthesizers. But certainly, back in the day, getting some rich sounds out of FM synths was a lot cheaper than analog. (Just in terms of the cost of patch cords alone ;-) Without Chowning there wouldn't have been a synthpop era!
If you understand Bessel Basis Functions, or the design and tuning of motorcycle carburetors, then it makes perfect sense. If you are uneducated on these and similar arithmatic summations of wave functions, then it will make no sense.
This was the first thing I scanned the article for. Without interpolation, my understanding is there's likely a TON of aliasing in the raw output, but then that goes through a 16khz lowpass filter that chops everything above 16khz off - cleaning it up.
> Without interpolation, my understanding is there's likely a TON of aliasing in the raw output…
This is not correct, unfortunately. Aliasing is a time domain artifact, affected by the sample rate. The limited table size instead causes distortion, which affects the values.
If you ever run a bitcrusher plugin, you’ll see two sliders—one for bit depth, one for sample rate. Aliasing is affected by the sample rate. This is kind of like the other slider—the distortion slider in a bitcrusher plugin. Although it is like having not one bitcrusher, but many bitcrushers, reducing every signal inside the synthesizer to about 12 bits. Kind of. The distorted signal is evaluated at some sample rate, which also introduces aliasing (in addition to the distortion).
These effects are musically quite distinct. Aliasing is not generally harmonic, distortion generally can be (if you arrange it to be so).
I really appreciated both the technical descriptions (esp. those lookup tables) and the historical portions saying where the DX-7 was in relation to other Yamaha FM synths like the 4-operator ones.
I originally got very interested in this when discovering the YM-2151 chip that made 80's arcade game sounds was also found in pro-audio keyboards. They used a very similar YM-2164. This got me to explore the whole DX line including DX-7, DX-9, DX-27S and that keytar that's still popular for bass and talkbox, the DX-100.
Author here: I wish! I own a TG77, and it's an absolutely amazing synth. While I don't have any direct experience with the SY99, the 77 was so far ahead of its time. The sheer amount of features packed into the synth alone is an engineering feat.
I've got a 99 and, outside of the dated fx and sequencing abilities, I think the only real difference is that you can load your own waves for the RCM modulation? I think you can hack the 77s to do that too.
Oh, and it's even more unbelievably massive and heavy. I will never part with it - they are the most criminally underrated synths, and it's crazy they are still often priced lower than the DX series.
It would be great if someone would built a better live editor for them though.
I have an SY77 that I'm scared of. It's my second oldest synth and yet the deepest, craziest machine of all the studio. I can't fathom the engineering process that went behind it.
How is it possible that no one here mentions Korg‘s wundermachine Volca FM, a tiny DX7 compatible, Dexed/KQ Dixie controllable and cheap midi synth with endless possibilities?
I think I saw somewhere that you can actually tell the LFO is done in software because it actually slows down if you move the sliders a lot while the CPU tries to pay attention to too much at once.
Yeah it's a shame, on the other chips you can get amazingly air-y textures by setting the LFO to noise and then putting the frequency all the way up. See this video for example: https://youtu.be/_xL3qr-9-ZE
Would sacrificing an operator and setting it to constant mode instead of mult work for this? You'd have to use the feedback operator if you wanted something noisy though.
It sounds to me as though a firmware patch should be able to fix that to some extent. The main culprit here is the interrupt service routine, which while tight likely isn't immune to some code golfing.