2017-01-18

Dolphin Git 5.0-1926

EmuCR: DolphinDolphin Git 5.0-1926 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 #4679 from lioncash/ipc
IPC_HLE: Namespace IPC HLE
* IPC_HLE: Namespace IOS HLE
Gets all of the IOS HLE code out of the global scope.
* Common: Namespace Network.h/.cpp
Necessary to avoid namespace clashes with IOS HLE's namespace name.
* Merge pull request #4680 from lioncash/ir
IR: Minor changes
* IR: Deduplicate code in Reset and FoldFallbackToInterpreter
* IR: Clean up getNumberOfOperands
- Use std::array
- Make arrays constexpr where their contents aren't modified.
* IR: Make trivial helper functions constexpr
* IR: Convert typedefs to using aliases
* Merge pull request #4681 from lioncash/interp-minor
Interpreter: Minor changes
* Interpreter: Use std::array for instruction tables
* Interpreter: Correct member variable casing
* Interpreter: Make m_EndBlock private
* Merge pull request #4675 from lioncash/jitil
JitILBase: Make the IRBuilder protected
* JitILBase: Make the IRBuilder instance protected
There's no need to make it public.
* JitILBase: Move protected members below public
* Merge pull request #4677 from Orphis/cmake_cleanup
Cmake cleanup
* cmake: Add CCache support
* cmake: Don’t use message(“”)
If there’s no category, the message ends up in stderr instead of stdout with the other regular CMake output.
* cmake: Find programs on the host too when building for Android
* Remove policy check for BSD as it is ON by default now
* cmake: include(Find…)->find_package(…)
* Merge pull request #4661 from leoetlino/ios-request
IOS HLE: Deduplicate the request parsing code
* IOS HLE: Specify the return code when replying
This makes more sense than setting the return code on the request
struct first before replying.
Ref: https://github.com/dolphin-emu/dolphin/pull/4661#discussion_r96273253
* IOS HLE: Remove old structs and methods
Now that everything has been changed to use the new structs, the old
methods and structs can be removed.
And while I was changing the base device class, I also moved the
"unsupported command" code to a separate function. It was pretty silly
to copy the same 3 lines for ~5 commands.
* IOS HLE: Deduplicate request code in WFS
* IOS HLE: Deduplicate request code in ES
* IOS HLE: Deduplicate request code in USB_HID
* IOS HLE: Deduplicate request code in FileIO and FS
* IOS HLE: Deduplicate request code in DI
* IOS HLE: Deduplicate request code in sdio_slot0
* IOS HLE: Deduplicate request code in net/net_ssl
* IOS HLE: Deduplicate request code in stub
* IOS HLE: Deduplicate request code in OH1
* IOS HLE: Deduplicate request code in USB_KBD
* IOS HLE: Deduplicate request code in USB_VEN
* IOS HLE: Deduplicate request code in STM
* IOS HLE: Deduplicate request code in WII_IPC_HLE
* IOS HLE: Add resource request structs
This adds well-defined structs that are responsible for parsing
resource requests, instead of duplicating the logic and offsets all
over IOS HLE. Command handler functions are now passed parsed requests
instead of a command address.
This may not seem like a very important change, but it removes the
need to remember all of the struct offsets or copy/paste existing
struct request variables. It also prevents nasty bugs which have
occurred in the past, such as parsing an ioctl as if it were an ioctlv
(that's way too easy to do if you pass command addresses directly);
or writing something to 0x0, which can easily happen by mistake with
a close handler that can be called with invalid command addresses.
Bonus changes:
- The return code is not an obscure Memory::Write_U32 anymore, but an
explicit, more obvious SetReturnValue() call. (Which correctly takes
a s32 instead of a u32, since return codes are signed.)
- Open handlers are now only responsible for returning an IOS ret code,
and Close handlers don't return anything and don't have to worry
about checking whether the request is a real one anymore.
- DumpAsync was moved to the ioctlv request struct, because it did
not really make sense to make it part of the IOS device and it only
works for ioctlvs.
All current usages have been removed; they will be readded in a
later commit.
As of this commit, nothing uses the structs yet. Usages will be
migrated progressively.
* Merge pull request #4673 from Orphis/cmake_checklib
cmake: Only use include directories on actual paths in check_lib
* cmake: Only use include directories on actual paths in check_lib
* Merge pull request #4674 from Orphis/require_gcc5
cmake: Enforce minimum GCC version
* cmake: Enforce minimum GCC version
* Merge pull request #4668 from lioncash/cmake
CMakeLists: Make CMake 3.5.0 the minimum requirement
* CMakeLists: Make CMake 3.5.0 the minimum requirement

Download: Dolphin Git 5.0-1926 x64
Download: Dolphin Git 5.0-1926 Android
Source: Here

0 Comments

Post a Comment