Skip to content

Commit

Permalink
update to v2.6.3
Browse files Browse the repository at this point in the history
  • Loading branch information
sickozell committed Jan 13, 2024
1 parent 42356b9 commit 44b726f
Show file tree
Hide file tree
Showing 6 changed files with 69 additions and 19 deletions.
6 changes: 4 additions & 2 deletions changelog.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
### 2.6.3 (2024-01-13)
- sickoLooper: fixed a bug with PLAY/STOP ALL button that doesn't stop recording a non-synced track.
Allowed poly cable sources.
- sickoLooper: Allowed poly cable sources.
Added 'Internal Clock Always ON' option in the right-click menu.
Set default 'Play Full Tail On Stop' to off.
fixed a bug with PLAY/STOP ALL button that doesn't stop recording a non-synced track.
fixed a bug on 'play full tail on stop' when looping solo tracks.
- clocker: added external clock ppqn option in the context menu.
Fixed a bug on bar detection when using external clock.
Changed trig/swing led to color red.
Expand Down
Binary file modified docs/sickoLooper manuale utente [IT].pdf
Binary file not shown.
Binary file modified docs/sickoLooper user manual [EN].pdf
Binary file not shown.
4 changes: 2 additions & 2 deletions extra/crossCompiler.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,10 @@ git tag v2.6.3-beta6 -m "create v2.6.3-beta6"
git push origin --tags

delete local tag
git tag -d v2.6.3-beta
git tag -d v2.6.4-beta

delete remote
git push --delete origin v2.6.3-beta
git push --delete origin v2.6.4-beta


