This is an experimental module created as part of the discussion at http://scratch.mit.edu/discuss/topic/19585. The value is that it allows a timer to be paused and also keeps the millisecond accuracy of the system timer. (I'm sure that a few microseconds are lost every time the loop completes and restarts. However, I tested it for 3 hours with no error, so this should be plenty accurate for most uses.) CLICK ANYWHERE ON THE SCREEN TO START AND STOP. Click the mouse to pause and unpause the timer. The left script has a few extra lines to make it easier to follow the logic. The right-hand one would be the one to use in a project. I don't know how to cut and paste the script into a forum reply, so if you can show me how to do that, please post under comments. In the meantime, I just included a link to this project in my reply.
Thanks to drmcw for reminding us of storing the system timer value. I can't take full credit for the timeslice method used here because I saw it in a factory I worked in once as a way to create a timer that was much more accurate than the standard timers available in the programming language used there. Unfortunately, I don't know who that clever person was and can't credit them by name.