• Login
  • Register
  • Dolphin Forums
  • Home
  • FAQ
  • Download
  • Wiki
  • Code


Dolphin, the GameCube and Wii emulator - Forums › Dolphin Emulator Discussion and Support › Development Discussion v
« Previous 1 ... 113 114 115 116 117 Next »

Dolphin SVN 3374 with Framelimiter (32+64bit)
View New Posts | View Today's Posts

Pages (3): 1 2 3 Next »
Thread Rating:
  • 7 Vote(s) - 2.14 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Thread Modes
Dolphin SVN 3374 with Framelimiter (32+64bit)
06-07-2009, 08:26 PM (This post was last modified: 06-09-2009, 12:53 AM by Iulius.)
#1
Iulius Offline
Senior Member
****
Posts: 410
Threads: 6
Joined: Jun 2009
edit :
nobody wanted to help, so i did it alone Tongue


download : http://ul.to/1z88m3 at uploaded.to
(includes .patch with source code changes)

version with 32bit + JITIL : http://ul.to/d2uobk


another mirror with 32bit + JITIL + 64Bit + sourcecode :
http://www.zshare.net/download/61105476a996db47/



hope you like it Smile
Find
Reply
06-07-2009, 08:44 PM
#2
KHRZ Offline
Above and Beyond
*******
Posts: 1,527
Threads: 61
Joined: Mar 2009
That's really cool, does it work in Metroid Prime? (E.g. Limiting frames to 30 instead of 50/60, keepinig speed at full)
Specs: intel i5 3570k @ 3.4GHz;
16Gb RAM; Raedon HD 7900;
Win8 64-Bit
Website Find
Reply
06-07-2009, 09:41 PM (This post was last modified: 06-07-2009, 10:31 PM by Iulius.)
#3
Iulius Offline
Senior Member
****
Posts: 410
Threads: 6
Joined: Jun 2009
i dont know, only got the 4 games i wrote for testing.

but you can compile it yourself to test it.

at the moment its 75% chance that it works Tongue


edit : made a new one.

the old one changes waitingtime only once a second.
The new one uses each new frametime for cpu-suspend.

This produces much more stable FPS + will not cause any slowdown if game runs slower then choosen framelimit.

still, SSBM does not work. other 3 games work very well.


Code:
[b]static u32 targetfps = 30;
    static u64 old_frametime=0;
    u64 new_frametime;
    s16 wait_frametime;[/b]

    frames++;

    [b]new_frametime=Timer.GetTimeDifference()-old_frametime;

    old_frametime=Timer.GetTimeDifference();

    wait_frametime=((1000/targetfps)-new_frametime)-1;
    if (wait_frametime>0)
        Common::SleepCurrentThread(wait_frametime*2);
[/b]
    if (Timer.GetTimeDifference() >= 1000)
    {
        [b]old_frametime=0;[/b]
Find
Reply
06-08-2009, 12:25 AM
#4
cmccmc
Unregistered
 
looks great, good job
Reply
06-08-2009, 02:15 AM (This post was last modified: 06-08-2009, 02:18 AM by Iulius.)
#5
Iulius Offline
Senior Member
****
Posts: 410
Threads: 6
Joined: Jun 2009
included it into main config window.

Few screens attached.

to compare : with "other audio on" its 18fps with 100% cpu use Smile


           


still need help with the thread management.

it seems "CurrentThread" isn't enough for every game. but i have no idea which threads are running and how i can make them go to sleep.
Find
Reply
06-08-2009, 02:39 AM (This post was last modified: 06-08-2009, 02:44 AM by BlackLionPT.)
#6
BlackLionPT Offline
BlackLionPT
***
Posts: 91
Threads: 18
Joined: Mar 2009
can you compile the lastest version of dolphin, with that plz?
To test, if my games work too =p
and this is one great think that MUST be implemented in googlecode, to the official dolphin project =p
[Image: 25g484l.gif]
CPU: Intel i7 2600 @ 4.6Ghz 1.295V | Motherboard: ASRock Z77 Extreme6 | RAM: 8 GB DDR3 1600Mhz CL7 | GPU: Ati 5870 1 GB + Artic Cooling Xtreme III | HD: 5TB (500GB x2 Raid0 + 2x2TB)
Find
Reply
06-08-2009, 03:38 AM
#7
Iulius Offline
Senior Member
****
Posts: 410
Threads: 6
Joined: Jun 2009
i created a patch that can be used to compile yourself :

http://rapidshare.com/files/241944421/framelimit-patch.patch.html


maybe i can provide compiled version later, if needed.
Find
Reply
06-08-2009, 05:06 AM
#8
BlackLionPT Offline
BlackLionPT
***
Posts: 91
Threads: 18
Joined: Mar 2009
i don't know how to compile this, but isn't there a way to compile only the file tan contains this frame limit think, and than replace the file in normal dolphin?
[Image: 25g484l.gif]
CPU: Intel i7 2600 @ 4.6Ghz 1.295V | Motherboard: ASRock Z77 Extreme6 | RAM: 8 GB DDR3 1600Mhz CL7 | GPU: Ati 5870 1 GB + Artic Cooling Xtreme III | HD: 5TB (500GB x2 Raid0 + 2x2TB)
Find
Reply
06-08-2009, 05:27 AM
#9
Iulius Offline
Senior Member
****
Posts: 410
Threads: 6
Joined: Jun 2009
it would be possible for the same rev of dolphin, but as this changes 20 times a day, it would not make sense to do that.

i'll upload a compiled version of newest svn + framelimit tomorrow.
Find
Reply
06-08-2009, 08:03 PM (This post was last modified: 06-08-2009, 10:31 PM by Iulius.)
#10
Iulius Offline
Senior Member
****
Posts: 410
Threads: 6
Joined: Jun 2009
edit : got it Big Grin

problem was the dualcore watchdog which was only checking every 4th frame at 60fps.

this means 3 frames were still running too fast resulting in too fast gameplay.


i updated it to check every frame @ 60fps and now SSBM also works Smile

compiled file and sourcecode in first post.
Find
Reply
« Next Oldest | Next Newest »
Pages (3): 1 2 3 Next »


  • View a Printable Version
  • Subscribe to this thread
Forum Jump:


Users browsing this thread: 1 Guest(s)



Powered By MyBB | Theme by Fragma

Linear Mode
Threaded Mode