Please pardon the austere appearance of this site. But I had something I was excited about sharing prior to fixing it back up (after our last theme became obsolete).

The most recent update to xu4 did away with MIDI (except for one song that remains MIDI) and instead now plays back music via “tracker-encoded” *.IT files. While they do sound quite nice, in my opinion, they don’t sound quite authentic.

Personally, I’ve always been partial towards Telavar’s Ultima music which seems to almost perfectly preserve the original tempo/timings while leveraging the superior sample/instrument quality of Roland Sound Canvas MIDI devices.

So, my goal was to make xu4 work with Telavar’s MIDI arrangements. Some googling showed that some had requested the ability to use their own MIDI files and/or MIDI devices with no response for the xu4 developers. This was not promising. Nevertheless, I began experimenting. Unfortunately, there’s no way to send MIDI output via xu4 to an external MIDI playback device (which DosBOX allows). And, if you put MIDI files themselves in the xu4/mid directory, and edit the xu4/conf/music.xml file appropriately, it will play back the MIDI files, but with its own internal MIDI player (via “TIMIDITY” perhaps?).

So, what to do if you have a Roland Sound Canvas (or other preferred MIDI device) and some authentic-sounding MIDIs. . . and you want to use that Roland Sound Canvas to play those MIDIs while playing Ultima IV via xu4?

Well, on a hunch, I just put a digital audio file in the xu4/mid directory and pointed the xu4/conf/music.xml to it. . . and it played as background music appropriately (though it sounded strange in that particular case since the file contained a sound effect and not music)! That first file was an OGG file. Then I tried an MP3. And, finally, a raw WAV file. They all played! The ability to play our own recorded tracks of whatever music we preferred was right there under our noses the entire time.

Expect an addition to the Ultima Digital Music Archive (UDMA) of some Ultima IV music as rendered by a Roland Sound Canvas in the next 24-hours! I’m just tweaking the recordings now but need to get some sleep.

UPDATE: Here (8.8Mb) are the digital recordings and already-edited music.xml file, ready to be placed in your xu4 installation.

Some quick notes: Though xu4 will play back just about any file that is put in its “mid” directory and appropriately indicated in the music.xml file, I noticed some issues when using various types of audio formats. For example, using MP3 files with variable bit rates caused some “squirking” sounds during xu4 playback that were not present when played normally in Windows. Also, track looping in-game was delayed and therefore jarring to the listener. Original/raw WAV file in-game playback was better, but the file size was quite large and for some reason xu4 introduced artifacts to the “shopping” track playback (again, not audible during standard out-of-game playback). Eventually, OGG was settled upon as the best compromise since it introduced no delays, had a reasonable filesize, and the “shopping” track has less artifacting than the raw WAV file.

I have decided not to put the MP3 version up within the Ultima Digital Music Archive because that archive has always served as a place to hear Ultima music as it originally sounded in-game on the premiere music playback devices of each game’s respective era (Roland LAPC-I and then Roland Sound Canvas). Since the MIDIs used in this xu4 music update are adapted from Telavar’s MIDIs that were themselves adapted from the Apple/Commodore Ultima IV music, and are played back on a device that would be years away when Ultima IV was released, the inclusion of these recordings in the UDMA would be inappropriate.

However, for those wanting to hear what these sound like prior to giving them a try in xu4 itself, here is a hastily created ZIP file containing the MP3 versions. Again, use of these MP3s with xu4 is not recommended (use the OGG version instead).


  1. Pingback: Get Roland Sound Canvas Music in xu4!


Comments are closed.