EXT will reset clocks in MIDI clock mode.
Add reset behavior for EXT clock input when MIDI clock source is selected. Fixes: https://git.pinkduck.xyz/awonak/libGravity/issues/22
This commit is contained in:
@ -37,10 +37,12 @@
|
|||||||
* Shift - hold and rotate encoder to change current selected output channel.
|
* Shift - hold and rotate encoder to change current selected output channel.
|
||||||
*
|
*
|
||||||
* EXT:
|
* EXT:
|
||||||
* External clock input. When Gravity is set to INTERNAL clock mode, this
|
* External clock input. When Gravity is set to INTERNAL or MIDI clock
|
||||||
* input is used to reset clocks.
|
* source, this input is used to reset clocks.
|
||||||
*
|
*
|
||||||
* CV1:
|
* CV1:
|
||||||
|
* External analog input used to provide modulation to any channel parameter.
|
||||||
|
*
|
||||||
* CV2:
|
* CV2:
|
||||||
* External analog input used to provide modulation to any channel parameter.
|
* External analog input used to provide modulation to any channel parameter.
|
||||||
*
|
*
|
||||||
@ -155,13 +157,16 @@ void HandleIntClockTick(uint32_t tick) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void HandleExtClockTick() {
|
void HandleExtClockTick() {
|
||||||
if (gravity.clock.InternalSource()) {
|
switch (app.selected_source) {
|
||||||
// Use EXT as Reset when internally clocked.
|
case Clock::SOURCE_INTERNAL:
|
||||||
ResetOutputs();
|
case Clock::SOURCE_EXTERNAL_MIDI:
|
||||||
gravity.clock.Reset();
|
// Use EXT as Reset when not used for clock source.
|
||||||
} else {
|
ResetOutputs();
|
||||||
// Register clock tick.
|
gravity.clock.Reset();
|
||||||
gravity.clock.Tick();
|
break;
|
||||||
|
default:
|
||||||
|
// Register EXT cv clock tick.
|
||||||
|
gravity.clock.Tick();
|
||||||
}
|
}
|
||||||
app.refresh_screen = true;
|
app.refresh_screen = true;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user