Ms-Dos Games on Linux. (Elder scrolls: Arena, Daggerfall, etc)
Linux - GamesThis forum is for all discussion relating to gaming in Linux.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
Ms-Dos Games on Linux. (Elder scrolls: Arena, Daggerfall, etc)
Hello!
I like certain Ms-Dos based games, And I really want to run them on Linux (Slackware 11, kernel 2.6.17.13). But the last time I've tried to run Elder Scrolls: Arena using DosBox 0.70, it worked with awfully slow speed (about 5..10 fps - maybe even slower than in DosBox on WinXP, although I'm not sure). The ElderScrolls: battleSpire worked faster, but still not fast enough. (about 10..15 fps). I'd like to try those old games, but is there any other option to run those games wihout using DosBox? DosEmu doesn't seem to work well (it hangs or complains about keyboard layout.). Of course I could just install additional Ms-Dos partition and run them from that partition, but my motherboard (with built-in audio) doesn't have midi support at all, so I won't be able to hear music and I'll most likely get a ton of other problems becaus hardware isn't old enough, isn't fully MS-DOS compatible, or just doesn't have Ms-Dos drivers(although I'm not even sure if something will need drivers ).
System configuration (I think it'll help):
CPU: Amd Sempron 2800+
Ram: 512 mb
Motherboard: GA-M55plus-S3G
Video: GeForce 7100 GS.
I've been there...its ironic how much easier running recent Windows games is in Linux than 15-year old DOS goodies.
Let me just say first off, that dosbox really is the most compatible and easiest solution, although its also unfortunately the slowest, as its emulating a fake processor and operating system in software.
Another solution is to attempt to run DOS inside of virtualization software. The two I've had experience with are QEMU and VMWare. Its more complicated because you end up running a full operating system, but it's *worlds* faster. With poorly-made games, it can even be *too fast* and you need to find ways to slow things down. QEMU, and its accelerator module are now both open source, and VMWARE player is free (you shouldn't need the full priced Workstation version.) I'm fairly sure that both end up emulating something on the order of Sound Blaster 16s, which means good DOS game compatibility.
You also don't necessarily even have to attempt to dig out the old MS-DOS diskettes...Freedos is a nice modern replacement that aims at 100% dos compatibility, and can be installed from a CD-ROM. It also comes with as many programs as your standard Linux distro.
My experience with the two is that I've successfully gotten some games like Commander Keen to work with Freedos, under both systems, after a lot of work getting things set up. Unfortunately, my personal holy grail of Tie Fighter CD exhibits the same bug of being unable to properly handle mouse and keyboard use at the same time with both. I'm not sure if its a problem with Freedos, the use of Virtualization, or even just the excessive amount of processor speed it has available to it highlight a race condition or something. If it weren't for this one horrible bug...the game would play *perfectly.*
I just saw that Elder Scrolls: Arena is free for download! I'm gonna go give that a try with what I have set up and let you know if there's any success.
It looks like qemu (0.9) doesn't work. I can boot a cd from it, but it doesn't work in places where it does work without emulation. I also wasn't able to compile a kqemu accelerator (1.3.0pre11). Looks like ether kqemu got some problems in source code, or I'm having some trouble in /usr/include/linux. Anyway, CD image access from qemu is awfully slow, and I didn't get any sound (i've configured it with --enable-adlib). Elder Scrolls: arena just hangs when I try to start it. The only thing that used protected mode and worked (without sound) was FreeDoom. I think< i'll have to try another virtual machine.
Elder Scrolls Arena seems like a washout for me as well...I knew it was a bad sign when I needed Win32 to extract the archive. I noticed that it always seems to be under the impression that my hard drive has 0 free space in the configuration, whether under VMWare of Qemu, and with a 400 megabyte drive or 3 gigabyte. I was however able to get it running decently under Dosbox after I upped the cycles per millisecond to around 30,000..but my system is a tad more powerful than yours.
Yeah, any virtualization software is slow without the acceleration, so you'd really have to find a way to get that kernel module built for it to become usable. Also, in terms of sound, you have to pass a commandline option to qemu when running it to get sound, such as -soundhw sb16, if you havent tried that already.
Elder Scrolls Arena seems like a washout for me as well...I knew it was a bad sign when I needed Win32 to extract the archive. I noticed that it always seems to be under the impression that my hard drive has 0 free space in the configuration, whether under VMWare of Qemu, and with a 400 megabyte drive or 3 gigabyte. I was however able to get it running decently under Dosbox after I upped the cycles per millisecond to around 30,000..but my system is a tad more powerful than yours.
Well, I could extract archive using Wine, game just doesn't work. As for speeding up DosBox, I've already tried it, but it doesn't help. Game just can't make more than about 10 fps. I could create DOS partition, of course, but without hardware MIDI support, it will be useless.
Quote:
Originally Posted by misterflibble
Yeah, any virtualization software is slow without the acceleration, so you'd really have to find a way to get that kernel module built for it to become usable.
Well, I'll give it a try. Looks like I'll have to dig sources once more..
Quote:
Originally Posted by misterflibble
Also, in terms of sound, you have to pass a commandline option to qemu when running it to get sound, such as -soundhw sb16, if you havent tried that already.
Thanks for the tip. Somehow I've forgot about that option.
I'm not sure what was wrong last time when I've tried qemu. Maybe violent slowdowns were caused by the method of creating partitions i've been using (i've just made a raw file and formatted it with mkfs ). I've created a VMWare virtual machine, and qemu works fine (better than vmware on windows) with it's disk files. And with good speed too (slower, than in native mode, faster than dosbox) - and that's without kqemu kernel module. Although I didn't get sound yet, I think this can be solved.
---added---
Well, I've spent some time playing with qemu and here is a result.
(by the way, I've managed compile kernel module)
qemu so far worked well, but Daggerfall isn't playable. It works with sound and music, but is awfully slow, since it runs without kqemu by default. If kqemu support is enabled, Daggerfall crashes violently (it does same thing on windows/VMware) i'm not sure if something is wrong with daggerfal or even my CPU (since it's the same bug on Windows or Linux), but Daggerfall certainly can't be played.
Arena works fine, though. It won't smoothly with highest detail mode, and it's certainly slower, than when it's running on WinXP (with a ton of sound bugs), but it works. Faster than DosBox, slower than qemu. Virtualization (kqemu support) doesn't make any difference.
Both games are not playable on VMware/windows (menu works too slow in Arena, daggerfall crashes)
So, daggerfall isn't playable. Any solutions? Currently game either crashes (if vertualization is enabled) or gives one frame during 5..10 second (if virtualization is disabled). I've got feeling that screen doesn't refresh too often, but I'm probably wrong.
So, does anyone have any ideas? Emulation works nicely (especially sound), but I still can't play Daggerfall..
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.