summaryrefslogtreecommitdiff
path: root/src/os/osGetTime.c
blob: 98677f5f13766c6393e692f98d288c80c1459929 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include "libultra_internal.h"

extern OSTime __osCurrentTime;
extern u32 __osBaseCounter;

OSTime osGetTime() {
    u32 tmptime;
    u32 elapseCount;
    OSTime currentCount;
    register u32 saveMask;
    saveMask = __osDisableInt();
    tmptime = osGetCount();
    elapseCount = tmptime - __osBaseCounter;
    currentCount = __osCurrentTime;
    __osRestoreInt(saveMask);
    return currentCount + elapseCount;
}