Difference between revisions of "PlayStation 3 emulators"

From Emulation General Wiki
Jump to navigation Jump to search
(Comparisons: RPCS3 June 2022 compatibility updates)
 
(45 intermediate revisions by 29 users not shown)
Line 2: Line 2:
 
|title = PlayStation 3
 
|title = PlayStation 3
 
|logo = PlayStation 2006.png
 
|logo = PlayStation 2006.png
|image = PS3_Original.png
+
|image = PS3_2009.png
|image2 = Sony-playstation-3-slim-1.jpg
+
|image2 = PS3_Original.png
|imagecaption = '''Top''': Original (2006)<br/>'''Bottom''': Slim (2009)
+
|image3 = PS3_slim.png
 +
|image4 = Playstation3_superslim.png
 +
|imagecaption = '''Top''': Original (2006)<br/>'''Middle''': Slim (2009)<br/> '''Bottom''': Super Slim (2012)
 
|developer = [[:Sony]]
 
|developer = [[:Sony]]
|type = [[:Category:Consoles|Home video game console]]
+
|type = [[:Category:Home consoles|Home video game console]]
 
|generation = [[:Category:Seventh-generation video game consoles|Seventh generation]]
 
|generation = [[:Category:Seventh-generation video game consoles|Seventh generation]]
 
|release = 2006
 
|release = 2006
Line 12: Line 14:
 
|predecessor = [[PlayStation 2 emulators|PlayStation 2]]
 
|predecessor = [[PlayStation 2 emulators|PlayStation 2]]
 
|successor = [[PlayStation 4 emulators|PlayStation 4]]
 
|successor = [[PlayStation 4 emulators|PlayStation 4]]
|emulated = {{~}}
+
|emulated = {{}}
 
}}
 
}}
  
The '''PlayStation 3''' (known shorthand as '''PS3''') is a seventh-generation console released by [[wikipedia:Sony|Sony]] in late 2006. The successor to the [[PlayStation 2 emulators|PlayStation 2]], it began development in 2001 when Sony partnered with Toshiba and IBM to create the [[wikipedia:Cell_%28microprocessor%29|Cell Broadband Engine]]. The console was launched a year after the [[Xbox 360 emulators|Xbox 360]], and around the same time as the [[Wii emulators|Wii]]. While it was the most powerful console of the seventh generation, it was also difficult to program for, as its architecture was even more complex than its competitors. It retailed for {{Inflation|USD|599|2006}}.
+
{{for|other emulators that run on PS3 hardware|Emulators on PS3}}  
  
The Cell Broadband Engine consists of a 3.2 GHz Power Processing Element (PPE) and seven Synergistic Processing Elements (SPE),<ref group=N>You might see listings of eight SPEs, but that's because there are eight on the die; one of them is disabled to prevent the manufacturer from yielding too many bad units. Another SPE is reserved for the console's operating system.</ref> and the system contains 256 MB of XDR DRAM main memory at 3.2 GHz and 256 MB of GDDR3 video memory at 650 MHz for the Nvidia/SCEI RSX Reality Synthesizer GPU. The GPU ran at 500 MHz and has to communicate forth and back with both RAMs. The complexity of the SPEs bogged down the PlayStation 3 in multi-platform titles, as it required developers to either learn it enough to use it, or don't use it at all. As a result, many multi-platform games ran with lower framerates or worse graphics.
+
 
 +
The '''PlayStation 3''' (known shorthand as '''PS3''') is a seventh-generation console released by [[wikipedia:Sony|Sony]] in late 2006. The successor to the [[PlayStation 2 emulators|PlayStation 2]], it began development in 2001 when Sony partnered with Toshiba and IBM to create the [[wikipedia:Cell_%28microprocessor%29|Cell Broadband Engine]]. The console was launched a year after the [[Xbox 360 emulators|Xbox 360]], and around the same time as the [[Wii emulators|Wii]]. While it was debatably the most powerful console of the seventh generation, it was also difficult to program for, as its architecture was even more complex than its competitors. It retailed for {{Inflation|USD|599|2006}}.
 +
 
 +
