Thanks, looks like the problem is the user, not the software.
The start times were assigned externally and imported. To make them "right" I had to set a zero-time of "00:00". I now want to change this zero-time to make sure that SI5 punching works.
I'm happy that shifting the zero time will work as long as I don't print any start lists.
The 12 hour clock issue can be addressed without a zero-time - the logic in
SIDResults does a pretty good job. It processes punches in punch order and if it looks like the runner has time travelled backwards, adds on 12 hours.
Andy