Skip to content

Use an OPL3 Duo! board in adplay via an Arduino serial port

Notifications You must be signed in to change notification settings

cknave/adplug-opl3duo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 

Repository files navigation

adplug-opl3duo

This Arduino program, along with the adplug-serial and adplay-unix-serial forks, allow adplay to use an OPL3 Duo! board by sending register writes to the Arduino over the serial port.

Now with dosbox support via a dosbox-opl3duo fork!

Arduino setup

  1. Connect the OPL3 Duo! board to the Arduino as the instructions indicate
  2. In the Arduino IDE, install the OPL2 library (Sketch > Include Library > Manage Libraries... > Arduino OPL2)
  3. Open opl3serial.ino in the Arduino IDE
  4. Upload to your device

Adplay

Setup

In this example, I'm going to install adplay to $HOME/.local/:

export PREFIX=$HOME/.local
  1. If you don't have libbinio installed, build and install it first:
git clone https://github.com/adplug/libbinio.git 
cd libbinio
autoreconf --install
./configure --prefix=$PREFIX
make && make install
  1. Build the adplug-serial fork:
git clone https://github.com/cknave/adplug-serial.git
cd adplug-serial
autoreconf --install
./configure --prefix=$PREFIX PKG_CONFIG_PATH=$PREFIX/lib/pkgconfig
make && make install
  1. Build the adplay-serial fork:
git clone https://github.com/cknave/adplay-unix-serial.git
cd adplay-serial
autoreconf --install
./configure --prefix=$PREFIX PKG_CONFIG_PATH=$PREFIX/lib/pkgconfig
make && make install

Usage

Assuming adplay is installed to $PREFIX/bin and your Arduino serial port is /dev/ttyACM0:

$PREFIX/bin/adplay -O serial -d /dev/ttyACM0 <file>

Dosbox

  1. Build dosbox:
git clone https://github.com/cknave/dosbox-opl3duo
cd dosbox-opl3duo
./autogen.sh
./configure --prefix=$PREFIX PKG_CONFIG_PATH=$PREFIX/lib/pkgconfig
make && make install
  1. Update your dosbox.conf file (~/.dosbox/dosbox-SVN.conf by default) sblaster section with oplemu and oplserialport:
[sblaster]
oplemu=serial
oplserialport=/dev/ttyACM0
  1. Run dosbox! It should initialize the OPL3 Duo! on startup.
$PREFIX/bin/dosbox

About

Use an OPL3 Duo! board in adplay via an Arduino serial port

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages