VOGONS


First post, by haimkob

User metadata
Rank Newbie
Rank
Newbie

Hello,

I'm trying to compile the gulikoza's dosbox with Physfs function support,
but without any success.

I'm using mingw/mysys, and when i typed: /.configure
i get this error message:

cheking for PHYSFS_init in -lphysfs... no
configure: WARNING: Can't find PHYSFS_init

I've tried to compile the physfs source package, by using the cmake, then i compiled it with vs, but i got only this library file: physfs.lib

Can you please help me on this? maybe someone can send me the compiled library files, and the information to which directory to copy them?

Thanks in Advance.

Reply 1 of 12, by gulikoza

User metadata
Rank Oldbie
Rank
Oldbie

Visual Studio compiled PHYSFS will not help you. You need to compile it with mingw/msys.

http://www.si-gamer.net/gulikoza

Reply 2 of 12, by haimkob

User metadata
Rank Newbie
Rank
Newbie

Ok, thank you for the tip, i've compiled it with mingw/mysys, and then typed: make install
After that, two files where created on: C:\MYSYS\local\lib
libphysfs.a
libphysfs.dll.a

Now the configure shows 'physfs enabled'.

But when trying to compile, i get this error message:
4zvonl.jpg

BTW: i've created the 'libd3dx9.a' (by running: 'reimp d3dx9.lib' under mingw/mysys), and copied this file to mingw/lib.
But when running ./configure, it still can't find the libd3dx9, and because of that the pixelshader is disabled. if you'll have a solution for this problem too i'll really appreciate it.

Thank you for your help.

Reply 3 of 12, by gulikoza

User metadata
Rank Oldbie
Rank
Oldbie

You're missing zlib (that's what cannot find -lz is supposed to mean)
For the shader support, you configure needs to find directx headers (*.h) as well as the libraries.

http://www.si-gamer.net/gulikoza

Reply 4 of 12, by haimkob

User metadata
Rank Newbie
Rank
Newbie

You are right.
I've added the zlib, which i have compiled with this command:
make -f win32/Makefile.gcc BINARY_PATH=/mingw/bin INCLUDE_PATH=/mingw/include LIBRARY_PATH=/mingw/lib install

and copy 'Microsoft DirectX SDK\include' directory into: c:\mingw\include

But now i have a new problem, after finish compiling, the file doesn't run/show anything when i try to execute it.
Only if i remove the physfs library (so this function will be disabled), and re-compile it, the compiled executable is working again.
I've tried both physfs versions (physfs-2.0.0 and physfs-2.0.1), but both of them didn't work.

Do you know what is the problem please?

Reply 5 of 12, by gulikoza

User metadata
Rank Oldbie
Rank
Oldbie

Recompile Physfs so that it uses the same external zlib you've compiled. Else Physfs will default to internal zlib, which will clash with the other one.

http://www.si-gamer.net/gulikoza

Reply 6 of 12, by haimkob

User metadata
Rank Newbie
Rank
Newbie

Ok, i've tried to re-compile Physfs by using this commands:

cd /physfs-2.0.0
mkdir build
cd build
cmake .. -G "MSYS Makefiles" -DCMAKE_INSTALL_PREFIX:PATH=/local
make
make install

After doing so, i've tried to re-compile 'dosbox' source, but that same problem again, nothing happens when i click on the compiled executable.

Does physfs have some custom directory which i need to copy manually, or antything was installed on the compile process?
Maybe i'm missing more library files that is necessary for the physys function?

Reply 7 of 12, by wd

User metadata
Rank DOSBox Author
Rank
DOSBox Author

Can you at least correctly compile the 0.74 sources??

Reply 8 of 12, by haimkob

User metadata
Rank Newbie
Rank
Newbie

First of all i must say thank you to gulikoza for all his help.
I've finally compiled a working binary of gulikoza dosbox version.

I have now three last question:
1. When i run the configuration file i get this missing files messages during the process:
checking ddraw.h usability... no
checking ddraw.h presence... no
checking for ddraw.h... no

checking for main in -lX11... no
checking X11/XKBlib.h usability.. no
checking X11/XKBlib.h presence... no
checking for X11/XKBlib support... no

My question is if this library files are nessecery ? and if yes, where do i get them?

2. My second question is about the pixelshader, which was compiled ok, but seems not to work.

I've copied this file d3dx9.lib from
C:\Program Files\Microsoft DirectX SDK (June 2010)\Lib\x86\d3dx9.lib

into MYSYS compiled directory and run:
reimp d3dx9.lib

then i copy the file: libd3dx9.a to C:\MinGW\lib
and finally i copied all the include directory of DX SDK into c:\mingw\include

Is there any other process or files that ii'm missing in order to make the pixelshader function to work?

3. When i run 3dfx games, it doesn't display the game on full window or fullscreen. Is this how the plugin behave? or do i need to config anything else in order to make show on real fullscreen?

Here is an example screenshot from the game "Grand Theft Auto 1" with the black bars on top and right of the screen:
rtffab.jpg

Thanks again for the help.

Reply 9 of 12, by gulikoza

User metadata
Rank Oldbie
Rank
Oldbie

You can check config.log to see why certain stuff was not detected. If directx headers were present, then ddraw.h should be detected. X11 stuff is for linux so that's ok...

3dfx runs at original resolution, GTA in this case at 512x384. If your monitor does not support that resolution it might display black bars. You can try switching to a higher resolution (F11 is my memory serves me right 😀)

http://www.si-gamer.net/gulikoza

Reply 10 of 12, by haimkob

User metadata
Rank Newbie
Rank
Newbie

Well, i've found out what was the problem with ddraw.h, it seems that the the 'Microsoft DirectX SDK (June 2010)' doesn't include this file anymore.
So i've installed 'Microsoft DirectX SDK (February 2010)', and copy the ddraw.h file from there.

Anyway, pixelshader support still doesn't work, even that on configuration process it says that everythis is ok.

About 3dfx, you where right about the f11 option for changing 3dfx resolution, but is there any way to config it on the ini or conf file, so it will always set the game to a higher resolution? (i think that pressing f11 each time is a bit annoying). 😉

Reply 11 of 12, by robertmo

User metadata
Rank l33t++
Rank
l33t++

if you quite the game properly it will be saved

Reply 12 of 12, by haimkob

User metadata
Rank Newbie
Rank
Newbie

thank you robertmo, you where right.