The Cell Broadband Engine consists of a 3.2 GHz Power Processing Element (PPE) and seven Synergistic Processing Elements (SPE),<ref group=N>You might see listings of eight SPEs, but that's because there are eight on the die; one of them is disabled to prevent the manufacturer from yielding too many bad units. Another SPE is reserved for the console's operating system.</ref> and the system contains 256 MB of XDR DRAM main memory at 3.2 GHz and 256 MB of GDDR3 video memory at 650 MHz for the Nvidia/SCEI RSX Reality Synthesizer GPU. The GPU ran at 500 MHz and has to communicate forth and back with both RAMs. The complexity of the SPEs bogged down the PlayStation 3 in multi-platform titles, as developers had to go through the process of learning the SPE architecture before they could use it. As a result, several developers decided against using the SPEs, and the consequence is that many multi-platform games ran with lower framerates or worse graphics, compared to running those same games on the PS3's competitors.
  
 
The number of units sold worldwide were about the same as the Xbox 360. The PlayStation 3 initially included a feature called OtherOS,<ref group=N>Which allowed the console to run many distributions of Linux and BSD in a separate partition as long as they supported PowerPC.</ref> but once it was removed shortly after the PS3 Slim model was released citing "security concerns", fail0verflow had a jailbreak detailed in 2010, giving way for [[PS3 Modding|modders to downgrade firmware on a specific version]] and install a custom firmware, something Sony would patch in newer updates until an exploit was released for 4.82. Emulation only started gaining traction in the late 2010s, as [[RPCS3]] had made strides in improving its largely HLE-based emulation. It has since become the emulator of choice.
 
The number of units sold worldwide were about the same as the Xbox 360. The PlayStation 3 initially included a feature called OtherOS,<ref group=N>Which allowed the console to run many distributions of Linux and BSD in a separate partition as long as they supported PowerPC.</ref> but once it was removed shortly after the PS3 Slim model was released citing "security concerns", fail0verflow had a jailbreak detailed in 2010, giving way for [[PS3 Modding|modders to downgrade firmware on a specific version]] and install a custom firmware, something Sony would patch in newer updates until an exploit was released for 4.82. Emulation only started gaining traction in the late 2010s, as [[RPCS3]] had made strides in improving its largely HLE-based emulation. It has since become the emulator of choice.
Line 23: Line 28:
 
==Emulators==
 
==Emulators==
 
