void DoGo( struct TDebug *obj ) { if ( ( obj->CurrentThread->Cs & 0x3 ) == 0x3 ) { SetupGo( obj->CurrentThread ); ActivateBreaks( obj->CurrentThread, obj->BreakList, obj->WatchList ); RdosContinueDebugEvent( obj->FHandle, obj->CurrentThread->ThreadID ); } else { while ( RdosGetDebugThread() != obj->CurrentThread->ThreadID ) RdosDebugNext(); ActivateBreaks( obj->CurrentThread, obj->BreakList, obj->WatchList ); RdosDebugRun(); } }
void Go( struct TDebug *obj ) { if( obj->CurrentThread ) { RdosResetSignal( obj->UserSignal ); SetupGo( obj->CurrentThread ); ActivateBreaks( obj->CurrentThread, obj->BreakList ); RdosContinueDebugEvent( obj->FHandle, obj->CurrentThread->ThreadID); RdosWaitForever( obj->UserWait ); } }