void EiC_term_int(int i) { signal(SIGINT, EiC_term_int); errStr("EiC interrupted"); if(jmpOn && jmpOn++ <= 1) longjmp(env,Err_); else eic_disaster(); }
void EiC_float_err(int i) { signal(SIGFPE, EiC_float_err); errStr("EiC maths exception"); if(jmpOn && jmpOn++ <= 1) longjmp(env,Err_); else eic_disaster(); }
void EiC_stor_access(int i) { signal(SIGSEGV, EiC_stor_access); errStr("EiC illegal storage access"); if(jmpOn && jmpOn++ <= 1) { longjmp(env,Err_); } else eic_disaster(); }
void EiC_ill_oper(int i) { signal(SIGILL, EiC_ill_oper); errStr("EiC illegal operation attempted\n"); if(jmpOn && jmpOn++ <= 1) longjmp(env,Err_); else eic_disaster(); }
void EiC_exit_call(int i) { #ifndef _SEIC_ size_t fopen_entry = fopen_NextEntryNum(); #if defined(WIN32) || defined(_DJGPP) signal(SIGTERM, EiC_exit_call); #else signal(SIGUSR1, EiC_exit_call); #endif _ffexit(fopen_entry); if(jmpOn && jmpOn++ <= 1) longjmp(env,Exit_); else eic_disaster(); #else eic_disaster(); #endif }
void EiC_exit_call(int i) { #ifndef _SEIC_ size_t fopen_entry = fopen_NextEntryNum(); #if !defined(_WIN32_WCE) //maks #if defined(WIN32) || defined(_DJGPP) signal(SIGTERM, EiC_exit_call); #elif !defined(__SYMBIAN32__) signal(SIGUSR1, EiC_exit_call); #endif _ffexit(/*fopen_entry*/); //maks #endif if(jmpOn && jmpOn++ <= 1) longjmp(env,Exit_); else eic_disaster(); #else eic_disaster(); #endif }
void EiC_bus_err(int i) { #if defined(WIN32) || defined(_DJGPP) signal(SIGABRT,EiC_bus_err); #else signal(SIGBUS, EiC_bus_err); #endif errStr("EiC bus error trapped"); if(jmpOn && jmpOn++ <= 1) longjmp(env,Err_); else eic_disaster(); }
void EiC_term_int(int i) { #if !defined(__SYMBIAN32__) && !defined(_WIN32_WCE) //maks signal(SIGINT, EiC_term_int); #endif #ifndef STAND_ALONE_GAME errStr("EiC interrupted"); #endif if(jmpOn && jmpOn++ <= 1) longjmp(env,Err_); else eic_disaster(); }
void EiC_float_err(int i) { #if !defined(__SYMBIAN32__) && !defined(_WIN32_WCE) //maks signal(SIGFPE, EiC_float_err); #endif #ifndef STAND_ALONE_GAME errStr("EiC Maths exception"); //maks #endif if(jmpOn && jmpOn++ <= 1) longjmp(env,Err_); else eic_disaster(); }
void EiC_stor_access(int i) { #if !defined(__SYMBIAN32__) && !defined(_WIN32_WCE) //maks signal(SIGSEGV, EiC_stor_access); #endif #ifndef STAND_ALONE_GAME errStr("EiC Illegal storage access"); //maks #endif if(jmpOn && jmpOn++ <= 1) { longjmp(env,Err_); } else eic_disaster(); }
void EiC_ill_oper(int i) { #if !defined(__SYMBIAN32__) && !defined(_WIN32_WCE) //maks signal(SIGILL, EiC_ill_oper); #endif #ifndef STAND_ALONE_GAME errStr("EiC Illegal operation attempted\n"); //maks #endif if(jmpOn && jmpOn++ <= 1) longjmp(env,Err_); else eic_disaster(); }
void EiC_bus_err(int i) { #if !defined(_WIN32_WCE) //maks #if defined(WIN32) || defined(_DJGPP) signal(SIGABRT,EiC_bus_err); #elif !defined(__SYMBIAN32__) //maks signal(SIGBUS, EiC_bus_err); #endif #endif #ifndef STAND_ALONE_GAME errStr("EiC bus error trapped"); #endif if(jmpOn && jmpOn++ <= 1) longjmp(env,Err_); else eic_disaster(); }