dmband: Set DMUS_PATCH_PMSG bank LSB/MSB from instrument patch.
This commit is contained in:
parent
10a1e533c3
commit
e9fdbe4d55
1 changed files with 8 additions and 0 deletions
|
@ -496,6 +496,7 @@ HRESULT band_send_messages(IDirectMusicBand *iface, IDirectMusicPerformance *per
|
|||
|
||||
LIST_FOR_EACH_ENTRY_REV(entry, &This->instruments, struct instrument_entry, entry)
|
||||
{
|
||||
DWORD patch = entry->instrument.dwPatch;
|
||||
DMUS_PATCH_PMSG *msg;
|
||||
|
||||
if (FAILED(hr = IDirectMusicPerformance_AllocPMsg(performance, sizeof(*msg),
|
||||
|
@ -510,6 +511,13 @@ HRESULT band_send_messages(IDirectMusicBand *iface, IDirectMusicPerformance *per
|
|||
msg->dwGroupID = 1;
|
||||
msg->byInstrument = entry->instrument.dwPatch;
|
||||
|
||||
msg->byInstrument = patch & 0x7F;
|
||||
patch >>= 8;
|
||||
msg->byLSB = patch & 0x7f;
|
||||
patch >>= 8;
|
||||
msg->byMSB = patch & 0x7f;
|
||||
patch >>= 8;
|
||||
|
||||
if (FAILED(hr = IDirectMusicGraph_StampPMsg(graph, (DMUS_PMSG *)msg))
|
||||
|| FAILED(hr = IDirectMusicPerformance_SendPMsg(performance, (DMUS_PMSG *)msg)))
|
||||
{
|
||||
|
|
Loading…
Add table
Reference in a new issue