Commit Graph

841 Commits

Author SHA1 Message Date
a9495e57fa GameSettings: Enable perf queries to fix sun in Need for Speed: Most Wanted 2020-12-30 03:43:33 +01:00
f3b8a985e7 Patches for Resident Evil 2/3 audio issues
These games are erroneously zeroing buffers before they can be fully copied to ARAM by DMA. The responsible memset() calls are followed by a call to DVDRead() which issues dcbi instructions that effectively cancel the memset() on real hardware. Because Dolphin lacks dcache emulation, the effects of the memset() calls are observed, which causes missing audio.

In a comment on the original bug, phire noted that the issue can be corrected by simply nop'ing out the offending memset() calls. Because the games dynamically load different .rel executables based on the character and/or language, the addresses of these calls can vary.

To deal generally with the problem of code being dynamically loaded to fixed, known addresses, the patch engine is extended to support conditional patches which require a match against a known value. This sort of thing is already achievable with Action Replay/Gecko codes, but their use depends on enabling cheats globally in Dolphin, which is not a prerequisite shared by patches.

Patches are included for every region, character, and language combination. They are enabled by default.

The end result is an approximation of the games' behavior on real hardware without the associated complexity of proper dcache emulation.

https://bugs.dolphin-emu.org/issues/9840
2020-12-29 14:24:46 -08:00
28b82615a7 GameSettings: Patch for freezing in Gladius (GLSE64)
This game can deadlock the CPU and GPU by setting FIFO breakpoints too infrequently, provided the CPU gets too far ahead, as can happen under Dolphin due to timing inaccuracies. The game never clears breakpoints, and it will skip setting them if the previous one has not been hit by the GPU. If the CPU gets far enough ahead it will reach the FIFO high water mark and trigger an overflow interrupt, causing the render thread to be suspended. The GPU will make forward progress until it hits the last set breakpoint. However, if the distance between that breakpoint and the FIFO write pointer is greater than the low water mark, then the GPU will never generate an underflow interrupt and the render thread will never be resumed. This patch forces the game to update the breakpoint unconditionally and has been tested on real hardware with no apparent ill effect.

This patch covers the US release (GLSE64), but there are three more (GLSD64, GLSF64, GLSP64) that will likely require similar patches.
2020-12-21 12:03:30 -08:00
90ae9b81ac GameSettings: Set Safe Texture Cache for Pitfall: The Lost Expedition and Pitfall: The Big Adventure
1024 is not enough. 2048 works just fine.
Fixes stuttering Atari 2600 emulation https://bugs.dolphin-emu.org/issues/12347
2020-12-17 18:13:05 -05:00
5a5c22dc6c Merge pull request #9329 from smurf3tte/ffcc
GameSettings: Disable "Store EFB Copies to Texture Only" for Final Fantasy Crystal Chronicles
2020-12-15 04:25:19 -05:00
b7f6335ae3 GameSettings: Disable "Store EFB Copies to Texture Only" for Final Fantasy Crystal Chronicles
This fixes the crash at Goblin Wall: https://bugs.dolphin-emu.org/issues/9915

A patch (for the US release only) that fixes the game's buffer overrun bug is included as an alternative with lower performance cost. It is disabled by default.
2020-12-14 22:03:08 -08:00
91187905e8 GameSettings: Add patch for Monster High: Ghoul Spirit (SAOE78/SAOEVZ)
The first call to GXCopyDisp() corrupts game data, but on real hardware it isn't observed thanks to the data cache. Skipping the call works too, preventing a crash on boot.

This patch is enabled by default.
2020-12-11 12:22:13 -08:00
36ecfdd6b5 GameSettings: Enable compatibility patches by default
This enables patches for game-breaking problems by default.

My criterion for which patches to select was that the patch
has to make the game's behavior closer to how the game acts
on console. So workarounds for Dolphin not emulating caches
accurately are enabled by default, but not things like
Twilight Princess's minimap speedhack or patches for
disabling memory card checks in Pokémon games.
2020-12-11 10:08:24 +01:00
2b0bed8a7e Dragon Quest 25th Anniversary Collection INI changes
This game requires EFB turned off, otherwise every game will black screen, and it requires Safe Texture Cache to Safe, otherwise the cursor in game won't update, making it really hard to navigate the menu's
2020-11-03 20:33:01 +00:00
f815ff2060 Game INI Changes
EFB black screen INI added, XFB purple screen INI added, dualcore stuttering INI added.
2020-11-03 20:33:00 +00:00
83b80b289b Merge pull request #9134 from SpaceXCheeseWheel/patch-1
Shaders: Remove AsciiArt shader
2020-10-22 01:14:01 +02:00
47059f6388 Merge pull request #9113 from ShiftaDeband/ini/FixPSOTrials
Add .ini configuration files for Phantasy Star Online Episode I&II Trial Edition and Episode III Trial Edition
2020-10-20 15:34:39 +02:00
b26c2e7adb Merge pull request #9094 from Pokechu22/wii-fit-ini-note
Add INI note for Wii Fit and Wii Fit Plus
2020-10-20 02:07:52 +02:00
G
62bd79e70d Remove AsciiArt shader
This shader has been rendered nonfunctional due to the removal of the function SampleFontLocation, which was never implemented in VideoCommon. The last reference to SampleFontLocation was located in the OGL video backend. It was removed in this commit: f039149198 (diff-24125a6c968a8aca9cadd977d4b9d68f), where many functions were moved to video common, among other things.

