SCP: Added shutdown flag for detach_all
This commit is contained in:
parent
b0e67d5900
commit
e67bf602a0
2 changed files with 8 additions and 4 deletions
11
scp.c
11
scp.c
|
@ -1,6 +1,6 @@
|
|||
/* scp.c: simulator control program
|
||||
|
||||
Copyright (c) 1993-2012, Robert M Supnik
|
||||
Copyright (c) 1993-2016, Robert M Supnik
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a
|
||||
copy of this software and associated documentation files (the "Software"),
|
||||
|
@ -23,6 +23,7 @@
|
|||
used in advertising or otherwise to promote the sale, use or other dealings
|
||||
in this Software without prior written authorization from Robert M Supnik.
|
||||
|
||||
08-Mar-16 RMS Added shutdown flag for detach_all
|
||||
20-Mar-12 MP Fixes to "SHOW <x> SHOW" commands
|
||||
06-Jan-12 JDB Fixed "SHOW DEVICE" with only one enabled unit (Dave Bryan)
|
||||
25-Sep-11 MP Added the ability for a simulator built with
|
||||
|
@ -3907,8 +3908,8 @@ while (*cptr != 0) { /* do all mods */
|
|||
}
|
||||
else if (!mptr->desc) /* value desc? */
|
||||
break;
|
||||
// else if (mptr->mask & MTAB_VAL) { /* take a value? */
|
||||
// if (!cvptr) return SCPE_MISVAL; /* none? error */
|
||||
// else if (mptr->mask & MTAB_VAL) { /* take a value? */
|
||||
// if (!cvptr) return SCPE_MISVAL; /* none? error */
|
||||
// r = dep_reg (0, cvptr, (REG *) mptr->desc, 0);
|
||||
// if (r != SCPE_OK) return r;
|
||||
// }
|
||||
|
@ -5402,7 +5403,7 @@ if (strcmp (gbuf, "ALL") == 0)
|
|||
dptr = find_unit (gbuf, &uptr); /* locate unit */
|
||||
if (dptr == NULL) /* found dev? */
|
||||
return SCPE_NXDEV;
|
||||
if (uptr == NULL) /* valid unit? */
|
||||
if (uptr == NULL) /* valid unit? */
|
||||
return SCPE_NXUN;
|
||||
return scp_detach_unit (dptr, uptr); /* detach */
|
||||
}
|
||||
|
@ -5429,6 +5430,8 @@ t_stat r;
|
|||
|
||||
if ((start < 0) || (start > 1))
|
||||
return SCPE_IERR;
|
||||
if (shutdown)
|
||||
sim_switches = sim_switches | SIM_SW_SHUT; /* flag shutdown */
|
||||
for (i = start; (dptr = sim_devices[i]) != NULL; i++) { /* loop thru dev */
|
||||
for (j = 0; j < dptr->numunits; j++) { /* loop thru units */
|
||||
uptr = (dptr->units) + j;
|
||||
|
|
|
@ -310,6 +310,7 @@ typedef uint32 t_addr;
|
|||
#define SIM_SW_REST (1u << 27) /* attach/restore */
|
||||
#define SIM_SW_REG (1u << 28) /* register value */
|
||||
#define SIM_SW_STOP (1u << 29) /* stop message */
|
||||
#define SIM_SW_SHUT (1u << 30) /* shutdown */
|
||||
|
||||
/* Simulator status codes
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue