Exemple #1
0
		void update(uint8_t cycles)
		{	
			if (!isTransferring() || pending_recieve_) return;

			// if using internal shift clock, run clocking logic
			if (getLinkMode() == Link::Mode::INTERNAL)
			{
				internalClock(cycles);
			}
			else
			{
				// transferring in external clock mode, signal transfer ready
				
				signalReady();
			}
		}
void MSequencer::update()
{
    if(getInternalClock()) internalClock();
    
    for(int i = 0; i < MAX_SEQ; i++) {
        seq* s = _sequences[i];
        if(s == NULL || s->_stopped) continue;
        if(clockTick >= s -> step) {
                if(s -> _steps) {
                s -> trigger();
            } else {
                s->_callback();
            }
            s->step += s -> _subdiv;
        }
    }
}