One thing SEGA’s MegaDrive/Genesis and the Commodore Amiga had in common was–aside from the Motorola 68000 processor– being known for excellent music in games. As [reassembler] continues his quest to de-assemble Sonic: The Hedgehog and re-assemble the code to run on Amiga, getting the music right is a key challenge. Rather than pull MIDI info or recreate the sound by ear, [reassembler] has written a program called Sonic2MOD to automatically take the assembly file music from the MegaDrive cartridge and turn it into an Amiga-style MODfile. He’s also made a video about it that you’ll find embedded below.
Of course how music gets made differs widly on the two systems. Amiga, famously has Paula, a custom ASIC designed for sampling, allowing you to play four eight-bit voices. The Sega, of course, has that glorious FM-synthesis chip from Yamaha synthesizing five channels of CD-quality sound and one channel of sample. It’s not as well known, but the Sega also has a bonus TI-compatible programmable sound chip (PSG) that can handle 3 square-wave tone channels and one noise channel. That’s ten total channels to the Amiga’s four, and CD-quality to 8-bit voices. Knowing all that, we were very curious how close to SEGA’s original music [reassembler] could get on the Amiga.
Before he could show us, [reassembler] needed to decode the SMPS files used on Sonic: The Hedgehog and many other MegaDrive games. Presumably he could have gotten a MIDI file online somewhere– there are oodles– but the goal was to reverse engineer Sonic from its cartridge for the Amiga, not download a lot of resources from the web. SMPS is a sort of programing language for sound, telling the Yamaha and PSG chips what to do.
In some ways, it’s not unlike the Amiga’s MOD format, which programmatically specifies how to play the sampled voices also stored in the file. Translating from one to another is a matter of reading the SMPS files, extracting the timing, volume, vibrato, et cetera, and translate that into a form the MOD file can use. Then [reassembler] needed to generate samples, which was an added hiccup because the Amiga can only handle 3 octaves vs the seven of the SEGA’s FM synthesizer. He’s able to solve this simply by generating multiple samples to span the Yamaha chip’s range, though, again, at only 8-bit fidelity. It doesn’t sound half bad.
What about the four-channel limit? That’s where a bit of artistry comes in; the automated tool produces MOD files with more voices, which MOD trackers can handle at increased computational load. Computational load you don’t need when trying to play a game. Scaling down the soundtrack to the Amiga’s limits is something [reassembler] already has practice with from his famous OutRun port, though, so we’re sure he’ll get it done.
All of this effort just to match the Mega Drive makes us appreciate what a capable little computer the Sega console was; why, you can even check your stocks with it! We’ve already featured [reassembler]’s Sonic port once before, but this music tool was interesting enough we couldn’t help ourselves coming back to it. The ability to play MOD files were pretty impressive when the Amiga came out, but nowadays all you need is a ten-cent microcontroller.

Is the author making a joke by saying “CD-quality” a bunch when referring to a synth? Because it kinda flew over my head. Synths are very different from PCM sample encoding or any type of sample encoding for that matter.
Not sure about the OPN2/YM2612, but its cousin OPL3/YMF262 used on Sound Blaster cards had (has) a sampling rate of 49,7 KHz.
That’s close to the 44,1 KHz PCM sampling rate of the Audio CD.
The OPN2 might be similar in terms of fidelity.
I think he used the term “CD quality” as a mean to describe the clear nature of the synthesized FM waves of the Yamaha chip.
For example, the Yamaha DX line of synths which ultimately the Genesis inherited its FM synthesis capabilities from, had a 12 bit DAC and a sample rate of 49.1khz (perhaps unusual to compare to CD quality but makes sense to me). The comparison is interesting since the DCPM used for the drum sample channel was considerably lower in fidelity than the FM section. The 3 channel PSG is analog I believe. The genesis sound had a richness due to this, especially compared to 2a03 music
Without filtering, yes. But the Amiga Paula had 4 independent channels that could play at different sampling rates each.
So instruments could play at their native resolution each.
On PC soundcards, by contrast, everything had to be mixed at a high sampling rate, which caused harmonics.
Quality mixing with similar results needed a high-end Pentium processor thus back in the 90s.
That’s why, for example, MOD4WIN used a clever method named IDO to make it happen on the slower, more common 486 processors.
And that’s only with a low numbers of channels, such as with Noise Tracker or Pro Tracker MODs.
There were (are) also MODs with up to 32 (!) channels, however.
With each additional channel causing more CPU/memory load.
These MOD files even make a Pentium II sweat if settings are set to high.
Back then, using an AWE32/64 or Gravis Ultrasound soundcard was the choice for high-quality MOD playback.
These soundcards had a chip that could do the mixing/playback in hardware without a high CPU usage.
The word is spelled Genesis, not Genisis
Thanks, [loser]. Fixed.