diff --git a/libavr32 b/libavr32 index 558ecf0..086e5c9 160000 --- a/libavr32 +++ b/libavr32 @@ -1 +1 @@ -Subproject commit 558ecf0d28183fd206665fadd36a4a85319b3a3e +Subproject commit 086e5c9d39f25dc53686313da7baaca3d6a0df75 diff --git a/src/ansible_grid.c b/src/ansible_grid.c index 9dea49d..752e284 100644 --- a/src/ansible_grid.c +++ b/src/ansible_grid.c @@ -918,11 +918,6 @@ void clock_kria_track( uint8_t trackNum ) { bool trNextStep = kria_next_step(trackNum, mTr); bool isTrigger = track->tr[pos[trackNum][mTr]]; - if(trNextStep) { - f32 clock_scale = (clock_deltas[trackNum] * track->tmul[mTr]) / (f32)380.0; - f32 uncscaled = (track->dur[pos[trackNum][mDur]]+1) * (track->dur_mul<<2); - dur[trackNum] = (u16)(uncscaled * clock_scale); - } // if the track isn't in trigger_step mode, or if there is a trigger // THEN we clock the other parameters @@ -1443,6 +1438,16 @@ void ii_kria(uint8_t *d, uint8_t l) { ii_tx_queue(k.p[k.pattern].t[d[1] - 1].direction); } break; + case II_KR_DURATION + II_GET: + if ( d[1] < 0 + || d[1] >= KRIA_NUM_TRACKS) { + ii_tx_queue(0); + ii_tx_queue(0); + break; + } + ii_tx_queue(dur[d[1]] >> 8); + ii_tx_queue(dur[d[1]] & 0xFF); + break; default: ii_grid(d, l); ii_ansible(d, l);