using namespace PBD;
using namespace ARDOUR;
-MIDISceneChange::MIDISceneChange (framepos_t time, int c, int b, int p)
- : SceneChange (time)
- , _bank (b)
+MIDISceneChange::MIDISceneChange (int c, int b, int p)
+ : _bank (b)
, _program (p)
, _channel (c & 0xf)
{
}
MIDISceneChange::MIDISceneChange (const XMLNode& node, int version)
- : SceneChange (0)
- , _bank (-1)
+ : _bank (-1)
, _program (-1)
, _channel (-1)
{
buf[0] = 0xB0 | (_channel & 0xf);
buf[1] = 0x0;
- buf[2] = (_bank & 0xf700) >> 8;
+ buf[2] = (_bank >> 7) & 0x7f;
return 3;
}
buf[0] = 0xB0 | (_channel & 0xf);
buf[1] = 0x20;
- buf[2] = (_bank & 0xf7);
+ buf[2] = _bank & 0x7f;
return 3;
}
}
buf[0] = 0xC0 | (_channel & 0xf);
- buf[1] = _program & 0xf7;
+ buf[1] = _program & 0x7f;
return 2;
}