For some reasons that I'll get into at some other time, putting a
timeout into BOOT didn't work to get me a crash dump.
So I looked at things the other way around to see what I could do to get
dvdte.c to fool the PDP-10 code that the master front end had rebooted,
which I have been meaning to do for some ten years now. After some
trial and error, I finally got something that worked, viz:
/* Ten forcing a reload? */
if (op10m_tlnn(w, (DTE_CMT_L11))) {
char *fet = NULL; /* Front end type not known, yet */
if (dt->dt_ismaster) /* Is this the master? */
fet = "master"; /* Yes, remark on that */
else fet = "restricted"; /* Oh dear... Restricted DTE
performance is unknown */
fprintf(dt->dt_dv.dv_dbf, /* Finally blat about it */
"[DTE: PDP-10 forcing a reload on FE%d (%s)]\r\n",
dt->dt_dten,fet); /* N.B., we have *NO* code for MCB
or DN60 */
dt->dt_reld11 = -1; /* Set the reload-11 button */
dt->dt_rcv_11qc = 0; /* Reset queue count; we've
rebooted! */
dt->dt_secptcl = TRUE; /* Force secondary protocol */
return; /* Return, caller will invoke
dte_dosecp() */
}
This will let an unaltered BOOT get you a crash dump, viz:
BOOT V11.0(315)
BOOT>dump.exe/d
[BOOT: Dumping] [OK]
Number of pages written: 17734
Number of I/O requests: 203
BOOT>meamon
[BOOT: Loading] [OK]
After Tops-20 gets itself going,
DDMP: Started
Copying system dump
from: TOMMYT:<SYSTEM>DUMP.EXE.1
to: TOMMYT:<SYSTEM>DUMP-21745-ILLUUO.CPY.1
[Copied dump to TOMMYT:<SYSTEM>DUMP-21745-ILLUUO.CPY.1]
I haven't seen messages like this since about 1985, so it was kind of
eerie watching all this low level code just...working. I have not
tested the dvdte.c modification to see if it will prevent a DTEKPA
BUGINF from hanging everything, but I believe it should.
Maybe I'll check that after I fix what caused the crash in the first
place. So I'm looking at the ILLUUO crash dump and it seems that all my
fine code got smashed by the symbol table... Phooey.