Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
DOS won't run on AMD64?
View unanswered posts
View posts from last 24 hours

Goto page 1, 2  Next  
Reply to topic    Gentoo Forums Forum Index Gentoo on AMD64
View previous topic :: View next topic  
Author Message
Fred Krogh
Veteran
Veteran


Joined: 07 Feb 2005
Posts: 1036
Location: Tujunga, CA

PostPosted: Thu Nov 17, 2005 5:14 pm    Post subject: DOS won't run on AMD64? Reply with quote

Yes it is weird, but I have a DOS program I'd like to run on dual Opeterons! I've set up a 32 bit environment using
stage3-athlon-xp-2005.1.tar.bz2 and chrooted into it. When attermpting to run dosemu, I get
Quote:
vm86plus service not available in your kernel

From https://forums.gentoo.org/viewtopic-t-340992-highlight-vm86plus.html I gather there may be no way around this. Could someone either confirm this or suggest something to try. Thanks,
Fred
Back to top
View user's profile Send private message
yabbadabbadont
Advocate
Advocate


Joined: 14 Mar 2003
Posts: 4791
Location: 2 exits past crazy

PostPosted: Thu Nov 17, 2005 5:42 pm    Post subject: Reply with quote

I don't know if either of these work with AMD64, but you could look into trying DosBox, QEmu, or Bochs.

DosBox is specifically targeted for Dos games. The other two are full virtual machines in which you would have to install Dos and then your game.
Back to top
View user's profile Send private message
Fred Krogh
Veteran
Veteran


Joined: 07 Feb 2005
Posts: 1036
Location: Tujunga, CA

PostPosted: Thu Nov 17, 2005 6:35 pm    Post subject: Reply with quote

Thanks for the suggestions. My understanding is that these other programs run considerably slower and the program I want to run will run many times and each time is farily time consuming. (It is not a game.) I'm hoping for something fast.
That said, would anyone like to recommend between DosBox, QEmu, or Bochs? Thanks,
Fred
Back to top
View user's profile Send private message
robbyjo
Guru
Guru


Joined: 06 Apr 2003
Posts: 462

PostPosted: Thu Nov 17, 2005 6:54 pm    Post subject: Reply with quote

You can try DOSBox and max the frequency in the config file so that it uses all your computing power.
Back to top
View user's profile Send private message
jcmorris
Apprentice
Apprentice


Joined: 11 Jun 2003
Posts: 174

PostPosted: Fri Nov 18, 2005 12:11 am    Post subject: Reply with quote

You are running a 32-bit kernel, and not just a 32-bit chroot, correct? The Athlon64 doesn't support 16-bit DOS stuff under a 64-bit kernel, the AMD fellows decided to drop 16-bit compatibility when it is in 64-bit mode.

jcm
_________________
Desktop:
Athlon64 3000+ (Socket 939 Venice)
Asus A8N-SLI
1GB Dual-Channel DDR 3200
NVidia Geforce 6800 256MB

Laptop:
IBM R40
Pentium M 1.4 GHz
256 MB RAM
Back to top
View user's profile Send private message
Fred Krogh
Veteran
Veteran


Joined: 07 Feb 2005
Posts: 1036
Location: Tujunga, CA

PostPosted: Fri Nov 18, 2005 1:33 am    Post subject: Reply with quote

I suspect this is my problem. I'm running a 64 bit kernel on the system. I don't think I want to change that as the DOS stuff is a small part of what I do. I strongly doubt that I could run a 32 bit kernel in the chroot while running a 64 bit kernel in the rest of the system. No need to respond to this if that is the case. I think I'll go with one of the emulation approaches. Thanks,
Fred
Back to top
View user's profile Send private message
EzInKy
Veteran
Veteran


Joined: 11 Oct 2002
Posts: 1742
Location: Kentucky

PostPosted: Fri Nov 18, 2005 2:08 am    Post subject: Reply with quote

Though I had to do some tweaking of dosbox.conf it does work pretty well on my dual opteron box.
_________________
Time is what keeps everything from happening all at once.
Back to top
View user's profile Send private message
jcmorris
Apprentice
Apprentice


Joined: 11 Jun 2003
Posts: 174

PostPosted: Fri Nov 18, 2005 4:03 am    Post subject: Reply with quote

