Lioncash
13df9625be
control_flow: Make use of std::move in InsertBranch()
...
Avoids unnecessary atomic increments and decrements.
2020-09-22 22:48:09 -04:00
Rodrigo Locatti
43a7e8a2eb
Merge pull request #4698 from lioncash/optional-null
...
General: Make use of std::nullopt where applicable
2020-09-22 23:37:51 +00:00
Lioncash
e457001dce
General: Make use of std::nullopt where applicable
...
Allows some implementations to avoid completely zeroing out the internal
buffer of the optional, and instead only set the validity byte within
the structure.
This also makes it consistent how we return empty optionals.
2020-09-22 17:32:33 -04:00
bunnei
f3b0c1b4b5
Merge pull request #4697 from lioncash/copy5
...
ips_layer: Eliminate a redundant copy in Parse()
2020-09-22 13:42:47 -07:00
Lioncash
485eec243d
ips_layer: Eliminate a redundant copy in Parse()
...
Prevents unnecessary copying of the line being parsed.
2020-09-22 16:38:45 -04:00
bunnei
292693b696
Merge pull request #4675 from Morph1984/fix-boot-multicontent
...
submission_package: Account for multi-content NSPs
2020-09-21 16:36:46 -07:00
Morph
152b529a00
acc: Stub LoadOpenContext
...
This is used in multiple games such as:
- Clubhouse Games: 51 Worldwide Classics
- Grandia HD Collection
- XCOM 2 Collection
- Baldur's Gate 1/2
- Dr Kawashima's Brain Training
- Super Mario 3D All-Stars
2020-09-21 01:01:02 -04:00
Rodrigo Locatti
24d77012ce
Merge pull request #4692 from ReinUsesLisp/remove-vsync
...
renderer_opengl: Remove emulated mailbox presentation
2020-09-21 00:21:32 +00:00
bunnei
24b421b14c
Merge pull request #4683 from Morph1984/NpadHandheldActivationMode-impl
...
hid: Implement Get/SetNpadHandheldActivationMode
2020-09-20 12:39:20 -07:00
ReinUsesLisp
f4dbeb72d7
renderer_opengl: Remove emulated mailbox presentation
...
Emulated mailbox presentation was causing performance issues on
Nvidia's OpenGL driver. Remove it.
2020-09-20 16:29:41 -03:00
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