Johnny
Take a look at the CHECK_TIME hook. The documented help is very poor.
The last time I tested it in ME version 6, this hook checks the difference between the current time and the time the SFC was in queue. In the case where the SFC has been in queue for MORE than the time defined in the hook user argument (in minutes), then an error is returned and the SFC will not start. But you could not make the logic work the other way i.e. to error if the time was less than the user argument.
Stuart