public TownsMidiOutputChannel(MidiDriver_TOWNS driver, int chanIndex) { _driver = driver; _chan = (byte)chanIndex; _effectEnvelopes = new EffectEnvelope[2]; for (int i = 0; i < _effectEnvelopes.Length; i++) { _effectEnvelopes[i] = new EffectEnvelope(); } _effectDefs = new EffectDef[2]; for (int i = 0; i < _effectEnvelopes.Length; i++) { _effectDefs[i] = new EffectDef(); } _effectDefs[0].s = _effectEnvelopes[1]; _effectDefs[1].s = _effectEnvelopes[0]; }