I used to play the 960 in my younger days. The skip switches were very cool, but so was the jump push buttons. When you push them, the sequencer would jump to that stage. Lots of fun to play interactively._________________--Howard
my music and other stuff

Beefed it up a bit so it works with the ClkGen.
Also did one fundamental change, the idea being that when one step is skipped only one extra pulse should be generated. So, two pulse for one skip, three pulses for two skips, etc. I don't think that works very well with switching between a fast and a slow clock. So here the gate pulse is slightly delayed, ANDed with the seq pulse and XORed with the original clockpulse. Which seems to more reliably skip one, two or more steps in a row.

I don't understand why the fast osc works.
If both inputs are zero, then XOR should return a zero.
So how does it ever get out of the initial state?

Ypu are right, it can't work.

I started with an inverter and then thought I needed some more logic and so dropped in a logic module. Next thing was that I thought an xor could invert for me and so I could drop the invertor. And of course it can invert but it only does so when it's other input is a one. I ended up not needing additional logic, but left in the xor, and the error.

Well, I wondered why the S&H was late. Now I nailed it down to this: when an inverter is connected between the gate output on the seq and the seq is set to trig mode the trigs plus inverter work as a high frequency generator racing through the steps. Then another clock can simply be combined with a NOR function instead of the inverter. Using a XOR does weird things. It all can be monitored by connecting the seq clock to an audio output.
An extra S&H to prevent the 'fast' steps (the skipping takes a little time) to be output does not work straightforward, the S&H is just always one step late. Beats me how to solve that one.

Jan, in your patch it is the switch that actually interrupts the clock signal and so works the same as an inverting function. It doesn't even need the other input.

My guess is that it all boils down to this:

By not using the S&H it works like one would expect. The thingy can be speeded up to minimize the skip glitches by connecting any red output to one of the inputs of the unused gate on the gate module. Though that eats dsp. A glide module on the output of the seq and set to a couple of millisecs might be a better idea. I suppose it depends a bit on how fast the attack and decay times of the envelope would be. Only on superfast blips the glitches might possibly be audible.

Jan, in your patch it is the switch that actually interrupts the clock signal and so works the same as an inverting function. It doesn't even need the other input.

Ok, that makes sense - not quite what I intended though ...

I had some glitches as well in the original that's why in the patch I inserted a sample & hold - had not noticed it to be late, but that's nothing strange for a free running beat clock of course - it only matters when using a truely synced clock where some beat has to be 'first'.

A glide set to some 2 .. 3 ms seems to eliminate the glitches without touching the steps too much. That is to up to about 20 Hz (1200 BPM), it's kind of hard to decide what is contributed by glitching and what is contributed by the staircased nature of the sequencer output itself - especially when the beat goes audio rate (lets say above 20 Hz or so).

I tried delaying the seqencer clock a bit (with a S&H), but that doesn't help much, it makes things worse even as the glitches get longer.

Making the thing go at audio rates more than doubles the DSP %, no option I agree ...

Another question...could anyone post an example of step sequencer with speeding up on certain steps (like on ARP sequencer where you can patch one of the Gate busses to Clock FM and use it to speed the sequence at steps where that gate bus triggered)...

Another question...could anyone post an example of step sequencer with speeding up on certain steps...

Here is an example with both skips and four possible note lengths. Note lengths is not that difficult, you just need to generate a couple of different speed pulses and then use a mux to select one of them on each step. Note that the XMUX has the advantage that the control range is 0 to 64 units for the eight switch positions. Of course the x-fade should be off when selecting pulses.

And no, Mosc! It cannot run backwards!

SkipsAndTimesSeqExample.pch2

Description:

Patch that shows how a sequencer can have different length steps plus how to skip certain steps. Steptime and skip control is by the yellow sequencer module.

True, it won't run backwards, but if we are looking for something to do what a Moog 960 sequencer did, then that's not a problem because it couldn't run backwards either.

The 960 had another very nice feature for interactive performace, the jump button. These were little push buttons that would force the sequencer to any stage; sorta like 8 individual asychronous reset switches.

I think that to get a really dream sequencer, the G2 would need a binary up/down counter with asynchronous preset module. Then, with the D/A and the Control Sequencer modules, you could build a 960 type device which could go forwards and backwards.

Back to the 960, there was an option for a sequencer switch module, which was basically a multiplexer. This was very powerful. The 960 had I think tree rows of knobs. With the sequencer switch, you could select the rows with voltage control. This would be no problem with the G2 becuase you could run several sequencer modules in parallel and use the G2's switch and mux modules to your hearts delight. So, what we need is only the binary up/down counter with asychronous preset - then there would be global happiness and world peace. _________________--Howard
my music and other stuff

A counter has some internal state, it's current count. Presetting a counter sets the state to be equal to the value you apply with the preset value (which for a binary counter is a couple of lines carrying a binary value).

This presetting can be done either clock-synchroneous or clock-asynchroneous. When synced the value will be taken on the next active edge of the clock, async means: set it immediately. For a synced preset it would be nice to store the preset value temporary into a preset register, so it can be taken away fom the input and still be available on the next active clock edge.

I was wondering though whether the clock should be reset as well on an async counter update - probably not I guess to keep the beat unbroken.

For a G2 implementation there is no real need to make the mechanism truely binary as one single signal line can have multiple values. When required a binary value can always be made using an AD converter module.

For a sequencer implementation iit would be nice to have as many presets available as there are sequencer steps. The presets could be jammed in on a button press.

Rob's final version of Jan's original patch works great with a bit ot tweaking. This is much, much simpler and better than my original attempt at at a similar patch which I posted as a performance a few months back. I find it difficult to understand what some of the logic modules are supposed to do - you guys obviously know what you're doing!

You cannot post new topics in this forumYou cannot reply to topics in this forumYou cannot edit your posts in this forumYou cannot delete your posts in this forumYou cannot vote in polls in this forumYou cannot attach files in this forumYou can download files in this forum

Please support our site. If you click through and buy from our affiliate partners, we earn a small commission.