SCP: Show device options can be more flexibly formatted and optionally not display anything.
This commit is contained in:
parent
f3626690b7
commit
864f0e0d37
1 changed files with 8 additions and 5 deletions
13
scp.c
13
scp.c
|
@ -3124,6 +3124,7 @@ return SCPE_OK;
|
||||||
t_stat show_all_mods (FILE *st, DEVICE *dptr, UNIT *uptr, int32 flag, int32 *toks)
|
t_stat show_all_mods (FILE *st, DEVICE *dptr, UNIT *uptr, int32 flag, int32 *toks)
|
||||||
{
|
{
|
||||||
MTAB *mptr;
|
MTAB *mptr;
|
||||||
|
t_stat r = SCPE_OK;
|
||||||
|
|
||||||
if (dptr->modifiers == NULL)
|
if (dptr->modifiers == NULL)
|
||||||
return SCPE_OK;
|
return SCPE_OK;
|
||||||
|
@ -3136,8 +3137,9 @@ for (mptr = dptr->modifiers; mptr->mask != 0; mptr++) {
|
||||||
fprintf (st, "\n");
|
fprintf (st, "\n");
|
||||||
*toks = 0;
|
*toks = 0;
|
||||||
}
|
}
|
||||||
fprint_sep (st, toks);
|
if (r == SCPE_OK)
|
||||||
show_one_mod (st, dptr, uptr, mptr, NULL, 0);
|
fprint_sep (st, toks);
|
||||||
|
r = show_one_mod (st, dptr, uptr, mptr, NULL, 0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return SCPE_OK;
|
return SCPE_OK;
|
||||||
|
@ -3146,10 +3148,11 @@ return SCPE_OK;
|
||||||
t_stat show_one_mod (FILE *st, DEVICE *dptr, UNIT *uptr, MTAB *mptr,
|
t_stat show_one_mod (FILE *st, DEVICE *dptr, UNIT *uptr, MTAB *mptr,
|
||||||
char *cptr, int32 flag)
|
char *cptr, int32 flag)
|
||||||
{
|
{
|
||||||
|
t_stat r = SCPE_OK;
|
||||||
//t_value val;
|
//t_value val;
|
||||||
|
|
||||||
if (mptr->disp)
|
if (mptr->disp)
|
||||||
mptr->disp (st, uptr, mptr->match, cptr? cptr: mptr->desc);
|
r = mptr->disp (st, uptr, mptr->match, cptr? cptr: mptr->desc);
|
||||||
//else if ((mptr->mask & MTAB_XTD) && (mptr->mask & MTAB_VAL)) {
|
//else if ((mptr->mask & MTAB_XTD) && (mptr->mask & MTAB_VAL)) {
|
||||||
// REG *rptr = (REG *) mptr->desc;
|
// REG *rptr = (REG *) mptr->desc;
|
||||||
// fprintf (st, "%s=", mptr->pstring);
|
// fprintf (st, "%s=", mptr->pstring);
|
||||||
|
@ -3158,9 +3161,9 @@ if (mptr->disp)
|
||||||
// rptr->flags & REG_FMT);
|
// rptr->flags & REG_FMT);
|
||||||
// }
|
// }
|
||||||
else fputs (mptr->pstring, st);
|
else fputs (mptr->pstring, st);
|
||||||
if (flag && !((mptr->mask & MTAB_XTD) && MODMASK(mptr,MTAB_NMO)))
|
if ((r == SCPE_OK) && (flag && !((mptr->mask & MTAB_XTD) && MODMASK(mptr,MTAB_NMO))))
|
||||||
fputc ('\n', st);
|
fputc ('\n', st);
|
||||||
return SCPE_OK;
|
return r;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Show show commands */
|
/* Show show commands */
|
||||||
|
|
Loading…
Add table
Reference in a new issue