Sunday, 8 September 2013

Vintage IBM 5160 XT Teardown - Part 1

I've recently got my hands on an IBM XT model 5160. This is the successor to the original IBM PC 5150. It was compatible with it's predecessor, so is probably one of the first to call itself 'PC Compatible'.
I think this is probably the first real PC, it was the first to come with a hard drive as standard, the one that introduced the legendary 640K RAM limit, and the first to use the slot spacing still in use today. The slots on the 5150 were wider, see later for an example of a 5150 card, whereas the 5160 used the same backplane format as use adopted as the standard for 8 bit ISA, 16 bit ISA, VESA, PCI, AGP and now PCI Express.
So this is what I got, it's fully equipped, and has had many upgrades fitted. The original would probably have had a full height 5.25" 360K floppy drive, and a full height MFM hard drive (tens of megabytes in size). This has been upgraded to have two 2.5" half height drives, and two half height MFM hard drives. There are also a number of add on cards.
First, the motherboard. This is smaller that I was expecting, about the size of an ATX motherboard. There isn't actually much on there when it comes down to it.
There is an intel 8088 processor, the 8 bit version of the 8086 processor that spawned the generations of processors to come. There is also an Intel 8087 numeric co-processor, which speeded up the floating point mathematics capabilities of the 8088.
There are 4 banks of RAM, in this case, banks 0 and 1 hold 50256 chips (so each bank is 256K), and banks 2 and 3 hold 4164 chips (so each bank is 64K). That gives a total of 640K, which is the maxium supported, and although at the time, '640K Ought to be Enough for Anyone' (as Bill Gates didn't say), it proved to be quite a problem in future. The date codes on all the RAM are early 1986, and the board is dated later 1986, so I presume this machines was supplied with the full 640K from new.
There are various members of the 82xx series family on board, the 8255 I/O chip (providing keyboard, speaker and reading the DIP swich), and 8237 DMA Controller, the 8253 Timer and 8259 interrupt controller.
Apart from those, some glue logic, and the BIOS chips, the only other things on note on the main board are the 8 ISA slots. This is I suppose where the power of the PC family comes from. There is no real I/O capability on the main board, it is all on external cards. That means it can be upgraded and expanded very easily. PC's these days have grown to the point that there are often no add-on cards needed at all, everything is provided on the mainboard. In those days, everything was on cards, apart from the keyboard. This PC came with 4 add-on cards.
The first is the MFM hard drive controller. It's a DTC 5150 CX. I can't find out much about it. All the chips seem to be DTC custom parts (or at least custom marked parts).
Next comes the Floppy Disk Controller. This is based on the standard μPD765 FDC chip and provides two double density drives, that's 360K 5.25" or 720K 3.5".  High Density would have been 1.2MB 5.25", or 1.44MB, the standard 3.5" format in the 1990's. It's unusual to see an internal edge connector use for the drive connections. Most other cards used pin headers on the card. I see there are actually holes to fit one. There is also an external 37 pin connector, presumably for the 'expansion unit' IBM wanted you to buy, which was basically another PC case with no motherboard.
Next comes the IBM Colour Graphics Adapter. This uses the 6845 CRT Controller (the same as the BBC Micro, Commodore Pet and Amstrad CPC464 for example). It has 16K display RAM and a 9 pin output (CGA) and a phono plug for composite video output.
This one appears to have come from a 5150 PC, as it has the larger plate on the end. The plate is a lot wider than a normal card, and takes up two slots on the 5160 XT. The date codes seem to confirm this, they are early 1982.
As an aside, the other card in that comparison above would have been an alternative at the time. It's an MDA (Monochrome Display Apapter). This also uses the 6845 (although the second sourced chip is marked CTC8645, the silk screen below says 6845). This has 2K RAM and the space to fit a parallel printer output at port 0x3BC, although it's not fitted here. It's the only bit I have left from my very first PC, which I got second hand in 1994. It was a 12MHz Tandon 80286 which weighed a ton. I remember I was out shopping and saw a notice in the window of a video rental shop that was closing down offering a computer for sale. I had to carry it all the way to the University flats where I was living at the time. And then I had to go all the way back to get the 12" amber screen monitor!
Another optional card not present in this machine is the parallel port, a simple output buffered affair, fixed at address 0x378. Like the port at 0x3BC on the MDA, this is another address options that will be familiar to anyone who used printer ports on PC's after this, they were all basically emulating this card.
One final optional card combined serial and parallel. This was actually configurable by moving the jumper chips around and could provide a single 9 pin RS232 serial port at 0x3F8 or 0x2F8 and a printer port at 0x378 or 0x278. Again, all these port numbers stayed with the PC for over 20 years.
That completes the standard cards, but there was one additional card inside this unit, it's called a AST MegaPlus II, so it must be good! And it appears to be packed full of stuff. It has two 8250 UARTS giving two serial ports. It has a parallel port, and a real time clock. There is also a pile of 41256 RAM chips which appear to be whopping 1 megabyte of RAM, not sure how that is used - the PC already has the maximum supported?
Two pins on one of the UARTS are bent up, not sure if this is deliberate, as they happen to be RX and TX. I need to do some more research on this card.

That's enough for Part 1. In Part 2, I'll go through the drives and the case and put it all back together.