5 ms·
RPCS3: An open-source PlayStation 3 emulator for Windows written in C++
- catmanjan 12y agoHere is a video of it running Disgaea 3 https://www.youtube.com/watch?v=IQEv6B6fIgA https://www.youtube.com/watch?v=IQEv6B6fIgA
- jerf 12y agoDon't miss the comment in the video description that the video itself is sped up by a factor of 8. It's definitely a start, though!
- higherpurpose 12y agoI doubt this will run well on anything but the latest high base clock PC's. I have a 2.2 Ghz Sandy Bridge laptop, with Turbo Boost up to 3.1 Ghz, but Turbo Boost is mainly marketing scam by Intel, so it will run as if it's 2.2 Ghz. Plus Haswell only has a ~15 percent IPC improvement over SNB. With the PS2 emulator I can't even get 60 fps for most games.
- noir_lord 12y agoDoes it matter though, this is an elegant hack in the true sense of the word. The cell processors architecture pretty much rules out high fidelity emulation directly on an x86 chip any time soon. Not all hacks have to be useful (even for a given value of useful).
- juliangoldsmith 12y agoI disagree. High-speed emulation of the processor would be possible using dynamic recompilation, a la QEmu. Someone would just have to write the code to do it.
- gambiting 12y agoI disagree. Dynamic recompilation wouldn't help with the fact that x86 just doesn't have an equivalent of SPUs. They can be emulated, but they will be nowhere near as fast as the real thing. You can reliably emulate the PPU but that's about it. I've programmed for the PS3 and the architecture is so different to x86 that any emulation would have to somehow make up for the hardware that doesn't exist in x86. Early games for the PS3 didn't even use the SPUs, or barely used them, running mostly on the PPU, and those games should run fairly decently fairly soon. But latest games like The Last Of Us, where the SPUs have been pushed to the limit? I wouldn't count on that being emulated anytime soon.
- noir_lord 12y agoIt's not "just" a software problem. The SPU's are a fundamentally different architecture to an x86 been something akin to a graphics card, heavily optimised for a very particular kind of floating point calculations (somewhat similar to SSE but much more task focused). A more likely approach is to use something like CUDA/OpenCL but again while closer in architecture the SPU's are incredibly optimised for one thing.
- cc439 12y agoI think the best chance for emulating the SPUs would be with an Intel processor equipped with Iris Pro and the shared L4 cache. The latency and memory sharing issues involved with using a dedicated GPU would impose a huge bottleneck and the AMD APUs are just so weak in IPC terms.
- K0nserv 12y agoAs it stands right now the chance of seeing a playable PS3 emulator is much less than the chance of seeing a playable PS4 emulator. This is of course due to the x86 processor on PS4 EDIT: DCKing corrected me on this I erroneously assumed that the CPU architecture was the main hurdle. Turns out the GPU is a much bigger problem. The more you know, thanks DCKing.
- DCKing 12y agoThis is not true. The great complexity of modern GPUs is a much larger problem generally than emulating a CPU. Furthermore, the previous x86-equipped console, the original Xbox, never saw any decent progress in emulation whereas its far more exotic competitors have really good emulators. That's not to say the exotic Cell architecture is not a major problem for PS3 emulation. It is. But having an x86 CPU does not seem to increase the emulatability of a console at all.
- nathanb 12y agoDo you think this is because of difficulty in emulation or because the X-Box was so easy to hack? It was not super expensive to buy a used X-Box and mod it even back when new games were coming out for it, so maybe it just didn't seem like a worthwhile investment to spend time writing an emulator?
- Springtime 12y agoI'd recommend reading this post [1] by the dev of an existing Xbox emulator. It's a summary of the issues inherent to the emulation of the original Xbox, highlighting some major hurdles and technical difficulties that would have to be overcome. [1] http://www.neogaf.com/forum/showpost.php?p=48088464&postcount=26 http://www.neogaf.com/forum/showpost.php?p=48088464&postcoun...
- herokusaki 12y agoWhy doesn't the developer's post address the possibility of visualizing the CPU rather than emulating it?
- Torn 12y agoIt won't run well, period. It's very early stages and isn't even handling textures properly, let alone running games smoothly.
- supergauntlet 12y agointeresting tidbit - if you search 'turbo boost is a marketing scam' on google your comment is the first result.
- Springtime 12y agoThe first public version was released in 2011 [1], they've come a long way. Kudos to them for keeping at it all this time, always a little encouraging to hear progress on such projects. [1] http://code.google.com/p/rpcs3/source/detail?r=1 http://code.google.com/p/rpcs3/source/detail?r=1
- Sir_Cmpwn 12y agoXbox 360 emulator under the same line of thought: https://github.com/benvanik/xenia https://github.com/benvanik/xenia
- caractacus 12y agoHow will this finesse the (hardware-based) DRM on PS3 games?
- jevinskie 12y agoMost of the encryption done on the PS3 is actually performed in software on an isolated SPU core. The crypto code has been dumped and the algorithms reversed. This emulator leverages naehrwert's excellent scetool to decrypt the SELF files.
- simias 12y agoI wonder if we'll see "emulators" for the PS4 and XBox One soon (maybe even sooner than usable PS3 emulators) given that they both use x86-64 CPU architecture. It seems we wouldn't even need emulation, "just" an API emulation layer like Wine. And I think the ps3 used openGL, so it might not be too difficult to map that to native calls. And unlike emulators we'd get near-native speeds. Actually that sounds a bit too simple to be true, what am I missing?
- Narishma 12y agoNeither PS3 nor PS4 (if that's what you meant) use OpenGL. I don't know why this myth is so prevalent.
- simias 12y agoI was talking specifically about the PS4. I don't know why I thought they'd use OpenGL, I just naively thought Xbox == DirectX and PS4 == OpenGL. Seemed easier for the devs to port their games on a well known and documented API. What do they use instead? A custom API?
- Pxl_Buzzard 12y agoThe PS4 uses a couple APIs for game graphics, GNM and GNMX[1]. I've heard that their shader language is similar to GLSL (corrected by lunixbochs). The menus are built in WebGL running inside a stripped-down Webkit browser. Developers are unable to use WebGL for games, but it isn't out of the question that will be supported in the future. [1] https://en.wikipedia.org/wiki/PlayStation_4_system_software https://en.wikipedia.org/wiki/PlayStation_4_system_software
- lunixbochs 12y agoHLSL is Microsoft's shading language. GLSL is the OpenGL shading language.
- 12y ago
- rubyn00bie 12y agoUhh... it's also for Linux. Comments in the forums look like the Linux version is just as mature as the Windows one. Also the FAQ says nothing about "windows only." Gotta make sure Windows doesn't get all the gaming glory, eh? Eh?! Eh?!?!?!
- simcop2387 12y agoTop lines of the FAQ currently > What is RPCS3? > RPCS3 is an open-source Sony PlayStation 3 emulator for Windows written in C++. It currently runs only small homebrew applications. The source code for RPCS3 is hosted at: https://github.com/DHrpcs3/rpcs3/ https://github.com/DHrpcs3/rpcs3/
- rubyn00bie 12y agoIt doesn't say "only," and at the bottom of the page: As long as this platform is powerful enough to emulate the PlayStation 3, yes, there is a high chance that RPCS3 will be ported there. However, at the moment we only target Windows and Linux. Boo-ya-ka-sha? FAQ is probably just outdated. Never seen that on an open source project ;-) luckily I read the whole thing <3