t_stat pt_reset (DEVICE *dptr) { sim_cancel (&pt_unit[PTR]); /* stop dev thread */ pt_cmd = 0; chan_reset_dev (pt_dib.dva); /* clr int, active */ return SCPE_OK; }
t_stat tt_reset (DEVICE *dptr) { rtc_register (RTC_TTI, tti_tps, &tt_unit[TTI]); /* register timer */ sim_cancel (&tt_unit[TTO]); /* stop dev thread */ tt_cmd = TTS_IDLE; /* idle */ chan_reset_dev (tt_dib.dva); /* clr int, active */ tto_pos = 0; return SCPE_OK; }
t_stat lp_reset (DEVICE *dptr) { sim_cancel (&lp_unit); /* stop dev thread */ lp_cmd = 0; lp_lastcmd = 0; lp_pass = 0; lp_inh = 0; lp_run = 0; chan_reset_dev (lp_dib.dva); /* clr int, active */ return SCPE_OK; }
t_stat mt_reset (DEVICE *dptr) { uint32 i; for (i = 0; i < MT_NUMDR; i++) { sim_cancel (&mt_unit[i]); /* stop unit */ sim_cancel (&mt_unit[i + MT_REW]); /* stop rewind */ mt_unit[i].UST = 0; mt_unit[i].UCMD = 0; } mt_rwi = 0; mt_bptr = 0; mt_blim = 0; chan_reset_dev (mt_dib.dva); /* clr int, active */ for (i = 0; i < MT_MAXFR; i++) mt_xb[i] = 0; return SCPE_OK; }