electro-music.com   Dedicated to experimental electro-acoustic
and electronic music
 
    Front Page  |  Radio
 |  Media  |  Forum  |  Wiki  |  Links
Forum with support of Syndicator RSS
 FAQFAQ   CalendarCalendar   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   LinksLinks
 RegisterRegister   ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in  Chat RoomChat Room 
 Forum index » Clavia Nord Modular » Nord Modular G2 Discussion
Trying to emulate a Minimoog saw
Post new topic   Reply to topic Moderators: Nord Modular Editors
Page 1 of 1 [22 Posts]
View unread posts
View new posts in the last week
Mark the topic unread :: View previous topic :: View next topic
Author Message
xav



Joined: Mar 21, 2005
Posts: 164
Location: paris
Audio files: 8
G2 patch files: 7

PostPosted: Thu Sep 11, 2008 1:41 pm    Post subject: Trying to emulate a Minimoog saw Reply with quote  Mark this post and the followings unread

I did several tests with a minimoog. The sound of the saw was my first preoccupation. The oscilloscope shows a perfect saw for the G2, and a rounded one for the Minimoog, especially in it negative side. I tested the lowest note the tuner recognized, E 32'. The sound is a little bit different to my ears.
This what I did to imitate the saw of the mini, listening, looking to the oscilloscope and a multimeter:
1. I tried to tune perfectly the Minimoog to the G2 and to get the same volume.
2. I reversed the wave of the G2 since it is in the opposite phase, to compare easier the shape. (why did clavia change the sense of the saw since the G1?)
3. I tried to change the waveform with a shaper and FM. The best results were when the transformation is dynamically synced to the waveform. FM changed the evolution of the wave under 0, and the shaper rounded especially the negative side too. It is gradually modulated by the saw (before it is reversed). And I tried a overdrive that shapes the wave in a good way (visually...).
I cannot say the result is perfect, since it still lacks a little bit of high frequencies to match to the Minimoog saw, but it is nearest than the pure saw of the G2. I'll appreciate if anybody get a solution to get closer.
Here are the pictures of the analyzes and the patch. Variation is the pure saw, and 2 is transformed.


E 32' saw minimoog.png
 Description:
 Filesize:  137.32 KB
 Viewed:  536 Time(s)
This image has been reduced to fit the page. Click on it to enlarge.

E 32' saw minimoog.png



E 32' saw G2 FM, Shape, overdrive.png
 Description:
 Filesize:  140.65 KB
 Viewed:  479 Time(s)
This image has been reduced to fit the page. Click on it to enlarge.

E 32' saw G2 FM, Shape, overdrive.png



E 32' saw G2.png
 Description:
 Filesize:  155.15 KB
 Viewed:  505 Time(s)
This image has been reduced to fit the page. Click on it to enlarge.

E 32' saw G2.png



Test saw moog.pch2
 Description:

Download
 Filename:  Test saw moog.pch2
 Filesize:  1.29 KB
 Downloaded:  1579 Time(s)


Last edited by xav on Wed Sep 24, 2008 2:28 pm; edited 1 time in total
Back to top
View user's profile Send private message
iPassenger



Joined: Jan 27, 2007
Posts: 1067
Location: Sheffield, UK
Audio files: 5
G2 patch files: 78

PostPosted: Fri Sep 12, 2008 12:36 am    Post subject: Reply with quote  Mark this post and the followings unread

Thanks Xav,

The waveforms certainly look similar if not the same. I found similar differences in the waveform when I studied my waldorf pulse's Saw/Squ waves etc vs the G2 (which is pratically perfect). Although the effect appeared to have a bias to the note played. In other words higher notes produced more accurate waveforms than lower ones, (could this be to do with the saturation into the filter perhaps?). In order to try emulate this I tried placing EQs on the outputs of the Oscs but with limited success.

Anyway I look forward to testing this patch out when I am back at home.

R.

_________________
iP (Ross)
- http://ipassenger.bandcamp.com
- http://soundcloud.com/ipassenger
Back to top
View user's profile Send private message Visit poster's website
kmmcdonald



Joined: Oct 08, 2005
Posts: 22
Location: USA
Audio files: 1

PostPosted: Sat Sep 13, 2008 10:06 am    Post subject: Reply with quote  Mark this post and the followings unread

