Difference between revisions of "PS2 Compatibility"

From PS3 Developer wiki
Jump to: navigation, search
(PS2 Software)
m (Reverted edits by 85.190.88.7 (talk) to last revision by Roxanne)
(Tag: Rollback)
 
(22 intermediate revisions by 9 users not shown)
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 =
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.
+
<div style="float:right">[[File:CXD9833GB.png|200px|thumb|left|Sony CXD9833GB (PS2 EE/GS) - The original PS2 EE/GS as used in the SCHP-70000]]</div>
 
 
 
 
== PS2 Hardware ==
 
[[Category:Hardware]]
 
 
 
=== PS2 EE/GS and PS2 GS ===
 
<div style="float:right">[[File:CXD9833GB-ps2eegs-bw-bottomside.png|200px|thumb|left|IC7004, (PS2 EE/GS)<br />Productcode: Sony CXD9833GB<br />PartNo.: 8-753-227-14<br />BALL-GRID-ARRAY overview CPU view<br />facing BGA A1 marker:northeast/topright]]<br />[[File:CXD9833GB-ps2eegs-bw-pcbview.png|200px|thumb|left|IC7004, (PS2 EE/GS)<br />Productcode: Sony CXD9833GB<br />PartNo.: 8-753-227-14<br />BALL-GRID-ARRAY overview PCB view<br />facing BGA A1 marker:northwest/topleft]]</div>
 
  
==== Sony CXD2953AGB (PS2 EE/GS) ====
+
PS2 emulation on PS3, occurs in 3 different ways:
Used on PS3 FAT CECHA/COK-001 and CECHB/COK-001 <br />
 
http://www.ps3devwiki.com/index.php?title=File:SCEI_CXD2953AGB.JPG <br />
 
  
==== Sony CXD9833GB (PS2 EE/GS) ====
+
* 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.
8-753-227-14 / IC7004 <br />
 
http://www.ps3devwiki.com/index.php?title=File:CXD9833GB.png  <br />
 
BGA 536 (32x32 minus 22*22 center square minus 4 cornerpads)
 
pitch : 0.76mm
 
<div style="height:420px; overflow:auto">
 
<!--// insert fancy table here //-->
 
</div>
 
  
==== Sony CXD2972GB (PS2 GS) ====
+
* 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 GS is rendered via Software, which has a little reduced compatibility, which can lead to graphic artifacts in some games.
Used on PS3 FAT CECHC/COK-002 <br />
 
