Commit Graph

20034 Commits

Author SHA1 Message Date
Kyle Kienapfel 6fa3faec65 Add break for default cases
Visual Studio has an option to search all files in a solution, so I
did a search in there for "default:" looking for any missing break
statements.

I've left out default statements that return something, and that throw
something, even if via ThrowInvalidType. UNREACHABLE leads towards throw

R_THROW macro leads towards a return
2022-11-13 16:30:55 -08:00
german77 75e6ec85e1 general: Address review comments 2022-11-13 17:13:43 -06:00
german77 a253d1557d service: am: Fix cabinet applet result 2022-11-13 14:25:00 -06:00
german77 9afadca5dc yuzu: Implement cabinet applet frontend 2022-11-13 13:58:19 -06:00
german77 fb57cd26a1 service: am: Implement cabinet applet backend 2022-11-13 11:07:48 -06:00
german77 b193d40d22 input_common: Add amiibo applet functions 2022-11-13 10:56:54 -06:00
german77 6c045c9beb service: nfc: fix tagprotocol and implement GetApplicationAreaId 2022-11-13 10:52:48 -06:00
liamwhite 040a01a5dd
Merge pull request #9225 from liamwhite/debugger-instance
Debugger improvements
2022-11-12 21:04:00 -05:00
Matías Locatti 540c1696d1 Ignore ARM for core count 2022-11-12 15:31:54 -03:00
Liam 651f6598ac kernel: implement FlushProcessDataCache 2022-11-12 11:27:04 -05:00
Liam 70ea1c2000 common: add cache management functions 2022-11-12 11:26:56 -05:00
bunnei 08091ff3e3
Merge pull request #9226 from Kelebek1/regs_regression
[video_core] Fix a couple regs regressions
2022-11-12 02:27:06 -08:00
bunnei b51c1544b9
Merge pull request #9224 from liamwhite/services-arent-processes
service_thread: remove explicit KProcess
2022-11-11 22:37:04 -08:00
Mai 7dfe35eca6
Merge pull request #9231 from goldenx86/corecount
Add CPU core count to log files
2022-11-12 03:19:26 +00:00
Matías Locatti 69768ec71e Add CPU core count to log files 2022-11-11 23:50:48 -03:00
bunnei 0d6a8824d0 hle: service: audio: Use default service thread.
- This was arbitrarily added by me, and does not appear to be helpful.
2022-11-11 17:34:39 -08:00
liamwhite e4d55e4ee4
Merge pull request #9204 from vonchenplus/dma_copy_1d_random_crash
video_core: Fix dma copy 1D random crash
2022-11-11 17:56:41 -05:00
liamwhite c4bc7ce7e2
Merge pull request #9133 from FearlessTobi/compat-improvements
yuzu/compatdb: Improve compatibility submission system
2022-11-11 16:15:36 -05:00
Tobias 211da31b34
yuzu/main: Change to 8_GiB instead of magic number
Co-authored-by: Morph <39850852+Morph1984@users.noreply.github.com>
2022-11-11 19:15:52 +01:00
liamwhite c973029374
Merge pull request #9167 from vonchenplus/tess
video_core: Fix few issues in Tess stage
2022-11-11 08:03:40 -05:00
Enrico Mancuso b832942b6e
Add break statement in default case
According to the contributing page (https://github.com/yuzu-emu/yuzu/wiki/Contributing) the default cases should have a break statement
2022-11-11 10:16:58 +01:00
bunnei 5eb30c7827
Merge pull request #9223 from goldenx86/threadcount
Add CPU thread count to log files
2022-11-10 23:12:39 -08:00
Kelebek1 33ea0fdfe8 Fix regs regression with OpenGL two-sided stencil, and re-add data invalidation reg 2022-11-11 04:04:36 +00:00
Morph c9bb888adf
ir/texture_pass: Use host_info instead of querying Settings::values (#9176) 2022-11-11 03:32:53 +01:00
bunnei d05b183f21
Merge pull request #9198 from liamwhite/arm64
Initial ARM64 support
2022-11-10 17:11:27 -08:00
Mai 83eb9cf7da
Merge pull request #9180 from Docteh/remove_stuff
UI: split up strings relating to content removal
2022-11-11 00:42:40 +00:00
Mai 0e84fd95e2
Merge pull request #9217 from HidroSaphire/patch-1
Add break statement in default cases
2022-11-11 00:42:04 +00:00
Liam 18123ff958 gdbstub: add ams monitor commands 2022-11-10 19:20:57 -05:00
Liam ceb829cc33 debugger: allow more than one connection attempt per session 2022-11-10 17:39:04 -05:00
bunnei bb55d2e701
Merge pull request #9192 from german77/i_had_to_copy_each_one_again
yuzu: Change QtKeyToSwitchKey switch case to array
2022-11-10 13:44:41 -08:00
Matías Locatti 0c176ce828
Me likes
Co-authored-by: Morph <39850852+Morph1984@users.noreply.github.com>
2022-11-10 18:36:39 -03:00
Liam b34d3d5882 service_thread: remove explicit KProcess 2022-11-10 16:14:03 -05:00
FearlessTobi 26a1d4fc37 yuzu/compatdb: Rework compatibility submission system
Co-Authored-By: Narr the Reg <5944268+german77@users.noreply.github.com>
2022-11-10 21:36:22 +01:00
Matías Locatti 766941f1a3 Add CPU thread count to log files 2022-11-10 15:46:08 -03:00
FengChen d03afd6f4b video_core: Fix dma copy 1D random crash 2022-11-11 00:23:45 +08:00
Liam 4eece4d35d kernel/svc_types: refresh 2022-11-09 19:05:08 -05:00
bunnei 770f23db34
Merge pull request #9182 from liamwhite/services-are-processes
kernel: assign KProcess to service threads
2022-11-09 15:52:23 -08:00
Liam cbaf642ffe Initial ARM64 support 2022-11-09 16:58:49 -05:00
Enrico Mancuso d581a4a367
Add break statement in default cases
According to the contributing page (https://github.com/yuzu-emu/yuzu/wiki/Contributing) the default cases should have a break statement

default:
        // Yes, even break for the last case
        break;
2022-11-09 15:34:26 +01:00
Fernando S 3161b34ff6
Merge pull request #9215 from liamwhite/swordfight
Ensure correctness of atomic store ordering
2022-11-09 14:50:49 +01:00
Liam 71c0e20f95 Ensure correctness of atomic store ordering 2022-11-09 08:09:50 -05:00
FengChen a4472b5526 video_core: Fix few issues in Tess stage 2022-11-07 15:42:42 +08:00
Liam 6a0d8b2aa1 service_thread: fix deletion 2022-11-06 19:50:51 -05:00
german77 aa55c62159 yuzu: Change QtKeyToSwitchKey switch case to array 2022-11-06 18:08:31 -06:00
FengChen aa97f39ba8 video_core:Fix vmm kinds size error 2022-11-06 22:31:22 +08:00
Fernando S df38c03a09
Merge pull request #9163 from vonchenplus/draw_error
video_core: Fix drawing trigger mechanism regression
2022-11-06 01:13:59 +01:00
liamwhite 4c198bbf06
Merge pull request #9173 from bunnei/kern-update-15
Kernel: Various updates for FW 15.0.x
2022-11-05 13:25:29 -04:00
Liam cf0f821565 core: hle: kernel: Address review comments. 2022-11-05 12:23:47 -04:00
Morph 8baf036cdc
Merge pull request #9189 from vonchenplus/stupid
video_core: Fix scaling graphical regressions for multiple games
2022-11-05 11:57:52 -04:00
FengChen 7283010305 video_core: Fix scaling graphical regressions for multiple games 2022-11-05 17:21:02 +08:00
Kyle Kienapfel a5d8703235 UI: split up strings relating to content removal
Requested by Italian translator (Fs00 in Discord)

"Remove Installed Game %1?"
"Error Removing %1"

I didn't press for translated strings, so have a taste direct from deepl

Rimuovere il contenuto del gioco installato?
Rimuovere l'aggiornamento del gioco installato?
Rimuovere il DLC del gioco installato?
2022-11-04 20:25:38 -07:00
Mai 6f6be615f3
Merge pull request #9181 from jbeich/freebsd-qt-parity
Qt: enable recent Linux features on BSDs
2022-11-04 17:54:17 +00:00
Mai 862afa8514
Merge pull request #9178 from jbeich/freebsd-include
network: unbreak on BSDs due to missing include
2022-11-04 17:52:01 +00:00
Liam e6fe40428c service_thread: register service threads to the logical owner process 2022-11-04 09:18:57 -04:00
Liam 85527cc7c7 kernel: avoid racy behavior in global suspension 2022-11-04 09:18:57 -04:00
Jan Beich d7d7ae8219 Qt: enable recent Linux features on more Unices
- Prevent sleep via xdg-desktop-portal after fa7abafa5f
- Pause on suspend after b7642cff36
- Exit on SIGINT/SIGTERM after 9479940a1f
- Improve dark themes after b51db12567
2022-11-04 13:01:17 +00:00
Jan Beich 717c8ded82 network: add missing header for SO_* on Unix after f80c7c4cd5
src/core/internal_network/socket_proxy.cpp: In member function 'virtual Network::Errno Network::ProxySocket::Initialize(Network::Domain, Network::Type, Network::Protocol)':
src/core/internal_network/socket_proxy.cpp:51:20: error: 'SO_TYPE' was not declared in this scope
   51 |     SetSockOpt(fd, SO_TYPE, type);
      |                    ^~~~~~~
src/core/internal_network/socket_proxy.cpp: In member function 'virtual Network::Errno Network::ProxySocket::SetLinger(bool, u32)':
src/core/internal_network/socket_proxy.cpp:253:27: error: 'SO_LINGER' was not declared in this scope
  253 |     return SetSockOpt(fd, SO_LINGER, values);
      |                           ^~~~~~~~~
src/core/internal_network/socket_proxy.cpp: In member function 'virtual Network::Errno Network::ProxySocket::SetReuseAddr(bool)':
src/core/internal_network/socket_proxy.cpp:257:32: error: 'SO_REUSEADDR' was not declared in this scope
  257 |     return SetSockOpt<u32>(fd, SO_REUSEADDR, enable ? 1 : 0);
      |                                ^~~~~~~~~~~~
src/core/internal_network/socket_proxy.cpp: In member function 'virtual Network::Errno Network::ProxySocket::SetBroadcast(bool)':
src/core/internal_network/socket_proxy.cpp:262:32: error: 'SO_BROADCAST' was not declared in this scope
  262 |     return SetSockOpt<u32>(fd, SO_BROADCAST, enable ? 1 : 0);
      |                                ^~~~~~~~~~~~
src/core/internal_network/socket_proxy.cpp: In member function 'virtual Network::Errno Network::ProxySocket::SetSndBuf(u32)':
src/core/internal_network/socket_proxy.cpp:266:27: error: 'SO_SNDBUF' was not declared in this scope
  266 |     return SetSockOpt(fd, SO_SNDBUF, value);
      |                           ^~~~~~~~~
src/core/internal_network/socket_proxy.cpp: In member function 'virtual Network::Errno Network::ProxySocket::SetRcvBuf(u32)':
src/core/internal_network/socket_proxy.cpp:274:27: error: 'SO_RCVBUF' was not declared in this scope
  274 |     return SetSockOpt(fd, SO_RCVBUF, value);
      |                           ^~~~~~~~~
src/core/internal_network/socket_proxy.cpp: In member function 'virtual Network::Errno Network::ProxySocket::SetSndTimeo(u32)':
src/core/internal_network/socket_proxy.cpp:279:27: error: 'SO_SNDTIMEO' was not declared in this scope
  279 |     return SetSockOpt(fd, SO_SNDTIMEO, static_cast<int>(value));
      |                           ^~~~~~~~~~~
src/core/internal_network/socket_proxy.cpp: In member function 'virtual Network::Errno Network::ProxySocket::SetRcvTimeo(u32)':
src/core/internal_network/socket_proxy.cpp:284:27: error: 'SO_RCVTIMEO' was not declared in this scope
  284 |     return SetSockOpt(fd, SO_RCVTIMEO, static_cast<int>(value));
      |                           ^~~~~~~~~~~
2022-11-04 07:28:46 +00:00
gidoly 9fc1bcc7b2
Update shader cache version. (#9175) 2022-11-04 03:16:01 -04:00
Feng Chen 75596c07e0
video_core: Fix SNORM texture buffer emulating error (#9001) 2022-11-04 02:39:42 -04:00
Piplup ece22fcbc7
UI: Add options to hide extra columns (#9093)
UI change that allows the user to hide the size and or file types columns
2022-11-04 02:30:39 -04:00
bunnei 38e4382f53
Merge pull request #8858 from vonchenplus/mipmap
video_core: Generate mipmap texture by drawing
2022-11-03 22:21:58 -07:00
bunnei 37de88040c
Merge pull request #9135 from liamwhite/service-thread-event
kernel: invert session request handling flow
2022-11-03 21:45:56 -07:00
bunnei 05ae0cab0e core: hle: kernel: k_page_table: Remove unnecessary casts. 2022-11-03 21:17:08 -07:00
bunnei 119315af08 core: hle: kernel: k_page_table: Manually open/close pages for IPC methods. 2022-11-03 21:17:08 -07:00
bunnei 661fe06d9d core: hle: kernel: k_page_table: Implement IPC memory methods. 2022-11-03 21:17:07 -07:00
bunnei ba21ba0c5c core: hle: kernel: k_memory_manager: Refresh. 2022-11-03 21:17:07 -07:00
bunnei 32d7faafa8 core: hle: kernel: Integrate system KSystemResource. 2022-11-03 21:17:07 -07:00
bunnei b7b47f3099 core: hle: kernel: k_dynamic_page_manager: Refresh. 2022-11-03 21:17:07 -07:00
bunnei 6f941121e6 core: hle: kernel: Add KSystemResource. 2022-11-03 21:17:07 -07:00
bunnei 6636b81573 core: hle: kernel: k_handle_table: Refresh. 2022-11-03 21:17:07 -07:00
bunnei 1f21fa866d core: hle: kernel: k_memory_layout: Refresh. 2022-11-03 21:17:07 -07:00
bunnei 84d130f143 core: hle: kernel: k_memory_region_type: Refresh. 2022-11-03 21:17:07 -07:00
bunnei d928ba8e40 core: hle: kernel: slab_helpers: Add KAutoObjectWithSlabHeap. 2022-11-03 21:17:06 -07:00
bunnei 3aab7d4473 core: hle: kernel: k_dynamic_resource_manager: Add KBlockInfoManager, KBlockInfoSlabHeap. 2022-11-03 21:17:06 -07:00
bunnei 6b6c02f541 core: hle: kernel: k_page_bitmap: Refresh. 2022-11-03 21:17:06 -07:00
bunnei 50bfacca88 core: hle: kernel: k_memory_block: Refresh. 2022-11-03 21:17:06 -07:00
bunnei 0cb9bc12fc core: hle: kernel: k_page_heap: Refresh. 2022-11-03 21:17:06 -07:00
bunnei 6257461684 core: hle: kernel: k_page_group: Add KPageBufferSlabHeap. 2022-11-03 21:17:06 -07:00
bunnei d353c45f7d core: hle: kernel: k_system_control: Add SecureAppletMemorySize. 2022-11-03 21:17:06 -07:00
bunnei f76b4417e6 core: hle: kernel: k_page_buffer: Add KPageBufferSlabHeap. 2022-11-03 21:17:06 -07:00
bunnei 0897f4f96c core: hle: kernel: Add KPageTableManager. 2022-11-03 21:17:06 -07:00
bunnei 6d4f411c08 core: hle: kernel: Add KPageTableSlabHeap. 2022-11-03 21:17:06 -07:00
bunnei 37b17252d1 core: hle: kernel: Add KEventInfo. 2022-11-03 21:17:06 -07:00
bunnei ddd3f48736 core: hle: kernel: Add KDebug. 2022-11-03 21:17:06 -07:00
bunnei 46322be735 core: hle: result: Fix code for compilers. 2022-11-03 21:17:06 -07:00
Fernando S 3794851f7f
Merge pull request #9154 from liamwhite/new-fb
vk_blit_screen: recreate swapchain images on guest format change
2022-11-04 01:25:34 +01:00
Morph 74275d0968
Merge pull request #9097 from liamwhite/intel-spv-compiler
video_core: don't build ASTC decoder shader unless requested
2022-11-03 19:29:33 -04:00
bunnei 75ab52f05b core: hle: service: acc: Fix ListOpenContextStoredUsers/StoreOpenContext.
- These APIs are used to capture the opened users and allow that state to be persisted across processes.
- They are not intended to just return the system opened users, that is what ListOpenUsers is for.
- Fixes the launch hang with Bayonetta 3.
2022-11-02 16:09:30 -07:00
Ludovic f325fcb131
remove unnecessary sepator in file menu (main.ui) 2022-11-02 17:33:53 +01:00
liamwhite de4afde065
Merge pull request #9143 from K0bin/scheduler-empty
vk_scheduler: Remove recorded_counts
2022-10-31 21:37:46 -04:00
Liam 77b74f5d95 sm:: avoid excessive port recreation 2022-10-31 17:47:39 -04:00
Liam 633411c20f kernel: fix single core for service threads 2022-10-31 17:45:46 -04:00
Liam 2228383322 kernel: fix port tracking 2022-10-31 17:45:46 -04:00
Liam 7aa91c8d9c k_server_session: add SendReplyHLE 2022-10-31 17:45:45 -04:00
Liam 7837185f0a service_thread: convert to map for session management 2022-10-31 17:44:07 -04:00
Liam 983f2b7074 kernel: invert session request handling flow 2022-10-31 17:44:06 -04:00
bunnei 7f0d0dd177
Merge pull request #9159 from liamwhite/kbork
kernel: more complete fix for KPort reference counting
2022-10-31 11:18:17 -07:00
FengChen b42b894785 video_core: Fix drawing trigger mechanism regression 2022-10-31 21:57:38 +08:00
Liam 4e9adae5da kernel: more complete fix for KPort reference counting 2022-10-31 08:23:29 -04:00
bunnei f39d2cf78b
Merge pull request #9155 from FernandoS27/goosfraba
Vulkan: Fix regression caused by limiting render area to width/height of render targets.
2022-10-30 17:34:28 -07:00
Liam eec3184bb0 k_thread: fix single core 2022-10-30 18:44:29 -04:00
Fernando Sahmkow 67e0d38152 Vulkan: Fix regression caused by limiting render area to width/height of rendef targets. 2022-10-30 21:24:28 +01:00
Liam 808e22984f vk_blit_screen: recreate swapchain images on guest format change 2022-10-30 15:04:16 -04:00
Morph e09756b2df
Merge pull request #9151 from liamwhite/dram-size
kernel: reinitialize after dram layout change
2022-10-30 13:23:57 -04:00
Liam 8f00c59462 kernel: reinitialize after dram layout change 2022-10-30 11:01:22 -04:00
liamwhite 1cdd2d5204
Merge pull request #9091 from Docteh/what_compat_list
UI: Add option to hide the compatibility list
2022-10-30 09:17:16 -04:00
bunnei ccfdb7c1af
Merge pull request #9149 from german77/volum
service: am: Stub SetRecordVolumeMuted
2022-10-29 23:36:15 -07:00
german77 6f0f7f1547 service: am: Stub SetRecordVolumeMuted
Used by bayonetta 3
2022-10-30 00:34:33 -05:00
Liam d867ae5ab6 k_server_session: fix crashes 2022-10-29 23:05:56 -04:00
bunnei c4d91488d9
Merge pull request #9137 from liamwhite/hbmenu
Improved support for nx-hbmenu
2022-10-29 16:11:26 -07:00
bunnei 72bff8ba11
Merge pull request #9140 from vonchenplus/darw_index_bufferx_first_error
video_core: Fix drawing trigger mechanism regression
2022-10-29 16:10:53 -07:00
bunnei 84d15c7f47
Merge pull request #9127 from vonchenplus/vulkan_clear
video_core: Catch vulkan clear op not all channel need clear
2022-10-27 19:19:40 -07:00
Robin Kertels dce242858a
vk_scheduler: Remove recorded_counts 2022-10-28 03:42:43 +02:00
liamwhite 8ce6256722
Merge pull request #9138 from liamwhite/hbl-stacktrace
arm_interface: curb infinite recursion in stacktrace generation
2022-10-27 20:07:48 -04:00
Liam 3e6840a74c arm_interface: curb infinite recursion in stacktrace generation 2022-10-27 16:01:05 -04:00
bunnei 25d53e66d1
Merge pull request #9115 from vonchenplus/game_name_by_language
file_sys: Priority display of game titles in the current language
2022-10-27 11:33:02 -07:00
bunnei 20118075c5
Merge pull request #9126 from vonchenplus/revert-8068-shader-if-false
Revert "shader_recompiler/dead_code_elimination: Add DeadBranchElimination pass"
2022-10-27 10:11:02 -07:00
Liam 2cdfbbc07d nvnflinger: release queued handles immediately on disconnection 2022-10-27 08:28:02 -04:00
Liam cdb9fe978f vi: implement CloseDisplay 2022-10-27 08:27:38 -04:00
liamwhite 86a3a0b1b4
Merge pull request #9134 from lioncash/init
audio_in/out_system: Pass Initialize members by value where applicable
2022-10-27 08:10:24 -04:00
FengChen f6e7cae62c video_core: Fix drawing trigger mechanism regression 2022-10-27 13:26:52 +08:00
bunnei 2dd6a2352d
Merge pull request #9125 from liamwhite/dummy-scheduler
kernel: refactor dummy thread wakeups
2022-10-26 09:51:44 -07:00
Lioncash e0ec9ffc36 audio_in/out_system: Pass Initialize members by value where applicable
applet_resource_user_id isn't actually modified and is just assigned to
a member variable, so this doesn't need to be a mutable reference.

Similarly, the device name itself isn't modified and is only moved. We
pass by value here, since we can still perform the move, but eliminate a
sneaky set of calls that can unintentionally destroy the original
string. Given how nested the calls are, it's good to get rid of this
potential vector for a use-after-move bug.
2022-10-26 11:21:48 -04:00
Morph 8b4d5aeb4f concepts: Use the std::contiguous_iterator concept
This also covers std::span, which does not have a const iterator.

Also renames IsSTLContainer to IsContiguousContainer to explicitly convey its semantics.
2022-10-26 00:41:54 -04:00
liamwhite d8e3380ea5
Merge pull request #9128 from abouvier/patch-1
tests: fix for -Wall
2022-10-25 12:36:25 -04:00
liamwhite e59bd6c335
Merge pull request #9113 from german77/peer_pressure
service: nfp: Allow amiibos without keys
2022-10-25 12:13:31 -04:00
liamwhite 77803d96be
Merge pull request #9107 from german77/gidoly_rules
input_common: cache vibration tests
2022-10-25 12:13:18 -04:00
Alexandre Bouvier fa9b7db76f
tests: fix for -Wall
Fix #9123
2022-10-25 15:20:23 +00:00
FengChen 0ec1801bc1 video_core: Catch vulkan clear op not all channel need clear 2022-10-25 22:39:29 +08:00
liamwhite fa913a702f
Merge pull request #9112 from vonchenplus/deferred_draw
video_core: Reimplementing the maxwell drawing trigger mechanism
2022-10-25 09:42:59 -04:00
liamwhite 3c38bd7cf0
Merge pull request #9119 from liamwhite/shutdown-barrier
core: barrier service thread shutdown
2022-10-25 06:45:51 -04:00
Feng Chen 165bce3c2d
Revert "shader_recompiler/dead_code_elimination: Add DeadBranchElimination pass" 2022-10-25 12:57:25 +08:00
Liam 1a378a7769 kernel: refactor dummy thread wakeups 2022-10-24 19:52:01 -04:00
bunnei cbb6c24215
Merge pull request #8873 from vonchenplus/fix_legacy_location_error
video_core: Fix legacy to generic location unpaired
2022-10-24 10:50:24 -07:00
FengChen 1689e0a71f file_sys: Priority display of game titles in the current language 2022-10-24 21:55:25 +08:00
Fernando S 2e782a154d
Merge pull request #9122 from liamwhite/burnt-chicken
nvdrv: fix container destruction order
2022-10-24 12:41:46 +02:00
Liam 05f2673648 nvdrv: fix container destruction order 2022-10-23 19:25:57 -04:00
Liam 2d90a927c9 core: barrier service thread shutdown 2022-10-23 05:45:45 -04:00
german77 2ccbf5abdd core: hid: Add handheld to nfc devices 2022-10-22 14:05:00 -05:00
Morph 120cd450e5 CMakeLists: Disable -Wbraced-scalar-init on Clang
Clang erroneously emits this warning when using designated initializers.
2022-10-22 15:02:04 -04:00
Morph f51c71e956 yuzu: Resolve -Wpessimizing-move 2022-10-22 15:02:04 -04:00
Morph bb31b0f261 startup_checks: Resolve -Wstringop-truncation
Copies up to sizeof(p_name) - 1 in strncpy and null terminates it at p_name[254]
2022-10-22 15:02:04 -04:00
Morph f86774c1ac startup_checks: Resolve -Wformat 2022-10-22 15:02:04 -04:00
Morph 42c4ef7373 general: Resolve -Wunused-but-set-variable 2022-10-22 15:02:04 -04:00
Morph c7e079a5d4 general: Resolve -Wunused-lambda-capture and C5233 2022-10-22 15:02:04 -04:00
Morph 6908ea2284 general: Resolve -Wclass-memaccess 2022-10-22 15:02:04 -04:00
Morph 347432524c ipc_helpers: Ignore GCC compiler warnings only on GCC
Clang and ICC for whatever reason also defines __GNUC__. Exclude them from this check.
2022-10-22 15:02:04 -04:00
Morph b02c3f2314 CMakeLists: Enforce C5233 on MSVC
This is similar to Clang's -Wunused-lambda-capture
2022-10-22 15:02:04 -04:00
Morph 3822e31323 CMakeLists: Disable C4100 and C4324
Disabling C4100 is similar to -Wno-unused-parameter
2022-10-22 15:02:04 -04:00
Morph cae108404a CMakeLists: Remove redundant warnings
These warnings are already included in /W3.
2022-10-22 15:02:04 -04:00
Morph bad3025951 decoders: Use 2's complement instead of unary -
Resolves C4146 on MSVC
2022-10-22 15:02:04 -04:00
Morph f3c40f4a20 CMakeLists: Treat MSVC warnings as errors 2022-10-22 15:02:04 -04:00
Morph e6ab1f673b general: Enforce C4800 everywhere except in video_core 2022-10-22 15:02:04 -04:00
Morph 93297d14d8 CMakeLists: Remove all redundant warnings
These are already explicitly or implicitly set in src/CMakeLists.txt
2022-10-22 15:02:04 -04:00
Morph 91c410c918 CMakeLists: Consolidate all unused warnings into -Wunused 2022-10-22 15:02:04 -04:00
Morph 496695618a CMakeLists: Treat -Wall and -Wextra as errors 2022-10-22 15:02:04 -04:00
Fernando S 0860fffd78
Merge pull request #9095 from FernandoS27/meat-good-vegetable-bad
Maxwell3D/Puller: Fix regressions and syncing issues.
2022-10-22 13:06:03 +02:00
FengChen 2f90694797 video_core: Implement maxwell inline_index method 2022-10-22 16:58:23 +08:00
Narr the Reg 3e0aaeba98 service: nfp: Allow amiibos without keys 2022-10-21 23:08:07 -05:00
Narr the Reg 82fdfb33ac service: nfp: remove unnecessary include 2022-10-21 21:54:31 -05:00
FengChen 1f54cd4ac7 video_coare: Reimplementing the maxwell drawing trigger mechanism 2022-10-21 17:09:22 +08:00
liamwhite efaedcab31
Merge pull request #9106 from lioncash/copy-err
hid/npad: Fix copy size in GetSupportedNpadIdTypes
2022-10-21 03:47:02 -04:00
liamwhite 49682a0481
Merge pull request #9108 from Morph1984/r32-b24g8
format_lookup_table: Implement R32_B24G8 with D32_FLOAT_S8_UINT
2022-10-21 03:45:49 -04:00
Lioncash 93a7058d8e k_session_request: Add missing override specifier 2022-10-21 01:56:14 -04:00
Morph f16db300c6 format_lookup_table: Implement R32_B24G8 with D32_FLOAT_S8_UINT
This format is similar to Z32_FLOAT_X24S8_UINT, which is implemented with D32_FLOAT_S8_UINT.

Used in Persona 5 Royal
2022-10-21 01:54:57 -04:00
Lioncash 969387a79a k_session_request: Turn C-style array into std::array
Makes for stronger typing and allows tooling bounds checks provided by
the standard library for debugging purposes.
2022-10-21 01:54:34 -04:00
Lioncash 3968faec06 k_session_request: Simplify constructor initialization 2022-10-21 01:53:10 -04:00
german77 7f66050f0c input_common: cache vibration tests 2022-10-21 00:24:08 -05:00
Lioncash 0b181eeef4 hid/npad: Fix copy size in GetSupportedNpadIdTypes
Previously this was passing the size of the vector into memcpy rather
than the size in bytes to copy, which would result in a partial read.

Thankfully, this function isn't used yet, so this gets rid of a bug
before it's able to do anything.
2022-10-21 00:09:22 -04:00
liamwhite a6628e8dba
Merge pull request #9078 from liamwhite/session-request
kernel: Session request cleanup
2022-10-20 18:07:30 -04:00
liamwhite 9e16837088
Merge pull request #9099 from Docteh/undocked
Controller Applet had instance of Undocked, make Handheld
2022-10-20 18:05:05 -04:00
bunnei c0b1bdd237
Merge pull request #9096 from Kelebek1/audio_15
[audio_core] Update for firmware 15.0.0
2022-10-20 13:17:26 -07:00
Kyle Kienapfel d4c0b7b437 Controller Applet had instance of Undocked, make Handheld
Remember that time we renamed the Undocked option to Handheld in the
status bar, and then later remembered the Controller Configuration?

Scrolling through Transifex I noticed that we still have one instance of
"Undocked" in the text.
2022-10-20 06:55:23 -07:00
liamwhite 7daf751b8d
Merge pull request #9094 from lioncash/fixed
common/fixed_point: Minor interface improvements
2022-10-19 19:00:59 -04:00
Liam 9524e28d20 video_core: don't build ASTC decoder shader unless requested 2022-10-19 18:52:42 -04:00
Liam fca195b4fb kernel: remove most SessionRequestManager handling from KServerSession 2022-10-19 16:31:12 -04:00
Liam 3efb8eb2dc kernel: add KSessionRequest 2022-10-19 16:31:12 -04:00
liamwhite 5ffb8b8039
Merge pull request #9082 from Morph1984/future
savedata_factory: Detect future save data paths
2022-10-19 16:28:42 -04:00
liamwhite 925fb63478
Merge pull request #9083 from liamwhite/take-a-chance-on-me
kernel: fix slab heap ABA
2022-10-19 16:27:59 -04:00
liamwhite 560bca57a2
Merge pull request #9071 from bunnei/mp-mm
Kernel Multiprocess (Part 1) - Persist memory & core timing
2022-10-19 16:27:43 -04:00
bunnei 97879faea4 core: hle: kernel: Migrate ProcessState to enum class. 2022-10-19 14:03:50 -04:00
Kyle Kienapfel 470e89a8ed UI: Add option to hide the compatibility list
Option is added directly below the option for the addons column

Defaulting to hide compatibility list. Changing default works properly.

Co-authored-by: Piplup <piplup55@users.noreply.github.com>
2022-10-19 03:51:51 -07:00
Kelebek1 7bd3930939 Update audio_core for firmware 15.0.0 2022-10-19 06:16:15 +01:00
Fernando S b8a70c9999
Merge pull request #9084 from vonchenplus/dma_copy
video_core: implement 1D copies based on VMM 'kind'
2022-10-19 06:56:00 +02:00
Fernando Sahmkow 3cb4498142 Maxwell3D/Puller: Fix regressions and syncing issues. 2022-10-19 06:21:51 +02:00
bunnei a264b54022 core: Initialize: Add missing braces. 2022-10-18 19:13:35 -07:00
bunnei 638fa6170a core: core_timing: Re-initialize if single/multicore state changes. 2022-10-18 19:13:35 -07:00
bunnei 11f85ea713 core: core_timing: Remove unused IsHostTiming. 2022-10-18 19:13:35 -07:00
bunnei 829e82e264 core: hle: kernel: Use result macros for new/changed code. 2022-10-18 19:13:35 -07:00
bunnei a4d11f4427 core: Partially persist emulation state across game boots. 2022-10-18 19:13:35 -07:00
bunnei 1b787adbd0 core: hle: kernel: Fix InitializePreemption order. 2022-10-18 19:13:35 -07:00
bunnei abcc009dff core: hle: kernel: k_process: Improve management of page table & cleanup. 2022-10-18 19:13:35 -07:00
bunnei 79bcb38321 core: hle: kernel: k_interrupt_manager: HandleInterrupt should not depend on current process. 2022-10-18 19:13:35 -07:00
bunnei 8d4e026d05 core: hle: kernel: Remove junk. 2022-10-18 19:13:35 -07:00
bunnei ff26190d42 core: hle: kernel: k_page_table: Impl. LockForUn/MapDeviceAddressSpace, cleanup. 2022-10-18 19:13:35 -07:00
bunnei d00245d444 video_core: renderer_vulkan: vk_query_cache: Avoid shutdown crash in QueryPool::Reserve. 2022-10-18 19:13:35 -07:00
bunnei 1baedfa12c core: hle: kernel: Integration application memory block slab manager. 2022-10-18 19:13:34 -07:00
bunnei ed591934fb core: hle: kernel: k_page_table: Update, and integrate with new KMemoryBlockManager/SlabManager. 2022-10-18 19:13:34 -07:00
bunnei 58eb6953d1 core: hle: kernel: k_memory_block: Update. 2022-10-18 19:13:34 -07:00
bunnei 2bb41cffca core: hle: kernel: k_memory_block_manager: Update. 2022-10-18 19:13:34 -07:00
bunnei 57a77e9ff4 core: hle: kernel: k_thread: Implement thread termination DPC. 2022-10-18 19:13:34 -07:00
bunnei d02ccfb15d core: hle: kernel: Add KDynamicResourceManager. 2022-10-18 19:13:34 -07:00
bunnei 9ec5f75f43 core: hle: kernel: Add KDynamicSlabHeap. 2022-10-18 19:13:34 -07:00
bunnei 345b9e6a08 core: hle: kernel: Add KDynamicPageManager. 2022-10-18 19:13:34 -07:00
bunnei 25dcaf1eca core: hle: kernel: k_process: Change Status -> State. 2022-10-18 19:13:34 -07:00
bunnei 113a5ed68f core: hle: kernel: svc_types: Add SystemThreadPriorityHighest and ProcessState. 2022-10-18 19:13:34 -07:00
bunnei 47b8160666 core: device_memory: Templatize GetPointer(..). 2022-10-18 19:13:34 -07:00
bunnei cb073f95dc core: hle: result: Add GetInnerValue and Includes methods. 2022-10-18 19:13:34 -07:00
bunnei e63a5459e3 core: hle: kernel: svc_common: Add WaitInfinite & cleanup. 2022-10-18 19:13:34 -07:00
Lioncash 6e1c6297a3 fixed_point: Mark default constructor as constexpr
Ensures that a fixed-point value is always initialized

This likely also fixes several cases of uninitialized values being
operated on, since we have multiple areas in the codebase where the
default constructor is being used like:

Common::FixedPoint<50, 14> current_sample{};

and is then followed up with an arithmetic operation like += or
something else, which operates directly on FixedPoint's internal data
member, which would previously be uninitialized.
2022-10-18 16:06:50 -04:00
Lioncash b6119a55f9 fixed_point: Mark copy/move assignment operators and constructors as constexpr
Given these are just moving a raw value around, these can sensibly be
made constexpr to make the interface more useful.
2022-10-18 16:06:50 -04:00
Lioncash 0cfd90004b fixed_point: Mark std::swap and move constructor as noexcept
These shouldn't throw and can influence how some standard algorithms
will work.
2022-10-18 16:06:50 -04:00
Lioncash 2cc9d94060 fixed_point: Mark relevant member function [[nodiscard]]
Marks member functions as discard, where ignoring the return value would
be indicative of a bug or dead code.
2022-10-18 16:06:50 -04:00
Lioncash 0101ef9fb1 fixed_point: Make to_uint() non-const
This calls round_up(), which is a non-const member function, so if a
fixed-point instantiation ever calls to_uint(), it'll result in a
compiler error.

This allows the member function to work.

While we're at it, we can actually mark to_long_floor() as const, since
it's not modifying any member state.
2022-10-18 16:06:50 -04:00
Lioncash 9393f90ccf fixed_point: Use defaulted comparisons
Collapses all of the comparison functions down to a single line.
2022-10-18 16:06:50 -04:00
Lioncash 5000d814af fixed_point: Use variable templates and concepts where applicable
Makes a few things a little less noisy and removes the need for SFINAE
in quite a few functions.
2022-10-18 16:06:46 -04:00
bunnei 8649c46c74
Merge pull request #9054 from Docteh/just_lz4
CMake: Try add_library "lz4" if "lz4::lz4" is unavailable
2022-10-17 22:51:26 -07:00
bunnei 1deb997eba
Merge pull request #9087 from Morph1984/once
general: Add missing pragma once
2022-10-17 22:50:02 -07:00
Liam 282cd3e5fe kernel: fix slab heap ABA 2022-10-17 17:53:32 -04:00
FengChen 23b6569fc2 video_core: implement 1D copies based on VMM 'kind' 2022-10-17 15:35:12 +08:00
FengChen 99507d0188 video_core: Implement memory manager page kind 2022-10-17 15:33:29 +08:00
Morph 88ccdaf10a fixed_point: Replace CONSTEXPR14 with constexpr
As we require the latest C++ standards to compile yuzu, checking for C++14 constexpr is not needed.
2022-10-17 03:16:54 -04:00
Morph bffbaddb79 general: Add missing pragma once 2022-10-17 03:14:31 -04:00
Morph 2f37c7948f
Merge pull request #9079 from Morph1984/unknown-unkowns
general: Fix spelling
2022-10-17 02:56:58 -04:00
Morph ae453ab6a8 savedata_factory: Detect future save data paths
Enable compatibility for new account/device save paths planned on a future implementation.
2022-10-16 23:49:55 -04:00
FengChen 20139f8a55 Address feedback 2022-10-17 09:40:44 +08:00
lat9nq 4b773b15a6 sdl2_sink: Inline variable init into if condition
Co-authored-by: Mai <mathew1800@gmail.com>
2022-10-16 21:36:40 -04:00
lat9nq 9fe077635e sdl2_sink: Distinguish between capture and non-capture device names
The function prototype appears to care whether we are loading capture
devices or not, and SDL_GetAudioDeviceName has a parameter to use it,
but for some reason it isn't.

This puts `capture` where it goes.
2022-10-16 03:15:54 -04:00
lat9nq 5c7eef3756 sdl2_sink: Check for null string when loading SDL audio devices
Attempting to place a null string into a vector of strings causes an
error that closes the application.

Don't.
2022-10-16 03:14:52 -04:00
Morph ddf5577799 video_core: Fix spelling of "synchronize" 2022-10-16 00:50:53 -04:00
Morph f706b3bd24 general: Fix spelling of "unknown" 2022-10-16 00:46:22 -04:00
Kyle Kienapfel 0ba03d1b3a fix a tiny spelling mistake
Kreato pointed this out over on discord.
2022-10-15 14:58:44 -07:00
liamwhite ae6dd1143c
Merge pull request #9061 from liamwhite/writable-event
kernel: remove KWritableEvent
2022-10-14 17:30:38 -04:00
liamwhite 1d38109714
Merge pull request #9055 from liamwhite/hbl
Preliminary support for nx-hbloader
2022-10-14 17:30:11 -04:00
Narr the Reg d2170075e6 audio_core: Revert sink name to sdl2 2022-10-14 10:59:33 -05:00
Kyle Kienapfel 40af1111c2 CMake: Try add library "LZ4::lz4_shared" if "lz4::lz4" is unavailable
Right now this looks like a distro specific problem, but we'll have to see.

Over on Gentoo: with lz4 1.9.3 there is a lz4::lz4 library target, with 1.9.4 it's no longer
mentioned in the cmake files provided by the  package. (/usr/lib64/cmake/lz4)

arch and openSUSE have lz4 1.9.4 available so I checked there,
they only have .pc files for pkg-config, so asking for "lz4::lz4" works as usual

MSVC does require "lz4::lz4" to be asked for
2022-10-13 17:23:47 -07:00
liamwhite 553be194f6
Merge pull request #9067 from Morph1984/tess-cw
renderer_(opengl/vulkan): Fix tessellation clockwise parameter
2022-10-13 20:12:31 -04:00
liamwhite 048d3e2404
Merge pull request #9039 from Kelebek1/auto_backend
Auto select the SDL audio backend when Cubeb latency is too high
2022-10-13 20:12:22 -04:00
liamwhite 3c925a7282
Merge pull request #9032 from liamwhite/stub-friends
IFriendService: stub CheckFriendListAvailability
2022-10-13 20:12:08 -04:00
Mai e37d00332c
Merge pull request #9065 from liamwhite/result-mess
result: enforce reference check specialization
2022-10-13 19:54:10 +00:00
Morph d3114c620d renderer_(opengl/vulkan): Fix tessellation clockwise parameter
This should be assigned CW only on Triangles_CW rather than not Triangles_CCW, making CCW the default winding order rather than CW.
2022-10-13 15:52:56 -04:00
Morph e2164f3417 settings: Update aspect_ratio range
Since 16:10 was added, the maximum value is now 4.
2022-10-13 12:24:04 -04:00
Liam c0fb5e876d result: enforce reference check specialization 2022-10-13 12:10:39 -04:00
Liam a9ace6856d kernel: remove KWritableEvent 2022-10-12 20:29:29 -04:00
bunnei 64c2ccb0cb
Merge pull request #9034 from liamwhite/result-macros
kernel: add expanded result macros
2022-10-12 17:11:07 -07:00
bunnei dbacb31f61
Merge pull request #9027 from yuzu-emu/revert-8987-another-name-for-reinforcement-steel
Revert "vulkan: automatically use larger staging buffer sizes when possible"
2022-10-12 15:36:56 -07:00
bunnei 0b9f2c2f14
Merge pull request #9040 from liamwhite/woe-thirty-two
core_timing: use high-precision sleeps on non-Windows targets
2022-10-12 15:35:06 -07:00
bunnei e158167139
Merge pull request #9024 from liamwhite/async-screenshot
video_core: don't block rendering on screenshots
2022-10-12 13:26:32 -07:00
bunnei 3da4280e81
Merge pull request #9047 from german77/steam-aspect
yuzu: Add 16:10 aspect ratio
2022-10-12 12:54:23 -07:00
bunnei 77177a7e33
Merge pull request #9049 from liamwhite/monkeyhawk
syncpoint_manager: ensure handle is removable before removing
2022-10-12 12:34:22 -07:00