• Please review our updated Terms and Rules here

Booting Emulex UC07 as secondary MSCP on PDP-11/73

MattCarp

Experienced Member
Joined
Sep 5, 2003
Messages
279
Location
Atlanta, Georgia (USA)
Well, I hate to say it, but I'm now stuck.

My PDP-11/73 autoboots the primary RQDX3 disk drive just fine (which is running MicroRSX on a Seagate ST-251-1, I think).

But, the real fun is with SCSI. So I got an Emulex UC07 and Seagate 4GB ST15230N SCSI disk drive.

Earlier, I was able to write an RSX-11M 4.6+ image to the Seagate disk with simh. I can boot that disk image from simh, and used linux to write that image to the physical drive with dd.

I then went ahead and installed the drive into the PDP-11 BA23 chassis, installed the UC07 SCSI controller at the alternate address of 17760334.

I was able to use ODT to start the UC07 Firmware Resident Diagnostics. I used this to set the UC07's non-volatile RAM settings. I left most everything as default, except:

- set LUN to 4 (since RQDX3 is at 0, 1, 2)
- Type Code to 4 (autosize device)
- Full Capacity = Y

I can start the machine in dialog mode, and, boot du0 to start MicroRSX. I can also boot the RX50 at du1 and du2. I do have XXDP 2.5 on floppy and that boots fine.

DU3 comes back "Message 15, non existent drive", which is good. That's what I expected, since there is only one hard disk on the RQDX3.

DU4 comes back "Message 11, Non bootable media in the drive" uh-oh

I thought, "no problem", I'll just write the disk image over serial to the physical disk with PDP11GUI. The Read/write disc image tool reports "receive timeout in state 0". I've made sure I selected controller type = MSCP, put in the proper controller address 17760334, and chosen unit 0.

Of course two MSCP controllers is possible, but it seems that another forum user did it with the UC07 as primary: https://forum.vcfed.org/index.php?threads/correct-mscp-secondary-csr.63645/ However, I'd like to keep the UC07 as secondary for now.

I believe the hardware is good. In the UC07 FRD, I can see the disk drive. When I "List Known Units" it says Drive 4 is Available and a unit size of 8386733.

Also, the dialog's return message of "non bootable media in the drive" suggests the PDP and the UC07 is able to get something from the drive.

At this point, I think my image could be written improperly, or, ...?

What's the easiest way to reload the SCSI disk drive? I thought PDP11GUI would be the easiest, but it's turning out not to be the case!

I seem to recall I used TU58EM and XXDP a very long time ago to load MicroRSX, but I certainly don't have the steps now.

Also, I'm going crazy trying to be sure I'm sending either a line feed or a carriage return from my Windows CoolTerm or the PDP11GUI Terminal. Any hint there would be appreciated.

I feel like I'm close, and just need to be pointed into the right direction.

I am also happy to hear the feedback "hahahaaha, you should stick with Macs and 8-bit machines you mortal!" :)
 
Oh, it's been so long since I created a SCSI drive for my 11/84. I always used DD under Linux to create the disk. Using the file from Simh configured exactly the same as my machine. Yes, you are close if it says non-bootable media. I do remember seeing that early when I tried doing it. I have a UDA50 and a UC17 in mine. Believe those are both MSCP. Don't remember which is primary though. I may have jotted down the controller addresses. I'll look. Not sure I can offer any real suggetions as
I don't see anything you did wrong.
 
From my notes my UC17 is also primary at MSR 17772150. The address of the UDA50 is 17766150.
 
I vaguely remember having issues early on when I had the UDA50 at 17772150 and the UC17 at another address. There might even be a post asking about this on this forum many, many years back.
 
I have not used two MSCP controllers. but I have used used the UC07 and other QBUS MSCP controllers with RT11/TSX+. My insight (or lack thereof) into the 2018 thread is as follows.

Generally there is no disk partition defined for the DEC operating systems disk for this era
For RT11, the partition and mapping is maintained in the handler DU involved (DU.SYS or DUX.SYS)
Make sure each partition is configured to boot once handler is loaded with mapping info (COPY/BOOT).
Only partition 0 of an MSCP disk is hardware bootable fro RT11. The other partitions can be software booted (BOOT DU1:), I think starting with V5.6.

So if you put RT11 on partition 0, setup the mapping, CSR and make that partition bootable it should work. From there you should be configure the other RT11 partitions to be bootable. The other partitions can have different mappings, if you so desire (I think) and the patience to keep things straight.

