[COFF] What Happened to Interdata?

scj at yaccman.com scj at yaccman.com
Sat Aug 5 11:17:06 AEST 2023


Sorry for the year's delay in responding...   I wrote the compiler for
the Interdata, and Dennis and I did much of the debugging.  The
Interdata had much easier addressing for storage: the IBM machine made
you load a register, and then you had a limited offset from that
register that you could use.  I think IBM was 10 bits, maybe 12.  But
all of it way too small to run megabyte-sized programs.  The Interdata
allowed a larger memory offset and pretty well eliminated the offsets as
a problem.  I seem to recall some muttering from Dennis and Ken about
the I/O structure, which was apparently somewhat strange but much less
weird than the IBM. 

Also, IBM and Interdata were big-endian, and the PDP was little-endian. 
This gave Dennis and Ken some problems since it was easy to get the
wrong endian, which blew gaskets when executed or copied into the file
system.  Eventually, we got the machine running, and it was quite nice:
true 32-bit computing, it was reasonably fast, and once we got the
low-level quirks out (including a famous run-in with the "you are not
expected to understand this" code in the kernel, which, it turned out,
was a prophecy that came true.   On the whole, the project was so
successful that we set up a high-level meeting with Interdata to demo
and discuss cooperation.  And then "the bug" hit.  The machine would be
running fine, and then Blam! it has lept into low memory and aborted
with no hint as to what or where the fault was. 

We finally tracked down the problem.  The Interdata was a microcode
machine.  And older Unix system calls would return -1 if they failed. 
In V7, we fixed this to return 0, but there was still a lot of user code
that used the old convention.  When the Interdata saw a request to load
-1 it first noticed that the integer load was not on an address
divisible by 4, and jumped to a location in the microcode and executed a
couple of microinstructions.  But then it also noticed that the address
was out of range and entered the microcode again, overwriting the
original address that caused the problem and freezing the machine with
no indication of where the problem was.  It took us only a day or two to
see what the problem was, and it was hardware, and they would need to
fix it.  We had our meeting with Interdata, gave a pretty good sales
pitch on Unix, and then said that the bug we had found was fatal and
needed to be fixed or the deal was off.  The bottom line, they didn't
want to fix the bug in the hardware.  They did come out with a Unix port
several years later, but I was out of the loop for that one, and the Vax
(with the UCB paging code) had become the machine of choice... 

---

On 2023-07-25 16:23, segaloco via COFF wrote:

> So I've been studying the Interdata 32-bit machines a bit more closely lately and I'm wondering if someone who was there at the time has the scoop on what happened to them. The Wikipedia article gives some good info on their history but not really anything about, say, failed follow-ons that tanked their market, significant reasons for avoidance, or anything like that. I also find myself wondering why Bell didn't do anything with the Interdata work after springboarding further portability efforts while several other little streams, even those unreleased like the S/370 and 8086 ports seemed to stick around internally for longer. Were Interdata machines problematic in some sort of way, or was it merely fate, with more popular minis from DEC simply spacing them out of the market? Part of my interest too comes from what influence the legacy of Interdata may have had on Perkin-Elmer, as I've worked with Perkin-Elmer analytical equipment several times in the chemistry-side of my career
and am curious if I was ever operating some vague descendent of Interdata designs in the embedded controllers in say one of my mass specs back when. 
> 
> - Matt G. 
> 
> P.S. Looking for more general history hence COFF, but towards a more UNIXy end, if there's any sort of missing scoop on the life and times of the Bell Interdata 8/32 port, for instance, whether it ever saw literally any production use in the System or was only ever on the machines being used for the portability work, I'm sure that could benefit from a CC to TUHS if that history winds up in this thread.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.tuhs.org/pipermail/coff/attachments/20230804/13793730/attachment-0001.htm>


More information about the COFF mailing list