### How to build a VCVRack plugin with Github Action
Expand Down
38 changes: 31 additions & 7 deletions src/SickoLooper3.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -302,7 +302,7 @@ struct SickoLooper3 : Module {
bool overdubAfterRec = false;
bool fadeInOnPlay[5] = {false, false, false, false, false};
bool extraSamples[5] = {true, true, true, true, true};
bool playFullTail[5] = {true, true, true, true, true};
bool playFullTail[5] = {false, false, false, false, false};

// ***************************************************************************************************
// exponential time knkobs
Expand Down Expand Up @@ -643,7 +643,7 @@ struct SickoLooper3 : Module {
for (int track = 0; track < MAX_TRACKS; track++) {
extraSamples[track] = true;
playTail[track] = false;
playFullTail[track] = true;
playFullTail[track] = false;
fadeTail[track] = false;
fadeInOnPlay[track] = false;
trackBuffer[track][LEFT].clear();
Expand Down Expand Up @@ -3595,10 +3595,16 @@ struct SickoLooper3 : Module {
if (solo_setting[track]) {
startNewSolo = true;
currentSoloTrack = -1;
/*
if (nextSoloTrack < 0) {
playTail[track] = true;
tailEnd[track] = samplePos[track] + tailSamples;
}
*/
if (nextSoloTrack < 0 && playFullTail[track]) {
playTail[track] = true;
tailEnd[track] = samplePos[track] + tailSamples;
}
} else if (!rev_setting[track] && playFullTail[track]) {
playTail[track] = true;
tailEnd[track] = samplePos[track] + tailSamples;
Expand All @@ -3619,10 +3625,16 @@ struct SickoLooper3 : Module {
if (solo_setting[track]) {
startNewSolo = true;
currentSoloTrack = -1;
/*
if (nextSoloTrack < 0) {
playTail[track] = true;
tailEnd[track] = samplePos[track] + tailSamples;
}
*/
if (nextSoloTrack < 0 && playFullTail[track]) {
playTail[track] = true;
tailEnd[track] = samplePos[track] + tailSamples;
}
} else if (!rev_setting[track] && playFullTail[track] && !stopNow[track]) {
playTail[track] = true;
tailEnd[track] = samplePos[track] + tailSamples;
Expand Down Expand Up @@ -3816,10 +3828,16 @@ struct SickoLooper3 : Module {
if (solo_setting[track]) {
startNewSolo = true;
currentSoloTrack = -1;
/*
if (nextSoloTrack < 0) {
playTail[track] = true;
tailEnd[track] = samplePos[track] + tailSamples;
}
*/
if (nextSoloTrack < 0 && playFullTail[track]) {
playTail[track] = true;
tailEnd[track] = samplePos[track] + tailSamples;
}
} else if (!rev_setting[track] && playFullTail[track]) {
playTail[track] = true;
tailEnd[track] = samplePos[track] + tailSamples;
Expand All @@ -3837,10 +3855,16 @@ struct SickoLooper3 : Module {
if (solo_setting[track]) {
startNewSolo = true;
currentSoloTrack = -1;
/*
if (nextSoloTrack < 0) {
playTail[track] = true;
tailEnd[track] = samplePos[track] + tailSamples;
}
*/
if (nextSoloTrack < 0 && playFullTail[track]) {
playTail[track] = true;
tailEnd[track] = samplePos[track] + tailSamples;
}
} else if (!rev_setting[track] && playFullTail[track] && !stopNow[track]) {
playTail[track] = true;
tailEnd[track] = samplePos[track] + tailSamples;
Expand Down Expand Up @@ -4510,6 +4534,7 @@ struct SickoLooper3DisplayLoop1 : TransparentWidget {

menu->addChild(createMenuLabel(("TRACK "+to_string(track+1)).c_str()));
menu->addChild(createBoolPtrMenuItem("Fade IN on playback", "", &module->fadeInOnPlay[track]));
menu->addChild(createBoolPtrMenuItem("Play Full Tail on Stop", "", &module->playFullTail[track]));
menu->addChild(new MenuSeparator());
menu->addChild(createMenuItem("Import Wav", "", [=]() {module->menuLoadSample(track);}));
if (module->trackStatus[track] != EMPTY)
Expand All @@ -4523,7 +4548,6 @@ struct SickoLooper3DisplayLoop1 : TransparentWidget {
}, [=](bool xtraSamples) {
module->setExtraSamples(track, xtraSamples);
}));
menu->addChild(createBoolPtrMenuItem("Play Full Tail on Stop", "", &module->playFullTail[track]));
if (module->trackStatus[track] != EMPTY)
menu->addChild(createMenuItem("Detect tempo and set bpm", "", [=]() {module->detectTempo(track);}));
else
Expand Down Expand Up @@ -4672,6 +4696,7 @@ struct SickoLooper3DisplayLoop2 : TransparentWidget {

menu->addChild(createMenuLabel(("TRACK "+to_string(track+1)).c_str()));
menu->addChild(createBoolPtrMenuItem("Fade IN on playback", "", &module->fadeInOnPlay[track]));
menu->addChild(createBoolPtrMenuItem("Play Full Tail on Stop", "", &module->playFullTail[track]));
menu->addChild(new MenuSeparator());
menu->addChild(createMenuItem("Import Wav", "", [=]() {module->menuLoadSample(track);}));
if (module->trackStatus[track] != EMPTY)
Expand All @@ -4685,7 +4710,6 @@ struct SickoLooper3DisplayLoop2 : TransparentWidget {
}, [=](bool xtraSamples) {
module->setExtraSamples(track, xtraSamples);
}));
menu->addChild(createBoolPtrMenuItem("Play Full Tail on Stop", "", &module->playFullTail[track]));

if (module->trackStatus[track] != EMPTY)
menu->addChild(createMenuItem("Detect tempo and set bpm", "", [=]() {module->detectTempo(track);}));
Expand Down Expand Up @@ -4834,6 +4858,7 @@ struct SickoLooper3DisplayLoop3 : TransparentWidget {

menu->addChild(createMenuLabel(("TRACK "+to_string(track+1)).c_str()));
menu->addChild(createBoolPtrMenuItem("Fade IN on playback", "", &module->fadeInOnPlay[track]));
menu->addChild(createBoolPtrMenuItem("Play Full Tail on Stop", "", &module->playFullTail[track]));
menu->addChild(new MenuSeparator());
menu->addChild(createMenuItem("Import Wav", "", [=]() {module->menuLoadSample(track);}));
if (module->trackStatus[track] != EMPTY)
Expand All @@ -4847,8 +4872,7 @@ struct SickoLooper3DisplayLoop3 : TransparentWidget {
}, [=](bool xtraSamples) {
module->setExtraSamples(track, xtraSamples);
}));
menu->addChild(createBoolPtrMenuItem("Play Full Tail on Stop", "", &module->playFullTail[track]));


if (module->trackStatus[track] != EMPTY)
menu->addChild(createMenuItem("Detect tempo and set bpm", "", [=]() {module->detectTempo(track);}));
else
Expand Down Expand Up @@ -5327,6 +5351,7 @@ struct SickoLooper3Widget : ModuleWidget {
menu->addChild(createMenuLabel(("TRACK "+to_string(track+1)).c_str()));

menu->addChild(createBoolPtrMenuItem("Fade IN on playback", "", &module->fadeInOnPlay[track]));
menu->addChild(createBoolPtrMenuItem("Play Full Tail on Stop", "", &module->playFullTail[track]));
menu->addChild(new MenuSeparator());
menu->addChild(createMenuItem("Import Wav", "", [=]() {module->menuLoadSample(track);}));
if (module->trackStatus[track] != EMPTY)
Expand All @@ -5340,7 +5365,6 @@ struct SickoLooper3Widget : ModuleWidget {
}, [=](bool xtraSamples) {
module->setExtraSamples(track, xtraSamples);
}));
menu->addChild(createBoolPtrMenuItem("Play Full Tail on Stop", "", &module->playFullTail[track]));

if (module->trackStatus[track] != EMPTY)
menu->addChild(createMenuItem("Detect tempo and set bpm", "", [=]() {module->detectTempo(track);}));
Expand Down
40 changes: 32 additions & 8 deletions src/SickoLooper5.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -302,7 +302,7 @@ struct SickoLooper5 : Module {
bool overdubAfterRec = false;
bool fadeInOnPlay[5] = {false, false, false, false, false};
bool extraSamples[5] = {true, true, true, true, true};
bool playFullTail[5] = {true, true, true, true, true};
bool playFullTail[5] = {false, false, false, false, false};

// ***************************************************************************************************
// exponential time knkobs
Expand Down Expand Up @@ -680,7 +680,7 @@ struct SickoLooper5 : Module {
for (int track = 0; track < MAX_TRACKS; track++) {
extraSamples[track] = true;
playTail[track] = false;
playFullTail[track] = true;
playFullTail[track] = false;
fadeTail[track] = false;
fadeInOnPlay[track] = false;
trackBuffer[track][LEFT].clear();
Expand Down Expand Up @@ -3737,10 +3737,16 @@ struct SickoLooper5 : Module {
if (solo_setting[track]) {
startNewSolo = true;
currentSoloTrack = -1;
/*
if (nextSoloTrack < 0) {
playTail[track] = true;
tailEnd[track] = samplePos[track] + tailSamples;
}
*/
if (nextSoloTrack < 0 && playFullTail[track]) {
playTail[track] = true;
tailEnd[track] = samplePos[track] + tailSamples;
}
} else if (!rev_setting[track] && playFullTail[track]) {
playTail[track] = true;
tailEnd[track] = samplePos[track] + tailSamples;
Expand All @@ -3761,10 +3767,16 @@ struct SickoLooper5 : Module {
if (solo_setting[track]) {
startNewSolo = true;
currentSoloTrack = -1;
/*
if (nextSoloTrack < 0) {
playTail[track] = true;
tailEnd[track] = samplePos[track] + tailSamples;
}
*/
if (nextSoloTrack < 0 && playFullTail[track]) {
playTail[track] = true;
tailEnd[track] = samplePos[track] + tailSamples;
}
} else if (!rev_setting[track] && playFullTail[track] && !stopNow[track]) {
playTail[track] = true;
tailEnd[track] = samplePos[track] + tailSamples;
Expand Down Expand Up @@ -3958,10 +3970,16 @@ struct SickoLooper5 : Module {
if (solo_setting[track]) {
startNewSolo = true;
currentSoloTrack = -1;
/*
if (nextSoloTrack < 0) {
playTail[track] = true;
tailEnd[track] = samplePos[track] + tailSamples;
}
*/
if (nextSoloTrack < 0 && playFullTail[track]) {
playTail[track] = true;
tailEnd[track] = samplePos[track] + tailSamples;
}
} else if (!rev_setting[track] && playFullTail[track]) {
playTail[track] = true;
tailEnd[track] = samplePos[track] + tailSamples;
Expand All @@ -3979,10 +3997,16 @@ struct SickoLooper5 : Module {
if (solo_setting[track]) {
startNewSolo = true;
currentSoloTrack = -1;
/*
if (nextSoloTrack < 0) {
playTail[track] = true;
tailEnd[track] = samplePos[track] + tailSamples;
}
*/
if (nextSoloTrack < 0 && playFullTail[track]) {
playTail[track] = true;
tailEnd[track] = samplePos[track] + tailSamples;
}
} else if (!rev_setting[track] && playFullTail[track] && !stopNow[track]) {
playTail[track] = true;
tailEnd[track] = samplePos[track] + tailSamples;
Expand Down Expand Up @@ -4652,6 +4676,7 @@ struct SickoLooper5DisplayLoop1 : TransparentWidget {

menu->addChild(createMenuLabel(("TRACK "+to_string(track+1)).c_str()));
menu->addChild(createBoolPtrMenuItem("Fade IN on playback", "", &module->fadeInOnPlay[track]));
menu->addChild(createBoolPtrMenuItem("Play Full Tail on Stop", "", &module->playFullTail[track]));
menu->addChild(new MenuSeparator());
menu->addChild(createMenuItem("Import Wav", "", [=]() {module->menuLoadSample(track);}));
if (module->trackStatus[track] != EMPTY)
Expand All @@ -4665,7 +4690,6 @@ struct SickoLooper5DisplayLoop1 : TransparentWidget {
}, [=](bool xtraSamples) {
module->setExtraSamples(track, xtraSamples);
}));
menu->addChild(createBoolPtrMenuItem("Play Full Tail on Stop", "", &module->playFullTail[track]));
if (module->trackStatus[track] != EMPTY)
menu->addChild(createMenuItem("Detect tempo and set bpm", "", [=]() {module->detectTempo(track);}));
else
Expand Down Expand Up @@ -4814,6 +4838,7 @@ struct SickoLooper5DisplayLoop2 : TransparentWidget {

menu->addChild(createMenuLabel(("TRACK "+to_string(track+1)).c_str()));
menu->addChild(createBoolPtrMenuItem("Fade IN on playback", "", &module->fadeInOnPlay[track]));
menu->addChild(createBoolPtrMenuItem("Play Full Tail on Stop", "", &module->playFullTail[track]));
menu->addChild(new MenuSeparator());
menu->addChild(createMenuItem("Import Wav", "", [=]() {module->menuLoadSample(track);}));
if (module->trackStatus[track] != EMPTY)
Expand All @@ -4827,7 +4852,6 @@ struct SickoLooper5DisplayLoop2 : TransparentWidget {
}, [=](bool xtraSamples) {
module->setExtraSamples(track, xtraSamples);
}));
menu->addChild(createBoolPtrMenuItem("Play Full Tail on Stop", "", &module->playFullTail[track]));
if (module->trackStatus[track] != EMPTY)
menu->addChild(createMenuItem("Detect tempo and set bpm", "", [=]() {module->detectTempo(track);}));
else
Expand Down Expand Up @@ -4975,6 +4999,7 @@ struct SickoLooper5DisplayLoop3 : TransparentWidget {

menu->addChild(createMenuLabel(("TRACK "+to_string(track+1)).c_str()));
menu->addChild(createBoolPtrMenuItem("Fade IN on playback", "", &module->fadeInOnPlay[track]));
menu->addChild(createBoolPtrMenuItem("Play Full Tail on Stop", "", &module->playFullTail[track]));
menu->addChild(new MenuSeparator());
menu->addChild(createMenuItem("Import Wav", "", [=]() {module->menuLoadSample(track);}));
if (module->trackStatus[track] != EMPTY)
Expand All @@ -4988,7 +5013,6 @@ struct SickoLooper5DisplayLoop3 : TransparentWidget {
}, [=](bool xtraSamples) {
module->setExtraSamples(track, xtraSamples);
}));
menu->addChild(createBoolPtrMenuItem("Play Full Tail on Stop", "", &module->playFullTail[track]));
if (module->trackStatus[track] != EMPTY)
menu->addChild(createMenuItem("Detect tempo and set bpm", "", [=]() {module->detectTempo(track);}));
else
Expand Down Expand Up @@ -5136,6 +5160,7 @@ struct SickoLooper5DisplayLoop4 : TransparentWidget {

menu->addChild(createMenuLabel(("TRACK "+to_string(track+1)).c_str()));
menu->addChild(createBoolPtrMenuItem("Fade IN on playback", "", &module->fadeInOnPlay[track]));
menu->addChild(createBoolPtrMenuItem("Play Full Tail on Stop", "", &module->playFullTail[track]));
menu->addChild(new MenuSeparator());
menu->addChild(createMenuItem("Import Wav", "", [=]() {module->menuLoadSample(track);}));
if (module->trackStatus[track] != EMPTY)
Expand All @@ -5149,7 +5174,6 @@ struct SickoLooper5DisplayLoop4 : TransparentWidget {
}, [=](bool xtraSamples) {
module->setExtraSamples(track, xtraSamples);
}));
menu->addChild(createBoolPtrMenuItem("Play Full Tail on Stop", "", &module->playFullTail[track]));
if (module->trackStatus[track] != EMPTY)
menu->addChild(createMenuItem("Detect tempo and set bpm", "", [=]() {module->detectTempo(track);}));
else
Expand Down Expand Up @@ -5296,6 +5320,7 @@ struct SickoLooper5DisplayLoop5 : TransparentWidget {

menu->addChild(createMenuLabel(("TRACK "+to_string(track+1)).c_str()));
menu->addChild(createBoolPtrMenuItem("Fade IN on playback", "", &module->fadeInOnPlay[track]));
menu->addChild(createBoolPtrMenuItem("Play Full Tail on Stop", "", &module->playFullTail[track]));
menu->addChild(new MenuSeparator());
menu->addChild(createMenuItem("Import Wav", "", [=]() {module->menuLoadSample(track);}));
if (module->trackStatus[track] != EMPTY)
Expand All @@ -5309,7 +5334,6 @@ struct SickoLooper5DisplayLoop5 : TransparentWidget {
}, [=](bool xtraSamples) {
module->setExtraSamples(track, xtraSamples);
}));
menu->addChild(createBoolPtrMenuItem("Play Full Tail on Stop", "", &module->playFullTail[track]));
if (module->trackStatus[track] != EMPTY)
menu->addChild(createMenuItem("Detect tempo and set bpm", "", [=]() {module->detectTempo(track);}));
else
Expand Down Expand Up @@ -5832,6 +5856,7 @@ struct SickoLooper5Widget : ModuleWidget {
menu->addChild(createMenuLabel(("TRACK "+to_string(track+1)).c_str()));

menu->addChild(createBoolPtrMenuItem("Fade IN on playback", "", &module->fadeInOnPlay[track]));
menu->addChild(createBoolPtrMenuItem("Play Full Tail on Stop", "", &module->playFullTail[track]));
menu->addChild(new MenuSeparator());
menu->addChild(createMenuItem("Import Wav", "", [=]() {module->menuLoadSample(track);}));
if (module->trackStatus[track] != EMPTY)
Expand All @@ -5845,7 +5870,6 @@ struct SickoLooper5Widget : ModuleWidget {
}, [=](bool xtraSamples) {
module->setExtraSamples(track, xtraSamples);
}));
menu->addChild(createBoolPtrMenuItem("Play Full Tail on Stop", "", &module->playFullTail[track]));

if (module->trackStatus[track] != EMPTY)
menu->addChild(createMenuItem("Detect tempo and set bpm", "", [=]() {module->detectTempo(track);}));
Expand Down

0 comments on commit 44b726f

Please sign in to comment.