Editing PS2 Compatibility

Jump to navigation Jump to search
Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then publish the changes below to finish undoing the edit.

Latest revision Your text
Line 1: Line 1:
''If you are looking for the list of PS2 games compatible with non backward-compatible PS3's, see the [[PS2 Classics Emulator Compatibility List]].''
= PS2-Compatibility =
= PS2-Compatibility =
<div style="float:right">[[File:CXD9833GB.png|200px|thumb|left|Sony CXD9833GB (PS2 EE/GS) - The original PS2 EE/GS as used in the SCPH-70000]]</div>
Early PS3 FAT CECHA/COK-001 and CECHB/COK-001 : Full compatibility with GS+EE and Rambus memory. Later CECHC/COK-002 had instead of GS+EE a single GS and lacked the Rambus memory.


PS2 emulation on PS3, occurs in 3 different ways:


* In consoles with EE + GS + Rambus, emulation has the highest compatibility of all, running PS2 games at the hardware level. In these consoles, the emulation runs directly on the dedicated hardware, reducing the CPU and GPU consumption of the PS3 hardware. It also has the highest PS2 peripheral support.
== PS2 Hardware ==
[[Category:Hardware]]


* In GS-only (No EE and Rambus) consoles, PS2 emulation is shared between the PS3 hardware, since the EE processor is omitted, delivering the entire processing load to the Cell. In these consoles, the EE is rendered via Software, which has a little reduced compatibility, which can lead to graphic artifacts in some games. PS2 peripheral support is also reduced. When titles do play fine on one of these consoles, smoothing of PS2 games seems to be slightly better compared with EE + GS + Rambus consoles.
=== PS2 EE/GS and PS2 GS ===


* In consoles without EE and GS, the emulation of PS2 occurs through the "PS2 Classics" package, where the emulation occurs entirely via software, sharing the processing of EE emulation with the PPE cores and the 7 SPE cores. Software emulation has less compatibility between the 3 modes, as it depends on emulating all the components of a real PS2 in a fully virtualized environment. There is no PS2 peripheral support.
==== Sony CXD2953AGB (PS2 EE/GS) ====
Used on PS3 FAT CECHA/COK-001 and CECHB/COK-001 <br />
http://www.ps3devwiki.com/index.php?title=File:SCEI_CXD2953AGB.JPG <br />


Playing PS2 Classics on a console with PS2 hardware will '''always''' override the PS2 hardware emulator, irrespective of whether it is jailbroken or not. Therefore it is not recommended to play PS2 Classics on these consoles as it puts unnecessary load on the Cell and/or RSX, unless the title does not work with the PS2 hardware emulator.
==== Sony CXD9833GB (PS2 EE/GS) ====
8-753-227-14 / IC7004 <br />
http://www.ps3devwiki.com/index.php?title=File:CXD9833GB.png  <br />


On jailbroken consoles with PS2 hardware, it is possible to override the hardware emulator to use the PS2 Classics emulator instead. This is noteworthy because the PS2 Classics emulator can perform better than PS2 hardware emulation for some titles. For example, the game ''Battle Stadium D.O.N'' is unplayable on either PS2 hardware emulator, but is playable via PS2 Classics. Also, on a jailbroken console, the PS2 Classics emulator can be set up to use custom configs, many of which allow more games to be playable.
==== Sony CXD2972GB (PS2 GS) ====
Used on PS3 FAT CECHC/COK-002 <br />
http://www.ps3devwiki.com/index.php?title=File:CXD2972GB.JPG <br />


Supported via Hardware (EE + GS or GS only) consoles allow the execution of PS2 games via physical media (CD / DVD ROM), including PS2 Classics (hardware) emulation. Consoles with no hardware compatibility can not play PS2 games from physical media, however with jailbroken consoles it is possible to read a PS2 game disc to create a playable copy.
=== PS2 Rambus 32MB memory ===
<div style="float:right">[[File:K4R271669F.png|200px|thumb|left|54-ball FBGA<br />Samsung K4R271669F / K4R271669H<br />Rambus]]</div>
The earlier models with hardware PS2 compatibility also contained an extra 32MB of RDRAM using two 16MB Samsung chips.


