diff --git a/src/music/os2_m.cpp b/src/music/os2_m.cpp --- a/src/music/os2_m.cpp +++ b/src/music/os2_m.cpp @@ -12,6 +12,7 @@ #include "../stdafx.h" #include "../openttd.h" #include "os2_m.h" +#include "../base_media_base.h" #define INCL_DOS #define INCL_OS2MM @@ -49,11 +50,13 @@ static long CDECL MidiSendCommand(const /** OS/2's music player's factory. */ static FMusicDriver_OS2 iFMusicDriver_OS2; -void MusicDriver_OS2::PlaySong(const char *filename) +void MusicDriver_OS2::PlaySong(const MusicSongInfo &song) { + if (song.filetype != MTT_STANDARDMIDI) return; + MidiSendCommand("close all"); - if (MidiSendCommand("open %s type sequencer alias song", filename) != 0) { + if (MidiSendCommand("open %s type sequencer alias song", song.filename) != 0) { return; }