I read over my last post, and I don't know if it was clear or not. Anyway, the kernel is not to blame for this, but rather it is a physical architectural property of the CPU. In 64-bit mode, the ability to do virtual 8086-mode is switched off. This makes sense, because of the way that addressing is traditionally done on x86 CPUs. 16-bit code relies mainly on segmented addressing (you load one register with the address to a region of memory (a "segment"), and then you load an offset into another register, and the CPU computes the address from those). This can get messy and complicated. When the 386 came out, the meaning of the term "segment" in 32-bit protected mode changed a little, where the segment registers were loaded with an index into a memory descriptor table, which held addresses of segments and their permissions. In protected mode, the OS handles the segment registers. Messy stuff indeed. AMD decided to get rid of the whole segmentation mechanism in 64-bit mode altogether (OSes don't really make use of segmentation anyway). So, 16-bit software can't run mostly because it makes heavy use of memory segmentation. On the other hand, 32-bit software can still run because it uses mostly 32-bit linear addresses. With the OS handling the segment registers in 32-bit mode as needed, user-space software doesn't need to know about the segment registers and therefore use 32-bit linear addressing. So, in short, it is a physical limitation of the CPU.

jcm
_________________
Desktop:
Athlon64 3000+ (Socket 939 Venice)
Asus A8N-SLI
1GB Dual-Channel DDR 3200
NVidia Geforce 6800 256MB

Laptop:
IBM R40
Pentium M 1.4 GHz
256 MB RAM
Back to top
View user's profile Send private message
robbyjo
Guru
Guru


Joined: 06 Apr 2003
Posts: 462

PostPosted: Fri Nov 18, 2005 8:23 pm    Post subject: Reply with quote

No, I think you're wrong. All my vintage 16-bit applications work nicely under DOSBox in my Athlon64 64-bit mode. DOSBox actually did complete emulation of the hardware and it does a really nice job.
Back to top
View user's profile Send private message
jcmorris
Apprentice
Apprentice


Joined: 11 Jun 2003
Posts: 174

PostPosted: Fri Nov 18, 2005 9:04 pm    Post subject: Reply with quote

Yeah, Dosbox works because it emulates everything, but the CPU cannot execute 16-bit code natively. The reason he was getting "vm86plus" errors is because virtual 8086 mode (required for executing 16-bit code natively) cannot happen in 64-bit mode. Dosemu runs 16-bit code natively, under dosbox it is emulated.

jcm
_________________
Desktop:
Athlon64 3000+ (Socket 939 Venice)
Asus A8N-SLI
1GB Dual-Channel DDR 3200
NVidia Geforce 6800 256MB

Laptop:
IBM R40
Pentium M 1.4 GHz
256 MB RAM
Back to top
View user's profile Send private message
Fred Krogh
Veteran
Veteran


Joined: 07 Feb 2005
Posts: 1036
Location: Tujunga, CA

PostPosted: Sat Nov 19, 2005 3:35 am    Post subject: Reply with quote

I'm a little further along, but far from a solution. Dosbox gets me into a dos window, but the programs I want to run involve file i/o and I suspect that is the problem. It might also have to do with the fact that I have SATA disks which it is not peprared to deal with.

Bochs, at least up to this point, is a mystery on how to get running.

Qemu is far enough along to get me into a DOS window. Unfortunately, I don't see a way to get access to files in Linux. Perhaps someone could verify for me that this is not possible, or suggest a way to access them. Any thoughts on the problem I'm having with dosbox would also be appreciated. (In that case a DOS Fortran compiler gets in a loop and the generated obj file grows until killed and the other program appears to run, but generated no output file as it should.) Thanks,
Fred
Back to top
View user's profile Send private message
Fred Krogh
Veteran
Veteran


Joined: 07 Feb 2005
Posts: 1036
Location: Tujunga, CA

PostPosted: Sat Nov 19, 2005 11:29 pm    Post subject: DOS on AMD64 -- RESOLVED Reply with quote

Sorry, I made a mistake on dosbox. A compiler I don't need to run fails, but since it also fails under dosemu on a pentium, I suspect bit rot has taken its toll. The program I need to run fooled me by generating files in upper case and I missed seeing them. For me dosbox looks like a very nice solution to my problem. Thanks,
Fred
Back to top
View user's profile Send private message
robbyjo
Guru
Guru


