[Simh] something strange with simulated RK05 drive ?

Paul Koning paulkoning at comcast.net
Tue Feb 11 19:24:36 EST 2020



> On Feb 11, 2020, at 6:00 PM, Johnny Billquist <bqt at softjar.se> wrote:
> 
> On 2020-02-11 23:25, Paul Koning wrote:
>>> On Feb 11, 2020, at 3:15 PM, Henk Gooijen <henk.gooijen at hotmail.com> wrote:
>>> ...
>>>  As you can see from the printed debug statements, in the function rk_go()
>>> the cylinder number goes higher than the maximum number of cylinders
>>> possible on an RK05. Then, the function rk_set_done() is called with the
>>> variable "error" holding RKER_NXC (64 decimal == 000100, octal == RKER_NXC)
>>> ==> turns on the FAULT indicator.
>>> SIMH does not generate an error, all is OK, as is on the real PDP-11 / RK05.
>>> For now, I "solved" this by adding "if (error != RKER_NXC)", but that
>>> will exclude all "non-existing cylinder" errors, not only the error that
>>> is generated at the end of the FORMAT RK0:  command.
>>>  Is this incorrect behavior in SIMH, simulating the RK05?  I don't believe
>>> that, so is the RKER_NXC handled in the RK.SYS driver or in RT11 in case of
>>> the execution of the FORMAT command?
>> I only have some V2 sources.  The zero directory operation, which I think is what "format" uses, just grabs the device size and writes an empty directory.  So I'm puzzled by the reference to an invalid sector.
> 
> I would expect the INIT to write the empty directory. I would expect FORMAT to actually format the disk pack, meaning writing the sector header for each sector on the whole packet.
> A little surprised, though, that the formatting wouldn't know how many tracks there are, and continue until it hits an error.

There is no such thing as "format", in the sense of writing sector headers, on an RK05.

>> The driver calls that a hard error (no retrying).
>> But why would you turn on the FAULT light on your RK05 for that?  Fault, on the RK05, means servo failure, in particular it means the servo grid light bulb has burned out.  References to invalid disk addresses don't light FAULT in an RK05.  The Peripherals handbook describes it as (a) that light bulb failed, or (b) write current is present without a write command, meaning your disk probably has been wiped by an electronic failure.
> 
> Sounds like simh does it wrong, then.

I don't think Henk was talking about SIMH having a problem, though I got a bit confused.  The question was about the fact that the fault light was coming on.  My answer is: don't implement that light, there is no condition in the emulated drive that matches what that light does in the real drive.

	paul



More information about the Simh mailing list