don't display fractional part of float seconds
make sure pos is not greater than total_time
refactored bin booleans