double timestep(void) { if (is_end_of_sequence) return 0.0; if (is_zero_timestep) { play_next_note(); is_zero_timestep = false; } else if (is_next_note_time(pos_t)) play_next_note(); pos_t += dt; return vibro.timestep(); }
/* Handles all speaker events. */ void speaker_events(void) { if(duration_cutoff) { duration_timer += timer_interval_int(); if(duration_timer >= duration_cutoff) { disable_speaker_timer(); play_next_note(); } } }