-
-
Notifications
You must be signed in to change notification settings - Fork 17
Wii U / Video: Fixed resume of video afrer the home menu close #107
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: wiiu-sdl2-2.28
Are you sure you want to change the base?
Wii U / Video: Fixed resume of video afrer the home menu close #107
Conversation
ad29a9f
to
dd25419
Compare
dd25419
to
01094c2
Compare
@GaryOderNichts, can you remind me what's left to test/ensure until merge this? |
Were there any issues with doing it like this ad29a9f? Since this is a workaround only necessary for swap intervals of 0, it might be the simpler solution. I would prefer moving it into |
My workaround that I did, is supposed to perform save/restore, and it just worked. I could try the thing you suggested, and if it will work, then flawless, but if it fails, then just keep my initial workaround. |
I'll try to test after some hours (I'll be busy), or tomorrow if I forget or I will be too sleepy. |
This bug happens just when V-Sync is off and attempting to open and close the home menu. To fix the black/frozen screen it's just enough to call the `GX2SetSwapInterval(0);` right after entering the foreground back.
01094c2
to
7df48f1
Compare
Okay, I done the test, and the small thing seems just fine! I applied it to the pull-request right now. The test of the tweak that you sent to me: 2025-09-23_23-14-21-rekod-discord.mp4The control test over clear 2025-09-23_23-09-45-rekod-discord.mp4 |
Can you move the workaround into |
Uno momento... |
And also, I should test the thing after all to ensure it WORKS. |
I tested, if I move to
All the cases just failed. But once I place this gall at But, now I moved it out of Just few evidences for
|
Implement workaround for SDL bug where GX2SetSwapInterval(0) causes black screen after returning from HOME menu. When leaving foreground, GX2 silently restores swap interval to 1, but SDL doesn't reapply zero-interval mode after regaining foreground, causing render thread to stop presenting frames. Changes: - Force VSYNC enabled on Wii U in SetVideoMode() renderer creation - Prevent VSYNC toggle from disabling VSYNC on Wii U in all games - Add detailed comments explaining the SDL bug and workaround - Only affects Wii U builds via __WIIU__ preprocessor guards This workaround keeps GX2SetSwapInterval(1) active so the system's reset matches what SDL expects, preventing the black screen hang. Long-term solution: Rebuild SDL with PR devkitPro/SDL#107 which adds proper GX2SetSwapInterval(0) reapplication in WIIU_ForegroundAcquired().
This bug happens just when V-Sync is off and attempting to open and close the home menu. To fix the black/frozen screen it's just enough to call the
GX2SetSwapInterval(0);
right after entering the foreground back.P.S. I checked on the WUT side, and seems, such workaround is required since it's a bug of the Wii U firmware itself.
Description
Demo of buggy behaviour at my project:
2025-07-08_00-47-13.mp4
Demo of the fixed behaviour at my project:
2025-07-08_00-53-01-rekod-discord.mp4
Unexpectedly, this bug affects the EasyRPG (ping @Ghabry to use the newer SDL2 for Wii U after this fix arrive) too when disabling V-Sync, and re-enabling V-Sync restores back the screen:
2025-07-08_00-58-03-rekod-discord.mp4