So now the real question from this discussion becomes …

 

“How do “we” (initially Bob Supnik and perhaps the SIMH users/contributor base) 
track the “core” and “per platform” SIMH requirements ?”

 

which then leads on to the whole issue of test cases for requirements 
validation, functional allocation, etc. and also to a discussion about how much 
of this ought to be documented right inside the SIMH source code (given that 
many SIMH users may never have access to the hardware manuals or operating 
system source listings (in this case, for various flavors of VMS), and what 
degree of “assumed knowledge” (and prerequisite DEC reading materials) is 
required to actually understand the source fully.

 

One day, (hopefully not for a VERY, VERY long time), Bob won’t be around to ask 
these questions about SIMH’s implementation or about the original DEC 
hardware/software he based the VAX implementations on.  If we’re truly going to 
keep SIMH going long past that point, we need to come up with a plan to make 
sure that the SIMH software has well-documented requirements.

 

Jason

 

From: simh-boun...@trailing-edge.com [mailto:simh-boun...@trailing-edge.com] On 
Behalf Of Hittner, David T (IS)
Sent: Tuesday, 25 January 2011 3:55 PM
To: Peter Allan; simh@trailing-edge.com
Subject: Re: [Simh] EXTERNAL: Problem booting an emulated VAX-11/780 from a 
Massbus disk drive

 

Congratulations, you have found a “Devil in the details”!

 

Over the years, VMS driver internal implementations have changed substantially. 
What you are experiencing is that VMS V4 appears to interact with the RP 
controller (not just the RP06 drive) differently than later versions of VMS. It 
 appears that there was a substantial driver standardization/rewrite effort 
that occurred around the VMS V4/V5 era from the later driver comments that I 
have seen.

 

The way to find the exact problem is to either walk your way through the VMS 
driver with the VMS source code, and see where the controller simulation is 
behaving differently than expected, OR put some breakpoints in the simulated 
read/write routines, and try to intuit the correct controller behavior from 
what you see happening from the driver. The second way is harder, but sometimes 
it’s the only way if you don’t have source code.

 

In many hangs, the problem turns out to be a timing issue – the controller 
simulation is responding too fast or too slow, based on the behavior that the 
driver expects to see. VMS may be hung waiting for an interrupt that has 
already fired or a register value that has already been overwritten - that is, 
the simulation is “too fast” and needs to delay things with a timer.

 

I’ve just finished debugging a similar problem in the VMS DEUNA driver, where 
later versions of VMS work fine, but the earlier VMS V3/V4 drivers left the 
controller not functional.  Using the second method (because I don’t have any 
VMS sources earlier than 7.2), I watched the DELUA registers and intuited that 
the problem was incorrect behavior in the DEUNA SELFTEST command, since that’s 
the point where the VMS driver quit trying to work with the card. My DEUNA 
patch will appear in the next full release of SIMH.

 

If you can’t debug the problem yourself, you can always ask someone in the SIMH 
community to step up and take a crack at it.

Or ignore the problem and use your RA81 workaround.

Good luck.

 

Dave Hittner

 

From: simh-boun...@trailing-edge.com [mailto:simh-boun...@trailing-edge.com] On 
Behalf Of Peter Allan
Sent: Tuesday, January 25, 2011 3:00 PM
To: simh@trailing-edge.com
Subject: EXTERNAL:[Simh] Problem booting an emulated VAX-11/780 from a Massbus 
disk drive

 

I started this thread over on comp.os.vms in case anyone knew of VMS cause of 
my problem, but it seems to be a problem with simh.

have been trying to set up the VAX780 emulator in simh to boot VMS 4.6 from an 
RP06 disk drive and I have failed.

My tests have been the following.

I installed VMS 4.6 (and 4.0 and 4.2) on an RP06 drive. When I try to boot from 
the RP06, then VMS starts up, displays a line like 

    VAX/VMS Version  KG  15-Jun-1987 10:00

and sits there forever. The "KG" is because I have not yet been able to apply 
the mandatory update. Clearly the 780 is booting from the disk since it 
displays the one line message.

If I boot with the command

    b rp0/r5:1

then I get into SYSBOOT, but everything appears to be fine. Typing "CONTINUE" 
returns to the hung state.


Next I tried installing VMS 4.6 on to an RA81 disk drive. This works fine, so I 
copied the contents of the RA81 to an RP06 drive using stand alone backup and 
tried booting from the RP06, but still the system hung during the boot process. 
So the problem appears to be with the RP06 drive, not with VMS or with the 
installation procedure.

I tried changing the RP06 disk type to all other possible Massbus disk types 
(RP04/05/07, RM02/03/05/80) and installing VMS 4.6. These all act in the same 
way as the RP06.

However, I have also tried to install VMS 5.0 and VMS 7.3 on to an RP06. This 
works fine!

So, the problem occurs with the specific mixture of a Massbus disk drive and 
VMS 4.x (I have tried x = 0, 2, 6)


I have just examined the code of pdp11_rp.c, which contains at the end of the 
file:


/* Boot routine */

#if defined (VM_PDP11)

<< lines deleted >>

t_stat rp_boot (int32 unitno, DEVICE *dptr)
{

<< code concerned with booting from an rp type drive >>

#else

t_stat rp_boot (int32 unitno, DEVICE *dptr)
{
return SCPE_NOFNC;
}

#endif


Is this code really only needed for a PDP11, or does it apply to a VAX780 as 
well? I tried changing VM_PDP11 to VAX_780, just for a test, but I got some 
error messages, so I thought I better ask for help rather than blundering about 
in the code.

I am very confused since the vax780 emulator WILL boot successfully from a 
Massbus disk for VMS 5.0 and 7.3, but it does not for VMS 4.0, 4.2 and 4.6.

Can anyone shed any light on this - or even offer a solution?

I have been doing nearly all of this on Linux (CentOS 5.5), but I did try to 
install VMS 4.6 on to an RP06 using the Windows version of the system "just in 
case". That gave the same problem.

Peter Allan

_______________________________________________
Simh mailing list
Simh@trailing-edge.com
http://mailman.trailing-edge.com/mailman/listinfo/simh

Reply via email to