Editing Talk:PS1 Emulation
Jump to navigation
Jump to search
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: | ||
== | == PS1 Emulator Types and Revisions == | ||
<div> | |||
<div style="float:top; text-align:center;">'''PS1 Emulator Types and Revisions'''</div> | |||
<div style="float:left;"> | |||
{| class="wikitable" style="line-height:100%; font-size:70%; margin-right:5px" | |||
|+ ps1_emu.elf (decrypted) | |||
! Firmware !! Size !! MD5 !! Timestamp !! <abbr title="Revision">Rev</abbr> !! style="padding:1px" | <abbr title="Maximun number of supported commands">Comm</abbr> | |||
|- | |||
! [[1.00_AV|1.00 AV]] | |||
| 10 296 408 || style="font-family:monospace" | 981A7428C2A59219FA05861EDEEDBD4A || 06/10/04/12:16 || ? || ? | |||
|- | |||
! [[1.02_CEX|1.02]] | |||
| 10.296.408 || style="font-family:monospace" | C5FE03742A951194C336EE33783F5CD6 || 06/10/21/00:01 || ? || ? | |||
|- | |||
! [[1.10_CEX|1.10]] | |||
| 10.296.408 || style="font-family:monospace" | C9C9D7D2E36F3E3579A5DF713E9ABE1E || 06/11/09/06:09 || ? || ? | |||
|- | |||
! [[1.11_CEX|1.11]] | |||
| 10.296.408 || style="font-family:monospace" | 26271CCA29B77483DC3D7FDDE7B9CC3C || 06/11/21/17:55 || ? || ? | |||
|- | |||
! [[1.30_CEX|1.30]] | |||
| 10.296.496 || style="font-family:monospace" | E7932EC24E72B3005EE152B141A63690 || 06/12/05/05:34 || ? || ? | |||
|- | |||
! [[1.31_CEX|1.31]] | |||
| 10.296.496 || style="font-family:monospace" | 2244DE70C85093D7E37BC3D3F4278BE1 || 06/12/12/18:48 || ? || ? | |||
|- | |||
! [[1.32_CEX|1.32]] | |||
| 10.296.496 || style="font-family:monospace" | 601BCADBBBC0A2D0433C932A2D67C4EF || 06/12/18/05:55 || ? || ? | |||
|- | |||
! [[1.50_CEX|1.50]] | |||
| 10.303.536 || style="font-family:monospace" | F8050B006CDFCC64DF742D7BBDC03130 || 07/01/18/22:53 || ? || ? | |||
|- | |||
! ? | |||
| ? || ? || ? || ? || ? | |||
|- | |||
! ? | |||
| ? || ? || ? || ? || ? | |||
|- | |||
! ? | |||
| ? || ? || ? || ? || ? | |||
|- | |||
! [[1.90_CEX|1.90]] | |||
| 6.974.864 || style="font-family:monospace" | 478CFED0F7EE13C94F01C2A246C83D45 || 07/07/21/06:45 || ? || ? | |||
|- | |||
! ? | |||
| ? || ? || ? || ? || ? | |||
|- | |||
| colspan="6" style="background:#ff8080; text-align:center; line-height:75%" | Stripped/extracted rom/bios | |||
|- | |||
! [[2.10_CEX|2.10]] | |||
| ? || ? || ? || ? || ? | |||
|- | |||
! ? | |||
| ? || ? || ? || ? || ? | |||
|- | |||
! [[3.40_CEX|3.40]] | |||
| 2.824.576 || style="font-family:monospace" | A6ABFB04739575E2264A4D3FEB2A9CBF || 10/06/23/15:45 || ? || ? | |||
|- | |||
! ? | |||
| ? || ? || ? || ? || ? | |||
|- | |||
! [[3.66_CEX|3.66]] | |||
| 2.824.832 || style="font-family:monospace" | 95399A202003E216794511BD2D2E9DF6 || 11/06/16/03:52 || ? || ? | |||
|-{{cellcolors|#bbbbff}} | |||
! [[3.70_CEX|3.70]] | |||
| rowspan="3" | 2.824.920 || style="font-family:monospace" | 045D81147B9BDFB8C8A416FD5F5A0C56 || 11/08/05/03:42 || rowspan="3" | same || rowspan="3" | ? | |||
|-{{cellcolors|#bbbbff}} | |||
! ~ | |||
| colspan="2" style="text-align:center; background-color:#bbbbff;" | ''Any'' | |||
|-{{cellcolors|#bbbbff}} | |||
! [[3.72_CEX|3.72]] | |||
| style="font-family:monospace" | C745A30231103B83F04539021E4878FC || 11/09/14/01:17 | |||
|-{{cellcolors|#ddddff}} | |||
! [[3.73_CEX|3.73]] | |||
| rowspan="2" | 2.824.920 || style="font-family:monospace" | EB3AFF30B3206CFA6A8962AB393F773E || 11/10/04/12:55 || rowspan="2" | same || rowspan="2" | ? | |||
|-{{cellcolors|#ddddff}} | |||
! [[3.74_CEX|3.74]] | |||
| style="font-family:monospace" | E2A77C3DC9FD5AD4264341196462D096 || 11/10/25/00:38 | |||
|-{{cellcolors|#bbbbff}} | |||
! [[4.00_CEX|4.00]] | |||
| rowspan="3" | 2.829.784 || style="font-family:monospace" | 94A8E6A8063C08FAD8CA9B340CCCAE67 || 11/11/22/03:17 || rowspan="3" | same || rowspan="3" | ? | |||
|-{{cellcolors|#bbbbff}} | |||
! ~ | |||
| colspan="2" style="text-align:center; background-color:#bbbbff;" | ''Any'' | |||
|-{{cellcolors|#bbbbff}} | |||
! [[4.11_CEX|4.11]] | |||
| style="font-family:monospace" | 02B7F6D5F517959161B2154135D4B3BC || 12/02/11/07:13 | |||
|- | |||
! [[4.15_CEX|4.15]] | |||
| ? || ? || ? || ? || ? | |||
|-{{cellcolors|#ddddff}} | |||
! [[4.20_CEX|4.20]] | |||
| rowspan="2" | 2.829.912 || style="font-family:monospace" | 3778948C92F5FA12CB0AABE65BEE5465 || 12/06/15/02:09 || rowspan="2" | same || rowspan="2" | ? | |||
|-{{cellcolors|#ddddff}} | |||
! [[4.21_CEX|4.21]] | |||
| style="font-family:monospace" | B7B662397E3FFDD7C11F9617C1B41856 || 12/06/30/01:13 | |||
|- | |||
! [[4.23_SEX|4.23 S]] | |||
| 2.829.912 || style="font-family:monospace" | 6E74CC51E0C6462DF1F9278ED9DB9593 || 12/07/31/00:22 || ? || ? | |||
|- | |||
! [[4.25_CEX|4.25]] | |||
| 2.829.912 || style="font-family:monospace" | 03EA65C3EA3F8DB04F236C49C6B6C0E1 || 12/09/07/07:03 || <abbr title="same code than 4.20 CEX and 4.21 CEX.... but different than the 4.23 SEX in between, grrrr">same</abbr> || ? | |||
|- | |||
! ? | |||
| ? || ? || ? || ? || ? | |||
|- | |||
! ? | |||
| ? || ? || ? || ? || ? | |||
|- | |||
! ? | |||
| ? || ? || ? || ? || ? | |||
|- | |||
! [[4.78_CEX|4.78]] | |||
| 2.765.488 || style="font-family:monospace" | 354F1DEEDCA3C4CFA1B49B6B28B1648D || 15/12/17/01:18 || ? || ? | |||
|- | |||
! [[4.80_CEX|4.80]] | |||
| ? || ? || ? || ? || ? | |||
|- | |||
! [[4.81_CEX|4.81]] | |||
| 2.765.616 || style="font-family:monospace" | 2123E3D6A8E81647CB41F51AFEE6CCD6 || 16/10/24/19:23 || ? || ? | |||
|- | |||
! colspan="6" style="background:#80ff80; line-height:75%" | Abandoned (last revision) | |||
|-{{cellcolors|#ddddff}} | |||
! [[4.82_CEX|4.82]] | |||
| rowspan="3" | 2.765.616 || style="font-family:monospace" | 64BFA4DBD595A20E317B2189B54BF673 || 17/08/24/15:42 || rowspan="3" | Last || rowspan="3" | 0x15 | |||
|- | |||
! ~ | |||
| colspan="2" style="text-align:center; background-color:#ddddff;" | ''Any'' | |||
|- | |||
! [[4.88_CEX|4.88]] | |||
| style="background-color:#ddddff; font-family:monospace" | 0C553CE93A2A6322E16636DD76D75E32 || style="background-color:#ddddff;" | 21/04/12/11:34 | |||
|} | |||
<span style="font-size:small"> | |||
{{widedot}}'''Decrypted (elf)''': changes <abbr title="When comparing two decrypted files of the same revision from different firmwares the only differences are the build label (1 area with size 0x20) and the target firmware (1 area with size 0x2)">every firmware version</abbr><br> | |||
{{widedot}}'''<abbr title="0x20 bytes">Build label</abbr>''': yes, with timestamp, search for '''-sgpu-sspu-sli4'''<br> | |||
{{widedot}}'''<abbr title="2 bytes">Target Firmware</abbr>''': yes repeated '''one''' time<br> | |||
{{widedot}}'''Revision''': unknown | |||
</span> | |||
</div> | |||
<div style="float:left;"> | |||
{| class="wikitable" style="line-height:100%; font-size:70%; margin-left:5px; margin-right:5px" | |||
|+ ps1_netemu.elf (decrypted) | |||
! Firmware !! Size !! MD5 !! Timestamp !! <abbr title="Revision">Rev</abbr> !! style="padding:1px" | <abbr title="Maximun number of supported commands">Comm</abbr> | |||
|- | |||
! [[1.70_CEX|1.70]] | |||
| ? || ? || ? || ? || ? | |||
|- | |||
! ? | |||
| ? || ? || ? || ? || ? | |||
|- | |||
! ? | |||
| ? || ? || ? || ? || ? | |||
|- | |||
! [[1.90_CEX|1.90]] | |||
| 6.853.368 || style="font-family:monospace" | 8A5A3676B461C97A9A467D5651D6EAAD || 07/07/21/06:47 || ? || ? | |||
|- | |||
! ? | |||
| ? || ? || ? || ? || ? | |||
|- | |||
| colspan="6" style="background:#ff8080; text-align:center; line-height:75%" | Stripped/extracted rom/bios | |||
|- | |||
! [[2.10_CEX|2.10]] | |||
| ? || ? || ? || ? || ? | |||
|- | |||
! ? | |||
| ? || ? || ? || ? || ? | |||
|- | |||
! [[3.40_CEX|3.40]] | |||
| 2.971.288 || style="font-family:monospace" | FD32C7B7CBA2639FC8DB9EB615A16461 || 10/06/23/15:46 || ? || ? | |||
|- | |||
! ? | |||
| ? || ? || ? || ? || ? | |||
|- | |||
! [[3.66_CEX|3.66]] | |||
| 2.971.976 || style="font-family:monospace" | 9586FC8B121E59526C31405DCFFB79CA || 11/06/16/03:54 || ? || ? | |||
|-{{cellcolors|#bbbbff}} | |||
! [[3.70_CEX|3.70]] | |||
| rowspan="3" | 2.972.168 || style="font-family:monospace" | AA1DB63461EE0BE021ED45F85A6EECE0 || 11/08/05/03:43 || rowspan="3" | same || rowspan="3" | ? | |||
|-{{cellcolors|#bbbbff}} | |||
! ~ | |||
| colspan="2" style="text-align:center; background-color:#bbbbff;" | ''Any'' | |||
|-{{cellcolors|#bbbbff}} | |||
! [[3.72_CEX|3.72]] | |||
| style="font-family:monospace" | 32F45129EC2844D419582912E54CEB22 || 11/09/14/01:18 | |||
|-{{cellcolors|#ddddff}} | |||
! [[3.73_CEX|3.73]] | |||
| rowspan="2" | 2.972.168 || style="font-family:monospace" | 17063FFAB205B72ABF7F59582B8A7988 || 11/10/04/12:56 || rowspan="2" | same || rowspan="2" | ? | |||
|-{{cellcolors|#ddddff}} | |||
! [[3.74_CEX|3.74]] | |||
| style="font-family:monospace" | 89C03D80ACE7C4FA914DD699621EB4F8 || 11/10/25/00:40 | |||
|-{{cellcolors|#bbbbff}} | |||
! [[4.00_CEX|4.00]] | |||
| rowspan="2" | 2.977.128 || style="font-family:monospace" | DBB8FB62BE3F2064D31332FCB7575DF1 || 11/11/22/03:19 || rowspan="2" | same || rowspan="2" | ? | |||
|-{{cellcolors|#bbbbff}} | |||
! [[4.01_CEX|4.01]] | |||
| style="font-family:monospace" | 9E60379FA979B0440C27C6AEE38754AF || 11/12/23/01:10 | |||
|-{{cellcolors|#ddddff}} | |||
! [[4.10_CEX|4.10]] | |||
| rowspan="2" | 2.977.208 || style="font-family:monospace" | B3CD41AB8235906AB41D3DA18D04F00E || 12/02/05/23:19 || rowspan="2" | same || rowspan="2" | ? | |||
|-{{cellcolors|#ddddff}} | |||
! [[4.11_CEX|4.11]] | |||
| style="font-family:monospace" | 4DDF2C3289AD9BEDF0719DBE1BDA971C || 12/02/11/07:15 | |||
|- | |||
! [[4.15_CEX|4.15]] | |||
| ? || ? || ? || ? || ? | |||
|-{{cellcolors|#bbbbff}} | |||
! [[4.20_CEX|4.20]] | |||
| rowspan="2" | 2.977.432 || style="font-family:monospace" | 363A2D5EE2246E9CEFCBF1078593C771 || 12/06/15/02:10 || rowspan="2" | same || rowspan="2" | ? | |||
|-{{cellcolors|#bbbbff}} | |||
! [[4.21_CEX|4.21]] | |||
| style="font-family:monospace" | 5E08C86EC07E4F227D3591DD9530CC95 || 12/06/30/01:15 | |||
|- | |||
! [[4.23_SEX|4.23 S]] | |||
| 2.977.416 || style="font-family:monospace" | 149E5E6AD727B1B37E29D4E8D15D5BB0 || 12/07/31/00:23 || ? || ? | |||
|- | |||
! [[4.25_CEX|4.25]] | |||
| 2.977.432 || style="font-family:monospace" | 295B61D9EEE704077FEC870C8EAC7D35 || 12/09/07/07:04 || <abbr title="same code than 4.20 CEX and 4.21 CEX.... but different than the 4.23 SEX in between, grrrr">same</abbr> || ? | |||
|- | |||
! ? | |||
| ? || ? || ? || ? || ? | |||
|- | |||
! ? | |||
| ? || ? || ? || ? || ? | |||
|- | |||
! ? | |||
| ? || ? || ? || ? || ? | |||
|- | |||
! [[4.78_CEX|4.78]] | |||
| 2.913.480 || style="font-family:monospace" | 398A7CA9F0E8449E15FCB33B87C96194 || 15/12/17/01:19 || ? || ? | |||
|- | |||
! [[4.80_CEX|4.80]] | |||
| ? || ? || ? || ? || ? | |||
|- | |||
! [[4.81_CEX|4.81]] | |||
| 2.913.656 || style="font-family:monospace" | 8765A00EE467B8635A13ECCBB1F85B89 || 16/10/24/19:24 || ? || ? | |||
|- | |||
! [[4.82_CEX|4.82]] | |||
| 2.913.752 || style="font-family:monospace" | FCEB6595F9F8E5C77BA36C73C38397D9 || 17/08/24/15:43 || ? || ? | |||
|- | |||
! colspan="6" style="background:#80ff80; line-height:75%" | Abandoned (last revision) | |||
|-{{cellcolors|#ddddff}} | |||
! [[4.83_CEX|4.83]] | |||
| rowspan="3" | 2.913.992 || style="font-family:monospace" | CA9509623B9885E18D12E14FA1488EEF || 18/09/02/18:03 || rowspan="3" | Last || rowspan="3" | 0x3C | |||
|- | |||
! ~ | |||
| colspan="2" style="text-align:center; background-color:#ddddff;" | ''Any'' | |||
|- | |||
! [[4.88_CEX|4.88]] | |||
| style="background-color:#ddddff; font-family:monospace" | D3283D3F3B5CDF68113560829530E7B3 || style="background-color:#ddddff;" | 21/04/12/11:34 | |||
|} | |||
<span style="font-size:small"> | |||
{{widedot}}'''Decrypted (elf)''': changes <abbr title="When comparing two decrypted files of the same revision from different firmwares the only differences are the build label (1 area with size 0x20) and the target firmware (2 areas with size 0x2)">every firmware version</abbr><br> | |||
{{widedot}}'''<abbr title="0x20 bytes">Build label</abbr>''': yes, with timestamp, search for '''-sgpu-sli4'''<br> | |||
{{widedot}}'''<abbr title="2 bytes">Target Firmware</abbr>''': yes repeated '''two''' times<br> | |||
{{widedot}}'''Revision''': unknown | |||
</span> | |||
</div><div style="float:left;"> | |||
{| class="wikitable" style="line-height:100%; font-size:70%; margin-left:5px; margin-right:5px" | |||
|+ ps1_newemu.elf (decrypted) | |||
! Firmware !! Size !! MD5 !! Timestamp !! <abbr title="Revision">Rev</abbr> !! style="padding:1px" | <abbr title="Maximun number of supported commands">Comm</abbr> | |||
|- | |||
! [[2.10_CEX|2.10]] | |||
| ? || ? || ? || ? || ? | |||
|- | |||
! ? | |||
| ? || ? || ? || ? || ? | |||
|- | |||
! [[3.40_CEX|3.40]] | |||
| 2.708.856 || style="font-family:monospace" | C866D54E85BAA06D111C8300F9EA85F1 || 10/06/23/15:51 || ? || ? | |||
|- | |||
! ? | |||
| ? || ? || ? || ? || ? | |||
|- | |||
! [[3.66_CEX|3.66]] | |||
| 2.708.864 || style="font-family:monospace" | 9AB86CFAEB12675F3DB08FCAA3541534 || 11/06/16/03:54 || ? || ? | |||
|-{{cellcolors|#bbbbff}} | |||
! [[3.70_CEX|3.70]] | |||
| rowspan="3" | 2.708.880 || style="font-family:monospace" | 7AB7C32901778E3F0C9B8DB45296821B || 11/08/05/03:44 || rowspan="3" | same || rowspan="3" | ? | |||
|-{{cellcolors|#bbbbff}} | |||
! ~ | |||
| colspan="2" style="text-align:center; background-color:#bbbbff;" | ''Any'' | |||
|-{{cellcolors|#bbbbff}} | |||
! [[3.72_CEX|3.72]] | |||
| style="font-family:monospace" | 2863E9B70B4FB6C5A0938FF508C46057 || 11/09/14/01:18 | |||
|-{{cellcolors|#ddddff}} | |||
! [[3.73_CEX|3.73]] | |||
| rowspan="2" | 2.708.880 || style="font-family:monospace" | 871E256771632569D664FF2A1ECE82C3 || 11/10/04/12:57 || rowspan="2" | same || rowspan="2" | ? | |||
|-{{cellcolors|#ddddff}} | |||
! [[3.74_CEX|3.74]] | |||
| style="font-family:monospace" | 8A8AC80CBA58561CC754C6CF66B059AB || 11/10/25/00:40 | |||
|-{{cellcolors|#bbbbff}} | |||
! [[4.00_CEX|4.00]] | |||
| rowspan="2" | 2.713.832 || style="font-family:monospace" | F9E840430B2BC982CB1A71B7BDD7FC35 || 11/11/22/03:19 || rowspan="2" | same || rowspan="2" | ? | |||
|-{{cellcolors|#bbbbff}} | |||
! [[4.01_CEX|4.01]] | |||
| style="font-family:monospace" | 953090CBCB96626899731B711B3D5B6A || 11/12/23/01:11 | |||
|-{{cellcolors|#ddddff}} | |||
! [[4.10_CEX|4.10]] | |||
| rowspan="2" | 2.713.720 || style="font-family:monospace" | 47E7FA52DB7BDEDF2187EB02D868834D || 12/02/05/23:20 || rowspan="2" | same || rowspan="2" | ? | |||
|-{{cellcolors|#ddddff}} | |||
! [[4.11_CEX|4.11]] | |||
| style="font-family:monospace" | 8A90DB2A206BE79423A99D4CF2458241 || 12/02/11/07:16 | |||
|- | |||
! [[4.15_CEX|4.15]] | |||
| ? || ? || ? || ? || ? | |||
|-{{cellcolors|#bbbbff}} | |||
! [[4.20_CEX|4.20]] | |||
| rowspan="2" | 2.713.904 || style="font-family:monospace" | 8AC80356D1EFDDCFF7A7AD82136137D2 || 12/06/15/02:11 || rowspan="2" | same || rowspan="2" | ? | |||
|-{{cellcolors|#bbbbff}} | |||
! [[4.21_CEX|4.21]] | |||
| style="font-family:monospace" | E482927E47B00C1478313E343DD652C4 || 12/06/30/01:15 | |||
|- | |||
! [[4.23_SEX|4.23 S]] | |||
| 2.713.888 || style="font-family:monospace" | A2CF9C4C00B40779FB5C529849E0D6A4 || 12/07/31/00:24 || ? || ? | |||
|- | |||
! [[4.25_CEX|4.25]] | |||
| 2.713.904 || style="font-family:monospace" | 24107753F0B02075DAB20492BA67167D || 12/09/07/07:05 || <abbr title="same code than 4.20 CEX and 4.21 CEX.... but different than the 4.23 SEX in between, grrrr">same</abbr> || ? | |||
|- | |||
! ? | |||
| ? || ? || ? || ? || ? | |||
|- | |||
! ? | |||
| ? || ? || ? || ? || ? | |||
|- | |||
! ? | |||
| ? || ? || ? || ? || ? | |||
|- | |||
! [[4.78_CEX|4.78]] | |||
| 2.649.144 || style="font-family:monospace" | BF78A0DC74084B43777A7F8CE6C7B66A || 15/12/17/01:20 || ? || ? | |||
|- | |||
! [[4.80_CEX|4.80]] | |||
| ? || ? || ? || ? || ? | |||
|- | |||
! [[4.81_CEX|4.81]] | |||
| 2.649.272 || style="font-family:monospace" | 0C76DE974439B12546EA494639C8EE9A || 16/10/24/19:25 || ? || ? | |||
|- | |||
! colspan="6" style="background:#80ff80; line-height:75%" | Abandoned (last revision) | |||
|-{{cellcolors|#ddddff}} | |||
! [[4.82_CEX|4.82]] | |||
| rowspan="3" | 2.649.288 || style="font-family:monospace" | C5957F268EE9E1429DE3AF0BC15F1395 || 17/08/24/15:44 || rowspan="3" | Last || rowspan="3" | 0x18 | |||
|- | |||
! ~ | |||
| colspan="2" style="text-align:center; background-color:#ddddff;" | ''Any'' | |||
|- | |||
! [[4.88_CEX|4.88]] | |||
| style="background-color:#ddddff; font-family:monospace" | 4002EC6CB88F5D2D5E7DF0B0F80A6A0A || style="background-color:#ddddff;" | 21/04/12/11:35 | |||
|} | |||
<span style="font-size:small"> | |||
{{widedot}}'''Decrypted (elf)''': changes <abbr title="When comparing two decrypted files of the same revision from different firmwares the only differences are the build label (1 area with size 0x20) and the target firmware (2 areas with size 0x2)">every firmware version</abbr><br> | |||
{{widedot}}'''<abbr title="0x20 bytes">Build label</abbr>''': yes, with timestamp, search for '''-sgpu-sspu-sli4'''<br> | |||
{{widedot}}'''<abbr title="2 bytes">Target Firmware</abbr>''': yes repeated '''two''' times<br> | |||
{{widedot}}'''Revision''': unknown | |||
</span> | |||
</div><div style="float:left;"> | |||
{| class="wikitable" style="line-height:100%; font-size:70%; margin-left:5px" | |||
|+ ps1_rom.bin | |||
! Firmware !! Size !! MD5 | |||
|- | |||
! [[2.10_CEX|2.10]] | |||
| ? || ? | |||
|- | |||
! ? | |||
| ? || ? | |||
|- | |||
! [[3.40_CEX|3.40]] ~ [[3.74_CEX|3.74]] | |||
| 4.089.584 || style="font-family:monospace" | FBB5F59EC332451DEBCCF1E377017237 | |||
|- | |||
! [[4.00_CEX|4.00]] ~ [[4.88_CEX|4.88]] | |||
| 524.288 || style="font-family:monospace" | 81BBE60BA7A3D1CEA1D48C14CBCC647B | |||
|} | |||
<span style="font-size:small"> | |||
{{widedot}}'''Format''': Not compiled or encrypted for every firmware<br> | |||
{{widedot}}'''Build label''': unknown<br> | |||
{{widedot}}'''Revision''': unknown | |||
</span> | |||
</div> | |||
</div> | |||
<br style="clear: both;" /> | |||
== | == Command IDs mapping == | ||
All the PS1 emulators have some game settings hardcoded inside them organized in a table using a hierarchy, pretty much the same structure used by ps2_gxemu.self and ps2_softemu.self to store the CONFIGS<br> | |||
There is a point of the hierarchy where is indicated the number of commands and the offset where are located. Every command is composed by ID[4] and data[4] (where the data coould be another offset to load more data from a deeper level of the hierarchy)<br> | |||
That IDs differs in between the PS1 emulator versions because are not a direct ID, it seems every ID is mapped to a different ID (probably static and common for all emu versions) in a separated table | |||
====How hardcoded config is read based on ps1emu.==== | |||
Like mentioned above config is created from 2x u32 values. Lets call first value command, and second value param.<br> | |||
Command is used to calculate address for param, and only param is stored on obtained address.<br> | |||
Emulator then check for params, and if found (usually when not zero) apply settings based on them.<br> | |||
<pre> | <pre> | ||
0x10BC8 lwz r0, 0(r9) # load HASH | |||
0x10BCC cmpw cr7, r0, r27 # compare title HASH with one from DB | |||
0x10BD0 bne cr7, loc_10BB8 # loop till HASH found | |||
0x10BD4 slwi r0, r10, 4 # config number << 4 to get offset from first entry in table | |||
0x10BD8 addi r24, r1, 0xAB0+var_A40 | |||
0x10BDC extsw r0, r0 | |||
0x10BE0 clrldi r3, r24, 32 | |||
0x10BE4 add r29, r0, r8 # r29 now points to game entry in config table | |||
0x10BE8 lwz r4, 4(r29) # load pointer to game ID | |||
0x10BEC bl sub_137FF8 | |||
0x10BF0 nop | |||
0x10BF4 lwz r28, 8(r29) | |||
0x10BF8 cmpwi cr7, r28, 0 | |||
0x10BFC ble cr7, loc_10C58 # check config count is not 0 or less | |||
0x10C00 lwz r26, 0xC(r29) # r26 is now pointer to configs for game | |||
0x10C04 li r30, 0 | |||
0x10C08 li r29, 0 | |||
0x10C0C lwz r25, off_17B5D8 # "core.c: CoreCheckTitle: param[%d] = 0x%"... | |||
0x10C10 | |||
0x10C10 read_conf_loop: # CODE XREF: CoreCheckTitle+2DC↓j | |||
0x10C10 add r11, r30, r26 # r11 is now pointer to currently read config for game | |||
0x10C14 addi r29, r29, 1 # count... | |||
0x10C18 clrldi r11, r11, 32 | |||
0x10C1C mr r3, r25 # just for print | |||
0x10C20 addi r30, r30, 8 # add 8 so next time in loop we read new config (4), | |||
0x10C20 # and new params (4) if game have more than one config | |||
0x10C24 lwz r4, 0(r11) # load command | |||
0x10C28 lwz r0, 4(r11) # load params | |||
0x10C2C slwi r9, r4, 2 # r9 = r4 << 2 so shift our command to the left by 2, and store in r9 | |||
0x10C30 clrldi r5, r0, 32 # just print again | |||
0x10C34 addi r9, r9, 0x10 # add 0x10 to shifted command value | |||
0x10C34 # to create address where param of config will be stored | |||
0x10C38 extsw r4, r4 | |||
0x10C3C extsw r9, r9 | |||
0x10C40 add r9, r9, r31 # r31 is value that change between emu versions. | |||
0x10C40 # That way emulator can keep correct config IDs without changes to table. | |||
0x10C40 # r31 0x2B0930 + what we currently have in r9 after previous calculations. | |||
0x10C44 stw r0, 4(r9) # Store param on finally calculated address + 4. For example for config 04 | |||
0x10C44 # address will be 0x2B0954. | |||
0x10C48 bl print_ | |||
0x10C4C nop | |||
0x10C50 cmpw cr7, r28, r29 # r28 overall config count | |||
0x10C50 # r29 currently read count | |||
0x10C54 bne cr7, read_conf_loop | |||
</pre> | </pre> | ||
====Per game hash calculation==== | |||
ps1_netemu | Hash is calculated using the data contents only (2048 bytes or 0x800h) of the sector 16 (beginning at the 0x9318 of the RAW/2352 image). Every single byte is used in the process. Calculation code does start at 0xC1658 in the ps1_netemu from 4.88 firmware. | ||
<pre> | <pre> | ||
loc_C1658: | |||
0xC1658 lwz r11, -0x7E4C(r2) | |||
0xC165C lis r6, -0x7FF9 | |||
0xC1660 li r9, 0x800 # number of bytes to process. The value is passed to the CTR register next. | |||
. | 0xC1664 li r0, 1 | ||
0xC1668 ori r6, r6, 0x8071 # 0xFFFFFFFF80078071 # value the bytes are multiplied by | |||
0xC166C mtctr r9 # set the CTR register for the loop count decrement | |||
0xC1670 mr r7, r24 # first offset of the sector data to process moved into the r7 register (0x2DC28C in the RAM). | |||
0xC1674 li r10, 1 # set the r10 register to 1. | |||
0xC1678 li r8, 0 # set the r8 register to 0. | |||
0xC167C addi r15, r24, 0x800 # last offset of the sector data to process. It does not seem to be used at all. | |||
0xC1680 stw r0, 0x2640(r11) | |||
loc_C1684: | |||
0xC1684 clrldi r11, r7, 32 # move the content from r7 to the r11 (it is the current offset of the byte to process) | |||
0xC1688 addi r7, r7, 1 | |||
0xC168C lbz r9, 0(r11) # load the byte for calculation | |||
0xC1690 add r9, r10, r9 # add r10 to r9 | |||
0xC1694 mulhwu r0, r9, r6 # multiply the byte by constant and store the high 32 bits of result in the r0 | |||
0xC1698 srwi r10, r0, 15 # divide the result by 0x8000 | |||
0xC169C slwi r11, r10, 4 # multiply r10 by 0x10 | |||
0xC16A0 slwi r0, r10, 16 # multiply r10 by 0x10000 | |||
0xC16A4 subf r0, r11, r0 | |||
0xC16A8 add r0, r0, r10 | |||
0xC16AC subf r10, r0, r9 | |||
0xC16B0 add r11, r8, r10 | |||
0xC16B4 mulhwu r0, r11, r6 | |||
0xC16B8 srwi r8, r0, 15 | |||
0xC16BC slwi r9, r8, 4 | |||
0xC16C0 slwi r0, r8, 16 | |||
0xC16C4 subf r0, r9, r0 | |||
0xC16C8 add r0, r0, r8 | |||
0xC16CC subf r8, r0, r11 | |||
0xC16D0 bdnz+ loc_C1684 # loop | |||
0xC16D4 lwz r22, -0x7E4C(r2) | |||
0xC16D8 mr r3, r22 | |||
0xC16DC lbz r4, 0xA7(r22) | |||
0xC16E0 lbz r0, 0xA6(r22) | |||
0xC16E4 slwi r4, r4, 8 | |||
0xC16E8 lbz r9, 0xA5(r22) | |||
0xC16EC lbz r11, 0xA4(r22) | |||
0xC16F0 or r4, r4, r0 | |||
0xC16F4 slwi r0, r8, 16 # multiply the r8 by 0x10000 and place the result in the r0 register. It is the higher four bytes of hash. | |||
0xC16F8 slwi r4, r4, 8 | |||
0xC16FC add r0, r0, r10 # add the r10 to r0 - the lower four bytes of hash | |||
0xC1700 or r4, r4, r9 | |||
0xC1704 stw r0, 0x2640(r22) # store the hash | |||
</pre> | </pre> | ||
Super simple python script to calculate checksum, script lack of some checks performed by emu, and is hardcoded to 0x9318 offset, but should be enough.<br> | |||
Usage: edit *your first.bin* to name of your image, run script from CMD. Require python (3?). | |||
<pre>import zlib | |||
with open('your first.bin', 'rb') as f: | |||
f.seek(0x9318) | |||
suma = zlib.adler32(f.read(2048)) | |||
print (hex(suma))</pre> | |||
</pre> | |||
====Known ps1emu.self commands==== | |||
* 0xB param is magic word for libcrypt. | |||
* 0xE param is divider for 0x204CC00 (psx cpu speed), result is stored on fixed address and used by many functions. | |||
* 0x15 when param is set to 3, force game reload with ps1netemu. Is not known what other param values do. | |||
== Commands Info == | |||
== | |||
The command ID's varies in between firmware versions, most probably because new functions was added every few versions, reorganized, etc... and this changes created a "displacement" of the old commands that causes them to increase his ID<br> | The command ID's varies in between firmware versions, most probably because new functions was added every few versions, reorganized, etc... and this changes created a "displacement" of the old commands that causes them to increase his ID<br> | ||
At the time of writing this we dont know how to map that variable ID's to an static ID (that could be valid for all firmware versions), so by now in this list is needed to indicate the firmware version where the command ID was found<br> | At the time of writing this we dont know how to map that variable ID's to an static ID (that could be valid for all firmware versions), so by now in this list is needed to indicate the firmware version where the command ID was found<br> | ||
Coincidentially there are a few commands that preserves his ID in between | Coincidentially there are a few commands that preserves his ID in between firmware versions, most probably is because are the first commands implemented (up to netemu command 0x04)) and the variable ID given to them is a very low value, so always was kept at a low position in the commands list and was not disturbed by the modifications made to the other commands. | ||
<br><br> | |||
According to internal tables (4.86): | |||
* ps1_emu support commands up to 0x15 | |||
* ps1_newemu support commands up to 0x18 | |||
* ps1_netemu support commands up to 0x3C | |||
Beside functions that read command params directly, every emulator have function (madeup name) ReadInternalConfigValue(u32 command_id). This function take command_id as only variable, and return param in r3 for selected command. This is used widely to read command params, that include libcrypt commands. | |||
<br><br> | |||
Function mentioned above is placed on (in emu memory, 4.86): | |||
* ps1_emu 0x10638 | |||
* ps1_newemu 0x12F54 | |||
* ps1_netemu 0xB65F0 | |||
=== Command 0x01 (netemu 3.40 up to 4.88) === | === Command 0x01 (netemu 3.40 up to 4.88) === | ||
Line 275: | Line 522: | ||
=== Command 0x02 (netemu 3.40 up to 4.88) === | === Command 0x02 (netemu 3.40 up to 4.88) === | ||
The command data contains an offset that points to an area where are stored a list of sectors (4 bytes each), there are only 3 games using this command and are libcrypt protected: MediEvil (SCES-00311), Vagrant Story (SLES-02754), and Crash Team Racing (SCES-02105)<br> | |||
The command data contains an offset that points to an area where are stored a list of sectors (4 bytes each) | |||
The libcrypt protection is related with subchannel data stored by sectors, in redump.org this data is managed with the SBI files, displayed in a hexeditor view in each specific game page. If we convert the data from the official format to decimal and we compare it with the sector numbers in the redump.org SBI file it can be seen all the libcrypt protected sectors from the SBI file are included in the official format<br> | The libcrypt protection is related with subchannel data stored by sectors, in redump.org this data is managed with the SBI files, displayed in a hexeditor view in each specific game page. If we convert the data from the official format to decimal and we compare it with the sector numbers in the redump.org SBI file it can be seen all the libcrypt protected sectors from the SBI file are included in the official format<br> | ||
The official format seems to include a lot more sectors which purpose is unknown<br> | The official format seems to include a lot more sectors which purpose is unknown<br> | ||
There seems to be way to supply that data/command from external file. | There seems to be way to supply that data/command from external file.<br> | ||
<u>MediEvil</u> | <u>MediEvil SCES-00311 at absolute offset 0x16298C in ps1_netemu.self 4.88</u> http://redump.org/disc/592/ | ||
<small><pre | <small><pre> | ||
Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F | Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F | ||
Line 511: | Line 616: | ||
</pre></small> | </pre></small> | ||
<u>Vagrant Story</u> | <u>Vagrant Story SLES-02754 at absolute offset 0x162A8C in ps1_netemu.self 4.88</u> http://redump.org/disc/9978/ | ||
<small><pre | <small><pre> | ||
Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F | Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F | ||
Line 627: | Line 732: | ||
0004CBC9 | 0004CBC9 | ||
0004D5C8 | 0004D5C8 | ||
00000000 | |||
</pre></small> | |||
<u>Crash Team Racing SCES-02105 at absolute offset 0x1627E4 in ps1_netemu.self 4.88</u> http://redump.org/disc/798/ | |||
<small><pre> | |||
Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F | |||
001627E0 00 00 06 A3 00 00 0E 21 00 00 17 79 ...£...!...y | |||
001627F0 00 00 29 CB 00 00 2B 21 00 00 2E 22 00 00 31 31 ..)Ë..+!..."..11 | |||
00162800 00 00 37 19 00 00 37 1E 00 00 38 35 00 00 38 95 ..7...7...85..8• | |||
00162810 00 00 38 9A 00 00 3A D0 00 00 3A D5 00 00 3B 1A ..8š..:Ð..:Õ..;. | |||
00162820 00 00 3B 1F 00 00 3B D0 00 00 3B D5 00 00 3C 12 ..;...;Ð..;Õ..<. | |||
00162830 00 00 3C 17 00 00 3D 0C 00 00 3D 11 00 00 3F 27 ..<...=...=...?' | |||
00162840 00 00 3F 2C 00 00 48 91 00 00 55 35 00 00 57 A1 ..?,..H‘..U5..W¡ | |||
00162850 00 00 58 38 00 00 59 38 00 00 5B 67 00 00 62 A9 ..X8..Y8..[g..b© | |||
00162860 00 00 62 C5 00 00 78 4F 00 00 78 CA 00 00 7E 94 ..bÅ..xO..xÊ..~” | |||
00162870 00 00 90 30 00 00 9A D5 00 00 9E 05 00 00 A4 3D ...0..šÕ..ž...¤= | |||
00162880 00 00 A4 42 00 00 A5 C0 00 00 A5 C5 00 00 A8 04 ..¤B..¥À..¥Å..¨. | |||
00162890 00 00 A8 09 00 00 A8 A9 00 00 A8 AE 00 00 A9 5A ..¨...¨©..¨®..©Z | |||
001628A0 00 00 A9 5F 00 00 A9 90 00 00 A9 95 00 00 AA 72 ..©_..©...©•..ªr | |||
001628B0 00 00 AA 77 00 00 AD 18 00 00 AD 1D 00 00 C5 5C ..ªw........Å\ | |||
001628C0 00 00 EC 56 00 00 FB CA 00 01 04 52 00 01 04 7C ..ìV..ûÊ...R...| | |||
001628D0 00 01 08 F4 00 01 22 A3 00 01 26 79 00 01 2F 8B ...ô.."£..&y../‹ | |||
001628E0 00 01 2F A6 00 01 2F CE 00 01 53 A8 00 01 79 10 ../¦../Î..S¨..y. | |||
001628F0 00 01 86 0D 00 01 C3 96 00 01 CD 83 00 01 EA 08 ..†...Ö..̓..ê. | |||
00162900 00 01 F6 92 00 02 02 57 00 02 1C 08 00 02 53 85 ..ö’...W......S… | |||
00162910 00 02 91 5D 00 02 93 8F 00 02 93 A6 00 02 AB 93 ..‘]..“...“¦..«“ | |||
00162920 00 02 AB FB 00 02 BC 8C 00 02 CA 39 00 02 D2 17 ..«û..¼Œ..Ê9..Ò. | |||
00162930 00 02 F1 35 00 03 16 06 00 03 4A 45 00 03 4C B6 ..ñ5......JE..L¶ | |||
00162940 00 03 68 26 00 03 6B 1D 00 03 92 B8 00 03 92 F2 ..h&..k...’¸..’ò | |||
00162950 00 03 9B 5D 00 03 A7 76 00 03 BA 90 00 03 C5 1A ..›]..§v..º...Å. | |||
00162960 00 03 C5 41 00 03 C5 A3 00 03 FC F1 00 03 FD DA ..ÅA..Å£..üñ..ýÚ | |||
00162970 00 04 14 C2 00 04 1F 49 00 04 26 57 00 04 87 5F ...Â...I..&W..‡_ | |||
00162980 00 04 8E 65 00 04 C0 DA 00 00 00 00 ..Že..ÀÚ.... | |||
000006A3 | |||
00000E21 | |||
00001779 | |||
000029CB | |||
00002B21 | |||
00002E22 | |||
00003131 | |||
00003719 --- to decimal ---> 14105 (mentioned in the redump SBI file) | |||
0000371E --- to decimal ---> 14110 (mentioned in the redump SBI file) | |||
00003835 | |||
00003895 --- to decimal ---> 14485 (mentioned in the redump SBI file) | |||
0000389A --- to decimal ---> 14490 (mentioned in the redump SBI file) | |||
00003AD0 --- to decimal ---> 15056 (mentioned in the redump SBI file) | |||
00003AD5 --- to decimal ---> 15061 (mentioned in the redump SBI file) | |||
00003B1A --- to decimal ---> 15130 (mentioned in the redump SBI file) | |||
00003B1F --- to decimal ---> 15135 (mentioned in the redump SBI file) | |||
00003BD0 --- to decimal ---> 15312 (mentioned in the redump SBI file) | |||
00003BD5 --- to decimal ---> 15317 (mentioned in the redump SBI file) | |||
00003C12 --- to decimal ---> 15378 (mentioned in the redump SBI file) | |||
00003C17 --- to decimal ---> 15383 (mentioned in the redump SBI file) | |||
00003D0C --- to decimal ---> 15628 (mentioned in the redump SBI file) | |||
00003D11 --- to decimal ---> 15633 (mentioned in the redump SBI file) | |||
00003F27 --- to decimal ---> 16167 (mentioned in the redump SBI file) | |||
00003F2C --- to decimal ---> 16172 (mentioned in the redump SBI file) | |||
00004891 | |||
00005535 | |||
000057A1 | |||
00005838 | |||
00005938 | |||
00005B67 | |||
000062A9 | |||
000062C5 | |||
0000784F | |||
000078CA | |||
00007E94 | |||
00009030 | |||
00009AD5 | |||
00009E05 | |||
0000A43D --- to decimal ---> 42045 (mentioned in the redump SBI file) | |||
0000A442 --- to decimal ---> 42050 (mentioned in the redump SBI file) | |||
0000A5C0 --- to decimal ---> 42432 (mentioned in the redump SBI file) | |||
0000A5C5 --- to decimal ---> 42437 (mentioned in the redump SBI file) | |||
0000A804 --- to decimal ---> 43012 (mentioned in the redump SBI file) | |||
0000A809 --- to decimal ---> 43017 (mentioned in the redump SBI file) | |||
0000A8A9 --- to decimal ---> 43177 (mentioned in the redump SBI file) | |||
0000A8AE --- to decimal ---> 43182 (mentioned in the redump SBI file) | |||
0000A95A --- to decimal ---> 43354 (mentioned in the redump SBI file) | |||
0000A95F --- to decimal ---> 43359 (mentioned in the redump SBI file) | |||
0000A990 --- to decimal ---> 43408 (mentioned in the redump SBI file) | |||
0000A995 --- to decimal ---> 43413 (mentioned in the redump SBI file) | |||
0000AA72 --- to decimal ---> 43634 (mentioned in the redump SBI file) | |||
0000AA77 --- to decimal ---> 43639 (mentioned in the redump SBI file) | |||
0000AD18 --- to decimal ---> 44312 (mentioned in the redump SBI file) | |||
0000AD1D --- to decimal ---> 44317 (mentioned in the redump SBI file) | |||
0000C55C | |||
0000EC56 | |||
0000FBCA | |||
00010452 | |||
0001047C | |||
000108F4 | |||
000122A3 | |||
00012679 | |||
00012F8B | |||
00012FA6 | |||
00012FCE | |||
000153A8 | |||
00017910 | |||
0001860D | |||
0001C396 | |||
0001CD83 | |||
0001EA08 | |||
0001F692 | |||
00020257 | |||
00021C08 | |||
00025385 | |||
0002915D | |||
0002938F | |||
000293A6 | |||
0002AB93 | |||
0002ABFB | |||
0002BC8C | |||
0002CA39 | |||
0002D217 | |||
0002F135 | |||
00031606 | |||
00034A45 | |||
00034CB6 | |||
00036826 | |||
00036B1D | |||
000392B8 | |||
000392F2 | |||
00039B5D | |||
0003A776 | |||
0003BA90 | |||
0003C51A | |||
0003C541 | |||
0003C5A3 | |||
0003FCF1 | |||
0003FDDA | |||
000414C2 | |||
00041F49 | |||
00042657 | |||
0004875F | |||
00048E65 | |||
0004C0DA | |||
00000000 | 00000000 | ||
</pre></small> | </pre></small> | ||
Line 636: | Line 882: | ||
Value is integer that is later converted to double float using fcfid, and truncated to single precision by frsp.<br> | Value is integer that is later converted to double float using fcfid, and truncated to single precision by frsp.<br> | ||
I'm not familiar with CELL floating point unit quirks, but value could be just single precision float from the start, why complicate that so much?<br> | I'm not familiar with CELL floating point unit quirks, but value could be just single precision float from the start, why complicate that so much?<br> | ||
_xcdrom_thread related. | |||
=== Command 0x04 (netemu 3.40 up to 4.88) === | === Command 0x04 (netemu 3.40 up to 4.88) === | ||
*Valid values found: 0x4, 0x7, 0x14 (20d), 0x46 (70d), 0x64 (100d), 0xC8 (200d), 0xFFFFFF38 ( | *Valid values found: 0x4, 0x7, 0x14 (20d), 0x46 (70d), 0x64 (100d), 0xC8 (200d), 0xFFFFFF38 (????????) | ||
*Default value: 0 | *Default value: 0 | ||
*_xcdrom_thread related. | *_xcdrom_thread related. | ||
=== Command 0x05 (netemu 3.40 up to 4.88) === | === Command 0x05 (netemu 3.40 up to 4.88) === | ||
Line 657: | Line 897: | ||
*Default value: 0 | *Default value: 0 | ||
*_xcdrom_thread related. | *_xcdrom_thread related. | ||
=== Command 0x07 (netemu 4.83 up to 4.88) === | === Command 0x07 (netemu 4.83 up to 4.88) === | ||
*Default value: 0 | *Default value: 0 | ||
*_xcdrom_thread related. | *_xcdrom_thread related. | ||
=== Command 0x08 (netemu 3.40 up to 4.88) === | === Command 0x08 (netemu 3.40 up to 4.88) === | ||
Line 678: | Line 913: | ||
=== Command 0x0E (netemu 4.83 up to 4.88) === | === Command 0x0E (netemu 4.83 up to 4.88) === | ||
*Default value: 0x1F4 | *Default value: 0x1F4 | ||
*_xcdrom_thread related. | *_xcdrom_thread related. | ||
=== Command 0x0F (netemu 4.83 up to 4.88) === | === Command 0x0F (netemu 4.83 up to 4.88) === | ||
*Default value: 0xFA | *Default value: 0xFA | ||
*_xcdrom_thread related. | *_xcdrom_thread related. | ||
Line 694: | Line 927: | ||
*Default value: 0x7D | *Default value: 0x7D | ||
*_xcdrom_thread related. | *_xcdrom_thread related. | ||
=== Command 0x13 (netemu 4.83 up to 4.88) === | === Command 0x13 (netemu 4.83 up to 4.88) === | ||
*Default value: 0 | *Default value: 0 | ||
=== Command 0x14 (netemu 4.83 up to 4.88) === | === Command 0x14 (netemu 4.83 up to 4.88) === | ||
Line 715: | Line 939: | ||
=== Command 0x16 (netemu 4.83 up to 4.88) === | === Command 0x16 (netemu 4.83 up to 4.88) === | ||
*Default value: 0 | *Default value: 0 | ||
=== Command 0x17 (netemu 4.83 up to 4.88) === | === Command 0x17 (netemu 4.83 up to 4.88) === | ||
*Or command 0x15 (netemu 3.40 up to 3.55) | *Or command 0x15 (netemu 3.40 up to 3.55) | ||
*Or command 0x0B (emu | *Or command 0x0B (emu 3.40 up to 4.88) | ||
*Or command 0x0A (newemu 3.40 up to 4.88) | *Or command 0x0A (newemu 3.40 up to 4.88) | ||
This is the libcrypt magic word. This command is used only in 3 games (SCES_016.95, SLES_019.07, SLES_013.01). see: [[PS1 Custom Patches]] | This is the libcrypt magic word. This command is used only in 3 games (SCES_016.95, SLES_019.07, SLES_013.01). see: [[PS1 Custom Patches]] | ||
In ps1_netemu there is | In ps1_netemu there is possbility to setup that command from one of ps1 classic files (PSISOIMG0000 / PSTITLEIMG000000 related). | ||
=== Command 0x18 (netemu 4.83 up to 4.88) === | === Command 0x18 (netemu 4.83 up to 4.88) === | ||
*Default value: 0 | *Default value: 0 | ||
=== Command 0x19 (netemu 4.83 up to 4.88) === | === Command 0x19 (netemu 4.83 up to 4.88) === | ||
Line 745: | Line 955: | ||
=== Command 0x1A (netemu 4.83 up to 4.88) === | === Command 0x1A (netemu 4.83 up to 4.88) === | ||
*Default value: 0 | *Default value: 0 | ||
*Set in same place where bios image is loaded, and region check/patch is performed. | |||
=== Command 0x1B (netemu 4.83 up to 4.88) === | === Command 0x1B (netemu 4.83 up to 4.88) === | ||
*Default value: 0x3E8 | *Default value: 0x3E8 | ||
=== Command 0x1E (netemu 4.83 up to 4.88) === | === Command 0x1E (netemu 4.83 up to 4.88) === | ||
*Default value: 0x7D0 | *Default value: 0x7D0 | ||
*xPadThread related. | *xPadThread related. | ||
=== Command 0x21 (netemu 4.83 up to 4.88) === | === Command 0x21 (netemu 4.83 up to 4.88) === | ||
Line 790: | Line 972: | ||
*Default value: 0x3E8 | *Default value: 0x3E8 | ||
*PS1 GPU related. | *PS1 GPU related. | ||
=== Command 0x23 (netemu 4.83 up to 4.88) === | === Command 0x23 (netemu 4.83 up to 4.88) === | ||
Line 808: | Line 989: | ||
*PS1 GPU related. | *PS1 GPU related. | ||
=== Command 0x2B (netemu 4.83 up to 4.88) === | === Command 0x2B(netemu 4.83 up to 4.88) === | ||
*Default value: 0 | *Default value: 0 | ||
*PS1 GPU related. | *PS1 GPU related. | ||
Line 819: | Line 1,000: | ||
*Default value: 0 | *Default value: 0 | ||
*PS1 GPU related. | *PS1 GPU related. | ||
=== Command 0x32 (netemu 4.83 up to 4.88) === | === Command 0x32 (netemu 4.83 up to 4.88) === | ||
Line 832: | Line 1,007: | ||
Value is integer that is later converted to double float using fcfid, and truncated to single precision by frsp.<br> | Value is integer that is later converted to double float using fcfid, and truncated to single precision by frsp.<br> | ||
Pad vibration related, seems to be used to calculate big motor strength used later in cellPadSetActDirect, if other conditions are met. Default value set in xPadThread Init is 0x4B0(1200). | Pad vibration related, seems to be used to calculate big motor strength used later in cellPadSetActDirect, if other conditions are met. Default value set in xPadThread Init is 0x4B0(1200). | ||
=== Command 0x37 (netemu 4.83 up to 4.88) === | === Command 0x37 (netemu 4.83 up to 4.88) === | ||
Line 850: | Line 1,016: | ||
=== Command 0x38 (netemu 4.83 up to 4.88) === | === Command 0x38 (netemu 4.83 up to 4.88) === | ||
*Valid values found: | *Valid values found: | ||
** | **1 = relaunch the game with ps1_emu.self | ||
**2 = relaunch the game with ps1_newemu.self | |||
When value is not 0 relaunch game with different emu, there seems to be selection between ps1_emu, and ps1_newemu based on config value. | |||
== Commands table from 4.86 ps1_netemu == | |||
{|class="mw-datatable sortable" style="font-family:monospace; font-weight:bold; font-size:1em" | |||
|+<span style="font-family:sans-serif; font-size:0.9em">ps1_netemu.self [[4.83_CEX|4.83]]~[[{{latestPS3}}_CEX|{{latestPS3}}]] (349 discs. ASIA:256, EURO:18, USA:75) <!--{{ed right|TitleID settings hardcoded in ps1_netemu.self}}--></span> | |||
|-style="font-family:sans-serif; font-weight:normal; font-size:0.9em" | |||
! rowspan="2" | Title ID !! class="unsortable" rowspan="2" | Checksum !! rowspan="2" style="width:30%; min-width:300px" | Title !! class="unsortable" colspan="3" | Commands !! class="unsortable" rowspan="2" style="width:50%; min-width:300px" | Notes | |||
|-style="font-family:sans-serif; font-weight:normal; font-size:0.9em" | |||
! <abbr title="Commands Count">Count</abbr> !! <abbr title="Command ID">ID</abbr> !! <abbr title="Command Data">Data</abbr> | |||
|- | |||
| SCPS_101.06 || 0x53226B9C || || 1 || 0x12 || 0x00000020 || | |||
|- | |||
| SCPS_101.07 || 0x90F76B40 || || 1 || 0x12 || 0x00000020 || | |||
|- | |||
| SLPS_018.80 || 0xD8446E20 || || 1 || 0x31 || 0x00000002 || | |||
|- | |||
| SLPS_018.81 || 0xD4C76D1B || || 1 || 0x31 || 0x00000002 || | |||
|- | |||
| SLPS_018.82 || 0x18126E07 || || 1 || 0x31 || 0x00000002 || | |||
|- | |||
| SLPS_018.83 || 0x12376E34 || || 1 || 0x31 || 0x00000002 || | |||
|- | |||
| SLPS_023.64 || 0x40B572AA || || 4 || 0x2C || 0xFFFFFFF0 || | |||
|- | |||
| || || || || 0x22 || 0x000001F4 || | |||
|- | |||
| || || || || 0x21 || 0x000001F4 || | |||
|- | |||
| || || || || 0x33 || 0x00000514 || | |||
|- | |||
| SLPS_023.65 || 0x55E87206 || || 4 || 0x2C || 0xFFFFFFF0 || | |||
|- | |||
| || || || || 0x22 || 0x000001F4 || | |||
|- | |||
| || || || || 0x21 || 0x000001F4 || | |||
|- | |||
| || || || || 0x33 || 0x00000514 || | |||
|- | |||
| SLPS_021.57 || 0xFF40721F || || 1 || 0x1C || 0x00000002 || | |||
|- | |||
| SLPS_017.51 || 0xBCDF6FA3 || || 1 || 0x13 || 0x00000001 || | |||
|- | |||
| SLPS_911.80 || 0x08047091 || || 1 || 0x13 || 0x00000001 || | |||
|- | |||
| SLPM_866.02 || 0x5A746EC3 || || 1 || 0x19 || 0x00000032 || | |||
|- | |||
| SLPS_005.82 || 0xBA436ECC || || 3 || 0x20 || 0x00000001 || | |||
|- | |||
| || || || || 0x13 || 0x00000001 || | |||
|- | |||
| || || || || 0x19 || 0x0000005A || | |||
|- | |||
| SCPS_101.15 || 0x56086C54 || || 1 || 0x14 || 0x00000006 || | |||
|- | |||
| SLPM_860.72 || 0x4373729F || || 1 || 0x14 || 0x0000000D || | |||
|- | |||
| SCPS_180.12 || 0xDBB96C5C || || 3 || 0x12 || 0x00000120 || | |||
|- | |||
| || || || || 0x12 || 0x00004000 || | |||
|- | |||
| || || || || 0x3C || 0xFFFFFF3D || | |||
|- | |||
| SLPS_012.22 || 0xF5F773C5 || || 2 || 0x03 || 0x000005DC || | |||
|- | |||
| || || || || 0x22 || 0x000004B0 || | |||
|- | |||
| SLPS_012.22 || 0x7D8D73B7 || || 2 || 0x03 || 0x000005DC || | |||
|- | |||
| || || || || 0x22 || 0x000004B0 || | |||
|- | |||
| SLPS_017.93 || 0x4FA46DA5 || || 1 || 0x18 || 0xFFFFFF80 || | |||
|- | |||
| SLPM_864.59 || 0xC78A748B || || 1 || 0x12 || 0x00000080 || | |||
|- | |||
| SLPS_026.21 || 0xC3157410 || || 1 || 0x31 || 0x00000002 || | |||
|- | |||
| SCPS_100.03 || 0xED04760D || || 1 || 0x13 || 0x00000001 || | |||
|- | |||
| SCPS_180.11 || 0x286070C5 || || 2 || 0x13 || 0x00000001 || | |||
|- | |||
| || || || || 0x00 || 0x00000000 || | |||
|- | |||
| SLPS_018.53 || 0x9D4473E4 || || 1 || 0x33 || 0x00000514 || | |||
|- | |||
| SCPS_101.03 || 0x6E516DAD || || 1 || 0x33 || 0x00000514 || | |||
|- | |||
| SCPS_100.47 || 0x56D97048 || || 1 || 0x33 || 0x00000514 || | |||
|- | |||
| SLPS_033.12 || 0xA0CE6CA9 || || 1 || 0x33 || 0x00000514 || | |||
|- | |||
| SLPM_861.85 || 0xEBAF6F5D || || 1 || 0x33 || 0x00000514 || | |||
|- | |||
| SLPM_861.86 || 0x3E696C8A || || 1 || 0x33 || 0x00000514 || | |||
|- | |||
| SLPM_861.87 || 0x81D86E23 || || 1 || 0x33 || 0x00000514 || | |||
|- | |||
| SCPS_100.91 || 0xC30F6E06 || || 2 || 0x12 || 0x00000004 || | |||
|- | |||
| || || || || 0x33 || 0x00000514 || | |||
|- | |||
| SCPS_100.99 || 0x9502715F || || 2 || 0x33 || 0x00000514 || | |||
|- | |||
| || || || || 0x32 || 0x00000054 || | |||
|- | |||
| SCPS_100.73 || 0x73E06E8F || || 2 || 0x33 || 0x00000514 || | |||
|- | |||
| || || || || 0x32 || 0x00000054 || | |||
|- | |||
| SLPS_026.33 || 0x1A696E28 || || 1 || 0x33 || 0x00000514 || | |||
|- | |||
| SLPS_029.88 || 0x3FAD6F38 || || 1 || 0x33 || 0x00000514 || | |||
|- | |||
| SLPM_866.40 || 0xF9DB6F2D || || 2 || 0x33 || 0x00000514 || | |||
|- | |||
| || || || || 0x32 || 0x00000054 || | |||
|- | |||
| SLPS_026.61 || 0xC49B6F05 || || 1 || 0x33 || 0x00000514 || | |||
|- | |||
| SLPS_026.62 || 0x6D7D6F1B || || 1 || 0x33 || 0x00000514 || | |||
|- | |||
| SLPS_023.00 || 0x9B397352 || || 2 || 0x33 || 0x00000514 || | |||
|- | |||
| || || || || 0x32 || 0x00000054 || | |||
|- | |||
| SLPS_024.89 || 0x8F4676C6 || || 2 || 0x33 || 0x00000514 || | |||
|- | |||
| || || || || 0x32 || 0x00000054 || | |||
|- | |||
| SLPS_030.87 || 0x30F078AC || || 2 || 0x33 || 0x00000514 || | |||
|- | |||
| || || || || 0x32 || 0x00000054 || | |||
|- | |||
| SLPM_860.33 || 0x1B467259 || || 1 || 0x33 || 0x00000514 || | |||
|- | |||
| SLPS_007.17 || 0x9F01700A || || 1 || 0x22 || 0x000007D0 || | |||
|- | |||
| SLPM_873.31 || 0xFDA96F69 || || 3 || 0x03 || 0x00000258 || | |||
|- | |||
| || || || || 0x22 || 0x000004E2 || | |||
|- | |||
| || || || || 0x14 || 0x00000014 || | |||
|- | |||
| SLPS_002.00 || 0xF2A57355 || || 1 || 0x20 || 0x00000001 || | |||
|- | |||
| SLPS_016.26 || 0x70627260 || || 1 || 0x12 || 0x00000020 || | |||
|- | |||
| SLPS_016.27 || 0x0A5C7210 || || 1 || 0x12 || 0x00000020 || | |||
|- | |||
| SLPS_028.17 || 0x8C73710B || || 1 || 0x38 || 0x00000002 || | |||
|- | |||
| SLPM_871.17 || 0x51E66F74 || || 1 || 0x38 || 0x00000002 || | |||
|- | |||
| SCPS_100.89 || 0xE39F71B3 || || 1 || 0x0E || 0x00001388 || | |||
|- | |||
| SCPS_100.90 || 0x68D771A3 || || 1 || 0x0E || 0x00001388 || | |||
|- | |||
| SLPS_017.50 || 0x5D6C741F || || 3 || 0x36 || 0x00000001 || | |||
|- | |||
| || || || || 0x36 || 0x00000002 || | |||
|- | |||
| || || || || 0x36 || 0x00000004 || | |||
|- | |||
| SLPM_870.68 || 0xA9F26FC8 || || 1 || 0x12 || 0x00000001 || | |||
|- | |||
| SLPS_010.65 || 0x6C1F6C29 || || 1 || 0x12 || 0x00000002 || | |||
|- | |||
| SLPS_019.90 || 0x9F817715 || || 1 || 0x13 || 0x00000001 || | |||
|- | |||
| slps_002.49 || 0x17867187 || || 1 || 0x13 || 0x00000001 || Game ID use lowercase in emu, DON'T EDIT | |||
|- | |||
| SLPS_011.71 || 0x3C5E7167 || || 1 || 0x12 || 0x00000001 || | |||
|- | |||
| SLPS_028.58 || 0xA8426B24 || || 1 || 0x13 || 0x00000001 || | |||
|- | |||
| SLPS_030.12 || 0x24857336 || || 2 || 0x03 || 0x00000032 || | |||
|- | |||
| || || || || 0x0B || 0x27104E95 || | |||
|- | |||
| SLPM_872.84 || 0x6B607035 || || 2 || 0x13 || 0x00000001 || | |||
|- | |||
| || || || || 0x20 || 0x00000001 || | |||
|- | |||
| SLPS_001.94 || 0xB01D7540 || || 1 || 0x12 || 0x00000002 || | |||
|- | |||
| SLPS_014.21 || 0x5E466C72 || || 1 || 0x13 || 0x00000001 || | |||
|- | |||
| SLPS_013.83 || 0x2E3872B6 || || 1 || 0x03 || 0x000005DC || | |||
|- | |||
| SLPS_022.99 || 0x7B146D4E || || 1 || 0x13 || 0x00000001 || | |||
|- | |||
| SLPS_007.77 || 0xD5197559 || || 1 || 0x13 || 0x00000001 || | |||
|- | |||
| SLPS_031.35 || 0x19E96EFA || || 1 || 0x13 || 0x00000001 || | |||
|- | |||
| SLPS_018.20 || 0xF0B06D6A || || 1 || 0x03 || 0x000000C8 || | |||
|- | |||
| SLPS_012.42 || 0xC9497214 || || 1 || 0x14 || 0x00000014 || | |||
|- | |||
| SLPM_860.95 || 0x39FE7168 || || 1 || 0x13 || 0x00000001 || | |||
|- | |||
| SLPM_863.45 || 0x20436C49 || || 1 || 0x22 || 0x000001F4 || | |||
|- | |||
| SCPS_100.33 || 0x660971A5 || || 1 || 0x13 || 0x00000001 || | |||
|- | |||
| SLPM_866.13 || 0x2F647175 || || 5 || 0x14 || 0x0000000C || | |||
|- | |||
| || || || || 0x19 || 0x00000010 || | |||
|- | |||
| || || || || 0x36 || 0x00000001 || | |||
|- | |||
| || || || || 0x36 || 0x00000002 || | |||
|- | |||
| || || || || 0x36 || 0x00000004 || | |||
|- | |||
| SLPS_002.15 || 0x34C16E53 || || 1 || 0x13 || 0x00000001 || | |||
|- | |||
| SLPS_002.16 || 0xB9796EA7 || || 1 || 0x13 || 0x00000001 || | |||
|- | |||
| SCPS_100.71 || 0x16AB6E7B || || 1 || 0x13 || 0x00000001 || | |||
|- | |||
| SLPS_000.10 || 0xB36372E0 || || 1 || 0x13 || 0x00000001 || | |||
|- | |||
| SLPM_872.30 || 0xC72770B2 || || 1 || 0x14 || 0x00000014 || | |||
|- | |||
| SLPS_000.28 || 0x06087000 || || 1 || 0x13 || 0x00000001 || | |||
|- | |||
| SLPS_006.40 || 0x41C872D2 || || 1 || 0x12 || 0x00000002 || | |||
|- | |||
| SCPS_100.21 || 0x9F9B6E69 || || 3 || 0x36 || 0x00000001 || | |||
|- | |||
| || || || || 0x36 || 0x00000002 || | |||
|- | |||
| || || || || 0x36 || 0x00000004 || | |||
|- | |||
| SLPS_914.44 || 0xB9317410 || || 5 || 0x14 || 0x0000000C || | |||
|- | |||
| || || || || 0x19 || 0x00000008 || | |||
|- | |||
| || || || || 0x36 || 0x00000001 || | |||
|- | |||
| || || || || 0x36 || 0x00000002 || | |||
|- | |||
| || || || || 0x36 || 0x00000004 || | |||
|- | |||
| SLPS_914.45 || 0xC1007411 || || 5 || 0x14 || 0x0000000C || | |||
|- | |||
| || || || || 0x19 || 0x00000008 || | |||
|- | |||
| || || || || 0x36 || 0x00000001 || | |||
|- | |||
| || || || || 0x36 || 0x00000002 || | |||
|- | |||
| || || || || 0x36 || 0x00000004 || | |||
|- | |||
| SCPS_100.60 || 0x4BCA6FD6 || || 2 || 0x22 || 0x00000320 || | |||
|- | |||
| || || || || 0x31 || 0x00000002 || | |||
|- | |||
| SLPS_006.24 || 0x6A767294 || || 1 || 0x38 || 0x00000002 || | |||
|- | |||
| SLPS_018.18 || 0x2F686DE7 || || 1 || 0x00 || 0x00000000 || | |||
|- | |||
| SLPS_018.19 || 0xBCF36F23 || || 3 || 0x13 || 0x00000001 || | |||
|- | |||
| || || || || 0x21 || 0x000007D0 || | |||
|- | |||
| || || || || 0x22 || 0x000007D0 || | |||
|- | |||
| SLPM_860.28 || 0x770F6F03 || || 6 || 0x1F || 0x00000001 || | |||
|- | |||
| || || || || 0x21 || 0x000007D0 || | |||
|- | |||
| || || || || 0x22 || 0x000007D0 || | |||
|- | |||
| || || || || 0x2B || 0x00000010 || | |||
|- | |||
| || || || || 0x2D || 0x00000020 || | |||
|- | |||
| || || || || 0x37 || 0x00000002 || | |||
|- | |||
| SLPS_001.80 || 0xA017720F || || 3 || 0x03 || 0x00000258 || | |||
|- | |||
| || || || || 0x22 || 0x000004E2 || | |||
|- | |||
| || || || || 0x14 || 0x00000014 || | |||
|- | |||
| SLPS_007.23 || 0x2E5A6FC9 || || 1 || 0x13 || 0x00000001 || | |||
|- | |||
| SLPS_007.77 || 0x05837561 || || 1 || 0x13 || 0x00000001 || | |||
|- | |||
| SLPS_001.71 || 0x41CE713C || || 1 || 0x14 || 0x0000000E || | |||
|- | |||
| SLPS_022.66 || 0xD73B735B || || 2 || 0x12 || 0x00000020 || | |||
|- | |||
| || || || || 0x12 || 0x00000400 || | |||
|- | |||
| SLPS_022.67 || 0xB3347162 || || 2 || 0x12 || 0x00000020 || | |||
|- | |||
| || || || || 0x12 || 0x00000400 || | |||
|- | |||
| SLPS_022.68 || 0x1F547343 || || 2 || 0x12 || 0x00000020 || | |||
|- | |||
| || || || || 0x12 || 0x00000400 || | |||
|- | |||
| SLPS_022.69 || 0x5B797240 || || 2 || 0x12 || 0x00000020 || | |||
|- | |||
| || || || || 0x12 || 0x00000400 || | |||
|- | |||
| SLPS_003.04 || 0x0B4570C7 || || 1 || 0x12 || 0x00000020 || | |||
|- | |||
| SLPS_003.05 || 0x2F7C6D6C || || 1 || 0x12 || 0x00000020 || | |||
|- | |||
| SLPS_011.90 || 0x5F51743A || || 4 || 0x0E || 0x00000000 || | |||
|- | |||
| || || || || 0x0F || 0x00000000 || | |||
|- | |||
| || || || || 0x10 || 0x00000000 || | |||
|- | |||
| || || || || 0x11 || 0x00000000 || | |||
|- | |||
| SLPS_011.91 || 0x8F317483 || || 4 || 0x0E || 0x00000000 || | |||
|- | |||
| || || || || 0x0F || 0x00000000 || | |||
|- | |||
| || || || || 0x10 || 0x00000000 || | |||
|- | |||
| || || || || 0x11 || 0x00000000 || | |||
|- | |||
| SLPS_011.92 || 0xF13275BC || || 4 || 0x0E || 0x00000000 || | |||
|- | |||
| || || || || 0x0F || 0x00000000 || | |||
|- | |||
| || || || || 0x10 || 0x00000000 || | |||
|- | |||
| || || || || 0x11 || 0x00000000 || | |||
|- | |||
| SLPS_011.93 || 0x5F51743A || || 4 || 0x0E || 0x00000000 || | |||
|- | |||
| || || || || 0x0F || 0x00000000 || | |||
|- | |||
| || || || || 0x10 || 0x00000000 || | |||
|- | |||
| || || || || 0x11 || 0x00000000 || | |||
|- | |||
| SLPS_011.94 || 0x8F317483 || || 4 || 0x0E || 0x00000000 || | |||
|- | |||
| || || || || 0x0F || 0x00000000 || | |||
|- | |||
| || || || || 0x10 || 0x00000000 || | |||
|- | |||
| || || || || 0x11 || 0x00000000 || | |||
|- | |||
| SLPS_011.95 || 0xF13275BC || || 4 || 0x0E || 0x00000000 || | |||
|- | |||
| || || || || 0x0F || 0x00000000 || | |||
|- | |||
| || || || || 0x10 || 0x00000000 || | |||
|- | |||
| || || || || 0x11 || 0x00000000 || | |||
|- | |||
| SLPM_861.23 || 0x6480711B || || 2 || 0x21 || 0x000007D0 || | |||
|- | |||
| || || || || 0x22 || 0x000007D0 || | |||
|- | |||
| SLPS_015.43 || 0x6A956F92 || || 1 || 0x31 || 0x00000002 || | |||
|- | |||
| SLPS_015.44 || 0x28157073 || || 1 || 0x31 || 0x00000002 || | |||
|- | |||
| SLPS_015.45 || 0xB0F86F7A || || 1 || 0x31 || 0x00000002 || | |||
|- | |||
| SLPS_021.08 || 0xFEE172C6 || || 1 || 0x03 || 0x000001F4 || | |||
|- | |||
| SLPS_019.26 || 0xC74271DC || || 5 || 0x03 || 0x00000384 || | |||
|- | |||
| || || || || 0x04 || 0x00000064 || | |||
|- | |||
| || || || || 0x08 || 0x00000320 || | |||
|- | |||
| || || || || 0x14 || 0x00000000 || | |||
|- | |||
| || || || || 0x16 || 0x00000004 || | |||
|- | |||
| SLPM_862.24 || 0x43406D6F || || 3 || 0x03 || 0x0000012C || | |||
|- | |||
| || || || || 0x08 || 0x0000012C || | |||
|- | |||
| || || || || 0x13 || 0x00000001 || | |||
|- | |||
| SLPM_862.25 || 0x8F686D14 || || 3 || 0x03 || 0x0000012C || | |||
|- | |||
| || || || || 0x08 || 0x0000012C || | |||
|- | |||
| || || || || 0x13 || 0x00000001 || | |||
|- | |||
| SLPS_002.48 || 0xEB08766F || || 1 || 0x12 || 0x00000002 || | |||
|- | |||
| SLPS_003.42 || 0xED3675B2 || || 1 || 0x12 || 0x00000002 || | |||
|- | |||
| slps_002.67 || 0xDAA073DB || || 1 || 0x20 || 0x00000002 || Game ID use lowercase in emu, DON'T EDIT | |||
|- | |||
| SLPS_000.06 || 0x37A1705B || || 2 || 0x13 || 0x00000001 || | |||
|- | |||
| || || || || 0x22 || 0x00000640 || | |||
|- | |||
| SLPS_000.31 || 0xFBDE704D || || 1 || 0x13 || 0x00000001 || | |||
|- | |||
| SLPS_014.20 || 0xFC4671F3 || || 5 || 0x03 || 0x000001F4 || | |||
|- | |||
| || || || || 0x08 || 0x000001F4 || | |||
|- | |||
| || || || || 0x14 || 0x00000000 || | |||
|- | |||
| || || || || 0x21 || 0x000001F4 || | |||
|- | |||
| || || || || 0x22 || 0x000001F4 || | |||
|- | |||
| SLPM_867.75 || 0xF0926FF3 || || 3 || 0x14 || 0x00000000 || | |||
|- | |||
| || || || || 0x16 || 0x00000020 || | |||
|- | |||
| || || || || 0x19 || 0x00000000 || | |||
|- | |||
| SLPM_867.76 || 0x5BF1723F || || 3 || 0x14 || 0x00000000 || | |||
|- | |||
| || || || || 0x16 || 0x00000016 || | |||
|- | |||
| || || || || 0x16 || 0x00000010 || | |||
|- | |||
| SLPM_865.49 || 0x6C3F7219 || || 2 || 0x01 || 0x00000002 || | |||
|- | |||
| || || || || 0x12 || 0x00000020 || | |||
|- | |||
| SLPM_865.50 || 0x0F5873A1 || || 2 || 0x01 || 0x00000002 || | |||
|- | |||
| || || || || 0x12 || 0x00000020 || | |||
|- | |||
| SLPM_868.81 || 0x4927738C || || 1 || 0x12 || 0x00000020 || | |||
|- | |||
| SLPM_868.82 || 0x22927190 || || 1 || 0x12 || 0x00000020 || | |||
|- | |||
| SLPS_027.26 || 0xF3156ECC || || 1 || 0x04 || 0x000000C8 || | |||
|- | |||
| SLPM_867.15 || 0x020A6E24 || || 1 || 0x04 || 0x000000C8 || | |||
|- | |||
| SIPS_600.27 || 0x53B97685 || || 1 || 0x03 || 0x000001F4 || | |||
|- | |||
| SLPS_004.77 || 0x7F0773CA || || 4 || 0x03 || 0x000004B0 || | |||
|- | |||
| || || || || 0x04 || 0x000000C8 || | |||
|- | |||
| || || || || 0x12 || 0x00000008 || | |||
|- | |||
| || || || || 0x18 || 0xFFFFFC18 || | |||
|- | |||
| SLPS_004.78 || 0x415873C2 || || 4 || 0x03 || 0x000004B0 || | |||
|- | |||
| || || || || 0x04 || 0x000000C8 || | |||
|- | |||
| || || || || 0x12 || 0x00000008 || | |||
|- | |||
| || || || || 0x18 || 0xFFFFFC18 || | |||
|- | |||
| SLPS_004.79 || 0x42607296 || || 4 || 0x03 || 0x000004B0 || | |||
|- | |||
| || || || || 0x04 || 0x000000C8 || | |||
|- | |||
| || || || || 0x12 || 0x00000008 || | |||
|- | |||
| || || || || 0x18 || 0xFFFFFC18 || | |||
|- | |||
| SLPS_004.80 || 0x423873A1 || || 4 || 0x03 || 0x000004B0 || | |||
|- | |||
| || || || || 0x04 || 0x000000C8 || | |||
|- | |||
| || || || || 0x12 || 0x00000008 || | |||
|- | |||
| || || || || 0x18 || 0xFFFFFC18 || | |||
|- | |||
| SLPS_029.23 || 0x87036E9E || || 3 || 0x03 || 0x000002BC || | |||
|- | |||
| || || || || 0x08 || 0x000002BC || | |||
|- | |||
| || || || || 0x14 || 0x00000000 || | |||
|- | |||
| SLPS_000.83 || 0x427C7116 || || 7 || 0x14 || 0x00000008 || | |||
|- | |||
| || || || || 0x15 || 0x00000000 || | |||
|- | |||
| || || || || 0x19 || 0x00000008 || | |||
|- | |||
| || || || || 0x21 || 0x000000C8 || | |||
|- | |||
| || || || || 0x22 || 0x000000C8 || | |||
|- | |||
| || || || || 0x2C || 0xFFFFFFF0 || | |||
|- | |||
| || || || || 0x2D || 0xFFFFFFF0 || | |||
|- | |||
| SLPM_870.70 || 0xF8A473BC || || 1 || 0x16 || 0x00000010 || | |||
|- | |||
| SLPM_872.70 || 0xC76C716E || || 2 || 0x03 || 0x000001F4 || | |||
|- | |||
| || || || || 0x14 || 0x00000000 || | |||
|- | |||
| SLPS_011.33 || 0xBBD96EBE || || 5 || 0x13 || 0x00000001 || | |||
|- | |||
| || || || || 0x14 || 0x00000000 || | |||
|- | |||
| || || || || 0x19 || 0x00000000 || | |||
|- | |||
| || || || || 0x21 || 0x00000C80 || | |||
|- | |||
| || || || || 0x22 || 0x000007D0 || | |||
|- | |||
| SLPS_002.38 || 0x8FE37274 || || 1 || 0x13 || 0x00000001 || | |||
|- | |||
| SLPS_015.48 || 0x24377013 || || 5 || 0x14 || 0x0000000A || | |||
|- | |||
| || || || || 0x21 || 0x00000672 || | |||
|- | |||
| || || || || 0x36 || 0x00000001 || | |||
|- | |||
| || || || || 0x36 || 0x00000002 || | |||
|- | |||
| || || || || 0x36 || 0x00000004 || | |||
|- | |||
| SLPM_867.12 || 0x49DE6ED5 || || 1 || 0x13 || 0x00000001 || | |||
|- | |||
| SLPS_019.02 || 0xA0926C45 || || 1 || 0x13 || 0x00000001 || | |||
|- | |||
| SLPS_013.11 || 0x11206DA7 || || 1 || 0x1C || 0x00000002 || | |||
|- | |||
| SLPS_023.61 || 0xC1556EB3 || || 2 || 0x03 || 0x00000708 || | |||
|- | |||
| || || || || 0x21 || 0x00000000 || | |||
|- | |||
| SLPS_017.80 || 0xF77873AA || || 3 || 0x03 || 0x00000578 || | |||
|- | |||
| || || || || 0x10 || 0x00000000 || | |||
|- | |||
| || || || || 0x11 || 0x00000000 || | |||
|- | |||
| SLPS_017.81 || 0x06E073AC || || 3 || 0x03 || 0x00000578 || | |||
|- | |||
| || || || || 0x10 || 0x00000000 || | |||
|- | |||
| || || || || 0x11 || 0x00000000 || | |||
|- | |||
| SLPS_019.21 || 0xF7E572C0 || || 1 || 0x12 || 0x00000020 || | |||
|- | |||
| SLPS_019.22 || 0x7D1D72B0 || || 1 || 0x12 || 0x00000020 || | |||
|- | |||
| SLPS_011.79 || 0x3E7B73C7 || || 1 || 0x13 || 0x00000001 || | |||
|- | |||
| SLPS_024.79 || 0x22E86BA3 || || 1 || 0x20 || 0x00000001 || | |||
|- | |||
| SLPS_000.25 || 0x7E2873EB || || 2 || 0x16 || 0x00000004 || | |||
|- | |||
| || || || || 0x1B || 0x000000C8 || | |||
|- | |||
| SLPS_017.16 || 0xFFE3710D || || 1 || 0x01 || 0x00000002 || | |||
|- | |||
| SLPS_017.37 || 0x8EAE73B0 || || 1 || 0x18 || 0xFFFFF254 || | |||
|- | |||
| SLPS_027.43 || 0x5B556E33 || || 1 || 0x1A || 0xFFFFFFFF || | |||
|- | |||
| SLPS_010.45 || 0x4AAC6CEE || || 1 || 0x12 || 0x00000020 || | |||
|- | |||
| SLPS_010.46 || 0x845F6C71 || || 1 || 0x12 || 0x00000020 || | |||
|- | |||
| SLPS_010.47 || 0x09FF6C64 || || 1 || 0x12 || 0x00000020 || | |||
|- | |||
| SLPS_011.57 || 0xDEE270E9 || || 1 || 0x04 || 0x000000C8 || | |||
|- | |||
| SLPS_013.88 || 0x7E896DDD || || 1 || 0x04 || 0x000000C8 || | |||
|- | |||
| SLPS_004.16 || 0xFE9A6E57 || || 1 || 0x01 || 0x00000001 || | |||
|- | |||
| SLPS_021.22 || 0x5E5E6D7C || || 1 || 0x04 || 0x000000C8 || | |||
|- | |||
| SLPS_001.96 || 0x2BF5715A || || 1 || 0x13 || 0x00000001 || | |||
|- | |||
| SLPS_001.04 || 0x29906E05 || || 4 || 0x03 || 0x000000C8 || | |||
|- | |||
| || || || || 0x04 || 0xFFFFFF38 || | |||
|- | |||
| || || || || 0x08 || 0x000000C8 || | |||
|- | |||
| || || || || 0x13 || 0x00000001 || | |||
|- | |||
| SLPS_001.44 || 0x4B637409 || || 1 || 0x12 || 0x00000020 || | |||
|- | |||
| SLPS_001.45 || 0x592E74B2 || || 1 || 0x12 || 0x00000020 || | |||
|- | |||
| SLPS_027.20 || 0xBD7E6B7A || || 2 || 0x13 || 0x00000001 || | |||
|- | |||
| || || || || 0x20 || 0x00000020 || | |||
|- | |||
| SLPS_034.20 || 0x0E957167 || || 2 || 0x13 || 0x00000001 || | |||
|- | |||
| || || || || 0x20 || 0x00000020 || | |||
|- | |||
| SLPS_010.35 || 0x57496D99 || || 1 || 0x20 || 0x00000020 || | |||
|- | |||
| SLPS_023.50 || 0xC8496EB1 || || 2 || 0x04 || 0x00000064 || | |||
|- | |||
| || || || || 0x13 || 0x00000001 || | |||
|- | |||
| SLPM_866.25 || 0xE9767148 || || 2 || 0x04 || 0x000000C8 || | |||
|- | |||
| || || || || 0x06 || 0xFFFFFFF6 || | |||
|- | |||
| SLPS_030.04 || 0x9C706D06 || || 1 || 0x06 || 0xFFFFFFEC || | |||
|- | |||
| SLPS_012.67 || 0xC58A6E17 || || 3 || 0x03 || 0x000001F4 || | |||
|- | |||
| || || || || 0x21 || 0x00000640 || | |||
|- | |||
| || || || || 0x12 || 0x00000800 || | |||
|- | |||
| SLPS_013.82 || 0xC6DD6E08 || || 3 || 0x13 || 0x00000001 || | |||
|- | |||
| || || || || 0x12 || 0x00000804 || | |||
|- | |||
| || || || || 0x3B || 0x00000001 || | |||
|- | |||
| SLPS_031.51 || 0xB9FF72E2 || || 1 || 0x13 || 0x00000001 || | |||
|- | |||
| SLPS_016.37 || 0xFB3A7013 || || 1 || 0x21 || 0x000002BC || | |||
|- | |||
| SLPS_027.28 || 0x76827129 || || 1 || 0x04 || 0x00000014 || | |||
|- | |||
| SLPS_000.07 || 0xAA0A6EF2 || || 1 || 0x37 || 0x00000002 || | |||
|- | |||
| SLPS_016.11 || 0x68ED73D3 || || 1 || 0x12 || 0x00000400 || | |||
|- | |||
| SLPS_016.12 || 0x0B277320 || || 1 || 0x12 || 0x00000400 || | |||
|- | |||
| SLPS_016.13 || 0x0D8D7363 || || 1 || 0x12 || 0x00000400 || | |||
|- | |||
| SLPS_016.14 || 0xE2BB72D8 || || 1 || 0x12 || 0x00000400 || | |||
|- | |||
| SLPS_017.38 || 0x6CC36CDF || || 3 || 0x27 || 0x00000004 || | |||
|- | |||
| || || || || 0x28 || 0xFFFFFFFF || | |||
|- | |||
| || || || || 0x29 || 0xFFFFFFFC || | |||
|- | |||
| SLPS_026.36 || 0x56B274EF || || 1 || 0x03 || 0x000002BC || | |||
|- | |||
| SLPS_031.48 || 0x26A076E0 || || 1 || 0x03 || 0x000001F4 || | |||
|- | |||
| SLPS_012.40 || 0x943B71CC || || 11 || 0x14 || 0x00000000 || | |||
|- | |||
| || || || || 0x16 || 0x00000004 || | |||
|- | |||
| || || || || 0x1B || 0x000000C8 || | |||
|- | |||
| || || || || 0x21 || 0x000000C8 || | |||
|- | |||
| || || || || 0x22 || 0x000000C8 || | |||
|- | |||
| || || || || 0x2C || 0xFFFFFFF8 || | |||
|- | |||
| || || || || 0x2D || 0xFFFFFFF8 || | |||
|- | |||
| || || || || 0x36 || 0x00000001 || | |||
|- | |||
| || || || || 0x36 || 0x00000002 || | |||
|- | |||
| || || || || 0x36 || 0x00000004 || | |||
|- | |||
| || || || || 0x37 || 0x00000004 || | |||
|- | |||
| SLPS_012.41 || 0x1A02721E || || 11 || 0x14 || 0x00000000 || | |||
|- | |||
| || || || || 0x16 || 0x00000004 || | |||
|- | |||
| || || || || 0x1B || 0x000000C8 || | |||
|- | |||
| || || || || 0x21 || 0x000000C8 || | |||
|- | |||
| || || || || 0x22 || 0x000000C8 || | |||
|- | |||
| || || || || 0x2C || 0xFFFFFFF8 || | |||
|- | |||
| || || || || 0x2D || 0xFFFFFFF8 || | |||
|- | |||
| || || || || 0x36 || 0x00000001 || | |||
|- | |||
| || || || || 0x36 || 0x00000002 || | |||
|- | |||
| || || || || 0x36 || 0x00000004 || | |||
|- | |||
| || || || || 0x37 || 0x00000004 || | |||
|- | |||
| SLPM_861.92 || 0xB0C26E33 || || 2 || 0x03 || 0x000002BC || | |||
|- | |||
| || || || || 0x20 || 0x00000004 || | |||
|- | |||
| SLPS_002.46 || 0xB1297055 || || 4 || 0x13 || 0x00000001 || | |||
|- | |||
| || || || || 0x14 || 0x00000008 || | |||
|- | |||
| || || || || 0x18 || 0x000003E8 || | |||
|- | |||
| || || || || 0x19 || 0x00000008 || | |||
|- | |||
| SLPS_000.26 || 0x6E6D745E || || 1 || 0x05 || 0xFFFFFF38 || | |||
|- | |||
| SLPS_000.05 || 0x453C74BA || || 2 || 0x22 || 0x000001F4 || | |||
|- | |||
| || || || || 0x37 || 0x00000004 || | |||
|- | |||
| SLPS_019.41 || 0x797A6FEC || || 1 || 0x27 || 0x00000007 || | |||
|- | |||
| SLPS_000.24 || 0x2720703B || || 1 || 0x20 || 0x00000001 || | |||
|- | |||
| SLPS_017.03 || 0x213C72DB || || 2 || 0x15 || 0x00000000 || | |||
|- | |||
| || || || || 0x20 || 0x00000001 || | |||
|- | |||
| SLPS_011.80 || 0x03B972F8 || || 2 || 0x04 || 0x000000C8 || | |||
|- | |||
| || || || || 0x12 || 0x00000020 || | |||
|- | |||
| SLPS_011.81 || 0xEEC774EA || || 2 || 0x04 || 0x000000C8 || | |||
|- | |||
| || || || || 0x12 || 0x00000020 || | |||
|- | |||
| SLPS_011.82 || 0x28ED757B || || 2 || 0x04 || 0x000000C8 || | |||
|- | |||
| || || || || 0x12 || 0x00000020 || | |||
|- | |||
| SLPS_011.83 || 0xC6F675CF || || 2 || 0x04 || 0x000000C8 || | |||
|- | |||
| || || || || 0x12 || 0x00000020 || | |||
|- | |||
| SLPS_011.84 || 0xA846760C || || 2 || 0x04 || 0x000000C8 || | |||
|- | |||
| || || || || 0x12 || 0x00000020 || | |||
|- | |||
| SCPS_100.11 || 0xC9216DED || || 1 || 0x22 || 0x00000708 || | |||
|- | |||
| SLPS_007.31 || 0x28FC700F || || 4 || 0x1B || 0x000000C8 || | |||
|- | |||
| || || || || 0x36 || 0x00000001 || | |||
|- | |||
| || || || || 0x36 || 0x00000002 || | |||
|- | |||
| || || || || 0x36 || 0x00000004 || | |||
|- | |||
| SLPS_034.46 || 0x26136FD7 || || 7 || 0x04 || 0x00000046 || | |||
|- | |||
| || || || || 0x14 || 0x00000008 || | |||
|- | |||
| || || || || 0x15 || 0x00000008 || | |||
|- | |||
| || || || || 0x36 || 0x00000001 || | |||
|- | |||
| || || || || 0x36 || 0x00000002 || | |||
|- | |||
| || || || || 0x36 || 0x00000004 || | |||
|- | |||
| || || || || 0x37 || 0x00000004 || | |||
|- | |||
| SLPS_006.57 || 0x759B71B6 || || 3 || 0x14 || 0x00000008 || | |||
|- | |||
| || || || || 0x15 || 0x00000008 || | |||
|- | |||
| || || || || 0x22 || 0x00000320 || | |||
|- | |||
| SLPS_008.39 || 0x33BC7674 || || 1 || 0x04 || 0x00000064 || | |||
|- | |||
| SLPS_002.90 || 0x7B8A6EF8 || || 6 || 0x03 || 0x000001F4 || | |||
|- | |||
| || || || || 0x08 || 0x000001F4 || | |||
|- | |||
| || || || || 0x13 || 0x00000001 || | |||
|- | |||
| || || || || 0x14 || 0x00000010 || | |||
|- | |||
| || || || || 0x21 || 0x00000898 || | |||
|- | |||
| || || || || 0x22 || 0x000007D0 || | |||
|- | |||
| SLPS_015.30 || 0x52657015 || || 1 || 0x12 || 0x00000002 || | |||
|- | |||
| SLPS_017.70 || 0x944074A8 || || 1 || 0x38 || 0x00000002 || | |||
|- | |||
| SLPS_000.01 || 0xA61B73A2 || || 1 || 0x38 || 0x00000002 || | |||
|- | |||
| SLPS_006.00 || 0x69F771EA || || 12 || 0x12 || 0x00000002 || | |||
|- | |||
| || || || || 0x14 || 0x00000000 || | |||
|- | |||
| || || || || 0x15 || 0x00000002 || | |||
|- | |||
| || || || || 0x19 || 0x00000000 || | |||
|- | |||
| || || || || 0x1B || 0x00000000 || | |||
|- | |||
| || || || || 0x20 || 0x00000010 || | |||
|- | |||
| || || || || 0x20 || 0x00000020 || | |||
|- | |||
| || || || || 0x21 || 0x00000000 || | |||
|- | |||
| || || || || 0x22 || 0x00000000 || | |||
|- | |||
| || || || || 0x23 || 0x00000000 || | |||
|- | |||
| || || || || 0x2C || 0xFFFFFFE0 || | |||
|- | |||
| || || || || 0x2D || 0xFFFFFFE0 || | |||
|- | |||
| SLPS_030.50 || 0xF5E87225 || || 1 || 0x03 || 0x000001F4 || | |||
|- | |||
| SLPS_003.60 || 0xCA1273F7 || || 1 || 0x28 || 0xFFFFFFFA || | |||
|- | |||
| SLPM_869.59 || 0x5DC771BA || || 1 || 0x04 || 0x00000007 || | |||
|- | |||
| SLPS_007.65 || 0xEC497442 || || 5 || 0x14 || 0x00000010 || | |||
|- | |||
| || || || || 0x19 || 0x00000020 || | |||
|- | |||
| || || || || 0x36 || 0x00000001 || | |||
|- | |||
| || || || || 0x36 || 0x00000002 || | |||
|- | |||
| || || || || 0x36 || 0x00000004 || | |||
|- | |||
| SIPS_600.20 || 0x50ED6E47 || || 1 || 0x1C || 0x00000002 || | |||
|- | |||
| SLPM_861.68 || 0xBA886BF4 || || 7 || 0x04 || 0x00000004 || | |||
|- | |||
| || || || || 0x06 || 0x00000001 || | |||
|- | |||
| || || || || 0x07 || 0x00000001 || | |||
|- | |||
| || || || || 0x14 || 0x0000000C || | |||
|- | |||
| || || || || 0x19 || 0x0000000C || | |||
|- | |||
| || || || || 0x1C || 0x00000002 || | |||
|- | |||
| || || || || 0x27 || 0x00000007 || | |||
|- | |||
| SLPM_861.68 || 0x3E596C24 || || 7 || 0x04 || 0x00000004 || | |||
|- | |||
| || || || || 0x06 || 0x00000001 || | |||
|- | |||
| || || || || 0x07 || 0x00000001 || | |||
|- | |||
| || || || || 0x14 || 0x0000000C || | |||
|- | |||
| || || || || 0x19 || 0x0000000C || | |||
|- | |||
| || || || || 0x1C || 0x00000002 || | |||
|- | |||
| || || || || 0x27 || 0x00000007 || | |||
|- | |||
| SLPS_003.90 || 0x45627423 || || 1 || 0x12 || 0x00000020 || | |||
|- | |||
| SLPS_007.05 || 0xF93772F6 || || 1 || 0x38 || 0x00000002 || | |||
|- | |||
| SLPS_021.20 || 0xBC5F7186 || || 11 || 0x14 || 0x00000000 || | |||
|- | |||
| || || || || 0x16 || 0x00000004 || | |||
|- | |||
| || || || || 0x1B || 0x000000C8 || | |||
|- | |||
| || || || || 0x21 || 0x000000C8 || | |||
|- | |||
| || || || || 0x22 || 0x000000C8 || | |||
|- | |||
| || || || || 0x2C || 0xFFFFFFF8 || | |||
|- | |||
| || || || || 0x2D || 0xFFFFFFF8 || | |||
|- | |||
| || || || || 0x36 || 0x00000001 || | |||
|- | |||
| || || || || 0x36 || 0x00000002 || | |||
|- | |||
| || || || || 0x36 || 0x00000004 || | |||
|- | |||
| || || || || 0x37 || 0x00000004 || | |||
|- | |||
| SLPS_028.32 || 0x258C6C70 || || 3 || 0x0A || 0x0000001E || | |||
|- | |||
| || || || || 0x12 || 0x00002000 || | |||
|- | |||
| || || || || 0x09 || 0x0000000A || | |||
|- | |||
| SLPS_008.12 || 0x6CC6704F || || 1 || 0x16 || 0x00000003 || | |||
|- | |||
| SLPM_864.94 || 0x6C706D5C || || 1 || 0x13 || 0x00000001 || | |||
|- | |||
| SLPS_004.20 || 0x31F46F73 || || 1 || 0x38 || 0x00000002 || | |||
|- | |||
| SLPS_019.06 || 0x32866ECF || || 4 || 0x12 || 0x00000020 || | |||
|- | |||
| || || || || 0x12 || 0x00000100 || | |||
|- | |||
| || || || || 0x12 || 0x00004000 || | |||
|- | |||
| || || || || 0x12 || 0x00008000 || | |||
|- | |||
| SLPS_034.33 || 0xAA127312 || || 2 || 0x14 || 0x00000010 || | |||
|- | |||
| || || || || 0x19 || 0x00000018 || | |||
|- | |||
| SLPS_006.11 || 0x7B9776D2 || || 1 || 0x27 || 0x00000008 || | |||
|- | |||
| SLPS_002.69 || 0x6A70722C || || 2 || 0x14 || 0x00000018 || | |||
|- | |||
| || || || || 0x19 || 0x00000020 || | |||
|- | |||
| SLPS_001.17 || 0x27577155 || || 3 || 0x14 || 0x0000000C || | |||
|- | |||
| || || || || 0x19 || 0x0000000C || | |||
|- | |||
| || || || || 0x34 || 0x00000003 || | |||
|- | |||
| SLPS_001.18 || 0x01707004 || || 3 || 0x14 || 0x0000000C || | |||
|- | |||
| || || || || 0x19 || 0x0000000C || | |||
|- | |||
| || || || || 0x34 || 0x00000003 || | |||
|- | |||
| SLPS_001.19 || 0x5D717205 || || 3 || 0x14 || 0x0000000C || | |||
|- | |||
| || || || || 0x19 || 0x0000000C || | |||
|- | |||
| || || || || 0x34 || 0x00000003 || | |||
|- | |||
| SLPM_870.50 || 0xC2BE6D65 || || 1 || 0x05 || 0xFFFFFFE2 || | |||
|- | |||
| SLPS_007.73 || 0x5C7C6E85 || || 1 || 0x21 || 0x00000000 || | |||
|- | |||
| SLPS_007.89 || 0x2EE27057 || || 1 || 0x21 || 0x00000000 || | |||
|- | |||
| SLPS_026.53 || 0x3947703C || || 4 || 0x12 || 0x00000020 || | |||
|- | |||
| || || || || 0x12 || 0x00000100 || | |||
|- | |||
| || || || || 0x12 || 0x00004000 || | |||
|- | |||
| || || || || 0x12 || 0x00008000 || | |||
|- | |||
| SLPS015.03 || 0x5E046C54 || || 3 || 0x12 || 0x00000020 || Game ID is missing underscore in emu, DON'T EDIT | |||
|- | |||
| || || || || 0x12 || 0x00000100 || | |||
|- | |||
| || || || || 0x12 || 0x00004000 || | |||
|- | |||
| SLPS_017.49 || 0xB29D7153 || || 3 || 0x12 || 0x00000020 || | |||
|- | |||
| || || || || 0x12 || 0x00000100 || | |||
|- | |||
| || || || || 0x12 || 0x00004000 || | |||
|- | |||
| slps_026.37 || 0x01756F09 || || 3 || 0x12 || 0x00000020 || Game ID use lowercase in emu, DON'T EDIT | |||
|- | |||
| || || || || 0x12 || 0x00000100 || | |||
|- | |||
| || || || || 0x12 || 0x00004000 || | |||
|- | |||
| SLPS_016.76 || 0x1E216F81 || || 1 || 0x03 || 0x000005DC || | |||
|- | |||
| SLPS_017.01 || 0x5BAD767C || || 1 || 0x12 || 0x00000400 || | |||
|- | |||
| SCPS_100.43 || 0xAD1A6DC9 || || 1 || 0x14 || 0x00000010 || | |||
|- | |||
| SLPM_866.38 || 0xD0066D6C || || 1 || 0x16 || 0x00000001 || | |||
|- | |||
| SLPM_866.39 || 0x7FCE6B6E || || 1 || 0x16 || 0x00000001 || | |||
|- | |||
| SLPS_035.62 || 0xF5E67262 || || 1 || 0x13 || 0x00000001 || | |||
|- | |||
| SLPS_024.12 || 0xAB3B70E7 || || 1 || 0x15 || 0x00000038 || | |||
|- | |||
| SLPS_031.77 || 0x905E744B || || 1 || 0x27 || 0x00000002 || | |||
|- | |||
| SLPS_021.43 || 0x287A7428 || || 1 || 0x13 || 0x00000001 || | |||
|- | |||
| SLPS_023.32 || 0xBFAF6D60 || || 1 || 0x04 || 0x00000007 || | |||
|- | |||
| SLPS_004.45 || 0x1C977170 || || 1 || 0x13 || 0x00000001 || | |||
|- | |||
| SLPS_032.92 || 0x7D6871E0 || || 1 || 0x12 || 0x00000020 || | |||
|- | |||
| SLPS_032.93 || 0xF58A7448 || || 1 || 0x12 || 0x00000020 || | |||
|- | |||
| SLPS_013.15 || 0x9FA56D27 || || 1 || 0x27 || 0x00000001 || | |||
|- | |||
| SLPS_026.48 || 0x14846F93 || || 2 || 0x14 || 0x0000000A || | |||
|- | |||
| || || || || 0x19 || 0x0000001C || | |||
|- | |||
| SLPS_012.05 || 0x2F1C6C7A || || 1 || 0x29 || 0xFFFFFFFE || | |||
|- | |||
| SLPS_011.47 || 0xAB38741A || || 2 || 0x28 || 0x00000002 || | |||
|- | |||
| || || || || 0x30 || 0x00000001 || | |||
|- | |||
| SLPS_011.48 || 0xEAF271CA || || 2 || 0x28 || 0x00000002 || | |||
|- | |||
| || || || || 0x30 || 0x00000001 || | |||
|- | |||
| SLPM_869.34 || 0xB6386F2A || || 1 || 0x29 || 0xFFFFFFFE || | |||
|- | |||
| SLPM_869.35 || 0x70D96F85 || || 1 || 0x29 || 0xFFFFFFFE || | |||
|- | |||
| SLPM_869.36 || 0x16B87020 || || 1 || 0x29 || 0xFFFFFFFE || | |||
|- | |||
| SLPM_871.08 || 0xE24D6E06 || || 1 || 0x12 || 0x00000020 || | |||
|- | |||
| SLPM_871.09 || 0x35356EB5 || || 1 || 0x12 || 0x00000020 || | |||
|- | |||
| SCES_016.95 || 0x1CD06FBD || || 1 || 0x17 || 0x000089EA || | |||
|- | |||
| SLES_019.07 || 0x217F73B9 || || 1 || 0x17 || 0x0000C0EE || | |||
|- | |||
| SLES_013.01 || 0xD3E2755E || || 1 || 0x17 || 0x0000B722 || | |||
|- | |||
| SLES_005.56 || 0xB2376D4B || || 1 || 0x13 || 0x00000001 || | |||
|- | |||
| SCES_000.08 || 0x20037398 || || 1 || 0x38 || 0x00000002 || | |||
|- | |||
| SLES_007.55 || 0xAAD37657 || || 1 || 0x16 || 0x00000004 || | |||
|- | |||
| SLES_013.43 || 0xC47D73B4 || || 1 || 0x38 || 0x00000002 || | |||
|- | |||
| SLES_113.43 || 0xE4C373B5 || || 1 || 0x38 || 0x00000002 || | |||
|- | |||
| SCES_000.61 || 0x7D876DC2 || || 1 || 0x1C || 0x00000002 || | |||
|- | |||
| sles_027.90 || 0x5C1F6B0B || || 1 || 0x13 || 0x00000001 || Game ID use lowercase in emu, DON'T EDIT | |||
|- | |||
| SCES_022.85 || 0xE8466F95 || || 3 || 0x0F || 0x00000032 || | |||
|- | |||
| || || || || 0x10 || 0x00000032 || | |||
|- | |||
| || || || || 0x11 || 0x00000019 || | |||
|- | |||
| SCES_122.85 || 0x85FE6E5C || || 3 || 0x0F || 0x00000032 || | |||
|- | |||
| || || || || 0x10 || 0x00000032 || | |||
|- | |||
| || || || || 0x11 || 0x00000019 || | |||
|- | |||
| SLES_017.60 || 0xE8576C52 || || 1 || 0x13 || 0x00000001 || | |||
|- | |||
| SCES_039.37 || 0xBB1E6E47 || || 1 || 0x13 || 0x00000001 || | |||
|- | |||
| SLES_031.78 || 0x43D56CC9 || || 1 || 0x13 || 0x00000001 || | |||
|- | |||
| SLES_029.43 || 0xC8DB752E || || 1 || 0x04 || 0x000000C8 || | |||
|- | |||
| SLES_002.09 || 0x7A327397 || || 1 || 0x16 || 0x00000006 || | |||
|- | |||
| SCES_028.73 || 0x5AAD6CAD || || 4 || 0x12 || 0x00000120 || | |||
|- | |||
| || || || || 0x12 || 0x00004000 || | |||
|- | |||
| || || || || 0x20 || 0x00000040 || | |||
|- | |||
| || || || || 0x3C || 0xFFFFFF3D || | |||
|- | |||
| SCUS_945.08 || 0x18D56D2A || || 1 || 0x1C || 0x00000002 || | |||
|- | |||
| SCUS_949.00 || 0x124F71AD || || 1 || 0x1C || 0x00000002 || | |||
|- | |||
| SCUS_943.09 || 0xA9C66FE4 || || 1 || 0x1C || 0x00000002 || | |||
|- | |||
| SCUS_941.03 || 0xDF4C6DBB || || 1 || 0x1C || 0x00000002 || | |||
|- | |||
| SLUS_002.13 || 0x0CFF7372 || || 1 || 0x1C || 0x00000002 || | |||
|- | |||
| SCUS_943.02 || 0x07E67394 || || 1 || 0x38 || 0x00000002 || | |||
|- | |||
| SCUS_944.76 || 0xF7656D79 || || 1 || 0x1C || 0x00000002 || | |||
|- | |||
| SCUS_943.01 || 0x24F17103 || || 1 || 0x1C || 0x00000002 || | |||
|- | |||
| SCUS_943.56 || 0x776872C1 || || 1 || 0x1C || 0x00000002 || | |||
|- | |||
| SCUS_944.26 || 0x24F37297 || || 4 || 0x14 || 0x00000010 || | |||
|- | |||
| || || || || 0x36 || 0x00000001 || | |||
|- | |||
| || || || || 0x36 || 0x00000002 || | |||
|- | |||
| || || || || 0x36 || 0x00000004 || | |||
|- | |||
| SCUS_944.84 || 0x6BD87066 || || 2 || 0x0E || 0x00001388 || | |||
|- | |||
| || || || || 0x1C || 0x00000002 || | |||
|- | |||
| SCUS_944.98 || 0x6F0C7218 || || 2 || 0x0E || 0x00001388 || | |||
|- | |||
| || || || || 0x1C || 0x00000002 || | |||
|- | |||
| SCUS_941.08 || 0x4F066FFA || || 1 || 0x1C || 0x00000002 || | |||
|- | |||
| SCUS_941.63 || 0x1D04759B || || 1 || 0x1C || 0x00000002 || | |||
|- | |||
| SCUS_941.64 || 0x062C7665 || || 1 || 0x1C || 0x00000002 || | |||
|- | |||
| SCUS_941.65 || 0x981F74C6 || || 1 || 0x1C || 0x00000002 || | |||
|- | |||
| SCUS_942.21 || 0x5D9973B1 || || 1 || 0x1C || 0x00000002 || | |||
|- | |||
| SCUS_943.55 || 0x60476E89 || || 1 || 0x1C || 0x00000002 || | |||
|- | |||
| SCUS_944.51 || 0x916A6F8A || || 3 || 0x0F || 0x00000032 || | |||
|- | |||
| || || || || 0x10 || 0x00000032 || | |||
|- | |||
| || || || || 0x11 || 0x00000019 || | |||
|- | |||
| SCUS_944.92 || 0x254F6E71 || || 3 || 0x0F || 0x00000032 || | |||
|- | |||
| || || || || 0x10 || 0x00000032 || | |||
|- | |||
| || || || || 0x11 || 0x00000019 || | |||
|- | |||
| SLUS_009.58 || 0x70356CAF || || 3 || 0x14 || 0x0000000C || | |||
|- | |||
| || || || || 0x19 || 0x0000000C || | |||
|- | |||
| || || || || 0x1C || 0x00000002 || | |||
|- | |||
| SLUS_003.79 || 0xA9A06E01 || || 1 || 0x1C || 0x00000002 || | |||
|- | |||
| SLUS_004.10 || 0x96316D15 || || 1 || 0x1C || 0x00000002 || | |||
|- | |||
| SLUS_004.31 || 0xF1636D84 || || 2 || 0x13 || 0x00000001 || | |||
|- | |||
| || || || || 0x1C || 0x00000002 || | |||
|- | |||
| SLUS_004.85 || 0x45C86D54 || || 2 || 0x13 || 0x00000001 || | |||
|- | |||
| || || || || 0x1C || 0x00000002 || | |||
|- | |||
| SLUS_006.65 || 0x30946C87 || || 2 || 0x13 || 0x00000001 || | |||
|- | |||
| || || || || 0x1C || 0x00000002 || | |||
|- | |||
| SLUS_006.67 || 0xD3DC6C57 || || 2 || 0x13 || 0x00000001 || | |||
|- | |||
| || || || || 0x1C || 0x00000002 || | |||
|- | |||
| SLUS_010.41 || 0xA69371A0 || || 4 || 0x2C || 0xFFFFFFF0 || | |||
|- | |||
| || || || || 0x22 || 0x000001F4 || | |||
|- | |||
| || || || || 0x21 || 0x000001F4 || | |||
|- | |||
| || || || || 0x33 || 0x00000514 || | |||
|- | |||
| SLUS_010.80 || 0x868E72C8 || || 4 || 0x2C || 0xFFFFFFF0 || | |||
|- | |||
| || || || || 0x22 || 0x000001F4 || | |||
|- | |||
| || || || || 0x21 || 0x000001F4 || | |||
|- | |||
| || || || || 0x33 || 0x00000514 || | |||
|- | |||
| SLUS_008.79 || 0x25E96D12 || || 1 || 0x20 || 0x00000002 || | |||
|- | |||
| SLUS_002.38 || 0x4C1C7189 || || 1 || 0x1C || 0x00000002 || | |||
|- | |||
| SLUS_001.13 || 0xF2BD6EE2 || || 1 || 0x1C || 0x00000002 || | |||
|- | |||
| SLUS_002.36 || 0xC1117292 || || 2 || 0x16 || 0x00000007 || | |||
|- | |||
| || || || || 0x1C || 0x00000002 || | |||
|- | |||
| SLUS_005.18 || 0xD212739F || || 1 || 0x1C || 0x00000002 || | |||
|- | |||
| SLUS_004.40 || 0xE28F729A || || 1 || 0x1C || 0x00000002 || | |||
|- | |||
| SLUS_000.61 || 0xE1B4752C || || 1 || 0x1C || 0x00000002 || | |||
|- | |||
| SLUS_000.67 || 0xDC237170 || || 1 || 0x21 || 0x00000708 || | |||
|- | |||
| SLUS_000.42 || 0x93C071A2 || || 3 || 0x03 || 0x0000044C || | |||
|- | |||
| || || || || 0x13 || 0x00000001 || | |||
|- | |||
| || || || || 0x1C || 0x00000002 || | |||
|- | |||
| SLUS_000.27 || 0x3B037462 || || 1 || 0x1C || 0x00000002 || | |||
|- | |||
| SLUS_001.52 || 0x59207131 || || 1 || 0x1C || 0x00000002 || | |||
|- | |||
| SLUS_002.32 || 0x055E74C4 || || 1 || 0x1C || 0x00000002 || | |||
|- | |||
| SLUS_004.37 || 0xCB24738B || || 1 || 0x1C || 0x00000002 || | |||
|- | |||
| SCUS_943.04 || 0xC0546D88 || || 1 || 0x1C || 0x00000002 || | |||
|- | |||
| SLUS_007.07 || 0x2C9D6E1E || || 1 || 0x03 || 0x0000044C || | |||
|- | |||
| SCUS_944.24 || 0x6C8C7285 || || 1 || 0x20 || 0x00000008 || | |||
|- | |||
| SLUS_000.19 || 0x32FE7217 || || 5 || 0x03 || 0x00000320 || | |||
|- | |||
| || || || || 0x04 || 0x000000C8 || | |||
|- | |||
| || || || || 0x12 || 0x00000008 || | |||
|- | |||
| || || || || 0x18 || 0x000000C8 || | |||
|- | |||
| || || || || 0x30 || 0x00000001 || | |||
|- | |||
| SLUS_001.34 || 0xF84A722C || || 4 || 0x03 || 0x00000320 || | |||
|- | |||
| || || || || 0x04 || 0x000000C8 || | |||
|- | |||
| || || || || 0x12 || 0x00000008 || | |||
|- | |||
| || || || || 0x18 || 0x000000C8 || | |||
|- | |||
| SLUS_001.35 || 0x993A71DF || || 4 || 0x03 || 0x00000320 || | |||
|- | |||
| || || || || 0x04 || 0x000000C8 || | |||
|- | |||
| || || || || 0x12 || 0x00000008 || | |||
|- | |||
| || || || || 0x18 || 0x000000C8 || | |||
|- | |||
| SLUS_001.36 || 0xF6F4718E || || 4 || 0x03 || 0x00000320 || | |||
|- | |||
| || || || || 0x04 || 0x000000C8 || | |||
|- | |||
| || || || || 0x12 || 0x00000008 || | |||
|- | |||
| || || || || 0x18 || 0x000000C8 || | |||
|- | |||
| SLUS_002.70 || 0xE562706A || || 4 || 0x03 || 0x00000320 || | |||
|- | |||
| || || || || 0x04 || 0x000000C8 || | |||
|- | |||
| || || || || 0x12 || 0x00000008 || | |||
|- | |||
| || || || || 0x36 || 0x00000007 || | |||
|- | |||
| SLUS_002.71 || 0x8C5B703D || || 4 || 0x03 || 0x00000320 || | |||
|- | |||
| || || || || 0x04 || 0x000000C8 || | |||
|- | |||
| || || || || 0x12 || 0x00000008 || | |||
|- | |||
| || || || || 0x36 || 0x00000007 || | |||
|- | |||
| SLUS_002.72 || 0xF4A37003 || || 4 || 0x03 || 0x00000320 || | |||
|- | |||
| || || || || 0x04 || 0x000000C8 || | |||
|- | |||
| || || || || 0x12 || 0x00000008 || | |||
|- | |||
| || || || || 0x36 || 0x00000007 || | |||
|- | |||
| SLUS_002.73 || 0x05877031 || || 4 || 0x03 || 0x00000320 || | |||
|- | |||
| || || || || 0x04 || 0x000000C8 || | |||
|- | |||
| || || || || 0x12 || 0x00000008 || | |||
|- | |||
| || || || || 0x36 || 0x00000007 || | |||
|- | |||
| SLUS_000.76 || 0x7E91728C || || 1 || 0x14 || 0x00000006 || | |||
|- | |||
| SLUS_000.28 || 0x64D8758D || || 1 || 0x14 || 0x00000006 || | |||
|- | |||
| SLUS_001.37 || 0xCAE576E7 || || 1 || 0x14 || 0x00000006 || | |||
|- | |||
| SCUS_944.48 || 0x68537091 || || 1 || 0x38 || 0x00000002 || | |||
|- | |||
| SLUS_012.53 || 0x4A926D54 || || 1 || 0x12 || 0x00000020 || | |||
|- | |||
| SLUS_012.54 || 0x5C3D6FD0 || || 1 || 0x12 || 0x00000020 || | |||
|- | |||
| SLUS_004.33 || 0x34FA737C || || 1 || 0x01 || 0x00000001 || | |||
|- | |||
| SCUS_944.54 || 0x49486D8E || || 2 || 0x04 || 0x00000064 || | |||
|- | |||
| || || || || 0x13 || 0x00000001 || | |||
|- | |||
| SCUS_942.00 || 0x0E9575ED || || 1 || 0x1B || 0x000002BC || | |||
|- | |||
| SLUS_013.95 || 0xCA8D7292 || || 1 || 0x04 || 0x00000007 || | |||
|- | |||
| SLUS_011.61 || 0xD2647347 || || 1 || 0x05 || 0xFFFFFF9C || | |||
|- | |||
| SLUS_002.08 || 0x99127457 || || 1 || 0x28 || 0xFFFFFFFA || | |||
|- | |||
| Slus_005.98 || 0x90F1753A || || 1 || 0x1F || 0x00000001 || Game ID use mix of lowercase and uppercase in emu, DON'T EDIT | |||
|- | |||
| SLUS_009.80 || 0xEBB37080 || || 1 || 0x30 || 0x00000001 || | |||
|- | |||
| SLUS_008.92 || 0x10D26D0B || || 1 || 0x31 || 0x00000002 || | |||
|- | |||
| SLUS_009.08 || 0xC83E6DC6 || || 1 || 0x31 || 0x00000002 || | |||
|- | |||
| SLUS_009.09 || 0xC88B6CC3 || || 1 || 0x31 || 0x00000002 || | |||
|- | |||
| SLUS_009.10 || 0x25D66D0D || || 1 || 0x31 || 0x00000002 || | |||
|- | |||
| SLUS_014.70 || 0x55257373 || || 1 || 0x16 || 0x00000018 || | |||
|- | |||
| SCES_021.05 || 0x24066F28 || || 1 || 0x02 || 0x001727E4 || | |||
|- | |||
| SCES_003.11 || 0xD0317129 || || 1 || 0x02 || 0x0017298C || | |||
|- | |||
| SLES_027.54 || 0xCF2870BB || || 1 || 0x02 || 0x00172A8C || | |||
|- | |||
|} | |||
== Possible Cobra implementation issues == | |||
Every CFW which use cobra module potentially can be affected by nasty bug that is there probably even before 7.00.<br> | |||
So the deal is patch in cobra that allow skip region check, example based on ps1_emu. | |||
= | <pre>SprxPatch ps1_emu_patches[] = | ||
{ | |||
{ ps1_emu_get_region_offset, LI(R29, 0x82), &condition_true }, /* regions 0x80-0x82 bypass region check. */ | |||
{ 0 } | |||
}; | |||
</pre> | |||
While patch actually skip region check, is also skipping part of code where region of ps3 is stored for future usage. And probably set whole emulation to JPN<br> | |||
This can be important because function that cobra patch, probably is responsible for selecting region of ps1_rom. <br> | |||
There is a string in emulator JJJJAEJEAEJJEJJA which seems to be selector for bios/rom region based on target ID ([[Product_Code]]). | |||
<pre>J J J J A E J E A E J J E J J A | |||
0x80 0x81 0x82 0x83 0x84 0x85 0x86 0x87 0x88 0x89 0x8A 0x8B 0x8C 0x8D 0x8E 0x8F</pre> | |||
Hard patch to 0x82 potentially lead to known PAL games frame pacing issues, and to desynced audio, and maybe more. While i can't test that i'm 100% sure that better solution here will be read third character of Title ID from SYSTEM.CNF file of disc/iso, and then patching same place with<br> ps1_emu_get_region_offset, LI(R29, title_id_based_region), &condition_true . <br> | |||
Generally if title have E then patch to ANY EU target ID, similar for US, for titles where U or E isn't found just use default J target ID. | |||
Above is based on static elf analyse, so i can't tell 100% that is an issue, but it looks like it in emu code. | |||
* Is that patch being applied every time, even on the PAL region console? I have never noticed any issues and I was playing the PAL games mostly. The only thing I noticed is the slowed and pitched down licence screen when the PAL game is launched through the ps1_netemu. --[[User:Agrippa|Agrippa]] ([[User talk:Agrippa|talk]]) 17:40, 6 January 2022 (UTC) | |||
=== | == ps1_emu vs ps1_netemu emulation differences == | ||
In some cracktros (Spyro 3, Sydney 2000, NFS Porsche 2000) the GP0 command E4h (E4080200) draws the image on the wrong coordinates, causing the frozen image of the zoomed PS1 licence screen. According to this [https://psx-spx.consoledev.net/graphicsprocessingunitgpu/#gp0e4h-set-drawing-area-bottom-right-x2y2 info], that command does make use of the newer 2MB VRAM GPU coordinates. Restricting the drawing area to the lower coordinates does fix the image. It looks like a lot of emulators are affected by this, either the Sony ones (ps1_emu on PS3, PS1 on PS2 hardware emulator, POPS on PSP) or the homebrew pSX 1.13. The ps1_netemu is displaying the image correctly. Does it mean the ps1_netemu emulate a different, newer GPU or just increase the emulation accuracy in general (assuming these cracktros work fine even on the oldest PSX released EDIT: I have found reports they are picky even on the original PS1 hardware too.)? | |||
* Yes, this should fail also on old PS1 GPU. I can also confirm that PS1DRV (at least before deckard PS2 models) emulate old GPU model. | |||
As for PS3. ps1_emu, and ps1_newemu emulate old GPU, ps1_netemu emulate new GPU at least partially. Also small tip, all emulators have pair of 2 embed | |||
SPE ELFs. One is SPU emulator, second is GPU emulator. All of them have debug symbols. | |||
== | ps1_emu | ||
<pre> | |||
.text:000014D0 E4_cmd: | |||
.text:000014D0 il r56, 0x3FF | |||
.text:000014D4 hbrr loc_1504, loc_403C | |||
.text:000014D8 rotmi r54, r12, -10 # r12 = whole 32 bit command | |||
# r54 = is command shifted by 10 to skip | |||
# x-cord. So now first bits are y-cord. | |||
.text:000014DC lqr r51, xmmword_E520 | |||
.text:000014E0 and r55, r12, r56 # x-cord and with whole 10 bits. | |||
.text:000014E4 cwd r53, 0xF0+var_F0(sp) | |||
.text:000014E8 cwd r49, 0xF0+var_F0+8(sp) | |||
.text:000014EC ai r52, r55, 1 | |||
.text:000014F0 andi r50, r54, 0x1FF # y-cord and with 0x1FF, so only 9 bits. | |||
</pre> | |||
ps1_netemu | |||
<pre> | |||
.text:00003338 E4_cmd: | |||
.text:00003338 rotmi r18, r12, -10 # r12 = whole 32 bit command | |||
# r18 = is command shifted by 10 to skip | |||
# x-cord. So now first bits are y-cord. | |||
.text:0000333C hbrr loc_3384, loc_3328 | |||
.text:00003340 il r19, 0x3FF | |||
.text:00003344 lqr r39, xmmword_150D0 | |||
.text:00003348 il r8, 0x200 | |||
.text:0000334C lqr r33, xmmword_150E0 | |||
.text:00003350 and r44, r12, r19 # x-cord and with whole 10 bits. | |||
.text:00003354 cwd r42, arg_0+0xC(sp) | |||
.text:00003358 and r43, r18, r19 # y-cord and with 0x3FF, so whole 10 bits. | |||
</pre> | |||
---kozarovv. | |||
==Patches== | |||
====Disable Dithering==== | |||
Always set bit 9 in GP0 E1 command to 0. Patches apply to SPE PS1 GPU emulation program. Based on 4.86, but should be valid for all firmwares since 4.6x<br><br> | |||
For ps1_emu.elf | |||
==== | |||
<pre> | <pre> | ||
search for: 23 EC A4 04 23 E3 3B 85 33 7E 26 00 32 05 86 00 0F 3D C6 11 | |||
replace to: 23 EC A4 04 23 E3 3B 85 33 7E 26 00 32 05 86 00 40 80 00 11 | |||
</pre> | </pre> | ||
For ps1_netemu.elf | |||
<pre> | <pre> | ||
search for: 7C 38 41 94 20 7F F4 94 0F 3D C6 3C 12 7F F3 8A | |||
replace to: 7C 38 41 94 20 7F F4 94 40 80 00 3C 12 7F F3 8A | |||
</pre> | </pre> | ||
For ps1_newemu.elf | |||
<pre> | <pre> | ||
search for: 20 7F FD 4C 23 9D C5 85 32 05 B2 80 12 05 B2 0B 0F 3D C6 58 | |||
replace to: 20 7F FD 4C 23 9D C5 85 32 05 B2 80 12 05 B2 0B 40 80 00 58 | |||
</pre> | </pre> | ||
Patch for rpcs3 (newemu only) for testing purpose. | |||
<pre> | <pre> | ||
. | Version: 1.2 | ||
SPU-f3d8be702bf4cb8545656e37c29fcc6201a57991: | |||
"Disable Dithering": | |||
Games: | |||
All: | |||
All: [ All ] | |||
Author: "kozarovv" | |||
Patch Version: 1.0 | |||
Patch: | |||
- [ be32, 0xFB0, 0x40800058 ] | |||
</pre> | </pre> |