xav:

What software are you using to provide the oscilloscope & spectrum analysis?

thanks

Keith

_________________
Keith M in AZ
Back to top
View user's profile Send private message
BobTheDog



Joined: Feb 28, 2005
Posts: 4044
Location: England
Audio files: 32
G2 patch files: 15

PostPosted: Sat Sep 13, 2008 11:10 am    Post subject: Reply with quote  Mark this post and the followings unread

Looks like The MultiMeter and tuner in Logic and NI Reaktor doing the scope
Back to top
View user's profile Send private message
Derek Cook



Joined: Dec 30, 2005
Posts: 171
Location: Wales, UK
G2 patch files: 3

PostPosted: Wed Sep 17, 2008 12:41 pm    Post subject: Reply with quote  Mark this post and the followings unread

One nice thing on Yamaha's AN1x, PLG150-AN and AN engine in the EX5 (yes, I have them all as well as my beloved Nord G2 Engine!) is the ability to "round" the edges of the waveforms to emulate the less than perfect waveforms of classic synths.

So is it possible to create something like this on the Nord? I haven't really thought about it, but the Yamaha AN Edge parameter must be equivalent to an LPF where the cutoff is synced somehow to the VCO pitch, which sounds like what XAV is trying to do.

_________________
Regards
Derek Cook

www.echoes-music.co.uk
www.purefloyd.co.uk
www.carregddu.co.uk
www.xfactory-librarians.co.uk
www.ex5tech.com
Back to top
View user's profile Send private message Send e-mail
xav



Joined: Mar 21, 2005
Posts: 164
Location: paris
Audio files: 8
G2 patch files: 7

PostPosted: Wed Sep 24, 2008 2:24 pm    Post subject: Reply with quote  Mark this post and the followings unread

Sorry for the delay. Yes, Bob The Dog is right; Logic, Reaktor. But the shape is only useful to monitor what I'm doing. The best tool to see the differences was the spectrum display (especially RME's one).
I tried to do the same job with a Wersi Organ. The Flute 16' is beautiful. It looks like a sine for the first half circle, and something more chaotic. I never succeeded in making such a waveform with the G2. It would be so nice to draw a one cycle waveform and to use it as an oscillator.
Back to top
View user's profile Send private message
Tim Kleinert



Joined: Mar 12, 2004
Posts: 1148
Location: Zürich, Switzerland
Audio files: 7
G2 patch files: 236

PostPosted: Wed Sep 24, 2008 4:09 pm    Post subject: Reply with quote  Mark this post and the followings unread

xav wrote:
It would be so nice to draw a one cycle waveform and to use it as an oscillator.


---> http://www.electro-music.com/forum/topic-25309.html
Back to top
View user's profile Send private message
xav



Joined: Mar 21, 2005
Posts: 164
Location: paris
Audio files: 8
G2 patch files: 7

PostPosted: Wed Sep 24, 2008 5:22 pm    Post subject: Reply with quote  Mark this post and the followings unread

You are right Tim (as usual). I gonna try this way. Not easy but the sound seems good... maybe more flexible chaining two seq.
Back to top
View user's profile Send private message
Tim Kleinert



Joined: Mar 12, 2004
Posts: 1148
Location: Zürich, Switzerland
Audio files: 7
G2 patch files: 236

PostPosted: Thu Sep 25, 2008 1:54 am    Post subject: Reply with quote  Mark this post and the followings unread

xav wrote:
You are right Tim (as usual). I gonna try this way. Not easy but the sound seems good... maybe more flexible chaining two seq.


The sound of that circuit is usable because I circumvented oscillator frequencies that are non-fractional to the sampling frequency, thus making it jitter/aliasing-free. The core is a DIY sawtooth oscillator that resets to zero rather than carrying over the overflow value. Hence it unfortunately has issues with accurate tuning and has increasingly coarse tuning resolution at higher frequencies. I consider it still musically "usable" though.

Improving the tuning issues isn't hard (you just have to preserve the overflow), but the aliasing then kicks in quite quickly. And I hate aliasing more than anything else. Evil or Very Mad

Chaining two control-sequencers is theoretically possible. However, this requires an additional crossfading circuit to provide a smooth transition from the first sequencer to the second.

