On Sun, Jan 29, 2017 at 8:34 PM, Nick Downing <downing.nick(a)gmail.com>
wrote:
But one or other of these backends has to be ported to
Z180 (~= Z80 ~=
8080) and I'd be thrilled to have a starting point.
In 1978/79, there was a Z80 Z Compiler from either Teletype or Western
Electric, that IIRC was based on the Ritchie compiler. Somebody that
worked in the IH or Columbus labs might remember such as Phil Karn might be
a good source.
That said, is you want a goos starting point the best C compiler for the
8080 was the Leor Zolman's "Brain Damaged Software" C -- aka BDS C.
Which
he has put in the public Domain:
http://www.bdsoft.com/resources/bdsc.html
There is also the classic from Ron Cain, the "Small C Compiler" [
http://www.svipx.com/pcc/PCCminipages/zc9b6ec9e.html] which was updated and
expanded by Jim Hendrix is also in the public domain:
http://www.deturbulator.org/jim.asp
I will also eventually pick up the 68K compiler too although I believe
some pretty good PCC based 68K C compilers will be extant due to late
versions of BSDs having been developed on 68K
Close, but you have some of the history a little bent. I believe that
the first C compiler for the 68000 was started at motorola by the 68K
developers themselves (a little known fact -- what would become the 68K was
developed on an PDP-11/7- running UNIX). As I understand from Les Crudele
(who lead the 68K team), the compiler was based on the Ritchie compiler,
but I do not think it as every taken very far. I do not believe a C tool
chain was ever made available to their customers/UNIX community. We
should ask some of the Moto guys about that.
So, before the chip was released and became the 68K (when there were 10
beta sites and it was an eXperiment -- i.e. an "X-Series" chip), we had a
couple them @ Tek Labs. Which were the basis for the Magnolia system that
Roger Bates created. I hacked up the Ritchie compiler shortly there after
(I was not aware of the Motorola work at the time), and created something
that worked sans FP. The assembler & linker were written by Paul
Blattner. My compiler used a 16 bit int.
Sometime after the Tek work, Steve Ward's guys writing Trix hacked together
a compiler, assembler and the like. If memory serves me, tjt wrote the
assembler and hacked the linker and Jack Test did much of the compiler and
again IIRC that was based on PCC. But, they did support FP and an "int"
was 32 bits.
I believe that this was the "seed" compiler for most of the UNIX
workstations. It was scattered across the land as it were. I switch
over to it at some point, although I don't remember if I switched it to a
16-bit int. I know we talked about it and I've forgotten how that all
played out.
(I could be wrong about the BSDs and 68K but I am sure
many unices ran on
68010+ and even a few on 68000 using the famous second CPU chip to handle
faults).
Right the Masscomp and Apollo systems were the two most successful to use
the Forest Basket "Fixer/Executor" model. The original Masscomp C
Compiler was based on the MIT Compiler, as was Suns. Apollo (being
Pr1mates, used Ratfor & Pascal as their systems languages at beginning) and
did not cut C in until later. All three firms would start compiler
teams. The Masscomp compiler team was direct decedent of the VMS Compiler
team with many of the same players. Those stories are better told over
beers. ;-)
BTW: for the first 2-3 years, the reason why Masscomp was faster than Sun,
and each were using the 10Mhz 68000 chips, was the Masscomp had a real
optimizing compiler, in the same key as the DEC and DG compilers (al biet
written in C from the ground up). The team was lead by Peter Darnell and
had Marty Jack and a number of other infamous backend folks. Masscomp was
getting 5-25% better performance than the MIT/PCC based one, so eventually
Sun & Apollo (also have a bunch of ex-pat DECies, made similar investments).