diff options
author | Niels Martin Hansen <nielsm@indvikleren.dk> | 2019-07-04 21:14:41 +0200 |
---|---|---|
committer | Niels Martin Hansen <nielsm@indvikleren.dk> | 2019-07-04 22:27:34 +0200 |
commit | 27384486e486ea2ced69b48f5174577317108731 (patch) | |
tree | 99a63f13ce4450bded86b245e9518faacbdfd222 /src/music/dmusic.cpp | |
parent | 9d8a83bf8d6f1753ea7dc99faa94695c050d818c (diff) | |
download | openttd-27384486e486ea2ced69b48f5174577317108731.tar.xz |
Codechange: Use common source for well-known SysEx messages in Windows music drivers
Diffstat (limited to 'src/music/dmusic.cpp')
-rw-r--r-- | src/music/dmusic.cpp | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/src/music/dmusic.cpp b/src/music/dmusic.cpp index f160b3f08..65e2d4c83 100644 --- a/src/music/dmusic.cpp +++ b/src/music/dmusic.cpp @@ -559,9 +559,11 @@ static void TransmitSysex(IDirectMusicBuffer *buffer, REFERENCE_TIME rt, const b msg_start = msg_end; } -static void TransmitSysexConst(IDirectMusicBuffer *buffer, REFERENCE_TIME rt, const byte *msg_start, size_t length) +static void TransmitStandardSysex(IDirectMusicBuffer *buffer, REFERENCE_TIME rt, MidiSysexMessage msg) { - TransmitSysex(buffer, rt, msg_start, length); + size_t length = 0; + const byte *data = MidiGetStandardSysexMessage(msg, length); + TransmitSysex(buffer, rt, data, length); } /** Transmit 'Note off' messages to all MIDI channels. */ @@ -618,11 +620,9 @@ static void MidiThreadProc() clock->GetTime(&cur_time); /* Standard "Enable General MIDI" message */ - static byte gm_enable_sysex[] = { 0xF0, 0x7E, 0x00, 0x09, 0x01, 0xF7 }; - TransmitSysexConst(_buffer, cur_time, &gm_enable_sysex[0], sizeof(gm_enable_sysex)); + TransmitStandardSysex(_buffer, block_time + 20, MidiSysexMessage::ResetGM); /* Roland-specific reverb room control, used by the original game */ - static byte roland_reverb_sysex[] = { 0xF0, 0x41, 0x10, 0x42, 0x12, 0x40, 0x01, 0x30, 0x02, 0x04, 0x00, 0x40, 0x40, 0x00, 0x00, 0x09, 0xF7 }; - TransmitSysexConst(_buffer, cur_time, &roland_reverb_sysex[0], sizeof(roland_reverb_sysex)); + TransmitStandardSysex(_buffer, block_time + 30, MidiSysexMessage::RolandSetReverb); _port->PlayBuffer(_buffer); _buffer->Flush(); |