Commit Graph

19994 Commits

Author SHA1 Message Date
Andrea Pappacoda b1585fed5a chore: fix some typos
Fix some typos reported by Lintian
2022-09-23 13:38:23 +02:00
Andrea Pappacoda c7832866b3 build(room): simplify yuzu-room installation
CMake is able to automatically install binaries in the correct location. Also see my older patch, 6f16891f43

Cc: @FearlessTobi
2022-09-22 21:51:56 +02:00
Lioncash a260c09deb sockets: Make fd member variable protected
Other things shouldn't be able to directly mess around with the
descriptor
2022-09-22 08:20:54 -04:00
Kelebek1 c8f8b9e076 Do not try to pause core timing from the audio thread when using single-core 2022-09-22 01:23:57 +01:00
Narr the Reg ca0d1fd4f1 yuzu: Silence some clang warnings 2022-09-21 11:51:31 -05:00
Lioncash 17a8113847 audio_renderer: Make GetCommandBuffer() take a u32
This function is only ever called with unsigned types, and all of the
other interface functions take session_id as a u32, so this makes the
class a little more consistent.
2022-09-21 10:00:57 -04:00
Lioncash b224cf3809 audio_manager: Forward declare result type
Moves the include into the cpp file to lessen header dependencies.
2022-09-21 09:43:59 -04:00
Lioncash bf679951d1 audio_manager: Remove redundant cast in ThreadFunc()
We can just use a local here to get rid of a second cast.
2022-09-21 09:35:22 -04:00
Lioncash d268f6fc9e audio_manager: move std::functions in SetOutManager/SetInManager
Prevents unnecessary reallocations in the event the captured variables
are larger than the internal std::function buffer.
2022-09-21 09:32:15 -04:00
Lioncash 6ac5fbc81b audio_manager: Remove unused forward declarations
Allows us to get rid of some unnecessary forward declarations and
includes.
2022-09-21 09:29:35 -04:00
Lioncash d10f7af6cb audio_manager: Remove unused sessions_started member variable
This isn't used, so it can be removed.
2022-09-21 09:28:05 -04:00
Lioncash 1019e52885 audio_manager: Remove dependence on system state
This isn't used by the class, so this can be removed for the time being.
2022-09-21 09:26:42 -04:00
FearlessTobi 1c14030b31 Address some review comments 2022-09-20 19:36:32 +02:00
FengChen 1dd5d8fc8e video_core: Fix legacy to generic location unpaired 2022-09-20 12:03:31 +08:00
Feng Chen 328ad69854 Merge branch 'master' into mipmap 2022-09-20 11:56:43 +08:00
FengChen 38e9c78843 video_core: Generate mipmap texture by drawing 2022-09-20 11:55:43 +08:00
bunnei fa7daaf171 Merge pull request #8849 from Morph1984/parallel-astc
astc: Enable parallel CPU astc decoding
2022-09-19 12:17:51 -07:00
lat9nq e5392df1a5 yuzu qt: Add option to disable startup Vulkan check
The startup check apparently confuses other programs when yuzu launches
2 processes and then quickly closes one of them. Though this isn't
really our issues it's also not a big deal for me to add an option to
work around that issue.
2022-09-19 14:46:12 -04:00
bunnei f39b70a21b Merge pull request #8915 from vonchenplus/opus_multi_stream
core: implement HwOpus GetWorkBufferSizeForMultiStreamEx
2022-09-17 16:07:33 -07:00
Alexandre Bouvier 8a1d99e72d cmake: fix git detection 2022-09-18 00:04:35 +02:00
bunnei c5d72b926d Merge pull request #8827 from german77/amiibo_release
core: nfp: Implement amiibo encryption
2022-09-17 11:11:21 -07:00
bunnei 58975829b7 Merge pull request #8650 from Kelebek1/vsync
[Coretiming/NVNFlinger] Improve multi-core vsync timing, and core timing accuracy
2022-09-17 11:10:54 -07:00
bunnei bc648de552 Merge pull request #8914 from lioncash/audio-const
audio_core: Mark several member functions as const
2022-09-16 23:51:31 -07:00
bunnei 2b1c08bc2b Merge pull request #8906 from Docteh/fix_icons
UI: move icons from default into colorful theme.
2022-09-16 18:12:04 -07:00
Morph 8298ce7856 Merge pull request #8869 from SachinVin/cmake
core/CMakeLists.txt: Remove duplicate files.
2022-09-16 13:11:33 -04:00
Morph f013dea5aa Merge pull request #8649 from lat9nq/common-position-independent
common: Use PROJECT_SOURCE_DIR to find CMakeModules
2022-09-16 12:48:53 -04:00
Morph 8c3b3247ea Merge pull request #8682 from lat9nq/dumpy
yuzu qt: Add option to create Windows crash dumps
2022-09-16 12:47:51 -04:00
FengChen b85bd1b548 core: implement HwOpus GetWorkBufferSizeForMultiStreamEx 2022-09-17 00:28:56 +08:00
Morph 8eb4dc577c Merge pull request #8911 from lioncash/cexpr-string
audio_device: Make AudioDeviceName constructor constexpr
2022-09-16 10:18:58 -04:00
Morph e48a46f331 astc: Enable parallel CPU astc decoding
Given the issues with GPU accelerated ASTC decoding with NVIDIA's latest drivers, parallelize astc decoding on the CPU.
Uses half the available threads in the system for astc decoding.
2022-09-16 10:16:42 -04:00
Lioncash 98396de8f3 audio_renderer: Pass command buffer by const reference
This is just being copied and isn't modified at all.
2022-09-16 10:06:53 -04:00
Lioncash d4623d8dc8 sink_stream: Mark GetQueueSize as const 2022-09-16 10:00:52 -04:00
Lioncash 80bcd1a873 node_states: Mark relevant member functions as const 2022-09-16 09:59:56 -04:00
Lioncash f7da76494b i3dl2/reverb: Mark relevant member functions as const
These two don't modify member state.
2022-09-16 09:58:49 -04:00
Lioncash 5629e0e145 behavior_info: Mark CopyErrorInfo as const
This doesn't modify member state.

We can also mark the parameter of AppendError as const as well, since it
isn't modified.
2022-09-16 09:55:17 -04:00
Lioncash a66000f077 audio_device: Mark GetDeviceVolume as const
This doesn't modify instance state.
2022-09-16 09:52:34 -04:00
Lioncash 7ed5490b2f audio_render_manager: Mark several functions as const 2022-09-16 09:50:32 -04:00
Lioncash 7ee4876f17 audio_in: Mark several functions as const
These functions don't modify class state, so we can mark them as such
2022-09-16 09:45:54 -04:00
Lioncash 1e6ce3d3c9 audio_out: Mark several functions as const
These don't affect class state, so we can mark them as such.
2022-09-16 09:45:51 -04:00
Lioncash 12b4a200e9 audio_buffers: Pass by const-ref in AppendBuffers
This function doesn't modify the passed in buffer, so we can make that
explicit.
2022-09-16 09:36:03 -04:00
Lioncash f726bcbf56 device_session: Convert for loop into ranged for in AppendBuffers
Simplifies the indexing code a little bit.
2022-09-16 09:32:57 -04:00
Lioncash 0bf42e31e4 device_session: Pass arguments by const-ref in relevant functions
These functions don't modify the passed in audio buffers, so we can
signify that in the interface.
2022-09-16 09:31:33 -04:00
Kyle Kienapfel 4b86f6d066 UI: move icons from default into colorful theme.
colorful theme has been default theme for awhile. having colorful theme
try and grab icons from other theme doesn't work on Linux.

Also adding two additional icons, info is to hint to the user that they
should hit verify after pasting in a token, sync is to show that the
verification is occurring.
2022-09-15 23:00:49 -07:00
bunnei ba667d9af0 Merge pull request #8878 from Kelebek1/remove_pause
Remove pause callbacks from coretiming
2022-09-15 13:50:13 -07:00
liamwhite 714af6a6ac Merge pull request #8901 from lioncash/docs
audio_core: Amend documentation comment tags
2022-09-15 10:36:18 -04:00
Narr the Reg d1327c5ddc Merge pull request #8909 from Docteh/taslinky
UI: Fix link to TAS help page
2022-09-15 08:48:12 -05:00
Lioncash af8ce57e18 audio_core: Amend documentation tags
Resolves a wackload of -Wdocumentation warnings due to mismatching tags
and whatnot.
2022-09-15 09:47:23 -04:00
Mai 2163fc3eae Merge pull request #8904 from liushuyu/fix-xbyak-linkage
common: do not link to xbyak on non-amd64 architectures
2022-09-15 09:44:57 -04:00
Lioncash 1747b5ae6c audio_device: Mark member functions as const where applicable
These member functions don't modify any internal state.
2022-09-15 09:06:17 -04:00
Lioncash 0f1024b334 audio_device: Make AudioDeviceName constructor constexpr
These are used as read-only arrays, so we can make the data read-only
and available at compile-time.

Now constructing an AudioDevice no longer needs to initialize some
tables
2022-09-15 09:03:40 -04:00
FengChen b8b37d6900 video_core: Modify astc texture decode error fill value 2022-09-15 17:04:44 +08:00
Kyle Kienapfel 82258e77ff UI: Fix link to TAS help page
Tools -> TAS -> Configure TAS

Thanks to Rei on discord for the fix.

Basically: openExternalLinks is a checkbox in Qt Creator
2022-09-15 01:43:03 -07:00
liushuyu 49e1d6f43c common: do not link to xbyak on non-amd64 architectures 2022-09-13 17:19:37 -06:00
Lioncash b3c364d18b compressor: Simplify memset in InitializeCompressorEffect
Provides equivalent behavior while being significantly smaller.
2022-09-13 13:34:58 -04:00
Lioncash d145c663c3 compressor: Mark params parameters as const
These functions don't modify the parameters.
2022-09-13 13:33:41 -04:00
Lioncash 3a30364ff1 compressor: Remove unneeded casts in ApplyCompressorEffect
Same behavior, but also silences a -Wcast-qual warning, since the second
cast casts away const.
2022-09-13 13:28:54 -04:00
Kelebek1 c6d4071162 Remove pause callbacks from coretiming 2022-09-13 13:20:35 +01:00
Mai 9b82baf9d6 Merge pull request #8880 from german77/slow-moving
input_common: Increase mapping timer from 2.5 seconds to 4 seconds
2022-09-12 23:30:51 -04:00
Kelebek1 0c01ac7410 Remove a pragma once from a cpp file 2022-09-12 19:27:11 +01:00
german77 1472f16091 input_common: Increase mapping timer from 2.5 seconds to 4 seconds 2022-09-11 08:58:06 -05:00
liushuyu a11b1748b5 dedicated_room: fix token padding ...
... mebedtls' base64 routine has a strange behavioral issue where if the
input is invalid, it will not report it as invalid, but rather returning
a bunch of garbage data. This new round-tripping padding method should
eliminate such issue.
2022-09-10 18:56:29 -05:00
Narr the Reg 9519253ccd fix black icon 2022-09-10 18:56:06 -05:00
bunnei 543aa077ee Merge pull request #8842 from Kelebek1/AudOut
[audio_core] Rework audio output
2022-09-10 11:01:11 -07:00
german77 dd33c0c473 yuzu: Multiple room UI improvements 2022-09-10 19:39:25 +02:00
FengChen ccc4202735 Align index buffe size when vertex_buffer_unified_memory enable 2022-09-10 20:01:33 +08:00
bunnei 44ce3eaf4c Merge pull request #8863 from german77/triggers
core: hid: Fix GC triggers overwriting ZL and ZR buttons
2022-09-09 21:53:53 -07:00
bunnei 7dc3d49135 Merge pull request #8864 from german77/toggle_analog
input_common: Add support for analog toggle
2022-09-09 20:54:01 -07:00
FearlessTobi 48d6226115 ldn: Initial implementation 2022-09-09 14:30:22 +02:00
lat9nq c48259ca81 Merge pull request #8819 from liamwhite/cash-money
video_core: add option for pessimistic flushing
2022-09-08 22:46:58 -04:00
SachinVin 262f5b96b5 core/CMakeLists.txt: Remove duplicate files. 2022-09-08 22:03:53 +05:30
Kyle Kienapfel ec9486ff67 CMake: explicitly link mbedcrypto for yuzu-room
Doesn't appear to effect anything regular, but in both Linux and Windows
builds it looks like our project has all the libraries available for
linking. If this feature is turned off, there is only one thing that
quit working, when linking yuzu-room it couldn't find a function called
mbedtls_base64_decode

mbedtls is split into three libraries for some reason:
mbedtls
mbedx509
mbedcrypto

mbedtls_base64_decode is in mbedcrypto
2022-09-08 05:52:28 -07:00
german77 817b96446e core: nfp: Remove magic numbers 2022-09-07 09:49:43 -05:00
german77 c990e2d2f5 core: nfp: Workaround for lack of multiple nfp interfaces 2022-09-07 01:04:00 -05:00
Narr the Reg 8c377e882e core: nfp: Correct date and amiibo name 2022-09-07 01:04:00 -05:00
Narr the Reg 8301e770f9 core: nfp: Implement Convert and RecreateApplicationArea, accuracy fixes 2022-09-07 01:04:00 -05:00
german77 44dff8f633 core: nfp: Implement amiibo encryption 2022-09-07 01:04:00 -05:00
Narr the Reg 30a63bdb9b yuzu: input: fix invert symbol on axis and order options alphabetically 2022-09-06 11:44:29 -05:00
Narr the Reg d4fb46d8f9 input_common: Add support for analog toggle 2022-09-06 11:21:28 -05:00
bunnei bc5911caa8 Merge pull request #8837 from Morph1984/invalidate
(shader/pipeline)_cache: Raise shader/pipeline cache version
2022-09-05 18:20:54 -07:00
bunnei 106521be61 Merge pull request #8847 from german77/stop
input_common: sdl: Always check for motion on reconnect
2022-09-05 14:50:38 -07:00
Narr the Reg 07d2e08272 core: hid: Fix GC triggers overwritting ZL and ZR buttons 2022-09-05 16:09:21 -05:00
lat9nq a74926319c mini_dump: Address review feedback
Uses fmt::print as opposed to std::fprintf. Adds a missing return.
static's a single-use function. Initializes structs as opposed to
std::memset where possible. Fixes CMake linkage.

