Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PSP directory may have multiple sub directories #377

Open
orangecms opened this issue Apr 23, 2022 · 0 comments
Open

PSP directory may have multiple sub directories #377

orangecms opened this issue Apr 23, 2022 · 0 comments
Assignees

Comments

@orangecms
Copy link
Collaborator

orangecms commented Apr 23, 2022

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.......
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants