bool32.rising rnd
int32 count
int32 length
frac32 rand
bool32.mom rand
frac32.s.map width1
frac32.s.map width2
frac32.u.map repeat
int32_t _val[128];
int32_t vol;
int ntrig;
int8_t lng;
int i;
for (i = 0; i < 64; i++)
_val[i] = (GenerateRandomNumber()) >> 4;
{}
ntrig = 0;
int32_t repeat = ___SMMUL(param_repeat << 3, inlet_length << 2);
int32_t gtrig = inlet_count - ((inlet_count / repeat) * repeat);
gtrig = gtrig == 0 ? (1 << 27) : 0;
lng = inlet_length;
if (((param_rand + inlet_rnd) > 0) && (!(ntrig))) {
for (i = 0; i < lng; i++)
_val[i] = (GenerateRandomNumber()) >> 4;
{}
ntrig = 1;
} else if (!((param_rand + inlet_rnd) > 0)) {
ntrig = 0;
}
vol = _val[inlet_count];
outlet_rand = ___SMMUL(vol << 2, param_width1 << 2) +
___SMMUL(gtrig << 3, param_width2 << 2);