General infos and license
Install infos
KXWAVETRACER ?
Additve Synthesis ?
Easy
How can I create a saw waveform ?
Modular synthesizer
Modularity
Envelope Generators 1-2-3
Lfos 1-2
Oscillators 1-2
Mixer
Midi2
More


General infos and License:
KX-MODULAD (ver : 1.00)
built with synthedit ver : 1.015
©08-2007 KX77FREE by X.Kalensky
http://kx77free.free.fr
Email: kx77free@free.fr
KX-Modulad license agreement :
This plugin is provided as is with no warranty of any kind.
The use of this plugin is entirely at your own risk.
You may not distribute this plugin in any way.
This version is a freeware.
I hope you will enjoy this plug...
If you like this plugin don't forget to make some publicity about it.
Thanks to :
for the program Synthedit : Jeff McClintock http://www.synthedit.com
VST PlugIn Technology by Steinberg Media Technologies AG
This plugin is powered by the KX77FREE modules (specific DLL ,*.SEM):
oscillator, lfo, filter (LP KX), EG, distortion, etc...
The
KxWaveTracer.exe Win32 program is an additional feature of this plugin
and you must use it only to calculate KX77FREE datas (*.kxw).
If you use this program for another use,
you must have the agreement of the author, Xavier Kalensky.
Warning:
Caution
! , If you
are a novice, don't work with a headphone and the volume at max
because electronic instruments can generate powerfull bass (<40
hz) and very high frequencies (res at max). The KX77FREE plugins are
made for electronic experienced musicians who pratice electronic
sounds synthesis regularly.
KX77FREE License :
author
of the vst
plugins KX77FREE : Xavier Kalensky
The
user downloads
and uses the vst plugins KX77FREE at his own risk
The author of the
vst plugins KX77FREE (or all other provider)
can not be responsible of material* or corporal damages (direct or
indirect) caused by the use of the vst plugins KX77FREE.
*as any financial,
personal or computer data loss. It's recommended to save any
important data before using the vst plugins KX77FREE.
The vst plugins
KX77FREE in FREEWARE version are provided without warranty.
The user may not
distribute the vst plugins KX77FREE in any way. The vst plugins
KX77FREE are always distributed with the file ''Licence.pdf '' which
contains this licence.
Before downlading
and using the vst plugins KX77FREE, the user has read carrefuly this
licence (1-Warning and 2-License) and he accept it.
KX77FREE
: © 2003-2007 by Xavier Kalensky. All Rights Reserved.
All
other copyrights and trademarks are the property of their respective
owners
SynthEdit:
© 2003 by Jeff McClintock. All Rights Reserved.
VST
and ASIO are trademarks of Steinberg Soft- und Hardware GmbH
Install infos
If you have an old pc which has not the SSE features, you can use the NO SSE version
to try it.
With a CPU +/-< 1.7ghz, please, you should use the presets in mono mode.
Push on the button " All Presets Mono" or use a large ASIO buffer.
Before testing it, it is important to read the following infos:
The setup program does that you must do if you install the dll with no setup:
-1 It copies the dll to your host vstplugin folder.
-2 It copies the KXDATAS folder (shared waveforms) on the root of your system disk. Like this : C:\KXDATAS or D:\KXDATAS etc...
" C:\KXDATAS " is the default path of the plugin.
Some users don't use a standard Pc configuration with a C: disk.
The users who don't use a C: disk or place the KXDATAS folder on another root disk . They must change the paths.
They must select the "data.kxw" file
with the "path" field on the "kxwavetracer" panel of the plugin.
The default path is:
C:\KXDATAS\Kx-Modulad-Datas\data.kxw


