From c73f56cc5a196c5fa2a873d703d8cbea9101a34d Mon Sep 17 00:00:00 2001 From: Mark Pizzolato Date: Sat, 23 Jun 2018 10:34:09 -0700 Subject: [PATCH] PDP11, VAX: Add descriptive unit names to DZ, RQ, TQ, XQ and XU devices Some devices have dedicated units that perform various independent functions (often timing) that are independent of the primary device unit which is ATTACHed. This services to help interpret debug information that may be produced. --- PDP11/pdp11_dz.c | 2 ++ PDP11/pdp11_rq.c | 5 +++++ PDP11/pdp11_tq.c | 5 +++++ PDP11/pdp11_xq.c | 12 ++++++++++++ PDP11/pdp11_xu.c | 6 ++++++ 5 files changed, 30 insertions(+) diff --git a/PDP11/pdp11_dz.c b/PDP11/pdp11_dz.c index 17b12485..a6c29c30 100644 --- a/PDP11/pdp11_dz.c +++ b/PDP11/pdp11_dz.c @@ -785,6 +785,8 @@ sim_debug(DBG_TRC, dptr, "dz_reset()\n"); if (dz_ldsc == NULL) { dz_desc.lines = DZ_MUXES * DZ_LINES; dz_desc.ldsc = dz_ldsc = (TMLN *)calloc (dz_desc.lines, sizeof(*dz_ldsc)); + sim_set_uname (&dz_unit[0], "DZ-RCV-CON"); + sim_set_uname (&dz_unit[1], "DZ-XMT"); } if ((dz_desc.lines % DZ_LINES) != 0) { /* Transition from Qbus to Unibus device */ int32 newln = DZ_LINES * (1 + (dz_desc.lines / DZ_LINES)); diff --git a/PDP11/pdp11_rq.c b/PDP11/pdp11_rq.c index dec1cbba..4ffc22f3 100644 --- a/PDP11/pdp11_rq.c +++ b/PDP11/pdp11_rq.c @@ -2949,7 +2949,12 @@ if (cp->ctype == DEFAULT_CTYPE) if (!plugs_inited ) { uint32 d, u = 0; + char uname[16]; + sprintf (uname, "%s-TIMER", dptr->name); + sim_set_uname (&dptr->units[4], uname); + sprintf (uname, "%s-QUESVC", dptr->name); + sim_set_uname (&dptr->units[5], uname); plugs_inited = TRUE; for (i = 0; i < RQ_NUMCT; i++) { for (d = 0; d < rq_devmap[i]->numunits - 2; d++) { diff --git a/PDP11/pdp11_tq.c b/PDP11/pdp11_tq.c index 77383134..9a17f9c2 100644 --- a/PDP11/pdp11_tq.c +++ b/PDP11/pdp11_tq.c @@ -2070,7 +2070,12 @@ static t_bool plugs_inited = FALSE; if (!plugs_inited ) { uint32 d; + char uname[16]; + sprintf (uname, "%s-TIMER", dptr->name); + sim_set_uname (&dptr->units[4], uname); + sprintf (uname, "%s-QUESVC", dptr->name); + sim_set_uname (&dptr->units[5], uname); plugs_inited = TRUE; for (d = 0; d < tq_dev.numunits - 2; d++) tq_unit[d].unit_plug = d; diff --git a/PDP11/pdp11_xq.c b/PDP11/pdp11_xq.c index 99c99f85..b96da91a 100644 --- a/PDP11/pdp11_xq.c +++ b/PDP11/pdp11_xq.c @@ -2554,7 +2554,19 @@ t_stat xq_reset(DEVICE* dptr) /* One time only initializations */ if (!xq->var->initialized) { + char uname[16]; + xq->var->initialized = TRUE; + sprintf (uname, "%s-SVC", dptr->name); + sim_set_uname (&dptr->units[0], uname); + sprintf (uname, "%s-TMRSVC", dptr->name); + sim_set_uname (&dptr->units[1], uname); + sprintf (uname, "%s-STARTSVC", dptr->name); + sim_set_uname (&dptr->units[2], uname); + sprintf (uname, "%s-RCVSVC", dptr->name); + sim_set_uname (&dptr->units[3], uname); + sprintf (uname, "%s-SRQRSVC", dptr->name); + sim_set_uname (&dptr->units[4], uname); /* Set an initial MAC address in the DEC range */ xq_setmac (dptr->units, 0, "08:00:2B:00:00:00/24", NULL); } diff --git a/PDP11/pdp11_xu.c b/PDP11/pdp11_xu.c index 14f31104..f86d6380 100644 --- a/PDP11/pdp11_xu.c +++ b/PDP11/pdp11_xu.c @@ -855,7 +855,13 @@ t_stat xu_reset(DEVICE* dptr) sim_debug(DBG_TRC, xu->dev, "xu_reset()\n"); /* One time only initializations */ if (!xu->var->initialized) { + char uname[16]; + xu->var->initialized = TRUE; + sprintf (uname, "%s-SVC", dptr->name); + sim_set_uname (&dptr->units[0], uname); + sprintf (uname, "%s-TMRSVC", dptr->name); + sim_set_uname (&dptr->units[1], uname); /* Set an initial MAC address in the DEC range */ xu_setmac (dptr->units, 0, "08:00:2B:00:00:00/24", NULL); }