Commit Graph

129 Commits

Author SHA1 Message Date
Henrik Rydgård bae1a7c7f9 Add "FastEmulatedGPU" compat flag. For games like Outrun that have intermittent slowdowns on hardware, it's unnecessary under emulation. 2026-02-26 10:44:16 +01:00
Henrik Rydgård 3dc7aa4a65 Add workaround for the Silent Hill: Shattered Memories. Thanks fcrwr!
Fixes #13781
2026-02-23 15:19:03 +01:00
Henrik Rydgård 202259eb09 Add a quick workaround for Mahjongg Artifacts framebuffer expiration.
Fixes #15828, well at least except for savestate support.
2026-02-22 23:42:13 +01:00
Henrik Rydgård 475390a968 Add workaround for Tales of Phantasia X.
Fixes #21162
2026-01-29 23:16:51 +01:00
Henrik Rydgård 60a065b242 Make the Brave Story hack safer, hide it behind a compat flag. 2026-01-23 23:39:11 +01:00
Henrik Rydgård 34473fc621 Add a compat flag to map some extra memory at address 0.
Can be used to work around certain types of crashes without having to
disable fast memory.
2026-01-23 15:14:15 +01:00
Henrik Rydgård f14c4dfb90 Add a compatibility flag to apply sum2012's workaround for Ghost Recon: Predator
I'm not confident in the behavior here, so let's change it only for this
game for now.

Replaces #20892

