Skip to content

PSP directory may have multiple sub directories #377

@orangecms

Description

@orangecms

From Steam Deck firmware, we can obtain the follow:

  • one level 1 PSP directory that points to two further locations
  • both locations each point to a PSP recovery directory

The current data structure has thus the following issues:

  • only a single level 2 directory is supported for each legacy and modern PSP
  • the range (offset + length) is decoupled from the directory itself; it should be part of the directory

Excerpts

PSP level 1 directory

00021000: 2450 5350 a100 4f07 0200 0000 0000 0000  $PSP..O.........
00021010: 4800 0000 0000 0000 0000 0600 0000 0000  H...............
00021020: 4a00 0000 0000 0000 0000 0700 0000 0000  J...............

These point to another location each.

PSP level 2 recovery directory A:

00060000: 0200 0000 0300 0000 ff00 0000 0000 0800  ................

PSP level 2 recovery directory B:

00070000: 0100 0000 0300 0000 ff00 0000 0000 8800  ................

Actual level 2 directories

00080000: 2450 4c32 36b1 638b 1a00 0000 0206 0040  $PL26.c........@
00080010: 0000 0000 4004 0000 0004 0000 0000 0080  ....@...........
00080020: 0100 0000 0022 0000 0009 0000 0000 0080  ....."..........
00080030: 7300 0000 80f6 0000 002b 0000 0000 0080  s........+......
00080040: 0200 0000 5043 0100 0022 0100 0000 0080  ....PC..."......
00080050: 0400 0000 0000 0200 0020 2600 0000 0080  ......... &.....
00080060: 0800 0000 0002 0400 0066 0200 0000 0080  .........f......
00080070: 0900 0000 4004 0000 0068 0600 0000 0080  ....@....h......
00880000: 2450 4c32 36b1 638b 1a00 0000 0206 0040  $PL26.c........@
00880010: 0000 0000 4004 0000 0004 0000 0000 0080  ....@...........
00880020: 0100 0000 0022 0000 0009 0000 0000 0080  ....."..........
00880030: 7300 0000 80f6 0000 002b 0000 0000 0080  s........+......
00880040: 0200 0000 5043 0100 0022 0100 0000 0080  ....PC..."......
00880050: 0400 0000 0000 0200 0020 2600 0000 0080  ......... &.....
00880060: 0800 0000 0002 0400 0066 0200 0000 0080  .........f......
00880070: 0900 0000 4004 0000 0068 0600 0000 0080  ....@....h......
00880080: 0b00 0000 ffff ffff 4100 0000 0000 0000  ........A.......

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions