Katana VentraIP

IBM PC compatible

IBM PC compatible computers are similar to the original IBM PC, XT, and AT, all from computer giant IBM, that are able to use the same software and expansion cards. Such computers were referred to as PC clones, IBM clones or IBM PC clones. The term "IBM PC compatible" is now a historical description only, since IBM no longer sells personal computers after it sold its personal computer division in 2005 to Chinese technology company Lenovo. The designation "PC", as used in much of personal computer history, has not meant "personal computer" generally, but rather an x86 computer capable of running the same software that a contemporary IBM PC could. The term was initially in contrast to the variety of home computer systems available in the early 1980s, such as the Apple II, TRS-80, and Commodore 64. Later, the term was primarily used in contrast to Apple's Macintosh computers.

These "clones" duplicated almost all the significant features of the original IBM PC architectures. This was facilitated by IBM's choice of commodity hardware components, which were cheap, and by various manufacturers' ability to reverse-engineer the BIOS firmware using a "clean room design" technique. Columbia Data Products built the first clone of the IBM personal computer, the MPC 1600[1] by a clean-room reverse-engineered implementation of its BIOS. Other rival companies, Corona Data Systems, Eagle Computer, and the Handwell Corporation were threatened with legal action by IBM, who settled with them. Soon after in 1982, Compaq released the very successful Compaq Portable, also with a clean-room reverse-engineered BIOS, and also not challenged legally by IBM.


Early IBM PC compatibles used the same computer buses as their IBM counterparts, switching from the 8-bit IBM PC and XT bus to the 16-bit IBM AT bus with the release of the AT. IBM's introduction of the proprietary Micro Channel architecture (MCA) in its PS/2 series resulted in the establishment of the Extended Industry Standard Architecture bus open standard by a consortium of IBM PC compatible vendors, redefining the 16-bit IBM AT bus as the Industry Standard Architecture (ISA) bus.[2] Additional bus standards were subsequently adopted to improve compatibility between IBM PC compatibles, including the VESA Local Bus (VLB), Peripheral Component Interconnect (PCI), and the Accelerated Graphics Port (AGP).


Descendants of the x86 IBM PC compatibles, namely 64-bit computers based on "x86-64/AMD64" chips comprise the majority of desktop computers on the market as of 2021, with the dominant operating system being Microsoft Windows. Interoperability with the bus structure and peripherals of the original PC architecture may be limited or non-existent. Many modern computers are unable to use old software or hardware that depends on portions of the IBM PC compatible architecture which are missing or do not have equivalents in modern computers. For example, computers which boot using Unified Extensible Firmware Interface-based firmware that lack a Compatibility Support Module, or CSM, required to emulate the old BIOS-based firmware interface, or have their CSMs disabled, cannot natively run MS-DOS since MS-DOS depends on a BIOS interface to boot.


Only the Macintosh had kept significant market share without having compatibility with the IBM PC, although that changed during the Intel Macs era running Mac OS X, often dual-booting Windows with Boot Camp.

MS-DOS itself did not provide any way to position the text cursor other than to advance it after displaying each letter (). While the BIOS video interface routines were adequate for rudimentary output, they were necessarily less efficient than direct hardware addressing, as they added extra processing; they did not have "string" output, but only character-by-character teletype output, and they inserted delays to prevent CGA hardware "snow" (a display artifact of CGA cards produced when writing directly to screen memory)——an especially bad artifact since they were called by IRQs, thus making multitasking very difficult. A program that wrote directly to video memory could achieve output rates 5 to 20 times faster than making system calls. Turbo Pascal used this technique from its earliest versions.

teletype mode

capability was not taken seriously in the original IBM design brief; graphics were considered only from the perspective of generating static business graphics such as charts and graphs. MS-DOS did not have an API for graphics, and the BIOS only included the rudimentary graphics functions such as changing screen modes and plotting single points. To make a BIOS call for every point drawn or modified increased overhead considerably, making the BIOS interface notoriously slow. Because of this, line-drawing, arc-drawing, and blitting had to be performed by the application to achieve acceptable speed, which was usually done by bypassing the BIOS and accessing video memory directly. Software written to address IBM PC hardware directly would run on any IBM clone, but would have to be rewritten especially for each non-PC-compatible MS-DOS machine.

Graphics

even early ones, mostly required a true graphics mode. They also performed any machine-dependent trick the programmers could think of in order to gain speed. Though initially the major market for the PC was for business applications, games capability became an important factor motivating PC purchases as prices decreased. The availability and quality of games could mean the difference between the purchase of a PC compatible or a different platform with the ability to exchange data like the Amiga.

Video games

Communications software directly accessed the serial port chip, because the MS-DOS API and the BIOS did not provide full support and was too slow to keep up with hardware which could transfer data at 19,200 bit/s.

UART

Even for standard business applications, speed of execution was a significant competitive advantage. Context MBA preceded Lotus 1-2-3 to market and included more functions. Context MBA was written in UCSD p-System, making it very portable but too slow to be truly usable on a PC. 1-2-3 was written in x86 assembly language and performed some machine-dependent tricks. It was so much faster that it quickly surpassed Context MBA's sales.

Integrated software

Disk schemes, in common use at the time, worked by reading nonstandard data patterns on the diskette to verify originality. These patterns were impossible to detect using standard DOS or BIOS calls, so direct access to the disk controller hardware was necessary for the protection to work.

copy-protection

Some software was designed to run only on a true IBM PC, and checked for an actual IBM BIOS.

[13]

Operationally Compatible. Can run "the top selling" IBM PC software, use PC expansion boards, and read and write PC disks. Has "complementary features" like portability or lower price that distinguish computer from the PC, which is sold in the same store. Examples: (Best) Columbia Data Products, Compaq; (Better) Corona; (Good) Eagle.

Functionally Compatible. Runs own version of popular PC software. Cannot use PC expansion boards but can read and write PC disks. Cannot become Operationally Compatible. Example: .

TI Professional

Data Compatible. May not run top PC software. Can read and/or write PC disks. Can become Functionally Compatible. Examples: NCR Decision Mate, , Wang PC, Zenith Z-100.

Olivetti M20

Incompatible. Cannot read PC disks. Can become Data Compatible. Examples: , DEC Rainbow 100, Grid Compass, Victor 9000.

Altos 586

IBM designed the PC with an which permitted clone makers to use freely available non-proprietary components.[48]

open architecture

Microsoft included a clause in its contract with IBM which permitted the sale of the finished PC operating system () to other computer manufacturers. These IBM competitors licensed it, as MS-DOS, in order to offer PC compatibility for less cost.[49]

PC DOS

The 1982 introduction of the MPC 1600, the first 100% IBM PC compatible computer.

Columbia Data Products

The 1983 introduction of the , providing portability unavailable from IBM at the time.

Compaq Portable

An Independent Business Unit (IBU) within IBM developed the IBM PC and XT. IBUs did not share in corporate expense. After the IBU became the Entry Systems Division it lost this benefit, greatly decreasing margins.[50]

R&D

The availability by 1986 of sub-$1,000 "Turbo XT" compatibles, including early offerings from Dell Computer, reducing demand for IBM's models.[51][52] It was possible to buy two of these "generic" systems for less than the cost of one IBM-branded PC AT, and many companies did just that.

PC XT

By integrating more peripherals into the computer itself, compatibles like the Model D have more free slots than the PC.[35]

ISA

Compaq was the first to release an -based computer, almost a year before IBM,[46] with the Compaq Deskpro 386. Bill Gates later said that it was "the first time people started to get a sense that it wasn't just IBM setting the standards".[53]

Intel 80386

IBM's 1987 introduction of the incompatible and proprietary (MCA) computer bus, for its Personal System/2 (PS/2) line.[44]

MicroChannel Architecture

The split of the IBM-Microsoft partnership in development of . Tensions caused by the market success of Windows 3.0 ruptured the joint effort because IBM was committed to the 286's protected mode, which stunted OS/2's technical potential. Windows could take full advantage of the modern and increasingly affordable 386 / 386SX architecture. As well, there were cultural differences between the partners, and Windows was often bundled with new computers while OS/2 was only available for extra cost. The split left IBM the sole steward of OS/2 and it failed to keep pace with Windows.

