100 avr_cycle_timer_slot_p timer_free
Definition: sim_cycle_timers.h:73
avr_cycle_count_t when
Definition: sim_cycle_timers.h:60
void avr_cycle_timer_cancel(struct avr_t *avr, avr_cycle_timer_t timer, void *param)
cancel a previously set timer
Definition: sim_cycle_timers.c:155
#define MAX_CYCLE_TIMERS
Definition: sim_cycle_timers.h:43
avr_cycle_timer_slot_p timer
Definition: sim_cycle_timers.h:74
void * param
Definition: sim_avr.h:234
avr_cycle_count_t(* avr_cycle_timer_t)(struct avr_t *avr, avr_cycle_count_t when, void *param)
Definition: sim_cycle_timers.h:45
void avr_cycle_timer_register(struct avr_t *avr, avr_cycle_count_t when, avr_cycle_timer_t timer, void *param)
register for calling 'timer' in 'when' cycles
Definition: sim_cycle_timers.c:132
void avr_cycle_timer_register_usec(struct avr_t *avr, uint32_t when, avr_cycle_timer_t timer, void *param)
register a timer to call in 'when' usec
Definition: sim_cycle_timers.c:149
struct avr_cycle_timer_pool_t avr_cycle_timer_pool_t
Timer pool contains a pool of timer slots available, they all start queued into the 'free' qeueue...
void * param
Definition: sim_cycle_timers.h:62
Each timer instance contains the absolute cycle number they are hoping to run at, a function pointer ...
Definition: sim_cycle_timers.h:57
struct avr_cycle_timer_slot_t avr_cycle_timer_slot_t
Each timer instance contains the absolute cycle number they are hoping to run at, a function pointer ...
avr_t * avr
Definition: run_avr.c:54
avr_cycle_count_t avr_cycle_timer_status(struct avr_t *avr, avr_cycle_timer_t timer, void *param)
Check to see if a timer is present, if so, return the number (+1) of cycles left for it to fire...
Definition: sim_cycle_timers.c:180
Timer pool contains a pool of timer slots available, they all start queued into the 'free' qeueue...
Definition: sim_cycle_timers.h:70
struct avr_cycle_timer_slot_t * next
Definition: sim_cycle_timers.h:59
uint64_t avr_cycle_count_t
Definition: sim_avr_types.h:36
avr_cycle_timer_t timer
Definition: sim_cycle_timers.h:61
avr_cycle_count_t avr_cycle_timer_process(struct avr_t *avr)
Definition: sim_cycle_timers.c:200
avr_cycle_timer_slot_t timer_slots[MAX_CYCLE_TIMERS]
Definition: sim_cycle_timers.h:72
struct avr_cycle_timer_pool_t * avr_cycle_timer_pool_p
Main AVR instance.
Definition: sim_avr.h:142
struct avr_cycle_timer_slot_t * avr_cycle_timer_slot_p
void avr_cycle_timer_reset(struct avr_t *avr)
Definition: sim_cycle_timers.c:53