First post, by AnimeG
Have any clue which build is faster? I'm trying to get my old Syndicate Wars game to run, it runs without sound with VDMSound, and it runs like a slug in DosBox.
Have any clue which build is faster? I'm trying to get my old Syndicate Wars game to run, it runs without sound with VDMSound, and it runs like a slug in DosBox.
Maybe ykhwong's? I *think* that has some extra gfx optimisation not in 0.65, but don't quote me on that. TBH, I don't think there's much speed difference between builds.
Syndicate wars is a fairly demanding game. How fast is your PC?
OTOH ykhwong has a LOT of other patches integrated. Who knows what that does to speed. I don't have a PC to really test that 😀
do you have any experience with compiling source code?
if so you might be better off compiling a version for yourself with cpu optimizations for your own specific cpu (amd athlon xp; intel pentium 3, pentium 4).
as for myself, i've tried several different compiles with different versions of gcc and through my very unscientific benchmarking i have determined that both if the sdl.dll & dosbox.exe are both compiled with gcc 3.4.2 gets the best speed. i compiled both sdl.dll & dosbox.exe with gcc 3.4.2,3.4.5;4.0.2;4.0.3; & 4.1.0 and mixed and matched dll's & exe's to determine which gave the best speed.
the interesting part for me is that everthing else i compile, works faster when compiled with gcc 4.1.0 but not dosbox, it still likes 3.4.2.
I've done compilations before, and they just give me a big headache.
there is not even a 4.x for mingw 🙁
What do you have to pass in the config for the optimizations, I'm always wondering.
Well, I have a beta of Microsoft C++.Net
i'll try to keep this as simple as i can.
this is what i did for multi installs of gcc:
install whatever version of mingw you are using in a folder, ex:
c:\mingw\3.4.2
instead of c:\mingw
then install msys.
then say you want to also use 4.1.0
so install another copy of gcc to another folder, ex:
c:\mingw\4.1.0
then point msys to use the 4.1.0 instead of 3.4.2 by changing the file fstabs in c:\msys\1.0\etc\
by default if you did a normal install of mingw/msys
it would look something like:
c:/mingw /mingw
but you want one for 3.4.2 to be:
c:/mingw/3.4.2 /mingw
and the one for 4.1.0 to be:
c:/mingw/4.1.0 /mingw
save these as separate files in your /etc folder and use scripts to swap between the two when needed.
now back to installing gcc 4.1.0 in mingw.
download and unpack gcc 4.1.0 to your $home folder in msys (you should know where this is).
now in msys do this:
cd gcc-4.1.0/
mkdir obj
cd obj
../configure --with-gcc --with-ld=/mingw/bin/ld.exe --with-as=/mingw/bin/as.exe --prefix=/mingw --enable-__cxa_atexit --enable-threads=win32 --disable-nls --disable-debug --enable-languages=c,c++ --disable-win32-registry --disable-shared --without-x --enable-interpreter --enable-hash-synchronization
make CFLAGS="-O2 -march=athlon-xp -pipe -fomit-frame-pointer -ffast-math -mfpmath=sse" CXXFLAGS="-mthreads -fno-omit-frame-pointer -O2 -march=athlon-xp -pipe -mfpmath=sse" LDFLAGS=-s bootstrap
make install
pay attention in the CFLAGS that i use "-march=athlonx-xp" and "mfpmath=sse" as the lowest cpu i always compile for is the a-xp so i include these will all my builds, they really are not neccessary for compling gcc, but that's just me.
hey animeg, what is your cpu?
which flags do you have to use for a P4?
(and where can you find a download for gcc 4.1.0?)
"-march=pentium4"
and "mfpmath=sse" is just as important too.
make CFLAGS="-O2 -march=pentium4 -pipe -fomit-frame-pointer -ffast-math -mfpmath=sse" CXXFLAGS="-mthreads -fno-omit-frame-pointer -O2 -march=pentium4 -pipe -mfpmath=sse" LDFLAGS=-s bootstrap
i've had troubles getting the entire system to compile/upgrade, but all you really need is the core + g++
so here are a few mirrors:
ftp://ftp.mirrorservice.org/sites/sources.red … re-4.1.0.tar.gz
ftp://ftp.mirrorservice.org/sites/sources.red … ++-4.1.0.tar.gz
ftp://gd.tuwien.ac.at/gnu/gcc/releases/gcc-4. … re-4.1.0.tar.gz
ftp://gd.tuwien.ac.at/gnu/gcc/releases/gcc-4. … ++-4.1.0.tar.gz
ftp://ftp.fu-berlin.de/unix/languages/gcc/rel … re-4.1.0.tar.gz
ftp://ftp.fu-berlin.de/unix/languages/gcc/rel … ++-4.1.0.tar.gz
phew I do think I'm going to wait for a mingw release or candidate of gcc 4.1.0. I saw some discouraging discussions of how to compiling it 😀
most probs i saw and also ran into was trying to do the entire thing.
with what i posted has worked for me.
the key i've found is using the mingw installer to install another copy to another folder. then pretty much copy/paste what i posted.
but i'm sure we've bored everyone else on the subject of updating to gcc-4.x.x.
you might need to enable those old style exceptions as well. I didn't do it in my first buildsystem and dosbox crashed during crashing 😀 (try pressing the X in top of the windows with your builds to see if DOSBox exits gracefully.
Water flows down the stream
How to ask questions the smart way!
Is there a good site with cflags explained? Google does not really help, it mainly lists maillists, and I always wondered how fast my own builds would be.... a summary site would be real nice, but I'd also be glad just to know what's best to use with an Intel Centrino (Pentium M) Processor.
Thx in Advance 😀
i think the 0.65 stock build is quite suitable for your pentium centrino.
Water flows down the stream
How to ask questions the smart way!
messing around with cflags can get UGLY, but if you feel the need to beat yourself up:
http://gcc.gnu.org/onlinedocs/gcc-3.4.6/gcc/i … 64-Options.html
http://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html
but if you really want to try to build your own, these might help but don't expect a massive performance boast:
./configure CFLAGS="-g -O3 -march=pentium-m -pipe -fomit-frame-pointer -funroll-loops -ffast-math -mfpmath=sse" CXXFLAGS="-g -O3 -march=pentium-m -pipe -fomit-frame-pointer -funroll-loops -ffast-math -mfpmath=sse"