>That's horrible for multithreaded programs, unless the counter is >thread-local. Even then, it's horrible as soon as you have two time >intervals to track within the one OS thread. In any case, we use >al_current_time() for the time stamp in events. We need a global >reference for that.
I agree here. You could always do something like this:
/* counter is a pointer to an Allegro counter that will incremented by the master counter at a rate of al_counter_resolution... Or something */ int al_start counter(al_counter *counter)