Co-authored-by: Lioncash <mathew1800@gmail.com>

mini_dump: Use a namespace

Co-authored-by: Lioncash <mathew1800@gmail.com>
2022-09-04 21:36:35 -04:00
lat9nq 72617ceb01 vcpkg,cmake: Use vcpkg for dbghelp 2022-09-04 21:36:05 -04:00
lat9nq bd3f300964 mini_dump: Check for debugger before spawning a child
mini_dump: Clean up

mini_dump: Fix MSVC error

mini_dump: Silence MSVC warning C4700

Zero initialize deb_ev.

mini_dump: Add license info
2022-09-04 21:36:05 -04:00
lat9nq 49b8c65045 mini_dump: Cleanup and add comments
Removes some unnecessary code.

wip
2022-09-04 21:36:05 -04:00
lat9nq 554b7e220b yuzu: Use a debugger to generate minidumps
yuzu: Move mini_dump out of core

startup_checks: Better exception handling
2022-09-04 21:36:04 -04:00
Kelebek1 77a30f7286 Don't stall with nvdec 2022-09-04 05:41:06 +01:00
Narr the Reg 2d6690468b input_common: sdl: Always check for motion on reconnect 2022-09-03 17:52:57 -05:00
liamwhite 9a73dfdf56 Merge pull request #8855 from german77/pls
core: ns: Implement pl:s service
2022-09-03 18:35:38 -04:00
Narr the Reg 98d62e931a core: ns: Implement pl:s service 2022-09-03 17:32:12 -04:00
Kyle Kienapfel e97afb9e3b Qt: Make General->Debug scrollable
Configuration -> General -> Debug is getting a bit crowded.

yzct12345 submit this originally, so I'm tagging them as a co-author.
The original #6714 also modifies the Controls -> Player N sections,
but it looks like more work is needed to make the current area scrollable.

Co-authored-by: yzct12345 <87620833+yzct12345@users.noreply.github.com>
2022-09-03 04:59:01 -07:00
bunnei 3210654f5a Merge pull request #8822 from FearlessTobi/multiplayer-fixes
network: Fixes and improvements to the room feature
2022-09-02 10:24:32 -07:00
Mai 9bec068e76 Merge pull request #8843 from Kelebek1/SILENCE_WENCH
Silence a million MSVC warnings
2022-09-02 05:51:44 -04:00
Kelebek1 c3e3874d8d Rework audio output, connecting AudioOut into coretiming to fix desync during heavy loads. 2022-09-02 04:43:04 +01:00
FearlessTobi f24b74d4c1 Address review comments 2022-09-02 00:50:32 +02:00
Kelebek1 f121da072a Demote services from warning/info to debug to reduce log spam:
GetCurrentFocusState
SetClockSpeed
EnableSixAxisSensorUnalteredPassthrough
IsSixAxisSensorUnalteredPassthroughEnabled
Get, GetOld
SetAndWait, SetAndWaitOld
IocParam
IocFree
2022-09-01 16:54:22 +01:00
Kelebek1 a0732144ba Silence std::aligned_storage warnings as it's deprecated in C++23,
replace it with alignas() and a C array
2022-09-01 16:50:41 +01:00
Morph 649c49525d style: General style changes to match with the rest of the codebase 2022-08-31 08:51:47 -04:00
Morph 9488b889a0 (shader/pipeline)_cache: Raise shader/pipeline cache version
Since the following commit: af222dc924 , many games will refuse to boot unless the shader/pipeline cache has been invalidated.
2022-08-31 08:39:37 -04:00
Fernando S af222dc924 Merge pull request #8752 from vonchenplus/rectangle_texture
video_code: support rectangle texture
2022-08-31 10:40:45 +02:00
bunnei 87fe8f4085 Merge pull request #8809 from german77/finally_is_fixed
video_core: vulkan: rasterizer: Workaround on viewport swizzle on AMD
2022-08-28 02:46:57 -07:00
FearlessTobi 8a5fed2c9d core/ldn_types: Minor corrections and additions 2022-08-27 04:49:10 +02:00
FearlessTobi 21db2855c0 yuzu/chat_room: Make font size bigger 2022-08-27 04:04:00 +02:00
FearlessTobi ae295a79dc dedicated_room: Correctly handle token decoding
Correctly handle token decoding when '=' has been trimmed by the backend server.

