BuzzFAQ> > >  Machine HelpFiles> > >  BuzzManual > > >  BuzzMusic> > >  BuzzMachines> > > 

Lost_Bit improved MoDulation 2



This machine is an amplitude modulation effect with tricky custimizable envelopes.
it is more cpu-expensive than "elenzil amplitude modulation"
but it's more flexible then all other AM stuff...

Features

-- linear distortion of envelope by "time" axis.
-- improwed pow() algorithm
-- user envelopes
-- stereo input
-- and many more...


Parameters

fn1 -- envelope function 1
sin, tri, saw, sqr, isaw, fsin, fnoiz, userXX...
note: fsin is faster then sin
user waves can be added with minimize button of envelope view

fn2 -- envelope function 2
same as fn1

Fade -- Fade fn1 to fn2 slider
fades fn1 to fn2 smoothly
values "pure fn1" and "pure fn2" are optimized

DWidth -- Width of envelope half-Period (i.e. distortion strength)
adds asymmetric distortion to a combination of fn1 and fn2
to clear how it works take a look to an envelope window
values "0", "-1", "+1" are optimized

DPhase -- Phase of distortion window
"moves" distortion on envelope

Power -- envelope**Power (i.e. x**y)
additionaly distorts envelope
there is two types of pow()
to clear what they are take a look to an envelope window
value "1" is optimized

Period -- Modulation speed factor (but it is Period definitely :)

Type -- Period Length Unit (tick, tick/256, ms, smpl)

Floor -- Modulation strenght factor
i.e. modulation depth
it can be negative. negative values are invert envelope.
all values are equal by performance

PhaseL -- Phase of envelope on Left channel
retrigges internal phase wnen changed

PhaseR -- Phase of envelope on Right channel
retrigges internal phase wnen changed


Attributes

precision of fastfunc
-- defines samplerate of wave. i.e. table length of function.
samplerate = 0x1000 * value

lowering fnoiz samplerate
-- fnoiz samplerate reduction. i.e. decrase table length of fnoiz
nzsmplrate = samplerate / value

precision of normalization procedure
-- subdivision of samplerate when getting min/max of envelope
mxsmplrate = samplerate * value


Submenus

Envelope View -- window for proper control of envelope
you can view all period of envelope starting from "retrigged" value.
white color -- Left channel
blue color -- Right channel
pink horizontal line -- indicate "zero" value of the waves
red dot on left top position -- indicates that the normalization is on
maximize button -- normalizes current envelope if needed
minimize button -- stores current envelope in free user wave slot
advice: after pressing "minimize" choose setting and then select user wave

Erase Wave
-- erases user wave on which points fn1 parameter
message window will appear on success

About
-- plain about window with contact info


History:

v1.0 -- primitive optimisations
v1.2 -- vis window (for better envelope tuning)
-- some bugfixes
v1.3 -- fast envelope functions (fastsin) based on fast asm code by Lost_Bit :)
v1.4 -- added alternative pow(..) algorithm, improved "floor" parameter
v1.5 -- maximize button -- zoomes envelope to fit in window (normalizes envelope)
-- couple of bugs were fixed
....
v2.o -- user waves
-- minimize button
-- erase wave submenu
-- total save on module save :)
-- some improvements and optimizations
-- inertia on period
-- prefinal release