Sound Canvas
The Roland Sound Canvas SC-55, released in 1991, was the first General MIDI sound module and quickly became the de facto standard for DOS game music. Most composers wrote and tested their music on Sound Canvas hardware, making it the gold standard for how the soundtrack was meant to sound.
For background on the General MIDI and GS standards, and help deciding which MIDI device to use for a particular game, see the MIDI overview.
dosbox-automation emulates the SC-55 via the Nuked SC55 CLAP audio plugin, providing sample-accurate playback of the actual SC-55 sound engine - as close to the real hardware as you can get without owning one.
Setup
To enable Sound Canvas emulation, set the MIDI device and place the required ROM files:
[midi]
mididevice = soundcanvas
Download the SC-55 ROM files from
here, unpack the
ZIP archive, then move the contents of the Nuked-SC55-Resources/ROMs/ folder
into the soundcanvas-roms directory inside your DOSBox configuration folder:
| Platform | ROM directory |
|---|---|
| Windows | C:\Users\<USERNAME>\AppData\Local\dosbox-automation\soundcanvas-roms\ |
| macOS | ~/Library/Preferences/dosbox-automation/soundcanvas-roms/ |
| Linux | ~/.config/dosbox-automation/soundcanvas-roms/ |
This is what the contents of soundcanvas-roms should look like:
soundcanvas-roms
├── SC-55-v1.10
│ ├── sc55_rom1.bin
│ ├── sc55_rom2.bin
│ ├── sc55_waverom1.bin
│ ├── sc55_waverom2.bin
│ └── sc55_waverom3.bin
├── SC-55-v1.20
│ ...
├── SC-55-v1.21
...
You can also set a custom ROM directory via the
soundcanvas_rom_dir setting.
Note
Sound Canvas emulation is CPU-intensive. You'll need a mid-range or better desktop-class CPU from the last 5--7 years for glitch-free playback. If your system struggles, FluidSynth with a good SoundFont is a lighter alternative.
Tip
You can switch between Sound Canvas models on the fly by changing the
soundcanvas_model setting - no restart needed.
For a hands-on walkthrough of setting up Sound Canvas emulation with a specific game, see the Star Wars: Dark Forces chapter of the getting started guide.
Sound Canvas revisions
The SC-55 went through several firmware revisions. The most important difference is Capital Tone Fallback (CTF) - a Roland GS feature that ensures correct instrument playback when a game requests a GS "variation tone" that isn't available on the module. Without CTF, the module may play silence or the wrong instrument. Many DOS games rely on CTF for correct audio, particularly for percussion and instrument variations.
Due to a patent dispute with Yamaha, Roland was forced to remove CTF from later firmware revisions. This makes the choice of firmware version significant for DOS gaming.
dosbox-automation emulates the following Sound Canvas firmware versions:
| Model | Version | soundcanvas_model | CTF | Notes |
|---|---|---|---|---|
| SC-55 | v1.00 | sc55_100 | Yes | First release; some instrument mapping bugs |
| SC-55 | v1.10 | sc55_110 | Yes | Bug fixes |
| SC-55 | v1.20 | sc55_120 | Yes | Corrected instrument #122; GS reset |
| SC-55 | v1.21 | sc55_121 | Yes | Fixed NRPN processing bugs - recommended |
| SC-55 | v2.00 | sc55_200 | No | CTF removed (Yamaha patent dispute) |
| SC-55mk2 | v1.00 | sc55mk2_100 | No | 28 voices, 354 sounds; no CTF |
| SC-55mk2 | v1.01 | sc55mk2_101 | No | Minor revisions |
The SC-55 v1.21 is the best overall choice for DOS gaming - it has
Capital Tone Fallback, correct instrument mappings, and all known firmware
bugs fixed. dosbox-automation's soundcanvas_model = auto prefers v1.21 when
its ROM is available. Avoid v2.00 and the Mk II versions for games that
rely on CTF.
Games that require Capital Tone Fallback (CTF) for correct audio
These games use GS variation tones that depend on CTF. On SC-55 v2.00 or Mk II firmware (which lack CTF), certain instruments or percussion will sound incorrect or be silent.
Mixer channel
Sound Canvas outputs to the SOUNDCANVAS mixer channel.
Configuration settings
Sound Canvas settings are to be configured in the [soundcanvas] section.
soundcanvas_model
Roland Sound Canvas model to use. One or more CLAP audio plugins that
implement the supported Sound Canvas models must be present in the
plugins directory in your DOSBox installation or configuration directory.
Possible values:
auto(default) -- Pick the best available model.sc55-- Pick the best available original SC-55 model.sc55mk2-- Pick the best available SC-55mk2 model.<version>-- Use the exact specified model version (e.g.,sc55_121).
soundcanvas_rom_dir
The directory containing the Roland Sound Canvas ROMs (unset by default).
The directory can be absolute or relative, or leave it unset to use the
soundcanvas-roms directory in your DOSBox configuration directory. Other
common system locations will be checked as well.
soundcanvas_filter
Filter for the Roland Sound Canvas audio output.
Possible values:
on(default) -- Filter the output. This applies a 1st order low-pass filter at 11 kHz (lpf 1 11000).off-- Don't filter the output.<custom>-- Custom filter definition; see Custom filter settings for details.