bunnei
82ca8230ad
hle: kernel: Re-create memory layout at initialization.
...
- As this can only be derived once.
2022-02-27 18:00:09 -08:00
bunnei
41c9c93736
hle: kernel: Remove unused pool locals.
2022-02-27 18:00:09 -08:00
bunnei
939707cf75
hle: kernel: k_memory_manager: Rework for latest kernel behavior.
...
- Updates the KMemoryManager implementation against latest documentation.
- Reworks KMemoryLayout to be accessed throughout the kernel.
- Fixes an issue with pool sizes being incorrectly reported.
2022-02-27 18:00:09 -08:00
Wunkolo
8da42d8235
logging: Convert `backend_thread` into an `std::jthread`
...
Was getting an unhandled `invalid_argument` [exception](https://en.cppreference.com/w/cpp/thread/thread/join ) during
shutdown on my linux machine. This removes the need for a `StopBackendThread` function entirely since `jthread`
[automatically handles both checking if the thread is joinable and stopping the token before attempting to join](https://en.cppreference.com/w/cpp/thread/jthread/~jthread ) in the case that `StartBackendThread` was never called.
2022-02-27 16:23:52 -08:00
ameerj
51d9a43dad
gl_fence_manager: Minor optimization to signal querying
...
Per the spec, bufSize is the number of integers that will be written, in this case, 1.
Also, the length argument is optional if the information of the number of elements written is not needed.
2022-02-27 17:57:33 -05:00
merry
3fe2c2d40d
dynarmic: Inline exclusive memory accesses
...
Inlines implementation of exclusive instructions into JITted code,
improving performance of applications relying heavily on these
instructions.
We also fastmem these instructions for additional speed, with
support for appropriate recompilation on fastmem failure.
An unsafe optimization to disable the intercore global_monitor is also
provided, should one wish to rely solely on cmpxchg semantics for
safety.
See also: merryhime/dynarmic#664
2022-02-27 19:40:05 +00:00
bunnei
d780096c3c
hle: kernel: k_page_heap: GetPhysicalAddr can be const.
2022-02-27 10:34:02 -08:00
bunnei
00d395c330
hle: kernel: k_page_heap: Remove superfluous consexpr.
2022-02-27 10:34:02 -08:00
bunnei
3f129b2700
hle: kernel: k_page_heap: Various updates and improvements.
...
- KPageHeap tracks physical addresses, not virtual addresses.
- Various updates and improvements to match latest documentation for this type.
2022-02-27 10:34:02 -08:00
bunnei
8ef7b10f92
hle: kernel: Add initial_process.h header.
2022-02-27 10:34:02 -08:00
bunnei
75b111b6de
hle: kernel: board: nx: Add k_memory_layout.h header.
2022-02-27 10:34:02 -08:00
bunnei
99acfba11f
hle: kernel: k_system_control: Add GetRealMemorySize and update GetKernelPhysicalBaseAddress.
2022-02-27 10:34:02 -08:00
bunnei
f562f3780e
hle: kernel: k_memory_layout: Add GetPhysicalLinearRegion.
2022-02-27 10:34:02 -08:00
bunnei
a48d756692
hle: kernel: k_memory_region_types: Update for new regions.
2022-02-27 10:34:02 -08:00
bunnei
2bbcc3d1c4
Merge pull request #7932 from bunnei/extended-mem-layout
...
Add extended memory layout (6GB) support and improve KResourceLimit management
2022-02-26 01:41:08 -08:00
bunnei
254c8f1736
Merge pull request #7953 from ameerj/radv-rdna2-crash
...
vulkan_device: Blacklist RADV on RDNA2 from VK_EXT_vertex_input_dynamic_state
2022-02-26 01:19:13 -08:00
Mai M
18ea863757
Merge pull request #7948 from Morph1984/11-11-10-float
...
maxwell_to_(gl/vk): Add 11_11_10 float vertex format
2022-02-26 00:09:44 -05:00
Ameer J
f4c97f7410
vulkan_device: Blacklist RADV on RDNA2 from VK_EXT_vertex_input_dynamic_state
...
RDNA2 devices running under the RADV driver were crashing when VK_EXT_vertex_input_dynamic_state was enabled.
Blacklisting these devices until a proper fix is established.
2022-02-25 23:09:03 -05:00
Morph
77514a45a6
maxwell_to_(gl/vk): Add 11_11_10 float vertex format
...
- Used by パワプロクンポケットR
2022-02-25 17:11:17 -05:00
bunnei
2e31f86cd6
Merge pull request #7939 from asLody/fb-format-gbra8
...
vk_blit_screen: Add missing framebuffer format
2022-02-25 00:58:28 -08:00
bunnei
41c3c5fb86
Merge pull request #7927 from german77/amiibo
...
yuzu: Disconnect amiibos on drag and drop
2022-02-24 23:13:32 -08:00
bunnei
8c3f50e6bc
Merge pull request #7859 from german77/battery_again
...
input_common: Remove battery duplicated struct and update every button press
2022-02-24 11:42:51 -08:00
Lody
d2369dc3a3
vk_blit_screen: Add missing format bgra8
2022-02-24 19:25:39 +08:00
Narr the Reg
273b9b5772
service: am: Update enum names to match documentation
2022-02-21 18:00:50 -06:00
bunnei
005debed1e
Merge pull request #7913 from voidanix/anv-fix
...
vulkan_device: fix missing format in ANV
2022-02-21 14:34:27 -07:00
bunnei
d3198bb960
hle: kernel: KSystemControl: Use 6GB memory layout when "use_extended_memory_layout" setting is enabled.
...
- This uses a larger 6GB DRAM memory layout, which is useful for some mods that require more memory.
2022-02-21 13:07:19 -08:00
bunnei
b928936457
core: device_memory: Use memory size reported by KSystemControl.
...
- That way, we can consolidate the memory layout to one place.
2022-02-21 13:07:19 -08:00
bunnei
5dc4c92dc2
settings: Add a new "use_extended_memory_layout" setting.
...
- This will be used to enable emulation of a larger memory arrangement.
2022-02-21 13:07:19 -08:00
bunnei
f2cc07cc2c
core: hle: kernel: Remove resource limit hack for PhysicalMemory.
...
- With prior changes, we now report the correct amount of physical memory available to the emulated process.
2022-02-21 12:41:31 -08:00
bunnei
09adf10025
core: hle: kernel: KProcess: Pass in KResourceLimit on process creation.
...
- This allows us to have a resource limit per process, rather than use the global system resource limit.
2022-02-21 12:41:31 -08:00
bunnei
64ae76bff6
core: hle: kernel: KEvent: Pass in owner KProcess on event creation.
...
- This is necessary to ensure resource limits are freed from the right process.
2022-02-21 12:41:06 -08:00
bunnei
fe48c772e9
core: hle: kernel: KResourceLimit: Add a helper function for creating a KResourceLimit for a process.
2022-02-21 12:40:09 -08:00
bunnei
0e50d2914a
Merge pull request #7919 from bunnei/phys-mem-updates
...
core: hle: kernel: KPageTable: Improve Un/MapPhysicalMemory.
2022-02-21 13:39:05 -07:00
bunnei
0b8e6347ee
Merge pull request #7920 from bunnei/fix-unmap-pages
...
core: hle: kernel: KPageTable: Fix UnmapPages.
2022-02-21 13:38:52 -07:00
voidanix
9891701985
vulkan_device: fix missing format in ANV
...
Currently Mesa's ANV driver does not support
VK_FORMAT_B5G6R5_UNORM_PACK16, implement an alternative for it.
2022-02-21 09:21:41 +01:00
german77
bd81e74f2a
yuzu: Remove amiibos on drag and drop
2022-02-20 14:28:21 -06:00
bunnei
e1af26d5b3
fixup! core: hle: kernel: KPageTable: Improve Un/MapPhysicalMemory.
2022-02-19 00:14:27 -08:00
bunnei
5e81f38950
Merge pull request #7867 from german77/amiibo
...
nfp: Improve amiibo support
2022-02-19 00:57:47 -07:00
bunnei
eb65836f69
core: hle: kernel: KPageTable: Fix UnmapPages.
...
- Fixes a logic bug in KPageTable::UnmapPages.
2022-02-18 23:48:16 -08:00
bunnei
6075031e99
core: hle: kernel: KPageTable: Improve Un/MapPhysicalMemory.
...
- Improves the implementations of MapPhysicalMemory and UnmapPhysicalMemory to more closely reflect latest HOS.
2022-02-18 23:42:27 -08:00
bunnei
c792b21b68
Merge pull request #7900 from german77/enter
...
yuzu: config: Fix mapping issues with the enter key
2022-02-18 15:47:34 -07:00
Wunkolo
fe8b240a39
common: Add NullVisitor default constructor
...
Addresses https://github.com/yuzu-emu/yuzu/issues/7881 to fix linux
builds.
`YUZU_NON_COPYABLE` deletes the `T(const T&)` constructor which will
cause the implicitly defined default ctor/dtor to no-longer generate.
2022-02-17 06:28:19 -08:00
Mai M
53f6a61ff8
Merge pull request #7866 from xerpi/svc-OutputDebugString32-CreateCodeMemory32-ControlCodeMemory32
...
kernel: svc: Add OutputDebugString32, CreateCodeMemory32, ControlCodeMemory32
2022-02-16 22:49:56 -05:00
bunnei
3f85da2231
Merge pull request #7878 from german77/mnpp
...
service/mnpp: Stub mnpp_app
2022-02-16 18:42:49 -07:00
Morph
754fde3c90
Merge pull request #7899 from Kelebek1/test
...
file_sys: Dump patched exefs rather than base
2022-02-16 16:37:09 -05:00
bunnei
7859ee2811
Merge pull request #7877 from lat9nq/upd_rev
...
audio_core: Update current process revision
2022-02-15 13:08:40 -07:00
bunnei
472d4fe033
Merge pull request #7891 from Morph1984/buffer_to_string_view
...
common: fs_util: Add buffer to string view utility functions
2022-02-15 12:02:23 -07:00
Narr the Reg
10a0790ce5
yuzu: config: Fix mapping issues with the enter key
2022-02-15 11:08:11 -06:00
Kelebek1
9ae0aaed6a
Dump patched exefs rather than base
2022-02-15 04:52:28 +00:00
Sergi Granell
dbfe017c9f
kernel: svc: Add OutputDebugString32, CreateCodeMemory32, ControlCodeMemory32
...
Very straightforward, they are just wrappers to the 64-bit version of
the SVC.
2022-02-15 00:45:19 +01:00
bunnei
7cecfa8369
Merge pull request #7871 from german77/svc2
...
svc: Set unique names for function tables
2022-02-14 16:32:54 -07:00
Morph
0d71098873
common: fs_util: Add buffer to string view utility functions
...
These functions allow to construct a string view from an input buffer, avoiding the copy done by the non string view counterparts. However, callers must be cognizant of the viewed buffer's lifetime to avoid a use-after-free.
2022-02-13 18:53:21 -05:00
Morph
c1a3ce985f
debugger: console: Set console output codepage to UTF-8
...
This allows the console to display multi-byte encoded characters.
2022-02-13 18:18:05 -05:00
german77
c2942fa5c3
nfp: Allow files without password data
2022-02-13 13:52:34 -06:00
lat9nq
94dec8e568
hid: Stub IsUsbFullKeyControllerEnabled
...
Used by Splatoon 2, when opening the inventory from a LAN battle lobby.
Reference: https://switchbrew.org/wiki/HID_services
2022-02-12 15:42:50 -05:00
lat9nq
022e1edd24
audio_core: Update current process revision
...
Update CURRENT_PROCESS_REVISION from REV9 to REVA.
Used by Nintendo Entertainment System - Nintendo Switch Online 6.0.0 and
Super Nintendo Entertainment System - Nintendo Switch Online 3.0.0.
2022-02-11 00:56:13 -05:00
bunnei
fa8505dfbb
Merge pull request #7852 from Morph1984/new-uuid
...
common: Revise and fix the UUID implementation
2022-02-10 21:52:13 -07:00
Narr the Reg
4eef3a0cde
service/mnpp: Stub mnpp_app
...
Used in Super Nintendo Entertainment System™ - Nintendo Switch Online
2022-02-10 21:55:28 -06:00
Morph
9429bb6222
common: uuid: Use sizeof(u64) instead of 8 in Hash()
2022-02-10 15:03:49 -05:00
bunnei
7c3ca94abd
Merge pull request #7861 from german77/user_features
...
yuzu: New hotkeys and mute audio on background
2022-02-10 10:06:58 -07:00
Narr the Reg
11680706a7
nfp: Separate nfc tag from amiibo data
2022-02-10 10:58:37 -06:00
bunnei
63427e11c8
Merge pull request #7860 from german77/no-more-drift
...
yuzu: Add auto center on right click
2022-02-09 17:52:39 -07:00
Narr the Reg
d5873beb51
svc: Set unique names for function tables
2022-02-08 21:03:31 -06:00
bunnei
c40b56b554
hle: kernel: KCodeMemory: Remove unused QueryMemory.
2022-02-08 18:49:41 -08:00
bunnei
9ab27ece86
hle: kernel: KCodeMemory: Correct m_page_group number of pages.
...
Credits to @xerpi for finding this issue and pointing it out on #7519 .
2022-02-08 18:47:11 -08:00
german77
f2b6837fb7
nfp: Address compiler issues
2022-02-08 18:52:44 -06:00
Narr the Reg
bb831fae3a
nfp: Validate amiibo files
2022-02-08 14:09:30 -06:00
german77
5fced43199
yuzu: Allow to open and remove the amiibo
2022-02-08 10:08:04 -06:00
german77
68ed8e2388
nfp: Improve implementation
2022-02-08 10:08:04 -06:00
german77
78aa2441d8
nfp: Move IUser class to header and add missing enum and structs
2022-02-07 09:18:22 -06:00
german77
2dba88f9fd
nfp: Sort functions by command number
2022-02-07 09:18:22 -06:00
german77
eb34318ded
yuzu: Mute audio when in background
2022-02-06 20:46:58 -06:00
german77
2e45a555b4
yuzu: Add docked, GPU accuracy and adapting filter hotkeys
2022-02-06 20:46:58 -06:00
german77
2ea4a2b74e
yuzu: Add auto center on right click
2022-02-06 19:56:03 -06:00
german77
75d96d5462
input_common: Remove battery duplicated struct and update every button press
2022-02-06 18:33:55 -06:00
Morph
58df24fdde
Merge pull request #7847 from tech-ticks/master
...
service: pm: Implement AtmosphereGetProcessInfo
2022-02-05 19:22:45 -05:00
Morph
7b50355561
Merge pull request #7851 from lat9nq/cmd-add-motion
...
yuzu-cmd: config: Support motion inputs
2022-02-05 19:22:18 -05:00
bunnei
ec3bd6ab14
Merge pull request #7849 from Morph1984/qt-frameless-window
...
main: Always remove the frameless window flag when restoring UI state
2022-02-05 15:18:48 -07:00
Morph
2d8d60bf9b
common: uuid: Return an invalid UUID if conversion from string fails
...
The string constructor of UUID states:
Should the input string not meet the above requirements, an assert will be triggered and an invalid UUID is set instead.
2022-02-05 13:56:21 -05:00
Morph
e47b5e6a26
general: Rename NewUUID to UUID, and remove the previous UUID impl
...
This completes the removal of the old UUID implementation.
2022-02-05 13:56:21 -05:00
Morph
26f74468c4
profile: Migrate to the new UUID implementation
2022-02-05 13:56:21 -05:00
Morph
ad33e58c2d
common: uuid: Add AsU128()
...
This copies the internal bytes of the UUID into a u128 for backwards compatibility. This should not be used.
2022-02-05 13:56:21 -05:00
Morph
4c1b4cc486
hle: ipc_helpers: Ignore -Wclass-memaccess
...
This warning is triggered by GCC when copying into non-trivially default constructible types, as it uses the more restrictive std::is_trivial (which includes std::is_trivially_default_constructible) to determine whether memcpy is safe instead of std::is_trivially_copyable.
2022-02-05 13:56:20 -05:00
Morph
da3c2dc90c
service: Migrate to the new UUID implementation
2022-02-05 13:18:46 -05:00
Morph
51c445f7e8
input/hid: Migrate to the new UUID implementation
2022-02-05 13:18:41 -05:00
Morph
77bc383079
common: Implement NewUUID
...
This is a fixed and revised implementation of UUID that uses an array of bytes as its internal representation of a UUID instead of a u128 (which was an array of 2 u64s).
In addition to this, the generation of RFC 4122 Version 4 compliant UUIDs is also implemented.
2022-02-05 13:18:31 -05:00
bunnei
ed18e4ecb3
Merge pull request #7842 from german77/vibration_test
...
yuzu: config: Vibrate the controller while configuring vibration strength
2022-02-05 02:57:26 -07:00
lat9nq
a4ad597ae2
config: Support motion inputs
...
Motion inputs were not being read in by the config when yuzu-cmd boots
up. This adds support for those.
While we're at it, make a reference to the current player controls to
improve readability. Also updates the if statements in the Analog and
Button loops with curly braces to keep the style consistent.
2022-02-05 02:31:55 -05:00
bunnei
5e4fcf041e
Merge pull request #7839 from german77/battery
...
yuzu: ui: Improve battery symbols
2022-02-04 18:23:35 -07:00
Morph
6015bce1e9
main: Always remove the frameless window flag when restoring UI state
...
For unknown reasons, this flag may persist after the application has been closed.
Removing this flag when restoring the UI state ensures that a frameless window will not be shown on startup.
2022-02-03 23:12:49 -05:00
Morph
3d13bb3105
input_common: Remove unused core include
2022-02-03 22:44:28 -05:00
tech-ticks
be026c6b6d
service: pm: Implement AtmosphereGetProcessInfo
2022-02-04 01:41:36 +01:00
bunnei
470b977171
Merge pull request #7811 from german77/analog-mod
...
input_common: Use attributes for analog range modifiers
2022-02-03 12:21:11 -07:00
bunnei
5bc49156c0
Merge pull request #7814 from FernandoS27/another-bug-in-my-schedule
...
Vulkan: Fix Scheduler Chunks when their FuncType is 0.
2022-02-02 19:15:06 -07:00
bunnei
d1c4e9be9b
Merge pull request #7835 from bunnei/page-table-lock
...
hle: kernel: KPageTable: Migrate locks to KScopedLightLock.
2022-02-02 17:58:55 -07:00
Morph
c955ee1a30
Merge pull request #7838 from lioncash/noncopy
...
common_types: Remove NonCopyable struct
2022-02-02 16:04:26 -05:00
Narr the Reg
6b132458dc
yuzu: config: Vibrate the controller while configuring vibration strength
2022-02-02 14:54:24 -06:00
bunnei
d12eb9515f
Merge pull request #7834 from german77/repeat
...
yuzu: Disable auto repeat on hotkeys again
2022-02-02 13:20:18 -07:00
Lioncash
fd12153c52
texture_cache: Ensure has_blacklisted is always initialized
...
Resolves a -Wmaybe_uninitialized warning
2022-02-02 14:37:27 -05:00
Lioncash
6419acdd76
texture_cache: Remove dead code within SynchronizeAliases
...
Since these were being copied by value, none of the changes applied in
the loop would be reflected.
However, from the looks of it, this would already be applied within
CopyImage() anyways, so this can be removed.
2022-02-02 14:37:22 -05:00
Lioncash
1f4cc88d2a
texture_cache: Amend unintended bitwise OR in SynchronizeAliases
2022-02-02 14:20:58 -05:00
Narr the Reg
2198237e42
yuzu: ui: Improve battery symbols
2022-02-02 13:18:06 -06:00
Lioncash
45fd47ef0a
common_types: Remove NonCopyable struct
...
Now that we're moved over to the YUZU_ defines, we can get rid of this
struct.
2022-02-02 13:19:01 -05:00
Lioncash
8a509e5a2c
general: Replace NonCopyable struct with equivalents
2022-02-02 13:17:12 -05:00
bunnei
2452d02a56
Merge pull request #7806 from ameerj/atomic64-fallbacks
...
shaders: Implement U32x2 atomic fallbacks when device does not support int64
2022-02-02 10:57:22 -07:00
Lioncash
2c2e08df02
general: Move deleted copy/move constructor/assignment operators to public interface
...
This allows for better compiler errors, where the compiler will state a
copy or move couldn't occur due to the relevant function being deleted.
Previously a compiler would warn about the relevant function not being
accessible (which, while true, isn't as informative as it could be).
2022-02-02 12:17:08 -05:00
bunnei
32f861dd49
Merge pull request #7807 from german77/moar-buttons
...
input_common: Add home and hard touch press buttons to UDP controllers
2022-02-01 22:37:13 -07:00
bunnei
1552c524ad
hle: kernel: KPageTable: Migrate locks to KScopedLightLock.
...
- More accurately reflects real kernel behavior by using guest locks.
2022-02-01 19:34:24 -08:00
Morph
c597d37bbf
Merge pull request #7833 from lioncash/file-sys
...
configure_filesystem: Add missing changeEvent() override
2022-02-01 22:15:37 -05:00
bunnei
05178d2498
Merge pull request #7792 from german77/translate
...
hotkeys: Don't translate hotkey buttons
2022-02-01 20:07:52 -07:00
Lioncash
1c24f14e58
configure_filesystem: Add missing changeEvent() override
...
This allows the dialog to be retranslated during runtime if the language
is changed.
2022-02-01 22:03:12 -05:00
Lioncash
54f3cb8186
configure_filesystem: Normalize member function casing
...
All other dialog types we have use CamelCase naming.
2022-02-01 22:01:22 -05:00
Narr the Reg
44c0ce539e
yuzu: Disable auto repeat on hotkeys again
2022-02-01 21:00:37 -06:00
bunnei
049cb89563
Merge pull request #7809 from Morph1984/clock-constants
...
common: wall_clock: Utilize constants for ms, us, and ns ratios
2022-02-01 18:34:31 -07:00
Morph
617bfe52cd
Merge pull request #7831 from lioncash/motion
...
configure_motion_touch: Use functor versions of invokeMethod
2022-02-01 14:48:52 -05:00
Lioncash
951785a17e
configure_motion_touch: Use functor versions of invokeMethod
...
Same behavior, but ensures that the functions we're calling exist, since
they can be checked at compile-time.
2022-02-01 13:22:42 -05:00
Lioncash
b4a7e150c7
configure_input_player: Eliminate variable shadowing
2022-02-01 12:54:00 -05:00
Lioncash
76c9d3318f
configure_input_player: std::move input setters in HandleClick
2022-02-01 12:51:03 -05:00
Lioncash
3379694d32
configure_input_player: Avoid unnecessary ParamPackage copies
...
Avoids churning allocations.
2022-02-01 12:20:23 -05:00
Lioncash
b68dc14188
yuzu/game_list: Use non-deprecated version of QString's split() function
...
The previous overload of split() was deprecated in 5.14.
2022-02-01 11:41:31 -05:00
Morph
4a668e6690
Merge pull request #7825 from lioncash/nodisc2
...
common/file: Remove [[nodiscard]] from Open()
2022-02-01 02:29:36 -05:00
Lioncash
765762c3a7
common/file: Remove [[nodiscard]] from Open()
...
Since this has a void return value, there's nothing that can actually be
used.
2022-02-01 02:19:21 -05:00
Morph
50e856cd48
Merge pull request #7824 from lioncash/scache
...
video_core/shader_cache: Take std::span in RemoveShadersFromStorage()
2022-02-01 01:58:38 -05:00
Lioncash
6f2a095c9f
video_core/shader_cache: Remove unused algorithm include
2022-02-01 01:41:05 -05:00
Lioncash
274babc929
video_core/shader_cache: Take std::span in RemoveShadersFromStorage()
...
Same behavior, but without the need to move into the function to avoid
an allocation.
2022-02-01 01:40:41 -05:00
bunnei
1f6b27e6f6
Merge pull request #7821 from german77/espada_aguda
...
svc: Add 32 bit SynchronizePreemptionState
2022-01-31 19:13:46 -07:00
Narr the Reg
33594225c7
svc: Add 32 bit SynchronizePreemptionState
...
Used by Espgaluda II
2022-01-31 19:02:41 -06:00
Fernando Sahmkow
9ebf1c00bd
Rasterizer: Refactor inlineToMemory.
2022-02-01 01:47:28 +01:00
Fernando Sahmkow
5df6c71472
Vulkan: Fix Scheduler Chunks when their FuncType is 0.
2022-01-31 17:08:08 +01:00
german77
e19f0654f9
input_common: Use attributes for analog range modifiers
2022-01-30 22:42:40 -06:00
Morph
3605b6f579
common: wall_clock: Check precision against the emulated CPU and CNTFRQ
...
In addition to requiring nanosecond precision, using the native clock requires that the hardware TSC has a precision greater than the emulated CPU and its clock counter.
2022-01-30 12:57:23 -05:00
Morph
fe2ff6b8a1
common: wall_clock: Utilize constants for ms, us, and ns ratios
2022-01-30 12:36:56 -05:00
german77
a2fe5dffa9
input_common: Add home and hard touch press buttons to UDP controllers
2022-01-30 09:17:22 -06:00
ameerj
092771e9c8
emit_glsl_atomic: Implement 32x2 fallback atomic ops
2022-01-29 19:56:03 -05:00
ameerj
94b86a8ada
lower_int64_to_int32: Add 64-bit atomic fallbacks
2022-01-29 19:56:02 -05:00
ameerj
0c5e641757
shaders: Add U64->U32x2 Atomic fallback functions
2022-01-29 19:55:53 -05:00
Fernando Sahmkow
d14f1c9d42
GPU: Improve syncing.
2022-01-29 23:02:04 +01:00
Fernando Sahmkow
19270ae4e6
Rasterizer: Implement Inline2Memory Acceleration.
2022-01-29 22:53:27 +01:00
Fernando Sahmkow
4a3a7673b7
Inline2Memory: Flush before writting buffer.
2022-01-29 17:42:28 +01:00
Morph
b7d23543b4
Merge pull request #7791 from german77/wall_clock
...
wall_clock: Use standard wall clock if rtsc frequency is too low
2022-01-28 20:04:24 -05:00
ameerj
c3d768426c
spirv_atomic: Define U32x2 storage buffers for 64-bit storage atomics
...
Some drivers do not support 64-bit atomics, and fallback to atomically modifying U32x2 vectors. This change ensures that U32x2 storage vectors are defined in the spir-v shader when 64-bit atomics are used.
Fixes a hang on some devices, notably Intel GPUs, when booting Pokemon Legends Arceus
2022-01-28 19:00:04 -05:00
Morph
5865d6f406
Merge pull request #7784 from german77/ds5
...
input_common: Add DS5 to HD rumble list
2022-01-28 18:36:28 -05:00
Morph
d45b236672
Merge pull request #7787 from bunnei/scheduler-deadlock-fix
...
hle: kernel: KScheduler: Fix deadlock with core waiting for a thread lock that has migrated.
2022-01-28 18:30:29 -05:00
Morph
c2e7d819b0
Merge pull request #7788 from ameerj/stream-buffer-begin
...
buffer_cache: Reduce stream buffer allocations when expanding from the left
2022-01-28 18:30:01 -05:00
Morph
693d982a0f
Merge pull request #7786 from ameerj/vmnmx-sel
...
video_minimum_maximum: Implement src operand selectors
2022-01-28 18:24:56 -05:00
ameerj
712b7883be
emit_spirv: Add Xfb execution mode when transform feedback is used
...
Fixes Transform Feedback on Vulkan AMD drivers.
2022-01-28 16:32:48 -05:00
bunnei
584eb04402
Merge pull request #7770 from german77/motion-threshold
...
input_common: Add option to configure gyro threshold
2022-01-27 15:44:04 -08:00
german77
f0b67c3ebb
hotkeys: Don't translate hotkey buttons
2022-01-27 17:32:48 -06:00
german77
c092488c53
wall_clock: use standard wall clock if rtsc frequency is too low
2022-01-27 17:07:52 -06:00
ameerj
9bffee169b
buffer_cache: Reduce stream buffer allocations when expanding from the left
...
The existing stream buffer optimization accounts for size increases at the end of the allocated buffer.
This adds the same optimization, increasing the size from the beginning of the buffer as well to reduce buffer allocations when expanding the same buffer from the left.
2022-01-27 15:31:43 -05:00
bunnei
1b8ed3a76d
hle: kernel: KScheduler: Fix deadlock with core waiting for a thread lock that has migrated.
...
- Previously, it was possible for a thread migration to occur from core A to core B.
- Next, core B waits on a guest lock that must be released by a thread queued for core A.
- Meanwhile, core A is still waiting on the core B's current thread lock - resulting in a deadlock.
- Fix this by try-locking the thread lock.
- Fixes softlocks in FF8 and Pokemon Legends Arceus.
2022-01-27 12:17:14 -08:00
ameerj
4ee80ce807
video_minimum_maximum: Implement src operand selectors
...
Used by Pokemon Legends: Arceus
2022-01-27 14:55:08 -05:00
Morph
6c0cc7303f
Merge pull request #7783 from lioncash/abi-cexpr
...
common/xbyak_api: Make BuildRegSet() constexpr
2022-01-27 10:29:34 -05:00
Narr the Reg
9ea465d958
input_common: Add DS5 to HD rumble list
2022-01-26 21:49:32 -06:00
bunnei
f73ced739a
Merge pull request #7762 from bunnei/un-map-improve
...
Kernel Memory Updates (Part 4): Improve Un/MapPages, and more.
2022-01-26 17:54:20 -08:00
Lioncash
1d5b635601
common/xbyak_api: Make BuildRegSet() constexpr
...
This allows us to eliminate any static constructors that would have been
emitted due to the function not being constexpr.
2022-01-26 16:29:15 -05:00
bunnei
aac2862552
Merge pull request #7780 from lioncash/macro
...
video_core/macro: Move impl classes into their cpp files
2022-01-26 12:39:59 -08:00
bunnei
e97a229325
Merge pull request #7769 from german77/no-control
...
yuzu: Add setting to disable controller navigation
2022-01-25 20:24:42 -08:00
bunnei
6f447d92e0
Merge pull request #7768 from Moonlacer/fsr-1.0.2
...
Update AMD FidelityFX Super Resolution™ to 1.0.2
2022-01-25 17:32:44 -08:00
Morph
73ce1de0fb
Merge pull request #7777 from lioncash/nodisc
...
shader_recompiler: Remove unnecessary [[nodiscard]] specifier
2022-01-25 16:16:20 -05:00
Morph
5c4f443aea
Merge pull request #7779 from lioncash/gpu-iface
...
gpu: Remove obsoleted CDmaPusher() accessors
2022-01-25 16:16:04 -05:00
Morph
1d2dd3256d
Merge pull request #7778 from lioncash/comma
...
vk_fsr: Replace comma operator with semicolon
2022-01-25 16:15:53 -05:00
Morph
6cf076534e
Merge pull request #7774 from lioncash/mapping
...
input_common/main: Pass MappingData by const reference in callbacks
2022-01-25 16:15:45 -05:00
Morph
af60a8be97
Merge pull request #7773 from lioncash/udp-deprecated
...
input_common/udp_client: Replace deprecated from_string()/to_ulong() functions
2022-01-25 16:15:27 -05:00
Morph
c2fd2c56e9
Merge pull request #7771 from lioncash/assert
...
kernel/k_affinity_mask: Remove duplicated assert
2022-01-25 16:15:18 -05:00
Lioncash
ebc41b3af6
video_core/macro: Add missing <cstring> header
...
Necessary since memcpy is used.
2022-01-25 14:10:02 -05:00
Lioncash
e7242491a4
video_core/macro_interpreter: Move impl class to the cpp file
...
Keeps the implementation hidden from the intended API and lessens the
header dependencies on the interpreter's header.
2022-01-25 14:03:48 -05:00
Lioncash
6950d969aa
video_core/macro_hle: Return unique_ptr directly from GetHLEProgram()
...
Same behavior, but less code and header dependencies.
2022-01-25 13:50:14 -05:00
Lioncash
65e617754f
video_core/macro: Remove unused parameter from Execute()
...
Simplifies the function interface.
2022-01-25 13:41:38 -05:00
Lioncash
791b988d07
video_core/macro_jit_x64: Remove unused impl class member
...
Reduces the size of the impl class a tiny bit.
2022-01-25 13:33:09 -05:00
Lioncash
9a802c7a09
video_core/macro_jit_x64: Decouple PersistentCallerSavedRegs() from impl
...
This doesn't depend on class state and can just be a regular function.
2022-01-25 13:31:54 -05:00
Lioncash
0b91a77ccc
video_core/macro_jit_x64: Move impl class into cpp file
...
Keeps the implementation internalized and also reduces API-facing header
dependencies.
Notably, this fully internalizes all of the xbyak externals.
2022-01-25 13:31:46 -05:00
Lioncash
e3025b8fb9
video_core/macro_hle: Move impl class into cpp file
...
Given it's intended to be an internal implementation class, we can move
it into the cpp file to ensure that.
This also lets us move some header dependencies into the cpp file as
well.
2022-01-25 13:15:48 -05:00
Lioncash
4d8010eee3
gpu: Tidy up forward declarations
...
Over time a few forward declarations became unnecessary, so we can
remove these to tidy up the header a little bit.
2022-01-25 13:05:39 -05:00
Lioncash
4c5c860587
gpu: Remove obsoleted CDMAPusher() accessors
...
These were obsoleted in 10cc89bfdf but
were accidentally overlooked.
2022-01-25 12:53:56 -05:00
Lioncash
4272d239b6
vk_fsr: Replace comma operator with semicolon
...
Generally, we should be ending statements with a semicolon not a comma
Resolves a clang diagnostic.
2022-01-25 12:42:27 -05:00
Lioncash
4ea21f074d
shader_recompiler: Remove unnecessary [[nodiscard]]
...
Since ConvertLegacyToGeneric has a void return value, there's nothing
that is actually returned by the function.
2022-01-25 12:16:09 -05:00
bunnei
c0fc95af47
Merge pull request #7765 from bunnei/update-thread-count
...
hle: kernel: KThread: Improve Increment/Decrement RunningThreadCount.
2022-01-24 18:58:48 -08:00
bunnei
387aa20884
Merge pull request #7760 from german77/inverted_keyboard
...
yuzu: Add modifiers for keyboard
2022-01-24 15:41:49 -08:00
Lioncash
18c2bd5c12
input_common/input_engine: Ensure PadIdentifier UUIDs have a valid initial state
...
The default constructor of a UUID instance doesn't initialize the
underlying array.
2022-01-24 11:57:48 -05:00
Lioncash
f02a9e4d81
input_common/input_mapping: Simplify UUID validity checks
...
Makes the checks a little more intuitive to read and doesn't construct
an extra UUID instance
2022-01-24 11:49:52 -05:00
Lioncash
04a33bc652
input_common/input_mapping: Add missing includes
...
Ensures that the class always sees the types it needs.
2022-01-24 11:49:31 -05:00
Lioncash
cec9e4ec77
input_common/input_mapping: Remove const from return value
...
Top-level const on a return by value can inhibit move semantics, and is
unnecessary.
2022-01-24 11:39:20 -05:00
Lioncash
5f80c764b0
input_common/input_mapping: Default constructor
2022-01-24 11:37:48 -05:00
Lioncash
1bd76dcb77
input_common/main: Pass MappingData by const reference in callbacks
...
Avoids creating unnecessary 168 byte copies per callback invocation.
2022-01-24 11:31:43 -05:00
Lioncash
feb5b56356
input_common/udp_client: Replace deprecated from_string()/to_ulong() functions
...
These are deprecated and make_address variants and to_uint() should be used instead.
2022-01-24 11:14:30 -05:00
Lioncash
de967b3967
input_common/udp_client: Prevent unnecessary string copies
...
We can also remove some redundant const on the return values, since
these don't do anything
2022-01-24 10:58:25 -05:00
Lioncash
1e57fbe71d
kernel/k_affinity_mask: Remove duplicated assert
...
This is already checked inside GetCoreBit()
2022-01-24 10:35:22 -05:00
german77
1fca7203d3
input_common: Add option to configure gyro threshold
2022-01-23 21:54:33 -06:00
german77
47ca44ad1d
yuzu: Add setting to disable controller navigation
2022-01-23 21:08:49 -06:00
Moonlacer
71ae167f3a
Update FSR to 1.0.2
...
Updates yuzu's FSR implementation to 1.0.2
2022-01-23 14:38:48 -06:00
bunnei
a2731424a6
hle: kernel: KThread: Improve Increment/Decrement RunningThreadCount.
...
- Previously implementation was incorrect, and would occasionally underflow.
2022-01-22 21:09:45 -08:00
bunnei
912b6b9ef4
core: hle: kernel: KPageTable: Various improvements to MapPages and UnmapPages.
2022-01-22 20:51:34 -08:00
bunnei
c46f07a62a
core: hle: kernel: KPageTable: MapProcessCode: Various cleanup.
2022-01-22 20:51:34 -08:00
bunnei
4f848b6f68
core: hle: kernel: KPageTable: ReserveTransferMemory: Various cleanup.
2022-01-22 20:51:34 -08:00
bunnei
bf904afa0f
core: hle: kernel: KPageTable: ResetTransferMemory: Various cleanup.
2022-01-22 20:51:34 -08:00
bunnei
1b3dd42de4
core: hle: kernel: KPageTable: SetMemoryAttribute: Various cleanup.
2022-01-22 20:51:34 -08:00
bunnei
329741aaf6
Merge pull request #7716 from german77/volume
...
yuzu: Add volume hotkeys
2022-01-22 02:25:59 -08:00
bunnei
05918a20c3
core: hle: kernel: KPageTable: Assert valid address on GetPhysicalAddr.
2022-01-22 01:33:26 -08:00
bunnei
a8476d9db0
core: hle: kernel: KPageTable: Operate: Assert lock ownership.
2022-01-22 01:33:26 -08:00
bunnei
8f3c7cb89b
core: hle: kernel: KPageTable: SetHeapSize: Cleanup & take physical memory lock.
2022-01-22 01:33:26 -08:00
bunnei
24efadee60
core: hle: kernel: Refactor Un/MapPhysicalMemory to remove unnecessary methods.
2022-01-22 01:33:26 -08:00
bunnei
ebb9ec197e
core: hle: kernel: Rename Un/Map to Un/MapMeory.
2022-01-22 01:33:26 -08:00
bunnei
3ac7342b48
Merge pull request #7735 from german77/udp_battery
...
input_common: Report battery for UDP controllers
2022-01-22 01:28:14 -08:00
bunnei
7240568f00
Merge pull request #7737 from bunnei/fix-dummy-thread-leak
...
Various fixes to HLE service thread management
2022-01-21 22:34:47 -08:00
Narr the Reg
0a75c32ab8
yuzu: Add modifiers for keyboard
2022-01-21 20:41:50 -06:00
bunnei
606e643378
Merge pull request #7752 from Morph1984/SetCpuOverclockEnabled
...
service: apm: Stub ISession SetCpuOverclockEnabled
2022-01-21 17:13:52 -08:00
bunnei
b3f8d2491d
hle: kernel: KThread: Ensure host (dummy) threads block on locking.
...
- But do not enter the priority queue, as otherwise they will be scheduled.
- Allows dummy threads to use guest synchronization primitives.
2022-01-21 17:12:06 -08:00
Lioncash
46d9dc557c
service/wlan: Update function tables
2022-01-21 16:35:51 -05:00
Lioncash
3599c5f7c8
service/usb: Update function tables
2022-01-21 16:31:57 -05:00
Lioncash
50af00640b
service/set: Update function tables
2022-01-21 16:26:12 -05:00
Lioncash
114ce2ae13
service/ns: Update function tables
2022-01-21 16:21:35 -05:00
Lioncash
41f1cceefe
service/nim: Update unknown function table entries
2022-01-21 16:17:40 -05:00
Lioncash
cc5f02e0a5
service/friend: Update unknown function table entries
2022-01-21 16:08:46 -05:00
Lioncash
ee4adcada2
service/filsystem: Update fsp-srv function table
2022-01-21 16:07:01 -05:00
Lioncash
2495e8d6e1
service/btm: Update function tables
2022-01-21 15:59:41 -05:00
Lioncash
74a98a01de
service/audio: Update audctl unknown function names
2022-01-21 15:50:38 -05:00
Lioncash
aa0d0e91a0
service/am: Update omm function tables
2022-01-21 15:40:08 -05:00
Lioncash
1a50cb9468
service/acc: Update unknown function names
...
Switchbrew has the function names now.
2022-01-21 15:33:22 -05:00
bunnei
daa1ccd057
Merge pull request #7755 from v1993/someone-in-here-lacks-system-wide-theming
...
Use Default Colorful theme by default outside of Windows
2022-01-21 11:51:29 -08:00
bunnei
0bec1ea476
Merge pull request #7731 from v1993/xfb-varying-check-fix
...
shader_recompiler: fix potential OOB access
2022-01-21 10:45:56 -08:00
v1993
8117685e56
Use Default Colorful theme by default outside of Windows
...
On OSes with system-wide theming this allows yuzu to follow system style, regardless of its exact coloration, working well with both light and dark system themes. Dark /Colorful, on the other hand, forces dark theme regardless of user preferences set in system settings, making for a poor default.
Use Colorful variation to keep in line with icon style of patron-voted Dark Colorful.
2022-01-21 20:57:00 +03:00
Morph
00dc684fb0
service: apm: Stub ISession SetCpuOverclockEnabled
...
Since we don't currently support CPU overclocking within the emulated system, this can be stubbed for now, like APM IsCpuOverclockEnabled.
- Used by Gravity Rider Zero
2022-01-20 21:07:26 -05:00
bunnei
c6038643e0
Merge pull request #7695 from Morph1984/is-pow2
...
common: bit_util: Add IsPow2 helper function
2022-01-20 18:06:11 -08:00
bunnei
8f2630de0a
hle: kernel: Remove redundant tracking of dummy threads.
...
- These are already tracked by kernel's registered_objects member.
2022-01-20 17:08:00 -08:00
bunnei
f2e870d6b6
hle: kernel: KThread: DummyThread can be waited, ensure wait_queue is not nullptr.
2022-01-20 17:08:00 -08:00
bunnei
668af26696
hle: kernel: KThread: Decrease DummyThread priority to ensure it is never scheduled.
2022-01-20 17:08:00 -08:00
bunnei
db3c11506b
hle: kernel: service_thread: Ensure dummy thread is closed & destroyed on thread exit.
2022-01-20 17:08:00 -08:00
bunnei
e885b0ab0d
hle: kernel: KServerSession: Remove hack for CompleteSyncRequest.
...
- This does not appear to be necessary anymore.
2022-01-20 17:08:00 -08:00
bunnei
af11abed3f
hle: kernel: KServerSession: Simplify CompleteSyncRequest EndWait.
...
- Considering is_thread_waiting is never set, so we can remove IsThreadWaiting.
- KThread::EndWait will take the scheduler lock, so we can remove the redundant lock.
2022-01-20 17:08:00 -08:00
bunnei
247a7e2205
hle: kernel: KThread: Ensure dummy threads never call EndWait.
...
- These are only used by host threads for locking and will never have a wait_queue.
2022-01-20 17:08:00 -08:00
bunnei
f1e06f984d
hle: kernel: KScheduler: Ensure dummy threads are never scheduled.
...
- These are only used by host threads for locking.
2022-01-20 17:08:00 -08:00
bunnei
cc4cbff1ca
hle: kernel: KThread: Rename thread_type_for_debugging -> thread_type.
...
- This will be used to ensure that we do not schedule dummy threads.
2022-01-20 17:08:00 -08:00
bunnei
015c2dbd68
Merge pull request #7710 from german77/just-shake-it
...
core/hid: Increment shake force
2022-01-20 16:53:22 -08:00
Jan Beich
c2338f2f04
video_core: constify AVCodec for ffmpeg >= 5.0
...
src/video_core/command_classes/codecs/codec.cpp:177:16: error: assigning to 'AVCodec *' from 'const AVCodec *' discards qualifiers
av_codec = avcodec_find_decoder(codec);
^~~~~~~~~~~~~~~~~~~~~~~~~~~
2022-01-20 11:09:21 +00:00
Morph
ac59980bd0
Merge pull request #7726 from german77/clamp
...
service/hid: Initialize applet_resource on SetNpadAnalogStickUseCenterClamp
2022-01-19 14:31:15 -08:00
german77
d678dfda6e
service/hid: Initialize applet_resource on SetNpadAnalogStickUseCenterClamp
2022-01-19 14:20:31 -06:00
Georg Lehmann
feb8a473ed
vulkan_device: Fix sType for VkPhysicalDeviceShaderAtomicInt64Features
2022-01-19 19:48:46 +01:00
bunnei
70b2b91f71
Merge pull request #7701 from bunnei/clear-mem-pages
...
Kernel Memory Updates (Part 3): Clear KMemoryManager pages & other fixes
2022-01-18 21:20:42 -08:00
bunnei
fd18ae4979
Merge pull request #7715 from gidoly/patch-4
...
Xbox controller default name nit pick
2022-01-18 21:14:30 -08:00
bunnei
94d7a0de6f
Merge pull request #7725 from german77/mouse_in_motion
...
input_common: Reintroduce motion from mouse and use button names
2022-01-18 18:16:27 -08:00
bunnei
74407b1348
Merge pull request #7712 from bunnei/fix-thread-exit
...
Accurately implement thread exit
2022-01-17 18:08:24 -08:00
bunnei
a361325864
Merge pull request #7724 from ameerj/astc_new_nv
...
astc_decoder: Combine FastReplicate functions to work around new NV driver bug
2022-01-17 16:48:04 -08:00
bunnei
4e3c9cdde6
Merge pull request #7732 from v1993/patch-7
...
kernel: remove no-op code
2022-01-17 15:37:16 -08:00
Narr the Reg
527a74f48b
input_common: Report battery for UDP controllers
2022-01-17 13:30:15 -06:00
v1993
970b362ca1
shader_recompiler: fix potential OOB access
...
Found by static analysis with PVS-Studio. Original check wasn't actually checking for OOB and would segfault in case of it.
2022-01-17 21:50:51 +03:00
Mai M
d3066b30ea
Merge pull request #7730 from v1993/patch-6
...
input_common: nitpick about SetHatButton usage
2022-01-17 13:43:34 -05:00
Mai M
624bb8bf26
Merge pull request #7729 from v1993/patch-5
...
input_common: fix copy-paste error
2022-01-17 13:43:21 -05:00
Mai M
2567283d86
Merge pull request #7728 from v1993/patch-4
...
hid: fix std::transform call
2022-01-17 13:43:11 -05:00
Mai M
5d84c5a2a9
Merge pull request #7727 from v1993/patch-3
...
hid: Correct assignment source for rotations
2022-01-17 13:42:57 -05:00
Valeri
01852ee857
hle: remove no-op code
...
Found by static analysis with PVS-Studio. Nobody seems to really know what was it doing there.
2022-01-17 13:51:12 +03:00
Valeri
ffc1f4df39
input_common: nitpick about SetHatButton usage
2022-01-17 12:04:38 +03:00
Valeri
e3ee079aa4
input_common: fix copy-paste error
...
Found by static analysis with PVS-Studio.
2022-01-17 11:31:38 +03:00
Valeri
8b3ea1258c
hid: fix std::transform call
...
Found by static analysis with PVS-Studio.
2022-01-17 10:47:38 +03:00
Morph
7721ca7ee7
uisettings: Add enumeration type for themes
...
Eliminates the usage of a magic number to indicate the default index of the themes array,
2022-01-17 02:46:30 -05:00
gidoly
f83f55b337
config: Change default theme to Dark Colorful
2022-01-17 02:41:53 -05:00
Valeri
347574b398
Correct assignment source for rotations
...
Found by static analysis with PVS-Studio
2022-01-17 10:40:41 +03:00
german77
991460cd98
input_common: Reintroduce motion from mouse and use button names
2022-01-16 20:37:34 -06:00
ameerj
09dc136a39
astc_decoder: Combine FastReplicate functions to work around new NV driver bug
...
The new Nvidia drivers have a bug where the FastReplicateTo6 function produces a lookup into the REPLICATE_TO_8 table rather than the REPLICATE_TO_6 table.
This seems to be an optimization gone wrong. Combining the logic of the FastReplicate functions seems to address the bug.
2022-01-16 16:13:20 -05:00
german77
c8364449df
audio/stream: Adjust volume scale factor
2022-01-15 20:28:37 -06:00
german77
a31c663398
yuzu: Add volume up/down hotkeys
2022-01-15 20:28:37 -06:00
gidoly
3465aa5d57
Xbox controller default name nit pick
...
Discord User moon lacer pointed us that official name is 'Xbox' not 'XBox'
2022-01-16 05:59:31 +09:00
german77
c5665f7289
yuzu: Remove speed limit hotkeys
2022-01-15 13:44:45 -06:00
bunnei
0e12a27299
Merge pull request #7713 from gidoly/patch-3
...
Change default name for playstation controllers
2022-01-15 02:39:58 -08:00
bunnei
d3702fe297
Merge pull request #7711 from bunnei/fix-service-thread-race-v2
...
hle: kernel: Fix service_threads access to be thread safe V2.
2022-01-14 22:22:39 -08:00
bunnei
4148fde355
hle: kernel: k_memory_manager: Clear pages on allocation & free.
...
- Heap pages should be zero'd.
- Also explicitly passed along heap allocation option.
2022-01-14 21:16:33 -08:00
gidoly
ede1976820
Change default name for ps controllers
...
Minor nitpick
Code is from narr
2022-01-15 10:29:42 +09:00
bunnei
d87fc832f4
Merge pull request #7707 from german77/slow-update
...
service/hid: Decrease motion update rate
2022-01-14 17:13:30 -08:00
bunnei
b52516263d
core: hle: kernel: KThread: Integrate with KWorkerTask and implement DoWorkerTaskImpl.
...
- This is used to terminate a thread asynchronously after it has been exited.
- This fixes a crash that can occur in Pokemon Sword/Shield because a thread is incorrectly closed on svcExitThread, then, the thread is destroyed on svcCloseHandle while it is still scheduled.
- Instead, we now wait for the thread to no longer be scheduled on all cores before destroying it from KWorkerTaskManager, which is accurate to HOS behavior.
2022-01-14 16:44:14 -08:00
bunnei
18969b5d8e
core: hle: kernel: KProcess: Integrate with KWorkerTask and add unimplemented DoWorkerTaskImpl.
2022-01-14 16:44:14 -08:00
bunnei
914431487b
core: hle: kernel: KThread: Replace Suspend with UpdateState & various updates.
...
- This makes our implementations of these more closely match HOS.
2022-01-14 16:44:14 -08:00
bunnei
b6bf119a43
core: hle: kernel: Instantiate a kernel instance of KWorkerTaskManager.
2022-01-14 16:44:14 -08:00
bunnei
b722faaf7a
core: hle: kernel: Add KWorkerTask and KWorkerTaskManager.
...
- These primitives are used to dispatch asynchronous kernel tasks from KThread and KProcess.
2022-01-14 16:43:59 -08:00
bunnei
b533a775d2
common: fiber: YieldTo: Avoid hard crash on nullptr previous_fiber.
...
- When the emulator crashes to desktop below, we don't even get this captured in a log, making such issues harder to debug.
2022-01-14 16:17:19 -08:00
bunnei
fbab3dc017
hle: kernel: Fix service_threads access to be thread safe V2.
...
- PR #7699 attempted to fix CreateServiceThread and ReleaseServiceThread to be thread safe, but inadvertently introduced a possible dead-lock.
- With this PR, we use a worker thread to manage the service thread list, allowing it only to be accessed by a single thread, and guaranteeing threads will not destroy themselves.
- Fixes a rare crash in Pokemon Sword/Shield, I've now run this game for ~12 hours non-stop and am quite confident this is a good solution for this issue.
2022-01-14 16:02:57 -08:00
Narr the Reg
f217849d21
core/hid: Increment shake force
...
With the current settings 2p mode in pokemon let's go wasn't showing up. By making the shake more violent we can make it appear without any effort using the keyboard
2022-01-14 11:11:20 -06:00
Mai M
8fb335ff3f
Merge pull request #7699 from bunnei/fix-service-thread-race
...
hle: kernel: Fix service_threads access to be thread safe.
2022-01-14 00:46:16 -05:00
Mai M
0872f9ff89
Merge pull request #7698 from bunnei/mem-code-memory-updates
...
Kernel Memory Updates (Part 2): SetProcessMemoryPermission, update permissions, and other minor changes.
2022-01-14 00:41:17 -05:00
bunnei
ef9186172f
hle: kernel: Fix service_threads access to be thread safe.
...
- CreateServiceThread and ReleaseServiceThread can be accessed by different threads, uses a lock to make this thread safe.
- Fixes a rare crash in Pokemon Sword/Shield that can occur when a new service thread is being created while an old one is being destroyed.
2022-01-13 21:26:10 -08:00
bunnei
a9c52fed60
Merge pull request #7690 from Morph1984/increase-file-limit-win
...
yuzu: main: Increase the open file limit on Windows to 8192
2022-01-13 21:25:06 -08:00
bunnei
c8933c02cc
Merge pull request #7700 from german77/no-gyro
...
core/hid: Reduce gyro threshold even more
2022-01-13 21:24:41 -08:00
Narr the Reg
01d886a3ba
service/hid: Decrease motion update rate
...
Motion stops working in Mario Tennis in swing mode if the update rate is too fast even when HW it updates at the same speed. 10ms it's the minimum period that the game needs to start working again.
2022-01-12 22:55:33 -06:00
Narr the Reg
56ac40bfc4
core/hid: Reduce gyro threshold even more
2022-01-11 23:15:39 -06:00
bunnei
c2ac9e90bf
Merge pull request #7697 from abouvier/opt-tests
...
cmake: make tests optional
2022-01-11 20:58:16 -08:00
bunnei
d45b65b4d9
hle: kernel: k_page_table: Update SetProcessMemoryPermission.
2022-01-11 16:28:11 -08:00
bunnei
7526489b8b
hle: service: ldr: UnmapCodeMemory BSS only when set.
2022-01-11 16:28:11 -08:00
bunnei
84a61db25b
hle: kernel: k_page_table: ReadAndWrite -> UserReadWrite.
2022-01-11 16:28:11 -08:00
bunnei
0942533d2f
hle: kernel: k_page_table: Rename *ProcessCodeMemory -> *CodeMemory.
2022-01-11 16:28:11 -08:00
bunnei
e2df1ad6a1
Merge pull request #7684 from bunnei/set-mem-perm-attr
...
Kernel Memory Updates (Part 1): SetMemoryAttribute, and other minor changes.
2022-01-11 16:26:17 -08:00
Alexandre Bouvier
4b791bcad7
cmake: make tests optional
2022-01-12 00:36:20 +01:00
Morph
9ec57a502c
common: bit_util: Add IsPow2 helper function
...
Makes use of std::has_single_bit() to check whether the value is a power of 2.
2022-01-11 16:01:12 -05:00
bunnei
5d1080d2a8
Merge pull request #7633 from german77/hotkeys
...
yuzu: Add controller hotkeys
2022-01-11 10:49:23 -08:00
Morph
b713400580
yuzu: main: Increase the open file limit on Windows to 8192
...
This is a temporary solution for now to accommodate for mods containing more than 4096 files.
2022-01-09 21:33:58 -05:00
Morph
4b8518f4ce
Merge pull request #7683 from liushuyu/fmt-8.1
...
logging: adapt to changes in fmt 8.1
2022-01-09 18:29:59 -08:00
Morph
45f4600a4e
Merge pull request #7687 from german77/tas_handle
...
input_common: Handle errors on TAS scripts
2022-01-09 16:43:06 -08:00
liushuyu
479d57987c
logging/log.h: move enum class formatter to a separate file ...
...
... to common/logging/formatter.h
2022-01-09 17:35:33 -07:00
liushuyu
52e9cd7743
logging/log: use `underlying_type` instead of hardcoding types
2022-01-08 16:02:49 -07:00
bunnei
7f49c22fc4
Merge pull request #7682 from german77/udp_fix
...
input_common: Fix UDP controller mappings
2022-01-08 13:41:39 -08:00
bunnei
b227426ae5
core: hle: kernel: svc: Updates to SetMemoryAttribute and SetMemoryPermission.
2022-01-08 12:18:14 -08:00
german77
b6c23d1633
input_common: Handle errors on TAS scripts
2022-01-08 12:27:16 -06:00
bunnei
090f1c400e
core: hle: kernel: k_page_table: Update CheckMemoryState.
2022-01-08 03:20:57 -08:00
liushuyu
682ea0f431
logging: adapt to changes in fmt 8.1
2022-01-08 01:49:26 -07:00
bunnei
8d5bddc40f
Merge pull request #7680 from german77/accel_mapping
...
input_common: Allow to only have acceleration motion data
2022-01-08 00:06:15 -08:00
german77
a52791af6b
yuzu: Use pad parameter to choose the correct controller
2022-01-07 16:56:36 -06:00
german77
0e1d2581b7
input_common: Fix udp motion not automapping to both sides
2022-01-07 16:56:36 -06:00
german77
353317f31e
yuzu: Add controller hotkeys
2022-01-06 21:26:05 -06:00
german77
06d840652f
core/hid: Add home and screenshot button support
2022-01-06 21:11:27 -06:00
german77
f333340a9c
core/hid: Set minimum gyro threshold
2022-01-06 20:05:59 -06:00
german77
10439bbfff
input_common: Use accelerometer data for mapping
2022-01-06 20:05:49 -06:00
Fernando S
6dfbefd29b
Merge pull request #7658 from ameerj/sparse-fixes
...
video_core/memory_manager: Fixes for sparse memory management
2022-01-06 13:50:14 +01:00
bunnei
74485dda2f
Merge pull request #7674 from lat9nq/fix-custom-highlight
...
configure_per_game: Initialize tabs after loading custom configuration
2022-01-05 16:14:15 -08:00
Mai M
2b88e2536c
Merge pull request #7673 from german77/no_return
...
glsl: Remove unreachable return
2022-01-05 06:41:16 -05:00
lat9nq
a8b082c537
configure_per_game: Initialize tabs after loading custom configuration
...
Changes tab initialization to happen after the configuration is loaded,
which means that it no longer happens as member initializers in the
ConfigurePerGame constructor. Removes the cluster of
??_tab->SetConfiguration's that I added earlier to get around this issue
initially.
Fixes a regression in #6774
2022-01-04 23:43:19 -05:00
Narr the Reg
7b752c8f47
video_core: Remove unnecesary maybe_unused flag
2022-01-04 21:25:47 -06:00
Narr the Reg
0646512a9c
glsl: Remove unreachable return
2022-01-04 20:23:39 -06:00
bunnei
ccfce4da6f
Merge pull request #7636 from vonchenplus/buffer_queue_query
...
core:hle:service:nvflinger Implement few type in bufferqueue query method
2022-01-04 11:28:49 -08:00
Fernando S
978517824a
Merge pull request #7670 from ameerj/vsync-block
...
gpu: Add shut down method to synchronize threads before destruction
2022-01-04 14:16:24 +01:00
bunnei
208d87ec53
Merge pull request #7251 from FernandoS27/shader-dump
...
ShaderDecompiler: Add a debug option to dump the game's shaders.
2022-01-03 17:56:30 -08:00
ameerj
664fcdc64b
gpu: Add shut down method to synchronize threads before destruction
2022-01-03 20:47:26 -05:00
Fernando Sahmkow
65387dd0a0
ShaderDecompiler: Add a debug option to dump the game's shaders.
2022-01-04 02:39:00 +01:00
ameerj
8badb6f4a7
Revert "Merge pull request #7668 from ameerj/fence-stop-token"
...
This reverts commit 5a612e9217 , reversing
changes made to 2e61bc3d51 .
2022-01-03 20:28:54 -05:00
bunnei
5a612e9217
Merge pull request #7668 from ameerj/fence-stop-token
...
gpu: Use std::stop_token in WaitFence for VSync thread
2022-01-03 16:40:36 -08:00
bunnei
2e61bc3d51
Merge pull request #7664 from german77/fallback
...
core/hid: Add fallback to fullkey controllers
2022-01-03 15:04:37 -08:00
bunnei
ac2684af9f
Merge pull request #7662 from german77/uistatus
...
yuzu: Fix UI elements not updating correctly
2022-01-03 13:24:15 -08:00
bunnei
440502c8a9
Merge pull request #7663 from german77/applet
...
controller_applet: Only populate supported controllers
2022-01-03 10:51:51 -08:00
ameerj
0585c60227
gpu: Use std::stop_token in WaitFence for VSync thread
...
Fixes a hang that may occur when stopping emulation and the VSync thread is blocked on the syncpoint condition variable.
2022-01-03 12:31:33 -05:00
Fernando S
dd9be795bf
Merge pull request #7648 from bunnei/thread-pinning
...
core: hle: kernel: Implement thread pinning.
2022-01-03 02:01:26 +01:00
Fernando S
97db926f08
Merge pull request #7624 from ameerj/intel-msaa-scale
...
vk_texture_cache: Use 3D scale helpers for MSAA texture scaling on Intel Windows drivers
2022-01-03 00:40:14 +01:00
Fernando S
8a790b09a7
Merge pull request #7629 from ameerj/nv-driver-fixes
...
shaders: Add fixes for NVIDIA drivers 495+
2022-01-03 00:39:59 +01:00
german77
0e9f010ed6
core/hid: Add fallback to fullkey controllers
2022-01-01 22:01:13 -06:00
german77
8b989ac3ae
controller_applet: Only populate supported controllers
2022-01-01 21:42:17 -06:00
german77
4208ac1087
yuzu: Fix UI elements not updating correctly
2022-01-01 17:57:43 -06:00
ameerj
5a7940c1f1
texture_cache/util: Fix s32 overflow when resolving overlaps
2021-12-31 20:03:22 -05:00
ameerj
4c10c0a514
video_core/memory_manager: Fixes for sparse memory management
2021-12-31 17:04:02 -05:00
ameerj
5c644fe97b
video_core/memory_manager: Deduplicate Read/WriteBlock
2021-12-31 02:08:22 -05:00
bunnei
1b4fa1cba3
Merge pull request #7647 from german77/toad
...
core/hid: Fix controller type validation
2021-12-30 16:54:35 -08:00
bunnei
b12695ddc4
core: hle: kernel: Implement thread pinning.
...
- We largely had the mechanics in place for thread pinning, this change hooks these up.
- Validated with tests https://github.com/Atmosphere-NX/Atmosphere/blob/master/tests/TestSvc/source/test_thread_pinning.cpp .
2021-12-30 15:50:45 -08:00
german77
5dab578691
core/hid: Fix controller type validation
2021-12-29 22:51:53 -06:00
bunnei
74e91d06fa
Merge pull request #7635 from bunnei/set-heap-size
...
core: hle: kernel: Updated implementation of svcSetHeapSize.
2021-12-29 20:30:12 -08:00
ameerj
c5c13369fa
glsl: Add boolean reference workaround
2021-12-29 19:03:50 -05:00
ameerj
a57dc3509a
glsl_context_get_set: Add alternative cbuf type for broken drivers
...
some drivers have a bug bitwise converting floating point cbuf values to uint variables. This adds a workaround for these drivers to make all cbufs uint and convert to floating point as needed.
2021-12-29 19:03:50 -05:00
ameerj
0918d673a3
emit_glsl_integer: Use negation work around
2021-12-29 19:03:50 -05:00
ameerj
22a4d26479
shader: Add integer attribute get optimization pass
...
Works around an nvidia driver bug, where casting the integer attributes to float and back to an integer always returned 0.
2021-12-29 19:03:49 -05:00
bunnei
ecc0a7140c
Merge pull request #7618 from goldenx86/patch-4
...
Increase boost requirement to 1.78.0
2021-12-28 16:25:37 -08:00
Matías Locatti
244dff4e6e
Empty spaces
2021-12-28 18:50:51 -03:00
Matías Locatti
1a30c0a125
Changes to avoid warnings in SSE4.2 optimized SPIR-V
2021-12-28 17:35:55 -03:00
Feng Chen
064470286d
Remove invalid assertion statement
2021-12-28 18:51:11 +08:00
Feng Chen
5e725163a0
Remove invalid header include
2021-12-28 18:51:11 +08:00
Feng Chen
669cb21687
Implement few type in bufferqueue query method
2021-12-28 18:51:03 +08:00
bunnei
714dcea191
core: hle: kernel: Updated implementation of svcSetHeapSize.
...
- Updates our svcSetHeapSize with latest HOS, furthermore allowing heap size to properly be extended/shrunk.
- Validated with tests https://github.com/Atmosphere-NX/Atmosphere/blob/master/tests/TestSvc/source/test_set_heap_size.cpp .
2021-12-28 01:25:20 -08:00
bunnei
ae33a76753
Merge pull request #7622 from ameerj/vk-rescale-invalid-ptr
...
vk_texture_cache: Fix invalidated pointer access
2021-12-28 00:46:37 -08:00
bunnei
5217285536
Merge pull request #7621 from bunnei/set-mem-perm
...
core: hle: kernel: Implement SetMemoryPermission.
2021-12-27 23:33:11 -08:00
bunnei
faefe5808b
Merge pull request #7630 from ameerj/glasm-get-int
...
emit_glasm_context_get_set: Fix GetAttribute return value type.
2021-12-27 16:35:11 -08:00
bunnei
0c6edee2ea
Merge pull request #7620 from bunnei/kernel-thread-x18
...
core: hle: kernel: KThread: X18 should be a cryptographically random number.
2021-12-25 00:42:54 -08:00
ameerj
44832be5d2
emit_glasm_context_get_set: Fix GetAttribute return value type.
...
GetAttribute expects an F32 result type at the IR level, this fixes the return value of attributes which were not returning an F32
2021-12-24 20:45:07 -05:00
ameerj
fbb33df96f
emit_glsl_floating_point: Fix FPNeg on newer Nvidia drivers
2021-12-24 20:03:54 -05:00
ameerj
bb108db1de
vk_texture_cache: Use 3D scale helpers for MSAA texture scaling on Intel Windows drivers
...
Fixes a crash when scaling MSAA textures in titles such as Sonic Colors Ultimate.
2021-12-23 22:35:19 -05:00
ameerj
b22cc82f64
blit_image: Remove unused function
2021-12-23 21:06:32 -05:00
ameerj
531d53d6b9
vk_texture_cache: Fix invalidated pointer access
...
The vulkan ImageView held a reference to its source image for rescale status checking. This pointer is sometimes invalidated when the texture cache slot_images container is resized.
To avoid an invalid pointer dereference, the ImageView now holds a reference to the container itself.
2021-12-23 20:55:48 -05:00
bunnei
555481005d
core: hle: kernel: Implement SetMemoryPermission.
...
- Not seen in any games yet, but validated with kernel tests.
2021-12-23 01:10:36 -08:00
bunnei
bc45d0fc1a
core: hle: kernel: KThread: X18 should be a cryptographically random number.
...
- This was added with firmware 11.0.0 (https://switchbrew.org/wiki/11.0.0 ).
- X18 is OR'd by kernel with 1, to make sure it is odd.
2021-12-23 00:03:39 -08:00
bunnei
3a5cfa915c
Merge pull request #7614 from liushuyu/fix-linux-inhibit
...
main: Fix wake lock (prevent sleep) in Flatpak
2021-12-22 16:53:54 -08:00
Fernando S
a11457fd09
Merge pull request #7616 from bunnei/fix-get-idle-ticks
...
hle: kernel: svc: GetInfo: Fix error checking with IdleTickCount.
2021-12-22 17:39:17 +01:00
Fernando S
88a132afcf
Merge pull request #7375 from vonchenplus/convert_legacy
...
Convert all legacy attributes to generic attributes
2021-12-22 17:36:05 +01:00
liushuyu
39d70e9799
main: reword inhibit reason
2021-12-22 02:33:01 -07:00
liushuyu
68901da65f
main: fix wake lock in Flatpak ...
...
... by using the XDP system
2021-12-22 02:27:09 -07:00
bunnei
d3c26baaf1
Merge pull request #7599 from FernandoS27/primrestart-vulkan
...
Vulkan: Fix Primitive Restart and implement Logical Operations
2021-12-22 00:19:23 -08:00
bunnei
ae8c0738dc
Merge pull request #7602 from jbeich/freebsd-vaapi
...
build: enable VA-API on FreeBSD
2021-12-21 22:46:49 -08:00
bunnei
a1f637a6d0
hle: kernel: svc: GetInfo: Fix error checking with IdleTickCount.
...
- Enforce tha the supplied handle is invalid, not valid.
- This gets Witcher 3 booting.
2021-12-21 22:41:23 -08:00
bunnei
feab3f5d6b
Merge pull request #7604 from ameerj/fullscreen-render-window
...
main: Make separate render window fullscreen toggle on the monitor it resides in
2021-12-21 18:05:11 -08:00
bunnei
bfa149aefe
Merge pull request #7608 from Tatsh/scm-ver-override
...
Allow overriding SCM version info
2021-12-21 16:07:27 -08:00
bunnei
d7d066e266
Merge pull request #7481 from german77/gyro-bias
...
service/hid: Improve console motion accuracy
2021-12-21 00:13:54 -08:00
Andrew Udvare
31c8b5013c
Allow overriding SCM version info
...
If the build is from a non-repository, these functions will return empty. This
patch allows using defines to CMake to set version info such as
-DGIT_BRANCH=master.
2021-12-20 19:13:07 -05:00
bunnei
3f3eb16bc9
Merge pull request #7597 from bunnei/remove-global-lock
...
core: hle: Remove global HLE lock.
2021-12-20 14:24:50 -08:00
ameerj
95aa9434ce
main: Refactor to reduce code duplication in ShowFullscreen()
2021-12-19 02:09:37 -05:00
ameerj
cd7e6b3250
main: Make render window borderless fullscreen toggle on the monitor it resides in
...
Toggling borderless fullscreen on the separate render window made it fullscreen on the monitor which the main yuzu window resided in.
This change allows the render window to go fullscreen on the monitor it resides in, independent of the main window location.
2021-12-19 02:08:48 -05:00
ameerj
1fff9ea35e
kernel: Manually destroy the current process during shut down
...
Avoids a memory leak.
2021-12-19 01:38:25 -05:00
Jan Beich
85f65a6995
video_core/codecs: re-enable VAAPI/VDPAU on BSDs after f91cc356fb
2021-12-18 20:57:30 +00:00
Morph
5d73d0b0ae
Merge pull request #7593 from german77/brrr_test
...
core/hid: Cancel any vibration after the test
2021-12-18 15:53:15 -05:00
Morph
c70fb46b04
Merge pull request #7600 from bunnei/fix-kip-loading
...
core: loader: kip: Minimal changes to fix KIP loading.
2021-12-18 15:50:25 -05:00
bunnei
165de9393f
Merge pull request #7587 from liushuyu/fix-linux-decoding
...
[Patch v2] externals/ffmpeg: refactor ffmpeg searching and handling in cmake
2021-12-18 02:33:07 -08:00
bunnei
aa1ec63508
Merge pull request #7302 from VPeruS/check-deadlock
...
[input_common] Fixed thread hang
2021-12-17 23:43:19 -08:00
bunnei
acd1fff964
core: loader: kip: Minimal changes to fix KIP loading.
...
- Allows us to boot KIP (kernal apps), useful for testing the kernel.
2021-12-17 23:08:51 -08:00
vonchenplus
8fe519b656
Address format clang
2021-12-18 14:27:07 +08:00
Fernando Sahmkow
15c634806b
Vulkan: Fix the checks for primitive restart extension.
2021-12-18 07:17:08 +01:00
Fernando S
fff375ff89
Merge pull request #7399 from ameerj/art-refactor
...
video_core: Refactoring post A.R.T. merge
2021-12-18 07:09:58 +01:00
vonchenplus
8ea541bc11
Remove spirv handle legacy related code
2021-12-18 14:08:50 +08:00
vonchenplus
ac51211ce4
Remove glsl handle legacy related code
2021-12-18 14:03:40 +08:00
Feng Chen
c8dab19f32
Merge branch 'yuzu-emu:master' into convert_legacy
2021-12-18 13:57:14 +08:00
Fernando Sahmkow
ce7c3bdf0c
Vulkan: implement Logical Operations.
2021-12-18 06:52:28 +01:00
Fernando Sahmkow
790bbcb016
Vulkan: Implement VK_EXT_primitive_topology_list_restart
2021-12-18 05:47:48 +01:00
bunnei
cdb6743b17
Merge pull request #7570 from ameerj/favorites-expanded
...
game_list: Add persistent setting for the favorites row expanded state
2021-12-17 16:09:05 -08:00
bunnei
5192e8e092
core: hle: Remove global HLE lock.
...
- This was added early on as a hack to protect against some concurrency issues.
- It's not clear that this serves any purpose anymore, and if it does, individual components should be fixed rather than using a global recursive mutex.
2021-12-17 16:05:51 -08:00
vperus
e1250d7303
[input_common] Move variable declaration closer to usage
...
MSVC supplied with VS2022 generates "warning C4189: 'CALIBRATION_THRESHOLD':
local variable is initialized but not referenced" which is treated as an
error.
Circumvent it by moving constexpr variable directly into body of lambda function.
2021-12-17 20:51:47 +02:00
Narr the Reg
3554c18269
core/hid: Cancel any vibration after the test
2021-12-16 13:35:15 -06:00
bunnei
ff1f70a893
Merge pull request #7532 from goldenx86/patch-3
...
Update video core popup
2021-12-15 22:32:27 -08:00
Matías Locatti
c5ea2d95af
Suggestions from CrusadingNinja
2021-12-16 02:57:45 -03:00
Matías Locatti
1fea906060
Changed link
2021-12-16 02:40:30 -03:00
bunnei
dc3125296c
Merge pull request #7551 from vonchenplus/fix_blit_image_view_mismatching
...
Fix blit image/view not compatible
2021-12-15 21:39:53 -08:00
liushuyu
f722e83537
video_core/codecs: (re-spin) refactor ffmpeg searching and handling
2021-12-15 20:57:01 -07:00
bunnei
3ded539d4f
Merge pull request #7588 from Wunkolo/gibibibi-bytes
...
yuzu/main: Fix host memory byte units. GB to GiB
2021-12-15 12:04:37 -08:00
bunnei
15a4248f46
Revert "video_core/codecs: refactor ffmpeg searching and handling in cmake"
2021-12-15 00:02:53 -08:00
Wunkolo
a8d8df4bde
yuzu/main: Fix host memory byte units. GB to GiB
...
I have `134850146304` bytes of ram and Yuzu was saying that I had `125.59 GB`
of ram. But `125.59` is actually the amount of gi**bi**bytes I have. In
gi**ga**bytes I would have `134.9`.
Additionally, I changed the `1024 / 1024 / 1024` here into the `_GiB`
user-literals that I added a while ago(#6519 ).
https://www.wolframalpha.com/input/?i=134850146304+bytes
2021-12-14 23:57:33 -08:00
bunnei
bf62cd3221
Merge pull request #7565 from liushuyu/fix-linux-decoding
...
video_core/codecs: refactor ffmpeg searching and handling in cmake
2021-12-14 22:27:13 -08:00
Mai M
14a84586fb
Merge pull request #7558 from Morph1984/unused-cpu-family-model
...
common/cpu_detect: Remove CPU family and model
2021-12-14 23:43:16 -05:00
Mai M
0a83bc9881
Merge pull request #7549 from Morph1984/astc-8x5
...
maxwell_to_vk: Add ASTC_2D_8X5_UNORM
2021-12-14 23:42:44 -05:00
Mai M
7f48c6cecc
Merge pull request #7579 from Morph1984/swkbd-oob-array-access
...
qt_software_keyboard: Fix out of bounds array access
2021-12-14 23:42:07 -05:00
Narr the Reg
3e0a577553
core/hid: Fix faulty analog triggers
2021-12-14 19:49:44 -06:00
Narr the Reg
8222f70144
Merge pull request #7581 from lioncash/input-iface
...
common/input: Avoid numerous large copies of CallbackStatus
2021-12-14 19:10:39 -06:00
Narr the Reg
a980d24a54
Merge pull request #7577 from v1993/patch-2
...
input/SDL: Update SDL hints
2021-12-14 10:12:17 -06:00
Valeri
af37388ee5
input/SDL: Update SDL hints
...
SDL_HINT_JOYSTICK_HIDAPI_SWITCH_HOME_LED is no longer needed thanks to new default in SDL 2.0.18.
SDL_HINT_JOYSTICK_HIDAPI_XBOX is reported to cause conflicts with native driver Xbox driver on Linux, and Xbox controllers don't benefit from hidapi anyways.
2021-12-14 15:02:03 +03:00
liushuyu
538db2d872
CI: fix CI on Linux
2021-12-13 22:31:19 -07:00
liushuyu
f7516c3fda
video_core/codecs: skip decoders that use hw frames ...
...
... this would resolve some edge-cases where multiple devices are
present and ffmpeg is unable to auto-supply the hw surfaces
2021-12-13 22:29:19 -07:00
Lioncash
726de453bb
common/input: Avoid numerous large copies of CallbackStatus
...
CallbackStatus instances aren't the cheapest things to copy around
(relative to everything else), given that they're currently 520 bytes in
size and are currently copied numerous times when callbacks are invoked.
Instead, we can pass the status by const reference to avoid all the
copying.
2021-12-13 21:22:02 -05:00
Morph
2e4b0fa68c
common/cpu_detect: Remove CPU family and model
...
We currently do not make use of these fields, remove them for now.
2021-12-13 20:45:18 -05:00
Lioncash
319b0ed324
common/input: Remove unnecessary returns
...
Given these return void, these can be omitted.
2021-12-13 20:43:12 -05:00
Lioncash
3dbb700714
input_poller: Add missing override specifiers
2021-12-13 20:41:17 -05:00
Lioncash
46c7e48143
input_mapping: Amend specification of parameters
...
param tags are supposed to specify the parameter name without any
quoting.
Silences several -Wdocumentation warnings.
2021-12-13 20:31:59 -05:00
Lioncash
c73ebb7d89
input_poller: Remove several unnecessary @param tags
...
Silences quite a bit of -Wdocumentation warnings, given the @param tag
is only intended to be used to identify function parameters, not what it
contains.
2021-12-13 20:28:30 -05:00
bunnei
7347d2e33f
Merge pull request #7575 from lioncash/input
...
input_engine: Minor object churn cleanup
2021-12-13 16:50:54 -08:00
Morph
21ef5f290d
qt_software_keyboard: Fix out of bounds array access
...
We were unconditionally accessing the keyboard_buttons array, even if the bottom_osk_index was for the numberpad, leading to an out of bounds array access. Fix this by accessing the proper array for the current button when the index is for the numberpad.
2021-12-13 19:04:07 -05:00
Lioncash
f63a50ce9d
tas_input: Avoid minor copies in Read/WriteCommandButtons()
...
We don't need to copy the whole pair
2021-12-13 11:45:19 -05:00
Lioncash
bac72cecf9
tas_input: Remove unnecessary semicolon
...
Resolves a -Wextra-semi warning
2021-12-13 11:45:19 -05:00
Lioncash
6a9fe940d2
tas_input: Execute clear() even if empty
...
clear() when empty is simply a no-op, so we can get rid of the check
here and let the stdlib do it for us.
2021-12-13 11:45:18 -05:00
Lioncash
8b6137eb79
tas_input: Remove unnecessary includes
...
Gets rid of indirect includes and includes only what the interface
needs.
2021-12-13 11:45:18 -05:00
Lioncash
4284fe0d78
tas_input: std::move strings into vector
...
While we're in the same area, we can also avoid performing std::stoi in
a loop when it only needs to be performed once.
2021-12-13 11:45:15 -05:00
Lioncash
c12653670c
tas_input: Use istringstream over stringstream
...
This is only using the input facilities, so we don't need to use the
fully-fleged stringstream.
2021-12-13 10:57:53 -05:00
Lioncash
4dce3a6cf4
tas_input: Use u8string_view instead of u8string
...
Same behavior, but without the potential for extra allocations.
2021-12-13 10:54:43 -05:00
Lioncash
b2c94d8cd4
tas_input: Remove unused std::smatch variable
...
This also means we can get rid of the dependency on <regex>
2021-12-13 10:50:24 -05:00
Lioncash
f1ff42541a
tas_input: Amend -Wdocumentation warnings
...
Parameters shouldn't have the colon by their name.
2021-12-13 10:49:11 -05:00
Lioncash
a82bb17b08
tas_input: Make TasAxes enum an enum class
...
Prevents these values from potentially clashing with anything in other
headers.
2021-12-13 10:41:32 -05:00
Lioncash
71467b1383
input_engine: Fix typo in TriggerOnAxisChange() parameter name
2021-12-13 10:21:37 -05:00
Lioncash
e609218c0f
input_engine: Simplify PreSet* family of functions
...
We can make use of try_emplace() to insert values only if they don't
already exist.
2021-12-13 10:18:04 -05:00
Lioncash
14f7f35957
input_engine: Avoid redundant map lookups
...
We can use iterators to avoid looking up into maps twice in the getter
functions.
At the same time we can also avoid copying the ControllerData structs,
since they're 264 bytes in size.
2021-12-13 09:57:51 -05:00
Lioncash
e7c5737e2e
input_engine: Remove left-over namespace qualifiers
...
These types are part of the InputCommon namespace.
2021-12-13 09:57:51 -05:00
Lioncash
f8db0a76af
input_engine: Iterate by reference rather than by value where applicable
...
Avoids creating copies of several object instances (some of which being
over 100 bytes in size).
2021-12-13 09:57:51 -05:00
Lioncash
190cfc5997
input_engine: Take BasicMotion by const reference with SetMotion() and TriggerOnMotionChange()
...
Copies the BasicMotion instance once instead of twice.
2021-12-13 09:57:39 -05:00
Lioncash
e0e9f98fc6
input_engine: std::move InputIdentifier in SetCallback()
...
Allows avoiding std::function allocations.
2021-12-13 09:23:23 -05:00
Lioncash
cd45635f56
input_engine: Pass LedStatus by const reference
...
Avoids copies where reasonably applicable
2021-12-13 09:20:58 -05:00
Lioncash
f41c22d30f
input_engine: Pass VibrationStatus by const reference in SetRumble()
...
Avoids creating copies of the struct where not necessary.
2021-12-13 09:16:10 -05:00
Lioncash
54e164d9de
input_engine: std::move engine name where applicable
...
We can allow the name to be moved into, allowing allocations to be
avoided.
2021-12-13 09:05:50 -05:00
Lioncash
d62545828a
input_engine: Remove callback clearing in constructor
...
The callback map is a member variable, so this will always be empty on
initial construction.
2021-12-13 08:54:23 -05:00
Lioncash
7e34562d34
input_engine: Remove unnecessary semi-colons
...
Silences -Wextra-semi warnings
2021-12-13 08:53:01 -05:00
Lioncash
caae5d3868
input_engine: Remove unnecessary return
...
This is a void function, so it doesn't need this.
2021-12-13 08:52:09 -05:00
Valeri
295b676fe6
Remove erroneous #pragma once
2021-12-13 16:49:01 +03:00
bunnei
5273e0665e
Merge pull request #7462 from bunnei/kernel-improve-scheduling
...
Kernel: Improve threading & scheduling V3
2021-12-12 22:43:25 -08:00
Narr the Reg
66a86f54af
service/hid: Improve console motion accuracy
2021-12-12 23:26:04 -06:00
ameerj
8f764d62a5
game_list: Add persistent setting for the favorites row expanded state
...
Previously, the favorites row was always expanded on launch. This change introduces a persistent setting that allows the favorites row's expanded state to be remembered between launches.
2021-12-12 15:46:42 -05:00
Morph
036cb348bf
maxwell_to_vk: Add ASTC_2D_5X4_UNORM
2021-12-10 22:44:24 -05:00
Feng Chen
755963ada1
Fix blit image/view not compatible
2021-12-10 12:41:09 +08:00
Morph
0f7d2bbd55
maxwell_to_vk: Add ASTC_2D_8X5_UNORM
...
- Used by Lego City Undercover
2021-12-09 13:53:53 -05:00
Morph
16fa8e0b37
Merge pull request #7495 from FernandoS27/text-blit-fix-again
...
Texture Cache: Fix mismatching image/views on blits
2021-12-09 05:26:21 -05:00
bunnei
99f7732667
Merge pull request #7519 from itsmeft24/master
...
kernel: svc: Implement ProcessMemory and CodeMemory SVCs
2021-12-09 00:29:09 -08:00
Morph
006965d3c0
profiler: Use QWheelEvent position().toPoint()
...
QWheelEvent::pos() is deprecated. Make use of position().toPoint() instead.
2021-12-08 15:25:46 -05:00
Morph
052c01db9a
renderer_vulkan: Add R16G16_UINT
...
- Used by Immortals Fenyx Rising
2021-12-08 10:55:11 -05:00
bunnei
abecd3905d
Merge pull request #7525 from german77/notifa
...
service/notif: Add notif:a and stub ListAlarmSettings, Initialize
2021-12-07 23:31:44 -08:00
bunnei
d3b0025bd1
Merge pull request #7521 from german77/dual_single_joycons
...
service/hid: Implement SetNpadJoyAssignmentMode
2021-12-07 21:03:42 -08:00
bunnei
962a2a65a0
Merge pull request #7488 from vonchenplus/support_multiple_videos_playing
...
Support multiple videos playing
2021-12-07 18:38:14 -08:00
Mai M
2f01374013
Merge pull request #7506 from heinermann/focus_crash
...
Fixed #7502
2021-12-07 18:28:16 -05:00
Mai M
5a19374ea8
Merge pull request #7522 from ameerj/shader-recompiler-filenames
...
shader_recompiler/backend: Minor organization and refactoring to reduce compile time overhead
2021-12-07 18:27:50 -05:00
itsmeft24
9a28199c5a
Update k_code_memory.h
2021-12-07 16:58:23 -05:00
itsmeft24
4b0b2d7d1d
make KCodeMemory::GetSourceAddress const
...
Co-authored-by: Mai M. <mathew1800@gmail.com>
2021-12-07 07:58:33 -05:00
Matías Locatti
aca763fd98
main: Update video core popup
...
Old version had formatting issues, and I want to provide an answer to the most common reason this pops up in the first place, outdated drivers.
2021-12-06 20:35:07 -05:00
bunnei
5788e077cd
hle: kernel k_scheduler: EnableScheduling: Remove redundant GetCurrentThreadPointer calls.
2021-12-06 16:39:18 -08:00
bunnei
1b1ed86ec7
hle: kernel k_process: Remove unnecessary .at usage with thread pinning methods.
2021-12-06 16:39:18 -08:00
bunnei
38a6477770
hle: kernel: Remove unnecessary virtual specifier on NotifyAvailable.
2021-12-06 16:39:18 -08:00
bunnei
829c4b6144
hle: kernel: Remove unnecessary virtual specifier on EndWait.
2021-12-06 16:39:18 -08:00
bunnei
1457a75a40
hle: kernel: k_light_condition_variable: Revert unnecessary license comment changes.
2021-12-06 16:39:18 -08:00
bunnei
cd4582dc8b
hle: kernel: k_condition_variable: Revert unnecessary style changes.
2021-12-06 16:39:18 -08:00
bunnei
4b2aa52da9
hle: kernel: Remove unnecessary virtual specifier on CancelWait.
2021-12-06 16:39:18 -08:00
bunnei
273223d5f1
hle: kernel: service_thread: Force stop threads on destruction.
2021-12-06 16:39:18 -08:00
bunnei
0231cbd79f
hle: kernel: k_light_lock: Implement CancelWait.
...
- Fixes a crash in Megadimension Neptunia VII.
2021-12-06 16:39:18 -08:00
bunnei
d17b7268f6
hle: kernel: service_thread: Use std::jthread.
...
- Fixes a potential deadlock on service thread shutdown.
2021-12-06 16:39:18 -08:00
bunnei
b5970145a5
hle: kernel: k_thread: Skip reschedule on DisableDispatch with SC.
2021-12-06 16:39:18 -08:00
bunnei
6d2bf18df9
hle: kernel: k_thread: Rename sleeping_queue -> wait_queue.
2021-12-06 16:39:18 -08:00
bunnei
43d706c7d2
hle: kernel: svc: Fix deadlock that can occur with single core.
2021-12-06 16:39:18 -08:00
bunnei
826b07162a
hle: kernel: k_thread: Treat dummy threads as a special type.
2021-12-06 16:39:18 -08:00
FernandoS27
8a38790bd3
hle: kernel: fix timing on thread preemption
2021-12-06 16:39:18 -08:00
FernandoS27
2a7b4489a0
hle: kernel: fix scheduling ops from HLE host thread.
2021-12-06 16:39:17 -08:00
bunnei
58da4d5a6e
hle: kernel: Add a flag for indicating that the kernel is currently shutting down.
2021-12-06 16:39:17 -08:00
bunnei
975a4f786b
hle: kernel: KSynchronizationObject: Fix variable shadowing.
2021-12-06 16:39:17 -08:00
bunnei
eb34276885
hle: kernel: Cleanup to match coding style.
2021-12-06 16:39:17 -08:00
bunnei
8fc7d6e631
hle: kernel: KProcess: Improvements for thread pinning.
2021-12-06 16:39:17 -08:00
bunnei
e9231a0b8c
hle: kernel: KThreadQueue: Remove deprecated code.
2021-12-06 16:39:17 -08:00
bunnei
ecd17bbbe4
hle: kernel: KConditionVariable: Various updates & simplifications.
2021-12-06 16:39:17 -08:00
bunnei
050a4270d6
hle: kernel: KThread: Migrate to updated KThreadQueue (part 2).
2021-12-06 16:39:17 -08:00
bunnei
778f03c57a
hle: kernel: KThread: Migrate to updated KThreadQueue (part 1).
2021-12-06 16:39:17 -08:00
bunnei
756fdcbdb1
hle: kernel: KConditionVariable: Migrate to updated KThreadQueue.
2021-12-06 16:39:17 -08:00
bunnei
f81a6a07c0
hle: kernel: KServerSession: Migrate to updated KThreadQueue.
2021-12-06 16:39:17 -08:00
bunnei
346f6e54b5
hle: kernel: KLightConditionVariable: Migrate to updated KThreadQueue.
2021-12-06 16:39:17 -08:00
bunnei
5ff19c33fc
hle: kernel: KLightLock: Migrate to updated KThreadQueue.
2021-12-06 16:39:17 -08:00
bunnei
2ff578f0ee
hle: kernel: KAddressArbiter: Migrate to updated KThreadQueue.
2021-12-06 16:39:17 -08:00
bunnei
0ad0543cde
hle: kernel: KThread: Remove tracking of sync object from threads.
2021-12-06 16:39:17 -08:00
bunnei
e9cdb3cccb
hle: kernel: Update KThreadQueue and migrate KSynchronizationObject.
2021-12-06 16:39:17 -08:00
bunnei
01b0e5b168
core: hle: kernel: Disable dispatch count tracking on single core.
...
- This would have limited value, and would be a mess to handle properly.
2021-12-06 16:39:17 -08:00
bunnei
a3dd417cbf
core: hle: kernel: k_thread: Mark KScopedDisableDispatch as nodiscard.
2021-12-06 16:39:17 -08:00
bunnei
6fd0256f77
core: cpu_manager: Use invalid core_id on init and simplify shutdown.
2021-12-06 16:39:17 -08:00
bunnei
5892c23e30
core: hle: kernel: k_auto_object: Add GetName method.
...
- Useful purely for debugging.
2021-12-06 16:39:16 -08:00
bunnei
51a7f04b81
core: hle: kernel: DisableDispatch on suspend threads.
2021-12-06 16:39:16 -08:00
bunnei
d31fc39e05
core: hle: kernel: k_scheduler: Improve DisableScheduling and EnableScheduling.
2021-12-06 16:39:16 -08:00