Joined: 06 Apr 2003
Posts: 462

PostPosted: Mon Nov 21, 2005 1:13 am    Post subject: Reply with quote

Just to let you know that my HDD is currently SATA and DOSBox runs perfectly on it. Just make sure that you mount the appropriate directory to the appropriate drive and that's all. Unless your program needs some kind of setup (like debugger), it should run fine regardless of whether or not there's any I/O request in your program. Compilers also work fine. If the actual program can't even work in a Pentium, then there's a problem in the program itself, not DOSBox. Good luck.
Back to top
View user's profile Send private message
bakaohki
Tux's lil' helper
Tux's lil' helper


Joined: 14 Jul 2005
Posts: 129
Location: Hungary

PostPosted: Fri Nov 25, 2005 9:54 pm    Post subject: Solution Reply with quote

Using dosemu will never work on an amd64 running in 64bit mode, believe me, I tried many things:
-No dosemu; even if it will work, they will have to sacrifice a lot (read their faqs).
-Bochs is painfully slow, forget it.
-Qemu's i386 run mode has way too many issues (I played around wit it a LOT; very weird problems concerning dosemu; something works, but not the way one would expect it)
-Qemu and freedos: this is okay, but still is pretty slow and I can recall some problems with the mouse. But can be okay, don't ask me about networking!
-Dosbox: slow, but I think this is the way to go: easy to set the speed, has a dos environment, sharing files is a breeze

Other solutions:
-you can dual boot to freedos (reboot :cry: )
-boot into an x86 linux and use dosemu
-create another computer from junk parts and reconnect the monitor (switches have issues with DPMS and refresh rates) if you need it.
Back to top
View user's profile Send private message
wiSHmaKeR
n00b
n00b


Joined: 04 May 2004
Posts: 44
Location: Stara Zagora, Bulgaria

PostPosted: Sat Mar 04, 2006 5:34 am    Post subject: Reply with quote

Yesterday I tried DOSEMU from CVS, and it worked finally, it compiles fine and even works in X-mode ;)
_________________
And all your wishes come true... :)
Back to top
View user's profile Send private message
bakaohki
Tux's lil' helper
Tux's lil' helper


Joined: 14 Jul 2005
Posts: 129
Location: Hungary

PostPosted: Sun Mar 05, 2006 9:11 am    Post subject: dosemu amd64 Reply with quote

Yeah, now it works, but it uses emulation - that's the only solution for cpus running in 64 bit mode.
See their changelog:
"Added support for x86-64, by using CPU emulation for V86 mode, running DPMI code natively."
Back to top
View user's profile Send private message
juhah
n00b
n00b


Joined: 03 Oct 2004
Posts: 46

PostPosted: Sun Mar 05, 2006 9:44 am    Post subject: Re: Solution Reply with quote

bakaohki wrote:
Using dosemu will never work on an amd64 running in 64bit mode, believe me, I tried many things:

VMWare could do the job. Just use WMWare to run Windows 9x. Or Windows XP and install DOS box there...
Back to top
View user's profile Send private message
bakaohki
Tux's lil' helper
Tux's lil' helper


Joined: 14 Jul 2005
Posts: 129
Location: Hungary

PostPosted: Sun Mar 12, 2006 5:58 pm    Post subject: Re: Solution Reply with quote

juhah wrote:
VMWare could do the job. Just use WMWare to run Windows 9x. Or Windows XP and install DOS box there...


Or Qemu, the same to me... but as I stated above, soon dosemu *will* run on amd64 too.
Back to top
View user's profile Send private message
Intangir
Tux's lil' helper
Tux's lil' helper


Joined: 16 Sep 2005
Posts: 96

PostPosted: Fri Mar 24, 2006 8:07 pm    Post subject: Reply with quote

sweet so it works now?

but emulates it on 64?

is it still faster than dosbox? cause dosbox is too damn slow


also does anyone know if using a cpu idler program on any of these dos emulators helps?

i read on the vmware website that there is a TSR program that detects idling cpu cycles and.. i dont know somehow gives up cycles completely... im not sure exactly how it works but for vmware at least it sounded like instead of running the processor at 100% all the time it gives up wasted cycles to vmware, which can give them upto the kernel so it can run at a much lower cpu..

i dont know if that is really how it works or if that really makes sense, but thats what i sounded like to me

