Something
public text v1 · immutable: skip_samples ( samples -- )
&2000 ms ahead >r \ timeout value
0 >r \ lastcnt
0 >r \ intcnttmp
intcnt off
BEGIN
intcnt @ dup r! over <
WHILE
2 l@ timeout? THROW drop
r@ 1 l@ - \
IF &2000 ms ahead 2 l! THEN
&10 ms sleep
REPEAT
drop \ samples
rdrop rdrop rdrop \ 3 local variables
;
: ss ( u --> )
>R 0 -1
BEGIN IF 2000 ms ahead THEN
intcnt @ DUP R@ < WHILE
SWAP timeout? THROW drop
TUCK -
10 ms sleep
REPEAT RDROP 2DROP ;