mirror of
https://github.com/simh/simh.git
synced 2026-04-29 21:16:46 +00:00
VAXen with SCSI: Allow some cross controller read only drive access
This commit is contained in:
@@ -142,6 +142,7 @@ typedef struct {
|
||||
t_stat rz_svc (UNIT *uptr);
|
||||
t_stat rz_isvc (UNIT *uptr);
|
||||
t_stat rz_reset (DEVICE *dptr);
|
||||
t_stat rz_attach (UNIT *uptr, CONST char *cptr);
|
||||
t_stat rz_help (FILE *st, DEVICE *dptr, UNIT *uptr, int32 flag, const char *cptr);
|
||||
t_stat rz_set_type (UNIT *uptr, int32 val, CONST char *cptr, void *desc);
|
||||
t_stat rz_show_type (FILE *st, UNIT *uptr, int32 val, CONST void *desc);
|
||||
@@ -250,11 +251,32 @@ MTAB rz_mod[] = {
|
||||
{ 0 }
|
||||
};
|
||||
|
||||
static const char *drv_types[] = {
|
||||
"RZ23",
|
||||
"RZ23L",
|
||||
"RZ24",
|
||||
"RZ24L",
|
||||
"RZ25",
|
||||
"RZ25L",
|
||||
"RZ26",
|
||||
"RZ26L",
|
||||
"RZ55",
|
||||
"CDROM",
|
||||
"RRD40",
|
||||
"RRD42",
|
||||
"RRW11",
|
||||
"CDW900",
|
||||
"XR1001",
|
||||
"TZK50",
|
||||
"TZ30",
|
||||
"RZUSER"
|
||||
};
|
||||
|
||||
DEVICE rz_dev = {
|
||||
"RZ", rz_unit, rz_reg, rz_mod,
|
||||
RZ_NUMDR + 1, DEV_RDX, 31, 1, DEV_RDX, 8,
|
||||
NULL, NULL, &rz_reset,
|
||||
NULL, &scsi_attach, &scsi_detach,
|
||||
NULL, &rz_attach, &scsi_detach,
|
||||
NULL, DEV_DEBUG | DEV_DISK | DEV_SECTORS | RZ_FLAGS,
|
||||
0, rz_debug, NULL, NULL, &rz_help, NULL, NULL,
|
||||
&rz_description
|
||||
@@ -302,7 +324,7 @@ DEVICE rzb_dev = {
|
||||
"RZB", rzb_unit, rzb_reg, rz_mod,
|
||||
RZ_NUMDR + 1, DEV_RDX, 31, 1, DEV_RDX, 8,
|
||||
NULL, NULL, &rz_reset,
|
||||
NULL, &scsi_attach, &scsi_detach,
|
||||
NULL, &rz_attach, &scsi_detach,
|
||||
&rzb_dib, DEV_DEBUG | DEV_DISK | DEV_SECTORS | RZB_FLAGS,
|
||||
0, rz_debug, NULL, NULL,
|
||||
&rz_help, NULL /* help and attach_help routines */
|
||||
@@ -860,6 +882,11 @@ scsi_help (st, dptr, uptr, flag, cptr);
|
||||
return SCPE_OK;
|
||||
}
|
||||
|
||||
t_stat rz_attach (UNIT *uptr, CONST char *cptr)
|
||||
{
|
||||
return scsi_attach_ex (uptr, cptr, drv_types);
|
||||
}
|
||||
|
||||
const char *rz_description (DEVICE *dptr)
|
||||
{
|
||||
return "NCR 5380 SCSI controller";
|
||||
|
||||
@@ -111,6 +111,7 @@ DEBTAB rz_debug[] = {
|
||||
|
||||
t_stat rz_svc (UNIT *uptr);
|
||||
t_stat rz_reset (DEVICE *dptr);
|
||||
t_stat rz_attach (UNIT *uptr, CONST char *cptr);
|
||||
void rz_sw_reset (void);
|
||||
t_stat rz_help (FILE *st, DEVICE *dptr, UNIT *uptr, int32 flag, const char *cptr);
|
||||
void rz_cmd (uint32 cmd);
|
||||
@@ -203,11 +204,32 @@ MTAB rz_mod[] = {
|
||||
{ 0 }
|
||||
};
|
||||
|
||||
static const char *drv_types[] = {
|
||||
"RZ23",
|
||||
"RZ23L",
|
||||
"RZ24",
|
||||
"RZ24L",
|
||||
"RZ25",
|
||||
"RZ25L",
|
||||
"RZ26",
|
||||
"RZ26L",
|
||||
"RZ55",
|
||||
"CDROM",
|
||||
"RRD40",
|
||||
"RRD42",
|
||||
"RRW11",
|
||||
"CDW900",
|
||||
"XR1001",
|
||||
"TZK50",
|
||||
"TZ30",
|
||||
"RZUSER"
|
||||
};
|
||||
|
||||
DEVICE rz_dev = {
|
||||
"RZ", rz_unit, rz_reg, rz_mod,
|
||||
9, DEV_RDX, 8, 1, DEV_RDX, 8,
|
||||
NULL, NULL, &rz_reset,
|
||||
NULL, &scsi_attach, &scsi_detach,
|
||||
NULL, &rz_attach, &scsi_detach,
|
||||
NULL, DEV_DISABLE | DEV_DEBUG | DEV_DISK | DEV_SECTORS,
|
||||
0, rz_debug, NULL, NULL, &rz_help, NULL, NULL,
|
||||
&rz_description
|
||||
@@ -866,6 +888,11 @@ scsi_help (st, dptr, uptr, flag, cptr);
|
||||
return SCPE_OK;
|
||||
}
|
||||
|
||||
t_stat rz_attach (UNIT *uptr, CONST char *cptr)
|
||||
{
|
||||
return scsi_attach_ex (uptr, cptr, drv_types);
|
||||
}
|
||||
|
||||
const char *rz_description (DEVICE *dptr)
|
||||
{
|
||||
return "NCR 53C94 SCSI controller";
|
||||
|
||||
Reference in New Issue
Block a user