Commit Graph
49862 Commits
Author SHA1 Message Date
Henrik RydgårdandClaude Opus 5.5 7736d2d07d Lang: Fill in untranslated Malay strings
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-27 08:29:56 +01:00
Henrik RydgårdandClaude Opus 5.5 8ff7bb3714 Lang: Fill in untranslated Ukrainian strings
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-27 08:29:54 +01:00
Henrik RydgårdandClaude Opus 5.5 25ba8768c5 Lang: Fill in untranslated Traditional Chinese strings
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-27 08:29:20 +01:00
Henrik RydgårdandClaude Opus 5.5 d96bf9d32b Lang: Fill in untranslated Swedish strings
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-27 08:29:18 +01:00
Henrik RydgårdandClaude Opus 5.5 cc72459f3a Lang: Fill in untranslated Spanish strings
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-27 08:29:17 +01:00
Henrik RydgårdandClaude Opus 5.5 046e431bdd Lang: Fill in untranslated European Portuguese strings
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-27 08:29:16 +01:00
Henrik RydgårdandClaude Opus 5.5 7c81e7ff48 Lang: Fill in untranslated Korean strings
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-27 08:27:44 +01:00
Henrik RydgårdandClaude Opus 5.5 c72e2618bd Lang: Fill in untranslated Thai strings
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-27 08:27:42 +01:00
Henrik RydgårdandClaude Opus 5.5 c2cd4820f4 Lang: Fill in untranslated Simplified Chinese strings
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-27 08:27:41 +01:00
Henrik RydgårdandClaude Opus 5.5 e8ea35e631 Lang: Fill in untranslated Russian strings
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-27 08:27:40 +01:00
Henrik RydgårdandClaude Opus 5.5 297b1b0cf2 Lang: Fill in untranslated Norwegian Nynorsk strings
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-27 08:27:07 +01:00
Henrik RydgårdandClaude Opus 5.5 6903f55149 Lang: Fill in untranslated German strings
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-27 08:27:06 +01:00
Henrik RydgårdandClaude Opus 5.5 1d61a70c02 Lang: Fill in untranslated Italian strings
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-27 08:27:04 +01:00
Henrik RydgårdandClaude Opus 5.5 413a47f0d3 Lang: Fill in untranslated Indonesian strings
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-27 08:27:02 +01:00
Henrik RydgårdandClaude Opus 5.5 aa61d80746 Lang: Fill in untranslated French strings
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-27 08:27:01 +01:00
Henrik RydgårdandClaude Opus 5.5 fd180d5b97 Lang: Fill in untranslated Latin American Spanish strings
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-27 08:27:00 +01:00
Henrik RydgårdandClaude Opus 5.5 8ae00e7585 Lang: Fill in untranslated Hungarian strings
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-27 08:26:58 +01:00
Henrik RydgårdandClaude Opus 5.5 85f5c2f6e0 Lang: Fill in untranslated Arabic strings
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-27 08:26:57 +01:00
Henrik RydgårdandClaude Opus 5.5 46735bf2d5 Lang: Fill in untranslated Finnish strings
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-27 08:26:55 +01:00
Henrik RydgårdandClaude Opus 5.5 4292aa1c29 Lang: Fill in untranslated Tagalog strings
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-27 08:26:54 +01:00
Henrik RydgårdandClaude Opus 5.5 4e26e1e43b Lang: Fill in untranslated Greek strings
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-27 08:26:53 +01:00
Henrik RydgårdandClaude Opus 5.5 53c8dd733f Lang: Fill in untranslated Croatian strings
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-27 08:26:51 +01:00
Henrik RydgårdandClaude Opus 5.5 51b67659cb Lang: Fill in untranslated Persian strings
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-27 08:26:50 +01:00
Henrik RydgårdandClaude Opus 5.5 dedbf14ef1 Lang: Fill in untranslated Belarusian strings
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-27 08:26:49 +01:00
Henrik RydgårdandClaude Opus 5.5 afbb4469e9 Lang: Fill in untranslated Vietnamese strings
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-27 08:26:47 +01:00
Henrik RydgårdandClaude Opus 5.5 ed643e02db Lang: Fill in untranslated Dutch strings
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-27 08:26:46 +01:00
Henrik RydgårdandClaude Opus 5.5 303901f012 Lang: Fill in untranslated Bulgarian strings
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-27 08:26:44 +01:00
Henrik RydgårdandClaude Opus 5.5 9199c95d55 Lang: Fill in untranslated Catalan strings
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-27 08:26:43 +01:00
Henrik RydgårdandClaude Opus 5.5 9a388b7955 Lang: Fill in untranslated Czech strings
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-27 08:26:41 +01:00
Henrik RydgårdandClaude Opus 5.5 755237b223 Lang: Fill in untranslated Danish strings
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-27 08:26:40 +01:00
Henrik RydgårdandClaude Opus 5.5 b4f60e5ba5 Lang: Fill in untranslated Galician strings
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-27 08:26:38 +01:00
Henrik RydgårdandClaude Opus 5.5 ee4f09d22f Lang: Fill in untranslated Romanian strings
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-27 08:26:37 +01:00
Henrik RydgårdandClaude Opus 5.5 7d32791a0c Lang: Fill in untranslated Lithuanian strings
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-27 08:26:36 +01:00
Henrik RydgårdandClaude Opus 5.5 3f68aaaf78 Lang: Fill in untranslated Hebrew strings
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-27 08:26:34 +01:00
Henrik RydgårdandClaude Opus 5.5 1a0b0862a6 langtool: Add import-language, to merge a file of translations into a language
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-27 08:11:10 +01:00
Henrik RydgårdandClaude Opus 5.5 793703b550 Lang: Add missing keys as English placeholders (copy-missing-lines)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-27 08:09:57 +01:00
Henrik Rydgård 43a69b1c84 Merge pull request #22802 from hrydgard/more-ui-work
More UI design work and tweaks
2026-10-26 23:49:09 +01:00
Henrik Rydgård 4d26021a9b More round stuff 2026-10-26 23:08:25 +01:00
Henrik Rydgård e93c71b337 More UI cleanup 2026-10-26 23:01:21 +01:00
Henrik RydgårdandClaude Opus 5.5 849c5c10e4 SystemInfoScreen: Use ChoiceGroups instead of collapsible sections
The name lists (extensions, flags) become InfoItems, which have the
background a ChoiceGroup needs.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-26 23:01:21 +01:00
Henrik Rydgård 5c2a17f120 Give InfoItem backgrounds 2026-10-26 23:01:21 +01:00
Henrik Rydgård acc9fe9283 Somewhat better organization of UI settings 2026-10-26 23:01:21 +01:00
Henrik Rydgård 734d56a1d3 Tweaks to RetroAchievements screen 2026-10-26 23:01:21 +01:00
Henrik Rydgård 7e2b68cc19 Minor code cleanups 2026-10-26 23:01:21 +01:00
Henrik Rydgård 9ac9b2c23d Add a left-pointing chevron, more ChoiceGroup 2026-10-26 23:01:21 +01:00
Henrik RydgårdandClaude Opus 5.5 49115bed93 Settings: Make the navigation bar fit square buttons, use chevrons between path parts
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-26 23:01:21 +01:00
Henrik RydgårdandClaude Opus 5.5 8e72082d3e Settings: Show a chevron on choices that open another screen
Links to other pages already had one. SettingItem::OpensScreen() gives the same to
choices (and custom items that are choices) that open a full screen, like control
mapping or the savedata manager. Ones that open popups don't get it.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-26 23:01:21 +01:00
Henrik Rydgård 7b96bbfbc2 Merge pull request #22801 from hrydgard/fix-kernel-logic
Kernel: Fix savestate MipsCall actions, sysclib strchr, TLS leak, FPL counter, module id list
2026-10-26 22:31:36 +01:00
Henrik RydgårdandClaude Opus 5.5 e9fa393546 Kernel: Match GetModuleIdList and heap allocation to hardware
pspautotests modules/idlist shows that sceKernelGetModuleIdList still
writes a partial entry at the end of the buffer (a size of 6 gives two
entries), which the previous commit had stopped. A NULL buffer or a
negative size returns ILLEGAL_ADDR without writing the count.

sysmem/kernel/heap shows sceKernelAllocHeapMemory returning null for
sizes near 4GB, rather than wrapping. The WithOption variant already
checked this. The plain one now does too.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-26 22:05:55 +01:00
Henrik RydgårdandClaude Opus 5.5 22b6fcbf22 Kernel: Fix sysclib strchr/strrchr, TLS pool leak, FPL counter
- sysclib strchr/strrchr searched for the whole string, not the
  character, so they returned 0 for any nonzero c.
- A thread ending with blocks from more than one TLS pool leaked every
  other block, since the restarted loop's ++iter skipped an entry.
- FPL's nextBlock grew by up to numBlocks per allocation and eventually
  overflowed into a negative block index. Old states with a negative one
  now reset it rather than failing to load.
- sysclib strncpy bounded its copy by the source's valid size only, not
  the destination's.
- sceKernelAllocHeapMemory wrapped for sizes near 4GB, and
  sceKernelGetModuleIdList could write a partial entry past the buffer
  size and dereferenced a missing module.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-26 21:42:06 +01:00