--
You received this message because you are subscribed to the Google Groups "[PiDP-1]" group.
To unsubscribe from this group and stop receiving emails from it, send an email to pidp-1+un...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/pidp-1/b9af0745-4244-4bf3-bc0f-73a5fedc17e5n%40googlegroups.com.
|
Subject:
[COFF] Re: ancient macros, machine code translation,as
mental architecture models |
|
From:
Aron Insinga <a...@insinga.com> |
|
Date:
7/14/24, 21:44 |
|
To:
co...@tuhs.org |
According to Aron Insinga <a...@insinga.com>:On 7/13/24 19:46, John Levine wrote:I looked at the manual and I think he's misreading it. The "words" in question are the tokens in the macro definition. ...Possibly, but they use 'syllables' for tokens (symbols or integers), and they say here that they advance the location counter after each word copied. If they were copying characters into the input stream, they would not be incrementing the location counter ('.') after each word transferred.If you really want to know what it did, here's the internals manual. The description of the macro facility starts on page 19 and it is quite clear that they're storing a tokenized version of the macros, so they're not copying characters, but they're not just copying assembled instructions either. https://bitsavers.org/pdf/dec/pdp1/F36P_PDP1_Macro_Internals.pdf
http://www.bitsavers.org/bits/DEC/pdp1/papertapeImages/20040106/macro_6-63/_text/part2.txtThey are not storing tokens. In fact, the list of 'codes' for items stored as the macro body on p 20 is:
They do not look at the opcode as I suggested was possible, they have a more general solution that works for a word containing either code or data.
On 7/15/24 15:39, John Levine wrote:
It appears that Douglas McIlroy <douglas...@dartmouth.edu> said:
In 1959, ...As the PDP-1 Macro imeplementation manual said about the macro feature:
We never considered anything but recursive expansion, where macro
definitions can contain macro calls; thus the TX-0 model comes as quite a
surprise. We kept a modest stack of the state of each active macro
expansion. We certainly did not foresee that within a few years some
applications would need a 70-level stack!
It is the weakest
in that it is quite inflexible and does not incorporate any of the more significant improvements
in assembler technology that have occurred since the logic was first written in 1957.
The PDP-1 was not a very big machine, only 4K words and the only
standard I/O device was paper tape, so no overlays or multiple passes.
I can imagine that while they knew how to write a better macro
processor, they didn't want to use up the memory it would have needed.
Bitsavers has a bunch of memos about the TX-0.
Memo 39 describes TX-0 assembler as of 1962, which had real macros
that could insert arbitrary strings, as they show in an example on
pages 10-11.
https://bitsavers.org/pdf/mit/tx-0/memos/M-5001-39_MIDAS_Nov62.pdf
There are earlier memos about MACRO in 1959 and 1961 which suggest a weaker
macro facility but don't have details.
R's,
John
At MIT they wrote two assemblers on the TX-0, and retargeted/ported both of them to the PDP-1. (The machines were in adjacent rooms at the time. Their architectures were very similar.)
* MACRO (macro expansion by limited partly-assembed memory words). DEC adopted MACRO, but its later MACRO assemblers do not seem to be at all based on that one.
* Midas (generalized macro expansion by inserting a character sequence). MIT chose Midas for future work, and they rewrote it for the PDP-6, so that's what you find on ITS.
One of these retargets/ports was a challenge by Jack Dennis to a group of 4 or 5 students (the original hackers from the Tech Model Railroad Club) to do it over a weekend.
I agree, there is a lot of great stuff in these memos, from both MIT and from DEC, and in the oral histories done by the Computer History Museum and/or the Smithsonian.
Bitsavers also has the hardware details, although they are in a very old notation, more abbreviated circuit schematics than logic diagrams..
--
You received this message because you are subscribed to the Google Groups "[PiDP-1]" group.
To unsubscribe from this group and stop receiving emails from it, send an email to pidp-1+un...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/pidp-1/0e9b8e46-79e3-45d7-95a9-ec07d145a8c1%40insinga.com.


https://www.masswerk.at/nowgobang/2021/pdp1-spotting#updateBTW, according to Steve Russell, these early PDP-1s weren’t exactly white. In his memory
the “Prototype PDP-1” cabinets that were in the CHM Visible Storage were a very light cream color with a dark speckle.
(Steve Russell, PDP-1 Team mailing list, March 5, 2021