Work at SourceForge, help us to make it a better place! We have an immediate need for a Support Technician in our San Francisco or Denver office.

Close

Sidney and sid2 softsynth discussions

Andrew C
2009-05-27
2013-05-23
  • Andrew C
    Andrew C
    2009-05-27

    I just took a quick look at the -sid2, and maaan, I think if this was a hardware synth, I'd push all the buttons under the PolyV3 section and then hope for the best!

    I'm liking the two LFOs, should be interesting...

    But seriously, do you have a vague idea what the 42 buttons and 18 knobs under the PolyV3 section?

    Andrew.

     
    • Nick Copeland
      Nick Copeland
      2009-05-27

      Yeah, all those buttons. The SID Voices are now just SID2 Oscillators, each voice in this model will have one SID chip with three Osc, three Env, one filter (I need to change the graphic), then the mods are something like this:

      There are 6 mod busses, they can be sent to the same mods as the SID, ie, Osc-1 freq/pw, Osc-2 freq/pw, Osc-3 freq-pw and the filter. What you will be able to do is mix 2xLFO, 2xENV and Osc-3 osc/env onto these six busses and then decide where to route them.

      Mixing LFO and Env onto the busses will affect all the voices - they are Mono mods as there are just one set of them for all voices. The Osc-3 mods are Poly mods, ie, each SID2 voice has an Osc-3 which can be used as an envelope into its filter, or another LFO for its own Osc-1 and Osc-2. Because there is one for each voice they are polyphonic - you need to look at Osc-3 as another LFO and Env per voice and they can also be routed to the same 6 busses to the same destinations.

      The 18 knobs are to allow you to mix different levels of Osc-3 to th.e six busses. These witll probably not have Modwheel control, I prefer to make them touch (ie, velocity) sensitive.

      There is even more wild stuff I might do with the mods if it makes sense however it is a bit difficult to explain that right now.

      Regards,

       
    • Andrew C
      Andrew C
      2009-05-27

      Wow, a very comprehensive summary! I look forward to playing around with it!

      But Nick, I feel I must make a case FOR putting in pitch bend to both the Sidney and the Melbourne (Australian cities! Nice one):

      It's much easier to do pitch-bends accurately with the pitch wheel than with the modwheel, as another benefit for putting the pitch bend in, this could free up the modwheel for other modulation effects (I.E The LFO).

      "The SID Voices are now just SID2 Oscillators, each voice in this model will have one SID chip with three Osc, three Env, one filter"

      I'm confused here, the 3 sid voices will have one sid chip with three Osc, Three (amplitude) envelopes and one filter EACH? Are you supposed to be able to program all three oscs on one chip three times, thereby totaling the number of oscs/polyphony to, like, 18?

      Thanks a million,

      Andrew.

       
    • Nick Copeland
      Nick Copeland
      2009-05-27

      > It's much easier to do pitch-bends accurately with the pitch wheel than with the modwheel

      Agreed.

      I will separate them out, pitch and mod. The GUI will not change, ie, it will still only show one control wheel and it will send both messages, ie, Pitch and Mod, but your midi controller will have both of them. Does that sound OK?

      Will have to answer your question on the sid chip assignment tomorrow. Basically the SIDney emulator has one chip, it does three voices. SID2, Melbourne, will have 5 voices, one chip each, so what appears as a voice to SID is now just an oscillator for a SID2 voice.

      I know that is not clear. Perhaps consider melbourne to be 5 sidney in a box?

      Still considering some details of Canberra - a Capital synth.

      Nick

       
    • Andrew C
      Andrew C
      2009-05-28

      Ok, so SID2 will be 5 sidney in a box, so does that mean that it's either

      a) 5 note polyphony that uses 3 voices per note? A mean lean 3-oscs-per-key machine?

      or

      b) 5 note polyphony that uses one voice per note?

      Again, I'm being slightly confused here...

      Andrew.

       
    • Andrew C
      Andrew C
      2009-05-28

      Hm actually, re-reading your first post,

      "The SID Voices are now just SID2 Oscillators, each voice in this model will have one SID chip with three Osc, three Env, one filter"

      I think I understand what you mean.

      Each of the 'VOICE's at the top of the Melbourne synth will drive 1 SID chip each?
      So Voice-1 would really be 3 oscs/envs instead of one? And if I selected, say a pulse wave on the melbourne GUI, all three oscs that are controlled by that Voice will be pulse?

      I hope I'm getting this right. :/

      Andrew.

       
    • Nick Copeland
      Nick Copeland
      2009-05-28

      It is case (a). Sidney has just one chip for the audio, the three voices were the three voices from that chip. The one I am working on will have 5 chips, one for each of 5 voice polyphony, each voice with three oscillator/envelope pairs and one filter. The filter will be able to use the Env from voice-3 and mods will be able to use the Osc from voice three (as examples).

      The chip was designed such that its 'voice-3' could be muted, ie, not heard, and then its osc and env are available to be used for whatever other purpose - as mods to the other voices. This was typically not used in the C64 as it left just two voices and the mods could be generated by the CPU anyway. In this synth, for now called canberra, there will be an option to have all three oscillators through the filter, or just two of them and one doing mods, or all three of them with osc-3 doing FM mods of the other voices - FM is not far of having an LFO modulate the frequency of an oscillator but its not an LFO, its a high frequency oscillator, ie, in the audible range.

      There is even more confusing stuff that I intend to put in there regarding mods and polyphony but I can explain them later.

      Regards, Nick.

       
    • Nick Copeland
      Nick Copeland
      2009-05-28

      I see what you mean, it is a little confusing.

      In Sidney, when you press a note on your controller then sidney will find the best oscillator on the chip and give it that frequency.

      In Canberra, when you press a note on your controller it will select one of the 5 chips and give all three oscillators that frequency. Sidney can do this now when Monophonic mode is selected, canberra now has 5 Monophonic sidney.

      The same as with the sidney in Monophonic mode, Osc-1 can generate tri wave, Osc-2 can generate pulse and Osc-3 can generate Ramp waves, however you configure it.

      My best description is that you have 5 Sidney with the Monophonic button selected, all in one box so that you get 5 note polyphony.

      Regards, Nick.

       
    • Andrew C
      Andrew C
      2009-05-28

      OK yeah, that makes a lot more sense now!

      Also, how do you program the other two sidney that aren't avaible as voice-4 and voice-5? Or will they be editable from another button?
      I'll just have to find out when you finish the synth..

      Andrew.

       
    • Nick Copeland
      Nick Copeland
      2009-05-28

      It probably will be clearer when it is finished - you will hear what it does. Consider this:

      Canberra: 5 Voices, each voice is one softSID chip:

      Voice:

          Osc-1
               Noise/Tri/Ramp/Square
               PW/Tune/Transpose/Glide
               RingMod/Sync/Mute/Filter
               Attack/decay/sustain/release
          Osc-2
               Noise/Tri/Ramp/Square
               PW/Tune/Transpose/Glide
               RingMod/Sync/Mute/Filter
               Attack/decay/sustain/release
          Osc-3
               Noise/Tri/Ramp/Square
               PW/Tune/Transpose/Glide
               RingMod/Sync/Mute/Filter
               Attack/decay/sustain/release
          Filter:
               HP/BP/LP/LP24
               Cutoff/Resonance
           Multi
           Volume
           Pan

      Each voice now has three oscillators and one filter. You will be able to play 5 of these voices polyphonically. When you change any of these parameters bristol will put the same value in each of the five softSID so they all sound the same but play different notes as you play the synth.

      Regards,

       
    • Andrew C
      Andrew C
      2009-05-28

      Ok, so each voice has 3 oscs. and we have 5 voices, so 5 softSID chips and therefore 15 oscs in total right?

      So I can configure the voices like this:

      VOICE-1 (Canberra GUI)
      Osc-1: Pulse (+3 cents)
      Osc-2: Pulse
      Osc-3: Triangle

      VOICE-2:
      Osc-1: Triangle
      Osc-2: Ramp (+12 semitones)
      Osc-3: Triangle

      Etc etc?

      It'll be really cool to see it finished! It sounds really fun!

      Andrew.

       
    • Nick Copeland
      Nick Copeland
      2009-05-28

      Actually, yes, I was going to add that capability but more generally:

      VOICE-1/2/3/4/5 (Canberra GUI)
      Osc-1: Pulse (+3 cents)
      Osc-2: Pulse
      Osc-3: Triangle

      A voice translates to one key that you press on the controller, you can make 5 note chords, each note will have the sound you generate from the settings you gave above.

      The intention is also to allow you to configure each SID independently however that means if you play a sequence of notes they may generate different sounds, and if you play a chord of 5 notes, each note will sound different.

      Will also try and make it a _big_ mono synth (unison mode) where you can only play one note at a time but will then get all 15 oscillators.

      All good stuff.

      Nick

       
    • Andrew C
      Andrew C
      2009-05-28

      Oh right, that does sound good I must say. It'll be interesting to be able to play gigantic 3 osc lines polyphonically!

      Andrew.

       
    • Andrew C
      Andrew C
      2009-05-30

      Nick,

      Just wondering, will you be adding LFO delay to Canberra?

      Also, one other concern of mine... If you have 5 SID chips emulated, wouldn't the noise level from the SIDs be tremendous!??
      Or will the noise be either configurable or just the equivelent of noise of one or two SID chips?

      Thanks again,

      Andrew.

       
    • Nick Copeland
      Nick Copeland
      2009-05-30

      Hi Andrew,

      I will add in a 'Product' button, this will apply the env to the LFO so you can get gradual fade in of the LFO. It won't be as slow as the Poly-6 since the maximum attack rate was not so long. Nothing wrong with that, they are different synths.

      The actually chip signal to noise ratio is software configurable - one of the Global (blue) controls will let you set the S/N ratio, from none to just a little (it will not allow you to configure lots since the better option there would be to generate noise from the voice. You will also be able to control oscillator leakage and even the Master Clock rate - changing the Master Clock will actually be called 'Tune' since that is effectively what the result is.

      Regards, Nick

       
    • Andrew C
      Andrew C
      2009-05-30

      Cool, I'll be able to control the S/N ratio!!

      Also, I checked out the comments in the bristolSID2.c in brighton/ and I found your comments quite useful!

      No arpeggiator? Probably a good thing actually, the sound of 3 oscillators arpeggiating probably doesn't sound good!

      Also, I noticed that there was references to splits in it... Will there be user definable splits in Canberra?

      Andrew.

       
    • Nick Copeland
      Nick Copeland
      2009-05-30

      I had not intended to put splits in there to be honest. With only 5 voices available it is not easy to use, anything less than 8 voices does not really work well with splits. I could be talked into it though.

      Regards, Nick

       
    • Andrew C
      Andrew C
      2009-05-30

      No, no, it's fine without splits, I was just remarking on such comments that were in the source...

      Andrew.

       
    • Andrew C
      Andrew C
      2009-06-19

      Nick,

      BY the way, was the Canberra libbrighton code code that was taken from the other synths? Such as the Bit emulations, as referenced in the source code?

      Andrew.

       
    • Nick Copeland
      Nick Copeland
      2009-06-20

      All of the GUI have very similar components, what I generally do is take an existing GUI that has some similarities visually and copy it to the new filename, then change the calls for the new synth. Most of the GUI integrations actually get cut out and new stuff put in but this works well as a template. It does lead to odd bits of comments hanging around which should also be cleared up, they just often get looked over in order to get the emulator functioning.

      Regards, Nick

       
  • Andrew C
    Andrew C
    2009-09-22

    Hey Nick,

    Just wondering, do you think it'd be feasible for you to program a basic wavetable sequencer for the SIDs? This, would be particularly cool for creating SID style drums.
    You needn't add it to your 'to do' list if you don't think it'd be worthwhile, but personally, I think it'd be a neat addition.

    Andrew.

     
  • Andrew C
    Andrew C
    2010-04-26

    I was thinking about what I posted a few months ago:
    "Ok, so each voice has 3 oscs. and we have 5 voices, so 5 softSID chips and therefore 15 oscs in total right?

    So I can configure the voices like this:

    VOICE-1 (Canberra GUI)
    Osc-1: Pulse (+3 cents)
    Osc-2: Pulse
    Osc-3: Triangle

    VOICE-2:
    Osc-1: Triangle
    Osc-2: Ramp (+12 semitones)
    Osc-3: Triangle

    Etc etc?"

    And now that I think about it, I realise how incredibly unwieldy and difficult to program that'd be! Flipping through several switches to choose each chip!

    Andrew.

     
  • Nick Copeland
    Nick Copeland
    2010-04-26

    Take a look at the bristol Mini:
    it has 3 osc, 2 env, one filter. That is how each voice is made. If you do 'startBristol -mini -voices 5' you get 5 of these each of which can be assigned to a different key for 5 voice polyphony.

    Consider Canberra
    It has 3 Osc, 3 Env, 1 Filter. That is how each voice is (will be) made. If you request 'startBristol -canberra -voices 5' you get five (of the softchips) and each can be assigned to a midi key for 5 voioce polyphony.

    The mini does each voice with independent 'code sections', one section doing osc, another env, another filter and it links them all together. The canberra was going to use one SID softchip per voice and one extra for some mods but the mods signal applies to all the voices.

    If (and that is an 'if') I put in a Unison key you could get all 5 (or 6) softsid chips to get assinged to a single key, but it would be like 5 voices in Unison, ie, they would all produce the same sound with a bit of detune to phatten it out. In this model you do not necessarily choose the chip: you chose V1 waveform and I apply that same selection to each voice. You don't have to flip through switches to choose the chip, you decide you want to have a square wave, all voices produce a square wave.

    This is possibily not a good explanation but perhaps the confusion is that the SID chip talked about 'voices'. If you have one SID per bristol voice then the SID concept of ' three voices' turns into three Osc+Env for the bristol voice.

    Regards, nick.

     
  • Andrew C
    Andrew C
    2010-04-27

    Hey Nick,

    Yeah, I understand what you mean. I agree with you that selecting a square wave on V1 causes all of the other chips' V1 to switch to square.

    Andrew.

     
  • Nick Copeland
    Nick Copeland
    2010-04-27

    That is the way it will work, yes, the same parameter changes will be copied to each soft chip so each will generate the same general sound but you will now have 5 voices each running one SID chip each.

    Regards, nick.