24 lines
		
	
	
		
			925 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			24 lines
		
	
	
		
			925 B
		
	
	
	
		
			C
		
	
	
	
	
	
| #include "syslib.h"
 | |
| 
 | |
| /*===========================================================================*
 | |
|  *                               sys_flagalrm			     	     *
 | |
|  *===========================================================================*/
 | |
| PUBLIC int sys_flagalrm(ticks, flag_ptr)
 | |
| clock_t ticks;		/* number of ticks until the flag is set */
 | |
| int *flag_ptr;		/* pointer to timeout flag to be set */
 | |
| {
 | |
| /* Make a call to the clock to schedule a timeout flag alarm for the caller. */
 | |
|     message m;
 | |
| 
 | |
|     if (flag_ptr != NULL)		/* expect the worst */
 | |
|     	*flag_ptr = 0;			/* reset timeout flag first */
 | |
|     m.m_type = SYS_FLAGALRM;		/* alarm type requested */
 | |
|     m.ALRM_PROC_NR = SELF;		/* m_source will be used */
 | |
|     m.ALRM_EXP_TIME = ticks;		/* alarm is due after ticks */
 | |
|     m.ALRM_ABS_TIME = 0;		/* ticks are relative to now */
 | |
|     m.ALRM_FLAG_PTR = (char *) flag_ptr;
 | |
|     return _taskcall(SYSTASK, SYS_FLAGALRM, &m);
 | |
| }
 | |
| 
 | |
| 
 | 
