[Simh] DZ11 vs DZV/DZQ11

Johnny Billquist bqt at softjar.se
Thu Apr 12 16:31:45 EDT 2018


On 2018-04-12 21:24, Johnny Billquist wrote:
> On 2018-04-12 02:41, Mark Pizzolato wrote:
>> On Tuesday, April 10, 2018 at 10:15 AM, Johnny Billquist wrote:
>>> On 2018-04-10 10:26, Mark Pizzolato wrote:
>>>> On Monday, April 9, 2018 at 11:51 PM, Johnny Billquist wrote:
>>>>> On 2018-04-10 00:25, Mark Pizzolato wrote:
>> [...]
>>>> Some OSes leverage the encoded value to correspond specifically with a
>>>> particular model of DEC disk and run from there potentially 
>>>> presuming details
>>>> about disk size or geometry.
>>>
>>> I certainly hope not. Like I said, this is cosmetic. MSCP reports 
>>> disk size directly,
>>> and the id is just for information. Anything that is mad enough to 
>>> assume size
>>> based on the id instead of the size reported by the device would be some
>>> seriously broken software.
>>
>> Well, most of the third party MSCP controllers provided a constant 
>> Media ID that
>> identified the drive as an RA81.  In general, since that was really 
>> cosmetic it shouldn't
>> have mattered.  I vaguely recall that some Ultrix file system 
>> generation logic used
>> the drive type to determine presumed values for the disk geometry for 
>> cylinder
>> boundary alignment, but no matter what that choice really didn't matter.
> 
> Some definitely allowed you to select it to some degree, and some might 
> have been even more clever.

Ok, I decided to locate the documentation on how this value/string is 
encoded, since Mark said he'd not seen it.
It's in the MSCP Basic Disk Functions Manual, page 4-37 to 4-38.
The media type identifier is a 32-bit number, and it's coded like this:
The high 25 bits are 5 characters, each coded with 5 bits. The low 7 
bits is a binary coded 2 digits.

Looking at it, you have:
D0,D1,A0,A1,A2,N

For an RA81, it would be:

D0,D1 is the preferred device type name for the unit. In our case, that 
would be "DU".
A0,A1,A2 is the name of the media used on the unit. In our case "RA".
N is the value of the two decimal digits, so 81 for this example.

And for letters, the coding is that A=1, B=2 and so on. 0 means the 
character is not used.

So, again, for an RA81, we would get:
4,15,12,1,0,81

That's all in decimal, and you have the size of each bitfield.
So then it becomes are rather easy task to compute what the 32-bit value 
is for this.

   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