I am curious how come Wine has no direct support for DOS but has support for Windows 2,3 & 95 (which required DOS for their installation). I think of Wine as an utility to run legacy software and DOS compromises a big chunk of it. I know I can use Dosbox but it would be better for the end user if one program could run in linux all software made for m$. As a bonus, Dosbox also is open source, so I think it would be feasible to merge their source into Wine.
By no means I am trying to anger anyone with this post, I am simply curious.
Lack of DOS support in wine
Lack of DOS support in wine
i believe the answer lies somewhere in the concepts involved with
emulating dos versus implementing the windows API
in order to emulate dos, doxbox emulates an entire hardware machine in
software. dos was a very thin layer on top of the hardware which in lots
of cases the programs unloaded and took on the hardware for themselves.
recall the good old days of telling your software the io and irq of your
sound card and the type of video card you have.
(compared to the massive hulk that windows is now, where the browser is
somehow debatable considered 'part of the operating system', back then
windows was a separate application you ran on top of dos)
wine on the other hand 'is not an emulator', in that it implements the
win api's on top of unix libraries and functions (or implements them
itself). there is no attempt at fully fledged emulation - which is why
wine runs so fast and dosbox is so strangely cpu hungry for how it performs.
also, MS-DOS was not by any means the only dos, nor was it the best of
the dos operating systems. PC-DOS and DR-DOS were in so many ways vastly
superior to MS-DOS.
Dean
mangamuscle wrote:
http://fragfest.com.au
emulating dos versus implementing the windows API
in order to emulate dos, doxbox emulates an entire hardware machine in
software. dos was a very thin layer on top of the hardware which in lots
of cases the programs unloaded and took on the hardware for themselves.
recall the good old days of telling your software the io and irq of your
sound card and the type of video card you have.
(compared to the massive hulk that windows is now, where the browser is
somehow debatable considered 'part of the operating system', back then
windows was a separate application you ran on top of dos)
wine on the other hand 'is not an emulator', in that it implements the
win api's on top of unix libraries and functions (or implements them
itself). there is no attempt at fully fledged emulation - which is why
wine runs so fast and dosbox is so strangely cpu hungry for how it performs.
also, MS-DOS was not by any means the only dos, nor was it the best of
the dos operating systems. PC-DOS and DR-DOS were in so many ways vastly
superior to MS-DOS.
Dean
mangamuscle wrote:
--I am curious how come Wine has no direct support for DOS but has support for Windows 2,3 & 95 (which required DOS for their installation). I think of Wine as an utility to run legacy software and DOS compromises a big chunk of it. I know I can use Dosbox but it would be better for the end user if one program could run in linux all software made for m$. As a bonus, Dosbox also is open source, so I think it would be feasible to merge their source into Wine.
By no means I am trying to anger anyone with this post, I am simply curious.
http://fragfest.com.au
-
- Level 2
- Posts: 36
- Joined: Thu Aug 07, 2008 3:50 pm
-
- Newbie
- Posts: 2
- Joined: Sun Oct 12, 2008 3:00 pm
Re: Lack of DOS support in wine
I am aware that Wine is not an emulator. But instead of emulating a vintage architecture wouldn't it be feasible to simply implement all the DOS api calls? Instead of emulating the 286/386 simply use the legacy (virtual, real or protected) mode of modern x86/x64 cpus? instead of emulating CGE/EGA/VGA allow only VESA graphic modes? Would it be feasible to write an api that mimics the funcionlality of a sounblaster card bios?
I am aware this scheme would not allow to run all sotware like dosbox does and I am really asking since I do not know the definitive answer to these questions.
I am aware this scheme would not allow to run all sotware like dosbox does and I am really asking since I do not know the definitive answer to these questions.
Lack of DOS support in wine
dos doesnt really have an api, dos programs largely spoke straight to
the hardware.
Dean
mangamuscle wrote:
http://fragfest.com.au
the hardware.
Dean
mangamuscle wrote:
--I am aware that Wine is not an emulator. But instead of emulating a vintage architecture wouldn't it be feasible to simply implement all the DOS api calls? Instead of emulating the 286/386 simply use the legacy (virtual, real or protected) mode of modern x86/x64 cpus? instead of emulating CGE/EGA/VGA allow only VESA graphic modes? Would it be feasible to write an api that mimics the funcionlality of a sounblaster card bios?
I am aware this scheme would not allow to run all sotware like dosbox does and I am really asking since I do not know the definitive answer to these questions.
http://fragfest.com.au
Re: Lack of DOS support in wine
This is pretty much what Wine does. Inside the realm of windows architecture. It's more complicated then just standalone DOS emulation like what DOSBox does. As far as sharing code with DOSBox - it's not possible. Wine is licensed under LPGL. And DOSBox is GPL.mangamuscle wrote:I am aware that Wine is not an emulator. But instead of emulating a vintage architecture wouldn't it be feasible to simply implement all the DOS api calls? Instead of emulating the 286/386 simply use the legacy (virtual, real or protected) mode of modern x86/x64 cpus? instead of emulating CGE/EGA/VGA allow only VESA graphic modes? Would it be feasible to write an api that mimics the funcionlality of a sounblaster card bios?