Work around a dcache issue by preventing the game from doing
something pointless.
The game's DVD read function writes 0x87654321 to the entire read
buffer and 0x12345678 to the last 4 bytes. It then calls DVDReadAsync()
and without waiting for the read to complete at all, it checks if the
last 4 bytes are still 0x12345678. If they are, then the game fails.
The check always passes on console because DVDReadAsync() calls
issueCommand(), which calls DCInvalidateRange(read_buffer) (dcbi).
Dolphin cannot emulate this without an extremely significant
performance hit.
Forcing people to use hacks is a bad idea in general, and there are
two practical problems with doing it for immediate XFB in particular:
1. It breaks the GC IPL, which some users run when launching games.
2. Competitive players don't necessarily want the lowest possible
latency - they might want the latency that's the closest to console,
so if they're playing locally with a low-latency monitor, they might
not want to use immediate XFB. (This isn't a theoretical concern -
I've seen Melee players want to increase their latency.)
Besides, it feels arbitrary that just these five specific games should
have immediate XFB forced on.
This reverts commit 1fc910b3ea,
replacing the old INI setting EFBScale with a new INI setting
called InternalResolution, which has a simpler mapping:
| EFBScale | InternalResolution
----------------- | -------------------- | --------------------
Auto (fractional) | 0 |
Auto (integral) | 1 | 0
1x | 2 | 1
1.5x | 3 |
2x | 4 | 2
2.5x | 5 |
3x | 6 | 3
4x | 7 | 4
5x | 8 | 5
6x | 9 | 6
All the fractional IRs were removed in f090a943.
Without virtual xfb, the game will show distorted graphics once leaving
the title screen. This adds an INI file to make the game playable.
The wiki page for this game also notes the need for virtual xfb.
Wii.Widescreen is a setting that cannot be changed on the fly after
emulation has started, so anything booted after the initial title
will have an unexpected aspect ratio.
We can just set Video_Settings.AspectRatio instead, which *can* be live
changed, since it doesn't involve messing with the SYSCONF at any time.
This is also much closer to the behaviour of the Wii U, which
configures the DMCU to force 4:3 transparently, instead of doing it the
intrusive way (touching the SYSCONF).
- F.ini: PR #4189 removes the need for 1x IR according to JMC
- GWO.ini: Just force integral resolution, not auto resolution
- GALP01.ini: I have no idea why EFBScale would be forced here
- GINX69.ini: I think JMC said it's fixed, but I can't find his post...
- SNS.ini: https://bugs.dolphin-emu.org/issues/9891
- P INIs: https://bugs.dolphin-emu.org/issues/9938
Set EFBtoTextures=False, fixes issue #9942 from Ocarina of Time, makes Link preview visible in Equipment screen, with EFB to Textures Only enabled the preview stays black, rather than showing Link's current equipment.
Set EFBtoTextures=False, fixes issue #9942, makes Link preview visible in Equipment screen, with EFB to Textures Only enabled the preview stays black, rather than showing Link's current equipment.
All the inline comments from the netplay code were removed because they
apparently took up space in game memory (They were maxing out gecko
codes).
"Increase input timing accuracy" was made into its own code entry.
"Netplay Safe Kill Music" code has been updated to prevent desyncs.
BMX XXX can detect forced Progressive Scan in Dolphin but the game will not be playable, the emulator will freeze.
On an original GameCube, GC-Forever reported that "Game does not support component video output.".
By default, it's better to disable the forced Progressive Scan feature on this game to make it playable and also not stuck in a broken startup.
The Legend of Zelda: Ocarina of Time (Master Quest) needs EFB to RAM
for the pause menu background to not be black and for Link to show up
in the pause menu. These are the two most visible issues without EFB
to RAM enabled.
This is consistent with the GameINI for the Collector's Edition
version (PZL).
Just because it was the same game, released in diffrent regions
at around the same time doesn't mean they use the same version
of the Virtual Console emulator.
The previous INIs were based of testing of the US release so I've
move them to 6 letter INIs only effecting the US release. I've
also added a few more and added a few Inis for the few PAL games
that I could confirm also didn't require EFB2Ram.
Updates for Sonic Adventure 2 Battle, Surf's Up, Drawn to Life The Next
Chapter, Boogie, Boogie SuperStar, Quantum of Solace, Tiger Woods PGA
Tour 08, Call of Duty: Black Ops.
Fixes issues 9123, 9191, 9204, 9205, 9206, 9050, 9183.
091db36 added a new delay for disc commands in an attempt to fix issues.
It fixed Sonic Riders crashing after the third level... or so we thought.
091db36 also happened changed the order disc reads happen in so that the
data is copied to memory before the emulated delay is finished. This was
inaccurate and caused an audio problem in Resident Evil 3, leading to the
old order being restored in 8cc6e5c. Now that the order is correct,
Sonic Riders is broken again, despite 091db36's delay still existing.
We're more or less back to square one - nobody knows what's broken, and
nobody knows how to fix it. This commit restores SUDTR to Sonic Rider's
game INI so that it'll work out of the box in 5.0 just like in 4.0.
This is mainly a virtual console update. Removes progressive scan option
from snes, genesis, etc. games since it is no longer needed for proper
speed. Adds gameinis for Neo geo, Arcade and missing gameinis for
genesis.
Main Stick is changed to Control Stick and C-Stick is changed to C Stick.
A new ui_name variable is added to ControlGroup so that the UI strings
in DolphinWX can be updated without breaking backwards compatibility
with config INIs and other things that use names as IDs.
Lost Levels NES VC game was missing an INI file and prevented it from
displaying anything but a black screen. This seems to get the graphics
working.
Played though 1-2 without issue.
While going through and testing various NES VC games, I noticed Mega Man
5 was just displaying a black screen but the sound and button inputs
were working as expected. Turns out, there is no INI file for that game
id. Copying and renaming Mega Man 4's INI file appears to be enough to
get the game going.
Stereoscopy values have been tested and a convergence value of 26 is ideal for placing the characters on the convergence plane. No perceived issues with disabling monoscopic shadows.
Completely rewritten Global Melee Netplay Settings. The individual codes can be found here (http://pastebin.com/38CFazXq). The previous Global Melee Netplay Settings have some issues such as not being able to change the random stage select, various crashes in 1P mode, friendly fire being off by default, and a general lack of new features due to its age. Needs to be tested for stability.
Fixes issues 8713 and 8674. Also disables scaled efb copies by default
for New Super Mario Bros to take advantage of the recent efb to texture
spinning coin fix.
Fixes issue 8637 by replacing SkipIdle=0 with SyncOnSkipIdle = False.
Updates gameinis for Resident Evil Archives: Resident Evil Zero, Pokemon
Snap and fixes a mistake in Baldur's Gate: Dark Alliance.
Gameinis are added/updated for:
Shrek SuperSlam, Disney's Donald Duck Goin' Quackers, The Fairly
OddParents: Shadow Showdown, Hot Wheels World Race, MySims Agents, Punch
Out, Alien Syndrome, My Word Coach, Secret Files Tunguska and Secret
Files 2 Puritas Cordis.
Having settings for each game in more than one file is redundant.
Now, region-free INIs are now only for settings, and region-specific
INIs are only for AR codes and patches. Exceptions are made for
titles that share the first three characters of their IDs with
unrelated titles (mostly unlicensed titles and Triforce titles).
Removes STC from Star Wars: Rogue Squadron III: Rebel Strike: Limited
Edition Bonus Disc (Demo). Removes efb to ram setting from Tiger Woods
PGA TOUR 2005, Tiger Woods PGA TOUR 06, Mission: Impossible Operation
Surma and Terminator 3: The Redemption since it is no longer needed.
Sets Army Men Air Combat and Pac-Man World 3 to LLE audio due to audio
issues with HLE (slow audio). Corrects some mistakes in F zero (virtual
console) and The Magic Obelisk ini files. Finally it removes comments
that are simply stating the obvious and references to revs that games
were tested with.
I had moved Hyrule Field Speed Hack to RZDE01r0.ini and
Hyrule Field Speed Hack v2 to RZDE01r2.ini...
But according to issue 8318, v2 is actually made for r0.
This will make some game INIs cover more regions.
For INIs with AR codes or patches, I manually created a region-free
file without region-specific data while keeping the original.
It removes settings that were removed from dolphin to clean up the
database. Modifies some gameinis to use the new 3 letter gameid. Adds
Hyrule field speedup hack for Japanese and American version of Twilight
Princess for wii. Removes efb to ram from Twilight Princess, Tony Hawk's
Pro Skater 3, Tony Hawk's Pro Skater 4, Prince of Persia Forgotten
Sands, Mario Superstar Baseball, Okami, FFCC the Crystal Bearers and The
Simpsons due to the recent dolphin changes. Enables efb to ram for The
Magic Obelisk because it needs it and some more minor changes.
Add Hyrule Field Speed Hack v2 by TheWearyGamer for the wii us version
of Zelda Twilight Princess. Enable mmu and disable anti-aliasing in
Fatal Frame IV: Mask of the Lunar Eclipse fixing issues 8108 and 8109.
Removes speedhacks from metroid prime 1 and 2, and fire emblem series
and update old notes for metroid prime. Capitalize dolphin in the few
inis that weren't from the previous commit.
Capitalizes LLE audio and changes star wars rogue leader and rebel
strike emulation state, addition of Rabbids Go Home and Bad Boys II in
the database, and enables mmu in Need for speed most wanted (gc) to
avoid crashes during loading a stage.
Includes gameinis for the Pal and Ntsc region of TurboGrafx-16, some
Commodore 64 gameinis, removes old notes about mmu games, enforces
virtual xfb in games fixed by PR #1818, updates Star Wars: Rogue Leader
and Star Wars - Rogue Squadron III - Rebel Strike
according to the zfreeze pr updates, MySims Kingdom is added and
Sakura Wars: So Long, My Love is updated.
Fixes issues 8091 and 8086.
According to GameTDB's database, this is not a known title ID. It was likely added by mistake. For those wondering, DVDX doesn't use this or it would be in GameTDB's database because they also keep track of homebrew, and Dolphin doesn't have INIs for homebrew/hacks anyway.
Update/addition of Madden NFL 06 (gc), Frogger Beyond (gc), DONKEY
KONGA (gc), Madden NFL 2005 (gc), NBA STREET Vol.2 (gc), Spider-Man
(gc), Star Wars: Rogue Leader (gc), NO MORE HEROES (wii), Super Smash
Bros. Brawl (wii), The Simpsons Game (wii), Suzumiya Haruhi no Heiretsu
(wii).
Fixes issues 7978, 7894, 7883.
Updates for Mario Smash Football, Medabots Infinity 4th Submission,
Super Mario Sunshine, Tom Clancy's Splinter Cell Double Agent, Sonic
Riders, Bigfoot - King of Crush, Turbo: Super Stunt Squad, Kid
Adventures Sky Captain, Toy Story 3.
Fixes issues 7868, 7799, 6586.