Cheetah MS6 Resource Center

corner_top_left.gif (46 bytes)


corner_top_right.gif (46 bytes)



corner_bottom_left.gif (47 bytes) corner_bottom_right.gif (46 bytes)

Here you can find the current state of development for my two firmware projects: The "Patch" project for improving the original firmware, and  the "MS6/NG" project for completely rewriting the firmware from scratch. If you have any ideas, mail me! Thanks go to Ricard Wolf ( for the inspiration!

corner_top_left.gif (46 bytes) Project "Patch": Planned fixes corner_top_right.gif (46 bytes)
Better program change handling
Possible to use program change messages to select new tone patches for each MIDI channel used in a performance patch.
MIDI bank select
Works like a dream!

Tone mode CC control

Continuous controllers for each tone edit parameter. Makes it much easier to make an editor, but takes a lot of CCs though (59!)...

Performance mode CC control

Extension to the CC control to enable controlling tone edit parameters while in performance mode also - independently for each part! A bit tricky since there is really only one tone edit buffer, but now it's finally in place!
Smarter SysEx dump handling
The MS6 can now accept single tone/performance dumps, and now also supports dump requests for a single tone/performance or all tones/performances.

Edit buffer access via SysEx

It is now possible to just update the performance / tone edit buffer via SysEx (also works for each part in performance mode). Very useful when e.g. auditioning patches from a computer-based editor, since no RAM patches need to be overwritten. Also support for requesting the performance edit buffer (in performance mode) or tone edit buffer (in tone mode).

More DCO shapes

Implemented three extra shape settings, both for DCO A and B: off, pulse + triangle, and pulse + sawtooth. So now using the filter only is possible, as is using the pulse as a sub-oscillator!

Slightly increased bottom range

The timers cannot generate frequencies below 122.1 Hz. C0 is 130.8 Hz, which is quite close to this limit. However, I've managed to remove the annoying partial drop-out at C0 (which makes the sound pulsate).


0,015s - 18,3s (constant time) or 0,44 - 400 semitones/s (constant rate), full-time or fingered (mono mode only, see below).

Mono mode

Settable per-part. Can be set to always retrigger the envelopes, or to skip this when playing legato.
corner_bottom_left.gif (47 bytes) corner_bottom_right.gif (46 bytes)
corner_top_left.gif (46 bytes) Project "MS6/NG": Planned features corner_top_right.gif (46 bytes)
Substantially increased bottom range By using some software tricks to re-program the timers on-the-fly, frequencies below 122 Hz can be generated. Not the easiest thing to do, but it would be pretty nice!
More wave shape waveforms The wave shaper of the CEM3396 is capable of producing more waveforms than just saw and triangle, it can do something in between also. If you view this as a kind of pulse width, add PWM and you will have some really cool sounds.
Both pulse/square and saw/triangle The original firmware only allows either saw/triangle or pulse/square, not both. If you could use them independently, things would get much more interesting.
Matrix-like modulation A general modulation system, like in the Oberheim Matrix.
Dynamic voice allocation Need I say more...
Portamento MIDI controllable of course!
RC-shaped envelopes This will make the MS6 sound even more retro analog.
Programmable pitch drifting Slow, random, but controlled detuning of the voices for simulating VCOs. Amount of the effect controllable.
DCO A detune Ability to detune DCO A also, not just DCO B.
Arpeggiator Would be nice. Sequence should be programmable by MIDI.
12-voice mode Could be implemented with limited filter support (two voices share one filter). Needs to control each DCO separately. DCO sync would produce interesting results!
Filter sweep optionally synched to MIDI clock Allows smooth, sweeping filters that match up with the song's tempo.
corner_bottom_left.gif (47 bytes) corner_bottom_right.gif (46 bytes) - Page updated February 6, 2002