ちょっと調べものしてみました。
kenさんのコードを実行した結果、私のPCでもawait 4以上のssの値はほぼ0でした。
awaitが利用しているタイマーは起動直後の取得に問題があるように思います。
解決策として、kenさんのプログラムの先頭にwait 300などを入れて、
起動後に数秒待機させてみてください。
ssの値がすべて0になるはずです。
ss=0というのはawaitで指定した時間がrepeat 200〜loopの処理で
すでに超えてしまっているためです。
repeat 200〜loopの処理は平均で47msでした。await 47に相当します。
ですので、await cntの部分をawait cnt+40に変更すれば
だいたい8ループ目からssが変化してきます。
ちなみにwait 1は10ms待ち。await 1は1ms待ちです。
以下を実行してみてください。
mes ""+gettime(6)+":"+gettime(7)
wait 100
mes ""+gettime(6)+":"+gettime(7)
await 1000
mes ""+gettime(6)+":"+gettime(7)
await 1000
mes ""+gettime(6)+":"+gettime(7)
うまくいけばかなり精度よく動作しているはずです。
月並な調査ですが参考にしてみてください。