Thread Rating:
  • 3 Vote(s) - 2.33 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Power consumption on the Pcsx2
#1
I must ask, why does the emulator require so much juice just to run a ps2 game? Isn't there some way to streamline the programming any so that less power is required to play some of these games?
Windows 7 - Asus G73jh-a1 - 17-720qm @ 1.6 GHz (2.8 GHz)(2.4ghz)(1.73ghz) - ATI Mobility Radeon HD 5870 @ 700/1000 (sometimes oc to 800/1100) - 8 gig ram
Reply

Sponsored links

#2
Yes, there are a few ways. We've already included them.
IE: "Just running a ps2 games" is really, really hard and we're a bit tired of people that assume it isn't..

http://forums.pcsx2.net/thread-2330.html
Reply
#3
(09-11-2009, 06:39 PM)rama Wrote: Yes, there are a few ways. We've already included them.
IE: "Just running a ps2 games" is really, really hard and we're a bit tired of people that assume it isn't..

http://forums.pcsx2.net/thread-2330.html

*wow, head hurts*

well, I'll read over things and try to understand everything. I'll probably have to reread about 5 times before i understand.

Hope I don't get a warning for this post. I guess after finding out that my pc was just too weak, I didn't bother reading anything else. But then this questioned just kind of poped into my head.
Windows 7 - Asus G73jh-a1 - 17-720qm @ 1.6 GHz (2.8 GHz)(2.4ghz)(1.73ghz) - ATI Mobility Radeon HD 5870 @ 700/1000 (sometimes oc to 800/1100) - 8 gig ram
Reply
#4
Speaking about "power consumption". I know that pcsx2 uses recompilers which means some part of the game recompiled on the fly, right? But maybe it's possible to make pre-recompiled games? I mean when I take .iso, open in PCSX2, press "recompile" somewhere and have another .iso or something else as output. So when i specify this output, the power which normally needed for recompiling used somewhere else = speedup?
Reply
#5
(09-12-2009, 09:11 PM)Endymion Wrote: Speaking about "power consumption". I know that pcsx2 uses recompilers which means some part of the game recompiled on the fly, right? But maybe it's possible to make pre-recompiled games? I mean when I take .iso, open in PCSX2, press "recompile" somewhere and have another .iso or something else as output. So when i specify this output, the power which normally needed for recompiling used somewhere else = speedup?

Maybe, if you account for every possible move or action a player will take in the game. Which is horribly impractical.
http://www.twitch.tv/krazytrumpeter05
Want to stream your games? Let me know and I can help you get set up with Open Broadcaster Software.
Reply
#6
Still fails on most games, since they use dynamic code loading and execution. And other games use self-modifying code. Pre-compilation is only feasible on flat ROM-based systems, where code can't modify itself, and the entire executable is mapped in memory. I think the PSP qualifies and probably the GBA also. NES/SNES might not since those used all kinds of wacky hardware mappers designed to skirt around those systems' built in limitations.
Jake Stine (Air) - Programmer - PCSX2 Dev Team
Reply
#7
Too bad. Well, maybe at least partially something can be precompiled or make it recording dumps like linuziso, which can be used later. Anyway that's up to developers.

My understanding of how PS2 works is very limited, but I'd like to know one more thing.
Let's say we have FMV's in FFX-2. As I understand their current state is not so good and they not only buggy, but slow. I know that these FMVs consists of mpeg2 video stream and PS2 audio (similar to PCM but there should be some difference). There is nice GPL'ed opensource decoders for both of them. So is it impossible to freeze emulating in place, where the movie starts and decode them directly? Since emulating can be paused and resumed, and FMVs can be skipped this should be possible! Sure there is other games which uses different way of storing FMV's, but FFX-2, Dirge of Cerberus... is unwatchable without software mode or insanely slow.
Reply
#8
I think the emulator is trying to skip on hackey solutions to things and this would be beyond hackey.
[Image: 2748844.png]
Reply
#9
(09-13-2009, 03:43 AM)Endymion Wrote: I know that these FMVs consists of mpeg2 video stream and PS2 audio (similar to PCM but there should be some difference). There is nice GPL'ed opensource decoders for both of them.

... and we're using them Wink

Quote:So is it impossible to freeze emulating in place, where the movie starts and decode them directly? Since emulating can be paused and resumed, and FMVs can be skipped this should be possible!

Possible, yes, but not in the scope of emulation. What you propose is effectively manual sequencing, and would literally have to be hack-coded to suit almost every game. It requires reverse-engineering the game's stored locations of FMV and audio for each FMV and then detecting the signature for playing specific FMVs (which is different from just skipping all FMvs as most patches do!) turning off the emu, dumping them to disk, playing them, etc.

Furthermore this only works for a few games. Any game that uses FMV stuff behind menus (for example the start menu of FFXII!) would have to be fully emulated to be properly accessible.

There's a very good reason why no one's bothered to do it. Wink
Jake Stine (Air) - Programmer - PCSX2 Dev Team
Reply
#10
Recently while playing FFX and FFX-2 I wondered... There is some places where more power is needed for example magic spells. The most power consuming ones - Fire and Demi. And then I remembered option Frame Limiting - Normal. So after user inputs some command, maybe it's possible to retrieve some frames ahead (as fast as possible) up to the next user input and store them somewhere so they can be displayed when needed to preserve normal speed 60fps? This can be helpful but only if its easy to implement.
EDIT: also this can be helpful during some summonings... Ifrit's summoning - slowest thing I ever seen.

Or something like this already possible with frame limiting options?

P.S.
Sorry, my English is bad but I'm trying to keep it readable...
Reply




Users browsing this thread: 1 Guest(s)