int32.positive startNote
bool32.rising trig
bool32.risingfalling clear
None
bool32.tgl clear
objref seq
spinner a1
spinner a2
spinner a3
spinner a4
spinner a5
spinner a6
spinner a7
spinner a8
spinner b1
spinner b2
spinner b3
spinner b4
spinner b5
spinner b6
spinner b7
spinner b8
bool ntrig;
uint8_t step[16];
uint16_t skip;
step[0] = attr_a1;
step[1] = attr_a2;
step[2] = attr_a3;
step[3] = attr_a4;
step[4] = attr_a5;
step[5] = attr_a6;
step[6] = attr_a7;
step[7] = attr_a8;
step[8] = attr_b1;
step[9] = attr_b2;
step[10] = attr_b3;
step[11] = attr_b4;
step[12] = attr_b5;
step[13] = attr_b6;
step[14] = attr_b7;
step[15] = attr_b8;
if (inlet_trig && !ntrig) {
ntrig = 1;
int i;
if (param_clear || inlet_clear) {
for (i = 0; i < 512; i++)
attr_seq.array[i] = 0;
}
for (i = 0; i < 16; i++) {
skip = i << 5;
while (attr_seq.array[skip])
skip++;
attr_seq.array[skip] = inlet_startNote + step[i] + 1 + (127 << 8);
while (attr_seq.array[skip])
skip++;
attr_seq.array[skip] = inlet_startNote + step[i] + 1;
}
}
if (!inlet_trig)
ntrig = 0;