What's new

Mupen64 0.1 source code

Hacktarux

Emulator Developer
Moderator
Finally i took some time to pack the mupen64 source code and i'm able to post source code of two linux plugins :)

Please be warned that the windows binary should be compiled with mingw, (a Dev-C++ project is included).
 
Last edited:
OP
Hacktarux

Hacktarux

Emulator Developer
Moderator
The tr64 plugin written by Icepir8 ported to linux
 
Last edited:
OP
Hacktarux

Hacktarux

Emulator Developer
Moderator
Also before you enjoy this release i would like to tell all people who enjoy n64 emulation that you should thank martin for hosting nearly all n64 emulator web sites, leading this great message board and emulation64 page and also hosting some other great emulation news sites like emufanatics and emuhelp. And one of the best way to thank him is to give him some money (even 5€ would be great) to upgrade the server (it had some problems lately).

To donate something click on the paypal link at the bottom of this page :)
 

Slougi

New member
/me downloads

Gonna try compiling with some more aggressive flags to see if it influences the results :)
 

Martin

Active member
Administrator
Hacktarux said:
Also before you enjoy this release i would like to tell all people who enjoy n64 emulation that you should thank martin for hosting nearly all n64 emulator web sites, leading this great message board and emulation64 page and also hosting some other great emulation news sites like emufanatics and emuhelp. And one of the best way to thank him is to give him some money (even 5€ would be great) to upgrade the server (it had some problems lately).

To donate something click on the paypal link at the bottom of this page :)

Thank you very much, Hacktarux. :)
I'm going to add these to the downloads section and then post about it at Emu64. :)
 

Sri Narayan

New member
Optimisation

I compiled mupen1.0 and tr64 with this options:

-fstrict-aliasing -fexpensive-optimizations -DINLINE=static__inline__ -foptimize-register-move -foptimize-sibling-calls -fprefetch-loop-arrays -freduce-all-givs -frename-registers -frerun-cse-after-loop -frerun-loop-opt -fschedule-insns -fno-sched-interblock -fsched-spec-load -fsingle-precision-constant -fssa -fstrength-reduce -fstrict-aliasing

and there is a lttle speed up


See U
 

Slougi

New member
Yes I saw some improvements as well. I need to test some more to see how the individual compiler flags affect the speed and stability. But initial recompiles raised speed by ~10-15%.
 
OP
Hacktarux

Hacktarux

Emulator Developer
Moderator
I have changed a bit the source code compared to 0.1 binary release and it should be a bit faster, nothing major but still a bit faster...

I don't think changing compiler flags in the core will really change speed but maybe you can expect some interesting improvements in the gfx plugin.

One last thing, be carefull with fpu optimizations.. the core needs that float is a 32 bits type and double is a 64 bits type and you should use the real fpu not sse...
 

Slougi

New member
Hacktarux said:
I have changed a bit the source code compared to 0.1 binary release and it should be a bit faster, nothing major but still a bit faster...

I don't think changing compiler flags in the core will really change speed but maybe you can expect some interesting improvements in the gfx plugin.

One last thing, be carefull with fpu optimizations.. the core needs that float is a 32 bits type and double is a 64 bits type and you should use the real fpu not sse...

Well, I recompiled both, not quite sure which one caused the speed jump! Now that we have two plugins I can test some more :)

Hmm, sse seems to work fine though? :geek:
 
OP
Hacktarux

Hacktarux

Emulator Developer
Moderator
enabling sse instructions should work but i don't think it changes anything besides inline asm which i don't use... i was talking about using sse for floating point types, i don't think it can work this way and if it works it's less accurate.
 

GuestX

New member
hm.. i am not very informed with mupen64 source, but i think
mupen64 uses dynamic... CORN uses static recompiling
or so.
 

Slougi

New member
Hacktarux said:
enabling sse instructions should work but i don't think it changes anything besides inline asm which i don't use... i was talking about using sse for floating point types, i don't think it can work this way and if it works it's less accurate.
Well, I did have -msse -fpmath=sse in the compile options :)
No problems yet!
 

Top