bunnei
1a3f019bad
Merge pull request #4643 from FearlessTobi/decrease-pad-update-interval
...
Test: Decrease pad_update_ns
2020-09-19 00:39:50 -07:00
ReinUsesLisp
22fb70406f
vk_query_cache: Hack counter destructor to avoid reserving queries
...
This is a hack to destroy all HostCounter instances before the base
class destructor is called. The query cache should be redesigned to have
a proper ownership model instead of using shared pointers.
For now, destroy the host counter hierarchy from the derived class
destructor.
2020-09-19 01:47:29 -03:00
ReinUsesLisp
7c747f9bea
renderer_vulkan: Make unconditional use of VK_KHR_timeline_semaphore
...
This reworks how host<->device synchronization works on the Vulkan
backend. Instead of "protecting" resources with a fence and signalling
these as free when the fence is known to be signalled by the host GPU,
use timeline semaphores.
Vulkan timeline semaphores allow use to work on a subset of D3D12
fences. As far as we are concerned, timeline semaphores are a value set
by the host or the device that can be waited by either of them.
Taking advantange of this, we can have a monolithically increasing
atomic value for each submission to the graphics queue. Instead of
protecting resources with a fence, we simply store the current logical
tick (the atomic value stored in CPU memory). When we want to know if a
resource is free, it can be compared to the current GPU tick.
This greatly simplifies resource management code and the free status of
resources should have less false negatives.
To workaround bugs in validation layers, when these are attached there's
a thread waiting for timeline semaphores.
2020-09-19 01:46:37 -03:00
german
9f70da1a9b
Add automap feature for GC adapter
2020-09-18 16:51:16 -05:00
Rodrigo Locatti
540c05072e
Merge pull request #4684 from lioncash/desig4
...
fermi_2d: Make use of designated initializers
2020-09-18 19:14:56 +00:00
Lioncash
e486fc26a8
fermi_2d: Make use of designated initializers
...
Same behavior, less repetition. We can also ensure all members of Config
are initialized.
2020-09-18 13:55:21 -04:00
Morph
505ce79b9d
hid: Implement Get/SetNpadHandheldActivationMode
...
- Used in Clubhouse Games: 51 Worldwide Classics
2020-09-18 10:10:30 -04:00
David
7cae339b98
Merge pull request #4680 from Morph1984/fix-motion-mapping
...
configure_input_player: Fixes motion mapping using ConfigureButtonClick
2020-09-18 21:03:50 +10:00
Morph
a769682977
configure_input_player: Fixes motion mapping using ConfigureButtonClick
2020-09-18 03:56:31 -04:00
bunnei
cfa3badd54
Merge pull request #4647 from Morph1984/readd-context-menu
...
configure_input_player: Re-add "Clear" context menu option
2020-09-17 22:59:13 -07:00
bunnei
c5e1fba172
Merge pull request #4676 from Morph1984/GetPreviousProgramIndex-impl
...
am: Stub GetPreviousProgramIndex
2020-09-17 22:12:57 -07:00
Morph
5435e0ee39
am: Stub GetPreviousProgramIndex
...
- Used in Super Mario 3D All-Stars
2020-09-17 22:03:02 -04:00
Morph
8be3c010bb
configure_input_player: Re-add "Clear" context menu option
...
The context menu was removed in Mjölnir Part 1 as part of the input rewrite as we were unaware of it's usage statistics.
However, as this was the only way to clear the inputs of individual buttons, this PR will re-add it back in.
2020-09-17 21:57:06 -04:00
Morph
0b72422a10
submission_package: Account for multi-content NSPs
...
Previously we assumed a submission package can only contain one Program NCA with a single TitleID.
However, Super Mario 3D All-Stars contains four Program NCAs, each with their unique TitleIDs.
This accounts for the existence of multi-content games such as this one.
- Fixes booting Super Mario 3D All-Stars from the games list.
2020-09-17 20:44:51 -04:00
Rodrigo Locatti
2ca7e7160a
Merge pull request #4670 from lioncash/initializer
...
arm_dynarmic_cp15: Initialize member variables
2020-09-17 21:20:53 +00:00
Rodrigo Locatti
c1fdda9ff9
Merge pull request #4665 from lioncash/sm-kernel
...
service/sm: Eliminate dependency on the global system instance
2020-09-17 21:20:39 +00:00
Rodrigo Locatti
3a962913c7
Merge pull request #4666 from lioncash/unused-func
...
service: Remove unused funcation
2020-09-17 21:19:48 +00:00
Rodrigo Locatti
70b922675e
Merge pull request #4671 from lioncash/nfp-copy
...
command_generator/nfp: Eliminate unnecessary copies
2020-09-17 21:19:12 +00:00
Rodrigo Locatti
3f649be2b0
Merge pull request #4672 from lioncash/narrowing
...
decoder/texture: Eliminate narrowing conversion in GetTldCode()
2020-09-17 21:17:54 +00:00
Rodrigo Locatti
ede7edd764
Merge pull request #4673 from lioncash/fallthrough
...
decode/image: Eliminate switch fallthrough in DecodeImage()
2020-09-17 21:17:16 +00:00
bunnei
9a2553c952
Merge pull request #4594 from german77/MotionHID
...
hid/configuration: Implement motion controls to HID
2020-09-17 12:39:01 -07:00
Lioncash
888cca3dfc
decode/image: Eliminate switch fallthrough in DecodeImage()
...
Fortunately this didn't result in any issues, given the block that code
was falling through to would immediately break.
2020-09-17 15:12:18 -04:00
Lioncash
8f587c15ac
decoder/texture: Eliminate narrowing conversion in GetTldCode()
...
The assignment was previously truncating a u64 value to a bool.
2020-09-17 15:04:17 -04:00
Lioncash
6632af0301
audio_core/command_generator: Use const references where applicable
...
In a lot of cases, we can make use of const references rather than
non-const references.
While we're in the area we can silence some truncation and sign
conversion warnings.
2020-09-17 13:52:55 -04:00
Lioncash
d0b648ecf8
audio_core/command_generator: Avoid an unnecessary copy in GenerateFinalMixCommand()
2020-09-17 13:45:24 -04:00
Lioncash
45a608088c
nfp: Eliminate two unnecessary copies
...
GetAmiiboBuffer() returns by const reference, so we can use a reference
instead of taking the returned buffer by value.
2020-09-17 13:35:55 -04:00
Lioncash
4d0fa3544f
arm_dynarmic_cp15: Initialize member variables
...
Ensures that the member variables are always initialized to a
deterministic value on creation.
2020-09-17 13:03:49 -04:00
bunnei
8968d95a1c
Merge pull request #4668 from lioncash/port
...
control_metadata: Resolve typo in Portuguese language name
2020-09-17 09:55:01 -07:00
Lioncash
43a09c9bfc
control_metadata: Resolve typo in Portuguese language name
...
This isn't used anywhere, so this is a trivial fix.
2020-09-17 11:45:30 -04:00
Lioncash
341c612474
service: Remove unused funcation
...
This is now completely unused, so it can be removed.
2020-09-17 11:03:26 -04:00
Lioncash
e4747039da
service/sm: Slightly more efficient string name validation
...
We can check the end of the string first for null-termination, rather
than the beginning of the string.
2020-09-17 10:54:12 -04:00
Lioncash
95e8dff0d7
service/sm: Eliminate dependency on the global system instance
2020-09-17 10:43:54 -04:00
bunnei
bf6614c189
Merge pull request #4653 from ReinUsesLisp/gc-warns
...
gc_adapter: Disable MSVC nonstandard extension warning on libusb.h
2020-09-16 22:33:58 -07:00
bunnei
78267273ec
Merge pull request #4663 from ReinUsesLisp/wswitch
...
video_core: Enforce -Werror=switch
2020-09-16 20:43:23 -07:00
Rodrigo Locatti
27de4bdf63
Merge pull request #4662 from lioncash/factory
...
bis_factory/romfs_factory: Eliminate dependencies on the global system instance
2020-09-16 23:43:30 +00:00
Lioncash
7824da5961
file_sys/romfs_factory: Eliminate usage of the global system accessor
2020-09-16 19:15:19 -04:00
Lioncash
e45b727db5
file_sys/bis_factory: Eliminate usage of the global system accessor
2020-09-16 18:16:04 -04:00
Lioncash
279b79c880
loader/nso: Remove unnecessary [[maybe_unused]]
2020-09-16 18:09:01 -04:00
Rodrigo Locatti
40d901d99e
Merge pull request #4661 from lioncash/system-loader
...
core/loader: Remove dependencies on the global system instance
2020-09-16 20:59:44 +00:00
ReinUsesLisp
ee7e70cfbc
video_core: Enforce -Werror=switch
...
This forces us to fix all -Wswitch warnings in video_core.
2020-09-16 17:48:01 -03:00
Lioncash
bcb796ee92
core/loader: Remove dependencies on the global system instance
...
Now all that remains is:
18 instances in file_sys code
14 instances in GDB stub code (this can be tossed wholesale)
4 instances in HLE code
2 instances in settings code.
2020-09-16 08:46:59 -04:00
Rodrigo Locatti
d05ab5ec3c
Merge pull request #4658 from lioncash/copy3
...
nca_patch: Reduce stack usage size within SearchBucketEntry()
2020-09-16 00:25:11 +00:00
Rodrigo Locatti
cbd5c72af8
Merge pull request #4657 from lioncash/cheatparser
...
cheat_engine: Remove unnecessary system argument to CheatParser's Parse function
2020-09-16 00:24:14 +00:00
Lioncash
80e57658ac
nca_patch: Significantly reduce the stack usage size within SearchBucketEntry()
...
Previously this function was using ~16KB of stack (16528 bytes), which
was caused by the function arguments being taken by value rather than by
reference.
We can make this significantly lighter on the stack by taking them by
reference.
2020-09-15 09:10:58 -04:00
Lioncash
a92c6ddd22
nca_patch: Make SearchBucketEntry() internally linked
...
This is only used internally and doesn't depend on any class state, so
we can make it fully internal.
2020-09-15 09:06:46 -04:00
Lioncash
15fa8f52fc
cheat_engine: Convert ExtractName into a non-template function
...
We don't need to create two separate instantiations of the same code, we
can simply make the character template argument a regular function
parameter.
2020-09-15 03:24:44 -04:00
Lioncash
6711031e7d
cheat_engine: Remove unnecessary system argument to CheatParser's Parse function
...
This isn't used within the function at all in any implementations, so we
can remove it entirely.
2020-09-15 03:20:40 -04:00
Rodrigo Locatti
5dbae278f4
Merge pull request #4655 from lioncash/internal2
...
patch_manager: Minor cleanup
2020-09-15 01:57:13 +00:00
Lioncash
5c77fffc80
patch_manager: Resolve implicit truncations in FormatTitleVersion()
...
We make it explicit that we're truncating arithmetic here to resolve
compiler warnings (even if the sizes weren't u32/u64 arithmetic
generally promotes to int :<)
2020-09-14 19:19:59 -04:00
Lioncash
7abb47303e
patch_manager: Make use of type aliases
...
We can use these to avoid typing the same type redundantly. This way, if
these ever change, only a single location needs to be modified.
2020-09-14 19:17:50 -04:00