Changes

Jump to navigation Jump to search

PlayStation 3 emulators

457 bytes added, 6 May
Hardware features and peripherals
|{{~}}
|{{~}}
|[https://rpcs3.net/compatibility 69%<br/><small>2551 2555 out of 3689 3694 reported titles</small>]
|{{✓}}
|{{✓}}
| {{?}}[https://github.com/RPCS3/rpcs3/pull/15000 *]
|-
| Super-resolution techniques<br/><small>([https://github.com/NVIDIAGameWorks/Streamline/blob/main/docs/ProgrammingGuideDLSS.md DLSS], [https://github.com/intel/xess/?tab=readme-ov-file XeSS ] and [[Wikipedia:GPUOpen#FidelityFX_Super_Resolution|FSR 2+]])</small>
| <small>Requires access to the depth buffer and temporal data like motion-vectors so it's quite challenging and unlikely to be feasible in the near future.</small>
|-
|-
|[[#PSP_communication|PSP communication]]
| {{~}}
|-
|[[#PSVita_communication|PSVita communication]]
| {{~}}
|-
|colspan=2 | [[Wikipedia:PlayStation_Eye#Compatible_games|PlayStation Eye]]| {{✓}}|-|rowspan=3 4 | Portal
| [https://skylanders.fandom.com/wiki/Portal_of_Power Skylanders Portal of Power]
| {{Y}}[https://wiki.rpcs3.net/index.php?title=Help:Peripherals_and_accessories#Skylanders_Portal *]
| [https://disneyinfinity.fandom.com/wiki/Disney_Infinity_Base Disney Infinity Base]
| {{Y}}[https://github.com/RPCS3/rpcs3/pull/13851 *]
|-
| Rider Gate Portal (Kamen Rider Summonride)
| {{~}}<abbr title="Only supported through USB passthrough">*</abbr>
|-
|colspan=2 | Rock Band 3 MIDI Pro Adapter
|-
|colspan=2 | DJ Hero turntable
| {{~Y}}<abbr title="Only supported through USB passthrough">[https://github.com/RPCS3/rpcs3/pull/9965 *</abbr>]
|-
|colspan=2 | [[#Blu-ray Disc remotes|Blu-ray Disc remotes]]
|rowspan=3 | LightGun
| [[Wikipedia:GunCon#GunCon_3_compatible_games|GunCon 3]]
| {{TBDY}}[https://github.com/RPCS3/rpcs3/pull/15528 *]
|-
| Top Shot Elite
| {{~}}<abbr title="Only supported through USB passthrough">*</abbr>
|-
| Top Shot Fearmaster
| {{~}}<abbr title="Only supported through USB passthrough">*</abbr>|-|colspan=2 | Rapala Fishing Rod| {{~}}<abbr title="Only supported through USB passthrough">*</abbr>
|-
|colspan=2 | [[Wikipedia:UDraw_GameTablet|uDraw GameTablet]]
| {{~Y}}[https://wikigithub.com/RPCS3/rpcs3.net/index.php?title=Help:Peripherals_and_accessories#cellUsbd_Device_Whitelist <abbr title="Only supported through USB passthrough">pull/15457 *</abbr>]
|-
|colspan=2 | [[Wikipedia:Wonderbook|Wonderbook]]
| {{TBDN}}[https://rpcs3.net/compatibility?g=Wonderbook#jump *]
|}
</div>
:[https://manuals.playstation.net/document/en/ps3/current/game/copypsp.html Copying games to play on a PSP system that can be played on either PS3 or PSP systems]
Adhoc Party support, remote play (via the PS3 system's wireless LAN), copying games to play on a PSP system that can be played on either PS3 or PSP systems etc.
*RPCS3 do not support PSP communication emulation at the moment. There is a [https://github.com/RPCS3/rpcs3/issues/4119 feature request] for this. Recently [https://github.com/RPCS3/rpcs3/pull/15540 UsbPspCm passthrough support added to RPCS3].
===PSVita communication===
There are two major bottlenecks at play:
* '''[[wikipedia:Cell_(microprocessor)|Cell Broadband Engine]]''' - consists of two architectures that developers have to program for; [[POS_(Pong_Consoles)_CPUs_and_Other_Chips#PPC_CPUs|PowerPC]], and... whatever the SPEs really are; and you have a great formula for high system requirements, SPU hardware environment is the furthest thing from a [[POS_(Pong_Consoles)_CPUs_and_Other_Chips#x86_CPUs|x86 PC processor]]. The RPCS3 developers using ahead-of-time recompilation using LLVM. RPCS3 is not just compiling the code it runs, it's also needs to compile a realtime environment simulator e.g. the 128x128bit register file, LS sram, the very weird memory flow controller, etc [https://discord.com/channels/272035812277878785/272083901277667342/1200171144603512892]. SPEs closer to [[PlayStation_2_emulators#Emulation_issues|VUs from PS2]] than to a GPU. They're a SIMD cluster, don't be fooled by their apparent similarity to GPUs. GPU are low throughput but very wide. SPEs are also wide, but not so much so. However, their individual thread throughput is insane even compared to a something like RTX 4090 GPU. It's not possible to beat SPUs 1:1 (it's ALL vector, it doesn't have scalar registers at least not general-purpose ones), they have 128 registers and very low latency SRAM, almost no memory fetches and everything is async. Although AVX-512 comes close in performance (at 5+ GHz). GPUs on the other hand are around 10-100x slower, but that's just because of how their cores are designed and the fact that SPU kernels are optimized to run in much smaller groups. There's too much working against emulation at 3.2 GHz rate since most SPU instructions need many instructions on PC (like dozens in some cases), so the PC side needs to be an order of magnitude faster.[https://discord.com/channels/272035812277878785/272083901277667342/1197648306084524202]
* '''[[wikipedia:RSX_Reality_Synthesizer|RSX (Reality Synthesizer)]]''': [[PlayStation_4_emulators#Emulation_issues|PlayStation 4 3 GPU]] went unemulated for a long time, simply because of how many components were just undocumented, the same thing applies here; the [https://www.psdevwiki.com/ps3/RSX RSX unit] is a custom-designed chip developed by NVIDIA specifically for the PlayStation 3 and share similarities with GeForce 7800 GTX or G70/G71. 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 MBs of GDDR3 RAM clocked at 650 MHz with an effective transmission rate of 1.4 GHz, and 2) up to 224 MBs of the 3.2 GHz XDR main memory via the CPU (480 MBs max).
* [https://www.copetti.org/writings/consoles/playstation-3/ Rodrigo Copetti: PLAYSTATION 3 Architecture Practical Analysis]
* [https://www.psdevwiki.com/ps3/ psdevwiki: PlayStation 3]
* Whatcookie: [https://youtu.be/19ae5Mq2lJE Why is PS3 emulation so fast: RPCS3 optimizations explained], [https://whatcookie.github.io/posts/why-is-avx-512-useful-for-rpcs3/ whatcookie: Why Is AVX 512 Useful for RPCS3?]. Also, there are new upcoming instructions for future CPUs such as [[Wikipedia:Advanced_Vector_Extensions#AVX10|AVX10]] and [[Wikipediahttps:Advanced_Vector_Extensions#APX|APX]//youtu.be/VR_HZMMMOX4 How to uncap framerates]. * RPCS3's [https://rpcs3.net/blog/2020/08/21/hardware-performance-scaling/ progress report August 2020]: Since intel dropped TSX due to security reasons, RPCS3 will use TSX-FA/TSX Force Abort on CPUs with new microcode and [https://github.com/RPCS3/rpcs3/issues/6028 this will result potential regressions], good news is RPCS3 has improved non-TSX performance, because of this, even if your CPU supports TSX it will be disabled for RPCS3 by default.
* [https://discord.com/channels/644252595329957915/668417976554225674 T2 SDE discord - ppc-aim-ps3 channel]
* RPCS3: [https://rpcs3.net/blog/ Blog], [https://discord.gg/rpcs3 Discord], [https://www.youtube.com/@RPCS3_emu YouTube].
10,970
edits

Navigation menu