You haven't overlooked anything really - DGDK doesn't provide the kind of timer that SDL provides. You have dbTimer() which is simply a wrapper for the GetTickCount() API call.
However, it's easy enough to put together a simple start/pause/unpause class for a timer:
class Timer
{
public:
Timer() : StartTime(0), PauseTime(0), Running(false)
{
}
void Start()
{
StartTime = GetTickCount();
Running = true;
}
void Pause()
{
Running = false;
PauseTime = GetTickCount();
}
void Unpause()
{
if (!Running)
{
StartTime = GetTickCount() - Elapsed();
Running = true;
}
}
DWORD Elapsed() const
{
if (Running)
{
return GetTickCount() - StartTime;
}
else
{
return PauseTime - StartTime;
}
}
private:
DWORD StartTime;
DWORD PauseTime;
bool Running;
};
Literally thrown together in about 15 minutes, so it'll need proper testing - it seems to work Ok.