• Please review our updated Terms and Rules here

IDE hard drive on an IBM PC Convertible

Ventura

New Member
Joined
Mar 18, 2019
Messages
9
Using some sort of adapter that came with my PC Convertible when I got it, I’ve managed to get it to recognize an external hard drive. The adapter plugs into the rear expansion port and contains a pcb with some chips on it, one of which is labeled “Quickbrick BIOS Copyright 1989”, the board has “Copyright Systems Peripheral Consultants 1990” printed on it. It connects to a hard drive using a 40 pin IDE cable, currently I have it connected to a miniscribe 8225 because that’s what it happened to come with. The Convertible boots up, the hard drive lights up and spins some during POST, and DOS allows me to switch to the “C:” drive without an error. I can’t seem to find anything about using an HDD with a Convertible online, and I’m having some issues with it, so I figured here would be the place to ask.

First, I can’t actually fully access the drive. DOS allows me to switch to drive C, but attempting to run any commands (dir, chkdisk, frisk, format) it outputs “General Failure error reading drive C”. As the hard drive itself is fairly old, and was sent through the mail and probably knocked around a bit, is this likely to be an issue with the drive itself as opposed to the computer?

Second, inexplicably whenever I boot up the Convertible with the hard drive adapter in, the A drive continuously has the activity light on and spins. It doesn’t stop spinning until the computer is powered off, but has no problem actually reading the disk or running programs from it. Is this a known problem, and is there any fixes?

Also, this is more of a question than a problem, but if I were to find an IDE 3.5 or 5.25 in floppy drive, is it likely that this would work too? Or is a hard drive too different from a floppy drive?

Thanks in advance for any advice or suggestions!
 
Can you take a picture of the part where it attaches to the Convertible? I was not aware of any hard drive adapters for the Convertible.
 
Is this an actual IBM PC Convertible/IBM 5140? http://oldcomputers.net/ibm5140.html

How does this controller even connect to the computer?

There is a bit of mixed information out there about the "Miniscribe 8225", but the "Miniscribe 8225 XT" would be an IDE-XT interface (not to be confused with the newly produced "XT-IDE" cards) that uses the XTA protocol instead of the ATA protocol (not to be confused with 8-bit ATA used by CF cards).

In other words, no, although it is "IDE" you can not replace it with a standard IDE/ATA hard drive. Only an IDE-XT/XTA hard drive would work, and those were uncommon even when they were new.

The hard drive might contain important software. I'd back up the contents of the hard drive as soon as possible.

You are probably right that it has developed some bad sectors, but the fact that you get a "C>" prompt at all indicates it is not completely dead.

What I would do is use Norton Utilities 4.5 NU.EXE disk editor to examine the "physical" drive sector-by-sector. It is possible to specify sector ranges and write that content to a floppy disk, although that means manually calculating a set of ranges so each segment fits on a floppy disk, avoiding bad sectors (it will stop writing when it hits a bad sector), and then re-assembling the results in to an image file on another computer. It can be a little less hassle if you have some way to attach some other writable mass storage device.

Since it is IDE, it is possible that performing a "low-level" format or full drive wipe might re-map any bad sectors permitting the drive to be used again. But only do that after you are sure you have all data off of it.
 
I took some pictures of the device.
IMG-0047.jpg
IMG-0046.jpg
IMG-0045.jpg
IMG-0044.jpg
When attached it hangs off the back of the convertible, connected by the expansion bus connector at the bottom.
Couldn't find anything online about the two names on it, QuickBrick and Systems Periheral Consultants.

Maybe the fact that there's difference between XTA and normal ATA hard drives is why it wont read, no idea if this device is meant for ATA or XTA.
Where would I get a copy of Norton Utilities 4.5? And would Norton read the drive even if DOS itself wont?
 
I think you found something interesting! At that time, it would definitely be an 8-bit IDE-XT/XTA drive that it interfaced to, as it wasn't until recently that someone developed a way to use the modern IDE protocol on 8-bit systems (XT-IDE). I'm not certain if you're getting the "General Failure" error due to a problem with the drive being the wrong interface or if it's a failed drive. Since this is using a custom BIOS, it could be doing odd, non-standard things.

I also found an ad in the June, 1992 "Portable 100 magazine" for this. This could potentially be reverse-engineered and have the ROM dumped in order to facilitate a recreation of this device. This is the only device I've seen reference to that allowed a hard drive to be attached to a PC Convertible. I know a lot of people (myself included) would love to see a way to get a hard drive working on these systems!

