예제 #1
0
파일: starteic.c 프로젝트: otoauler/sdkpub
void EiC_term_int(int i)
{
    signal(SIGINT, EiC_term_int);
    errStr("EiC interrupted");
    if(jmpOn && jmpOn++ <= 1)
        longjmp(env,Err_);
    else
        eic_disaster();
}
예제 #2
0
파일: starteic.c 프로젝트: otoauler/sdkpub
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();
}
예제 #3
0
파일: starteic.c 프로젝트: otoauler/sdkpub
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();
}
예제 #4
0
파일: starteic.c 프로젝트: otoauler/sdkpub
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();
}
예제 #5
0
파일: starteic.c 프로젝트: otoauler/sdkpub
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
}
예제 #6
0
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
}
예제 #7
0
파일: starteic.c 프로젝트: otoauler/sdkpub
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();
}
예제 #8
0
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();
}
예제 #9
0
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();
}
예제 #10
0
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();
}
예제 #11
0
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();
}
예제 #12
0
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();
}