Support

If you have a problem or need to report a bug please email : support@dsprobotics.com

There are 3 sections to this support area:

DOWNLOADS: access to product manuals, support files and drivers

HELP & INFORMATION: tutorials and example files for learning or finding pre-made modules for your projects

USER FORUMS: meet with other users and exchange ideas, you can also get help and assistance here

NEW REGISTRATIONS - please contact us if you wish to register on the forum

ODD's and EVEN's in ASM

For general discussion related FlowStone

Re: ODD's and EVEN's in ASM

Postby R&R » Sun Nov 26, 2023 10:54 am

Thanks for the feedback Spogg,

Spogg wrote:Modulating Attack time with velocity can be useful for simulating some acoustic instruments.


Also felt like an obligatory must have even for my simple synth to control the Mod Envelopes...

Spogg wrote:I would set the base Attack time to be the longest needed, then reduce the time at higher velocities.


This is similar to the approach I wen't with for my modulation I think... but bidirectional.
Using either (e.g) Attack-knobs current "upwards downwards difference" (up/down ranges) to dynamically set the current maximum for Depth-knob (-) or (+) range. For a better knob-action/response, so as not to overshoot the Attack-knob.

But my implementation feels a bit dumb since Depth-knobs (-) range doesn't have effect when Attack-knob is at 0, and vice versa :) I think that is what's annoying me a bit :D ...and why i'm thinking of an approach to centering mid-velocity (0.5) at current Attack-knob value.
Problem would then become a non linear translation of velocity, Either broken linear, or adding an exponential on top of the part (Attack-knob range) above mid-velocity, that corresponds to current upwards range left on the Attack-knob...

:roll: It's my pan-module all over again :lol: Me and my shitty math LOL
I originally built my pitch 2 pan-module so I could perhaps return to it later and change it for allowing different non-linear panning settings, but I'm not feeling particularly drawn to start altering it any time soon :lol:

Realized i'm missing so much essential knowledge about audio, filter etc in general... better figure out those parts first :lol:

Spogg wrote:For velocity control I cross-fade between poly velocity and 1, so with the velocity response knob at minimum the control value is 1, and if you increase the velocity response knob a softer velocity will give a lower value.


Hmmm... have to think if I can apply this somehow...
R&R
 
Posts: 440
Joined: Fri Jul 15, 2022 2:28 pm

Re: ODD's and EVEN's in ASM

Postby Spogg » Sun Nov 26, 2023 11:07 am

I should add that I generally find if I square the velocity, it gives a better “feel” to my keyboard’s playing, especially for volume. I always keep the standard linear velocity option set on my keyboard, because I believe that’s most compatible for other keyboards.
User avatar
Spogg
 
Posts: 3324
Joined: Thu Nov 20, 2014 4:24 pm
Location: Birmingham, England

Re: ODD's and EVEN's in ASM

Postby R&R » Sun Nov 26, 2023 11:16 am

Spogg wrote:I should add that I generally find if I square the velocity, it gives a better “feel” to my keyboard’s playing, especially for volume. I always keep the standard linear velocity option set on my keyboard, because I believe that’s most compatible for other keyboards.


Hopefully I covered that part with my velocity curve knobs...

Would have to add another translation/mapping after that if' I am to center mid-velocity to current e.g Attack-knob value. I'll see if I can figure out a compromise... It's "cpu" vs "R&R spaghetti schematics" :)
R&R
 
Posts: 440
Joined: Fri Jul 15, 2022 2:28 pm

Re: ODD's and EVEN's in ASM

Postby Tepeix » Sun Nov 26, 2023 2:42 pm

For the pdf, that's a great classic "The art of VA Filter Design"

They are some example here : viewtopic.php?f=4&t=2332&hilit=zdf
viewtopic.php?f=3&t=17775&p=108680&hilit=zdf#p108680
and that's what i try to experiment here : viewtopic.php?f=4&t=121893
Tepeix
 
Posts: 354
Joined: Sat Oct 16, 2021 3:11 pm

Re: ODD's and EVEN's in ASM

Postby R&R » Sun Nov 26, 2023 3:23 pm

Tepeix wrote:For the pdf, that's a great classic "The art of VA Filter Design"

They are some example here : viewtopic.php?f=4&t=2332&hilit=zdf
viewtopic.php?f=3&t=17775&p=108680&hilit=zdf#p108680
and that's what i try to experiment here : viewtopic.php?f=4&t=121893


:D
I see now that Martin also referenced that paper here http://www.dsprobotics.com/support/viewtopic.php?f=4&t=2332&hilit=zdf#p10914

martinvicanek wrote:KG, thanks for asking, I should have posted some references for credit and explanation. The avalanche was set in motion by Vadim Zavalishin with his paper on virtual analog filters. The above schematic is based on a KVR post by mystran and another by Robin Schmidt.


