In games like ICO where the render and blanks both need to be rounded,
one was prioritized over the other one leading to a truncated value in
the total vsync cycles. This patch fixes it, it's more or less for a
trivial cycle accuracy rather than a signfifcant change which might
influence games. (Not sure, maybe it would?)
Potentially it might be nice to revamp the whole vertical blank
calculation system to make it more readable (discussed about this with
ref), but it's not of much priority right now.
The C spec states that the va_arg argument value is indeterminate after
returning from vfprintf. va_end and va_start must be called before the
variable is reused.
Avoid always setting the dialog to the centre of the screen - the GTK+3
documentation advises against it.
Avoid using a GUI callback - it's unnecessary since the value can just
be retrieved afterwards.
Simplify the GUI construction - a container to handle layout isn't
necessary due to the GUI's lack of complexity.
IOCTL_SCSI_PASS_THROUGH_DIRECT will return success even if the read
fails (I'm not sure when it'll return failure). Assume the read is
successful only when the read length is correct.
This isn't the right fix for this game, the text issue is caused due to a bug on GSdx depth test, and is not a
core issue. These rounding modes for some reason only partially alleviate the issue (https://forums.pcsx2.net/Thread-GSDX-Software-mode-Bug-Report-Teen-Titans-Load-Game-menu-not-displaying-text-where-it-should)
while not fully fixing it, ZeroGS on the other hand doesn't have this issue even without these rounding mode changes.
TL;DR - Issue is on GS, and it's troublesome when a GS issue is masked like this.
This reverts commit 4765770dc8.
Add EE patches for Spyro New Beginning and Eternal Night NTSC/PAL.
Fixes HUD and menu display in hw/sw mode.
Original patches provided by Kozarovv, improved by Refraction.
Purge Hw hack fixes for Spyro New Beginning and Eternal Night that fixed
HUD and menu display.
They will be replaced with EE patches in GameDB that work for both
software and hardware mode. A much better alternative and less GSdx
hacks.
Port from commit b0af54d3
Fixes shadows in Star Ocean 3.
Note: It works properly on native res only just like on GL.
Upscaling will cause some issues.
Only Direct3D10/11 supports it, D3D9 doesn't support integer operations
so we can't reuse the code.
This PR add an Emotion Engine Rounding fix Rayman Revolution (nearest).
- Tested by @atomic83github @prafullpcsx2 and @Helium-4
It also add a missing demo entry along with dedicaced comments for some demo issues.
[skip ci]
Remove disabled patches for GT4 and Wallace & Gromit.
Reformat code (Adjust whitespaces, empty rows, code comments).
It should look much cleaner now, there's still a lot more to be done but
it's a good start.
Revert merge of Spyro Eternal Night / New Beginning hw hack.
Update Spyro New Beginning hack - fixes menu/hud flicker in HW mode.
SW mode still has issues with the menu/hud elements.
Improve #1490
This commit remove the EETimingHack for Vampire Night wich is not anymore needed due to a fix in PCSX2 0.99, add fixes for various Armored core games as well as some code cleanup.
[skip ci]
clang and earlier GCC versions do not provide the _xgetbv intrinsic.
GCC8 does, but unfortunately it's broken.
(https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85684).
Re-use our _xgetbv implementation to avoid the bug, but rename it to
avoid compilation errors as well.