I (DaveB) had the pleasure of spending an entire day with David and his 1620 in August 1998. It was an awesome experience to again run programs on a computer I haven't used in 25 years. David has done an incredible job of resurrecting and then keeping the machine running for the past 20 years.
I enjoy firing up a 1500-pound antique computer on weekends and running programs
on it (anything but Windows)! This photo shows me and my five
Kilo-Instructions-Per-Second (KIPS) blinking-light festooned IBM 1620 mainframe
-- which does double duty as a space heater in my basement in Portland, Oregon.
This fully operational piece of computer history was built in 1960. As the ninety-eighth 1620 that IBM built, it serves as a milestone marking an era of computer history thirty-five years ago when computers operated at speeds of five thousand instructions per second -- compared to today's PCs running at ten to fifty million instructions per second.
IBM's model 1620 was a relatively inexpensive small mainframe intended for scientific (as opposed to business)use. It was introduced in 1960, costing "only" $85,000. A relatively affordable machine for its time, it was popular with schools and small companies. Rent was cheap, and richer organizations could afford to buy one outright. Pettijohn Engineering, a local civil engineering firm, originally purchased my 1620. When the firm replaced it with an IBM 1130, Vernonia High School, then a rural high school, acquired it. Finally, it wound up at the University of Portland.
In 1980, my final year at U of P, I discovered the huge, neat-looking old computer in a dusty storeroom, found out it was to be scrapped, and talked the Dean into donating it to me instead. A fellow student helped me to break it down into pieces before putting it all in a borrowed moving van to get it home.
We removed the cover panels and the tabletop, disconnected dozens of cables and hundreds of individual wires (taking careful notes), unbolted the eight power supplies (compact, but heavy), and lifted the two large wire-wrapped card gates off their hinges. A four-hundred pound angle-iron skeleton remained to be loaded whole. I stopped at a service station to use a compressed-air hose to dispel an enormous cloud of dust which spewed into the air.
At home, my friend helped me carry the pieces into the basement. The basement stairs creaked alarmingly under the load while my father paced nervously about. I wired up a 220v extension cord to route power from the dryer's outlet, causing maternal friction as well.
It is not a good idea to walk up to a piece of long-disused electronics, plug it in and turn on the power switch. It is possible to bring such equipment back to life -- if you take care. In between computer revivals, I also collect vintage radios and test equipment. Every piece I have works -- but about half would have gone up in flames if I hadn't restored them first. Most tube-based equipment will, at a minimum, have bad electrolytic filter capacitors -- worn out partly from heat, partly from high voltage.
The 1620's low internal voltage (mostly 12v) and relatively cool temperature has left its "caps" in good condition -- even after 38 years! Adding to the 1620's resilience are its rugged power supplies, which are fused, circuit-breakered, crowbared, thermally protected and interlocked -- so if anything overloads, the main power shuts down. I've never had a single shutdown.
My machine came with schematics, the CE Reference Manual, and a homemade SMS
card test jig, all of which were essential for the restoration. Before I turned
on the 1620, I tested every one of the approximately 1000 SMS (Standard Module
System) cards, even measuring rise time and propagation delay. This is how I
found the dozen bad transistors that I replaced. Here is one of the SMS cards
that I fixed.
I bench-tested the power supplies; they were fine. Since I couldn't find replacement air filters (I didn't look very hard), I simply refilled the existing cardboard frames with fresh material from an ordinary furnace filter. Then I put it all back together...
The Big Moment
I plugged it in, and -- nothing happened. Which is what I expected, since I had the main circuit breaker open. I closed it. Bang-Hummmmm! I jumped! But it turns out that the noise is normal. A large transformer was energized, and the magnetic field around it was so strong that a nearby cover panel jumped against it. The red THERMAL light was on. Also normal. I flipped the power switch without pressing RESET to kill the red light. Whirrrrr! The fans came on -- but nothing else. Also normal, but some of the fans sounded pretty rough. I turned everything off and examined them.
Half of the 1620's thirteen cooling fans were dead -- mostly from worn-out bearings. I replaced them, got brave again, pressed RESET (Click! and the red light went out), and flipped the switch. Bang-Whirrr-Clickclickclickclick... White lights on the panel! The bang was other big relays closing. The clicking came from a spinning cam that opens and closes the typewriter sequencing interrupters. In my excitement, I forgot an important fact and pressed START. Nothing happened. Oh, yes, the system is prevented from running until the core memory is heated to its 104 degrees Fahrenheit operating temperature. While I waited, I played with the typewriter.
The only enabled keys were Tab and Return. Normal. However, the Tab worked so
badly that I realized the typewriter was gummed up. Return worked fine -- in
fact, the extra-long carriage butted my hip so hard that I almost fell. I shut
everything off and spent the next few hours cleaning the typewriter. Yuck, what
a mess! Then I powered back up and waited ten minutes for the green "POWER
READY" light. When it clicked on, I forgot another important fact and pounced
on START. The RUN light went on! But nothing else happened. Oh, yes, you have
to have a program! (Remember, I was excited).
I pressed INSERT. K-ChackTickTickTickTick... as the typewriter shifted into numeric mode and relays clicked ten times a second in time with the interrupters. Then I entered my first program: 260000200003
I pressed RELEASE (K-Chack! and the ticking stopped), took a deep breath, and
pressed START. The panel came alive as the 1620 cycled through all of memory
writing zeros. I could hardly believe it. It was running! I pressed INSTANT
STOP and RESET, and flipped the second power switch, on the
washing-machine-sized paper tape reader. Grrunnn! as the big motor spun up. I
was surprised the lights didn't dim. I clumsily threaded the basic diagnostic
tape, and entered my second program: 36 00024 00300 49 00828. START, and the
yellowed tape started coursing over the read head... and stopped. Oh-oh,
CHECK-STOP red light -- which sent me into another hour of calibrating the
The next performance worked better: the tape kept moving right to the end, and the typewriter came to life. After a few garbled blotches on the paper, we CHECK-STOP'ped again, and I spent another hour adjusting the typewriter. I had only cleaned it before. Third try was the charm, and I was treated to a rhythmic clatter as it printed a greeting. I set the console switches, pressed START again and settled in to watch the hypnotic light show on the panel as my own piece of ancient IBM iron ran its diagnostic -- the start of a long, happy friendship.
Over the years, another half-dozen transistors have failed. (One failed just before this article was written, in a memory sense amplifier, causing "dropped" bits.) Each time, armed with clip leads and my 1953 Tektronix 535 oscilloscope, I find the trouble and fix it. I continue to write and upgrade small programs to feed the machine.
My biggest worry these days is the solenoid-activated typewriter that serves as the 1620's keyboard and printer. Though it is fragile and irreplaceable, I run it anyway. I think that museum pieces are much more interesting when they are doing what they were built for.
IBM 1620 Computer Applications
My 1620 came with a bunch of application programs -- some written by IBM, some contributed by members of the 1620 Users Group, and others written by the original owners of the machine. There are many more that I don't have -- my catalog of programs lists hundreds of them. The ones I have are mostly for math and engineering -- which is understandable since the original owner was a civil engineering firm.
Here's a partial list of the programs I can run on my 1620:
I also received several assemblers and compilers to help write new applications. Among them is a Fortran compiler of such an early vintage that it does not even support the FORMAT statement! As a long-term project, I want to write an interpreter for the FORTH language. To do so, I am looking for an excellent book called Threaded Interpretive Languages. Does anybody have a copy I could borrow? Or any other 1620 software? (If so, please email me!) I also want to write a music program, following a tradition even older than the 1620. As it goes through different-size loops, it "sings" at different pitches on a nearby radio tuned between stations.
Computers of this era didn't have much memory, and fitting a useful program into such a small space is a lost art. My mind boggles when I look over the listings (luckily, I have listings) of the assembler and see the gritty, bare-knuckle stuff the IBM programmers went through to fit programs into 20000 digits with enough room left over for the data. Not only did these programmers modify operands in place and stuff data into unused parts of instructions, they sometimes, "on the fly", changed an instruction into a completely different one to make the ones around it do "double duty". This is referred to as "self-modifying code" and is frowned upon today -- to say the least!
In addition to the schematics and CE reference, my 1620 came with manuals for the assemblers and the Fortran with Format compiler, and annotated printouts of some of the programs' source code. It also came with a copy of Leeson and Dimitry's fine book "Basic Programming Concepts for the IBM 1620". This helped my understanding of 1620 programming immensely.
The joys of "olde-tyme" programming include a fixed-format input requirement where you cannot have a space or a comma out of place -- or the program aborts. Primitive editors require that you retype the complete line to change any part of it. No wonder the programmers were stingy with "COMMENT" lines. I got tired of this, studied the schematics for a long time, and eventually invented a feature no other 1620 has: rubout. This used up every one of the five or so spare cards, and took advantage of the fact that my machine has the Indirect Addressing feature. I would not have been able to do it without it. That is probably why IBM never developed this feature - Joe Crespo says they talked about it and decided not to. My circuits worked on the first try. I am still amazed, 18 years later.
I also discovered a hardware-software incompatibility between the Indirect Addressing feature and the One-Pass SPS assembler. The latter sometimes places a flag bit on the LSD of addresses, for some kind of internal housekeeping; unfortunately, the hardware treats this as an indirect address. Whoops. I don't know if IBM ever corrected the problem in later versions of the assembler; I simply hijacked one of the spare console switches to disable the I.A. feature when I want to run the one-pass assembler.
I felt the need for an "impress-the-visitors" mode, so I wired a 555 timer to the Single Cycle button, and used the last spare console switch to enable it.
At the U of P, students had wired a level-shifter board onto the back of the paper tape reader, so they could load their PDP8/e's monitor faster. At the end, that was the only use they made of the 1620. Recently I got the bug to do the same sort of thing with a PC so I could archive paper tapes.The project started growing as soon as I started. Now I can archive a paper tape image, edit it on the PC with a vi-like full-screen editor I wrote (which has become a project itself as I keep thinking of useful features), and download it into the 1620 independently of the 1621.
I have drawn up schematics which should do the same thing for the paper tape
punch. Really, the typewriter needs backup the most, but it is much more
difficult and I haven't tried.
The American Computer Museum expressed amazement that I keep my 1620 running, and they are enthusiastic about my decision to eventually donate the machine to them. The museum keeps me in touch with other keepers of still-running "iron" (i.e. old mainframes), so we can compare notes and scrounge spare parts.
Retro-Programming Raison D'Atre
You may wonder why I write code for an antique when I could boot up my PC and click on Microsoft Developers Studio. I've asked myself this same question. Retro-programming gives me a feeling of groundedness - of having roots. Many of the first-generation of programmers started out working on this and similar machines. I believe the 1620 is superior to the PC if your goal is to understand what a computer is and how one works. A PC is a featureless box with lots of gee-whiz on the screen. Kids are used to this sort of thing since they see it on TV every day. They are deadened to the wonder and complexity of what goes on behind the scenes. This complexity has become so intense while its cost has fallen dramatically - making it commonplace - that it almost has to be ignored.
In contrast, a person can fit completely inside the 1620's central processing unit. Everything is visible. You can hold a logic gate in your hand. You have complete control of every bit of the hardware. When you punch STOP it really stops - in its tracks. That is refreshingly straightforward compared to what your Pentium is doing when your Windows desktop is idle. You need a whole research lab to know what is happening inside a Pentium silicon die. With the 1620, 150-odd panel lights tell you the complete story of what it is doing - every tiny step of the way, when you successively press the SINGLE CYCLE button.
I am a happy keeper of an iron "Dinosaur" mainframe. Though it is not for everybody, I sense the romance of the early days of computer science in the dancing "blinkenlights", the warm clatter and hum, and the smell of paper tape and old wire.