From Papilio Audio Wiki

Main: YM2149Flash


The YM2149 SPI Flash example shows how to use the YM2149 audio chip that is connected to the ZPUino Soft Processor on the Papilio FPGA hardware.

The YM2149 chip is a popular chiptune device that was used in several classic computing/gaming systems. Some of the better known systems include:

This example sketch shows how to convert a YM file into a data file that can be loaded to the Papilio's SPI Flash file using the smallfs file system. The converted file then becomes available to be played in an endless loop without any dependency on a computer.

There are vast repositories of ym files that provide 8-bit audio goodness to be found with a little googling.

Supported Hardware



(Optional) If you want to convert and load your own ym files:


Technical Details

The YM2149 vhdl file is an open source recreation of the original YM2149 that was created by the good people at by studying the datasheets and characteristics of actual hardware. Originally used for the VHDL recreations of games like Frogger. Inspired by projects like this one where people physically connected YM2149 chips to the Arduino we decided to make a streamlined ZPUino solution that does not require soldering or use up GPIO pins. Shaz and Alvie ported the chip to a wishbone compatible core that can plug into the ZPUino architecture, providing direct register access without using any of the ZPUino GPIO pins. The power of the ZPUino and the large code base of the Arduino allowed cool applications like this player, a streamer, and a MIDI controlled YM2149 synth to be easily and quickly realized!



The example code and documentation is released under a Creative Commons Attribution license. Please use the code any way you want but do the right thing and mention the ZPUino, Papilio, and FPGAArcade if you are porting this project to other hardware. (Yes, we are looking at you Cyber Cortex.)

The source code for the ZPUino is released as BSD style license.

The source code for the YM2149 core is released as GPL.

Please drop us a line if we are missing any attribution or have any licenses wrong.

Retrieved from
Page last modified on April 17, 2012, at 04:07 PM