So did Chris compiler go back to the Nu project? And thank you to Al for
the Trix sources. As I said. It was national 16032 not z8000.
FYI I had the whitesmith compiler at one point also. It generated code for
a funky assembler called “anat” for “a natural assembler” which PJ conjured
up for writing the compiler. It was was sort of a mix between an IL and
8080 assembler if my memory is correct. I’d love to see that
distribution both the doc and the compiler again to May with on SIMH. I
suspect I might appreciate it more than I did in those days. I hated it
then but as I learned more about compilers and architectures PJ might have
been on to something.
Sent from a handheld expect more typos than usual
On Wed, Apr 30, 2025 at 10:07 AM Jonathan Gray <jsg(a)jsg.id.au> wrote:
On Wed, Apr 30, 2025 at 09:11:35AM -0400, Noel Chiappa
wrote:
From:
Clem Cole
> Yes, that was one of the RTS compilers for the NU machine. John
Romkey
may have
done it, as he was the primary person behind PCIP
I decided to poke around in the 'MIT-CSR' dump, since that was the
machine
the PC/IP project started on, to see what I could
find. Hoo boy! What an
adventure!
In the PC/IP area, I found a 'c86' directory - but it was almost empty.
It
did have a shell file, 'grab', which
contained:
tftp -g $1 xx "PS:<Wayne>$1"
and a 'graball' file which called 'grab' for the list of compiler
source
files. ('xx' was MIT-XX, the TOPS-20 main time-sharing machint of LCS.)
So I did a Web search for Wayne Gramlich (with whom I hadn't
communicated in
many decades), and he popped right up. (Amazing
thing, this Internet
thingy.
Who'd have ever thought, back in the day,
that it would turn into what it
did? Well, probably John Brunner, whom I (sadly) never met, who was there
before any of us.)
I took a chance, and called his number, and he was there, and we had a
long
chat. He absolutely didn't do it, although
he wrote the loader the
project
used ('l68', the source for which I did
find.) He's virtually certain
Romkey
didn't (which would have been my guess too;
Romkey was like a sophmore
when
the project started). His best (_very_ faded)
memory was that they
started off
with a commercial compiler. (But see below.)
That leaves several mysteries. 1) Why would a commercial compiler not
come
with a linker? 2) Why did people who wanted to
work with the PC/IP source
need a Bell license?
I did some more poking, and the list of files for the 86 compiler, from
'graball':
trees.c optim.c pftn.c code.c local.c scan.c xdefs.c
table.c reader.c local2.c order.c match.c allo.c comm1.c
manifest mfile1 common macdefs mfile2 mac2defs
matched the file names from 'pcc', as given in "A Tour Through the
Portable C
Compiler":
https://maibriz.de/unix/ultrix/_root/porttour.pdf
(in section "The Source Files"). So whether the 86 compiler was done at
MIT
(by someone in RTS), or at a company, it was
definitely a 'pcc'
descendant.
(Possibly adding to the confusion, we had some other C compilers for
various
ISA's in that project [building networking
software for various
micro-computers], including an 8080 C compiler from Whitesmiths, Ltd,
which I
have also found. It's possible that
Wayne's vague memory of a commercial
compiler is of that one?)
I really should reach out to Romkey and Bridgham, to see what they
remember.
Later today.
Whether the main motivation for keeping the compiler source on XX was i)
because disk space was short on CSR (we had only a hand-me-down pair of
CalComp Model 215 drives - capacity 58 Mbytes per drive!); ii) to prevent
version skew; or iii) because it was a commercial compiler, and we had to
protect the source (e.g. we didn't have the source to the 8080 compiler,
only
the object modules), I have no idea.
> Anyway the MIT RTS folks made hardware and PCC back ends for the
68K,
> Z8000 and 8086. I believe that each had
separate assemblers, tjt
who
> sometimes reads this list might know
more, as he wrote the 68K
assembler.
There is an 'a86' directory on CSR, but it too is empty, except for a
'grab'
command file. That contains only:
tftp -g $1 xx "PS:<novick>$1"
I have no memory of who 'novick' might have been. A Web search for
'novick
mit lcs' didn' turn anything up. (I
wonder if it might have been Carol
Novitsky; she was in our group at LCS, and I have a vague memory of her
being
associated with the networking software for
micro-computers project.)
Anyway, it probably doesn't matter; the c86 'grab' referred to Wayne,
but he
didn't write c86; 'novick' might
not have written a86.
Something else to ask Romkey and Bridgham about.
Noel
"a version of the portable C Compiler that was modified by Chris Terman
to produce code for an 8086 microprocessor was ported from the RTS VAX/780
to the CSR PDP-11/45."
https://people.csail.mit.edu/saltzer/Multics/MHP-Saltzer-060508/bookcases/R…
"If you think that you need the source code, you should realize that a
prerequisite to compiling the PC/IP programs is that you must have
imported Chris Terman's 8086 version of the UNIX Portable C compiler and
associated loader and assember systems. That importation in turn requires
a UNIX system, a current UNIX license, and negotiation with Chris Terman."
https://web.mit.edu/saltzer/www/publications/pcmemo.pdf