= Boards =
{| border="1" cellspacing="0" cellpadding="5" border="#999" class="wikitable" style="border:1px solid #999; border-collapse: collapse;"
|- bgcolor="#cccccc"
! Type !! Size !! Speed !! Voltage !! Packaging !! Manufacturer !! Serial Number !! Description
|-
| RDRAM || 16MB || 800MHz || 2.50 +/- 0.13V || 54-pin || Samsung || K4R271669F || 32MB total (2 chips) PS2 HW BC
|-
| RDRAM || 16MB || 800MHz || 2.50 +/- 0.13V || 54-pin || Samsung || K4R271669H || 32MB total (2 chips) PS2 HW BC
|-
|}
==== Samsung K4R271669F / K4R271669H (PS2 Rambus 800MHz 16MB 2.5V FBGA54 - 2x) ====
Used on PS3 FAT CECHA/COK-001 and CECHB/COK-001 <br />
Datasheet: [http://www.samsung.com/global/system/business/semiconductor/product/2007/6/11/XDR_RDRAM/RDRAM/Component/128MbitConsumer/K4R271669H/ds_k4r271669h_rev10.pdf ds_k4r271669h_rev10.pdf] <br />
http://www.ps3devwiki.com/index.php?title=File:K4R271669F.png <br />


Early PS3 FAT [[CECHAxx]]/[[COK-00x#COK-001|COK-001]] and [[CECHBxx]]/[[COK-00x#COK-001|COK-001]] : Full compatibility with GS+EE and Rambus memory. Later [[CECHCxx]]/[[COK-00x#COK-002|COK-002]] and [[CECHExx]]/[[COK-00x#COK-002W|COK-002W]] had instead of EE+GS a single GS and lacked the Rambus memory.
=== PS2 bridgechip ===


[http://www.ps3devwiki.com/wiki/File:PS2-SCPH-15000-J.JPG Early PS2 FAT with EE-GS on SCPH-15000]
==== Sony CXD9208GP2 (PS2 ?) ====
6-710-433-01 / IC7301 <br />
Used on PS3 FAT CECHA/COK-001 and CECHB/COK-001 <br />
Unknown bridge chip from EE+GS to the CXM4024R (see [[MultiAV]]) and the [[RSX]] <br />
http://www.ps3devwiki.com/index.php?title=File:SCEI_CXD9208GP.JPG <br />


<gallery>
== PS2 Software ==
File:PS2 - GH-010 - labels.jpg|PS2 - GH-010 - labels
[[Category:Software]]
File:PS3 - COK-001 - labels.jpg|PS3 - COK-001 - labels
</gallery>


== Chipnumers @ SKU's ==
Mountpoints:
{|class="wikitable"
* dev_ps2disc
* dev_ps2disc1
 
{| border="1" cellspacing="0" cellpadding="5" border="#999" class="wikitable" style="border:1px solid #999; border-collapse: collapse;"
|- bgcolor="#cccccc"
! Name !! Auth ID !! Self<br />(/dev_flash/ps2emu) !! Notes
|-
| PS2_LPAR  || 0x1020000003000001 || rowspan="2" | ps2_emu.self ||
|-
| *SCE_CELLOS_SYSTEM_MGR_PS2  || 0x107000001D000001 ||
|-
| PS2_GX_LPAR || 0x1020000003000001 || rowspan="2" | ps2_gxemu.self ||
|-
|-
! PS3 Model !! Mobo Model !! Mobo serial !! PS2 (EE/)GS !! PS2 Rambus !! PS2 bridge !! Notes
| *SCE_CELLOS_SYSTEM_MGR_PS2_GX || 0x107000001D000001 ||
|-
|-
| [[CECHAxx]] || rowspan="2" | [[COK-00x#COK-001|COK-001]] || rowspan="2" | 1-871-868-12<br />1-871-868-22<br />1-871-868-32 || rowspan="2" | [[CXD2953AGB]] || rowspan="2" | [[K4R271669F]]<br />&nbsp;&nbsp;or<br />[[K4R271669H]] || rowspan="2" | [[CXD9208GP2]] ||  
| PS2_SW_LPAR || 0x1020000003000001 || rowspan="2" | ps2_softemu.self ||  
|-
|-
| [[CECHBxx]] ||
| *SCE_CELLOS_SYSTEM_MGR_PS2_SW || 0x107000001D000001 ||  
|-
|-
| [[CECHCxx]] || [[COK-00x#COK-002|COK-002]] || 1-873-513-21<br />1-873-513-31 || [[CXD2972GB]] || none || none ||  
|}
 
{| border="1" cellspacing="0" cellpadding="5" border="#999" class="wikitable" style="border:1px solid #999; border-collapse: collapse;"
|- bgcolor="#cccccc"
! colspan="4" | PS2_GX
|-
|-
| style="text-align:center; background-color:lightgrey;" | <span style="background-color:lightgrey;">[[CECHDxx]]</span> || colspan="6" style="text-align:center; background-color:lightgrey;" | <span style="background-color:lightgrey;">SKU never released</span>
! Core !! Job !! Source !! Notes
|-
|-
| [[CECHExx]] || [[COK-00x#COK-002W|COK-002W]] ||  || [[CXD2972GB]] || none || none ||  
| SPU0 || IOP || SPU ASM ||  
|-
|-
| style="text-align:center; background-color:lightgrey;" | <span style="background-color:lightgrey;">[[CECHFxx]]</span> || colspan="6" style="text-align:center; background-color:lightgrey;" | <span style="background-color:lightgrey;">SKU never released</span>
| SPU1 || DMA || SPU ASM ||  
|-
|-
| [[CECHGxx]] || [[SEM-00x|SEM-001]] || 1-875-384-21<br />1-875-384-31 || colspan="3" rowspan="2" style="text-align:center;" | No PS2 Compatibility hardware
| SPU2 || VU1 || SPU ASM ||  
|-
|-
| [[CECHHxx]] || [[DIA-00x#DIA-001|DIA-001]] || 1-875-368-11<br />1-875-368-31
| SPU3 || IPU || SPU ASM ||  
|-
|-
| style="text-align:center; background-color:lightgrey;" | <span style="background-color:lightgrey;">[[CECHIxx]]</span> || colspan="6" style="text-align:center; background-color:lightgrey;" | <span style="background-color:lightgrey;">SKU never released</span>
| SPU4 || GFIF || SPU ASM ||  
|-
|-
| [[CECHJxx]] || rowspan="2" | [[DIA-00x#DIA-002|DIA-002]] || rowspan="2" | 1-876-912-32 || colspan="3" rowspan="4" style="text-align:center;" | No PS2 Compatibility hardware
| SPU5 || PS2-SPU2 || C++ || about 50% load average
|-
|-
| [[CECHKxx]]
| SPU6 || - || - || unused (or LV1)
|-
|-
| [[CECHLxx]] || rowspan="2" | [[VER-00x|VER-001]] || rowspan="2" | 1-878-196-31<br />1-878-196-41
| SPU7 || - || - || Unavailable: Factory disabled SPU
|-
|-
| [[CECHMxx]]
| PPU:0 || PS2-Devices || C++ and PPU ASM ||
|-
|-
| style="text-align:center; background-color:lightgrey;" | <span style="background-color:lightgrey;">[[CECHNxx]]</span> || colspan="6" style="text-align:center; background-color:lightgrey;" | <span style="background-color:lightgrey;">SKU never released</span>
| PPU:1 || Emotion Engine || C++ and PPU ASM ||
|-
|-
| style="text-align:center; background-color:lightgrey;" | <span style="background-color:lightgrey;">[[CECHOxx]]</span> || colspan="6" style="text-align:center; background-color:lightgrey;" | <span style="background-color:lightgrey;">SKU never released</span>
| PS2-GS || Graphic Synthesizer || Hardware PS2-GS || Present in CECHC/COK-002
|-
|-
| [[CECHPxx]] || rowspan="2" | [[VER-00x|VER-001]] || rowspan="2" | 1-878-196-31<br />1-878-196-41 || colspan="3" rowspan="9" style="text-align:center;" | No PS2 Compatibility hardware
! colspan="4" | PS2 (GS+EE)
|-
|-
| [[CECHQxx]]
! Core !! Job !! Source !! Notes
|-
|-
| [[CECH-20xx]] || [[DYN-00x|DYN-001]] || 1-880-055-31
| SPU0 || IOP || SPU ASM ||  
|-
|-
| [[CECH-21xx]] || [[SUR-00x|SUR-001]] || 1-881-945-11
| - || DMA || Hardware PS2-EE ||
|-
|-
| [[CECH-25xx]] || [[JTP-00x|JTP-001]] || 1-882-481-21<br />1-882-481-31
| - || VU1 || Hardware PS2-EE ||
|-
|-
| [[CECH-25xx]] || [[JSD-00x|JSD-001]] || 1-882-770-11
| - || IPU || Hardware PS2-EE ||
|-
|-
| [[CECH-30xx]] || [[KTE-00x|KTE-001]] || 1-884-749-11
| - || GFIF || Hardware PS2-EE ||
|-
|-
| [[CECH-40xx]] || [[MSX-00x|MSX-001]] || 1-886-928-11
| SPU5 || PS2-SPU2 || C++ || about 50% load average
|-
|-
| [[CECH-40xx]] || [[MPX-00x|MPX-001]] || 1-887-233-11
| SPU6 || - || - || unused (or LV1)
|-
| SPU7 || - || - || Unavailable: Factory disabled SPU
|-
| PPU:0 || PS2-Devices || C++ and PPU ASM ||
|-
| PPU:1 || - || - || unused?
|-
| PS2-EE || Emotion Engine || Hardware PS2-EE || Present in CECHA/COK-001 and CECHB/COK-001  
|-
| PS2-GS || Graphic Synthesizer || Hardware PS2-GS || Present in CECHA/COK-001 and CECHB/COK-001
|-
! colspan="4" | PS2 Software
|-
| colspan="5" | problematic, see Mathieulh quoted below
<pre>
The main issue here is that it's mostly not doable to emulate the GS efficiently with the rest
of the hardware because the RSX is just not meant for this task and cannot emulate the GS on
its own while all the available SPUs and the PPU are already mostly fully used to emulate the
rest of the playstation 2 hardware, this explains why sony never could finish the ps2_softemu
and that it reached a stalling step.
 
I honestly have no idea on how it would be possible to get over the ps3 hardware limitations to
perform a full ps2 emulation without any of the ps2 hardware present on the console, one thing
for sure is that the emulator would have to be entirely rewritten and optimized like no other
ps3 software has been.
</pre>
|-
|-
|}
|}
== Software ==
See: [[Emulation#ps2emu|PS2 Emulation]]
All consoles have hardware information. In GameOS you can call Lv2 Syscall 393 (0x189) sys_sm_get_model <br>
to get your consoles information. In Lv1/Hypervisor its in the repository nodes sc 0x5B lv1_get_repository_node<br>
with Parameters "sys","hw","config" usually noded as "sys.hw.config#0" or something. These information are mostly<br>
technical related and not just apply to the software emulator, but the PS3 system as a whole.
Result examples:
20 00 00 00 FF FF FE FF <--> a backwards compatible console
4E 00 FF FF 0A 03 BC 3C <--> on Hypervisor Page
4E 00 FF FF 01 07 BC BF <--> CECHJ04
In binary formation:
0010 0000 0000 0000 0000 0000 0000 0000 1111 1111 1111 1111 1111 1110 1111 1111 <--> a backwards compatible console
0100 1110 0000 0000 1111 1111 1111 1111 0000 1010 0000 0011 1011 1100 0011 1100 <--> on Hypervisor Page
0100 1110 0000 0000 1111 1111 1111 1111 0000 0001 0000 0111 1011 1100 1011 1111 <--> CECHJ04
0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0100 0000 0000 0000 0000 <--> Mask:Gelic WLAN, new consoles use WLAN via USB
0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0100 0000 0000 0000 <--> Mask:Backwards Compatible Flag
XMB checks this flag and if == 0, it will give following message: "This model of the PS3™ system is not compatible with PlayStation®2 format software."
{{Motherboard Components}}<noinclude>
[[Category:Main]]
</noinclude>
Please note that all contributions to PS3 Developer wiki are considered to be released under the GNU Free Documentation License 1.2 (see PS3 Developer wiki:Copyrights for details). If you do not want your writing to be edited mercilessly and redistributed at will, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource. Do not submit copyrighted work without permission!

To protect the wiki against automated edit spam, we kindly ask you to solve the following hCaptcha:

Cancel Editing help (opens in new window)