VOGONS


First post, by blackmonk

User metadata
Rank Newbie
Rank
Newbie

Hi,
I have a little problem with carmageddon in dosbox under linux (ubuntu), there are horizontal stripes.

carmageddonstripes.png

These are in normal and in 3dfx (dosbox with glide), under Windows dosbox it works perfect, not under ubuntu 😢

My Specs are:
AMD Athlon II X2 M300
ATI Radeon mobility HD 4500
4 GB DDR2 RAM

Is there a way to fix this?

Sorry for my bad english ^^

greetz blackmonk

Last edited by blackmonk on 2010-05-23, 21:15. Edited 1 time in total.

Reply 1 of 13, by ADDiCT

User metadata
Rank Oldbie
Rank
Oldbie

If your horizon goes from top to bottom (where it goes from left to right for most people) you're probably lying down a lot. Can't help with any other problems, sorry.

Reply 2 of 13, by wd

User metadata
Rank DOSBox Author
Rank
DOSBox Author

This is a problem with the fpu precision. Are you using a 32bit build? And please use dosbox 0.74.

Reply 4 of 13, by blackmonk

User metadata
Rank Newbie
Rank
Newbie

Ah yes i mean vertical sorry

Im using this build from this Guide from Tutorial: dosbox with Glide under Linux, i try to build a glide version with 0.74.

Yes its the 64bit version of ubuntu.

Reply 5 of 13, by wd

User metadata
Rank DOSBox Author
Rank
DOSBox Author

It won't work on 64bit, only on 32bit where the 80bit precision can be deployed.

Reply 6 of 13, by blackmonk

User metadata
Rank Newbie
Rank
Newbie

Ok, looks like i have no chance to fix it.

THX for helping 😀

Reply 7 of 13, by TeaRex

User metadata
Rank Member
Rank
Member

Can't you compile DOSBox for 32 bit even in 64 bit OSes? In Windows you can. And in Linux I would guess passing something like CFLAGS='-m32' into ./configure should do the same if you install the needed 32-bit support libraries.

tearex

Reply 8 of 13, by TeaRex

User metadata
Rank Member
Rank
Member

Ok, I tried compiling as a 32-bit app now as I said on Ubuntu Lucid. It's a pain.

You need to say not only

CFLAGS="-m32 ..." LDFLAGS="-L/lib32 -L/usr/lib32"

but also pass

--host=i686-pc-linux-gnu

into configure, else the dyn86 core is not built. Additionally, you need to set some links in /usr/lib32 so that the 32-bit SDL libraries can be found, compile a 32-bit libSDL_sound by hand since it isn't part of the 32-bit libraries offered by Ubuntu, and then finally DOSBox gives no sound unless you run it as root.

So it's not for the faint of heart, but in the end it works well, the dyn86 code including the x86 specific FPU code is there (so 80 bit precision should work), and it is only slightly slower than the 64-bit DOSBox.

tearex

Reply 9 of 13, by blackmonk

User metadata
Rank Newbie
Rank
Newbie

Sorry that it took so long to answer again.

Im new in linux and programming, but i have a few friends that can help me to compile it. I try it and post again when it works .

THX for the help 😀

Greetz BlackMonk

Reply 10 of 13, by Zirias

User metadata
Rank Newbie
Rank
Newbie
wd wrote:

It won't work on 64bit, only on 32bit where the 80bit precision can be deployed.

That's interesting, can you refer some background information, please?

Reply 11 of 13, by Qbix

User metadata
Rank DOSBox Author
Rank
DOSBox Author

on non-x86 we emulate the fpu using doubles which are 64 bit.

Water flows down the stream
How to ask questions the smart way!

Reply 12 of 13, by Zirias

User metadata
Rank Newbie
Rank
Newbie

ahh, ok .. so it's not possible to use a real FPU in x86_64 code? 😮

Reply 13 of 13, by Qbix

User metadata
Rank DOSBox Author
Rank
DOSBox Author

maybe, but we didn't code it.

Water flows down the stream
How to ask questions the smart way!