• Please review our updated Terms and Rules here

KD-11D reviwal

farjmp

Member
Joined
Dec 29, 2020
Messages
28
Hi All!

Some time ago on occasion I bought PDP-11/04LD in a fairly good condition. Damaged RX02 was in package.
The short story: my colleague and me repaired power supply, found and repaired broken RAM (which was tricky, and we still need some rare chips), and now stuck with CPU board KD11-D.

Symptoms are the following:
- the ODT-like prompt works (deposite/examine/load ok)
- it boots via serial line (PDP11GUI-like emulator called HX) into RT-11
- it hangs on RX02 access either boot attempt. RX02 is proven to be working, attached it to LSI system, boot/read/write floppies ok,
- it hangs on NOP command (appeared from some simple CPU test - found by running simple CPU test)
- SH ALL/SH CONF shows PDP-11/70 CPU and every possible DEC hardware unit, including MMU, all kind of storage devices etc (which is nonsense)
Adviced that this may indicate that the Trap 4 is not triggered by bus timeout.
- it hangs when attempt to run any program
- XXDP does not boot

We started the CPU verification with ROM dumps.
It has minor mismatches with the ROMs provided in "11/04 Engineering Drawings" document (MP00019_1104_EngrDrws_Feb78.pdf is available on the Net), but I'm uncertain whether this is ROM damage or is this just the later revision of the CPU board. Manufacturing date is Aug 19 1977.
One ROM has totally different part number - 23-008B1 replaces 23-002B1 (indicated the factory print on the chip), and has two mismatches in the code.

I will follow this post with dumps and diffs if necessary.

My questions:
1. What KD-11D revisions are known, what are the differences in circuitry and microcode?
2. Is it possible to point the malfunction with tests (Maindec or other), preferrably standalone (XXDP does not boot). And how?
3. General ideas what's going on

Please help!
 
You seem to checked most things. I was thinking that RX boot may fail if the DMA isn’t configured properly. Check NPG jumpers in the backplane.

Since you have the console emu running properly I would use PDP11GUI and run the two PDP-11/04 diagnostics there is; GKAAA0 and GKABC0. It is easy to load those as absolute binary tapes from PDP11GUI.

Check what kind of errors you get.

I am not fully aware of the different revisions of the CPU board itself. My boards are older than yours.

Good luck!
 
If booting via serial, with a fake disk over serial, then the system is not doing any DMA at all.

Which would suggest that there might indeed be a problem related to DMA. As Mattis suggested - check NPG jumper. Also check termination, as well as anything else related to DMA.
 
Thanks for the hints folks, I will check this. Sounds like bus problem.
Will let you know then.

Happy New Year)
 
Status update:
- NPG jumpers are ok on non-DMA slots
- removing RX211 board does not change things
- just realized that something related with NPG is wire-wrapped on the reverse side of the backplane (learned from the famous retrocmp.org, thanks to Joerg Hoppe!) - have not checked yet - will do!
- GKAA/GKAB have not checked yet too - will do - just trained how to do that using PDP11GUI + patched Simh combo
Sorry, while have quite experience with MPI (Q-Bus like Soviet systems), UNIBUS is very rare here (Russia) so it is terra incognita and we have to learn.

Main question is still why NOP hangs the system.

