From e1680f8c586dfd111b794c0e6f7cc9ed81a76b0b Mon Sep 17 00:00:00 2001 From: Bad Diode Date: Fri, 15 Sep 2023 10:47:26 +0200 Subject: Prepare for release --- src/sequencer.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'src/sequencer.c') diff --git a/src/sequencer.c b/src/sequencer.c index 8addefd..632a777 100644 --- a/src/sequencer.c +++ b/src/sequencer.c @@ -755,6 +755,7 @@ handle_right_col_selection(void) { void handle_pattern_chain(void) { + static int previous_loc = 0; if (key_tap(KEY_A)) { input_handler = handle_pattern_selection; } else if (key_tap(KEY_LEFT)) { @@ -781,10 +782,13 @@ handle_pattern_chain(void) { } } else if (key_tap(KEY_UP)) { if (param_selection_loc >= 0 && param_selection_loc <= 2) { + previous_loc = param_selection_loc; param_selection_loc = 16; } else if (param_selection_loc >= 3 && param_selection_loc <= 4) { + previous_loc = param_selection_loc; param_selection_loc = 17; } else if (param_selection_loc >= 5 && param_selection_loc <= 7) { + previous_loc = param_selection_loc; param_selection_loc = 18; } else if (param_selection_loc >= 8 && param_selection_loc <= 15){ param_selection_loc -= 8; @@ -793,11 +797,11 @@ handle_pattern_chain(void) { if (param_selection_loc <= 7) { param_selection_loc += 8; } else if (param_selection_loc == 16){ - param_selection_loc = 1; + param_selection_loc = previous_loc; } else if (param_selection_loc == 17){ - param_selection_loc = 3; + param_selection_loc = previous_loc; } else if (param_selection_loc == 18){ - param_selection_loc = 5; + param_selection_loc = previous_loc; } } else if (key_tap(KEY_B)) { switch (param_selection_loc) { -- cgit v1.2.1