mirror of
https://github.com/dborth/vbagx.git
synced 2024-11-30 06:24:17 +01:00
27 lines
676 B
C
27 lines
676 B
C
/****************************************************************************
|
|
* tmbinc msec timer
|
|
****************************************************************************/
|
|
#ifndef __TMBINCTIMER__
|
|
#define __TMBINCTIMER__
|
|
#ifdef HW_RVL
|
|
#define TB_CLOCK 60750000 //WII
|
|
#else
|
|
#define TB_CLOCK 40500000
|
|
#endif
|
|
#define mftb(rval) ({unsigned long u; do { \
|
|
asm volatile ("mftbu %0" : "=r" (u)); \
|
|
asm volatile ("mftb %0" : "=r" ((rval)->l)); \
|
|
asm volatile ("mftbu %0" : "=r" ((rval)->u)); \
|
|
} while(u != ((rval)->u)); })
|
|
|
|
typedef struct
|
|
{
|
|
unsigned long l, u;
|
|
}
|
|
tb_t;
|
|
|
|
unsigned long tb_diff_msec (tb_t * end, tb_t * start);
|
|
|
|
#endif
|
|
|