[Scummvm-cvs-logs] scummvm master -> 46babcc3c4cd062b2d442435039ea67cff46b61b

Kirben kirben at optusnet.com.au
Thu Jul 2 12:32:01 CEST 2015


This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .

Summary:
46babcc3c4 MADE: Add Miles support for RTZ, currently disabled for Adlib due to known issues.


Commit: 46babcc3c4cd062b2d442435039ea67cff46b61b
    https://github.com/scummvm/scummvm/commit/46babcc3c4cd062b2d442435039ea67cff46b61b
Author: Kirben (kirben at optusnet.com.au)
Date: 2015-07-02T20:30:49+10:00

Commit Message:
MADE: Add Miles support for RTZ, currently disabled for Adlib due to known issues.

Changed paths:
    engines/made/music.cpp
    engines/made/music.h



diff --git a/engines/made/music.cpp b/engines/made/music.cpp
index b2917b5..b11f071 100644
--- a/engines/made/music.cpp
+++ b/engines/made/music.cpp
@@ -28,11 +28,30 @@
 #include "made/resource.h"
 
 #include "audio/midiparser.h"
+#include "audio/miles.h"
 
 namespace Made {
 
-MusicPlayer::MusicPlayer() : _isGM(false) {
-	MidiPlayer::createDriver();
+MusicPlayer::MusicPlayer() : _isGM(false),_milesAudioMode(false) {
+	MidiDriver::DeviceHandle dev = MidiDriver::detectDevice(MDT_MIDI | MDT_ADLIB | MDT_PREFER_MT32);
+	MusicType musicType  = MidiDriver::getMusicType(dev);
+
+	switch (musicType) {
+	case MT_ADLIB:
+		// Adlib disabled due to known issues
+		//_milesAudioMode = true;
+		//_driver = Audio::MidiDriver_Miles_AdLib_create("SAMPLE.AD", "SAMPLE.AD");
+		MidiPlayer::createDriver();
+		break;
+	case MT_MT32:
+		_milesAudioMode = true;
+		_driver = Audio::MidiDriver_Miles_MT32_create("");
+		break;
+	default:
+		_milesAudioMode = false;
+		MidiPlayer::createDriver();
+		break;
+	}
 
 	int ret = _driver->open();
 	if (ret == 0) {
@@ -46,6 +65,11 @@ MusicPlayer::MusicPlayer() : _isGM(false) {
 }
 
 void MusicPlayer::send(uint32 b) {
+	if (_milesAudioMode) {
+		_driver->send(b);
+		return;
+	}
+
 	if ((b & 0xF0) == 0xC0 && !_isGM && !_nativeMT32) {
 		b = (b & 0xFFFF00FF) | MidiDriver::_mt32ToGm[(b >> 8) & 0xFF] << 8;
 	}
diff --git a/engines/made/music.h b/engines/made/music.h
index 95d1bd3..9c92cd0 100644
--- a/engines/made/music.h
+++ b/engines/made/music.h
@@ -51,6 +51,7 @@ public:
 
 protected:
 	bool _isGM;
+	bool _milesAudioMode;
 };
 
 } // End of namespace Made






More information about the Scummvm-git-logs mailing list