Question from colleague: could anyone point to bus driver DEC 8647 datasheet, Google seems does not know it(
 
Is it really 8647, and not 8641 ?

Pete
Unsure. I do not have the system beforehand, it is in the remote location of my colleague. This may be 8641 (1 and 7 are similar and could be a typo/bad print). According to him, this driver connects the NPG in and out on RX211 board.

Yet update:
- GKAA test passes (END OF DGKAA)
- GKAB hangs, entry point 200, RUN led on the front panel is off, no console prompt. After pressing INIT on the front panel we have
Code:
000357 000001 000500 010064
@
According to the test description test HALTs on error and we should figure out the PC content and see what happens in that piece of the code.
Another point that traps do not work.

P.S. Actually GKAB does not work in pdp11gui+simh as well, but maybe due to simh misconfiguration (I only did "set cpu 11/04" without other efforts).
 
I also discovered that GKABC0 does not seem to run in an emulated environment. I used E11, though.

I think that the test that fails in your case might be test #53.

When reviving my 11/04 I discovered that a failing DL-11W board was the root cause. Not the CPU itself. But it is not halting at the same location as in my case.
 
@farjmp How did you compare your microcode ROM dumps with the listings in the MP00019_1104_EngrDrws_Feb78 FMPS? The scan of the FMPS microcode listings on BitSavers et al is especially illegible. Do you know of a better scan on the net? Do you have a paper copy? I would be very interested in you uploading your files.

Note that in the FMPS the E132 ROM has P/N 23-002-B1 on the page 199 schematic even though it's listed as P/N 23-008-B1 on the page 190 parts list. My 1980 vintage 11/04 board uses the 23-008-B1.
 
@jks Thank for the hints, especially 23-008-B1! I've seen other mentions about inaccuracy of that document. I use the document with filename MP00019_1104_EngrDrws_Feb78.pdf size 36 311 616 bytes, unfortunately I don't remember the exact link, but most probably it is from bitsavers.
I do not have paper manuals for KD-11D neither I do not know the better links in Internet, unfortunately.
I do have a four DEC official manuals, don't remember exactly, it seems it is Fortran, RT-11 refs, system operator refs and something else, but it is only about software. Will look for exact titles. Also I have a few 8" floppies but most of them seems contain RT-11v4. We were going to dump it too, but haven't reach yet.

I typed manually the ROM listings from that document to use it as the base for the further comparison with dumps.
I cross-verified the bad prints and uncertain places in the scan, by comparing of bin and oct codes.
Then I just diff'ed the dumped image with the text files attached.
I use this command to adapt them to the ROM reader format (16 columns of raw values):

Code:
cat 23-001B1.txt | tail -n +7 |cut -f 4 | tr -s "\r\n" " " |fold -w 64 -s > 001B1.txt
cat 23-A26A2.txt | tail -n +6 |cut -f 4 | tr -s "\r\n" " " |fold -w 64 -s > A26A2.txt

The dumps we have so far are attached.

The differences are:
23-001B1 decimal location 47, value 000 in document, value 276 dumped from ROM
23-008B1 decimal locations 250, 251, values 064 064 in document, values 074 074 dumped from ROM
No other mismatches found so far, work in progress.

I have more remarks and questions yet:
1. It is indeed the test #53 from GKAB that fails. Looked to the location 304 / TESTN.
Patching the HALT as adviced allows to proceed a little further, but (as expected) the next test does not return from interrupt handler.
Everything before seems work fine, everything after is not tested.
2. should HALT bail out to ODT-like console?
Because it does not on the failing test, as said before.
What is the correct behaviour of HALT that was called programmatically?
Does it the same as the Halt switch on the front panel?
3. So it is Trap to 4 problem, and what this gives to us? Where to look further?

View attachment 23-002B1.txt
View attachment 23-001B1.txt
View attachment 23-003B1.txt
View attachment 23-004B1.txt
View attachment 23-005B1.txt
View attachment 23-006B1.txt
View attachment 23-007B1.txt
View attachment 23-A23A2.txt
View attachment 23-A26A2.txt
View attachment 23-A29A2.txt
 
Update:
1. It works!
found a break in the route that bothered with trap 4.
Now almost everything is fine - GKAB is passed, CPU is detected as 11/04, only available hardware is presented in SH ALL.
It even boots from RX02.
2. Something wrong with time interrupt - no interrupts on vector 100.
Could anyone point me to the correct Maindec test for DL11-W RTC/LTC?
3. Looking for info about Emulex board UD331071 (MFM and floppy Unibus controller).
Probably it is similar with QD3310701 (QBus variation).
 
Update:
1. It works!
found a break in the route that bothered with trap 4.
Now almost everything is fine - GKAB is passed, CPU is detected as 11/04, only available hardware is presented in SH ALL.
It even boots from RX02.
2. Something wrong with time interrupt - no interrupts on vector 100.
Could anyone point me to the correct Maindec test for DL11-W RTC/LTC?
3. Looking for info about Emulex board UD331071 (MFM and floppy Unibus controller).
Probably it is similar with QD3310701 (QBus variation).

That is great! Was the break that you describe in the backplane or on the CPU board?

As fas I know QD33 and UD33 are SMD disk controllers. Not MFM and floppy. http://www.bitsavers.org/pdf/emulex/UD3351002-G_UD33_Sep90.pdf

http://www.bitsavers.org/pdf/emulex/QD3351002-M_QD33_Dec90.pdf
 
Was the break that you describe in the backplane or on the CPU board?
That was a scratch on the front side of the CPU board, in the hidden place too close to some resistors.

MattisLind, thanks for the info, valuable!

I guess, we now stop microcode dumping, since getting ROMs out of PCB is intrusive and harmful operation. Anyway almost everything is done, "A"-series ROMs seem have no differences with the Engineering Drawings.
 
Glad you got it working.

Thanks for the files. For the 11/04 I failed to notice the microcode contents are included in the ROM listings shown later in the FMPS, and not just in the illegible code listing at the beginning. This is not typical of the other FMPS where you will often find a combination of microcode flow diagrams, tabular and code listings, but not an explicit ROM dump for the microcode.

Note that in the listings (pdf pg 181) locations 371-377 are shown as "unused ROM locations" with an mpc field of all zeros (J/serv). But in your 23-001B1 file (the 8-bit mpc field) those locations have mix of bit values (except location 375) indicating that patch space has already been used. So in true DEC fashion the microcode listing is already out-of-date compared to the ROM listings and your files.
 
Please ignore the last paragraph of my previous post. I wasn't taking account of the inversion and nybble swap of the address lines into the microcode ROMs. I wrote some code to merge the ROM dump files into a format compatible with what's shown on the FMPS listing. It shows the listing contains the two variations you observed in your ROM dumps. So all is well.
 
@jks Certain things about microcode (notation, flow etc) are explained here: http://www.vaxhaven.com/images/1/11/EK-KD11D-TM-PRE.pdf
Also some microcode listings are indeed in the Engineering Drawings from page 169 on (hardly readable though). So yes, the info is somewhat spread between many places, but is more complete that it seems at the first glance.

Back to UD33, question to All
Besides hardware emulators some of which I've seen on the Internet, what else more-or-less modern and widespread can be connected to UD33? Seagate ST-251-1? It seems it is dual MFM/RLL hard drive, and isn't RLL supported by UD33?
 
Yet update about RTC/LTC: discovered the correct test for DL11-W - it is ZDLD. It is passed w/o errors, RT11 TIME works fine (time increases).
DAY traps to 10, but that may be due to various reasons - RT11 was generated for modern MPI (QBus) machines and patched for Y2K, so there may be illegal instructions indeed.
 
Back
Top