# include "monitor.h" # include # include # include SCCSID(@(#)syscntrl.c 8.1 12/31/84) /* ** TRACE -- set/clear trace information dynamically. ** ** Parameters: ** none. ** ** Returns: ** none. ** ** Side Effects: ** Sends the rest of the input line to all processes ** and calls tTamper on the rest of the input line. ** ** Trace Flags: ** 32 */ trace() { pb_t pb; char buf[120]; /* get rest of trace command */ pb_prime(&pb, PB_TRACE); pb.pb_proc = PB_WILD; if (fgets(buf, sizeof buf, Input) == NULL) syserr("syscntrl: bad read"); Prompt = TRUE; tTamper(buf, FuncVect[0]->fn_tflag, FuncVect[0]->fn_tvect, FuncVect[0]->fn_tsize); pb_put(buf, length(buf), &pb); pb.pb_stat |= PB_INFO; pb_flush(&pb); } /* ** RESET -- do a system reset. ** ** Parameters: ** none. ** ** Returns: ** none. ** ** Side Effects: ** Sends a reset block to all processes ** and calls cm_reset in the monitor. */ reset() { pb_t pb; pb_prime(&pb, PB_RESET); pb.pb_proc = PB_WILD; pb.pb_stat |= PB_INFO; pb_flush(&pb); cm_reset(); }