bunnei
91a45834fd
Merge pull request #4891 from lioncash/clang2
...
General: Fix clang build
2020-11-06 10:33:13 -08:00
bunnei
0b75ec5316
Merge pull request #4894 from lioncash/fn
...
settings: Simplify initializer of resolution factor
2020-11-06 09:54:02 -08:00
Lioncash
c0ab5b79dc
settings: Simplify initializer of resolution factor
...
This can use a braced initializer to accomplish the same thing with less
code.
2020-11-05 22:07:10 -05:00
bunnei
a111a9ae2c
Merge pull request #4854 from ReinUsesLisp/cube-array-shadow
...
shader: Partially implement texture cube array shadow
2020-11-05 16:25:00 -08:00
Lioncash
6f006d051e
General: Fix clang build
...
Allows building on clang to work again
2020-11-05 10:07:16 -05:00
bunnei
d62d28522b
Merge pull request #4889 from lioncash/setting-global
...
core/settings: Move configuring_global behind an API
2020-11-04 17:09:19 -08:00
bunnei
087f52e872
Merge pull request #4858 from lioncash/initializer
...
General: Resolve a few missing initializer warnings
2020-11-04 12:10:10 -08:00
Lioncash
7aae6d6d2b
core/settings: Move configuring_global behind an API
...
Rather than have directly modified global state here, we can make it an
implementation detail and have an interface that changes are queried
through.
2020-11-04 04:16:37 -05:00
Chloe
6bbbbe8f85
Merge pull request #4869 from bunnei/improve-gpu-sync
...
Improvements to GPU synchronization & various refactoring
2020-11-04 18:36:55 +11:00
Lioncash
fc6db97a09
core: Remove usage of unicorn
...
Unicorn long-since lost most of its use, due to dynarmic gaining support
for handling most instructions. At this point any further issues
encountered should be used to make dynarmic better.
This also allows us to remove our dependency on Python.
2020-11-03 20:22:05 -05:00
bunnei
4bfa411ddc
Merge pull request #4874 from lioncash/nodiscard2
...
nvdec: Make use of [[nodiscard]] where applicable
2020-11-03 16:34:07 -08:00
bunnei
222fe75401
Merge pull request #4873 from lioncash/common-error
...
common: Enable warnings as errors
2020-11-03 11:00:23 -08:00
bunnei
448e4d5c2a
Merge pull request #4878 from bunnei/unload-nrr
...
hle: service: ldr: Implement UnloadNrr.
2020-11-03 08:52:40 -08:00
Lioncash
4a4b685a04
common: Enable warnings as errors
...
Cleans up common so that we can enable warnings as errors.
2020-11-02 15:50:58 -05:00
Lioncash
4f0f481f63
nvdec: Make use of [[nodiscard]] where applicable
...
Prevents bugs from occurring where the results of a function are
accidentally discarded
2020-11-02 02:45:15 -05:00
bunnei
1089d76736
Merge pull request #4865 from ameerj/async-threadcount
...
async_shaders: Increase Async worker thread count for >8 thread cpus
2020-11-01 01:54:01 -07:00
bunnei
848bdf8a40
fixup! hle service: nvdrv: nvhost_gpu: Update to use SyncpointManager and other improvements.
2020-11-01 01:52:38 -07:00
bunnei
7d2839d7a3
core: Initialize GPU before services.
2020-11-01 01:52:38 -07:00
bunnei
e67b8678f8
hle service: nvdrv: nvhost_gpu: Update to use SyncpointManager and other improvements.
...
- Refactor so that SubmitGPFIFO and KickoffPB use shared functionality.
- Implement add_wait and add_increment flags.
2020-11-01 01:52:38 -07:00
bunnei
c6e1c46ac7
video_core: dma_pusher: Add support for integrity checks.
...
- Log corrupted command lists, rather than crash.
2020-11-01 01:52:38 -07:00
bunnei
c64545d07a
video_core: dma_pusher: Add support for prefetched command lists.
2020-11-01 01:52:38 -07:00
bunnei
1d4cbb92f2
service: hle: nvflinger: Fix potential shutdown crash when GPU is destroyed.
2020-11-01 01:52:38 -07:00
bunnei
6053b95552
video_core: gpu: Implement WaitFence and IncrementSyncPoint.
2020-11-01 01:52:37 -07:00
bunnei
66edfd61c6
hle service: nvdrv: nvhost_ctrl: Update to use SyncpointManager.
2020-11-01 01:52:37 -07:00
bunnei
4a3fd97e48
hle service: nvdrv: Update to instantiate SyncpointManager.
2020-11-01 01:52:34 -07:00
bunnei
d567b7e841
hle: service: nvdrv: Implement SyncpointManager, to manage syncpoints.
2020-11-01 01:51:54 -07:00
Levi Behunin
bca9591660
Rename to align with switchbrew and remove gpu function ( #4714 )
...
* Rename to align with switchbrew
* Rename to align with switchbrew and remove gpu function that checks if clearing should be done.
2020-11-01 01:24:17 -07:00
bunnei
98f68d06f1
Merge pull request #4853 from ReinUsesLisp/fcmp-imm
...
shader/arithmetic: Implement FCMP immediate + register variant
2020-10-31 01:25:02 -07:00
bunnei
a0e5cccb92
hle: service: ldr: Implement UnloadNrr.
...
- Used by Final Fantasy X/X-2 HD Remaster.
2020-10-31 01:22:53 -07:00
LC
6db0c0d8d9
Merge pull request #4872 from jbeich/clang
...
video_core: unbreak -Werror in NVDEC with Clang
2020-10-30 15:11:40 -04:00
Lioncash
14a97d082e
CMakeLists: Resolve MSVC build failures
...
Prevents the compiler tripping up about Windows headers.
2020-10-30 14:57:58 -04:00
Jan Beich
50e52ade85
video_core: unbreak -Werror in NVDEC with Clang
...
src/core/hle/service/nvdrv/devices/nvhost_nvdec_common.cpp:41:15: error: unused variable 'OutOfMemory' [-Werror,-Wunused-const-variable]
constexpr u32 OutOfMemory{static_cast<u32>(-12)};
^
2020-10-30 16:43:10 +00:00
bunnei
8aa9ae5ba5
Merge pull request #4868 from lioncash/discard-error
...
General: Make ignoring a discarded return value an error
2020-10-30 00:35:40 -07:00
Lioncash
11d0a6e7b8
General: Catch more expressions with no effect on MSVC
...
MSVC lets us fine-tune catching expressions with no side-effects a
little more.
2020-10-30 00:13:26 -04:00
Lioncash
26547d3e3b
General: Make ignoring a discarded return value an error
...
Allows our CI to catch more potential bugs. This also removes the
[[nodiscard]] attribute of IOFile's Open member function. There are
cases where a file may want to be opened, but have the status of it
checked at a later time.
2020-10-30 00:13:21 -04:00
Lioncash
8049b8beb6
common/stream: Be explicit with copy and move operators
2020-10-29 22:57:35 -04:00
Lioncash
12eeffcb7c
vp9: Be explicit with copy and move operators
...
It's deprecated in the language to autogenerate these if the destructor
for a type is specified, so we can explicitly specify how we want these
to be generated.
2020-10-29 22:57:35 -04:00
Lioncash
0d713cf8eb
vp9: Mark functions with [[nodiscard]] where applicable
...
Prevents values from mistakenly being discarded in cases where it's a
bug to do so.
2020-10-29 22:57:32 -04:00
Lioncash
badea3b301
vp9: Provide a default initializer for "hidden" member
...
The API of VP9 exposes a WasFrameHidden() function which accesses this
member. Given the constructor previously didn't initialize this member,
it's a potential vector for an uninitialized read.
Instead, we can initialize this to a deterministic value to prevent that
from occurring.
2020-10-29 22:35:55 -04:00
Lioncash
f8543249f0
vp9: Make some member functions internally linked
...
These helper functions don't directly modify any member state and can be
hidden from view.
2020-10-29 22:34:46 -04:00
Lioncash
5553bd3ba2
General: Resolve a few missing initializer warnings
...
Resolves a few -Wmissing-initializer warnings.
2020-10-29 19:37:07 -04:00
bunnei
ef29bf4515
Merge pull request #4837 from lioncash/nvdec-2
...
nvdec: Minor tidying up
2020-10-29 12:28:07 -07:00
ameerj
3620206136
async_shaders: Increase Async worker thread count for 8+ thread cpus
...
Adds 1 async worker thread for every 2 available threads above 8
2020-10-29 14:16:45 -04:00
bunnei
2dbb144fc6
Merge pull request #4781 from german77/GChotplug
...
Add hotplug, rumble and fix 3rd party adapters for the GC adapter
2020-10-29 10:28:19 -07:00
Morph
9cfc5fee2f
kernel/process: Add missing <ctime> include
...
Fixes compilation on MSVC
2020-10-29 03:17:20 -04:00
LC
1a6b1bf1d7
Merge pull request #4857 from liushuyu/master
...
web_service: follow-up fix to #4842
2020-10-29 01:54:45 -04:00
bunnei
c5134cbf3a
Merge pull request #4835 from lat9nq/rng-default-time
...
kernel: Use the current time as the default RNG seed
2020-10-28 22:51:29 -07:00
bunnei
c6d001c94f
Merge pull request #4838 from lioncash/syncmgr
...
sync_manager: Amend parameter order of calls to SyncptIncr constructor
2020-10-28 22:49:22 -07:00
liushuyu
cf63eacc1a
web_service: follow-up fix to #4842 ...
...
* The web_service http request is now fixed on Windows (R) platform.
* The issue is due to a complicated race-condition in `httplib`, a detailed
explanation is available at https://github.com/yhirose/cpp-httplib/pull/701
* A pending Pull Request on `httplib` has been applied to remedy the
said race-condition.
* The socket availability check is removed due to a behavioral chice of
`httplib` that a socket will not be created before any actual request
is sent.
2020-10-28 23:16:06 -06:00
german
5333db91c1
Add hotplug, rumble and fix 3rd party adapters for the GC adapter
2020-10-28 21:12:34 -05:00
bunnei
156556ddd2
web_service: web_backend: Handle socket errors with GenericRequest.
...
- Fixes a shutdown crash when we try to submit telemetry if there is a service issue.
2020-10-28 17:19:12 -07:00
bunnei
94eca09cf6
video_core: cdma_pusher: Add missing LOG_DEBUG field in ExecuteCommand.
2020-10-28 16:47:08 -07:00
bunnei
7af2cb4318
Merge pull request #4846 from lioncash/service-fn
...
service: Update function tables
2020-10-28 13:47:56 -07:00
ReinUsesLisp
657771bdcb
shader: Partially implement texture cube array shadow
...
This implements texture cube arrays with shadow comparisons but doesn't
fix the asserts related to it.
Fixes out of bounds reads on swizzle constructors and makes them use
bounds checked ::at instead of the unsafe operator[].
2020-10-28 17:12:40 -03:00
ReinUsesLisp
44b552be71
shader/arithmetic: Implement FCMP immediate + register variant
...
Trivially add the encoding for this.
2020-10-28 17:05:41 -03:00
LC
725fcbb368
Merge pull request #4851 from ReinUsesLisp/core-threads-race
...
hle/kernel: Remove unused registered_core_threads to fix data races
2020-10-28 04:54:35 -04:00
LC
a1f176ce52
Merge pull request #4850 from ReinUsesLisp/fiber-ptr-ref
...
common/fiber: Take shared_ptr<Fiber> by copy in YieldTo
2020-10-28 04:54:19 -04:00
LC
1fd22823bc
Merge pull request #4849 from ReinUsesLisp/fix-fiber-test
...
tests: Fix data race in fibers test
2020-10-28 04:26:10 -04:00
LC
978e7897a3
Merge pull request #4848 from ReinUsesLisp/type-limits
...
video_core: Enforce -Werror=type-limits
2020-10-28 03:16:10 -04:00
ReinUsesLisp
79da90cea8
video_core: Enforce -Wredundant-move and -Wpessimizing-move
...
Silence three warnings and make them errors to avoid introducing more in the future.
2020-10-28 02:44:50 -03:00
ReinUsesLisp
4a451e5849
video_core: Enforce -Werror=type-limits
...
Silences one warning and avoids introducing more in the future.
2020-10-28 02:37:47 -03:00
ReinUsesLisp
cdb2480d39
common/fiber: Take shared_ptr<Fiber> by copy in YieldTo
...
YieldTo does not intend to modify the passed shared_ptrs.
Pass it by copy to keep a reference count while this function executes.
2020-10-28 02:02:44 -03:00
ReinUsesLisp
3fdb42e0b4
tests: Fix data race in fibers test
...
Previous to this commit, the tests were using operator[] from
unordered_map to query elements but this silently inserts empty elements
when they don't exist. If all threads were executed without concurrency,
this wouldn't be an issue, but the same unordered_map could be written
from two threads at the same time. This is a data race and makes some
previously inserted elements invisible for a short period of time,
causing them to insert and return an empty element. This default
constructed element (a zero) was used to index an array of fibers that
asserted when one of them was nullptr, shutting the test session off.
To address this issue, lock on thread id reads and writes. This could be
a shared mutex to allow concurrent reads, but the definition of
std::this_thread::get_id is fuzzy when using non-standard techniques
like fibers. I opted to use a standard mutex.
While we are at it, fix the included headers.
2020-10-28 01:41:24 -03:00
Lioncash
020519def8
service: Update function tables
...
Updates function tables according to info on SwitchBrew.
2020-10-27 21:19:46 -04:00
liushuyu
8e673cbb08
web_backend: fix a regression introduced in 39c8d18
...
* A regression was in 39c8d18
and token verification function was
broken.
* The reason being `httplib` now requires OpenSSL 1.1+ API while
LibreSSL 2.x provided OpenSSL 1.0 compatible API.
* The bundled LibreSSL has been updated to 3.2.2 so it now provides
OpenSSL 1.1 compatible API now.
* Also the path hint has been added so that it will find the correct
path to the CA certs on *nix systems.
* An option is provided so that *nix system distributions/providers can
use their own SSL implementations when compiling Yuzu/Citra to
(hopefully) complies with their maintenance guidelines.
* LURLParse is also removed since `httplib` can handle
`scheme:host:port` string itself now.
2020-10-27 02:57:19 -06:00
Lioncash
047e77e2f0
sync_manager: Amend parameter order of calls to SyncptIncr constructor
...
Corrects some cases where the arguments would be incorrectly swapped.
2020-10-27 03:22:57 -04:00
Lioncash
cce14b4cd7
h264: Make WriteUe take a u32
...
Enforces the type of the desired value in calling code.
2020-10-27 03:21:53 -04:00
Lioncash
6291975731
vp9: std::move buffer within ComposeFrameHeader()
...
We can move the buffer here to avoid a heap reallocation
2020-10-27 02:27:31 -04:00
Lioncash
00decfbb07
vp9: Remove dead code
2020-10-27 02:26:17 -04:00
Lioncash
111802bbbb
vp9: Join declarations with assignments
2020-10-27 02:26:03 -04:00
Lioncash
3b5d5fa86f
vp9: Remove pessimizing moves
...
The move will already occur without std::move.
2020-10-27 02:21:40 -04:00
Lioncash
dcc26c54a5
vp9: Resolve variable shadowing
2020-10-27 02:20:17 -04:00
Lioncash
c04203b786
nvdec: Tidy up header includes
...
Prevents a few unnecessary inclusions.
2020-10-27 02:16:42 -04:00
bunnei
941563f981
yuzu: settings: Enable multicore, asynch GPU, and assembly shaders by default.
...
- In general, this is now the preferred settings for most games.
# Conflicts:
# src/yuzu/configuration/config.cpp
2020-10-26 23:13:05 -07:00
bunnei
d33399e1f4
Merge pull request #4729 from ameerj/nvdec-prod
...
video_core: NVDEC Implementation
2020-10-26 23:02:42 -07:00
ReinUsesLisp
ce69ff2890
hle/kernel: Remove unused registered_core_threads to fix data races
...
This member was only used on asserts and it triggered data races.
Remove it to fix them.
2020-10-27 01:55:39 -03:00
bunnei
c7f32931ee
Merge pull request #4832 from bunnei/cpu-manager-microprofile-fix
...
core: cpu_manager: Add missing call to MicroProfileOnThreadExit().
2020-10-26 21:29:09 -07:00
bunnei
1828f82000
Merge pull request #4833 from bunnei/timezonemanager-explicit
...
hle: services: TimeZoneContentManager: This can be made explicit.
2020-10-26 21:28:45 -07:00
ameerj
eb67a45ca8
video_core: NVDEC Implementation
...
This commit aims to implement the NVDEC (Nvidia Decoder) functionality, with video frame decoding being handled by the FFmpeg library.
The process begins with Ioctl commands being sent to the NVDEC and VIC (Video Image Composer) emulated devices. These allocate the necessary GPU buffers for the frame data, along with providing information on the incoming video data. A Submit command then signals the GPU to process and decode the frame data.
To decode the frame, the respective codec's header must be manually composed from the information provided by NVDEC, then sent with the raw frame data to the ffmpeg library.
Currently, H264 and VP9 are supported, with VP9 having some minor artifacting issues related mainly to the reference frame composition in its uncompressed header.
Async GPU is not properly implemented at the moment.
Co-Authored-By: David <25727384+ogniK5377@users.noreply.github.com>
2020-10-26 23:07:36 -04:00
bunnei
9f08cea2c4
Merge pull request #4834 from lioncash/copy-fn
...
controller: Pass ControllerParameters by reference in ReconfigureControllers()
2020-10-26 18:49:26 -07:00
lat9nq
8bd246032a
kernel: Use the current time as the default RNG seed
...
Use the current time, not zero, as the default RNG seed.
2020-10-26 21:42:11 -04:00
Lioncash
6b5f565324
controller: Pass ControllerParameters by reference in ReconfigureControllers()
...
Prevents unnecessary copies and heap reallocations from occurring.
2020-10-26 21:06:15 -04:00
bunnei
3984bb6def
hle: services: TimeZoneContentManager: This can be made explicit.
2020-10-26 16:11:45 -07:00
bunnei
54aabb00b0
core: cpu_manager: Add missing call to MicroProfileOnThreadExit().
...
- Fixes an occasional crash when trying to launch subsequent games.
2020-10-26 16:09:15 -07:00
Rodrigo Locatti
2f6ba54483
Merge pull request #4827 from lioncash/trunc
...
controller: Convert led_patterns integer literals to bool literals
2020-10-25 16:56:30 -03:00
Rodrigo Locatti
ae3a755d13
Merge pull request #4828 from lioncash/lockguard
...
general: Use template deduction guides for lock_guard
2020-10-25 16:55:54 -03:00
Lioncash
98f4c5e7b8
general: Use template deduction guides for lock_guard
...
Same behavior, less code.
2020-10-25 13:53:22 -04:00
Lioncash
061a63547f
controller: Convert led_patterns integer literals to bool literals
...
'bool' isn't always guaranteed to be the same size as an int, so this
can technically cause truncation warnings if we support other platforms.
2020-10-25 13:44:12 -04:00
Morph
9afbcd9e8a
applets/profile_select: Resolve a warning in exec()
...
Resolves a warning where not all control paths return a value.
2020-10-25 09:16:43 -04:00
bunnei
ab052cf684
Merge pull request #4817 from Kewlan/open-single-save-location
...
main/profile_select: Don't ask for profile when there's only one.
2020-10-24 03:02:19 -07:00
LC
6f6d83befa
Merge pull request #4816 from Morph1984/controller-disconnect-fix
...
sdl_impl: Fix controller reconnection issues
2020-10-23 13:53:51 -04:00
bunnei
3e46934442
Merge pull request #4706 from ReinUsesLisp/cmake-host-shaders
...
video_core: Fix instances where msbuild always regenerated host shaders
2020-10-23 10:01:16 -07:00
bunnei
e7042163c8
Merge pull request #4792 from bunnei/rtc-fix
...
service: time: Update current time with changes to RTC setting.
2020-10-22 20:46:54 -07:00
Kewlan
85b5b816cf
Don't ask for profile when there's only one.
2020-10-22 11:16:56 +02:00
Lioncash
ea20b5c970
core: Fix clang build pt.3
...
Should finally resolve building with clang.
2020-10-21 22:14:23 -04:00
Morph
2f852f182a
sdl_impl: Fix controller reconnection issues
...
It turns out that after a controller is disconnected, there is a chance that events from the previous controller are sent/processed after it has been disconnected.
This causes the previously disconnected controller to reappear as connected due to GetSDLJoystickBySDLID() emplacing this controller back to the map.
Fix this by only returning an SDLJoystick if and only if it exists in the map.
2020-10-21 09:41:30 -04:00
bunnei
1fc61d09d3
Merge pull request #4811 from lioncash/warn-video
...
video_core: Conditially activate relevant compiler warnings
2020-10-20 20:59:37 -07:00
Lioncash
e408bd3b7c
core: Fix clang build pt.2
...
Resolves the clang build issue in a more unintrusive way.
2020-10-20 22:16:03 -04:00
bunnei
3d592972dc
Revert "core: Fix clang build"
2020-10-20 19:07:39 -07:00
Lioncash
678d012c2c
video_core: Conditially activate relevant compiler warnings
...
These compiler flags aren't shared with clang, so specifying these flags
unconditionally can lead to a bit of warning spam.
While we're in the area, we can also enable -Wunused-but-set-parameter
given this is almost always a bug.
2020-10-20 20:28:25 -04:00
Lioncash
fdd9154069
kernel: Fix build with recent compiler flag changes
...
This slipped through the cracks due to another change being merged
before the compiler flag changes.
2020-10-20 20:23:18 -04:00
LC
536c51912d
Merge pull request #4807 from ReinUsesLisp/glasm-robust-ssbo
...
gl_arb_decompiler: Implement robust buffer operations
2020-10-20 19:19:38 -04:00
LC
88d5140cf2
Merge pull request #4796 from lioncash/clang
...
core: Fix clang build
2020-10-20 19:19:12 -04:00
bunnei
940c3bf68d
Merge pull request #4390 from ogniK5377/get-applet-inf-stub
...
nifm: GetAppletInfo stub
2020-10-20 15:59:19 -07:00
LC
ea8345cdcd
Merge pull request #4809 from Morph1984/mjolnir-p3
...
configure_input_player: Fix modifier buttons
2020-10-20 15:00:06 -04:00
bunnei
e03dc4d569
Merge pull request #4627 from Morph1984/fix-dinput-controller-disconnect
...
sdl_impl: Erase the SDLJoystick entry after removing a controller
2020-10-20 11:40:06 -07:00
Morph
ff82f3894a
configure_input_player: Fix modifier buttons
...
Fix them for real this time, now they finally work.
2020-10-20 14:23:25 -04:00
ReinUsesLisp
f21a189148
gl_arb_decompiler: Implement robust buffer operations
...
This emulates the behavior we get on GLSL with regular SSBOs with a
pointer + length pair. It aims to be consistent with the crashes we
might get.
Out of bounds stores are ignored. Atomics are ignored and return zero.
Reads return zero.
2020-10-20 03:34:32 -03:00
David Marcec
298b50e220
Added remaining params
2020-10-20 16:45:01 +11:00
David Marcec
acd35e1b60
nifm: GetAppletInfo stub
...
Fixes crash for Catherine Full Body
2020-10-20 16:42:40 +11:00
bunnei
60bd54776a
Merge pull request #4788 from ReinUsesLisp/lockfree-host-thread
...
kernel: Implement host thread register methods without locking
2020-10-19 22:31:52 -07:00
bunnei
e7a26ecec5
Merge pull request #4785 from Morph1984/fs-hades
...
filesystem: Fix CreateDirectory and DeleteFile
2020-10-19 16:04:01 -07:00
bunnei
f1ead11df7
Merge pull request #4204 from ReinUsesLisp/vulkan-1.0
...
renderer_vulkan: Create and properly use Vulkan 1.0 instances when 1.1 is not available
2020-10-19 14:18:54 -07:00
bunnei
598ef6b0b3
Merge pull request #4802 from lioncash/bcat
...
core: Add boxcat sources with target_sources
2020-10-19 12:40:49 -07:00
bunnei
54b977acaa
Merge pull request #4783 from bunnei/nvdrv-freespace
...
hle: service: nvdrv: Implement nvhost_as_gpu::FreeSpace.
2020-10-18 12:41:18 -07:00
Lioncash
0ab7bfdfce
core: Add boxcat sources with target_sources
...
Same behavior, minus a script variable.
2020-10-18 08:09:06 -04:00
bunnei
2190f1a2b7
Merge pull request #4801 from lioncash/missing-bound
...
mii/manager: Make use of unused lower bound in GetRandomValue()
2020-10-17 23:32:40 -07:00
bunnei
743fe1aea3
Merge pull request #4782 from ReinUsesLisp/remove-dyn-primitive
...
vk_graphics_pipeline: Manage primitive topology as fixed state
2020-10-17 22:14:17 -07:00
Lioncash
be1954e04c
core: Fix clang build
...
Recent changes to the build system that made more warnings be flagged as
errors caused building via clang to break.
Fixes #4795
2020-10-17 19:50:39 -04:00
Lioncash
c1577f3448
mii/manager: Make use of unused lower bound in GetRandomValue()
...
Previously, the lower bound wasn't being used and zero was being used as
the lower bound every time this function was called.
This affects the outcome of some of the randomized entries a little bit,
for example, the lower-bound for beard and mustache flags was supposed
to be 1, not 0.
Aside from these cases, the bug didn't affect anything else.
2020-10-17 09:50:04 -04:00
bunnei
1eb908bc88
Merge pull request #4797 from bunnei/bcat-errors
...
service: bcat: Check client connection before interacting with socket.
2020-10-16 23:28:40 -07:00
bunnei
363c644730
service: bcat: Check client connection before interacting with socket.
...
- Fixes a crash when BCAT service is offline.
2020-10-16 21:16:56 -07:00
Lioncash
30b1e71066
udp/client: Make use of designated initializers in TestCommunication()
...
Same behavior, but makes the callback list nicer to look at.
2020-10-16 06:23:51 -04:00
Lioncash
36cfb234d5
udp/client: Take std::function by const reference with TestCommunication()
...
Avoids redundant copies.
2020-10-16 06:22:29 -04:00
Morph
7b3f5845d2
sdl_impl: Erase the SDLJoystick entry after removing a controller
...
Previously, disconnecting a controller still leaves a null SDLJoystick entry within the vector of SDLJoysticks mapped by GUID.
When a DirectInput device of the same GUID is reconnected, it adds that device to a new port causing non-detectable input.
Furthermore, opening the "Configure" menu would cause yuzu to crash since it first tries to resolve the name of a null SDLJoystick entry that was not removed.
Resolve this by properly erasing the SDLJoystick entry from the vector.
2020-10-16 00:04:59 -04:00
bunnei
64f967fd49
Merge pull request #4790 from lioncash/input-common
...
input_common/CMakeLists: Make some warnings errors
2020-10-15 20:59:34 -07:00
bunnei
dbd1662ae2
Merge pull request #4784 from bunnei/cancelbuffer
...
hle: service: vi: Implement BufferQueue::CancelBuffer.
2020-10-15 19:57:27 -07:00
Lioncash
046c0c91a3
input_common/CMakeLists: Make some warnings errors
...
Makes the input_common code warnings consistent with the rest of the
codebase.
2020-10-15 19:37:51 -04:00
bunnei
1d714c8c7f
service: acc: Stub IManagerForApplication::StoreOpenContext.
...
- Used by Super Mario 3D All-Stars.
2020-10-14 20:06:33 -07:00
bunnei
d47ac3ce09
Merge pull request #4772 from goldenx86/block-rdna
...
vk_device: Block VK_EXT_extended_dynamic_state for RDNA devices
2020-10-14 17:51:39 -07:00
bunnei
1f186f34a2
hle: service: vi: Implement BufferQueue::CancelBuffer.
...
- This is used by Super Mario 3D All-Stars.
2020-10-13 22:11:52 -07:00
ReinUsesLisp
b9a9b83bee
kernel: Implement host thread register methods without locking
...
Locks on GetCurrentHostThreadID were causing performance issues
according to Visual Studio's profiler. It was consuming twice the time
as arm_interface.Run(). The cost was not in the function itself but in
the lockinig it required.
Reimplement these functions using atomics and static storage instead of
an unordered_map. This is a side effect to avoid locking and using linked
lists for reads.
Replace unordered_map with a linear search.
2020-10-13 18:00:25 -03:00
Lioncash
9f9b64d280
audio_core/CMakeLists: Make warnings consistent with core
...
Normalizes the warnings shared between audio_core and core.
2020-10-13 16:36:58 -04:00
Lioncash
39c8d18feb
core/CMakeLists: Make some warnings errors
...
Makes our error coverage a little more consistent across the board by
applying it to Linux side of things as well. This also makes it more
consistent with the warning settings in other libraries in the project.
This also updates httplib to 0.7.9, as there are several warning
cleanups made that allow us to enable several warnings as errors.
2020-10-13 13:16:49 -04:00
ReinUsesLisp
e4e0abc418
vk_graphics_pipeline: Manage primitive topology as fixed state
...
Vulkan has requirements for primitive topologies that don't play nicely
with yuzu's. Since it's only 4 bits, we can move it to fixed state
without changing the size of the pipeline key.
- Fixes a regression on recent Nvidia drivers on Fire Emblem: Three
Houses.
2020-10-13 04:08:33 -03:00
Morph
8db3feae19
filesystem: Fix CreateDirectory and DeleteFile
...
Add a check if dir is nullptr (does not exist)
Fixes save game creation in Hades
2020-10-13 00:57:04 -04:00
bunnei
62c6c9f6a6
service: time: Update current time with changes to RTC setting.
...
- This can be used to advance time, e.g. for Pokemon Sword/Shield pokejobs.
2020-10-12 18:09:15 -07:00
bunnei
d291fc1a51
Merge pull request #3929 from FearlessTobi/ticket-keys
...
file_sys/nsp: Make SetTicketKeys actually do something
2020-10-12 17:58:36 -07:00
bunnei
b260847218
hle: service: nvdrv: Implement nvhost_as_gpu::FreeSpace.
...
- This is used by Super Mario 3D All-Stars.
2020-10-12 17:39:14 -07:00
bunnei
4c348f4069
Merge pull request #4766 from ReinUsesLisp/tmml-cube
...
shader/texture: Implement CUBE texture type for TMML and fix arrays
2020-10-12 12:53:57 -07:00
bunnei
419a59a7b1
Merge pull request #4775 from ReinUsesLisp/enforce-class-memaccess
...
video_core: Enforce -Wclass-memaccess
2020-10-09 23:38:02 -07:00
bunnei
f250011ba0
Merge pull request #4757 from german77/BetterMotion
...
InputCommon: Add compatibility with only accelerometer and auto calibrate for drift
2020-10-09 23:37:08 -07:00
ReinUsesLisp
e1600b0962
video_core: Enforce -Wclass-memaccess
2020-10-09 16:46:11 -03:00
LC
61b246a3a9
Merge pull request #4771 from ReinUsesLisp/warn-unused-var
...
video_core: Enforce -Wunused-variable and -Wunused-but-set-variable
2020-10-08 21:10:31 -04:00
goldenx86
0120e5b1d9
vk_device: Block VK_EXT_extended_dynamic_state for RDNA devices
...
RDNA devices seem to crash when using VK_EXT_extended_dynamic_state in
the latest 20.9.2 proprietary Windows drivers. As a workaround, for now
we block device names corresponding to current RDNA released products.
2020-10-08 21:27:49 -03:00
bunnei
06e65de93c
Merge pull request #4677 from german77/ShakeFromButton
...
InputCommon: Add random motion input for buttons
2020-10-08 10:18:39 -07:00
Rodrigo Locatti
7a99226785
Merge pull request #4765 from ReinUsesLisp/fix-sort-devices
...
renderer_vulkan/wrapper: Fix physical device sorting
2020-10-08 00:54:44 -03:00
ReinUsesLisp
dffaffaac1
shader/texture: Implement CUBE texture type for TMML and fix arrays
...
TMML takes an array argument that has no known meaning, this one appears
as the first component in gpr8 followed by s, t and r. Skip this
component when arrays are being used. Also implement CUBE texture types.
- Used by Pikmin 3: Deluxe Demo.
2020-10-07 23:17:46 -03:00
bunnei
3446eb79b5
Merge pull request #4731 from lat9nq/mingw-zstd-fix
...
common: Use system zstd on Linux
2020-10-07 17:57:14 -07:00
bunnei
92adb69fa7
Merge pull request #4736 from Morph1984/home-button-input-protection-stub
...
hid: Stub HomeButtonInputProtection service commands
2020-10-07 14:54:05 -07:00