Co-Authored-By: liushuyu <liushuyu011@gmail.com>
2022-08-27 04:00:27 +02:00
FearlessTobi ce204d9ad0 yuzu/multiplayer: Warn when game is running or no network interface is selected 2022-08-27 03:41:19 +02:00
FearlessTobi f3284250ce core/socket_proxy: Correct broadcast behavior
Broadcasts should only be sent when the broadcast IP is used.
They should also only be received when SO_BROADCAST is enabled.
2022-08-27 03:39:02 +02:00
FearlessTobi 31c4475420 yuzu: Display current game version in multiplayer room
Makes it easier for users to recognize connection errors caused by different game versions.
2022-08-27 03:31:17 +02:00
FearlessTobi 6e12699e82 network: Use lower timeout for enet_host_service
This allows us to have a 10x higher throughput of packets by using a much shorter waiting time.
2022-08-27 03:26:31 +02:00
FearlessTobi 6d3dba4b98 core/bsd: Correctly unbind methods in destructor
Prevents yuzu from crashing when the BSD service is created a second time.
2022-08-27 03:12:12 +02:00
FearlessTobi d841898d4d core/acc: Make CheckAvailability use LOG_DEBUG
Previously it was spamming the logs in certain multiplayer games like Puyo Puyo Tetris.
2022-08-27 03:08:21 +02:00
FearlessTobi 869724c3a5 yuzu_room: Remove dependency on core 2022-08-27 03:02:21 +02:00
bunnei 52dc2cbe57 Merge pull request #8566 from german77/galaxy
core: hid: Add fallback for dualjoycon and pro controllers
2022-08-26 16:23:41 -07:00
Liam 39c3184237 video_core: add option for pessimistic flushing 2022-08-25 12:32:14 -04:00
FengChen 98656c14a8 video_code: support rectangle texture 2022-08-25 12:45:58 +08:00
bunnei 9ad065b476 Merge pull request #8812 from Kelebek1/auto
[Audio] Implement AudRenU:RequestUpdateAuto
2022-08-24 11:45:56 -07:00
Kelebek1 15c4734b5b Implement AudRenU:RequestUpdateAuto, and use C descriptors when B reports as empty. 2022-08-24 18:14:21 +01:00
Narr the Reg cdfffecbd0 video_core: vulkan: rasterizer: Workaround on viewport swizzle on AMD 2022-08-23 18:38:34 -05:00
bunnei fdc9c4ea0c Merge pull request #8804 from vonchenplus/speed_up_idirectory_services
core:filesystem: speed up IDirectory service
2022-08-23 13:56:05 -07:00
Narr the Reg d2dce477d3 yuzu: Force camera output to be saved on a buffer (#8805) 2022-08-22 23:54:48 -05:00
vonchenplus eab51849f7 core:filesystem: speed up IDirectory service 2022-08-23 09:05:59 +08:00
german77 3d8cb61bfd hid: core: Add missing function table names 2022-08-21 23:31:53 -05:00
liamwhite d16ea1c63c Merge pull request #8799 from liamwhite/where-did-the-padding-go
core/file_sys: fix alignment of BuildId
2022-08-21 14:06:06 -04:00
liamwhite a903de9ec8 Merge pull request #8660 from Tachi107/findmodules-pkg-config
build: simplify find modules
2022-08-21 13:42:42 -04:00
liamwhite eaf4777e58 Merge pull request #8784 from Docteh/nosnek
code: dodge PAGE_SIZE #define
2022-08-21 12:59:01 -04:00
Liam 0676dbfea1 core/file_sys: fix alignment of BuildId 2022-08-21 12:28:36 -04:00
bunnei 495b3a7e72 Merge pull request #8790 from liamwhite/too-many-ways-to-name-a-byte-string
core/file_sys: fix BuildId padding in patch loading
2022-08-20 22:26:02 -07:00
liamwhite 7dc9abcd92 Merge pull request #8783 from german77/looong
yuzu: Allow longer controller profile names
2022-08-20 18:31:46 -04:00
liamwhite c234cfd005 Merge pull request #8797 from Docteh/filtering
Qt: Retranslate GameList header and Filter line
2022-08-20 18:31:39 -04:00
liamwhite 191c41c2e9 Merge pull request #8795 from vonchenplus/support_framebuffer_crop_rect_top_not_zero
video_core: support framebuffer crop rect top not zero
2022-08-20 18:31:31 -04:00
Kyle Kienapfel 92593964ad Qt: Retranslate GameList header and Filter line
Didn't notice this until I was trying to change the default font
to Comic Sans MS when language is set to English in yuzu.
2022-08-20 07:49:29 -07:00
vonchenplus 477cdc7566 video_core: support framebuffer crop rect top not zero 2022-08-20 21:41:40 +08:00
vonchenplus 37a5b8aded core: implement clkrst service 2022-08-20 14:08:59 +08:00
Kyle Kienapfel ea00332a67 code: dodge PAGE_SIZE #define
Some header files, specifically for OSX and Musl libc define PAGE_SIZE to be a number
This is great except in yuzu we're using PAGE_SIZE as a variable

Specific example
`static constexpr u64 PAGE_SIZE = u64(1) << PAGE_BITS;`

PAGE_SIZE PAGE_BITS PAGE_MASK are all similar variables.
Simply deleted the underscores, and then added YUZU_ prefix

Might be worth noting that there are multiple uses in different classes/namespaces
This list may not be exhaustive

Core::Memory   12 bits (4096)
QueryCacheBase 12 bits
ShaderCache    14 bits (16384)
TextureCache   20 bits (1048576, or 1MB)

Fixes #8779
2022-08-19 16:08:40 -07:00
Liam ee4ec6a211 video_core: implement R16G16B16X16 texture format 2022-08-19 17:17:38 -04:00
Liam 0812bb34ea core/file_sys: fix BuildId padding 2022-08-19 17:16:33 -04:00
Narr the Reg d98ce142ca yuzu: Allow longer controller profile names 2022-08-18 17:46:39 -05:00
liushuyu 1702caebbb common: remove unneeded x86-specific header 2022-08-16 15:19:57 -06:00
FearlessTobi df835dc289 core/socket_proxy: Final nits 2022-08-15 23:50:19 +02:00
german77 e398b2af5c core: network: Address review comments 2022-08-15 20:25:42 +02:00
FearlessTobi 3fa1a0f8fa yuzu: Fix crash on shutdown
Previously, accessing the room_network when it was already freed would crash the emulator on shutdown.

Co-Authored-By: Narr the Reg <5944268+german77@users.noreply.github.com>
2022-08-15 20:25:42 +02:00
FearlessTobi 0351eadbdb internal_network: Fix mingw compilation
Apparently, "interface" is a reserved keyword on this compiler.
2022-08-15 20:25:42 +02:00
FearlessTobi 851ec302b1 core, yuzu: Address first part of review comments 2022-08-15 20:25:42 +02:00
FearlessTobi 5776601ca7 core/socket_proxy: Fix compilation 2022-08-15 20:25:42 +02:00
FearlessTobi ce2eefb57c Make copyright headers SPDX-compliant 2022-08-15 20:25:42 +02:00
FearlessTobi ce5b9d370d core, network: Add ability to proxy socket packets 2022-08-15 20:25:42 +02:00
FearlessTobi 0971372b57 web_service: Correct jwt issuer string 2022-08-15 20:25:41 +02:00
FearlessTobi 3613aa8624 dedicated_room: Initial implementation 2022-08-15 20:25:41 +02:00
bunnei 9c1fafeeb7 Merge pull request #8739 from merryhime/swizzle_table
video_core/textures/decoders: Avoid SWIZZLE_TABLE
2022-08-13 22:03:32 -07:00
bunnei ad2ee48ae2 Merge pull request #8756 from Kelebek1/vol
Allow audio volume up to 200%
2022-08-12 15:40:15 -07:00
bunnei e8160eb639 Merge pull request #8755 from Morph1984/delimit-ips
ips_layer: Delimit parsed hex value string
2022-08-12 14:12:10 -07:00
Mai e9e0c90bc9 Merge pull request #8741 from Docteh/aboot
Qt: tweak ui files
2022-08-12 15:19:37 -04:00
Kelebek1 26353451be Do some log memes to help perceived volume 2022-08-12 19:59:09 +01:00
liamwhite 530b5032dd Merge pull request #8745 from merryhime/null-fastmem-arena
arm_dynarmic: Fix nullptr fastmem arenas
2022-08-12 14:57:32 -04:00
Kelebek1 c92bcde27e Allow audio volume up to 200% 2022-08-12 16:57:29 +01:00
Morph 8064454628 ips_layer: Delimit parsed hex value string
Delimits the hex value string on spaces, slashes, carriage returns or newlines, allowing for comments to be added in-line.
2022-08-12 10:19:44 -04:00
liamwhite 569beea107 Merge pull request #8647 from Docteh/default_dark
Linux: handle dark system themes nicely
2022-08-12 10:05:06 -04:00
Kyle Kienapfel 35170f8ab9 review pass on CheckDarkMode function 2022-08-12 06:13:12 -07:00
liamwhite 2dc71dda07 Merge pull request #8731 from FearlessTobi/better-ldn
ldn: Add better stubs and more data types
2022-08-12 08:40:30 -04:00
german77 e1f4130f30 core: ldn: Address review comments part 2 2022-08-11 23:12:32 -05:00
liamwhite e0dbc34706 Merge pull request #8735 from djrobx/add_vsync
Make vsync setting work for Vulkan
2022-08-09 20:43:55 -04:00
bunnei ada0bbe928 Merge pull request #8722 from german77/ds4_goes_brrr
hid: core: Delay the stop vibration command when testing
2022-08-09 16:22:33 -07:00
bunnei 185d3c9df5 Merge pull request #8724 from german77/no_alpha
hid: core: Properly emulate controller color and battery level
2022-08-09 16:21:23 -07:00
bunnei 448ed1ed01 Merge pull request #8729 from merryhime/cp15-barriers
arm_dynarmic_cp15: Implement CP15DMB/CP15DSB/CP15ISB
2022-08-09 16:12:53 -07:00
bunnei 2eb20a49e1 Merge pull request #8499 from Docteh/plurals
Translate english plurals
2022-08-09 16:09:14 -07:00
Merry c5b77f78f8 arm_dynarmic: Fix nullptr fastmem arenas
Unable to enable fastmem of exclusive access without a valid fastmem arena.
2022-08-09 20:48:19 +01:00
bunnei 18fee84516 Merge pull request #8715 from Docteh/suzhou
Qt5 work around for suzhou numerals
2022-08-09 10:05:47 -07:00
Kyle K 7186818b26 Qt: tweak ui files
make about dialog a bit taller for full message on more systems

for direct_connect.ui hedging bets here, there is a text field for port
number that possibly shouldn't be translated, marking as such, but also
adding a translation note for the event that it makes sense to translate
the placeholder text to something other than the default multiplayer
direct connect port.
2022-08-09 05:00:37 -07:00
Merry e1dd4de1eb video_core/textures/decoders: Avoid SWIZZLE_TABLE 2022-08-09 00:27:26 +01:00
Narr the Reg 67f4daf029 hid: core: Properly emulate controller color and battery level 2022-08-08 13:12:02 -05:00
Narr the Reg f91a28773b core: ldn: Address review comments 2022-08-08 12:49:48 -05:00
DJRobX 705c6c16b9 Make vsync setting work for Vulkan 2022-08-07 20:57:47 -07:00
Liam a7027fa7c9 core/arm: fix build error 2022-08-07 21:39:54 -04:00
bunnei f5e9f8c9fe Merge pull request #8637 from liamwhite/bad-interrupts
kernel: unlayer CPU interrupt handling
2022-08-07 17:48:55 -07:00
Morph d97c307f4d Merge pull request #8240 from liamwhite/count-cycles
core/arm: re-enable cycle counting
2022-08-07 20:30:57 -04:00
FearlessTobi 9f4d6dd979 ldn: Add better stubs and more data types
Co-Authored-By: Narr the Reg <5944268+german77@users.noreply.github.com>
Co-Authored-By: Morph <39850852+Morph1984@users.noreply.github.com>
2022-08-07 23:54:51 +02:00
Merry abf143229a arm_dynarmic_cp15: Implement CP15DMB/CP15DSB/CP15ISB 2022-08-07 22:16:49 +01:00
lat9nq 39feb268ed yuzu: Fix fmt 9.0.0 issues 2022-08-07 17:02:06 -04:00
bunnei a25a9d7417 Merge pull request #8658 from liamwhite/plgp
video_core: differentiate between tiled and untiled framebuffer sizes for unaccelerated blits
2022-08-06 23:00:46 -07:00
bunnei 24c4cbf99f Merge pull request #8700 from liamwhite/xc3-vk-crash
vk_texture_cache: return VK_NULL_HANDLE for views of null images
2022-08-06 13:11:34 -07:00
liamwhite 1ac898374b Merge pull request #8667 from Kelebek1/xc3
[SPIRV] Add missed shader defines
2022-08-06 16:08:32 -04:00
Narr the Reg 7cf52e6eb8 hid: core: Delay the stop vibration command when testing 2022-08-05 17:20:05 -05:00
Steve 6907d1758d Controller bugfixes in profile select (#8716)
* Controller bugfixes in profile select, closes #8265

2 fixes for using a controller in profile select dialog.

Pressing 'B' cancels the launch of the game
Using controller to select a profile now correctly sets the index to use for the launch

* Added brackets to if statements as requested.
2022-08-05 10:02:04 -05:00
Kyle K 6af8034f3e Linux: handle dark system themes nicely
yuzu's default theme doesn't specify everything, which is fine for
windows, but in linux anything unspecified is set to the users theme.

Symptoms of this are that a linux user with a dark theme won't think
to change the theme to a dark theme when first using yuzu

Idea here is to try and support arbitrary themes on linux.

preliminary work on a "default_dark" theme, used only as overlay
for any themes that are measured to be dark mode.

Other work done:

FreeDesktop standard icon names:
plus -> list-add
delete refresh, we use view-refresh

remove duplicated icons for qdarkstyle_midnight_blue
referencing icon aliases in the qrc files is the way to go

Note:
Dynamic style changing doesn't appear to work with AppImage
2022-08-05 05:22:27 -07:00
Kyle Kienapfel 840cc5d25a Qt5 work around for suzhou numerals
When windows is told to display Standard digits as suzhou, it is showing
incorrect information in yuzu, file sizes and the CPU speed limiter are
effected by this. See #8698 for some screenshots.

Setting number format to Chinese (Simplified, Hong Kong SAR) is one
way to see this issue in action.

Fixes #8698
2022-08-03 21:49:23 -07:00
Liam bffdc2b3ce renderer_vulkan: add format fallbacks for R16G16B16_SFLOAT, R16G16B16_SSCALED, R8G8B8_SSCALED 2022-08-02 18:39:33 -04:00
Liam 5937160821 vk_texture_cache: return VK_NULL_HANDLE for views of null images 2022-08-02 13:31:42 -04:00
Morph b5847efa10 core_timing: Sleep in discrete intervals, yield during spin 2022-08-02 01:01:54 -04:00
Kelebek1 4a764c5df7 Add missing looping event schedule signal 2022-08-02 01:01:54 -04:00
Kelebek1 992af57f8d Make coretiming waiting more accurate 2022-08-02 01:01:54 -04:00
Kelebek1 ea06b32a00 Rework multi-core vsync 2022-08-01 23:51:53 -04:00
lat9nq c6d7699e40 common: Use PROJECT_SOURCE_DIR to find CMakeModules
Fixes CMake configuration when yuzu is a submodule of another project.
2022-08-01 23:18:56 -04:00
Liam 9080ea9ab1 core/loader: remove ELF loader 2022-08-01 17:19:23 -04:00
Andrea Pappacoda 89750a0ebf build(externals): rename Findopus to FindOpus
This better matches upstream's FindOpus.cmake file, and it will make
using upstream's FindOpus.cmake file easier.
2022-08-01 12:31:31 +02:00
bunnei ceed22dbc4 Merge pull request #8678 from liamwhite/stop-waiting
video_core: stop waiting for shader compilation on user cancel
2022-07-31 14:47:43 -07:00
bunnei aa3cd29110 Merge pull request #8622 from liamwhite/progress
qt: reset progress bar after shader compilation
2022-07-31 14:46:38 -07:00
Nikita Strygin 39c3b841d3 Properly write out the command buffer when serving close request 2022-07-31 23:17:45 +03:00
Morph 1d8d16a98f Merge pull request #8684 from liamwhite/delete-shader
renderer_opengl: delete shader source after linking
2022-07-30 21:36:26 -04:00
Liam 652e1a7bde renderer_opengl: delete shader source after linking 2022-07-30 13:21:26 -04:00
Kyle Kienapfel d3b46910c1 Translate english plurals
Turns out that for Qt to properly handle plurals in English a
translation needs to be provided, otherwise the user is left with
messages such as "Building: 2 shader(s)"

Plurals for other all other languages are handled on transifex.
I wrote the README.md to just refer to it as a translation
collaboration site just in case we ever switch.

These translations being out of date won't pose any technical problems
so I believe it is fine to handle them manually on a "best effort"
basis.

The files are generated into the source directory so that the
relative filenames are correct. The generated file is added to
.gitignore
2022-07-30 01:40:33 -07:00
Morph d3d5441aca Merge pull request #8664 from liamwhite/monkey-compiler-v12-1
common: move forwarded value into SPSCQueue
2022-07-30 03:24:23 -04:00
Liam 50ed529c2a video_core: stop waiting for shader compilation on user cancel 2022-07-29 23:33:40 -04:00
Liam 9484b3a70e audio_core: fix -Wuninitialized when compiling with ASan 2022-07-29 23:30:01 -04:00
Liam 721189ef2e common: move forwarded value into SPSCQueue 2022-07-29 15:41:57 -04:00
Kelebek1 9427a0f535 Add missed shader defines. Fixes Xenoblade Chronicles 3 booting with Vulkan. 2022-07-29 06:12:39 +01:00
bunnei cf55b2e61d Merge pull request #8656 from german77/audio-step
yuzu: Add incremental steps to volume hotkeys
2022-07-28 15:41:37 -07:00
liamwhite 66a09f1288 Merge pull request #8657 from Kelebek1/depop
[Audio] Avoid an out-of-bounds span write in depop prepare
2022-07-28 11:02:41 -04:00
Liam c642834b4d video_core: differentiate between tiled and untiled framebuffer sizes for unaccelerated copies 2022-07-27 21:52:06 -04:00
Maide 68dcd946b7 Revert Coretiming PRs 8531 and 7454 (#8591) 2022-07-27 19:47:06 -04:00
snek 700bd12480 implement pause on system suspend (#8585) 2022-07-27 19:46:03 -04:00
Kelebek1 c7ea6ef8a3 Avoid depop out of bounds 2022-07-27 23:17:18 +01:00
liamwhite 4b9cfe1d02 Merge pull request #8542 from Morph1984/gpu-use-old-q
gpu_thread: Use the previous MPSCQueue implementation
2022-07-27 15:55:28 -04:00
liamwhite b7216c249a Merge pull request #8636 from german77/irs_cluster_release
service: irs: Implement clustering processor
2022-07-27 15:54:28 -04:00
liamwhite d24328ae65 Merge pull request #8633 from Morph1984/optional-keys
applet/swkbd: Implement optional symbol keys
2022-07-27 15:53:32 -04:00
snek 7372295eb2 Merge pull request #8592 from devsnek/sig-handlers
exit gracefully on sigint/sigterm
2022-07-27 15:51:26 -04:00
Narr the Reg 38c27565b9 yuzu: Add incremental steps to volume hotkeys 2022-07-27 11:34:46 -05:00
Andrea Pappacoda 6a2efdda2f chore: make yuzu REUSE compliant
[REUSE] is a specification that aims at making file copyright
information consistent, so that it can be both human and machine
readable. It basically requires that all files have a header containing
copyright and licensing information. When this isn't possible, like
when dealing with binary assets, generated files or embedded third-party
dependencies, it is permitted to insert copyright information in the
`.reuse/dep5` file.

Oh, and it also requires that all the licenses used in the project are
present in the `LICENSES` folder, that's why the diff is so huge.
This can be done automatically with `reuse download --all`.

The `reuse` tool also contains a handy subcommand that analyzes the
project and tells whether or not the project is (still) compliant,
`reuse lint`.

Following REUSE has a few advantages over the current approach:

- Copyright information is easy to access for users / downstream
- Files like `dist/license.md` do not need to exist anymore, as
  `.reuse/dep5` is used instead
- `reuse lint` makes it easy to ensure that copyright information of
  files like binary assets / images is always accurate and up to date

To add copyright information of files that didn't have it I looked up
who committed what and when, for each file. As yuzu contributors do not
have to sign a CLA or similar I couldn't assume that copyright ownership
was of the "yuzu Emulator Project", so I used the name and/or email of
the commit author instead.

[REUSE]: https://reuse.software

Follow-up to b2eb103829
2022-07-27 12:53:49 +02:00
FearlessTobi cdb20e9afa network: Address review comments 2022-07-25 21:59:31 +02:00
FearlessTobi d5e6d1b576 network, yuzu: Make copyright headers SPDX-compliant 2022-07-25 21:59:31 +02:00
FearlessTobi e937c85e5a network, yuzu: Improve variable naming and style consistency 2022-07-25 21:59:31 +02:00
FearlessTobi 69e8e88fb7 yuzu_cmd: Fix compilation 2022-07-25 21:59:31 +02:00
FearlessTobi 10e2c8ef6a network: Move global state into a seperate class
Co-Authored-By: Narr the Reg <5944268+german77@users.noreply.github.com>
2022-07-25 21:59:31 +02:00
german77 3a91e22e80 common: multiplayer: Use GameInfo type 2022-07-25 21:59:31 +02:00
FearlessTobi 3b203e536a Address second part of review comments 2022-07-25 21:59:30 +02:00
FearlessTobi 846c50dd42 Address first part of review comments 2022-07-25 21:59:30 +02:00
FearlessTobi f433ce567e Fix compilation on linux gcc 2022-07-25 21:59:30 +02:00
FearlessTobi f74446f070 web_service: Fix -Wmissing-field-initializers 2022-07-25 21:59:30 +02:00
FearlessTobi 5ad67e876b core: Fix -Wunused-variable 2022-07-25 21:59:30 +02:00
FearlessTobi 5db6f87f7b common, core: fix -Wmissing-field-initializers 2022-07-25 21:59:30 +02:00
FearlessTobi f6c2baea0a yuzu: Hide multiplayer button and room status 2022-07-25 21:59:30 +02:00
FearlessTobi 60008b680e yuzu: Add ui files for multiplayer rooms 2022-07-25 21:59:28 +02:00
FearlessTobi 00526e94d1 network: Add initial files and enet dependency 2022-07-25 21:57:14 +02:00
bunnei e2647971f8 Merge pull request #8564 from lat9nq/dinner-fork
yuzu: Streamline broken Vulkan handling
2022-07-25 12:12:41 -07:00
Narr the Reg fc923fdc18 Address comments 2022-07-25 11:17:48 -05:00
Liam 3edb108f4b kernel: unlayer CPU interrupt handling 2022-07-25 12:14:15 -04:00
Morph b8cff68056 Merge pull request #8549 from liamwhite/kscheduler-sc
kernel: use KScheduler from Mesosphere
2022-07-25 12:00:31 -04:00
german77 ea68c35ad0 fix compiler errors 2022-07-24 16:39:32 -05:00
german77 5e43e84229 service: irs: Implement clustering processor 2022-07-24 15:01:43 -05:00
Liam a5c55abaaf qt: reset progress bar after shader compilation 2022-07-24 13:35:44 -04:00
Morph d3e35cd462 qt_software_keyboard: Fix infinite loop when moving between buttons
There was a bug where, when using the numeric keyboard, moving between buttons resulted in an infinite loop, resulting in a stuck state.
This was due to prev_button being the only one enabled in that row or column, causing the condition in the while loop to always be true.
To fix this, detect whether we have returned to that initial row/column and break out of the loop.
2022-07-24 07:27:41 -04:00
Morph 9abacc2f86 applet/swkbd: Implement optional symbol keys
These are only used in the numeric keyboard, and correspond to the keys to the left and right of the "0" key on the numeric keyboard.
2022-07-24 07:21:02 -04:00
Narr the Reg a08b8f224b yuzu: Add webcam support and rebase to latest master 2022-07-23 19:40:25 -05:00
german77 cd16f9801a service: irs: Move to IRS namespace and minor fixes 2022-07-23 19:40:25 -05:00
german77 c075ebaeab service: irs: Split processors and implement ImageTransferProcessor 2022-07-23 19:40:25 -05:00
german77 2cb57c0f7f core: hid: Add cammera support 2022-07-23 19:40:25 -05:00
german77 1d0b3ee30b yuzu: Hook qt camera to camera driver 2022-07-23 19:40:21 -05:00
german77 76b18ad549 input_common: Add camera driver 2022-07-23 19:38:42 -05:00
liamwhite 47ad0e8b21 Merge pull request #8545 from Kelebek1/Audio
Project Andio
2022-07-23 15:20:39 -04:00
bunnei c79d74105d Merge pull request #8611 from liamwhite/fix-flatpak-crash
video_core: use correct byte size for framebuffer
2022-07-22 18:04:17 -07:00
lat9nq 325a6e4aa7 ci,CMake: Drop Conan support for vcpkg
Between packages breaking, Conan always being a moving target for
minimum required CMake support, and now their moves to Conan 2.0 causing
existing packages to break, I suppose this was a long time coming. vcpkg
isn't without its drawbacks, but at the moment it seems easier on the
project to use for external packages.

Mostly removes the logic for Conan from the root CMakeLists file,
leaving basic find_package()'s in its place. Sets only the
find_package()'s that require CONFIG mode as necessary. clang and linux
CI now use the vcpkg toolchain file configured in the Docker container
when possible.

mingw CI turns off YUZU_TESTS because there's no way on the container to
run Windows executables on a Linux host anyway, and it's not easy to get
Catch2 there.
2022-07-22 20:54:00 -04:00
Kelebek1 be1f5f1d9f Project Andio 2022-07-22 01:11:32 +01:00
bunnei e8c9c766ae Merge pull request #8598 from Link4565/recv-dontwait
Enable the use of MSG_DONTWAIT flag on RecvImpl
2022-07-21 15:43:55 -07:00
Liam bae82de100 video_core: use correct byte size for framebuffer 2022-07-19 17:46:26 -04:00
Matías Locatti 2dce3ca91b Update configure_input.ui 2022-07-19 16:20:16 -03:00
Gus Caplan 7ad8553346 implement resume message 2022-07-17 22:35:07 -07:00
merry bdf6e32aed Merge pull request #8569 from merryhime/watchpoints
dynarmic: Abort watchpoints ASAP
2022-07-17 22:41:28 +01:00
bunnei 185d1c6135 Merge pull request #8508 from yuzu-emu/mc-speed-limit
hle: service: nvflinger: Factor speed limit into frame time calculation.
2022-07-17 13:59:52 -07:00
bunnei 4400c36037 Merge pull request #8544 from german77/14dot0
service: Update some services to 14.0.0+
2022-07-17 12:30:52 -07:00
bunnei 7c1d150345 Merge pull request #8543 from BreadFish64/use_tsc_from_caps
common/x64: Use TSC clock rate from CPUID when available
2022-07-16 23:14:38 -07:00
bunnei b3f303dd4a hle: service: nvflinger: Fix implicit conversion. 2022-07-16 23:11:42 -07:00
bunnei e42a6ad7d9 yuzu: settings: Remove framerate cap and merge unlocked framerate setting.
- These were all somewhat redundant.
2022-07-16 23:11:39 -07:00
bunnei fbb919c02f hle: service: nvflinger: Factor speed limit into frame time calculation.
- This allows the %-based "Limit Speed Percent" setting to work with MC emulation.
- This is already supported for SC emulation.
2022-07-16 23:10:45 -07:00
bunnei 3130dbb6b7 Merge pull request #8593 from merryhime/ranged-setting-T
common/setting: Make ranged a property of the type
2022-07-16 15:32:52 -07:00
bunnei 3607ebe050 Merge pull request #8594 from liamwhite/skip-wp
core/arm: skip watchpoint checks when reading instructions
2022-07-16 13:28:20 -07:00
bunnei a13ed9fa7a Merge pull request #8511 from german77/hbmenu
service: ptm: Add TS, nifm: Stub GetInternetConnectionStatus
2022-07-16 11:30:56 -07:00
Link4565 da2d093e64 Enable the use of MSG_DONTWAIT flag on RecvImpl 2022-07-16 18:30:28 +01:00
bunnei fb3a3c286f Merge pull request #8560 from liamwhite/bitfield-may-alias
common: fix bitfield aliasing on GCC/Clang
2022-07-15 22:16:52 -07:00
Liam 9858c3ce34 core/arm: skip watchpoint checks when reading instructions 2022-07-15 19:47:28 -04:00
merry 4091cca405 common/setting: Make ranged a property of the type
- Avoids new GCC 12 warnings when Type is of form std::optional<T>
- Makes more sense this way, because ranged is not a property which would change over time
2022-07-15 18:45:55 +01:00
Morph 4694a25f15 Merge pull request #8587 from merryhime/padding-unused
common_funcs: Mark padding as [[maybe_unused]]
2022-07-15 06:02:48 -04:00
Morph 646ea94aac Merge pull request #8588 from merryhime/IBinder-vdestruct
nvflinger: Polymorphic destructor requried for abstract class IBinder
2022-07-15 06:02:31 -04:00
Merry 4267739d06 KCodeMemory: Mark virtual methods as override 2022-07-15 10:39:58 +01:00
Merry 34caa7938f common_funcs: Mark padding as [[maybe_unused]] 2022-07-15 10:34:38 +01:00
Merry 3d89711aa5 nvflinger: Polymorphic destructor requried for abstract class IBinder 2022-07-15 10:28:54 +01:00
Merry f719a0a078 dynarmic: Abort watchpoints ASAP 2022-07-15 10:03:30 +01:00
Liam dbb1312876 kernel: Ensure all uses of disable_count are balanced 2022-07-14 22:47:18 -04:00
Liam e2be660909 kernel: be more careful about initialization path for HLE threads 2022-07-14 22:47:18 -04:00
Liam 21e2063d7d kernel: fix single-core preemption points 2022-07-14 22:47:18 -04:00
Liam 61b26b386d kernel: fix issues with single core mode 2022-07-14 22:47:18 -04:00
Liam e47bced65d kernel: use KScheduler from mesosphere 2022-07-14 22:47:18 -04:00
liamwhite 58079b0cd6 Merge pull request #8536 from Morph1984/fix-webapplet-input
qt_web_browser: Fix button inputs with QtWebEngine
2022-07-14 20:41:41 -04:00
liamwhite 559370c271 Merge pull request #8510 from german77/vibration
input_common: sdl: lower vibration frequency and use it's own unique thread
2022-07-14 20:41:29 -04:00
german77 d04b9f0f83 service: fatal: Add function table 2022-07-14 16:33:09 -05:00
german77 ab9c495d00 service: btdrv,bcat,btm: Update service tables to 14.0.0 2022-07-14 16:33:09 -05:00
german77 15e95ddbe0 service am: Update service tables to 14.0.0 2022-07-14 16:33:08 -05:00
german77 07090f96d4 service: ac: Replace intances of ProfileData with UserData 2022-07-14 16:33:07 -05:00
lat9nq fbe7437c3a startup_checks: Use WaitForSingleObject and more cleanup 2022-07-12 14:23:50 -04:00
bunnei c18bf04dbf Merge pull request #8559 from liamwhite/waiter-list
kernel: fix usage of waiter_list in Finalize
2022-07-11 12:10:01 -07:00
german77 412221d1a1 core: hid: Add fallback for dualjoycon and pro controllers 2022-07-10 20:27:40 -05:00
lat9nq 1c5dc78d10 startup_checks: Use GetEnvironmentVariableA
Solves MSVC compile error. Also drops need string use for comparison.
2022-07-10 20:24:37 -04:00
lat9nq 358ad2421f startup_checks: Clean up
Adds some comments, removes unused includes, and removes last bits of
logging since this is before the logging backend starts up.
2022-07-10 17:18:31 -04:00
lat9nq bb4d2e3461 startup_checks: Implement unix side code
Wow fork() is nice, isn't it?
2022-07-10 17:01:37 -04:00
lat9nq 27848d6052 yuzu: Simplify broken Vulkan handling 2022-07-10 16:52:00 -04:00
lat9nq 6972bcd946 yuzu: Check Vulkan on startup with a child 2022-07-10 14:08:20 -04:00
lat9nq 200f152c3f yuzu: Rename check_vulkan to startup_checks 2022-07-10 12:34:34 -04:00
Fernando S c5929e2c24 Merge pull request #8528 from Morph1984/astc10x6
renderer_(gl/vk): Implement ASTC_10x6_UNORM
2022-07-10 13:16:23 +02:00
Kelebek1 f66a68fa1b PR 2022-07-10 08:29:37 +01:00
Kelebek1 03de5e053d Rework CoreTiming 2022-07-10 06:59:40 +01:00
liamwhite 32b64ab7f1 Merge pull request #8531 from FernandoS27/core-timing-fix-reg
Core timing: use only one thread.
2022-07-10 00:47:05 -04:00
Liam b7b77ea2ac common: fix bitfield aliasing on GCC/Clang 2022-07-09 22:43:45 -04:00
Liam 12948cf615 kernel: fix usage of waiter_list in Finalize 2022-07-09 18:54:54 -04:00
Mai 485473f118 Merge pull request #8501 from liamwhite/backtrace-again
core/arm: better support for backtrace generation
2022-07-07 23:49:54 -04:00
liamwhite 79d631b630 Merge pull request #8502 from liamwhite/end-wait
kernel: clean up waiting implementation
2022-07-07 17:31:49 -04:00
Fernando S 6850e6142a Merge pull request #8492 from german77/no_more_errors
service: hid: Correct some mistakes and add more validations
2022-07-07 08:29:34 +02:00
Morph 2d813d7256 Merge pull request #8522 from lat9nq/consolidate-settings
settings: Consolidate RangedSetting's with regular ones
2022-07-07 01:22:01 -04:00
Marshall Mohror cbadd75878 guard against div-by-zero 2022-07-06 13:00:00 -05:00
Marshall Mohror b37f669584 common/x64: Use TSC clock rate from CPUID when available
The current method used to estimate the TSC is fairly accurate - within a few kHz - but the exact value can be extracted from CPUID if available.
2022-07-06 12:42:01 -05:00
Morph 16213b1dee gpu_thread: Use the previous MPSCQueue implementation
The bounded MPSCQueue implementation causes crashes in Fire Emblem Three Houses, use the previous implementation for now.
2022-07-06 01:33:17 -04:00
Morph 6cfb255d69 qt_web_browser: Fix button inputs with QtWebEngine
Button inputs were broken as button was assumed to be the bit position of NpadButton prior to the input rewrite. Since this was changed to use NpadButton directly, we should count the number of trailing zeros to determine the bit position.
2022-07-05 20:34:10 -04:00
Morph 3cd5e47ee3 renderer_(gl/vk): Implement ASTC_10x6_UNORM
- Used by Monster Hunter Rise Update 10.0.2
2022-07-05 20:33:43 -04:00
Morph bbc368882c Merge pull request #8486 from liushuyu/github-actions-verify
CI: Use GitHub Actions to validate pull requests
2022-07-05 20:30:38 -04:00
liamwhite 786963fac7 Merge pull request #8532 from liamwhite/fiber-supplements
common/fiber: make fibers easier to use
2022-07-05 18:20:39 -04:00
Morph da82213c60 Merge pull request #8477 from Docteh/less_global
tweak API usage in qt_web_browser.cpp
2022-07-05 05:57:26 -04:00
liushuyu dd009ddf84 CI: fix caching 2022-07-04 21:21:56 -06:00
Morph 7efb17f51a Merge pull request #8521 from lat9nq/gdbstub-in-bounds
gdbstub_arch: Directly access SP register
2022-07-04 21:27:12 -04:00
Fernando Sahmkow 95cb99b186 Core timing: use only one thread. 2022-07-02 23:02:16 +02:00
Liam e551960935 common/fiber: make fibers easier to use 2022-07-02 12:33:49 -04:00
Fernando S e41dd008c8 Merge pull request #8523 from liamwhite/sc-oopsie
cpu_manager: properly check idle on return from preemption
2022-07-01 22:40:02 +02:00
Morph f64cc85d4b Merge pull request #8490 from liamwhite/read-code-stop
dynarmic: Stop ReadCode callbacks to unmapped addresses
2022-06-30 20:57:39 -07:00
Liam 61ef65ab25 cpu_manager: properly check idle on return from preemption 2022-06-30 16:54:05 -04:00
lat9nq f1ca3b7ff3 gdbstub_arch: Directly access SP register
Currently to access the SP register, RegRead and RegWrite rely on a
out-of-bounds array access to reach the next element in a struct. As
of writing only git versions of GCC catch this error.

Specify the SP register when we want to access it in these functions.
2022-06-30 12:47:40 -04:00
lat9nq 6e65bb6f83 settings: Consolidate RangedSetting's with regular ones
The latest git version of GCC has issues with my diamond inheritance
shenanigans. Since that's now two compilers that don't like it I thought
it'd be best to just axe all of it and just have the two templates like
before.

This rolls the features of BasicRangedSetting into BasicSetting, and
likewise RangedSetting into Setting. It also renames them from
BasicSetting and Setting to Setting and SwitchableSetting respectively.
Now longer name corresponds to more complex thing.
2022-06-30 12:39:48 -04:00
Fernando S ee5d112e19 Merge pull request #7454 from FernandoS27/new-core-timing
Core: Remake Core Timing
2022-06-30 12:38:50 +02:00
Fernando Sahmkow 3adeb694b0 Adress Feedback. 2022-06-30 10:18:56 +02:00
lat9nq 973290ff56 Revert "vulkan_device: Block AMDVLK's VK_KHR_push_descriptor" 2022-06-29 16:35:06 -04:00
german77 e687bfbe7d service: nifm: Stub GetInternetConnectionStatus 2022-06-28 19:22:46 -05:00
german77 2bad788ead service: ptm: Rewrite PSM and add TS 2022-06-28 19:22:46 -05:00
german77 93cbaeb605 input_common: sdl: lower vibration frequency and use it's own unique thread 2022-06-28 19:22:16 -05:00
Narr the Reg 63ae2ffac1 service: hid: Correct some mistakes and add more validations 2022-06-28 19:14:55 -05:00
Morph d3da378c46 Merge pull request #8512 from german77/nnResult
Replace multiple names with a better name
2022-06-28 16:59:33 -07:00
Fernando Sahmkow 7f4debb936 Native clock: Use atomic ops as before. 2022-06-28 22:42:00 +02:00
Fernando Sahmkow eadcaab9bd Native Clock: remove inaccuracy mask. 2022-06-28 01:47:00 +02:00
Fernando Sahmkow 2d838d8ec9 Address feedback. 2022-06-28 01:19:30 +02:00
Fernando Sahmkow 0043292951 Core: Protect each event from race conditions within it. 2022-06-28 01:10:55 +02:00
Fernando Sahmkow d3becee4c0 Core: Fix tests. 2022-06-28 01:10:55 +02:00
Fernando Sahmkow 396cb575c9 Core: add missing include. 2022-06-28 01:10:55 +02:00
Fernando Sahmkow 1541f198eb Core/Common: Corrections to core timing and add critical priority. 2022-06-28 01:10:55 +02:00
Fernando Sahmkow ca686b6d07 Core: Reimplement Core Timing. 2022-06-28 01:10:50 +02:00
Fernando Sahmkow 6b03abbbad Common: improve native clock. 2022-06-28 01:06:48 +02:00
bunnei 74ebab21ce Merge pull request #8504 from comex/mesosphere-current-process
Support `InfoType_MesosphereCurrentProcess`
2022-06-27 13:05:07 -07:00
german77 c0b4082192 video_core: Replace VKUpdateDescriptorQueue with UpdateDescriptorQueue 2022-06-26 20:21:45 -05:00
german77 1d54e70cdd video_core: Replace VKSwapchain with Swapchain 2022-06-26 20:21:45 -05:00
german77 8944399d57 video_core: Replace VKQueryCache with QueryCache 2022-06-26 20:21:45 -05:00
german77 d7b293b022 video_core: Replace VKScheduler with Scheduler 2022-06-26 20:21:45 -05:00
german77 3003462a0f video_core: Replace VKBlitScreen with BlitScreen 2022-06-26 20:21:45 -05:00
german77 c13b99f357 video_core: Replace VKFenceManager with FenceManager 2022-06-26 20:21:45 -05:00
german77 093680269b core: kernel: Replace instances of KPageLinkedList with KPageGroup 2022-06-26 20:21:45 -05:00
german77 c7890ebccc core: Replace all instances of ResultCode with Result 2022-06-26 20:21:37 -05:00
bunnei 8e9a9b18c6 Merge pull request #8475 from liamwhite/x18
kernel: make current thread pointer thread local
2022-06-26 11:38:48 -07:00
comex 0c3a934b6e Re-add missing `case` and braces, and trim whitespace 2022-06-25 18:01:56 -07:00
comex 593f978ad2 Update src/core/hle/kernel/svc.cpp
Co-authored-by: liamwhite <liamwhite@users.noreply.github.com>
2022-06-25 18:00:29 -07:00
comex 9decdbabab Support InfoType_MesosphereCurrentProcess 2022-06-25 16:23:23 -07:00
Liam f70a3ada00 kernel: clean up waiting implementation 2022-06-25 13:36:14 -04:00
Liam 416a71804b core/arm: better support for backtrace generation 2022-06-25 12:54:24 -04:00
Liam 2e78c2fdb9 gdbstub: fix register pokes 2022-06-25 12:07:20 -04:00
Liam 83f1ecb73b kernel: make current thread pointer thread local 2022-06-23 00:28:00 -04:00
bunnei 4548e74d3f Merge pull request #8491 from Morph1984/extra-assert
KPageTable: Remove extraneous assert
2022-06-22 14:47:07 -07:00
bunnei 3f3f5aa93b Merge pull request #8483 from liamwhite/fire-emblem-three-semaphores
kernel: wait for threads to stop on pause
2022-06-22 14:46:33 -07:00
Morph 72b78f9c32 KPageTable: Remove extraneous assert
Since start is always 0 and VAddr is unsigned, we can safely remove this assert.
2022-06-21 21:28:54 -04:00
Kyle Kienapfel ef1aa7baf9 tweak API usage in qt_web_browser.cpp
In testing future versions of Qt I forgot to compile with `YUZU_USE_QT_WEB_ENGINE`, so with that flag enabled there are two issues that cropped up.

1. yuzu currently uses setRequestInterceptor, added in Qt 5.6, deprecated in 5.13 with this explaination at https://doc.qt.io/qt-5/qwebengineprofile-obsolete.html
Interceptors installed with this method will call QWebEngineUrlRequestInterceptor::interceptRequest on the I/O thread. Therefore the user has to provide thread-safe interaction with the other user classes. For a duration of this call ui thread is blocked. Use setUrlRequestInterceptor instead.

2. QWebEngineSettings::globalSettings() pointer no longer exists in later versions of Qt

From what I can tell, QtNXWebEngineView doesn't need to set these globally,
when we make changes to settings(), QtWebEngineView::page() creates the page
object if it doesn't exist yet. I don't see the page object being destroyed
or otherwise replaced, except via destroying the QtNXWebEngineView object.

The globalSettings() make sense if Pages or Views objects are being
created outside of yuzu's control.

To test this I've compared what BrowseNX and Odyssey's Action guide do in mainline 1049 and this PR.

For now we're going to go up the chain to QWebEngineProfile::defaultProfile()->settings()
2022-06-21 17:48:17 -07:00
Liam 97edc7c0df core/arm: increase minimum_run_cycles 2022-06-21 20:37:16 -04:00
merry 8151f68522 core/arm: re-enable cycle counting 2022-06-21 20:36:24 -04:00
Liam 0d04631c1f dynarmic: Stop ReadCode callbacks to unmapped addresses 2022-06-21 20:01:43 -04:00
bunnei f4201ec44e Merge pull request #8432 from liamwhite/watchpoint
core/debugger: memory breakpoint support
2022-06-21 16:04:57 -07:00
bunnei d1d50f28c8 Merge pull request #8468 from liamwhite/dispatch-tracking
kernel: fix some uses of disable_count
2022-06-21 15:30:27 -07:00
Narr the Reg 341d5b9463 service: am: Stub PerformSystemButtonPressingIfInFocus
Used by Ring Fit Adventure
2022-06-20 12:35:58 -05:00
Liam 808ad9eb9f kernel: wait for threads to stop on pause 2022-06-18 16:54:33 -04:00
Liam 91beb87df0 core: fix initialization in single core, sync GPU mode 2022-06-16 23:43:35 -04:00
Morph 3206752e00 Merge pull request #8472 from german77/tace
common: param_package: Demote DEBUG to TRACE for getters
2022-06-16 16:43:32 -04:00
Nikita Strygin 3d63ebf6c9 Make yuzu-cmd respect log_filter setting
Because logging infrastructure initializes before the loading of the
config, it reads the default setting for log_filter and ignores the one
set in config. To change log_filter after logging initialization some
additional calls need to be made.
2022-06-16 23:39:50 +03:00
Nikita Strygin 5f5739ea2c Implement ExitProcess svc
Currently this just stops all the emulation
This works under assumption that only application will try to use
ExitProcess, with services not touching it
If application exits - it quite makes sense to end the emulation
2022-06-16 21:35:34 +03:00
Liam 8d2abc710c core/debugger: memory breakpoint support 2022-06-16 13:18:07 -04:00
Narr the Reg 94877ec9c6 common: param_package: Demote DEBUG to TRACE for getters 2022-06-16 10:27:59 -05:00
Liam 6d5cc6b2a2 kernel: fix some uses of disable_count 2022-06-15 20:53:49 -04:00
Fernando S 1d8e860c47 Merge pull request #8457 from liamwhite/kprocess-suspend
kernel: implement KProcess suspension
2022-06-16 02:41:12 +02:00
liamwhite 1d18c8d3d9 Merge pull request #8460 from Morph1984/bounded-q
bounded_threadsafe_queue: Use constexpr capacity and mask
2022-06-15 19:39:22 -04:00
Morph 3417e4ca5f bounded_threadsafe_queue: Use constexpr capacity and mask
While this is the primary change, we also:
- Remove the mpsc namespace and rename Queue to MPSCQueue
- Make Slot a private struct within MPSCQueue
- Remove the AlignedAllocator template argument, as we use std::allocator
- Replace instances of mask + 1 with capacity, and mask + 2 with capacity + 1
2022-06-15 16:59:13 -04:00
bunnei d2cc6a69a2 Merge pull request #8317 from german77/notifa
service: notifa: Implement most part of this service
2022-06-15 09:53:50 -07:00
Mai 8894ac44d2 Merge pull request #8464 from liamwhite/break-debug
kernel: notify debugger on break SVC
2022-06-15 11:55:54 -04:00
Morph ddc17d2088 vk_compute_pass: Explicitly cast to VkAccessFlags
According to the standard, a narrowing conversion is an implicit conversion from an integer or unscoped enumeration type to an integer type that cannot represent all the values of the original type, except when the value is a literal or constant expression.
MSVC, unlike GCC or Clang, determines this to be a narrowing conversion despite the enumeration exclusively containing values that fit within the range of a 32 bit integer, emitting a warning since designated initializers prohibit narrowing conversions.
To solve this, explicitly cast to the type we are initializing.
2022-06-15 07:12:16 -04:00
Mai bb0a6faa0a Merge pull request #8383 from Morph1984/shadow-of-the-past
yuzu: Make variable shadowing a compile-time error
2022-06-14 21:08:58 -04:00
Liam 0755b274fa kernel: notify debugger on break SVC 2022-06-14 21:06:23 -04:00
Liam a6c1036ddc core: centralize profile scope for Dynarmic 2022-06-14 18:19:04 -04:00
Morph 2ccc2d0258 main: Eliminate variable shadowing 2022-06-14 14:09:51 -04:00
Liam 59a6d88625 kernel: implement KProcess suspension 2022-06-14 10:04:11 -04:00
Morph c1c931d97e Merge pull request #8461 from Morph1984/msvc-narrow-conv
vk_compute_pass: Use VK_ACCESS_NONE
2022-06-14 09:28:45 -04:00
Morph 3743f6f9fd Merge pull request #8434 from german77/uuid
input_common: Replace usage of string guid to common uuid
2022-06-14 09:28:32 -04:00
Morph 5c72801730 vk_compute_pass: Use VK_ACCESS_NONE
This enumeration was introduced in Vulkan 1.3, prefer using this instead of defaulting the enum.

Also resolves a narrowing conversion warning on MSVC.
2022-06-14 09:14:13 -04:00
Mai ce98a3e5d7 Merge pull request #8439 from liamwhite/monkey-compiler
general: fix compilation on GCC 12
2022-06-14 08:34:16 -04:00
Morph 69cd83d3ac wait_tree: Eliminate variable shadowing 2022-06-14 08:30:09 -04:00
Morph 050426b55a configure_ringcon: Eliminate variable shadowing 2022-06-14 08:30:09 -04:00
Morph a884ca9b8d configure_touch_from_button: Eliminate variable shadowing 2022-06-14 08:30:09 -04:00
Morph 9eadb6286d configure_per_game: Eliminate variable shadowing 2022-06-14 08:30:08 -04:00
Morph e1e6c62dd9 configure_input_player: Eliminate variable shadowing 2022-06-14 08:30:08 -04:00
Morph 30dc4a1d78 configure_dialog: Eliminate variable shadowing 2022-06-14 08:30:08 -04:00
Morph 6134852675 bootmanager: Eliminate variable shadowing 2022-06-14 08:30:08 -04:00
Morph 7e75b94e3b game_list: Eliminate variable shadowing 2022-06-14 08:30:07 -04:00
Morph b3d8533ad9 vk_compute_pass: Silence Wextra warning
Silences a warning about using enumerated and non-enumerated types in a conditional expression.
2022-06-14 05:29:57 -04:00
Liam f91e2f2742 kernel: fix passthrough of local captures in lambda 2022-06-13 20:09:32 -04:00
Liam 846f266199 common/assert: rework ASSERT handling to avoid std::function usage 2022-06-13 20:09:32 -04:00
Liam 79bf4bc3ff general: fix compilation on MinGW GCC 12 2022-06-13 20:09:32 -04:00
Liam 855928b782 common/assert: add unlikely 2022-06-13 20:09:32 -04:00
Liam f3fd1038bb general: fix compilation on GCC 12 2022-06-13 20:09:30 -04:00
Liam 72abaf896f kernel: ensure class token lambda exit is unreachable 2022-06-13 20:09:00 -04:00
Liam 32ba68cf0e kernel: fix inconsistency in AutoObjectTraits macro definitions 2022-06-13 20:09:00 -04:00
Liam d2af4f8142 common: Don't test ASSERT conditions inline 2022-06-13 20:09:00 -04:00
Liam c1771c98f3 common: Change semantics of UNREACHABLE to unconditionally crash 2022-06-13 20:09:00 -04:00
liamwhite 063d8354a7 Merge pull request #8458 from lat9nq/no-constexpr-flow-block
structured_control_flow: Remove constexpr Flow::Block
2022-06-13 20:06:38 -04:00
lat9nq e8fc40baa1 structured_control_flow: Remove constexpr Flow::Block
This seems to be unsupported in newer libstdc++ versions due to
Flow::Block's base class being a non-literal type. It's not clear to me
why this was permitted in earlier versions.
2022-06-13 19:18:20 -04:00
bunnei 9cd39d1880 Merge pull request #8388 from liamwhite/simpler-pause
CpuManager: simplify pausing
2022-06-13 15:48:03 -07:00
Morph 6cbe898149 yuzu_cmd: Eliminate variable shadowing 2022-06-13 18:19:23 -04:00
Morph 6e1f9fa7b8 audio_core: Remove -Werror=unused-parameter
Removing this as we don't enforce unused parameter warnings elsewhere in the project, and explicitly specify -Wno-unused-parameter in the main CMakeLists.
2022-06-13 18:19:23 -04:00
Morph e647661b76 CMakeLists: Make variable shadowing a compile-time error
Now that the entire project is free of variable shadowing, we can enforce this as a compile time error to prevent any further introduction of this logic bug.
2022-06-13 18:19:23 -04:00
Morph 716cced399 common: Eliminate variable shadowing
GCC/Clang treats variables within lambdas as potentially shadowing those outside the lambda, despite them not being captured inside the lambda's capture list.
2022-06-13 18:19:22 -04:00
Morph 911eae6283 yuzu: Eliminate variable shadowing 2022-06-13 18:19:22 -04:00
Morph 56114589a6 web_service: Eliminate variable shadowing 2022-06-13 18:19:22 -04:00
Morph 9f2fca7cde Merge pull request #8446 from liamwhite/cmd-gdb
core/debugger: support operation in yuzu-cmd
2022-06-13 14:38:37 -04:00
Morph a9fd06479a Merge pull request #8454 from liamwhite/inaddr-any
core/debugger: allow remote connections
2022-06-13 14:38:20 -04:00
bunnei 0cba34825d Merge pull request #8443 from liamwhite/code-mem
kernel: fix KCodeMemory initialization
2022-06-13 11:32:27 -07:00
Liam 2328945c5a core/debugger: allow remote connections 2022-06-12 11:50:50 -04:00
Lioncash d3d5f85f98 gdbstub_arch: Add missing virtual destructor
The class is used polymorphically, so it's undefined behavior to delete
instances of GDBStubA64 and GDBStubA32 from the base class pointer.
2022-06-11 18:23:22 -04:00
Mai M 3f1dcac212 Merge pull request #8353 from Docteh/msvc_report_runtime
log the MSVC runtime version when running on MSVC build
2022-06-11 13:21:23 -04:00
Mai M 8144911772 Merge pull request #8427 from Docteh/deprecate_qdesktop
deprecate usage of QDesktopWidget for going fullscreen
2022-06-11 13:20:36 -04:00
Mai M 005547429c Merge pull request #8449 from Docteh/translate_placeholder
retranslate the game list placeholder
2022-06-11 13:19:18 -04:00
bunnei 90c076df6b Merge pull request #8413 from behunin/bounded-queue
gpu_thread: Move to bounded queue
2022-06-11 00:07:18 -07:00
bunnei d52485dd46 Merge pull request #8393 from lat9nq/default-vulkan
general: Set renderer_backend's default to Vulkan
2022-06-11 00:06:59 -07:00
Kyle Kienapfel 6f191a97f5 log the MSVC runtime version when running on MSVC build
This might be useful information, not 100% sure.

[   0.958068] Frontend <Info> yuzu\main.cpp:GMainWindow:275: yuzu Version: yuzu Development Build | master-6f622de3a-dirty
[   0.958095] Frontend <Info> yuzu\main.cpp:LogRuntimes:220: MSVC Compiler: 1931 Runtime: 14.32.31326.0
2022-06-10 20:37:47 -07:00
Kyle Kienapfel 7a2ebd7de5 UI: retranslate the game list placeholder
This is the "Double-click to add a new folder to the game list" message
that shows up when users first launch yuzu and is most likely never seen
again. Previously this message was not re-translated.
2022-06-10 20:15:52 -07:00
Mai M 677177a0e1 Merge pull request #8405 from Docteh/dock_undock
ui: Status bars dock button becomes DOCKED/HANDHELD button
2022-06-10 23:11:29 -04:00
Mai M 56a0a3082d Merge pull request #8333 from Docteh/translate_hotkeys
UI: Translate hotkey labels in configuration
2022-06-10 23:10:28 -04:00
Mai M 05ff801f8c Merge pull request #8318 from Docteh/cmake-qt56-entry
Update some files with Qt 5.15.2 best practices in mind
2022-06-10 23:09:49 -04:00
Narr the Reg 1226a99d1f service: hid: Fix gesture regression 2022-06-10 13:14:31 -05:00
Liam 57679dbf51 yuzu-cmd: ignore bogus timeous from SDL 2022-06-10 12:49:18 -04:00
Liam c14f683322 core/debugger: fix a number of shutdown deadlocks 2022-06-10 09:17:12 -04:00
Liam b09ff19f31 core/debugger: support operation in yuzu-cmd 2022-06-10 09:11:02 -04:00
Liam 524737d29b kernel: fix KCodeMemory initialization 2022-06-09 12:33:28 -04:00
Liam 5772327b39 CpuManager: simplify pausing 2022-06-08 21:47:29 -04:00
bunnei 3941e5db4d Merge pull request #8428 from bunnei/nvflinger-fix-timing
Follow-up fixes for NVFlinger rewrite (Part 3)
2022-06-08 11:20:05 -07:00
Liam fca1ce699a core/debugger: fix asio write usage 2022-06-06 23:50:56 -04:00
Liam 92f60fbce1 core/debugger: fix crash due to incorrect lambda capture 2022-06-06 23:39:48 -04:00
Narr the Reg d061038994 input_common: Replace usage of string guid to common uuid 2022-06-06 19:56:37 -05:00
Kyle Kienapfel d9152be180 deprecate usage of QDesktopWidget for going fullscreen
Idea works as follows, while going fullscreen we compare the current window geometry with
available screens and ask for an intersection rectangle, we go fullscreen where most of
the window is located

GuessCurrentScreen could also potentially be used to see which screen
the window is on for dynamic DPI handling
2022-06-05 20:18:27 -07:00
bunnei 56f3bd72d6 Merge pull request #8367 from Docteh/say_win11
Logging: Report Post Windows 10 2004 versions, like Windows 11
2022-06-05 18:44:48 -07:00
bunnei d436871e36 Merge pull request #8426 from liamwhite/elf
common: consolidate ELF structure definitions
2022-06-05 16:52:06 -07:00
bunnei 8ecb80f54d hle: service: nvflinger: buffer_queue_consumer: Always free released buffers. 2022-06-05 16:06:06 -07:00
Mai M b931457542 Merge pull request #8419 from liamwhite/library-list
gdbstub: add missing library list query
2022-06-05 18:23:29 -04:00
Liam 8f979d453d common: consolidate ELF structure definitions 2022-06-05 09:42:05 -04:00
bunnei b9a145a459 Merge pull request #8395 from german77/ir_stub
service: hid: Improve stub of IRS
2022-06-04 01:26:08 -07:00
lat9nq d801be7c1a configure_graphics: Remove unused include 2022-06-04 04:18:21 -04:00
Liam 67d1c62135 gdbstub: add missing library list command 2022-06-03 20:42:13 -04:00
Levi Behunin 9d5dc3c9b9 gpu_thread: Move to bounded queue 2022-06-02 19:37:46 -06:00
Billy Laws a1216cfeee Maxwell3D: Fix 3D semaphore counter type 0 handling
Counter type 0 actually releases the semaphore payload rather than a constant zero as was previously thought. This is required by Skyrim.
2022-06-02 21:46:38 +01:00
Mai M 19114dbd3a Merge pull request #8410 from liamwhite/thread-names
gdbstub: Support reading guest thread names
2022-06-02 16:34:41 -04:00
Liam b3dce90004 core/debugger: Support reading guest thread names 2022-06-01 21:25:32 -04:00
Mai M c4d0f9d4df Merge pull request #8409 from liamwhite/tdesc-fix
gdbstub: fix target descriptions
2022-06-01 21:16:33 -04:00
Morph a08c0ca9c3 Merge pull request #8402 from liamwhite/better-step
core/debugger: Improved stepping mechanism and misc fixes
2022-06-01 20:46:10 -04:00
Liam 89993f89cf gdbstub: fix target descriptions 2022-06-01 20:31:24 -04:00
Kyle Kienapfel d21e73e88a ui: Status bars dock button becomes dock/undock button
For people not used to the Yuzu UI it's not always clear if the emulated
console is docked or not.  The other items update their text when clicked,
this PR brings the DOCK button in line with this.

DOCK -> DOCKED or HANDHELD
2022-06-01 17:22:53 -07:00
bunnei 79fa280adc Merge pull request #8400 from Docteh/fullscreen_glitch
fix UI opening fullscreen after certain crashes
2022-06-01 10:26:24 -07:00
liamwhite c4ee8ced98 Merge pull request #8404 from Morph1984/virtual
core/debugger: Define defaulted virtual destructors
2022-06-01 12:30:47 -04:00
Morph e1d7a3b33a core/debugger: Define defaulted virtual destructors
Resolves an MSVC warning where a virtual destructor is not defined in the base class with virtual functions.
2022-06-01 02:28:34 -04:00
Liam da50e98e3a core/debugger: Improved stepping mechanism and misc fixes 2022-06-01 02:15:15 -04:00
Morph 0767bdd486 gdbstub: Explicitly cast return type to u8
Otherwise, the addition promotes the returned value to an int instead of keeping it as a u8.
2022-06-01 01:40:18 -04:00
Kyle Kienapfel 1148d8e958 fix UI opening fullscreen after certain crashes
Sometimes when yuzu crashes, it restarts with the games list in fullscreen,
which would be fine, except there isn't an easy way to exit this.
It also doesn't occur often enough for qt-config.ini files to be in good supply.

UILayout\geometry value in qt-config.ini is the culprit,
 at least for the one provided.

Proposed fix is to simply check isFullScreen when yuzu is starting up,
and take it out of full screen immediately
2022-05-31 21:24:31 -07:00
Liam 2ee161a0bf core/debugger: Implement new GDB stub debugger 2022-06-01 00:01:25 -04:00
Narr the Reg 92efa9ddbb service: hid: Improve stub of IRS 2022-05-31 10:26:13 -05:00
bunnei 7f1bf5c7a7 Merge pull request #8368 from german77/seventimes
Service: hid: Several improvements and implementations
2022-05-30 10:44:36 -07:00
lat9nq c54f470bb9 main: Insert warning text on broken Vulkan
Co-authored-by: Schplee <24275329+Schplee@users.noreply.github.com>
2022-05-30 10:58:19 -04:00
lat9nq b2dd2c6a45 main: Save config on broken Vulkan detect
Prevents possible issues if someone were to open yuzu repeatedly over
and over again.
2022-05-30 10:58:19 -04:00
lat9nq b527556c38 yuzu-qt: Make has_broken_vulkan only for crashes
Being able to catch and handle a Vulkan exception is not what this is
for.
2022-05-30 10:58:18 -04:00
lat9nq e7882e4bcb vulkan_library: Add debug logging 2022-05-30 10:57:59 -04:00
lat9nq 7506b68555 yuzu-qt: Attempt to workaround broken Vulkan installations
This does a few things in order to make the default setting Vulkan
workable.

- When yuzu boots, it just opens the Vulkan library.
  - If it works, all good and we continue with Vulkan as the default.
  - If something breaks, a new file in the config directory will be left
    behind (this is deleted normally).
- If Vulkan is not working, has_broken_vulkan is set to true.
  - The first time this happens, a warning is displayed to notify the
    user.
  - This forces use of OpenGL, and Vulkan cannot be selected.
  - The Shader Backend selector is made accessible for use in custom
    configurations.
  - To disable has_broken_vulkan, the user needs to press a button in
    Graphics Configuration to manually run the Vulkan device
    enumeration.
2022-05-30 10:57:59 -04:00
lat9nq e8514aa441 default_ini: Reflect new renderer backend default setting 2022-05-29 21:38:36 -04:00
lat9nq 9e96b749ca settings: Set Vulkan to the default renderer backend 2022-05-29 21:38:36 -04:00
Kyle K 0c16589562 motion touch ui: move remaining connection out of .ui file
Two reasons for this:
1. Out of 7 connections, 6 are in ConfigureMotionTouch::ConnectEvents,
   this is the outlier.
2. Qt6 doesn't moc the connection properly
2022-05-29 18:37:38 -07:00
Kyle K 50ea1827aa Update some files with Qt 5.15.2 best practices in mind
There was some discussion about updating to Qt6 and I figured I would
work on some smaller parts. For Windows platform the WinMain function has moved
from the Qt5::WinMain to a new one called Qt6::EntryPointPrivate

Also Qt5 supports versionless CMake targets
https://www.qt.io/blog/versionless-cmake-targets-qt-5.15

These other changes in this commit are to support Qt6, but in ways that don't mess with Qt5.

src/yuzu/bootmanager.cpp: Qt6 complains about not being able to know to use QPoint or QPointF, picking QPoint
src/yuzu/bootmanager.h: Qt6 prefers that QStringList.h be included rather than an empty class definition
src/yuzu/configuration/configure_system.cpp: toULongLong intends to return unsigned 64 bit integer, but
   Settings::values.rng_seed is only 32 bits wide
src/yuzu/game_list.cpp: Qt6 returns a different datatype for QStringList.length than Qt5,
   it used to be int, but in Qt6 its now qsizetype
src/yuzu/loading_screen.cpp: Qt5's for QStyleOption.init say to switch to initFrom.
   The QStyleOption.init doesn't exist in Qt6
src/yuzu/main.cpp: Another QPointer and QStringList.size, lets standardize on size()
2022-05-29 09:21:52 -07:00
bunnei 9f7b9ffc9f Merge pull request #8332 from Morph1984/reduce_exec_size
general: Use smaller array types where applicable
2022-05-29 02:33:24 -07:00
bunnei 64da7b4afd Merge pull request #8339 from Docteh/about_icon
about dialog: Fix yuzu icon
2022-05-29 02:32:40 -07:00
Kyle K 6b7a8af157 Logging: Report Post Windows 10 2004 versions, like Windows 11
Qt5 and Qt6 don't really do a good job of reporting Windows versions past the 2004 version.

Current: Windows 10 Version 2009
This Patch: Windows 10 Version 21H1 (Build 19043.1706)
Also: Windows 11 Version 21H2 (Build 22000.675)

Fixes: #8362
2022-05-28 20:48:19 -07:00
Mai M 078f86e1c4 Merge pull request #8385 from lat9nq/just-subsys-win
yuzu-qt: Call -Wl,--subsystem,windows directly
2022-05-28 14:30:15 -04:00
lat9nq 178196cd1d yuzu-qt: Call -Wl,--subsystem,windows directly
-mwindows doesn't work with Clang. tpoechtrager/wclang resolves this by
just using MinGW-GCC to link the executable, however this prevents us
from using LLVM-exclusive tools when building yuzu.

Solution is to send the linker argument we need from -mwindows directly
to the linker.
From https://gcc-help.gcc.gnu.narkive.com/FogklN5J/gcc-wl-subsystem-windows-mwindows-options
2022-05-28 04:07:46 -04:00
bunnei e135944c4d Merge pull request #8374 from german77/asnycvibrations
input_common: Make vibration request async
2022-05-28 00:55:53 -07:00
bunnei d1016268b3 Merge pull request #8372 from german77/touch
input_common: touch: Rewrite touch driver to support multiple touch points
2022-05-27 12:16:03 -07:00
german77 7d3544bf8d service: hid: Implement ResetIsSixAxisSensorDeviceNewlyAssigned
Needed by Nintendo Switch Sports
2022-05-27 10:22:37 -05:00
german77 b644fc33fb service: hid: Implement LoadSixAxisSensorCalibrationParameter and GetSixAxisSensorIcInformation
Needed by Nintendo Switch Sports
2022-05-27 10:22:36 -05:00
german77 0687a3b8c6 service: hid: Implement EnableSixAxisSensorUnalteredPassthrough and IsSixAxisSensorUnalteredPassthroughEnabled
Needed by Nintendo Switch Sports
2022-05-27 10:21:10 -05:00
german77 3909772840 service: hid: Add error handling to sixaxis functions 2022-05-27 10:21:10 -05:00
german77 2f5cb49476 service: hid: Refractor sixaxis functions 2022-05-27 10:21:10 -05:00
german77 7d1d9c8a6b service: hid: Implement MergeSingleJoyAsDualJoy according to RE 2022-05-27 10:21:09 -05:00
german77 2b5c5a3817 service: hid: Add error handling to setNpadAssignment and variants 2022-05-27 10:21:09 -05:00
german77 0741919697 service: hid: Quick RE fixes and comments 2022-05-27 10:21:08 -05:00
lat9nq b73aaea0c1 path_util: Resolve `-Wpointer-bool-conversion` warning
Clang (rightfully) warns that we are checking for the existence of
pointer to something just allocated on the stack, which is always true.

Instead, check whether GetModuleFileNameW failed.

Co-authored-by: Mai M <mathew1800@gmail.com>
2022-05-26 19:01:26 -04:00
bunnei 6c88f50725 Merge pull request #8379 from lat9nq/amd-push-desc-workaround
vulkan_device: Block AMDVLK's VK_KHR_push_descriptor
2022-05-25 13:07:39 -07:00
bunnei 441a98b984 Merge pull request #8369 from lat9nq/amd-wmel-workaround
vulkan_device: Workaround extension bug
2022-05-25 13:07:28 -07:00
lat9nq adfd64ba59 vulkan_device: Workaround extension bug
A bug occurs in yuzu when VK_KHR_workgroup_memory_explicit_layout is
available but 16-bit integers are not supported in the host driver.

Disable usage of the extension when this case arises.
2022-05-25 01:22:15 -04:00
lat9nq 3f2a89bb9d vulkan_device: Block AMDVLK's VK_KHR_push_descriptor
Recent AMD Vulkan drivers (22.5.2 or 2.0.226 for specifically Vulkan)
have a broken VK_KHR_push_descriptor implementation that causes a crash
in yuzu. Disable it for the time being.
2022-05-25 01:17:48 -04:00
bunnei beef5d531f Merge pull request #8311 from asLody/fix-stencil-faces
vk_rasterizer: fix stencil test when two faces are disabled
2022-05-24 18:37:31 -07:00
Narr the Reg 3cd7b067e0 input_common: Make vibration request async 2022-05-23 12:25:02 -05:00
german77 b6d3a7d8cf input_common: touch: Rewrite touch driver to support multiple touch points 2022-05-23 11:01:14 -05:00
liamwhite 6c08d6ce1c Merge pull request #8342 from lat9nq/clang-latest-stdc++
general: Use Common::U16StringFromBuffer in place of QString::toStdU16String
2022-05-20 23:35:10 -04:00
Kyle K cf791911df UI: Translate hotkey labels in configuration
Another request from GillianMC.

The translated strings have been placed in a separate "Hotkeys" context as an alternative
 to having to add the tr function to the Config class, or adding them to ConfigureHotkeys
context which is quite long. The English strings get attached to the items in the Action
column as "data", and are used for RetranslateUI and saving the hotkey configuration.
2022-05-18 22:05:19 -07:00
Alexandre Bouvier a766e7d663 video_core: Support new VkResult 2022-05-17 17:37:10 +02:00
lat9nq bb9dc5098d qt_software_keyboard: Address review feedback
Use auto and a more descriptive variable name.

Secondly, fix some C++ misconceptions or constructing too many objects.

Co-authored-by: Morph <39850852+Morph1984@users.noreply.github.com>
Co-authored-by: Lioncash <mathew1800@gmail.com>
2022-05-16 14:44:01 -04:00
Kyle K 0bf20eeb9a about dialog: Fix the logo in a multiplatform way
The Icon was renamed in #8283 for Linux builds, and the fix proposed in #8312 would in turn break
the icon for Windows users.

I've decided to fix the aboutdialog.ui file via qtcreator.

I'm not sure its important to have the yuzu icon inside the About dialog grabbed from the local Qt theme,
but I've reword how the code works for that, and we can just delete those lines.

I've also thrown the yuzu.png through pngcrush to remove this warning
libpng warning: iCCP: known incorrect sRGB profile

Credit to abouvier for bringing bug up.
2022-05-16 05:42:38 -07:00
lat9nq 12c90d26c9 main: Use Common::U16StringFromBuffer
See bef52745b
2022-05-15 18:09:19 -04:00
lat9nq 9843438669 qt_software_keyboard: Use Common::U16StringFromBuffer
See bef52745b
2022-05-15 18:08:08 -04:00
lat9nq bef52745b1 string_util: Add U16StringFromBuffer
Qt's QString::toStdU16String doesn't work when compiling against the
latest libstdc++, at least when using Clang. This function effectively
does the same thing as the aforementioned one.
2022-05-15 18:06:33 -04:00
Lioncash 9272114d86 general: Avoid ambiguous format_to compilation errors
Ensures that we're using the fmt version of format_to.

These are also the only three outliers. All of the other formatters we
have are properly qualified.
2022-05-14 16:48:34 -04:00
Morph be2fb77675 time_zone_manager: Use s8 for month length tables
Using this smaller type saves 512 bytes in the compiled executable.
2022-05-13 00:51:11 -04:00
Morph 23aeada691 video_core/surface: Use u8 for PixelFormat block tables
Using this smaller type saves 33280 bytes in the compiled executable.
2022-05-13 00:51:11 -04:00
Morph 6780806c59 codecs/vp9: Use u8 for norm and map luts
Using this smaller type saves 1536 bytes in the compiled executable.
2022-05-13 00:51:05 -04:00
Morph a687a98cb1 command_generator: Use u8 for tap index lut
Using this smaller type saves 1024 bytes in the compiled executable.
2022-05-13 00:50:58 -04:00
Morph 6f622de3a8 Merge pull request #8308 from german77/disablesix
service: hid: Disable correctly motion input
2022-05-11 17:51:54 -04:00
Morph ba42a57a62 Merge pull request #8314 from liamwhite/gl-flip-2
OpenGL: interpret face flips according to GL NDC
2022-05-11 17:51:18 -04:00
Morph 5c166806ee Merge pull request #8313 from liamwhite/dma-bpp
maxwell_dma: fix bytes_per_pixel
2022-05-11 17:51:02 -04:00
Liam d20d4060e9 maxwell_dma: use fallback if remapping is enabled 2022-05-10 19:26:48 -04:00
Liam fa2047970e video_core/macro: clear code on upload address assignment 2022-05-10 17:07:21 -04:00
german77 5740fc0f91 service: notifa: Implement most part of this service
Implements partially RegisterAlarmSetting, UpdateAlarmSetting, LoadApplicationParameter, DeleteAlarmSetting.
Needed for Fitness `Boxing 2: Rhythm & Exercise` and `Ring Fit Adventure`.
2022-05-09 10:28:04 -05:00
Fernando Sahmkow df5dd2fd82 VideoCore: Add option to dump the macros.
Co-Authored-By: liamwhite <liamwhite@users.noreply.github.com>
2022-05-08 21:37:34 -04:00
Liam bf91c63d70 video_core/macro_jit_x64: warn on invalid parameter access 2022-05-08 02:48:03 -04:00
Liam 455ea63f4a OpenGL: implement face flips according to NDC 2022-05-06 20:05:21 -04:00
Liam b6ed3289df maxwell_dma: fix bytes per pixel 2022-05-06 18:18:00 -04:00
Narr the Reg f9315745f8 service: hid: Fix motion refresh rate 2022-05-06 11:13:49 -05:00
german77 b229605f32 service: hid: Disable correctly motion input 2022-05-06 11:13:48 -05:00
Lody 83f13c62e8 vk_rasterizer: fix stencil test when two faces are disabled 2022-05-06 14:47:55 +08:00
Morph dfb800c76b hle/result: Update std::expected replacement message
std::expected is included in C++23
2022-05-03 17:44:30 -04:00
Morph 67accc405f hle/result: Add ResultRange overload in ResultVal
Also marks the implicit conversion operator as constexpr instead of consteval as the constructor is not constant evaluated.
2022-05-03 17:44:30 -04:00
bunnei 08fc849458 Merge pull request #8272 from german77/stick_range
yuzu: config: Improve analog stick mapping
2022-05-03 14:36:39 -07:00
Morph 5631c95c10 hle/result: Implement ResultRange
A ResultRange defines an inclusive range of error descriptions within an error module.
This can be used to check whether the description of a given ResultCode falls within the range.
The conversion function returns a ResultCode with its description set to description_start.
2022-05-02 18:17:39 -04:00
Kyle K 8b270cfd42 ui: retranslate the network tab
Looks like it was just missed when it was added, as currently the Network Tab only has one item
RetranslateUI is used more commonly throughout the project
2022-05-01 21:39:39 -07:00
Kyle K 5f157b76c7 ui: let system locale control format of Custom RTC
The Custom RTC widget is under the influence of the computers System Locale.
The format strings are not necessarily related. As a small example, setting the Windows Language to Dansk, and then trying to use yuzu in English the requested AM/PM indicator is simply not shown

The display format for the Custom RTC field needs to be removed from src/yuzu/configuration/configure_system.ui

modifying the display format needs to be moved to src/yuzu/configuration/configure_system.cpp
2022-04-30 17:29:49 -07:00
Morph e8d4250bb7 Merge pull request #8274 from german77/firmware
service: hid: Stub IsFirmwareUpdateNeededForNotification
2022-04-29 04:08:34 -04:00
Mai M a533c4c26b Merge pull request #8280 from Tachi107/spdx-fixup
chore: add missing SPDX tags
2022-04-28 23:28:42 -04:00
Mai M bffece2295 Merge pull request #8282 from liamwhite/gcc-12
GCC 12 fixes
2022-04-28 23:28:07 -04:00
Liam ee4d63cee5 GCC 12 fixes 2022-04-28 16:50:34 -04:00
Andrea Pappacoda b2eb103829 chore: add missing SPDX tags
Follow-up to 2b87305d31
2022-04-28 18:24:11 +02:00
bunnei a0ed010ac1 Merge pull request #8267 from Morph1984/swapbuffers
renderer_vulkan: Update screen info if the framebuffer size has changed
2022-04-27 22:21:15 -07:00
Mai M 4aaa07847f Merge pull request #8236 from Docteh/sort_translations
Changes to language order in General -> UI -> Interface Language
2022-04-27 21:47:39 -04:00
bunnei 2b77a9fd0c Merge pull request #8229 from german77/reinterpret2
service: hid: Access shared memory directly
2022-04-27 12:31:27 -07:00
Kyle K 0a30e78bbb Changes to language order in General -> UI -> Interface Language
Language List is from Dolphin, specifically https://github.com/dolphin-emu/dolphin/blob/master/Source/Core/DolphinQt/Settings/InterfacePane.cpp#L30

Any languages that are compiled in, but not in the list will be at the end.
2022-04-27 02:33:16 -07:00
german77 bcaf1a7bb2 service: hid: Stub IsFirmwareUpdateNeededForNotification
Used in Fitness Boxing 2: Rhythm & Exercise (0100073011382000)
2022-04-27 00:06:30 -05:00
Narr the Reg ec8fa22768 yuzu: Config allow to delete single axis directions when buttons are mapped to a stick 2022-04-26 19:03:54 -05:00
Narr the Reg d0bdbb9afb yuzu: config: Set default range to 95% 2022-04-26 19:03:54 -05:00
Morph 1f621032e5 renderer_vulkan: Update screen info if the framebuffer size has changed 2022-04-26 02:48:40 -04:00
Mai M d2c22fcc96 Merge pull request #8261 from liamwhite/jit-cleanup
service: jit: document and clean up
2022-04-24 22:03:39 -04:00
Liam 1d0ae7c257 service: jit: document and clean up 2022-04-24 20:25:42 -04:00
Mai M 5e44c82cb7 Merge pull request #8260 from Morph1984/c4146
kernel: svc: Replace -1ULL with 0xFFFFFFFFFFFFFFFF
2022-04-24 18:25:00 -04:00
Morph 88052d8c09 kernel: svc: Replace -1ULL with 0xFFFFFFFFFFFFFFFF
Resolves the C4146 compiler warning on MSVC.
2022-04-24 17:40:47 -04:00
Merry 71b0b6274e Remove unused PrepareReschedule function 2022-04-24 12:10:16 +01:00
Narr the Reg db349d78c3 service: hid: Ensure all structs are initialized 2022-04-23 17:11:43 -05:00
Narr the Reg 879f936920 service: hid: Access shared memory directly 2022-04-23 15:41:42 -05:00
Morph f48bf899e7 Merge pull request #8249 from german77/queued
hotkeys: Trigger actions on a separate thread
2022-04-23 16:21:23 -04:00
Narr the Reg 1d1e94336e hotkeys: Trigger actions on a separate thread 2022-04-23 14:24:28 -05:00
Morph 2b87305d31 general: Convert source file copyright comments over to SPDX
This formats all copyright comments according to SPDX formatting guidelines.
Additionally, this resolves the remaining GPLv2 only licensed files by relicensing them to GPLv2.0-or-later.
2022-04-23 05:55:32 -04:00
bunnei 401095f021 Merge pull request #7976 from BytesGalore/master
loader: log the type of mismatching file-extension
2022-04-22 23:55:07 -07:00
bunnei e72179e9fd Merge pull request #7978 from german77/sideway
input_common: Map sticks correctly when mapped sideways
2022-04-21 22:21:59 -07:00
bunnei c0f328e7d4 Merge pull request #8222 from german77/sixaxis_test
service: hid: Improve accuracy of sixaxis functions
2022-04-21 21:25:47 -07:00
Mai M f5c13df6c5 Merge pull request #8192 from german77/screenshot
bootmanager: Don't create another screenshot request if previous one is not done yet
2022-04-21 04:20:57 -04:00
Mai M 6ef7858118 Merge pull request #8232 from liamwhite/backtrace
core/arm: separate backtrace collection
2022-04-21 02:51:03 -04:00
Liam 80afee83ba core/arm: separate backtrace collection 2022-04-20 21:39:42 -04:00
Mai M 2243a93a92 Merge pull request #8231 from german77/warning
input_common: Ignore boost uninitialized local variable
2022-04-20 20:48:40 -04:00
Narr the Reg bd648a74df input_common: Ignore boost uninitialized local variable 2022-04-20 18:28:24 -05:00
bunnei 2d31a75287 Merge pull request #8224 from Docteh/hihi1
ui: translate hat directions
2022-04-20 12:32:22 -07:00
Purple eace69e929 Prevent the mouse cursor from leaving the window when mouse panning is enabled 2022-04-19 16:22:51 -04:00
Kyle K 4d92678a6a ui: translate hat directions
QObject ends up being its own translation context. But this works in our
favor. GetButtonName and GetDirectionName will share one translation the
directions such as "Left" "Right" and the ConfigureInputPlayer context
will contain translations that show up in the form, in places that aren't
those buttons.
2022-04-19 04:24:39 -07:00
Narr the Reg d64fe5a63a service: hid: Improve accuracy of sixaxis functions 2022-04-18 15:02:47 -05:00
Andrea Pappacoda 3c0d634dbb yuzu: mention GPLv3.0+ in about dialog
Follow-up to f75d609545

Fixes #8218
2022-04-18 20:23:57 +02:00
german77 e14b4ca537 bootmanager: Don't create another screenshot request if previous one is not done yet 2022-04-18 01:00:48 -05:00
Mai M 094cc7486b Merge pull request #8204 from Docteh/translate_gameslist
ui: Fix Game Compatibility list translations
2022-04-17 05:45:30 -04:00
Kyle K 2920554c20 ui: Fix Game Compatibility list translations
Reported by GillianMC on Discord. Looks to be a small quirk in the QT API.

setText(QObject::tr(status.text));
bringing up QObject breaks the link with the GameListItemCompat
2022-04-16 16:30:45 -07:00
Fernando S dbb137d0a0 Merge pull request #6558 from german77/ringcon2
hidbus: Implement hidbus and ringcon
2022-04-16 15:51:14 +02:00
bunnei cc53f4b48d Merge pull request #8188 from merryhime/jit-race-page-table-changed
dynarmic: Fix race when switching page tables
2022-04-16 00:24:53 -07:00
Narr the Reg d70524b074 yuzu: Call ignore event after ensuring it's initialized 2022-04-16 00:49:26 -05:00
german77 25c46f82c5 yuzu: Add custom ringcon configuration 2022-04-16 00:49:26 -05:00
german77 0a05a333e2 hidbus: Implement hidbus and ringcon 2022-04-16 00:49:21 -05:00
Fernando S 9c8fa421f4 Merge pull request #8205 from liamwhite/n64-misc
Fixes for Mario 64
2022-04-16 00:05:49 +02:00
Fernando S 4e0c4e9929 Merge pull request #8172 from bunnei/kernel-mutex
hle: kernel: Use std::mutex instead of spin locks for most kernel locking.
2022-04-16 00:05:04 +02:00
Fernando Sahmkow ba73142ce0 video_core: implement formats for N64 emulation 2022-04-14 11:06:27 -04:00
Liam 2d4f844b1b buffer_cache: cap vertex buffer sizes 2022-04-14 10:46:48 -04:00
Liam 3bffb0464b maxwell3d: add small_index_2 register 2022-04-14 09:57:06 -04:00
bunnei dadffca1b8 Merge pull request #8190 from Docteh/palswap
ui: Set Link Color when setting theme
2022-04-13 22:15:31 -07:00
bunnei ac9467fa6c Merge pull request #8027 from lat9nq/cmd-fullscreen-size
emu_window_sdl2: Set window size to display dimensions for exclusive fullscreen
2022-04-13 18:43:47 -07:00
Fernando S 1491acfc53 Merge pull request #8202 from merryhime/fix-single-core
dynarmic: Fix single core mode
2022-04-13 23:21:11 +02:00
merry 0b947e0341 dynarmic: Fix single core mode
Regression introduced in ac87509300. Closes #8201.
2022-04-13 20:40:12 +01:00
Liam 751903c633 service: jit: Implement the JIT service 2022-04-13 08:41:27 -04:00
bunnei cd12d87e5b Merge pull request #8165 from bunnei/ensure-session-port-cleanup
Kernel: Track open references to KServerPort and KServerSession.
2022-04-12 14:01:40 -07:00
Kyle K feb462c654 ui: Touching QPalette::Text broke dark -> light UI. don't do 2022-04-12 12:50:56 -07:00
bunnei 4d4a17ef6f Merge pull request #8178 from tech-ticks/skyline-icache-fix
hle: kernel: Invalidate entire icache in UnmapProcessMemory and UnmapCodeMemory (fixes #8174)
2022-04-12 11:23:20 -07:00
bunnei 03f8a16869 core: hle: kernel: k_thread: Rework dummy thread waiting. 2022-04-11 21:15:38 -07:00
bunnei 74c36ad85f core: hle: service: Allocate a service thread. 2022-04-11 21:13:40 -07:00
bunnei 13b1ee7679 hle: kernel: k_spin_lock: Remove unused ThreadPause. 2022-04-11 21:13:40 -07:00
bunnei e1b3368c18 hle: kernel: Use std::mutex instead of spin locks for most kernel locking. 2022-04-11 21:13:40 -07:00
bunnei 203b812a83 Merge pull request #8157 from lat9nq/kernel-races
kernel: Fix some data races
2022-04-11 21:13:01 -07:00
Jan Beich a17a828115 service: sfdnsres: add missing includes for some BSDs after 5becdcea0b
src/core/hle/service/sockets/sfdnsres.cpp: In function 'Service::Sockets::NetDbError Service::Sockets::AddrInfoErrorToNetDbError(s32)':
src/core/hle/service/sockets/sfdnsres.cpp:66:10: error: 'EAI_NODATA' was not declared in this scope; did you mean 'EAI_NONAME'?
   66 |     case EAI_NODATA:
      |          ^~~~~~~~~~
      |          EAI_NONAME
src/core/hle/service/sockets/sfdnsres.cpp: In function 'std::vector<unsigned char> Service::Sockets::SerializeAddrInfo(const addrinfo*, s32, std::string_view)':
src/core/hle/service/sockets/sfdnsres.cpp:127:53: error: 'sockaddr_in' does not name a type; did you mean 'SockAddrIn'?
  127 |                 const auto addr = *reinterpret_cast<sockaddr_in*>(current->ai_addr);
      |                                                     ^~~~~~~~~~~
      |                                                     SockAddrIn
src/core/hle/service/sockets/sfdnsres.cpp:127:64: error: expected '>' before '*' token
  127 |                 const auto addr = *reinterpret_cast<sockaddr_in*>(current->ai_addr);
      |                                                                ^
src/core/hle/service/sockets/sfdnsres.cpp:127:64: error: expected '(' before '*' token
  127 |                 const auto addr = *reinterpret_cast<sockaddr_in*>(current->ai_addr);
      |                                                                ^
      |                                                                (
src/core/hle/service/sockets/sfdnsres.cpp:127:65: error: expected primary-expression before '>' token
  127 |                 const auto addr = *reinterpret_cast<sockaddr_in*>(current->ai_addr);
      |                                                                 ^
src/core/hle/service/sockets/sfdnsres.cpp:127:84: error: expected ')' before ';' token
  127 |                 const auto addr = *reinterpret_cast<sockaddr_in*>(current->ai_addr);
      |                                                                                    ^
      |                                                                                    )
src/core/hle/service/sockets/sfdnsres.cpp:148:53: error: 'sockaddr_in6' does not name a type; did you mean 'SockAddrIn6'?
  148 |                 const auto addr = *reinterpret_cast<sockaddr_in6*>(current->ai_addr);
      |                                                     ^~~~~~~~~~~~
      |                                                     SockAddrIn6
src/core/hle/service/sockets/sfdnsres.cpp:148:65: error: expected '>' before '*' token
  148 |                 const auto addr = *reinterpret_cast<sockaddr_in6*>(current->ai_addr);
      |                                                                 ^
src/core/hle/service/sockets/sfdnsres.cpp:148:65: error: expected '(' before '*' token
  148 |                 const auto addr = *reinterpret_cast<sockaddr_in6*>(current->ai_addr);
      |                                                                 ^
      |                                                                 (
src/core/hle/service/sockets/sfdnsres.cpp:148:66: error: expected primary-expression before '>' token
  148 |                 const auto addr = *reinterpret_cast<sockaddr_in6*>(current->ai_addr);
      |                                                                  ^
src/core/hle/service/sockets/sfdnsres.cpp:148:85: error: expected ')' before ';' token
  148 |                 const auto addr = *reinterpret_cast<sockaddr_in6*>(current->ai_addr);
      |                                                                                     ^
      |                                                                                     )
2022-04-11 22:26:37 +00:00
Fernando S e4e9181566 Merge pull request #8180 from liamwhite/symbols
core: extract symbol reading
2022-04-11 18:40:34 +02:00
Kyle K 790bad80eb ui: Set Link Color when setting theme
Long story short, QT doesn't allow the link colors to be set via their stylesheets.

There are two ways to work with this, specify the color manually for every link (See the About dialog) The other way is to change the default palette.

IsDarkTheme is copy/pasted from src/yuzu/debugger/wait_tree.cpp
2022-04-11 00:00:29 -07:00
Fernando S 5c7b2870ce Merge pull request #8171 from tech-ticks/skyline-improvements
Improvements for game modding with Skyline, DNS resolution
2022-04-10 23:40:54 +02:00
merry 396a1dc9b0 dynarmic: Fix race when switching page tables 2022-04-10 15:46:29 +01:00
tech-ticks 53f7a78e9e hle: kernel: Invalidate entire icache in UnmapProcessMemory and UnmapCodeMemory (fixes #8174) 2022-04-09 13:29:19 +02:00
bunnei 68b5568576 Merge pull request #8149 from liamwhite/front-face
OpenGL: flip front faces if Z scale is inverted
2022-04-09 01:39:39 -07:00
Liam 28fb3e8240 core: extract symbol reading 2022-04-09 02:16:34 -04:00