Commit Graph

703 Commits

Author SHA1 Message Date
Henrik Rydgård
e1527233d9 Add the EmuScreen pass assert on OpenGL as well 2024-10-14 14:35:35 +02:00
Henrik Rydgård
e9c7eaf427 Be more consistent with NotifyPresent
..
2024-10-14 14:26:44 +02:00
Henrik Rydgård
6d3849bc48 Add a "Back" button to the crash screen for convenience 2024-10-03 18:55:22 +02:00
Henrik Rydgård
8fbe46ab9e Prevent soft-locking the emulator on invalid PBP files, or crashes in some cases. 2024-10-03 18:38:54 +02:00
Henrik Rydgård
611551ccf1 Android TV banners: Update gold banner, remove obsolete TV "icon" 2024-10-03 16:52:41 +02:00
Henrik Rydgård
8d380e260a Fix a wrong assert 2024-10-03 16:52:34 +02:00
Henrik Rydgård
cb06ac4af2 MacOS: Fix text input (got broken in #19441, would no longer send CHAR events)
See #19441
2024-10-02 16:21:53 +02:00
Henrik Rydgård
b40098effd Chat: Cleanup the selection of chat input method, allow in-ui popup (what iOS needs). 2024-10-02 16:21:53 +02:00
Henrik Rydgård
3d31b4ac4c Fix possible framebuffer binding bug in EmuScreen 2024-10-02 16:21:53 +02:00
Henrik Rydgård
9952c42426 Use message IDs to avoid some repetition of notifications.
Also fixes some awkward English.
2024-09-24 14:02:17 +02:00
Henrik Rydgård
68804ca539
Merge pull request #19473 from hrydgard/frame-advance
Try to make Frame Advance a bit more reliable
2024-09-18 15:31:30 +02:00
Henrik Rydgård
42914c3d7c Try to make Frame Advance a bit more reliable 2024-09-18 15:17:20 +02:00
Henrik Rydgård
a33839d220 Add Reset as a mappable control 2024-09-18 14:18:04 +02:00
Henrik Rydgård
5926886c0c Some include cleanup, delete some obsolete code 2024-07-25 14:52:41 +02:00
Henrik Rydgård
ef95e24169 Implement compat flag proposed in #18423, forcing readbacks in Juiced 2
In-game, there's no slowdown, and this fixes the decal editor. So it's
no use allowing readbacks to be turned off in this game.

See issue #18423
2024-07-20 11:24:24 +02:00
Henrik Rydgård
e01ca5b057
Logging API change (refactor) (#19324)
* Rename LogType to Log

* Explicitly use the Log:: enum when logging. Allows for autocomplete when editing.

* Mac/ARM64 buildfix

* Do the same with the hle result log macros

* Rename the log names to mixed case while at it.

* iOS buildfix

* Qt buildfix attempt, ARM32 buildfix
2024-07-14 14:42:59 +02:00
Henrik Rydgård
53ebba4a3e Vulkan: Fix bug when stepping / pausing-on-lost-focus 2024-05-29 14:49:53 +02:00
Henrik Rydgård
dadc37cb9b EmuScreen: If a requested-to-boot game is already running, ignore the request. 2024-05-14 00:04:40 +02:00
Henrik Rydgård
a059750f5a Add basic checkbox UI for GPI switched, add display of GPO LEDs
Try it with Parappa.
2024-05-12 18:01:25 +02:00
Henrik Rydgård
c38ce2a5be Fix an issue when bringin up the dev menu with transparent background disabled 2024-05-11 21:28:26 +02:00
Henrik Rydgård
d284ad4496 Remove warning for bad CHDs 2024-03-16 20:52:21 +01:00
Henrik Rydgård
c5791764d8 Make the i18n T function use std::string_view
Buildfixes, crashfixes

One more

Android buildfix

Buildfix Qt
2024-02-12 18:44:39 +01:00
Henrik Rydgård
1fbf685504 Avoid vertically merging the two main framebuffers, even if FramebufferAllowLargeVerticalOffset is on. 2024-02-04 11:26:20 +01:00
Henrik Rydgård
d4a71a2268 More fixes 2024-02-03 00:20:08 +01:00
Henrik Rydgård
d6b109b115 Fix crash when loading a ppdmp while another ppdmp is displaying 2024-02-02 13:55:38 +01:00
Henrik Rydgård
e226ef6bd1
Merge pull request #18814 from hrydgard/hide-extracted-iso-warning
Hide the extracted ISO warning if ppsspp-index.lst is present.
2024-02-02 11:51:15 +01:00
Henrik Rydgård
ca6e0f4f57 Hide the extracted ISO warning if ppsspp-index.lst is present. 2024-02-02 11:21:53 +01:00
Henrik Rydgård
a07a2e445b Fix event order and some logic. Can now change skip buffer effect while running in background. 2024-02-01 23:26:36 +01:00
Henrik Rydgård
337de548b8 Fix crash when toggling Skip buffer effects while paused 2024-02-01 19:59:01 +01:00
Henrik Rydgård
3831ec1921 Warn the user about bad CHDs
If they're not created with "chdman createdvd", they will perform really
badly.
2024-01-31 22:15:47 +01:00
Henrik Rydgård
ea180e54c9 Fix some "double-binds" of the backbuffer.
These are already eliminated by the queuerunner, but better not to
generate them in the first place, for easier sanity checks.
2024-01-30 10:44:18 +01:00
Henrik Rydgård
7920d3a44b Release all keys on pause.
Fixes #18767

Not sure about merging for the 1.17 series though, maybe someone really
likes to bring up the pause menu briefly while holding a direction.. we
could actually handle that with some extra logic.
2024-01-29 18:41:43 +01:00
Henrik Rydgård
f9fff4227f
Merge pull request #18775 from hrydgard/gameinfocache-fixes
GameInfoCache: Keep properly track of what's already loaded, lots of cleanup
2024-01-28 17:17:33 +01:00
Henrik Rydgård
a5fafb8321 Fix logic, cleanup 2024-01-28 16:56:07 +01:00
Henrik Rydgård
884c366692 Fix some longstanding issues with the GameInfoCache and optimize away double work 2024-01-28 16:23:27 +01:00
Henrik Rydgård
7d99b6c1bc Add volume slider for retroachievements 2024-01-28 13:56:46 +01:00
Henrik Rydgård
622aeaab6d Hopefully robustify some logic in EmuScreen enough 2024-01-24 00:06:01 +01:00
Henrik Rydgård
ec411e0ecb Change when we call rc_client_do_frame to something that matches libretro
There's conflicting advice on when to do it, but to avoid people testing
their cheats twice, let's match as closely as we can.

This means that 30hz games will only have the callback run at 30hz.

The duplicate frames option may interfere, just like it may on libretro.
2024-01-22 19:35:26 +01:00
Henrik Rydgård
5bf6625740 Translation string 2024-01-20 23:11:30 +01:00
Henrik Rydgård
55adcb1a13 Warn the user if they try to run an extracted ISO, with a very in-your-face message.
Fixes #18735
2024-01-20 23:01:08 +01:00
Henrik Rydgård
7feae30c41 Move the crash and FPS overlays to DebugOverlay.cpp/h 2024-01-19 16:52:42 +01:00
Henrik Rydgård
902b73698f Slight improvement to extra assert info (set special info on pause screen) 2024-01-18 23:00:43 +01:00
Henrik Rydgård
e5339bdaa2 Fix issue on EmuScreen after a crash 2024-01-18 22:08:33 +01:00
Henrik Rydgård
bfe16fdf4e EmuScreen: Need to call UIContext::BeginFrame at some point in all cases. 2024-01-18 18:49:16 +01:00
Henrik Rydgård
1304d04161 Fix a particular type of race condition in file dialog requests
It seems to be possible for a user to back out of a screen before
receiving the "dialog completed" callback on Android, in which case
things pointed to by the callback might be gone.

In this case, it's better to simply not call the callback, rather than
crashing.

This is accomplished by assigning "Tokens" to screens that cause
requests, and in ~Screen, invalidate any pending requests belonging to
that token.
2024-01-18 12:25:55 +01:00
Henrik Rydgård
3967d074bf EmuScreen: Use CLEAR instead of DONT_CARE to help the render pass merger.
Should fix #18720

We need to annotate store mode properly too, in order to merge passes
that load with DONT_CARE.

The reason it's a problem that we fail to merge renderpasses is that old
Mali drivers get things in a terribly wrong state if you submit an empty
renderpass.
2024-01-18 09:44:40 +01:00
Henrik Rydgård
cbb4236cd8 Vulkan: Attempt to fix some more shutdown race conditions, simplify. 2024-01-17 14:49:49 +01:00
Henrik Rydgård
739f22f721 Add a possibly missing check in EmuScreen 2024-01-15 10:47:16 +01:00
Henrik Rydgård
acd719448e Wrap g_Config.bRunBehindPauseMenu behind a function, so we can add conditions 2023-12-30 21:50:20 +01:00
Henrik Rydgård
4e90d82e23 Fix sceKernelExitGame (regressed with the run-in-background stuff) 2023-12-30 11:58:29 +01:00