void StartEffect(EffectEnvelope s, byte[] effectData, int offset)
{
s.state = EnvelopeState.Attacking;
s.currentLevel = 0;
s.modWheelLast = 31;
s.duration = effectData[offset] * 63;
s.stateTargetLevels[0] = effectData[offset + 1];
s.stateTargetLevels[1] = effectData[offset + 3];
s.stateTargetLevels[2] = effectData[offset + 5];
s.stateTargetLevels[3] = effectData[offset + 6];
s.stateModWheelLevels[0] = effectData[offset + 2];
s.stateModWheelLevels[1] = effectData[offset + 4];
s.stateModWheelLevels[2] = 0;
s.stateModWheelLevels[3] = effectData[offset + 7];
InitNextEnvelopeState(s);
}