This shader should be removed so it does not confuse users with the error that it causes. Alternatively, it could be rewritten so it is compatible with modern versions of Dolphin. I am not familiar with GLSL, so this is currently beyond my skill set.
2020-10-05 21:44:56 -07:00
0295d470b1 ControllerEmu: Increase "IMUPointer" "Total Yaw" default value to match that of regular "Point" settings.
Removed "Total Yaw" from included Wii remote input profile to take on the default value.
2020-09-28 18:09:34 -05:00
3ca9827725 Update DPSJ8P.ini 2020-09-28 01:09:06 -04:00
f9a822abc8 Update DPSJ8P.ini 2020-09-26 02:41:25 -04:00
b6dac22267 Create DPSJ8P.ini 2020-09-26 02:21:20 -04:00
ee6552cdfb Create DPOJ8P.ini and add modem bypass code 2020-09-26 02:16:28 -04:00
9430d5ff90 Create DPOJ8P.ini 2020-09-26 02:06:00 -04:00
97181f0c51 Properly fix News Channel loading screen 2020-09-23 21:34:50 -04:00
fc65057e05 Add built-in profile for Wii Remote with MotionPlus IR 2020-09-18 06:32:46 -04:00
31083e10df GameSettings: Fix Monster Hunter Tri bloom patches 2020-09-17 16:58:45 -04:00
6707ca2ebd GameSettings: Enable FPRF for Interactive Multi-Game Demo Disk: November 2003
This disc contains an F-Zero GX demo.
2020-09-17 16:58:28 -04:00
0b501c8e9f GameSettings: Set Texture Cache Accuracy to "Safe" for Rockman EXE Transmission 2020-09-17 16:47:59 -04:00
828a5172e4 GameSettings: Set Texture Cache Accuracy to "Medium" for Far Cry Vengeance 2020-09-17 16:47:59 -04:00
002aad71e3 GameSettings: Disable MSAA for Pokemon Snap 2020-09-17 16:47:59 -04:00
e08e75a385 GameSettings: Disable MSAA for Pikmin (Wii) 2020-09-17 16:47:59 -04:00
f18f8db937 GameSettings: Disable "Immediately Present XFB" for Judge Dredd: Dredd vs. Death 2020-09-17 16:47:59 -04:00
9867c45eb8 GameSettings: Add 2D rendering patches for MVP Baseball 2004 and MVP Baseball 2005
Thanks to hthh for figuring out this dcache issue!
2020-09-17 16:47:59 -04:00
c4bc90aca9 GameSettings: Enable MMU for Watchever Channel 2020-09-17 16:47:59 -04:00
0d405e5e9c GameSettings: Disable "Skip EFB Access from CPU" for Resident Evil Code: Veronica X (PAL) 2020-09-17 16:47:59 -04:00
14dad37ceb GameSettings: Set Texture Cache Accuracy to "Safe" for 10 Minute Solution 2020-09-17 16:47:59 -04:00
1efa50a90a GameSettings: Disable "Defer EFB Copes to RAM" and "Immediately Present XFB" for Super Paper Mario 2020-09-17 16:47:59 -04:00
03b2d6639e GameSettings: Disable "Store EFB Copies to Texture Only" for EA Sports Active 2 2020-09-17 16:47:59 -04:00
9f5227d123 GameSettings: Disable "Defer EFB Copes to RAM" for Star Wars - Rogue Squadron III - Rebel Strike 2020-09-17 16:47:59 -04:00
778aaeb0e8 GameSettings: Set Texture Cache Accuracy to "Medium" for Driver: San Francisco 2020-09-17 16:47:59 -04:00
ef83c41b95 GameSettings: Set Texture Cache Accuracy to "Safe" for Tiger Woods PGA Tour 07 2020-09-17 16:47:45 -04:00
1d29d6638a Add INI note for Wii Fit and Wii Fit Plus
Refer to bug 11858 for details.
2020-09-17 12:46:41 -07:00
d0be5678ca GameSettings: Set Texture Cache Accuracy to "Medium" for UFC Personal Trainer: The Ultimate Fitness System 2020-09-17 07:04:03 -04:00
31b3ea75e7 GameSettings: Disable "Store EFB Copies to Texture Only" for Our House: Party! 2020-09-17 07:03:00 -04:00
71267cb055 GameSettings: Force 1x IR for Mario Tennis and Super Smash Bros. 2020-09-17 07:02:17 -04:00
620044ea05 GameSettings: Disable "Immediately Present XFB" for Brunswick Zone: Cosmic Bowling 2020-09-17 07:02:01 -04:00
eb44aa27a8 GameSettings: Disable "Force Texture Filtering" for Spider-Man: Web of Shadows 2020-09-17 07:02:00 -04:00
bd89bc969a GameSettings: Set Texture Cache Accuracy to "Safe" for all MSX VC titles 2020-09-17 06:59:45 -04:00
13697045f7 GameSettings: Disable "Store EFB Copies to Texture Only" for News Channel 2020-09-17 06:58:11 -04:00
712dd8f4d0 GameSettings: Fix GameID comment for Super Mario Bros. (Brawl VC) 2020-09-17 05:09:17 -04:00
49e6478817 GameSettings: Add patches for Pokémon Colosseum and Pokémon XD to circumvent the check that the save being overwritten matches the last known save. 2020-08-24 19:32:57 +02:00
476290e806 INI updates 2020-07-24 22:47:11 +02:00
5fc7946113 GameSettings: SafeTextureCacheColorSamples for SEU and SEV
Works around a rendering error in Retro City Rampage (disc) and
Shakedown: Hawaii.  Fixes redmine issues #12197 and #12198.
2020-07-23 16:11:46 -07:00