Early Computer Stuff

Computers in the basement at home:

Starting in about 1970, at the age of about 18 I scrounged and rebuilt quite a bit of CDC surplus equipment, most of which was usually a prototype or specially modified and could not be sold… so CDC removed any useful parts and scrapped the rest.

A surplus 026 keypunch I rebuilt, note the special extra switch to the left of the keyboard. This was a communications interface that was used by Air Force to transfer card decks  (probably program and simulated radar data about attacking aircraft) between SAGE air defense direction centers (It came from the SAGE center in Duluth)… 😉

My ASR33 TTY, basic and fortran fun! It had a broken “bail” thingy. I had to tear down all the little whirly flippey insides in order to replace this little 98 cent part, but then it worked well.

Here is the RTL & delay line memory based CDC 217 RJE terminal I put together and debugged from scrap circuit cards. I learned a lot just reading and puzzling out the CDC engineering manuals and schematics. When I began college at the UofM I lent it to the University Computer Center to help with their PDP-11 RJE frontend project for their CDC 6600.  (I did quite a bit of “dumpster diving” behind CDC facilities in Minneapolis in those days with a friend, and visiting surplus dealers in Minneapolis such as Acme Electronics and ABC Electronics…. oh, for the halcyon days of youth! )

Fixing a surplus CDC 217 display controller in my basement, 1970-71

Thus I got to play with high speed I/O channel hardware and became familiar with the general design and programming of the CDC 6600… still my all time favorite computer and the basis I think of most modern RISC processors such as the ARM (Apple M1 is an ARM).  This was still the days of punched cards, and the CDC 6600 had a great lunar lander game program for the console (No graphic CRT terminals in those days, so the 6000 series console was very advanced with its fast stroke/vector graphics being driven by the full power of a … supercomputer! )

UofM CDC 6400 console about 1971

Building a home made computer:

After initially trying to build a computer using early CDC “1604/3000” modules like this, built with discreet transistors,

 

 

 

 

 

 

 

 

 

MSI chip

I discovered the wonders of Medium Scale Integration (MSI) TTL logic, and built my first computer. I felt the only microprocessor that existed, the Intel 4004, was too slow, had a brain damaged instruction set, and used weird logic levels too. I wanted a computer something like Seymour Cray’s 160A, that had an elegant instruction set and sufficient parallelism to be fast. (wide data paths and a parallel arithmetic section) I started from a surplus 12 bit ROM driven BISYNC communications controller that was made from Fairchild medium scale integrated circuits (equivalent to high end 7400 series logic) called a VLCBC, originally made by Control Data Corp. famed Roseville operations (now a Barns & Noble). To it’s 12 bit data paths I added 2K words of 256bit static RAM for program storage and an arithmetic section, and I made a nifty looking console with some seven segment numerical LEDs, with store, step and run buttons. I stuffed it all in a cool looking surplus CDC peripheral controller cabinet that I paid $20 for. I also built specialized controllers and connected them to the processor with differential line drivers. In one case, I built a controller for a gutted surplus line printer I had scrounged, where the computer addressed the column hammers directly, and fired them at the right instant on a rotation count from the drum! It worked great, and I could keep the printer going at is 300 lines per minute. I am not sure if I ever got my relative jump instruction working, but hey, if the 4004 didn’t need one, why should I :-).

I bet I typed “1201” on the console for this picture, because that was the error code that almost caused Apollo 11 to abort during landing :-). I never did get the drum storage unit in the lower right corner going, but I did design the controller for it… Since all this surplus stuff was broken one way or another when I got it (usually a bad IC, power transistor, or damaged PCB feed-throughs someplace that caused CDC to scrap an older or special part or assembly), I don’t think I would have had the skill or tools to get the drum going anyway. How about those heafty series pass power supplies below my CPU rack! 2N3055 heaven! 🙂 Switcher, what’s a switcher? 😉

My first 8080 $256

When the Intel 8008 came out, I started to rebuild it to use that CPU, then jumped to the 8080 a few months later when I paid $256 for my first 8080 chip from the MITS Altar folks. But the 8080 is 16 bit hex machine, and my home made computer was 12 bit octal, so I could not use the nice console I had built 🙁 That fall I attended Wescon in SF and eagerly purchased a 6502 for $25 at the MOS Tec suite in the St. Frances Hotel. I think I was there at the same time Steve Jobs was buying his first 6502….! We all thought it had a much better instruction set compared to the 8080 with its dopey HL registers etc., I suspect the MC6800 & MCS6502 were probably inspired by Cray’s elegant parallel 160 design that I admired so much.

One interesting result from all this scrounging of CDC surplus as a kid, of literally climbing on mountains of new circuit cards from unsold mainframes and hearing them crunch under ones boot, was an early understanding that it is what you do with a computer, not the having of the physical thing, that matters. Over the years I have tired to pass this thought on to many pompous officials who were so proudly taking credit for some new multimillion dollar supercomputer… that I knew would be in the scrap heap only a few years later…. but they never seem to learn…

The console I made, so I could enter octal machine language by hand…

CDC rack… with my home made computer stuffed into it upper left… and an early Bell modem in the upper right (I had to fix that too).

A line printer I scrounged…. 64 chars upper case only beryllium-copper drum… When I got it it from the scrap dealer it was missing motors, panels, and all the electronics. I had to totally rewire it from scratch to use hammer driver boards from a different model printer, and find the missing motors and belts… but I got it to work well. You can also see my Calcomp plotter on the shelf in the background, made that work and built an interface so I could drive it remotely from the UofM CDC 6600 over a dial-up modem, made lots of nice plots with it.

In retrospect I should have copied the CDC 160 instruction set, (i.e. implement a 160 in modern TTL) so I could use 160 software such as its early Fortran compiler. As it was, I had to write everything myself in machine language, and so never did much useful work with it.