------------------------------------------------------------------------------------------------------------------------- 24.03.2012 version 3.0 (3550) released hi guys, version 3.0 is ready! new design, more functionality, bug fixes & compatibility for latest driver versions 3550 / 3551 new features: - mostly design finish - kxm 120/ 230: digital displays with scrolling - kxm 210: tuning leds - kxm 340: input/ output leds (treshhold -60db) . kxm 700: waveform leds - include 15 presets - 3550/ 51 compatible - windows installer/ deinstaller download: https://sites.google.com/site/kxmodular/kxm_v3.0_3545b_setup.zip https://sites.google.com/site/kxmodular/kxm_v3.0_3550_setup.zip screenshot: https://sites.google.com/site/kxmodular/screenshot_kxm_v3.0.bmp homepage: https://sites.google.com/site/kxmodular/ http://kxm.dyndns.org (not active yet) -------------------------------------------------------------------------------------------------------------------------
that's pretty sweet i remember suggesting something like this a few years back, but have no idea how to code
module list kxm 100 - 3 octaves keyboard unit (midi support) kxm 150 - universal divider (usefull as octave divider) kxm 160 - universal 4x multiplier (usefull as octave multiplier) kxm 200 - multi vco saw, spaced saw, triangle, square, pulsewidthed square (aliasing) kxm 210 - multi vco saw, supersquare, triangle (aliasingfree!) kxm 220 - white & pink noise kxm 300 - 4 channel mixer module kxm 310 - 8 channel mixer module kxm 320 - 6 channel mixer module kxm 330 - 2 channel mixer module kxm 400 - adsr envelope kxm 500 - MOOG Lowpass -24 db/oct kxm 510 - state variable filter -12 db/oct kxm 520 - double MOOG lowpass -48 db/oct kxm 550 - -6db/oct lowpass filter kxm 560 - -6db/oct highpass filter kxm 600 - standard vca kxm 700 - multi lfo saw, spaced saw, triangle, square, pulsewidthed square kxm 800 - resampler 1-24 khz kxm 810 - waveshaper logaritmic, exponential, cut kxm 820 - ring modulator kxm 830 - bit crusher 8..1 bit kxm 900 - unisono module kxm 910 - phaser module
hi all, i made a little demo sequence with the kx modular. all you hear is kx- powered (synth, samples, effects, dynamics) except the sequencer work. it came dry out from reason 3.0 through 6 asio channels. http://freenet-homepage.de/stylish-s...arp_pre_02.mp3 http://freenet-homepage.de/stylish-stylus/arp_reason_setup.jpg http://freenet-homepage.de/stylish-stylus/arp_dsp_setup.jpg sounds/samples: kx modular system 1 (prerelease version) effects: efx-reverbstation, space'80, microchorus, microdelay[x] dynamics: 10 band eq, dynamic processor stylus
another fine tune made today with kx modular http://freenet-homepage.de/stylish-stylus/ox4_pre_01.mp3 sorry my upload limit is 1.5 mb
"the beginning is the sound. and sound comes from the audigy." but we should not forget that "reason" as "sampleplayer" makes the groove. so we use best from both worlds. ps: next time i try max's ufx reverb
I have been having fun playing around with these plugins (using MIDI-YOKE/MIDI-OX for automation), but they use quite a bit of resources on my 10k1 card. For this reason I made myself a plugin to replace the kvm-100. It seems to work good, and it uses less resources and handles more notes, so I thought I would post the code in case you want to check it out, etc: Code: output cv, gate_; control note=0x30600000, gate=0x0; temp t macs cv, 0x0, note, 0x80; macs gate_, 0x1, cv, 0xaaaaaab; macints t, 0x0, gate_, 0xc; macints t, t, cv, 0xffffffff; macints t, 0xc, t, 0xffffffff; macs cv, 0.62976, 0, 0; skip ccr, ccr, 0x7fffffff, t; macs cv, 0x0, cv, 0x78d0df9c; macs cv, 0x0, cv, 0x78d0df9c; macs cv, 0x0, cv, 0x78d0df9c; macs cv, 0x0, cv, 0x78d0df9c; macs cv, 0x0, cv, 0x78d0df9c; macs cv, 0x0, cv, 0x78d0df9c; macs cv, 0x0, cv, 0x78d0df9c; macs cv, 0x0, cv, 0x78d0df9c; macs cv, 0x0, cv, 0x78d0df9c; macs cv, 0x0, cv, 0x78d0df9c; macs cv, 0x0, cv, 0x78d0df9c; macs cv, 0x0, cv, 0x78d0df9c; skip ccr, ccr, 0x7fffffff, gate_; macs cv, 0, cv, 0x40000000; macs cv, 0, cv, 0x40000000; macs cv, 0, cv, 0x40000000; macs cv, 0, cv, 0x40000000; macs cv, 0, cv, 0x40000000; macs cv, 0, cv, 0x40000000; macs cv, 0, cv, 0x40000000; macs cv, 0, cv, 0x40000000; macs cv, 0, cv, 0x40000000; macs cv, 0, cv, 0x40000000; macs cv, 0, cv, 0x40000000; macints cv, 0, cv, 0x2 tstneg gate_, gate, 0x7fffffff, 0x53e2; -Russ
a solution without a lookup table. the kbu calculates the exponential cv on the fly - very cool. i tried it out and it works excellent over the full note range. can you explain what you have done exactly? (before i do reverse engieering) stylus ps: this kbu could be called "kxm 101" or anything else and could be part of the final release of the synth with your copyright's, if you want. ( the range kxm 100-199 was planned for keyboard related stuff) in each case i want to set a link to this.
It calculates the note (0-11) and octave (1-11), and then uses the following formula to calculate the frequency (your exp values are related to each other in same way as the original frequencies): freq = start_freq * 2^(-1/12)^(number of half steps from start_freq) 2^(-1/12) = 0.94387431268169349664191315666753 Raising a number to a power(x) is just multiplying that number by itself (x) number of times, so we can just multiply by 2^(-1/12) for each half step we need. Then for each octave (x) we need to go down, we just multiply the value by 0.5, (x) number of times. The calculations use C9 as the starting freq, but it's value is greater than one, so instead I use C8 (0.62976) and multiply by 2 at the end. The calculations at the top just calculate the note (0-11) and octave (1-11), and then offsets the values, such that it tells us how many multiplies to skip. note = (slider value * 0x80) skips for octave calc = 0x1 + (note / 12) skips for freq calc = 0xC - (((skips for octave calc) * 12) - note) (hex values (above) represent fractional values) Does that make sense to you? Feel free to use the code however you want...
simple, but great idea. actually i'm doing some optimizations in dane and c++ to save gpr's. copyrights are important to me. every idea should be protected. it does not play rolls if we work on open source or commercially projects.
If a GPR is overwritten anyway, then it is free to be used for temp storage before that point (and output GPR's can be used more then once in your code (just not inputs)), so take advantage of that fact to save GPR's (i.e. 'cv' and 'gate_' in the above code are used for temp storage in the calculations at the top of the code). i.e. kvm300 'a' is not needed at all, as 'out' can be used instead.
the final release comes the next days. many things are improved, some new modules included. no midi api in c++ at the moment. had no really time to work on the project. regards stylus
kx modular final release v1.1 kxm has reached final release v1.1. just register all plugins, start "trafo", load "kxm_v11.trf" into it, choose midi connections, load synth preset and play! :w00t: (remember the korg poly 800, moog minimoog, oberheim 4voice or yamaha dx7) http://freenet-homepage.de/stylish-stylus/kxm_final_v1.1.zip http://freenet-homepage.de/stylish-stylus/firedance_pre_01.mp3 have fun! last minute: - preset "kxm saw pad" & presets for vco to play minor or major (very cool polyphonic simulation) v1.1, 23.04.2008 - final release version - now 28 modules - new aliasingfree vco "kxm 210" replaces the old one (based on "kxm 200" with saw, triangle, square, pulswidthed square) - new full range keyboard unit "kxm 110", thanks russ - new "kxm 170" 16x multiplier (use as octave multiplier to generate higher frequencies for ringmodulation (fm - modulation)) - new "kxm 180" single dc value - new "kxm 190" inverter - new "trafo" preset "kxm_v11" to use with "kxm 110" - some presets of classic synths with basic automation for nordlead 1 midi controllers - no more velocity control inputs in vcf's, vca's - no more spaced saw in vco's - no more supersquare (maybe later again) - 2 lfo inputs in vco, vcf's, vca for liquid modulation - added 16x gain slider in ringmodulator "kxm 820" - envelope adjustments in "kx 400" - base frequency adjustments in vco's (2 octaves lower), smaller finetune range - lfo control adjustments in vcf, vca - lfo offset slider +/- 0.5 - spike filter on all vca control inputs - new guid in "kxm 520" (was the same as "kxm 500") - freeware "trafo 0.8" is bundled, please visit "http://members.nextra.at/hubwin//midi.html" - some code optimizations kx it!
what kx modular could do in future (what the dsp is able to do) -better midi timing -morph mixer (vector-, wavetable like simulation) -minimal vco, vcf, vca, envelopes: a (fade in), ad, ar (percussion), ads (minimoog), lfo -portamento -polyphonic (up to 8-16 voices in dependence of complexity) -lfo retrigger -spring reverb -single gate (midi) for drums -step sequencer -arpeggiator -fm osc. (sin) -envelope follower -noise manipulator (granular simulation) -gate retrigger (claps) -simple operators (control voltage & audio): adder, multiplier, rectifier.. -sample rom based synthesis in combination with soundfonts (could imagine a sequential prophet vs or ppg wave synth emulation!) as you can see, emu has implemented all functions to build synthesizers on that dsp. i allways asked me, why this never was done with exception of kx users (lemury and me). perhaps the dsp power of 100/200 mips was to low in contrast to bigger ones from motorola, texas instruments.. which have 10-20 times more power today. nevertheless for the time, when the dsp was released around year 2000, it had enough capacities to establish on the digital synthesizer market.