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 Emulators Types and Revisions'''</div> | |||
<div style="float:left; width:25%;"> | |||
{| class="wikitable" style="font-size:xx-small;" | |||
|+ ps1_emu.elf (decrypted) | |||
! Firmware !! Bytes !! MD5 !! Timestamp !! <abbr title="Revision">Rev</abbr> | |||
|- | |||
! [[1.00_AV|1.00 AV]] | |||
| 10 296 408 || 981A7428C2A59219FA05861EDEEDBD4A || 06/10/04/12:16 || ? | |||
|- | |||
! [[1.02_CEX|1.02]] | |||
| 10.296.408 || C5FE03742A951194C336EE33783F5CD6 || 06/10/21/00:01 || ? | |||
|- | |||
! [[1.10_CEX|1.10]] | |||
| 10.296.408 || C9C9D7D2E36F3E3579A5DF713E9ABE1E || 06/11/09/06:09 || ? | |||
|- | |||
! [[1.11_CEX|1.11]] | |||
| 10.296.408 || 26271CCA29B77483DC3D7FDDE7B9CC3C || 06/11/21/17:55 || ? | |||
|- | |||
! [[1.30_CEX|1.30]] | |||
| 10.296.496 || E7932EC24E72B3005EE152B141A63690 || 06/12/05/05:34 || ? | |||
|- | |||
! [[1.31_CEX|1.31]] | |||
| 10.296.496 || 2244DE70C85093D7E37BC3D3F4278BE1 || 06/12/12/18:48 || ? | |||
|- | |||
! [[1.32_CEX|1.32]] | |||
| 10.296.496 || 601BCADBBBC0A2D0433C932A2D67C4EF || 06/12/18/05:55 || ? | |||
|- | |||
! [[1.50_CEX|1.50]] | |||
| 10.303.536 || F8050B006CDFCC64DF742D7BBDC03130 || 07/01/18/22:53 || ? | |||
|- | |||
! ? | |||
| ? || ? || ? || ? | |||
|- | |||
! ? | |||
| ? || ? || ? || ? | |||
|- | |||
! ? | |||
| ? || ? || ? || ? | |||
|- | |||
! [[1.90_CEX|1.90]] | |||
| 6.974.864 || 478CFED0F7EE13C94F01C2A246C83D45 || 07/07/21/06:45 || ? | |||
|- | |||
! ? | |||
| ? || ? || ? || ? | |||
|- | |||
! ? | |||
| ? || ? || ? || ? | |||
|- | |||
! ? | |||
| ? || ? || ? || ? | |||
|- | |||
! [[3.66_CEX|3.66]] | |||
| 2.824.832 || 95399A202003E216794511BD2D2E9DF6 || 11/06/16/03:52 || ? | |||
|-{{cellcolors|#bbbbff}} | |||
! [[3.70_CEX|3.70]] | |||
| rowspan="3" | 2.824.920 || 045D81147B9BDFB8C8A416FD5F5A0C56 || 11/08/05/03:42 || rowspan="3" | same | |||
|-{{cellcolors|#bbbbff}} | |||
! ~ | |||
| colspan="2" style="text-align:center; background-color:#bbbbff;" | ''Any'' | |||
|-{{cellcolors|#bbbbff}} | |||
! [[3.72_CEX|3.72]] | |||
| C745A30231103B83F04539021E4878FC || 11/09/14/01:17 | |||
|-{{cellcolors|#ddddff}} | |||
! [[3.73_CEX|3.73]] | |||
| rowspan="2" | 2.824.920 || EB3AFF30B3206CFA6A8962AB393F773E || 11/10/04/12:55 || rowspan="2" | same | |||
|-{{cellcolors|#ddddff}} | |||
! [[3.74_CEX|3.74]] | |||
| E2A77C3DC9FD5AD4264341196462D096 || 11/10/25/00:38 | |||
|-{{cellcolors|#bbbbff}} | |||
! [[4.00_CEX|4.00]] | |||
| rowspan="3" | 2.829.784 || 94A8E6A8063C08FAD8CA9B340CCCAE67 || 11/11/22/03:17 || rowspan="3" | same | |||
|-{{cellcolors|#bbbbff}} | |||
! ~ | |||
| colspan="2" style="text-align:center; background-color:#bbbbff;" | ''Any'' | |||
|-{{cellcolors|#bbbbff}} | |||
! [[4.11_CEX|4.11]] | |||
| 02B7F6D5F517959161B2154135D4B3BC || 12/02/11/07:13 | |||
|- | |||
! [[4.15_CEX|4.15]] | |||
| ? || ? || ? || ? | |||
|-{{cellcolors|#ddddff}} | |||
! [[4.20_CEX|4.20]] | |||
| rowspan="2" | 2.829.912 || 3778948C92F5FA12CB0AABE65BEE5465 || 12/06/15/02:09 || rowspan="2" | same | |||
|-{{cellcolors|#ddddff}} | |||
! [[4.21_CEX|4.21]] | |||
| B7B662397E3FFDD7C11F9617C1B41856 || 12/06/30/01:13 | |||
|- | |||
! [[4.23_SEX|4.23 S]] | |||
| 2.829.912 || 6E74CC51E0C6462DF1F9278ED9DB9593 || 12/07/31/00:22 || ? | |||
|- | |||
! [[4.25_CEX|4.25]] | |||
| 2.829.912 || 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 || 354F1DEEDCA3C4CFA1B49B6B28B1648D || 15/12/17/01:18 || ? | |||
|- | |||
! [[4.80_CEX|4.80]] | |||
| ? || ? || ? || ? | |||
|- | |||
! [[4.81_CEX|4.81]] | |||
| 2.765.616 || 2123E3D6A8E81647CB41F51AFEE6CCD6 || 16/10/24/19:23 || ? | |||
|- | |||
! [[4.82_CEX|4.82]] | |||
| 2.765.616 || 64BFA4DBD595A20E317B2189B54BF673 || 17/08/24/15:42 || ? | |||
|} | |||
<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 and the target firmware">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; width:25%;"> | |||
{| class="wikitable" style="font-size:xx-small;" | |||
|+ ps1_netemu.elf (decrypted) | |||
! Firmware !! Bytes !! MD5 !! Timestamp !! <abbr title="Revision">Rev</abbr> | |||
|- | |||
! [[1.00_CEX|1.00]] ~ [[1.50_CEX|1.50]] | |||
| colspan="4" {{no}} | |||
|- | |||
! ? | |||
| ? || ? || ? || ? | |||
|- | |||
! ? | |||
| ? || ? || ? || ? | |||
|- | |||
! ? | |||
| ? || ? || ? || ? | |||
|- | |||
! [[1.90_CEX|1.90]] | |||
| 6.853.368 || 8A5A3676B461C97A9A467D5651D6EAAD || 07/07/21/06:47 || ? | |||
|- | |||
! ? | |||
| ? || ? || ? || ? | |||
|- | |||
! ? | |||
| ? || ? || ? || ? | |||
|- | |||
! ? | |||
| ? || ? || ? || ? | |||
|- | |||
! [[3.66_CEX|3.66]] | |||
| 2.971.976 || 9586FC8B121E59526C31405DCFFB79CA || 11/06/16/03:54 || ? | |||
|-{{cellcolors|#bbbbff}} | |||
! [[3.70_CEX|3.70]] | |||
| rowspan="3" | 2.972.168 || AA1DB63461EE0BE021ED45F85A6EECE0 || 11/08/05/03:43 || rowspan="3" | same | |||
|-{{cellcolors|#bbbbff}} | |||
! ~ | |||
| colspan="2" style="text-align:center; background-color:#bbbbff;" | ''Any'' | |||
|-{{cellcolors|#bbbbff}} | |||
! [[3.72_CEX|3.72]] | |||
| 32F45129EC2844D419582912E54CEB22 || 11/09/14/01:18 | |||
|-{{cellcolors|#ddddff}} | |||
! [[3.73_CEX|3.73]] | |||
| rowspan="2" | 2.972.168 || 17063FFAB205B72ABF7F59582B8A7988 || 11/10/04/12:56 || rowspan="2" | same | |||
|-{{cellcolors|#ddddff}} | |||
! [[3.74_CEX|3.74]] | |||
| 89C03D80ACE7C4FA914DD699621EB4F8 || 11/10/25/00:40 | |||
|-{{cellcolors|#bbbbff}} | |||
! [[4.00_CEX|4.00]] | |||
| rowspan="2" | 2.977.128 || DBB8FB62BE3F2064D31332FCB7575DF1 || 11/11/22/03:19 || rowspan="2" | same | |||
|-{{cellcolors|#bbbbff}} | |||
! [[4.01_CEX|4.01]] | |||
| 9E60379FA979B0440C27C6AEE38754AF || 11/12/23/01:10 | |||
|-{{cellcolors|#ddddff}} | |||
! [[4.10_CEX|4.10]] | |||
| rowspan="2" | 2.977.208 || B3CD41AB8235906AB41D3DA18D04F00E || 12/02/05/23:19 || rowspan="2" | same | |||
|-{{cellcolors|#ddddff}} | |||
! [[4.11_CEX|4.11]] | |||
| 4DDF2C3289AD9BEDF0719DBE1BDA971C || 12/02/11/07:15 | |||
|- | |||
! [[4.15_CEX|4.15]] | |||
| ? || ? || ? || ? | |||
|-{{cellcolors|#bbbbff}} | |||
! [[4.20_CEX|4.20]] | |||
| rowspan="2" | 2.977.432 || 363A2D5EE2246E9CEFCBF1078593C771 || 12/06/15/02:10 || rowspan="2" | same | |||
|-{{cellcolors|#bbbbff}} | |||
! [[4.21_CEX|4.21]] | |||
| 5E08C86EC07E4F227D3591DD9530CC95 || 12/06/30/01:15 | |||
|- | |||
! [[4.23_SEX|4.23 S]] | |||
| 2.977.416 || 149E5E6AD727B1B37E29D4E8D15D5BB0 || 12/07/31/00:23 || ? | |||
|- | |||
! [[4.25_CEX|4.25]] | |||
| 2.977.432 || 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 || 398A7CA9F0E8449E15FCB33B87C96194 || 15/12/17/01:19 || ? | |||
|- | |||
! [[4.80_CEX|4.80]] | |||
| ? || ? || ? || ? | |||
|- | |||
! [[4.81_CEX|4.81]] | |||
| 2.913.656 || 8765A00EE467B8635A13ECCBB1F85B89 || 16/10/24/19:24 || ? | |||
|- | |||
! [[4.82_CEX|4.82]] | |||
| 2.913.752 || FCEB6595F9F8E5C77BA36C73C38397D9 || 17/08/24/15:43 || ? | |||
|} | |||
<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 and the target firmware">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; width:25%;"> | |||
{| class="wikitable" style="font-size:xx-small;" | |||
|+ ps1_newemu.elf (decrypted) | |||
! Firmware !! Bytes !! MD5 !! Timestamp !! <abbr title="Revision">Rev</abbr> | |||
|- | |||
! [[1.00_CEX|1.00]] ~ [[1.90_CEX|1.90]] | |||
| colspan="4" {{no}} | |||
|- | |||
! ? | |||
| ? || ? || ? || ? | |||
|- | |||
! ? | |||
| ? || ? || ? || ? | |||
|- | |||
! ? | |||
| ? || ? || ? || ? | |||
|- | |||
! [[3.66_CEX|3.66]] | |||
| 2.708.864 || 9AB86CFAEB12675F3DB08FCAA3541534 || 11/06/16/03:54 || ? | |||
|-{{cellcolors|#bbbbff}} | |||
! [[3.70_CEX|3.70]] | |||
| rowspan="3" | 2.708.880 || 7AB7C32901778E3F0C9B8DB45296821B || 11/08/05/03:44 || rowspan="3" | same | |||
|-{{cellcolors|#bbbbff}} | |||
! ~ | |||
| colspan="2" style="text-align:center; background-color:#bbbbff;" | ''Any'' | |||
|-{{cellcolors|#bbbbff}} | |||
! [[3.72_CEX|3.72]] | |||
| 2863E9B70B4FB6C5A0938FF508C46057 || 11/09/14/01:18 | |||
|-{{cellcolors|#ddddff}} | |||
! [[3.73_CEX|3.73]] | |||
| rowspan="2" | 2.708.880 || 871E256771632569D664FF2A1ECE82C3 || 11/10/04/12:57 || rowspan="2" | same | |||
|-{{cellcolors|#ddddff}} | |||
! [[3.74_CEX|3.74]] | |||
| 8A8AC80CBA58561CC754C6CF66B059AB || 11/10/25/00:40 | |||
|-{{cellcolors|#bbbbff}} | |||
! [[4.00_CEX|4.00]] | |||
| rowspan="2" | 2.713.832 || F9E840430B2BC982CB1A71B7BDD7FC35 || 11/11/22/03:19 || rowspan="2" | same | |||
|-{{cellcolors|#bbbbff}} | |||
! [[4.01_CEX|4.01]] | |||
| 953090CBCB96626899731B711B3D5B6A || 11/12/23/01:11 | |||
|-{{cellcolors|#ddddff}} | |||
! [[4.10_CEX|4.10]] | |||
| rowspan="2" | 2.713.720 || 47E7FA52DB7BDEDF2187EB02D868834D || 12/02/05/23:20 || rowspan="2" | same | |||
|-{{cellcolors|#ddddff}} | |||
! [[4.11_CEX|4.11]] | |||
| 8A90DB2A206BE79423A99D4CF2458241 || 12/02/11/07:16 | |||
|- | |||
! [[4.15_CEX|4.15]] | |||
| ? || ? || ? || ? | |||
|-{{cellcolors|#bbbbff}} | |||
! [[4.20_CEX|4.20]] | |||
| rowspan="2" | 2.713.904 || 8AC80356D1EFDDCFF7A7AD82136137D2 || 12/06/15/02:11 || rowspan="2" | same | |||
|-{{cellcolors|#bbbbff}} | |||
! [[4.21_CEX|4.21]] | |||
| E482927E47B00C1478313E343DD652C4 || 12/06/30/01:15 | |||
|- | |||
! [[4.23_SEX|4.23 S]] | |||
| 2.713.888 || A2CF9C4C00B40779FB5C529849E0D6A4 || 12/07/31/00:24 || ? | |||
|- | |||
! [[4.25_CEX|4.25]] | |||
| 2.713.904 || 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 || BF78A0DC74084B43777A7F8CE6C7B66A || 15/12/17/01:20 || ? | |||
|- | |||
! [[4.80_CEX|4.80]] | |||
| ? || ? || ? || ? | |||
|- | |||
! [[4.81_CEX|4.81]] | |||
| 2.649.272 || 0C76DE974439B12546EA494639C8EE9A || 16/10/24/19:25 || ? | |||
|- | |||
! [[4.82_CEX|4.82]] | |||
| 2.649.288 || C5957F268EE9E1429DE3AF0BC15F1395 || 17/08/24/15:44 || ? | |||
|} | |||
<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 and the target firmware">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; width:25%;"> | |||
{| class="wikitable" style="font-size:xx-small;" | |||
|+ ps1_rom.bin | |||
! Firmware !! Bytes !! MD5 !! <abbr title="Revision">Rev</abbr> | |||
|- | |||
! [[1.00_CEX|1.00]] ~ [[1.90_CEX|1.90]] | |||
| colspan="4" {{no}} | |||
|- | |||
! ? | |||
| ? || ? || ? | |||
|- | |||
! [[3.66_CEX|3.66]] ~ [[3.74_CEX|3.74]] | |||
| 4.089.584 || FBB5F59EC332451DEBCCF1E377017237 || ? | |||
|- | |||
! [[4.00_CEX|4.00]] ~ [[4.82_CEX|4.82]] | |||
| 524.288 || 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 8probably static and common for all emu versions) in a separated table<br> | |||
In ps1_netemu.self from firmware 4.88 the table seem to be located over here (unknown) | |||
< | |||
< | |||
. | |||
. | |||
<pre> | <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 | ||
001651E0 00 00 00 01 00 00 00 08 00 00 00 10 00 00 00 09 ................ | |||
001651F0 00 00 00 02 00 00 00 03 00 00 00 0A 00 00 00 11 ................ | |||
00165200 00 00 00 18 00 00 00 20 00 00 00 19 00 00 00 12 ....... ........ | |||
00165210 00 00 00 0B 00 00 00 04 00 00 00 05 00 00 00 0C ................ | |||
00165220 00 00 00 13 00 00 00 1A 00 00 00 21 00 00 00 28 ...........!...( | |||
00165230 00 00 00 30 00 00 00 29 00 00 00 22 00 00 00 1B ...0...)...".... | |||
00165240 00 00 00 14 00 00 00 0D 00 00 00 06 00 00 00 07 ................ | |||
00165250 00 00 00 0E 00 00 00 15 00 00 00 1C 00 00 00 23 ...............# | |||
00165260 00 00 00 2A 00 00 00 31 00 00 00 38 00 00 00 39 ...*...1...8...9 | |||
00165270 00 00 00 32 00 00 00 2B 00 00 00 24 00 00 00 1D ...2...+...$.... | |||
00165280 00 00 00 16 00 00 00 0F 00 00 00 17 00 00 00 1E ................ | |||
00165290 00 00 00 25 00 00 00 2C 00 00 00 33 00 00 00 3A ...%...,...3...: | |||
001652A0 00 00 00 3B 00 00 00 34 00 00 00 2D 00 00 00 26 ...;...4...-...& | |||
001652B0 00 00 00 1F 00 00 00 27 00 00 00 2E 00 00 00 35 .......'.......5 | |||
001652C0 00 00 00 3C 00 00 00 3D 00 00 00 36 00 00 00 2F ...<...=...6.../ | |||
001652D0 00 00 00 37 00 00 00 3E 00 00 00 3F 00 00 00 00 ...7...>...?.... | |||
= | |||
001652E0 00 00 07 FF 00 00 07 FF 00 00 07 FF 00 00 07 FF ...ÿ...ÿ...ÿ...ÿ | |||
001652F0 FF FF F8 00 FF FF F8 00 FF FF F8 00 FF FF F8 00 ÿÿø.ÿÿø.ÿÿø.ÿÿø. | |||
00165300 02 03 12 13 06 07 16 17 0A 0B 1A 1B 0E 0F 1E 1F ................ | |||
00165310 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 1E 1F ................ | |||
00165320 00 00 00 00 00 00 00 00 00 00 00 00 00 02 00 00 ................ | |||
00165330 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 12 ................ | |||
. | |||
. | |||
. | |||
. | |||
. | |||
. | |||
00165340 00 00 00 7F 00 00 00 7F 00 00 00 7F 00 00 00 7F ................ | |||
00165350 FF FF FF 80 FF FF FF 80 FF FF FF 80 FF FF FF 80 ÿÿÿ€ÿÿÿ€ÿÿÿ€ÿÿÿ€ | |||
</pre> | </pre> |