PC Emulator Comparisons
Jump to navigation
Jump to search
This page compares emulators of PC hardware against each other and shows what they can and can't do
- For software that can run hardware features designed for PC-9800 system, see NEC PC-9800 series#Hardware features and peripherals.
Contents
Enhancements
Side note: Please don't bump/spam GitHub threads/issues and feature request pages.
Name | 86Box | PCem | PCBox | DOSBox Pure | DOSBox-X | DOSBox Staging | MartyPC | UniPCemu | MAME | |
---|---|---|---|---|---|---|---|---|---|---|
Performance | Preload optical disc image to RAM For users with sluggish multi-platter HDDs or plagued by horrible seek times, this enhancement might offer smoother experience, potentially reduced power consumption; it also shines when disc images reside on a network drive. Although keep in mind that preloading image would take some time, and it will require additional amount of RAM capacity. |
? | ? | ? | ? | ? | ? | ? | ? | ? |
Overclock Overclocking DRAM timings or CPU core frequency and CPU ring ratio using emulated BIOS just like using the real hardware. |
✓ | ? | ? | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | |
Post-Processing | Post-rendering AA (FXAA, TXAA and MLAA/SMAA) |
? | ? | ? | ✓ | ? | ? | ? | ? | ? |
Post-rendering scaling (Sharp bilinear, Lanczos and FSR 1) |
? | ? | ? | ✓ | ? | ? | ? | ? | ? | |
Filters NTSC filters, HDR tonemapping etc. |
✓ | ✓ | ? | ✓ | ? | ✓ | ? | ? | ✓ | |
Shader Chain | ✗ | ✗ | ? | ✓ | ✗ | ✗ | ✗ | ✗ | ✓ | |
TAS features | Macros/Scripts/Lua | ? | ? | ? | ? | ? | ? | ? | ? | ? |
Rewind | ✗ | ✗ | ? | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | |
Fast-Forward/Turbo Speed | ✗ | ✗ | ? | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | |
Savestates | ✗ | ✗ | ? | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | |
Movie recording/playback | ✗ | ✗ | ? | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | |
Controls | Input lag-mitigating technique | ✗ | ✗ | ? | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ |
Quality of life | Built-in Custom resolution/CRTSwitchRes For using this on Windows OS you need CRT Emudriver. Another option is using EDID editor tool such as "Custom Resolution Utility". |
Exclusive to libretro cores and GroovyMAME at the moment. | ||||||||
Streamable compression format | ✓ | ✓ | ? | ✓ | ✓ | ✓ | ? | ? | ✓ | |
Command Line Options | ✓ | ✓ | ? | ✓ | ✓ | ✓ | ? | ? | ✓ | |
On-Screen Display Showcases messages, controller input state which is useful for speedrunners, performance data, active settings, and various notifications. |
? | ? | ? | ✓ | ? | ? | ? | ? | ? | |
Big Picture Mode | ✗ | ✗ | ? | ✓ | ✗ | ✗ | ✗ | ✗ | ✓ | |
Misc | RetroAchievements | ✗ | ✗ | ? | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ |
EmuVR support | Exclusive to libretro cores at the moment, this means that only DOSBox Pure supported. (Demonstration) | |||||||||
Debug Features | ? | ? | ? | ? | ? | ? | ? | ? | ? |
Hardware support, features and peripherals
Side note: Please don't bump/spam GitHub threads/issues and feature request pages. This list only includes parts and accessories that can be possible to emulated through software or will be possible in the near future. Including everything would result in an endless list.
x86 CPU's
Name | 86Box | PCem | PCBox | DOSBox Pure | DOSBox-X | DOSBox Staging | MartyPC | UniPCemu | MAME | |
---|---|---|---|---|---|---|---|---|---|---|
AMD | ||||||||||
Am286 | ✗ | ✓ | ? | ? | ? | ? | ? | ? | ? | |
Am386 | ✓ | ✓ | ? | ? | ? | ? | ? | ? | ? | |
Am486 | ? | ? | ? | ? | ? | ? | ? | ? | ? | |
Am5x86 | ✓ | ✓ | ? | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | |
K5 | ✓ | ✓ | ? | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | |
K6 | ✓ | ✓ | ? | ✗ | ✗ | ✗ | ✗ | ✗ | ? | |
K6-II | ✓ | ✓ | ? | ✗ | ✗ | ✗ | ✗ | ✗ | ? | |
K6-III K6-III+ K6-2+ |
✓ | ✓ | ? | ✗ | ✗ | ✗ | ✗ | ✗ | ? | |
Athlon Classic | ✗[N3 1] | ✗[N3 1] | ? | ~[N3 2] | ~[N3 2] | ~[N3 2] | ✗ | ✗ | ? | |
Centaur Technology | ||||||||||
Winchip C6 | ? | ✓ | ? | ? | ? | ? | ? | ? | ? | |
Winchip 2 | ✓ | ✓ | ? | ? | ? | ? | ? | ? | ? | |
Winchip 2A | ✓ | ✓ | ? | ? | ? | ? | ? | ? | ? | |
Winchip 2B | ✗ | ✗ | ? | ? | ? | ? | ? | ? | ? | |
Winchip 3 | ✗ | ✗ | ? | ? | ? | ? | ? | ? | ? | |
Cyrix | ||||||||||
Cx486SLC | ✓ | ? | ? | ? | ? | ? | ? | ? | ? | |
Cx486SRx2 | ✓ | ? | ? | ? | ? | ? | ? | ? | ? | |
Cx486DLC | ✓ | ? | ? | ? | ? | ? | ? | ? | ? | |
Cx486DRx2 | ✓ | ? | ? | ? | ? | ? | ? | ? | ? | |
Cx486 | ✓ | ? | ? | ? | ? | ? | ? | ? | ? | |
5x86 | ✓ | ✓ | ? | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | |
MediaGX | ✗ | ✗ | ? | ? | ? | ? | ? | ? | ? | |
6x86 | ✓ | ✓ | ? | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | |
Cyrix III | ✓ | ✓ | ? | ✗ | ✗ | ✗ | ✗ | ? | ✗ | |
Intel | ||||||||||
8086 | ✓ | ✓ | ? | ~[N3 2] | ~[N3 2] | ~[N3 2] | ✓ | ✓ | ✓* | |
80286 | ✓ | ✓ | ? | ~[N3 2] | ~[N3 2] | ~[N3 2] | ✗[N3 3] | ✓ | ✓* | |
386 | ✓ | ✓ | ? | ~[N3 2] | ~[N3 2] | ~[N3 2] | ✗[N3 3] | ✓ | ✓* | |
RapidCAD | ✓ | ✓ | ? | ~[N3 2] | ~[N3 2] | ~[N3 2] | ✗[N3 3] | ✓ | ✓* | |
Pentium Pentium MMX |
✓ | ✓ | ? | ~[N3 2] | ~[N3 2] | ~[N3 2] | ✗ | ✓ | ~[N3 4] | |
Pentium Pro | ✓ | ✓ | ? | ✗* | ✗ | ✗ | ✗ | ✓ | ~[N3 4] | |
Pentium II | ✓ | ✓ | ? | ~[N3 2] | ~[N3 2] | ~[N3 2] | ✗ | ✓ | ~[N3 4] | |
Celeron (P6) | ✓ | ✓ | ? | ✗ | ✗ | ✗ | ✗ | ? | ✗ | |
Pentium III | ✗[N3 1] | ✗[N3 1] | ? | ~[N3 2] | ~[N3 2] | ✗ | ✗ | ✗ | ~[N3 4] | |
NEC | ||||||||||
V20 | ✓ | ✗ | ? | ? | ? | ? | ? | ? | ? | |
V30 | ✓ | ✗ | ? | ? | ? | ? | ? | ? | ? | |
V40 | ✗ | ✗ | ? | ? | ? | ? | ? | ? | ? | |
V50 | ✗ | ✗ | ? | ? | ? | ? | ? | ? | ? | |
Transmeta | ||||||||||
Crusoe | ✗ | ✗ | ? | ? | ? | ? | ? | ? | ? | |
Efficeon | ✗ | ✗ | ? | ? | ? | ? | ? | ? | ? | |
VIA Technologies | ||||||||||
VIA C3 | ✗ | ✗ | ? | ? | ? | ? | ? | ? | ? | |
VIA C7 | ✗ | ✗ | ? | ? | ? | ? | ? | ? | ? | |
VIA CoreFusion | ✗ | ✗ | ? | ? | ? | ? | ? | ? | ? | |
VIA Eden | ✗ | ✗ | ? | ? | ? | ? | ? | ? | ? |
Miscellaneous x86 CPU's
Name | Manufacturer | 86Box | PCem | PCBox | DOSBox Pure | DOSBox-X | DOSBox Staging | MartyPC | UniPCemu | MAME | |
---|---|---|---|---|---|---|---|---|---|---|---|
Green CPU | UMC | ✗ | ✗ | ? | ? | ? | ? | ? | ? | ? | |
K1810VM86 | ? | ✗ | ✗ | ? | ? | ? | ? | ? | ? | ? | |
mP6 | Rise Technology | ✗ | ✗ | ? | ? | ? | ? | ? | ? | ? | |
Nx586 | NexGen | ✗ | ✗ | ? | ? | ? | ? | ? | ? | ? | |
Super386 | C&T | ✗ | ✗ | ? | ? | ? | ? | ? | ? | ? |
Graphics Cards & GPU's
Name | 86Box | PCem | PCBox | DOSBox Pure | DOSBox-X | DOSBox Staging | MartyPC | UniPCemu | MAME | |
---|---|---|---|---|---|---|---|---|---|---|
PC-FX GA Unlike PC-9800 variant, this DOS/V variant[1] uses a single ISA card and both variants integrate an additional 3D chipset (Kubota/Hudson HuC6273) over the regular PC-FX. |
? | ? | ? | ? | ? | ? | ✗ | ? | ? | |
Matrox Impression Plus Impression emulation is crucial for RenderWare 3D accelerated games[2] compatibility and preservation. |
? | ? | ? | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | |
Matrox Millennium and Millennium II Millennium emulation is crucial for supported 3D accelerated games[3] with enhanced visuals and preservation. |
✓* | ? | ? | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | |
Matrox Mystique Mystique emulation is crucial for supported MSI API 3D accelerated games[4] compatibility and preservation. |
✓* | ? | ? | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | |
3Dfx Voodoo Voodoo emulation is crucial for Windows Glide and DOS Glide games compatibility and preservation. |
✓ | ✓ | ? | ✓ | ✓ | ✓* | ✗ | ✗ | ? | |
3Dfx Voodoo 2/3/Banshee | ✓ | ✓ | ? | ✗ | ✗ | ✗* | ✗ | ✗ | ? | |
3Dfx Voodoo 4/5 It's quite possible to run early XP 3D games thanks to it's performance and also compatibility with D3D7[5][6] (pushing T&L to CPU via driver).[7][8] |
✗* | ✗* | ? | ✗* | ✗ | ✗* | ✗ | ✗ | ? | |
Diamond Edge 3D/nVidia NV1 NV1 emulation is crucial for NV1 3D accelerated games[9][10] compatibility and preservation. |
✗* | ✗* | ? | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ |
Sound Cards
Name | 86Box | PCem | PCBox | DOSBox Pure | DOSBox-X | DOSBox Staging | MartyPC | UniPCemu | MAME | |
---|---|---|---|---|---|---|---|---|---|---|
? | ? | ? | ? | ? | ? | ? | ? | ? |
Network Cards
Name | 86Box | PCem | PCBox | DOSBox Pure | DOSBox-X | DOSBox Staging | MartyPC | UniPCemu | MAME | |
---|---|---|---|---|---|---|---|---|---|---|
? | ? | ? | ? | ? | ? | ? | ? | ? |
Mainboards
Name | 86Box | PCem | PCBox | DOSBox Pure | DOSBox-X | DOSBox Staging | MartyPC | UniPCemu | MAME | |
---|---|---|---|---|---|---|---|---|---|---|
440BX | ABit AB-BF6 | ✓ | ? | ? | ✗ | ✗ | ✗ | ? | ? | ? |
ABit AB-BH6 | ? | ? | ? | ✗ | ✗ | ✗ | ? | ? | ? | |
ABit AB-BP6 | ? | ? | ? | ✗ | ✗ | ✗ | ? | ? | ? | |
Intel 815E | ABit AB-SH6 | ? | ? | ? | ✗ | ✗ | ✗ | ? | ? | ? |
Gamepads
Name | 86Box | PCem | PCBox | DOSBox Pure | DOSBox-X | DOSBox Staging | MartyPC | UniPCemu | MAME | |
---|---|---|---|---|---|---|---|---|---|---|
Gravis PC Gamepad | ? | ? | ? | ? | ? | ? | ? | ? | ? | |
Microsoft Sidewinder | ? | ? | ? | ? | ? | ? | ? | ? | ? | |
? | ? | ? | ? | ? | ? | ? | ? | ? |
References
- ↑ 1.0 1.1 1.2 1.3 Pentium III emulation only available with PCBox fork, but do not expect miracles. Currently there is no processor available on the market that would be able to handle Pentium III or Athlon Classic emulation, considering that even the latest top-tier processors struggle with emulating fastest Pentium II/Celeron P6 processors. For more information about Pentium III emulation; 86Box - Why Not Pentium III?.
- ↑ 2.00 2.01 2.02 2.03 2.04 2.05 2.06 2.07 2.08 2.09 2.10 2.11 2.12 2.13 2.14 2.15 2.16 2.17 2.18 2.19 2.20 2.21 2.22
Unlike emulators like 86Box or PCem which aim for accurate execution, DOSBox forks prioritize performance by emulating one instruction per emulated-cycle. This approach simplifies internal CPU mechanics and ignores real clock frequency or FLOPs of the emulated system. While this sacrifices perfect accuracy, it leads to significantly faster emulation and still has broader software compatibility compared to other emulators like QEMU or Bochs. However, some niche software may still encounter compatibility limitations. Therefore, DOSBox forks remain a powerful option for casual users and performance-intensive tasks, offering a balance between compatibility and speed. See DOSBox Pure: MMX Instruction Set Support issue page and POS_(Pong_Consoles)_CPUs_and_Other_Chips#Descriptions section for more information. - ↑ 3.0 3.1 3.2 Future goal, for more information see comparisons section.
- ↑ 4.0 4.1 4.2 4.3 Only the 286/386/486 emulation is acceptable at the moment. See comparisons section. (i386.cpp)