Commit Graph

7888 Commits

Author SHA1 Message Date
bunnei
b7c9225b4e Merge pull request #1041 from Subv/duplicated_mutex
Kernel/Mutex: Don't duplicate threads in the mutex waiter list.
2018-08-12 22:02:03 -04:00
bunnei
aa3f78daf5 Merge pull request #1040 from bunnei/xmad
gl_shader_decompiler: Implement XMAD instruction.
2018-08-12 21:56:40 -04:00
bunnei
104755156e Merge pull request #1039 from lioncash/type
vfs: Make type hierarchy objects classes instead of structs
2018-08-12 18:43:27 -04:00
bunnei
31c5b16f1c gl_shader_decompiler: Implement XMAD instruction. 2018-08-12 18:30:24 -04:00
Subv
4bc0786e55 Kernel/Mutex: Don't duplicate threads in the mutex waiter list.
Exit from AddMutexWaiter early if the thread is already waiting for a mutex owned by the owner thread.

This accounts for the possibility of a thread that is waiting on a condition variable being awakened twice in a row.

Also added more validation asserts.

This should fix one of the random crashes in Breath Of The Wild.
2018-08-12 16:35:27 -05:00
Lioncash
9a97ebf82e vfs: Make VfsFilesystem constructor explicit
Makes it consistent with the other VFS interfaces and prevents implicit
construction.
2018-08-12 16:55:40 -04:00
Lioncash
4f71f7270e vfs: Make type hierarchy objects classes instead of structs
struct should be used when the data type is very simple or otherwise has
no invariants associated with it. Given these are used to form a
hierarchy, class should be used instead.
2018-08-12 16:55:40 -04:00
bunnei
c61bab3dbc Merge pull request #1025 from ogniK5377/bad-cast
Fixed invalid cast in loader
2018-08-12 16:22:35 -04:00
bunnei
eb9b71f6af Merge pull request #1038 from MerryMage/lock-cubeb
cubeb_sink: Protect queue with a mutex
2018-08-12 16:22:11 -04:00
MerryMage
0da0dfdcc2 cubeb_sink: Protect queue with a mutex 2018-08-12 20:41:46 +01:00
bunnei
910d27af16 Merge pull request #1035 from ogniK5377/audio-dev-revision-info
GetAudioDeviceServiceWithRevisionInfo (Used by Bloodstained: Curse of the Moon)
2018-08-12 14:56:11 -04:00
bunnei
625d522f8c Merge pull request #1028 from ogniK5377/aoa
Added GetAudioRendererSampleRate, GetAudioRendererSampleCount & GetAudioRendererMixBufferCount
2018-08-12 13:33:08 -04:00
bunnei
0e9d806249 Merge pull request #1034 from lioncash/hid
hid: Stub DisconnectNpad()
2018-08-12 13:15:56 -04:00
bunnei
4912e9a374 Merge pull request #1030 from bunnei/sdl2-2.0.8
externals: Update to SDL2-2.0.8.
2018-08-12 13:15:04 -04:00
bunnei
146e5cae5c Merge pull request #1006 from degasus/stream_buffer
GL renderer: Pick the streambuffer from citra and use them.
2018-08-12 13:14:42 -04:00
Markus Wick
cf1c28afb5 gl_rasterizer: Use a shared helper to upload from CPU memory. 2018-08-12 16:10:26 +02:00
Markus Wick
cf0e459f97 gl_state: Don't track constant buffer mappings. 2018-08-12 16:10:26 +02:00
Markus Wick
f0e268ee09 gl_rasterizer: Use the stream buffer for constant buffers. 2018-08-12 16:10:26 +02:00
Markus Wick
d119d0e0c1 gl_rasterizer: Use the streaming buffer itself for the constant buffer.
Don't emut copies, especially not for data, which is used once. They just end in a huge GPU overhead.
2018-08-12 15:48:59 +02:00
Markus Wick
0d942338e3 gl_rasterizer: Use a helper for aligning the buffer. 2018-08-12 15:47:35 +02:00
Markus Wick
7e1aae257c Update the stream_buffer helper from Citra.
Please see https://github.com/citra-emu/citra/pull/3666 for more details.
2018-08-12 15:47:35 +02:00
David Marcec
a6410c6e4a GetAudioDeviceServiceWithRevisionInfo
As we're not handling any anything about the revision data for GetAudioDeviceServiceWithRevisionInfo, it's currently marked as stubbed. However for games this shouldn't affect the result. Proper revision info would be more for homebrew.
2018-08-12 22:47:39 +10:00
Lioncash
6985cee4ca hid: disable clang-format around tables
Prevents clang-format from butchering them.
2018-08-12 05:57:33 -04:00
Lioncash
d411247e8e hid: Stub DisconnectNpad()
This is required by ARMS.
2018-08-12 05:56:28 -04:00
bunnei
bf51a202bd Merge pull request #1029 from bunnei/fix-out-attrib
gl_shader_decompiler: Fix SetOutputAttributeToRegister empty check.
2018-08-12 04:09:41 -04:00
bunnei
36bb3734be externals: Update to SDL2-2.0.8. 2018-08-12 02:42:10 -04:00
bunnei
8c98adbc27 gl_shader_decompiler: Fix SetOutputAttributeToRegister empty check. 2018-08-12 02:22:42 -04:00
bunnei
8926501086 Merge pull request #922 from lioncash/cmake
CMakeLists: Change MSVC14 variable to MSVC_VERSION
2018-08-12 01:18:32 -04:00
David Marcec
40dfb71fe8 Pushed the requested sample rate instead of our fixed sample rate 2018-08-12 14:58:36 +10:00
David Marcec
02033c58d4 made ResultStatus a u16 2018-08-12 14:56:22 +10:00
David Marcec
245a22c86f Added GetAudioRendererSampleRate, GetAudioRendererSampleCount & GetAudioRendererMixBufferCount
GetAudioRendererSampleRate is set as a "STUB" as a game could check if the sample rate it sent and the sample rate it wants don't match. Just a thought of something which could happen so keeping it as stub for the mean time
2018-08-12 14:46:12 +10:00
bunnei
e7202a8e0f Merge pull request #1026 from ogniK5377/retro-city-rampage
Stub UpdateUserPresence
2018-08-12 00:25:57 -04:00
bunnei
f9b7423e51 Merge pull request #1027 from bunnei/fix-kil
gl_shader_decompiler: Fix GLSL compiler error with KIL instruction.
2018-08-12 00:25:44 -04:00
bunnei
347a47dec0 gl_shader_decompiler: Fix GLSL compiler error with KIL instruction. 2018-08-12 00:06:48 -04:00
David Marcec
25630ac859 Stub UpdateUserPresence
Needed for Retro City Rampage to go in game
2018-08-12 14:00:44 +10:00
David Marcec
8dbd8f3e73 Fixed invalid cast in loader
GetMessageForResultStatus takes a u16, not a size_t.
2018-08-12 13:31:15 +10:00
bunnei
07221d45c9 Merge pull request #1022 from bunnei/fix-splat
Several Friend service fixes
2018-08-11 22:42:45 -04:00
bunnei
dea8b22e82 Merge pull request #1020 from lioncash/namespace
core: Namespace EmuWindow
2018-08-11 22:40:08 -04:00
bunnei
482fe61631 Merge pull request #1021 from lioncash/warn
gl_rasterizer: Silence implicit truncation warning in SetupShaders()
2018-08-11 22:39:46 -04:00
bunnei
d16f559767 Merge pull request #1024 from Subv/blend_gl
GPU/Maxwell3D: Implemented an alternative set of blend factors.
2018-08-11 22:39:02 -04:00
bunnei
9d13a96656 Merge pull request #1023 from Subv/invalid_attribs
RasterizerGL: Ignore invalid/unset vertex attributes.
2018-08-11 22:18:40 -04:00
Subv
786a8f4f88 GPU/Maxwell3D: Implemented an alternative set of blend factors.
These are used by nouveau and some games like SMO.
2018-08-11 20:57:16 -05:00
greggameplayer
0aa0b3e943 Implement R8_UINT RenderTargetFormat & PixelFormat (#1014)
- Used by Go Vacation
2018-08-11 21:44:42 -04:00
Subv
3ea74b31f1 RasterizerGL: Ignore invalid/unset vertex attributes.
This should make the es2gears example not crash anymore.
2018-08-11 20:36:40 -05:00
bunnei
702e2fdd7e friend: Stub DeclareCloseOnlinePlaySession.
- Used by Splatoon 2.
2018-08-11 21:34:14 -04:00
bunnei
3dc378149b friend: Fix CreateFriendService to return an IFriendService interface. 2018-08-11 21:29:58 -04:00
bunnei
377dc4f01e server_session: Provide more useful information and don't crash on bad IPC request. 2018-08-11 21:15:24 -04:00
Lioncash
eda47beebf gl_rasterizer: Silence implicit truncation warning in SetupShaders()
Previously this would warn of truncating a std::size_t to a u32. This is
safe because we'll obviously never have more than UINT32_MAX amount of
uniform buffers.
2018-08-11 20:32:03 -04:00
Lioncash
f6807fe007 core: Namespace EmuWindow
Gets the class out of the global namespace.
2018-08-11 20:20:21 -04:00
bunnei
d9db8d764c Merge pull request #1010 from bunnei/unk-vert-attrib-shader
gl_shader_decompiler: Improve handling of unknown input/output attributes.
2018-08-11 19:56:28 -04:00