Commit Graph
20 Commits
Author SHA1 Message Date
Henrik RydgårdandClaude Opus 5 3a70c6b149 Install PKG game updates, and boot them
Opening a .pkg now offers to install it, the way a .zip does - see the new
InstallPkgScreen, which shows what the update patches, what it'll take up
on disk (exact, since package contents aren't compressed) and where it's
going. The package's PS3-style USRDIR/CONTENT wrapping is stripped so the
files land where the PSP expects them, in PSP/GAME/<DISC_ID>.

Booting a disc then looks for PSP/GAME/<DISC_ID>/PBOOT.PBP and boots that
instead of the disc's own EBOOT, leaving the disc mounted - so the update
overrides the files it ships and the disc supplies the rest. The update's
DISC_ID has to match; a DISC_VERSION mismatch only warns, since updates do
get used with slightly different dumps in practice.

Verified against the whole corpus: every one installs, and the
digital NP* update/base-image pairs that could be assembled all boot the
patch rather than the disc's executable. That includes Super Robot Taisen
Operation Extend from a real NPUMDIMG EBOOT.PBP, which settles that
ISO.BIN.EDAT does not re-key the PBOOT - a digital title's patched EBOOT is
encrypted exactly like a UMD one. On the UMD side, the patched
LittleBigPlanet reads PATCH.ARC out of the install alongside the disc's own
archive.

The DISC_VERSION warning turns out to be load-bearing: many of the pairs
mismatch, because the dumps in circulation are later disc revisions than the
updates were built against. docs/pkg_notes.md has the numbers, and the one
thing that doesn't work - PGD-wrapped .sprx modules, which
sceKernelLoadModuleNpDrm can't load.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-08 11:15:15 -06:00
Henrik Rydgård 5cffcd34ad Get rid of the confusing old USING_WIN_UI define. Make a more clear system property for headless. 2026-08-16 12:19:41 +02:00
Henrik Rydgård 7219cd2f5a Split off ScreenManager from Screen.cpp 2026-08-07 14:30:36 +02:00
Henrik Rydgård cc0ece038c Clean up the string type in RequestCallback - somehow was both char* and std::string????
Might be related to #21695
2026-05-18 14:16:34 +02:00
Henrik Rydgård a38c3ce09f GameBrowser: Safer way to do refresh. 2026-05-13 11:14:47 +02:00
Henrik Rydgård ed15ff7f8e Fix GPUDriverTestScreen 2026-05-10 23:41:39 +02:00
Henrik Rydgård 3a599c4714 Fix audio focus issue by tracking the cause of lost focus.
Fixes #21643
2026-05-06 00:06:32 +02:00
Henrik Rydgård 71d04bfcae Implement cheat search on mobile 2026-05-04 00:36:16 +02:00
Henrik Rydgård 3325cbe6b2 Remove the legacy icon images for zip/rar/7z. Include this in the regular gamelist so search works for them. 2026-05-03 18:43:48 +02:00
Henrik Rydgård 2d90058421 Move more of the search code out of GameBrowser 2026-05-03 17:44:01 +02:00
Henrik Rydgård e354d0dfdd Break out SearchEngine and SearchBar 2026-05-03 17:41:18 +02:00
Henrik Rydgård b2d0b8e3cc Improve display of http links in recents list 2026-04-23 16:55:29 +02:00
Henrik Rydgård 786b835ba1 Smoother directory navigation using search. Normalize away full-width chars for search. 2026-04-16 12:46:34 -06:00
Henrik Rydgård 3c6782a38f Improve the look of the search field (better margins etc) 2026-04-15 09:47:35 -06:00
Henrik Rydgård b5bc36a37f Filter out problematic shortcut keys 2026-04-14 19:44:20 -06:00
Henrik Rydgård 07df47de07 More polish of the search experience 2026-04-14 18:30:57 -06:00
Henrik Rydgård 5f7835cdfb Add the search bar to all main screen tabs 2026-04-14 18:17:54 -06:00
Henrik Rydgård b207beb882 Add touch-to-cancel for search bar. Add magnifying glass symbol. 2026-04-14 18:17:54 -06:00
Henrik Rydgård 6c2c4606dc Initial work on instant type-to-search. 2026-04-14 18:17:54 -06:00
Henrik Rydgård 3663d46a5b Split out the GameBrowser from MainScreen 2026-04-13 13:20:19 -06:00