# 2ndP IGroove v1.0

### 2ndProcess' Groove Aid Machine for Buzz (-> www.jeskola.com/www.buzzmachines.com)

## What's different to MGroove...

I renamed "shuffle" to "swing" to avoid confusion with Hoester's GrooveBox and normal terminology.
There's still a slider called "shuffle" but it's not the same as in MGroove but like in Hoester's GrooveBox - it's the randomization amount! So now you can emulate a bad live musician :(
More echo times in the Info view...
Added track commands, which replace the old sync trigger row. You can have up to 4 at once by adding tracks.
IGroove is switched off by default (MGroove couldn't be switched off at all :) You can right-click the machine and click on "switch on/off" to change state or use command 0x11 to switch on and command 0x10 to switch off. You can still use it as echo time calculator even when it's switched off.
Old "sync all" trigger is now "0" command, old "0" sync (phase) trigger is now "1"; added a phase sync trigger for the other (faster) phase :)

## Installation

Put IGroove.dll into the Buzz\Gear\Generators folder. Leave the old MGroove.dll where it is to be compatible with old songfiles :) but I recommend to hide it in index.txt by writing a comma (and nothing else) behind its name. Add a new line containing this: "IGroove,2ndP IGroove" in index.txt.

## What is it?

An old music tracking trick which adds a more grooving, swinging feel to music without turning to a higher resolution is to change the song speed while the song is played... I thought it would be cool to have this automated, so I did it...
Since now you don't have to compute the swing amount by hand, you can change it in no time and thus write patterns with exactly twisted shuffle amount & type.
You can also switch back to the classic Master pattern editing by recording a master pattern while IGroove is running...
IGroove features an echo time dialog. You see a list of echo tick and beat durations in ms when you select "Echo Times" in the pop-up menu.
IGroove is not a hack, at least not in the worse definiton of the word, so you can assume it will work with future versions too.

## Global parameters

BPM/TPB: The average speed for your song. Fractional bpm values are to make swinging and shuffling more precise.
BPM Inertia: 0.0001 to 1. 1 means no inertia, ie changes to the BPM slider take effect immediately; 0.0001 means it will take LONG until the new value is reached. The inertia algorithm is (still) DAMN BAD, I admit... :( but it works :)!
Swing: 0 to 16 ticks. how many ticks to wait between swing steps.
Length: 0 means swing is off; high values might give confusing results... You might use 1 or 2 most often in the beginning.
Shuffle: 0 to 75% - each "swing length" ticks, speed is raised then, after again "swing length" ticks, it is decreased (or vice versa????).
Random: 0 to 50% - the amount of "humanization" :)

## Track commands (hex)

00: Sync swing (phase+counter) - every song should have this trigger somewhere. it syncs the counter and the phase of the swinging to your song.
01: Set low phase - sets the phase to the lower speed.
02: Set high phase - sets the phase to the higher speed.
04: Beat length -> BPM - sets the bpm slider according to the duration of a beat in milliseconds.
05: Tick length -> BPM - same as 02 but for the tick duration.
10: Switch off - gives control back to the master - switch on with command 11
11: Switch on - switches IGroove on.
12: Read tempo from Master - gets the bpm/tpb settings from Master. usually used when IGroove is switched off.
13: Set tempo in Master - sets the bpm/tpb settings in the Master.

## Notes, Hints & Tips

Trigger a "00" command in every song!
You can make more groove modes with the 01 and 02 commands...
You can use IGroove to record patterns for the Master instead of using it directly. You can then remove it from your song and use the Master patterns for tempo and groove control - if you like.
If you don't want to shuffle the whole song, either change the shuffling throughout the song :) or use Hoester's GrooveBox... which is better if you want to shuffle just some tracks playing together with non-shuffled. Interesting effects can be achieved by using both together! 8p
Buzz machines behave differently when tempo is shuffled. E.g. for Ninja Delay, when you set a tick-wise delay while shuffle is = 0, you can then move the shuffle slider without the echo time changing. MTrk has two modes for looping samples, one is synchronized and the other one not.
The inertia feature is nice if you want to slow down/speed up a very fast section that is repeated via 2ndPLoopJumpHACK.

## Legal Information

This small bunch of data is FREEWARE. Redistribute it as you like, but don't change it please.
If my software should cause any harm, directly or indirectly, I am NOT RESPONSIBLE. I can't be. Use this at your risk, though I promise you there is none :)

## Contact

I can be reached via e-mail: malteschreiber@hotmail.com