Fixes #20856
2025-10-21 15:23:12 +02:00
Henrik Rydgård e745ab16e4 Merge branch 'master' into IgnoreEnqueue 2025-08-15 11:30:10 +02:00
Henrik Rydgård e29ba8f471 Add a warning in games that are affected badly by savestate timewarps 2025-08-05 17:17:20 +02:00
Henrik Rydgård 266a6a33be Add workaround for scePsmf LLE not working with Dragon's Lair 2025-06-07 15:05:33 +02:00
Henrik Rydgård e961c1ed96 Add support for compat flags that control DisableHLE 2025-04-03 20:04:04 +02:00
Henrik Rydgård 8d6593b92b Remove compat flag AllowDelayedReadback 2025-01-05 09:18:13 +01:00
Henrik Rydgård c5ad81e3d5 Add DepthRaster.cpp/h. Rasterize depth rectangles, some triangles 2024-12-21 14:27:53 +01:00
Henrik Rydgård 419c329b06 Show active compat flags on crash screen 2024-12-10 01:43:44 +01:00
LunaMoo 864a4b38aa Work around Brothers in Arms speed issue via compat hack (#18513)
Co-authored-by: Henrik Rydgård <hrydgard@gmail.com>
2024-09-18 09:51:07 +00:00
Henrik Rydgård 16a56aa18b Port over LunaMoo's compat flag for The Warriors video playback
This reverts to the old behavior before we started parsing mpeg headers,
that is, in 558b462 which is part of #8867.

LunaMoo has this under "HackFixVideo" in his build.

See #8991. This doesn't really "fix" that, but works around it.
2024-09-11 14:32:53 +02:00
Henrik Rydgård c7546dfe8d Add compat.ini setting for Sakura-Sou no Pet na Kanojo
See issue #15224
2024-09-10 19:28:49 +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
LunaMoo 1f21ebdff3 Change GOWFramerateHack30 to FramerateHack30 and workaround problems in:
- Blitz: Overtime,
- Brian Lara 2007: Pressure Play.
2024-06-08 18:02:44 +02:00
Lubos e76a5b1d3d OpenXR - Gran Turismo projection hack 2024-05-10 19:40:13 +02:00
Henrik Rydgård 2cd7b5cceb Hacky compat workaround for Resistance's ad-hoc mode
Slicing the slow memcpy calls messes up some timing so it crashes. Too
hard to fix for 1.17.1, so we do this :(
2024-02-04 00:43:48 +01:00
Henrik Rydgård a6f041568b Allow merging framebuffers vertically like the old Juiced 2 fix.
Fixes Tokimeki Memorial 4 rendering.

Fixes #6379, see comments.
2023-12-30 22:40:07 +01:00
Henrik Rydgård 437b292b7d Tactics Ogre: Remove a redundant readback operation it performs a lot. 2023-12-21 12:37:34 +01:00
Henrik Rydgård 4ef54169af Add a compat.ini setting to allow delayed GPU readbacks, for experimentation. 2023-12-02 11:34:59 +01:00
sum2012 92c1eb4efa Add it to option
Also fix Sengoku Musou 3Z Special DLC
2023-10-23 19:38:09 +08:00
sum2012 60ddac0048 Add UMDReadSpeed in compat.ini
Fix #11062
2023-10-19 06:21:05 +08:00
Henrik Rydgård 16d073c4ad Add compat flag to not load CLUTs from old framebuffers 2023-08-24 10:30:37 +02:00
Henrik Rydgård 731d9b6d59 Merge branch 'master' into Font-ltn12-hack 2023-08-17 14:47:46 +02:00
Lubos 6e10f20f8b OpenXR - Tony Hawk mirroring hack better 2023-07-02 20:29:59 +02:00
Henrik Rydgård 9a3ff69091 Workaround for some SOCOM game's misuse of CLUT8 textures.
Emulating this correctly would be possible too but would only work at 1x
rendering resolution.
2023-04-17 09:34:26 +02:00
Lubos de462f481f OpenXR - Disable stereo in Motorstorm 2023-04-01 19:48:53 +02:00
Henrik Rydgård b13c5c2d1b Add compat setting to force using maximum depth resolution
Fixes #17014

Even if our depth-testing-equal heuristic believes that the game needs
lower depth resolution.

This removes some depth-fighting artifacts (that are present on the real
PSP, but nice to avoid) in Outrun, Split/Second and Cars: Race-o-Rama -
essentially reverting these to the behavior we had before the heuristic.

(The heuristic is good though - it means less compat.ini hacks going in
the other direction).

In the case of Outrun, this relies on two passes that pass exactly the
same vertex coordinates twice resulting in the exact same final
geometry. This is actually guaranteed by the spec if the vertex math is
exactly the same and "invariant" is set on the position output, though
I guess you never know.. Haven't seen any issues at least.

Also sneak in disabling some validation messages from using extra Vulkan
validation layers other than the default.
2023-03-26 00:27:58 +01:00
Henrik Rydgård 1071d0808c Undo Daxter's rotation of the analog input. See #17015
I think this is quite a bit better actually. Appears to be exactly 15 degrees.
2023-02-27 11:10:47 +01:00
Henrik Rydgård 62a6f351d5 Initial work on depth copies 2023-02-15 07:35:07 +01:00
Henrik Rydgård 236611ac16 Initial implementation of depth readback for Syphon Filter. Fixes the lens flares. 2023-02-04 13:54:57 +01:00
Henrik Rydgård b118ffadea Add workaround for hung music notes in Rockman Dash 2
Fixes #11442. Or at least should, I haven't tested this, just followed the
discussion in the issue.

According to this issue, this is a game bug that happens on real hardware
too, due to a lousy job porting the game to the PSP, most likely, which has
different ADSR (note envelope) behavior.
2023-01-12 11:33:59 +01:00
Lubos 56443a007c OpenXR - Force flat mode for Madden NFL games 2022-12-26 15:57:29 +01:00
sum2012 d11418d94e Fix tab bug 2022-12-15 20:11:47 +08:00
sum2012 1386aad04a Merge branch 'master' into Font-ltn12-hack 2022-12-15 20:06:33 +08:00
Henrik Rydgård 7aab096791 LittleBigPlanet: Compat flag to work around smoke rendering problem
See #16030

Hopefully just for the release. There might be a tweak of our heuristics
that can fix it too, but much riskier at this point.
2022-12-07 13:29:47 +01:00
Henrik Rydgård 8567416be6 Force "Lower resolution for effects" off in Ratchet & Clank and a few other games
It breaks or just makes things look terrible in these games, so no
reason to allow it.

An alternative for this would be to remove the option entirely, and only
use it though the ForceLowerResolutionForEffectsOn flag instead.
2022-12-03 23:35:54 +01:00
Henrik Rydgård 21647cd3c1 Blind workaround for Shining Ark circle button problem
Seems the game might not handle the case of confirm button being set to
cross properly, so force it to circle if this game is running.

Fixes #15663 (hopefully..)
2022-11-27 23:32:43 +01:00
Henrik Rydgård 39f2ddd128 Add compat flag / bug check for games on old Adreno/GL affected by #16015
See #16015

Partly derived from https://github.com/hrydgard/ppsspp/compare/master...unknownbrackets:ppsspp:adreno-deadlock

But this one surgically activates it only for the known affected games, to avoid any additional
performance regressions in the release.

Entirely untested.
2022-11-24 10:05:35 +01:00
Henrik Rydgård 9482578fbb Twinbee Portable: Add config flag to avoid the system languages the game doesn't work with 2022-11-13 23:37:56 +01:00
sum2012 4e551202ad Merge remote-tracking branch 'upstream/master' into IgnoreEnqueue 2022-11-13 15:59:54 +08:00
Lubos 307acaa9b7 OpenXR - View matrix identity check breaking several games fixed 2022-11-09 19:25:08 +01:00
Henrik Rydgård 95cb358fbf Change the "Retain changed textures" option into a compat.ini option.
This option benefits so few games and can hurt others, so that it's
better that we specifically enable it for known cases like Popolocrois.
2022-11-06 17:28:50 +01:00
sum2012 56035d0c23 Ignore stack address already used in Metal Gear Acid 2 Special Card
Word around #10906
2022-10-23 18:32:51 +08:00
Luboš Vonásek f4d5c59b2e OpenXR - Refactor compatvr.ini file (#16270)
* OpenXR - Compat GTA games

* OpenXR - Compat 0-9 games

* OpenXR - Compat A games

* OpenXR - Compat B games part 1

* OpenXR - Compat B games part 2

* OpenXR - Compat C games part 1

* OpenXR - Compat C games part 2

* OpenXR - Compat D games

* OpenXR - Compat E games

* OpenXR - Compat F games

* OpenXR - Compat G games

* OpenXR - Compat H games

* OpenXR - Compat I games

* OpenXR - Compat J games

* OpenXR - Compat K games

* OpenXR - Compat L games

* OpenXR - Compat M games

* OpenXR - Compat N games

* OpenXR - Compat P games

* OpenXR - Compat R games

* OpenXR - Compat S games

* OpenXR - Compat T games

* OpenXR - Compat U games

* OpenXR - Compat V games

* OpenXR - Compat W games

* OpenXR - Compat games sorting out part 1

* OpenXR - Compat games sorting out part 2

* OpenXR - Compat games sorting out part 3

* OpenXR - Compat games sorting out part 4

* OpenXR - Compat games sorting out part 5

* OpenXR - Compat games sorting out part 6

* OpenXR - Compat list description

* OpenXR - Support getting compatvr.ini from filesystem
2022-10-22 16:16:23 +02:00