protected void HandleDeferredCommands(MidiDriver midi)
{
uint advance = midi.BaseTempo;
foreach (var cmd in _deferredCommands)
{
if (cmd.TimeLeft == 0)
continue;
if (cmd.TimeLeft <= advance)
{
DoCommandInternal(cmd.A, cmd.B, cmd.C, cmd.D, cmd.E, cmd.F, 0, 0);
cmd.TimeLeft = advance;
}
cmd.TimeLeft -= advance;
}
}