i cant wait to try running master of orion II on dosemu in AMD64

its been my dream to run master of orion II in a windowed environment ever since dos became obsolete ;)

vmware doesnt work (glitchy graphics)
dosbox is too damn slow even on a beast of the most modern computer..
running it in windows sucks (the win95 version is TERRIBLY buggy)

the only solution for the last decade has been to create a seperate partition and boot into dos and run it there. but you cant be doing anythign else.. there isnt exactly a dos mp3 player, or dos instant messeging ;)

anyway.. ill try it tonight ;)
Back to top
View user's profile Send private message
bakaohki
Tux's lil' helper
Tux's lil' helper


Joined: 14 Jul 2005
Posts: 129
Location: Hungary

PostPosted: Sun Mar 26, 2006 3:16 pm    Post subject: qemu vs dosbox vs dosemu Reply with quote

Yes, cpuidle works, the qemu page has a tutorial on this. I use qemu with kqemu for dos stuff; I didn't try advanced things but games work: speed was like on a native p1 100mhz with my Amd64 3200+ (wow, this sounds like a joke:)). Both freedos and msdos had some issues with memory management (himem, emm386), but making startup profiles in your config.sys can solve this rather easily.
Back to top
View user's profile Send private message
Intangir
Tux's lil' helper
Tux's lil' helper


Joined: 16 Sep 2005
Posts: 96

PostPosted: Mon Apr 03, 2006 5:58 am    Post subject: Reply with quote

where can i find a cpu idle program for dos?

the one linked too on vmware.. is a bad link now

also has anyone gotten dosemu to compile yet?

it doesnt seem to be able to find any of my libraries.. i have libX and sdl and all installed, but the dosemu configure script says i dont..

im pretty sure this is a 64bit issue.
Back to top
View user's profile Send private message
Corona688
Veteran
Veteran


Joined: 10 Jan 2004
Posts: 1204

PostPosted: Mon Apr 03, 2006 10:45 pm    Post subject: Reply with quote

Intangir wrote:
its been my dream to run master of orion II in a windowed environment ever since dos became obsolete ;)
The windows version of MOOII doesn't run in Windows 2000, but it WILL run in Wine :D As per normal it has no comment of "windowed" though.
_________________
Petition for Better 64-bit ATI Drivers - Sign Here
http://www.petitiononline.com/atipet/petition.html
Back to top
View user's profile Send private message
Intangir
Tux's lil' helper
Tux's lil' helper


Joined: 16 Sep 2005
Posts: 96

PostPosted: Tue Apr 04, 2006 5:57 am    Post subject: Reply with quote

the windows version crashes every 20 minutes or so

and gets weird glitches with graphics sometimes, that you have to restart to get out of (like the pallete gets all mixed up)

i installed a 32bit install and compiled dosemu just fine

the game runs well in dosemu on 32bit (baaarely) sound still skips juuust a little bit sometimes

its barely managing to run it ;)

an AMD athlon 3500+ with 1gb of ram barely manages to run what my old p100 with 32megs of ram ran fine 10 years ago ;)
Back to top
View user's profile Send private message
Corona688
Veteran
Veteran


Joined: 10 Jan 2004
Posts: 1204

PostPosted: Tue Apr 04, 2006 2:25 pm    Post subject: Reply with quote

Intangir wrote:
the windows version crashes every 20 minutes or so and gets weird glitches with graphics sometimes, that you have to restart to get out of (like the pallete gets all mixed up)
Crashes every 20 minutes while running on what? I know it hates any modern version of Windows. With Wine though, I had great success -- and native speed.
_________________
Petition for Better 64-bit ATI Drivers - Sign Here
http://www.petitiononline.com/atipet/petition.html
Back to top
View user's profile Send private message
Intangir
Tux's lil' helper
Tux's lil' helper


Joined: 16 Sep 2005
Posts: 96

PostPosted: Tue Apr 04, 2006 7:23 pm    Post subject: Reply with quote

oh maybe your right.. ya i was running it on 98, and then 2k.. both had issues

hrmm i will have to try that, it would hopefully run at less cpu than the dos version does thru dosemu


another thing about the windows version is its networking is sooo slow.. but i can't really find anyone to play it with anymore anyway ;)
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Gentoo on AMD64 All times are GMT
Goto page 1, 2  Next
Page 1 of 2

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum