From fd085528527d338d811a74e4cb220e21eaf6a124 Mon Sep 17 00:00:00 2001 From: Mark Pizzolato Date: Tue, 5 May 2020 12:59:21 -0700 Subject: [PATCH] PDP11, PDP10, VAX: Consistent use of UNIT flag variables in RP, HK, RL, and RQ Properly reference sim_disk provided WLK flag bit --- PDP10/pdp10_rp.c | 9 +++++---- PDP11/pdp11_hk.c | 8 +++----- PDP11/pdp11_rl.c | 12 ++++++------ PDP11/pdp11_rp.c | 8 ++++---- PDP11/pdp11_rq.c | 11 ++++++----- 5 files changed, 24 insertions(+), 24 deletions(-) diff --git a/PDP10/pdp10_rp.c b/PDP10/pdp10_rp.c index 248471b4..b26d04f4 100644 --- a/PDP10/pdp10_rp.c +++ b/PDP10/pdp10_rp.c @@ -84,11 +84,12 @@ /* Flags in the unit flags word */ -#define UNIT_V_WLK (DKUF_V_UF + 0) /* write locked */ -#define UNIT_V_DTYPE (DKUF_V_UF + 1) /* disk type */ +#define UNIT_V_WLK DKUF_V_WLK /* write locked */ +#define UNIT_V_DTYPE (DKUF_V_UF + 0) /* disk type */ +#define UNIT_W_DTYPE 3 /* 3b disk type */ #define UNIT_M_DTYPE 7 -#define UNIT_V_AUTO (DKUF_V_UF + 4) /* autosize */ -#define UNIT_V_UTS (DKUF_V_UF + 5) /* Up to speed */ +#define UNIT_V_AUTO (UNIT_V_DTYPE + UNIT_W_DTYPE) /* autosize */ +#define UNIT_V_UTS (UNIT_V_AUTO + 1) /* Up to speed */ #define UNIT_UTS (1u << UNIT_V_UTS) #define UNIT_WLK (1 << UNIT_V_WLK) #define UNIT_DTYPE (UNIT_M_DTYPE << UNIT_V_DTYPE) diff --git a/PDP11/pdp11_hk.c b/PDP11/pdp11_hk.c index 15cfed7e..25d978b9 100644 --- a/PDP11/pdp11_hk.c +++ b/PDP11/pdp11_hk.c @@ -98,10 +98,10 @@ static struct drvtyp drv_tab[] = { /* Flags in the unit flags word */ -#define UNIT_V_WLK (UNIT_V_UF + 0) /* write locked */ +#define UNIT_V_WLK DKUF_V_WLK /* write locked */ #define UNIT_V_DTYPE (DKUF_V_UF + 0) /* disk type */ -#define UNIT_V_AUTO (DKUF_V_UF + 1) /* autosize */ -#define UNIT_V_DUMMY (DKUF_V_UF + 2) /* dummy flag */ +#define UNIT_V_AUTO (UNIT_V_DTYPE + 1) /* autosize */ +#define UNIT_V_DUMMY (UNIT_V_AUTO + 1) /* dummy flag */ #define UNIT_WLK (1 << UNIT_V_WLK) #define UNIT_DTYPE (1 << UNIT_V_DTYPE) #define UNIT_RK06 (0 << UNIT_V_DTYPE) @@ -1557,8 +1557,6 @@ return sim_disk_detach (uptr); t_stat hk_set_type (UNIT *uptr, int32 val, CONST char *cptr, void *desc) { -int32 dtype = GET_DTYPE (val); - if ((val < 0) || (cptr && *cptr)) return SCPE_ARG; if (uptr->flags & UNIT_ATT) diff --git a/PDP11/pdp11_rl.c b/PDP11/pdp11_rl.c index 77ea2aec..51c0d11c 100644 --- a/PDP11/pdp11_rl.c +++ b/PDP11/pdp11_rl.c @@ -132,12 +132,12 @@ static struct drvtyp drv_tab[] = { /* Flags in the unit flags word */ -#define UNIT_V_WLK (DKUF_V_UF + 0) /* hwre write lock */ -#define UNIT_V_RL02 (DKUF_V_UF + 1) /* RL01 vs RL02 */ -#define UNIT_V_AUTO (DKUF_V_UF + 2) /* autosize enable */ -#define UNIT_V_DUMMY (DKUF_V_UF + 3) /* dummy flag, for SET BADBLOCK */ -#define UNIT_V_OFFL (DKUF_V_UF + 4) /* unit off line */ -#define UNIT_V_BRUSH (DKUF_V_UF + 5) /* unit has brushes */ +#define UNIT_V_WLK DKUF_V_WLK /* hwre write lock */ +#define UNIT_V_RL02 (DKUF_V_UF + 0) /* RL01 vs RL02 */ +#define UNIT_V_AUTO (UNIT_V_RL02 + 1) /* autosize enable */ +#define UNIT_V_DUMMY (UNIT_V_AUTO + 1) /* dummy flag, for SET BADBLOCK */ +#define UNIT_V_OFFL (UNIT_V_DUMMY + 1) /* unit off line */ +#define UNIT_V_BRUSH (UNIT_V_OFFL + 1) /* unit has brushes */ #define UNIT_BRUSH (1u << UNIT_V_BRUSH) #define UNIT_OFFL (1u << UNIT_V_OFFL) #define UNIT_DUMMY (1u << UNIT_V_DUMMY) diff --git a/PDP11/pdp11_rp.c b/PDP11/pdp11_rp.c index 102e1943..6b6c16b4 100644 --- a/PDP11/pdp11_rp.c +++ b/PDP11/pdp11_rp.c @@ -85,11 +85,11 @@ /* Flags in the unit flags word */ -#define UNIT_V_WLK (DKUF_V_UF + 0) /* write locked */ -#define UNIT_V_DTYPE (DKUF_V_UF + 1) /* disk type */ +#define UNIT_V_WLK DKUF_V_WLK /* write locked */ +#define UNIT_V_DTYPE (DKUF_V_UF + 0) /* disk type */ #define UNIT_M_DTYPE 7 -#define UNIT_V_AUTO (DKUF_V_UF + 4) /* autosize */ -#define UNIT_V_DUMMY (DKUF_V_UF + 5) /* dummy flag */ +#define UNIT_V_AUTO (DKUF_V_UF + 3) /* autosize */ +#define UNIT_V_DUMMY (DKUF_V_UF + 4) /* dummy flag */ #define UNIT_WLK (1 << UNIT_V_WLK) #define UNIT_DTYPE (UNIT_M_DTYPE << UNIT_V_DTYPE) #define UNIT_AUTO (1 << UNIT_V_AUTO) diff --git a/PDP11/pdp11_rq.c b/PDP11/pdp11_rq.c index 628c0374..4c79b9ea 100644 --- a/PDP11/pdp11_rq.c +++ b/PDP11/pdp11_rq.c @@ -156,11 +156,12 @@ extern int32 MMR2; #define RQ_M_PFN 0x1FFFFF /* map entry PFN */ #define UNIT_V_ONL (DKUF_V_UF + 0) /* online */ -#define UNIT_V_WLK (DKUF_V_UF + 1) /* hwre write lock */ -#define UNIT_V_ATP (DKUF_V_UF + 2) /* attn pending */ -#define UNIT_V_DTYPE (DKUF_V_UF + 3) /* drive type */ -#define UNIT_M_DTYPE 0x1F -#define UNIT_V_NOAUTO (DKUF_V_UF + 8) /* noautosize */ +#define UNIT_V_WLK DKUF_V_WLK /* hwre write lock */ +#define UNIT_V_ATP (UNIT_V_ONL + 1) /* attn pending */ +#define UNIT_V_DTYPE (UNIT_V_ATP + 1) /* drive type */ +#define UNIT_W_DTYPE 5 /* 5b drive type encode */ +#define UNIT_M_DTYPE ((1u << UNIT_W_DTYPE) - 1) +#define UNIT_V_NOAUTO (UNIT_V_DTYPE + UNIT_W_DTYPE) /* noautosize */ #define UNIT_ONL (1 << UNIT_V_ONL) #define UNIT_WLK (1 << UNIT_V_WLK) #define UNIT_ATP (1 << UNIT_V_ATP)