Showing posts with label Teardown. Show all posts
Showing posts with label Teardown. Show all posts

Monday, 7 October 2013

Keyboard Error, Press F1 - IBM 5160 Part 3

This is an old post, preserved for reference.
The products and services mentioned within are no longer available.

When I last wrote about the IBM5160 I was in the process of stripping down and rebuilding, it turned into a brief history of disk drives, mainly because I didn't have an XT compatible keyboard. The system was sitting there showing keyboard error (301) and requesting F1 be pressed to continue.
Although it had the same 5 pin DIN connector, the XT had a different keyboard protocol to the AT standard, which is still in use today, only the connector has changed from the 5 pin din on the AT to the 6 pin mini din connector on the PS/2.
Both protocols (the nice, elegant XT one and the later overcomplicated AT one) required only two pins, a clock and a data pin. I had started to design a simple converter using an 8 pin AT Tiny microcontroller. When looking for further information on the protocols, I came across this thread on the Vintage Computer Forum. It appears I'm not the only one in this predicament, and someone had already designed such a device, using an 8 pin PIC. Rather than reinvent this particular wheel, I programmed the firmware supplied by Chuck(G) in this post into a PIC12F629 and built the circuit on breadboard. It worked first time. Further information and schematics here.
I had removed all the drives and most of the cards and had only just started putting bits back together, so with no boot device available, the 5160 loads Microsoft BASIC from ROM.
A quick bit of testing and the keyboard is working fine, so I built it up into a little box.
A 5 pin cable plugs into the XT, and there are two options for a keyboard to plug in.
Either an older AT style keyboard.
Or a recent PS/2 keyboard.
Adding the drives back and trying a DOS disk, booted up into DOS and away it goes.
I also had a try with the hard drives. Initially they were reporting problems, but I found an old copy of Norton Disk Doctor and set it going.
It didn't seem to like the CGA card, so I tried another and got the same result. Must not be compatible, so I dug out an 8 bit compatible VGA card and tried again.
That sorted out the problems and started booted into DOS 6.22. However, it then started some type of 'Power Menu' which wouldn't do anything without a password. I tried the usual candidates, but didn't manage to guess it. Easy enough to bypass though. I need to copy off things like software for the 'AST MegaPlus II' card, and then go for a clean install of DOS and all my usual software. Drives of that vintage are rather noisy and delicate, so I'll will probably mothball these as they are and look at using something like a compact flash card.
The power supply is likewise rather noisy, I've started stripping that down, with a plan to potentially replace the fan with a quieter one. I've noticed a couple of X type mains filter capacitors which have a habit of exploding, BBC model B's suffer from that a lot. I'll replace those, give it a good clean and check out the rest of the capacitors before putting it back together.
There is also a bit of a bodge where one of the disk drive power cables has been cut and and extra power cabled spliced in and the joints wrapped in cloth tape. I'll probably try to undo that mod and return it to its former condition.
Read more in the next article....

2022 Update: The next article will arrive at some point. I really must get around to getting all the 5160 bits out of storage and build up a working machine.

Monday, 23 September 2013

Vintage IBM 5160 XT Teardown - Part 2: A Brief History of Disk Drives

This is an old post, preserved for reference.
The products and services mentioned within are no longer available.

