VOGONS


Software comparison

Topic actions

First post, by RetroMaster137

User metadata
Rank Newbie
Rank
Newbie

In your opinion, what is the most compatible PC emulation software, and the most accurate PC emulation software? I don't know them all either, other than QEMU, DosBox, Virtualbox, or PCem and 86box. Didn't try VMware yet.

Last edited by RetroMaster137 on 2023-01-11, 04:32. Edited 1 time in total.

Reply 1 of 21, by BloodyCactus

User metadata
Rank Oldbie
Rank
Oldbie

its a tradeoff. dosbox is fast but loose with its emulations. virtualbox is slow but much stricter, but far less game oriented. I prefer dosbox-x for dos and virtualbox for "complete" emulation of stuff (not gaming tho).

--/\-[ Stu : Bloody Cactus :: [ https://bloodycactus.com :: http://kråketær.com ]-/\--

Reply 2 of 21, by eddman

User metadata
Rank Member
Rank
Member

You've mixed apples and oranges. VMware and Virtualbox are VMs; PCem and 86box are low-level emulators. (I don't know enough about QEMU and Dosbox)

Tell us what CPU and GPU you have, and what you're aiming to do exactly, and the choices can be narrowed down from there. What old OS you want to run? What games you want to play? Is Direct3D and/or Glide support needed? etc.

Reply 3 of 21, by RetroMaster137

User metadata
Rank Newbie
Rank
Newbie

Dangit, these were exactly the questions I tried to avoid! I don't mind mixing apples with oranges, I'm just looking for what is most accurate, and what is most compatible, for overall/general testing and debugging. I want to emulate/virtualize a PC as best as possible, not a particular software per-se (if that makes sense). Something that runs a DOS as best as possible, and is so well-made it could even run a full-fledged os of some kind. Like your typical console emulator, no more, no less.

My aim is debugging and experimentation. Not a particular software/os in mind. My PC is an HP G42-364LA notebook.

Emulating/virtualizing a PC. That's it, no more no less

Reply 4 of 21, by eddman

User metadata
Rank Member
Rank
Member
RetroMaster137 wrote on 2023-01-11, 12:23:

Dangit, these were exactly the questions I tried to avoid! I don't mind mixing apples with oranges, I'm just looking for what is most accurate, and what is most compatible, for overall/general testing and debugging. I want to emulate/virtualize a PC as best as possible, not a particular software per-se (if that makes sense). Something that runs a DOS as best as possible, and is so well-made it could even run a full-fledged os of some kind.

People can't help when the requirements aren't known. Not minding doesn't work in the computer space; you seem to be putting virtualization and emulation in the same category but they are completely different things and do not provide the same capabilities.

Do you want to test old OSes or old hardware? If only the former, you can use a VM. If the latter, VMs are useless since they basically do zero hardware emulation. For that you'd have to use PCem or 86box.

RetroMaster137 wrote on 2023-01-11, 12:23:

Like your typical console emulator, no more, no less.

Console emulators are wildly different from one another. Some might be doing proper low-level emulation; many do HLE for certain things, meaning no proper hardware emulation.

RetroMaster137 wrote on 2023-01-11, 12:23:

My PC is an HP G42-364LA notebook.

I asked for the CPU and GPU models. If what I found online is correct, that PC apparently has an i3-370M. It should be fine for VMs. However, it's too slow for emulating higher CPU models in PCem and 86box; 386 should be doable and perhaps 486.

Reply 5 of 21, by Gmlb256

User metadata
Rank l33t
Rank
l33t

If it is about PC emulation accuracy, both PCem and 86Box are the closest thing but it requires a CPU with very fast single thread performance for a decent experience. Another alternative is DOSBox-X which goes further than the original DOSBox regarding running DOS software in general.

Virtualization in my experience seems to be more focused on running older non-gaming software on modern computers.

VIA C3 Nehemiah 1.2A @ 1.46 GHz | ASUS P2-99 | 256 MB PC133 SDRAM | GeForce3 Ti 200 64 MB | Voodoo2 12 MB | SBLive! | AWE64 | SBPro2 | GUS

Reply 6 of 21, by Jo22

User metadata
Rank l33t++
Rank
l33t++
eddman wrote on 2023-01-11, 13:15:

[..] VMs are useless since they basically do zero hardware emulation. For that you'd have to use PCem or 86box.

In the 2000s, I ran DOS/QuickBasic 4.5 in MS Virtual PC 2004/2007.
The DOS VM was quite useful to talk to my real hardware.
The emulated LPT und COM ports were mapped to the real ports.

"Time, it seems, doesn't flow. For some it's fast, for some it's slow.
In what to one race is no time at all, another race can rise and fall..." - The Minstrel

//My video channel//

Reply 7 of 21, by eddman

User metadata
Rank Member
Rank
Member
Jo22 wrote on 2023-01-11, 15:44:

The DOS VM was quite useful to talk to my real hardware.
The emulated LPT und COM ports were mapped to the real ports.

By hardware, I meant emulated hardware, as in playing around with older CPUs, video processors, etc. and see how they behaved and what the experience was like. Granted, it'd not be 100% accurate, but still good enough.

If the intent is to test actual, physical old hardware accessories, then VMs could be of use to some extent.

I'm not an expert on VMs by any means, but IINM things like ports are not really properly emulated, but operate as a pass-through?

Reply 8 of 21, by superfury

User metadata
Rank l33t++
Rank
l33t++

UniPCemu has a pretty accurate CPU emulation. It's hardware emulation should be way more accurate (all performing cycle-accurate timing as far as is documented and known) compared to other well known emulators. The main downside it has is speed, unfortunately, since it's performing the same treatment on CPU level that, although optimized a lot, is too much for a common CPU like an i7-4790K(stock 4GHz speed) even, reaching roughly 1MIPS at the most due to slow memory mapping of emulated RAM&ROM (all accesses are mapped through the same unit in both IPS and cycle-accurate clocking modes after all). Most time is spent on fetching instructions from RAM/ROM, although I already optimized it a lot using caching etc.

Especially the video cards are emulated like in Dosbox (as in sharing most video cards with Dosbox (it's models, like ET4000(/W32), ET3000 and VGA and lower(except Hercules)), but way more cycle-accurate and all hardware features fully supported in it's hardware).

Author of the UniPCemu emulator.
UniPCemu Git repository
UniPCemu for Android, Windows, PSP, Vita and Switch on itch.io

Reply 9 of 21, by Kerr Avon

User metadata
Rank Oldbie
Rank
Oldbie

Are there many non-Gaming programs that are DOS only (or the DOS version is the best) that people still use? I would have thought that most valuable DOS software would have had Windows equivalents available (whether written commercialy, by a different company as a different program, or maybe fan-made).

Reply 10 of 21, by Gmlb256

User metadata
Rank l33t
Rank
l33t

DJGPP is a prime example, never had proper support outside of DOS despite cross-compiling being available.

Less relevant on this forum, but legacy business software that some companies still rely on counts. too.

VIA C3 Nehemiah 1.2A @ 1.46 GHz | ASUS P2-99 | 256 MB PC133 SDRAM | GeForce3 Ti 200 64 MB | Voodoo2 12 MB | SBLive! | AWE64 | SBPro2 | GUS

Reply 11 of 21, by Ringding

User metadata
Rank Member
Rank
Member
Gmlb256 wrote on 2023-01-12, 16:21:

DJGPP is a prime example, never had proper support outside of DOS despite cross-compiling being available.

How so? It is itself a poor port of all kinds of Unix stuff to DOS, so you are much better off just running it natively on Linux (or Windows).

Reply 12 of 21, by Gmlb256

User metadata
Rank l33t
Rank
l33t
Ringding wrote on 2023-01-12, 17:21:
Gmlb256 wrote on 2023-01-12, 16:21:

DJGPP is a prime example, never had proper support outside of DOS despite cross-compiling being available.

How so? It is itself a poor port of all kinds of Unix stuff to DOS, so you are much better off just running it natively on Linux (or Windows).

Yep, it is indeed a poor 32-bit DOS port of GCC in my experience and does require LFN support for optimal usage, Windows 9x being best-case scenario.

Sometimes I had to use an older version to build certain 32-bit protected mode executables because tons of errors when compiling certain libraries (notably Allegro and its add-ons libraries 😖).

VIA C3 Nehemiah 1.2A @ 1.46 GHz | ASUS P2-99 | 256 MB PC133 SDRAM | GeForce3 Ti 200 64 MB | Voodoo2 12 MB | SBLive! | AWE64 | SBPro2 | GUS

Reply 13 of 21, by Ringding

User metadata
Rank Member
Rank
Member
Ringding wrote on 2023-01-12, 17:21:

It is itself a poor port of all kinds of Unix stuff to DOS, so you are much better off just running it natively on Linux (or Windows).

where "it" references "stuff" 😉. The only two things that come to mind that where first-class DJGPP runnables, are Quake and early DOSDoom, both of which are games and hence DOSBox material, and by now much better versions exist of both of them for Linux and Windows.

Reply 14 of 21, by Gmlb256

User metadata
Rank l33t
Rank
l33t

Oh, I see what you mean. When I mentioned DJGPP first, it was about the compiler suite given that some people still use it for retro purposes.

VIA C3 Nehemiah 1.2A @ 1.46 GHz | ASUS P2-99 | 256 MB PC133 SDRAM | GeForce3 Ti 200 64 MB | Voodoo2 12 MB | SBLive! | AWE64 | SBPro2 | GUS

Reply 16 of 21, by stanwebber

User metadata
Rank Member
Rank
Member

qemu offers both virtualization (kvm) and hardware emulation. i routinely use it to run armhf, armv7, aarch64 operating systems on intel x64 platforms for ease of compiling. i've even used it to run intel x64 virtual machines on an x86 platform.

kernel module virtualization (kvm) is probably on par with virtualbox.

Reply 17 of 21, by Jo22

User metadata
Rank l33t++
Rank
l33t++
stanwebber wrote on 2023-01-22, 08:07:

qemu offers both virtualization (kvm) and hardware emulation. i routinely use it to run armhf, armv7, aarch64 operating systems on intel x64 platforms for ease of compiling. i've even used it to run intel x64 virtual machines on an x86 platform.

kernel module virtualization (kvm) is probably on par with virtualbox.

Yay, I remember the KQEMU acceleration module. Used it in 2005 or so. ^^

"Time, it seems, doesn't flow. For some it's fast, for some it's slow.
In what to one race is no time at all, another race can rise and fall..." - The Minstrel

//My video channel//

Reply 18 of 21, by Mister98XPee

User metadata
Rank Newbie
Rank
Newbie
RetroMaster137 wrote on 2023-01-11, 04:14:

In your opinion, what is the most compatible PC emulation software, and the most accurate PC emulation software? I don't know them all either, other than QEMU, DosBox, Virtualbox, or PCem and 86box. Didn't try VMware yet.

You can cross off QEMU since it's command line only and I don't know a stinking thing about it and if I did wouldn't bother because it would be arthritis hell for me.

Reply 19 of 21, by Mister98XPee

User metadata
Rank Newbie
Rank
Newbie
Gmlb256 wrote on 2023-01-11, 15:34:

If it is about PC emulation accuracy, both PCem and 86Box are the closest thing but it requires a CPU with very fast single thread performance for a decent experience. Another alternative is DOSBox-X which goes further than the original DOSBox regarding running DOS software in general.

Virtualization in my experience seems to be more focused on running older non-gaming software on modern computers.

Your exactly right! There's a long story to it but the short version is when computers went to 64 bit for a long time a lot of stuff (and many are still) broken so then came the virtual machines to run mostly business servers and software that needed specialize services and dependencies. The average gamer crowd doesn't know any better so just 'goes' with whatever even if it's against their own self interests which they usually often find out later then sooner.

In the early days of 64 bit there was actually bit more compatibility with software then later machines for example I had a VERY early 64 bit computer from Circuit City in 2004 and it was actually 64 bit. It said X64 on it and it ran all my 32 bit stuff. I had to replace that with a later 64 bit in 2008 after the ice storm hit here in OR due to some things being fried and the later one was NOT compatible at all.
Now that I think about it I think it may be because I had 32 bit XP installed on the old one where as the new one had Windows Vista which was quickly changed to 7.