EDIT:
Come to think of it, the DIY sawtooth core can be used to drive any kind of shaping process without ever running into artefacts, since it is not jittered by the sampling frequency and has no bandlimited flanks which can produce junk when sweeping over a nonlinear function (the wave wrapper is the worst offender here).
Attached is a brief example of a DIY sawtooth core driving a shaping thingie which lets you get all different kinds of sawtooth ramp shapes. Maybe you can get it close to the minimoog shape.

Another thing you might want to try out is a dirt-cheap circuit I devised some time ago. It's a slew limiter which can treat rising and falling times separately. There's a second version which is optimised for audio, letting you treat rising and falling waveform flanks independently.

It's here:
http://www.electro-music.com/forum/post-122807.html


SawShaper TK.pch2
 Description:
DIY sawtooth and a flank-shaper

Download
 Filename:  SawShaper TK.pch2
 Filesize:  1.34 KB
 Downloaded:  1564 Time(s)

Back to top
View user's profile Send private message
xav



Joined: Mar 21, 2005
Posts: 164
Location: paris
Audio files: 8
G2 patch files: 7

PostPosted: Thu Sep 25, 2008 6:47 am    Post subject: Reply with quote  Mark this post and the followings unread

Thank you Tim. Those 3 ways you mention are really interesting. Your digital manipulations and considerations are amazing.
About fine tuning, the minimoog used for those tests waas really weird. When it's perfectly tuned for the lowest note, it's extremely out of tune in the higher range. I don't know if it is normal.
Back to top
View user's profile Send private message
iPassenger



Joined: Jan 27, 2007
Posts: 1067
Location: Sheffield, UK
Audio files: 5
G2 patch files: 78

PostPosted: Thu Sep 25, 2008 9:02 am    Post subject: Reply with quote  Mark this post and the followings unread

tim wrote:

Attached is a brief example of a DIY sawtooth core driving a shaping thingie which lets you get all different kinds of sawtooth ramp shapes. Maybe you can get it close to the minimoog shape.


Fantastic and so simple. cheers tim. Smile

_________________
iP (Ross)
- http://ipassenger.bandcamp.com
- http://soundcloud.com/ipassenger
Back to top
View user's profile Send private message Visit poster's website
Tim Kleinert



Joined: Mar 12, 2004
Posts: 1148
Location: Zürich, Switzerland
Audio files: 7
G2 patch files: 236

PostPosted: Thu Sep 25, 2008 9:54 am    Post subject: Reply with quote  Mark this post and the followings unread

cheers, guys. Smile

