[Simh] Disk sizing

Johnny Billquist bqt at softjar.se
Sun Feb 5 18:32:01 EST 2017


On 2017-02-05 23:48, Timothe Litt wrote:
> On 05-Feb-17 16:15, Johnny Billquist wrote:
>> On 2017-02-05 21:31, Mark Pizzolato wrote:
>>> A concept related to this discussion is simh's auto sizing of disks.
>>> In the PDP11 and
>>> VAX simulators the RQ and RP disks use the sim_disk library to
>>> perform I/O to disk
>>> Images and/or physical disk devices.
>>
>>> So, I'd like to expand the set of file system types that the auto
>>> sizing logic can perform
>>> to include RSTS disks and whatever might be commonly used with RSX
>>> and RT11. I can certainly give all the information you need for
>>> ODS-1, which is what RSX use. The structures are pretty similar to
>>> ODS-2, so if you already have that, it should be very simple to add
>>> the ODS-1 stuff.
>> Unfortunately, this will only cover RSX systems. For RT-11 (as well as
>> RSTS/E and others), you'll have to get someone else to help. I suspect
>> Paul should know RSTS/E, if he just have the time.
>>
>> Anyway, the gist in ODS-1 is that the size of the device is contained
>> in a file called BITMAP.SYS (FID 2,2,0). In there, there is a 32-bit
>> value saying what the size of the disk is in logical blocks.
>>
> For ODS-2, you want the SCB, which is contained in BITMAP.SYS.  It gets
> tricky, especially where geometry is involved and where the emulated
> disk image is a physical copy of media that doesn't match the SCB.

Just the same as with ODS-1. The biggest difference would be how you 
would find the alternative location of the home block if the original 
one don't exist, as the RSX algorithm is much simpler. But after that 
we're just talking about some offsets in the home block to find the file 
header, and then the exact format of the file header, followed by 
reading the SCB and then getting the data at the right offset in the SCB.

> I have code that navigates ODS-2 and attempts to identify the correct
> disk based on the recorded geometry.  It's part of an ODS-2
> reader/writer.  I need to get back to that project and finish some
> higher-level stuff; when it's released you can extract that code for
> SimH.  It's about 5 down on my stack, which I'm unlikely to reach before
> April/May.
>
> ODS-1 and 2 differ in a number of respects - closer to cousins than
> brothers.

I'd say closer to brothers than cousins, but I find it hard to describe 
the relationship in a way like that anyway.
ODS-2 is a superset of ODS-1. Lots of stuff added, some taken away, and 
some changed. But lots of the basics are the same. And the RSX ODS-1 
implementation have conditionals to handle ODS-2 as well.

	Johnny

-- 
Johnny Billquist                  || "I'm on a bus
                                   ||  on a psychedelic trip
email: bqt at softjar.se             ||  Reading murder books
pdp is alive!                     ||  tryin' to stay hip" - B. Idol


More information about the Simh mailing list