Ofcourse the really correct way to measure this is by using an accumulator, and incremental relative MilliSecs(). That way you can accurately measure time on as large a scale as you want, indefinately. Well until your accumulator overflows anyway.
Exactly. Why can't we have a ProgramMillisecs( ) command, that always starts at 0 from program execution? Not to mention a 64 bit millisecs. It's conceivable that someone could write a resident app in BlitzMax that'll overflow a 32 bit even if MilliSecs( ) started from 0.