PBP
PBP (PLAYSTATION BOOT PACKAGE) is an archive format used on the PSP. The archive contains description data, preview media and executable/data content.
At the time of writing, PBP files have been used notably for firmware updates, and some free applications, demos and additional contents.
PBP is an uncompressed archive, with an index displaying file data offsets.
PBP files are usually run from the Memory Stick. They must be placed in the /PSP/GAME/ folder of the Memory Stick.
Common PBP structure[edit | edit source]
Usually every PBP file embeds a PARAM.SFO file and the PARAM.SFO file starts at offset 0x28 just after the PBP header.
EBOOT.PBP[edit | edit source]

Used on PSP (PSP remaster and PSN content:PS1 classic and Minis), to be loaded with build-in PSP emulator on PS3. See Emulation.
With PSP remaster game, you can select either to start the game directly or the NPJA0040/USRDIR/EBOOT.BIN (Ad-Hoc Party folder). An ICON of the game is also loaded on the top left corner on the menu.
The PSP System Software update EBOOT.PBP can be downloaded from the from PS3 Internet Browser to be transfered to a PSP connected to the PS3 using a micro USB cable or copied to an external storage device, for example to a Memory Stick inserted in the Memory Stick slot of the First Series PS3.
RCO PNG used on PS3 for EBOOT.PBP
Example of files contained in an EBOOT.PBP:
- PARAM.SFO
- ICON0.PNG
- ICON1.PMF
- PIC0.PNG
- PIC1.PNG
- SND0.AT3
- DATA.PSP
- DATA.PSAR
EBOOT.PBP Header[edit | edit source]
| Offset | Size | Description |
|---|---|---|
| 0x0 | 4 (char[4]) | Signature (magic). Always 00 50 42 50 i.e. { '\0', 'P', 'B', 'P' } |
| 0x4 | 4 (uint32) | Unknown. possibly the version number. Currently always 0x00000100 or 0x01000100 (some MINIS, PSP HD Remasters and PSP PlayView). |
| 0x8 | 4 (uint32) | Offset of the file PARAM.SFO (?this value should always be 0x28?) |
| 0xC | 4 (uint32) | Offset of the file ICON0.PNG |
| 0x10 | 4 (uint32) | Offset of the file ICON1.PMF or ICON1.PNG |
| 0x14 | 4 (uint32) | Offset of the file PIC0.PNG or UNKNOWN.PNG (Value can be repeated) |
| 0x18 | 4 (uint32) | Offset of the file PIC1.PNG or PICT1.PNG |
| 0x1C | 4 (uint32) | Offset of the file SND0.AT3 |
| 0x20 | 4 (uint32) | Offset of the file DATA.PSP |
| 0x24 | 4 (uint32) | Offset of the file DATA.PSAR |
PARAM.SFO[edit | edit source]
Basically the information file for the .PBP - has title, parental control level etc.
Fews parameters inside different type of .pbp (psp remaster, psp game, minis, ps1 classic..)
For the external PS3 SFO, see PARAM.SFO. Some parameters such SAVEDATA_DETAIL related but used separately from the eboot.pbp as well.
For PS1 classic, offset .SFO should not be variable on EBOOT.PBP.
(e.g.: Title of the game should start at offset 0x358 with category: ME, not as EG)
| Key (Parameters) | Description | Format (DATA TYPE) | Max length | Value example | Used on | Note |
|---|---|---|---|---|---|---|
| APP_VER | Application or Patch Version | utf-8 | 8 | 1.00 | PS1 classic should not have this parameter. | |
| ATTRIBUTE | Various parameter | integer | 4 | 01 00 60 01 | PS1 classic do not have attribute. | |
| BOOTABLE | Is bootable or not | integer | 4 | 01 00 00 00 | Parameters PS1 classic should start from here. | |
| CATEGORY | Category of Content | utf-8 | 4 | -- | Category of PSF, as per the table above. | |
| DISC_ID | Product number of the game(?) | integer | 16 (0X10) | NPXX12345 | Equal to Game ID for PS3. See DiscID. | |
| DISC_NUMBER | -- | integer | 4 | 1 | Which disc (out of DISC_TOTAL) is this? (Counts from 1.) | |
| DISC_TOTAL | -- | integer | 4 | 1 | Total number of UMD discs for this game. | |
| DISC_VERSION | -- | utf-8 | 8 | 1.00 | Version of the game(?), e.g. "1.00" | |
| DRIVER_PATH | -- | utf-8 | 64 (0x40) | -- | ||
| HRKGMP_VER | -- | integer | 4 | 0 | ||
| LICENSE | License information | utf-8 | 512 (0x200) | -- | ||
| MEMSIZE | -- | integer | 4 | 1 | add extra RAM for eboot (Not for PSP-1000), first used on homebrew: snes TYL | |
| PARENTAL_LEVEL | Parental Lock Level | integer | 4 | "3" | Minimum parental control level needed to access this file (1-11, 1=general audience, 5=12 years, 7=15 years, 9=18 years) //E.G.:Set as 3 on ModNation Racers | |
| PBOOT_TITLE | -- | utf-8 | 128 (0x80) | -- | Used on PBOOT.PBP (Update) | |
| PSP_SYSTEM_VER | -- | utf-8 | 8 | 6.35 | Version of PSP system software required to run the game(?) | |
| REGION | -- | integer | 4 | 00 80 00 00 | Bitmask of allowed regions. 0x8000 is region 2? | |
| TITLE | Game Title (Default language) | utf-8 | 128 (0x80) | -- | Text shown under the "Game" heading in the save game menu. | |
| TITLE_XX | Game Title | utf-8 | 128 (0x80) | -- | Localized version of the TITLE attribute. See Languages. | |
| UPDATER_VER | -- | utf-8 | 8 | 6.60 | Used by the firmware updater program to denote the version it upgrades the firmware to. Category MG, on PSP_GAME: SYSDIR/UPDATE/PARAM.SFO if not empty | |
| USE_USB | -- | integer | 4 | 0 |
*LANGUAGE category MG Language of the game. "JP" indicates Japanese.
Attribute
- MINIS used are for X1 category ATTRIBUTE_In_Bootable_content
Category
| PSP | PS3 SFO related | Note |
|---|---|---|
| EG | MN | PSP Essentials or Extended or External (or Episode) Games? Minis |
| EG | PE | PSP remaster (and in others only PSP released games?) |
| EG | PP | Not bootable on PS3 |
| MA | No | Apps |
| ME | 1P | PS1 Classic |
| MG | No | MemoryStick Game?. For update FW :MSTKUPDATE, Apps game and Game data (for param.pbp , not as save data). PP on PS3 is possible. |
| MS | No | MemoryStick Save for Game&apps (PSP remaster also) |
| UG | No | UMD Disc Game |
| PG | PP | Game update |
DISC_ID (or TITLE_ID ?)
Some special titles from SCE utility apps:
- NPIA00013 (SensMe) http://www.playstation.com/psp-app/sensme/en/download_pc.html
Update for Game (PBOOT.PBP): some values
APP_VER: 1.01 or more
ATTRIBUTE: 01 00 00 00
CATEGORY: PG
PBOOT_TITLE
Content Information Files[edit | edit source]
For PS3 see: Content_Information_Files.
ICON0.PNG[edit | edit source]
The little icon in 32bit colour PNG format. Max resolution is 144x80.
: 80x80 (same used on savedata)
ICON1.PMF or ICON1.PNG[edit | edit source]
The little animated icon in PSMF format or image in PNG.
:ICON1.PNG or ICON1.PMF (310x180)
:ICON1.PNG or ICON1.PMF (310x180)
PIC0.PNG[edit | edit source]
"Information" image in PNG format. Max resolution is 480x272.
PIC1.PNG or PICT1.PNG[edit | edit source]
The background image in 32bit colour PNG format. Max resolution is 480x272.
SND0.AT3[edit | edit source]
The sound which is played when the icon is highlighted, in ATRAC3 format.
DATA.PSP[edit | edit source]
More information, except more targeted at the executable portion (contains info such as ELF size):
Boot and Warning image[edit | edit source]
"minis"boot logo (visual content is similar than the file located on /dev_flash/pspemu/flash0/logo/minis_logo/)
Display on Screen from PS3 side might be altered according to the FW.
PNG format (480x272)
Not all Minis games have the second
| Offset | Length | Name | Description |
|---|---|---|---|
| 0x00 | 16 | - | ~PSP (7E 50 53 50 00 02 01 00 01 01 20) |
| ... | |||
| 0x2C | - | Size | Length first part / offset second part (40 25) |
Menu screen selection image for PSP Remaster located in PSP_EMU.
See Emulator settings.
Other[edit | edit source]
- When the eboot is signed as free demo (PSP 6.60 OFW might block it, 6.39 FW no).
DATA.PSAR[edit | edit source]
This section lacks information on:
- how many PGD files are present in DATA.PSAR
- how DATA.PSAR is related to ISO.BIN.EDAT
- if STARTDAT is part of DATA.PSAR or not
The DATA.PSAR is the bulk of the EBOOT.PBP and the portion that contains the executable code.
The DATA.PSAR contains a PGD file at offset 0x50. This PGD file contains the BB MAC from which can be derived the version key.
| Offset | Length | Name | Description |
|---|---|---|---|
| 0x00 | 0x10 | Magic |
See ISO.BIN.EDAT#Section. |
| 0x10 | 0x40 | ? | ? |
| 0x50 | ? | DATA.PGD | PGD file |
- STARTDAT: the STARTDAT header contains the header size (50) and .png size (usually A5 2F for File:PSP Minis Warning logo.jpg minis warning logo or 06 26 for PSP Remaster).
PARAM.PBP[edit | edit source]
The PSP XMB references PARAM.PBP files as "game data". They are used by PlayView、 additional contents.
PARAM.PBP Header[edit | edit source]
| Offset | Length | Value | Notes |
|---|---|---|---|
| 0x00 | 4 | 00 50 42 50 | Magic (".PBP") |
| 0x04 | 4 | 01 00 01 00 | Unknown purpose, possibly the version number. Currently is always similar (also on 1.00 or 1.02 disc_version) |
| 0x08 | 4 | 28 00 00 00 | Offset of the file PARAM.SFO (this value should always be 0x28) |
| 0x0C | 4 | DC 01 00 00 | Offset of the file ICON0.PNG 144x80 (similar since same parameters are used) |
| 0x10 | 4 | xx xx 00 00 | Offset of the file ICON1.PNG or ICON1.PMF 310x180 ("information") |
| 0x14 | 4 | xx xx 00 00 | repeat Offset of the file ICON1.PNG or ICON1.PMF |
| 0x18 | 4 | xx xx 00 00 | Offset of the file PIC1.PNG 480x272 ("Background") not all Playview have it (and so, offset second part) |
| 0x1C | 4 | xx xx xx 00 | Offset second part of the file |
| 0x20 | 4 | xx xx xx 00 | repeat second part of the file |
| 0x24 | 4 | xx xx xx 00 | repeat second part of the file |
PARAM.SFO starts at offset 0x28 with following parameters (see above for length or purpose):
- BOOTABLE: 00 00 00 00
- CATEGORY: "MG"
- DISC_ID :
- DISC_VERSION: "1.00" , "1.02"
- PARENTAL_LEVEL
- PSP_SYSTEM_VER: 1.00
- REGION : 00 00 80 00
- TITLE
- USE_USB: 00 00 00 00
Then the ICON0.PNG starts usually at offset 0x1DC
ICON0.PNG and PIC1.PNG:
After the 2 or 3 .png, the second part of the file start (length is always 0x20 bytes).
Tools[edit | edit source]
zPBPTool[edit | edit source]
PSARdumper[edit | edit source]
- [3]
- Source code: ?
- Note: This dumper is only for PSAR files of PSP System Software packages.
PRXdecrypter[edit | edit source]
- [4]
- Source code: ?
- Note: PRXdecrypter is a modification of PSARdumper that can decrypt other files as MODULES.PRX or EBOOT.BIN.
PBP Unpacker[edit | edit source]
- [5]
- Source code: ?
- Note: There is a bug in PBP Unpacker version <=0.94 where .PBP with size bigger than 1MB are not supported.
PSXtract[edit | edit source]
- [6]
- Note: PSXtract is a tool to convert PS1 EBOOT.PBP (coming from PKG) to ISO
- psxtract-2 by has207 (2025-10-26): Mod of PSXtract that features a modified version of libkirk's source code to support DES encryption/decryption and the AMCTRL functions. It also features isofix code for ensuring finalized ISO matches real discs. And uses atrac3 ACM code for ATRAC3 decoding of CDDA audio tracks.
- PSXtract2021 by Mr-Berzerk (2021-11-09): Version of Hykem's PSXtract with attempts to merge in as many forks as possible.
- See [7] for an analysis of many forks of PSXtract as of 2021.
- PSXtract Source code by zecoxao from AkuHak's repo (2016-06-20)
- https://github.com/AKuHAK/psxtract
- https://github.com/Sorvigolova/psxtract
- Game manual (DOCUMENT.DAT) decryption is also supported.
- AKuHAK has contributed code that was integrated into Hykem's original repository - the commits in his repository are legit and are based on Hykem and DeadlySystem' work.
psnpkgdecryptor-extractor[edit | edit source]
- psnpkgdecryptor-extractor by TheLeecherMan for PKG and KEYS.BIN
- [8]
- Note: Some feature (KEYS.BIN is used by PS1 classic on PSP):
Extract & Decrypt & Dump all PSP PKG files ( Games & Minis, DLCs & Addons, NeoGeo, PC Engine, PSOne Classic Games, Games Updates ) ISO, EBOOT, EDAT/PGD files to Decrypt (Version 1.3), Dump, Verify ISO Generate KEYS.BIN for PSOne Game from PSOne EBOOT.PBP ...
libLZR[edit | edit source]
- PSP homebrew - libLZR v0.11
- [9]
- Note: The library de- and encodes LZR streams (as used in the Sony PSP firmware). ?Used in PGD only?
Links and Resources[edit | edit source]
- More information about the PSAR files: [10]
- For structure (and history of research): [11]
- For files related to EBOOT.PBP (keys.bin, etc.) there is basic information on the Talk page.
- For history of the page: original link for PBP structure http://endlessparadigm.com/forum/showthread.php?tid=13
ImHex Pattern for PBP files[edit | edit source]

Load PBP file in ImHex, in "Pattern editor" paste pattern from link below, click "Evaluate" (green play button)
https://gist.github.com/playday3008/0c8ba916ba3b1c4f52654db6e3f85109
Pattern supports:
- PARAM.SFO (PSP/PS3 compatible): structure
- ICON0.PNG: preview/structure
- ICON1.PMF: structure
- PIC0.PNG: preview/structure
- PIC1.PNG: preview/structure
- SND0.AT3: structure
- DATA.PSP (SCE/PRX/ELF): structure (PRX is partial (currently))
- DATA.PSAR: structure (partial (currently))
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||



