1
0
mirror of https://github.com/simh/simh.git synced 2026-01-26 04:01:38 +00:00

PDP11: Properly set DC, DL and DLCJ unit relationships to TMXR structures

Fix problem reported on DC device by Alan Kirby
This commit is contained in:
Mark Pizzolato
2023-01-18 01:54:37 -10:00
parent c9647f9869
commit 1baed4f7d4
3 changed files with 8 additions and 2 deletions

View File

@@ -45,7 +45,6 @@
#else /* PDP-11 version */
#include "pdp11_defs.h"
#endif
#include "sim_sock.h"
#include "sim_tmxr.h"
#define DCX_MAXMUX (dcx_desc.lines - 1)
@@ -528,6 +527,10 @@ t_stat dcx_reset (DEVICE *dptr)
{
int32 ln;
for (ln = 0; ln < dcx_desc.lines; ln++) {
tmxr_set_line_output_unit (&dcx_desc, ln, &dco_unit[ln]);
tmxr_set_line_speed (&dcx_desc.ldsc[ln], "9600");
}
dcx_enbdis (dptr->flags & DEV_DIS); /* sync enables */
sim_cancel (&dci_unit); /* assume stop */
if (dci_unit.flags & UNIT_ATT) /* if attached, */
@@ -556,7 +559,6 @@ return;
t_stat dcx_attach (UNIT *uptr, CONST char *cptr)
{
t_stat r;
r = tmxr_attach (&dcx_desc, uptr, cptr); /* attach */
if (r != SCPE_OK) /* error? */
return r;

View File

@@ -728,6 +728,8 @@ if (sim_switches & SWMASK ('P')) {
dl[ln].lp = &tmxr->ldsc[ln];
dl[ln].pi_ireq = (idptr == &dli_dev) ? dli_ireq : dlcji_ireq;
dl[ln].po_ireq = (idptr == &dli_dev) ? &dlo_ireq : &dlcjo_ireq;
tmxr_set_line_output_unit (tmxr, ln, &odptr->units[ln]);
tmxr_set_line_speed (&tmxr->ldsc[ln], "9600");
}
}
dlx_enbdis (dptr); /* sync enables */