Commit Graph
47140 Commits
Author SHA1 Message Date
Henrik Rydgård d533d55943 Merge pull request #21402 from hrydgard/even-more-fixes
Update README.md, fix duplicate header in settings with SDL, fix more AdhocServer UI
2026-03-10 09:57:06 +01:00
Henrik Rydgård 28d73b6f68 Minor tweak to Add Server 2026-03-10 09:36:32 +01:00
Henrik Rydgård 33c8bdc05b Show radio button images in the server list 2026-03-10 09:21:19 +01:00
Henrik Rydgård e0f1b6b7d9 Move the "localhost = multiple instances" hint into the adhoc server selector 2026-03-10 09:05:10 +01:00
Henrik Rydgård f175408968 Reorder network settings a little, show the nickname setting there too (yes, dupe, but useful). 2026-03-10 09:05:10 +01:00
Henrik Rydgård 14211aa1c0 Button layout, tweaks 2026-03-10 09:05:10 +01:00
Henrik Rydgård cb7e34b560 Fix some complications when adding servers 2026-03-10 09:05:10 +01:00
Henrik Rydgård ad305da1f4 Update README.md for 1.20.2 2026-03-10 09:05:07 +01:00
Henrik Rydgård 7728a2996a Avoid emitting the "Audio backend" itemheader twice on SDL 2026-03-09 19:00:44 +01:00
Henrik Rydgård 24fb1f90ee Merge pull request #21401 from TotalCaesar659/patch-1
Update Russian translation
2026-03-09 18:45:27 +01:00
TotalCaesar659 911f83a3f6 Update Russian translation 2026-03-09 20:31:24 +03:00
Henrik Rydgård f0708e5c30 Merge pull request #21400 from hrydgard/final-tweaks
Fix minor UI centering issues and similar
2026-03-09 17:50:05 +01:00
Henrik Rydgård d5cad70381 Merge pull request #21399 from Saramagrean/patch-3
Update Thai translations
2026-03-09 16:47:44 +01:00
Henrik Rydgård c634e73885 Fix more centering and sizing bugs 2026-03-09 16:41:07 +01:00
Benjamin Benda Gates f8cc1766c9 Update Thai translations
for 1.20.2 :)
2026-03-09 22:28:59 +07:00
Henrik Rydgård d54fb5097a Margin fixes for PopupScreens 2026-03-09 15:59:23 +01:00
Henrik Rydgård 03f7d13288 Remove unnecessary AnchorLayout from TabbedDialogScreen 2026-03-09 15:37:40 +01:00
Henrik Rydgård 7e1f9c36ce Merge pull request #21396 from hrydgard/final-tweaks
Translation fixes, more button images in MessagePopupScreen
2026-03-09 15:25:43 +01:00
Henrik Rydgård 0cc5eb920b Translation fixes, more button images in MessagePopupScreen 2026-03-09 14:06:20 +01:00
Henrik Rydgård e73021ea64 Merge pull request #21395 from hrydgard/server-list-management
Add UI for adding and removing custom servers from the adhoc server screen
2026-03-09 13:13:07 +01:00
Henrik Rydgård 3305f97261 Additional fix 2026-03-09 12:54:13 +01:00
Henrik Rydgård 620c6ae049 Add UI for adding and removing custom servers from the adhoc server screen 2026-03-09 11:57:31 +01:00
Henrik Rydgård f97580556d Merge pull request #21389 from hrydgard/more-bugfixes
Adhoc server list work, add missing translations
2026-03-09 11:57:06 +01:00
Henrik Rydgård b84ef525b2 Merge pull request #21393 from hrydgard/windows-input-optimization
Windows input optimizations
2026-03-09 11:56:45 +01:00
Henrik Rydgård 82069c3503 Windows input optimizations
Fixes a bug where the thread wouldn't sleep when it should in some
configurations.

Also increases the time between polls for new controllers.
2026-03-09 11:02:04 +01:00
Henrik Rydgård ae08b31573 Avoid the HTTP request on sceNetAdhoc init by reading from cache 2026-03-09 10:50:24 +01:00
Henrik Rydgård 8c8dd0f0d0 Add utility function to snoop the file cache 2026-03-09 10:40:51 +01:00
Chris Healy 7ea1260ef0 OpenGL: Fix GLES3 detection for Mesa/Panfrost Mali drivers
The original code checked for "Mali" in GL_RENDERER and disabled GLES3
for all Mali GPUs, which was a workaround for bugs in ARM's proprietary
Mali driver. However, Mesa/Panfrost (open-source Mali driver) does not
have these bugs and should be allowed to use GLES3.

This patch:
- Adds GPU_VENDOR_MESA for identifying Mesa drivers via GL_VENDOR
- Changes the GLES3 ban to only apply when GL_VENDOR="ARM" (proprietary)
- Allows Mesa/Panfrost Mali GPUs to use GLES3 features

Expected behavior:
- ARM proprietary driver (GL_VENDOR="ARM"): GLES3 disabled (preserved)
- Mesa/Panfrost (GL_VENDOR="Mesa"): GLES3 enabled
- Other Mesa drivers: Unaffected

Related issues: #4078, #15413

Signed-off-by: Chris Healy <cphealy@gmail.com>
2026-03-08 21:41:20 -07:00
Chris Healy 6dae3327a6 GPU: Remove dead helper functions from fragment shader
Remove two unused helper functions that were left behind after refactoring:

