<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
On 7/13/24 13:36, Paul Winalski wrote:<br>
<blockquote type="cite"
cite="mid:CABH=_VS_D69G3=6YiCS2eyrkcCXYQ4nJ=OZ3zhUh-vKX3q6prQ@mail.gmail.com">
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<div dir="ltr">Neither the VAX assembler nor the VAX MACRO
compiler treats macros as high-level entities. I know of no
assembler that would do such a thing.
<div class="gmail_quote">
<div><br>
</div>
<div>-Paul W.<br>
</div>
</div>
</div>
</blockquote>
<br>
<br>
This morning I would have agreed with you but I think I found a
counter-example. At MIT, there were 2 assemblers written for the
TX-0 and later ported and retargeted to the PDP-1: MACRO (which DEC
adopted) and then Midas (which MIT stayed with for the PDP-6 and
PDP-10).<br>
<br>
The MIDAS assembler manual says that it copies characters from the
macro body into the source program (as we would expect to happen
today for a macro, as opposed to an inline procedure):<br>
<a
href="http://www.bitsavers.org/pdf/mit/rle_pdp1/memos/PDP-1_MIDAS.pdf"
class="moz-txt-link-freetext">http://www.bitsavers.org/pdf/mit/rle_pdp1/memos/PDP-1_MIDAS.pdf</a><br>
p 10 in the document says:<br>
<blockquote>When a macro instruction is called, MIDAS reads out the
characters which
form the macro-instruction definition, substitutes the characters
of
the arguments for the dummy arguments, and inserts the resulting
characters into the source program as if typed there originally.<br>
</blockquote>
However, the DEC PDP-1 MACRO assembler manual says that a macro call
is expanded by copying the *sequence of 'storage words' and
advancing the current location (.) for each word copied* (although
it does replace labels with memory addresses):<br>
<a href="https://bitsavers.org/pdf/dec/pdp1/PDP-1_Macro.pdf"
class="moz-txt-link-freetext">https://bitsavers.org/pdf/dec/pdp1/PDP-1_Macro.pdf</a><br>
p 19 in the document says:<br>
<blockquote><img src="cid:part1.r4315SHm.lDsCG8eL@insinga.com"
alt=""><br>
</blockquote>
I am quite surprised.<br>
<br>
[For those who may not know, the TX-0 was built at MIT Lincoln Lab
in 1956 and, when it was no longer useful for their research, it was
moved onto the campus where the model railroad club found it and
started hacking. DEC was spun off from Lincoln Lab, with the result
that the PDP-1 was very similar to the TX-0, and an early PDP-1 was
installed in the room on campus next to the TX-0. But that was all
before my time.]<br>
<br>
- Aron<br>
<br>
</body>
</html>