Jerry
 
Make sure each partition is configured to boot once handler is loaded with mapping info (COPY/BOOT).

Thank you Jerry. Can you elaborate on this? Is there some preparation I need to do with the physical disk? From other threads it seemed like I was going to be successful with DD...

It's a 4G SCSI disk. I didn't expect that it had any type of partitioning. In fact, I'm completely ignorant of the disk structure that would be necessary to enable a booting operating system. It occurred to me that the monitor must follow some procedure to load a block and transfer control, not unlike a PC reading a master boot record from an older partition mapped PC hard disk.

I am thinking I should just focus my efforts on loading the disk image through the serial port with T58EM, VTServer, or even PDP11GUI if I can get that to work...

alt.sys.pdp11 - you've reminded me of a resource I can mine...
 
I have an Emulex UC18 (disk + tape controller combo) on my 11/44 UNIBUS machine setup for four hard drives (XXDP, RT11, 2.11BSD, RSTS/E) on units 0-3.
I believe I used type code 4 (autosize) where the UC17 asks the drive how big it is and uses that info.
I have used SEAGATE 1.0G and 2.1G hard drives, and have used a SCSItoSD v5 board as well.
They all worked (I was not happy with the SCSItoSD performance, transfer rate was slow).
Boots and runs the OS from each drive as expected.
I transfer the data to the SCSI drives by moving my disk box from the 11/44 to a WinXP box that has an Adaptec2940 SCSI card in it, and use
Cygwin 'dd' to transfer the files from the SIMH image to the physical drive.
From the 11/44 command prompt I can then boot DU0 thru DU3 as expected.
 
I'm tossing this in here in case it helps.

The technical manual for the Emulex UC07 and UC08 calls out the 11/73B not being autobootable on an 11/73B CPU or when the UC07 or UC08 is set to an alternate bus address. Two versions of that manual can be found at:
Here's an excerpt of the manual where it talks about autobooting limitations:

Autoboot Unit Number

When the UC07/08 is at the standard base address, the automatic
bootstrapping option causes the system to boot automatically from the selected
logical unit (0 through 7) on power-up. This option is enabled whenever the
UC07/08 is set to the standard base address. This option cannot be used with a
MicroVAX or in a system that uses an 11/73B CPU module. When automatic
bootstrapping is enabled, the Unit Offset or Autoboot Unit Number parameter
selects the autoboot logical unit.

The automatic bootstrapping process requires that the LSI-l1 CPU module be
configured for power-up mode 0. The following table lists the configuration
settings for several popular LSI-ll CPUs.

CPU Configuration Setting
------- --------------------------
11173A Install W3 and W7
11123 + Remove J18-J19 and J18-J17
11123 Remove W5 and W6
11102 Remove W5 and W6


If you are using automatic bootstrapping, the controller will wait indefinitely for
the boot device to come online and ready.

If your Ue07/08 is installed at an alternate LSI-11 bus address, you can still
bootstrap from a drive supported by the UC07/08, by using any boot process
other than autoboot.
 
Thank you. I have the quad width M8190-AB which I think is a regular 11/73.

I’m also only trying to boot from the dialog mode.

So, I don’t think this applies..
 
Can you elaborate on this? Is there some preparation I need to do with the physical disk? From other threads it seemed like I was going to be successful with DD.

First note that having the UC07 as the second controller (port) means that any OS using disks on it has to be updated to use an alternate address. Here is a outline of how I would approach the problem if you want to install RT-11. I don't know all the specifics of your machine, so YMMV and I have not tested ithis. Take snapshots of the disk image along the way(!)
  • Treat the second controller and drive as unique set of equipment. There may be other hard disk controllers in this machine, but do not try to access them from this installation of RT-11 or configure the handler to use two contollers (ports). Just change the address of the controller the RT11 handler uses.
  • Create a bootable RT-11 image (SIMH) for MSCP and disk capacity of 65,535 blocks.
  • Keep the DU0: port, unit and partition as 0.
  • Code:
    .sh dev:du
    
    Device    Status                   CSR     Vector(s)
    ------    ------                   ---     ---------
      DU      Resident                172150   150
    
              DU0: is set PORT =  0, UNIT =  0, PART =  0
  • While running RT-11 change the CSR to match the 2nd controllerand pick an unused vector to use - SET DU CSR=xxxxxx,VEC=yyy. Then update the bootstrap ares COPY/BOOT DU:RT11zz.SYS DU0: Don't reboot until both sets of changes are made.
  • Test the image (SIMH) at the new address.
  • Copy the image to the actual disk starting at block 0. 'dd' if you can write directly to disk or PDP11GUI
  • Configure the system to enter ODT on boot or configure the serial card to halt on break
  • Configure the UC07 via FRD set all the various ID's as 0 for Autoboot Unit Number, Unit Offset, SCSI ID, etc for now. Set SCSI drive ID to match.
  • Start the machine and use the manual bootstrap instructions Section 7.5 from UC0751001H_UC06_UC07_UC08_Host_Adapter_Technical_Manual_Nov90.pdf with R1=xxxxxxx
  • Once booted the configuration should look something like this.
    Code:
    .sh dev:du
    
    Device    Status                   CSR     Vector(s)
    ------    ------                   ---     ---------
      DU      Resident                172170   170
    
              DU0: is set PORT =  0, UNIT =  0, PART =  0
Jerry
 
Hi Jerry - that's an incredible reply - thank you!


I suppose the difference is that in my simh system (from which I created the physical image), I have just one MSCP controller. In my physical system, there are two. I need to double check that, but that could explain why my physical image is confused.

I'll check that out.


Meanwhile, I did make some small progress with PDP11GUI this morning. I needed to set my controller address to 160334 for CSR 17760334 (controller = MSCP).

I was able to load the driver, and when I "Reset & Open Device" it seemed to communicate. However, it was unable to obtain the disk drive geometry. So, as a result, PDP11GUI would not let me load an image file (I can pick the image file, but PDP11GUI says "disc has only 0 bytes").

Capture.JPG
 
I don't use PDP11GUI much, but you might want to try a smaller SCSI Drive. The large ones may trip boundary conditons. 1 or 2 GB might work better.

Does the UC07 have sticker that indicates the firmware level?
 
Potential 1-2GB boundary problem with my physical drive - interesting. That might explain why PDP11GUI doesn't like it.

One the potential theory that the RSX-11 image isn't set up for living on a secondary controller.
I checked my sim - sure enough it was set up with only one MSCP controller.

SET RQ enable
SET -L RQ0 RAUSER=8385867
ATTACH RQ0 st15230.dsk
ATTACH RQ1 rsx11mplus.dsk
ATTACH RQ2 rsx11mplusmf.dsk

simh>boot RQ0 of course, this immediately starts RSX successfully on simh...


I'll investigate the possibility of creating a new 1GB disk and loading it from PDP11GUI, or, seeing if simh can more closely match my physical system.

...or attempting to load RSX-11 fresh on the physical machine from VTServer (which is a whole to do, since I have to spin up a linux machine to compile, as I don't see a Windows VTServer....ugh)
 
I use the ST15320N on my UC07 with the last firmware release G143R. Just thought if you had a smaller SCSI disk lying around, give it a shot and see if PDP11GUI can see the capacity. You don't have to write anything on it.

If a smaller disk has the same challenge, then the sizing issue is probably between the UC07 and PDP11GUI. Then check the SCSI Termination, firmware version, FRD configuration, etc..
 
I can confirm firmware G143M on the UC07.

I pulled the RQDX3, moved the UC07 so that my cards were contiguous in the backplane and started the machine in dialog mode.

I had not changed the UC07 NOVRAM settings or address jumpers, so the UC07 is at 17760334 and LUN starts at 4, so I issued a BOOT DU4 command.

It came back:

Code:
Commands are Help, Boot, List, Map and Test.
Type a command then press the RETURN key: BOOT DU4

Trying DU4

Message 14
Non existent controller, address 17772150

Trying second controller

Message 11
Non bootable media in the drive

Commands are Help, Boot, List, Map and Test.
Type a command then press the RETURN key:

The LED status on the UC07 is all off (which is good). I do notice that the ST15320N drive light blinks twice when trying to boot. Not a fast blink, but a ~0.7s blink, then a delay of 4-5 seconds, then a short blink before it comes back "Non bootable media in the drive".

It must be my preparation of the image.

I followed the instructions here: https://ancientbits.blogspot.com/2012/07/installing-rsx-11m-46-from-scratch-part.html

I used Ubuntu to dump the drive (dd) to a file, which gave me the number of blocks. I attached this file to simh, then I followed the instructions to get RSX-11 on to this disk from the RSX-11. I can't remember exactly where I got the RSX-11 distribution. There are a few copies floating around in different formats on the net. I believe it was the file rsx11mplus_4_6_bl87.dsk, which appears to be an RD54 disk image (it's 159.4 MB).

