void System::restart(int Type) /*the different types of restarts*/ { _atexit(); disable(); /* disable interrupts */ keyboard.FlushBuffer(); /* clear keyboard buffer */ switch (Type) /* 0 shutdown, 1 Cold boot, Other Warm boot */ { case 1: keyboard.SendCommand(0xFE); } halt(); /* Halt the cpu */ }
SPDP dtime( ) { if( mgrInited ) { RMV_TIMER; mgrClock += (MAX_TIME + mgrTimer.tmCount)*1.0e-6; } else { if( _atexit( &Remove_timer ) == 0 ) mgrInited = true; mgrClock = 0.0; } if( mgrInited ) { mgrTimer.tmAddr = NULL; mgrTimer.tmCount = 0; mgrTimer.tmWakeUp = 0; mgrTimer.tmReserved = 0; InsTime( (QElemPtr)&mgrTimer ); PrimeTime( (QElemPtr)&mgrTimer, -MAX_TIME ); } return( mgrClock ); }
int dtime(double p[]) { if ( mgrInited ) { RMV_TIMER; mgrClock += (MAX_TIME + mgrTimer.tmCount)*1.0e-6; } else { if ( _atexit( &Remove_timer ) == 0 ) mgrInited = TRUE; mgrClock = 0.0; } p[1] = mgrClock - p[2]; p[2] = mgrClock; if ( mgrInited ) { mgrTimer.tmAddr = NULL; mgrTimer.tmCount = 0; mgrTimer.tmWakeUp = 0; mgrTimer.tmReserved = 0; InsTime( (QElemPtr)&mgrTimer ); PrimeTime( (QElemPtr)&mgrTimer, -MAX_TIME ); } return( 0 ); }
int atexit(void (*function)()) { return _atexit(function); }