PSISOIMG0000: Difference between revisions
Jump to navigation
Jump to search
(Created page with "This format is used for PSONE Classics on PS3 and PSP. == DATA.PSAR == * Contains the ISO (usually compressed) {| class="wikitable" |- ! Offset !! Notes |- | 0x0 || PSISOIMG...") |
Mrjaredbeta (talk | contribs) |
||
(11 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
This format is used for PSONE Classics on PS3 and PSP. | This format is used for PSONE Classics on PS3 and PSP. | ||
== EBOOT.PBP == | |||
Contents: | |||
* [[Eboot.PBP#PARAM.SFO|PARAM.SFO]] | |||
* ICON0.PNG | |||
* ICON1.PMF | |||
* PIC0.PNG | |||
* PIC1.PNG | |||
* SND0.AT3 | |||
* DATA.PSP | |||
* DATA.PSAR | |||
== DATA.PSAR == | == DATA.PSAR == | ||
Line 9: | Line 20: | ||
| 0x0 || PSISOIMG0000 | | 0x0 || PSISOIMG0000 | ||
|- | |- | ||
| 0x400 || iso header (encrypted) | | 0x400 || iso header (encrypted, probably ignored by ps1_netemu) | ||
|- | |- | ||
| 0x1220 || special data (encrypted) | | 0x1220 || special data (encrypted) | ||
Line 16: | Line 27: | ||
|- | |- | ||
|} | |} | ||
==ISO.BIN== | ==ISO.BIN== | ||
This file helps the PS3 to verify the content of DATA.PSAR | This file helps the PS3 to verify the content of DATA.PSAR. It is a copy of the iso header. At the end of the file, there is a signature which can be used to verify the contents. | ||
All offsets are in little endian. | All offsets are in little endian. | ||
Line 30: | Line 40: | ||
* tested manually (without mfw creator) | * tested manually (without mfw creator) | ||
=== Structure === | |||
{| class="wikitable" | |||
|- | |||
! Offset !! Notes | |||
|- | |||
| 0x0 || PSISOIMG0000 | |||
|- | |||
| 0x400 || iso header (decrypted) | |||
|- | |||
| 0x4000 || start of entries | |||
|- | |||
|} | |||
=== Entries === | === Entries === | ||
Line 36: | Line 58: | ||
* One sector has 0x930 bytes (2352 bytes) | * One sector has 0x930 bytes (2352 bytes) | ||
* Sectors are compressed | * Sectors are compressed | ||
* same entries can be found in the decrypted iso_header of the EBOOT.PBP | |||
{| class="wikitable" | {| class="wikitable" | ||
Line 41: | Line 64: | ||
! Entry Nº !! Offset !! Length !! Name !! Example !! Notes | ! Entry Nº !! Offset !! Length !! Name !! Example !! Notes | ||
|- | |- | ||
| rowspan="5" style="background-color:#DDDDDD;" | 1 || 0x00 || 4 bytes (0x04) || '''offset in iso''' || 0 || offset | | rowspan="5" style="background-color:#DDDDDD;" | 1 || 0x00 || 4 bytes (0x04) || '''offset in iso''' || 0 || offset relative to start of the iso inside of DATA.PSAR | ||
|- | |- | ||
| 0x04 || 2 bytes (0x02) || '''size''' || variable || size of 0x10 sectors (compressed, if not 0x9300) | | 0x04 || 2 bytes (0x02) || '''size''' || variable || size of 0x10 sectors (compressed, if not 0x9300) | ||
Line 54: | Line 77: | ||
|- | |- | ||
|} | |} | ||
== Extract ISOs == | |||
you can use this app to get plain isos out of the eboot.pbp: [[https://github.com/xdotnano/PSXtract]] | |||
{{File Formats}}<noinclude>[[Category:Main]]</noinclude> |
Latest revision as of 03:09, 17 August 2023
This format is used for PSONE Classics on PS3 and PSP.
EBOOT.PBP[edit | edit source]
Contents:
- PARAM.SFO
- ICON0.PNG
- ICON1.PMF
- PIC0.PNG
- PIC1.PNG
- SND0.AT3
- DATA.PSP
- DATA.PSAR
DATA.PSAR[edit | edit source]
- Contains the ISO (usually compressed)
Offset | Notes |
---|---|
0x0 | PSISOIMG0000 |
0x400 | iso header (encrypted, probably ignored by ps1_netemu) |
0x1220 | special data (encrypted) |
0x100000 | start of the iso |
ISO.BIN[edit | edit source]
This file helps the PS3 to verify the content of DATA.PSAR. It is a copy of the iso header. At the end of the file, there is a signature which can be used to verify the contents. All offsets are in little endian.
Patch for disabling the signature check in ps1_netemu[edit | edit source]
set search "\xE8\x7F\x01\x80\xE9\x61\x00\x00\xE8\x0B\x00\x10\x7C\x08\x03\xA6"
set replace "\x38\x60\x00\x00"
catch_die {:: patch_elf $elf $search 0 $replace} "Unable to patch self [file tail $elf]"
- tested manually (without mfw creator)
Structure[edit | edit source]
Offset | Notes |
---|---|
0x0 | PSISOIMG0000 |
0x400 | iso header (decrypted) |
0x4000 | start of entries |
Entries[edit | edit source]
- Starting at 0x4000
- Each entry represents 0x10 Sectors of the iso
- One sector has 0x930 bytes (2352 bytes)
- Sectors are compressed
- same entries can be found in the decrypted iso_header of the EBOOT.PBP
Entry Nº | Offset | Length | Name | Example | Notes |
---|---|---|---|---|---|
1 | 0x00 | 4 bytes (0x04) | offset in iso | 0 | offset relative to start of the iso inside of DATA.PSAR |
0x04 | 2 bytes (0x02) | size | variable | size of 0x10 sectors (compressed, if not 0x9300) | |
0x06 | 2 bytes (0x02) | type ? | 01 00 | usually 1... and 0 for the last entry | |
0x08 | 16 bytes (0x10) | sha1 | variable | first 0x10 bytes of sha1 sum of 0x10 disc sectors | |
0x18 | 8 bytes (0x08) | padding | |||
Up to 32256 | same structure than the previous entry |
Extract ISOs[edit | edit source]
you can use this app to get plain isos out of the eboot.pbp: [[1]]
|