PDP-11/23 Debugging

Noel Chiappa jnc at mercury.lcs.mit.edu
Wed Nov 19 12:39:50 CST 2014

    > From: Ben Sinclair

    > Thanks a lot for your help Noel!

Sure, glad to help. I'm at just about this stage with my 11/23's, so it's no

    > I did write a Ruby program to enter programs in from files via ODT, so
    > I can probably run your test that way, assuming it's a set of addresses
    > and values.

I can do that. Here you go (in Unix assembler, which is somewhat different
from the DEC one in some syntax details, notably '/' for comment, not ';'):

	br4 = 200

	stack = 2000

	conregs = 177560

	rcsr = 0
	rbuf = 2
	tcsr = 4
	tbuf = 6

	rint = 100

	. = 60^.
	conr; br4			/ 1020 200

	. = 1000^.

test:	mov	$stack, sp		/ 12706 2000
	mov	$conregs, r1		/ 12701 177560
/	mov	$rint, rcsr(r1)		/ 12761 100 0
	mov	$rint, (r1)		/ 12711 100
1:	wait				/ 1
	br	1b			/ 776

conr:	movb	rbuf(r1), tbuf(r1)	/ 116161 2 6
	rti				/ 2

(The numbers on the right are hand-assembled octal, but I did put it
through the assembler to make sure I'd gotten it right. The commented
out instruction is clearer, but adds one word to the required type-in.)

Here it is in address/location form:

60	1020
62	200

1000	12706
1002	2000
1004	12701
1006	177560
1010	12711
1012	100
1014	1
1016	776
1020	116161
1022	2
1024	6
1026	2

Start with "1000G" to ODT. It should echo everything you type, using
interrupts from the console DL11 to do so.

I did try this on my machine to debug it, and fixed one minor thinko (I had
used "rts pc" instead of "rti"). After that, worked like it says on the tin.

My machine is (at the moment) basically identical config to yours: an 11/23,
a memory card (NatSemi), and a DLV11-J. (No terminator/ROM, it's in a Sigma
box which has termination built in.)

    > That PDF is the one I was looking at


    > though it looks like there are more diagnostics available for the 23+,
    > so that might not be completely equivalent to the test available for
    > the 23.

Yes, that was my sense too.

    > I'm hoping a memory test shows that I have some problems there, which
    > is potentially the easiest thing to fix.

Do you have a memory test, yet? I am planning on whipping up one of those
too, for my own use, although it will be more elaborate than that console
interrupt test.

If you can use octal dumps to load, I can produce that form pretty easily:
let me know what syntax your loader takes.

    > Someone told me a while back that the M8044 memory tends to be fail, so
    > maybe I should look for something else.

Interesting; I have a whole stack, and the first one I tried seemed not
to work.


More information about the cctech mailing list