There are a few games for MS-DOS with music only through MPU-401, like the platformer Abuse and the RPG Avalon.

Is there a TSR available that intercepts MPU-401 port accesses and transforms them into OPL2 or OPL3 music? I expect the result wouldn't be great, but I'd like to try. I think I could do this by running the games from within Windows 3.1 or 95, but is there a way in just DOS?

  • 1
    Not that I ever needed to understand such things, but didn't SoundBlaster cards always have MPU-401 emulation? Wasn't that done through a DOS driver?
    – dave
    Nov 8, 2020 at 12:58
  • 1
    As I understand it, MPU-401 emulation means that it can act as an MPU-401 interface and connect to other samplers/romplers/synthesizers and send them MIDI messages. If I had a Roland MT-32, I'd connect it to the game port on my SoundBlaster-acting-as-MPU401, and the MT-32 would generate the audio. ---SoftMPU in dirkt's answer is a software upgrade of sorts that lets sounds cards with a not-quite-compatible game port act as MPU-401 interfaces. My issue is that I don't own an external synthesizer of any kind.
    – knol
    Nov 8, 2020 at 13:06
  • 1
    You might be thinking of the SB Live PCI series, which provide the MPU-401 interface but -also- a separate TSR driver for DOS which provides an emulated MPU-401 compatible synthesizer that plays MIDI messages using a soundfont. So any DOS game that supports MPU-401 like Doom can now have its music played using a soundfont. I'm asking if there's something similar to this but playing back through OPL.
    – knol
    Nov 8, 2020 at 13:10
  • Ah, that was probably it - I didn't own a sound card until PCI. Thanks for the details.
    – dave
    Nov 8, 2020 at 13:12
  • Also a couple of other methods you might have come across: AWEUTIL for SB AWE (wavetable) cards pretends to be a MPU-401 device using the on-board wavetable. I believe Windows also redirects midi messages to the currently active driver unless I'm mistaken.
    – knol
    Nov 8, 2020 at 13:25

1 Answer 1


There is SoftMPU, which is a TSR emulating a MPU-401 and redirecting it to the SoundBlaster MIDI ports.

Not exactly what you want, but if you somehow manage to attach a "play MIDI using OPL2 or OPL3" library to it (if CPU speed is fast enough to permit that), it might do what you want.

At least you can use it as a blueprint on how to intercept MPU-401 accesses.

  • I'm aware of that, but it doesn't help me.
    – knol
    Nov 8, 2020 at 12:14

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .