Difference between revisions of "Intel CPUs"
(→Emulators) |
(→Emulators) |
||
Line 54: | Line 54: | ||
|align=left|{{Icon|Windows|Linux|FreeBSD|BeOS|OS2|AmigaOS|MorphOS}} | |align=left|{{Icon|Windows|Linux|FreeBSD|BeOS|OS2|AmigaOS|MorphOS}} | ||
|[https://sourceforge.net/projects/bochs/files/bochs {{BochsVer}}] | |[https://sourceforge.net/projects/bochs/files/bochs {{BochsVer}}] | ||
− | |{{✗}} ||{{✗}} ||{{✓}} ||{{✓}} ||{{✓}} ||{{✓}} ||{{✓}} ||{{✓}} ||{{✓}} ||{{✓}} ||{{✗}} ||{{✗}} | + | |{{✗}} ||{{✗}} ||{{✓}} ||{{✓}} ||{{✓}}<ref group=N name=BochsCPUID>[https://bochs.sourceforge.io/doc/docbook/user/cpu-models.html If Bochs is compiled with cpu level 5 or higher the CPUID opcode is supported and it can return some information about the cpu model and it's features. When using a pre-defined CPU model in Bochs the features reported by CPUID are set up according to the model's specification. The following table shows all available CPU models with a short description. The amount of choices depends on the CPU features enabled at compile time.]</ref> ||{{✓}}<ref group=N name=BochsCPUID></ref> ||{{✓}}<ref group=N name=BochsCPUID></ref> ||{{✓}}<ref group=N name=BochsCPUID></ref> ||{{✓}}<ref group=N name=BochsCPUID></ref> ||{{✓}} ||{{✗}} ||{{✗}} |
|- | |- | ||
|[https://www.pcjs.org/ PCjs] | |[https://www.pcjs.org/ PCjs] |
Revision as of 20:07, 9 February 2023
The PC platform is an open architecture system that IBM initially designed in 1980. IBM's PC 5150 is the progenitor (though in no way representative of iterative designs like the desktops and laptops you may be familiar with today). The massive success of the PC architecture prompted Intel to iterate on its x86 processors, which is why this page is called Intel CPUs.
The history of the PC is comprehensive, but a good summary is that almost every component of the 5150 was off-the-shelf. IBM hoped that if clones popped up, they could sue them for using the firmware in the BIOS, which they had copyright over as established by a lawsuit between Apple and Franklin.[1] However, Phoenix designed a clean-room replacement firmware based solely on IBM's own public documentation.[2] As a result, IBM never challenged clones that used it and promptly lost control over the platform. Intel would later take up the next major iteration in 1995, called ATX.
Sometime in the 90s, a speedup was found in PC emulation that could run software near-natively; this became the basis for hypervisors, which are different from conventional emulators listed here since they require the host architecture to be at the very least x86-compatible.
Contents
Emulators
Name | Platform(s) | Latest version | 8086*¹ | 286 | 386*² | 486*³ | Pentium*⁴ | Pentium II*⁵ | Celeron*⁶ | Pentium III*⁷ | Pentium 4*⁸ | FLOSS | Active | Recommended | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
PC / x86 | |||||||||||||||
86Box | ![]() ![]() ![]() |
Dev 4.1.1 git (PCBox) |
✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ~[N 1] | ~[N 1] | ✓ | ✓ | ✓ | |
PCem | ![]() ![]() ![]() |
v17 git git (macos) |
✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✗ | ✗ | ✓ | ✓ | ✓ | |
DOSBox | ![]() ![]() ![]() ![]() |
2024.03.01 (DOSBox-X) 0.80.1 (DOSBox Staging) 0.74-3 |
~[N 2] | ✓ | ✓ | ~[N 2] | ~[N 2] | ~[N 2] | ✗ | ~[N 3] | ✗ | ✓ | ~[N 4] | ✓ | |
UniPCemu | ![]() |
itch.io | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✗ | ✗ | ✗ | ✓ | ✓ | TBD | |
VARCem | ![]() ![]() ![]() |
Builds | ✓ | ✓ | ✓ | ✓ | ✓ | ~ | ✗ | ✗ | ✗ | ✓ | ✗ | ✗ | |
Bochs | ![]() ![]() ![]() ![]() ![]() ![]() |
2.8 | ✗ | ✗ | ✓ | ✓ | ✓[N 5] | ✓[N 5] | ✓[N 5] | ✓[N 5] | ✓[N 5] | ✓ | ✗ | ✗ | |
PCjs | ![]() |
git | ✓ | ✓ | ✓ | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | ✓ | ✓ | ✗ | |
MAME | ![]() ![]() ![]() ![]() |
0.265 | ✓ | ✓ | ✓ | ✓ | ~ | ~ | ~ | ~ | ~ | ✓ | ✓ | ✗ | |
QEMU | ![]() ![]() ![]() |
9.0.0 | ✗ | ✗ | ✗ | ✓ | ✓ | ✓ | ✓[N 6] | ✓ | ✗ | ✓ | ✓ | ✗ | |
Mobile / ARM | |||||||||||||||
Magic DOSBox | ![]() |
1.0.84 | ✗ | ✓ | ✓ | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | ✓ | ✓ | |
UniPCemu | ![]() |
itch.io | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✗ | ✗ | ✗ | ✓ | ✓ | TBD | |
Limbo | ![]() ![]() |
6.0.1 WinMobile build |
✗ | ✗ | ✗ | ✓ | ✓ | ✓ | ✓[N 6] | ✓ | ✗ | ✓ | ✓ | ✗ | |
Bochs | ![]() |
2.6.11 git |
✗ | ✗ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✗ | |
DOSBox Turbo | ![]() |
2.2.0 | ✗ | ✓ | ✓ | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | |
gDOSBox | ![]() |
0.7.5.5 | ✗ | ✓ | ✓ | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | |
aDOSBox | ![]() |
0.2.5 | ✗ | ✓ | ✓ | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | ✓ | ✗ | ✗ | |
DOSBoxPPC | ![]() |
0.63 | ✗ | ✓ | ✓ | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | |
Consoles | |||||||||||||||
UniPCemu | ![]() ![]() ![]() |
itch.io | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✗ | ✗ | ✗ | ✓ | ✓ | TBD | |
Bochs | ![]() |
2.3.5 | ✗ | ✗ | ✓ | ✓ | ✓ | ? | ? | ✗ | ✗ | ✓ | ✗ | ✗ |
*¹8086 emulation includes the 8088 CPU. *²386 emulation includes the SX and SL. *³486 emulation includes variants. *⁴Pentium emulation includes variants. *⁵Pentium II emulation includes variants. *⁶Celeron emulation includes variants. *⁷Pentium III emulation includes variants. *⁸Pentium 4 emulation includes variants.
- ↑ 1.0 1.1 Exclusive to PCBox emulator. 86Box: Why Not Pentium III?
- ↑ 2.0 2.1 2.2 2.3 Available exclusively on DOSBox-X and DOSBox Staging.
- ↑ Available exclusively on DOSBox-X.
- ↑ DOSBox-X and DOSBox Staging forks are still active.
- ↑ 5.0 5.1 5.2 5.3 5.4 If Bochs is compiled with cpu level 5 or higher the CPUID opcode is supported and it can return some information about the cpu model and it's features. When using a pre-defined CPU model in Bochs the features reported by CPUID are set up according to the model's specification. The following table shows all available CPU models with a short description. The amount of choices depends on the CPU features enabled at compile time.
- ↑ 6.0 6.1 Supports the Conroe model.
Notes
- DOSBox-X
- The Git readme file (Under the Comments on what DOSBox-X is lacking) for DOSBox-X states that "DOSBox-X contains code only to emulate the 8088 through the Pentium Pro. If Pentium II or higher emulation is desired, consider using Bochs or QEMU instead. DOSBox-X may eventually develop Pentium II emulation..." if the user demand is there.
- MAME
- The emulation of various CPU types seen here regarding MAME are all over the place in the changelogs and seem confusing. However, MAME has preliminary support for the families of 286, 386/i386, 486/i486, and almost the entire range of Pentium CPUs. However, the color, sound, and graphics emulation for various CPUs and PCs based on the 286/386/486 architecture is acceptable. According to ProjectMESS, many IBM PC/AT 5170 family PCs running the 286 CPU have preliminary support. MAME 0.146u3 (Jul 2012) added CPU types for Pentium MMX, Pentium Pro, Pentium II, Pentium III, and Pentium 4.
- - MAME compat list showing the sector for several IBM-type PC systems - most of which may work fine.
- - wiki.mamedev.org's search results for Pentium (e.g. 0.100u4, 0.103u4, 0.146u3, 0.148, 0.152, 0.156)
- - wiki.mamedev.org's list for MACHINE_NOT_WORKING (Few systems based on a Pentium CPU)
- - wiki.mamedev.org's list for MACHINE_IS_SKELETON drivers (Several PCs/systems based on a Pentium CPU)
- PCem
- As of June 14, 2021, PCem's original developer, Sarah Walker, has stopped working on the project. It has now been taken over on December 18, 2021, by a new maintainer, Michael Manley. 86Box is a fork of PCem, while PCBox and VARCem are forks of 86Box, with PCBox being the most fully-featured of the four.
- Bochs
- A full x86 PC emulator with a focus on accuracy, that is typically used to develop and test operating systems and other low-level software. Its lack of proper timing emulation makes it not useful for anything pre-Pentium, and it is often too slow for newer systems to be playable. It is thus not recommended to use Bochs for gaming.
CPUs
The 8086 CPU was released on June 8, 1978, at 5 MHz and had a max clock speed of 10 MHz.
After the original launch, Intel released the 8086-1, which had a clock speed of 10MHz.
In May/June of 1980, the 8086-2 at 8 MHz was released.
The 8086-4 CPU came after the 8086-2 CPU, completely skipping 8086-3; it was clocked at 4 MHz.
The last 8086 CPU released was the I8086 in May/June of 1980.
The 8088 CPU was released on July 1, 1979, and had a default clock speed of 4.77 MHz and a max clock speed of 10 MHz.
The 286 CPU was released on February 1, 1982, with a clock speed of 4 MHz, but it soon changed to 6 MHz. After that, it had a max clock speed of 25 MHz.
The 386DX CPU was released in October of 1985 with a clock speed of 12 MHz. The max clock speed was 33 MHz. The 386DX was supposed to be introduced at 16 MHz, but they had to settle for 12 MHz for technical reasons.
The 386SX was released in 1988 and was intended for lower-cost home PCs. It has the same clock speeds as the 386DX.
The i386SL was released for use in portable computers and had a clock speed of 20 MHz. Its max clock speed is 25 MHz.
Full list of i486 CPUs
The i486DX CPU was released in 1989 and had a minimum clock speed of 20 MHz and a max clock speed of 50 MHz.
The i486SX CPU was released in September of 1991 and had a clock speed of 16 MHz. It has a max clock speed of 33 MHz.
The i486DX2 CPU was released in March of '92 and had a clock speed of 40/20 MHz. It had a max clock speed of 66/33 MHz.
The i486SL CPU was released in November of 1992 and was used for portable computers. It had a minimum clock speed of 20 MHz and a max clock speed of 33 MHz.
The i486DX2 CPU was released in June of '93 and had a clock speed of 33 MHz. Its max speed is 55 MHz.
The i486DX2-S CPU was released in June of '93 and had a clock speed of 40/20 MHz and later had a clock speed of 66/33 MHz.
The i486SX-S CPU was released in June of '93 and had a clock speed of 25 MHz. Its max clock speed was 33 MHz.
The i486SX2 was released in March of 1994 and had a clock speed of 50/25 MHz. It had a max of 66/33 MHz.
The IntelDX4 CPU was released in March of '94 and had a whopping clock speed of 75/25 MHz. It even had a more blazing clock speed of 100/33 MHz.
The i486DX2WB CPU was released in October of '94 and had a clock speed of 50/25 MHz. It also eventually had a clock speed of 66/33 MHz.
The IntelDX4WB CPU was released in October of '94 and had a whopping clock speed of 100/33 MHz.
The i486DX (P24LM) CPU was released in 1994 and had a clock speed of 90/30 MHz. Its highest clock speed is 100/33 MHz.
The i486GX CPU was released in 1994 and had a clock speed up to 33 MHz. The reason for this is for smaller portable computers.
The i486 Overdrive CPUs were meant to upgrade computers and had a clock speed of 40 MHz. It had a max clock speed of 100 MHz.
Full list of Pentium CPUs
The Pentium 50 CPU was released on March 22, 1993, and had a clock speed of 50 MHz, as the name "Pentium 50" hints.
The Pentium 60 CPU was released simultaneously as the Pentium 50 was and had a clock speed of 60 MHz.
The Pentium 66 CPU was released simultaneously as the Pentium 50 and 60. However, it had a clock speed of 67 MHz and not 66.
The Pentium 75 CPU was released on October 10, 1994, and was clocked at 75 MHz.
The Pentium 90 CPU was released on March 7, 1994, and had a clock speed of 90 MHz.
The Pentium 100 CPU was released on March 7, 1994, and had a clock speed of 100 MHz.
The Embedded Pentium 100 was released for computers that were not meant to have different components and were clocked at 100 MHz.
The Pentium 120 was released on March 27, 1995, and had a clock speed of 120 MHz.
The Pentium 133 CPU was released on June 1, 1995, and had a clock speed of 133 MHz.
The Pentium 150 CPU was released on January 4, 1996, and had a clock speed of 150 MHz.
As the name implies, the Pentium 166 CPU was released on January 4, 1996, and had a clock speed of 167 MHz and not 166.
The Pentium 200 CPU was released on June 10, 1996, and had a clock speed of 200.
The Embedded Pentium 133 CPU was released for computers that were not supposed to have changeable components. It had a clock speed of 133 MHz.
It is identical with the Embedded Pentium 133 but with VRE.
The Embedded Pentium 166 CPU was released for computers with non-changeable parts.
Full list of Pentium MMX CPUs
The Pentium MMX 166 was released on January 8, 1997, and had a clock speed of 167 MHz.
The Pentium MMX 200 was released on January 8, 1997, and had a clock speed of 200 MHz.
The Pentium MMX 233 CPU was released on June 2, 1997, and had a clock speed of 233 MHz.
The Embedded Pentium MMX 200 CPU was released on September 29, 1997, and had a clock speed of 200 MHz. It was for computers with non-removable components.
The Embedded Pentium MMX 233 CPU was released for computers with non-removable parts. It had a clock speed of 233 MHz.
Full list of Pentium Pro CPUs
The Pentium Pro 150 CPU was released on November 1, 1995, and had a clock speed of 150 MHz.
The Pentium Pro 166 CPU was released on November 1, 1995, and had a clock speed of 167 MHz.
The Pentium Pro 180 CPU was released on November 1, 1995, and had a clock speed of 180 MHz.
The Pentium Pro 200 CPU was released on November 1, 1995, and had a clock speed of 200 MHz.
Full list of Pentium II CPUs
The Pentium II 233 CPU was released on May 7, 1997, and had a clock speed of 233 MHz.
The Pentium II 266 CPU was released on May 7, 1997, and had a clock speed of 167 MHz.
The Pentium II 300 CPU was released on May 7, 1997, and had a clock speed of 300 MHz.
The Pentium II 333 CPU was released on January 26, 1998, and had a clock speed of 333 MHz.
The Pentium II Overdrive was an upgrade for computers with weaker CPUs. It was released on August 10, 1998. It had a clock speed of 333 MHz, the same as the Pentium II 333.
The Pentium II 350 was released on April 15, 1998, and had a clock speed of 350 MHz.
The Pentium II 400 was released on April 15, 1998, and had a clock speed of 400 MHz.
The Pentium II 450 was released on August 24, 1998, and had a clock speed of 450 MHz.
The Mobile Pentium II 233 was released on April 2, 1998, and had a clock speed of 233 MHz.
The Mobile Pentium II 266 was released on April 2, 1998, and had a clock speed of 266 MHz.
The Mobile Pentium II 300 CPU was released on September 9, 1998, and had a clock speed of 300 MHz.
The Mobile Pentium II 266PE was released on January 9, 1999, and had a clock speed of 267 MHz.
The Mobile Pentium II 300PE was released on January 25, 1999, and had a clock speed of 300 MHz.
The Mobile Pentium II 333 was released on January 25, 1999, and had a clock speed of 333 MHz.
The Mobile Pentium II 366 was released on January 25, 1999, and had a clock speed of 367 MHz.
The Mobile Pentium II 400 CPU was released on June 14, 1999, and had a clock speed of 400 MHz.
Full list of Celeron CPUs
The Celeron 266 CPU was released on April 15, 1998, and had a clock speed of 266 MHz.
The Celeron 300 CPU was released on June 8, 1998, and had a clock speed of 300 MHz.
The Celeron 300A CPU was released on August 24, 1998, and had a clock speed of 300 MHz.
The Celeron 333 CPU was released on August 24, 1998, and had a clock speed of 333 MHz.
The Celeron 366 CPU was released on January 4, 1999, and had a clock speed of 366 MHz.
The Celeron 400 CPU was released on January 4, 1999, and had a clock speed of 400 MHz.
The Celeron 433 CPU was released on March 22, 1999, and had a clock speed of 433 MHz.
The Celeron 466 CPU was released on April 26, 1999, and had a clock speed of 466 MHz.
The Celeron 500 CPU was released on August 2, 1999, and had a clock speed of 500 MHz.
The Celeron 533 CPU was released on January 4, 2000, and had a clock speed of 533 MHz.
References
- ↑ Apple v. Franklin. (1983)
- ↑ Phoenix Says Its BIOS May Foil IBM's Lawsuits. PC Mag. 1984.
External links
- IBM Personal Computer at TVTropes.
- Windows 8 build 7700 Info about the earliest Windows build to be unbootable in 86Box.