2016-06-27

Dolphin Git 5.0-86

EmuCR: DolphinDolphin Git 5.0-56 is compiled. This is the trunk of Dolphin Project. Dolphin is the first Gamecube emulator able to run commercial games! Dolphin is a Gamecube, Wii and Triforce (the arcade machine based on the Gamecube) emulator which supports many extra features and abilities not present on the original consoles. It has a partial Wii support and plays most Gamecube games.

Dolphin Git changelog:
* Merge pull request #3959 from leoetlino/d3d-bbox-fix
D3D: Fix crash on start with BBox enabled
* D3D: Fix crash on start with BBox enabled
Someone removed the BBox::Init(), causing crashes when BBox is enabled.
Fixes issue #9643.
* Merge pull request #3957 from lioncash/mutex
FifoRecorder: Use lock_guard instead of explicit lock/unlock
* FifoRecorder: Use lock_guard instead of explicit lock/unlock
* Merge pull request #3951 from leoetlino/formatting-fix
LightingShaderGen: Fix formatting
* LightingShaderGen: Fix formatting
* Merge pull request #3954 from delroth/x64-emitter-test
x64EmitterTest: fill cpu_info with 0x01 instead of 0xFF to make gcc happier
* x64EmitterTest: fill cpu_info with 0x01 instead of 0xFF to make gcc happier
* Merge pull request #3950 from phire/fix-warnings
VideoCommon: Fix some warnings.
* VideoCommon: Fix some warnings.
* Merge pull request #3510 from degasus/master
VideoBackends: Merge backend initialization and shutdown.
* VideoCommon: Drop GetConfigName.
We're past 5.0 now, so there is no need to look for old inis.
* VideoBackends: Merge ShowConfig functions.
* VideoBackends: Merge Initialize and Shutdown functions.
* Merge pull request #3716 from degasus/coretiming
CoreTiming: Drop ProcessFifoWaitEvents.
* PowerPC: Dedoublify CheckExternalExceptions.
* CoreTiming: Drop ProcessFifoWaitEvents.
globalTimer is only written in Advance, so this function has no function.
* Merge pull request #3513 from phire/make_hdkr_happy
Get shadergen ready for Multithreadded generation of shaders.
* Remove the rest of ShaderDebugging.
Without UID checking, it's basically a no-op that disables shader cache
and stores the shader source code (without ever reading it back).
* Multithreadded Shadergen: Minor fixups.
* Remove UID Checker.
Kind of pointless now that multiple shaders with the same UID are
now fundementally impossible.
* Multithreadded Shadergen: Second pass over Pixel Shadergen.
Note: It's not 100% perfect, as some of the GPU capablities leak into the
pixel shader UID.
Currently our UIDs don't get exported, so there is no issue. But someone
might want to fix this in the future.
* Multithreadded Shadergen: Second Pass over vertex/lighting Shadergens
As much as possible, the asserts have been moved out of the GetUID
function. But there are some places where asserts depend on variables
that aren't stored in the shader UID.
* Multithreadded Shadergen: Second Pass over geometery Shadergen
* Multithreadded Shadergen: First pass over geometery Shadergen.
* Remove global refrences from common code.
Bug Fix: Previously vertex shaders and geometery shaders didn't track
antialaising state in their UIDs, which could cause AA bugs
on directx.
* Multithreadded Shadergen: First pass over pixel Shadergen
Bug Fix: It was theoretically possible for a shader with depth writes
disabled to map to the same UID as a shader with late depth
writes.
No known test cases trigger this.
* UID Change: Fix bug with indirect stage UIDs
Bug Fix: The normal stage UIDs were randomly overwriting indirect
stage texture map UID fields. It was possible for multiple
shaders with diffrent indirect texture targets to map to
the same UID.
Once again, it dpesn't look like this bug was ever triggered.
* Shader UID change: Only store the two bits of components we need.
This frees up 21 bits and allows us to shorten the UID struct by an entire
32 bits.
It's not strictly needed (as it's encoded into the length) but I added a
bit for per-pixel lighiting to make my life easier in the following
commits.
* Multithreadded Shadergen: First Pass over vertex/lighting Shadergens
The only code which touches xfmem is code which writes directly into
uid_data.
All the rest now read their parameters out of uid_data.
I also simplified the lighting code so it always generated seperate
codepaths for alpha and color channels instead of trying to combine
them on the off-chance that the same equation works for all 4 channels.
As modern (post 2008) GPUs generally don't calcualte all 4 channels
in a single vector, this optimisation is pointless. The shader compiler
will undo it during the GLSL/HLSL to IR step.
Bug Fix: The about optimisation was also broken, applying the color light
equation to the alpha light channel instead of the alpha light
euqation. But doesn't look like anything trigged this bug.

Download: Dolphin Git 5.0-56 x64
Download: Dolphin Git 5.0-56 Android
Source: HereAndroid, Console, Dev_Build, Dolphin, NGC, Wii,

0 Comments

Post a Comment