int32 startnote
bool32 g0
bool32 g1
bool32 g2
bool32 g3
bool32 g4
bool32 g5
bool32 g6
bool32 g7
frac32.positive v0
frac32.positive v1
frac32.positive v2
frac32.positive v3
frac32.positive v4
frac32.positive v5
frac32.positive v6
frac32.positive v7
int32 startnote
bool gate[128];
uint8_t velo[128];
uint8_t start;
start = (inlet_startnote + param_startnote);
outlet_g0 = gate[start];
outlet_g1 = gate[start + 1];
outlet_g2 = gate[start + 2];
outlet_g3 = gate[start + 3];
outlet_g4 = gate[start + 4];
outlet_g5 = gate[start + 5];
outlet_g6 = gate[start + 6];
outlet_g7 = gate[start + 7];
outlet_v0 = velo[start] << 20;
outlet_v1 = velo[start + 1] << 20;
outlet_v2 = velo[start + 2] << 20;
outlet_v3 = velo[start + 3] << 20;
outlet_v4 = velo[start + 4] << 20;
outlet_v5 = velo[start + 5] << 20;
outlet_v6 = velo[start + 6] << 20;
outlet_v7 = velo[start + 7] << 20;
if ((status == MIDI_NOTE_ON + attr_midichannel) && (data2)) {
gate[data1] = 1;
velo[data1] = data2;
}
if (((status == MIDI_NOTE_ON + attr_midichannel) && (!data2)) ||
(status == MIDI_NOTE_OFF + attr_midichannel))
gate[data1] = 0;