{| class="wikitable" style="text-align:center;"
 
{| class="wikitable" style="text-align:center;"
|+PC
 
 
|-
 
|-
 
! scope="col"|Name
 
! scope="col"|Name
! scope="col"|Operating System(s)
+
! scope="col"|Platform(s)
 
! scope="col"|Latest Release Version
 
! scope="col"|Latest Release Version
 +
! scope="col"|<abbr title="Free/Libre and Open-Source Software">FLOSS</abbr>
 
! scope="col"|Active
 
! scope="col"|Active
 
! scope="col"|[[Recommended Emulators|Recommended]]
 
! scope="col"|[[Recommended Emulators|Recommended]]
 +
|-
 +
! colspan="6"|PC / x86
 
|-
 
|-
 
|[[RPCS3]]
 
|[[RPCS3]]
|Windows, Linux, BSD
+
|align=left|{{Icon|Windows|Linux|Mac|FreeBSD}}
|[https://github.com/RPCS3/rpcs3 0.0.6 Alpha]<ref group=N>The developers are currently treating version increments as milestones, not as stables.</ref>
+
|[https://github.com/RPCS3/rpcs3/releases {{RPCS3Ver}}]<ref group=N>The developers are currently treating version increments as milestones, not as stables.</ref>
 +
|{{✓}}
 
|{{✓}}
 
|{{✓}}
 
|{{✓}}
 
|{{✓}}
 
|-
 
|-
 
|[[Nucleus]]
 
|[[Nucleus]]
|Windows, Linux
+
|align=left|{{Icon|Windows|Linux}}
|[https://github.com/AlexAltea/nucleus/releases 0.1.0]
+
|[https://github.com/AlexAltea/nucleus/releases git]
 +
|{{✓}}
 
|{{✗}}
 
|{{✗}}
 
|{{✗}}
 
|{{✗}}
 
|-
 
|-
 
|Short Waves
 
|Short Waves
|Windows
+
|align=left|{{Icon|Windows}}
 
|[http://wololo.net/downloads/index.php/download/8128 0.0.2]
 
|[http://wololo.net/downloads/index.php/download/8128 0.0.2]
 +
|{{✗}}
 
|{{✗}}
 
|{{✗}}
 
|{{✗}}
 
|{{✗}}
 
|-
 
|-
 
|PS3F
 
|PS3F
|Windows
+
|align=left|{{Icon|Windows}}
|[https://web.archive.org/web/20161029044210/http://www.geocities.jp/mj3kj8o5/ps3f/index.html 0.0.0]
+
|[https://web.archive.org/web/20161029044210/http://www.geocities.jp/mj3kj8o5/ps3f/index.html 0.1]
|{{✓}}
 
 
|{{✗}}
 
|{{✗}}
|-
 
|ps3emu
 
|Windows
 
|[https://code.google.com/archive/p/ps3emu/Source]
 
 
|{{✗}}
 
|{{✗}}
 
|{{✗}}
 
|{{✗}}
Line 63: Line 68:
  
 
===Comparisons===
 
===Comparisons===
;[[RPCS3]]:An open-source emulator for 64-bit Windows, Linux and BSD. While it isn't anywhere near as compatible as [[Dolphin]] is for [[GameCube emulators|GameCube]] or Wii, it has still made immense progress compared to its early days where development was slow and seemed like it wasn't really going anywhere. Over 1,000 titles are now playable, with many more that go in-game and others that are at least loadable.<ref name="Compatibility Page">https://rpcs3.net/compatibility</ref>
+
;[[RPCS3]] <small class="plainlinks" style="font-weight:normal;">([https://rpcs3.net/compatibility compatibility])</small>:An open-source emulator for 64-bit Windows, GNU/Linux, BSD and MacOS. While it isn't anywhere near as compatible as [[Dolphin]] is for [[GameCube emulators|GameCube]] or Wii, it has still made immense progress compared to its early days where development was slow and seemed like it wasn't really going anywhere. As of July 1st 2022, 2210 titles (67.77%) are playable, 917 titles (28.12%) boot in-game, 131 titles (4.02%) display the intros and 3 titles (0.09%) are loadable.<ref name="Compatibility Page">https://rpcs3.net/compatibility</ref> As of April 13, 2022, builds for MacOS have started being officially distributed. <ref>https://twitter.com/rpcs3/status/1514302544750780417?s=20&t=e1g7-9NzgIehtodHmXYytQ</ref> 
 
;[[Nucleus]]:A one-man project aiming for LLE, some AOT emulation, and portability. Made by AlexAltea, lead coder of PlayStation 4 emulator, [[Orbital]].
 
;[[Nucleus]]:A one-man project aiming for LLE, some AOT emulation, and portability. Made by AlexAltea, lead coder of PlayStation 4 emulator, [[Orbital]].
 
;Short Waves:Made by InoriRus. It could run a few complex tests that RPCS3 couldn't at the time it released, but it hasn't been updated since.
 
;Short Waves:Made by InoriRus. It could run a few complex tests that RPCS3 couldn't at the time it released, but it hasn't been updated since.
Line 72: Line 77:
  
 
There are two major bottlenecks at play:
 
There are two major bottlenecks at play:
* '''Cell.''' It consists of two architectures that developers have to program for; PowerPC, and... whatever the SPEs really are. Add to that the fact that there are SEVEN that could be in use by a game, and you have a great formula for high system requirements. The RPCS3 developers technically cheat by using ahead-of-time recompilation using LLVM, but because the emulator constantly improves, that can be easily excused.
+
* '''[[wikipedia:Cell_(microprocessor)|Cell Broadband Engine]]''': It consists of two architectures that developers have to program for; PowerPC, and... whatever the SPEs really are. Add to that the fact that there are SIX that could be in use by a game, and you have a great formula for high system requirements. The RPCS3 developers technically cheat by using ahead-of-time recompilation using LLVM, but because the emulator constantly improves, that can be easily excused;
* '''[[wikipedia:RSX_Reality_Synthesizer|RSX Reality Synthesizer]].''' The [[Xbox emulators|Xbox]] also went unemulated for a long time, simply because of how many components were just undocumented. The same thing applies here; the graphics card is Nvidia-based, which means it's not well-documented and developers have to figure out how it displays graphics and graphical effects. Without access to Nvidia's resources, which would normally be included with an SDK, this would be very difficult.
+
* '''[[wikipedia:RSX_Reality_Synthesizer|RSX (Reality Synthesizer)]]''': The [[Xbox emulators|Xbox]] also went unemulated for a long time, simply because of how many components were just undocumented. The same thing applies here; the graphics card is Nvidia GeForce 7800 GTX-based, which means it's not well-documented and developers have to figure out how it displays graphics and graphical effects. Without access to Nvidia's resources, which would normally be included with an SDK, this would be very difficult.
 
:Something of note is that this GPU was also managed by two different memory units with very disparate frequency speeds; 1) 256 MB of GDDR3 RAM clocked at 650 MHz with an effective transmission rate of 1.4 GHz, and 2) up to 224 MB of the 3.2 GHz XDR main memory via the CPU (480 MB max).
 
:Something of note is that this GPU was also managed by two different memory units with very disparate frequency speeds; 1) 256 MB of GDDR3 RAM clocked at 650 MHz with an effective transmission rate of 1.4 GHz, and 2) up to 224 MB of the 3.2 GHz XDR main memory via the CPU (480 MB max).
  
Line 86: Line 91:
 
The author of this preliminary implementation, [https://github.com/VelocityRa velocityra], is a dedicated developer for [[RPCS3]] and [[Vita3K]].
 
The author of this preliminary implementation, [https://github.com/VelocityRa velocityra], is a dedicated developer for [[RPCS3]] and [[Vita3K]].
 
His own branch of the PSMove has advanced further, as the PSEye and PSMove controllers are already physically supported using the PSMoveAPI.
 
His own branch of the PSMove has advanced further, as the PSEye and PSMove controllers are already physically supported using the PSMoveAPI.
A pretty old compatibility list can be found [https://workflowy.com/s/move-compatibility/6TV4dP3JcvHwhyUC here]. Some YouTube videos are also showing the work-in-progress functionality working.<ref>[https://www.youtube.com/watch?v=rrmb_2ULbKo RPCS3 - PSMove WIP VK] (April 03, 2018)</ref> The author unfortunately stopped working on this implementation a few months ago.
+
A pretty old compatibility list can be found [https://workflowy.com/s/move-compatibility/6TV4dP3JcvHwhyUC here]. Some YouTube videos are also showing the work-in-progress functionality working.<ref>[https://www.youtube.com/watch?v=rrmb_2ULbKo RPCS3 - PSMove WIP VK] (April 03, 2018)</ref> The author unfortunately stopped working on this implementation years ago.
  
 
==Notes==
 
==Notes==
Line 95: Line 100:
  
 
[[Category:Consoles]]
 
[[Category:Consoles]]
 +
[[Category:Home consoles]]
 
[[Category:Sony consoles]]
 
[[Category:Sony consoles]]
 
[[Category:Seventh-generation video game consoles]]
 
[[Category:Seventh-generation video game consoles]]
[[Category:PlayStation 3 emulators]]
+
[[Category:PlayStation 3 emulators|*]]

Latest revision as of 22:09, 13 July 2022

PlayStation 3
PlayStation 2006.png
PS3 2009.png
PS3 Original.png
PS3 slim.png
Playstation3 superslim.png
Top: Original (2006)
Middle: Slim (2009)
Bottom: Super Slim (2012)
Developer Sony
Type Home video game console
Generation Seventh generation
Release date 2006
Discontinued 2017
Predecessor PlayStation 2
Successor PlayStation 4
Emulated
For other emulators that run on PS3 hardware, see Emulators on PS3.


The PlayStation 3 (known shorthand as PS3) is a seventh-generation console released by Sony in late 2006. The successor to the PlayStation 2, it began development in 2001 when Sony partnered with Toshiba and IBM to create the Cell Broadband Engine. The console was launched a year after the Xbox 360, and around the same time as the Wii. While it was debatably the most powerful console of the seventh generation, it was also difficult to program for, as its architecture was even more complex than its competitors. It retailed for $599.

The Cell Broadband Engine consists of a 3.2 GHz Power Processing Element (PPE) and seven Synergistic Processing Elements (SPE),[N 1] and the system contains 256 MB of XDR DRAM main memory at 3.2 GHz and 256 MB of GDDR3 video memory at 650 MHz for the Nvidia/SCEI RSX Reality Synthesizer GPU. The GPU ran at 500 MHz and has to communicate forth and back with both RAMs. The complexity of the SPEs bogged down the PlayStation 3 in multi-platform titles, as developers had to go through the process of learning the SPE architecture before they could use it. As a result, several developers decided against using the SPEs, and the consequence is that many multi-platform games ran with lower framerates or worse graphics, compared to running those same games on the PS3's competitors.

The number of units sold worldwide were about the same as the Xbox 360. The PlayStation 3 initially included a feature called OtherOS,[N 2] but once it was removed shortly after the PS3 Slim model was released citing "security concerns", fail0verflow had a jailbreak detailed in 2010, giving way for modders to downgrade firmware on a specific version and install a custom firmware, something Sony would patch in newer updates until an exploit was released for 4.82. Emulation only started gaining traction in the late 2010s, as RPCS3 had made strides in improving its largely HLE-based emulation. It has since become the emulator of choice.

Emulators[edit]

Name Platform(s) Latest Release Version FLOSS Active Recommended
PC / x86
RPCS3 Windows Linux macOS FreeBSD 0.0.23 Alpha[N 3]
Nucleus Windows Linux git
Short Waves Windows 0.0.2
PS3F Windows 0.1

Comparisons[edit]

RPCS3 (compatibility)
An open-source emulator for 64-bit Windows, GNU/Linux, BSD and MacOS. While it isn't anywhere near as compatible as Dolphin is for GameCube or Wii, it has still made immense progress compared to its early days where development was slow and seemed like it wasn't really going anywhere. As of July 1st 2022, 2210 titles (67.77%) are playable, 917 titles (28.12%) boot in-game, 131 titles (4.02%) display the intros and 3 titles (0.09%) are loadable.[1] As of April 13, 2022, builds for MacOS have started being officially distributed. [2]
Nucleus
A one-man project aiming for LLE, some AOT emulation, and portability. Made by AlexAltea, lead coder of PlayStation 4 emulator, Orbital.
Short Waves
Made by InoriRus. It could run a few complex tests that RPCS3 couldn't at the time it released, but it hasn't been updated since.
PS3F
Made by Shima, the creator of SSF. More information can be found here.

Emulation issues[edit]

PlayStation consoles have always been notorious for system complexity. Sony's gamble of their technology being emulator-unfriendly makes them developer-unfriendly as well, and the system's weaker performance in cross-platform games proves it. Even if done properly, an LLE approach would be performance suicide as some things just have to be abstracted enough to get high framerates in games. The situation is so bad that Sony seems to be incredibly hesitant to introduce an emulator on the PlayStation 4, simply because they wouldn't be able to justify the potentially high cost of development to investors.[3]

There are two major bottlenecks at play:

  • Cell Broadband Engine: It consists of two architectures that developers have to program for; PowerPC, and... whatever the SPEs really are. Add to that the fact that there are SIX that could be in use by a game, and you have a great formula for high system requirements. The RPCS3 developers technically cheat by using ahead-of-time recompilation using LLVM, but because the emulator constantly improves, that can be easily excused;
  • RSX (Reality Synthesizer): The Xbox also went unemulated for a long time, simply because of how many components were just undocumented. The same thing applies here; the graphics card is Nvidia GeForce 7800 GTX-based, which means it's not well-documented and developers have to figure out how it displays graphics and graphical effects. Without access to Nvidia's resources, which would normally be included with an SDK, this would be very difficult.
Something of note is that this GPU was also managed by two different memory units with very disparate frequency speeds; 1) 256 MB of GDDR3 RAM clocked at 650 MHz with an effective transmission rate of 1.4 GHz, and 2) up to 224 MB of the 3.2 GHz XDR main memory via the CPU (480 MB max).

In short: expect game-breaking issues of one kind or another in the vast majority of titles at this point in time.

PlayStation Move[edit]

The PlayStation Move is a controller similar to a Wiimote, shaped to be held into hand and play with motion detection. It is detected by the PSEye, the successor of the PS2's EyeToy. The PSEye is usable on PC as it benefits from unofficial drivers made by the community. It is not yet implemented in a PS3 emulator. RPCS3 had some first steps implemented for PSMove use but the controllers aren't working yet.

The author of this preliminary implementation, velocityra, is a dedicated developer for RPCS3 and Vita3K. His own branch of the PSMove has advanced further, as the PSEye and PSMove controllers are already physically supported using the PSMoveAPI. A pretty old compatibility list can be found here. Some YouTube videos are also showing the work-in-progress functionality working.[4] The author unfortunately stopped working on this implementation years ago.

Notes[edit]

  1. You might see listings of eight SPEs, but that's because there are eight on the die; one of them is disabled to prevent the manufacturer from yielding too many bad units. Another SPE is reserved for the console's operating system.
  2. Which allowed the console to run many distributions of Linux and BSD in a separate partition as long as they supported PowerPC.
  3. The developers are currently treating version increments as milestones, not as stables.

References[edit]