Initial non-working commit of shuffle behavior. This change exposed a bug that seems to be calling each "processClockTick" method twice per tick.

This commit is contained in:
2025-06-19 09:32:41 -07:00
parent 54999d6525
commit df1a499fa0
6 changed files with 62 additions and 5 deletions

View File

@ -244,6 +244,14 @@ void DisplayChannelPage() {
sprintf(mainText, "%d%%", ch.getOffset(withCvMod));
subText = "SHIFT HIT";
break;
case PARAM_CH_SHUFFLE:
ch.getShuffleIndex() == 0
// ? sprintf(mainText, "OFF")
// TODO: why is this being incremented by 2?
? sprintf(mainText, "%d", ch.getStepCount())
: sprintf(mainText, "%d%%", shuffle_amount[ch.getShuffleIndex()]);
subText = "SHUFFLE";
break;
case PARAM_CH_CV_SRC: {
switch (ch.getCvSource()) {
case CV_NONE:
@ -293,7 +301,7 @@ void DisplayChannelPage() {
// Draw Channel Page menu items
const char* menu_items[PARAM_CH_LAST] = {
"MOD", "PROBABILITY", "DUTY", "OFFSET", "CV SOURCE", "CV DEST"};
"MOD", "PROBABILITY", "DUTY", "OFFSET", "SHUFFLE", "CV SOURCE", "CV DEST"};
drawMenuItems(menu_items, PARAM_CH_LAST);
}