1. unpackUVec3: Left over from commit 4329aaa31c ("GPU: Apply color
   test mask as a uint") which refactored color test to use
   roundAndScaleTo8x4 with direct uint comparison instead of unpacking
   to uvec3 components.

2. packFloatsTo8x4: Left over from commit aec22491fe ("Don't expand
   alphaColorRef to 128 bytes") which changed u_alphacolorref from vec4
   to uint, making the float-to-uint packing function unnecessary.

Both functions were defined but never called, wasting shader compilation
time and binary size for shaders that enable color testing.

Signed-off-by: Chris Healy <cphealy@gmail.com>
2026-03-08 19:13:41 -07:00
Chris Healy 9ed5dcdc27 GPU: Use inversesqrt for light distance and half-vector calculations
Replace length()/normalize() with inversesqrt() pattern for better
performance on mobile GPUs. The inversesqrt instruction is a single
hardware operation, while length() requires sqrt(dot()) and normalize()
requires inversesqrt internally plus a multiply.

Changes:
1. Light distance calculation:
   Before: distance = length(toLight); toLight /= distance;
   After:  distSq = dot(toLight, toLight);
           invDist = inversesqrt(distSq);
           distance = distSq * invDist;
           toLight *= invDist;

2. Specular half-vector normalization:
   Before: ldot = dot(normalize(toLight + vec3(0,0,1)), worldnormal);
   After:  halfVec = toLight + vec3(0,0,1);
           halfInvLen = inversesqrt(dot(halfVec, halfVec));
           ldot = dot(halfVec, worldnormal) * halfInvLen;

Also reuses distSq in attenuation calculation to avoid recomputing
distance*distance.

Offline shader compiler results (vertex shader with 4-light ubershader):

Mali (malioc):
  G31 (Bifrost): 44.90 -> 40.50 cycles (-9.8%)
  G52 (Bifrost): 14.97 -> 13.50 cycles (-9.8%)
  G310 (Valhall): 13.88 -> 12.88 cycles (-7.2%)
  G57 (Valhall):  7.60 ->  6.97 cycles (-8.3%)

PowerVR (Profiling Compilers):
  Series 8 GE8300: 322 -> 302 ALU cycles (-6.2%)
  Series 9 GM9445: 296 -> 280 ALU cycles (-5.4%)
  Series B BXM:    560 -> 540 instructions (-3.6%)

Signed-off-by: Chris Healy <cphealy@gmail.com>
2026-03-08 19:13:41 -07:00
Henrik Rydgård 9373791bc4 Adhoc: Show location directly in the server list 2026-03-09 00:53:39 +01:00
Henrik Rydgård 71d884379d Fix a potential race condition 2026-03-09 00:51:39 +01:00
Henrik Rydgård cf9ee07b8e Adhoc: Forgot that we have to load the server list in-game to check the connection mode 2026-03-09 00:44:56 +01:00
Henrik Rydgård 53f1f57bbc Crashfix in Resolve.cpp, fix some bad return values 2026-03-09 00:21:56 +01:00
Henrik Rydgård 2e5de9435e Don't crash if sceIoDopen is called with a null path. 2026-03-09 00:19:36 +01:00
Henrik Rydgård f6dda460f9 Translate relay connection messages 2026-03-09 00:19:36 +01:00
Henrik Rydgård d5c2a7ce62 Change some message timeouts 2026-03-09 00:19:36 +01:00
Henrik Rydgård 593e0fd8d9 Remove stray space in .gitmodules. This might be what broke the flatpak build:
https://github.com/flathub/org.ppsspp.PPSSPP/pull/97
2026-03-08 18:53:08 +01:00
Henrik Rydgård a94717babb Merge pull request #21385 from warmenhoven/warmenhoven/pr/libretro-ios
libretro: fix ios/tvos builds
2026-03-08 17:54:35 +01:00
Eric Warmenhoven 9b26df8283 libretro: fix ios/tvos builds 2026-03-08 12:16:52 -04:00
Henrik Rydgård a0c4141136 Merge pull request #21384 from hrydgard/android-background-work
Android background image selection: Scale down selected background image when too large
2026-03-08 15:25:46 +01:00
Henrik Rydgård d596e43b4b Android: Scale down selected background images when too large. Fix activity issue. 2026-03-08 14:53:20 +01:00
Henrik Rydgård 5a27f20387 Merge pull request #21380 from hrydgard/last-fixes
iOS: Try to avoid leaking file sandbox bookmarks, avoid trying to install zips where it's not possible
2026-03-08 13:46:25 +01:00
Henrik Rydgård 6ad06e00a4 iOS: Close the keyboard on one more event. Makes it easier to get rid of it if it gets stuck. 2026-03-08 13:03:00 +01:00
Henrik Rydgård 9e0cb93085 Workaround in remote disk streaming server 2026-03-08 12:40:22 +01:00
Henrik Rydgård 0a1be41fa7 Additional fixes to ZipFileLoader 2026-03-08 12:33:46 +01:00
Henrik Rydgård 4f09c24825 Fix crash in ZipFileLoader. Was missing a terminator to the va_args list. Gemini found this. 2026-03-08 12:25:51 +01:00
Henrik Rydgård 192ab4fe91 Correct a mainscreen drawing error in list mode for bad isos with long names 2026-03-08 12:02:37 +01:00
Henrik Rydgård 96deade782 Avoid duplicate paths for zip install 2026-03-08 10:46:30 +01:00
Henrik Rydgård a2de96a4d1 iOS: Try to avoid leaking file bookmarks. Don't try to install zips into iCloud folder. 2026-03-08 10:20:24 +01:00