diff --git a/PDP11/pdp11_io_lib.c b/PDP11/pdp11_io_lib.c index 311adb01..96d1e449 100644 --- a/PDP11/pdp11_io_lib.c +++ b/PDP11/pdp11_io_lib.c @@ -754,6 +754,7 @@ t_stat pdp11_bad_block (UNIT *uptr, int32 sec, int32 wds) int32 i; t_addr da; uint16 *buf; +uint32 packid = (uint32)time(NULL); if ((sec < 2) || (wds < 16)) return SCPE_ARG; @@ -768,7 +769,8 @@ if (sim_fseek (uptr->fileref, da, SEEK_SET)) return SCPE_IOERR; if ((buf = (uint16 *) malloc (wds * sizeof (uint16))) == NULL) return SCPE_MEM; -buf[0] = buf[1] = 012345u; +buf[0] = (uint16)packid; +buf[1] = (uint16)(packid >> 16); buf[2] = buf[3] = 0; for (i = 4; i < wds; i++) buf[i] = 0177777u; diff --git a/sim_disk.c b/sim_disk.c index 77dd0592..6cc18363 100644 --- a/sim_disk.c +++ b/sim_disk.c @@ -1404,6 +1404,7 @@ t_addr da; int32 wds = ctx->sector_size/sizeof (uint16); uint16 *buf; DEVICE *dptr; +uint32 packid = (uint32)time(NULL); if ((sec < 2) || (wds < 16)) return SCPE_ARG; @@ -1419,7 +1420,8 @@ if (!get_yn ("Overwrite last track? [N]", FALSE)) return SCPE_OK; if ((buf = (uint16 *) malloc (wds * sizeof (uint16))) == NULL) return SCPE_MEM; -buf[0] = buf[1] = 012345u; +buf[0] = (uint16)packid; +buf[1] = (uint16)(packid >> 16); buf[2] = buf[3] = 0; for (i = 4; i < wds; i++) buf[i] = 0177777u;