[Simh] Write sector headers to disk

Mark Pizzolato Mark at infocomm.com
Tue Jun 25 03:38:57 EDT 2019


On Monday, June 24, 2019 at 11:31 PM, Lars Brinkhoff wrote:
> Some of DEC's disks allow reading and writing the sector headers.  ITS'
> disk formatting program, SALV (the Salvager), uses this to make a new file
> structure on a pack, and to verify its integrity.
> 
> This isn't fully supported by SIMH.  The file PDP10/pdp10_rp.c has the
> comment "23-Aug-01  RMS  Added read/write header stubs for ITS", and the
> stub is in "case FNC_WRITEH" in rp_svc.  It's a no-op that just sets the DONE
> flag.
> 
> What is supposed to happen is that SALV wants to write two header words
> with geometry information and then the sector data with a particular bit
> pattern.  The verification phase reads back and checks the bit pattern.
> Since those bits aren't written, the verification fails.
> 
> This isn't so bad since SALV offers to skip the verification.  But now this has
> come up again using Rich Cornwell's upcoming KA10 addition to SIMH.  The
> KA10 version of SALV does the same with an RP04 disk, but does not have the
> option to skip the verification.  SALV also writes some information to the key
> fields in the headers, which is later read back.
> 
> I'm wondering what your opinions are reagarding this?  I see some options:
> 
> 1. Do not change SIMH.  Patch SALV to skip the verification.  Obviously this is
> quite quick and painless, but leaves me with a slightly dissatisfied feeling.
> Some historical software isn't running properly.
> 
> 2. Add header words to the disk image file.  An incompatible change, but
> should of course be optional.
> 
> 3. Store header words out of band somehow.  Last in the image file?
> In another file?


Is the data that is written in the headers by SALV predictable?  If so, then 
the code path that performs the read header operation could create the 
predictable data on the fly (effectively incorporating the logic of the SALV 
program into the rp device simulation) for these otherwise unused/noop 
read/write header ops.  

There is other logic in simh VAX/PDP11 which makes simulator logic conform 
to the expected behavior of programs.  Specifically, this is done by the device
address auto-configure logic.

> I understand the case for making changes to SIMH is quite weak if running
> SALV is the one and only use case.  Are there any other programs that reads or
> writes the headers?

If there are other cases that write headers, there clearly haven't been others 
that read the headers or we'd have heard earlier.

- Mark


More information about the Simh mailing list