PS2SDK
PS2 Homebrew Libraries
timer.h File Reference
#include <tamtypes.h>
+ Include dependency graph for timer.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define T0_COUNT   ((volatile unsigned int *)0x10000000)
 
#define T0_MODE   ((volatile unsigned int *)0x10000010)
 
#define T0_COMP   ((volatile unsigned int *)0x10000020)
 
#define T0_HOLD   ((volatile unsigned int *)0x10000030)
 
#define T1_COUNT   ((volatile unsigned int *)0x10000800)
 
#define T1_MODE   ((volatile unsigned int *)0x10000810)
 
#define T1_COMP   ((volatile unsigned int *)0x10000820)
 
#define T1_HOLD   ((volatile unsigned int *)0x10000830)
 
#define T2_COUNT   ((volatile unsigned int *)0x10001000)
 
#define T2_MODE   ((volatile unsigned int *)0x10001010)
 
#define T2_COMP   ((volatile unsigned int *)0x10001020)
 
#define T3_COUNT   ((volatile unsigned int *)0x10001800)
 
#define T3_MODE   ((volatile unsigned int *)0x10001810)
 
#define T3_COMP   ((volatile unsigned int *)0x10001820)
 
#define K_T2_COUNT   ((volatile unsigned int *)0xB0001000)
 
#define K_T2_MODE   ((volatile unsigned int *)0xB0001010)
 
#define K_T2_COMP   ((volatile unsigned int *)0xB0001020)
 
#define Tn_MODE(CLKS, GATE, GATS, GATM, ZRET, CUE, CMPE, OVFE, EQUF, OVFF)
 
#define kBUSCLK   (147456000)
 
#define kBUSCLKBY16   (kBUSCLK / 16)
 
#define kBUSCLKBY256   (kBUSCLK / 256)
 
#define kHBLNK_NTSC   (15734)
 
#define kHBLNK_PAL   (15625)
 
#define kHBLNK_DTV480p   (31469)
 
#define kHBLNK_DTV1080i   (33750)
 

Typedefs

typedef u64(* timer_alarm_handler_t) (s32 id, u64 scheduled_time, u64 actual_time, void *arg, void *pc_value)
 

Functions

void _ps2sdk_init_timer_impl (void)
 
void _ps2sdk_init_timer (void)
 
void _ps2sdk_deinit_timer_impl (void)
 
void _ps2sdk_deinit_timer (void)
 
s32 InitTimer (s32 in_mode)
 
s32 EndTimer (void)
 
s32 GetTimerPreScaleFactor (void)
 
s32 StartTimerSystemTime (void)
 
s32 StopTimerSystemTime (void)
 
void SetNextComp (u64 time)
 
u64 iGetTimerSystemTime (void)
 
u64 GetTimerSystemTime (void)
 
s32 iAllocTimerCounter (void)
 
s32 AllocTimerCounter (void)
 
s32 iFreeTimerCounter (s32 id)
 
s32 FreeTimerCounter (s32 id)
 
s32 iGetTimerUsedUnusedCounters (u32 *used_counters, u32 *unused_counters)
 
s32 GetTimerUsedUnusedCounters (u32 *used_counters, u32 *unused_counters)
 
s32 iStartTimerCounter (s32 id)
 
s32 StartTimerCounter (s32 id)
 
s32 iStopTimerCounter (s32 id)
 
s32 StopTimerCounter (s32 id)
 
u64 SetTimerCount (s32 id, u64 timer_count)
 
u64 iGetTimerBaseTime (s32 id)
 
u64 GetTimerBaseTime (s32 id)
 
u64 iGetTimerCount (s32 id)
 
u64 GetTimerCount (s32 id)
 
s32 iSetTimerHandler (s32 id, u64 scheduled_time, timer_alarm_handler_t callback_handler, void *arg)
 
s32 SetTimerHandler (s32 id, u64 scheduled_time, timer_alarm_handler_t callback_handler, void *arg)
 
void TimerBusClock2USec (u64 clocks, u32 *seconds_result, u32 *microseconds_result)
 
u64 TimerUSec2BusClock (u32 seconds, u32 microseconds)
 
float TimerBusClock2Freq (s64 clocks)
 
u64 TimerFreq2BusClock (float timer_frequency)
 
u32 cpu_ticks (void)
 
static u64 NSec2TimerBusClock (u64 usec)
 
static u64 USec2TimerBusClock (u64 usec)
 
static u64 MSec2TimerBusClock (u64 msec)
 
static u64 Sec2TimerBusClock (u64 sec)
 

Detailed Description

Timer prototypes

Definition in file timer.h.

Macro Definition Documentation

◆ Tn_MODE

#define Tn_MODE (   CLKS,
  GATE,
  GATS,
  GATM,
  ZRET,
  CUE,
  CMPE,
  OVFE,
  EQUF,
  OVFF 
)
Value:
(u32)((u32)(CLKS) | ((u32)(GATE) << 2) | \
((u32)(GATS) << 3) | ((u32)(GATM) << 4) | \
((u32)(ZRET) << 6) | ((u32)(CUE) << 7) | \
((u32)(CMPE) << 8) | ((u32)(OVFE) << 9) | \
((u32)(EQUF) << 10) | ((u32)(OVFF) << 11))

Definition at line 47 of file timer.h.