| Age | Commit message (Collapse) | Author |
|
Baten Kaitos allocates its XFBs from a tagged heap
structure. With the old calculation, too many lines
were being written so the tag of the allocation
after the XFB was being corrupted. Fixes crash
mentioned in this comment:
https://code.google.com/p/dolphin-emu/issues/detail?id=7734#c6
|
|
VI: derive field timing from VI registers
|
|
VideoCommon: Convert some defines into enums
|
|
|
|
|
|
These aren't used outside of it. This also reduces the amount of things in
the global namespace.
|
|
These actually convey a concrete type, as well as also providing a
symbolic constant during debugging.
|
|
Bugfix: TargetRefreshRate uses rounded result
NTSC's 59.94 was becoming 59 with integer division.
|
|
|
|
|
|
|
|
[Android] Workaround Mali driver issue on the Samsung Galaxy S6.
|
|
|
|
DataReader: Get rid of pointer casts
|
|
Samsung updated the video drivers on the SGS6 which introduced a bug when disabling vsync.
Both the driver versions are r5p0, but the md5sums of the blob differ.
To work around the issue, make sure to never disable vsync by calling eglSwapInterval.
We can't actually determine the driver version on Android yet.
So until the driver version lands that displays the driver version string in the GL_VERSION string
we will need to keep this workaround enabled at all times, which is a bit annoying.
Current mali drivers return the video driver version in one of the EGL strings you can query.
The issue with that is that Android eats all of those strings, so we can't query it.
|
|
AVIDump: fix -Wsign-compare warning
|
|
|
|
|
|
Disable OpenGL ES 3.1 on all Qualcomm Adreno devices.
|
|
Profiler: Sort output by total time
|
|
Their new driver that supports GLES3.1 + AEP has issues with it.
At the very least they don't implement all of the geometry shader features fully which causes shader linker issues when we attempt to use them.
I don't have a device so I can't fully test, so until I do I'm going to blanket disable the whole thing.
|
|
The Star Wars games really push the hardware to its limits, which can cause the shaders that are produced to be 18kb or more.
Double our maximum shader size to compensate.
Fixes issue #8860
|
|
Cast the other side of the comparison to avoid a warning with newer
ffmpeg/libav versions (cb3591e69738c808d26ba15eb02414fedfcd91cc).
|
|
|
|
VideoCommon: Allow more Ram for HiresTexture if system memory is over 4GB
|
|
|
|
|
|
VideoCommon: Remove unused parameters
|
|
|
|
|
|
This reverts commit 0f2c72f0f844c219e168faa7de8dd515f8723fdc.
|
|
|
|
|
|
|
|
The last heuristic wasn't quite smart enough and had a few
false positives in Mario Kart: Double Dash and Metroid prime 2.
Now we only activate if the game is rendering a 16:9
projection to a 4:3 viewport.
|
|
|
|
ratios and VI scaling.
|
|
Heuristic to detect if a gamecube game is rendering 16:9 widescreen.
|
|
|
|
Someone suggested on IRC that we should make a database of memory
locations in GameCube games which contain the 'Widescreen' setting
so we can automatically detect if the game is in 4:3 or 16:9 mode.
But that's hardly optimal, when the game actually tells the gpu
what aspect ratio to render in. 10 min and 6 lines of code later,
this is the result. Not only does it detect the correct aspect ratio
it does so on the fly.
I'm a little suprised nobody thought about doing this before.
|
|
|
|
|
|
When calculating the size of the undisplayed margin in the case where
fbWidth != fbStride for RealXFB for displaying in the output window,
we do not scale by IR - RealXFB is implicitly 1x.
|
|
|
|
Work around PowerVR's shader compiler.
|
|
Work around slow glBufferSubData on PowerVR.
|
|
Implement scaled partial texture updates
|
|
This bug has been reported to IMGTec at https://pvrsupport.imgtec.com/ticket/472
The basic idea of the bug is that if you're doing a bitwise and of a constant value vector with a constant scalar value, this causes PowerVR's shader
compiler to fail out with a very non-descriptive message.
Working around the issue by making the value a vector that it is being masked by.
|
|
As with all tiled renderers, glBufferSubData is terribly slow.
Use glBufferData as typical.
|
|
|