if you use another disk, like D: or E: etc...
You must just change the disk letter :
D:\KXDATAS\Kx-Modulad-Datas\data.kxw
eg: new path with a different KX77FREE plugin (or spare folder ) :
" C:\KXDATAS\KXOMNI V4\data.kxw " is the new path.
or on a different disk:
" D:\KXDATAS\Kx-Modulad-Datas\data.kxw "
If you use bad paths the oscillators will be muted...
It's the same process for the KxWAveTracer.exe path...
YOU MUST NOT MODIFY THE INTERNAL FOLDER NAMES
AND THE " *.KXW " NAMES
***********
If
you don't want to use a setup to install the DLL, a zip file with the
DLLs and the KXDATAS folder is available on the Kx77free site.
http://kx77free.free.fr
***********
Kxdatas folder structure:
C:\ KXDATATAS \
>Modulad-Help\
(Help files folder)
> KxWaveTracer.exe (exe to calculate the
waveforms)
>
KxWaveTracer.ini
> Testini.txt
> Kx-Modulad-Datas
\
( plugin folder !)
>data.kxw
(the parameters for the kxwavetracer program)
> osc-low \
(empty folder)
> osc-med \
(default folder, the 27 *.KXW
files must be here!)
> osc-hi \
(empty folder)
>lfo-low \
(empty folder)
> lfo-med \
(default folder, the 4 *.KXW files
must be here!)
>lfo-hi \
(empty folder)
Why ?
The choice of a fixed path is useful to load the waveforms
like a classic synthesizer.
The waveforms are classed:
the use : LFO or OSC
the quality of lookup table: Low, Med, Hi
5 types of shape : Sine, Tri, Saw, Sqr, Free
the number : 0 to 255
These flags create the name of the "*. kxw " file!

If you create a new waveform, it is shared for all KX-Modulad KX77FREE plugins.
This is useful if you use several vst host programs !
KXWAVETRACER ?
On the root of the kxdatas folder, you can see the kxwavetracer program.
It's a win32 program, when you push on the "render" selector,
you call it and the calculation of the waveform can use more CPU into an independent process.
This program is the solution to avoid any GUI freeze, Asio buffer drops or host overload.
Additve Synthesis ?
http://en.wikipedia.org/wiki/Fourier_series
This plugin is provided with waveform presets : 100 to 128
To calculate the waveform, the kxwavetracer use the Simple Fourier series method.
It is based on the addition of sinusoidal waves (harmonics).
The level and the frequency of each harmonic are multiple of the fundamental frequency (note).
the first is the fundamental note : 1/1 (440, 1.0)
the second : 1 /2 (880, 0.5)
the third : 1/3 (1320, 0.333)
etc...
EG : to make a A3 waveform (440 hz) :
22000 hz (44.1 khz clock frequency/2) / 440 = 50 harmonics
EG : to make a A0 waveform (55 hz) :
22000 hz (44.1 khz clock frequency/2) / 55 = 400 harmonics
http://en.wikipedia.org/wiki/Nyquist-Shannon sampling_theorem
Normally the number of harmonic is infinite!
but we use a numeric technologie, we cannot use a frequency greater than the clock frequency divided by 2 (Nyquist frequency).
That 's why the KX-Oscillators use this method to calculate the waveform,
with this, it is very easy to control the harmonic number to avoid the numeric aliasing
when a waveform has harmonic frequencies greater than the Nyquist frequency.
After different tests, the limit frequency is set to 23200 hz
The DSP code of the Kx-Oscillators is optimised for all clock frequencies:
44.1 khz to 192 khz....
That's why you will have exactly the same result at all clock frequencies:
13.75 hz to 14080 hz for the fundamental note and 23200 hz for the last harmonic!
You can change this limit but you must re-calculate all waveforms!


So the number of harmonic is not infinite...We can see little oscillations around the high harmonics..
To avoid this we use the Gibbs function to smooth the waveform but the
levels of high frequencies is lower than waveforms which do not
use the Gibbs function.


To calculate a lfo waveform or an acoustic waveform use the Gibbs function.
I used a Sequential Circuits synthesizer for my tests...
And I created the "Att gibbs" function to make waveforms like these classic analogic waveforms.


Easy
With the KxWaveTracer you do not need to adjust the level of all harmonics.
You adjust the level of the first harmonics and the program calculates all harmonic levels.


How can I create a saw waveform ?

You cannot use 0.000 with the pow functions (Level and Gibbs),
the default value is 1.00.

In the section "Level Group1" > Set all harmonics to 1.00

