Hi all,
for fun I just tried to run a Lemmings demo downloaded from http://www.pcgaming.ws/download.php?game=lemmings
Picture my not overly amused face when I then got the message " winevdm: Cannot start DOS application C:\lemmings\VGALEMMI.EXE because the DOS memory range is unavailable. You should install DOSBox. ".
After some wild fprintf trickery in various winevdm / virtual.c / mmap.c parts and subsequent mmap() Internet research it turned out that this message is annoyingly imprecise: a simple echo 0 > /proc/sys/vm/vmmap_min_addr (original value here: 65536) will allow the corresponding mapping, thereby enabling the game to (partially - then seems to have interesting issues at some VGA register parts) launch.
I would therefore strongly suggest adding per-platform hint strings in failure case (either passed directly out of the inner reserve_dos_area() helper, or perhaps near the winevdm message). In the Linux case, this message would obviously be something like: ...range is unavailable (you might need to specially tweak /proc/sys/vm/vmmap_min_addr - note that this is a risky operation...).
Since this is an important tweak (otherwise tons of DOS applications will bail out, thus rather negatively affecting Wine implementation debugging/reliability progress since nobody will make it there), it would be useful to add such hinting one way or another (I might find the time to do so, and possibly given some additional counseling I might even be able to come up with a sufficiently perfect patch).
Thanks,
Andreas Mohr
Andreas Mohr andi@lisas.de writes:
After some wild fprintf trickery in various winevdm / virtual.c / mmap.c parts and subsequent mmap() Internet research it turned out that this message is annoyingly imprecise: a simple echo 0 > /proc/sys/vm/vmmap_min_addr (original value here: 65536) will allow the corresponding mapping, thereby enabling the game to (partially - then seems to have interesting issues at some VGA register parts) launch.
Actually the hint is very precise: you should install DOSBox.
DOS apps run much better on DOSBox, and we are not going to spend efforts fixing Wine, particularly since it can't work on most modern systems anyway.
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
Am 2015-03-25 um 08:17 schrieb Alexandre Julliard:
Actually the hint is very precise: you should install DOSBox.
DOS apps run much better on DOSBox, and we are not going to spend efforts fixing Wine, particularly since it can't work on most modern systems anyway.
Also Wine will set up DOSBox to match your Wine paths and other relevant settings. So when a Win16 / Win32 app tries to run a dos application this will automatically work. No need to mess with any dosbox settings. Just have /usr/bin/dosbox available.