ps1: general STARTDAT lookup + warn on old base.pbp loader
- extract_startdat: locate STARTDAT at PSAR + p1 (the u32 at PSAR+0x0C) instead of popstation's p1 + 0x50000 absolute offset, which only worked for bases whose PSAR was aligned to 0x50000. Any PS1 classic can now be used as a base. - _warn_old_base: print a warning when the base PBP is a 3.xx-era classic, since its POPS loader often fails to link on 6.60/6.61 CFW (error 80020148 'game could not be started'). - README: document the 6.60/6.61 base preference and DEFLATE compression.
This commit is contained in:
@@ -95,6 +95,7 @@ Discs are matched by hash first (most precise), then serial, then filename.
|
||||
`openvgdb-covers.zip` offline cover bundles, and the legacy cover cache.
|
||||
- `data/base.PBP` — a PSN PS1 classic EBOOT (any game) used as the encrypted
|
||||
loader when converting PS1 discs to `EBOOT.PBP` (git-ignored, copyrighted).
|
||||
Prefer a 6.60/6.61-era classic; 3.xx-era loaders can fail on modern CFW.
|
||||
- State dir (`~/.local/state/psp-preserve/` by default, or `$XDG_STATE_HOME/psp-preserve`):
|
||||
- `library.sqlite` — the catalog + library database.
|
||||
- `covers/` — downloaded cover cache.
|
||||
@@ -188,16 +189,20 @@ PS1 discs (pending) and converted EBOOTs also show up in the **Library** tab
|
||||
- **Serial detection** — reads `SYSTEM.CNF` to derive the game ID (e.g.
|
||||
`SLUS-00001`) and writes it into `PARAM.SFO` + the PSAR header.
|
||||
- **base.pbp** — conversion needs a PSN PS1 classic `EBOOT.PBP` (any game) to
|
||||
supply Sony's encrypted `DATA.PSP` loader. Copy one to `data/base.PBP` and
|
||||
point **Settings → General → PS1 base.pbp** at it.
|
||||
supply Sony's encrypted `DATA.PSP` loader (POPS emulator) and `STARTDAT`.
|
||||
Copy one to `data/base.PBP` and point **Settings → General → PS1 base.pbp**
|
||||
at it. **Prefer a 6.60/6.61-era classic**: very old 3.xx-era classics ship a
|
||||
POPS loader that fails to link on modern CFW (`80020148` "game could not be
|
||||
started"). Any PS1 classic works structurally — the converter finds
|
||||
`STARTDAT` at `PSAR + p1` regardless of PSAR alignment.
|
||||
- **Output** — a folder `<out>/<Game ID>/` containing a single `EBOOT.PBP`
|
||||
(the popstation way: uncompressed level-0 PSAR, no `KEYS.BIN`/`DOCUMENT.DAT`),
|
||||
(the popstation way: raw-DEFLATE-compressed PSAR, no `KEYS.BIN`/`DOCUMENT.DAT`),
|
||||
ready to copy to `<PSP>/PSP/GAME/<Game ID>/`. Compatible with CFW POPS
|
||||
(ARK-4).
|
||||
(ARK-4/ARK-5).
|
||||
|
||||
Configure the folders in **Settings → General** (or `PSP_PS1_ROOTS` /
|
||||
`PSP_PS1_OUTPUT_DIR`). Current limits: single-disc games only (no multi-disc
|
||||
PBP), and images are stored uncompressed (LZRC compression is on the roadmap).
|
||||
PBP); disc data is DEFLATE-compressed (level 1 by default, `--complevel 0-9`).
|
||||
|
||||
## Store — archive.org and local folder
|
||||
|
||||
|
||||
Reference in New Issue
Block a user