VOGONS


First post, by FenixNBK

User metadata
Rank Newbie
Rank
Newbie

Hi All !

I know you are PC emulation experts, and DOSbox experts. I would like to ask, if you to help the other type of Box -- VirtualBox.

VirtualBox has the potential to become the ultimate Open-Source virtualizer to simulate a full real PC, capable of running all types of legacy games (DOS, Windows 98 and Windows XP games -- which also will become a legacy with Vista and Windows7).
It already has exceptional features, that makes it very useful for gaming, such as Branching Snapshots.

This one is a complete system virtualizer, but currently optimized for 32-bit performance (NT kernel VMs).
It's 16-bit performance as well as VGA and BIOS is imperfect, so many DOS games refuse to run.

Could you please help the VirtualBox community to make it able to run most DOS games (and hopefully Windows 98 in the future) ?

-Alexey "Technologov", 13.11.2009.

Reply 1 of 7, by Dominus

User metadata
Rank DOSBox Moderator
Rank
DOSBox Moderator

I cannnot help myself but I have to ask, why?
For dos games you have Dosbox that is aimed specifically at games. Why the need to have Virtualbox support dos games? In these days hard drive space is cheap and you can easily have Virtualbox for Windows games (I wonder how it fares in this regard, btw.) and Dosbox for Dos games. No need to have one solve-it-all program. Especially when you consider that running Dos games in Virtualbox is much likely going to be slower than running games in Dosbox. The reason is that Dosbox is not aimed to emulate full fledged Dos PC, instead Dosbox leaves stuff out that is of no concern to running Dos games. Virtualbox is emulating a full PC and thus will bring in too much stuff that will make it run slower than Dosbox.

Besides that, Dosbox is open source and the Virtualbox devs can have a look at the Dosbox code and see how the devs have done it.

Windows 3.1x guide for DOSBox
60 seconds guide to DOSBox
DOSBox SVN snapshot for macOS (10.4-11.x ppc/intel 32/64bit) notarized for gatekeeper

Reply 2 of 7, by FenixNBK

User metadata
Rank Newbie
Rank
Newbie

Basically the point of improving VirtualBox is to have a full virtual PC, that is capable of doing everything a real PC can (or could in the 90's).
Of course playing DOS games on DOSbox and Windows games on VirtualBox is an option (that I currently use). But having a virtual PC that can do everything sound great.

As for now, VirtualBox runs Windows 2000/XP perfectly, but the 3D acceleration is in BETA stage, so only few 3D games actually run - but those that run, are rendered perfectly, and have acceptable 3D performance -- for example "Serious Sam" runs fine. The older 2D (DirectDraw) games work perfectly.
VirtualBox has very poor support of Windows 98 VMs. It is not optimized. I hope this will get improved one day.

The "branched snapshots" feature I mentioned earlier is really cool one, as it allows to save the game at any stage. (even if the game does not support saving). And it would be useful to have a similar feature here, in DOSbox.

-Technologov

Reply 3 of 7, by Dominus

User metadata
Rank DOSBox Moderator
Rank
DOSBox Moderator

well, you wrote about dos games, that's why I replied to that.

But having a virtual PC that can do everything sound great.

Sure, but to me that sounds slow... 😀

The "branched snapshots" feature I mentioned earlier is really cool one, as it allows to save the game at any stage. (even if the game does not support saving). And it would be useful to have a similar feature here, in DOSbox.

That sounds more like the reason why you want better Dos games support in Virtualbox 😀
I think savestates will come sooner or later or much later 😀

Edit: btw, you can have branched snapshots right now with Dosbox... Install Virtualbox, install Windows in there, install Dosbox and you have it 😀

Reply 4 of 7, by DosFreak

User metadata
Rank l33t++
Rank
l33t++

Having one VM for everything sounds nice but so does one OS for everything or one handheld device for everything or one tool for everything. Sounds nice but not practical.

There have been demands for proper 9x support in DOSBox for years but the focus of DOSBox is on DOS games. If the focus was shifted then the massive DOS compatibility improvements would lose out since improving Windows compatibility does not improve DOS compatibility and there are only so many developers/time to go around.

The same is true for VirtualBox or any VM. They have their priorities.

MS Virtual PC 7: Priority was moving from the VPC workstation product to servers and slowly removing support for legacy OS's and Linux support has always been flaky. DOS Support was the best for a VM until DOSBox came out. Focus for end-users: Application Compatibility solution for seamless use

Vmware: Compatibility here has pretty much stayed the same over the years (Workstation 7 just lost Windows 2000 host support but it's easily hackable to work). DOS-7 supported (not as good as DOSBox/VPC). Linux supported great. Focus: Developers\IT

VirtualBox: Doesn't support 9x as good as the previous two. DOS support not as good as previous two (may be equal to Vmware not sure). Focus: Moving people from VPC/Vmware to VirtualBox which has nothing to do with 9x/DOS.

DOSBox: Excellent DOS gaming compatibility support for 9x being added slowly over the years as fixes come in.

Give VirtualBox a good reason for supporting MS-DOS\9x properly ($$$, moving customers from competing VM's), just because you want it is not a good reason.

Last edited by DosFreak on 2009-12-02, 17:43. Edited 2 times in total.

How To Ask Questions The Smart Way
Make your games work offline

Reply 6 of 7, by Arny

User metadata
Rank Newbie
Rank
Newbie

Hello everybody!

May I suggest something else on this - how about incorporating something from VirtualBox into DOSBox?

I'm thinking about CPU acceleration, to make games under 32-bit "protected mode" running faster. Possible sources for this code would be QEMU (more precisely KQEMU) and VirtualBox (which is also open source). It would make sense since 32-bit games are newer and are more CPU demanding, and 32-bit code is accelerable unlike the real mode.

Methods that could be used are: direct running of usermode 32-bit code on the CPU (like VirtualBox or KQEMU) - I'm not sure if this is possible, which ring do DOS protected mode apps use? Then there is a more advanced technique (or trick) from VB to run ring-0 code directly, in ring-1. Last one (from VB or Xen) would be to use CPU virtualization extensions.

I don't know how hard would it be to implement something like that in the DOSBox CPU emulator, but I'd like to see that some day. Some newer 32-bit games work quite badly in it now. OTOH, maybe machines will soon become so powerful to obliterate the CPU accel needs. 😀

Arny

Reply 7 of 7, by leileilol

User metadata
Rank l33t++
Rank
l33t++

QEMU and VirtualBox's virtualization accelleration stuff breaks DOS games and 16-bit operating systems actually. It wouldn't be very useful. Besides, it's been argued many times before.

It'd be easier just to pick up a USD$50 CPU these days. Those can work Quake smoothly at dynamic core above 640x400 at the very least in DOSBox...

apsosig.png
long live PCem