There's no magic to all this. It's just a self-resetting counter circuit, clocking at audiorate, which is fed by a keyboard-tracking lin-expo converter. If I reset it to zero regardless of how high the overflow value is, the generated oscillations will always have the same length of samples and will therefore not be jittered by the sampling frequency. This is why the waveform always sounds clean, but the tuning is a bit skewed. (The other reason for the tuning issues is that the LevelScaler output isn't accurate enough for these kinds of applications.)

I use these kinds of counter circuits alot in my recent designs. In the voice autotuner, there are four such counters.

Oh, btw, the two gain stages (RANGE and MAKEUP gain) in the saw shaping example patch are actually superfluous, since tweaking the saturation curve gives the same form of control. So you can make it more efficient by leaving those out.

As I say, the DIY sawtooth core can drive any nonlinear processing without ever aliasing.

@xav: sounds like the tracking needs to be calibrated on your mini.

cheers again, Smile
tim
Back to top
View user's profile Send private message
iPassenger



Joined: Jan 27, 2007
Posts: 1067
Location: Sheffield, UK
Audio files: 5
G2 patch files: 78

PostPosted: Thu Sep 25, 2008 12:39 pm    Post subject: Reply with quote  Mark this post and the followings unread

yeah i got that tim Smile ... The tuning issues are a bit weird, i don't understand why those values on the mixer make a reasonably accurate tuning but they do.. so I'm not going to worry about it.

Been messing with my own multiple osc synth based on the no alias saw, using the saw to derive a pulse (comparator), tri (wavewrap) and then sine (shaper).

Probably being a bit thick here but what does non-linear processing mean?
If I use say, a standard sine osc to control a crossfader, is the sine going to introduce an element of jitter into the crossfade? And your conter circuit avoids this issue by being unaffected by sampling freq? Is that what your getting at?

Cheers

R.

_________________
iP (Ross)
- http://ipassenger.bandcamp.com
- http://soundcloud.com/ipassenger
Back to top
View user's profile Send private message Visit poster's website
Tim Kleinert



Joined: Mar 12, 2004
Posts: 1148
Location: Zürich, Switzerland
Audio files: 7
G2 patch files: 236

PostPosted: Thu Sep 25, 2008 1:02 pm    Post subject: Reply with quote  Mark this post and the followings unread

iPassenger wrote:
i don't understand why those values on the mixer make a reasonably accurate tuning but they do.. so I'm not going to worry about it.

I tuned them by ear. Embarassed Laughing
iPassenger wrote:
Probably being a bit thick here but what does non-linear processing mean?

It means this:
iPassenger wrote:
Been messing with my own multiple osc synth based on the no alias saw, using the saw to derive a pulse (comparator), tri (wavewrap) and then sine (shaper).


...in other words, you're already doing it. Smile All these things are nonlinear processes. If you do this kind of stuff with a standard sawtooth osc module, you'll get artefacts. The derived pulse wave will be jittered and the triangle wave will have a nasty spike (also jittered) at one of its tips (thats the sinc-filtered sawtooth flank being wrapped around). Not so with the DIY circuit.


iPassenger wrote:
If I use say, a standard sine osc to control a crossfader, is the sine going to introduce an element of jitter into the crossfade? And your conter circuit avoids this issue by being unaffected by sampling freq? Is that what your getting at?


The steeper the waveform flanks, the more important the jitter issue becomes. Sines have the the least offensive waveform in this respect, hence they are the computationally cheapest waveforms to generate digitally. A fractional counter and a reasonably large lookup table will do. (It's no coincidence that the DX7 had sinus operators. Wink)
Driving a crossfader with a sine wave at audiorate isn't problematic. You can use a standard osc module for this.

best,
tim

PS: I also once made a synth out of DIY oscillators. It even featured osc sync and FM. Plus, the filter, envelopes and LFO were also DIY. Yes, it was a rather nutty project, but oh well... Embarassed Laughing

Here:
http://www.electro-music.com/forum/post-129548.html
Back to top
View user's profile Send private message
xav



Joined: Mar 21, 2005
Posts: 164
Location: paris
Audio files: 8
G2 patch files: 7

PostPosted: Thu Sep 25, 2008 2:19 pm    Post subject: Reply with quote  Mark this post and the followings unread

[quote="tim"]cheers, guys. Smile

It's just a self-resetting counter circuit, clocking at audiorate, which is fed by a keyboard-tracking lin-expo converter. If I reset it to zero regardless of how high the overflow value is, the generated oscillations will always have the same length of samples and will therefore not be jittered by the sampling frequency.

I can just imagine what you say, like I was dreaming while reading Jean-Paul Sartre's books in philosophy... but it's sure I don't understand how you designed a oscillator with a mixer, a compare to level, and a value switch. And why this DIY is it aliasing free? But I'm sure you explained that very well... It will take time for me to get it.
Any way, thank you for sharing.
Back to top
View user's profile Send private message
Tim Kleinert



Joined: Mar 12, 2004
Posts: 1148
Location: Zürich, Switzerland
Audio files: 7
G2 patch files: 236

PostPosted: Thu Sep 25, 2008 2:26 pm    Post subject: Reply with quote  Mark this post and the followings unread

@iPassenger:
Oh, I just saw that I didn't really answer your question. So I will try herewith.

Let's say, we want to have an oscillator tuned to C4. This equals to about 261.63Hz . Within a digital system clocking at 96000Hz, this would equal 96000/261.63=366.93 samples. As you can see, it isn't 366 samples and also not 367 samples, but something inbetween. In other words, our digital system cannot faithfully represent this frequency with a constant amount of samples. In tech-speak: The oscillator frequency is non-fractional to the sampling frequency.

There are two solutions: Either we agree on a constant 366 or 367 samples and accept that our oscillator will be slightly out of tune. (My DIY design does exactly this). Or: We use a non-fractional counter, which will produce many oscillations of 367 samples, with an oscillation of 366 samples thrown in there once in a while in order to compensate (so that it averages out in the long run).

However, this causes a periodic jerk in the oscillation, as the wave cycles will be mostly 367 samples, but then 366 samples thrown in between now and then. This jerk is called jitter, and it causes unwanted periodic sidebands. In tech-speak:The oscillation is jittered by the sampling frequency.

The artefacts caused by these "jerks" are strongest on steep waveform flanks. Pulse waves have two of these, sawtooths one, that's why these waveforms are more prone to producing artefacts than eg. sines. Simply put, oscillator anti-aliasing smoothes these flanks so that these jerks become less intrusive.

But if we stick to a fixed amount of samples, we're out of trouble. Smile

Hope this clarifies.

cheers,
tim

@xav:
The mixer is in 100% feedback. When I apply something at its input, it gradually builds up internally. The comparator detects when the buildup has maxed out and resets the circuit to zero by interrupting the feedback loop (the value switch). And so the whole thing starts from the beginning again. Rise.... -reset-rise.... -reset... voilà votre oscillateur de saw clown
Back to top
View user's profile Send private message
xav



Joined: Mar 21, 2005
Posts: 164
Location: paris
Audio files: 8
G2 patch files: 7

PostPosted: Thu Sep 25, 2008 4:26 pm    Post subject: Reply with quote  Mark this post and the followings unread

Ah yes, I understood. Thank you very much.
The next step will be to appreciate the logic of your keyboard-tracking lin-expo converter. I presume this conversion has an arithmetic explanation I'm not able to understand.
But with this auto-reset mode, you are sure to be synced with the sample frequency, isn't it? I think about that amazing 5,4 sec delay designed by Blue Hell that used a sample frequency divider to alow a delay module to process alternatively looped samples and new ones. That was first time I realized the PCM limitation could be controlled and even be used in a creative way.
Back to top
View user's profile Send private message
iPassenger



Joined: Jan 27, 2007
Posts: 1067
Location: Sheffield, UK
Audio files: 5
G2 patch files: 78

PostPosted: Fri Sep 26, 2008 1:50 am    Post subject: Reply with quote  Mark this post and the followings unread

Cheers tim, fab explanations.

So i was already doing this non-linear wot-sit. Smile

Your explanation for the cause of the sample freq jitter is great too, to hell with tuning, tight waveforms are better, particularly for osc sync etc.

I presume this kind of osc would prove difficult or impossible on the G1 due to the lack of consistent calculation order?

Presumably these side bands caused by the jitter don't sound horrendous on their own when just a clean osc sound is used but once combined as part of modulation signal etc... the results become increasingly easy to hear, as the artifacts affect the process.

_________________
iP (Ross)
- http://ipassenger.bandcamp.com
- http://soundcloud.com/ipassenger
Back to top
View user's profile Send private message Visit poster's website
Tim Kleinert



Joined: Mar 12, 2004
Posts: 1148
Location: Zürich, Switzerland
Audio files: 7
G2 patch files: 236

PostPosted: Fri Sep 26, 2008 1:54 am    Post subject: Reply with quote  Mark this post and the followings unread

xav wrote:
Ah yes, I understood. Thank you very much.
The next step will be to appreciate the logic of your keyboard-tracking lin-expo converter. I presume this conversion has an arithmetic explanation I'm not able to understand.


In order to understand this you just have to look at the way (most) synthesisers handle pitch control. On most analog synths, this is done by the 1 volt/octave standard. So with every unit of 1 volt added to the CV, the pitch rises an octave. This is already an example of lin->expo conversion, since the increase of volts is linear (1, 2, 3, 4 etc.) but the increase of osc frequency is exponential, since an octave equals a doubling of the frequency (x2, x4, x8, x16 etc.).

On the G2 osc modules, the response is similar: 12 clavia units (=a linear representation) equals one octave (=doubling of the frequency=an exponential representation).

With our DIY sawtooth osc however, the response is also linear. We have to double the input into the mixer in the self-resetting feedback loop, in order to make the circuit oscillate one octave higher. So we have to convert our linear pitch information (12 clavia units/octave) into an exponential one. And the LevelScaler with a 6dB/octave slope does exactly this, as decibels are also an exponential representation, and 6dB represents a doubling of the amplitude. (Credit for this solution goes to Rob Hordijk.) So, with the 6dB/octave setting, the value gets doubled every octave, which is what we want. Now we only have to ge the offset right (tuned by ear) and we're ready to go.

xav wrote:
But with this auto-reset mode, you are sure to be synced with the sample frequency, isn't it?


Erm, no. Within a digital system, we're always synced to the sampling frequency, meaning: every operation we perform is performed within this system. The question is if our computated oscillation is jittered by the sampling frequency, meaning: is non-fractional to the sampling frequency. This is explained above in my reply to iPassenger.
Back to top
View user's profile Send private message
Tim Kleinert



Joined: Mar 12, 2004
Posts: 1148
Location: Zürich, Switzerland
Audio files: 7
G2 patch files: 236

PostPosted: Fri Sep 26, 2008 2:05 am    Post subject: Reply with quote  Mark this post and the followings unread

iPassenger wrote:

Presumably these side bands caused by the jitter don't sound horrendous on their own when just a clean osc sound is used but once combined as part of modulation signal etc... the results become increasingly easy to hear, as the artifacts affect the process.


It greatly depends on how steep the waveform flanks are. But yes, the artefacts do add up.

This whole jitter business is also the reason why osc sync sounds so bad on the G2, as the sync trigger impulse is willy-nilly jittered by the sampling frequency too. There is no way around this if one wants to offer the sync functionality in a modular fashion (meaning: with a module input) -except using out-of-tune DIY oscillators for the master oscillator. (You can use a normal osc for the slave.)

Interesting: If you look at ancient G2 screenshots, there once was a SyncOsc module in beta, in which master and slave osc were implemented within one module, allowing them to apply higher mathematics in order to produce clean osc sync sound. (It can be done.) But this module (like many others) was never finalised. Evil or Very Mad

Whenever I check out a new VA (hardware or software) I immediately go for high-pitched sync sounds in order to see if the developers did their homework right. Eg., the old NL2 performs spectacularly in this regard -the sync is super-clean, better than on the NL3, and WAY better than on the (ironically) newer NordWave. (The NL2 was coded by a different guy. Too bad he doesn't work for them anymore Wink) The Waldorf Blofeld also has great osc sync.
Back to top
View user's profile Send private message
iPassenger



Joined: Jan 27, 2007
Posts: 1067
Location: Sheffield, UK
Audio files: 5
G2 patch files: 78

PostPosted: Fri Sep 26, 2008 2:54 am    Post subject: Reply with quote  Mark this post and the followings unread

As soon as I played around with your osc module and made my own i realised how easy it would be to add sync, I used a logic OR module, one input from the osc to be synced comparator output and one from another diy osc comparator output.

It certainly sounded cleaner...

Also using this method I figured it would be much easier to build the sync reset points to the right place and what not. Though I didn't experiment with it for long as I started building the rest of the synth to go round it. I'm ashamed to admit that I used standard filter and env modules. *hangs head in shame*.

_________________
iP (Ross)
- http://ipassenger.bandcamp.com
- http://soundcloud.com/ipassenger
Back to top
View user's profile Send private message Visit poster's website
xav



Joined: Mar 21, 2005
Posts: 164
Location: paris
Audio files: 8
G2 patch files: 7

PostPosted: Fri Sep 26, 2008 7:58 am    Post subject: Reply with quote  Mark this post and the followings unread

Thank you Tim. You help me very much.
So one problem of tuning is the lack of precision of the Lev scaler module. For a 6db/slope, it makes more than doubling the amplitude. Maybe one can find a way to improve that...?
The other is your choice to control the oscillator by a multiple of samples (the lowest possible fraction of the clock). As soon as you control a DIY oscillator that way, it won't be jittered by sampling frequency, and won't be perfectly tuned.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic Moderators: Nord Modular Editors
Page 1 of 1 [22 Posts]
View unread posts
View new posts in the last week
Mark the topic unread :: View previous topic :: View next topic
 Forum index » Clavia Nord Modular » Nord Modular G2 Discussion
Jump to:  

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Forum with support of Syndicator RSS
Powered by phpBB © 2001, 2005 phpBB Group
Copyright © 2003 through 2009 by electro-music.com - Conditions Of Use