This started as a look at the drives that came with the IBM5160 I recently acquired and took apart in Part 1. However, when I started looking at when should have been fitted, I ended up with so many different types of drives on the bench at one time, it seems to have grown into a brief history of the disk drive.
The original IBM PC (the 5150) had two of these. They are Tandon TM100-2A drives, 5.25" floppy disks 40 tracks, DS DD (Double Sided, Double Density), giving a total of 360KBytes per disk. For reference, that's about the same size as each of the photos on this page. These are 'full height' drives, equivalent to two of today's standard 'half height' drives (i.e. it's the same size as two DVD-ROM drives). The IBM 5160 that I'm rebuilding would have originally be fitted with one of these and one full height hard drive.
When I got it, both had been replaced with 4 half height drives, 2 hard drives (on the left) and 2 floppy drives on the right. The replacement drives were (at least) half the size, but they were twice the capacity, as is the way of these things.
I don't have any 8" disk drives, but the disk on the left is an 8 inch floppy, with a capacity of 1Megabyte. The disk with the blue IBM label is a DS DD 360K. Next to that is a progression, same size but 4 times the capacity, a DS HD (Double Sided, High Densitry) 1.2MB 5.25" floppy disk. Below are the 3.5" inch disks that superceeded them. Firstly the grey disk is DS DD and gives 720K, and finally the largest capacity is the 3.5" DS HD floppy at 1.44MB. On the 3.5" disks, an extra hole was added on the right to indicate high density. The one of the left and the slot on the right on the 5.25" disks being a write protect mechanism.
The drives have shrunk as well. The 1.2MB drive is 'half height', and the 3.5" drives are even smaller. The 5160 cannot support the two HD formats, so that makes it easier to chose what to put back in. I suspect I will go with the 360K DS DD 5.25" drive and one of the 720K DS DD 3.5" drives that came with it. That would leave space for one hard drive.
Not relevant to the 5160, but there was another drive size on the market at the time, Amstrad had a 3" disk, the CF2. This had a capacity of 360K in total, split into two 180K sides, so it needed to be turned over to get to the other side. This made it cheaper as it only needed one read/write head rather than two as fitted to all the double sided drives. Amstrad used these 3" drives on their CPC 6128 and various word processors such as the PCW 8256. These were also used in the Specturm +3 (which was build by Amstrad). They later relented and moved to 3.5" DS DD.
With hard drives again, capacity grows and size is reduced. The drive on the left is a full height 5.25" hard drive, an ST4038, with a capacity of 30MB.  Tiny by today's standards, but that's 100 floppies worth.This is the soft of thing which would originally graced the 5160. The next two are the ones that were in the 5160 when I got it. The first is 5.25" half height, an NEC D5126 at 20MB, and a half height 3.5" wide drive in a frame to fit half height 5.25", a Tandon TM262, also 20MB. For comparison, the ones at the end are modern standard 3.5" and 2.5" hard drives, both 160GB (yes, 8000 times larger capacity). And the little spec at the front is a 4GB micro SD card.
Here is the platter from a 5.25" hard drive I took apart when it died in the early nineties. It was obsolete then at around 5MB I think. Next to it is the disk removed from a 5,25" floppy (probably around the same time). The small pin hole on the left is used to indicate where track 0 is, a light shines though a hole in the cover and when it is lined up with the hole, it shines on a sensor and the drive knows it's at the right position. That's what generally happens when you insert a disk, it spins it around until it detects track 0. Next to that is a 3.5" drive with the cover removed. There you can see the disk itself and the head which floats over it. On the end is a 2.5" laptop drive.
I'd like to go back to one full height floppy and one full height hard drive, but the full height hard drive I have doesn't have a front panel. So I'm going for one full height floppy, as it would have had when new, and a half height floppy and half height hard drive, both of which were in it when I got it. I've tested the floppy drives and all seem to work. The full height drive is out of alignment. It can format disks and read them back, but can't read other disks, and it's disks won't read in other drives, so I need to realign that.
I can't test the hard drives at the moment as I still haven't found a keyboard and it isn't compatible with the later AT style or PS/2 style keyboards, so I'm going to need to make some kind of interface. It's currently waiting for me to press F1........
On to Part 3.

Sunday, 8 September 2013

Vintage IBM 5160 XT Teardown - Part 1

This is an old post, preserved for reference.
The products and services mentioned within are no longer available.

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 sped 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.

2022 Update: I really must get around to putting this back together!

Wednesday, 12 December 2012

LED Clock Part 2 - Teardown

This is an old post, preserved for reference.
The products and services mentioned within are no longer available.

I am working on a more complicated version of the 'Simple LED Clock' in my previous post, however this is currently delayed as CPC has messed up my order again and I'm still waiting for some of the parts I ordered. So the prototype is currently using 2 MCP23008's to drive one digit each:
Whilst I'm waiting, here's a look inside the original 30 year old clock.
Inside there's a lot of space where the radio used to live.
It's a three board construction
With one for the top buttons, one the logic board with a single IC and finally the display
The chip is a TMS3450NL, and the date code (32nd week of 1983) seems to fit with the 30 year old estimate.
I have managed to find a scanned datasheet for the chip:

After all this time of putting up with a 12 hour clock, I find that not only did the display have sufficient segments to display 1 and 2 (but not 8), the chip supported 24 hour mode, it just needed a pin shorting to ground.

On to part 3 - more on display multiplexing.