2017-03-17

Dolphin Git 5.0-2968

EmuCR: DolphinDolphin Git 5.0-2968 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 #5094 from lioncash/magic
SI: Convert SI buffer from a C array to std::array
* SI: Convert SI buffer from a C array to std::array
Stronger typing (no implicit pointer decay), nicer aggregate
initialization.
Also gets rid of magic constants where applicable.
* Merge pull request #5095 from JosJuice/simplify-getsysmenuregion
Simplify GetSysMenuRegion
* Simplify GetSysMenuRegion
* Merge pull request #5029 from ligfx/bboximagemask
OGL: implement Bounding Box on systems w/o SSBO
* videoconfig: add BBoxPreferStencilImplementation
@JMC47 requested this to be able to do performance comparisons.
* OGL: only create stencil buffer when needed
* OGL: implement Bounding Box on systems w/o SSBO
This commit should have zero performance effect if SSBOs are supported.
If they aren't (e.g. on all Macs), this commit alters FramebufferManager
to attach a new stencil buffer and VertexManager to draw to it when
bounding box is active. `BBoxRead` gets the pixel data from the buffer
and dumbly loops through it to find the bounding box.
This patch can run Paper Mario: The Thousand-Year Door at almost full
speed (50–60 FPS) without Dual-Core enabled for all common bounding
box-using actions I tested (going through pipes, Plane Mode, Paper
Mode, Prof. Frankly's gate, combat, walking around the overworld, etc.)
on my computer (macOS 10.12.3, 2.8 GHz Intel Core i7, 16 GB 1600 MHz
DDR3, and Intel Iris 1536 MB).
A few more demanding scenes (e.g. the self-building bridge on the way
to Petalburg) slow to ~15% of their speed without this patch (though
they don't run quite at full speed even on master). The slowdown is
caused almost solely by `glReadPixels` in `OGL::BoundingBox::Get`.
Other implementation ideas:
- Use a stencil buffer that's separate from the depth buffer. This would
require ARB_texture_stencil8 / OpenGL 4.4, which isn't available on
macOS.
- Use `glGetTexImage` instead of `glReadPixels`. This is ~5 FPS slower
on my computer, presumably because it has to transfer the entire
combined depth-stencil buffer instead of only the stencil data.
Getting only stencil data from `glGetTexImage` requires
ARB_texture_stencil8 / OpenGL 4.4, which (again) is not available on
macOS.
- Don't use a PBO, and use `glReadPixels` synchronously. This has no
visible performance effect on my computer, and is theoretically
slower.
* extract OGL::FramebufferManager::BindLayeredTexture
* extract OGL::FramebufferManager::CreateTexture
* VideoConfig: add bSupportsFragmentStoresAndAtomics
* Merge pull request #5004 from aldelaro5/memcheck-fix-version2
Fix memory breakpoints not triggering on Windows
* Fix memory breakpoints not triggering on Windows
For some reasons, they worked on Linux even though it was incorrect, this commit does it correctly and so it fixes that on Windows.
* Merge pull request #5076 from BhaaLseN/pal-ipl
Add the hash for the PAL v1.1 IPL to the list
* change parameter names to match our coding style while we're at it
* add the hash for the PAL v1.1 BIOS
reported on the forums by user hackintoshftw1
* put the source reference onto its own line to avoid the awkward formatting
also, make them constexpr, because i guess it makes sense...
* Merge pull request #5012 from degasus/BAT
MMU: Create constants for our BAT flags.
* MMU: Create constants for our BAT flags.
This avoids a few hard-coded constants in several files.

Download: Dolphin Git 5.0-2968 x64
Download: Dolphin Git 5.0-2968 Android
Source: HereDolphin Git 5.0-2877

0 Comments

Post a Comment