Thursday, December 10, 2009

On the Use of a DC Signal as a Compositional Element for Sega Mega Drive

The Sega Mega Drive's FM chip has a total of six channels, each with four operators. The sixth channel of the YM2612 can act as a basic digital to analog converter, whereby it reads an 8-bit value from memory and converts this directly to an analog voltage of an equivalent value.

Normally, a series of bytes is written to this area of memory - and the value is continuously changed - which is then heard a stream of samples, thereby giving rise to sample playback or software-based synthesis.

However, by simply setting the value of the DAC register without changing it over time, the sixth channel basically outputs a DC (direct current) signal. This DC signal seems to have some interesting interactions with the output of the other FM channels. For example, it is almost as if the DC signal can act as a filter for the other channels.

Here, you can listen to a single operator on channel one (in other words, a simple sine wave). The parameters of the channel playing the sinewave are not changed at all over time. The only element that is changed is the value of the DAC channel, which is slowly ramping down from a value of about 80 to 0 over a four bar length of time.

The musical effect is an interesting one, as both a) the signal sounds like it is slowly being rectified (or a low pass filter is moving up in frequency) and b) more noise from the power supply can be heard as the value approaches 0. Notice the artefact when the DAC value jumps from 0 back up to 80 in a single step. This creates an interesting pop, of course.

Here is an image of the sinewave when the DAC value is at a value of 80.

Here is an image of the sinewave when the DAC is at a value of 0.

The main differences are:
• The main waveform is lower in amplitude
• There are additional, non-smooth portions of the waveform appearing whenever the zero axis is crossed (this would account for what sounds like a filter filter frequency being moved)
• The sinewave is slightly cut off

Here is a slightly more musical example - a chord of five notes with the same DAC values as described earlier.


10k said...

congrats on the exploit dude, that is awesome!