[TUHS] PC/IP

Tom Teixeira tjteixeira at earthlink.net
Sat May 3 00:56:58 AEST 2025


On 5/1/25 12:20 AM, Al Kossow wrote:
> On 4/30/25 8:38 PM, Jonathan Gray wrote:
>> Chris was part of the Nu project.
>>
>> "Was a principal developer of the NuMachine"
>>
>> "developed a family of portable C compilers for the (then) newly
>> available microprocessors. These compilers were widely distributed as
>> the first C implementations for the x86 and 68K processors."
>>
>> https://people.csail.mit.edu/cjt/resume.html
>
> I found most of the yearly LCS reports have been digitized to DTIC
> which answered a bunch of my questions about who was doing what at
> that time
>
> I've archived them at http://bitsavers.org/pdf/mit/lcs/progress_reports
>
>
>
Some background, though the MIT LCS progress reports should cover much 
of this. I won't attempt to put any dates.

Chris Terman was one of the graduate students in the RTS group. Since 
VT-52 terminals were relatively scarce, he designed and built his own 
with a larger screen - something like 40 lines by maybe 120 or 132 
characters, called the "Termanal". I don't remember if it used an 8080 
to handle the control sequences in the data stream or something else.

He then got interested in designing a terminal that could display bit 
map graphics, to be comparable to the graphics used on the Lisp Machines 
just being built by the MIT-AI lab. I had stumbled across one of the LCS 
progress reports that credits Professor Steve Ward and one of the 
undergraduate staff, Rae McClellan in assisting the design of this bit 
graph which was named the "Nu Terminal" (I don't think it was the "Nu 
Termanal"). This used an 8086. A couple of these were built. One of the 
undergraduate students, Jon Sieber, had been a member of an Explorer 
Post in Murray Hill where Dennis Ritchie was the advisor. Jon would 
regularly bring UNIX tapes from the Research Lab and included things 
like early versions of the Portable C Compiler and the Circuit Design 
Aids. Chris used the Circuit Design Aids to design wire-wrap boards for 
the Nu Terminal and the RTS lab got a semi-automatic wire wrap machine. 
Some students and staff took turns doing the actual wire wrapping. My 
contribution was writing some simple software that simulated a paper 
tape reader for the wire wrap machine.

An undergraduate student, Mike Patrick, did his bachelor's thesis 
writing a table driven assembler and constructed tables for the 8086 and 
I think an 8080. Later there were drivers for the Zylog Z8000, the 
National Semiconductor NS16000 and the Motorola 68000. I contributed a 
small bit of code for doing optimal choice of short vs long branches (to 
branch to an address more than +/- 127 bytes, you had to branch around a 
longer jump instruction).

Chris Terman did the work of modifying the Portable C Compiler to 
generate code for the 8086, the Z8000, NS16000 and MC68000. I think we 
may have built one machine with the Z8000, but quickly settled on using 
the MC68000, primarily because of the 32-bit support (one progress 
report says that Zenith was supposed to build multiple Z8000 based 
machines, but I don't remember those. The NS16000 had better memory 
management, but I don't think we ever actually received any CPU chips.

Anyway, these compilers were what was distributed, and the MC68000 
compiler in particular was used by almost all the companies that came 
out the MC68000-based Unix machines. Apollo was a notable exception, but 
Apollo wrote their own operating system from scratch rather than Unix. 
Side note: Bill Poduska came to visit Steve Ward and before the visit 
Steve was all excited, but was disappointed that Bill was not going to 
use Unix.

Before the RTS group used Unix, they had written a small timesharing 
system for the PDP-11/45 that was used in the 6.031 introductory 
computer science course taught by Mike Dertouzos. Chris was involved in 
maintaining that, though I think Steve Ward was probably the main 
implementor. Chris had also spent too many hours changing address 
jumpers on Unibus and other controllers as well as tweaking Unix mkconf 
files, and thought that while the 4BSD autoconfiguration was an 
improvement, there should be a better way. Chris and Steve designed the 
Nu bus, and the Nu Bus was used in the MC68000 boards. Eventually it was 
picked up by Apple.

Chris was one of many students who took the Mead/Conway LSI design 
course and ended up abandoning his research on portable compilers in 
favor of simulating LSI designs. He was also a co-founder of Symbolics 
and designed the controller for their laser printer before returning to 
MIT as a Lecturer and sponsored research staff.

There were also proposed follow-on software projects related to the Nu 
terminal. One was Trix. Steve Ward said he didn't know what an "ics" 
was, but Multics clearly had too many, and Unix had too few, hence Trix. 
Jack Test was hired to do a lot of the development. Wikipedia has a 
reasonable summary of Trix, as far as I remember, but I had left RTS to 
join Masscomp in late 1981/early 1982, and I know Jack Test was an early 
employee of Alliant Computer so he left Trix probably in 1982.




More information about the TUHS mailing list