1
0
mirror of https://github.com/simh/simh.git synced 2026-05-01 22:06:00 +00:00

Adding help to VAX system devices

This commit is contained in:
Mark Pizzolato
2013-02-06 06:34:31 -08:00
parent 864b581e35
commit a91b6db21e
9 changed files with 322 additions and 26 deletions

View File

@@ -122,8 +122,10 @@ t_stat clk_detach (UNIT *uptr);
t_stat todr_resync (void);
char *tti_description (DEVICE *dptr);
char *tto_description (DEVICE *dptr);
t_stat clk_help (FILE *st, DEVICE *dptr, UNIT *uptr, int32 flag, char *cptr);
char *clk_description (DEVICE *dptr);
t_stat tti_help (FILE *st, DEVICE *dptr, UNIT *uptr, int32 flag, char *cptr);
t_stat tto_help (FILE *st, DEVICE *dptr, UNIT *uptr, int32 flag, char *cptr);
t_stat clk_help (FILE *st, DEVICE *dptr, UNIT *uptr, int32 flag, char *cptr);
extern int32 sysd_hlt_enb (void);
extern int32 fault_PC;
@@ -163,7 +165,7 @@ DEVICE tti_dev = {
1, 10, 31, 1, 16, 8,
NULL, NULL, &tti_reset,
NULL, NULL, NULL,
&tti_dib, 0, 0, NULL, NULL, NULL, NULL, NULL, NULL,
&tti_dib, 0, 0, NULL, NULL, NULL, &tti_help, NULL, NULL,
&tti_description
};
@@ -193,7 +195,7 @@ REG tto_reg[] = {
MTAB tto_mod[] = {
{ TT_MODE, TT_MODE_7B, "7b", "7B", NULL, NULL, NULL, "Set 7 bit mode" },
{ TT_MODE, TT_MODE_8B, "8b", "8B", NULL, NULL, NULL, "Set 8 bit mode" },
{ TT_MODE, TT_MODE_7P, "7p", "7P", NULL, NULL, NULL, "Set 7 bit mode (suppress non printing)" },
{ TT_MODE, TT_MODE_7P, "7p", "7P", NULL, NULL, NULL, "Set 7 bit mode (suppress non printing output)" },
{ MTAB_XTD|MTAB_VDV, 0, "VECTOR", NULL, NULL, &show_vec, NULL, "Display interrupt vector" },
{ 0 }
};
@@ -203,7 +205,7 @@ DEVICE tto_dev = {
1, 10, 31, 1, 16, 8,
NULL, NULL, &tto_reset,
NULL, NULL, NULL,
&tto_dib, 0, 0, NULL, NULL, NULL, NULL, NULL, NULL,
&tto_dib, 0, 0, NULL, NULL, NULL, &tto_help, NULL, NULL,
&tto_description
};
@@ -361,6 +363,21 @@ sim_activate (&tti_unit, KBD_WAIT (tti_unit.wait, tmr_poll));
return SCPE_OK;
}
t_stat tti_help (FILE *st, DEVICE *dptr, UNIT *uptr, int32 flag, char *cptr)
{
fprintf (st, "Console Terminal Input (TTI)\n\n");
fprintf (st, "The terminal input (TTI) polls the console keyboard for input.\n\n");
fprintf (st, "When the console terminal is attached to a Telnet session or the simulator is\n");
fprintf (st, "running from a Windows command prompt, it recognizes BREAK. If BREAK is\n");
fprintf (st, "entered, and BDR<7> is set (also known as SET CPU NOAUTOBOOT), control returns\n");
fprintf (st, "to the console firmware; otherwise, BREAK is treated as a normal terminal\n");
fprintf (st, "input condition.\n\n");
fprint_set_help (st, dptr);
fprint_show_help (st, dptr);
fprint_reg_help (st, dptr);
return SCPE_OK;
}
char *tti_description (DEVICE *dptr)
{
return "console terminal input";
@@ -400,6 +417,16 @@ sim_cancel (&tto_unit); /* deactivate unit */
return SCPE_OK;
}
t_stat tto_help (FILE *st, DEVICE *dptr, UNIT *uptr, int32 flag, char *cptr)
{
fprintf (st, "Console Terminal Output (TTO)\n\n");
fprintf (st, "The terminal output (TTO) writes to the simulator console.\n\n");
fprint_set_help (st, dptr);
fprint_show_help (st, dptr);
fprint_reg_help (st, dptr);
return SCPE_OK;
}
char *tto_description (DEVICE *dptr)
{
return "console terminal output";
@@ -539,7 +566,7 @@ fprintf (st, " Default VMS mode. Without initializing the TODR it returns the
fprintf (st, " time of year offset which VMS would set the clock to\n");
fprintf (st, " if VMS knew the correct time (i.e. by manual input).\n");
fprintf (st, " This is correct almost all the time unless a VMS disk\n");
fprintf (st, " hadnt been booted from in the current year. This mode\n");
fprintf (st, " hadn't been booted from in the current year. This mode\n");
fprintf (st, " produces strange time results for non VMS OSes on each\n");
fprintf (st, " system boot.\n");
fprintf (st, " OS Agnostic mode. This mode behaves precisely like the VAX780 TODR and\n");
@@ -548,10 +575,14 @@ fprintf (st, " attaching the CLK to a battery backup state
fprintf (st, " TOY clock (i.e. sim> attach CLK TOY_CLOCK). When\n");
fprintf (st, " operating in OS Agnostic mode, the TODR will initially\n");
fprintf (st, " start counting from 0 and be adjusted differently when\n");
fprintf (st, " an OS specifically writes to the TODR. VMS will prompt\n");
fprintf (st, " to set the time on each boot (if the TODR value is less\n");
fprintf (st, " than about 1 month) unless the SYSGEN parameter\n");
fprintf (st, " TIMEPROMPTWAIT is set to 0.\n");
fprintf (st, " an OS specifically writes to the TODR. VMS determines\n");
fprintf (st, " if the TODR currently contains a valid time if the value\n");
fprintf (st, " it sees is less than about 1 month. If the time isn't\n");
fprintf (st, " valid VMS will prompt to set the time during the system\n");
fprintf (st, " boot. While prompting for the time it will wait for an\n");
fprintf (st, " answer to the prompt for up to the SYSGEN parameter\n");
fprintf (st, " TIMEPROMPTWAIT seconds. A value of 0 for TIMEPROMPTWAIT\n");
fprintf (st, " will disable the clock setting prompt.\n");
fprint_reg_help (st, dptr);
return SCPE_OK;
}