TMXR: Allow DTR drop to disconnect any network connected line.

Previously, this only worked for lines which had full modem signaling enabled.
This commit is contained in:
Mark Pizzolato 2016-04-07 10:19:26 -07:00
parent ed4631b8e9
commit 3fadb7e376

View file

@ -1411,7 +1411,7 @@ if (lp->mp && lp->modem_control) { /* This API ONLY works on mo
if (lp->serport)
return sim_control_serial (lp->serport, bits_to_set, bits_to_clear, incoming_bits);
if ((lp->sock) || (lp->connecting)) {
if (bits_to_clear&TMXR_MDM_DTR) { /* drop DTR? */
if ((~before_modem_bits & bits_to_clear & TMXR_MDM_DTR) != 0) { /* drop DTR? */
if (lp->sock)
tmxr_report_disconnection (lp); /* report closure */
tmxr_reset_ln (lp);
@ -1431,6 +1431,13 @@ if (lp->mp && lp->modem_control) { /* This API ONLY works on mo
}
return SCPE_OK;
}
if ((lp->sock) || (lp->connecting)) {
if ((~before_modem_bits & bits_to_clear & TMXR_MDM_DTR) != 0) { /* drop DTR? */
if (lp->sock)
tmxr_report_disconnection (lp); /* report closure */
tmxr_reset_ln (lp);
}
}
if ((lp->serport) && (!lp->loopback))
sim_control_serial (lp->serport, 0, 0, incoming_bits);
return SCPE_IERR;