danielrfry / opl2sd1

OPL-compatible driver for Yamaha YMF825 (SD-1)
MIT License
36 stars 5 forks source link

OPL-compatible Yamaha YMF825 driver

This is an OPL-compatible driver for Yamaha's YMF825 FM synthesizer chip (also known as SD-1). It allows playback of OPL2 or OPL3 music on SD-1 by translating OPL register writes to their SD-1 equivalents.

See this video for a demonstration of OPL PC game and tracker music played back on SD-1: https://youtu.be/BEgAx0jngKQ

This repository consists of:

The firmware supports the RetroWave OPL3 serial protocol, allowing it to be used with software such as the RetroWave VGM player, https://www.scummvm.org/ and https://dosbox-x.com/ that supports the RetroWave OPL3 hardware.

Building the firmware

The firmware is written in C++ using the Raspberry Pi Pico SDK. After installing, build the firmware as follows:

$ cd firmware
$ cmake -B build
$ make -C build

Playing VGM files

It's possible to use the RetroWave_Player tool to play back OPL2/3 VGM files using this device. For example:

RetroWave_Player -t tty -d /dev/cu.usbmodem1234561 HITECH3.vgm

More information