Loop this group : "Loop level Grp nbr = 1"
The little leds indicate the groups which are looped.
You can choose to loop the four groups but you must adjust the 40 levels...
To make a square or a triangle waveform, you must use 2 groups.

Adjust the name of the waveform > OSC MED SAW 10
In fact, the real name is:
C:\KXDATAS\Kx-Modulad-Datas\osc-med\osc-saw-10.kxw
You can use the Display button to verify if the file exists!
THE NUMBER 0 TO 9 ARE PROTECTED
FOR THE PRESETS.
IF YOU MODIFY THOSE WAVEFORMS, OF COURSE,
YOU MODIFY THE SOUND OF THE PRESETS!
PLEASE BEFORE, YOU SHOULD DUPLICATE
THE KX-MODULAD-DATAS REPERTORY!

Save the waveform parameters into the " Data.kxw " file
> push on the "Save Datas" button
Render the waveform
> push on the "Render" button
Display the waveform
> push on the "Display" button

The level recommended is 5 volts for the oscillators or the lfos.
If the level is greater than 10 volt, the waveform colour is inverted.
To listen the waveform, you must select the waveform with an oscillator of the modular panel and play a note...
The Display button reloads all waveforms...
"MED" is the default quality.
You can change the quality of the oscillators or the lfos :
on the modular panel choose "Disp Wf" to see the current waveforms
and change the quality.
Low
is useful to listen quickly the result but this
mode is not recommended for the presets which use the sync between the
two oscillators. And you should use the same quality if you use the
sync between the two oscillators...

The "F1" and the "F2"parameters
create an notch filter equivalent but these one affect all harmonic
levels in a repetitive way. This is an experimental feature...
The parameter "Low freq nbr harmonics" controls the number of harmonics of the lowest notes and reduce theirs brightness.
Eg: 0 volts = 13.75 hz
23200 / 13.75= 1687 harmonics
-1 octave = 27.5 hz
23200 / 27.5 hz= 843 harmonics
Modular synthesizer:

Modularity:
This plugin is a true MODULAR synthesizer!
The principal modulation sources, Velocity, Lfo1, Lfo2, Lfo1 Dir, Lfo2 Dir, Noise, Rnd, SH, EG1, EG2, EG3, EG4, Kbd, Vco
are independent and pre-connected with value range adapted to the destination.



The choice can vary according to the destination module:
Vco1 (freq, phase, 1-2, Width), Vco2(), Vcf1(cutoff), Vcf2(), Ring mod, Vca,
EG Trigger, Mixer (Noise, Vco1 1-2, Vco2 1-2, Ring, Vco1 Width, Vco2 width).
Envelope Generators 1-2-3:
The
envelope generators can be synchronized by various sources, Kbd, Lfo1,
Lfo2, S1, S2, S1-S2, these sources can be synchronized with the Host
tempo.

You can select the trigger source and adjust the trigger level.
A curve for each EG segment is available (A, D, R).
The velocity and the keyboard can also control the ADR segments.
Lfos 1-2 :
Lfo1, Lfo2 are the lfo outputs with the level controlled by an ASR
Envelope Generator (EG).

A>Lev is the attack time of these EG which control the Lfo level.
It's an equivalent of the classic Lfo Delay Time.
The S segment of the ASR EG does not appear on the Gui because it is always
to the max and the R segment (Release Time) is linked to the value of the Vca Release.
When the Hold switch is on, the Release segment is off, this is useful to control an EG
with a lfo signal.
A>1-2 controls the balance between the Rate1 and the Rate2 by the A
segment of the EG and A>Vel is the same control but with the
velocity.
Lfo1 Dir, Lfo2 Dir are direct outputs.
The envelope generators do not control the level of these outputs.
Oscillators 1-2:
Each oscillator has 3 waveforms: WF1, WF2, SUB.
Waveform number, Tri, Saw, Sqr:
0 = Gibbs
1 = Att Gibbs
2 = no Gibbs
Sine exits only with the 0 number.
Only the "MED" waveforms are provided with this plugin,
Hi and Low quality must be calculate, see the waveform presets, 100 to 128.

