[Kayvon] just finished building this chiptune player based on a PIC microcontroller. The hardware really couldn’t be any simpler. He chose to use a PIC18F2685 just because it’s big enough to store the music files directly and it let him get away with not using an external EEPROM for that purpose. The output pins feed a Digital to Analog Convert (DAC) chip, which in turn outputs analog audio to an LM386 OpAmp. The white trimpot sandwiched between the chips controls the volume.
The real work on this project went into coding a program which translates .MOD files into something the PIC will be able to play. Because of the memory limits of the chip it is unable to directly use all of the instrument samples from these files. [Kayvon] wrote a program with a nice GUI that lets him load in his music and page through each instrument to fine-tune how they are being re-encoded. The audio track from the video after the break doesn’t do the project justice, but you will get a nice look at the hardware and software.
Not sure what the appeal of embedded chiptunes is lately, but it’s a neat little hack nonetheless.
Also, well done Szczys for installing a grammar checker!
Chiptunes != MODs
Mod files contain actualy audio samples while chiptunes are only synthetised at play-time.
“Converted MODs” = Chiptunes.
The conversion excludes all sample data, leaving the microcontroller to synthesize the tracks at run time.
It’s hard to see in the video, but the GUI lets you choose a waveform (square, triange, etc.) to try to match the original MOD sample. Once it’s on the chip, everything it synthesizes. (MOD samples are usually too large for on-chip storage, anyway.)
this is just great. i hope he expands it to more memory/samples. i dream of the day i can carry all my chiptune songs on a tiny little player like this. hack on into the future!
Well done :) Love the simplistic design :)
Sweet.
What chip are you using to implement your DAC?
Cheers