Files
ppsspp/Core/HLE
Henrik RydgårdandClaude Opus 5 9de3eb1244 Answer the UMD region check, which the VSH opens with an error without
sceIoDevctl 0x01E18030 asks whether the disc's region matches the console's.
Unusually it answers through the return value rather than an output buffer -
1 matches, 0 doesn't - so leaving it unimplemented read as a mismatch, and the
VSH opened on "This disc cannot be started. The region code is not correct.",
asking 12 times. PPSSPP has no region-locked discs; anything it can load is
something it should run, so this always matches. The call now happens once.

Behind it is a second thing, not fixed here: the VSH believes a disc is inserted
at all because nothing in PPSSPP models an empty drive. sceUmd reports
PSP_UMD_PRESENT | PSP_UMD_READY unconditionally, and devctl 0x01F20001 always
answers "game disc". JPCSP answers "no disc" when no ISO is loaded, which is why
it never reaches the region question. Giving those two a notion of "no disc"
would be the real fix - low risk for games, which always have one, but it is on a
path every game uses, so it is written up in docs/VSHBootInvestigation.md rather
than done as a drive-by.

With this the shell reaches the interactive XMB: the error is dismissable with
circle and the menu behind it works. The per-frame display list stops settling
into one repeated frame and alternates between 45 and 48 stall points, which is
the headless-visible sign of a live menu rather than a static dialog.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01GZq8ZtJmFY7bkX5FVkr3P9
2026-08-24 11:13:00 +02:00
..
2025-07-22 17:48:20 +02:00
2025-07-22 17:48:20 +02:00
2025-07-22 17:48:20 +02:00
2026-08-11 10:28:36 +02:00
2025-08-06 17:44:54 +02:00
2026-01-18 23:40:13 +02:00
2026-08-11 09:08:52 +02:00
2025-07-20 19:30:35 +02:00
2026-08-11 20:12:10 +02:00
2026-08-11 09:08:52 +02:00
2026-08-11 20:14:01 +02:00
2025-07-20 19:32:05 +02:00
2025-02-14 09:50:55 -06:00
2026-08-11 20:14:01 +02:00
2026-08-11 10:28:36 +02:00
2026-08-11 10:28:47 +02:00
2025-01-05 19:14:15 +01:00
2026-08-11 10:28:47 +02:00
2026-08-24 09:30:44 +02:00
2025-04-03 14:13:50 +02:00
2026-08-11 20:14:01 +02:00
2026-08-12 14:02:19 +02:00
2025-02-04 11:53:22 -06:00
2026-08-08 18:18:28 +02:00
2026-08-11 20:14:01 +02:00