Part 1 and part 2 of this series set up the hardware and software infrastructure to support end-user applications using the YM2413 synthesizer. These are discussed in this final instalment.
The first part concluded with the YM2413 hardware and an amplifier on a test Arduino Uno shield. In this and the next part we explore the interface to the device and how to control the hardware to make music.
When researching material for the SN76489 sound generator (documented in these previous articles) I discovered that many early microcomputer systems incorporated both the SN76489 and a YM2413 FM synthesizer. The Yamaha synthesizer looked like an interesting piece of hardware to explore. Here’s the result.
So, after all this effort, what kind of sound does this hardware produce? In this final post I run a few tests and dig into the resulting waveforms.
In the first part we examined the basics of the SN76489 hardware and how to manage it at the hardware interface between MCU and IC.
To enable sound generation experiments, the first thing I did was create a library to allow me to write sketches without worrying too much about this underlying hardware management.
Most computer games from the 80’s are recognizable by the bleeps and bloops they produced for sound. The easiest way to do this to toggle a single I/O pin to generate a square wave but there are some retro sound ICs that allow us to do much better for a minimal investment.
The SN76489 is one such IC that is still available at a very modest price and is easily interfaced to modern microprocessors.