Nem értek a kígyókhoz, de az biztos, hogy modulo-t float operandussal kell számolni? Azért kérdem, mert ez épp egy olyan művelet, amelynek egész számokon van értelme.
Ami a tartalmát illeti, szerintem nem kell a start time. Most valamennyi az idő, s 3600-ból kivonod a pillanatnyi idő mod 3600-at, akkor kapod meg, hogy mennyi idő van még a következő egész óráig. Esetleg, ha épp 3600 az eredmény, akkor kihagyhatod az időzítést, mert pont egész óra van.
tr '[:lower:]' '[:upper:]' <<<locsemege
LOCSEMEGE