http://www.ps3devwiki.com/index.php?title=File:CXD2972GB.JPG <br />
 
  
=== PS2 Rambus 32MB memory ===
+
* 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.
<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.
 
  
{| border="1" cellspacing="0" cellpadding="5" border="#999" class="wikitable" style="border:1px solid #999; border-collapse: collapse;"
+
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.
|- 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 />
 
  
=== PS2 bridgechip ===
+
= Boards =
  
==== Sony CXD9208GP2 (PS2 ?) ====
+
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.
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 />
 
  
== PS2 Software ==
+
[http://www.ps3devwiki.com/wiki/File:PS2-SCPH-15000-J.JPG Early PS2 FAT with EE-GS on SCPH-15000]
[[Category:Software]]
 
  
Mountpoints:
+
<gallery>
* dev_ps2disc
+
File:PS2 - GH-010 - labels.jpg|PS2 - GH-010 - labels
* dev_ps2disc1
+
File:PS3 - COK-001 - labels.jpg|PS3 - COK-001 - labels
 +
</gallery>
  
{| border="1" cellspacing="0" cellpadding="5" border="#999" class="wikitable" style="border:1px solid #999; border-collapse: collapse;"
+
== Chipnumers @ SKU's ==
|- bgcolor="#cccccc"
+
{|class="wikitable"
! Name !! Auth ID !! Self<br />(/dev_flash/ps2emu) !! Notes
 
 
|-
 
|-
| PS2_LPAR  || 0x1020000003000001 || rowspan="2" | ps2_emu.self ||
+
! PS3 Model !! Mobo Model !! Mobo serial !! PS2 (EE/)GS !! PS2 Rambus !! PS2 bridge !! Notes
 
|-
 
|-
| *SCE_CELLOS_SYSTEM_MGR_PS2  || 0x107000001D000001 ||  
+
| [[CECHAxx]] || [[COK-00x#COK-001|COK-001]] || 1-871-868-12<br />1-871-868-22<br />1-871-868-32 || [[CXD2953AGB]] || [[K4R271669F]]<br />&nbsp;&nbsp;or<br />[[K4R271669H]] || [[CXD9208GP2]] ||  
 
|-
 
|-
| PS2_GX_LPAR || 0x1020000003000001 || rowspan="2" | ps2_gxemu.self ||  
+
| [[CECHBxx]] || [[COK-00x#COK-001|COK-001]] || 1-871-868-12<br />1-871-868-22<br />1-871-868-32 || [[CXD2953AGB]] || [[K4R271669F]]<br />&nbsp;&nbsp;or<br />[[K4R271669H]] || [[CXD9208GP2]] ||  
 
|-
 
|-
| *SCE_CELLOS_SYSTEM_MGR_PS2_GX || 0x107000001D000001 ||  
+
| [[CECHCxx]] || [[COK-00x#COK-002|COK-002]] || 1-873-513-21<br />1-873-513-31 || [[CXD2972GB]] || none || none ||  
 
|-
 
|-
| PS2_SW_LPAR || 0x1020000003000001 || rowspan="2" | ps2_softemu.self ||
+
| 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>
 
|-
 
|-
| *SCE_CELLOS_SYSTEM_MGR_PS2_SW || 0x107000001D000001 ||  
+
| [[CECHExx]] || [[COK-00x#COK-002W|COK-002W]] ||  || [[CXD2972GB]] || none || none ||  
 
|-
 
|-
|}
+
| 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>
 
 
{| border="1" cellspacing="0" cellpadding="5" border="#999" class="wikitable" style="border:1px solid #999; border-collapse: collapse;"  
 
|- bgcolor="#cccccc"
 
! colspan="4" | PS2_GX
 
 
|-
 
|-
! Core !! Job !! Source !! Notes
+
| [[CECHGxx]] || [[SEM-00x|SEM-001]] || 1-875-384-21<br />1-875-384-31 || colspan="3" style="text-align:center;" | No PS2 Compatibility hardware
 
|-
 
|-
| SPU0 || IOP || SPU ASM ||  
+
| [[CECHHxx]] || [[DIA-00x#DIA-001|DIA-001]] || 1-875-368-11<br />1-875-368-31 || colspan="3" style="text-align:center;" | No PS2 Compatibility hardware
 
|-
 
|-
| SPU1 || DMA || 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>
 
|-
 
|-
| SPU2 || Isolation || C++ Raw SPU || Used for MagicGate Encryption and others
+
| [[CECHJxx]] || [[DIA-00x#DIA-002|DIA-002]] || 1-876-912-32 || colspan="3" style="text-align:center;" | No PS2 Compatibility hardware
 
|-
 
|-
| SPU3 || IPU || SPU ASM ||  
+
| [[CECHKxx]] || [[DIA-00x#DIA-002|DIA-002]] || 1-876-912-32 || colspan="3" style="text-align:center;" | No PS2 Compatibility hardware
 
|-
 
|-
| SPU4 || GFIF || SPU ASM ||  
+
| [[CECHLxx]] || [[VER-00x|VER-001]] || 1-878-196-31<br />1-878-196-41 || colspan="3" style="text-align:center;" | No PS2 Compatibility hardware
 
|-
 
|-
| SPU5 || PS2-SPU2 || C++ || about 50% load average
+
| [[CECHMxx]] || [[VER-00x|VER-001]] || 1-878-196-31<br />1-878-196-41 || colspan="3" style="text-align:center;" | No PS2 Compatibility hardware
 
|-
 
|-
| SPU6 || VU1 || SPU 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>
 
|-
 
|-
| SPU7 || - || - || Unavailable: Factory disabled SPU
+
| 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>
 
|-
 
|-
| PPU:0 || PS2-Devices || C++ and PPU ASM ||
+
| [[CECHPxx]] || [[VER-00x|VER-001]] || 1-878-196-31<br />1-878-196-41 || colspan="3" style="text-align:center;" | No PS2 Compatibility hardware
 
|-
 
|-
| PPU:1 || Emotion Engine || C++ and PPU ASM ||
+
| [[CECHQxx]] || [[VER-00x|VER-001]] || 1-878-196-31<br />1-878-196-41 || colspan="3" style="text-align:center;" | No PS2 Compatibility hardware
 
|-
 
|-
| PS2-GS || Graphic Synthesizer || Hardware PS2-GS || Present in CECHC/COK-002
+
| [[CECH-20xx]] || [[DYN-00x|DYN-001]] || 1-880-055-31 || colspan="3" style="text-align:center;" | No PS2 Compatibility hardware
 
|-
 
|-
! colspan="4" | PS2 (GS+EE)
+
| [[CECH-21xx]] || [[SUR-00x|SUR-001]] || 1-881-945-11 || colspan="3" style="text-align:center;" | No PS2 Compatibility hardware
 
|-
 
|-
! Core !! Job !! Source !! Notes
+
| [[CECH-25xx]] || [[JTP-00x|JTP-001]] || 1-882-481-21<br />1-882-481-31 || colspan="3" style="text-align:center;" | No PS2 Compatibility hardware
 
|-
 
|-
| SPU0 || IOP || SPU ASM ||  
+
| [[CECH-25xx]] || [[JSD-00x|JSD-001]] || 1-882-770-11 || colspan="3" style="text-align:center;" | No PS2 Compatibility hardware
 
|-
 
|-
| SPU2 || Isolation || C++ Raw SPU || Used for MagicGate Encryption and others
+
| [[CECH-30xx]] || [[KTE-00x|KTE-001]] || 1-884-749-11 || colspan="3" style="text-align:center;" | No PS2 Compatibility hardware
 
|-
 
|-
| - || DMA || Hardware PS2-EE ||
+
| [[CECH-40xx]] || [[MSX-00x|MSX-001]] || 1-886-928-11 || colspan="3" style="text-align:center;" | No PS2 Compatibility hardware
 
|-
 
|-
| - || VU1 || Hardware PS2-EE ||
+
| [[CECH-40xx]] || [[MPX-00x|MPX-001]] || 1-887-233-11 || colspan="3" style="text-align:center;" | No PS2 Compatibility hardware
 
|-
 
|-
| - || IPU || Hardware PS2-EE ||
+
|}
|-
+
 
| - || GFIF || Hardware PS2-EE ||
+
== Software ==
|-
+
See: [[Emulation#ps2emu|PS2 Emulation]]
| SPU5 || PS2-SPU2 || C++ || about 50% load average
+
 
|-
+
All consoles have hardware information. In GameOS you can call Lv2 Syscall 393 (0x189) sys_sm_get_model <br>
| SPU7 || - || - || Unavailable: Factory disabled SPU
+
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>
| PPU:0 || PS2-Devices || C++ and PPU ASM ||
+
technical related and not just apply to the software emulator, but the PS3 system as a whole.
|-
+
 
| PPU:1 || - || - || unused?
+
Result examples:
|-
+
20 00 00 00 FF FF FE FF <--> a backwards compatible console
| PS2-EE || Emotion Engine || Hardware PS2-EE || Present in CECHA/COK-001 and CECHB/COK-001
+
4E 00 FF FF 0A 03 BC 3C <--> on Hypervisor Page
|-
+
4E 00 FF FF 01 07 BC BF <--> CECHJ04
| PS2-GS || Graphic Synthesizer || Hardware PS2-GS || Present in CECHA/COK-001 and CECHB/COK-001
+
 
|-
+
In binary formation:
! colspan="4" | PS2 Software
+
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
| colspan="5" | problematic, see Mathieulh quoted below
+
0100 1110 0000 0000 1111 1111 1111 1111 0000 0001 0000 0111 1011 1100 1011 1111 <--> CECHJ04
<pre>
+
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
The main issue here is that it's mostly not doable to emulate the GS efficiently with the rest
+
0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0100 0000 0000 0000 <--> Mask:Backwards Compatible Flag
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
+
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."
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
+
{{Motherboard Components}}<noinclude>[[Category:Main]]</noinclude>
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>
 
|-
 
|}
 

Latest revision as of 04:48, 2 December 2019

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[edit]

Sony CXD9833GB (PS2 EE/GS) - The original PS2 EE/GS as used in the SCHP-70000

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.
  • 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 GS is rendered via Software, which has a little reduced compatibility, which can lead to graphic artifacts in some games.
  • 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.

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.

Boards[edit]

Early PS3 FAT CECHAxx/COK-001 and CECHBxx/COK-001 : Full compatibility with GS+EE and Rambus memory. Later CECHCxx/COK-002 and CECHExx/COK-002W had instead of EE+GS a single GS and lacked the Rambus memory.

Early PS2 FAT with EE-GS on SCPH-15000

Chipnumers @ SKU's[edit]

PS3 Model Mobo Model Mobo serial PS2 (EE/)GS PS2 Rambus PS2 bridge Notes
CECHAxx COK-001 1-871-868-12
1-871-868-22
1-871-868-32
CXD2953AGB K4R271669F
  or
K4R271669H
CXD9208GP2
CECHBxx COK-001 1-871-868-12
1-871-868-22
1-871-868-32
CXD2953AGB K4R271669F
  or
K4R271669H
CXD9208GP2
CECHCxx COK-002 1-873-513-21
1-873-513-31
CXD2972GB none none
CECHDxx SKU never released
CECHExx COK-002W CXD2972GB none none
CECHFxx SKU never released
CECHGxx SEM-001 1-875-384-21
1-875-384-31
No PS2 Compatibility hardware
CECHHxx DIA-001 1-875-368-11
1-875-368-31
No PS2 Compatibility hardware
CECHIxx SKU never released
CECHJxx DIA-002 1-876-912-32 No PS2 Compatibility hardware
CECHKxx DIA-002 1-876-912-32 No PS2 Compatibility hardware
CECHLxx VER-001 1-878-196-31
1-878-196-41
No PS2 Compatibility hardware
CECHMxx VER-001 1-878-196-31
1-878-196-41
No PS2 Compatibility hardware
CECHNxx SKU never released
CECHOxx SKU never released
CECHPxx VER-001 1-878-196-31
1-878-196-41
No PS2 Compatibility hardware
CECHQxx VER-001 1-878-196-31
1-878-196-41
No PS2 Compatibility hardware
CECH-20xx DYN-001 1-880-055-31 No PS2 Compatibility hardware
CECH-21xx SUR-001 1-881-945-11 No PS2 Compatibility hardware
CECH-25xx JTP-001 1-882-481-21
1-882-481-31
No PS2 Compatibility hardware
CECH-25xx JSD-001 1-882-770-11 No PS2 Compatibility hardware
CECH-30xx KTE-001 1-884-749-11 No PS2 Compatibility hardware
CECH-40xx MSX-001 1-886-928-11 No PS2 Compatibility hardware
CECH-40xx MPX-001 1-887-233-11 No PS2 Compatibility hardware

Software[edit]

See: PS2 Emulation

All consoles have hardware information. In GameOS you can call Lv2 Syscall 393 (0x189) sys_sm_get_model
to get your consoles information. In Lv1/Hypervisor its in the repository nodes sc 0x5B lv1_get_repository_node
with Parameters "sys","hw","config" usually noded as "sys.hw.config#0" or something. These information are mostly
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."