SoftMPU fork with DreamBlaster S2P support
Clone or download
Pull request Compare This branch is 11 commits ahead, 2 commits behind bjt42:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
SRC
.gitattributes
BUILD.BAT
LICENSE
README
SOFTMPU.EXE

README

----------------------------------------
SoftMPU 1.9 - Software MPU-401 Emulator
----------------------------------------
Copyright (C) 2013-2014  bjt, elianda
Copyright (C) 2002-2013  The DOSBox Team
----------------------------------------
Modified for DreamBlaster S2P
----------------------------------------

Release Notes

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

- EMM386 4.46+ (MS-DOS 6.2) or QEMM 7.03+
- DreamBlaster S2P (parallel port MIDI)
or:
- Sound Blaster (or compatible) sound card (MPU-401 & SB-MIDI mode)
- Serial port (Serial MIDI mode)

USING SOFTMPU: DREAMBLASTER S2P MODE

Run SoftMPU specifying the parallel interface to be used and the base port
address of the MPU-401 interface, e.g.

  SOFTMPU.EXE /MPU:330 /OUTPUT:LPT1
  
To enable MT-32 compatibility, add the /MT32 switch to the command line, e.g.

  SOFTMPU.EXE /MPU:330 /OUTPUT:LPT1 /MT32

A Sound Blaster base port address and IRQ can optionally be specified if
MPU-401 interrupts are required.

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

- The DOSBox Team for their intelligent mode MPU-401 emulation code. SoftMPU
  couldn't exist without it!
- Forum members at www.vogons.org for their encouragement and advice :)