diff options
Diffstat (limited to 'src/sequencer.c')
-rw-r--r-- | src/sequencer.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/src/sequencer.c b/src/sequencer.c index 27874f5..8addefd 100644 --- a/src/sequencer.c +++ b/src/sequencer.c | |||
@@ -513,7 +513,7 @@ toggle_playing(void) { | |||
513 | chain.current = find_next_pattern(); | 513 | chain.current = find_next_pattern(); |
514 | chain.playing = false; | 514 | chain.playing = false; |
515 | bar_counter = 0; | 515 | bar_counter = 0; |
516 | if (current_pattern == next_pattern && chain.len > 0) { | 516 | if (current_pattern == next_pattern && chain.len > 0 && chain.enabled) { |
517 | chain.playing = true; | 517 | chain.playing = true; |
518 | next_pattern = chain.chain[chain.current]; | 518 | next_pattern = chain.chain[chain.current]; |
519 | current_pattern = next_pattern; | 519 | current_pattern = next_pattern; |
@@ -573,7 +573,7 @@ pause_playing(void) { | |||
573 | SOUND_WAVE_CTRL = 0; | 573 | SOUND_WAVE_CTRL = 0; |
574 | SOUND_NOISE_CTRL = 0; | 574 | SOUND_NOISE_CTRL = 0; |
575 | chain.playing = false; | 575 | chain.playing = false; |
576 | if (current_pattern == next_pattern && chain.len > 0) { | 576 | if (current_pattern == next_pattern && chain.len > 0 && chain.enabled) { |
577 | chain.playing = true; | 577 | chain.playing = true; |
578 | next_pattern = chain.chain[chain.current]; | 578 | next_pattern = chain.chain[chain.current]; |
579 | current_pattern = next_pattern; | 579 | current_pattern = next_pattern; |
@@ -780,11 +780,11 @@ handle_pattern_chain(void) { | |||
780 | param_selection_loc = 8; | 780 | param_selection_loc = 8; |
781 | } | 781 | } |
782 | } else if (key_tap(KEY_UP)) { | 782 | } else if (key_tap(KEY_UP)) { |
783 | if (param_selection_loc >= 1 && param_selection_loc <= 2) { | 783 | if (param_selection_loc >= 0 && param_selection_loc <= 2) { |
784 | param_selection_loc = 16; | 784 | param_selection_loc = 16; |
785 | } else if (param_selection_loc >= 3 && param_selection_loc <= 4) { | 785 | } else if (param_selection_loc >= 3 && param_selection_loc <= 4) { |
786 | param_selection_loc = 17; | 786 | param_selection_loc = 17; |
787 | } else if (param_selection_loc >= 5 && param_selection_loc <= 6) { | 787 | } else if (param_selection_loc >= 5 && param_selection_loc <= 7) { |
788 | param_selection_loc = 18; | 788 | param_selection_loc = 18; |
789 | } else if (param_selection_loc >= 8 && param_selection_loc <= 15){ | 789 | } else if (param_selection_loc >= 8 && param_selection_loc <= 15){ |
790 | param_selection_loc -= 8; | 790 | param_selection_loc -= 8; |
@@ -1391,7 +1391,8 @@ handle_trigger_selection(void) { | |||
1391 | TriggerNote *trig = get_current_trig(); | 1391 | TriggerNote *trig = get_current_trig(); |
1392 | 1392 | ||
1393 | bool empty = patterns[pattern_selection_loc].empty; | 1393 | bool empty = patterns[pattern_selection_loc].empty; |
1394 | if (key_tap(KEY_B)) { | 1394 | if (key_hold(KEY_B)) { |
1395 | } else if (key_released(KEY_B)) { | ||
1395 | if (key_hold(KEY_SELECT)) { | 1396 | if (key_hold(KEY_SELECT)) { |
1396 | clipboard_copy(); | 1397 | clipboard_copy(); |
1397 | } else { | 1398 | } else { |