So, I followed the instructions and increased the headers, then, wrote the file to the Seagate disk with dd.


Here's something I noticed: the simh file is 8385867 blocks (SET -L RQ0 RAUSER=8385867). The UC07 FRD, when I select "List Known Devices" reports:

4 Available 8386733

So, there is a small mismatch in the disk file I wrote to the device, and, the size of the device according to the controller.

I'm going to use the FRD to format and verify the Seagate drive, and, if successful, conclude the hardware is totally fine. Then I think I'll try VTServer to load the RL02 RSX-11M image. I hope that will work.

This means that I'm skipping Jerry's advice of configuring RSX to know the controller is at an alternate address, for now.
 
Format seems to be working, but no status messages printed to terminal....4GB, I think this will run for a while.

ST15320N drive activity light is on continuously.

Code:
Commands are Help, Boot, List, Map and Test.
Type a command then press the RETURN key:
165224
@17760334/000000 1
@17760336/005400 30003
@/000400 42000
@17760336/002000
@200G..


Disk Firmware-Resident Diagnostic
Copyright (c) 1988 Emulex Corporation all rights reserved
UC07/8 controller, firmware revision level M
IP address = 160334

                               Option Menu
----------------------------------------------------------------------------
1  - Format                               2  - Verify
3  - Format & Verify                      4  - Data Reliability
5  - Format, Verify, & Data Reliability   6  - Read Only
7  - List Known Units                     8  - Replace Block
9  - Write RCT                            10 - Optical Read all Diag Sectors
11 - Optical Write a Diag Sector          12 - Issue Mode Select
13 - Display Novram                       14 - Edit / Load Novram

Enter option number: 3

Data on drive(s) will be lost
Do you want to continue [Y or N,def=N]? Y

Drive   Status        Unit Size
-------------------------------
  4     Available       8386733

Selected drive(s):

Enter a drive number to test (end with RETURN key): 4

Drive   Status        Unit Size
-------------------------------
  4     Available       8386733

Selected drive(s): 4

Enter a drive number to test (end with RETURN key):

0 = device default interleave
1 = no interleave
Enter sector interleave value for drive 4 [0-31,def=1]: 0

Enter number of verify passes for the drive(s) [1-255,def=1]:

Starting format on drive 4
 
...well, it gets a little more mysterious. Maybe the hardware isn't clean after all. I'm not sure if that would cause my boot problem or not.

I tried to just write RCT , but "Drive 4 has been removed from further testing". This status persisted even after powering off and back on.

I'm attempting to reformat it now.

Code:
Drive   Status        Unit Size
-------------------------------
  4     Available       8386733

Selected drive(s):

Enter a drive number to test (end with RETURN key): 4

Drive   Status        Unit Size
-------------------------------
  4     Available       8386733

Selected drive(s): 4

Enter a drive number to test (end with RETURN key):

0 = device default interleave
1 = no interleave
Enter sector interleave value for drive 4 [0-31,def=1]: 0

Enter number of verify passes for the drive(s) [1-255,def=1]:

Starting format on drive 4

Error writing RCT or FCT on drive 4

Drive 4 has been removed from further testing

Error writing RCT or FCT on drive 4

Hit any key to continue
 
Disk now in good graces.

For my SCSI disk, I needed to set it up in the UC07 firmware (NOVRAM) as type 4, full capacity=N, transparent replacements=N.

I then did a format and verify. No bad blocks were found.

Now I gotta return to getting RSX-11 on it.

PDP11GUI still doesn't like it, so I'm off to try VTServer.
 
Amazingly, I had a copy of VTServer for Windows. But, I needed to change my USB-Serial adapter to be on COM1 (it was at COM5, and VTServer was hard coded to COM1!).

c:\>vtserver 9600 -odt

But, no luck there. The program just output a string of "@" symbols. I actually went into my terminal program, confirmed the program was loaded properly in memory by comparing the bootstrap with what is listed in the VTServer documentation.

I am going to go to Linux (ubuntu) and compile the "standard" VTServer program. Now this requires me to set up an Ubuntu machine, so I can run VTServer
 
Back
Top