mirror of
https://github.com/simh/simh.git
synced 2026-01-11 23:52:58 +00:00
VAXen: Completely reset TODR on every power-on
This commit is contained in:
parent
9082590ffa
commit
9285073024
@ -769,10 +769,12 @@ else
|
||||
|
||||
t_stat clk_reset (DEVICE *dptr)
|
||||
{
|
||||
if (clk_unit.filebuf == NULL) { /* make sure the TODR is initialized */
|
||||
clk_unit.filebuf = calloc(sizeof(TOY), 1);
|
||||
if ((clk_unit.filebuf == NULL) || /* make sure the TODR is initialized */
|
||||
(sim_switches & SWMASK ('P'))) {
|
||||
clk_unit.filebuf = realloc(clk_unit.filebuf, sizeof(TOY));
|
||||
if (clk_unit.filebuf == NULL)
|
||||
return SCPE_MEM;
|
||||
memset (clk_unit.filebuf, 0, sizeof(TOY));
|
||||
}
|
||||
todr_resync ();
|
||||
sim_activate_after (&clk_unit, 10000);
|
||||
|
||||
@ -764,10 +764,12 @@ else
|
||||
|
||||
t_stat clk_reset (DEVICE *dptr)
|
||||
{
|
||||
if (clk_unit.filebuf == NULL) { /* make sure the TODR is initialized */
|
||||
clk_unit.filebuf = calloc(sizeof(TOY), 1);
|
||||
if ((clk_unit.filebuf == NULL) || /* make sure the TODR is initialized */
|
||||
(sim_switches & SWMASK ('P'))) {
|
||||
clk_unit.filebuf = realloc(clk_unit.filebuf, sizeof(TOY));
|
||||
if (clk_unit.filebuf == NULL)
|
||||
return SCPE_MEM;
|
||||
memset (clk_unit.filebuf, 0, sizeof(TOY));
|
||||
}
|
||||
todr_resync ();
|
||||
sim_activate_after (&clk_unit, 10000);
|
||||
|
||||
@ -751,10 +751,12 @@ else
|
||||
|
||||
t_stat clk_reset (DEVICE *dptr)
|
||||
{
|
||||
if (clk_unit.filebuf == NULL) { /* make sure the TODR is initialized */
|
||||
clk_unit.filebuf = calloc(sizeof(TOY), 1);
|
||||
if ((clk_unit.filebuf == NULL) || /* make sure the TODR is initialized */
|
||||
(sim_switches & SWMASK ('P'))) {
|
||||
clk_unit.filebuf = realloc(clk_unit.filebuf, sizeof(TOY));
|
||||
if (clk_unit.filebuf == NULL)
|
||||
return SCPE_MEM;
|
||||
memset (clk_unit.filebuf, 0, sizeof(TOY));
|
||||
}
|
||||
todr_resync ();
|
||||
sim_activate_after (&clk_unit, 10000);
|
||||
|
||||
@ -767,10 +767,12 @@ else
|
||||
|
||||
t_stat clk_reset (DEVICE *dptr)
|
||||
{
|
||||
if (clk_unit.filebuf == NULL) { /* make sure the TODR is initialized */
|
||||
clk_unit.filebuf = calloc(sizeof(TOY), 1);
|
||||
if ((clk_unit.filebuf == NULL) || /* make sure the TODR is initialized */
|
||||
(sim_switches & SWMASK ('P'))) {
|
||||
clk_unit.filebuf = realloc(clk_unit.filebuf, sizeof(TOY));
|
||||
if (clk_unit.filebuf == NULL)
|
||||
return SCPE_MEM;
|
||||
memset (clk_unit.filebuf, 0, sizeof(TOY));
|
||||
}
|
||||
todr_resync ();
|
||||
if (clk_unit.flags & UNIT_ATT) /* battery backup hooked up? */
|
||||
|
||||
@ -873,10 +873,12 @@ else
|
||||
|
||||
t_stat clk_reset (DEVICE *dptr)
|
||||
{
|
||||
if (clk_unit.filebuf == NULL) { /* make sure the TODR is initialized */
|
||||
clk_unit.filebuf = calloc(sizeof(TOY), 1);
|
||||
if ((clk_unit.filebuf == NULL) || /* make sure the TODR is initialized */
|
||||
(sim_switches & SWMASK ('P'))) {
|
||||
clk_unit.filebuf = realloc(clk_unit.filebuf, sizeof(TOY));
|
||||
if (clk_unit.filebuf == NULL)
|
||||
return SCPE_MEM;
|
||||
memset (clk_unit.filebuf, 0, sizeof(TOY));
|
||||
}
|
||||
todr_resync ();
|
||||
sim_activate_after (&clk_unit, 10000);
|
||||
|
||||
@ -579,10 +579,12 @@ if (!sim_is_running) { /* RESET (not IORESET)?
|
||||
tmr_poll = t; /* set tmr poll */
|
||||
tmxr_poll = t * TMXR_MULT; /* set mux poll */
|
||||
}
|
||||
if (clk_unit.filebuf == NULL) { /* make sure the TODR is initialized */
|
||||
clk_unit.filebuf = calloc(sizeof(TOY), 1);
|
||||
if ((clk_unit.filebuf == NULL) || /* make sure the TODR is initialized */
|
||||
(sim_switches & SWMASK ('P'))) {
|
||||
clk_unit.filebuf = realloc(clk_unit.filebuf, sizeof(TOY));
|
||||
if (clk_unit.filebuf == NULL)
|
||||
return SCPE_MEM;
|
||||
memset (clk_unit.filebuf, 0, sizeof(TOY));
|
||||
todr_resync ();
|
||||
}
|
||||
return SCPE_OK;
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user