c64 ring modulation

Modular Synth design and releases (Reaktor, SynthEdit, Tassman, etc.)
RELATED
PRODUCTS

Post

Are there some c64 freaks here at KVR who know a little about the ringmod on the c64 sid chip ?
i know a triangle is used But i don't know how it sounds
it's not much used in songs :)
Thanks
Make Your Voice Heard!!
EUROPEAN VAPERS PROTEST 29th 2.00PM.It saved my life.

Post

On the C64 SID chip, ring modulation multiplies a triangle wave with a square wave.

Post

i read that too but on a other site is says triangle wave with any wave(Pulse/Triangle/saw/noise)
Make Your Voice Heard!!
EUROPEAN VAPERS PROTEST 29th 2.00PM.It saved my life.

Post

RING MOD (Bit 2) The ring mod bit, when set to a one, replaces the triangle waveform output of oscillator 41 with a "ring modulated" combination of oscillators 41 and 45. Varying the frequency of oscillator 1 with respect to oscillator 3 produces a wide range of non-harmonic overtone structures for creating bell or song sounds and for special effects. In order for ring modulation to be audible, the triangular waveform of oscillator 41 must be selected and oscillator 45 must be set to some frequency other than zero. No other parameters of voice 3 have any effect on ring modulation. from the patent...

Post

From the interview with Yannes here: http://stud4.tuwien.ac.at/~e9426444/yannes.html
Bob Yannes wrote:Ring Modulation was accomplished by substituting the accumulator MSB of an oscillator in the EXOR function of the triangle waveform generator with the accumulator MSB of the previous oscillator. That is why the triangle waveform must be selected to use Ring Modulation.
Quite clever.
EDIT: I guess he must mean replacing the EXOR control input for an oscillator with an EXOR of both the accumulator MSBs, no?
If not, it would be sawtooth multiplied with square.

The patent (US4,677,890) is very vague on this:
RING MOD (Bit 2) The ring mod bit, when set to a one, replaces the triangle waveform output of oscillator 41 with a "ring modulated" combination of oscillators 41 and 45. Varying the frequency of oscillator 1 with respect to oscillator 3 produces a wide range of non-harmonic overtone structures for creating bell or song sounds and for special effects. In order for ring modulation to be audible, the triangular waveform of oscillator 41 must be selected and oscillator 45 must be set to some frequency other than zero. No other parameters of voice 3 have any effect on ring modulation.

Post

41 = pulse in Odin tracker :)
i need to translate this to dutch i'm not :borg:
Thanks
Make Your Voice Heard!!
EUROPEAN VAPERS PROTEST 29th 2.00PM.It saved my life.

Post

odo wrote:41 = pulse in Odin tracker :)
Yes, but this is a reference to paragraph #41 in the patent...

Post

ok :)
Make Your Voice Heard!!
EUROPEAN VAPERS PROTEST 29th 2.00PM.It saved my life.

Post

vic tracker !!!!!!!!
Make Your Voice Heard!!
EUROPEAN VAPERS PROTEST 29th 2.00PM.It saved my life.

Post

just needed a sound demo
Make Your Voice Heard!!
EUROPEAN VAPERS PROTEST 29th 2.00PM.It saved my life.

Post

i'm pretty sure the "ringmod" is just a A^B, where A is any waveform, B is always pulse. the pulse output is 0000 (all false), 1111 (all true).

in other words, there is nothing special about it at all. i'm not sure if you can use other waveforms (non-pulse) for B. i do not think you can.

Post

Sync: Synchronizes this part's oscillator to the previous part's oscillator output. The following cases can happen, since a SID chip has only three oscillators:
1. #2 is synched to #1
2. #3 is synched to #2
3. #1 is synched to #3
What it means is when the synchronizer oscillator's value crosses zero (0), this part's oscillator restarts from the beginning.

Ringmod: Ring-modulates this part's oscillator value with the previous part's oscillator output (like described before).

What it mean is that the part's oscillator output will be the sum and difference of this oscillator's and the synchronizer oscillator's value.

no mention of wich waveforms are permited and not for osc B, or of no effect when using 3rd voice for ring mod

this is the sid out of the c64 btw
http://www.hardsid.com/HSMIDI.htm#_Toc57875378

Post

i think it will be a normal ringmod
i asked for sounds demos because not all ringmods are the same ;)
Make Your Voice Heard!!
EUROPEAN VAPERS PROTEST 29th 2.00PM.It saved my life.

Post

odo wrote:vic tracker !!!!!!!!
No ringmod there! Just 3 square voices + one noise. Only a 7 bit period time register too, so you got to pick your notes if you want it to be resonably in tune. ;)
aciddose wrote:i'm pretty sure the "ringmod" is just a A^B, where A is any waveform, B is always pulse. the pulse output is 0000 (all false), 1111 (all true).
Nope, A is always triangle and B is always square (i.e no PWM).

Explanation of what I wrote above:

Each oscillator is made of a phase accumulator.
Triangle is made by taking the output from the accumulator value except the highest bit (MSB) and pass that through exor gates. The MSB is connected to the other input of the exor gates, i.e it inverts all bits when the MSB = 1. This results in a triangle wave with a slightly flattened top and bottom.

Now to get ring modulation the MSB from the previous phase accumulator and the MSB from the triangle one is exored together and fed into the exor gates instead.
This means that in addition to the original triangle wave it will also be inverted when the MSB changes on the previous acc. Which is exactly multiplication by a squarewave.
odo wrote:i think it will be a normal ringmod
Regular ringmod is perfect. To make it C64 like just restrict which waveforms you can use.
The flattened triangle might contribute some aswell.

Post

odo wrote:i think it will be a normal ringmod
i asked for sounds demos because not all ringmods are the same ;)
I think the ringmod modulates one triangle wave with another - I seem to remember reading in the datasheet for SID, (which you can find somewhere online) that the oscillator being modulated has to be set to tiangle and is modulated by the triangle output of one of the other oscillators - the ring modulation should then be the sum of the two oscillators outputs added to the product of the two oscillators outputs
Have a better one - Saul Cross :-)

Post Reply

Return to “Modular Synthesis”