OS/2

The 1988 introduction by the "Gang of Nine" companies of a rival bus, , intended to compete with, rather than copy, MCA.[44]

Extended Industry Standard Architecture

The duelling (EMS) and extended memory (XMS) standards of the late 1980s, both developed without input from IBM.

expanded memory

In February 1984 Byte wrote that "IBM's burgeoning influence in the PC community is stifling innovation because so many other companies are mimicking Big Blue",[39] but The Economist stated in November 1983, "The main reason why an IBM standard is not worrying is that it can help competition to flourish".[38]


By 1983, IBM had about 25% of sales of personal computers between $1,000 and $10,000, and computers with some PC compatibility were another 25%.[22] As the market and competition grew IBM's influence diminished. In November 1985 PC Magazine stated "Now that it has created the [PC] market, the market doesn't necessarily need IBM for the machines. It may depend on IBM to set standards and to develop higher-performance machines, but IBM had better conform to existing standards so as to not hurt users".[40] In January 1987, Bruce Webster wrote in Byte of rumors that IBM would introduce proprietary personal computers with a proprietary operating system: "Who cares? If IBM does it, they will most likely just isolate themselves from the largest marketplace, in which they really can't compete anymore anyway". The magazine predicted that in 1987 the market "will complete its transition from an IBM standard to an Intel/MS-DOS/expansion bus standard ... Folks aren't so much concerned about IBM compatibility as they are about Lotus 1-2-3 compatibility".[41] By 1992, Macworld stated that because of clones, "IBM lost control of its own market and became a minor player with its own technology".[42]


The Economist predicted in 1983 that "IBM will soon be as much a prisoner of its standards as its competitors are", because "Once enough IBM machines have been bought, IBM cannot make sudden changes in their basic design; what might be useful for shedding competitors would shake off even more customers".[38] After IBM announced the OS/2-oriented PS/2 line in early 1987, sales of existing DOS-compatible PC compatibles rose, in part because the proprietary operating system was not available.[43] In 1988, Gartner Group estimated that the public purchased 1.5 clones for every IBM PC.[44] By 1989 Compaq was so influential that industry executives spoke of "Compaq compatible", with observers stating that customers saw the company as IBM's equal[45] or superior.[46]


After 1987, IBM PC compatibles dominated both the home and business markets of commodity computers,[47] with other notable alternative architectures being used in niche markets, like the Macintosh computers offered by Apple Inc. and used mainly for desktop publishing at the time, the aging 8-bit Commodore 64 which was selling for $150 by this time and became the world's bestselling computer, the 32-bit Commodore Amiga line used for television and video production and the 32-bit Atari ST used by the music industry. However, IBM itself lost the main role in the market for IBM PC compatibles by 1990. A few events in retrospect are important:


Despite popularity of its ThinkPad set of laptop PC's, IBM finally relinquished its role as a consumer PC manufacturer during April 2005, when it sold its laptop and desktop PC divisions (ThinkPad/ThinkCentre) to Lenovo for US$1.75 billion.


As of October 2007, Hewlett-Packard and Dell had the largest shares of the PC market in North America. They were also successful overseas, with Acer, Lenovo, and Toshiba also notable. Worldwide, a huge number of PCs are "white box" systems assembled by myriad local systems builders. Despite advances of computer technology, the IBM PC compatibles remained very much compatible with the original IBM PC computers, although most of the components implement the compatibility in special backward compatibility modes used only during a system boot. It was often more practical to run old software on a modern system using an emulator rather than relying on these features.


In 2014 Lenovo acquired IBM's x86-based server (System x) business for US$2.1 billion.

Expandability[edit]

One of the strengths of the PC compatible design is its modular hardware design. End-users could readily upgrade peripherals and, to some degree, processor and memory without modifying the computer's motherboard or replacing the whole computer, as was the case with many of the microcomputers of the time. However, as processor speed and memory width increased, the limits of the original XT/AT bus design were soon reached, particularly when driving graphics video cards. IBM did introduce an upgraded bus in the IBM PS/2 computer that overcame many of the technical limits of the XT/AT bus, but this was rarely used as the basis for IBM compatible computers since it required license payments to IBM both for the PS/2 bus and any prior AT-bus designs produced by the company seeking a license. This was unpopular with hardware manufacturers and several competing bus standards were developed by consortiums, with more agreeable license terms. Various attempts to standardize the interfaces were made, but in practice, many of these attempts were either flawed or ignored. Even so, there were many expansion options, and despite the confusion of its users, the PC compatible design advanced much faster than other competing designs of the time, even if only because of its market dominance.

"IBM PC compatible" becomes "Wintel"[edit]

During the 1990s, IBM's influence on PC architecture started to decline. "IBM PC compatible" becomes "Standard PC" in 1990s, and later "ACPI PC" in 2000s. An IBM-brand PC became the exception rather than the rule. Instead of placing importance on compatibility with the IBM PC, vendors began to emphasize compatibility with Windows. In 1993, a version of Windows NT was released that could operate on processors other than the x86 set. While it required that applications be recompiled, which most developers did not do, its hardware independence was used for Silicon Graphics (SGI) x86 workstations–thanks to NT's Hardware abstraction layer (HAL), they could operate NT (and its vast application library).


No mass-market personal computer hardware vendor dared to be incompatible with the latest version of Windows, and Microsoft's annual WinHEC conferences provided a setting in which Microsoft could lobby for—and in some cases dictate—the pace and direction of the hardware of the PC industry. Microsoft and Intel had become so important to the ongoing development of PC hardware that industry writers began using the word Wintel to refer to the combined hardware-software system.


This terminology itself is becoming a misnomer, as Intel has lost absolute control over the direction of x86 hardware development with AMD's AMD64. Additionally, non-Windows operating systems like macOS and Linux have established a presence on the x86 architecture.

Design limitations and more compatibility issues[edit]

Although the IBM PC was designed for expandability, the designers could not anticipate the hardware developments of the 1980s, nor the size of the industry they would engender. To make things worse, IBM's choice of the Intel 8088 for the CPU introduced several limitations for developing software for the PC compatible platform. For example, the 8088 processor only had a 20-bit memory addressing space. To expand PCs beyond one megabyte, Lotus, Intel, and Microsoft jointly created expanded memory (EMS), a bank-switching scheme to allow more memory provided by add-in hardware, and accessed by a set of four 16-kilobyte "windows" inside the 20-bit addressing. Later, Intel CPUs had larger address spaces and could directly address 16 MB (80286) or more, causing Microsoft to develop extended memory (XMS) which did not require additional hardware.


"Expanded" and "extended" memory have incompatible interfaces, so anyone writing software that used more than one megabyte had to provide for both systems for the greatest compatibility until MS-DOS began including EMM386, which simulated EMS memory using XMS memory. A protected mode OS can also be written for the 80286, but DOS application compatibility was more difficult than expected, not only because most DOS applications accessed the hardware directly, bypassing BIOS routines intended to ensure compatibility, but also that most BIOS requests were made by the first 32 interrupt vectors, which were marked as "reserved" for protected mode processor exceptions by Intel.


Video cards suffered from their own incompatibilities. There was no standard interface for using higher-resolution SVGA graphics modes supported by later video cards. Each manufacturer developed their own methods of accessing the screen memory, including different mode numberings and different bank switching arrangements. The latter were used to address large images within a single 64 KB segment of memory. Previously, the VGA standard had used planar video memory arrangements to the same effect, but this did not easily extend to the greater color depths and higher resolutions offered by SVGA adapters. An attempt at creating a standard named VESA BIOS Extensions (VBE) was made, but not all manufacturers used it.


When the 386 was introduced, again a protected mode OS could be written for it. This time, DOS compatibility was much easier because of virtual 8086 mode. Unfortunately programs could not switch directly between them, so eventually, some new memory-model APIs were developed, VCPI and DPMI, the latter becoming the most popular.


Because of the great number of third-party adapters and no standard for them, programming the PC could be difficult. Professional developers would operate a large test-suite of various known-to-be-popular hardware combinations.


Meanwhile, consumers were overwhelmed by the competing, incompatible standards and many different combinations of hardware on offer. To give them some idea of what sort of PC they would need to operate their software, the Multimedia PC (MPC) standard was set during 1990. A PC that met the minimum MPC standard could be marketed with the MPC logo, giving consumers an easy-to-understand specification to look for. Software that could operate on the most minimally MPC-compliant PC would be guaranteed to operate on any MPC. The MPC level 2 and MPC level 3 standards were set later, but the term "MPC compliant" never became popular. After MPC level 3 during 1996, no further MPC standards were established.

Challenges to Wintel domination[edit]

By the late 1990s, the success of Microsoft Windows had driven rival commercial operating systems into near-extinction, and had ensured that the "IBM PC compatible" computer was the dominant computing platform. This meant that if a developer made their software only for the Wintel platform, they would still be able to reach the vast majority of computer users. The only major competitor to Windows with more than a few percentage points of market share was Apple Inc.'s Macintosh. The Mac started out billed as "the computer for the rest of us", but high prices and closed architecture drove the Macintosh into an education and desktop publishing niche, from which it only emerged in the mid-2000s. By the mid-1990s the Mac's market share had dwindled to around 5% and introducing a new rival operating system had become too risky a commercial venture. Experience had shown that even if an operating system was technically superior to Windows, it would be a failure in the market (BeOS and OS/2 for example). In 1989, Steve Jobs said of his new NeXT system, "It will either be the last new hardware platform to succeed, or the first to fail." Four years later in 1993, NeXT announced it was ending production of the NeXTcube and porting NeXTSTEP to Intel processors.


Very early on in PC history, some companies introduced their own XT-compatible chipsets. For example, Chips and Technologies introduced their 82C100 XT Controller which integrated and replaced six of the original XT circuits: one 8237 DMA controller, one 8253 interrupt timer, one 8255 parallel interface controller, one 8259 interrupt controller, one 8284 clock generator, and one 8288 bus controller. Similar non-Intel chipsets appeared for the AT-compatibles, for example OPTi's 82C206 or 82C495XLC which were found in many 486 and early Pentium systems.[54] The x86 chipset market was very volatile though. In 1993, VLSI Technology had become the dominant market player only to be virtually wiped out by Intel a year later. Intel has been the uncontested leader ever since.[55] As the "Wintel" platform gained dominance Intel gradually abandoned the practice of licensing its technologies to other chipset makers; in 2010 Intel was involved in litigation related to their refusal to license their processor bus and related technologies to other companies like Nvidia.[56]


Companies such as AMD and Cyrix developed alternative x86 CPUs that were functionally compatible with Intel's. Towards the end of the 1990s, AMD was taking an increasing share of the CPU market for PCs. AMD even ended up playing a significant role in directing the development of the x86 platform when its Athlon line of processors continued to develop the classic x86 architecture as Intel deviated with its NetBurst architecture for the Pentium 4 CPUs and the IA-64 architecture for the Itanium set of server CPUs. AMD developed AMD64, the first major extension not created by Intel, which Intel later adopted as x86-64. During 2006 Intel began abandoning NetBurst with the release of their set of "Core" processors that represented a development of the earlier Pentium III.


A major alternative to Wintel domination is the rise of alternative operating systems since the early 2000s, which marked as the start of the post-PC era. This would include both the rapid growth of the smart phone (using Android or iOS) as an alternative to the personal computer; and the increasing prevalence of Linux and Unix-like operating systems in the server farms of large corporations such as Google or Amazon.

AT (form factor)

ATX form factor

form factor

Baby AT

BIOS

History of computing hardware (1960s–present)

Homebuilt computer

Influence of the IBM PC on the personal computer market

PC speaker

Personal computer

x86

MS-DOS

CP/M

- successor released by IBM that did not succeed, but many of its elements have been adopted by industry

PS/2

- competing standard

PC-9800 series

Common Hardware Reference Platform - competing standard for PowerPC

PowerPC Reference Platform

(Unified Extensible Firmware Interface)

UEFI