I'm not up to speed with these topics so I missed that post. Too advanced for me anyway :roll:

But reminds me about MV's ZDF filters...
Didn't play nice used with simple feedback loop as in my case, but I think I have an idea how to squeeze them into my synth. 8-) Why not... it's already 98% MV asm, 1% tepeix asm and 1% R&R asm mods and 4000% R&R spaghetti... :lol:

If the ZDFs are kind to the cpu, I might use them as dual filters and use my feedback knob as a spread knob instead for these filters.

Also i'm thinking of adding a noise leakage mode :lol: (=just simple tracking filter+noise) in parallell to main filter. Haven't tried so don't know if that is a fun feature to have. Have to test. Must fit it into the UI somehow if so...

Need to start making more Osc Modules also.
Have to read about filters, and go through Adams paper and maybe take a look at Spoggs Super Saw implementation to see if I can learn from that, maybe create a some "more well behaved" Osc Modules. Not just some Osc's thrown in... :D
R&R
 
Posts: 440
Joined: Fri Jul 15, 2022 2:28 pm

Re: ODD's and EVEN's in ASM

Postby R&R » Wed Nov 29, 2023 7:38 pm

R&R wrote:If the ZDFs are kind to the cpu, I might use them as dual filters and use my feedback knob as a spread knob instead for these filters.


Nice! A fine addition for the next update...

Maybe not entirely consistent logic behind how I hooked up my cutoff and a new "Spread" knob (edit: name undecided :roll: ).
Didn't want to sweep/separate filters freq's in both directions at the same time, due to... reasons. But, the term "Spread" is suggestive of spreading of both filters frequencies. :) I hate naming knobs...
Might change behaviour of knob later on to do so anyway, for some combinations.

Anyway...
Finally some proper Doi Doo Daa Woo Waah sounds from my plugin courtesy of MV's ZDF's :D
R&R
 
Posts: 440
Joined: Fri Jul 15, 2022 2:28 pm

Re: ODD's and EVEN's in ASM

Postby R&R » Fri Dec 22, 2023 2:19 pm

Crappy weather :) going thru my FS-spaghetti and DSPs... :roll:

I failed to convert some DSP snippets to ASM due to that the stage0: behaves very differently from the DSP's :?

Anyways...
Looks like i'm also using some of the Toolbox "S&H by frequency" DSP... and will be adding more of them it seems.

Has someone already written? Or attempted to write ASM versions of the two DSP's found in the Toolbox S&H?
These short DSPs maybe not taxing on the CPU but ASM's are always sweeter when using alot of them... 8-)
R&R
 
Posts: 440
Joined: Fri Jul 15, 2022 2:28 pm

Re: ODD's and EVEN's in ASM

Postby Tepeix » Tue Dec 26, 2023 10:46 am

That's strange, they are supposed to work in the same way.
Maybe an error of syntax, in assembler it's stage0;
I don't use it to much so i always need to refresh my memory, and stage0: seams but do not work.
Tepeix
 
Posts: 354
Joined: Sat Oct 16, 2021 3:11 pm

Re: ODD's and EVEN's in ASM

Postby R&R » Wed Dec 27, 2023 10:35 am

Tepeix wrote:That's strange, they are supposed to work in the same way.
Maybe an error of syntax, in assembler it's stage0;
I don't use it to much so i always need to refresh my memory, and stage0: seams but do not work.


It's a case of me not understanding how to write ASM correctly most likely... :D

For example how output is set and when stage0: occurs. For example when using stage(0){ ... } in DSP, I get a static output if setting "out = 3.14" (3.14 being a float var). DSP then seems to create a variable "out" that is static/set for each sample, and this also occurs when expected, when voice is created/initialized. In ASM it doesn't behave the same, it seems, but I might be wrong :)

I'm not dealing with anything remotely advanced in ASM, rather, alot has to do with "when" the stage:s happen since I have alot of random waveforms, retriggering, sync and similar voice-related stuff :)

Will try and convert all of my DSPs eventually... with varying degrees of success probably :lol:
R&R
 
Posts: 440
Joined: Fri Jul 15, 2022 2:28 pm

Re: ODD's and EVEN's in ASM

Postby Tepeix » Fri Dec 29, 2023 6:12 pm

Seams to works like this for me:
Code: Select all
streamin in; streamout rand;

stage0;
float buffer[100] = rand(-0.5,0.5);
mov eax,0;
movaps xmm0,buffer[eax];
movaps rand,xmm0;
Tepeix
 
Posts: 354
Joined: Sat Oct 16, 2021 3:11 pm

PreviousNext

Return to General

Who is online

Users browsing this forum: Google [Bot] and 76 guests