[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.
Continue reading “Chiptune player uses preprocessed .MOD files”
The Atari POKEY served as the main I/O chip on the venerable Atari 400/800 and XL/XE 8-bit computers. While a chip designed to get voltages from game paddles and scanning a matrix of keyboard switches wouldn’t normally be remembered 30 years later, the POKEY had another function: generating very, very distinctive music and sound effects for those old Atari games. [Markus Gritsch] wanted a portable version of the POKEY, so he emulated one on a modern microcontroller. Now he’s able to take those old Atari chiptunes where ever he goes.
The build uses the Another Slight Atari Player by emulating a 6502 and POKEY chip inside [Markus]’ PIC32MX-based microcontroller. There’s not much physical hardware [Markus] had to deal with – the board is built on a QFP proto board [Markus] picked up with a few buttons and a jack added for some simple I/O.
This isn’t [Markus]’s first attempt at portabalizing chiptunes – last year, we saw a truly awesome portable SID player that used the same PIC32 microcontroller and an emulated 6502. Between the Atari SAP Music Archive and the High Voltage SID Collection, [Markus] has more than enough chiptunes for days of listening pleasure.
Finally one device combines the power of the Commodore 64 SID, Atari ST YM2149, and Amiga MOD audio into one awesome box. It’s called the RetroCade Synth, and there’s a Kickstarter that is perfect for starting your chiptune composing journey.
[Jack]’s RetroCade synth is connects directly to the Papilio One 500k FPGA. All the classic chiptune ICs can be emulated in this FPGA including the Commodore 64 SID chip, and an Amiga MOD player. Being a follow-up to [Jack]’s previous FPGA YM2149 project, he also threw that chip into the project for good measure. While the RetroCade doesn’t ship with every old chiptune IC – there isn’t support for NES, Atari, GameBoy, or SN76489-based chiptunes yet – that is something [Jack] will add once the Kickstarter is completed.
After the break you can see [Jack] jamming out on his RetroCade project playing a YM2149, SID, and Amiga MOD sounds simultaneously. For $100, it’s comparable to the venerable MIDIbox SID, but also allows anyone to play whatever genre of chiptunes they desire.
Continue reading “Putting every chiptune ever in an FPGA”
From time to time we find ourselves in the mood for some Chiptunes. You know, the music that accompanied all of the best 8-bit console games? These days there are a lot of projects that use the audio chips of yore to recreate the sounds, but you’re always faced with the issue of sourcing those parts. [Jack Gassett] took some inspiration from one of those projects, but solved the rare hardware dilemma by building his own Chiptunes MIDI device in an FPGA.
He saw one of our features on an Arduino controlled YM2149 programmable sound generator. He realized that you can already find FPGA libraries out there that mimic this sound generation hardware, and he’s already done extensive work with an Arduino soft processor. Why not combine the two?
He’s using a Papilio FPGA with a wing that includes a MIDI connector and audio-out jack. As you can hear in the clip after the break this sounds just like the real thing. And he’s got plans to roll as many different types of sound generating chips into the mix as possible. You know, one FPGA synth to rule them all.
Continue reading “Building an Arduino Chiptunes project inside an FPGA”
[Oryx] grew up with the bleeps and bloops of an Atari ST, so it comes as no surprise he would want to relish in his nostalgia by playing with the YM2149 sound generator he recently picked up on eBay. Like most of us, [Oryx] went to his old standby, the Arduino, when it came to connect this bare chip to his computer. The first circuit didn’t work, so after a lot of poking around the firmware, [Oryx] discovered the benefits of hand-optimizing software.
There are a lot of sound files available for the YM2149 floating around on the Internet. These files are just dumps of the 16 registers at 50Hz, so it’s very easy to send these from a computer to an Arduino over a serial connection. Unfortunately, when [Oryx] got his breadboard set up nothing happened. After breaking out the ‘scope, he discovered the Arduino was switching pins 100 times slower than the YM2149 data sheet called for.
[Oryx] remembered seeing a great blog post going over the speed at which the digitalWrite() function changes pin states. We’ve seen this before, and the fastest way to change pin states on the Arduino is with the ugly bitwise manipulation. After changing a few lines of code, [Oryx] was switching two pins nearly simultaneously.
Now that the YM2149 chip is working correctly, [Oryx] is planning to make a MIDI synth out of his project. You can get an idea of how that will sound with the demo video he put up after the break.
Continue reading “Playing chiptunes with a YM2149 and optimizing an Arduino”
If you’ve never been to a chiptune show – yes, they exist – you’ve noticed the awesome visuals behind the performers that are usually displayed with a glitching NES. If it’s a really good show, that 8-bit visualization will be in sync with the music and may actually serve as a lo-fi spectrum analyzer. [Andy] came up with his own visualization system for a Sega Genesis or Megadrive. With 16 bits behind his build, we’ll say if far surpasses the lowly NES.
For his visualization, [Andy] feeds audio into an ATMega328 and the ever-popular MSGEQ7 seven-band graphic equalizer IC. The output from the EQ goes straight to the second controller input of a Sega Nomad [Andy] had lying around that is running a custom ROM for his show. The ROM is programmed in tandem with the microcontroller project to serve as a spectrum analyzer for his shows.
You can check out [Andy]’s visualization with the chiptunes of Danimal Cannon after the break. We would prefer a demo featuring An0vA and the code for the microcontroller, but it’s still a very nice demo indeed.
Continue reading “Adding visuals to chiptune performances”
Wow. And furthermore, WOW! Just looking at that clean prototype you know that a lot of work has gone into the project, but when you hear this chiptune MIDI device you’ll really be impressed. We know what you’re thinking, but really, you’ve got to hear this to appreciate the quality [Linus Akesson] achieved in this synthesizer. You can catch it after the break.
He does a great job of showing off the different waveforms that can be produced by the ATmega88 on this board. But there’s much more. It also serves as a 16 frame, 16 channel sequencer for creating and layering your own loops.
He mentions that eight oscillators are used for the waveform generation. We don’t see hardware for this on the board. Either we’re missing it, or these oscillators are being created with software? If you have an idea of how this works please clue us in by leaving a comment.
Continue reading “Bitbuf delivers some of the best chiptune effects around”