Annoyed Grunt! Annoyed Grunt!
Hey I'm Dave, welcome to my shop! I'm Dave Plummer,
a retired software engineer from Microsoft going back to the mid-90s, and today we're
going back a lot further than that to look at some truly ancient iron that I've just acquired.
I've been coding since the 80s and so I've got a soft spot for some of the
really early machines. I've even got a little museum set up in my office,
where you can find an Amiga, a Commodore 64 and 128, a VT220, a TRS-80, and a bunch of PETs.
This is my green PET. And this is my white PET. And this is my custom Amber PET.
As you start to go back to times even before I got started, we find machines like my KIM-1
stack and the IMSAI replica. And yet, for all this hardware, there's one thing that's sorely missing.
And that would be the OG of desktop computers, the one and only true original: the Altair 8800.
That's the computer that would prompt Gates and Allen to start writing their
BASIC interpreter that would later spread to almost all desktop computers of the day.
In fact, it really all started with the January 1975 issue of Popular Electronics magazine.
Unlike most everything that had come to pass before, the Altair was a complete computer,
including all of the components, ready to assemble in a professional package. And they'd
soon switch to selling fully assembled units, lowering the barriers to entry even further.
News of the Altair's debut fairly rocked the electronics world, which had been eagerly
waiting for just this moment: but it took until the new Intel 8080 chip came along
before it was really practical. Paul Allen had been browsing the magazines at a news
stand called "Out of Town" in Harvard square when he saw the Popular Electronics cover.
He bought a copy and ran to eagerly show the magazine to his friend Bill Gates. Bill's
initial reaction was excitement, mixed with... fear. Excitement over the possibilities that
the Altair would open up, but fear that others had already begun work on those opportunities and that
they would have a head start. He did not want to be left behind. It was time to get serious,
and it would lead to Bill dropping out of Harvard to chase their joint dream full time.
For all its potential, the Altair was incredibly rudimentary. There was no monitor, no keyboard.
Ostensibly you could connect a teletype or terminal to it but there was no operating
system or interpreter to interact with even if you did so. The only means of entering code and
data was through a set of switches on the front panel. You could enter individual instructions
and data bytes in binary using those switches, but as you can imagine, that was very slow going.
Your best bet was to load code in from a paper tape, but even then you would have to toggle
in the bootloader code that knew how to read the paper tape in the first place!
Gates wanted to write a BASIC interpreter for the Altair that would transform it from an electronics
kit for hobbyists into a much more useful and, for its day, easy to use machine. They didn't have an
actual Altair, and likely wouldn't get access to one in the near future, so they would have to make
do somehow else. To that end, Paul Allen updated the simulator he already had for the 8008 chip to
be able to handle the new 8080 chip. He'd perhaps adapted it from the INTERP/8 8008 simulator that
shipped with the PDP-10, but regardless, he now modified it to support the 8080 chip. With
access to the simulator, they could now start writing their version of BASIC for the Altair.
Microsoft BASIC is, to be sure, pretty clever. The floating point code alone set it apart from
most other BASICs of the time, and that part was written by a Harvard friend of theirs named Monte
Davidoff. He based his floating point code loosely on how the FOCAL interpreter did it on the PDP-10.
Where Bill got his ideas for the way BASIC works I don't actually know. It could be
all from first principles, I suppose, but I always assumed they would be familiar with the
interpreters available for the PDP-10 at Harvard and the one they had access to in high school.
Bill spent a lot of time during his stint at Computer Center Corporation studying existing
code, but which interpreter he was inspired by is a question I'd love to ask one day.
Bill reached out to MITS, the company that made the Altair. They had a lot of kooks
and dreamers calling them up out of sheer excitement over the release of the Altair,
and they had to sort the possibles from the probables.
Something about Bill convinced MITS that he was the real deal, and long story short,
a deal was struck whereby Microsoft would produce the official BASIC interpreter for the Altair.
The Altair thus begat BASIC which begat DOS which begat Windows, so in a biblical sense,
it all goes back to that Popular Electronics cover and the Altair.
Now the problem with Altairs today, of course, is that they're fairly rare and
quite expensive when you do find them. If you do manage to stumble across an auction for one,
the odds of it being in working order still today are very slim. Most of them have been
hacked on and extensively modified as well. I set search alert on eBay and went through
a dozen or so prior completed auctions to see what recent prices had been like. They ranged anywhere
from $2000 for a basket case up to $10,000 for a low serial number unit overseas. I needed to
be much closer to the low end of that but I still wanted one in good shape, which meant I
was going to picky. And that meant I wouldn't be getting one in a hurry. Good condition,
cheap, or getting it in a hurry. Pick any two. Within a year or so, however, I was able to snipe
a nice original Altair 8800 that was in working condition. Or at least according to the seller,
it powered on and the lights worked and you could toggle things in with the switches,
and that's all that really mattered to me. If it worked that far, any remaining problems
would likely be fairly simple to fix. I completed the transaction and about
a week later a box showed up at my front door sealed with that colorful eBay shipping tape.
When I unpacked the Altair it seemed to have survived the shipping and was well packed,
and so I carefully set it up and flipped the power switch. And that's where we came in:
[D'oh segment] Dead as a doornail. Actually the fan came on,
so I knew at least the switch was working, but nothing on the front panel worked at all. I got
in touch with the seller who sent me a video of it running to prove it had worked in the past,
but that didn't really help me any now! He didn't have any ideas or theories to share, so I was sort
of on my own. If I took him at his word, it had most likely happened in shipping somehow.
I'm not an electronics guru - not by a long shot. But I'm learning - I've been watching
a lot of Adrian's Digital Basement, and I have been slowly troubleshooting as much of my own
electronics as I can. Sometimes I get in over my head and have to rely on folks like David
from Microsoft or Neil from the ShadowTronBlog channel. They're both skilled techs and both have
done a lot of repairs for the channel lately, but I wanted to see if I could fix this one
myself before I wore out my welcome with them. The first thing I did was break out the manual,
which was very handily included as one of about 5 binders of documentation that came with the
machine in the box. The power supply diagram indicated that there's a bus connector in the
back of the machine that should feature plus and minus 16V and then two 8V feeds.
The way these older machines worked was to distribute unregulated higher voltages
directly off the linear power supply, like 8V and 16V, to the individual boards in the
machine via the card slots. It would be like if today your PC power supply provided 16V to
everything over the bus and then your video card was responsible for making its own 12V from that.
But it means every card has to duplicate the circuitry needed to regulate from 16 down to 12.
On the Altair, for example, your RAM board would contain at least a 12V and 5V regulator
and it would regulate the incoming 16V and 8V down to those levels. That also means it has to
shed the excess power as heat, and so it's not the most efficient way of doing things, but it works.
I checked the screw terminal connector at the back of the machine to confirm the voltages were
all present, but one was indeed missing. Only one of the 8V legs was working, and the other one was
completely dead. There are supposed to be two, one for the motherboard and one for the front panel,
and my front panel supply seemed mostly inert. It didn't seem to have a dead short in it, though, so
I took an old hot-rodding approach that probably isn't appropriate for sensitive electronics,
but... I hot-wired it. I simply ran a jumper from the working 8V side to the non-working 8V side.
As I mentioned, the two 8V feeds serve different purposes: a higher amperage
8V circuit feeds all the cards through the bus, and a low amperage 8V circuit feeds
the front panel LEDs and switches. Since it was the low amp circuit that I was missing,
I figured the high amp side could take the extra load for a few seconds at least.
With my jumper in place, I flipped the power switch and sure enough - lights, camera, action,
and it came alive. I quickly turned it back off as I was afraid of overloading the working 8V
side. It might even run fine like this for all I knew, but it certainly wasn't designed that way,
and if they went to the trouble of an extra transformer for the front panel,
I'm sure there was a good reason. I just had to figure out why it wasn't working in stock form!
My friend Kai from Microsoft mentioned that this Altair has the base power supply, intended at most
for 1 or 2 cards on the bus, but that my machine has been expanded with a half dozen cards like RAM
and serial and so on. The power situation might be on the ragged edge of acceptable
already, so no need to push it any further. Any shot I had at being able to diagnose the
power supply was highly compromised by the fact that its very hard to get to the power board.
There are transformers mounted above it and the back side of its PCB is mounted nearly flush
against the flat steel chassis, so test points and so on are hard to establish, and you can't see the
PCB traces. Another factor at play was that it was pretty gross in there - covered with 30+ years of
dust and skin flakes and whatever else accumulates in a chassis with a big fan that has no filter!
I decided to pull the power transformers and board and everything else out of the machine,
clean it up, and see if I could get it working on the bench. If nothing else,
it'd be a lot easier to diagnose and repair apart on the bench than crammed inside the machine.
And so, one by one I removed each of the three transformers and then finally the power PCB
itself. I had to detach a dozen wires from the screw terminal connector, and so I carefully
labelled each with a tape tag indicating which terminal it had been removed from.
Photos and notes can be helpful too, but most of the wiring in this machine is black,
not color coded, and so tags are likely a better way to go.
I waited until my wife wasn't home and then I took the power supply into the house so I could clean
it in the big laundry sink. I kept cloths under it at all times so that the PCB didn't scratch
the sink, and I started by misting everything with a foaming cleaner. I honestly don't know how much
water electronics are capable of temporarily tolerating, but I was confident that I didn't
want to get the transformers wet - I knew that much. I gave the power board a gentle sponge bath,
then dried things off with a microfiber towel. That's probably not sufficient, so then I gave
it a shot of isopropyl alcohol and used high volume compressed air to completely dry the
components off. I cleaned the transformers with QD electronics cleaner, which is nonconductive.
I set the power supply components aside while I turned my attention to the chassis and case. I
used Simple Green and a cloth to clean everything I could reach as well as more QD cleaner and a
paint brush for getting at some of the more delicate wiring. The fan itself was pretty
caked with dirt but cleaned up nicely as well. With the power supply clean, dry, and ready to
go back in, I started reassembly. A lot of the hardware was rusty or otherwise corroded and so
I used a pair of pliers and the wire wheel of my bench grinder to polish up the screws that most
needed it. They should really be replated, as I've now stripped them of any protective anodizing,
but like I said, they were already rusty to start with, so it's not much of a loss.
I removed the backplate so that I could start attaching the transformer to it,
and once all three were back in place, I reattached the backplate. Here you can see
the newly cleaned up hardware complete with the screw slots all aligned. Once the transformers
were back in place it was time to make two seemingly minor, but important, repairs.
There were two breaks in the wiring: one at the leg of a TIP transistor tasked with supplying a
regulated 5V, and the other was one of the legs of the big T1 transformer where it attaches to
the power supply PCB. That would certainly cause problems, but it looked like it wasn't broken in
the reference photos that I had taken before I took the transformers out. Given there's not
much slack to work with I might have broken it, or it might have been broken beforehand and was
just being held on by the insulation. Either way, I soldered it back onto the board where it goes.
With those repairs made I wired the supply to the AC power cord and plugged it in so that I
could check the supply voltages. And suddenly everything was present, though a little high.
Where I only had one 8V leg before I now had both, and the plus / minus 16 was still working as well.
I'd love to tell you conclusively what it was that I fixed, but the reality is that I just
don't know for sure. Since I'm guessing there are people in the audience that know a lot more
about linear power supplies than I do, I'd love to hear your theories in the comments as to what
the most likely cause of the missing 8V was. Could it have been the broken connection to
the big transformer? Or is the TIP transistor the more likely culprit? Or something else entirely?
Thanks a lot for joining me out here in the shop today. I really enjoy making these more
narrowly focused videos on older tech, so if you enjoyed it, please leave a like
and consider subscribing to the channel! Both help a great deal with the algorithm!
If you have any interest in matters related to Autism, Asperger's, or ASD,
please check out my book on Amazon, Secrets of the Autistic Millionaire. It's got nothing to
do with money and everything to do with living a successful life on the spectrum. It's everything
I know now that I wish I'd known back then. Remember I'm mostly in this for the subs and
likes, so please be sure to leave me one of each before you go today. In the meantime,
and in between time, I hope to see you next time, right here in Dave's Garage.