=================================================================== RCS file: /home/cvs/OpenXM_contrib2/windows/engine2000/io.c,v retrieving revision 1.4 retrieving revision 1.8 diff -u -p -r1.4 -r1.8 --- OpenXM_contrib2/windows/engine2000/io.c 2002/10/03 03:05:44 1.4 +++ OpenXM_contrib2/windows/engine2000/io.c 2013/11/29 08:21:29 1.8 @@ -70,7 +70,7 @@ static struct ErrMsg Errmsg; * interrupt_state : flag to distinguish an Asir error and a cancellation */ -static int emergency; +int emergency; static int interrupt_state; int debuggui_is_present; int messagegui_is_present; @@ -125,12 +125,13 @@ void watch_intr() { send_intr(); /* for Asir; recv_intr is reset to 0 in Asir */ recv_intr = 1; + PulseEvent(hIntr_Ack); break; case WAIT_OBJECT_0+1: /* hKill */ default: terminate_debug_gui(); emergency = 1; /* XXX */ - asir_terminate(2); + asir_terminate(3); exit(0); /* NOTREACHED */ break; @@ -162,7 +163,7 @@ void ox_watch_intr() { ResetEvent(hOxKill); terminate_debug_gui(); emergency = 1; /* XXX */ - asir_terminate(2); + asir_terminate(3); /* NOTREACHED */ break; } @@ -323,10 +324,14 @@ void set_debug_handles(int on) } } +extern int wfep_mode; + void Init_IO() { _setargv(); - if ( !strcmp(__argv[0],"ox_asir") ) { + if ( !strncmp(__argv[0],"ox_asir",strlen("ox_asir")) ) { + /* ox_asir or ox_asir_wfep */ + if ( !strcmp(__argv[0],"ox_asir_wfep") ) wfep_mode = 1; OxAsirMain(__argc,__argv); exit(0); } else if ( !strcmp(__argv[0],"ox_plot") )