The octave range of the Sub is : 0 to -3 (first list of choice above the Sub Det).
The Sub can be detuned but its detune value cannot be greater than the principal waveforms value
eg: if the octave range value is 0, the detune value is limited to 0.000 volt.
1-2 is the mix between the WF1 and the WF2.
Sub is the mix between the Sub and the 1-2 waveforms.

The main output (WF1+WF2+SUB) is called 1-2.
eg: the Vco1 main output is called Vco1 1-2 .
The second output is called Width.
eg: the Vco1 second output is called Vco1 Width .
Why ?
In a classic oscillator, we obtain a PW signal with a mix of a saw waveform
and a saw waveform inverted.
If you use a saw waveform with the WF1 and a saw waveform with the WF2,
the Width output will be a perfect PW signal and you could adjust the width
with the Width parameter.
In fact, the WF2 signal is inverted and added to the WF1 signal...
and the " Width " parameter is an adjustment of the WF2 phase.

The " Phase " parameter is a global phase adjustment, it controls the phase of the two waveforms (1-2).
The Sub phase is not affected by these two parameters, "Phase" and " Width"!
Mixer
It has 6 sources: Noise, Vco1 1-2, Vco2 1-2, Ring, Vco1 Width, Vco2 width
and three destinations: Vcf1, Vcf2, Vca.
Each source can modulate the three destinations !

The Noise has an EQ.
You can mute the vca output with the vca switch but this output is always active in the Fx section.

All mixer voices can be modulated by the Envelope Generators and the Lfos.
Midi2:
You can use a different midi channel to control a monophonic envelope generator (EG4) or to control the Gate, Cv or Velocity.

eg: to create a preset with a monophonic Vcf and a polyphonic Vca.
More...
The Rnd function replaces the KXMOD system, a random value is sent when a note is played. This is easy to use.
Enjoy (more 400 parameters! ), keep your brain safe.
Xavier Kalensky
06/08/2007
General Features:
Name: KX-MODULAD
Author: Xavier Kalensky
Marque: KX77FREE
OS: All Windows
State: Release
Version: 1.00, 08-2007
Minimum requirements:
Pentium 1.8 in poly mode
SSE or NO SSE processor
Built with Synthedit 1.015
This plugin is powered by the KX77FREE modules (specific DLL ,*.SEM):
oscillator, lfo, filter (LP KX), EG, distortion, etc...
Additional feature : KxWaveTracer.exe
Poly 6 voices
Description:
Analogic Modular Polyphonic Synthesizer
with Additive Synthesis WaveTracer
Extended GUI with 2 panels
WaveTracer :
Full parameters controls to make Additive Waveforms with no aliasing.
Easy to use and create analogic waveforms
Level and Phase parameters
up to 1680 harmonics for the bass frequencies
Full 32 bit High Quality lookup table
Gibbs function and more
Same quality sound for all clock frequencies: 44.1 khz to 192 khz
13.75 hz to 23200 hz or more (harmonic frequency limit)
independent WaveTracer engine : KxWaveTracer.exe
Modular Synthesizer:
All modulations are pre-connected, no cables on the GUI
3 Polyphonic EGs with for each segment: curves, velocity , Kbd
1 Monophonic EG with for each segment: curves, velocity , Kbd
Multiple trigger sources and sync for the EGs and the LFOs
2 Oscillators with 2 waveforms and 2 outputs,
complex phase modulation and sync.
2 independent Sub Oscillators
2 Monophonic LFOs with 2 Rates and ASR EG
2 Mulitmode VCF
Mixer with 6 sources:
Noise, Vco1 1-2, Vco 2 1-2, Ring, Vco1 Width, Vco2 Width
and 3 outputs: VCF1, VCF2, VCA
Each mixer voice can be modulated by different sources
Noise Generator
Sample&Hold
Ring Modulator
6 host sync clocks
2 Midi inputs
1 Distortion
1 Delay with sync, multimode filter and modulation oscillator with sync
Full NRPN implementation : More 400 parameters
and nice presets!