From fe005f7d3622065921bb0a45d533ce3f9895c843 Mon Sep 17 00:00:00 2001 From: Mark Pizzolato Date: Wed, 19 Mar 2014 02:06:10 -0700 Subject: [PATCH] PDP10, PDP11, VAX: Fix DUP and DMC devices which couldn't be disabled after having been enabled. --- PDP11/pdp11_dmc.c | 5 +++-- PDP11/pdp11_dup.c | 2 -- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/PDP11/pdp11_dmc.c b/PDP11/pdp11_dmc.c index 653ed6b0..c3d29af9 100644 --- a/PDP11/pdp11_dmc.c +++ b/PDP11/pdp11_dmc.c @@ -3714,7 +3714,6 @@ if (!(dptr->flags & DEV_DIS)) { dmc_process_master_clear(controller); } } - sim_activate_after (dptr->units+dptr->numunits-2, DMC_CONNECT_POLL*1000000);/* start poll */ } return ans; @@ -3767,8 +3766,10 @@ uptr->flags &= ~UNIT_ATT; for (i=attached=0; ilines; i++) if (dptr->units[i].flags & UNIT_ATT) ++attached; -if (!attached) +if (!attached) { sim_cancel (dptr->units+mp->lines); /* stop poll on last detach */ + sim_cancel (dptr->units+(mp->lines+1)); /* stop timer on last detach */ + } free (uptr->filename); uptr->filename = NULL; return tmxr_detach_ln (lp); diff --git a/PDP11/pdp11_dup.c b/PDP11/pdp11_dup.c index 3aa22b90..eaf98b0b 100644 --- a/PDP11/pdp11_dup.c +++ b/PDP11/pdp11_dup.c @@ -1237,8 +1237,6 @@ dup_desc.dptr = DUPDPTR; /* Connect appropriate d dup_desc.uptr = dup_units+dup_desc.lines; /* Identify polling unit */ sim_cancel (dup_units+dup_desc.lines); /* stop poll */ ndev = ((dptr->flags & DEV_DIS)? 0: dup_desc.lines ); -if (ndev) - sim_activate_after (dup_units+dup_desc.lines, DUP_CONNECT_POLL*1000000); return auto_config (dptr->name, ndev); /* auto config */ }