Does the shift register retain data on project save or something? I'm sure there are other ways to achieve a Turing Machine but unless you manage to save the data I don't think it's gonna get much better than what I've made. I only say that cause this is the closest recreation of a hardware Turing Machine that I've ever come across. All the software ones I've tried over the years get something wrong.
Please don't take my suggestion as an offence @Johnisfaster, it's not about the Turing machine part but about handling its output.
Oh no I'm not offended at all I'm genuinely trying to understand how a shift register would improve upon it that's all. I think I'm missing something which is not uncommon for me.
Edit: maybe improve upon it is the wrong wording. What purpose would the shift register be serving? You mentioned making slight variations of a loop but my thinking is that's what the probability knob is for.
Thanks for the hint, I guess I have just found a few "bugs" in the Shift Register module regarding the retainment of values 😉
Shift register is an odd thing. I understand what it's doing but I'm like... What do I do with it?
I guess Ive just not been able to think of a scenario where shifting a value that way would make sense to do other than just for novelty which obviously is not all its for.
Lol dammit now my curiosity is itching.
I just fiddled with one for a moment and the first thought I had was that you can have a note kinda echo from one instrument to the next, or like a round like that old song row row row your boat.
oh hold on now, It could be looked at like a Sample Hold with an 8 slot memory.. hm….
@Johnisfaster trying to understand the shift register module with the following video is what led me to the Turing module, I found it very informative:
@rs2000 even if it wouldn't be an improvement performance- or complexity-wise I'm interested in an implementation with a shift register, just because of the learning opportunity :)
Well, as a proof-of-concept, this is interesting I think:
It would just need some probability module to modulate the lock index, another SR to extend the max steps to 16 and some switches to make the length dynamic.
Edit: here it is
Yes yes! 😃
It does work as-is btw, it's just that it won't retain its values in a project when saved and recalled, or when one of the input lines is disconnected.
The S&H module does so I think the SR module should as well.
BTW, as for one of the many possible SR applications, one is to feed an audio signal into the SR, clock it with with a freely adjustable audio rate and read from its 8 outputs at a different speed (making a low quality resampler) or in a different order (scrambling the waveform, which can be fun when used in synthesis).
Okay so the feedback is being used to retain the loop data by sending it back in is that correct? That's interesting.
Yeah, exactly. And the loop length is determined by which output of the SR is sent back. It also means that steps beyond the current length are overwritten, which is a problem your version doesn't have.
I find myself wondering about cpu efficiency. Is the SR more efficient than using 8 SH’s? Likewise I wonder if 16 SH’s would be more efficient than using 16 Randoms in my patch. I would think the difference would be minimal but I’d still like to know.
Me too, the only way I can think of is connecting it to my Mac and monitor the Drambo process there, but I'm afraid the signal may get lost in the noise of other processes, dynamic CPU switching, etc.
8 S&Hs would require additional logic to work like the SR does, and the SR gives us a convenient and compact design.