YAM - alternative Shruthi-1 firmware

thanks for the quick reply, so everything is alright. Just some getting used to!

@jaki Ok. You can find the internal/midi ordering of oscillator shapes here and the Shruthi editor ordering here



Thank you alot :slight_smile: I got mislead by the manual, thinking the range was limited (not 128 steps, but rather 43) The order isn’t that important to me, just want to programm the synth from my controller.
Although I find the Polivoks filter harder to overdrive with this firmware it’s great work!


Except for differences in levels for new oscillator shapes I don’t understand how the filter sound could be any different with the YAM firmware. Are you sure the right filter board is selected in the system settings?

PS. It’s a totally different with YAM for Ambika, because there’s no filter selection in the firmware on Ambika and a special build for the Polivoks firmware is needed. DS

ah okay, so the new oscillator shapes are lower in level? that explains the filter drive I guess. I’d love to get the polivoks filter to growl in the lower frequencies, but even with the original oscillator shapes this isn’t possible. maybe I should build a feedback loop… hm… :wink:

@jaki No, the new (polyblep) saw/square/case oscillators are actually higher in level. Sometimes resonance behavior can benefit from more headroom (lower level) though, and I’m not sure if this is the case with the Polivoks filter board (I unfortunately don’t have one). Using just one oscillator you could use the ‘mix’ parameter to change the oscillator level into the filter.

Edit: I guess the lack of high pass filtering in the new (polyblep) saw/square oscillators could change the filter response. Maybe more bottom end is actually giving “less growl” for the Polivoks filter. I’m just guessing. Note that the original saw is still available in the YAM firmware if you want to do A/B comparisons (but the I’ve ditched the original square altogether),



Wow… verry nice 8Bit sounds. I wont to try implement this in my Degenerator :slight_smile:

@rolfdegen Thanks! :slight_smile:

Hallo Bjarne

I have difference sound output from CZ_RESO_PLS_LP in Shruthi vs Degenerator (see pic).
yellow: Degenerator
blue: Shruthi

pkz and hpz sound ok.

I think its problem with the carry function in my Degenerator (see source code)

Your code:
if (phase.carry)
{ phase_2 = (shape_ == WAVEFORM_CZ_RESO_PLS_LP) ? 0 : 32768;}

my code:
if (phase < phase_increment)
{ phase_2 = (Osc1.wave_mode == OSC_ZPULS_LP) ? 0 : 32768;}

Oh…sorry. Its my fault !

Osc1.wave_mode its not right. Osc1.mode_value its ok.


@rolfdegen No worries. I hope you find YAM useful!

Yes its nice sounding. where can I find the source code for new sounds? The last is 8.Mai

@rolfdegen The latest and complete source code for YAM is available at GitHub . There you find the README, all source code, and can use the GitHub Compare feature to review individual changes. The latest source code change (for YAM 0.05) was in May 8th. What are you missing?

I can not finde

lpzsaw, pkzsaw, lpzsaw

OK i have found :slight_smile:

@rolfdegen Good to hear. The oscillator shapes you mention are all generated by the same function Oscillator::RenderCzResoSaw.

Yes its easy code for imlement :slight_smile:

Than its a lot of waveform generation with code and a lot of waveforms and samples in Degenerator.

What user name can I sign on the start page of Degenerator ?

@rolfdegen Note that the new polyblep oscillator shapes are Oscillator::RenderPolyBlepSaw , Oscillator::RenderPolyBlepCSaw and Oscillator::RenderPolyBlepPwm .

What do you mean with “What user name can I sign on the start page of Degenerator ?” . On this forum I go by Bjarne, in real life I’m Björn Somell.

For the great help the username is printed on my start screen in Degenerator :slight_smile:

1 Like

@rolfdegen Ahh, thanks! :slight_smile:

1 Like

Hi Bjarne. I missing the fmfb Render in source code !