Boot/Load file formats on the PiDP-10 and simh.

63 views
Skip to first unread message

Ric Werme

unread,
Aug 30, 2025, 10:32:26 PM (8 days ago) Aug 30
to PiDP-10
Before I get too deep in this stuff, I have my old lights program running under TOPS-10 and added a binary clock to it that displays the time in the lights.  Yay.  At CMU, I could build a standalone version in RIM10B format.  I must've gotten it on paper tape, probably not a DECtape boot block.

I want to make a standalone version for the PiDP-10 too.

I was expecting I'd arrange to do a "boot ptr" from simh, but I guess I'm not sure what the tape file needs to look like.  It may make much more sense to use the simh "load" command, but I need to dig into getting data from TOPS-10 to the Pi in a format that "load" wants.

Do we have tools for mucking with that stuff?  ITS boots from a paper tape, hills-blinky uses "d" commands.  Is the ITS file ancient magic?  Did blinky just give up on something more elegant than a lot of "d" commands? I get the sense those were created in an editor.

Is there a TOPS-10 or ITS program that is a linux "od" equivalent?  I can't remember one.  I did remember I wrote a program, DSKRD, that uses DDT as a command language and UUOs for commands.  I wrote a binary/ascii dump routine patterned after IBM 360 dumps.  That may well be how I looked at all binary files.  I mostly can run that and look at disk blocks of file data.  I forgot some details with that and a lot of DDT commands.  I do have my old "phonebook," the ream of newsprint pages with all knowledge - "pdp10 reference manual".  It used to be a cheap resource, now it's a delicate treasure.  :-)

Eric Swenson

unread,
Aug 30, 2025, 10:42:07 PM (8 days ago) Aug 30
to Ric Werme, PiDP-10
Someone else will need to provide details, but it is definitely the case that the ITS source code tree has sources for binaries that can be booted with “boot ptr”. You first assemble the source (which has a bunch of constraints and addresses) with MIDAS, then, there is a program for creating the actual file that is booted with “boot ptr”. The ITS build actually does this. If you build ITS from the sources, and pipe the output of the build to a file, you can probably do some searching for the right commands and sample sources.  If you can’t find what you need, I can look through the build scripts and point you in the right direction.

Lars will know precisely how to do this. I haven’t used pdp10-ka much and therefore don’t have much experience actually building these kinds of binaries. The simulator I use (KLH10) boots ITS from disk and not from paper tape, so that’s why I’m not very familiar with the tape boot.

On Aug 30, 2025, at 19:32, Ric Werme <r...@wermenh.com> wrote:

Before I get too deep in this stuff, I have my old lights program running under TOPS-10 and added a binary clock to it that displays the time in the lights.  Yay.  At CMU, I could build a standalone version in RIM10B format.  I must've gotten it on paper tape, probably not a DECtape boot block.
--
You received this message because you are subscribed to the Google Groups "PiDP-10" group.
To unsubscribe from this group and stop receiving emails from it, send an email to pidp-10+u...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/pidp-10/6dac1722-3179-46ea-8744-2e40dc497be6n%40googlegroups.com.

Ric Werme

unread,
Aug 31, 2025, 12:20:32 AM (8 days ago) Aug 31
to PiDP-10
While writing my post, it occurred to me the PTR had to have a 36 bit mode so that Read In booting will work, and that implies that PIP must have a binary option for using that too.   It turns out it has two or three variants on the theme, and should work without special hackery.  And it appears that's behind the ITS boot file format (six SIXBIT bytes with the 8th bit turned on on the paper tape.  One of many things I've forgotten about.

Ric Werme

unread,
Aug 31, 2025, 6:11:42 PM (7 days ago) Aug 31
to PiDP-10
It turned out to be a lot simpler than I expected.

In simh:
simh> at ptp light.rtb

In TOPS-10:
.R MACRO
*PTP:=EXEC,LIGHT
*^C

Where EXEC.MAC is a file that just sets the build exec-mode flag.

Then gaze upon "od -t o1 light.rtb", be impressed it looks sensible, copy light.rtb to my system directory, shutdown TOPS-10, and go boot light.rtb.

Lars Brinkhoff

unread,
Sep 1, 2025, 1:17:07 AM (7 days ago) Sep 1
to PiDP-10
Ric wrote:

It turned out to be a lot simpler than I expected.

*PTP:=EXEC,LIGHT

Glad you figured it out.  This is essentially what the ITS build script does too.  Before discovering the convenience of assembling directly to PTR: we used to write the output binary to a tape, and then on the host, convert the extracted tape file to the correct format for a SIMH paper tape image.  FYI, a binary paper tape has six characters to a 36-bit word.  Each character has six bits of payload and the high bit set.  The first word says how many words the following bootstrap is, and where to load it.  The bootstrap would normally be RIM10B for MACRO/TOPS-10 paper tapes, but can theoretically be anything.  ITS has its own bootstrap... you know, incompatible with the DEC format.

This reminds me.  We have an ongoing quest to cross assemble MIDAS from ITS to TOPS-10.  MIDAS claims to be able to produce a TOPS-10 REL file, which should then be possible to loaded and run under TOPS-10.  So far we haven't managed to complete this.  Would you give it a go?  I'll do the work on the ITS side.

Ric Werme

unread,
Sep 1, 2025, 9:07:18 AM (6 days ago) Sep 1
to PiDP-10
"... cross assemble MIDAS from ITS to TOPS-10."

Cool, my original plan was to embrace ITS, where my experience is measured in hours, and start by getting my lights hack running there.  I backed off to TOPS-10 to bail off that learning curve.  My fingers still know TOPS-10 TECO, so that meant some trivial editing would be almost trivial. Ultimately I want to port a PDP-11 graphics hack to ITS, so I will be getting back to it.

So yeah, I'll be doing Midas stuff.  TOPS-10 REL files aren't all that complicated IIRC, so yeah, I could play around with that.  Not right away unless there's some compelling gain to be had.

Lars Brinkhoff

unread,
Sep 2, 2025, 12:55:12 AM (6 days ago) Sep 2
to PiDP-10
Ric wrote: 
So yeah, I'll be doing Midas stuff.  TOPS-10 REL files aren't all that complicated IIRC, so yeah, I could play around with that.  Not right away unless there's some compelling gain to be had.

The gain is having MIDAS run on TOPS-10.  The very latest version, not something old from DECUS.  And from there, we could possibly get Maclisp running too.  But there's no immediate urgency.
Reply all
Reply to author
Forward
0 new messages