//Drum machine modified so that playKick plays entire Kick part, not just 1 measure (same for hat) //Usually preferred SndBuf kick => dac; SndBuf hat => dac; "data/kick.wav" => kick.read; "data/hihat.wav" => hat.read; .5::second => dur quarter; spork ~playKickPart(); spork ~playHatPart(); 1::hour => now; fun void playKickPart() { while (true) { playKick(1::quarter); 2.5::quarter => now; playKick(.5::quarter); } } fun void playHatPart() { while (true) { playHat(.5::quarter); .5::quarter => now; playHat(.5::quarter); playHat(.5::quarter); playHat(.5::quarter); playHat(.5::quarter); .5::quarter => now; playHat(.5::quarter); } } fun void playKick(dur howlong) { 0 => kick.pos; howlong => now; } fun void playHat(dur howlong) { 0 => hat.pos; howlong => now; }