Very nice and true to form - the TB303 had race conditions that made it "program itself" randomly upon activation. Did you fill up the pattern arrays yourself or used an algorithm as well? Oh, and also try to reference the beat pattern array beginning in n*4 instead of 16 for more options.