PDP11/VAX: Properly display the device interrupt BR level for Qbus and Unibus devices in SHOW IOSPACE output

This commit is contained in:
Mark Pizzolato 2013-11-04 12:55:08 -08:00
parent 65edda68ad
commit 32b8f06362

View file

@ -301,6 +301,7 @@ DEVICE *dptr;
DIB *dibp; DIB *dibp;
uint32 maxaddr, maxname, maxdev; uint32 maxaddr, maxname, maxdev;
int32 maxvec, vecwid; int32 maxvec, vecwid;
int32 brbase = 0;
char valbuf[40]; char valbuf[40];
if (build_dib_tab ()) /* build IO page */ if (build_dib_tab ()) /* build IO page */
@ -310,6 +311,9 @@ maxaddr = 0;
maxvec = 0; maxvec = 0;
maxname = 0; maxname = 0;
maxdev = 1; maxdev = 1;
#if defined (VM_VAX)
brbase = 4;
#endif
for (i = 0, dibp = NULL; i < (IOPAGESIZE >> 1); i++) { /* loop thru entries */ for (i = 0, dibp = NULL; i < (IOPAGESIZE >> 1); i++) { /* loop thru entries */
size_t l; size_t l;
@ -406,7 +410,7 @@ for (i = 0, dibp = NULL; i < (IOPAGESIZE >> 1); i++) { /* loop thru entries */
fprintf (st, "%1s", (dibp->vnum >= AUTO_VECBASE)? "*": " "); fprintf (st, "%1s", (dibp->vnum >= AUTO_VECBASE)? "*": " ");
} }
if (dibp->vnum || dibp->vloc) if (dibp->vnum || dibp->vloc)
fprintf (st, " %2u", dibp->vloc/32); fprintf (st, " %2u", brbase + dibp->vloc/32);
else else
fprintf (st, " "); fprintf (st, " ");
fprintf (st, " %*u %s\n", maxdev, (dibp->ulnt? dibp->lnt/dibp->ulnt: fprintf (st, " %*u %s\n", maxdev, (dibp->ulnt? dibp->lnt/dibp->ulnt: