The system requirements for many software packages for DOS specify an "IBM PC or 100% compatible". Why "100% compatible"? Were there systems at the time that had only partial IBM PC compatibility?


As David Schwartz points out in his answer, it was mostly used as a cop-out for any problems you had with software running on a non-IBM "PC". Since IBM PC's were more expensive than the many "PC Clones", they were NOT what the general populace was buying, so they really only had to fully support people with IBM's (usually companies with money. ;) )

In addition to that, there was the fact that not all "PC Clones" of that era (early-mid 80's) were 100% compatible hardware-wise. This mostly became a problem for software that was using Assembly to directly access hardware addresses, CPU registers, (etc.) that were standard on the original IBM PC, but may not be implemented identically in the "clone".

From Wikipedia's entry on "IBM PC Compatible" computers:

The original "clones" of the IBM Personal Computer were created without IBM's participation or approval. Columbia closely modeled the IBM PC and produced the first "compatible" PC (i.e., more or less compatible to the IBM PC standard) in June 1982 closely followed by Eagle Computer. Compaq Computer Corp. announced its first IBM PC compatible a few months later in November 1982—the Compaq Portable. The Compaq was the first sewing machine-sized portable computer that was essentially 100% PC-compatible. The company could not directly copy the BIOS as a result of the court decision in Apple v. Franklin, but it could reverse-engineer the IBM BIOS and then write its own BIOS using clean room design.

At the same time, many manufacturers such as Xerox, HP, Digital, Sanyo, Texas Instruments, Tulip, Wang and Olivetti introduced personal computers that were MS DOS compatible, but not completely software- or hardware-compatible with the IBM PC.

  • 1
    Yes, that's a good point. It indicated that mere MS-DOS compatibility would not be enough. – David Schwartz Dec 6 '11 at 0:39
  • 1
    Plus, it's a reason why Microsoft's push to a "New Technology" OS with an abstracted hardware layer was (gasp) a good one (in theory anyway). ;) – Ƭᴇcʜιᴇ007 Dec 6 '11 at 1:36
  • @techie007, had it not been for the HAL, far more effort would be required to port Windows 8 to ARM. – bwDraco Dec 6 '11 at 2:15
  • 1
    Yea, back in the early days of MS-DOS, MS shipped an OEM Adaptation Kit for MS-DOS to OEMs that allowed vendors to customize IO.SYS for their hardware. In fact, MS did not create a packaged product version for IBM compatibles until version 3.2. – Yuhong Bao Jan 7 '12 at 4:24

The idea was simply that this meant the software developer was never at fault. If it didn't work on your computer, then they could simply say that since it worked on an IBM PC and didn't work on your computer, it must be your computer's fault since they said they required a 100% compatible computer.

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.