Quickbrick.png
 
This is definitely cool. Also, dumb idea, but the above comment has me wondering what would happen if you replaced the BIOS chip on this card with an XTIDE BIOS chip. Probably would just render the card useless without it's original chip, but who knows. If it did work that would have some really interesting implications for PCjr collectors since this card looks like it would be relatively simple to reverse engineer.
 
I'm assuming you meant PC Convertible, since PCjr already has the jrIDE which is already based on XT-IDE. This does look like a pretty easy card to reverse engineer, but modifying it work with standard IDE drives might be a little more difficult, since this card was designed for a different hard disk interface. I wonder if there's another piece to the puzzle, as that doesn't look like it has the proper logic to demultiplex the expansion bus (or maybe it's a lot easier to do it than it sounds: http://ohlandl.ipv7.net/5140/5140.html#Extendable_Bus).
 
I wonder if there's another piece to the puzzle, as that doesn't look like it has the proper logic to demultiplex the expansion bus (or maybe it's a lot easier to do it than it sounds: http://ohlandl.ipv7.net/5140/5140.html#Extendable_Bus).

The device has a couple of 74573's on it, that should in principle be enough to de-multiplex the AD0-AD7. I'm not familiar with the details of the XTA hard drive interface (which is what I assume this uses, the Miniscribe drive mentioned above came in an XTA version) but if it's anything like the 8-bit mode supported by ATA-2 on devices like Compact Flash cards (and used on the XT-CF adapter) there's almost enough circuitry on that thing to make sense.

(I think an XT-CF would need a couple more chips, unless the Convertable's expansion bus provides some pre-decoded chip enable lines for things like the ROM. I skimmed the tech reference PDF to see how the multiplexing worked but that's it.)
 
XTA port layout is akin to drives on a PC XT interface; same I/O ports etc. Not at all compatible with ATA drive conventions, even if they look the same.
 
Certainly, there’s no way you could just swap roms and run an 8-bit CF card on identical hardware, but in terms of hardware complexity I assume they boil down much the same. (IE, you essentially need to decode two or three address line’s worth of 8 bit I/O port space for the drive and provide a BIOS ROM in upper memory.)

Technically an XT-CF could reside at an arbitrary base port address (it’s software configurable) so... from a devil’s advocacy standpoint, what might be the barrier to using a custom adapter to put a CF on an XTA port, assuming you can swap the BIOS code? Again, I am saying this not knowing the pin out of XTA, but didn’t they make drives that could be jumpered between ATA and XTA?
 
I have totally forgotten about this thread. The idea of an IDE hard drive on a Convertible is exciting!

The technical reference has a good description of the I/O channel:

  • Multiplexed low order address and data lines
  • High order address lines
  • Six IRQ lines
  • Memory and I/O read and write control lines
  • Clock
  • DMA

At the falling edge of ALE the 8 shared address/data lines as address lines. When the memory read/write or I/O read/write lines are low the shared address/data lines contain data.

Address lines 16 - 19 are also latched and are treated the same way. Their other signal is "status bits" but I can't find what those status bits are. There is nothing in the timing diagrams that indicates they are used for anything other than addressing, so I'm wondering if the book has an error where it says those lines are multiplexed with status bits.

I need to work on my electrical engineering skills. As a software person I feel so isolated by all of this hardware. :)
 
There were a few ATA drives that could be jumpered as "8 bit", but I'm not sure exactly what was meant by it. Dig back in the archives here and there have been several discussions about XTA vs. ATA hard drives and how it isn't just a matter of swapping a few signals.

If the item has been discussed several times before, I'm not going looking for it again.
 
There were a few ATA drives that could be jumpered as "8 bit", but I'm not sure exactly what was meant by it. Dig back in the archives here and there have been several discussions about XTA vs. ATA hard drives and how it isn't just a matter of swapping a few signals.

Here's a thread where someone did, with minor hardware modifications, turn an XTA port into a CF port using the XTIDE universal BIOS. Broadly speaking it looks like the only major hardware gotchya is the XTA port only has two address lines, while for a CF you need three. The I/O base is x320, which is no problem for the XTIDE BIOS out of the box.

In any case, that supports the idea I was getting to, which is if the OP were willing to trace the schematic of this card it may take only minimal hacking to turn it into an XT-CF-Lite that would work on an IBM Convertible.
 
Address lines 16 - 19 are also latched and are treated the same way. Their other signal is "status bits" but I can't find what those status bits are. There is nothing in the timing diagrams that indicates they are used for anything other than addressing, so I'm wondering if the book has an error where it says those lines are multiplexed with status bits.

That part left me scratching my head as well. There's no indication of what "status" they're meant to relay.
 
Here's a thread where someone did, with minor hardware modifications, turn an XTA port into a CF port using the XTIDE universal BIOS. Broadly speaking it looks like the only major hardware gotchya is the XTA port only has two address lines, while for a CF you need three. The I/O base is x320, which is no problem for the XTIDE BIOS out of the box.

In any case, that supports the idea I was getting to, which is if the OP were willing to trace the schematic of this card it may take only minimal hacking to turn it into an XT-CF-Lite that would work on an IBM Convertible.

Read the whole thread, if you haven't already. This involved changing out the BIOS routines for accessing the disk. CF is capable of 8 bit transfers, but not so ATA IDE hard drives.

Again, there is no such animal as an IDE ATA or XTA "controller", though same call it that.. What most call a "controller" is a bus adapter. Given that, (as I suggested 5 years ago), you can repurpose the signal lines on an XTA interface to talk to a CF card capable of 8 bit transfers--but it'll take a reworking of the BIOS code.
 
I think we have been talking past each other.

I am well aware that from a software driver standpoint an XTA hard drive is totally different from an ATA drive. If you notice I have been referring to the thing it hangs off of as a “port”, not a “controller”, and I have been pretty explicit that I don’t think the original BIOS code on this adapter is going to be useful *. What I was interested in is if there was some critical electrical difference that would rule out repurposing the schematic of this device as the basis of a new-build XT-CF-Lite for this computer. (It seems to have a remarkably low chip count considering it includes latches but still must decode both a port address and a ROM chip.) And that thread seem to confirm it’s a viable plan with only very minor changes to the original circuit, assuming the XTIDE Universal BIOS code works on a Convertible?

(Yes, most computers with XTA are stuck with the driver code in their system BIOS chips. We don’t have that problem here, there is clearly a distinct ROM chip on that adapter card.)

I was *not* talking about some kind of general purpose fudge to put CFs on existing XTA ports with XTA BIOS code.

Edit: * Well, I tried to be clear since I started talking specially about the XTIDE bios, but I’ll endeavor to put a finer point on it when touching third rails.
 
Okay, I think we have been talking past one another. :) To summarize:

The critical thing here is can the device (whatever it might be) perform using an 8-bit data path exclusively. On an XTA drive, the answer is of course, "yes" as it is on the CF drive (part of the spec). So long as you have a sufficient number of address lines, you're good--the rest, as they say, is just software.

Almost every ATA drive made since about 1990 does not have the ability to operate on an 8-bit data path exclusively, which is what makes the XTIDE adapter (multiplexing the data bus) necessary with rotating rust. Of course, it's possible to transfer only half-sectors, ignoring the other half, but then you've got the problem of dealing with 256 byte sectors and having to deal with blocking/deblocking to synthesize 512 byte sectors.
 
Almost every ATA drive made since about 1990 does not have the ability to operate on an 8-bit data path exclusively, which is what makes the XTIDE adapter (multiplexing the data bus) necessary with rotating rust.

That's what makes targeting the XT-CF-Lite support of the XTIDE BIOS so great, the driver work is already done to drive a CF without multiplexing. Forgetting spinning rust support seems like a reasonable trade-off, especially since we're talking about a portable machine here. The XT-CF-Lite boards I churned out for my Plus-bus Tandy 1000s run at over 300KB/s transfer rates (when limited to 8088 code, over 500KB/s with a V20) and work great with a 44 pin laptop IDE->SD card adapter that sells for about $8, so, yeah, who wants a real hard disk?

Sigh. Now I wish I had an IBM Convertible to play with.
 
Related question: Do ATA-interface DOMs support 8-bit mode?

I've been wondering about that myself. I was going through the junk boxes in the garage the other day and I found a laptop 44-pin form-factor DOM that has a weird pass-through style header, I was thinking of trying it on one of my XT-CFs. (And then seeing if I could put a CF card adapter jumpered for slave after it if it worked.) But any results from that may not match up to the ones that come in desktop form factor packages.
 
Back
Top