This was causing the game to output thousands of FPS during the loading screen when it would run uncapped if Immediately Present XFB was enabled.
Please see Redmine 13447 for reference.
This is another one of those games that has an optional screenshot
feature where the images end up all black if you have Store EFB Copies
to Texture Only turned on. Like for other such games, let's not force
Store EFB Copies to Texture Only off, since it's a large performance
impact for a feature most players won't use.
There's one wrinkle here. As part of teaching the player how to take
screenshots, the game forces the player to take a screenshot before it
lets them progress in the story. However, the game doesn't care what's
in the screenshot, so you can progress just fine even if Store EFB
Copies to Texture Only is turned on. I personally tested it.
For buttons and some character icons the game loads palleted PNGs and
tiles the pallet indices directly into C4 textures but fails to take
into account that PNG and C4 use opposite nibble orders. This causes
adjacent pixel columns to be swapped, see issue 13370.
Also disable Immediate XFB for the Japanese release. It has the same
black screen and flickering issues as the other regions.
These games seem to constantly have unused vertices, and this is worst shown in the Shadow Pokemon purification cutscene. The Shadow Pokemon purification cutscene is even worse on XD with forced single core mode, as instead of having FPS dropping with VPS staying 60ish, it will drop both, resulting in audio stuttering. Turning on CPUCall seems to have a 7/8 reduction of draw calls for that cutscene (~800 -> ~100), doubling performance. Many other areas of the game seem to benefit from this setting too, having some kind of performance boost.
See https://bugs.dolphin-emu.org/issues/13248. This is needed for the menus to work properly (not run at 1FPS and render incorrectly). Additionally, immediate XFB causes flickering.
Cubivore had an old issue before Hybrid XFB was merged involving the screen shifting left. Immediate XFB actually brings the issue back. It should be disabled for this title.
These games greatly benefit from CPU Culling, and there isn't much reason
not to just blanket enable it for all users. There is no case where you'd
want it disabled.
A call to GXCopyDisp(), made once before the title screen for no
apparent purpose, is causing heap corruption, but it isn't observed on
real hardware thanks to the data cache. Skipping the call works too,
preventing a crash on the main menu.
This patch substitutes field rendering with full frame rendering in the
NTSC and NTSC-J versions of Eggmania. This allows Dolphin's
"Force Progressive" hack to work with this title.
Codes originally from Swiss, written by Extrems.