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”
[Mark] had seen a few examples of algorithmic music generation that takes some simple code and produces complex-sounding results. Apparently it’s possible to pipe the output of code like this directly to audio devices on a Linux box, but [Mark] decided to go a different direction. His project lets you play simple algorithms as audio using AVR microcontrollers.
Now the code work for this is very simple, but he hardware implementation is where things get interesting. Ostensibly, [Mark] didn’t have the components available to build a filter to use PWM as an audio signal. Being that he’s a ham operator, he grabbed some radio equipment he had on hand and whipped up an alternative. He’s feeding the PWM from an Arduino into the voltage controlled oscillator on a board meant for high-altitude balloon telemetry. The signal broadcast by this board is then picked up by his radio receiver, and played on some speakers.
Rube-Goldberg contraptions aside, the effect is pretty interesting, as you can hear in the latter half of the video clip which we’ve embedded after the jump.
Continue reading “AVR chiptune project turns this simple code into music”