Release Notes (21/01/18)
WHAT IS IT?
SoftMPU is a DOS TSR that emulates an 'intelligent mode' hardware MPU-401 interface. It's designed to work in tandem with the MIDI interfaces found on Sound Blaster and other common sound cards.
WHY'S THIS USEFUL?
Games from the late 80s and early 90s that support music via the Roland MT-32/CM-32L often expect to find a hardware MPU-401 interface that supports 'intelligent mode'. These are now expensive and difficult to find.
By supporting the 'intelligent mode' features in software, these games will work with the basic MIDI interfaces found on sound cards.
REQUIREMENTS
USING SOFTMPU: MPU-401 & SB-MIDI MODE
Run SoftMPU specifying the base port address and interrupt of your Sound Blaster, and the base port address of the MPU-401 interface, e.g.
SOFTMPU.EXE /SB:220 /IRQ:5 /MPU:330
The optional /OUTPUT:SBMIDI switch forces Sound Blaster MIDI to be used. This mode is intended for use with the Sound Blaster Pro 2 and other sound cards without a hardware MPU-401 interface. Game compatibility may be reduced.
USING SOFTMPU: SERIAL MIDI MODE
Run SoftMPU specifying the serial interface to be used and the base port address of the MPU-401 interface, e.g.
SOFTMPU.EXE /MPU:330 /OUTPUT:COM1
A Sound Blaster base port address and IRQ can optionally be specified if MPU-401 interrupts are required.
FURTHER OPTIONS
The optional /DELAYSYSEX switch enables small transmission delays to prevent buffer overflow with the Rev.0 MT-32.
The optional /RA50 switch enables simulated "All Notes Off" commands for compatibility with the Roland RA-50.
SoftMPU will remain active until the PC is restarted. It occupies approximately 8KB and can be loaded into high memory using the LH command.
TROUBLESHOOTING
Problem: When using a PS/2 mouse, moving the cursor causes slow playback. Solution: Use a mouse driver that supports direct hardware access e.g. CuteMouse 2.0 (but not 2.1).
Problem: Some games expect to find an MPU interface on IRQ 2, but my sound card doesn't support it. Solution: Configure your sound card to use IRQ 9.
Problem: SoftMPU can't find a hardware MPU interface when using a Sound Blaster Pro 2 or older sound card. Solution: Run SoftMPU with the /OUTPUT:SBMIDI switch.
Problem: My Rev.0 MT-32 displays "EXC. BUFFER OVERFLOW". Music playback sounds incorrect. Solution: Run SoftMPU with the /DELAYSYSEX switch.
Problem: Music playback stops working after running a specific program. Solution: Restart your PC. Software that reprograms the Real-Time Clock will stop SoftMPU from working correctly.
FURTHER INFO
For compatibility information and serial MIDI cable pinouts, please see http://github.com/bjt42/softmpu/wiki.
BUILDING SOFTMPU
Microsoft C 6.0A & MASM 6.11 are required (earlier versions may work, but are untested).
The default install directories are C:\C600 and C:\MASM611. You will need to edit BUILD.BAT if you have selected different install directories.
Run BUILD.BAT to build SOFTMPU.EXE in the current directory.
DISTRIBUTION
SoftMPU is distributed under the GNU General Public License. Please read LICENSE for further information.
SPECIAL THANKS