This is first public version of MIDI input patch for Dosbox (win32 only for now). It includes also a partial rewrite of MPU401 with various improvements and better correctness (at least according to it's programming manual).
MIDI input should work with SB UART, SB16 MPU401 port, GUS and MPU401 UART. Intelligent mode input still isn't 100% supported (and isn't tested yet).
In dosbox.conf there is a new variable in midi section "inconfig" which can contain single integer value like 0,1, etc. If set to "none" it should disable input.
Note that I didn't test the patch recently (and only slightly modified it to compile on mingw). diff files were modified by hand, so it is possible that they will not work with the patch app and have to be applied manually. Provided are also .cpp source files of changed files, but they don't match diff files completely (e.g. sblaster.cpp doesn't contain latest mixer changes). Those issues will be corrected in future updates.
To compile on VS2005, check commented part in midi_win32.cpp regarding the midi callback function pointer.
first version, diff and cpp files
cleaned up patch
Logged In: YES
user_id=624122
Originator: YES
Uploaded a new version of the patch. Functionallity is for the most part unchanged, but cleaned up and compiles with the latest CVS. Some experimental stuff is commented out or disabled. Some documentation and configuration options are changed (implementation of it unfinished, work pending).
There is still some work required on it (e.g. some issues with intelligent mode input to be resolved). Archive contains a small info/status/TODO text file.
Only win32 support for the moment.
Full mpu401.cpp is also provided, along with diffs.
File Added: midiinput_19112007.zip
Logged In: YES
user_id=624122
Originator: YES
File Added: midiin_06_01_08.tgz
Logged In: YES
user_id=624122
Originator: YES
File Added: midiin_06_01_08_all.zip
enhanced version, with Alsa input support
Logged In: YES
user_id=624122
Originator: YES
Updated the patch. Main changes include:
-Support MIDI input to (familiar) intelligent mode sequencers (Texture, Ballade, Prism and Midisoft Recording Session)
-improved GUS UART code
-many MPU-401 enhancements,bugfixes (e.g. input syncing in intelligent mode, metronome ...)
-Mutex for locking between midi input thread and dosbox thread for all three devices.
-Alsa input support.
-new midi configuration and setup code.
-midi.h header file for shared definitions of midi-related functions.
As the patch should now already be quite mature, I will shortly open a topic on Vogons to get feedback.