<html>
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<br>
<div class="moz-cite-prefix">On 13-Apr-15 01:07, Rob Doyle wrote:<br>
</div>
<blockquote cite="mid:552B4F07.9000701@gmail.com" type="cite">I'm
designing an RH11 disk controller for my KS10 FPGA. I'd like to
<br>
use the SIMH data format for the media.
<br>
<br>
I noticed that an RP06 disk image from SIMH is 315,187,200 bytes.
<br>
<br>
Assuming an RP06 has 815 cylinders, 19 heads, 20 sectors
(confirmed
<br>
in SIMH code) - I calculate that disk image should be 317,132,800
<br>
bytes.
<br>
<br>
If use 810 cylinders (instead of 815), I get the size of the of
the
<br>
image file.
<br>
<br>
SIMH doesn't pack data: there are 128 words per sector and each
<br>
word occupies 64-bits or 8 bytes. Therefore a sector is 1024
bytes.
<br>
<br>
What's am I missing?
<br>
</blockquote>
<br>
Maintenance mode.<br>
<br>
The 5 highest cylinders of an RP06 are reserved for maintenance
operations - <br>
providing a place for diagnostics to do writes and reads without
touching the<br>
filesystem. This is a software convention; the hardware doesn't
have any <br>
special support for this (though MSCP controllers do.) The number
of<br>
maintenance cylinders was established for each drive type.<br>
<br>
SimH won't have any reason to seek to them unless you run a
timesharing diagnostic that acesses<br>
these cylinders, which you probably haven't. So your host OS hasn't
set EOF out there.<br>
<br>
There are special system calls that allow access under timesharing;
e.g. for TOPS-10, SU.SMN is set<br>
in the SUSET. UUO to allow access to the maintenance cylinders.<br>
<br>
From rhxkon.mac, the geometry tables:<br>
<code><br>
</code><code>;BLOCKS PER UNIT</code><code><br>
</code><code><br>
</code><code>BLKPRU: DEC 154280 ;(RP04/05) 406
CYLINDERS</code><code><br>
</code><code> DEC 307800 ;(RP06) 810 CYLINDERS</code><code><br>
</code><code> DEC 123150 ;(RM03) 821 CYLINDERS</code><code><br>
</code><code> DEC 865504 ;(RP07) 629 CYL, 32 SURF, 43
SECT</code><code><br>
</code><code><br>
</code><code>;BLOCKS PER UNIT IN MAINTENANCE MODE</code><code><br>
</code><code><br>
</code><code>BLKPUM: DEC 156180 ;(RP04/RP05) 411
CYLINDERS</code><code><br>
</code><code> DEC 309700 ;(RP06) 815 CYLINDERS</code><code><br>
</code><code> DEC 123450 ;(RM03) 823 CYLINDERS</code><code><br>
</code><code> DEC 866880 ;(RP07) 630 CYLINDERS</code><code><br>
</code><code><br>
</code><code>;BLOCKS PER UNIT IN COMPATIBILITY MODE</code><code><br>
</code><code><br>
</code><code>BLKPUC: DEC 171798 ;(RP04/RP05) 22*19*411</code><code><br>
</code><code> DEC 340670 ;(RP06) 22*19*815</code><code><br>
</code><code> DEC 131680 ;(RM03) 32*5*823</code><code><br>
</code><code> 0 ;(RP07) NO COMPATIBILITY MODE</code><code><br>
</code><code><br>
</code><code>;BLOCKS PER TRACK,,BLOCKS PER CYLINDER</code><code><br>
</code><code><br>
</code><code>BLKPTC: XWD ^D20,^D380 ;(RP04)</code><code><br>
</code><code> XWD ^D20,^D380 ;(RP06)</code><code><br>
</code><code> XWD ^D30,^D150 ;(RM03)</code><code><br>
</code><code> XWD ^D43,^D1376 ;(RP07)</code><code><br>
</code><br>
For TOPS-20, IIRC, you get to use DSKOP%.<br>
<br>
Stand-alone diagnostics knew to restrict their operations to the<br>
maintenance cylinders unless told by the operator that scribbling<br>
was OK ("a scratch pack is mounted").<br>
<br>
<pre class="moz-signature" cols="72">This communication may not represent my employer's views,
if any, on the matters discussed.
</pre>
<br>
</body>
</html>