Commit message (Collapse) | Author | Files | Lines | ||
---|---|---|---|---|---|
2023-07-31 | vma: enable options everywhere | Alexandre Bouvier | 8 | -19/+32 | |
2023-07-31 | Formatting fix | Moonlacer | 1 | -2/+1 | |
2023-07-31 | Match log warning | Moonlacer | 1 | -1/+1 | |
2023-07-30 | tz_content_man: Generate the time zone binary once | lat9nq | 2 | -8/+11 | |
Fixes a memory leak with time zone binaries accumulating on theirselves. | |||||
2023-07-30 | Formatting fix | Moonlacer | 1 | -1/+2 | |
2023-07-30 | Address feedback and change log warning | Moonlacer | 1 | -3/+3 | |
2023-07-30 | Fix AudioRendererParameterInternal's size | Kelebek1 | 1 | -3/+3 | |
2023-07-30 | Revert "Revert "Blacklist EDS3 blending from new AMD drivers"" | Moonlacer | 1 | -0/+8 | |
2023-07-28 | wall_clock: Increase precision requirements | Morph | 1 | -2/+2 | |
We are providing a conversion to nanoseconds in NativeClock, which is more precise than the GPU tick. | |||||
2023-07-27 | vk_descriptor_pool: Disallow descriptor set free | GPUCode | 4 | -5/+5 | |
2023-07-26 | Revert "Blacklist EDS3 blending from new AMD drivers" | Moonlacer | 1 | -8/+0 | |
2023-07-26 | Address feedback | Morph | 1 | -10/+8 | |
2023-07-25 | android: Only label language with language | Abandoned Cart | 15 | -272/+18 | |
2023-07-25 | memory: check page against address space size | Liam | 1 | -3/+18 | |
2023-07-24 | yuzu: Avoid reading broken games | german77 | 1 | -1/+5 | |
2023-07-23 | ssa_rewrite_pass: use proper maps | Liam | 1 | -6/+5 | |
2023-07-23 | core: implement GetGaiStringErrorRequest, IContextRegistrar | Liam | 10 | -5/+115 | |
2023-07-22 | core: reduce TOCTTOU memory access | Liam | 3 | -20/+11 | |
2023-07-22 | memory: minimize dependency on process | Liam | 2 | -65/+63 | |
2023-07-22 | core: remove remaining uses of dynamic_cast | Liam | 6 | -16/+21 | |
2023-07-22 | general: reduce use of dynamic_cast | Liam | 4 | -2/+13 | |
2023-07-22 | yuzu: Replace httplib with QtNetworkRequest | Narr the Reg | 2 | -36/+55 | |
2023-07-19 | vk_buffer_cache: Format | lat9nq | 1 | -2/+2 | |
2023-07-19 | general: Silence -Wshadow{,-uncaptured-local} warnings | lat9nq | 12 | -58/+61 | |
These occur in the latest commits in LLVM Clang. | |||||
2023-07-18 | Debug SetIdleTimeDetectionExtension | Kelebek1 | 1 | -2/+2 | |
2023-07-18 | nsd: add GetApplicationServerEnvironmentType | Liam | 2 | -1/+17 | |
2023-07-17 | ssl: Link with crypt32 for secure channel backend | Morph | 2 | -1/+2 | |
2023-07-17 | ssl: Reorder inclusions | Morph | 6 | -26/+30 | |
2023-07-17 | network: Forward declarations | Morph | 5 | -5/+11 | |
2023-07-17 | service: nfc: Update Implementation to match with latest RE | Narr the Reg | 7 | -54/+143 | |
2023-07-16 | android: fix links to re-dumping guides | Valeri Ochinski | 1 | -1/+1 | |
2023-07-15 | buffer_cache: Increase number of texture buffers | GPUCode | 2 | -1/+11 | |
2023-07-15 | Fixes and workarounds to make UBSan happier on macOS | comex | 11 | -32/+42 | |
There are still some other issues not addressed here, but it's a start. Workarounds for false-positive reports: - `RasterizerAccelerated`: Put a gigantic array behind a `unique_ptr`, because UBSan has a [hardcoded limit](https://stackoverflow.com/questions/64531383/c-runtime-error-using-fsanitize-undefined-object-has-a-possibly-invalid-vp) of how big it thinks objects can be, specifically when dealing with offset-to-top values used with multiple inheritance. Hopefully this doesn't have a performance impact. - `QueryCacheBase::QueryCacheBase`: Avoid an operation that UBSan thinks is UB even though it at least arguably isn't. See the link in the comment for more information. Fixes for correct reports: - `PageTable`, `Memory`: Use `uintptr_t` values instead of pointers to avoid UB from pointer overflow (when pointer arithmetic wraps around the address space). - `KScheduler::Reload`: `thread->GetOwnerProcess()` can be `nullptr`; avoid calling methods on it in this case. (The existing code returns a garbage reference to a field, which is then passed into `LoadWatchpointArray`, and apparently it's never used, so it's harmless in practice but still triggers UBSan.) - `KAutoObject::Close`: This function calls `this->Destroy()`, which overwrites the beginning of the object with junk (specifically a free list pointer). Then it calls `this->UnregisterWithKernel()`. UBSan complains about a type mismatch because the vtable has been overwritten, and I believe this is indeed UB. `UnregisterWithKernel` also loads `m_kernel` from the 'freed' object, which seems to be technically safe (the overwriting doesn't extend as far as that field), but seems dubious. Switch to a `static` method and load `m_kernel` in advance. | |||||
2023-07-15 | kernel: reduce page table region checking | Liam | 8 | -87/+23 | |
2023-07-15 | k_process: PageTable -> GetPageTable | Liam | 27 | -90/+81 | |
2023-07-12 | file_sys/content_archive: Detect compressed NCAs (#11047) | Tobias | 2 | -1/+40 | |
2023-07-12 | time_zone: Clean up includes | lat9nq | 1 | -1/+1 | |
2023-07-12 | time_zone: Swap subtraction order | lat9nq | 1 | -1/+1 | |
2023-07-12 | time_zone: Account for leap years | lat9nq | 1 | -4/+6 | |
Protects against invalid hour offsets during transitions to years following leap years. | |||||
2023-07-12 | cmake: allow using system VMA library | Alexandre Bouvier | 2 | -1/+13 | |
2023-07-11 | android: Visualize disabled home options | Charles Lombardo | 4 | -53/+84 | |
Allow for displaying options in the home options that are disabled with messages that explain why they are disabled. This includes reasoning for the GPU driver installation button. | |||||
2023-07-10 | settings: Disable C++20 tzdb path on MinGW | lat9nq | 1 | -1/+2 | |
This path always results in Etc/UTC on MinGW, which often is not close to the local time zone. | |||||
2023-07-10 | time_zone: Remove string ops for determing zone | lat9nq | 1 | -27/+16 | |
MinGW's strftime implementation does not work and cannot be used to determine the time zone. Besides that, the string operations are actually unnecessary since we can get the offset from std::localtime. Compare localtime to gmtime to find the zone offset on all platforms. | |||||
2023-07-10 | android: Don't prompt to save user data on uninstall | Charles Lombardo | 1 | -1/+1 | |
While this can be convenient in some scenarios, this will be a big problem for users trying to sideload different APK versions. If they forget the last one they had installed, they could have problems installing a new copy. | |||||
2023-07-09 | arm_interface: correct breakpoint rewind condition | Liam | 1 | -1/+1 | |
2023-07-09 | settings: Catch runtime error from STL | lat9nq | 1 | -3/+2 | |
This function throws a runtime error we can catch on old Windows 10 installs, so we can catch it here rather than disable this path for everybody. | |||||
2023-07-08 | k_server_session: translate special header for non-HLE requests | Liam | 3 | -7/+771 | |
2023-07-07 | input_common: set `SDL_HINT_GAMECONTROLLER_USE_BUTTON_LABELS` to 0 | Martino Fontana | 2 | -42/+11 | |
This allows to share the mappings between Nintendo and non-Nintendo controllers. Breaks the controller configuration for existing users who are using a Nintendo controller. (Documentation of the hint https://github.com/libsdl-org/SDL/blob/92b3c53c92971e685254fd89f89ce6bde8cea60e/include/SDL_hints.h#L512-L532) | |||||
2023-07-06 | vfs_real: use open file size for getting size (#11016) | liamwhite | 1 | -1/+2 | |
2023-07-06 | main: Use 1_MiB as a constant for copy buffer size | Morph | 1 | -3/+5 | |
2023-07-06 | main: Fix install progress calculation | Morph | 1 | -3/+3 | |
The increased buffer size means that that progress bar size has to be adjusted | |||||
2023-07-06 | input_common: Avoid potential division by zero | Narr the Reg | 1 | -2/+3 | |
2023-07-05 | settings: Disable C++20 path on MSVC | lat9nq | 1 | -1/+2 | |
Even though it compiles and runs fine on the latest Windows versions, older LTSC builds will crash due to lacking support somewhere in the OS. For now just disable it for MSVC until either Microsoft fixes this or we no longer support 1809 LTSC. | |||||
2023-07-04 | Fix ScratchBuffer moves | Kelebek1 | 1 | -2/+15 | |
2023-07-04 | video_core: vulkan_device: Disable timeline semaphore on Turnip, fix qcom version check. | bunnei | 2 | -9/+16 | |
2023-07-03 | video_core: vulkan_device: Change to driver version check. | bunnei | 1 | -15/+23 | |
2023-07-03 | android: Reintroduce launch mode as single top | german77 | 1 | -0/+1 | |
2023-07-03 | oops re open | gidoly | 1 | -0/+4 | |
2023-07-03 | Use `toUtf8()` for string passed to DBus | zeltermann | 1 | -1/+1 | |
2023-07-03 | service: nfc: Ensure controller is in the correct mode | german77 | 3 | -11/+41 | |
2023-07-03 | android: Version the input overlay | Charles Lombardo | 11 | -170/+751 | |
Now within the Input Overlay file, there is a version that will determine when the overlay will be reset. This is intended for breaking changes like the ones we had with the additions of percentage based layouts or the addition of foldable/portrait layouts. This also includes versions for each individual layout so we don't have to reset every layout if only one is broken. Additionally, this includes new L3/R3 buttons. | |||||
2023-07-03 | Use spans over guest memory where possible instead of copying data. | Kelebek1 | 22 | -234/+463 | |
2023-07-02 | core_timing: Remove GetCurrentTimerResolution in CoreTiming loop | Morph | 4 | -5/+22 | |
Other programs may change this value, but if thousands of syscalls in this loop is undesirable, then we can just set this once. | |||||
2023-07-02 | Rename variables to avoid -Wshadow warnings under GCC | comex | 1 | -5/+5 | |
2023-07-02 | vulkan_common: use device local preferred for image memory | Liam | 1 | -2/+2 | |
2023-07-02 | Revert "texture_cache: Fix incorrect logic for AccelerateDMA" | Liam | 1 | -4/+8 | |
This reverts commit 1fc47361a12afd91d8ea0b76378e0b3d4feb93a6. | |||||
2023-07-02 | ...actually add the SecureTransport backend to Git. | comex | 1 | -0/+219 | |
2023-07-02 | Updates: | comex | 7 | -211/+276 | |
- Address PR feedback. - Add SecureTransport backend for macOS. | |||||
2023-07-01 | yuzu: Use test window with VulkanSurface to check for present modes. | Steveice10 | 1 | -1/+4 | |
It is probably not correct to create a surface on a non-VulkanSurface window. On macOS this causes a preferences crash due to missing CAMetalLayer. | |||||
2023-07-01 | kernel: Synchronize | Morph | 3 | -36/+52 | |
2023-07-01 | Minor cleanup in BufferCacheRuntime::ReserveNullBuffer | comex | 1 | -2/+1 | |
As far as I can tell, there is no reason to OR this bit in separately. | |||||
2023-07-01 | renderer_vulkan: Fix some missing view formats | GPUCode | 2 | -3/+8 | |
* Many times the format itself wouldn't have been added to the list causing device losses for nvidia GPUs * Also account for ASTC acceleration storage views | |||||
2023-07-01 | renderer_vulkan: Add support for VK_KHR_image_format_list | GPUCode | 5 | -14/+53 | |
2023-07-01 | vulkan: Use newer VK_EXT_metal_surface to create surface for MoltenVK. | Steveice10 | 4 | -15/+19 | |
2023-07-01 | parcel: Optimize small_vector sizes | Morph | 1 | -11/+13 | |
2023-07-01 | maxwell_dma: Specify dst_operand.pitch instead of a temp var | Morph | 1 | -4/+3 | |
2023-07-01 | general: Use ScratchBuffer where possible | Morph | 14 | -64/+81 | |
2023-07-01 | yuzu: Ensure mouse panning can't be enabled with real mouse emulation | german77 | 5 | -30/+39 | |
2023-06-30 | android: Show memory warning once | Charles Lombardo | 2 | -13/+24 | |
2023-06-30 | ring_buffer: Fix const usage on std::span | Morph | 1 | -1/+1 | |
2023-06-30 | scratch_buffer: Add member types to ScratchBuffer | Morph | 1 | -20/+26 | |
Allows for implicit conversion to std::span<T>. | |||||
2023-06-30 | android: Rework MemoryUtil | Charles Lombardo | 3 | -25/+85 | |
Uses string templates and rounds up memory amount for potentially inaccurate checks now | |||||
2023-06-30 | sink_stream: Resolve heap buffer corruption due to out of bounds write | Morph | 2 | -17/+20 | |
Also, remove the use of ScratchBuffer when upmixing, as other channels may not be initialized with zeroed out data. | |||||
2023-06-30 | video_core: vulkan_device: Scope S8Gen2 checks to just Qualcomm. | bunnei | 1 | -2/+2 | |
2023-06-30 | video_core: vulkan_device: Fix S8Gen2 dynamic state checks. | bunnei | 1 | -3/+19 | |
2023-06-29 | AccelerateDMA: Don't accelerate 3D texture DMA operations | Fernando Sahmkow | 1 | -0/+4 | |
2023-06-29 | android: Suppress a known incompatibility | Abandoned Cart | 1 | -0/+3 | |
Android Gradle plugin 8.0.2 is designed for API 33, but a newer plugin hasn't been released yet. The warning message is rather extravagant, but also suggests adding this property if you are aware of the risks. | |||||
2023-06-29 | Memory Tracker: Use 64 bit atomics instead of 128 bits | Fernando Sahmkow | 1 | -9/+13 | |
2023-06-29 | Texture cache: Fix YFC regression due to code testing | Fernando Sahmkow | 1 | -9/+0 | |
2023-06-29 | input_common: Allow timeouts to happen while scanning for a ring | german77 | 2 | -3/+4 | |
2023-06-29 | input_common: Tune mouse controls | Narr the Reg | 5 | -88/+51 | |
2023-06-29 | android: Make MemoryUtil an object | Charles Lombardo | 2 | -13/+12 | |
2023-06-29 | Blacklist EDS3 blending from new AMD drivers | Matías Locatti | 1 | -0/+8 | |
2023-06-28 | android: Android 14 support | Charles Lombardo | 2 | -3/+6 | |
Specifies the permissions needed for the changes to foreground services in Android 14. | |||||
2023-06-28 | Memory Tracking: Optimize tracking to only use atomic writes when contested with the host GPU | Fernando Sahmkow | 19 | -38/+153 | |
2023-06-28 | MemoryTracking: Initial setup of atomic writes. | Fernando Sahmkow | 8 | -14/+183 | |
2023-06-28 | input_common: Remove duplicated DriverResult enum | german77 | 21 | -479/+523 | |
2023-06-28 | x64: cpu_wait: Implement MWAITX for non-MSVC compilers | Morph | 1 | -0/+10 | |
2023-06-28 | x64: cpu_wait: Remove magic values | Morph | 1 | -3/+8 | |
2023-06-28 | x64: cpu_wait: Make use of MWAITX in MicroSleep | Morph | 1 | -12/+21 | |
MWAITX is equivalent to UMWAIT on Intel's Alder Lake CPUs. We can emulate TPAUSE by using MONITORX in conjunction with MWAITX to wait for 100K cycles. | |||||
2023-06-28 | x64: Add detection of monitorx instructions | Morph | 3 | -0/+3 | |
monitorx introduces 2 instructions: MONITORX and MWAITX. | |||||
2023-06-28 | fsmitm_romfsbuild: avoid full path lookups | Liam | 1 | -21/+17 | |
2023-06-28 | renderer_vulkan: Prevent crashes when blitting depth stencil | GPUCode | 1 | -0/+3 | |
2023-06-28 | video_core: Add BCn decoding support | GPUCode | 13 | -120/+221 | |
2023-06-28 | renderer_vulkan: Add more feature checking | GPUCode | 3 | -3/+24 | |
2023-06-28 | renderer_vulkan: Don't assume debug tool with debug renderer | GPUCode | 1 | -1/+1 | |
* Causes crashes because mali drivers don't support debug utils | |||||
2023-06-28 | renderer_vulkan: Bump minimum SPIRV version | GPUCode | 1 | -1/+1 | |
* 1.3 is guaranteed on all 1.1 drivers | |||||
2023-06-28 | renderer_vulkan: Respect viewport limit | GPUCode | 3 | -6/+19 | |
2023-06-28 | renderer_vulkan: Don't add transform feedback flag if unsupported | GPUCode | 2 | -7/+12 | |
2023-06-28 | renderer_vulkan: Add suport for debug report callback | GPUCode | 8 | -37/+113 | |
2023-06-28 | settings: Clean up includes | lat9nq | 1 | -2/+3 | |
Adds <version> since we are looking at C++ implementation version details. Also moves exception header includes into the if preprocessor command since we only use it there. | |||||
2023-06-28 | arm_dynarmic_32: Remove disabling of block linking on arm64 | Merry | 1 | -5/+0 | |
2023-06-28 | settings: Catch runtime_error, fallback time zone | lat9nq | 1 | -3/+15 | |
Windows will let you select time zones that will fail in their own C++ implementation library. Evidently from the stack trace, we get a runtime error to work with, so catch it and use the fallback. | |||||
2023-06-27 | yuzu: Fix clang format | german77 | 2 | -12/+15 | |
2023-06-27 | android: Fix size check for content uris | Charles Lombardo | 1 | -0/+6 | |
Fix for checking file size for android content uris | |||||
2023-06-26 | android: Clean up file extension checks | Charles Lombardo | 5 | -50/+19 | |
2023-06-26 | externals: Use cmake subdirectory | GPUCode | 3 | -6/+0 | |
2023-06-26 | Use safe reads in DMA engine | Kelebek1 | 1 | -5/+6 | |
2023-06-26 | PR feedback + constification | comex | 8 | -60/+62 | |
2023-06-26 | network.cpp: include expected.h | comex | 1 | -0/+1 | |
2023-06-26 | re-format | comex | 1 | -4/+5 | |
2023-06-26 | Fix more Windows build errors | comex | 5 | -28/+35 | |
I did test this beforehand, but not on MinGW, and the error that showed up on the msvc builder didn't happen for me... | |||||
2023-06-26 | ssl: fix compatibility with OpenSSL 1.1.1 | comex | 1 | -1/+10 | |
Turns out changes were needed after all. | |||||
2023-06-26 | OpenGL: Limit lmem warmup to NVIDIA | ameerj | 3 | -4/+15 | |
:frog: | |||||
2023-06-26 | shaders: Track local memory usage | ameerj | 7 | -2/+23 | |
2023-06-26 | emit_glasm: Fix lmem size computation | ameerj | 1 | -1/+1 | |
2023-06-26 | OpenGL: Add Local Memory warmup shader | ameerj | 5 | -1/+62 | |
2023-06-26 | Fixes: | comex | 3 | -4/+12 | |
- Add missing virtual destructor on `SSLBackend`. - On Windows, filter out `POLLWRBAND` (one of the new flags added) when calling `WSAPoll`, because despite the constant being defined on Windows, passing it calls `WSAPoll` to yield `EINVAL`. - Reduce OpenSSL version requirement to satisfy CI; I haven't tested whether it actually builds (or runs) against 1.1.1, but if not, I'll figure it out. - Change an instance of memcpy to memmove, even though the arguments cannot overlap, to avoid a [strange GCC error](https://github.com/yuzu-emu/yuzu/pull/10912#issuecomment-1606283351). | |||||
2023-06-25 | ssl: rename argument to avoid false positive codespell warning | comex | 1 | -2/+2 | |
The original name `larg` was copied from the OpenSSL documentation and is not a typo of 'large' but rather an abbreviation of '`long` argument'. But whatever, no harm in adding an underscore. | |||||
2023-06-25 | socket_types: Improve comment | comex | 1 | -3/+3 | |
2023-06-25 | Implement SSL service | comex | 21 | -277/+2080 | |
This implements some missing network APIs including a large chunk of the SSL service, enough for Mario Maker (with an appropriate mod applied) to connect to the fan server [Open Course World](https://opencourse.world/). Connecting to first-party servers is out of scope of this PR and is a minefield I'd rather not step into. ## TLS TLS is implemented with multiple backends depending on the system's 'native' TLS library. Currently there are two backends: Schannel for Windows, and OpenSSL for Linux. (In reality Linux is a bit of a free-for-all where there's no one 'native' library, but OpenSSL is the closest it gets.) On macOS the 'native' library is SecureTransport but that isn't implemented in this PR. (Instead, all non-Windows OSes will use OpenSSL unless disabled with `-DENABLE_OPENSSL=OFF`.) Why have multiple backends instead of just using a single library, especially given that Yuzu already embeds mbedtls for cryptographic algorithms? Well, I tried implementing this on mbedtls first, but the problem is TLS policies - mainly trusted certificate policies, and to a lesser extent trusted algorithms, SSL versions, etc. ...In practice, the chance that someone is going to conduct a man-in-the-middle attack on a third-party game server is pretty low, but I'm a security nerd so I like to do the right security things. My base assumption is that we want to use the host system's TLS policies. An alternative would be to more closely emulate the Switch's TLS implementation (which is based on NSS). But for one thing, I don't feel like reverse engineering it. And I'd argue that for third-party servers such as Open Course World, it's theoretically preferable to use the system's policies rather than the Switch's, for two reasons 1. Someday the Switch will stop being updated, and the trusted cert list, algorithms, etc. will start to go stale, but users will still want to connect to third-party servers, and there's no reason they shouldn't have up-to-date security when doing so. At that point, homebrew users on actual hardware may patch the TLS implementation, but for emulators it's simpler to just use the host's stack. 2. Also, it's good to respect any custom certificate policies the user may have added systemwide. For example, they may have added custom trusted CAs in order to use TLS debugging tools or pass through corporate MitM middleboxes. Or they may have removed some CAs that are normally trusted out of paranoia. Note that this policy wouldn't work as-is for connecting to first-party servers, because some of them serve certificates based on Nintendo's own CA rather than a publicly trusted one. However, this could probably be solved easily by using appropriate APIs to adding Nintendo's CA as an alternate trusted cert for Yuzu's connections. That is not implemented in this PR because, again, first-party servers are out of scope. (If anything I'd rather have an option to _block_ connections to Nintendo servers, but that's not implemented here.) To use the host's TLS policies, there are three theoretical options: a) Import the host's trusted certificate list into a cross-platform TLS library (presumably mbedtls). b) Use the native TLS library to verify certificates but use a cross-platform TLS library for everything else. c) Use the native TLS library for everything. Two problems with option a). First, importing the trusted certificate list at minimum requires a bunch of platform-specific code, which mbedtls does not have built in. Interestingly, OpenSSL recently gained the ability to import the Windows certificate trust store... but that leads to the second problem, which is that a list of trusted certificates is [not expressive enough](https://bugs.archlinux.org/task/41909) to express a modern certificate trust policy. For example, Windows has the concept of [explicitly distrusted certificates](https://learn.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2012-r2-and-2012/dn265983(v=ws.11)), and macOS requires Certificate Transparency validation for some certificates with complex rules for when it's required. Option b) (using native library just to verify certs) is probably feasible, but it would miss aspects of TLS policy other than trusted certs (like allowed algorithms), and in any case it might well require writing more code, not less, compared to using the native library for everything. So I ended up at option c), using the native library for everything. What I'd *really* prefer would be to use a third-party library that does option c) for me. Rust has a good library for this, [native-tls](https://docs.rs/native-tls/latest/native_tls/). I did search, but I couldn't find a good option in the C or C++ ecosystem, at least not any that wasn't part of some much larger framework. I was surprised - isn't this a pretty common use case? Well, many applications only need TLS for HTTPS, and they can use libcurl, which has a TLS abstraction layer internally but doesn't expose it. Other applications only support a single TLS library, or use one of the aforementioned larger frameworks, or are platform-specific to begin with, or of course are written in a non-C/C++ language, most of which have some canonical choice for TLS. But there are also many applications that have a set of TLS backends just like this; it's just that nobody has gone ahead and abstracted the pattern into a library, at least not a widespread one. Amusingly, there is one TLS abstraction layer that Yuzu already bundles: the one in ffmpeg. But it is missing some features that would be needed to use it here (like reusing an existing socket rather than managing the socket itself). Though, that does mean that the wiki's build instructions for Linux (and macOS for some reason?) already recommend installing OpenSSL, so no need to update those. ## Other APIs implemented - Sockets: - GetSockOpt(`SO_ERROR`) - SetSockOpt(`SO_NOSIGPIPE`) (stub, I have no idea what this does on Switch) - `DuplicateSocket` (because the SSL sysmodule calls it internally) - More `PollEvents` values - NSD: - `Resolve` and `ResolveEx` (stub, good enough for Open Course World and probably most third-party servers, but not first-party) - SFDNSRES: - `GetHostByNameRequest` and `GetHostByNameRequestWithOptions` - `ResolverSetOptionRequest` (stub) ## Fixes - Parts of the socket code were previously allocating a `sockaddr` object on the stack when calling functions that take a `sockaddr*` (e.g. `accept`). This might seem like the right thing to do to avoid illegal aliasing, but in fact `sockaddr` is not guaranteed to be large enough to hold any particular type of address, only the header. This worked in practice because in practice `sockaddr` is the same size as `sockaddr_in`, but it's not how the API is meant to be used. I changed this to allocate an `sockaddr_in` on the stack and `reinterpret_cast` it. I could try to do something cleverer with `aligned_storage`, but casting is the idiomatic way to use these particular APIs, so it's really the system's responsibility to avoid any aliasing issues. - I rewrote most of the `GetAddrInfoRequest[WithOptions]` implementation. The old implementation invoked the host's getaddrinfo directly from sfdnsres.cpp, and directly passed through the host's socket type, protocol, etc. values rather than looking up the corresponding constants on the Switch. To be fair, these constants don't tend to actually vary across systems, but still... I added a wrapper for `getaddrinfo` in `internal_network/network.cpp` similar to the ones for other socket APIs, and changed the `GetAddrInfoRequest` implementation to use it. While I was at it, I rewrote the serialization to use the same approach I used to implement `GetHostByNameRequest`, because it reduces the number of size calculations. While doing so I removed `AF_INET6` support because the Switch doesn't support IPv6; it might be nice to support IPv6 anyway, but that would have to apply to all of the socket APIs. I also corrected the IPC wrappers for `GetAddrInfoRequest` and `GetAddrInfoRequestWithOptions` based on reverse engineering and hardware testing. Every call to `GetAddrInfoRequestWithOptions` returns *four* different error codes (IPC status, getaddrinfo error code, netdb error code, and errno), and `GetAddrInfoRequest` returns three of those but in a different order, and it doesn't really matter but the existing implementation was a bit off, as I discovered while testing `GetHostByNameRequest`. - The new serialization code is based on two simple helper functions: ```cpp template <typename T> static void Append(std::vector<u8>& vec, T t); void AppendNulTerminated(std::vector<u8>& vec, std::string_view str); ``` I was thinking there must be existing functions somewhere that assist with serialization/deserialization of binary data, but all I could find was the helper methods in `IOFile` and `HLERequestContext`, not anything that could be used with a generic byte buffer. If I'm not missing something, then maybe I should move the above functions to a new header in `common`... right now they're just sitting in `sfdnsres.cpp` where they're used. - Not a fix, but `SocketBase::Recv`/`Send` is changed to use `std::span<u8>` rather than `std::vector<u8>&` to avoid needing to copy the data to/from a vector when those methods are called from the TLS implementation. | |||||
2023-06-25 | Hyphenate Joy-Con and clarify further | Kirill Ignatev | 1 | -1/+1 | |
2023-06-25 | Clarify Ring-Con configuration message in UI | Kirill Ignatev | 1 | -1/+1 | |
Not obvious how left controller should be set up Mention that it should be left physical dual emulated | |||||
2023-06-25 | core: hid: Allow to read bin files while switch controller is available | german77 | 1 | -4/+10 | |
2023-06-25 | input_common: Dont try to read/write data from 3rd party controllers | german77 | 4 | -14/+42 | |
2023-06-25 | input_common: Make use of new SDL features | german77 | 1 | -8/+20 | |
2023-06-24 | Only use SDL wakelock on Linux | zeltermann | 3 | -52/+12 | |
SDL has internally fixed shenanigans related to wakelocking through DBus from inside sandboxes from around August 2022, so we can now remove the workaround we used since 2021. | |||||
2023-06-23 | android: define [[maybe_unused]] (const) auto | Abandoned Cart | 1 | -41/+43 | |
2023-06-23 | android: Parameter types from Android Studio | Abandoned Cart | 1 | -4/+5 | |
Android Studio marked these parameters as errors because it is an instance, not a class, that is being passed from Java. | |||||
2023-06-23 | vfs_real: lock concurrent accesses | Liam | 2 | -25/+45 | |
2023-06-22 | android: Log settings | GPUCode | 1 | -0/+1 | |
2023-06-22 | vulkan_common: Remove required flags | GPUCode | 1 | -15/+1 | |
* Allows VMA to fallback to system RAM instead of crashing | |||||
2023-06-22 | general: remove atomic signal and wait | Liam | 9 | -40/+26 | |
2023-06-22 | Remove memory allocations in some hot paths | Kelebek1 | 84 | -460/+503 | |
2023-06-22 | input_common: Implement native mifare support | Narr the Reg | 25 | -193/+1165 | |
2023-06-22 | android: Generalize string message dialog | Abandoned Cart | 2 | -11/+11 | |
2023-06-22 | android: Add support for concurrent installs | Abandoned Cart | 3 | -40/+154 | |
2023-06-22 | android: Convert memory sizes to resource | Abandoned Cart | 3 | -11/+21 | |
2023-06-22 | android: Add a notice when RAM inadequate | Abandoned Cart | 3 | -1/+75 | |
2023-06-22 | android: Refactor native and corresponding variables | Abandoned Cart | 6 | -22/+25 | |
2023-06-22 | Fix JNI and expose mute settings to Android | Abandoned Cart | 7 | -277/+99 | |
2023-06-21 | android: Add a PiP interface to mute / unmute | Abandoned Cart | 4 | -0/+68 | |
2023-06-21 | android: Don't show custom driver button on mali and x86 | Charles Lombardo | 3 | -71/+123 | |
2023-06-20 | time_zone_manager: Add null terminator | lat9nq | 1 | -2/+4 | |
We aren't null-terminating this string after the copy, and we need to. | |||||
2023-06-20 | time_zone_manager: Stop on comma | lat9nq | 1 | -1/+3 | |
This is a deviation from the reference time zone implementation. The actual code will set a pointer to the time zone name here, but for us we have a limited number of characters to work with, and the name of the time zone here could be larger than 8 characters. We can make the assumption that time zone names greater than five characters in length include a comma that denotes more data. Nintendo just truncates that data for the name, so we can do the same. time_zone_manager: Check for length of array Just to be double sure that we never break past the array length, directly compare against it. | |||||
2023-06-19 | vulkan_device: Remove brace initializer | toast2903 | 1 | -1/+1 | |
Co-authored-by: Tobias <thm.frey@gmail.com> | |||||
2023-06-19 | video_core: Check broken compute earlier | lat9nq | 2 | -2/+3 | |
Checks it as the system is determining what settings to enable. Reduces the need to check settings while the system is running. | |||||
2023-06-19 | vfs_concat: verify short read | Liam | 1 | -0/+5 | |
2023-06-19 | vfs_concat: fix offset calculation when not aligned to file boundary | Liam | 1 | -4/+5 | |
2023-06-19 | Use current GPU address when unmapping GPU pages, not the base | Kelebek1 | 1 | -2/+2 | |
2023-06-18 | vk_device_info: Check only affected Intel drivers | lat9nq | 3 | -8/+11 | |
Renames is_intel_proprietary to has_broken_compute for accuracy. vk_device_info: Use vulkan::device to check compute | |||||
2023-06-18 | video_core: Formalize HasBrokenCompute | lat9nq | 3 | -4/+26 | |
Also limits it to only affected Intel proprietrary driver versions. vulkan_device: Move broken compute determination vk_device: Remove errant back quote | |||||
2023-06-18 | renderer_vulkan: Add missing initializers | GPUCode | 2 | -5/+13 | |
2023-06-18 | renderer_vulkan: Use VMA for buffers | GPUCode | 16 | -211/+262 | |
2023-06-18 | renderer_vulkan: Use VMA for images | GPUCode | 16 | -91/+119 | |
2023-06-18 | memory_allocator: Remove OpenGL interop | GPUCode | 4 | -67/+8 | |
* Appears to be unused atm | |||||
2023-06-18 | externals: Add vma and initialize it | lat9nq | 3 | -2/+26 | |
video_core: Move vma implementation to library | |||||
2023-06-18 | vulkan_device: Remove external memory extension | lat9nq | 2 | -19/+0 | |
Unused in yuzu. Enables yuzu to boot games in Wine using Vulkan. | |||||
2023-06-18 | renderer_vulkan: add missing include | Liam | 1 | -0/+1 | |
2023-06-18 | time_zone_service: Always write time zone rule data | lat9nq | 1 | -8/+2 | |
Switch firmware will initialize this data even if the given parameters are invalid. We should do the same. | |||||
2023-06-17 | Synchronize vertex buffer even when it doesn't require binding | Kelebek1 | 2 | -13/+16 | |
2023-06-17 | k_thread: Use a mutex and cond_var to sync bool | lat9nq | 2 | -5/+14 | |
std::atomic<bool> is broken on MinGW and causes deadlocks there. Use a normal cond var in its stead. | |||||
2023-06-17 | video_core: add samples check when find render target | FengChen | 2 | -18/+14 | |
2023-06-17 | video_core: Only apply AF to 2D (array) image types | Wollnashorn | 1 | -2/+7 | |
2023-06-17 | video_core: Removed AF for all mip modes option as it's default now | Wollnashorn | 9 | -40/+3 | |
2023-06-16 | vfs_real: ensure size cache is reset on write | Liam | 1 | -0/+2 | |
2023-06-16 | android: Expose audio output engine setting | Charles Lombardo | 7 | -21/+59 | |
2023-06-16 | android: Bump ktlint version to 0.47.1 | Charles Lombardo | 1 | -1/+1 | |
2023-06-16 | android: Disable import-ordering ktlint check | Charles Lombardo | 1 | -1/+2 | |
2023-06-16 | patch_manager: remove unnecessary GetSize calls | Liam | 1 | -5/+4 | |
2023-06-16 | vfs_real: misc optimizations | Liam | 4 | -24/+41 | |
2023-06-16 | android: Expose CPU debugging option | Charles Lombardo | 5 | -23/+30 | |
2023-06-16 | android: Expose fastmem option | Charles Lombardo | 4 | -29/+59 | |
2023-06-16 | android: Support changing multiple settings at once | Charles Lombardo | 2 | -1/+17 | |
2023-06-16 | android: Fix aspect ratio when rotating screen | Abandoned Cart | 2 | -28/+20 | |
2023-06-16 | video_core: drawtexture support upscale | Feng Chen | 1 | -3/+7 | |
2023-06-16 | video_core: Use sampler IDs instead pointers in the pipeline config | Wollnashorn | 8 | -23/+68 | |
The previous approach of storing pointers returned by `GetGraphicsSampler`/`GetComputeSampler` caused UB, as these functions can cause reallocation of the sampler slot vector and therefore invalidate the pointers | |||||
2023-06-16 | time_zone_manager: Compare to the correct boolean | lat9nq | 1 | -2/+3 | |
Reference implementation does not compare the booleans as we had them. Use the correct ones as in the reference. Also adds an assert. I have been made aware of a crash here and am not able to reproduce currently. | |||||
2023-06-16 | nx_tzdb: Correct Antarctica spelling | lat9nq | 1 | -1/+1 | |
2023-06-16 | android: Apply ktlint codestyle | Charles Lombardo | 53 | -278/+476 | |
2023-06-16 | Android: Use ktlint for Kotlin code style | Charles Lombardo | 1 | -0/+20 | |
2023-06-16 | android: Enable android linting | Charles Lombardo | 2 | -11/+1 | |
2023-06-16 | input_common: Add amiibo with originality signature support | Narr the Reg | 2 | -0/+3 | |
2023-06-16 | android: fs: Fix Exists / IsFile for SAF. | bunnei | 4 | -1/+54 | |
2023-06-15 | video_core: Fallback to default anisotropy instead to 1x anisotropy | Wollnashorn | 7 | -16/+20 | |
2023-06-15 | video_core: Disable AF for non-color image formats | Wollnashorn | 1 | -0/+9 | |
2023-06-15 | video_core: Fixed compilation errors because of name shadowing | Wollnashorn | 2 | -9/+9 | |
2023-06-15 | vulkan_device: disable extended_dynamic_state2 on ARM drivers | Liam | 1 | -5/+10 | |
2023-06-15 | video_core: Add per-image anisotropy heuristics (format & mip count) | Wollnashorn | 11 | -71/+168 | |
2023-06-15 | video_core: preallocate fewer IR blocks | Liam | 2 | -6/+6 | |
2023-06-15 | service: nfc: Read tag protocol only for nfc backend | Narr the Reg | 2 | -5/+6 | |
2023-06-15 | service: nfc: Accuracy fixes | Narr the Reg | 10 | -110/+192 | |
2023-06-14 | android: Move overlays to their own layout | Abandoned Cart | 5 | -108/+117 | |
2023-06-14 | android: Initialize defaults for each orientations | Abandoned Cart | 6 | -173/+187 | |
2023-06-14 | android: Display FPS with emulation on hinge | Abandoned Cart | 2 | -17/+13 | |
2023-06-14 | android: Remove PiP reliance on fragment | Abandoned Cart | 5 | -63/+69 | |
2023-06-14 | android: Set layout by fragment, not view | Abandoned Cart | 3 | -63/+63 | |
2023-06-14 | android: Add a separate foldable layout set | Abandoned Cart | 3 | -206/+222 | |
2023-06-14 | android: Set portrait default control params | Abandoned Cart | 4 | -17/+186 | |
2023-06-14 | android: Actually implement portrait controls | Abandoned Cart | 2 | -33/+82 | |
2023-06-14 | android: Enable automated portrait controls | Abandoned Cart | 2 | -81/+40 | |
2023-06-14 | android: Add Picture in Picture / Orientation | Abandoned Cart | 15 | -66/+336 | |
2023-06-14 | android: Adapt EmulationActivity to navigation component | Charles Lombardo | 9 | -74/+86 | |
2023-06-14 | video_core: optionally skip barriers on feedback loops | Liam | 6 | -0/+28 | |
2023-06-14 | renderer_vulkan: propagate conditional barrier support | Liam | 1 | -0/+1 | |
2023-06-14 | video_core: Apply AF only to samplers with normal LOD range [0, 1+x] | Wollnashorn | 1 | -4/+6 | |
2023-06-14 | video_core: Fix default anisotropic heuristic | Wollnashorn | 1 | -4/+4 | |
2023-06-14 | video_core: Never apply AF to None mipmap mode | Wollnashorn | 1 | -3/+4 | |
Should fix some artifacts with the "apply anisotropic filtering for all mipmap modes" option | |||||
2023-06-13 | vfs_real: require file existence on open | Liam | 1 | -0/+4 | |
2023-06-13 | vfs_real: add simplified open file cache | Liam | 2 | -1/+18 | |
2023-06-13 | video_core: Disable anisotropic filtering for samplers with depth compare | Wollnashorn | 1 | -2/+3 | |
2023-06-13 | android: Declare languages in locales_config.xml | FearlessTobi | 2 | -0/+18 | |
This is required to make per-app language swithcing possible on Android 13. | |||||
2023-06-13 | vfs_real: lazily open files | Liam | 2 | -11/+3 | |
2023-06-13 | vfs_real: add file LRU cache for open file limits | Liam | 2 | -100/+106 | |
2023-06-13 | android: Fix touch input | german77 | 1 | -2/+4 | |
2023-06-13 | buffer_cache_base: Specify buffer type in HostBindings | Morph | 6 | -37/+35 | |
Avoid reinterpret-casting from void pointer since the type is already known at compile time. | |||||
2023-06-13 | core: decouple ARM interface from Dynarmic | Liam | 15 | -172/+189 | |
2023-06-13 | video_core: Option to apply anisotropic filtering for all mipmap modes | Wollnashorn | 9 | -1/+37 | |
2023-06-13 | android: settings: Disable force_max_clock by default. | bunnei | 3 | -5/+5 | |
2023-06-13 | android: settings: Add reactive flushing as a default-disabled setting. | bunnei | 5 | -0/+24 | |
2023-06-13 | android: res: Remove translated strings that no longer exist. | bunnei | 14 | -106/+0 | |
2023-06-13 | android: Add translation files manually | FearlessTobi | 14 | -0/+4816 | |
2023-06-12 | android: Add update support | Narr the Reg | 7 | -5/+183 | |
2023-06-12 | android: Use autogenerated hash code function for Game class | Charles Lombardo | 1 | -7/+12 | |
2023-06-12 | android: Use autoVersion when gradle property is set | Charles Lombardo | 1 | -1/+15 | |
2023-06-12 | input_common: Redesign mouse panning | Baptiste Marie | 14 | -103/+581 | |
2023-06-11 | qt: use larger buffer for update install | Liam | 1 | -1/+1 | |
2023-06-11 | android: Update dependencies | Charles Lombardo | 1 | -4/+4 | |
2023-06-11 | android: Differentiate build types with new names | Charles Lombardo | 2 | -2/+7 | |
Change the applicationIdSuffix and app launcher title based on build type | |||||
2023-06-11 | Android: Remove unused relWithVersionCode build type | Charles Lombardo | 1 | -10/+0 | |
2023-06-11 | android: Use ContentResolver to get file extension | Charles Lombardo | 3 | -11/+28 | |
Fixes an issue where we try to resolve file extension from URIs. Sometimes the URI will not contain the file name at all and instead a string of numbers. Here we query the content resolver and guarantee that we get a file name every time. | |||||
2023-06-11 | android: Fix screen orientation & blurriness. | bunnei | 4 | -95/+5 | |
2023-06-10 | shader_recompiler: translate f64 to f32 when unsupported on host | Liam | 8 | -0/+198 | |
2023-06-10 | shader_recompiler: remove barriers in conditional control flow when device lacks support | Liam | 10 | -0/+65 | |
2023-06-10 | android: Add proper homebrew check | Charles Lombardo | 8 | -13/+51 | |
2023-06-09 | android: Fix input overlay version check | Charles Lombardo | 1 | -12/+14 | |
2023-06-09 | qt: persist framerate sync option | Liam | 1 | -0/+2 | |
2023-06-09 | android: EmulationActivity: Fix orientation on Mi Pad 5. | bunnei | 1 | -1/+2 | |
2023-06-09 | Fix potentially uninitialized local variable warning | Tokarev Artem | 1 | -1/+1 | |
2023-06-08 | image_info: adjust rescale thresholds and refactor constant use | Liam | 1 | -8/+12 | |
2023-06-08 | vk_blit_screen: use higher bit depth for fxaa | Liam | 1 | -4/+4 | |
2023-06-08 | Combine vertex/transform feedback buffer binding into a single call | Kelebek1 | 6 | -24/+148 | |
2023-06-08 | nvnflinger: allow locking framerate during video playback | Liam | 11 | -24/+48 | |
2023-06-08 | nvdisp: Fix SingleCore frametime reporting | Morph | 1 | -1/+1 | |
2023-06-08 | core_timing: Fix SingleCore cycle timer | Morph | 4 | -43/+31 | |
2023-06-08 | (wall, native)_clock: Add GetGPUTick | Morph | 7 | -12/+47 | |
Allows us to directly calculate the GPU tick without double conversion to and from the host clock tick. | |||||
2023-06-08 | time: Use compile time division for TimeSpanType conversion | Morph | 5 | -11/+15 | |
2023-06-08 | core_timing: Use CNTPCT as the guest CPU tick | Morph | 14 | -122/+47 | |
Previously, we were mixing the raw CPU frequency and CNTFRQ. The raw CPU frequency (1020 MHz) should've never been used as CNTPCT (whose frequency is CNTFRQ) is the only counter available. | |||||
2023-06-08 | nvnflinger: Acquire lock prior to signaling the vsync variable | Morph | 1 | -1/+2 | |
2023-06-08 | (wall, native)_clock: Rework NativeClock | Morph | 5 | -259/+94 | |
2023-06-08 | x64: Deduplicate RDTSC usage | Morph | 5 | -19/+82 | |
2023-06-07 | remove version code declaration | qurious-pixel | 1 | -1/+0 | |
2023-06-07 | CMakeLists: Force C++20 on MSVC due to conflicts with C++23 modules | Morph | 1 | -2/+4 | |
The latest version of MSVC STL brings C++23 standard library modules, which conflict with precompiled headers. Disabling with /experimental:module- has no effect, so force C++20 in the meantime while we wait for module support in other compilers. | |||||
2023-06-07 | service: nfc: Add backup support | german77 | 10 | -39/+184 | |
2023-06-06 | Android TV banner | Live session user | 3 | -14/+9 | |
2023-06-06 | android: Set version code | Narr the Reg | 1 | -0/+1 | |
2023-06-06 | Updated to lexicographical order suggestions | Carlos Estrague / Mrc_munir | 1 | -3/+3 | |
2023-06-06 | android: Improve Gradle build configuration | Abandoned Cart | 1 | -1/+2 | |
2023-06-06 | vk_device_info: Clean up includes [IWYU] | lat9nq | 2 | -3/+11 | |
2023-06-06 | vk_device_info: Add SPDX data | lat9nq | 2 | -0/+6 | |
2023-06-06 | yuzu-qt: Load Vulkan device info at startup | lat9nq | 11 | -50/+124 | |
Loading it when the configuration opens now incurs a noticeable delay. We also don't need to rediscover the same data repeatedly each time the configuration opens. Moves vulkan device info discovery to yuzu's startup as opposed to the configure_graphics constructor. | |||||
2023-06-06 | android: audio_core: sink_stream: Remove unnecessary check. | bunnei | 1 | -3/+0 | |
2023-06-06 | Make VK_EXT_robustness2 optional | Carlos Estrague / Mrc_munir | 1 | -4/+4 | |
For some reason nvidia implemented Vulkan 1.2 supported without support for VK_EXT_robustness2 in tegra X1/X2 . Fix vulkan work in TX1/TX2 L4T drivers . | |||||
2023-06-06 | android: HomeSettingsFragment: Use string resource for "Share log". | bunnei | 1 | -1/+1 | |
2023-06-06 | android: Use a custom view for changing emulation aspect ratio | Charles Lombardo | 3 | -1/+62 | |
Credit to the Skyline team for the FixedRatioSurfaceView. | |||||
2023-06-06 | Address feedback | PabloG02 | 4 | -19/+28 | |
2023-06-05 | tz_manager: Fix comparison to wrong integer | lat9nq | 1 | -1/+1 | |
2023-06-05 | tz_manager: Implement missing transition times | lat9nq | 1 | -1/+59 | |
time_zone_manager: Use s64 storage | |||||
2023-06-05 | tz_manager: Warn on unimplemented code | lat9nq | 1 | -0/+7 | |
2023-06-05 | tz_manager: Fix character offset not advancing | lat9nq | 1 | -0/+1 | |
2023-06-05 | tz_manager: Fix off-by-one error | lat9nq | 1 | -4/+4 | |
2023-06-05 | time_zone: Handle offset time zones | lat9nq | 1 | -38/+26 | |
time_zone: Remove maybe_unused time_zone: Use s64 storages time_zone: Catch by reference | |||||
2023-06-05 | time_zone_binary: Add zoneinfo data | lat9nq | 2 | -643/+65 | |
Adds the basic time zone data for the system archive. time_zone_binary: Implement full system archive time_zone_binary: Remove unneeded template tz_binary: Make GenerateFiles static | |||||
2023-06-05 | time: Implement missing services | Narr the Reg | 7 | -11/+106 | |
Implements GetTotalLocationNameCount LoadLocationNameList and GetTimeZoneRuleVersion. tz-manager: Fix sign issue | |||||
2023-06-05 | time_zone_manager: Implement go_ahead/go_back | lat9nq | 1 | -1/+39 | |
2023-06-05 | tz_content_manager: Try the system time zone first | lat9nq | 1 | -2/+9 | |
If we can't find the normal time zone string, try searching for the closest one. | |||||
2023-06-05 | common: Move system time zone string detection | lat9nq | 3 | -76/+84 | |
Moves it from Settings to Common::TimeZone, since this algorithm doesn't depend on the setting. It also lets us use it in other libraries. common: Various fixes time_zone: Don't double up the std::abs Too many absolute values were causing mirrored time zones to resolve as the same. | |||||
2023-06-05 | configure_system: Remove external offset on custom rtc | lat9nq | 1 | -2/+1 | |
2023-06-05 | time: Remove auto timezone consideration | lat9nq | 3 | -33/+3 | |
GetTimeZoneString no longer reports a setting unique to yuzu, so we can assume a valid timezone string in core. | |||||
2023-06-05 | settings: Always report a valid time zone | lat9nq | 1 | -2/+76 | |
Prevents needing to deduce the non-Switch setting in core. Instead, we deduce the meaning of this setting where the heresy is committed, in common. settings: Remove strftime usage GetTimeZoneString: Use standard features Also forces GMT on MinGW due to broken strftime. | |||||
2023-06-05 | time_manager: Don't offset RTC by system time zone | lat9nq | 1 | -5/+1 | |
This causes the emulated system's universal time to be on the user's clock, and the user time to be off if they set a time zone. time_manager: Remove GetExternalRtcTime | |||||
2023-06-05 | tz_content_manager: Detect system time zone | lat9nq | 1 | -1/+11 | |
Uses C++20 tzdb to determine the system timezone. The switch uses the 597 posix time zones, so this needs tests if the system time zone isn't posix-compliant. | |||||
2023-06-05 | android: Create licenses page | Charles Lombardo | 10 | -4/+918 | |
2023-06-05 | android: Move settings to debug submenu | Charles Lombardo | 4 | -26/+38 | |
2023-06-05 | android: Load settings at the start of each activity | Charles Lombardo | 4 | -6/+19 | |
2023-06-04 | yuzu: add opengl shader backend info in status bar | xcfrg | 3 | -1/+14 | |
2023-06-04 | Attempt to move the unzip coroutine to a ViewModel | PabloG02 | 3 | -27/+94 | |
2023-06-04 | android: update strings | PabloG02 | 1 | -5/+5 | |
2023-06-04 | android: add option to share log | PabloG02 | 3 | -0/+36 | |
2023-06-04 | android: add option to install firmware | PabloG02 | 5 | -1/+124 | |
2023-06-04 | android: move unzip function to FileUtil and use SecurityException | PabloG02 | 2 | -32/+34 | |
2023-06-04 | android: Several string changes | Charles Lombardo | 5 | -78/+78 | |
2023-06-04 | audio_renderer: resolve adsp thread deadlock shutdown | Liam | 4 | -10/+12 | |
2023-06-04 | android: Resolve a couple Gradle warnings | Abandoned Cart | 1 | -1/+4 | |
2023-06-04 | android: Add support for split foldable view | Abandoned Cart | 3 | -1/+55 | |
2023-06-03 | Fix typo | Kevin Sundqvist Norlén | 1 | -1/+1 | |
Co-authored-by: liamwhite <liamwhite@users.noreply.github.com> | |||||
2023-06-03 | android: Replace deprecated and Java code | Abandoned Cart | 1 | -27/+20 | |
2023-06-03 | fsp-srv: avoid patching romfs multiple times | Liam | 1 | -8/+12 | |
2023-06-03 | Update Chinese NX language names | Keve1227 | 2 | -8/+8 | |
... as per the TLoZ: TotK icon files. Would this conflict with older games? | |||||
2023-06-03 | Issue a reload if the system language changed | Keve1227 | 1 | -1/+2 | |
2023-06-03 | Pick game icon based on the configured system language | Keve1227 | 1 | -1/+32 | |
2023-06-03 | romfs: use vfs_cached for romfs output | Liam | 3 | -24/+2 | |
2023-06-03 | vfs: add vfs_cached for romfs build | Liam | 4 | -2/+99 | |
2023-06-03 | android: Fix crash on importing invalid save | Charles Lombardo | 1 | -3/+5 | |
2023-06-03 | android: vk_presentation_manager: Fix unusued needs_recreation. | bunnei | 1 | -3/+3 | |
2023-06-03 | android: Rename "Input Overlay" to "Overlay Options" | Charles Lombardo | 1 | -1/+1 | |
2023-06-03 | android: Adjust import/export saves dialog | Charles Lombardo | 3 | -15/+21 | |
2023-06-03 | android: Warning dialogs for key errors | Charles Lombardo | 3 | -31/+95 | |
2023-06-03 | android: vk_turbo_mode: Remove unnecessary device recreation. | bunnei | 2 | -2/+11 | |
- Fixes a rare crash. | |||||
2023-06-03 | android: EmulationFragment: Remove unnecessary surface destroy on pause. | bunnei | 1 | -3/+0 | |
2023-06-03 | android: renderer_vulkan: Fix crash with surface recreation. | bunnei | 5 | -1/+36 | |
2023-06-03 | android: Fix presentation layout on foldable and tablet devices. | bunnei | 5 | -22/+94 | |
2023-06-03 | android: Enable overlay scale/opacity dialog | Charles Lombardo | 10 | -65/+182 | |
2023-06-03 | Add image to card_game.xml to preview in the Layout Editor | PabloG02 | 1 | -1/+2 | |
2023-06-03 | Save the position of buttons as a percentage | PabloG02 | 1 | -80/+136 | |
2023-06-03 | android: Don't crash the app when selecting a zip that causes a SecurityException | Charles Lombardo | 1 | -1/+5 | |
2023-06-03 | input_common: Fix virtual amiibos | bunnei | 1 | -4/+4 | |
2023-06-03 | android: audio_core: Avoid shutdown hang. | bunnei | 1 | -0/+3 | |
2023-06-03 | android: ForegroundService: Handle null intent. | bunnei | 1 | -1/+4 | |
2023-06-03 | android: ImportExportSavesFragment: Cleanup strings. | bunnei | 2 | -7/+10 | |
2023-06-03 | Update src/android/app/src/main/java/org/yuzu/yuzu_emu/fragments/ImportExportSavesFragment.kt | bunnei | 1 | -1/+1 | |
2023-06-03 | Remove `?.` | PabloG02 | 1 | -1/+1 | |
2023-06-03 | Check if folder exists before letting the user import/export saves | PabloG02 | 1 | -9/+17 | |
2023-06-03 | Add save import/export in UI | PabloG02 | 5 | -0/+247 | |
2023-06-03 | android: Fix FPS text getting cut off by rounded display corners | Charles Lombardo | 2 | -7/+20 | |
2023-06-03 | android: Prevent deleting the settings file while a game is running | Charles Lombardo | 3 | -2/+7 | |
2023-06-03 | android: Fix link text color for base theme dialog | Charles Lombardo | 1 | -0/+1 | |
2023-06-03 | android: Various fixes for CI. | bunnei | 26 | -60/+121 | |
2023-06-03 | android: externals: Update libadrenotools, use useLegacyPackaging. | bunnei | 1 | -0/+5 | |
2023-06-03 | android: Re-enable service notification | Charles Lombardo | 4 | -24/+29 | |
2023-06-03 | android: Ensure keys are loaded before populating games list | Charles Lombardo | 1 | -0/+3 | |
2023-06-03 | android: Use dialog fragment for the reset settings dialog | Charles Lombardo | 2 | -12/+37 | |
2023-06-03 | android: Upgrade AGP to 8.0.2 | Charles Lombardo | 1 | -2/+2 | |
2023-06-03 | android: Show notification permission page during setup | Charles Lombardo | 4 | -59/+151 | |
2023-06-03 | android: DIsable FPS counter by default | Charles Lombardo | 1 | -1/+1 | |
2023-06-03 | android: Improve searches with one character | Charles Lombardo | 1 | -1/+2 | |
The Jaccard algorithm is great for searches with 2 or more characters but nothing is returned for searches with one character. To get around this, just search with JaroWinkler for single character searches. | |||||
2023-06-03 | android: Stop building x86 packages in APKs | Charles Lombardo | 1 | -1/+1 | |
This was really only meant for building the app to run in an emulator. If this is necessary, just add manually. | |||||
2023-06-03 | android: Add FPS toggle | Charles Lombardo | 4 | -10/+37 | |
2023-06-03 | android: Clean up app build.gradle | Charles Lombardo | 1 | -22/+2 | |
Removes the conflicting declaration of "version" and changes to versionCode that did nothing. | |||||
2023-06-03 | video_core: vk_rasterizer: Decrease draw dispatch count for Android. | bunnei | 1 | -0/+4 | |
2023-06-03 | android: config: Expose VSync as a configurable setting. | bunnei | 5 | -9/+44 | |
2023-06-03 | android: GPU: Enable async presentation, increase frames in flight. | bunnei | 2 | -2/+4 | |
2023-06-03 | android: Enable onBackInvokedCallback | Charles Lombardo | 1 | -1/+2 | |
For now this enables the ability to see the new Android 13 back gesture animations but later we can create custom animations that follow the back gesture. | |||||
2023-06-03 | android: Remove deprecated use of onBackPressed() | Charles Lombardo | 1 | -1/+16 | |
2023-06-03 | android: Add option for touch overlay haptics | Charles Lombardo | 6 | -4/+51 | |
Disabled by default | |||||
2023-06-03 | android: Improve missing game handling | Charles Lombardo | 2 | -1/+19 | |
Previously the app would crash if you selected a game that no longer existed. Now we show an error message and reload the games list to remove any invalid games from the list. | |||||
2023-06-03 | android: Clean up dependencies | Charles Lombardo | 1 | -7/+3 | |
Additionally updates material and androidx core libraries | |||||
2023-06-03 | android: Delete java code style file | Charles Lombardo | 1 | -241/+0 | |
2023-06-03 | android: Settings UI tweaks | Charles Lombardo | 6 | -23/+24 | |
New spacing and fonts for list items | |||||
2023-06-03 | android: Simplify setup in search and games fragments | Charles Lombardo | 2 | -57/+62 | |
2023-06-03 | android: Use collapsing toolbar layout in settings | Charles Lombardo | 3 | -11/+26 | |
2023-06-03 | android: Remove unnecessary JvmStatic/JvmField annotations | Charles Lombardo | 11 | -17/+0 | |
2023-06-03 | android: Fix navigation rail animation in rtl layout | Charles Lombardo | 1 | -4/+14 | |
2023-06-03 | android: Use cutout insets on setup fragment | Charles Lombardo | 1 | -5/+6 | |
2023-06-03 | android: Button to reset all settings | Charles Lombardo | 21 | -23/+138 | |
2023-06-03 | android: Use proguard file in relWithDebInfo | Charles Lombardo | 1 | -0/+4 | |
2023-06-03 | android: Fix background color within inset areas | Charles Lombardo | 2 | -2/+4 | |
2023-06-03 | android: Shortcut to settings activity on reselection | Charles Lombardo | 1 | -2/+11 | |
2023-06-03 | android: Expose custom RTC setting | Charles Lombardo | 9 | -31/+72 | |
2023-06-03 | android: Reset setting on long press | Charles Lombardo | 16 | -7/+89 | |
2023-06-03 | android: Fix issues with ea/main icons and version codes | Charles Lombardo | 7 | -28/+19 | |
Now all yuzu icon variants are taken care of and now we have a build variant that uses the versioning we need for the play store. | |||||
2023-06-03 | android: Move theme options out of advanced settings | Charles Lombardo | 4 | -9/+17 | |
2023-06-03 | android: Check if cached games are valid | Charles Lombardo | 1 | -1/+9 | |
Fixes bug when you close yuzu, delete games, and reopen to an instant crash. | |||||
2023-06-03 | android: Invert rotation to match phone orientation | german77 | 1 | -5/+27 | |
2023-06-03 | android: vulkan_device: Skip BGR565 emulation on S8gen2. | bunnei | 1 | -1/+3 | |
2023-06-03 | android: config: Use default anisotropic filtering. | bunnei | 1 | -1/+4 | |
2023-06-03 | android: Remove top padding from in game menu items | Charles Lombardo | 1 | -20/+12 | |
2023-06-03 | android: Use different icons for mainline/ea | Charles Lombardo | 10 | -5/+835 | |
2023-06-03 | android: Add early access upgrade fragment | Charles Lombardo | 13 | -2/+419 | |
We now have a second build flavor that will determine whether the "Get Early Access" button appears. | |||||
2023-06-03 | android: vulkan_device: Only compile OverrideBcnFormats when used. | bunnei | 1 | -0/+2 | |
2023-06-03 | android: remove spurious warnings about BCn formats when patched with adrenotools | Liam | 1 | -1/+27 | |
2023-06-03 | android: video_core: Disable some problematic things on GPU Normal. | bunnei | 3 | -0/+40 | |
2023-06-03 | android: settings: Use mailbox vsync by default. | bunnei | 2 | -2/+5 | |
2023-06-03 | android: video_core: Disable problematic compute shaders. | bunnei | 5 | -5/+17 | |
- Fixes #104. | |||||
2023-06-03 | android: Update progard to fix settings crash | Charles Lombardo | 1 | -0/+8 | |
R8 full mode was removing important classes from Wini that would cause a crash on saving settings. This keeps the relevant classes and suppresses warnings about irrelevant ones. | |||||
2023-06-03 | android: vulkan: Recreate surface after suspension & adapt to async. presentation. | bunnei | 8 | -26/+39 | |
2023-06-03 | android: Game data cache | Charles Lombardo | 8 | -17/+63 | |
2023-06-03 | android: Update to Kotlin 1.8.21 | Charles Lombardo | 1 | -1/+1 | |
2023-06-03 | android: Disable jetifier | Charles Lombardo | 1 | -2/+1 | |
We no longer depend on any legacy libraries that required this flag | |||||
2023-06-03 | android: Update dependencies | Charles Lombardo | 1 | -2/+2 | |
2023-06-03 | android: Migrate to AGP 8.0.1 | Charles Lombardo | 4 | -6/+17 | |
2023-06-03 | android: Enable non-transitive R classes | Charles Lombardo | 4 | -5/+15 | |
New default going forward for new android projects. Best to follow the new standard. | |||||
2023-06-03 | android: config: Enable asynchronous presentation by default on Android. | bunnei | 2 | -0/+8 | |
2023-06-03 | video_core: Enable support_descriptor_aliasing on Turnip, disable storage atomic otherwise. | bunnei | 3 | -5/+16 | |
2023-06-03 | android: fix deadzone calculation | german77 | 1 | -4/+12 | |
2023-06-03 | android: Fix background color when starting emulation | Charles Lombardo | 1 | -0/+1 | |
2023-06-03 | android: Persistent scrollbars on home settings fragment | Charles Lombardo | 2 | -5/+14 | |
2023-06-03 | android: Use short build hash | Charles Lombardo | 1 | -1/+1 | |
2023-06-03 | android: Use navigation bar shade view | Charles Lombardo | 4 | -49/+54 | |
2023-06-03 | android: About fragment | Charles Lombardo | 10 | -3/+415 | |
2023-06-03 | android: Use x-axis animation for navigation rail | Charles Lombardo | 3 | -3/+23 | |
2023-06-03 | android: Sort games alphabetically by default | Charles Lombardo | 1 | -2/+9 | |
2023-06-03 | android: New icons for navigation bar | Charles Lombardo | 7 | -4/+47 | |
2023-06-03 | android: New icons for home settings fragment | Charles Lombardo | 4 | -21/+11 | |
2023-06-03 | android: Add navigation rail | Charles Lombardo | 14 | -93/+208 | |
2023-06-03 | android: Search Fragment | Charles Lombardo | 20 | -189/+551 | |
2023-06-03 | android: Fix potential zip traversal exploit | Charles Lombardo | 1 | -3/+9 | |
2023-06-03 | android: Add dedicated show overlay checkbox | german77 | 3 | -6/+30 | |
2023-06-03 | android: Add user directory shortcut | Charles Lombardo | 6 | -25/+140 | |
2023-06-03 | android: Fix inline keyboard input | german77 | 1 | -5/+7 | |
2023-06-03 | android: Fix grammatical mistake in video core error message | Charles Lombardo | 1 | -1/+1 | |
2023-06-03 | android: Adjust wording on GPU driver install button | Charles Lombardo | 1 | -1/+1 | |
2023-06-03 | android: Add deadzone to stick input | Narr the Reg | 1 | -19/+45 | |
2023-06-03 | android: Move motion listener to emulation activity | german77 | 2 | -64/+71 | |
2023-06-03 | core: hid: Finish linking motion from virtual controllers | Narr the Reg | 5 | -9/+57 | |
2023-06-03 | android: Change wording for "Add Games" button (#100) | Charles Lombardo | 2 | -4/+6 | |
Co-authored-by: bunnei <bunneidev@gmail.com> | |||||
2023-06-03 | android: Scroll shortcut for games list | Charles Lombardo | 3 | -1/+34 | |
If you reselect the "Games" menu item in the bottom navigation menu, the list smoothly scrolls to the top. | |||||
2023-06-03 | android: Setup screen hotfix | Charles Lombardo | 3 | -12/+32 | |
Added help button link for add games warning and a check for whether a task was completed on a given screen. | |||||
2023-06-03 | android: Swap Default and Install buttons for GPU driver installation dialog | Charles Lombardo | 1 | -2/+2 | |
2023-06-03 | android: Add warnings to setup screens | Charles Lombardo | 4 | -13/+149 | |
2023-06-03 | android: Allow search bar to scroll offscreen | Charles Lombardo | 3 | -15/+8 | |
2023-06-03 | android: Update app icon | Charles Lombardo | 2 | -34/+30 | |
Small icon updates from Flam | |||||
2023-06-03 | android: Change organization of the settings tab in the home screen | Charles Lombardo | 7 | -44/+44 | |
2023-06-03 | android: Properly pop setup fragment from the back stack | Charles Lombardo | 1 | -1/+3 | |
2023-06-03 | android: Vertically scalable setup pages | Charles Lombardo | 2 | -23/+45 | |
Previously the setup pages would remain at a fixed height but now the icon and two text boxes will give up space as a device gets shorter. This eliminates the need for a scrolling view further problems with padding. | |||||
2023-06-03 | android: Fix setup rotation bug | Charles Lombardo | 2 | -4/+26 | |
If you rotated the device at the "Add Games" screen the buttons would disappear until you trigged them from the beginning page swap. Now button state is saved across recreation. | |||||
2023-06-03 | android: Temporarily switch for a fixed version code for testing | Charles Lombardo | 1 | -1/+1 | |
2023-06-03 | android: Fix alignment of SwipeRefreshLayout | Charles Lombardo | 1 | -5/+9 | |
2023-06-03 | android: Shape/spacing adjustments to game card | Charles Lombardo | 3 | -58/+64 | |
Ripple effect now reaches into rounded corners, icon size changed, company text removed, title font adjusted, and spacing around the card was adjusted as well. Text also doesn't get cut off anymore and instead scrolls indefinitely on one line. | |||||
2023-06-03 | android: Manual tweaks for dialog colors | Charles Lombardo | 6 | -2/+21 | |
Small fix for Flam | |||||
2023-06-03 | android: Fix black backgrounds bug | Charles Lombardo | 1 | -6/+18 | |
Start using a specific night mode check because black backgrounds could apply incorrectly when using the light app mode, dark system mode, and black backgrounds. Launching the settings activity will show light mode colors/navigation bars but with black backgrounds. | |||||
2023-06-03 | android: Use navigation bar shade view for settings activity | Charles Lombardo | 2 | -3/+20 | |
2023-06-03 | android: Disable editing themes during emulation | Charles Lombardo | 1 | -3/+3 | |
2023-06-03 | android: Prevent situation where binding is called on a null view | Charles Lombardo | 1 | -0/+3 | |
2023-06-03 | android: Add black backgrounds toggle | Charles Lombardo | 6 | -1/+42 | |
2023-06-03 | android: Add theme mode picker | Charles Lombardo | 5 | -11/+76 | |
2023-06-03 | android: Add theme picker | Charles Lombardo | 7 | -3/+127 | |
2023-06-03 | android: Prevent potential abstract settings crash | Charles Lombardo | 1 | -0/+4 | |
2023-06-03 | android: Fix cast for abstract settings | Charles Lombardo | 4 | -5/+5 | |
2023-06-03 | android: Create xml for Material You theme | Charles Lombardo | 2 | -0/+58 | |
2023-06-03 | android: Remove check for API 29 in themes | Charles Lombardo | 2 | -15/+4 | |
2023-06-03 | android: Adjustments to home option card | Charles Lombardo | 1 | -4/+10 | |
Several spacing/color adjustments provided by Flam | |||||
2023-06-03 | android: Use different colors for logo in options menu | Charles Lombardo | 2 | -3/+3 | |
Reverting to the official logo colors | |||||
2023-06-03 | android: New default theme colors | Charles Lombardo | 2 | -30/+34 | |
2023-06-03 | android: Use libnx default icon | Charles Lombardo | 4 | -1/+1 | |
Credit to jaames for the original icon | |||||
2023-06-03 | android: enable LTO | Liam | 1 | -1/+2 | |
2023-06-03 | android: Show error if invalid keys file is selected | Charles Lombardo | 2 | -0/+23 | |
There aren't MIME types specific enough for filtering out files that aren't amiibo or production keys. So here we just check for the extensions "bin" or "keys" where appropriate and stop the process if incorrect. Previously you could select any document and it could cause the app to hang. | |||||
2023-06-03 | android: Fix first time setup scrolling bug | Charles Lombardo | 2 | -18/+17 | |
If you quickly scrolled from the second page to the first and then back, the next/back buttons would disappear. | |||||
2023-06-03 | android: Fix A button preference key | Charles Lombardo | 1 | -1/+1 | |
2023-06-03 | android: First time setup screen | Charles Lombardo | 19 | -163/+769 | |
2023-06-03 | android: Prevent editing unsafe settings at runtime | Charles Lombardo | 5 | -14/+35 | |
There currently isn't a visual "disabled" cue for any of the view holders that aren't the switch setting. This will be improved in the future. | |||||
2023-06-03 | android: Abstract settings | Charles Lombardo | 24 | -363/+418 | |
Previously we could only add settings that would change our ini file. Now we can create abstract settings in our presenter to alter things like shared preferences for theme support! | |||||
2023-06-03 | android: Implement gamepad input | german77 | 6 | -11/+510 | |
2023-06-03 | android: Bump minimum version to Android 11 | Charles Lombardo | 1 | -1/+1 | |
2023-06-03 | android: Decouple status bar shade from navigation bar visibility | Charles Lombardo | 3 | -14/+34 | |
2023-06-03 | android: Enable code minification | Charles Lombardo | 5 | -22/+18 | |
2023-06-03 | android: Switch from a colored status bar to a custom view | Charles Lombardo | 4 | -23/+35 | |
Allows for smoother transitions with the search bar | |||||
2023-06-03 | android: Adjustments to card_game | Charles Lombardo | 1 | -20/+5 | |
Removed a currently unused text view and moved to material text views. | |||||
2023-06-03 | android: MainActivity overhaul | Charles Lombardo | 32 | -626/+1031 | |
This moves several parts of the main activity into fragments that manage themselves to react to changes. UI changes like the appearance of a new search view or when the games list changes now gets updated via multiple view models. This also starts a conversion to the androidx navigation component which furthers the goals mentioned previously with more fragment responsibility. This will eventually allow us to use one activity with interchanging fragments and multiple view models that are stored within that central activity. fdas | |||||
2023-06-03 | android: Enforce Vulkan 1.1 support as minimum | Charles Lombardo | 1 | -3/+4 | |
2023-06-03 | android: Update gradle version to 8.1 | Charles Lombardo | 1 | -1/+1 | |
2023-06-03 | android: Update app dependencies | Charles Lombardo | 1 | -5/+5 | |
2023-06-03 | android: Convert gradle scripts to Kotlin DSL | Charles Lombardo | 5 | -201/+241 | |
2023-06-03 | android: vulkan: Disable vertex_input_dynamic_state on Qualcomm. | bunnei | 1 | -1/+2 | |
2023-06-03 | android: settings: Add scaling filter & anti-aliasing options. (#66) | bunnei | 4 | -0/+75 | |
2023-06-03 | android: video_core: Add support for disk shader cache. (#64) | bunnei | 12 | -4/+258 | |
2023-06-03 | android: vulkan_debug_callback: Ignore many innocuous errors. | bunnei | 1 | -0/+28 | |
2023-06-03 | android: config: Change docked mode and GPU accuracy to favor performance on Android. | bunnei | 3 | -7/+11 | |
2023-06-03 | service: account: Save user profile folder on first user creation | german77 | 1 | -0/+1 | |
2023-06-03 | android: Initialize account manager | german77 | 1 | -0/+5 | |
2023-06-03 | android: Remove unsafe null check | german77 | 1 | -4/+2 | |
2023-06-03 | android: Scale input overlay independently of system display scale | Charles Lombardo | 2 | -30/+41 | |
2023-06-03 | android: Use apply instead of commit for shared preferences | Charles Lombardo | 3 | -4/+3 | |
Previously we were operating on the assumption that apply'd settings wouldn't be visible immediately. This isn't true and settings will be accessible via memory before being stored to disk. This reduces any potential stutters caused by saving to shared preferences. | |||||
2023-06-03 | android: Add DPad slide toggle | Charles Lombardo | 5 | -2/+14 | |
2023-06-03 | android: Add relative stick center toggle | Charles Lombardo | 3 | -0/+13 | |
2023-06-03 | android: Make hash and branch accessible from BuildConfig | Charles Lombardo | 1 | -0/+25 | |
2023-06-03 | android: Backup shared preferences where applicable | Charles Lombardo | 2 | -0/+12 | |
2023-06-03 | android: Enable retaining app data after uninstall | Charles Lombardo | 1 | -1/+2 | |
2023-06-03 | android: Remove unused doFrame function | Charles Lombardo | 1 | -2/+0 | |
2023-06-03 | android: Convert NativeLibrary to Kotlin | Charles Lombardo | 15 | -766/+523 | |
2023-06-03 | android: Remove LocalBroadcastManager | Charles Lombardo | 11 | -225/+17 | |
This causes a couple of minor changes to directory initialization. We don't have a lengthy initialization step so we could spend less time creating state receivers and just run initialization on the main thread. We also don't have a situation where external storage will be a concern so checks are removed in favor of a binary check to see if initialization is ready. This additionally removes the unused DoFrame callback. | |||||
2023-06-03 | android: Remove game database | Charles Lombardo | 18 | -773/+154 | |
The content provider + database solution was excessive and is now replaced with the simple file checks from before but turned into an array list held within a viewmodel. | |||||
2023-06-03 | android: Adjust game icon loading | Charles Lombardo | 1 | -15/+9 | |
2023-06-03 | android: Remove unused dimensions files | Charles Lombardo | 2 | -9/+0 | |
2023-06-03 | android: Slightly reduce game card size | Charles Lombardo | 2 | -3/+3 | |
2023-06-03 | android: Only show company text view if it has content | Charles Lombardo | 1 | -5/+8 | |
2023-06-03 | android: Fix check for ok text in software keyboard | Charles Lombardo | 1 | -1/+1 | |
2023-06-03 | android: Implement amiibo reading from nfc tag | Narr the Reg | 15 | -8/+327 | |
2023-06-03 | android: vulkan_device: Disable VK_EXT_custom_border_color on Adreno. | bunnei | 1 | -0/+7 | |
- Causes crashes on sampler creation with Super Mario Odyssey. | |||||
2023-06-03 | android: Add toggle controls option to input overlay | Charles Lombardo | 5 | -6/+62 | |
2023-06-03 | android: Do not update FPS text on null view | Charles Lombardo | 1 | -1/+1 | |
2023-06-03 | android: Convert keyboard applet to kotlin and refactor | Charles Lombardo | 6 | -279/+255 | |
2023-06-03 | android: Implement basic software keyboard applet. | bunnei | 12 | -152/+625 | |
2023-06-03 | android: config: Disable shader cache by default on Android. | bunnei | 1 | -0/+4 | |
2023-06-03 | android: Fix fps counter not showing up | german77 | 4 | -11/+13 | |
2023-06-03 | android: Prevent showing games on an invalid view | Charles Lombardo | 1 | -0/+3 | |
2023-06-03 | android: Re-implement overlay editing | Charles Lombardo | 5 | -25/+245 | |
2023-06-03 | android: Fix popup menu going out of bounds | Charles Lombardo | 2 | -20/+11 | |
2023-06-03 | android: Use autofit grid for games fragment | Charles Lombardo | 3 | -28/+72 | |
2023-06-03 | android: Prevent updating empty game list text on invalid view | Charles Lombardo | 1 | -0/+3 | |
2023-06-03 | android: Persist settings across configuration changes | Charles Lombardo | 9 | -93/+51 | |
Mostly things get refactored here to remove previous assumptions made about how the activity/fragment lifecycles would operate. The important change for persistence is removing the assumption that the user will be at the first settings fragment on recreation when deciding whether or not to reload settings. Now we check a flag in Settings to know if we loaded the settings within this lifecycle. | |||||
2023-06-03 | android: Store settings object in viewmodel | Charles Lombardo | 7 | -57/+45 | |
2023-06-03 | android: Remove configChanges exceptions | Charles Lombardo | 1 | -1/+0 | |
2023-06-03 | Android: Enable resizeable activities | Charles Lombardo | 1 | -6/+2 | |
2023-06-03 | android: Fix emulation fragment comments | Charles Lombardo | 1 | -2/+2 | |
2023-06-03 | android: Use modal navigation drawer as in game menu | Charles Lombardo | 17 | -373/+343 | |
2023-06-03 | android: Make Game class parcelable | Charles Lombardo | 1 | -1/+4 | |
2023-06-03 | android: Add kotlin parcelize plugin | Charles Lombardo | 1 | -0/+1 | |
2023-06-03 | android: Remove deprecated use of onActivityResult | Charles Lombardo | 2 | -139/+107 | |
2023-06-03 | android: Fix RTL layouts | Charles Lombardo | 3 | -1/+6 | |
2023-06-03 | android: Use ellipsis character | Charles Lombardo | 1 | -1/+1 | |
2023-06-03 | android: Move all array strings to main strings file | Charles Lombardo | 2 | -48/+109 | |
2023-06-03 | android: Remove unused strings | Charles Lombardo | 1 | -9/+0 | |
2023-06-03 | android: Remove unused colors | Charles Lombardo | 2 | -6/+0 | |
2023-06-03 | android: Remove citra date time picker | Charles Lombardo | 1 | -22/+0 | |
2023-06-03 | android: Remove unused premium header layout | Charles Lombardo | 1 | -42/+0 | |
2023-06-03 | android: Remove unused fragment animations | Charles Lombardo | 2 | -41/+0 | |
2023-06-03 | android: Remove unused string arrays | Charles Lombardo | 1 | -34/+0 | |
2023-06-03 | android: Remove unused integer xmls | Charles Lombardo | 4 | -13/+0 | |
2023-06-03 | android: Refactor ic_launcher.xml to drawables | Charles Lombardo | 3 | -3/+3 | |
2023-06-03 | android: Suppress lint in InsetsHelper | Charles Lombardo | 1 | -0/+2 | |
2023-06-03 | android: Add data extraction rules | Charles Lombardo | 3 | -2/+56 | |
2023-06-03 | android: Remove requestLegacyExternalStorage attribute | Charles Lombardo | 1 | -3/+1 | |
2023-06-03 | android: Remove unused permissions | Charles Lombardo | 1 | -3/+0 | |
2023-06-03 | android: Inset input overlay based on system cutouts | Charles Lombardo | 5 | -59/+94 | |
2023-06-03 | Use yuzu as category instead of citra | Narr the Reg | 1 | -1/+1 | |
2023-06-03 | android: Stop updating fps counter when emulation stops | Charles Lombardo | 1 | -1/+4 | |
2023-06-03 | android: Move driver installation off of main thread | Charles Lombardo | 4 | -21/+42 | |
Additionally creates an indeterminate loading dialog during installation | |||||
2023-06-03 | android: Fix crash when decodeGameIcon creates a null Bitmap | Charles Lombardo | 1 | -1/+1 | |
2023-06-03 | android: Use view binding | Charles Lombardo | 16 | -284/+189 | |
2023-06-03 | android: Enable view binding | Charles Lombardo | 1 | -0/+2 | |
2023-06-03 | android: Refactor CheckBoxSetting to SwitchSetting | Charles Lombardo | 5 | -14/+14 | |
2023-06-03 | android: EmulationActivity: Fix variable shadowing in fragment creation. | bunnei | 1 | -2/+2 | |
2023-06-03 | android: res: fragment_emulation: Ensure FPS counter is shown. | bunnei | 1 | -7/+7 | |
2023-06-03 | common: link libandroid on android | Liam | 1 | -0/+5 | |
2023-06-03 | build: only enable adrenotools on arm64 | Liam | 7 | -10/+18 | |
2023-06-03 | android: Use Skyline's document provider | Charles Lombardo | 3 | -4/+319 | |
2023-06-03 | android: Use androidx splash screen | Charles Lombardo | 4 | -2/+12 | |
2023-06-03 | android: Replace Picasso with Coil | Charles Lombardo | 7 | -138/+41 | |
2023-06-03 | android: New swipe to refresh color scheme | Charles Lombardo | 1 | -1/+9 | |
2023-06-03 | android: New settings fragment animations | Charles Lombardo | 12 | -163/+80 | |
2023-06-03 | android: Use edge to edge | Charles Lombardo | 9 | -21/+110 | |
2023-06-03 | android: Use Material 3 components | Charles Lombardo | 23 | -174/+268 | |
2023-06-03 | android: Modernize theme system | Charles Lombardo | 8 | -94/+130 | |
2023-06-03 | android: Use vector icons | Charles Lombardo | 42 | -9/+27 | |
2023-06-03 | android: Use adaptive icon | Charles Lombardo | 13 | -3/+24 | |
2023-06-03 | android: settings: Dynamically evaluate valueAsString | bunnei | 4 | -4/+4 | |
Co-Authored-By: bunnei <bunneidev@gmail.com> | |||||
2023-06-03 | android: Add license identifier | Charles Lombardo | 66 | -5/+199 | |
2023-06-03 | android: Convert YuzuApplication to Kotlin | Charles Lombardo | 2 | -59/+56 | |
2023-06-03 | android: Convert Action1 to Kotlin | Charles Lombardo | 2 | -5/+5 | |
2023-06-03 | android: Convert GameViewHolder to Kotlin | Charles Lombardo | 2 | -44/+32 | |
2023-06-03 | android: Remove ThemeUtil | Charles Lombardo | 1 | -34/+0 | |
2023-06-03 | android: Convert StartupHandler to Kotlin | Charles Lombardo | 2 | -45/+45 | |
2023-06-03 | android: Convert Log to Kotlin | Charles Lombardo | 2 | -39/+42 | |
2023-06-03 | android: Convert GpuDriverMetadata to Kotlin | Charles Lombardo | 2 | -45/+44 | |
2023-06-03 | android: Convert GpuDriverHelper to Kotlin | Charles Lombardo | 2 | -130/+145 | |
2023-06-03 | android: Convert GameIconRequestHandler to Kotlin | Charles Lombardo | 2 | -29/+22 | |
2023-06-03 | android: Convert ForegroundService to Kotlin | Charles Lombardo | 2 | -63/+56 | |
2023-06-03 | android: Convert FileUtil to Kotlin | Charles Lombardo | 2 | -296/+292 | |
2023-06-03 | android: Convert FileBrowserHelper to Kotlin | Charles Lombardo | 2 | -25/+26 | |
2023-06-03 | android: Convert EmulationMenuSettings to Kotlin | Charles Lombardo | 2 | -78/+59 | |
2023-06-03 | android: Convert DocumentsTree to Kotlin | Charles Lombardo | 2 | -125/+110 | |
2023-06-03 | android: Convert DirectoryStateReceiver to Kotlin | Charles Lombardo | 2 | -22/+15 | |
2023-06-03 | android: Convert DirectoryInitialization to Kotlin | Charles Lombardo | 2 | -72/+66 | |
2023-06-03 | android: Convert ControllerMappingHelper to Kotlin | Charles Lombardo | 1 | -25/+24 | |
2023-06-03 | android: Convert BiMap to Kotlin | Charles Lombardo | 2 | -22/+22 | |
2023-06-03 | android: Convert AddDirectoryHelper to Kotlin | Charles Lombardo | 2 | -38/+27 | |
2023-06-03 | android: Convert PlatformGamesView to Kotlin | Charles Lombardo | 1 | -6/+6 | |
2023-06-03 | android: Convert PlatformGamesPresenter to Kotlin | Charles Lombardo | 2 | -42/+30 | |
2023-06-03 | android: Convert PlatformGamesFragment to Kotlin | Charles Lombardo | 2 | -105/+94 | |
2023-06-03 | android: Convert MainView to Kotlin | Charles Lombardo | 1 | -8/+6 | |
2023-06-03 | android: Convert MainPresenter to Kotlin | Charles Lombardo | 2 | -81/+66 | |
2023-06-03 | android: Convert InputOverlayDrawableJoystick to Kotlin | Charles Lombardo | 2 | -243/+205 | |
2023-06-03 | android: Convert MainActivity to Kotlin | Charles Lombardo | 3 | -250/+229 | |
2023-06-03 | android: Remove ExampleInstrumentedTest | Charles Lombardo | 1 | -3/+0 | |
2023-06-03 | android: Remove TwoPaneOnBackPressedCallback | Charles Lombardo | 1 | -37/+0 | |
Leftover UI code for dolphin's cheat system. Removing for now. | |||||
2023-06-03 | android: Convert InputOverlayDrawableDpad to Kotlin | Charles Lombardo | 2 | -276/+232 | |
2023-06-03 | android: Convert InputOverlayDrawableButton to Kotlin | Charles Lombardo | 2 | -139/+118 | |
2023-06-03 | android: Convert InputOverlay to Kotlin | Charles Lombardo | 2 | -656/+886 | |
2023-06-03 | android: Remove DividerItemDecoration | Charles Lombardo | 1 | -130/+0 | |
Removed in favor of material components version | |||||
2023-06-03 | android: Inherit from Material 3 themes | Charles Lombardo | 1 | -8/+4 | |
Partially breaks the UI for now but is necessary to use new material components. | |||||
2023-06-03 | android: Convert MinimalDocumentFile to Kotlin | Charles Lombardo | 2 | -28/+8 | |
2023-06-03 | android: Convert GameProvider to Kotlin | Charles Lombardo | 2 | -138/+127 | |
2023-06-03 | android: Convert GameDatabase to Kotlin | Charles Lombardo | 2 | -275/+260 | |
2023-06-03 | android: Convert Game to Kotlin | Charles Lombardo | 2 | -76/+56 | |
2023-06-03 | android: Convert EmulationFragment to Kotlin | Charles Lombardo | 2 | -375/+348 | |
2023-06-03 | android: Convert SettingsFile to Kotlin | Charles Lombardo | 2 | -272/+245 | |
2023-06-03 | android: Convert SettingsFrameLayout to Kotlin | Charles Lombardo | 2 | -48/+43 | |
2023-06-03 | android: Convert SettingsFragmentView to Kotlin | Charles Lombardo | 1 | -18/+15 | |
2023-06-03 | android: Convert SettingsFragmentPresenter to Kotlin | Charles Lombardo | 2 | -184/+333 | |
2023-06-03 | android: Convert SettingsFragment to Kotlin | Charles Lombardo | 2 | -136/+120 | |
2023-06-03 | android: Convert SettingsActivityView to Kotlin | Charles Lombardo | 1 | -27/+20 | |
2023-06-03 | android: Convert SettingsActivityPresenter to Kotlin | Charles Lombardo | 2 | -122/+99 | |
2023-06-03 | android: Convert SettingsActivity to Kotlin | Charles Lombardo | 2 | -209/+186 | |
2023-06-03 | android: Convert SubmenuViewHolder to Kotlin | Charles Lombardo | 2 | -45/+35 | |
2023-06-03 | android: Convert SliderViewHolder to Kotlin | Charles Lombardo | 2 | -45/+34 | |
2023-06-03 | android: Convert SingleChoiceViewHolder to Kotlin | Charles Lombardo | 2 | -62/+54 | |
2023-06-03 | android: Convert SettingViewHolder to Kotlin | Charles Lombardo | 2 | -49/+38 | |
2023-06-03 | android: Convert HeaderViewHolder to Kotlin | Charles Lombardo | 2 | -32/+28 | |
2023-06-03 | android: Convert DateTimeViewHolder to Kotlin | Charles Lombardo | 2 | -47/+35 | |
2023-06-03 | android: Convert CheckBoxSettingViewHolder to Kotlin | Charles Lombardo | 2 | -54/+41 | |
2023-06-03 | android: Convert StringSetting to Kotlin | Charles Lombardo | 2 | -23/+9 | |
2023-06-03 | android: Convert SettingSection to Kotlin | Charles Lombardo | 2 | -55/+34 | |
2023-06-03 | android: Convert Setting to Kotlin | Charles Lombardo | 1 | -24/+6 | |
2023-06-03 | android: Convert IntSetting to Kotlin | Charles Lombardo | 2 | -23/+9 | |
2023-06-03 | android: Convert FloatSetting to Kotlin | Charles Lombardo | 2 | -23/+9 | |
2023-06-03 | android: Convert BooleanSetting to Kotlin | Charles Lombardo | 2 | -23/+9 | |
2023-06-03 | android: Convert SubmenuSetting to Kotlin | Charles Lombardo | 2 | -21/+15 | |
2023-06-03 | android: Convert StringSingleChoiceSetting to Kotlin | Charles Lombardo | 2 | -82/+61 | |
2023-06-03 | android: Convert SliderSetting to Kotlin | Charles Lombardo | 2 | -101/+72 | |
2023-06-03 | android: Convert SingleChoiceSetting to Kotlin | Charles Lombardo | 2 | -60/+44 | |
2023-06-03 | android: Convert SettingsItem to Kotlin | Charles Lombardo | 2 | -100/+30 | |
2023-06-03 | android: Convert HeaderSetting to Kotlin | Charles Lombardo | 2 | -14/+12 | |
2023-06-03 | android: Convert DateTimeSetting to Kotlin | Charles Lombardo | 2 | -40/+35 | |
2023-06-03 | android: Convert CheckBoxSetting to Kotlin | Charles Lombardo | 2 | -80/+91 | |
2023-06-03 | android: Convert GameAdapter to Kotlin | Charles Lombardo | 2 | -244/+178 | |
2023-06-03 | android: Convert SettingsAdapter to Kotlin | Charles Lombardo | 3 | -366/+315 | |
Update SettingsAdapter.kt | |||||
2023-06-03 | android: Convert EmulationActivity to Kotlin | Charles Lombardo | 2 | -347/+286 | |
2023-06-03 | android: Use material slider in settings dialog | Charles Lombardo | 1 | -20/+20 | |
2023-06-03 | android: Convert Settings to Kotlin | Charles Lombardo | 2 | -127/+145 | |
2023-06-03 | android: Use androidx preferences | Charles Lombardo | 1 | -0/+2 | |
2023-06-03 | android: frontend: Add unique error strings for Vulkan initialization errors. | bunnei | 2 | -19/+25 | |
2023-06-03 | android: Use the center of the object and reduce draw calls | german77 | 8 | -59/+76 | |
2023-06-03 | android: Replace old buttons with vectors | german77 | 149 | -71/+613 | |
2023-06-03 | android: Enable Kotlin support | Charles Lombardo | 4 | -26/+30 | |
2023-06-03 | android: Upgrade java version to 11 | Charles Lombardo | 1 | -2/+2 | |
2023-06-03 | android: Upgrade dependencies | Charles Lombardo | 1 | -4/+4 | |
2023-06-03 | android: Upgrade to AGP 7.4.2 | Charles Lombardo | 1 | -1/+1 | |
2023-06-03 | android: Replace lintOptions with lint | Charles Lombardo | 1 | -1/+1 | |
2023-06-03 | android: Move namespace to app module build.gradle | Charles Lombardo | 2 | -2/+3 | |
2023-06-03 | android: bump compile/target sdk to 33 | Charles Lombardo | 1 | -2/+2 | |
2023-06-03 | android: Upgrade gradle to 8.0.1 | Charles Lombardo | 1 | -1/+1 | |
2023-06-03 | video_core: fix clang-format errors | liushuyu | 2 | -4/+3 | |
2023-06-03 | CMake: fix pkg-config behavior when building for Android | liushuyu | 1 | -0/+1 | |
2023-06-03 | CI: add Android build systems | liushuyu | 1 | -0/+0 | |
2023-06-03 | android: build.gradle: Cleanup build types. | bunnei | 1 | -7/+1 | |
2023-06-03 | android: frontend: settings: Add graphics debugging. | bunnei | 4 | -6/+18 | |
2023-06-03 | android: jni: Ensure system is only initialized once. | bunnei | 4 | -8/+8 | |
- Fixes likelihood that fastmem allocation succeeds. | |||||
2023-06-03 | video_core: vulkan_device: Correct error message for unsuitable driver. | bunnei | 1 | -1/+1 | |
2023-06-03 | android: frontend: Cleanup framerate counter. | bunnei | 2 | -4/+3 | |
2023-06-03 | android: vulkan: Implement adrenotools turbo mode. | bunnei | 7 | -3/+27 | |
2023-06-03 | android: vulkan_device: Disable VK_EXT_extended_dynamic_state2 on Qualcomm. | bunnei | 1 | -3/+3 | |
- Newer drivers report this as supported, but it is broken. | |||||
2023-06-03 | android: frontend: Add support for GPU driver selection. | bunnei | 9 | -3/+251 | |
2023-06-03 | android: native: Add support for custom Vulkan driver loading. | bunnei | 14 | -76/+146 | |
2023-06-03 | core: frontend: Refactor GraphicsContext to its own module. | bunnei | 13 | -50/+84 | |
2023-06-03 | common: dynamic_library: Add ctor for existing handle. | bunnei | 2 | -0/+5 | |
2023-06-03 | android: EmulationFragment: Always reset overlay. | bunnei | 1 | -1/+2 | |
- Ensures correct placement until we have better overlay configuration. | |||||
2023-06-03 | Avoid using VectorExtractDynamic for subgroup mask on Adreno GPUs | Billy Laws | 3 | -1/+19 | |
This crashes their shader compiler for some reason. | |||||
2023-06-03 | Implement scaled vertex buffer format emulation | Billy Laws | 9 | -51/+97 | |
These formats are unsupported by mobile GPUs so they need to be emulated in shaders instead. | |||||
2023-06-03 | Disable push descriptors on adreno drivers | Billy Laws | 1 | -0/+4 | |
Regular descriptors are around 1.5x faster to update. | |||||
2023-06-03 | Disable VK_EXT_extended_dynamic_state on mali | Billy Laws | 1 | -0/+7 | |
2023-06-03 | Disable multithreaded pipeline compilation on Qualcomm drivers | Billy Laws | 1 | -1/+4 | |
This causes crashes during compilation on several 6xx and 5xx driver versions. | |||||
2023-06-03 | android: Add motion sensor | Narr the Reg | 4 | -21/+92 | |
2023-06-03 | android: Hook jni input properly | Narr the Reg | 5 | -90/+104 | |
2023-06-03 | android: cleanup touch update loop | Narr the Reg | 1 | -28/+50 | |
2023-06-03 | android: Clean joystick overlay | Narr the Reg | 3 | -135/+131 | |
2023-06-03 | android: Clean dpad overlay | Narr the Reg | 2 | -192/+174 | |
2023-06-03 | android: Clean button overlay | Narr the Reg | 2 | -195/+65 | |
2023-06-03 | android: Add all buttons to screen controller | Narr the Reg | 4 | -209/+104 | |
2023-06-03 | android: Apply clang format | Narr the Reg | 2 | -9/+9 | |
2023-06-03 | android: frontend: Implement game grid view. (#9) | bunnei | 15 | -174/+272 | |
2023-06-03 | android: Replace notification icon with yuzu | german77 | 3 | -0/+0 | |
2023-06-03 | android: strings: Refresh key dumping URL. | bunnei | 1 | -1/+1 | |
2023-06-03 | android: frontend: Modify ROM load messaging for invalid keys. | bunnei | 2 | -7/+11 | |
2023-06-03 | android: frontend: Integrate key installation for SAF. | bunnei | 20 | -21/+102 | |
2023-06-03 | android: jni: Add function to reload keys. | bunnei | 3 | -2/+14 | |
2023-06-03 | core: crypto: key_manager: Add methods to reload & validate keys. | bunnei | 2 | -0/+11 | |
2023-06-03 | android: EmulationActivity: Temporarily disable running notification. | bunnei | 2 | -7/+12 | |
2023-06-03 | android: Implement SAF support & migrate to SDK 31. (#4) | bunnei | 38 | -697/+851 | |
2023-06-03 | android: Harden emulation shutdown when loader fails. | bunnei | 1 | -6/+12 | |
2023-06-03 | android: SettingsFragmentPresenter: Fix default renderer backend. | bunnei | 1 | -1/+1 | |
2023-06-03 | android: jni: native: Add lock around HaltEmulation, tighten run loop. | bunnei | 1 | -1/+3 | |
2023-06-03 | android: jni: native: Refactor locking for is_running. | bunnei | 1 | -8/+21 | |
2023-06-03 | android: jni: native: Remove unnecessary atomic for is_running. | bunnei | 1 | -6/+5 | |
2023-06-03 | android: jni: native: Tighten up emulation start/stop signaling. | bunnei | 1 | -58/+64 | |
2023-06-03 | android: jni: native: Consolidate emulation state into EmulationSession singleton. | bunnei | 1 | -67/+164 | |
- Fixes state management issues across multiple boots. - Fixes crashes related to unsafe access of perf stats. | |||||
2023-06-03 | android: Frontend: Fix rendering aspect ratio & add a setting for it. | bunnei | 7 | -2/+25 | |
2023-06-03 | android: Integrate settings frontend with yuzu & remove unused code. | bunnei | 25 | -1759/+949 | |
2023-06-03 | externals: add adrenotools for bcenabler | Liam | 2 | -0/+34 | |
2023-06-03 | device_memory: Use smaller virtual reservation size for compatibility with 39-bit paging | Liam | 2 | -1/+12 | |
2023-06-03 | video_core: vulkan_device: Device initialization for Adreno. | bunnei | 1 | -3/+4 | |
2023-06-03 | video_core: vk_pipeline_cache: Disable support_descriptor_aliasing on Android. | bunnei | 1 | -0/+4 | |
2023-06-03 | video_core: vk_swapchain: Fix image format for Android. | bunnei | 2 | -0/+10 | |
2023-06-03 | android: Minimize frontend & convert to yuzu. | bunnei | 128 | -2509/+934 | |
2023-06-03 | video_core: vk_blit_screen: Rotate viewport for Android landscape. | bunnei | 1 | -0/+8 | |
2023-06-03 | common: error: Fix for Android. | bunnei | 1 | -1/+2 | |
2023-06-03 | common: fs: Implement for Android. | bunnei | 1 | -0/+7 | |
2023-06-03 | common: logging: Implement Android logcat backend. | bunnei | 3 | -0/+63 | |
2023-06-03 | common: host_memory: Implement for Android. | bunnei | 1 | -2/+10 | |
2023-06-03 | android: Minimal JNI for yuzu. | bunnei | 8 | -0/+645 | |
2023-06-03 | android: Add Citra frontend. | bunnei | 319 | -0/+13799 | |
2023-06-03 | cmake: Integrate bundled FFmpeg for Android. | bunnei | 1 | -1/+1 | |
2023-06-03 | texture_cache: Fix incorrect logic for AccelerateDMA | ameerj | 1 | -8/+4 | |
2023-06-01 | host_memory: merge adjacent placeholder mappings on Linux | kkoniuszy | 1 | -0/+22 | |
Track the private anonymous placeholder mappings created by Unmap() and wherever possible, replace existing placeholders with larger ones instead of creating many small ones. This helps with the buildup of mappings in /proc/YUZU_PID/maps after a longer gaming session, improving stability without having to increase vm.max_map_count to a ridiculous value. The amount of placeholder mappings will no longer outgrow the amount of actual memfd mappings in cases of high memory fragmentation. | |||||
2023-05-31 | Fix incorrect id check and potential out of bounds lookup | Kelebek1 | 1 | -1/+1 | |
2023-05-30 | Skip BufferCache tickframe with no channel state set | Kelebek1 | 1 | -1/+5 | |
2023-05-30 | input_common: rename PAGE_SIZE to avoid conflict | 12101111 | 1 | -3/+3 | |
See also: https://github.com/yuzu-emu/yuzu/issues/8779 | |||||
2023-05-29 | yuzu: Disable game list while game is running | german77 | 1 | -0/+4 | |
2023-05-28 | externals: Update to fmt 10 and add format_as formatter for BitField | Morph | 1 | -0/+5 | |
Implicit conversions are now disallowed in fmt 10. Use format_as to convert to the underlying type. | |||||
2023-05-28 | gl_texture_cache: Fix ASTC CPU decoding with compression disabled | ameerj | 1 | -2/+7 | |
gl_format was incorrectly being overwritten when compression was disabled | |||||
2023-05-28 | gl_staging_buffers: Optimization to reduce fence waiting | ameerj | 2 | -4/+22 | |
2023-05-28 | OpenGL: Make use of persistent buffer maps in buffer cache downloads | ameerj | 15 | -204/+298 | |
Persistent buffer maps were already used by the texture cache, this extends their usage for the buffer cache. In my testing, using the memory maps for uploads was slower than the existing "ImmediateUpload" path, so the memory map usage is limited to downloads for the time being. | |||||
2023-05-28 | renderer_vulkan: Remove timeline semaphore wait | GPUCode | 1 | -7/+4 | |
2023-05-27 | Audren wait as suggested by ByLaws | Kelebek1 | 1 | -0/+3 | |
2023-05-27 | Move buffer bindings to per-channel state | Kelebek1 | 4 | -210/+228 | |
2023-05-27 | qt: add menu item to remove cache storage | Liam | 4 | -0/+26 | |
2023-05-26 | vfs_concat: fix time complexity of read | Liam | 4 | -70/+125 | |
2023-05-26 | Fix buffer overlap checking skipping a page for stream score right expand | Kelebek1 | 1 | -3/+3 | |
2023-05-26 | shader_recompiler: fix copy-paste error | Liam | 1 | -1/+1 | |
2023-05-25 | Don't exit when using "-u" option in yuzu-cmd | Ariel Cabello | 1 | -1/+1 | |
2023-05-25 | video_core: don't garbage collect during configuration | Liam | 2 | -6/+0 | |
2023-05-25 | Add short "-u" option for yuzu_cmd. | Ariel Cabello | 1 | -1/+1 | |
The -u short option was documented but not implemented in yuzu_cmd. The same long option --user worked before. | |||||
2023-05-24 | Texture cache: revert wrong acceleration assumption | Fernando Sahmkow | 1 | -1/+1 | |
2023-05-24 | Texture Cache Util: Fix block depth adjustment on slices. | Fernando Sahmkow | 1 | -2/+13 | |
2023-05-24 | texture_cache: process aliases and overlaps in the correct order | Fernando Sahmkow | 4 | -61/+105 | |
2023-05-24 | add context menu for filter and anti-aliasing status buttons | grimkor | 3 | -71/+152 | |
2023-05-23 | video_core: tune garbage collection aggressiveness | Liam | 2 | -6/+8 | |
2023-05-23 | textures: add BC1 and BC3 compressors and recompression setting | Liam | 20 | -26/+344 | |
2023-05-23 | k_memory_block_manager: remove auditing calls | Liam | 1 | -6/+2 | |
2023-05-23 | service: nfc: Remove encryption key requirement | Narr the Reg | 3 | -21/+52 | |
2023-05-23 | vulkan_device: Enable VK_KHR_push_descriptor on newer ANV | Liam | 1 | -2/+3 | |
2023-05-23 | renderer_vulkan: barrier attachment feedback loops | Liam | 6 | -1/+51 | |
2023-05-22 | Limit the device access memory to 4 GB | scorpion81 | 1 | -1/+1 | |
Hardly limiting the device access memory to 4 GB for integrated vulkan devices here. This works for the Steam Deck in order not to go above 4 GB VRAM usage any more (above this value the likelihood to crash when the RAM exceeds 12 GB as well raises). But there will be perhaps a detection mechanism necessary for detecting the real memory limit for integrated vulkan devices. Those likely might have small limits anyway, but what about integrated GPUs on machines with > 16 GB RAM, aka larger amounts ? | |||||
2023-05-22 | input_common: Implement amiibo writting | Narr the Reg | 8 | -68/+387 | |
2023-05-21 | Add support for deinterlaced videos playback | Danila Malyutin | 2 | -2/+99 | |
This is a follow up to #10254 to improve the playback of cut scenes in Layton's Mystery Journey. It uses ffmpeg's yadif filter for deinterlacing. | |||||
2023-05-20 | vk_master_semaphore: Move fence wait on separate thread | GPUCode | 2 | -3/+58 | |
2023-05-20 | input_common: Map motion with relative values not absolute ones | german77 | 1 | -4/+7 | |
2023-05-19 | renderer_vulkan: remove wrong constexpr | Liam | 1 | -2/+2 | |
2023-05-18 | Smooth out the DSP callback by adding a 5ms wait time limit | Kelebek1 | 4 | -16/+12 | |
2023-05-18 | vulkan_device: Disable VK_KHR_push_descriptor on ANV | lat9nq | 1 | -0/+11 | |
Mesa commit ff91c5ca42bc80aa411cb3fd8f550aa6fdd16bdc breaks VK_KHR_push_descriptor usage on ANV drivers 22.3.0, so disable it and allow games to boot. | |||||
2023-05-17 | input_common: Fix pro controller amiibo support | Narr the Reg | 6 | -103/+70 | |
2023-05-15 | service: hid: Use span instead of vector reference | german77 | 3 | -14/+14 | |
2023-05-15 | Buffer Cache: Clear sync code. | Fernando Sahmkow | 2 | -28/+4 | |
2023-05-14 | vulkan_device: reserve extra memory to prevent swaps | Liam | 1 | -0/+2 | |
2023-05-14 | input_common: Make amiibo scanning less demanding | german77 | 3 | -4/+13 | |
2023-05-14 | vulkan_common: fix incompatible property flags | Liam | 1 | -1/+1 | |
2023-05-13 | Use TARGET_FILE_DIR generator expression | Danila Malyutin | 1 | -5/+1 | |
Use $<TARGET_FILE_DIR:...> where appropriate instead of trying to guess where the binary will end up. | |||||
2023-05-13 | vulkan_common: disable depth clamp dynamic state for older radv | Liam | 1 | -0/+8 | |
2023-05-12 | Fix missing pic_order_present_flag in h264 header | Danila Malyutin | 1 | -2/+2 | |
Fixes #9635 | |||||
2023-05-12 | time: implement ContinuousAdjustmentTimePoint | Liam | 3 | -2/+34 | |
2023-05-12 | Correctly track RT indexes for image aspect lookup during clears | Kelebek1 | 2 | -1/+3 | |
2023-05-11 | fs: adjust future save path | Liam | 2 | -4/+4 | |
2023-05-11 | am: stub CreateCacheStorage | Liam | 2 | -1/+33 | |
2023-05-11 | fs: stub cache storage and fix params alignment | Liam | 2 | -5/+17 | |
2023-05-11 | nvnflinger: fix Parcel serialization | Liam | 3 | -39/+49 | |
2023-05-11 | nvnflinger: fix producer slot fence init | Liam | 1 | -0/+1 | |
2023-05-11 | Fix Tears of the Kingdom flickering clouds and depths. | Kelebek1 | 2 | -12/+3 | |
2023-05-11 | Allow Fermi blit accelerate to add src/dst to the cache if they don't exist already. Use ScratchBuffers in the software blit path. | Kelebek1 | 3 | -12/+24 | |
2023-05-10 | Allow fully customisable controller hotkeys | grimkor | 4 | -32/+56 | |
2023-05-10 | renderer_vulkan: separate guest and host compute descriptor queues | Liam | 16 | -75/+81 | |
2023-05-10 | service: nfc: Seed all random values | Narr the Reg | 2 | -6/+14 | |
2023-05-10 | service: nfp: Allow to load with a different amiibo id | german77 | 6 | -7/+39 | |
2023-05-09 | Use the rendertarget format of the correct RT rather than the first valid | Kelebek1 | 1 | -19/+6 | |
2023-05-09 | Swap order of checking/setting region modifications in the buffer_cache | Kelebek1 | 1 | -4/+4 | |
2023-05-09 | input_common: Fix nfc detection for joycons | german77 | 4 | -19/+21 | |
2023-05-09 | Texture Cache: Fix ASTC textures | Fernando Sahmkow | 3 | -7/+7 | |
2023-05-08 | qt_common: consistently ifdef QPlatform after cbd79df23375 | Jan Beich | 1 | -1/+1 | |
src/yuzu/qt_common.cpp:45:33: error: member access into incomplete type 'QPlatformNativeInterface' wsi.display_connection = pni->nativeResourceForWindow("display", window); ^ /usr/include/qt6/QtGui/qguiapplication.h:20:7: note: forward declaration of 'QPlatformNativeInterface' class QPlatformNativeInterface; ^ src/yuzu/qt_common.cpp:47:42: error: member access into incomplete type 'QPlatformNativeInterface' wsi.render_surface = window ? pni->nativeResourceForWindow("surface", window) : nullptr; ^ /usr/include/qt6/QtGui/qguiapplication.h:20:7: note: forward declaration of 'QPlatformNativeInterface' class QPlatformNativeInterface; ^ | |||||
2023-05-08 | yuzu: Make 3d cube with joycon shape | Narr the Reg | 1 | -10/+10 | |
2023-05-08 | core: hid: Allow to calibrate gyro sensor | Narr the Reg | 5 | -1/+43 | |
2023-05-08 | configure_graphics_advanced: Hide input compute toggle a little later | lat9nq | 1 | -2/+2 | |
SetColoredTristate causes the setting to become visible as it calls `show()` on it. | |||||
2023-05-08 | bootmanager: remove stop_token header | Liam | 1 | -1/+0 | |
2023-05-08 | vfs_layered: avoid n^2 lookup in layeredfs building | Liam | 1 | -3/+6 | |
2023-05-08 | core: hid: Update motion on a better place | german77 | 5 | -22/+20 | |
2023-05-07 | Texture cache: Only force flush the dma downloads | Fernando Sahmkow | 5 | -6/+6 | |
2023-05-07 | Buffer Cache: disable reactive flushing in it. | Fernando Sahmkow | 3 | -18/+8 | |
2023-05-07 | Texture cache: reverse inmediate flush changes | Fernando Sahmkow | 3 | -28/+14 | |
2023-05-07 | Buffer cache: always use async buffer downloads and fix regression. | Fernando Sahmkow | 4 | -63/+70 | |
2023-05-07 | Address feedback, add CR notice, etc | Fernando Sahmkow | 5 | -10/+18 | |
2023-05-07 | Query cache: stop updating pages as it's not affected by cpu writes | Fernando Sahmkow | 1 | -2/+0 | |
2023-05-07 | Settings: add option to enable / disable reactive flushing | Fernando Sahmkow | 11 | -5/+38 | |
2023-05-07 | Texture cache: sync the first flush. | Fernando Sahmkow | 2 | -3/+30 | |
2023-05-07 | GPU: Add Reactive flushing | Fernando Sahmkow | 24 | -30/+240 | |
2023-05-07 | vfs_vector: avoid n^2 lookup in layeredfs building | Liam | 2 | -0/+23 | |
2023-05-07 | yuzu/applets/qt_profile_select: connect double-click to accept() | QGJ | 1 | -0/+1 | |
In the profile selection window: Allow the user to start the game by double-clicking a profile to avoid having to additionally click the OK button. This avoids an unnecessary "step" to the start of the game... | |||||
2023-05-07 | Fix address space allocator slow path to avoid OOB | Kelebek1 | 1 | -1/+1 | |
2023-05-07 | input_common: Revert debugging changes | german77 | 1 | -2/+0 | |
2023-05-07 | yuzu-qt/config: Add option to disable compute on Intel | lat9nq | 10 | -9/+63 | |
This option is only visible if an Intel GPU using the proprietary driver is found during Vulkan device enumeration. configure_graphics: More directly get driver id Vulkan::Device does quite a bit more than we need just to see the driver ID here. | |||||
2023-05-07 | vk_pipeline_cache: Use setting to disable intel compute | lat9nq | 1 | -1/+2 | |
2023-05-07 | settings: Add enable compute pipelines | lat9nq | 2 | -0/+2 | |
For the Intel proprietary driver's deficiencies. settings: Restore compute option global state | |||||
2023-05-06 | Fix read access violation | Roni Kirla | 1 | -1/+1 | |
2023-05-06 | input_common: Add experimental motion to button | german77 | 2 | -0/+10 | |
2023-05-06 | service: nfc: Merge device interfaces and create the device manager | Narr the Reg | 32 | -2410/+2031 | |
2023-05-06 | Log object names with debug renderer, add a GPU address to ImageViews | Kelebek1 | 10 | -30/+35 | |
2023-05-06 | input_common: Add property to invert an axis button | Narr the Reg | 6 | -3/+15 | |
2023-05-06 | input_common: Add property to invert an axis button | Narr the Reg | 4 | -2/+12 | |
2023-05-05 | yuzu: Add motion preview to controller input | Narr the Reg | 7 | -4/+151 | |
2023-05-05 | Improve emulation of HD Rumble | marius david | 1 | -6/+29 | |
2023-05-05 | yuzu-sdl,audio_core: Remove antiquated warning ignore | lat9nq | 2 | -21/+2 | |
Issue was fixed a long time ago, both by SDL2 and in yuzu by including SDL2 as a system library. | |||||
2023-05-05 | core: hid: Fix state of capture and home buttons | german77 | 1 | -0/+4 | |
2023-05-04 | settings: remove pessimistic flushing | Liam | 8 | -28/+0 | |
2023-05-04 | Memory manager: Fix possible softlock | Fernando Sahmkow | 1 | -4/+5 | |
2023-05-04 | qt_common: Remove yuzu prefix | lat9nq | 4 | -7/+7 | |
2023-05-03 | GPU: implement missing ASTC | Fernando Sahmkow | 8 | -9/+49 | |
2023-05-03 | vk_present_manager: Fix softlocks when disabling async present | GPUCode | 3 | -6/+9 | |
2023-05-03 | configure_graphics: No there isn't a hyphen in VSync | lat9nq | 2 | -5/+5 | |
Most sources seem to suggest VSync and not V-Sync | |||||
2023-05-03 | configure_input_player: Add missing include | lat9nq | 1 | -0/+1 | |
Cleaning up includes in bootmanager and configure_graphics has exposed a missing include here. | |||||
2023-05-03 | configure_graphics: Clean up includes [IWYU] | lat9nq | 2 | -6/+31 | |
2023-05-03 | bootmanager: Clean up includes [IWYU] | lat9nq | 2 | -15/+50 | |
bootmanager: Remove system-specific headers IWYU can be too complete I suppose. | |||||
2023-05-03 | configure_graphics: Actively find present modes | lat9nq | 3 | -27/+161 | |
When Vulkan devices are enumerated, this also determines the available present modes for each device, maps them to a vector, and gives those options to the user. OpenGL options are limited to On/Off. Required creating a VkSurfaceKHR during device enumeration, which may or may not be desireable. For the sake of a less confusing UI. Also fixes a bug where if a graphics device disappears on the host, we don't try and select the non-existant devices. configure_graphics: Remove vsync runtime lock for Vulkan configure_graphics: Recommend Mailbox present mode configure_graphics: Fix type-limits warning configure_graphics: Clean up includes configure_graphics: Add tooltip | |||||
2023-05-03 | vk_swapchain: Use certain modes for unlocked | lat9nq | 2 | -26/+50 | |
Uses mailbox, then immediate for unlocked framerate depending on support for either. Also adds support for FIFO_RELAXED. This function now assumes vsync_mode was originially configured to a value that the driver supports. vk_swapchain: ChooseSwapPresentMode determines updates Simplifies swapchain a bit and allows us to change the present mode during guest runtime. vk_swapchain: Fix MSVC error vk_swapchain: Enforce available present modes Some frontends don't check the value of vsync_mode before comitting it. Just as well, since a driver update or misconfiguration could problems in the swap chain. vk_swapchain: Silence warnings Silences GCC warnings implicit-fallthrough and shadow, which apparently are not enabled on clang. | |||||
2023-05-03 | bootmanager: Remove inaccurate switch | lat9nq | 2 | -11/+3 | |
Those vulkan settings do not correspond 1:1 to the swap intervals that they set for OpenGL, so remove it. bootmanager: Add missing include I didn't add this log why did it break | |||||
2023-05-03 | qt_common: Move window info function out of bootmanager | lat9nq | 4 | -44/+75 | |
Function is useful outside of bootmanager, so put it in a common place. qt_common: Add missing include qt_common: Add some newlines qt_common: Add trailing newline qt_common: Add trainline newline | |||||
2023-05-03 | vulkan_surface: Pass only window info for surface creation | lat9nq | 3 | -10/+7 | |
We don't need the whole EmuWindow when creating a surface, and it creates onerous requirements outside of typical usage for creating a surface elsewhere. | |||||
2023-05-03 | settings: Enable FIFO relaxed | lat9nq | 2 | -7/+10 | |
Not entirely sure if we need this, but there's also no reason not to support it. settings: Give VSyncMode values | |||||
2023-05-03 | configure_graphics: Fix another typo | lat9nq | 1 | -1/+1 | |
2023-05-03 | telemetry_session: Make translate function static | lat9nq | 1 | -1/+1 | |
Addresses review feedback Co-authored-by: Lioncash <mathew1800@gmail.com> | |||||
2023-05-03 | bootmanager: Return value in impossible case | lat9nq | 1 | -0/+1 | |
The setting is ranged, so this return statement is unreachable. But GCC can't tell I guess. | |||||
2023-05-03 | configure_graphics: Fix typo | lat9nq | 1 | -1/+1 | |
2023-05-03 | default_ini: Update V-Sync description | lat9nq | 1 | -2/+8 | |
default_ini: Update vsync text default_ini: Add tooltip from configure_graphics | |||||
2023-05-03 | configuration: Expose separate swap present modes | lat9nq | 11 | -37/+115 | |
Previously, yuzu would try and guess which vsync mode to use given different scenarios, but apparently we didn't always get it right. This exposes the separate modes in a drop-down the user can select. If a mode isn't available in Vulkan, it defaults to FIFO. | |||||
2023-05-03 | Fix code resize to use word size rather than byte size | Kelebek1 | 3 | -10/+16 | |
2023-05-03 | vulkan: disable turbo when debugging tool is attached | Liam | 1 | -1/+3 | |
2023-05-03 | video_core: fix build on Apple Clang | Liam | 3 | -4/+6 | |
2023-05-02 | CMake: Enable type limits on Clang | lat9nq | 1 | -0/+1 | |
2023-05-02 | CMakeLists: Enable checks on Clang | lat9nq | 1 | -0/+2 | |
Enables shadow-uncaptured-locals and implicit-fallthrough for Clang. implicit-fallthrough is not enabled by default in -Wall or -Wextra, and shadow-uncaptured-local doesn't seem to be enabled by default by -Wshadow, even though GCC has both of these by their respective cases. | |||||
2023-05-01 | vk_present_manager: Add toggle for async presentation | GPUCode | 10 | -6/+45 | |
2023-05-01 | vk_blit_screen: Recreate FSR when frame is recreated | GPUCode | 1 | -1/+1 | |
* Depends on the layout dimentions and thus should be recreated as well | |||||
2023-05-01 | renderer_vulkan: Fix crashing when updating descriptors | GPUCode | 2 | -4/+17 | |
* During pipeline configure the function would acquire some payload space from the descriptor update queue, write the descriptor data on the GPU thread and give the scheduler a pointer to the beginning of said space to update it later. TickFrame resets the payload cursor, used to track acquires, back to the beginning of the buffer. This wasn't a problem before since WaitWorker was called at the end of the frame but now it is. If a frame writes to a cursor before the scheduler catches up, it will crash * To fix this the payload buffer has been increased to account for the in flight frames that are allowed to exist now. TickFrame will switch between the payload spaces instead of resetting | |||||
2023-05-01 | renderer_vulkan: Async presentation | GPUCode | 11 | -218/+712 | |
2023-05-01 | BufferCache: Fixes and address feedback | Fernando Sahmkow | 6 | -322/+243 | |
2023-05-01 | qt: warn on inoperable keys | Liam | 2 | -0/+34 | |
2023-05-01 | Wait for the terminate event before destroying a system instance | Kelebek1 | 1 | -4/+1 | |
2023-04-30 | settings: rename extended memory layout to unsafe, move from general to system | Liam | 13 | -30/+34 | |
2023-04-30 | Define SampleMask as an array | Kelebek1 | 2 | -2/+4 | |
2023-04-30 | kernel: remove general boost lists | Liam | 7 | -19/+26 | |
2023-04-30 | kernel: match calls to Register and Unregister | Liam | 9 | -5/+50 | |
2023-04-29 | common: add intrusive list type | Liam | 1 | -0/+631 | |
2023-04-29 | Texture Cache: Release stagging buffers on tick frame | Fernando Sahmkow | 6 | -19/+46 | |
2023-04-29 | Buffer Cache: Release stagging buffers on tick frame | Fernando Sahmkow | 2 | -12/+22 | |
2023-04-29 | Tests: Add memory tracker tests. | Fernando Sahmkow | 3 | -550/+548 | |
2023-04-29 | Clang: format and ficx compile errors. | Fernando Sahmkow | 5 | -68/+78 | |
2023-04-29 | Implement Async downloads in normal and fix a few issues. | Fernando Sahmkow | 3 | -39/+61 | |
2023-04-29 | Buffer Cache rework: Setup async downloads. | Fernando Sahmkow | 2 | -140/+154 | |
2023-04-29 | Buffer Cache: Fully rework the buffer cache. | Fernando Sahmkow | 12 | -1091/+1644 | |
2023-04-29 | Address Feedback & Clang Format | Fernando Sahmkow | 2 | -17/+14 | |
2023-04-29 | Maxwell3D: only update parameters on High | Fernando Sahmkow | 1 | -0/+3 | |
2023-04-29 | Accelerate DMA: Use texture cache async downloads to perform the copies | Fernando Sahmkow | 6 | -53/+123 | |
to host. WIP | |||||
2023-04-29 | TextureCache: refactor DMA downloads to allow multiple buffers. | Fernando Sahmkow | 8 | -41/+75 | |
2023-04-28 | vk_pipeline_cache: Skip compute pipelines on Intel proprietary drivers | Morph | 1 | -0/+7 | |
Intel's SPIR-V shader compiler is broken. For now, skip compiling any compute pipelines until they fix this issue. This is not a perfect workaround, as there are a small subset of non-compute pipelines that still cause it to crash, but this should cover the majority of crashes. It is unfortunate that even with a test case reported 6 months ago the issue has not been fixed in favor of fixing "the most popular games and apps". Intel, you can do better than this. | |||||
2023-04-28 | QueryCache: Fix write invalidation. | Fernando Sahmkow | 2 | -6/+13 | |
2023-04-28 | MemoryManager: Fix race conditions. | Fernando Sahmkow | 2 | -3/+11 | |
2023-04-26 | core: service: Add FunctionInfoTyped to allow expanding existing interfaces | german77 | 1 | -8/+12 | |
2023-04-24 | Clang format and ddress feedback | Fernando Sahmkow | 3 | -16/+30 | |
2023-04-24 | service: nfc: Create mifare interface | Narr the Reg | 3 | -50/+58 | |
2023-04-24 | service: nfc: Create interface | Narr the Reg | 5 | -115/+104 | |
2023-04-23 | QueryCache: rework async downloads. | Fernando Sahmkow | 7 | -45/+118 | |
2023-04-23 | Accuracy Normal: reduce accuracy further for perf improvements in Project Lime | Fernando Sahmkow | 4 | -5/+11 | |
2023-04-23 | Fence Manager: implement async fence management in a sepparate thread. | Fernando Sahmkow | 5 | -35/+133 | |
2023-04-22 | maxwell_3d: fix out of bounds array access in size estimation | Liam | 1 | -4/+6 | |
2023-04-22 | Silence nifm spam | Kelebek1 | 3 | -5/+5 | |
2023-04-22 | Sort overlap_ids by modification tick before copy | Kelebek1 | 1 | -0/+6 | |
2023-04-22 | core: am: Demote TryPopFromFriendInvitationStorageChannel Log level | german77 | 1 | -1/+1 | |
2023-04-21 | Account for a pre-added offset when using Corner sample mode for 2D blits | Kelebek1 | 1 | -4/+12 | |
2023-04-19 | Run clang-format to fix all. | Aaron Roney | 1 | -1/+2 | |
2023-04-19 | Fix formatting. | Aaron Roney | 1 | -2/+2 | |
2023-04-19 | Allow passing `bind_address` to dedicated room. | Aaron Roney | 1 | -2/+11 | |
2023-04-16 | core: audio: return result when audio_out initialize failed | FengChen | 1 | -6/+8 | |
2023-04-16 | core: hid: Remove deadzone of virtual controller | german77 | 1 | -0/+4 | |
2023-04-15 | vulkan: use plain fences when timeline semaphores are not available | Liam | 4 | -68/+161 | |
2023-04-15 | service: nfp: Implement debug Interface | Narr the Reg | 6 | -8/+444 | |
2023-04-15 | service: nfp: Implement system interface | Narr the Reg | 6 | -17/+289 | |
2023-04-14 | input_common: minor fix to mouse movement | Valeri | 1 | -1/+1 | |
2023-04-14 | service: nfp: Use an unique interface | Narr the Reg | 4 | -71/+227 | |
2023-04-13 | vulkan: pick alpha composite flags based on available values | Liam | 1 | -1/+14 | |
2023-04-12 | video_core: Enable ImageGather rounding fix on AMD open source drivers | Wollnashorn | 1 | -0/+2 | |
2023-04-10 | kernel: move more memory to application in 8GB arrangement | Liam | 1 | -2/+4 | |
2023-04-08 | kernel: switch extended memory setting to 8GB arrangement | Liam | 3 | -4/+4 | |
2023-04-08 | Use GetGlobalTimeNs as opposed to clock ticks | Billy Laws | 2 | -4/+3 | |
2023-04-08 | shader_recompiler: Use vector arithmetic rather than component-wise in ImageGatherSubpixelOffset | Wollnashorn | 1 | -18/+9 | |
Should be more efficient and better readable | |||||
2023-04-08 | video_core: Enable ImageGather with subpixel offset on Intel | Wollnashorn | 7 | -17/+11 | |
2023-04-08 | shader_recompiler: Add subpixel offset for correct rounding at `ImageGather` | Wollnashorn | 9 | -0/+86 | |
On AMD a subpixel offset of 1/512 of the texel size is applied to the texture coordinates at a ImageGather call to ensure the rounding at the texel centers is done the same way as in Maxwell or other Nvidia architectures. See https://www.reedbeta.com/blog/texture-gathers-and-coordinate-precision/ for more details why this might be necessary. This should fix shadow artifacts at object edges in Zelda: Breath of the Wild (#9957, #6956). | |||||
2023-04-04 | Add some explicit latency to sample count reporting | Billy Laws | 1 | -1/+2 | |
Some games have very tight scheduling requirements for their audio which can't really be matched on the host, adding a constant to the reported value helps to provide some leeway. | |||||
2023-04-03 | general: fixes for gcc 13 | Liam | 6 | -28/+14 | |
2023-04-02 | service: hid: Fix handle validation | german77 | 1 | -5/+1 | |
2023-04-02 | core: arm_dynarmic_32: Update SaveContext/LoadContext. | bunnei | 1 | -13/+10 | |
2023-04-01 | externals: update Vulkan-Headers to v1.3.246 | Jan Beich | 1 | -0/+2 | |
2023-03-31 | video_core: Keep the definition of DimensionControl consistent with nvidia open doc | Feng Chen | 2 | -19/+22 | |
2023-03-30 | applet: controller: Implement cancel button | german77 | 9 | -19/+33 | |
2023-03-30 | service: hid: Implement SetNpadJoyAssignmentModeSingleWithDestination | german77 | 4 | -22/+56 | |
Used by Let's Get Fit | |||||
2023-03-30 | Fixes 'Continous' typo | Max Dunbar | 6 | -38/+38 | |
2023-03-29 | service: am: Improve profile select applet | Narr the Reg | 8 | -34/+270 | |
2023-03-29 | kernel: fix unbounded stack usage in atomics | Liam | 2 | -39/+56 | |
2023-03-28 | Only upload GPU-modified overlaps | Kelebek1 | 1 | -15/+15 | |
2023-03-27 | telemetry: Add waitpkg instruction | Morph | 1 | -0/+1 | |
2023-03-27 | x64: Simplify RDTSC on non-MSVC compilers | Morph | 2 | -16/+10 | |
Co-Authored-By: liamwhite <liamwhite@users.noreply.github.com> | |||||
2023-03-27 | core_timing: Make use of MicroSleep for x64 CPUs | Morph | 1 | -0/+8 | |
For CPUs that support tpause, this should result in significant CPU power savings over thread yield in this spin wait. | |||||
2023-03-27 | x64: Add MicroSleep | Morph | 3 | -0/+84 | |
MicroSleep allows the processor to pause for a "short" amount of time (in the microsecond range). This is useful for spin-waiting that does not require nanosecond precision. This uses the new TPAUSE instruction introduced on Intel's newest processors as part of the waitpkg instructions. For CPUs that do not support waitpkg instructions, this is equivalent to yield(). Co-Authored-By: liamwhite <liamwhite@users.noreply.github.com> | |||||
2023-03-27 | x64: cpu_detect: Add detection of waitpkg instructions | Morph | 2 | -0/+2 | |
waitpkg introduces 3 instructions, UMONITOR, UMWAIT and TPAUSE. | |||||
2023-03-27 | audio_core: No longer stall when sink queue is full | Billy Laws | 4 | -64/+1 | |
Now the audout and audren update rates are tied to the sink status stalling is no longer necessary. | |||||
2023-03-27 | Run clang-format | Billy Laws | 3 | -7/+6 | |
2023-03-27 | audio: Wait for samples on the emulated DSP side to avoid desyncs | Billy Laws | 6 | -24/+28 | |
Waiting on the host side is inaccurate and leads to desyncs in the event of the sink missing a deadline that require stalls to fix. By waiting for the sink to have space before even starting rendering such desyncs can be avoided. | |||||
2023-03-27 | service: hid: Silence warning on MergeSingleJoyAsDualJoy | Narr the Reg | 1 | -1/+2 | |
2023-03-27 | qt: Fix log softlock | Narr the Reg | 1 | -2/+2 | |
2023-03-26 | audio: Interpolate system manager sample count using host sink sample info | Billy Laws | 4 | -3/+39 | |
This avoids the need to stall if the host sink sporadically misses the deadline, in such a case the previous implementation would report them samples as being played on-time, causing the guest to send more samples and leading to a gradual buildup. | |||||
2023-03-26 | service: nfp: Add plain amiibo support | german77 | 5 | -8/+37 | |
2023-03-26 | tests: mark integer literals as unsigned | Liam | 1 | -17/+20 | |
2023-03-26 | container_hash: use climits | Liam | 1 | -0/+1 | |
2023-03-26 | video_core/macro: Make use of Common::HashValue | Morph | 1 | -3/+3 | |
2023-03-26 | tests: Implement tests for verifying HashValue | Morph | 2 | -0/+42 | |
Values were randomly generated and the verification was done against boost 1.79. | |||||
2023-03-26 | common: Port boost's hash_value implementation | Morph | 2 | -0/+92 | |
Ports a small subset of boost's hash_value implementation (<= 1.80.0). | |||||
2023-03-25 | qt: implement RequestExit for applets | Liam | 38 | -69/+250 | |
2023-03-25 | applets: implement RequestExit | Liam | 18 | -1/+71 | |
2023-03-25 | Pass GPU page table by reference | Ross Schlaikjer | 1 | -31/+32 | |
2023-03-24 | vulkan: fix scheduler chunk reserve | Liam | 1 | -1/+1 | |
2023-03-24 | zstd: Use ZSTD_getFrameContentSize instead of ZSTD_getDecompressedSize | Morph | 1 | -1/+1 | |
2023-03-24 | memory: rename global memory references to application memory | Liam | 44 | -226/+185 | |
2023-03-22 | kernel: use KTypedAddress for addresses | Liam | 101 | -1102/+1574 | |
2023-03-22 | bounded_threadsafe_queue: Refactor Pop | Morph | 1 | -140/+62 | |
Introduces PopModes to bring waiting logic into Pop, similar to Push. | |||||
2023-03-22 | bounded_threadsafe_queue: Add producer cv to avoid busy waiting | Morph | 1 | -17/+29 | |
2023-03-22 | nfc: Initialize device when controller is connected | Narr the Reg | 4 | -4/+30 | |
2023-03-22 | bounded_threadsafe_queue: Deduplicate and add PushModes | Morph | 3 | -88/+86 | |
Adds the PushModes Try and Wait to allow producers to specify how they want to push their data to the queue if the queue is full. If the queue is full: - Try will fail to push to the queue, returning false. Try only returns true if it successfully pushes to the queue. This may result in items not being pushed into the queue. - Wait will wait until a slot is available to push to the queue, resulting in potential for deadlock if a consumer is not running. | |||||
2023-03-22 | bounded_threadsafe_queue: Add TryPush | Morph | 1 | -0/+71 | |
2023-03-22 | logging: Make use of bounded queue | Morph | 1 | -8/+8 | |
2023-03-22 | bounded_threadsafe_queue: Use simplified impl of bounded queue | Morph | 2 | -115/+203 | |
Provides a simplified SPSC, MPSC, and MPMC bounded queue implementation using mutexes. | |||||
2023-03-19 | vulkan: fix more excessive waiting in scheduler | Liam | 1 | -4/+5 | |
2023-03-19 | kernel: fix LOG_TRACE in ipc | Liam | 1 | -1/+1 | |
2023-03-19 | common: string_util: Use std::string_view for UTF16ToUTF8/UTF8ToUTF16W. | bunnei | 2 | -11/+11 | |
2023-03-18 | common: bounded_threadsafe_queue: Use polyfill_thread. | bunnei | 1 | -2/+3 | |
2023-03-18 | config: Fix controller config from resetting | Narr the Reg | 1 | -0/+3 | |
2023-03-17 | Disable SRGB border color conversion for now, to fix shadows in Xenoblade. | Kelebek1 | 1 | -6/+8 | |
2023-03-17 | service: nfp: Replace crc function with boost equivalent | Narr the Reg | 2 | -28/+17 | |
2023-03-16 | service: nfp: Close app area and recreate crc | Narr the Reg | 1 | -0/+10 | |
2023-03-16 | service: nfp: Convert mii colors to v3 | Narr the Reg | 6 | -15/+100 | |
2023-03-15 | vulkan: disable extendedDynamicState3ColorBlendEquation on radv | Liam | 1 | -0/+6 | |
2023-03-15 | service: nfp: Actually write correct crc | Narr the Reg | 6 | -23/+44 | |
2023-03-14 | video_core: Better defined ImageInfo parameters | FengChen | 3 | -39/+43 | |
2023-03-13 | configure_audio: Fix output mode setting not saving | Morph | 2 | -9/+9 | |
2023-03-13 | input_common: sdl: Only send last vibration command | german77 | 1 | -1/+16 | |
2023-03-13 | kernel: additional style fixes to KThread, KProcess | Liam | 2 | -27/+27 | |
2023-03-13 | kernel: fix clang build | Liam | 1 | -2/+2 | |
2023-03-13 | kernel: remove unnecessary finalize calls | Liam | 2 | -7/+1 | |
2023-03-13 | kernel: convert KProcess to new style | Liam | 10 | -240/+254 | |
2023-03-13 | kernel: convert KThread to new style | Liam | 15 | -670/+519 | |
2023-03-13 | kernel: prefer std::addressof | Liam | 21 | -134/+139 | |
2023-03-13 | kernel: convert KResourceLimit | Liam | 2 | -59/+59 | |
2023-03-13 | kernel: remove kernel_ | Liam | 41 | -295/+290 | |
2023-03-13 | kernel: remove gratitutous attribute usage | Liam | 8 | -29/+24 | |
2023-03-13 | kernel/svc: convert to new style | Liam | 21 | -304/+192 | |
2023-03-13 | kernel: convert miscellaneous | Liam | 7 | -94/+81 | |
2023-03-13 | kernel: conver KScopedLock, KScopedResourceReservation, KSessionRequest, KSharedMemory, KSpinLock | Liam | 9 | -97/+99 | |
2023-03-13 | kernel: convert KAbstractSchedulerLock | Liam | 1 | -31/+24 | |
2023-03-13 | kernel: convert KMemoryLayout, KMemoryRegion*, KPageTableSlabHeap, KPriorityQueue | Liam | 6 | -121/+121 | |
2023-03-13 | kernel: move KMemoryLayout for NX board | Liam | 2 | -1/+1 | |
2023-03-13 | kernel: remove KLinkedList | Liam | 5 | -245/+0 | |
2023-03-13 | kernel: convert KConditionVariable, KLightConditionVariable, KLightLock | Liam | 7 | -75/+77 | |
2023-03-13 | kernel: convert KPort, KSession | Liam | 28 | -226/+196 | |
2023-03-13 | kernel: convert GlobalSchedulerContext, KAddressArbiter, KScopedSchedulerLockAndSleep, KThreadQueue to new style | Liam | 8 | -142/+130 | |
2023-03-12 | vk_scheduler: split work queue waits and execution waits | Liam | 2 | -28/+62 | |
2023-03-12 | general: fix spelling mistakes | Liam | 102 | -206/+206 | |
2023-03-12 | video_core: Fix ogl status error when draw_texture | FengChen | 2 | -2/+2 | |
2023-03-12 | video_core: Invalid index_buffer flag when inline_index draw | FengChen | 1 | -0/+1 | |
2023-03-12 | yuzu: Move audio settings to audio section | german77 | 6 | -45/+56 | |
2023-03-12 | yuzu: Remove console id setting | german77 | 3 | -53/+6 | |
2023-03-10 | video_core: Update texture format | Feng Chen | 3 | -72/+67 | |
2023-03-10 | service: nfp: Improve implementation | Narr the Reg | 5 | -52/+234 | |
2023-03-09 | OpenGL: Prefer glClientWaitSync for OGLSync objects | ameerj | 5 | -10/+16 | |
At least on Nvidia, glClientWaitSync with a timeout of 0 (non-blocking) is faster than glGetSynciv of GL_SYNC_STATUS. | |||||
2023-03-08 | perf_stats: Check multicore first | Morph | 1 | -2/+2 | |
SpeedLimiting is SC only. Since MC is performance oriented we should check for it first to skip checking use_speed_limit. | |||||
2023-03-08 | hid: Use nanosecond timestamps instead of ticks | Morph | 2 | -5/+5 | |
2023-03-08 | core: Promote CPU/GPU threads to time critical | Morph | 4 | -4/+4 | |
And also demote Audren and CoreTiming to High thread priority. | |||||
2023-03-08 | native_clock: Wait for 10 seconds instead of 30 | Morph | 1 | -3/+3 | |
It was experimentally determined to be sufficient. | |||||
2023-03-08 | native_clock: Use RealTimeClock instead of SteadyClock | Morph | 1 | -4/+4 | |
We want to synchronize RDTSC to real time. | |||||
2023-03-08 | steady_clock: Introduce a real time clock | Morph | 2 | -0/+36 | |
2023-03-08 | native_clock: Re-adjust the RDTSC frequency | Morph | 2 | -5/+34 | |
The RDTSC frequency reported by CPUID is not accurate to its true frequency. We will spawn a separate thread to calculate the true RDTSC frequency after a measurement period of 30 seconds has elapsed. | |||||
2023-03-08 | input_common: Minor typo issues (#9922) | Narr the Reg | 8 | -48/+48 | |
2023-03-08 | kernel: add timer pointer to KThreadQueue | Liam | 8 | -15/+42 | |
2023-03-08 | input_common: Increase mouse sensitivity range | german77 | 3 | -10/+20 | |
2023-03-08 | common: make BitCast constexpr | Liam | 1 | -9/+11 | |
2023-03-08 | general: fix type inconsistencies | Liam | 4 | -7/+7 | |
2023-03-08 | kernel: avoid signed overflow UB on MSVC | Liam | 3 | -1/+25 | |
2023-03-08 | kernel: clone fpu status on CreateThread | Liam | 3 | -1/+28 | |
2023-03-07 | gl_rasterizer: Implement AccelerateDMA DmaBufferImageCopy | ameerj | 2 | -9/+52 | |
2023-03-07 | Refactor AccelerateDMA code | ameerj | 8 | -251/+156 | |
2023-03-07 | hle: rename legacy errors to Results | Liam | 35 | -183/+169 | |
2023-03-06 | kernel: add missing header for libc++ | Jan Beich | 1 | -0/+1 | |
In file included from src/core/hle/kernel/k_light_lock.cpp:4: In file included from src/./core/hle/kernel/k_light_lock.h:8: src/./core/hle/kernel/k_scoped_lock.h:25:51: error: no member named 'addressof' in namespace 'std' explicit KScopedLock(T& l) : KScopedLock(std::addressof(l)) {} ~~~~~^ | |||||
2023-03-06 | fix typo in settings.h | Ikko Eltociear Ashimine | 1 | -4/+4 | |
Intial -> Initial | |||||
2023-03-05 | service: acc: Replace default image with a 32x32 image | Narr the Reg | 2 | -9/+20 | |
2023-03-05 | input_common: joycon: Add stick input from passive reports | german77 | 3 | -32/+84 | |
2023-03-05 | service: psc: Update names | Narr the Reg | 1 | -9/+9 | |
2023-03-05 | service: ssl: Add missing properties and update names | Narr the Reg | 1 | -18/+58 | |
2023-03-05 | service: usb: Update names | Narr the Reg | 1 | -35/+35 | |
2023-03-05 | kernel: fix WaitSynchronization | Liam | 1 | -16/+29 | |
2023-03-05 | Engines: Implement Accelerate DMA Texture. | Fernando Sahmkow | 15 | -97/+658 | |
2023-03-05 | native_clock: Round RDTSC frequency to the nearest 1000 | Morph | 1 | -5/+12 | |
2023-03-05 | timer_resolution: Set current process to High QoS | Morph | 1 | -0/+22 | |
Ensures that this process is treated as a high performance process by the Windows scheduler. | |||||
2023-03-05 | hardware_properties: Update BASE_CLOCK_RATE to exactly 1020 MHz | Morph | 1 | -5/+3 | |
2023-03-05 | core_timing: Use higher precision sleeps on Windows | Morph | 5 | -24/+47 | |
The precision of sleep_for and wait_for is limited to 1-1.5ms on Windows. Using SleepForOneTick() allows us to sleep for exactly one interval of the current timer resolution. This allows us to take advantage of systems that have a timer resolution of 0.5ms to reduce CPU overhead in the event loop. | |||||
2023-03-05 | main: (Windows) Set the current timer resolution to the maximum | Morph | 2 | -0/+13 | |
Increases the precision of thread sleeps on Windows. | |||||
2023-03-05 | wall_clock: Make use of SteadyClock | Morph | 1 | -23/+11 | |
2023-03-05 | common: Implement a method to change the Windows timer resolution | Morph | 3 | -0/+133 | |
This utilizes undocumented NtDll functions to change the current timer resolution from the default of 1ms. | |||||
2023-03-05 | common: Implement a high resolution steady clock | Morph | 3 | -0/+81 | |
This implementation provides a consistent, high performance, and high resolution clock where/when std::chrono::steady_clock does not provide sufficient precision. | |||||
2023-03-04 | Check all swizzle components for red, not just [0], pass float border color rather than int | Kelebek1 | 3 | -10/+16 | |
2023-03-04 | gpu_thread: Use bounded queue | Behunin | 2 | -3/+4 | |
2023-03-02 | Fix a bug with the Reverb command in reading from the pre_delay line. | Kelebek1 | 3 | -6/+8 | |
2023-03-02 | vulkan_common: disable vertexInputDynamicState on unsupported driver | Liam | 1 | -0/+1 | |
2023-03-01 | kernel: be more careful about kernel address keys | Liam | 5 | -11/+23 | |
2023-03-01 | kernel: refactor priority inheritance to represent locks as C++ objects | Liam | 8 | -190/+436 | |
2023-03-01 | kernel: simplify AddressSpaceInfo, update values | Liam | 1 | -66/+13 | |
2023-03-01 | kernel: barrier memory before condition variable write | Liam | 1 | -15/+15 | |
2023-03-01 | kernel: document previous location of interrupt disables in arbiter/condvar | Liam | 2 | -3/+9 | |
2023-03-01 | kernel: adjust pool allocations | Liam | 2 | -7/+16 | |
2023-03-01 | kernel: simplify KAbstractSchedulerLock::Lock | Liam | 1 | -5/+6 | |
2023-03-01 | kernel: add InfoType::IoRegionHint | Liam | 1 | -0/+1 | |
2023-03-01 | nvnflinger: fix name | Liam | 54 | -444/+443 | |
2023-03-01 | service: move hle_ipc from kernel | Liam | 148 | -1734/+1669 | |
2023-03-01 | sm:: remove unused member | Liam | 1 | -1/+0 | |
2023-02-28 | cmake: use correct boost imported targets | Alexandre Bouvier | 5 | -5/+5 | |
2023-02-27 | Partially apply LTO to only core and video_core projects. | Matías Locatti | 2 | -0/+8 | |
2023-02-27 | service: btm: Fix handle functions | Narr the Reg | 1 | -4/+8 | |
2023-02-26 | Revert "yuzu: config: Remove player 8 and 9 from config file" | Narr the Reg | 8 | -104/+38 | |
2023-02-26 | yuzu: config: Remove player 8 and 9 from config file | Narr the Reg | 8 | -38/+104 | |
2023-02-25 | buffer_cache: Add logic for non-NVN storage buffer tracking | ameerj | 2 | -5/+27 | |
2023-02-25 | config: Fix per game Force max clock | german77 | 2 | -5/+1 | |
2023-02-25 | core: hidbus: Fix BusType size | Narr the Reg | 2 | -15/+15 | |
2023-02-25 | core: Update service function tables to 16.0.0+ | Narr the Reg | 13 | -2/+63 | |
2023-02-24 | am: avoid direct pointer access of transfer memory objects | Liam | 1 | -6/+4 | |
2023-02-24 | hid: avoid direct pointer access of transfer memory objects | Liam | 20 | -69/+91 | |
2023-02-23 | configuration: Add async ASTC decode setting | ameerj | 12 | -8/+49 | |
2023-02-22 | texture_cache: Add async texture decoding | ameerj | 4 | -0/+89 | |
2023-02-22 | core: hid: Restore motion state on refresh and clamp motion values | Narr the Reg | 3 | -2/+30 | |
2023-02-22 | input_common: Implement dedicated motion from mouse | Narr the Reg | 3 | -24/+85 | |
2023-02-22 | settings: Add more input settings to the log | Narr the Reg | 1 | -0/+7 | |
2023-02-22 | core: hid: Fix native mouse mappings | Narr the Reg | 5 | -63/+62 | |
2023-02-22 | yuzu: Set a lower timeout for discord presence | Narr the Reg | 1 | -0/+2 | |
2023-02-21 | svc: Fix type consistency (exposed on macOS) | Merry | 14 | -54/+54 | |
2023-02-21 | externals: Update cpp-httplib to latest | Alexandre Bouvier | 2 | -2/+2 | |
2023-02-21 | net: translate ECONNRESET network error | MonsterDruide1 | 4 | -0/+8 | |
2023-02-21 | sm:: fix lingering session initialization issues | Liam | 2 | -2/+19 | |
2023-02-21 | cheat_engine: add check for hid initialization | Liam | 1 | -2/+7 | |
2023-02-21 | sm:: support service registration deferral | Liam | 5 | -8/+151 | |
2023-02-21 | service: refactor server architecture | Liam | 140 | -1143/+1393 | |
Converts services to have their own processes | |||||
2023-02-21 | core: defer cpu shutdown | Liam | 1 | -3/+4 | |
2023-02-20 | Qt: Reintroduce scaling for touch input | german77 | 2 | -6/+16 | |
2023-02-17 | kernel: add KObjectName | Liam | 7 | -3/+265 | |
2023-02-17 | yuzu: Shutdown game on restart to reload per game config | Narr the Reg | 1 | -2/+4 | |
2023-02-17 | yuzu: Write to config file on important config changes | Narr the Reg | 4 | -0/+7 | |
2023-02-16 | input_common: Split mouse input into individual devices | Narr the Reg | 10 | -31/+114 | |
2023-02-16 | Qt: Fix mouse scalling | german77 | 2 | -18/+8 | |
2023-02-15 | remove constexpr from virtual function | arades79 | 2 | -5/+5 | |
Signed-off-by: arades79 <scravers@protonmail.com> | |||||
2023-02-14 | Revert "main: Fix borderless fullscreen for high dpi scaled displays" | liamwhite | 1 | -13/+1 | |
2023-02-14 | Reimplement the invalidate_texture_data_cache register | Kelebek1 | 1 | -0/+4 | |
2023-02-14 | Allow >1 cpu threads on video decoding, disable multi-frame decoding | Kelebek1 | 1 | -0/+2 | |
2023-02-14 | service: remove deleted services | Liam | 24 | -621/+0 | |
2023-02-14 | use a string view to skip allocation | arades79 | 2 | -13/+7 | |
Signed-off-by: arades79 <scravers@protonmail.com> | |||||
2023-02-14 | remove static from pointer sized or smaller types for aesthetics, change constexpr static to static constexpr for consistency | arades79 | 102 | -307/+300 | |
Signed-off-by: arades79 <scravers@protonmail.com> | |||||
2023-02-14 | apply clang-format | arades79 | 2 | -4/+5 | |
Signed-off-by: arades79 <scravers@protonmail.com> | |||||
2023-02-14 | don't use static inside constexpr function | arades79 | 1 | -6/+6 | |
Signed-off-by: arades79 <scravers@protonmail.com> | |||||
2023-02-14 | add static lifetime to constexpr values to force compile time evaluation where possible | arades79 | 101 | -303/+309 | |
Signed-off-by: arades79 <scravers@protonmail.com> | |||||
2023-02-14 | general: rename CurrentProcess to ApplicationProcess | Liam | 41 | -164/+169 | |
2023-02-13 | Fix biquad filter command's state buffer offset | Kelebek1 | 1 | -2/+2 | |
2023-02-13 | kernel: use GetCurrentProcess | Liam | 34 | -128/+147 | |
2023-02-13 | main: Fix borderless fullscreen for high dpi scaled displays | Morph | 1 | -1/+13 | |
On Windows, a borderless window will be treated the same as exclusive fullscreen when the window geometry matches the physical dimensions of the screen. However, with High DPI scaling, when the devicePixelRatioF() is > 1, the borderless window apparently is not treated as exclusive fullscreen and functions correctly. One can verify and replicate this behavior by using a high resolution (4K) display, and switching between 100% and 200% scaling in Windows' display settings. At 100%, without the addition of 1, it is treated as exclusive fullscreen. At 200%, with or without the addition of 1, it is treated as borderless windowed. Therefore, we can use (read: abuse) this difference in behavior to fix this issue for those with higher resolution displays when the Qt scaling ratio is > 1. Should this behavior be changed in the future, please revisit this workaround. | |||||
2023-02-12 | Update settings.cpp | m-HD | 1 | -0/+4 | |
added missing graphical settings to RestoreGlobalState() | |||||
2023-02-11 | texture_cache: OpenGL: Implement MSAA uploads and copies | ameerj | 12 | -14/+136 | |
2023-02-11 | kernel/svc: Fix undefined info_id | Colin Kinloch | 1 | -2/+2 | |
2023-02-11 | Add fallback for memory read/write in case the address goes over a 4K page | Kelebek1 | 1 | -12/+64 | |
2023-02-11 | video_core: Speed up video frame data copy | FengChen | 1 | -9/+5 | |
2023-02-11 | Fix depop prepare receiving bad mix infos and writing out of bounds, and update aux a bit, may help | Kelebek1 | 2 | -40/+40 | |
2023-02-11 | core: kernel: k_process: Use application system resource. | bunnei | 3 | -1/+15 | |
2023-02-11 | kernel: Refactor thread_local variable usage | ameerj | 1 | -27/+18 | |
On MSVC at least, there seems to be a non-trivial overhead to calling GetHostThreadId(). This slightly reworks the host_thread_id variable to reduce some of the complexity around its usage, along with some small refactors around current_thread and dummy thread | |||||
2023-02-10 | biquad_filter: Clamp f64 in ApplyBiquadFilterFloat | Merry | 1 | -3/+3 | |
2023-02-10 | biquad_filter: Fix rounding in ApplyBiquadFilterInt | Merry | 2 | -24/+16 | |
2023-02-10 | kernel: avoid usage of bit_cast | Liam | 1 | -2/+2 | |
2023-02-10 | main: Re-add QtWebEngine zoom factor | Morph | 1 | -0/+2 | |
For some reason, I had removed this in https://github.com/yuzu-emu/yuzu/pull/4949/commits/ad6cec71ecd61aa2533d9efa89b68837516f8464 This should fix any improperly scaled web applets. | |||||
2023-02-10 | input_common: Reintroduce custom pro controller support | Narr the Reg | 9 | -7/+92 | |
2023-02-10 | audio: cubeb: Fix yuzu crashing when it test for latency | Narr the Reg | 1 | -0/+20 | |
2023-02-10 | core: hid: Use gyro thresholds modes set by the game | Narr the Reg | 8 | -21/+67 | |
2023-02-09 | buffer_base: Partially revert changes from #9559 | ameerj | 2 | -7/+9 | |
This fixes a regression where Yoshi's Crafted World (and potentially other titles) would enter an infinite loop when GPU Accuracy was set to "Normal" | |||||
2023-02-09 | glsl_emit_context: Remove redeclarations of gl_SampleID and gl_SampleMask | ameerj | 1 | -6/+0 | |
These built-ins seem to be available without needing to be declared for fragment shaders, similar i.e. to gl_FragDepth | |||||
2023-02-08 | service: hid: Return error if arguments of SetSupportedNpadIdType is invalid | Narr the Reg | 4 | -6/+15 | |
2023-02-08 | Remove OnCommandListEndCommand | Behunin | 3 | -14/+2 | |
Call rasterizer->ReleaseFences() directly | |||||
2023-02-07 | kernel/svc: switch to generated wrappers | Liam | 45 | -1570/+7468 | |
2023-02-06 | kernel: fix compilation with older gcc | Liam | 2 | -4/+5 | |
2023-02-06 | Update yuzu_cmd's default_ini.h | Matías Locatti | 1 | -7/+10 | |
Rename FSR, add missing resolution multipliers, and SMAA | |||||
2023-02-05 | Remove fake vertex bindings when dynamic state is enabled | Kelebek1 | 1 | -25/+1 | |
2023-02-05 | kernel/svc: Split implementations into separate files | Liam | 40 | -2688/+3196 | |
2023-02-05 | Add Game Icon for Discord RPC | Sorab | 2 | -8/+61 | |
Connected to Yuzu Compatibility Page | |||||
2023-02-04 | yuzu_cmd: Order arguments alphabetically and port arguments from Qt | german77 | 1 | -19/+36 | |
2023-02-04 | yuzu_cmd: Fix mismatching controller input | german77 | 3 | -2/+18 | |
2023-02-04 | yuzu_cmd: Fix touch input | german77 | 2 | -33/+21 | |
2023-02-04 | shader_recompiler/value.h: Remove lingering references to S32 | ameerj | 1 | -11/+0 | |
2023-02-04 | remove disambiguation argument from mute text | Jonas Gutenschwager | 1 | -1/+1 | |
Co-authored-by: Morph <39850852+Morph1984@users.noreply.github.com> | |||||
2023-02-03 | fsp_srv: Copy HLE Read Buffer for OutputAccessLogToSdCard | ameerj | 1 | -1/+1 | |
2023-02-03 | Revert "Merge pull request #9718 from yuzu-emu/revert-9508-hle-ipc-buffer-span" | ameerj | 61 | -326/+368 | |
This reverts commit 25fc5c0e1158cb8e81cbc769b24ad84032a1fbfd, reversing changes made to af20e25081f97d55b451606c87922e2b49f0d363. | |||||
2023-02-03 | added 'Hide empty rooms' toggle to lobby | Luke Sawczak | 3 | -0/+25 | |
fixed typo fixed typo fixed typo clang | |||||
2023-02-02 | Revert "hle_ipc: Use std::span to avoid heap allocations/copies when calling ReadBuffer" | liamwhite | 61 | -368/+326 | |
2023-02-02 | input_common: Simplify stick from button | Narr the Reg | 1 | -32/+13 | |
2023-02-01 | kernel: add KDeviceAddressSpace | Liam | 6 | -0/+232 | |
2023-02-01 | yuzu: config: Draw turbo buttons with a different color | german77 | 2 | -14/+23 | |
2023-02-01 | input_common: Implement turbo buttons | german77 | 6 | -18/+115 | |
2023-01-30 | kernel: add KCapabilities | Liam | 6 | -0/+738 | |
2023-01-30 | gl_compute_pipeline: Force context flush when loading shader cache | ameerj | 4 | -7/+37 | |
2023-01-30 | input_common: joycon: Remove Magic numbers from common protocol | Narr the Reg | 9 | -154/+221 | |
2023-01-30 | gl_graphics_pipeline: Force context flush when loading shader cache | ameerj | 4 | -9/+12 | |
2023-01-30 | input_common: joycon: Fill missing enum data | Narr the Reg | 6 | -41/+53 | |
2023-01-30 | Move to Clang Format 15 | Levi Behunin | 25 | -189/+185 | |
Depends on https://github.com/yuzu-emu/build-environments/pull/69 clang-15 primary run | |||||
2023-01-29 | spirv: Fix TXQ with MSAA textures | ameerj | 3 | -8/+19 | |
2023-01-29 | emit_glasm_image: Fix TXQ with MSAA textures | ameerj | 1 | -1/+9 | |
2023-01-29 | emit_glsl_image: Implement TXQ with MSAA textures | ameerj | 1 | -9/+23 | |
Also fixes for texture buffers, which do not have mips eithers. | |||||
2023-01-29 | texture_pass: Fix texture descriptors comparisons | ameerj | 1 | -2/+9 | |
2023-01-29 | texture_pass: Refactor texture handle retrieval | ameerj | 1 | -7/+7 | |
2023-01-28 | shader_recompiler: TXQ: Skip QueryLevels when possible | ameerj | 11 | -29/+37 | |
2023-01-28 | emit_glsl_image: Fix ImageFetch for MSAA textures | ameerj | 1 | -6/+11 | |
2023-01-28 | yuzu: config: Avoid reading deleted object | Narr the Reg | 1 | -2/+5 | |
2023-01-28 | LDN Hostname Support in Direct Connect | SoRadGaming | 3 | -31/+38 | |
- Added IPv6 & Namespace support in direct connection Regex - Updated Tooltip for Direct Connect UI - Removed Dropdown Connection Type in Direct Connect | |||||
2023-01-28 | texture_cache: Adjust image view sizes by MSAA samples | ameerj | 2 | -0/+48 | |
2023-01-28 | video_core: Implement vulkan clear specified channel | FengChen | 6 | -20/+152 | |
2023-01-28 | polyfill_thread: satisfy execution ordering requirements of stop_callback | Liam | 1 | -37/+46 | |
2023-01-28 | input_common: joycon: Replace ReadSPI vector with span | Narr the Reg | 3 | -20/+26 | |
2023-01-28 | input_common: joycon: Remove magic numbers from calibration protocol | Narr the Reg | 6 | -107/+202 | |
2023-01-27 | glasm: Add MS sampler types | ameerj | 2 | -5/+8 | |
2023-01-27 | glsl: Add MS sampler types | ameerj | 1 | -22/+27 | |
2023-01-26 | kernel: unbreak min/max template deduction on Apple Clang | Liam | 1 | -2/+2 | |
2023-01-26 | video_core/opengl: Add FSR upscaling filter to the OpenGL renderer | Wollnashorn | 14 | -172/+547 | |
2023-01-26 | input_common: Implement SetLowPowerMode and TriggersElapsed for the joycon driver | Narr the Reg | 4 | -0/+21 | |
2023-01-26 | shader_recompiler: Remove S32 IR type | ameerj | 13 | -46/+19 | |
The frontend IR opcodes do not distinguish between signed and unsigned integer types. Fixes broken shaders when IR validation/graphics debugging is enabled for shaders that used BitCastS32F32 | |||||
2023-01-26 | main: Convert to device independent coordinates for scaling | Morph | 3 | -8/+13 | |
devicePixelRatioF() returns the scaling ratio when high dpi scaling is enabled. When high dpi scaling is enabled, the raw screen coordinate system is scaled to device independent coordinates. | |||||
2023-01-26 | main: Use passthrough scaling for non-windows OSes | Morph | 1 | -3/+12 | |
They should be better than windows when handling fractional scaling ratios. | |||||
2023-01-26 | main: Enable High DPI fixes for Qt >= 5.14 | Morph | 1 | -0/+43 | |
This uses Qt's new high DPI application attributes for scaling the current window. However, these aren't perfect as scaling with non integer scales will cause artifacts in UI, icons and other elements. Therefore, we use a heuristic to select an appropriate integer scale value depending on the current screen resolution and applies this to the application. | |||||
2023-01-26 | main: Only set AA_DisableWindowContextHelpButton below Qt6 | Morph | 1 | -1/+3 | |
This is fortunately disabled by default on Qt6, so we just have to check whether we are compiling with Qt6 or not. | |||||
2023-01-25 | input_common: Make use of StoppableTimedWait | Morph | 2 | -5/+6 | |
2023-01-25 | polyfill_thread: Implement StoppableTimedWait | Morph | 1 | -0/+36 | |
StoppableTimedWait allows for a timed wait to be stopped immediately after a stop is requested. This is useful in cases where long duration thread sleeps are needed and allows for immediate joining of waiting threads after a stop is requested. Co-Authored-By: liamwhite <liamwhite@users.noreply.github.com> | |||||
2023-01-25 | input_common: add missing header for libc++ after 340f15d1fa79 | Jan Beich | 1 | -0/+1 | |
src/input_common/drivers/joycon.cpp:187:26: error: no member named 'find_if' in namespace 'std::ranges' std::ranges::find_if(left_joycons, [](auto& device) { return !device->IsConnected(); }); ~~~~~~~~~~~~~^ src/input_common/drivers/joycon.cpp:193:54: error: no member named 'find_if' in namespace 'std::ranges' const auto unconnected_device = std::ranges::find_if( ~~~~~~~~~~~~~^ src/input_common/drivers/joycon.cpp:393:51: error: no member named 'find_if' in namespace 'std::ranges' const auto matching_device = std::ranges::find_if( ~~~~~~~~~~~~~^ src/input_common/drivers/joycon.cpp:402:51: error: no member named 'find_if' in namespace 'std::ranges' const auto matching_device = std::ranges::find_if( ~~~~~~~~~~~~~^ | |||||
2023-01-25 | Revert 9617 and fix it on input_common | Narr the Reg | 2 | -12/+9 | |
2023-01-25 | default_ini: Split and concatenate the config string literal | Morph | 1 | -2/+8 | |
We are dangerously close to MSVC's 16384 character limit for string literals. Breaking this string up and concatenating will allow for more settings to be added in the future. | |||||
2023-01-25 | Revert "MemoryManager: use fastmem directly." | Merry | 3 | -34/+11 | |
This reverts commit af5ecb0b15d4449f58434e70eed835cf71fc5527. | |||||
2023-01-25 | main: Globally disable the "?" button on dialogs | Morph | 10 | -17/+8 | |
Sets the AA_DisableWindowContextHelpButton attribute to disable this useless button globally. | |||||
2023-01-24 | kernel: split SetAddressKey into user and kernel variants | Liam | 5 | -11/+29 | |
2023-01-23 | kernel: fix incorrect locking order in suspension | Liam | 3 | -31/+23 | |
2023-01-23 | spirv: fix multisampled image fetch | Liam | 4 | -2/+16 | |
2023-01-23 | qt: add option to disable controller applet | EBADBEEF | 5 | -0/+16 | |
- add checkbox to disable the controller applet UI - when controller applet is disabled, use the yuzu-cmd fallback controller applet that applies controller config based on rules - See https://github.com/yuzu-emu/yuzu/issues/8552 for some discussion | |||||
2023-01-23 | cmake: prefer system llvm library | Alexandre Bouvier | 2 | -5/+3 | |
2023-01-22 | kernel: KPageTable: update | Liam | 6 | -215/+477 | |
2023-01-22 | yuzu: Fix language comobox crash | german77 | 4 | -8/+21 | |
2023-01-21 | nsight_aftermath_tracker: update for latest Aftermath SDK | Liam | 1 | -4/+4 | |
2023-01-20 | core: hid: Make use of SCOPE_EXIT and SCOPE_GUARD where applicable | Narr the Reg | 1 | -67/+38 | |
2023-01-20 | input_common: Fix joycon mappings | german77 | 2 | -57/+53 | |
2023-01-20 | input_common: Address byte review | german77 | 16 | -243/+220 | |
2023-01-20 | core: hid: Only set the polling mode to the correct side | Narr the Reg | 8 | -27/+70 | |
2023-01-20 | input_common: Drop Pro controller support from custom driver | german77 | 4 | -43/+4 | |
2023-01-20 | input_common: Fix issue where ring and irs are enabled at the same time | german77 | 4 | -15/+24 | |
2023-01-20 | input_common: Implement joycon ir camera | Narr the Reg | 15 | -23/+608 | |
2023-01-20 | yuzu: Add ring controller test button | german77 | 10 | -174/+370 | |
2023-01-20 | input_common: Use DriverResult on all engines | german77 | 17 | -104/+100 | |
2023-01-20 | Address review comments | german77 | 14 | -46/+44 | |
2023-01-20 | core: hid: Fix input regressions | Narr the Reg | 6 | -41/+56 | |
2023-01-20 | input_common: Implement joycon nfc | german77 | 9 | -13/+544 | |
2023-01-20 | input_common: Add dual joycon support | Narr the Reg | 1 | -24/+101 | |
2023-01-20 | input_common: Add support for joycon ring controller | Narr the Reg | 9 | -4/+272 | |
2023-01-20 | input_common: Add support for joycon input reports | Narr the Reg | 8 | -100/+798 | |
2023-01-20 | input_common: Use calibration from joycon | Narr the Reg | 5 | -0/+231 | |
2023-01-20 | input_common: Add support for joycon generic functions | Narr the Reg | 5 | -3/+310 | |
2023-01-20 | input_common: Add joycon low level functions | Narr the Reg | 3 | -0/+434 | |
2023-01-20 | service: hid: Set led pattern and fix color detection | Narr the Reg | 1 | -0/+5 | |
2023-01-20 | core: hid: Enable pulling color data from controllers | Narr the Reg | 9 | -2/+246 | |
2023-01-20 | core: hid: Migrate ring from emulated devices to emulated controller | Narr the Reg | 8 | -88/+105 | |
2023-01-20 | yuzu: Update controller colors and button names | Narr the Reg | 2 | -3/+27 | |
2023-01-20 | input_common: Disable SDL driver with switch controllers | Narr the Reg | 6 | -6/+44 | |
2023-01-20 | input_common: Initial skeleton for custom joycon driver | Narr the Reg | 8 | -3/+1786 | |
2023-01-19 | add volume quicksetting with volume slider | Jonas Gutenschwager | 2 | -24/+90 | |
2023-01-18 | input_common: reset sdl motion if data is invalid | german77 | 1 | -19/+35 | |
2023-01-18 | fix format | Jonas Gutenschwager | 2 | -4/+2 | |
2023-01-18 | Demote maxwell3d Firmware4 call log to debug | Kelebek1 | 1 | -1/+1 | |
2023-01-18 | allow volume up/down hotkeys to be repeated | Jonas Gutenschwager | 4 | -27/+32 | |
2023-01-16 | Address feedback | Feng Chen | 5 | -14/+62 | |
2023-01-15 | memory: fix watchpoint use when fastmem is enabled | Liam | 1 | -0/+4 | |
2023-01-14 | timing: wait for completion on unregister | Liam | 3 | -29/+28 | |
2023-01-14 | Be careful of mangled out of bounds read | Kelebek1 | 2 | -9/+9 | |
2023-01-14 | core: hid: Fix stick minimum range | german77 | 1 | -2/+10 | |
2023-01-14 | upsample: Fix coefficient format | Merry | 1 | -26/+26 | |
2023-01-14 | audio_core: Fix off-by-one error in upsampler | Merry | 1 | -33/+12 | |
2023-01-14 | Move demangle impl to cpp | Kelebek1 | 3 | -23/+36 | |
2023-01-14 | Add stacktrace symbol demangling | Kelebek1 | 3 | -15/+39 | |
2023-01-13 | Update settings.h | Matías Locatti | 1 | -0/+2 | |
2023-01-13 | CPP | Matías Locatti | 1 | -0/+8 | |
2023-01-13 | UI change | Matías Locatti | 1 | -0/+10 | |
2023-01-13 | 1.5X resolution scaler option | Matías Locatti | 3 | -5/+15 | |
2023-01-13 | debugger: add host fastmem pointer fetch command | Liam | 1 | -3/+23 | |
2023-01-12 | nvnflinger: correct swap interval handling | Liam | 2 | -5/+5 | |
2023-01-11 | yuzu: Read mouse wheel input | Narr the Reg | 3 | -1/+10 | |
2023-01-10 | qt: unlock during signal emission | Liam | 2 | -2/+21 | |
2023-01-10 | vulkan_common: fix indirect draw with count | Liam | 3 | -8/+15 | |
2023-01-10 | MoltenVK: restrict number of vertex attributes/bindings to 16 | TellowKrinkle | 1 | -10/+25 | |
2023-01-09 | qt: fix configuration weirdness on turbo | Liam | 1 | -2/+3 | |
2023-01-09 | macOS: Make Yuzu show up in the Launchpad Games folder (#9594) | UltraHDR | 1 | -0/+2 | |
https://developer.apple.com/documentation/bundleresources/information_property_list/lsapplicationcategorytype This makes it show up in the Launchpad Games folder | |||||
2023-01-09 | vulkan_device: refactor feature testing | Liam | 3 | -1173/+664 | |
2023-01-08 | renderer_vulkan: disable turbo by default | Liam | 1 | -1/+1 | |
2023-01-08 | VideoCore: Fix OGL cache invalidation. | Fernando Sahmkow | 2 | -0/+6 | |
2023-01-08 | Revert "Revert "k_page_group: synchronize"" | bunnei | 11 | -181/+322 | |
2023-01-07 | Revert "shader_recompiler: Align SSBO offsets to meet host requirements" | Liam | 4 | -12/+6 | |
This reverts commit 8804a4eb23e0c4f3e4bab03dee7c204bd38bf21e. | |||||
2023-01-07 | Revert "Vulkan, OpenGL: Hook up storage buffer alignment code" | Liam | 6 | -22/+3 | |
This reverts commit 9e2997c4b6456031622602002924617690e32a13. | |||||
2023-01-07 | TAS: Show all script lengths for multiplayer | MonsterDruide1 | 4 | -7/+38 | |
2023-01-07 | renderer_vulkan: pause turbo submissions on inactive queue | Liam | 5 | -0/+40 | |
2023-01-07 | Avoid OOB array access reading passthrough attr mask | Billy Laws | 1 | -1/+1 | |
YFC 1.5 extended the size of the varying mask used to hold passthrough attrs without considering this | |||||
2023-01-07 | vulkan_device: avoid attempt to access empty optional | Liam | 1 | -2/+6 | |
2023-01-07 | renderer_vulkan: disable clock boost on unvalidated devices | Liam | 3 | -1/+15 | |
2023-01-07 | qt: additional fixes for reentrant shutdown | Liam | 1 | -3/+7 | |
2023-01-06 | opengl: Sanitize antialiasing config | Narr the Reg | 1 | -1/+7 | |
2023-01-06 | video_core/vulkan: Fixed loading of Vulkan driver pipeline cache | Wollnashorn | 1 | -1/+2 | |
The header size of the Vulkan driver pipeline cache files was incorrectly in PipelineCache::LoadVulkanPipelineCache, for which the pipeline cache wasn't read correctly and got invalidated on each load. | |||||
2023-01-06 | MacroHLE: eliminate 2 rushed macros. | Fernando Sahmkow | 1 | -42/+0 | |
2023-01-06 | input_common: Create an update engine | Narr the Reg | 4 | -19/+37 | |
2023-01-06 | externals: update dynarmic, xbyak | Liam | 2 | -0/+8 | |
2023-01-05 | Run clang-format | Billy Laws | 6 | -24/+35 | |
2023-01-05 | shader_recompiler: Fix shuffle partitioning for >64 invoc-per-subgroup GPUs | Billy Laws | 1 | -30/+28 | |
The existing implementation only supports 64 invoc-per-subgroup GPUs, and misbehaves on adreno when invocations need to be split into 4 emulated subgroups. | |||||
2023-01-05 | Vulkan, OpenGL: Hook up geometry shader passthrough emulation | Billy Laws | 2 | -0/+2 | |
2023-01-05 | shader_recompiler: Add support for lowering geometry passthrough | Billy Laws | 2 | -40/+67 | |
Reuses most of the existing code for generating the gl_Layer passthrough. Fixes geometry in Nier: Automata on GPUs without HW passthrough support. | |||||
2023-01-05 | Vulkan, OpenGL: Hook up storage buffer alignment code | Billy Laws | 6 | -3/+21 | |
2023-01-05 | shader_recompiler: Align SSBO offsets to meet host requirements | Billy Laws | 4 | -6/+11 | |
We can take advantage of SSBO addresses being passed in a constant bufer to account for the extra alignment requirements in the shader itself. | |||||
2023-01-05 | shader_recompiler: SPIRV: Only enable int64 feature when supported | Billy Laws | 1 | -1/+1 | |
2023-01-05 | shader_recompiler: Add comparison operators to descriptor types | Billy Laws | 1 | -0/+12 | |
2023-01-05 | Vulkan: Add a workaround for input_position on Adreno drivers | Billy Laws | 5 | -11/+42 | |
Adreno drivers will crash compiling geometry shaders if the input position is not wrapped in a gl_in struct. | |||||
2023-01-05 | video_core/vulkan: Vulkan driver pipelines now contain cache version | Wollnashorn | 2 | -16/+28 | |
So that old cache can get deleted when the cache version changes and does not grow infinitely | |||||
2023-01-05 | video_core/vulkan: Driver pipeline cache will now be deleted with the shader cache | Wollnashorn | 2 | -1/+20 | |
2023-01-05 | config: Set the Vulkan driver pipeline cache option to be global | Wollnashorn | 2 | -0/+4 | |
2023-01-05 | video_core/vulkan: Added check if Vulkan pipeline path has been set | Wollnashorn | 1 | -1/+1 | |
2023-01-05 | config: Better wording for VK pipeline cache option and enable by default | Wollnashorn | 2 | -3/+3 | |
2023-01-05 | yuzu-cmd: Removed `use_vulkan_driver_pipeline_cache` from default_ini.h | Wollnashorn | 1 | -4/+0 | |
The addition of the use_vulkan_driver_pipeline_cache option into the default ini string literal caused the 16,384-byte limit of the MSVC compiler to be exceeded. | |||||
2023-01-05 | video_core/vulkan: Added `VkPipelineCache` to store Vulkan pipelines | Wollnashorn | 15 | -67/+253 | |
As an optional feature which can be enabled in the advanced graphics configuration, all pipelines that get built at the initial shader loading are stored in a VkPipelineCache object and are dumped to the disk. These vendor specific pipeline cache files are located at `/shader/GAME_ID/vulkan_pipelines.bin`. This feature was mainly added because of an issue with the AMD driver (see yuzu-emu#8507) causing invalidation of the cache files the driver builds automatically. | |||||
2023-01-05 | BufferBase: Don't ignore GPU pages. | Fernando Sahmkow | 8 | -23/+22 | |
2023-01-05 | Fermi2D: sync cache flushes | Fernando Sahmkow | 2 | -2/+5 | |
2023-01-05 | MemoryManager: use fastmem directly. | Fernando Sahmkow | 3 | -11/+34 | |
2023-01-05 | net: Silently translate ETIMEDOUT network error | MonsterDruide1 | 1 | -1/+5 | |
2023-01-05 | video_core: Cache GPU internal writes. | Fernando Sahmkow | 10 | -30/+185 | |
2023-01-05 | Vulkan: Fix drivers that don't support dynamic_state_2 up | Fernando Sahmkow | 2 | -8/+11 | |
2023-01-05 | video_core: Implement opengl/vulkan draw_texture | Feng Chen | 19 | -138/+291 | |
2023-01-05 | video_core: Implement maxwell3d draw texture method | Feng Chen | 7 | -1/+177 | |
2023-01-05 | tests: update catch2 to 3.0.1 | Alexandre Bouvier | 15 | -23/+14 | |
2023-01-05 | common: add setting for renderer clock workaround | Liam | 8 | -1/+32 | |
2023-01-05 | vulkan: implement 'turbo mode' clock booster | Liam | 8 | -2/+272 | |
2023-01-05 | renderer_vulkan: implement fallback path for null descriptors | Liam | 3 | -0/+19 | |
2023-01-04 | yuzu-ui: Add setting for disabling macro HLE | Fernando Sahmkow | 6 | -5/+26 | |
2023-01-04 | Video_core: Address feedback | Fernando Sahmkow | 20 | -170/+346 | |
2023-01-04 | Texture Cache: Implement async texture downloads. | Fernando Sahmkow | 5 | -35/+91 | |
2023-01-04 | Vulkan: Update blacklisting to latest driver versions. | Fernando Sahmkow | 1 | -5/+12 | |
2023-01-03 | ShaderCompiler: Inline driver specific constants. | Fernando Sahmkow | 5 | -3/+39 | |
2023-01-03 | Vulkan: rework stencil tracking. | Fernando Sahmkow | 4 | -36/+169 | |
2023-01-03 | TAS: Immediately switch stick to TAS on input | MonsterDruide1 | 1 | -9/+11 | |
Co-Authored-By: Narr the Reg <5944268+german77@users.noreply.github.com> | |||||
2023-01-02 | cmake: move find-modules to root cmake dir | Alexandre Bouvier | 3 | -5/+0 | |
2023-01-02 | service: nifm: Initialize request state | german77 | 1 | -0/+1 | |
2023-01-02 | service: nifm: Match documentation names | german77 | 1 | -31/+56 | |
2023-01-01 | vulkan_common: blacklist radv from extended_dynamic_state2 on drivers before 22.3.1 | Liam | 2 | -2/+14 | |
2023-01-01 | video_core: fix build | Liam | 4 | -3/+38 | |
2023-01-01 | MacroHLE: Final cleanup and fixes. | Fernando Sahmkow | 14 | -128/+94 | |
2023-01-01 | Rasterizer: Setup skeleton for Host Conditional rendering | Fernando Sahmkow | 6 | -10/+53 | |
2023-01-01 | RasterizerMemory: Add filtering for flushing/invalidation operations. | Fernando Sahmkow | 14 | -93/+186 | |
2023-01-01 | Vulkan: Allow stagging buffer deferrals. | Fernando Sahmkow | 2 | -21/+56 | |
2023-01-01 | MacroHLE: Add OpenGL Support | Fernando Sahmkow | 6 | -39/+107 | |
2023-01-01 | Vulkan: Add other additional pipeline specs | Fernando Sahmkow | 1 | -1/+17 | |
2023-01-01 | Vulkan: Implement Dynamic State 3 | Fernando Sahmkow | 13 | -105/+313 | |
2023-01-01 | Vulkan Implement Dynamic State 2 LogicOp and PatchVertices | Fernando Sahmkow | 12 | -27/+75 | |
2023-01-01 | Vulkan: Implement Dynamic States 2 | Fernando Sahmkow | 13 | -66/+315 | |
2023-01-01 | DMAPusher: Improve collection of non executing methods | Fernando Sahmkow | 13 | -2/+181 | |
2023-01-01 | Revert Buffer cache changes and setup additional macros. | Fernando Sahmkow | 7 | -128/+179 | |
2023-01-01 | MacroHLE: Reduce massive calculations on sizing estimation. | Fernando Sahmkow | 9 | -95/+238 | |
2023-01-01 | MacroHLE: Add HLE replacement for base vertex and base instance. | Fernando Sahmkow | 22 | -70/+265 | |
2023-01-01 | MacroHLE: Add Index Buffer size estimation. | Fernando Sahmkow | 5 | -10/+74 | |
2023-01-01 | MacroHLE: Refactor MacroHLE system. | Fernando Sahmkow | 11 | -121/+420 | |
2023-01-01 | MacroHLE: Implement DrawIndexedIndirect & DrawArraysIndirect. | Fernando Sahmkow | 16 | -72/+252 | |
2023-01-01 | MacroHLE: Add MultidrawIndirect HLE Macro. | Fernando Sahmkow | 13 | -47/+169 | |
2023-01-01 | TAS: Record sanitized instead of raw stick inputs | MonsterDruide1 | 1 | -5/+5 | |
Co-Authored-By: Narr the Reg <5944268+german77@users.noreply.github.com> | |||||
2023-01-01 | vfs: Replace cstr concat with char concat | Merry | 1 | -3/+3 | |
2023-01-01 | vulkan_common: unify VK_EXT_debug_utils and selection of validation layer | Liam | 3 | -11/+10 | |
2023-01-01 | host_memory: Use transparent huge pages where available | Merry | 1 | -0/+15 | |
2023-01-01 | host_memory: Allocate virtual_base with MAP_NORESERVE | Merry | 1 | -2/+2 | |
Specify that we do not require swap to be reserved for this address range; allow overcommitting. | |||||
2022-12-30 | settings: comment language blocklist columns | Colin Kinloch | 1 | -7/+13 | |
2022-12-30 | core: hid: emulated_console: Avoid a crash if frontend does not configure touch_from_button_maps. | bunnei | 1 | -0/+5 | |
2022-12-30 | config: Save multiplayer settings only globally | Wollnashorn | 1 | -2/+0 | |
Saved multiplayer settings like the nickname, remote address, etc. were reset everytime a game was booted up and the game-specific config files were loaded, as these values will never be set. | |||||
2022-12-29 | settings: added regon/language warning bounds check | Colin Kinloch | 1 | -1/+1 | |
2022-12-29 | Revert "k_page_group: synchronize" | gidoly | 11 | -322/+181 | |
2022-12-29 | hle_ipc: Use thread_local ReadBuffer | ameerj | 1 | -4/+14 | |
2022-12-29 | hle_ipc: Rename ReadBufferSpan to ReadBuffer | ameerj | 33 | -97/+97 | |
2022-12-29 | hle_ipc: Rename ReadBuffer to ReadBufferCopy | ameerj | 3 | -4/+6 | |
Indicates explicitly that a copy is occurring | |||||
2022-12-29 | bsd: Use std::span for read payloads | ameerj | 6 | -36/+38 | |
Allows the use of HLERequestContext::ReadBufferSpan | |||||
2022-12-29 | nvdrv: Use std::span for inputs | ameerj | 24 | -211/+209 | |
Allows the use of HLERequestContext::ReadBufferSpan | |||||
2022-12-29 | hidbus: Use ReadBufferSpan | ameerj | 11 | -12/+16 | |
2022-12-28 | cmake: make cubeb and SDL2 optional | Liam | 1 | -6/+13 | |
2022-12-28 | cmake: make libusb optional | Liam | 2 | -7/+32 | |
2022-12-28 | cmake: make room server optional | Liam | 1 | -1/+4 | |
2022-12-28 | settings: warn on invalid regon/language combinations | Colin Kinloch | 2 | -1/+41 | |
2022-12-26 | tests: add missing header | Alexandre Bouvier | 1 | -0/+1 | |
<cstring> is needed for std::memcpy | |||||
2022-12-26 | video_core: Implement other missing vulkan topology | FengChen | 1 | -3/+16 | |
2022-12-26 | video_core: Implement vulkan QuadStrip topology | FengChen | 8 | -122/+229 | |
2022-12-25 | nvflinger: Split Parcel class into InputParcel and OutputParcel | ameerj | 5 | -48/+53 | |
The usages of the Parcel class were already unique to either Read or Write operations. Avoids needing a vector of the input payload for the InputParcel use-case, instead it can remain as a span. | |||||
2022-12-25 | service: Use ReadBufferSpan where it is trivial to do so | ameerj | 31 | -77/+78 | |
2022-12-25 | TAS: Increase accuracy of Stick inputs | MonsterDruide1 | 1 | -0/+7 | |
2022-12-25 | texture_cache: Use Common::ScratchBuffer for swizzle buffers | ameerj | 4 | -10/+12 | |
2022-12-25 | texture_cache: Use pre-allocated buffer for texture downloads | ameerj | 3 | -9/+14 | |
2022-12-25 | texture_cache: Use pre-allocated buffer for texture uploads | ameerj | 4 | -13/+28 | |
2022-12-25 | k_page_table: remove HACK_OpenPages/ClosePages | Liam | 3 | -58/+54 | |
2022-12-25 | fsp_srv: Use ReadBufferSpan | ameerj | 3 | -19/+17 | |
2022-12-25 | hle_ipc: Add ReadBufferSpan function | ameerj | 2 | -0/+22 | |
Returns a std::span to the buffer address, rather than create a copy of the memory into a std::vector | |||||
2022-12-25 | k_page_group: synchronize | Liam | 11 | -125/+270 | |
2022-12-24 | qt: prevent reentrant shutdown | Liam | 2 | -5/+12 | |
2022-12-24 | qt: fix 'Pause' menu item (#9497) | liamwhite | 1 | -1/+1 | |
2022-12-24 | Disable automatically opening the console on windows yuzu-cmd builds (#9485) | Chris Oboe | 2 | -0/+16 | |
* don't automatically open the console on windows build of yuzu-cmd * fix formatting | |||||
2022-12-24 | qt: fix uninitialized memory usage | Liam | 1 | -1/+1 | |
2022-12-24 | yuzu: Automatically refresh device list | german77 | 3 | -23/+11 | |
2022-12-23 | kernel: workaround static shared memory initialization | Liam | 3 | -58/+62 | |
2022-12-22 | time: add LockFreeAtomicType | Liam | 3 | -40/+65 | |
2022-12-22 | qt: exit properly on guest-initiated close | Liam | 2 | -1/+9 | |
2022-12-22 | qt: use main window as close overlay parent | Liam | 2 | -4/+4 | |
2022-12-20 | qt: continue event loop during game close | Liam | 4 | -14/+64 | |
2022-12-20 | scratch_buffer: Explicitly defing resize and resize_destructive functions | ameerj | 7 | -19/+108 | |
resize keeps previous data intact when the buffer grows resize_destructive destroys the previous data when the buffer grows | |||||
2022-12-20 | tests: Add ScratchBuffer tests | ameerj | 3 | -5/+137 | |
2022-12-20 | dma_pusher: Rework command_headers usage | ameerj | 2 | -9/+16 | |
Uses ScratchBuffer and avoids overwriting the command_headers buffer with the prefetch_command_list | |||||
2022-12-20 | buffer_cache: Use Common::ScratchBuffer for ImmediateBuffer usage | ameerj | 1 | -7/+4 | |
2022-12-20 | video_core: Add usages of ScratchBuffer | ameerj | 4 | -33/+21 | |
2022-12-20 | common: Add ScratchBuffer class | ameerj | 2 | -0/+75 | |
This class creates a default initialized heap allocated buffer for cases where value initializing members during allocation or resize is redundant. | |||||
2022-12-20 | common: add make_unique_for_overwrite | ameerj | 2 | -0/+26 | |
2022-12-19 | externals: update Vulkan-Headers to v1.3.238 | Jan Beich | 1 | -0/+12 | |
2022-12-19 | overlay_dialog: Avoid starting the input thread if non-interactive | Morph | 1 | -1/+3 | |
2022-12-19 | overlay_dialog: Hide button dialog box when both buttons are hidden | Morph | 1 | -0/+8 | |
This allows for the creation of a non-interactive dialog overlay to display system messages. | |||||
2022-12-19 | kernel: remove TimeManager | Liam | 11 | -117/+33 | |
2022-12-18 | kernel: add KHardwareTimer | Liam | 6 | -6/+271 | |
2022-12-18 | input_common: Cleanup project | german77 | 2 | -206/+83 | |
2022-12-18 | service: nfc: Silence ListDevices | german77 | 2 | -2/+2 | |
2022-12-18 | Use execlp instead of execl to avoid failure | Marco Rubin | 1 | -1/+1 | |
2022-12-18 | yuzu: Remember last selected directory | german77 | 1 | -0/+3 | |
2022-12-18 | bootmanager: Use proper camera size | german77 | 3 | -6/+13 | |
2022-12-18 | bootmanager: Encapsulate all QCamera code | german77 | 2 | -5/+7 | |
2022-12-18 | yuzu: fix device name setting | german77 | 1 | -3/+2 | |
2022-12-18 | Enable compiler optimizations and enforce x86-64-v2 on GCC/Clang (#9442) | Matías Locatti | 1 | -2/+2 | |
* Testing LTO (#4) * Testing LTO * clang * linux * Added the rest of Blinkhawk's optimizations * Unlikely asserts * Removing LTO from Linux builds - GCC * Removing LTO from Linux builds - Clang | |||||
2022-12-17 | qt: use _exit instead of exit on SIGINT | Liam | 1 | -1/+1 | |
2022-12-17 | EmuThread: refactor | Liam | 6 | -172/+64 | |
2022-12-17 | qt: avoid setting WA_DontCreateNativeAncestors on all platforms | Liam | 1 | -1/+5 | |
2022-12-17 | input_common: Add virtual gamepad | german77 | 7 | -0/+274 | |
2022-12-17 | camera: Use pre-allocated vector for camera data | ameerj | 4 | -9/+12 | |
And avoid an unnecessary copy | |||||
2022-12-16 | Remove unimplemented transform feedback geometry spam, it should be implemented | Kelebek1 | 1 | -2/+1 | |
2022-12-16 | Signal buffer event on audio in/out system stop, and force remove all registered audio buffers | Kelebek1 | 5 | -7/+26 | |
2022-12-16 | qt: handle wayland-egl platform name | Liam | 2 | -3/+7 | |
2022-12-16 | hle_ipc: Refactor ReadBuffer to set buffer size upon initialization | ameerj | 1 | -8/+6 | |
Initializing the vector size during initialization is more efficient than a later call to resize() | |||||
2022-12-16 | hle_ipc: Reserve vectors before populating | ameerj | 1 | -0/+8 | |
2022-12-15 | kernel: svc: Fix duplicated InfoType enum | Narr the Reg | 1 | -90/+47 | |
2022-12-15 | kernel: process: Implement GetFreeThreadCount | Narr the Reg | 3 | -1/+28 | |
Used by Just Dance® 2023 Edition | |||||
2022-12-14 | Revert "hle: service: audio: Use default service thread." | bunnei | 3 | -12/+18 | |
2022-12-14 | Vulkan: Add support for VK_EXT_depth_clip_control. | FernandoS27 | 8 | -7/+52 | |
2022-12-14 | Set: Allow setting device nickname | Chloe Marcec | 9 | -2/+42 | |
2022-12-14 | main: Address review feedback | lat9nq | 1 | -19/+33 | |
Moves icon path to ~/.local/share/icons, though I'm opting to avoid using the game title for the icon and desktop entry name as that would cause filenames such as "yuzu-cadence-of-hyrule-crypt-of-the-necrodancer-featuring-the-legend-of-zelda-demo.desktop". | |||||
2022-12-14 | vulkan_common: declare storageBuffer8BitAccess | Liam | 1 | -1/+2 | |
2022-12-14 | spirv_emit_context: declare GroupNonUniform capability for SubgroupLocalInvocationId | Liam | 1 | -0/+2 | |
2022-12-13 | yuzu qt: Create shortcuts on Linux | lat9nq | 5 | -0/+196 | |
This creates a Desktop Entry file and a PNG icon for the entry when the user right-clicks a game and selects "Create Shortcut -> Create {Application,Desktop} Shortcut". This uses the current executable's path to create the shortcut. yuzu qt: Add more error checking and OS gating for shortcuts main: Remove FreeBSD gating for shortcuts I'm not going to test FreeBSD, so I don't know if they follow Freedesktop.org or not. I just have to let someone else verify that it works there and let them enable it. main: Move shortcut function to its own function This function should really be in a common library, at least among frontends. main: Remove image manip references main: Fix difference in MinGW and native GCC versions main: Fix negation in creat shortcut Addresses review comment Co-authored-by: Jan Beich <jbeich@FreeBSD.org> main: Re-enable freedesktop shorcuts for FreeBSD | |||||
2022-12-13 | gl_device: Use a more robust way to use strict context mode | Alexander Orzechowski | 6 | -8/+17 | |
Instead of checking a environment variable which may not actually exist or is just wrong, ask QT if it's running on the wayland platform. | |||||
2022-12-13 | OpenGL: Check for threading support | Alexander Orzechowski | 1 | -0/+6 | |
We need this. | |||||
2022-12-13 | wayland: Always use exclusive fullscreen | Alexander Orzechowski | 2 | -4/+10 | |
Wayland does not allow clients to choose their own size and position on the screen. The concept of fullscreening an application by sizing it to the screen and removing decorations does not exist. Use exclusive fullscreen instead. | |||||
2022-12-13 | RenderWidget: Set WA_DontCreateNativeAncestors | Alexander Orzechowski | 1 | -0/+1 | |
Some windowing systems like wayland are designed to show hardware accellerated surfaces as subsurfaces and not native windows. | |||||
2022-12-13 | emu_window_sdl2: Respect hidpi | Alexander Orzechowski | 1 | -1/+1 | |
Use SDL_GL_GetDrawableSize instead of SDL_GetWindowSize which will return the true size our swapchain needs to be in even for hidpi displays. | |||||
2022-12-13 | video_core/vulkan: Explicity check swapchain size when deciding to recreate | Alexander Orzechowski | 3 | -15/+28 | |
Vulkan for whatever reason does not return VK_ERROR_OUT_OF_DATE_KHR when the swapchain is the wrong size. Explicity make sure the size is indeed up to date to workaround this. | |||||
2022-12-13 | renderer_opengl: refactor context acquire | Liam | 6 | -38/+62 | |
2022-12-13 | emu_thread: properly force shutdown for unresponsive guest programs | Liam | 2 | -12/+5 | |
2022-12-13 | let games gracefully exit | Gus Caplan | 3 | -3/+17 | |
2022-12-13 | Fix validation errors on less compatible Intel GPU | yzct12345 | 5 | -2/+34 | |
2022-12-13 | yuzu: Make unlimited frame rate non persistent between game boots | Narr the Reg | 2 | -2/+3 | |
2022-12-12 | input_common: Filter SDL GUID | Narr the Reg | 1 | -0/+2 | |
2022-12-11 | memory: correct semantics of data cache management operations | Liam | 4 | -102/+15 | |
2022-12-11 | video_core: fix off by one in anisotropic filtering amount | Liam | 1 | -1/+2 | |
2022-12-10 | cmake: make OpenGL loader optional | Liam | 1 | -1/+1 | |
Co-authored-by: liushuyu <liushuyu@users.noreply.github.com> | |||||
2022-12-10 | audio_core: remove explicitly defaulted and implicitly deleted constructors | Liam | 2 | -2/+0 | |
2022-12-10 | memory: remove DEBUG_ASSERT pointer test | Liam | 1 | -2/+0 | |
2022-12-09 | Remove the lock entirely as per PR discussion | Salvage | 1 | -3/+0 | |
Correctly unlock mutex before its destruction As per https://en.cppreference.com/w/cpp/thread/mutex/~mutex destroying a locked mutex is undefined behavior and MSVC++ decides to throw in this case Swap out unique for scoped lock and readd comment | |||||
2022-12-09 | Fix compilation error | Salvage | 1 | -1/+1 | |
2022-12-08 | video_core: Integrate SMAA | Liam | 24 | -28/+13894 | |
Co-authored-by: goldenx86 <goldenx86@users.noreply.github.com> Co-authored-by: BreadFish64 <breadfish64@users.noreply.github.com> | |||||
2022-12-08 | video_core: Add vertex_array_instance_* sbubbed called warning | FengChen | 1 | -0/+5 | |
2022-12-08 | video_core: The draw manager manages whether Clear is required. | FengChen | 3 | -10/+9 | |
2022-12-08 | video_core: Adjust topology update logic | FengChen | 2 | -23/+23 | |
2022-12-08 | video_core: Implement maxwell3d draw manager and split draw logic | Feng Chen | 12 | -267/+341 | |
2022-12-06 | general: improve handling of system startup failure | Liam | 5 | -21/+27 | |
2022-12-06 | configure_graphics: Make SPIRV backend string translatable | Lioncash | 1 | -1/+1 | |
The parenthetical needs to be translatable, like with GLASM | |||||
2022-12-06 | cmake: prefer system libusb | Alexandre Bouvier | 1 | -3/+1 | |
2022-12-06 | vulkan_common: further initialization tweaks | Liam | 2 | -1/+9 | |
2022-12-06 | reporter: Pass by const reference where applicable | Lioncash | 2 | -19/+20 | |
Same behavior, but without memory churn. | |||||
2022-12-06 | reporter: Eliminate undefined behavior in SaveErrorReport | Lioncash | 2 | -6/+6 | |
The optionals are unconditionally dereferenced when setting the custom error text, and in a few cases this function is called using the default value of the optionals. This means we'd be dereferencing uninitialized storage. Since they're used unconditionally, we can use value_or to set a default when storage is uninitialized. | |||||
2022-12-06 | cmake: use sdl2 imported target | Alexandre Bouvier | 4 | -22/+4 | |
2022-12-06 | applets/controller: Use aliases for callbacks | Lioncash | 4 | -6/+8 | |
2022-12-06 | applets/error: Use aliases for callbacks | Lioncash | 4 | -16/+18 | |
2022-12-06 | applets/mii_edit: Use aliases for callbacks | Lioncash | 2 | -3/+5 | |
2022-12-06 | applets/profile_select: Use aliases for callbacks | Lioncash | 4 | -8/+8 | |
Deduplicates callback definitions and situates it in one place. | |||||
2022-12-06 | applets/web_browser: Use aliases for callbacks | Lioncash | 4 | -32/+27 | |
Deduplicates a lot of long callback declarations | |||||
2022-12-06 | applets/software_keyboard: Use aliases for callbacks | Lioncash | 4 | -35/+23 | |
Deduplicates really long std::function declarations to make the interface nicer to read. | |||||
2022-12-06 | emulated_controller: Remove unused parameter in GetMappedDevices() | Lioncash | 3 | -5/+3 | |
This isn't used, so it can be removed to make the function a little nicer. | |||||
2022-12-06 | emulated_controller: Use std::move() in GetMappedDevices() | Lioncash | 1 | -6/+6 | |
Avoids churning allocations in a loop. | |||||
2022-12-06 | emulated_console: Amend cast in SetTouch() | Lioncash | 1 | -1/+1 | |
id is an int value, not a u32. | |||||
2022-12-06 | emulated_console: std::move() ParamPackages and callbacks where applicable | Lioncash | 1 | -4/+4 | |
2022-12-05 | kernel/k_shared_memory: Ensure device_memory is always initialized | Lioncash | 1 | -1/+1 | |
2022-12-05 | kernel/k_memory_block: Ensure members are always initialized | Lioncash | 2 | -22/+20 | |
2022-12-05 | kernel/physical_core: Ensure is_interrupted is always initialized | Lioncash | 1 | -1/+1 | |
2022-12-05 | kernel/thread: Ensure stack_top and argument are always initialized | Lioncash | 1 | -2/+2 | |
2022-12-05 | kernel/kernel: Ensure shutdown threads are always initialized | Lioncash | 1 | -1/+1 | |
2022-12-05 | Vulkan: Implement Alpha coverage | Fernando Sahmkow | 3 | -2/+6 | |
2022-12-05 | input_common: Allow mifare files | Narr the Reg | 2 | -16/+29 | |
2022-12-04 | service_thread: fix uninitialized memory usage | Liam | 1 | -7/+7 | |
2022-12-04 | cmake: prefer system libraries | Alexandre Bouvier | 9 | -27/+16 | |
2022-12-04 | yuzu-cmd: link SDL2 correctly | Liam | 1 | -1/+1 | |
2022-12-04 | vulkan_common: add feature test for shaderDrawParameters | Liam | 1 | -1/+13 | |
2022-12-04 | vulkan_common: clean up extension usage | Liam | 12 | -102/+105 | |
2022-12-04 | vulkan_common: correct usage of timeline semaphore fallbacks | Liam | 1 | -2/+1 | |
2022-12-04 | vulkan_common: ensure all mandatory features are tested in feature report | Liam | 1 | -1/+24 | |
2022-12-04 | vulkan_common: unsuffix 16-bit storage feature test structure | Liam | 1 | -2/+2 | |
2022-12-04 | vulkan_common: unsuffix timeline semaphore feature test structure | Liam | 1 | -2/+2 | |
2022-12-04 | vulkan_common: add logicOp to feature report | Liam | 1 | -1/+2 | |
2022-12-04 | vulkan_common: promote host query reset usage to core | Liam | 4 | -11/+12 | |
2022-12-04 | vulkan_common: promote descriptor update template usage to core | Liam | 8 | -37/+36 | |
2022-12-04 | vulkan_common: promote timeline semaphore usage to core | Liam | 3 | -9/+15 | |
2022-12-04 | externals: update dynarmic, SDL2 | Liam | 5 | -21/+23 | |
2022-12-02 | core: add option to break on unmapped access | Liam | 9 | -6/+69 | |
2022-12-02 | service: nfc: Implement mifare service | Narr the Reg | 9 | -36/+600 | |
2022-12-01 | shader_recompiler: add gl_Layer translation GS for older hardware | Liam | 9 | -6/+230 | |
2022-12-01 | video_core: Fine tuning the index drawing judgment logic | Feng Chen | 2 | -27/+22 | |
2022-12-01 | vulkan_common: quiet some validation errors | Liam | 2 | -1/+3 | |
2022-12-01 | CMake: Consolidate common PCH headers | ameerj | 14 | -84/+29 | |
2022-12-01 | string_util: Fix Mingw compile error | ameerj | 1 | -2/+2 | |
Co-Authored-By: liamwhite <9658600+liamwhite@users.noreply.github.com> | |||||
2022-11-30 | audio_core: sink_stream: Hold the suspend lock when process is stalled. | bunnei | 2 | -7/+9 | |
- Prevents us from clashing with other callers trying to un/stall. | |||||
2022-11-30 | CMake: Disable PCH on MSVC + Buildcache configs | ameerj | 1 | -4/+0 | |
2022-11-30 | Respect render mode override | Kelebek1 | 1 | -29/+39 | |
2022-11-30 | CMake: Use precompiled headers | ameerj | 25 | -1/+214 | |
2022-11-30 | value.h: remove recursive include | ameerj | 1 | -1/+0 | |
2022-11-29 | host1x/syncpoint_manager: Eliminate unnecessary std::function construction | Lioncash | 1 | -4/+2 | |
We can just pass the function object through, and if it's a valid function, then it will automatically be converted. | |||||
2022-11-29 | host1x/syncpoint_manager: Pass DeregisterAction() handle as const-ref | Lioncash | 2 | -6/+6 | |
The handle is only compared against and not modified in any way, so we can pass it by const reference. This also allows us to mark the respective parameters for DeregisterGuestAction() and DeregisterHostAction() as const references as well. | |||||
2022-11-29 | maxwell_3d: Mark shifted value as unsigned | Lioncash | 1 | -3/+3 | |
Otherwise this is technically creating a signed int result that gets converted. Just a consistency change. While we're in the area, we can mark Samples() as const. | |||||
2022-11-29 | engines: Remove unnecessary casts | Lioncash | 10 | -85/+57 | |
In a few cases we have some casts that can be trivially removed. | |||||
2022-11-29 | CMake: Directly link to SDL2-static when appropriate | lat9nq | 3 | -3/+15 | |
Trying to be lazy and alias SDL2 to SDL2-static causes issues in later versions of CMake. Just use the same condition to tell which one to use. | |||||
2022-11-29 | service: nifm: Update stubs for Submit/GetRequestState/GetResult | Morph | 1 | -7/+34 | |
2022-11-29 | video_core/surface: Eliminate casts in GetFormatType() | Lioncash | 1 | -11/+4 | |
We can just compare directly and get rid of verbose casting. | |||||
2022-11-29 | video_core: add null backend | Liam | 20 | -28/+383 | |
2022-11-29 | producer_listener: Add virtual destructor to IProducerListener | Lioncash | 1 | -0/+1 | |
Several member variables are shared_ptr's to this base class. Even though producer listeners are still unimplemented, this ensures we always have consistent deletion behavior once this ends up being used polymorphically. | |||||
2022-11-29 | configure_input_player: Fix profile saving when using handheld controller type | ameerj | 1 | -1/+7 | |
2022-11-29 | config: Custom profile detection fixes | ameerj | 6 | -64/+108 | |
Also only reads/writes applicable configs for the custom profiles. | |||||
2022-11-29 | configure_input_per_game: Allow configuring all 8 players | ameerj | 3 | -54/+113 | |
2022-11-29 | buffer_item_consumer: Pass fence by const-ref in ReleaseBuffer() | Lioncash | 3 | -4/+3 | |
This isn't directly modified. Also allows rvalues to be used with it. | |||||
2022-11-29 | buffer_queue_consumer: std::move std::shared_ptr in Connect() | Lioncash | 1 | -1/+1 | |
Avoids an unnecessary reference count increment and decrement | |||||
2022-11-29 | consumer_base: Pass shared_ptr by const reference | Lioncash | 2 | -6/+6 | |
Avoids churning atomic reference count increments and decrements. | |||||
2022-11-29 | consumer_base: Remove redundant virtual | Lioncash | 1 | -5/+5 | |
override already serves this purpose | |||||
2022-11-28 | syncpoint_manager: Mark IsSyncpointAllocated() as const | Lioncash | 2 | -3/+3 | |
This doesn't modify class state at all. | |||||
2022-11-28 | syncpoint_manager: Reduce number of bounds checks | Lioncash | 1 | -14/+28 | |
The only time we need to check bounds is on the first access. | |||||
2022-11-28 | nvdrv: Simplify builder declarations | Lioncash | 1 | -26/+18 | |
We can just use auto here. If one of these ever happens to not be derived from nvdevice, then this will cause a compilation error. We can also move the devices into the collection to get rid of an unnecessary atomic reference count increment and decrement. | |||||
2022-11-28 | common/cache_management: Amend header includes | Lioncash | 2 | -4/+3 | |
Narrows the include in the header to <cstddef>, since that's what houses size_t's definition, meanwhile the <cstdint> include can be moved into the cpp file. | |||||
2022-11-28 | input_common/helpers: Mark analog property structs members as static constexpr | Lioncash | 2 | -2/+18 | |
These are const with no dependency on any other data members, so we can make these static constexpr to reduce the overall object size. | |||||
2022-11-28 | core/hid/emulated_controller: Use ranges version of transform | Lioncash | 1 | -19/+15 | |
Makes the transform calls much nicer to read. | |||||
2022-11-28 | common/input: Add helpers functions for creating input and output devices | Lioncash | 7 | -90/+102 | |
Avoids the redundancy of needing to explictly specify the common namespace and the type. | |||||
2022-11-28 | common/input: Pass ParamPackage by const reference in CreateDevice | Lioncash | 1 | -3/+3 | |
This was previously being passed by value, which was unnecessary and created more allocations than necessary. | |||||
2022-11-28 | yuzu/main: Merge variable declaration into ifdef | Lioncash | 1 | -2/+1 | |
This is only used in the non-Windows path. | |||||
2022-11-28 | yuzu-cmd: Fix default config value | german77 | 1 | -1/+5 | |
2022-11-27 | Vulkan: update initialization | Liam | 13 | -101/+191 | |
Co-authored-by: bylaws <bylaws@users.noreply.github.com> | |||||
2022-11-27 | input_common: Pump sdl events from main thread | german77 | 6 | -10/+35 | |
2022-11-27 | yuzu-cmd: Fix input callback crash on close | german77 | 3 | -0/+13 | |
2022-11-27 | crypto: use user-provided keys whenever possible | Valeri | 1 | -4/+4 | |
Solves an issue where autogenerated title keys would take precedence over those provided by user. | |||||
2022-11-27 | yuzu-cmd: Update configuration file description | german77 | 1 | -3/+26 | |
2022-11-26 | core: Use atomic instead of a lock to protect is_paused. | bunnei | 1 | -6/+5 | |
- This allows us to call IsPaused() elsewhere if we are holding the suspend lock. | |||||
2022-11-26 | Oops | Matías Locatti | 1 | -1/+1 | |
2022-11-26 | Replace GLSL as the default OpenGL shader backend | Matías Locatti | 1 | -1/+1 | |
GLASM is not very compatible with the latest games, and too many people have the special superpower to break their Vulkan support. | |||||
2022-11-26 | Sharpness instead of Sharpening | Matías Locatti | 1 | -3/+3 | |
2022-11-26 | configure_graphics: Implement custom FSR Sharpening setting | lat9nq | 2 | -61/+128 | |
2022-11-26 | settings: Reset FSR sharpening global state with the others | lat9nq | 1 | -0/+1 | |
2022-11-24 | Fermi2D: Cleanup and address feedback. | Fernando Sahmkow | 3 | -8/+150 | |
2022-11-24 | GPU: Fix buffer cache issue, engine upload not inlining memory in multiline and pessismistic invalidation. | Fernando Sahmkow | 4 | -15/+9 | |
2022-11-24 | GPU: Implement additional render target formats. | Fernando Sahmkow | 7 | -12/+126 | |
2022-11-24 | MaxwellDMA: Implement BlockLinear to BlockLinear copies. | Fernando Sahmkow | 2 | -1/+69 | |
2022-11-24 | Fermi2D: Implement Bilinear software filtering and address feedback. | Fernando Sahmkow | 7 | -116/+180 | |
2022-11-24 | Fermi2D: Rework blit engine and add a software blitter. | Fernando Sahmkow | 12 | -18/+1431 | |
2022-11-24 | CMake: rework for Qt6 support | Kyle Kienapfel | 3 | -14/+30 | |
This PR rearranges things in the CMake system to make compiling with Qt6 possible 1. Camera API has changed in Qt6, so the camera feature is disabled 2. A previous fix involving QLocale is now version gated. 3. QRegExp replaced with QRegularExpression, see #5343 4. Qt6_LOCATION option added to specify a location to search for Qt6 (see examples below) 5. windeployqt is used to copy Qt6 files into the build directory on Windows Notes for Arch Linux Arch install happened to have qt6-base qt6-declarative qt6-translations installed mkdir build && cd build cmake .. -GNinja -DYUZU_USE_BUNDLED_VCPKG=ON -DYUZU_TESTS=OFF -DENABLE_QT6=YES -DYUZU_USE_BUNDLED_QT=NO Windows (MSVC) Qt wants users to download precompiled libraries via an online installer, it is worth noting that the GPL/LGPL takes precendence over any ... In the Qt Maintenance tool, under a version, such as 6.3.1 Select "MSVC 2019 64-bit" Under Additional Libraries Qt Multimedia may be of use for Camera support For the Web Applet I had to select the following: PDF Positioning WebChannel WebEngine mkdir build && cd build cmake -G "Visual Studio 16 2019" -DQt6_LOCATION=C:/Qt/6.4.0/msvc2019_64/ \ -DENABLE_COMPATIBILITY_LIST_DOWNLOAD=YES -DYUZU_USE_BUNDLED_QT=NO \ -DENABLE_QT_TRANSLATION=YES -DENABLE_QT6=YES .. Some numbers for reference (msvc2019_64) Qt5 (slimmed down) 508 MB Qt5.15.2 all in 929 MB Qt6.3.1 1.71 GB Qt6.3.2 1.73 GB Qt6.4.0-beta3 1.83 GB Qt6.4.0 1.67 GB | |||||
2022-11-24 | FSR Sharpening Slider part 1 - only a global slider | Matías Locatti | 8 | -1/+132 | |
2022-11-24 | startup_checks: Use fmt::print, fix exec error handling | lat9nq | 1 | -21/+21 | |
Uses fmt::print opposed to std::fprintf for error printing. Call exit instead of returning to caller to prevent a like issue the previous commit was trying to solve. Removes unneeded comment. Co-authored-by: liamwhite <liamwhite@users.noreply.github.com> Co-authored-by: Lioncash <mathew1800@gmail.com> | |||||
2022-11-24 | startup_checks: Use Windows flow for *nix | lat9nq | 2 | -9/+51 | |
Spawns a child using fork and exec as opposed to fork alone. Workaround for the macos file manager complaining about not supporting fork without exec. Control flow for *nix is now roughly the same as for Windows. | |||||
2022-11-24 | maxwell_to_vk: Add R16_SINT | Morph | 1 | -1/+1 | |
This was somehow missed when the format was added to GL | |||||
2022-11-24 | maxwell_to_vk: Fix format usage bits | Morph | 1 | -2/+2 | |
- VK_FORMAT_B8G8R8A8_UNORM supports the STORAGE_IMAGE_BIT - VK_FORMAT_R4G4B4A4_UNORM_PACK16 does not support the COLOR_ATTACHMENT_BIT | |||||
2022-11-23 | service: Make use of buffer element count helpers | Lioncash | 12 | -47/+41 | |
2022-11-23 | hle_ipc: Add helper functions for getting number of buffer elements | Lioncash | 1 | -0/+12 | |
2022-11-23 | hle_ipc: Mark relevant member functions as [[nodiscard]] | Lioncash | 1 | -25/+25 | |
Will allow the compiler to complain about cases where ignoring the return value would be a bug. | |||||
2022-11-23 | Qt: assign menuRole properties for actions | Liam | 1 | -0/+9 | |
2022-11-23 | general: fix compile for Apple Clang | Liam | 78 | -37/+949 | |
2022-11-22 | k_handle_table: Remove cast to void* in GetObjectForIpc | Lioncash | 2 | -15/+18 | |
This was used to get around the KProcess class being incomplete. We can just move this to the cpp file and eliminate the cast entirely, letting the compiler do its work. | |||||
2022-11-22 | Use the maximum input index for samples buffer span size, not just the input count | Kelebek1 | 1 | -6/+8 | |
2022-11-22 | video_core: Optimize maxwell drawing trigger mechanism | FengChen | 2 | -61/+63 | |
2022-11-21 | qt_amiibo_settings: Use WebClient only if ENABLE_WEB_SERVICE is enabled | Morph | 1 | -0/+4 | |
Resolves compilation errors when ENABLE_WEB_SERVICE is disabled in CMake configuration | |||||
2022-11-20 | Configuration: Add per-game input profiles | ameerj | 11 | -14/+465 | |
2022-11-20 | dmnt:cht: fix copy-paste error | Liam | 1 | -1/+1 | |
2022-11-19 | service: nfc: Implement nfc user | Narr the Reg | 12 | -84/+723 | |
2022-11-19 | service: hid: Only overclock npad controllers | german77 | 2 | -6/+30 | |
2022-11-19 | core: hid: Implement true multitouch support | Narr the Reg | 5 | -46/+93 | |
2022-11-19 | spirv_emit_context: add missing flat decoration | Liam | 1 | -0/+1 | |
2022-11-18 | qt: Add Qt version to LogRuntimes | Kyle Kienapfel | 1 | -0/+1 | |
2022-11-18 | Qt6: Disable IR Sensor when compiling with Qt6 | Kyle Kienapfel | 6 | -0/+25 | |
Gating the IR Sensor code behind a macro like so `#if (QT_VERSION < QT_VERSION_CHECK(6, 0, 0)) && YUZU_USE_QT_MULTIMEDIA` The YUZU_USE_QT_MULTIMEDIA flag is implemented in later commit Also the locale fix in src/yuzu/main.cpp is now gated against Qt6, as it causes compilation error | |||||
2022-11-17 | Dynarmic: Remove inaccurate NaN from Auto CPU settings. | Fernando Sahmkow | 1 | -1/+0 | |
2022-11-17 | shader: Implement miss attribute layer | FengChen | 5 | -0/+13 | |
2022-11-17 | maxwell3d: full HLE for multi-layer clears | Liam | 8 | -24/+17 | |
2022-11-17 | maxwell3d: HLE multi-layer clear macro | Liam | 2 | -1/+22 | |
2022-11-16 | Update renderer_vulkan.cpp | Matías Locatti | 1 | -0/+4 | |
2022-11-16 | configure_profile_manager: Cleanup reference/pointer usage | lat9nq | 2 | -8/+10 | |
Co-authored-by: Morph <39850852+Morph1984@users.noreply.github.com> Co-authored-by: Mai M. <mathew1800@gmail.com> | |||||
2022-11-16 | configure_profile_manager: Remove profile picture border | lat9nq | 1 | -0/+6 | |
The border adds its own width at least on Linux which causes the icon to be offset by 1px, and cropped by 2px on the bottom and right sides. | |||||
2022-11-16 | configure_profile_manager: Use a custom dialog for deletion | lat9nq | 2 | -11/+81 | |
A hopefully more informative dialog that most importantly notifies the user that their saves will be deleted with the user profile. cpm: Only keep track of UI elements that we need cpm: Remove unused forward declarations cpm: Add missing include | |||||
2022-11-15 | video_core: Reimplement inline index buffer binding | Feng Chen | 5 | -33/+31 | |
2022-11-15 | nvnflinger: fix lost wakeup | Liam | 4 | -12/+16 | |
2022-11-15 | core: Update result module | Narr the Reg | 1 | -1/+75 | |
2022-11-14 | Add break for default cases | Kyle Kienapfel | 24 | -6/+38 | |
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-14 | general: Address review comments | german77 | 14 | -190/+200 | |
2022-11-13 | service: am: Fix cabinet applet result | german77 | 2 | -10/+22 | |
2022-11-13 | yuzu: Implement cabinet applet frontend | german77 | 6 | -1/+865 | |
2022-11-13 | service: am: Implement cabinet applet backend | german77 | 9 | -7/+362 | |
2022-11-13 | input_common: Add amiibo applet functions | german77 | 3 | -1/+19 | |
2022-11-13 | service: nfc: fix tagprotocol and implement GetApplicationAreaId | german77 | 4 | -8/+43 | |
2022-11-12 | Ignore ARM for core count | Matías Locatti | 1 | -2/+1 | |
2022-11-12 | kernel: implement FlushProcessDataCache | Liam | 4 | -8/+125 | |
2022-11-12 | common: add cache management functions | Liam | 3 | -0/+89 | |
2022-11-12 | Add CPU core count to log files | Matías Locatti | 3 | -3/+64 | |
2022-11-12 | hle: service: audio: Use default service thread. | bunnei | 3 | -18/+12 | |
- This was arbitrarily added by me, and does not appear to be helpful. | |||||
2022-11-11 | yuzu/main: Change to 8_GiB instead of magic number | Tobias | 1 | -1/+1 | |
Co-authored-by: Morph <39850852+Morph1984@users.noreply.github.com> | |||||
2022-11-11 | Add break statement in default case | Enrico Mancuso | 1 | -0/+1 | |
According to the contributing page (https://github.com/yuzu-emu/yuzu/wiki/Contributing) the default cases should have a break statement | |||||
2022-11-11 | Fix regs regression with OpenGL two-sided stencil, and re-add data invalidation reg | Kelebek1 | 6 | -5/+32 | |
2022-11-11 | ir/texture_pass: Use host_info instead of querying Settings::values (#9176) | Morph | 12 | -16/+23 | |
2022-11-11 | gdbstub: add ams monitor commands | Liam | 3 | -0/+155 | |
2022-11-10 | debugger: allow more than one connection attempt per session | Liam | 1 | -68/+93 | |
2022-11-10 | Me likes | Matías Locatti | 1 | -1/+1 | |
Co-authored-by: Morph <39850852+Morph1984@users.noreply.github.com> | |||||
2022-11-10 | service_thread: remove explicit KProcess | Liam | 2 | -29/+13 | |
2022-11-10 | yuzu/compatdb: Rework compatibility submission system | FearlessTobi | 5 | -71/+404 | |
Co-Authored-By: Narr the Reg <5944268+german77@users.noreply.github.com> | |||||
2022-11-10 | Add CPU thread count to log files | Matías Locatti | 1 | -0/+2 | |
2022-11-10 | video_core: Fix dma copy 1D random crash | FengChen | 1 | -17/+20 | |
2022-11-10 | kernel/svc_types: refresh | Liam | 19 | -137/+563 | |
2022-11-09 | Initial ARM64 support | Liam | 11 | -24/+57 | |
2022-11-09 | Add break statement in default cases | Enrico Mancuso | 1 | -0/+1 | |
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 | Ensure correctness of atomic store ordering | Liam | 2 | -3/+9 | |
2022-11-07 | video_core: Fix few issues in Tess stage | FengChen | 18 | -6/+63 | |
2022-11-07 | service_thread: fix deletion | Liam | 4 | -39/+33 | |
2022-11-07 | yuzu: Change QtKeyToSwitchKey switch case to array | german77 | 1 | -217/+120 | |
2022-11-06 | video_core:Fix vmm kinds size error | FengChen | 1 | -1/+1 | |
2022-11-05 | core: hle: kernel: Address review comments. | Liam | 2 | -2/+2 | |
2022-11-05 | video_core: Fix scaling graphical regressions for multiple games | FengChen | 1 | -4/+4 | |
2022-11-05 | UI: split up strings relating to content removal | Kyle Kienapfel | 2 | -20/+33 | |
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 | service_thread: register service threads to the logical owner process | Liam | 5 | -20/+39 | |
2022-11-04 | kernel: avoid racy behavior in global suspension | Liam | 1 | -5/+17 | |
2022-11-04 | Qt: enable recent Linux features on more Unices | Jan Beich | 3 | -17/+17 | |
- Prevent sleep via xdg-desktop-portal after fa7abafa5f2a - Pause on suspend after b7642cff3611 - Exit on SIGINT/SIGTERM after 9479940a1fc7 - Improve dark themes after b51db125676f | |||||
2022-11-04 | network: add missing header for SO_* on Unix after f80c7c4cd5c0 | Jan Beich | 1 | -0/+4 | |
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 | Update shader cache version. (#9175) | gidoly | 1 | -1/+1 | |
2022-11-04 | video_core: Fix SNORM texture buffer emulating error (#9001) | Feng Chen | 23 | -52/+224 | |
2022-11-04 | UI: Add options to hide extra columns (#9093) | Piplup | 5 | -1/+31 | |
UI change that allows the user to hide the size and or file types columns | |||||
2022-11-04 | core: hle: kernel: k_page_table: Remove unnecessary casts. | bunnei | 1 | -17/+8 | |
2022-11-04 | core: hle: kernel: k_page_table: Manually open/close pages for IPC methods. | bunnei | 1 | -0/+18 | |
2022-11-04 | core: hle: kernel: k_page_table: Implement IPC memory methods. | bunnei | 3 | -3/+910 | |
2022-11-04 | core: hle: kernel: k_memory_manager: Refresh. | bunnei | 4 | -369/+460 | |
2022-11-04 | core: hle: kernel: Integrate system KSystemResource. | bunnei | 7 | -69/+209 | |
2022-11-04 | core: hle: kernel: k_dynamic_page_manager: Refresh. | bunnei | 1 | -17/+50 | |
2022-11-04 | core: hle: kernel: Add KSystemResource. | bunnei | 5 | -1/+173 | |
2022-11-04 | core: hle: kernel: k_handle_table: Refresh. | bunnei | 2 | -54/+87 | |
2022-11-04 | core: hle: kernel: k_memory_layout: Refresh. | bunnei | 3 | -12/+23 | |
2022-11-04 | core: hle: kernel: k_memory_region_type: Refresh. | bunnei | 1 | -49/+74 | |
2022-11-04 | core: hle: kernel: slab_helpers: Add KAutoObjectWithSlabHeap. | bunnei | 1 | -0/+78 | |
2022-11-04 | core: hle: kernel: k_dynamic_resource_manager: Add KBlockInfoManager, KBlockInfoSlabHeap. | bunnei | 1 | -0/+3 | |
2022-11-04 | core: hle: kernel: k_page_bitmap: Refresh. | bunnei | 1 | -88/+155 | |
2022-11-04 | core: hle: kernel: k_memory_block: Refresh. | bunnei | 2 | -48/+66 | |
2022-11-04 | core: hle: kernel: k_page_heap: Refresh. | bunnei | 2 | -17/+108 | |
2022-11-04 | core: hle: kernel: k_page_group: Add KPageBufferSlabHeap. | bunnei | 1 | -0/+86 | |
2022-11-04 | core: hle: kernel: k_system_control: Add SecureAppletMemorySize. | bunnei | 1 | -0/+4 | |
2022-11-04 | core: hle: kernel: k_page_buffer: Add KPageBufferSlabHeap. | bunnei | 1 | -3/+11 | |
2022-11-04 | core: hle: kernel: Add KPageTableManager. | bunnei | 2 | -0/+56 | |
2022-11-04 | core: hle: kernel: Add KPageTableSlabHeap. | bunnei | 2 | -0/+94 | |
2022-11-04 | core: hle: kernel: Add KEventInfo. | bunnei | 4 | -1/+102 | |
2022-11-04 | core: hle: kernel: Add KDebug. | bunnei | 2 | -0/+21 | |
2022-11-04 | core: hle: result: Fix code for compilers. | bunnei | 1 | -6/+7 | |
2022-11-03 | core: hle: service: acc: Fix ListOpenContextStoredUsers/StoreOpenContext. | bunnei | 5 | -23/+42 | |
- 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 | remove unnecessary sepator in file menu (main.ui) | Ludovic | 1 | -1/+0 | |
2022-10-31 | sm:: avoid excessive port recreation | Liam | 3 | -18/+24 | |
2022-10-31 | kernel: fix single core for service threads | Liam | 1 | -1/+2 | |
2022-10-31 | kernel: fix port tracking | Liam | 5 | -49/+4 | |
2022-10-31 | k_server_session: add SendReplyHLE | Liam | 3 | -5/+6 | |
2022-10-31 | service_thread: convert to map for session management | Liam | 1 | -23/+21 | |
2022-10-31 | kernel: invert session request handling flow | Liam | 22 | -279/+421 | |
2022-10-31 | video_core: Fix drawing trigger mechanism regression | FengChen | 1 | -32/+25 | |
2022-10-31 | kernel: more complete fix for KPort reference counting | Liam | 2 | -13/+27 | |
2022-10-30 | k_thread: fix single core | Liam | 1 | -2/+4 | |
2022-10-30 | Vulkan: Fix regression caused by limiting render area to width/height of rendef targets. | Fernando Sahmkow | 1 | -6/+6 | |
2022-10-30 | vk_blit_screen: recreate swapchain images on guest format change | Liam | 2 | -1/+10 | |
2022-10-30 | kernel: reinitialize after dram layout change | Liam | 1 | -1/+8 | |
2022-10-30 | service: am: Stub SetRecordVolumeMuted | german77 | 2 | -1/+13 | |
Used by bayonetta 3 | |||||
2022-10-30 | k_server_session: fix crashes | Liam | 2 | -2/+1 | |
2022-10-28 | vk_scheduler: Remove recorded_counts | Robin Kertels | 1 | -3/+1 | |
2022-10-27 | arm_interface: curb infinite recursion in stacktrace generation | Liam | 2 | -2/+2 | |
2022-10-27 | nvnflinger: release queued handles immediately on disconnection | Liam | 4 | -6/+17 | |
2022-10-27 | vi: implement CloseDisplay | Liam | 4 | -4/+28 | |
2022-10-27 | video_core: Fix drawing trigger mechanism regression | FengChen | 2 | -61/+70 | |
2022-10-26 | audio_in/out_system: Pass Initialize members by value where applicable | Lioncash | 6 | -8/+8 | |
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 | concepts: Use the std::contiguous_iterator concept | Morph | 3 | -20/+10 | |
This also covers std::span, which does not have a const iterator. Also renames IsSTLContainer to IsContiguousContainer to explicitly convey its semantics. | |||||
2022-10-25 | tests: fix for -Wall | Alexandre Bouvier | 1 | -1/+1 | |
Fix #9123 | |||||
2022-10-25 | video_core: Catch vulkan clear op not all channel need clear | FengChen | 1 | -8/+13 | |
2022-10-25 | Revert "shader_recompiler/dead_code_elimination: Add DeadBranchElimination pass" | Feng Chen | 3 | -98/+9 | |
2022-10-25 | kernel: refactor dummy thread wakeups | Liam | 5 | -26/+76 | |
2022-10-24 | file_sys: Priority display of game titles in the current language | FengChen | 2 | -12/+37 | |
2022-10-24 | nvdrv: fix container destruction order | Liam | 2 | -4/+4 | |
2022-10-23 | core: barrier service thread shutdown | Liam | 6 | -7/+26 | |
2022-10-22 | core: hid: Add handheld to nfc devices | german77 | 1 | -0/+1 | |
2022-10-22 | CMakeLists: Disable -Wbraced-scalar-init on Clang | Morph | 1 | -0/+1 | |
Clang erroneously emits this warning when using designated initializers. | |||||
2022-10-22 | yuzu: Resolve -Wpessimizing-move | Morph | 1 | -1/+1 | |
2022-10-22 | startup_checks: Resolve -Wstringop-truncation | Morph | 1 | -1/+2 | |
Copies up to sizeof(p_name) - 1 in strncpy and null terminates it at p_name[254] | |||||
2022-10-22 | startup_checks: Resolve -Wformat | Morph | 1 | -7/+7 | |
2022-10-22 | general: Resolve -Wunused-but-set-variable | Morph | 1 | -2/+2 | |
2022-10-22 | general: Resolve -Wunused-lambda-capture and C5233 | Morph | 4 | -29/+24 | |
2022-10-22 | general: Resolve -Wclass-memaccess | Morph | 3 | -3/+3 | |
2022-10-22 | ipc_helpers: Ignore GCC compiler warnings only on GCC | Morph | 1 | -2/+2 | |
Clang and ICC for whatever reason also defines __GNUC__. Exclude them from this check. | |||||
2022-10-22 | CMakeLists: Enforce C5233 on MSVC | Morph | 1 | -0/+1 | |
This is similar to Clang's -Wunused-lambda-capture | |||||
2022-10-22 | CMakeLists: Disable C4100 and C4324 | Morph | 4 | -17/+3 | |
Disabling C4100 is similar to -Wno-unused-parameter | |||||
2022-10-22 | CMakeLists: Remove redundant warnings | Morph | 4 | -12/+0 | |
These warnings are already included in /W3. | |||||
2022-10-22 | decoders: Use 2's complement instead of unary - | Morph | 1 | -1/+1 | |
Resolves C4146 on MSVC | |||||
2022-10-22 | CMakeLists: Treat MSVC warnings as errors | Morph | 4 | -3/+2 | |
2022-10-22 | general: Enforce C4800 everywhere except in video_core | Morph | 14 | -41/+57 | |
2022-10-22 | CMakeLists: Remove all redundant warnings | Morph | 7 | -45/+4 | |
These are already explicitly or implicitly set in src/CMakeLists.txt | |||||
2022-10-22 | CMakeLists: Consolidate all unused warnings into -Wunused | Morph | 1 | -3/+3 | |
2022-10-22 | CMakeLists: Treat -Wall and -Wextra as errors | Morph | 1 | -3/+3 | |
2022-10-22 | video_core: Implement maxwell inline_index method | FengChen | 6 | -74/+130 | |
2022-10-22 | service: nfp: Allow amiibos without keys | Narr the Reg | 3 | -1/+18 | |
2022-10-22 | service: nfp: remove unnecessary include | Narr the Reg | 5 | -11/+7 | |
2022-10-21 | video_coare: Reimplementing the maxwell drawing trigger mechanism | FengChen | 10 | -224/+139 | |
2022-10-21 | k_session_request: Add missing override specifier | Lioncash | 1 | -1/+1 | |
2022-10-21 | format_lookup_table: Implement R32_B24G8 with D32_FLOAT_S8_UINT | Morph | 1 | -0/+2 | |
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 | k_session_request: Turn C-style array into std::array | Lioncash | 1 | -1/+3 | |
Makes for stronger typing and allows tooling bounds checks provided by the standard library for debugging purposes. | |||||
2022-10-21 | k_session_request: Simplify constructor initialization | Lioncash | 1 | -14/+11 | |
2022-10-21 | input_common: cache vibration tests | german77 | 10 | -57/+93 | |
2022-10-21 | hid/npad: Fix copy size in GetSupportedNpadIdTypes | Lioncash | 1 | -2/+3 | |
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-20 | Controller Applet had instance of Undocked, make Handheld | Kyle Kienapfel | 1 | -1/+1 | |
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 | video_core: don't build ASTC decoder shader unless requested | Liam | 4 | -14/+19 | |
2022-10-19 | kernel: remove most SessionRequestManager handling from KServerSession | Liam | 6 | -138/+119 | |
2022-10-19 | kernel: add KSessionRequest | Liam | 13 | -62/+489 | |
2022-10-19 | core: hle: kernel: Migrate ProcessState to enum class. | bunnei | 2 | -17/+17 | |
2022-10-19 | UI: Add option to hide the compatibility list | Kyle Kienapfel | 5 | -0/+17 | |
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 | Update audio_core for firmware 15.0.0 | Kelebek1 | 5 | -33/+114 | |
2022-10-19 | Maxwell3D/Puller: Fix regressions and syncing issues. | Fernando Sahmkow | 2 | -13/+9 | |
2022-10-19 | core: Initialize: Add missing braces. | bunnei | 1 | -2/+4 | |
2022-10-19 | core: core_timing: Re-initialize if single/multicore state changes. | bunnei | 3 | -14/+36 | |
2022-10-19 | core: core_timing: Remove unused IsHostTiming. | bunnei | 1 | -5/+0 | |
2022-10-19 | core: hle: kernel: Use result macros for new/changed code. | bunnei | 9 | -128/+110 | |
2022-10-19 | core: Partially persist emulation state across game boots. | bunnei | 8 | -58/+65 | |
2022-10-19 | core: hle: kernel: Fix InitializePreemption order. | bunnei | 1 | -1/+1 | |
2022-10-19 | core: hle: kernel: k_process: Improve management of page table & cleanup. | bunnei | 7 | -60/+92 | |
2022-10-19 | core: hle: kernel: k_interrupt_manager: HandleInterrupt should not depend on current process. | bunnei | 1 | -12/+9 | |
2022-10-19 | core: hle: kernel: Remove junk. | bunnei | 1 | -9/+0 | |
2022-10-19 | core: hle: kernel: k_page_table: Impl. LockForUn/MapDeviceAddressSpace, cleanup. | bunnei | 3 | -545/+624 | |
2022-10-19 | video_core: renderer_vulkan: vk_query_cache: Avoid shutdown crash in QueryPool::Reserve. | bunnei | 1 | -3/+4 | |
2022-10-19 | core: hle: kernel: Integration application memory block slab manager. | bunnei | 3 | -3/+44 | |
2022-10-19 | core: hle: kernel: k_page_table: Update, and integrate with new KMemoryBlockManager/SlabManager. | bunnei | 2 | -251/+393 | |
2022-10-19 | core: hle: kernel: k_memory_block: Update. | bunnei | 2 | -119/+391 | |
2022-10-19 | core: hle: kernel: k_memory_block_manager: Update. | bunnei | 2 | -174/+380 | |
2022-10-19 | core: hle: kernel: k_thread: Implement thread termination DPC. | bunnei | 5 | -1/+99 | |
2022-10-19 | core: hle: kernel: Add KDynamicResourceManager. | bunnei | 2 | -0/+59 | |
2022-10-19 | core: hle: kernel: Add KDynamicSlabHeap. | bunnei | 2 | -0/+123 | |
2022-10-19 | core: hle: kernel: Add KDynamicPageManager. | bunnei | 2 | -0/+137 | |
2022-10-19 | core: hle: kernel: k_process: Change Status -> State. | bunnei | 3 | -37/+27 | |
2022-10-19 | core: hle: kernel: svc_types: Add SystemThreadPriorityHighest and ProcessState. | bunnei | 1 | -0/+13 | |
2022-10-19 | core: device_memory: Templatize GetPointer(..). | bunnei | 9 | -19/+21 | |
2022-10-19 | core: hle: result: Add GetInnerValue and Includes methods. | bunnei | 1 | -0/+8 | |
2022-10-19 | core: hle: kernel: svc_common: Add WaitInfinite & cleanup. | bunnei | 1 | -2/+5 | |
2022-10-18 | fixed_point: Mark default constructor as constexpr | Lioncash | 1 | -2/+2 | |
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 | fixed_point: Mark copy/move assignment operators and constructors as constexpr | Lioncash | 1 | -3/+6 | |
Given these are just moving a raw value around, these can sensibly be made constexpr to make the interface more useful. | |||||
2022-10-18 | fixed_point: Mark std::swap and move constructor as noexcept | Lioncash | 1 | -2/+2 | |
These shouldn't throw and can influence how some standard algorithms will work. | |||||
2022-10-18 | fixed_point: Mark relevant member function [[nodiscard]] | Lioncash | 1 | -14/+14 | |
Marks member functions as discard, where ignoring the return value would be indicative of a bug or dead code. | |||||
2022-10-18 | fixed_point: Make to_uint() non-const | Lioncash | 1 | -2/+2 | |
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 | fixed_point: Use defaulted comparisons | Lioncash | 1 | -23/+1 | |
Collapses all of the comparison functions down to a single line. | |||||
2022-10-18 | fixed_point: Use variable templates and concepts where applicable | Lioncash | 2 | -72/+56 | |
Makes a few things a little less noisy and removes the need for SFINAE in quite a few functions. | |||||
2022-10-17 | kernel: fix slab heap ABA | Liam | 1 | -10/+17 | |
2022-10-17 | video_core: implement 1D copies based on VMM 'kind' | FengChen | 2 | -56/+73 | |
2022-10-17 | video_core: Implement memory manager page kind | FengChen | 5 | -17/+342 | |
2022-10-17 | fixed_point: Replace CONSTEXPR14 with constexpr | Morph | 1 | -50/+42 | |
As we require the latest C++ standards to compile yuzu, checking for C++14 constexpr is not needed. | |||||
2022-10-17 | general: Add missing pragma once | Morph | 2 | -4/+3 | |
2022-10-17 | savedata_factory: Detect future save data paths | Morph | 3 | -13/+59 | |
Enable compatibility for new account/device save paths planned on a future implementation. | |||||
2022-10-17 | Address feedback | FengChen | 1 | -6/+6 | |
2022-10-17 | sdl2_sink: Inline variable init into if condition | lat9nq | 1 | -2/+1 | |
Co-authored-by: Mai <mathew1800@gmail.com> | |||||
2022-10-16 | sdl2_sink: Distinguish between capture and non-capture device names | lat9nq | 1 | -1/+1 | |
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 | sdl2_sink: Check for null string when loading SDL audio devices | lat9nq | 1 | -1/+4 | |
Attempting to place a null string into a vector of strings causes an error that closes the application. Don't. | |||||
2022-10-16 | video_core: Fix spelling of "synchronize" | Morph | 2 | -5/+5 | |
2022-10-16 | general: Fix spelling of "unknown" | Morph | 3 | -13/+13 | |
2022-10-15 | fix a tiny spelling mistake | Kyle Kienapfel | 1 | -1/+1 | |
Kreato pointed this out over on discord. | |||||
2022-10-14 | audio_core: Revert sink name to sdl2 | Narr the Reg | 1 | -2/+2 | |
2022-10-14 | CMake: Try add library "LZ4::lz4_shared" if "lz4::lz4" is unavailable | Kyle Kienapfel | 1 | -1/+5 | |
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 | renderer_(opengl/vulkan): Fix tessellation clockwise parameter | Morph | 3 | -6/+6 | |
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 | settings: Update aspect_ratio range | Morph | 1 | -1/+1 | |
Since 16:10 was added, the maximum value is now 4. | |||||
2022-10-13 | result: enforce reference check specialization | Liam | 1 | -4/+3 | |
2022-10-13 | kernel: remove KWritableEvent | Liam | 37 | -232/+151 | |
2022-10-12 | k_server_session: preliminary support for userspace server sessions | Liam | 9 | -49/+346 | |
2022-10-12 | Add implementation of svcCreateSession | Liam | 2 | -1/+103 | |
2022-10-12 | general: preliminary support for hbl | Liam | 6 | -6/+124 | |
2022-10-11 | syncpoint_manager: ensure handle is removable before removing | Liam | 1 | -1/+11 | |
2022-10-10 | Fix stencil func registers, make clip control equivalent to how it was before, but surely wrong. | Kelebek1 | 8 | -44/+51 | |
2022-10-10 | yuzu: Add 16:10 aspect ratio | Narr the Reg | 3 | -0/+8 | |
2022-10-09 | input_common: have an unique vector in callback status | german77 | 3 | -6/+19 | |
2022-10-09 | Choose the SDL audio backend when Cubeb reports too high of a latency | Kelebek1 | 7 | -32/+95 | |
2022-10-09 | core_timing: use high-precision sleeps on non-Windows targets | Liam | 1 | -0/+4 | |
2022-10-08 | kernel: add expanded result macros | Liam | 1 | -6/+114 | |
2022-10-08 | fsp_srv: stub GetCacheStorageSize | Liam | 2 | -1/+14 | |
2022-10-08 | IFriendService: stub CheckFriendListAvailability | Liam | 1 | -1/+12 | |
2022-10-07 | video_core: don't block rendering on screenshots | Liam | 1 | -1/+7 | |
2022-10-07 | configure_graphics: Fix graphics API selection when a game is running | Morph | 1 | -3/+4 | |
The graphics API setting should not be changed when a game is running. | |||||
2022-10-07 | Update 3D regs | Kelebek1 | 29 | -2043/+3974 | |
2022-10-07 | nfp_types: silence -Wtype-limits | Liam | 1 | -1/+1 | |
2022-10-07 | Revert "vulkan: automatically use larger staging buffer sizes when possible" | liamwhite | 2 | -60/+27 | |
2022-10-06 | vulkan_blitter: Fix pool allocation double free. | Byte | 3 | -25/+10 | |
2022-10-06 | maxwell_dma: remove warnings from implemented functionality | Liam | 1 | -2/+0 | |
2022-10-06 | General: address feedback | Fernando Sahmkow | 30 | -165/+167 | |
2022-10-06 | state_tracker: workaround channel setup for homebrew | Liam | 5 | -4/+9 | |
2022-10-06 | general: rework usages of UNREACHABLE macro | Liam | 3 | -27/+28 | |
2022-10-06 | nvdisp: End system frame after requesting to swap buffers | Morph | 1 | -1/+1 | |
Fixes frametime reporting | |||||
2022-10-06 | address_space: Rename va_start to virt_start | Morph | 2 | -5/+5 | |
Avoids conflicting with the va_start macro | |||||
2022-10-06 | address_space: Address feedback | Morph | 3 | -195/+237 | |
2022-10-06 | general: Format licenses as per SPDX guidelines | Morph | 38 | -121/+93 | |
2022-10-06 | NvHostChannels: improve hack for supporting multiple channels. | Fernando Sahmkow | 2 | -2/+11 | |
2022-10-06 | Address Feedback from bylaws. | Fernando Sahmkow | 3 | -7/+3 | |
2022-10-06 | Nvflinger: correct duplication. | Fernando Sahmkow | 4 | -5/+5 | |
2022-10-06 | Core: Fix get nvmap object random crash | VonChenPlus | 12 | -35/+66 | |
2022-10-06 | General: Fix clang format. | Fernando Sahmkow | 7 | -18/+14 | |
2022-10-06 | Common: Fix variable shadowing. | Fernando Sahmkow | 1 | -5/+5 | |
2022-10-06 | Vulkan Swapchain: Overall improvements. | Fernando Sahmkow | 3 | -6/+17 | |
2022-10-06 | NvDec: Fix regressions. | Fernando Sahmkow | 6 | -5/+31 | |
2022-10-06 | Vulkan Texture Cache: Limit render area to the max width/height of the targets. | Fernando Sahmkow | 4 | -9/+29 | |
2022-10-06 | ImageBase: Basic fixes. | Fernando Sahmkow | 1 | -8/+5 | |
2022-10-06 | General: Fix compilation for GCC | Liam White | 16 | -42/+56 | |
2022-10-06 | VideoCore: Implement formats needed for N64 emulation. | Fernando Sahmkow | 6 | -10/+10 | |
2022-10-06 | Buffer Cache: Deduce vertex array limit from memory layout when limit is the highest possible. | Fernando Sahmkow | 3 | -4/+12 | |
2022-10-06 | VideoCore: Add option to dump the macros. | Fernando Sahmkow | 1 | -0/+1 | |
2022-10-06 | NVDRV: Further improvements. | Fernando Sahmkow | 16 | -159/+278 | |
2022-10-06 | Buffer Cache: Basic fixes. | Fernando Sahmkow | 1 | -15/+22 | |
2022-10-06 | Decoders: Improve overall speed. | Fernando Sahmkow | 1 | -4/+11 | |
2022-10-06 | DMA & InlineToMemory Engines Rework. | bunnei | 21 | -242/+323 | |
2022-10-06 | Maxwell3D: Add small_index_2 | Fernando Sahmkow | 1 | -0/+2 | |
2022-10-06 | Memory Manager: ensure safety of GPU to CPU address. | Fernando Sahmkow | 1 | -0/+3 | |
2022-10-06 | MemoryManager: Fix errors popping out. | Fernando Sahmkow | 3 | -4/+18 | |
2022-10-06 | Shader Decompiler: implement better tracking for Vulkan samplers. | Fernando Sahmkow | 1 | -9/+59 | |
2022-10-06 | Shader Decompiler: Check for shift when deriving composite samplers. | Fernando Sahmkow | 6 | -11/+46 | |
2022-10-06 | Shader Decompiler: Fix dangerous behavior of invalid iterator insertion. | Fernando Sahmkow | 1 | -3/+3 | |
2022-10-06 | MemoryManager: Finish up the initial implementation. | Fernando Sahmkow | 2 | -50/+138 | |
2022-10-06 | OpenGL: Fix TickWork | Fernando Sahmkow | 1 | -0/+4 | |
2022-10-06 | VideoCore: Refactor fencing system. | Fernando Sahmkow | 20 | -167/+154 | |
2022-10-06 | MemoryManager: initial multi paging system implementation. | Fernando Sahmkow | 6 | -209/+343 | |
2022-10-06 | Vulkan: Fix Scissor on Clears | Fernando Sahmkow | 1 | -1/+8 | |
2022-10-06 | NVDRV: Further refactors and eliminate old code. | Fernando Sahmkow | 18 | -242/+12 | |
2022-10-06 | NVDRV: Refactor Host1x | Fernando Sahmkow | 33 | -173/+201 | |
2022-10-06 | VideoCore: Refactor syncing. | Fernando Sahmkow | 44 | -252/+648 | |
2022-10-06 | Texture Cache: Fix GC and GPU Modified on Joins. | Fernando Sahmkow | 1 | -3/+5 | |
2022-10-06 | Texture cache: Fix the remaining issues with memory mnagement and unmapping. | Fernando Sahmkow | 12 | -16/+63 | |
2022-10-06 | Texture cache: Fix dangling references on multichannel. | Fernando Sahmkow | 3 | -27/+36 | |
2022-10-06 | Refactor VideoCore to use AS sepparate from Channel. | Fernando Sahmkow | 10 | -152/+171 | |
2022-10-06 | General: Rebase fixes. | Fernando Sahmkow | 1 | -7/+6 | |
2022-10-06 | VideoCore: Extra Fixes. | Fernando Sahmkow | 3 | -3/+5 | |
2022-10-06 | NVDRV: Remake ASGPU | Fernando Sahmkow | 8 | -239/+882 | |
2022-10-06 | NVDRV: Update copyright notices. | Fernando Sahmkow | 4 | -7/+13 | |
2022-10-06 | MemoryManager: Temporary Fix for NVDEC. | Fernando Sahmkow | 1 | -1/+1 | |
2022-10-06 | NvHostCtrl: Fix merge of nvflinger. | Fernando Sahmkow | 1 | -1/+2 | |
2022-10-06 | VideoCore: Update MemoryManager | Fernando Sahmkow | 4 | -167/+86 | |
2022-10-06 | Common: implement MultiLevelPageTable. | Fernando Sahmkow | 4 | -0/+171 | |
2022-10-06 | VideoCore: Fix channels with disk pipeline/shader cache. | Fernando Sahmkow | 11 | -71/+87 | |
2022-10-06 | OpenGl: Implement Channels. | Fernando Sahmkow | 9 | -118/+186 | |
2022-10-06 | NVHOST_CTRl: Implement missing method and fix some stuffs. | Fernando Sahmkow | 4 | -6/+35 | |
2022-10-06 | VideoCore: implement channels on gpu caches. | Fernando Sahmkow | 50 | -809/+1461 | |
2022-10-06 | NVASGPU: Fix Remap. | Fernando Sahmkow | 1 | -0/+8 | |
2022-10-06 | NVDRV: Fix clearing when destroying. | Fernando Sahmkow | 3 | -14/+9 | |
2022-10-06 | NVMAP: Fix the Free return parameters. | Fernando Sahmkow | 3 | -15/+18 | |
2022-10-06 | NVDRV: Fix Open/Close and make sure each device is correctly created. | Fernando Sahmkow | 14 | -199/+291 | |
2022-10-06 | NVDRV: Implement new NvMap | Fernando Sahmkow | 18 | -277/+307 | |
2022-10-06 | NVDRV: Refactor and add new NvMap. | Fernando Sahmkow | 20 | -45/+558 | |
2022-10-06 | NVDRV: Cleanup. | Fernando Sahmkow | 4 | -32/+40 | |
2022-10-06 | NVDRV: Implement QueryEvent. | Fernando Sahmkow | 10 | -40/+133 | |
2022-10-06 | NvHost: Remake Ctrl Implementation. | Fernando Sahmkow | 7 | -170/+312 | |
2022-10-06 | NvHost: Try a different approach to blocking. | Fernando Sahmkow | 2 | -10/+7 | |
2022-10-06 | NvHost: Fix some regressions and correct signaling on timeout. | Fernando Sahmkow | 1 | -25/+19 | |
2022-10-06 | Texture Cache: Add ASTC 10x5 Format. | Fernando Sahmkow | 6 | -0/+23 | |
2022-10-05 | Show error from cpp-httplib when we don't have a response to read (report errors while connecting to API) (#8999) | Kyle Kienapfel | 1 | -1/+2 | |
Co-authored-by: Kyle Kienapfel <Docteh@users.noreply.github.com> | |||||
2022-10-04 | vk_scheduler: wait for command processing to complete | Liam | 1 | -2/+4 | |
2022-10-04 | service: nfp: Fix errors to pass unit testing | Narr the Reg | 6 | -42/+112 | |
2022-10-04 | common: remove "yuzu:" prefix from thread names | Liam | 19 | -23/+23 | |
2022-10-02 | shader_recompiler: add extended LDC to GLASM backend | Liam | 1 | -4/+21 | |
2022-10-02 | service: mii: Copy only valid name bytes | german77 | 1 | -3/+18 | |
2022-10-02 | service: nfp: Implement mount target and open application area errors, minor fixes | Narr the Reg | 5 | -19/+124 | |
2022-10-02 | nfp: Multiple fixes against HW | german77 | 9 | -62/+163 | |
2022-10-02 | service: nfp: address comments | german77 | 9 | -26/+29 | |
2022-10-02 | service: nfp: Rewrite and implement applet calls | german77 | 13 | -1263/+1542 | |
2022-10-02 | core: hid: Add nfc support to emulated controller | german77 | 4 | -3/+123 | |
2022-10-02 | yuzu: Use virtual amiibo driver instead of nfp service | german77 | 1 | -25/+26 | |
2022-10-02 | input_common: Enable virtual amiibo driver | german77 | 4 | -0/+102 | |
2022-10-02 | input_common: Create virtual amiibo driver | german77 | 6 | -0/+244 | |
2022-10-02 | MacroHLE: Add MultidrawIndirect HLE Macro. | Fernando Sahmkow | 1 | -1/+62 | |
2022-10-02 | macro_jit_x64: fix miscompilation of bit extraction operations | Liam | 1 | -37/+9 | |
2022-10-02 | Qt: work around Qt5's font choice for Chinese | Kyle Kienapfel | 1 | -0/+16 | |
On Windows there are currently two fonts used. The first, does the Menu, QTreeView and Tooltips Second is Everything else which is a default font. From inspecting QApplication::font() at runtime Windows 10 English: QFont(MS Shell Dlg 2,8.25,-1,5,50,0,0,0,0,0) Windows 11 Japanese: MS UI Gothic,9 ,-1,5,50,0,0,0,0,0 Windows 11 Traditional Chinese: PMingLiU,9 ,-1,5,50,0,0,0,0,0 Windows 11 Simplified Chinese: SimSun,9 ,-1,5,50,0,0,0,0,0 Windows 11 Korean: Gulim,9 ,-1,5,50,0,0,0,0,0 I initially investigated dynamically changing the font when the UI language is English, but this was getting quite messy Qt6 makes changes to default font in some situations, so this PR is being narrowed in scope to only effect Chinese font choices. This change only effects rendering of Latin/Cyrillic characters. | |||||
2022-10-01 | Fix "controller.colors_state.right" being "left" | Zwip-Zwap Zapony | 1 | -1/+1 | |
2022-10-01 | macro_jit_x64: cancel exit for taken branch | Liam | 1 | -11/+5 | |
2022-09-26 | service: vi: Retrieve vsync event once per display | Morph | 5 | -14/+42 | |
The display vsync event can only be retrieved once per display. Returns VI::ResultPermissionDenied if we attempt to retrieve the vsync event for the same display. Prevents games such as .hack//G.U. Last Recode from consuming all the handles in the handle table by spamming vsync event retrievals and allows it to go in game. | |||||
2022-09-26 | service: vi: Move VI results into its own file | Morph | 2 | -16/+25 | |
2022-09-25 | core/loader: Return nullptr if file is nullptr | Merry | 1 | -0/+4 | |
2022-09-25 | vulkan: automatically use larger staging buffer sizes when possible | Liam | 2 | -27/+60 | |
2022-09-25 | service: hid: Partially implement palma controller | Narr the Reg | 7 | -33/+842 | |
2022-09-23 | yuzu: sort input profiles by name | Narr the Reg | 1 | -0/+2 | |
2022-09-23 | chore: fix some typos | Andrea Pappacoda | 5 | -6/+6 | |
Fix some typos reported by Lintian | |||||
2022-09-22 | build(room): simplify yuzu-room installation | Andrea Pappacoda | 1 | -1/+1 | |
CMake is able to automatically install binaries in the correct location. Also see my older patch, https://github.com/yuzu-emu/yuzu/commit/af94bf4a594b6a3599fae1d78e5d283b9f602032 Cc: @FearlessTobi | |||||
2022-09-22 | sockets: Make fd member variable protected | Lioncash | 2 | -6/+17 | |
Other things shouldn't be able to directly mess around with the descriptor | |||||
2022-09-22 | Do not try to pause core timing from the audio thread when using single-core | Kelebek1 | 1 | -2/+7 | |
2022-09-21 | yuzu: Silence some clang warnings | Narr the Reg | 4 | -8/+8 | |
2022-09-21 | audio_renderer: Make GetCommandBuffer() take a u32 | Lioncash | 2 | -2/+2 | |
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 | audio_manager: Forward declare result type | Lioncash | 2 | -1/+3 | |
Moves the include into the cpp file to lessen header dependencies. | |||||
2022-09-21 | audio_manager: Remove redundant cast in ThreadFunc() | Lioncash | 1 | -3/+5 | |
We can just use a local here to get rid of a second cast. | |||||
2022-09-21 | audio_manager: move std::functions in SetOutManager/SetInManager | Lioncash | 1 | -2/+2 | |
Prevents unnecessary reallocations in the event the captured variables are larger than the internal std::function buffer. | |||||
2022-09-21 | audio_manager: Remove unused forward declarations | Lioncash | 2 | -10/+0 | |
Allows us to get rid of some unnecessary forward declarations and includes. | |||||
2022-09-21 | audio_manager: Remove unused sessions_started member variable | Lioncash | 1 | -2/+0 | |
This isn't used, so it can be removed. | |||||
2022-09-21 | audio_manager: Remove dependence on system state | Lioncash | 3 | -10/+4 | |
This isn't used by the class, so this can be removed for the time being. | |||||
2022-09-20 | Address some review comments | FearlessTobi | 7 | -52/+38 | |
2022-09-20 | video_core: Fix legacy to generic location unpaired | FengChen | 5 | -15/+31 | |
2022-09-20 | video_core: Generate mipmap texture by drawing | FengChen | 29 | -8/+259 | |
2022-09-19 | yuzu qt: Add option to disable startup Vulkan check | lat9nq | 7 | -45/+66 | |
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-18 | cmake: fix git detection | Alexandre Bouvier | 1 | -27/+2 | |
2022-09-16 | core: implement HwOpus GetWorkBufferSizeForMultiStreamEx | FengChen | 2 | -1/+38 | |
2022-09-16 | astc: Enable parallel CPU astc decoding | Morph | 1 | -21/+35 | |
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 | audio_renderer: Pass command buffer by const reference | Lioncash | 4 | -4/+4 | |
This is just being copied and isn't modified at all. | |||||
2022-09-16 | sink_stream: Mark GetQueueSize as const | Lioncash | 1 | -1/+1 | |
2022-09-16 | node_states: Mark relevant member functions as const | Lioncash | 1 | -2/+2 | |
2022-09-16 | i3dl2/reverb: Mark relevant member functions as const | Lioncash | 2 | -4/+4 | |
These two don't modify member state. | |||||
2022-09-16 | behavior_info: Mark CopyErrorInfo as const | Lioncash | 4 | -6/+6 | |
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 | audio_device: Mark GetDeviceVolume as const | Lioncash | 2 | -2/+2 | |
This doesn't modify instance state. | |||||
2022-09-16 | audio_render_manager: Mark several functions as const | Lioncash | 2 | -6/+6 | |
2022-09-16 | audio_in: Mark several functions as const | Lioncash | 4 | -18/+18 | |
These functions don't modify class state, so we can mark them as such | |||||
2022-09-16 | audio_out: Mark several functions as const | Lioncash | 4 | -16/+17 | |
These don't affect class state, so we can mark them as such. | |||||
2022-09-16 | audio_buffers: Pass by const-ref in AppendBuffers | Lioncash | 3 | -13/+17 | |
This function doesn't modify the passed in buffer, so we can make that explicit. | |||||
2022-09-16 | device_session: Convert for loop into ranged for in AppendBuffers | Lioncash | 1 | -5/+5 | |
Simplifies the indexing code a little bit. | |||||
2022-09-16 | device_session: Pass arguments by const-ref in relevant functions | Lioncash | 3 | -7/+7 | |
These functions don't modify the passed in audio buffers, so we can signify that in the interface. | |||||
2022-09-16 | UI: move icons from default into colorful theme. | Kyle Kienapfel | 1 | -8/+13 | |
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 | audio_core: Amend documentation tags | Lioncash | 28 | -112/+105 | |
Resolves a wackload of -Wdocumentation warnings due to mismatching tags and whatnot. | |||||
2022-09-15 | audio_device: Mark member functions as const where applicable | Lioncash | 3 | -10/+10 | |
These member functions don't modify any internal state. | |||||
2022-09-15 | audio_device: Make AudioDeviceName constructor constexpr | Lioncash | 5 | -17/+30 | |
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 | video_core: Modify astc texture decode error fill value | FengChen | 2 | -2/+2 | |
2022-09-15 | UI: Fix link to TAS help page | Kyle Kienapfel | 1 | -0/+3 | |
Tools -> TAS -> Configure TAS Thanks to Rei on discord for the fix. Basically: openExternalLinks is a checkbox in Qt Creator | |||||
2022-09-14 | common: do not link to xbyak on non-amd64 architectures | liushuyu | 1 | -1/+2 | |
2022-09-13 | compressor: Simplify memset in InitializeCompressorEffect | Lioncash | 1 | -1/+1 | |
Provides equivalent behavior while being significantly smaller. | |||||
2022-09-13 | compressor: Mark params parameters as const | Lioncash | 1 | -3/+3 | |
These functions don't modify the parameters. | |||||
2022-09-13 | compressor: Remove unneeded casts in ApplyCompressorEffect | Lioncash | 1 | -2/+1 | |
Same behavior, but also silences a -Wcast-qual warning, since the second cast casts away const. | |||||
2022-09-13 | Remove pause callbacks from coretiming | Kelebek1 | 15 | -144/+29 | |
2022-09-12 | Remove a pragma once from a cpp file | Kelebek1 | 1 | -2/+0 | |
2022-09-11 | input_common: Increase mapping timer from 2.5 seconds to 4 seconds | german77 | 1 | -1/+1 | |
2022-09-11 | dedicated_room: fix token padding ... | liushuyu | 1 | -2/+12 | |
... 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-11 | fix black icon | Narr the Reg | 1 | -0/+2 | |
2022-09-10 | yuzu: Multiple room UI improvements | german77 | 18 | -59/+176 | |
2022-09-10 | Align index buffe size when vertex_buffer_unified_memory enable | FengChen | 1 | -1/+1 | |
2022-09-09 | ldn: Initial implementation | FearlessTobi | 15 | -124/+1132 | |
2022-09-08 | core/CMakeLists.txt: Remove duplicate files. | SachinVin | 1 | -6/+0 | |
2022-09-08 | CMake: explicitly link mbedcrypto for yuzu-room | Kyle Kienapfel | 1 | -1/+1 | |
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-07 | core: nfp: Remove magic numbers | german77 | 3 | -105/+103 | |
2022-09-07 | core: nfp: Workaround for lack of multiple nfp interfaces | german77 | 1 | -1/+3 | |
2022-09-07 | core: nfp: Correct date and amiibo name | Narr the Reg | 4 | -18/+36 | |
2022-09-07 | core: nfp: Implement Convert and RecreateApplicationArea, accuracy fixes | Narr the Reg | 10 | -257/+356 | |
2022-09-07 | core: nfp: Implement amiibo encryption | german77 | 7 | -276/+1227 | |
2022-09-06 | yuzu: input: fix invert symbol on axis and order options alphabetically | Narr the Reg | 1 | -13/+14 | |
2022-09-06 | input_common: Add support for analog toggle | Narr the Reg | 4 | -0/+15 | |
2022-09-05 | core: hid: Fix GC triggers overwritting ZL and ZR buttons | Narr the Reg | 1 | -0/+15 | |
2022-09-05 | mini_dump: Address review feedback | lat9nq | 4 | -63/+71 | |
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-05 | vcpkg,cmake: Use vcpkg for dbghelp | lat9nq | 1 | -1/+1 | |
2022-09-05 | mini_dump: Check for debugger before spawning a child | lat9nq | 2 | -63/+37 | |
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-05 | mini_dump: Cleanup and add comments | lat9nq | 3 | -43/+87 | |
Removes some unnecessary code. wip | |||||
2022-09-05 | yuzu: Use a debugger to generate minidumps | lat9nq | 18 | -91/+360 | |
yuzu: Move mini_dump out of core startup_checks: Better exception handling | |||||
2022-09-04 | Don't stall with nvdec | Kelebek1 | 4 | -2/+35 | |
2022-09-04 | input_common: sdl: Always check for motion on reconnect | Narr the Reg | 1 | -4/+7 | |
2022-09-03 | core: ns: Implement pl:s service | Narr the Reg | 6 | -26/+27 | |
2022-09-03 | Qt: Make General->Debug scrollable | Kyle Kienapfel | 3 | -4/+9 | |
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-02 | Rework audio output, connecting AudioOut into coretiming to fix desync during heavy loads. | Kelebek1 | 23 | -842/+551 | |
2022-09-02 | Address review comments | FearlessTobi | 11 | -27/+26 | |
2022-09-01 | Demote services from warning/info to debug to reduce log spam: | Kelebek1 | 5 | -16/+16 | |
GetCurrentFocusState SetClockSpeed EnableSixAxisSensorUnalteredPassthrough IsSixAxisSensorUnalteredPassthroughEnabled Get, GetOld SetAndWait, SetAndWaitOld IocParam IocFree | |||||
2022-09-01 | Silence std::aligned_storage warnings as it's deprecated in C++23, | Kelebek1 | 1 | -1/+1 | |
replace it with alignas() and a C array | |||||
2022-08-31 | style: General style changes to match with the rest of the codebase | Morph | 2 | -10/+7 | |
2022-08-31 | (shader/pipeline)_cache: Raise shader/pipeline cache version | Morph | 2 | -2/+2 | |
Since the following commit: https://github.com/yuzu-emu/yuzu/commit/a83a5d2e4c8932df864dd4cea2b04d87a12c8760 , many games will refuse to boot unless the shader/pipeline cache has been invalidated. | |||||
2022-08-27 | core/ldn_types: Minor corrections and additions | FearlessTobi | 1 | -1/+16 | |
2022-08-27 | yuzu/chat_room: Make font size bigger | FearlessTobi | 1 | -0/+4 | |
2022-08-27 | dedicated_room: Correctly handle token decoding | FearlessTobi | 1 | -0/+12 | |
Correctly handle token decoding when '=' has been trimmed by the backend server. Co-Authored-By: liushuyu <liushuyu011@gmail.com> | |||||
2022-08-27 | yuzu/multiplayer: Warn when game is running or no network interface is selected | FearlessTobi | 11 | -19/+81 | |
2022-08-27 | core/socket_proxy: Correct broadcast behavior | FearlessTobi | 1 | -1/+7 | |
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 | yuzu: Display current game version in multiplayer room | FearlessTobi | 6 | -11/+38 | |
Makes it easier for users to recognize connection errors caused by different game versions. | |||||
2022-08-27 | network: Use lower timeout for enet_host_service | FearlessTobi | 2 | -2/+2 | |
This allows us to have a 10x higher throughput of packets by using a much shorter waiting time. | |||||
2022-08-27 | core/bsd: Correctly unbind methods in destructor | FearlessTobi | 1 | -1/+5 | |
Prevents yuzu from crashing when the BSD service is created a second time. | |||||
2022-08-27 | core/acc: Make CheckAvailability use LOG_DEBUG | FearlessTobi | 1 | -1/+1 | |
Previously it was spamming the logs in certain multiplayer games like Puyo Puyo Tetris. | |||||
2022-08-27 | yuzu_room: Remove dependency on core | FearlessTobi | 11 | -9/+13 | |
2022-08-25 | video_core: add option for pessimistic flushing | Liam | 9 | -1/+32 | |
2022-08-25 | video_code: support rectangle texture | FengChen | 14 | -15/+62 | |
2022-08-24 | Implement AudRenU:RequestUpdateAuto, and use C descriptors when B reports as empty. | Kelebek1 | 1 | -6/+21 | |
2022-08-24 | video_core: vulkan: rasterizer: Workaround on viewport swizzle on AMD | Narr the Reg | 1 | -1/+8 | |
2022-08-23 | yuzu: Force camera output to be saved on a buffer (#8805) | Narr the Reg | 2 | -2/+38 | |
2022-08-23 | core:filesystem: speed up IDirectory service | vonchenplus | 1 | -1/+2 | |
2022-08-22 | hid: core: Add missing function table names | german77 | 1 | -0/+6 | |
2022-08-21 | core/file_sys: fix alignment of BuildId | Liam | 2 | -3/+3 | |
2022-08-20 | Qt: Retranslate GameList header and Filter line | Kyle Kienapfel | 3 | -7/+37 | |
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 | video_core: support framebuffer crop rect top not zero | vonchenplus | 2 | -12/+25 | |
2022-08-20 | core: implement clkrst service | vonchenplus | 2 | -0/+184 | |
2022-08-20 | code: dodge PAGE_SIZE #define | Kyle Kienapfel | 17 | -119/+116 | |
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 | video_core: implement R16G16B16X16 texture format | Liam | 1 | -1/+1 | |
2022-08-19 | core/file_sys: fix BuildId padding | Liam | 2 | -11/+7 | |
2022-08-19 | yuzu: Allow longer controller profile names | Narr the Reg | 1 | -1/+1 | |
2022-08-16 | common: remove unneeded x86-specific header | liushuyu | 1 | -1/+0 | |
2022-08-15 | core/socket_proxy: Final nits | FearlessTobi | 1 | -8/+7 | |
2022-08-15 | core: network: Address review comments | german77 | 5 | -32/+31 | |
2022-08-15 | yuzu: Fix crash on shutdown | FearlessTobi | 2 | -6/+4 | |
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 | internal_network: Fix mingw compilation | FearlessTobi | 1 | -4/+5 | |
Apparently, "interface" is a reserved keyword on this compiler. | |||||
2022-08-15 | core, yuzu: Address first part of review comments | FearlessTobi | 9 | -71/+70 | |
2022-08-15 | core/socket_proxy: Fix compilation | FearlessTobi | 1 | -1/+1 | |
2022-08-15 | Make copyright headers SPDX-compliant | FearlessTobi | 6 | -12/+14 | |
2022-08-15 | core, network: Add ability to proxy socket packets | FearlessTobi | 28 | -526/+1028 | |
2022-08-15 | web_service: Correct jwt issuer string | FearlessTobi | 1 | -1/+3 | |
2022-08-15 | dedicated_room: Initial implementation | FearlessTobi | 4 | -0/+418 | |
2022-08-12 | Do some log memes to help perceived volume | Kelebek1 | 2 | -2/+5 | |
2022-08-12 | Allow audio volume up to 200% | Kelebek1 | 4 | -9/+7 | |
2022-08-12 | ips_layer: Delimit parsed hex value string | Morph | 1 | -1/+2 | |
Delimits the hex value string on spaces, slashes, carriage returns or newlines, allowing for comments to be added in-line. | |||||
2022-08-12 | review pass on CheckDarkMode function | Kyle Kienapfel | 2 | -4/+4 | |
2022-08-12 | core: ldn: Address review comments part 2 | german77 | 2 | -334/+297 | |
2022-08-09 | arm_dynarmic: Fix nullptr fastmem arenas | Merry | 2 | -7/+11 | |
Unable to enable fastmem of exclusive access without a valid fastmem arena. | |||||
2022-08-09 | Qt: tweak ui files | Kyle K | 2 | -2/+3 | |
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 | video_core/textures/decoders: Avoid SWIZZLE_TABLE | Merry | 2 | -15/+48 | |
2022-08-08 | hid: core: Properly emulate controller color and battery level | Narr the Reg | 4 | -25/+97 | |
2022-08-08 | core: ldn: Address review comments | Narr the Reg | 4 | -56/+46 | |
2022-08-08 | Make vsync setting work for Vulkan | DJRobX | 2 | -3/+4 | |
2022-08-08 | core/arm: fix build error | Liam | 2 | -2/+10 | |
2022-08-07 | ldn: Add better stubs and more data types | FearlessTobi | 6 | -72/+773 | |
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 | arm_dynarmic_cp15: Implement CP15DMB/CP15DSB/CP15ISB | Merry | 2 | -4/+29 | |
2022-08-07 | yuzu: Fix fmt 9.0.0 issues | lat9nq | 2 | -3/+4 | |
2022-08-06 | hid: core: Delay the stop vibration command when testing | Narr the Reg | 1 | -0/+4 | |
2022-08-05 | Controller bugfixes in profile select (#8716) | Steve | 3 | -5/+10 | |
* 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 | Linux: handle dark system themes nicely | Kyle K | 4 | -14/+77 | |
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-04 | Qt5 work around for suzhou numerals | Kyle Kienapfel | 1 | -0/+9 | |
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 | renderer_vulkan: add format fallbacks for R16G16B16_SFLOAT, R16G16B16_SSCALED, R8G8B8_SSCALED | Liam | 5 | -273/+337 | |
2022-08-02 | vk_texture_cache: return VK_NULL_HANDLE for views of null images | Liam | 1 | -0/+12 | |
2022-08-02 | core_timing: Sleep in discrete intervals, yield during spin | Morph | 1 | -12/+13 | |
2022-08-02 | Add missing looping event schedule signal | Kelebek1 | 1 | -5/+9 | |
2022-08-02 | Make coretiming waiting more accurate | Kelebek1 | 2 | -11/+31 | |
2022-08-02 | Rework multi-core vsync | Kelebek1 | 2 | -17/+30 | |
2022-08-02 | common: Use PROJECT_SOURCE_DIR to find CMakeModules | lat9nq | 1 | -3/+3 | |
Fixes CMake configuration when yuzu is a submodule of another project. | |||||
2022-08-01 | core/loader: remove ELF loader | Liam | 5 | -313/+0 | |
2022-08-01 | build(externals): rename Findopus to FindOpus | Andrea Pappacoda | 1 | -1/+1 | |
This better matches upstream's FindOpus.cmake file, and it will make using upstream's FindOpus.cmake file easier. | |||||
2022-07-31 | Properly write out the command buffer when serving close request | Nikita Strygin | 1 | -2/+5 | |
2022-07-30 | renderer_opengl: delete shader source after linking | Liam | 1 | -0/+1 | |
2022-07-30 | Translate english plurals | Kyle Kienapfel | 3 | -6/+14 | |
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 | video_core: stop waiting for shader compilation on user cancel | Liam | 2 | -2/+2 | |
2022-07-30 | audio_core: fix -Wuninitialized when compiling with ASan | Liam | 1 | -4/+4 | |
2022-07-29 | common: move forwarded value into SPSCQueue | Liam | 1 | -1/+1 | |
2022-07-29 | Add missed shader defines. Fixes Xenoblade Chronicles 3 booting with Vulkan. | Kelebek1 | 1 | -2/+3 | |
2022-07-28 | video_core: differentiate between tiled and untiled framebuffer sizes for unaccelerated copies | Liam | 1 | -9/+7 | |
2022-07-28 | Revert Coretiming PRs 8531 and 7454 (#8591) | Maide | 5 | -118/+69 | |
2022-07-28 | implement pause on system suspend (#8585) | snek | 2 | -1/+43 | |
2022-07-28 | Avoid depop out of bounds | Kelebek1 | 2 | -2/+2 | |
2022-07-27 | Merge pull request #8592 from devsnek/sig-handlers | snek | 2 | -0/+71 | |
exit gracefully on sigint/sigterm | |||||
2022-07-27 | yuzu: Add incremental steps to volume hotkeys | Narr the Reg | 1 | -2/+16 | |
2022-07-27 | chore: make yuzu REUSE compliant | Andrea Pappacoda | 180 | -487/+390 | |
[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 01cf05bc75b1e47beb08937439f3ed9339e7b254 | |||||
2022-07-25 | network: Address review comments | FearlessTobi | 5 | -199/+203 | |
2022-07-25 | network, yuzu: Make copyright headers SPDX-compliant | FearlessTobi | 37 | -111/+74 | |
2022-07-25 | network, yuzu: Improve variable naming and style consistency | FearlessTobi | 14 | -47/+53 | |
2022-07-25 | yuzu_cmd: Fix compilation | FearlessTobi | 2 | -13/+1 | |
2022-07-25 | network: Move global state into a seperate class | FearlessTobi | 21 | -96/+150 | |
Co-Authored-By: Narr the Reg <5944268+german77@users.noreply.github.com> | |||||
2022-07-25 | common: multiplayer: Use GameInfo type | german77 | 11 | -62/+60 | |
2022-07-25 | Address second part of review comments | FearlessTobi | 9 | -103/+92 | |
2022-07-25 | Address first part of review comments | FearlessTobi | 14 | -133/+231 | |
2022-07-25 | Fix compilation on linux gcc | FearlessTobi | 6 | -31/+32 | |
2022-07-25 | web_service: Fix -Wmissing-field-initializers | FearlessTobi | 1 | -1/+1 | |
2022-07-25 | core: Fix -Wunused-variable | FearlessTobi | 1 | -1/+3 | |
2022-07-25 | common, core: fix -Wmissing-field-initializers | FearlessTobi | 2 | -5/+5 | |
2022-07-25 | yuzu: Hide multiplayer button and room status | FearlessTobi | 2 | -16/+3 | |
2022-07-25 | yuzu: Add ui files for multiplayer rooms | FearlessTobi | 67 | -49/+4499 | |
2022-07-25 | network: Add initial files and enet dependency | FearlessTobi | 12 | -0/+2890 | |
2022-07-25 | Address comments | Narr the Reg | 2 | -17/+18 | |
2022-07-25 | kernel: unlayer CPU interrupt handling | Liam | 13 | -152/+64 | |
2022-07-24 | fix compiler errors | german77 | 2 | -12/+14 | |
2022-07-24 | service: irs: Implement clustering processor | german77 | 6 | -7/+320 | |
2022-07-24 | qt: reset progress bar after shader compilation | Liam | 1 | -0/+4 | |
2022-07-24 | qt_software_keyboard: Fix infinite loop when moving between buttons | Morph | 1 | -0/+14 | |
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 | applet/swkbd: Implement optional symbol keys | Morph | 5 | -4/+67 | |
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 | yuzu: Add webcam support and rebase to latest master | Narr the Reg | 8 | -16/+43 | |
2022-07-24 | service: irs: Move to IRS namespace and minor fixes | german77 | 19 | -76/+70 | |
2022-07-24 | service: irs: Split processors and implement ImageTransferProcessor | german77 | 18 | -291/+1091 | |
2022-07-24 | core: hid: Add cammera support | german77 | 6 | -3/+423 | |
2022-07-24 | yuzu: Hook qt camera to camera driver | german77 | 13 | -1/+481 | |
2022-07-24 | input_common: Add camera driver | german77 | 11 | -5/+298 | |
2022-07-23 | ci,CMake: Drop Conan support for vcpkg | lat9nq | 1 | -2/+3 | |
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 | Project Andio | Kelebek1 | 269 | -8436/+33703 | |
2022-07-19 | video_core: use correct byte size for framebuffer | Liam | 1 | -5/+8 | |
2022-07-19 | Update configure_input.ui | Matías Locatti | 1 | -1/+1 | |
2022-07-18 | implement resume message | Gus Caplan | 4 | -0/+23 | |
2022-07-17 | hle: service: nvflinger: Fix implicit conversion. | bunnei | 1 | -1/+4 | |
2022-07-17 | yuzu: settings: Remove framerate cap and merge unlocked framerate setting. | bunnei | 10 | -135/+15 | |
- These were all somewhat redundant. | |||||
2022-07-17 | hle: service: nvflinger: Factor speed limit into frame time calculation. | bunnei | 1 | -1/+8 | |
- This allows the %-based "Limit Speed Percent" setting to work with MC emulation. - This is already supported for SC emulation. | |||||
2022-07-16 | Enable the use of MSG_DONTWAIT flag on RecvImpl | Link4565 | 1 | -1/+19 | |
2022-07-16 | core/arm: skip watchpoint checks when reading instructions | Liam | 2 | -6/+6 | |
2022-07-15 | common/setting: Make ranged a property of the type | merry | 6 | -58/+59 | |
- 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 | KCodeMemory: Mark virtual methods as override | Merry | 1 | -3/+3 | |
2022-07-15 | common_funcs: Mark padding as [[maybe_unused]] | Merry | 1 | -4/+6 | |
2022-07-15 | nvflinger: Polymorphic destructor requried for abstract class IBinder | Merry | 1 | -0/+1 | |
2022-07-15 | dynarmic: Abort watchpoints ASAP | Merry | 4 | -8/+3 | |
2022-07-15 | kernel: Ensure all uses of disable_count are balanced | Liam | 3 | -10/+21 | |
2022-07-15 | kernel: be more careful about initialization path for HLE threads | Liam | 2 | -1/+8 | |
2022-07-15 | kernel: fix single-core preemption points | Liam | 6 | -40/+28 | |
2022-07-15 | kernel: fix issues with single core mode | Liam | 9 | -189/+225 | |
2022-07-15 | kernel: use KScheduler from mesosphere | Liam | 12 | -602/+563 | |
2022-07-14 | service: fatal: Add function table | german77 | 1 | -1/+7 | |
2022-07-14 | service: btdrv,bcat,btm: Update service tables to 14.0.0 | german77 | 3 | -4/+13 | |
2022-07-14 | service am: Update service tables to 14.0.0 | german77 | 1 | -0/+3 | |
2022-07-14 | service: ac: Replace intances of ProfileData with UserData | german77 | 3 | -24/+22 | |
2022-07-12 | startup_checks: Use WaitForSingleObject and more cleanup | lat9nq | 1 | -6/+9 | |
2022-07-11 | core: hid: Add fallback for dualjoycon and pro controllers | german77 | 2 | -1/+35 | |
2022-07-11 | startup_checks: Use GetEnvironmentVariableA | lat9nq | 1 | -4/+3 | |
Solves MSVC compile error. Also drops need string use for comparison. | |||||
2022-07-10 | startup_checks: Clean up | lat9nq | 1 | -9/+6 | |
Adds some comments, removes unused includes, and removes last bits of logging since this is before the logging backend starts up. | |||||
2022-07-10 | startup_checks: Implement unix side code | lat9nq | 2 | -17/+48 | |
Wow fork() is nice, isn't it? | |||||
2022-07-10 | yuzu: Simplify broken Vulkan handling | lat9nq | 9 | -115/+65 | |
2022-07-10 | yuzu: Check Vulkan on startup with a child | lat9nq | 3 | -1/+78 | |
2022-07-10 | yuzu: Rename check_vulkan to startup_checks | lat9nq | 4 | -3/+3 | |
2022-07-10 | PR | Kelebek1 | 5 | -11/+9 | |
2022-07-10 | Rework CoreTiming | Kelebek1 | 13 | -82/+154 | |
2022-07-10 | common: fix bitfield aliasing on GCC/Clang | Liam | 1 | -0/+9 | |
2022-07-10 | kernel: fix usage of waiter_list in Finalize | Liam | 1 | -3/+9 | |
2022-07-06 | guard against div-by-zero | Marshall Mohror | 1 | -2/+5 | |
2022-07-06 | common/x64: Use TSC clock rate from CPUID when available | Marshall Mohror | 3 | -1/+19 | |
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 | gpu_thread: Use the previous MPSCQueue implementation | Morph | 2 | -4/+3 | |
The bounded MPSCQueue implementation causes crashes in Fire Emblem Three Houses, use the previous implementation for now. | |||||
2022-07-06 | qt_web_browser: Fix button inputs with QtWebEngine | Morph | 1 | -2/+6 | |
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-06 | renderer_(gl/vk): Implement ASTC_10x6_UNORM | Morph | 7 | -1/+16 | |
- Used by Monster Hunter Rise Update 10.0.2 | |||||
2022-07-05 | CI: fix caching | liushuyu | 1 | -1/+7 | |
2022-07-02 | Core timing: use only one thread. | Fernando Sahmkow | 2 | -12/+2 | |
2022-07-02 | common/fiber: make fibers easier to use | Liam | 9 | -170/+79 | |
2022-06-30 | cpu_manager: properly check idle on return from preemption | Liam | 2 | -1/+8 | |
2022-06-30 | gdbstub_arch: Directly access SP register | lat9nq | 1 | -2/+6 | |
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 | settings: Consolidate RangedSetting's with regular ones | lat9nq | 8 | -320/+232 | |
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 | Adress Feedback. | Fernando Sahmkow | 3 | -19/+29 | |
2022-06-29 | Revert "vulkan_device: Block AMDVLK's VK_KHR_push_descriptor" | lat9nq | 1 | -11/+0 | |
2022-06-29 | service: nifm: Stub GetInternetConnectionStatus | german77 | 1 | -1/+41 | |
2022-06-29 | service: ptm: Rewrite PSM and add TS | german77 | 10 | -84/+183 | |
2022-06-29 | input_common: sdl: lower vibration frequency and use it's own unique thread | german77 | 3 | -3/+12 | |
2022-06-29 | service: hid: Correct some mistakes and add more validations | Narr the Reg | 5 | -40/+76 | |
2022-06-28 | Native clock: Use atomic ops as before. | Fernando Sahmkow | 2 | -24/+29 | |
2022-06-28 | Native Clock: remove inaccuracy mask. | Fernando Sahmkow | 2 | -6/+1 | |
2022-06-28 | Address feedback. | Fernando Sahmkow | 1 | -13/+13 | |
2022-06-28 | Core: Protect each event from race conditions within it. | Fernando Sahmkow | 2 | -0/+2 | |
2022-06-28 | Core: Fix tests. | Fernando Sahmkow | 3 | -2/+5 | |
2022-06-28 | Core: add missing include. | Fernando Sahmkow | 1 | -0/+1 | |
2022-06-28 | Core/Common: Corrections to core timing and add critical priority. | Fernando Sahmkow | 3 | -5/+11 | |
2022-06-28 | Core: Reimplement Core Timing. | Fernando Sahmkow | 3 | -55/+93 | |
2022-06-28 | Common: improve native clock. | Fernando Sahmkow | 3 | -29/+29 | |
2022-06-27 | video_core: Replace VKUpdateDescriptorQueue with UpdateDescriptorQueue | german77 | 14 | -33/+33 | |
2022-06-27 | video_core: Replace VKSwapchain with Swapchain | german77 | 5 | -25/+23 | |
2022-06-27 | video_core: Replace VKQueryCache with QueryCache | german77 | 6 | -28/+27 | |
2022-06-27 | video_core: Replace VKScheduler with Scheduler | german77 | 35 | -111/+110 | |
2022-06-27 | video_core: Replace VKBlitScreen with BlitScreen | german77 | 3 | -51/+51 | |
2022-06-27 | video_core: Replace VKFenceManager with FenceManager | german77 | 3 | -15/+14 | |
2022-06-27 | core: kernel: Replace instances of KPageLinkedList with KPageGroup | german77 | 11 | -64/+63 | |
2022-06-27 | core: Replace all instances of ResultCode with Result | german77 | 140 | -1176/+1136 | |
2022-06-26 | Re-add missing `case` and braces, and trim whitespace | comex | 1 | -1/+3 | |
2022-06-26 | Update src/core/hle/kernel/svc.cpp | comex | 1 | -6/+14 | |
Co-authored-by: liamwhite <liamwhite@users.noreply.github.com> | |||||
2022-06-26 | Support InfoType_MesosphereCurrentProcess | comex | 1 | -0/+14 | |
2022-06-25 | kernel: clean up waiting implementation | Liam | 2 | -4/+5 | |
2022-06-25 | core/arm: better support for backtrace generation | Liam | 5 | -15/+51 | |
2022-06-25 | gdbstub: fix register pokes | Liam | 1 | -0/+1 | |
2022-06-23 | kernel: make current thread pointer thread local | Liam | 13 | -52/+69 | |
2022-06-22 | KPageTable: Remove extraneous assert | Morph | 1 | -1/+0 | |
Since start is always 0 and VAddr is unsigned, we can safely remove this assert. | |||||
2022-06-22 | tweak API usage in qt_web_browser.cpp | Kyle Kienapfel | 1 | -3/+3 | |
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-22 | core/arm: increase minimum_run_cycles | Liam | 2 | -2/+2 | |
2022-06-22 | core/arm: re-enable cycle counting | merry | 2 | -6/+20 | |
2022-06-22 | dynarmic: Stop ReadCode callbacks to unmapped addresses | Liam | 4 | -24/+64 | |
2022-06-20 | service: am: Stub PerformSystemButtonPressingIfInFocus | Narr the Reg | 2 | -1/+24 | |
Used by Ring Fit Adventure | |||||
2022-06-18 | kernel: wait for threads to stop on pause | Liam | 3 | -0/+22 | |
2022-06-17 | core: fix initialization in single core, sync GPU mode | Liam | 4 | -0/+13 | |
2022-06-16 | Make yuzu-cmd respect log_filter setting | Nikita Strygin | 1 | -0/+6 | |
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 | Implement ExitProcess svc | Nikita Strygin | 1 | -1/+2 | |
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 | core/debugger: memory breakpoint support | Liam | 18 | -54/+510 | |
2022-06-16 | common: param_package: Demote DEBUG to TRACE for getters | Narr the Reg | 1 | -3/+3 | |
2022-06-16 | kernel: fix some uses of disable_count | Liam | 4 | -14/+7 | |
2022-06-15 | bounded_threadsafe_queue: Use constexpr capacity and mask | Morph | 2 | -87/+74 | |
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 | vk_compute_pass: Explicitly cast to VkAccessFlags | Morph | 1 | -25/+26 | |
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 | kernel: notify debugger on break SVC | Liam | 1 | -0/+7 | |
2022-06-15 | core: centralize profile scope for Dynarmic | Liam | 3 | -7/+2 | |
2022-06-14 | main: Eliminate variable shadowing | Morph | 1 | -3/+2 | |
2022-06-14 | kernel: implement KProcess suspension | Liam | 12 | -212/+199 | |
2022-06-14 | vk_compute_pass: Use VK_ACCESS_NONE | Morph | 1 | -1/+1 | |
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 | wait_tree: Eliminate variable shadowing | Morph | 2 | -12/+12 | |
2022-06-14 | configure_ringcon: Eliminate variable shadowing | Morph | 1 | -4/+4 | |
2022-06-14 | configure_touch_from_button: Eliminate variable shadowing | Morph | 2 | -3/+3 | |
2022-06-14 | configure_per_game: Eliminate variable shadowing | Morph | 2 | -4/+4 | |
2022-06-14 | configure_input_player: Eliminate variable shadowing | Morph | 1 | -39/+39 | |
2022-06-14 | configure_dialog: Eliminate variable shadowing | Morph | 2 | -5/+4 | |
2022-06-14 | bootmanager: Eliminate variable shadowing | Morph | 1 | -1/+1 | |
2022-06-14 | game_list: Eliminate variable shadowing | Morph | 5 | -19/+19 | |
2022-06-14 | vk_compute_pass: Silence Wextra warning | Morph | 1 | -1/+1 | |
Silences a warning about using enumerated and non-enumerated types in a conditional expression. | |||||
2022-06-14 | kernel: fix passthrough of local captures in lambda | Liam | 1 | -1/+3 | |
2022-06-14 | common/assert: rework ASSERT handling to avoid std::function usage | Liam | 2 | -35/+20 | |
2022-06-14 | general: fix compilation on MinGW GCC 12 | Liam | 2 | -6/+5 | |
2022-06-14 | common/assert: add unlikely | Liam | 1 | -1/+1 | |
2022-06-14 | general: fix compilation on GCC 12 | Liam | 2 | -2/+2 | |
2022-06-14 | kernel: ensure class token lambda exit is unreachable | Liam | 1 | -0/+1 | |
2022-06-14 | kernel: fix inconsistency in AutoObjectTraits macro definitions | Liam | 1 | -4/+7 | |
2022-06-14 | common: Don't test ASSERT conditions inline | Liam | 2 | -32/+36 | |
2022-06-14 | common: Change semantics of UNREACHABLE to unconditionally crash | Liam | 72 | -173/+182 | |
2022-06-14 | structured_control_flow: Remove constexpr Flow::Block | lat9nq | 1 | -6/+0 | |
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-14 | yuzu_cmd: Eliminate variable shadowing | Morph | 5 | -7/+7 | |
2022-06-14 | audio_core: Remove -Werror=unused-parameter | Morph | 1 | -1/+0 | |
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-14 | CMakeLists: Make variable shadowing a compile-time error | Morph | 6 | -16/+5 | |
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-14 | common: Eliminate variable shadowing | Morph | 1 | -2/+2 | |
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-14 | yuzu: Eliminate variable shadowing | Morph | 10 | -25/+25 | |
2022-06-14 | web_service: Eliminate variable shadowing | Morph | 2 | -12/+12 | |
2022-06-12 | core/debugger: allow remote connections | Liam | 1 | -1/+1 | |
2022-06-12 | gdbstub_arch: Add missing virtual destructor | Lioncash | 1 | -0/+1 | |
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 | log the MSVC runtime version when running on MSVC build | Kyle Kienapfel | 2 | -0/+30 | |
This might be useful information, not 100% sure. [ 0.958068] Frontend <Info> yuzu\main.cpp:GMainWindow:275: yuzu Version: yuzu Development Build | master-0b9ef3c0b-dirty [ 0.958095] Frontend <Info> yuzu\main.cpp:LogRuntimes:220: MSVC Compiler: 1931 Runtime: 14.32.31326.0 | |||||
2022-06-11 | UI: retranslate the game list placeholder | Kyle Kienapfel | 2 | -1/+16 | |
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 | service: hid: Fix gesture regression | Narr the Reg | 2 | -4/+3 | |
2022-06-10 | yuzu-cmd: ignore bogus timeous from SDL | Liam | 1 | -1/+9 | |
2022-06-10 | core/debugger: fix a number of shutdown deadlocks | Liam | 9 | -7/+72 | |
2022-06-10 | core/debugger: support operation in yuzu-cmd | Liam | 3 | -0/+15 | |
2022-06-09 | kernel: fix KCodeMemory initialization | Liam | 3 | -26/+118 | |
2022-06-09 | CpuManager: simplify pausing | Liam | 3 | -95/+36 | |
2022-06-07 | core/debugger: fix asio write usage | Liam | 1 | -2/+2 | |
2022-06-07 | core/debugger: fix crash due to incorrect lambda capture | Liam | 1 | -8/+9 | |
2022-06-07 | input_common: Replace usage of string guid to common uuid | Narr the Reg | 2 | -33/+38 | |
2022-06-06 | deprecate usage of QDesktopWidget for going fullscreen | Kyle Kienapfel | 1 | -3/+15 | |
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-06 | hle: service: nvflinger: buffer_queue_consumer: Always free released buffers. | bunnei | 3 | -31/+3 | |
2022-06-05 | common: consolidate ELF structure definitions | Liam | 5 | -263/+371 | |
2022-06-04 | configure_graphics: Remove unused include | lat9nq | 1 | -1/+0 | |
2022-06-04 | gdbstub: add missing library list command | Liam | 1 | -22/+28 | |
2022-06-03 | gpu_thread: Move to bounded queue | Levi Behunin | 3 | -4/+185 | |
2022-06-02 | Maxwell3D: Fix 3D semaphore counter type 0 handling | Billy Laws | 2 | -3/+3 | |
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 | core/debugger: Support reading guest thread names | Liam | 4 | -14/+172 | |
2022-06-02 | gdbstub: fix target descriptions | Liam | 2 | -10/+87 | |
2022-06-02 | ui: Status bars dock button becomes dock/undock button | Kyle Kienapfel | 2 | -5/+11 | |
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 | core/debugger: Define defaulted virtual destructors | Morph | 3 | -2/+6 | |
Resolves an MSVC warning where a virtual destructor is not defined in the base class with virtual functions. | |||||
2022-06-01 | core/debugger: Improved stepping mechanism and misc fixes | Liam | 15 | -122/+247 | |
2022-06-01 | gdbstub: Explicitly cast return type to u8 | Morph | 1 | -2/+2 | |
Otherwise, the addition promotes the returned value to an int instead of keeping it as a u8. | |||||
2022-06-01 | fix UI opening fullscreen after certain crashes | Kyle Kienapfel | 1 | -0/+4 | |
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-06-01 | core/debugger: Implement new GDB stub debugger | Liam | 27 | -42/+1500 | |
2022-05-31 | service: hid: Improve stub of IRS | Narr the Reg | 2 | -21/+460 | |
2022-05-30 | main: Insert warning text on broken Vulkan | lat9nq | 1 | -1/+6 | |
Co-authored-by: Schplee <24275329+Schplee@users.noreply.github.com> | |||||
2022-05-30 | main: Save config on broken Vulkan detect | lat9nq | 1 | -0/+2 | |
Prevents possible issues if someone were to open yuzu repeatedly over and over again. | |||||
2022-05-30 | yuzu-qt: Make has_broken_vulkan only for crashes | lat9nq | 5 | -11/+17 | |
Being able to catch and handle a Vulkan exception is not what this is for. | |||||
2022-05-30 | vulkan_library: Add debug logging | lat9nq | 1 | -0/+4 | |
2022-05-30 | yuzu-qt: Attempt to workaround broken Vulkan installations | lat9nq | 9 | -46/+166 | |
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 | default_ini: Reflect new renderer backend default setting | lat9nq | 1 | -1/+1 | |
2022-05-30 | settings: Set Vulkan to the default renderer backend | lat9nq | 1 | -1/+1 | |
2022-05-30 | motion touch ui: move remaining connection out of .ui file | Kyle K | 2 | -18/+3 | |
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 | Update some files with Qt 5.15.2 best practices in mind | Kyle K | 8 | -17/+22 | |
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 | Logging: Report Post Windows 10 2004 versions, like Windows 11 | Kyle K | 1 | -1/+26 | |
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 | yuzu-qt: Call -Wl,--subsystem,windows directly | lat9nq | 1 | -1/+1 | |
-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-27 | service: hid: Implement ResetIsSixAxisSensorDeviceNewlyAssigned | german77 | 5 | -6/+125 | |
Needed by Nintendo Switch Sports | |||||
2022-05-27 | service: hid: Implement LoadSixAxisSensorCalibrationParameter and GetSixAxisSensorIcInformation | german77 | 5 | -3/+136 | |
Needed by Nintendo Switch Sports | |||||
2022-05-27 | service: hid: Implement EnableSixAxisSensorUnalteredPassthrough and IsSixAxisSensorUnalteredPassthroughEnabled | german77 | 4 | -2/+88 | |
Needed by Nintendo Switch Sports | |||||
2022-05-27 | service: hid: Add error handling to sixaxis functions | german77 | 3 | -31/+55 | |
2022-05-27 | service: hid: Refractor sixaxis functions | german77 | 2 | -185/+88 | |
2022-05-27 | service: hid: Implement MergeSingleJoyAsDualJoy according to RE | german77 | 4 | -65/+57 | |
2022-05-27 | service: hid: Add error handling to setNpadAssignment and variants | german77 | 3 | -23/+27 | |
2022-05-27 | service: hid: Quick RE fixes and comments | german77 | 4 | -54/+68 | |
2022-05-27 | path_util: Resolve `-Wpointer-bool-conversion` warning | lat9nq | 1 | -3/+1 | |
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-25 | vulkan_device: Workaround extension bug | lat9nq | 1 | -1/+6 | |
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 | vulkan_device: Block AMDVLK's VK_KHR_push_descriptor | lat9nq | 1 | -0/+11 | |
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-23 | input_common: Make vibration request async | Narr the Reg | 4 | -7/+63 | |
2022-05-23 | input_common: touch: Rewrite touch driver to support multiple touch points | german77 | 8 | -92/+140 | |
2022-05-19 | UI: Translate hotkey labels in configuration | Kyle K | 2 | -26/+40 | |
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-17 | video_core: Support new VkResult | Alexandre Bouvier | 1 | -0/+2 | |
2022-05-16 | qt_software_keyboard: Address review feedback | lat9nq | 1 | -14/+14 | |
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 | about dialog: Fix the logo in a multiplatform way | Kyle K | 2 | -3/+19 | |
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 | main: Use Common::U16StringFromBuffer | lat9nq | 1 | -2/+4 | |
See ffd3afcf2 | |||||
2022-05-16 | qt_software_keyboard: Use Common::U16StringFromBuffer | lat9nq | 1 | -14/+15 | |
See ffd3afcf2 | |||||
2022-05-16 | string_util: Add U16StringFromBuffer | lat9nq | 2 | -0/+6 | |
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-14 | general: Avoid ambiguous format_to compilation errors | Lioncash | 3 | -3/+3 | |
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-13 | time_zone_manager: Use s8 for month length tables | Morph | 1 | -4/+3 | |
Using this smaller type saves 512 bytes in the compiled executable. | |||||
2022-05-13 | video_core/surface: Use u8 for PixelFormat block tables | Morph | 1 | -3/+3 | |
Using this smaller type saves 33280 bytes in the compiled executable. | |||||
2022-05-13 | codecs/vp9: Use u8 for norm and map luts | Morph | 1 | -4/+4 | |
Using this smaller type saves 1536 bytes in the compiled executable. | |||||
2022-05-13 | command_generator: Use u8 for tap index lut | Morph | 1 | -8/+8 | |
Using this smaller type saves 1024 bytes in the compiled executable. | |||||
2022-05-11 | maxwell_dma: use fallback if remapping is enabled | Liam | 1 | -3/+6 | |
2022-05-10 | video_core/macro: clear code on upload address assignment | Liam | 3 | -0/+10 | |
2022-05-09 | service: notifa: Implement most part of this service | german77 | 2 | -8/+172 | |
Implements partially RegisterAlarmSetting, UpdateAlarmSetting, LoadApplicationParameter, DeleteAlarmSetting. Needed for Fitness `Boxing 2: Rhythm & Exercise` and `Ring Fit Adventure`. | |||||
2022-05-09 | VideoCore: Add option to dump the macros. | Fernando Sahmkow | 4 | -0/+44 | |
Co-Authored-By: liamwhite <liamwhite@users.noreply.github.com> | |||||
2022-05-08 | video_core/macro_jit_x64: warn on invalid parameter access | Liam | 1 | -3/+21 | |
2022-05-07 | OpenGL: implement face flips according to NDC | Liam | 1 | -4/+3 | |
2022-05-07 | maxwell_dma: fix bytes per pixel | Liam | 1 | -3/+3 | |
2022-05-06 | service: hid: Fix motion refresh rate | Narr the Reg | 2 | -2/+6 | |
2022-05-06 | service: hid: Disable correctly motion input | german77 | 1 | -50/+41 | |
2022-05-06 | vk_rasterizer: fix stencil test when two faces are disabled | Lody | 1 | -2/+2 | |
2022-05-03 | hle/result: Update std::expected replacement message | Morph | 1 | -1/+1 | |
std::expected is included in C++23 | |||||
2022-05-03 | hle/result: Add ResultRange overload in ResultVal | Morph | 1 | -1/+3 | |
Also marks the implicit conversion operator as constexpr instead of consteval as the constructor is not constant evaluated. | |||||
2022-05-03 | hle/result: Implement ResultRange | Morph | 1 | -0/+42 | |
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 | Revert "gc_adapter: fix libusb import on GCC11.2" | Morph | 1 | -4/+0 | |
This reverts commit f72f4377f4cbbe45e5a43bb67c7245737ffa135f. | |||||
2022-05-02 | gc_adapter: fix libusb import on GCC11.2 | Levi Behunin | 1 | -0/+4 | |
Just to silence an intermittent error. GCC11.2 complains cannot find 'libusb.h' during a fresh build. | |||||
2022-05-02 | ui: retranslate the network tab | Kyle K | 2 | -2/+11 | |
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 | ui: let system locale control format of Custom RTC | Kyle K | 1 | -3/+0 | |
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-28 | GCC 12 fixes | Liam | 3 | -4/+4 | |
2022-04-28 | chore: add missing SPDX tags | Andrea Pappacoda | 33 | -357/+90 | |
Follow-up to 99ceb03a1cfcf35968cab589ea188a8c406cda52 | |||||
2022-04-27 | Changes to language order in General -> UI -> Interface Language | Kyle K | 1 | -6/+67 | |
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 | service: hid: Stub IsFirmwareUpdateNeededForNotification | german77 | 2 | -1/+21 | |
Used in Fitness Boxing 2: Rhythm & Exercise (0100073011382000) | |||||
2022-04-27 | yuzu: Config allow to delete single axis directions when buttons are mapped to a stick | Narr the Reg | 2 | -3/+24 | |
2022-04-27 | yuzu: config: Set default range to 95% | Narr the Reg | 3 | -6/+6 | |
2022-04-26 | renderer_vulkan: Update screen info if the framebuffer size has changed | Morph | 1 | -0/+5 | |
2022-04-25 | service: jit: document and clean up | Liam | 3 | -132/+225 | |
2022-04-24 | kernel: svc: Replace -1ULL with 0xFFFFFFFFFFFFFFFF | Morph | 1 | -1/+1 | |
Resolves the C4146 compiler warning on MSVC. | |||||
2022-04-24 | Remove unused PrepareReschedule function | Merry | 7 | -20/+0 | |
2022-04-24 | service: hid: Ensure all structs are initialized | Narr the Reg | 16 | -104/+105 | |
2022-04-23 | service: hid: Access shared memory directly | Narr the Reg | 21 | -305/+347 | |
2022-04-23 | hotkeys: Trigger actions on a separate thread | Narr the Reg | 1 | -3/+5 | |
2022-04-23 | general: Convert source file copyright comments over to SPDX | Morph | 1366 | -4208/+2745 | |
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-21 | core/arm: separate backtrace collection | Liam | 6 | -90/+98 | |
2022-04-21 | input_common: Ignore boost uninitialized local variable | Narr the Reg | 1 | -0/+9 | |
2022-04-19 | Prevent the mouse cursor from leaving the window when mouse panning is enabled | Purple | 2 | -2/+41 | |
2022-04-19 | ui: translate hat directions | Kyle K | 1 | -1/+19 | |
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-18 | service: hid: Improve accuracy of sixaxis functions | Narr the Reg | 6 | -99/+363 | |
2022-04-18 | yuzu: mention GPLv3.0+ in about dialog | Andrea Pappacoda | 1 | -1/+1 | |
Follow-up to 284934ebfdf5e530c960cf69969172ff76f40bea Fixes #8218 | |||||
2022-04-18 | bootmanager: Don't create another screenshot request if previous one is not done yet | german77 | 3 | -0/+13 | |
2022-04-17 | ui: Fix Game Compatibility list translations | Kyle K | 3 | -3/+6 | |
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 | yuzu: Call ignore event after ensuring it's initialized | Narr the Reg | 2 | -2/+2 | |
2022-04-16 | yuzu: Add custom ringcon configuration | german77 | 19 | -65/+992 | |
2022-04-16 | hidbus: Implement hidbus and ringcon | german77 | 14 | -26/+1679 | |
2022-04-14 | video_core: implement formats for N64 emulation | Fernando Sahmkow | 8 | -7/+102 | |
2022-04-14 | buffer_cache: cap vertex buffer sizes | Liam | 1 | -1/+14 | |
2022-04-14 | maxwell3d: add small_index_2 register | Liam | 2 | -1/+11 | |
2022-04-13 | dynarmic: Fix single core mode | merry | 2 | -2/+2 | |
Regression introduced in a5d040df3d. Closes #8201. | |||||
2022-04-13 | service: jit: Implement the JIT service | Liam | 5 | -9/+784 | |
2022-04-12 | ui: Touching QPalette::Text broke dark -> light UI. don't do | Kyle K | 1 | -2/+0 | |
2022-04-12 | core: hle: kernel: k_thread: Rework dummy thread waiting. | bunnei | 2 | -28/+21 | |
2022-04-12 | core: hle: service: Allocate a service thread. | bunnei | 1 | -1/+2 | |
2022-04-12 | hle: kernel: k_spin_lock: Remove unused ThreadPause. | bunnei | 1 | -28/+0 | |
2022-04-12 | hle: kernel: Use std::mutex instead of spin locks for most kernel locking. | bunnei | 10 | -32/+23 | |
2022-04-12 | service: sfdnsres: add missing includes for some BSDs after 82d46a974ad4 | Jan Beich | 1 | -0/+4 | |
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 | ui: Set Link Color when setting theme | Kyle K | 3 | -0/+20 | |
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-10 | dynarmic: Fix race when switching page tables | merry | 4 | -57/+84 | |
2022-04-09 | hle: kernel: Invalidate entire icache in UnmapProcessMemory and UnmapCodeMemory (fixes #8174) | tech-ticks | 4 | -15/+34 | |
2022-04-09 | core: extract symbol reading | Liam | 4 | -129/+231 | |
2022-04-08 | hle: kernel: Unify and integrate reference tracking for KServerPort/KServerSession. | bunnei | 6 | -13/+46 | |
- These are not managed elsewhere, and need to be tracked and closed on emulation shutdown. | |||||
2022-04-08 | hle: kernel: k_server_port: Release ref-counted host emulation members on Destroy. | bunnei | 1 | -0/+3 | |
2022-04-08 | hle: kernel: k_auto_object: Move unregister with kernel to after Destroy. | bunnei | 1 | -3/+2 | |
- Destructor is no longer invoked, so our object counting was off. | |||||
2022-04-08 | hle: service: sm: Remove manual tracking of KServerPorts. | bunnei | 2 | -8/+1 | |
2022-04-08 | hle: kernel: hle_ipc: HasSessionRequestHandler: Check if domain handler is expired rather than locking. | bunnei | 1 | -1/+1 | |
2022-04-08 | service: sfdnsres: Implement DNS address resolution | tech-ticks | 2 | -5/+197 | |
2022-04-08 | CMakeLists: Enforce C4505 and C5245 | Morph | 1 | -0/+2 | |
These are similar to Wunused-function on gcc/clang | |||||
2022-04-08 | core: hid: Fix double lock on softlock and forced updates | Narr the Reg | 1 | -2/+12 | |
2022-04-07 | service: bsd: Add keepalive socket option | tech-ticks | 4 | -0/+10 | |
2022-04-07 | patch_manager: Apply layered exefs patches from 'atmosphere' SD directory | tech-ticks | 1 | -25/+38 | |
2022-04-07 | core: hid: Replace lock_guard with scoped_lock | Narr the Reg | 3 | -44/+44 | |
2022-04-07 | core/hle: Standardize scoped_lock initializers | Merry | 5 | -23/+23 | |
2022-04-07 | yuzu/util: Replace lock_guard with scoped_lock | Merry | 1 | -1/+1 | |
2022-04-07 | web_service: Replace lock_guard with scoped_lock | Merry | 1 | -2/+2 | |
2022-04-07 | video_core: Replace lock_guard with scoped_lock | Merry | 11 | -18/+18 | |
2022-04-07 | input_common: Replace lock_guard with scoped_lock | Merry | 2 | -29/+29 | |
2022-04-07 | core: Replace lock_guard with scoped_lock | Merry | 2 | -14/+14 | |
2022-04-07 | core/hle: Replace lock_guard with scoped_lock | Merry | 4 | -13/+13 | |
2022-04-07 | common: Replace lock_guard with scoped_lock | Merry | 3 | -5/+5 | |
2022-04-07 | core: hid: Reduce the amount of dataraces | german77 | 6 | -176/+246 | |
2022-04-07 | fix: remove #pragma once in .cpp file | Andrea Pappacoda | 1 | -2/+0 | |
2022-04-07 | service: jit: stub JIT service | Liam | 8 | -1/+88 | |
2022-04-07 | OpenGL: fix S8D24 to ABGR8 conversions | Liam | 6 | -4/+58 | |
2022-04-06 | service: hid: Partially revert #8123 | german77 | 1 | -0/+4 | |
2022-04-06 | k_system_control: Fix data race | lat9nq | 1 | -3/+3 | |
`return distribution(gen)` is a data race between a read and a write in two threads, reported by TSan. Remove static random number generators so they aren't using the same generator. | |||||
2022-04-05 | dynarmic: Print stack trace on unrecognised instruction or other exception | merry | 2 | -0/+4 | |
2022-04-05 | build: remove -fconcepts | Andrea Pappacoda | 1 | -6/+0 | |
It was needed on GCC versions not supporting `-std=c++20`, but GCC 10 and newer (required to compile yuzu) don't need it anymore | |||||
2022-04-05 | Revert "texture_cache/util: Remove unneeded ReadBlockUnsafe" | bunnei | 1 | -0/+1 | |
2022-04-04 | shader_recompiler: Decrease indirect cbuf limit to match hardware | Liam | 1 | -1/+1 | |
2022-04-04 | texture_cache/util: Remove unneeded ReadBlockUnsafe | ameerj | 1 | -1/+0 | |
This call was reading GPU memory into the dst buffer, which is then overwritten by the SwizzleTexture call. | |||||
2022-04-04 | OpenGL: fix cropping | Liam | 3 | -1/+10 | |
2022-04-04 | Vulkan: crop to screen dimensions if crop not explicitly requested | Liam | 1 | -2/+3 | |
2022-04-04 | OpenGL: propagate face flip condition | Liam | 1 | -4/+10 | |
2022-04-04 | OpenGL: flip front faces if Z scale is inverted | Liam | 1 | -2/+3 | |
2022-04-04 | k_auto_object: Fix data race | lat9nq | 1 | -1/+1 | |
Change the memory order to acqure-release when we decrement the reference count. Prevents a race with line 89 reported by TSan. | |||||
2022-04-04 | k_thread: Fix data race | lat9nq | 2 | -3/+4 | |
TSan reports a data race between writing at cpp:1162 and reading at h:262. Make the thread_state atomic to prevent this. | |||||
2022-04-04 | k_process: Fix data race | lat9nq | 1 | -1/+1 | |
TSan reported a race between thread 36 and thread 34, a read at :225 and a write at :225 respectively. Make total_proces_running_time_ticks atomic to avoid this race. | |||||
2022-04-04 | kernel: Fix current_process race | lat9nq | 1 | -4/+4 | |
TSan reported a race at :258 and :803, so make current_process an atomic pointer. | |||||
2022-04-04 | k_scheduler_lock: Fix data race | lat9nq | 1 | -1/+2 | |
TSan reports a race between the main thread and T37 during IsLockedByCurrentThread and when it's set at the end of Lock(), respectively. Set owner_thread to an atomic pointer to fix it. Co-authored-by: bunnei <bunneidev@gmail.com> | |||||
2022-04-03 | native_clock: Internal linkage for FencedRDTSC | Merry | 1 | -2/+4 | |
__forceinline required on MSVC for function to be inlined | |||||
2022-04-03 | native_clock: Use lfence with rdtsc | merry | 1 | -14/+33 | |
2022-04-03 | arm_dynarmic: Use HaltReason for svc calls and reschedules | merry | 4 | -27/+19 | |
2022-04-03 | dynarmic: Better interrupts | merry | 6 | -22/+27 | |
2022-04-03 | service: npad: Default initialize shared memory | german77 | 1 | -48/+48 | |
2022-04-02 | native_clock: Use writeback from CAS to avoid double-loading | merry | 1 | -4/+6 | |
2022-04-02 | atomic_ops: Implement AtomicCompareAndSwap with writeback | merry | 1 | -0/+73 | |
2022-04-02 | native_clock: Use AtomicLoad128 | Merry | 1 | -2/+2 | |
2022-04-02 | atomic_ops: Implement AtomicLoad128 | Merry | 1 | -0/+17 | |
2022-04-02 | configure_per_game_addons: Set tree view minimum section size to 150px | merry | 1 | -0/+1 | |
2022-04-02 | configure_hotkeys: Make first column stretch and not last column | merry | 1 | -3/+4 | |
Also configure minimum width of columns to be 150px. | |||||
2022-04-02 | fix: typos | Andrea Pappacoda | 5 | -10/+10 | |
2022-04-02 | configure_per_game_addons: Stretch first column and not last | merry | 1 | -1/+4 | |
This provides more sensible column widths. | |||||
2022-04-02 | hle: service: nvflinger: buffer_queue_producer: Cleanup & fixes. | bunnei | 2 | -61/+42 | |
2022-04-02 | hle: service: nvflinger: consumer_base: Cleanup & fixes. | bunnei | 2 | -15/+17 | |
2022-04-02 | hle: service: nvflinger: buffer_queue_producer: Cleanup & add GetReleasedBuffers. | bunnei | 2 | -10/+38 | |
2022-04-02 | hle: service: nvflinger: buffer_queue_core: Cleanup & fixes. | bunnei | 2 | -3/+0 | |
2022-04-02 | hle: service: nvflinger: Use correct logger namespace. | bunnei | 1 | -2/+2 | |
2022-04-02 | hle: service: nvdrv: Create a service thread where appropriate. | Morph | 1 | -1/+1 | |
2022-04-02 | hle: service: vi: Create a service thread where appropriate. | bunnei | 1 | -1/+2 | |
2022-04-02 | hle: service: bsd: Create a service thread where appropriate. | bunnei | 1 | -1/+2 | |
2022-04-02 | hle: service: filesystem: Create a service thread where appropriate. | bunnei | 1 | -5/+8 | |
2022-04-02 | hle: service: audio: Create a service thread where appropriate. | bunnei | 2 | -4/+6 | |
2022-04-02 | hle: service: Add option for service interfaces to create or use the default thread. | bunnei | 5 | -11/+29 | |
2022-04-02 | hle: kernel: Create a default thread for services that do not need their own host thread. | bunnei | 2 | -4/+26 | |
2022-04-02 | applets/web: Keep foreground (websession) web applet open | Morph | 1 | -0/+8 | |
This is a hack to keep the foreground (websession) web applet open in games using these such as Super Mario 3D All-Stars. | |||||
2022-04-01 | shader_compiler: support const buffer indirect addressing in GLSL | Liam | 4 | -9/+38 | |
2022-04-01 | audio_core: remove time stretcher | Andrea Pappacoda | 6 | -137/+3 | |
Also drop the SoundTouch dependency | |||||
2022-04-01 | shader_recompiler: support const buffer indirect addressing on OpenGL SPIR-V | Liam | 3 | -17/+14 | |
2022-04-01 | GPU Garbage Collection: Fix regressions. | Fernando Sahmkow | 2 | -3/+1 | |
2022-03-31 | service: hid: Remove inaccurate behavior on initialization | german77 | 3 | -18/+21 | |
2022-03-31 | service: hid: Signal event on AcquireNpadStyleSetUpdateEventHandle | Narr the Reg | 1 | -0/+4 | |
2022-03-29 | nvhost_ctrl: Only mark EventState::Busy as BadParameter | ameerj | 1 | -1/+1 | |
Fixes an svc break in Kirby and the Forgotten Land with async GPU enabled. | |||||
2022-03-29 | yuzu_cmd: Start the logging backend | lat9nq | 1 | -0/+1 | |
2022-03-29 | yuzu: Only override fullscreen setting if gamepath or argument is provided | german77 | 1 | -3/+10 | |
2022-03-29 | gl_rasterizer: Avoid scenario locking already owned mutex | ameerj | 1 | -3/+3 | |
gpu.TickWork() may lock the texture_cache and buffer_cache mutexes, which are owned by the thread prior to invoking TickWork(). Defer invoking gpu.TickWork() until the scope ends, where the owned mutexes are released. | |||||
2022-03-27 | registered_cache: Prevent nullptr dereference when accumulating files | Morph | 1 | -2/+4 | |
For whatever reason, nca_file/dir can be nullptr in the list of files/dirs. I have not determined the cause of this yet, so add a nullptr check for these prior to dereferencing them. | |||||
2022-03-27 | arm_dynarmic_64: Invalidate on all cores | merry | 1 | -2/+4 | |
2022-03-27 | build: cleanup installation of yuzu and yuzu-cmd | Andrea Pappacoda | 2 | -2/+2 | |
Explicitly specifying an install destination is not needed anymore since CMake 3.14. By removing the hardcoded ${CMAKE_INSTALL_PREFIX}/bin it is also now possible to override the install destination via the command line. For example, you can now install yuzu to /usr/games with -DCMAKE_INSTALL_BINDIR=games | |||||
2022-03-26 | Revert "Memory GPU <-> CPU: reduce infighting in the texture cache by adding CPU Cached memory." | bunnei | 6 | -65/+4 | |
2022-03-26 | configure_cpu: More descriptive text for Paranoid option | merry | 1 | -1/+1 | |
2022-03-26 | hle: kernel: k_page_table: Fix implementations of LockForCodeMemory & UnlockForCodeMemory. | bunnei | 1 | -48/+12 | |
2022-03-26 | hle: kernel: k_page_table: Implement LockMemoryAndOpen & UnlockMemory. | bunnei | 2 | -0/+124 | |
2022-03-26 | configuration: Add Paranoid CPU accuracy level | merry | 4 | -45/+63 | |
Disables most optimizations for the paranoid. | |||||
2022-03-26 | hle: kernel: svc: MapProcessMemory: Fix usage of KPageLinkedList to use physical address space. | bunnei | 1 | -2/+5 | |
2022-03-26 | hle: kernel: svc: CreateCodeMemory: Remove log of 'out' host pointer. | bunnei | 1 | -2/+2 | |
- This does not seem terribly useful and is inconsistent with other usage. | |||||
2022-03-26 | hle: kernel: k_code_memory: Fix usage of KPageLinkedList to use physical address space. | bunnei | 1 | -1/+2 | |
2022-03-26 | hle: kernel: k_page_table: Implement MakeAndOpenPageGroup & MakePageGroup. | bunnei | 2 | -0/+83 | |
2022-03-26 | hle: kernel: k_page_table: Add IsHeapPhysicalAddress method. | bunnei | 1 | -0/+8 | |
2022-03-26 | hle: kernel: k_page_linked_list: Add Empty method. | bunnei | 1 | -0/+4 | |
2022-03-26 | hle: kernel: svc: UnmapProcessCodeMemory: Fix inverted alignment check. | bunnei | 1 | -1/+1 | |
2022-03-26 | hle: service: nvflinger: buffer_queue: Remove AutoLock and fix free buffer tracking. | bunnei | 5 | -181/+130 | |
2022-03-26 | hle: service: nvflinger: buffer_queue_consumer: Use scoped_lock instead of unique_lock. | bunnei | 1 | -2/+2 | |
2022-03-26 | hle: service: nvflinger: consumer_base: Use scoped_lock instead of unique_lock. | bunnei | 1 | -4/+4 | |
2022-03-26 | hle: service: nvflinger: Remove unused BufferQueue. | bunnei | 2 | -360/+0 | |
2022-03-25 | Memory: Don't protect reads on Normal accuracy. | Fernando Sahmkow | 1 | -1/+1 | |
2022-03-25 | Texture Cache: Add Cached CPU system. | Fernando Sahmkow | 5 | -3/+64 | |
2022-03-25 | GC: Address Feedback. | Fernando Sahmkow | 7 | -29/+37 | |
2022-03-25 | hle: nvflinger: ConsumerBase: Mark ctor as explicit. | bunnei | 1 | -1/+1 | |
2022-03-25 | hle: vi: NativeWindow: Fix trivially copyable issues. | bunnei | 1 | -4/+4 | |
2022-03-25 | hle: nvdrv: nvdata: buffer_queue_producer: Minor cleanup. | bunnei | 1 | -11/+11 | |
2022-03-25 | hle: nvdrv: nvdata: Cleanup NvFence static assert. | bunnei | 1 | -1/+1 | |
2022-03-25 | hle: nvflinger: Remove unused unordered_map include. | bunnei | 1 | -1/+0 | |
2022-03-25 | hle: nvflinger: buffer_queue_consumer: AcquireBuffer: Fix typo. | bunnei | 1 | -1/+1 | |
2022-03-25 | hle: nvflinger: Merge Rect with Common::Rectangle. | bunnei | 6 | -90/+54 | |
2022-03-25 | hle: nvflinger: buffer_queue_core: Declare default dtor. | bunnei | 2 | -0/+3 | |
2022-03-25 | hle: nvflinger: buffer_queue_producer: DequeueBuffer: Remove unnecessary lock. | bunnei | 1 | -3/+1 | |
2022-03-25 | hle: nvflinger: consumer_base: StillTracking: Should be const. | bunnei | 2 | -2/+3 | |
2022-03-25 | hle: nvflinger: graphic_buffer_producer: Remove unnecessary pragma pack. | bunnei | 1 | -2/+0 | |
2022-03-25 | hle: nvflinger: parcel: Reserve token size. | bunnei | 1 | -1/+2 | |
2022-03-25 | hle: nvflinger: buffer_queue_core: StillTracking: Take const reference. | bunnei | 4 | -7/+7 | |
2022-03-25 | hle: nvflinger: buffer_queue_core: Cleanup locking. | bunnei | 1 | -2/+2 | |
2022-03-25 | hle: nvflinger: Use std::chrono for present_ns. | bunnei | 7 | -25/+30 | |
2022-03-25 | hle: nvflinger: Migrate android namespace -> Service::android. | bunnei | 35 | -79/+76 | |
2022-03-25 | hle: nvflinger: BufferQueueProducer: Handle SetPreallocatedBuffer with empty buffer. | bunnei | 1 | -7/+10 | |
- Used by Naruto Ultimate Ninja Storm. | |||||
2022-03-25 | hle: vi: Integrate new NVFlinger and HosBinderDriverServer service. | bunnei | 17 | -723/+286 | |
2022-03-25 | hle: nvflinger: Add implementation for HosBinderDriverServer service. | bunnei | 3 | -0/+75 | |
2022-03-25 | hle: nvflinger: Add implementation for BufferQueueProducer class. | bunnei | 3 | -2/+1021 | |
2022-03-25 | hle: nvflinger: Add implementation for BufferQueueCore class. | bunnei | 3 | -0/+235 | |
2022-03-25 | hle: nvflinger: Add implementation for BufferQueueConsumer class. | bunnei | 3 | -0/+263 | |
2022-03-25 | hle: nvflinger: Add implementation for QueueBufferInput and QueueBufferOutput structs. | bunnei | 3 | -0/+100 | |
2022-03-25 | hle: nvflinger: Add implementation for BufferItemConsumer class. | bunnei | 3 | -0/+87 | |
2022-03-25 | hle: nvflinger: Add implementation for ConsumerBase class. | bunnei | 3 | -0/+190 | |
2022-03-25 | hle: nvflinger: Add implementation for BufferSlot class. | bunnei | 2 | -0/+40 | |
2022-03-25 | hle: nvflinger: Add implementation for BufferItem class. | bunnei | 2 | -0/+47 | |
2022-03-25 | hle: nvflinger: Move implementation for Parcel to its own header. | bunnei | 2 | -0/+172 | |
2022-03-25 | hle: nvflinger: Add android buffer queue definitions to its own header. | bunnei | 2 | -0/+22 | |
2022-03-25 | hle: nvflinger: Add IBinder interface. | bunnei | 2 | -0/+43 | |
2022-03-25 | hle: nvflinger: Add IConsumerListener interface. | bunnei | 2 | -0/+27 | |
2022-03-25 | hle: nvflinger: Add ProducerListener interface. | bunnei | 2 | -0/+17 | |
2022-03-25 | hle: nvflinger: Add android window enumerations to its own header. | bunnei | 2 | -0/+54 | |
2022-03-25 | hle: nvflinger: Add android Status flags to its own header. | bunnei | 1 | -0/+28 | |
2022-03-25 | hle: nvflinger: Move BufferTransformFlags to its own header. | bunnei | 4 | -18/+29 | |
2022-03-25 | hle: nvdrv: Rename Fence to NvFence to avoid naming conflicts. | bunnei | 4 | -17/+13 | |
2022-03-25 | hle: nvflinger: Move PixelFormat to its own header. | bunnei | 11 | -33/+50 | |
2022-03-25 | hle: nvflinger: Add implementation for GraphicBuffer class. | bunnei | 2 | -0/+101 | |
2022-03-25 | hle: nvflinger: Add implementation for Fence class. | bunnei | 2 | -0/+34 | |
2022-03-25 | hle: nvflinger: Add implementation for Rect class. | bunnei | 2 | -0/+76 | |
2022-03-25 | common: logging: Add a logger for NVFlinger. | bunnei | 2 | -0/+2 | |
2022-03-25 | Garbage Collection: Final tuning. | Fernando Sahmkow | 6 | -24/+36 | |
2022-03-25 | Buffer Cache: Tune to the levels of the new GC. | Fernando Sahmkow | 6 | -6/+78 | |
2022-03-25 | Garbage Collection: Redesign the algorithm to do a better use of memory. | Fernando Sahmkow | 13 | -32/+156 | |
2022-03-24 | configure_debug: Fix typo | lat9nq | 1 | -2/+2 | |
I thought I removed the double-asterisks in db637b5a4c02772eb827ed01a6ecb430e4b65daa but I am apparently mistaken. This corrects that. While we're at it, capitalize `All` in the previous setting. | |||||
2022-03-24 | Vulkan: Use 3D helpers for MSAA scaling on NV drivers 510+ | ameerj | 3 | -7/+8 | |
Nvidia Vulkan drivers 510+ crash when blitting MSAA images. Fall-back to 3D scale helpers for MSAA image scaling. | |||||
2022-03-24 | buffer_cache: reset cached write bits after flushing invalidations | Liam | 1 | -1/+2 | |
2022-03-23 | dead_code_elimination_pass: Remove unreachable Phi arguments | ameerj | 3 | -0/+36 | |
2022-03-23 | Add include to fix compiling | Shoegzer | 1 | -0/+1 | |
2022-03-23 | Revert "dynarmic: Reduce size of code caches" | bunnei | 2 | -4/+4 | |
2022-03-22 | Include <bit> header when std::count{r,l}_zero is used | Billy Laws | 3 | -0/+4 | |
Needed for compilation with older libc++ releases | |||||
2022-03-22 | shader_recompiler/dead_code_elimination: Add DeadBranchElimination pass | ameerj | 1 | -9/+62 | |
This adds a pass to eliminate if(false) branches within the shader code | |||||
2022-03-22 | applets/swkbd: Split software keyboard initialization | Morph | 2 | -160/+349 | |
Since the CalcArg struct has been updated with a new size and fields, we have to split the initialization of the keyboard into multiple functions. This also adds support for parsing the new CalcArg struct used by updated versions of Monster Hunter Rise. | |||||
2022-03-22 | applets/swkbd: Add new inline software keyboard types | Morph | 1 | -6/+66 | |
These were added in newer firmware versions. | |||||
2022-03-22 | applets/mii: Remove unused include | Morph | 1 | -1/+0 | |
2022-03-22 | applets/mii: Remove frontend parameters | Morph | 2 | -17/+4 | |
These are unused for now as we do not support a frontend implementation. | |||||
2022-03-22 | applets/mii: Cleanup MiiEdit applet implementation | Morph | 2 | -44/+85 | |
This also enables proper support for MiiEdit applets which are used in games with firmware versions prior to 10.2.0 by handling the 2 different versions of applet inputs and outputs. | |||||
2022-03-22 | applets/mii: Cleanup MiiEdit applet types | Morph | 1 | -23/+44 | |
2022-03-22 | applets/mii: Move MiiEdit applet types into its own file | Morph | 4 | -54/+70 | |
2022-03-22 | service: Move mii enums and structs into its own file | Morph | 7 | -308/+312 | |
Moves these into types.h, since other files also make use of these types. | |||||
2022-03-22 | applets: Rename Mii to MiiEdit | Morph | 8 | -47/+49 | |
2022-03-22 | qt_web_browser: Add missing includes | ameerj | 1 | -0/+3 | |
2022-03-22 | input_common: Map sticks correctly when mapped sideways | Narr the Reg | 10 | -0/+127 | |
2022-03-22 | codec: Plug GPU decoder memory leak | ameerj | 1 | -0/+2 | |
2022-03-22 | codec: Disable HW_FRAMES method check on Windows | ameerj | 1 | -14/+19 | |
It was reported that this method causes crashes on certain Linux decoding backends, hence the check to avoid it. This subsequently caused Windows GPU decoders to never be selected and always fall back to CPU decoding, disable the check on Windows for now. | |||||
2022-03-20 | BufferCache: Find direction of the stream buffer increase. | Fernando Sahmkow | 1 | -6/+14 | |
2022-03-20 | general: Fix clang/gcc build errors | ameerj | 12 | -4/+17 | |
2022-03-20 | yuzu_cmd: Reduce unused includes | ameerj | 5 | -9/+0 | |
2022-03-20 | yuzu: Reduce unused includes | ameerj | 45 | -104/+5 | |
2022-03-20 | web_service: Reduce unused includes | ameerj | 1 | -1/+0 | |
2022-03-20 | input_common: Reduce unused includes | ameerj | 4 | -4/+0 | |
2022-03-20 | shader_recompiler: Reduce unused includes | ameerj | 69 | -106/+7 | |
2022-03-19 | common: Reduce unused includes | ameerj | 30 | -32/+8 | |
2022-03-19 | video_core: Reduce unused includes | ameerj | 75 | -139/+12 | |
2022-03-19 | common: Reduce unused includes | ameerj | 8 | -12/+0 | |
2022-03-19 | core: Reduce unused includes | ameerj | 38 | -54/+8 | |
2022-03-18 | Address review comments | Liam | 1 | -1/+1 | |
2022-03-18 | shader_recompiler/EXIT: skip render targets with no outputs | Liam | 2 | -0/+8 | |
2022-03-18 | general: Reduce core.h includes | ameerj | 8 | -12/+23 | |
2022-03-18 | KHandleTable: Optimize table entry layout | Morph | 2 | -30/+12 | |
Since the handle type is not being used, we can reduce the amount of space each entry takes up by 4 bytes. | |||||
2022-03-18 | shader_recompiler/EXIT: increment output register on failed enable test | Liam | 1 | -0/+1 | |
2022-03-18 | vk_texture_cache: Do not reinterpret DepthStencil source images | ameerj | 1 | -5/+0 | |
Fixes star pointer interactions in Super Mario Galaxy on some drivers, notably Nvidia. Co-Authored-By: Fernando S. <1731197+fernandos27@users.noreply.github.com> | |||||
2022-03-18 | yuzu qt: Save disable_web_applet setting | lat9nq | 4 | -3/+6 | |
The web applet causes multiple issues with the rest of the application. Disable it by default and add a debug option to re-enable it until a proper solution can be found. | |||||
2022-03-17 | main: Update Disable Web Applet warning | lat9nq | 1 | -3/+2 | |
2022-03-17 | configure_debug: Add option to set disable_web_applet | lat9nq | 2 | -42/+57 | |
Allow the user to configure the web applet usage ahead of booting the application. | |||||
2022-03-17 | yuzu: Move disable_web_applet to UISettings | lat9nq | 3 | -5/+3 | |
2022-03-17 | Address review comments | Liam | 4 | -52/+36 | |
2022-03-17 | shader_recompiler: Use functions for indirect const buffer accesses | Liam | 5 | -39/+94 | |
2022-03-17 | Address review comments | Liam | 1 | -16/+15 | |
2022-03-16 | Address review comments | Liam | 2 | -2/+2 | |
2022-03-16 | shader_recompiler: Implement LDC.IS address mode | Liam | 1 | -2/+12 | |
2022-03-16 | Vulkan: convert S8D24 <-> ABGR8 | Liam | 5 | -2/+41 | |
2022-03-15 | bsd: Allow inexact match for address length in AcceptImpl | Valeri | 1 | -2/+2 | |
Minecraft passes in zero for length, but this should account for all possible cases | |||||
2022-03-15 | emu_window_sdl2: Set window size to display dimensions for exclusive fullscreen | lat9nq | 1 | -6/+7 | |
Since SDL2 does not automatically resize the canvas when entering fullscreen mode, resize the window to desktop display dimensions. | |||||
2022-03-15 | yuzu_cmd: Allow user to specify config file location | lat9nq | 3 | -10/+27 | |
Adds an option `-c` or `--config` with one required argument that allows the user to specify to where the config file is located. Useful for scripts that run specific games with different preferences for settings. | |||||
2022-03-15 | default_ini: List use_extended_memory_layout in default config file | lat9nq | 1 | -1/+5 | |
2022-03-15 | core: hle: kernel: init_slab_setup: Move CalculateSlabHeapGapSize to global namespace. | bunnei | 1 | -6/+6 | |
2022-03-15 | core: hle: kernel: Allocate dummy threads on host thread storage. | bunnei | 2 | -8/+6 | |
- Fixes a crash where on subsequent boots, long-lived host threads would have their dummy threads freed. | |||||
2022-03-15 | core: hle: kernel: Downgrade dangling objects warning to debug. | bunnei | 1 | -2/+2 | |
- It is not impossible to leak kernel objects, so this is not really any issue anymore (albeit, still interesting). | |||||
2022-03-15 | core: hle: kernel: Make object list container global and ensure it is reset on each emulation session. | bunnei | 1 | -7/+9 | |
2022-03-15 | core: hle: kernel: Remove server session tracking. | bunnei | 4 | -37/+1 | |
- These are now allocated/managed by emulated memory, so we do not need to track and free them on shutdown. | |||||
2022-03-15 | core: hle: kernel: k_process: Remove handle table finalize, reset page table. | bunnei | 1 | -3/+3 | |
2022-03-15 | core: hle: kernel: k_process: Implement thread local storage accurately. | bunnei | 3 | -111/+99 | |
2022-03-15 | core: hle: kernel: k_page_table: Add implementations of MapPages, UnmapPages, and FindFreeArea for TLS. | bunnei | 2 | -2/+141 | |
2022-03-15 | core: hle: kernel: k_slab_heap: Refresh to use guest allocations. | bunnei | 2 | -125/+107 | |
2022-03-15 | core: hle: kernel: Update init_slab_heap, use device memory, and add KThreadLocalPage and KPageBuffer. | bunnei | 4 | -55/+92 | |
- Refreshes our slab initialization code to latest known behavior. - Moves all guest kernel slabs into emulated device memory. - Adds KThreadLocalPage and KPageBuffer, which we will use for accurate TLS management. | |||||
2022-03-15 | core: hle: kernel: k_page_buffer: Add KThreadLocalPage primitive. | bunnei | 3 | -0/+179 | |
2022-03-15 | core: hle: kernel: k_page_buffer: Add KPageBuffer primitive. | bunnei | 2 | -0/+35 | |
2022-03-15 | core: hle: kernel: k_thread: Ensure host Fiber is freed. | bunnei | 1 | -0/+3 | |
2022-03-15 | core: hle: kernel: k_server_session: Ensure SessionRequestManager is freed. | bunnei | 1 | -0/+3 | |
2022-03-15 | core: hle: service: kernel_helpers: Use system resource limit. | bunnei | 1 | -10/+1 | |
2022-03-15 | core: hle: service: sm: Fix KPort reference count. | bunnei | 1 | -0/+2 | |
2022-03-15 | core: hle: kernel: k_thread: Update to reflect tree changes. | bunnei | 1 | -3/+3 | |
2022-03-15 | core: hle: kernel: Use weak_ptr where possible for SessionRequestHandler and SessionRequestManager. | bunnei | 7 | -14/+25 | |
2022-03-15 | core: hle: kernel: k_memory_layout: Update kernel slab memory sizes. | bunnei | 1 | -3/+3 | |
2022-03-15 | core: hle: kernel: svc_types: Add ThreadLocalRegionSize. | bunnei | 1 | -0/+2 | |
2022-03-15 | core: hle: kernel: k_condition_variable: Update to reflect tree changes. | bunnei | 1 | -1/+1 | |
2022-03-15 | core: hle: kernel: k_address_arbiter: Update to reflect tree changes. | bunnei | 1 | -3/+3 | |
2022-03-15 | common: tree: Various updates. | bunnei | 1 | -284/+341 | |
2022-03-15 | common: intrusive_red_black_tree: Various updates. | bunnei | 1 | -181/+210 | |
2022-03-15 | shader: add support for const buffer indirect addressing | Liam | 2 | -18/+68 | |
2022-03-15 | maxwell_3d: Implement a safer CB data upload | ameerj | 2 | -70/+12 | |
This makes constant buffer uploads safer and more accurate by updating the GPU memory as soon as the CB Data method is invoked. The previous implementation was deferring the updates until a different maxwell 3d method was detected, then writing all CB data at once. | |||||
2022-03-14 | Maxwell3D: Link to override constant definition in nouveau | byte[] | 1 | -0/+2 | |
2022-03-14 | Maxwell3D: restore original topology when topology overrides are disabled | byte[] | 1 | -0/+2 | |
2022-03-14 | Maxwell3D: Use override constants from nouveau | Liam | 2 | -2/+37 | |
This fixes some incorrect rendering in Sunshine | |||||
2022-03-13 | dynarmic: Reduce size of code caches | Merry | 2 | -4/+4 | |
2022-03-13 | Shader decompiler: do constant propgation before texture pass. | Fernando Sahmkow | 1 | -2/+2 | |
2022-03-13 | Shader decompiler: Fix storage tracking in deko3d. | Fernando Sahmkow | 1 | -1/+2 | |
2022-03-12 | config: Write dynarmic exclusive memory configs | ameerj | 1 | -0/+2 | |
Ensures the configs are written and saved between boots | |||||
2022-03-12 | rescaling_pass: Fix rescaling Color2DArray ImageFetch offsets | ameerj | 1 | -2/+27 | |
ImageFetch offsets for 2D array coordinates have a different composite size than the coordinates. The rescaling pass was not taking this into account. Fixes broken shaders when scaling is enabled in Astral Chain, and likely other titles. | |||||
2022-03-12 | emit_spirv, vk_compute_pass: Resolve VS2022 compiler errors | ameerj | 2 | -2/+3 | |
2022-03-12 | Maxwell3D: Restrict topology override effect to after the register is set | Liam | 2 | -1/+5 | |
2022-03-11 | cpu_detect: Add additional x86 flags and telemetry | Wunkolo | 4 | -29/+86 | |
Adds detection of additional CPU flags to cpu_detect and additions to telemetry output. This is not exhaustive but guided by features that [dynarmic utilizes](https://github.com/merryhime/dynarmic/blob/bcfe377aaa5138af740e90af5be7a7dff7b62a52/src/dynarmic/backend/x64/host_feature.h#L12-L33) as well as features that are currently utilized but not reported to telemetry(invariant_tsc). This is intended to guide future optimizations. AVX512 in particular is broken up into its individual subsets and some other processor features such as [sha](https://en.wikipedia.org/wiki/Intel_SHA_extensions) and [gfni](https://en.wikipedia.org/wiki/AVX-512#GFNI) are added to have some forward-facing data-points. What used to be a single `CPU_Extension_x64_AVX512` telemetry field is also broken up into individual `CPU_Extension_x64_AVX512{F,VL,CD,...}` fields. | |||||
2022-03-11 | common/telemetry: Update `AddField` name type to `string_view` | Wunkolo | 1 | -3/+4 | |
Non-owning `string_view` is flexable and avoids some of the many redundant copies made over `std::string` | |||||
2022-03-11 | Maxwell3D: mark index buffers as dirty after updating counts | Liam | 1 | -0/+2 | |
2022-03-11 | TextureCacheRuntime: allow converting D24S8 to ABGR8 | Liam | 1 | -1/+2 | |
I can't see how this would be useful, but Galaxy uses it. | |||||
2022-03-11 | Maxwell3D: read small-index draw and primitive topology override registers | Liam | 2 | -2/+30 | |
This allows Galaxy and Sunshine to render for the first time. | |||||
2022-03-10 | backend: Ensure backend_thread is destructed before message_queue | Merry | 1 | -1/+1 | |
Ensures that stop_token signals that stop has been requested before destruction of conditional_variable | |||||
2022-03-10 | cpu_detect: Revert `__cpuid{ex}` array-type argument | Wunkolo | 1 | -6/+6 | |
Restores compatibility with MSVC's `__cpuid` intrinsic. | |||||
2022-03-09 | cpu_detect: Add missing `lzcnt` detection | Wunkolo | 1 | -0/+1 | |
2022-03-09 | cpu_detect: Refactor cpu/manufacturer identification | Wunkolo | 2 | -24/+38 | |
Set the zero-enum value to Unknown Move the Manufacterer enum into the CPUCaps structure namespace Add "ParseManufacturer" utility-function Fix cpu/brand string buffer sizes(!) | |||||
2022-03-09 | cpu_detect: Update array-types to `span` and `array` | Wunkolo | 1 | -11/+13 | |
Update some uses of `int` into some more explicitly sized types as well | |||||
2022-03-09 | cpu_detect: Utilize `Bit<N>` utility function | Wunkolo | 1 | -32/+20 | |
2022-03-09 | cpu_detect: Compact capability fields | Wunkolo | 1 | -20/+21 | |
As this structure gets more explicit, bools can be bitfields and small enums can use smaller types for their span of values. | |||||
2022-03-09 | bit_util: Add `bit` utility function | Wunkolo | 1 | -0/+7 | |
Extracts a singular bit, as a bool, from the specified compile-time index. | |||||
2022-03-09 | hle: service: ldr: Use deterministic addresses when mapping NROs. | bunnei | 2 | -24/+62 | |
- Instead of randomization, choose in-order addresses for where to map NROs into memory. - This results in predictable behavior when debugging and consistent behavior when reproducing issues. | |||||
2022-03-08 | shader_recompiler/LOP3: Use brute force python results within switch/case. | Markus Wick | 2 | -52/+620 | |
Thanks to @asLody for optimizing this function. This raised the focus that this function should be optimized more. The current table assumes that the host GPU is able to invert for free, so only AND,OR,XOR are accumulated in the performance metrik. Performance results: Instructions 0: 8 1: 30 2: 114 3: 80 4: 24 Latency 0: 8 1: 30 2: 194 3: 24 | |||||
2022-03-08 | hle: kernel: KPageTable: Improve implementations of MapCodeMemory and UnmapCodeMemory. | bunnei | 2 | -47/+116 | |
- This makes these functions more accurate to the real HOS implementations. - Fixes memory access issues in Super Smash Bros. Ultimate that occur when un/mapping NROs. | |||||
2022-03-08 | video_core: Cancel Scoped's exit call on GPU failure | lat9nq | 1 | -0/+1 | |
When CreateRenderer fails, the GraphicsContext that was std::move'd into it is destroyed before the Scoped that was created to manage its currency. In that case, the GraphicsContext::Scoped will still call its destructor at the ending of the function. And because the context is destroyed, the Scoped will cause a crash as it attempts to call a destroyed object's DoneCurrent function. Since we know when the call would be invalid, call the Scoped's Cancel method. This prevents it from calling a method on a destroyed object. | |||||
2022-03-08 | emu_window: Create a way to Cancel the exit of a Scoped | lat9nq | 1 | -1/+10 | |
If a GraphicsContext is destroyed before its Scoped is destroyed, this causes a crash as the Scoped tries to call a method in the destroyed context on exit. Add a way to Cancel the call when we know that calling the GraphicsContext will not work. | |||||
2022-03-07 | core: Don't shutdown a null GPU | lat9nq | 1 | -1/+3 | |
When CreateGPU fails, yuzu would try and shutdown the GPU instance regardless of whether any instance was actually created. Check for nullptr before calling its methods to prevent a crash. | |||||
2022-03-07 | MaxwellDMA: Implement semaphore operations | Lody | 2 | -1/+21 | |
2022-03-06 | gl_graphics_pipeline: Improve shader builder synchronization using fences (#7969) | Ameer J | 2 | -21/+32 | |
* gl_graphics_pipeline: Improve shader builder synchronization Make use of GLsync objects to ensure better synchronization between shader builder threads and the main context * gl_graphics_pipeline: Make built_fence access threadsafe * gl_graphics_pipeline: Use GLsync objects only when building in parallel * gl_graphics_pipeline: Replace GetSync calls with non-blocking waits The spec states that a ClientWait on a Fence object ensures the changes propagate to the calling context | |||||
2022-03-03 | loader: log the type of mismatching file-extension | BytesGalore | 1 | -1/+2 | |
2022-03-03 | host_memory: Fix fastmem crashes in debug builds | Morph | 1 | -2/+2 | |
It is possible for virtual_offset to not be 0 when the iterator is at the beginning, and thus, std::prev(it) may be evaluated, leading to a crash in debug mode. Co-Authored-By: Fernando S. <1731197+FernandoS27@users.noreply.github.com> | |||||
2022-03-01 | applet: mii: Simple implementation of mii applet | german77 | 8 | -5/+272 | |
2022-02-28 | hle: kernel: Re-create memory layout at initialization. | bunnei | 1 | -41/+43 | |
- As this can only be derived once. | |||||
2022-02-28 | hle: kernel: Remove unused pool locals. | bunnei | 1 | -2/+0 | |
2022-02-28 | hle: kernel: k_memory_manager: Rework for latest kernel behavior. | bunnei | 6 | -173/+548 | |
- Updates the KMemoryManager implementation against latest documentation. - Reworks KMemoryLayout to be accessed throughout the kernel. - Fixes an issue with pool sizes being incorrectly reported. | |||||
2022-02-28 | logging: Convert `backend_thread` into an `std::jthread` | Wunkolo | 1 | -13/+5 | |
Was getting an unhandled `invalid_argument` [exception](https://en.cppreference.com/w/cpp/thread/thread/join) during shutdown on my linux machine. This removes the need for a `StopBackendThread` function entirely since `jthread` [automatically handles both checking if the thread is joinable and stopping the token before attempting to join](https://en.cppreference.com/w/cpp/thread/jthread/~jthread) in the case that `StartBackendThread` was never called. | |||||
2022-02-27 | gl_fence_manager: Minor optimization to signal querying | ameerj | 1 | -2/+1 | |
Per the spec, bufSize is the number of integers that will be written, in this case, 1. Also, the length argument is optional if the information of the number of elements written is not needed. | |||||
2022-02-27 | dynarmic: Inline exclusive memory accesses | merry | 16 | -7/+113 | |
Inlines implementation of exclusive instructions into JITted code, improving performance of applications relying heavily on these instructions. We also fastmem these instructions for additional speed, with support for appropriate recompilation on fastmem failure. An unsafe optimization to disable the intercore global_monitor is also provided, should one wish to rely solely on cmpxchg semantics for safety. See also: merryhime/dynarmic#664 | |||||
2022-02-27 | hle: kernel: k_page_heap: GetPhysicalAddr can be const. | bunnei | 1 | -2/+1 | |
2022-02-27 | hle: kernel: k_page_heap: Remove superfluous consexpr. | bunnei | 2 | -4/+4 | |
2022-02-27 | hle: kernel: k_page_heap: Various updates and improvements. | bunnei | 2 | -155/+192 | |
- KPageHeap tracks physical addresses, not virtual addresses. - Various updates and improvements to match latest documentation for this type. | |||||
2022-02-27 | hle: kernel: Add initial_process.h header. | bunnei | 2 | -0/+24 | |
2022-02-27 | hle: kernel: board: nx: Add k_memory_layout.h header. | bunnei | 2 | -0/+14 | |
2022-02-27 | hle: kernel: k_system_control: Add GetRealMemorySize and update GetKernelPhysicalBaseAddress. | bunnei | 2 | -1/+12 | |
2022-02-27 | hle: kernel: k_memory_layout: Add GetPhysicalLinearRegion. | bunnei | 1 | -0/+4 | |
2022-02-27 | hle: kernel: k_memory_region_types: Update for new regions. | bunnei | 1 | -1/+9 | |
2022-02-26 | vulkan_device: Blacklist RADV on RDNA2 from VK_EXT_vertex_input_dynamic_state | Ameer J | 1 | -4/+21 | |
RDNA2 devices running under the RADV driver were crashing when VK_EXT_vertex_input_dynamic_state was enabled. Blacklisting these devices until a proper fix is established. | |||||
2022-02-25 | maxwell_to_(gl/vk): Add 11_11_10 float vertex format | Morph | 2 | -0/+4 | |
- Used by パワプロクンポケットR | |||||
2022-02-24 | vk_blit_screen: Add missing format bgra8 | Lody | 1 | -0/+2 | |
2022-02-22 | service: am: Update enum names to match documentation | Narr the Reg | 4 | -16/+51 | |
2022-02-21 | hle: kernel: KSystemControl: Use 6GB memory layout when "use_extended_memory_layout" setting is enabled. | bunnei | 1 | -20/+4 | |
- This uses a larger 6GB DRAM memory layout, which is useful for some mods that require more memory. | |||||
2022-02-21 | core: device_memory: Use memory size reported by KSystemControl. | bunnei | 3 | -7/+5 | |
- That way, we can consolidate the memory layout to one place. | |||||
2022-02-21 | settings: Add a new "use_extended_memory_layout" setting. | bunnei | 7 | -0/+22 | |
- This will be used to enable emulation of a larger memory arrangement. | |||||
2022-02-21 | core: hle: kernel: Remove resource limit hack for PhysicalMemory. | bunnei | 1 | -7/+0 | |
- With prior changes, we now report the correct amount of physical memory available to the emulated process. | |||||
2022-02-21 | core: hle: kernel: KProcess: Pass in KResourceLimit on process creation. | bunnei | 4 | -9/+30 | |
- This allows us to have a resource limit per process, rather than use the global system resource limit. | |||||
2022-02-21 | core: hle: kernel: KEvent: Pass in owner KProcess on event creation. | bunnei | 4 | -12/+8 | |
- This is necessary to ensure resource limits are freed from the right process. | |||||
2022-02-21 | core: hle: kernel: KResourceLimit: Add a helper function for creating a KResourceLimit for a process. | bunnei | 2 | -0/+22 | |
2022-02-21 | vulkan_device: fix missing format in ANV | voidanix | 3 | -2/+21 | |
Currently Mesa's ANV driver does not support VK_FORMAT_B5G6R5_UNORM_PACK16, implement an alternative for it. | |||||
2022-02-20 | yuzu: Remove amiibos on drag and drop | german77 | 1 | -0/+10 | |
2022-02-19 | fixup! core: hle: kernel: KPageTable: Improve Un/MapPhysicalMemory. | bunnei | 3 | -38/+18 | |
2022-02-19 | core: hle: kernel: KPageTable: Fix UnmapPages. | bunnei | 1 | -3/+2 | |
- Fixes a logic bug in KPageTable::UnmapPages. | |||||
2022-02-19 | core: hle: kernel: KPageTable: Improve Un/MapPhysicalMemory. | bunnei | 3 | -113/+508 | |
- Improves the implementations of MapPhysicalMemory and UnmapPhysicalMemory to more closely reflect latest HOS. | |||||
2022-02-17 | common: Add NullVisitor default constructor | Wunkolo | 1 | -0/+3 | |
Addresses https://github.com/yuzu-emu/yuzu/issues/7881 to fix linux builds. `YUZU_NON_COPYABLE` deletes the `T(const T&)` constructor which will cause the implicitly defined default ctor/dtor to no-longer generate. | |||||
2022-02-15 | yuzu: config: Fix mapping issues with the enter key | Narr the Reg | 2 | -0/+6 | |
2022-02-15 | Dump patched exefs rather than base | Kelebek1 | 1 | -9/+9 | |
2022-02-15 | kernel: svc: Add OutputDebugString32, CreateCodeMemory32, ControlCodeMemory32 | Sergi Granell | 2 | -4/+40 | |
Very straightforward, they are just wrappers to the 64-bit version of the SVC. | |||||
2022-02-14 | common: fs_util: Add buffer to string view utility functions | Morph | 2 | -0/+26 | |
These functions allow to construct a string view from an input buffer, avoiding the copy done by the non string view counterparts. However, callers must be cognizant of the viewed buffer's lifetime to avoid a use-after-free. | |||||
2022-02-14 | debugger: console: Set console output codepage to UTF-8 | Morph | 1 | -0/+1 | |
This allows the console to display multi-byte encoded characters. | |||||
2022-02-13 | nfp: Allow files without password data | german77 | 2 | -9/+24 | |
2022-02-13 | program_metadata: Unpack FileAccessHeader and FileAccessControl | lat9nq | 2 | -15/+51 | |
Avoids a reference binding to a misaligned addresses. Unpacking one requires unpacking the other, otherwise there'll be a misaligned address on the leftover one. | |||||
2022-02-12 | hid: Stub IsUsbFullKeyControllerEnabled | lat9nq | 2 | -1/+12 | |
Used by Splatoon 2, when opening the inventory from a LAN battle lobby. Reference: https://switchbrew.org/wiki/HID_services | |||||
2022-02-11 | audio_core: Update current process revision | lat9nq | 1 | -1/+3 | |
Update CURRENT_PROCESS_REVISION from REV9 to REVA. Used by Nintendo Entertainment System - Nintendo Switch Online 6.0.0 and Super Nintendo Entertainment System - Nintendo Switch Online 3.0.0. | |||||
2022-02-11 | service/mnpp: Stub mnpp_app | Narr the Reg | 6 | -0/+71 | |
Used in Super Nintendo Entertainment System™ - Nintendo Switch Online | |||||
2022-02-10 | common: uuid: Use sizeof(u64) instead of 8 in Hash() | Morph | 1 | -5/+5 | |
2022-02-10 | nfp: Separate nfc tag from amiibo data | Narr the Reg | 3 | -44/+76 | |
2022-02-09 | svc: Set unique names for function tables | Narr the Reg | 1 | -77/+77 | |
2022-02-09 | hle: kernel: KCodeMemory: Remove unused QueryMemory. | bunnei | 1 | -1/+0 | |
2022-02-09 | hle: kernel: KCodeMemory: Correct m_page_group number of pages. | bunnei | 1 | -2/+3 | |
Credits to @xerpi for finding this issue and pointing it out on #7519. | |||||
2022-02-09 | nfp: Address compiler issues | german77 | 2 | -27/+27 | |
2022-02-08 | nfp: Validate amiibo files | Narr the Reg | 2 | -41/+145 | |
2022-02-08 | yuzu: Allow to open and remove the amiibo | german77 | 3 | -5/+24 | |
2022-02-08 | nfp: Improve implementation | german77 | 4 | -189/+672 | |
2022-02-07 | nfp: Move IUser class to header and add missing enum and structs | german77 | 2 | -257/+299 | |
2022-02-07 | nfp: Sort functions by command number | german77 | 1 | -79/+79 | |
2022-02-07 | yuzu: Mute audio when in background | german77 | 6 | -4/+27 | |
2022-02-07 | yuzu: Add docked, GPU accuracy and adapting filter hotkeys | german77 | 4 | -58/+68 | |
2022-02-07 | yuzu: Add auto center on right click | german77 | 3 | -4/+30 | |
2022-02-07 | input_common: Remove battery duplicated struct and update every button press | german77 | 6 | -34/+27 | |
2022-02-05 | common: uuid: Return an invalid UUID if conversion from string fails | Morph | 1 | -14/+39 | |
The string constructor of UUID states: Should the input string not meet the above requirements, an assert will be triggered and an invalid UUID is set instead. | |||||
2022-02-05 | general: Rename NewUUID to UUID, and remove the previous UUID impl | Morph | 41 | -598/+415 | |
This completes the removal of the old UUID implementation. | |||||
2022-02-05 | profile: Migrate to the new UUID implementation | Morph | 14 | -127/+131 | |
2022-02-05 | common: uuid: Add AsU128() | Morph | 2 | -0/+9 | |
This copies the internal bytes of the UUID into a u128 for backwards compatibility. This should not be used. | |||||
2022-02-05 | hle: ipc_helpers: Ignore -Wclass-memaccess | Morph | 1 | -0/+8 | |
This warning is triggered by GCC when copying into non-trivially default constructible types, as it uses the more restrictive std::is_trivial (which includes std::is_trivially_default_constructible) to determine whether memcpy is safe instead of std::is_trivially_copyable. | |||||
2022-02-05 | service: Migrate to the new UUID implementation | Morph | 9 | -45/+36 | |
2022-02-05 | input/hid: Migrate to the new UUID implementation | Morph | 16 | -56/+57 | |
2022-02-05 | common: Implement NewUUID | Morph | 3 | -0/+322 | |
This is a fixed and revised implementation of UUID that uses an array of bytes as its internal representation of a UUID instead of a u128 (which was an array of 2 u64s). In addition to this, the generation of RFC 4122 Version 4 compliant UUIDs is also implemented. | |||||
2022-02-05 | config: Support motion inputs | lat9nq | 1 | -8/+28 | |
Motion inputs were not being read in by the config when yuzu-cmd boots up. This adds support for those. While we're at it, make a reference to the current player controls to improve readability. Also updates the if statements in the Analog and Button loops with curly braces to keep the style consistent. | |||||
2022-02-04 | main: Always remove the frameless window flag when restoring UI state | Morph | 1 | -0/+2 | |
For unknown reasons, this flag may persist after the application has been closed. Removing this flag when restoring the UI state ensures that a frameless window will not be shown on startup. | |||||
2022-02-04 | input_common: Remove unused core include | Morph | 1 | -1/+0 | |
2022-02-04 | service: pm: Implement AtmosphereGetProcessInfo | tech-ticks | 2 | -1/+46 | |
2022-02-02 | yuzu: config: Vibrate the controller while configuring vibration strength | Narr the Reg | 5 | -8/+95 | |
2022-02-02 | texture_cache: Ensure has_blacklisted is always initialized | Lioncash | 1 | -1/+1 | |
Resolves a -Wmaybe_uninitialized warning | |||||
2022-02-02 | texture_cache: Remove dead code within SynchronizeAliases | Lioncash | 1 | -13/+1 | |
Since these were being copied by value, none of the changes applied in the loop would be reflected. However, from the looks of it, this would already be applied within CopyImage() anyways, so this can be removed. | |||||
2022-02-02 | texture_cache: Amend unintended bitwise OR in SynchronizeAliases | Lioncash | 1 | -1/+1 | |
2022-02-02 | yuzu: ui: Improve battery symbols | Narr the Reg | 4 | -39/+59 | |
2022-02-02 | common_types: Remove NonCopyable struct | Lioncash | 1 | -10/+0 | |
Now that we're moved over to the YUZU_ defines, we can get rid of this struct. | |||||
2022-02-02 | general: Replace NonCopyable struct with equivalents | Lioncash | 12 | -129/+219 | |
2022-02-02 | general: Move deleted copy/move constructor/assignment operators to public interface | Lioncash | 7 | -11/+9 | |
This allows for better compiler errors, where the compiler will state a copy or move couldn't occur due to the relevant function being deleted. Previously a compiler would warn about the relevant function not being accessible (which, while true, isn't as informative as it could be). | |||||
2022-02-02 | hle: kernel: KPageTable: Migrate locks to KScopedLightLock. | bunnei | 2 | -34/+46 | |
- More accurately reflects real kernel behavior by using guest locks. | |||||
2022-02-02 | configure_filesystem: Add missing changeEvent() override | Lioncash | 2 | -0/+10 | |
This allows the dialog to be retranslated during runtime if the language is changed. | |||||
2022-02-02 | configure_filesystem: Normalize member function casing | Lioncash | 3 | -8/+8 | |
All other dialog types we have use CamelCase naming. | |||||
2022-02-02 | yuzu: Disable auto repeat on hotkeys again | Narr the Reg | 1 | -0/+1 | |
2022-02-01 | configure_motion_touch: Use functor versions of invokeMethod | Lioncash | 1 | -18/+20 | |
Same behavior, but ensures that the functions we're calling exist, since they can be checked at compile-time. | |||||
2022-02-01 | configure_input_player: Eliminate variable shadowing | Lioncash | 1 | -4/+5 | |
2022-02-01 | configure_input_player: std::move input setters in HandleClick | Lioncash | 1 | -1/+1 | |
2022-02-01 | configure_input_player: Avoid unnecessary ParamPackage copies | Lioncash | 1 | -6/+6 | |
Avoids churning allocations. | |||||
2022-02-01 | yuzu/game_list: Use non-deprecated version of QString's split() function | Lioncash | 1 | -1/+1 | |
The previous overload of split() was deprecated in 5.14. | |||||
2022-02-01 | common/file: Remove [[nodiscard]] from Open() | Lioncash | 1 | -3/+2 | |
Since this has a void return value, there's nothing that can actually be used. | |||||
2022-02-01 | video_core/shader_cache: Remove unused algorithm include | Lioncash | 1 | -1/+0 | |
2022-02-01 | video_core/shader_cache: Take std::span in RemoveShadersFromStorage() | Lioncash | 2 | -3/+3 | |
Same behavior, but without the need to move into the function to avoid an allocation. | |||||
2022-02-01 | svc: Add 32 bit SynchronizePreemptionState | Narr the Reg | 1 | -1/+1 | |
Used by Espgaluda II | |||||
2022-02-01 | Rasterizer: Refactor inlineToMemory. | Fernando Sahmkow | 9 | -15/+16 | |
2022-01-31 | Vulkan: Fix Scheduler Chunks when their FuncType is 0. | Fernando Sahmkow | 2 | -4/+6 | |
2022-01-31 | input_common: Use attributes for analog range modifiers | german77 | 1 | -4/+26 | |
2022-01-30 | common: wall_clock: Check precision against the emulated CPU and CNTFRQ | Morph | 2 | -8/+12 | |
In addition to requiring nanosecond precision, using the native clock requires that the hardware TSC has a precision greater than the emulated CPU and its clock counter. | |||||
2022-01-30 | common: wall_clock: Utilize constants for ms, us, and ns ratios | Morph | 3 | -5/+9 | |
2022-01-30 | input_common: Add home and hard touch press buttons to UDP controllers | german77 | 4 | -3/+22 | |
2022-01-30 | emit_glsl_atomic: Implement 32x2 fallback atomic ops | ameerj | 1 | -9/+55 | |
2022-01-30 | lower_int64_to_int32: Add 64-bit atomic fallbacks | ameerj | 3 | -11/+76 | |
2022-01-30 | shaders: Add U64->U32x2 Atomic fallback functions | ameerj | 9 | -1/+469 | |
2022-01-29 | GPU: Improve syncing. | Fernando Sahmkow | 1 | -3/+10 | |
2022-01-29 | Rasterizer: Implement Inline2Memory Acceleration. | Fernando Sahmkow | 14 | -6/+122 | |
2022-01-29 | Inline2Memory: Flush before writting buffer. | Fernando Sahmkow | 2 | -2/+3 | |
2022-01-29 | spirv_atomic: Define U32x2 storage buffers for 64-bit storage atomics | ameerj | 2 | -3/+3 | |
Some drivers do not support 64-bit atomics, and fallback to atomically modifying U32x2 vectors. This change ensures that U32x2 storage vectors are defined in the spir-v shader when 64-bit atomics are used. Fixes a hang on some devices, notably Intel GPUs, when booting Pokemon Legends Arceus | |||||
2022-01-28 | emit_spirv: Add Xfb execution mode when transform feedback is used | ameerj | 1 | -3/+9 | |
Fixes Transform Feedback on Vulkan AMD drivers. | |||||
2022-01-28 | hotkeys: Don't translate hotkey buttons | german77 | 1 | -16/+16 | |
2022-01-28 | wall_clock: use standard wall clock if rtsc frequency is too low | german77 | 1 | -1/+3 | |
2022-01-27 | buffer_cache: Reduce stream buffer allocations when expanding from the left | ameerj | 1 | -0/+2 | |
The existing stream buffer optimization accounts for size increases at the end of the allocated buffer. This adds the same optimization, increasing the size from the beginning of the buffer as well to reduce buffer allocations when expanding the same buffer from the left. | |||||
2022-01-27 | hle: kernel: KScheduler: Fix deadlock with core waiting for a thread lock that has migrated. | bunnei | 2 | -23/+24 | |
- Previously, it was possible for a thread migration to occur from core A to core B. - Next, core B waits on a guest lock that must be released by a thread queued for core A. - Meanwhile, core A is still waiting on the core B's current thread lock - resulting in a deadlock. - Fix this by try-locking the thread lock. - Fixes softlocks in FF8 and Pokemon Legends Arceus. | |||||
2022-01-27 | video_minimum_maximum: Implement src operand selectors | ameerj | 1 | -12/+6 | |
Used by Pokemon Legends: Arceus | |||||
2022-01-27 | input_common: Add DS5 to HD rumble list | Narr the Reg | 1 | -2/+3 | |
2022-01-26 | common/xbyak_api: Make BuildRegSet() constexpr | Lioncash | 2 | -9/+9 | |
This allows us to eliminate any static constructors that would have been emitted due to the function not being constexpr. | |||||
2022-01-25 | video_core/macro: Add missing <cstring> header | Lioncash | 1 | -2/+3 | |
Necessary since memcpy is used. | |||||
2022-01-25 | video_core/macro_interpreter: Move impl class to the cpp file | Lioncash | 2 | -84/+86 | |
Keeps the implementation hidden from the intended API and lessens the header dependencies on the interpreter's header. | |||||
2022-01-25 | video_core/macro_hle: Return unique_ptr directly from GetHLEProgram() | Lioncash | 3 | -7/+7 | |
Same behavior, but less code and header dependencies. | |||||
2022-01-25 | video_core/macro: Remove unused parameter from Execute() | Lioncash | 3 | -4/+3 | |
Simplifies the function interface. | |||||
2022-01-25 | video_core/macro_jit_x64: Remove unused impl class member | Lioncash | 1 | -1/+0 | |
Reduces the size of the impl class a tiny bit. | |||||
2022-01-25 | video_core/macro_jit_x64: Decouple PersistentCallerSavedRegs() from impl | Lioncash | 1 | -5/+4 | |
This doesn't depend on class state and can just be a regular function. | |||||
2022-01-25 | video_core/macro_jit_x64: Move impl class into cpp file | Lioncash | 2 | -87/+86 | |
Keeps the implementation internalized and also reduces API-facing header dependencies. Notably, this fully internalizes all of the xbyak externals. | |||||
2022-01-25 | video_core/macro_hle: Move impl class into cpp file | Lioncash | 2 | -27/+19 | |
Given it's intended to be an internal implementation class, we can move it into the cpp file to ensure that. This also lets us move some header dependencies into the cpp file as well. | |||||
2022-01-25 | gpu: Tidy up forward declarations | Lioncash | 1 | -10/+0 | |
Over time a few forward declarations became unnecessary, so we can remove these to tidy up the header a little bit. | |||||
2022-01-25 | gpu: Remove obsoleted CDMAPusher() accessors | Lioncash | 1 | -6/+0 | |
These were obsoleted in 2c47f8aa1886522898b5b3a73185b5662be3e9f3 but were accidentally overlooked. | |||||
2022-01-25 | vk_fsr: Replace comma operator with semicolon | Lioncash | 1 | -1/+1 | |
Generally, we should be ending statements with a semicolon not a comma Resolves a clang diagnostic. | |||||
2022-01-25 | shader_recompiler: Remove unnecessary [[nodiscard]] | Lioncash | 1 | -2/+1 | |
Since ConvertLegacyToGeneric has a void return value, there's nothing that is actually returned by the function. | |||||
2022-01-24 | input_common/input_engine: Ensure PadIdentifier UUIDs have a valid initial state | Lioncash | 1 | -1/+1 | |
The default constructor of a UUID instance doesn't initialize the underlying array. | |||||
2022-01-24 | input_common/input_mapping: Simplify UUID validity checks | Lioncash | 1 | -3/+3 | |
Makes the checks a little more intuitive to read and doesn't construct an extra UUID instance | |||||
2022-01-24 | input_common/input_mapping: Add missing includes | Lioncash | 2 | -1/+6 | |
Ensures that the class always sees the types it needs. | |||||
2022-01-24 | input_common/input_mapping: Remove const from return value | Lioncash | 4 | -4/+4 | |
Top-level const on a return by value can inhibit move semantics, and is unnecessary. | |||||
2022-01-24 | input_common/input_mapping: Default constructor | Lioncash | 1 | -1/+1 | |
2022-01-24 | input_common/main: Pass MappingData by const reference in callbacks | Lioncash | 2 | -3/+3 | |
Avoids creating unnecessary 168 byte copies per callback invocation. | |||||
2022-01-24 | input_common/udp_client: Replace deprecated from_string()/to_ulong() functions | Lioncash | 1 | -2/+2 | |
These are deprecated and make_address variants and to_uint() should be used instead. | |||||
2022-01-24 | input_common/udp_client: Prevent unnecessary string copies | Lioncash | 2 | -4/+4 | |
We can also remove some redundant const on the return values, since these don't do anything | |||||
2022-01-24 | kernel/k_affinity_mask: Remove duplicated assert | Lioncash | 1 | -2/+0 | |
This is already checked inside GetCoreBit() | |||||
2022-01-24 | input_common: Add option to configure gyro threshold | german77 | 4 | -6/+24 | |
2022-01-24 | yuzu: Add setting to disable controller navigation | german77 | 6 | -3/+28 | |
2022-01-23 | Update FSR to 1.0.2 | Moonlacer | 1 | -1/+1 | |
Updates yuzu's FSR implementation to 1.0.2 | |||||
2022-01-23 | hle: kernel: KThread: Improve Increment/Decrement RunningThreadCount. | bunnei | 3 | -24/+21 | |
- Previously implementation was incorrect, and would occasionally underflow. | |||||
2022-01-23 | core: hle: kernel: KPageTable: Various improvements to MapPages and UnmapPages. | bunnei | 1 | -22/+25 | |
2022-01-23 | core: hle: kernel: KPageTable: MapProcessCode: Various cleanup. | bunnei | 1 | -11/+12 | |
2022-01-23 | core: hle: kernel: KPageTable: ReserveTransferMemory: Various cleanup. | bunnei | 1 | -6/+6 | |
2022-01-23 | core: hle: kernel: KPageTable: ResetTransferMemory: Various cleanup. | bunnei | 1 | -6/+5 | |
2022-01-23 | core: hle: kernel: KPageTable: SetMemoryAttribute: Various cleanup. | bunnei | 1 | -2/+3 | |
2022-01-22 | core: hle: kernel: KPageTable: Assert valid address on GetPhysicalAddr. | bunnei | 1 | -1/+3 | |
2022-01-22 | core: hle: kernel: KPageTable: Operate: Assert lock ownership. | bunnei | 1 | -2/+2 | |
2022-01-22 | core: hle: kernel: KPageTable: SetHeapSize: Cleanup & take physical memory lock. | bunnei | 1 | -4/+7 | |
2022-01-22 | core: hle: kernel: Refactor Un/MapPhysicalMemory to remove unnecessary methods. | bunnei | 2 | -50/+39 | |
2022-01-22 | core: hle: kernel: Rename Un/Map to Un/MapMeory. | bunnei | 3 | -7/+6 | |
2022-01-22 | yuzu: Add modifiers for keyboard | Narr the Reg | 1 | -25/+34 | |
2022-01-22 | hle: kernel: KThread: Ensure host (dummy) threads block on locking. | bunnei | 4 | -0/+89 | |
- But do not enter the priority queue, as otherwise they will be scheduled. - Allows dummy threads to use guest synchronization primitives. | |||||
2022-01-21 | service/wlan: Update function tables | Lioncash | 1 | -1/+1 | |
2022-01-21 | service/usb: Update function tables | Lioncash | 1 | -27/+15 | |
2022-01-21 | service/set: Update function tables | Lioncash | 1 | -0/+2 | |
2022-01-21 | service/ns: Update function tables | Lioncash | 1 | -0/+6 | |
2022-01-21 | service/nim: Update unknown function table entries | Lioncash | 1 | -0/+6 | |
2022-01-21 | service/friend: Update unknown function table entries | Lioncash | 1 | -6/+6 | |
2022-01-21 | service/filsystem: Update fsp-srv function table | Lioncash | 1 | -0/+3 | |
2022-01-21 | service/btm: Update function tables | Lioncash | 1 | -0/+30 | |
2022-01-21 | service/audio: Update audctl unknown function names | Lioncash | 1 | -8/+8 | |
2022-01-21 | service/am: Update omm function tables | Lioncash | 1 | -0/+1 | |
2022-01-21 | service/acc: Update unknown function names | Lioncash | 2 | -4/+4 | |
Switchbrew has the function names now. | |||||
2022-01-21 | Use Default Colorful theme by default outside of Windows | v1993 | 2 | -6/+11 | |
On OSes with system-wide theming this allows yuzu to follow system style, regardless of its exact coloration, working well with both light and dark system themes. Dark /Colorful, on the other hand, forces dark theme regardless of user preferences set in system settings, making for a poor default. Use Colorful variation to keep in line with icon style of patron-voted Dark Colorful. | |||||
2022-01-21 | service: apm: Stub ISession SetCpuOverclockEnabled | Morph | 1 | -1/+13 | |
Since we don't currently support CPU overclocking within the emulated system, this can be stubbed for now, like APM IsCpuOverclockEnabled. - Used by Gravity Rider Zero | |||||
2022-01-21 | hle: kernel: Remove redundant tracking of dummy threads. | bunnei | 1 | -9/+3 | |
- These are already tracked by kernel's registered_objects member. | |||||
2022-01-21 | hle: kernel: KThread: DummyThread can be waited, ensure wait_queue is not nullptr. | bunnei | 1 | -6/+6 | |
2022-01-21 | hle: kernel: KThread: Decrease DummyThread priority to ensure it is never scheduled. | bunnei | 3 | -2/+5 | |
2022-01-21 | hle: kernel: service_thread: Ensure dummy thread is closed & destroyed on thread exit. | bunnei | 1 | -0/+5 | |
2022-01-21 | hle: kernel: KServerSession: Remove hack for CompleteSyncRequest. | bunnei | 1 | -11/+0 | |
- This does not appear to be necessary anymore. | |||||
2022-01-21 | hle: kernel: KServerSession: Simplify CompleteSyncRequest EndWait. | bunnei | 2 | -12/+2 | |
- Considering is_thread_waiting is never set, so we can remove IsThreadWaiting. - KThread::EndWait will take the scheduler lock, so we can remove the redundant lock. | |||||
2022-01-21 | hle: kernel: KThread: Ensure dummy threads never call EndWait. | bunnei | 1 | -0/+5 | |
- These are only used by host threads for locking and will never have a wait_queue. | |||||
2022-01-21 | hle: kernel: KScheduler: Ensure dummy threads are never scheduled. | bunnei | 1 | -0/+5 | |
- These are only used by host threads for locking. | |||||
2022-01-21 | hle: kernel: KThread: Rename thread_type_for_debugging -> thread_type. | bunnei | 3 | -6/+6 | |
- This will be used to ensure that we do not schedule dummy threads. | |||||
2022-01-20 | video_core: constify AVCodec for ffmpeg >= 5.0 | Jan Beich | 1 | -1/+1 | |
src/video_core/command_classes/codecs/codec.cpp:177:16: error: assigning to 'AVCodec *' from 'const AVCodec *' discards qualifiers av_codec = avcodec_find_decoder(codec); ^~~~~~~~~~~~~~~~~~~~~~~~~~~ | |||||
2022-01-19 | service/hid: Initialize applet_resource on SetNpadAnalogStickUseCenterClamp | german77 | 1 | -1/+2 | |
2022-01-19 | vulkan_device: Fix sType for VkPhysicalDeviceShaderAtomicInt64Features | Georg Lehmann | 1 | -1/+1 | |
2022-01-17 | input_common: Report battery for UDP controllers | Narr the Reg | 2 | -0/+25 | |
2022-01-17 | shader_recompiler: fix potential OOB access | v1993 | 2 | -6/+8 | |
Found by static analysis with PVS-Studio. Original check wasn't actually checking for OOB and would segfault in case of it. | |||||
2022-01-17 | hle: remove no-op code | Valeri | 1 | -2/+0 | |
Found by static analysis with PVS-Studio. Nobody seems to really know what was it doing there. | |||||
2022-01-17 | input_common: nitpick about SetHatButton usage | Valeri | 1 | -1/+1 | |
2022-01-17 | input_common: fix copy-paste error | Valeri | 1 | -1/+1 | |
Found by static analysis with PVS-Studio. | |||||
2022-01-17 | hid: fix std::transform call | Valeri | 1 | -1/+1 | |
Found by static analysis with PVS-Studio. | |||||
2022-01-17 | uisettings: Add enumeration type for themes | Morph | 2 | -3/+17 | |
Eliminates the usage of a magic number to indicate the default index of the themes array, | |||||
2022-01-17 | config: Change default theme to Dark Colorful | gidoly | 1 | -2/+2 | |
2022-01-17 | Correct assignment source for rotations | Valeri | 1 | -1/+1 | |
Found by static analysis with PVS-Studio | |||||
2022-01-17 | input_common: Reintroduce motion from mouse and use button names | german77 | 5 | -1/+64 | |
2022-01-16 | astc_decoder: Combine FastReplicate functions to work around new NV driver bug | ameerj | 1 | -34/+46 | |
The new Nvidia drivers have a bug where the FastReplicateTo6 function produces a lookup into the REPLICATE_TO_8 table rather than the REPLICATE_TO_6 table. This seems to be an optimization gone wrong. Combining the logic of the FastReplicate functions seems to address the bug. | |||||
2022-01-16 | audio/stream: Adjust volume scale factor | german77 | 1 | -2/+2 | |
2022-01-16 | yuzu: Add volume up/down hotkeys | german77 | 3 | -4/+16 | |
2022-01-15 | Xbox controller default name nit pick | gidoly | 1 | -2/+2 | |
Discord User moon lacer pointed us that official name is 'Xbox' not 'XBox' | |||||
2022-01-15 | yuzu: Remove speed limit hotkeys | german77 | 3 | -24/+2 | |
2022-01-15 | hle: kernel: k_memory_manager: Clear pages on allocation & free. | bunnei | 5 | -16/+34 | |
- Heap pages should be zero'd. - Also explicitly passed along heap allocation option. | |||||
2022-01-15 | Change default name for ps controllers | gidoly | 1 | -0/+6 | |
Minor nitpick Code is from narr | |||||
2022-01-15 | core: hle: kernel: KThread: Integrate with KWorkerTask and implement DoWorkerTaskImpl. | bunnei | 2 | -2/+28 | |
- This is used to terminate a thread asynchronously after it has been exited. - This fixes a crash that can occur in Pokemon Sword/Shield because a thread is incorrectly closed on svcExitThread, then, the thread is destroyed on svcCloseHandle while it is still scheduled. - Instead, we now wait for the thread to no longer be scheduled on all cores before destroying it from KWorkerTaskManager, which is accurate to HOS behavior. | |||||
2022-01-15 | core: hle: kernel: KProcess: Integrate with KWorkerTask and add unimplemented DoWorkerTaskImpl. | bunnei | 2 | -3/+9 | |
2022-01-15 | core: hle: kernel: KThread: Replace Suspend with UpdateState & various updates. | bunnei | 2 | -33/+26 | |
- This makes our implementations of these more closely match HOS. | |||||
2022-01-15 | core: hle: kernel: Instantiate a kernel instance of KWorkerTaskManager. | bunnei | 2 | -0/+18 | |
2022-01-15 | core: hle: kernel: Add KWorkerTask and KWorkerTaskManager. | bunnei | 4 | -0/+96 | |
- These primitives are used to dispatch asynchronous kernel tasks from KThread and KProcess. | |||||
2022-01-15 | common: fiber: YieldTo: Avoid hard crash on nullptr previous_fiber. | bunnei | 1 | -1/+4 | |
- When the emulator crashes to desktop below, we don't even get this captured in a log, making such issues harder to debug. | |||||
2022-01-15 | hle: kernel: Fix service_threads access to be thread safe V2. | bunnei | 1 | -12/+11 | |
- PR #7699 attempted to fix CreateServiceThread and ReleaseServiceThread to be thread safe, but inadvertently introduced a possible dead-lock. - With this PR, we use a worker thread to manage the service thread list, allowing it only to be accessed by a single thread, and guaranteeing threads will not destroy themselves. - Fixes a rare crash in Pokemon Sword/Shield, I've now run this game for ~12 hours non-stop and am quite confident this is a good solution for this issue. | |||||
2022-01-14 | core/hid: Increment shake force | Narr the Reg | 1 | -1/+1 | |
With the current settings 2p mode in pokemon let's go wasn't showing up. By making the shake more violent we can make it appear without any effort using the keyboard | |||||
2022-01-14 | hle: kernel: Fix service_threads access to be thread safe. | bunnei | 1 | -7/+27 | |
- CreateServiceThread and ReleaseServiceThread can be accessed by different threads, uses a lock to make this thread safe. - Fixes a rare crash in Pokemon Sword/Shield that can occur when a new service thread is being created while an old one is being destroyed. | |||||
2022-01-13 | service/hid: Decrease motion update rate | Narr the Reg | 1 | -1/+2 | |
Motion stops working in Mario Tennis in swing mode if the update rate is too fast even when HW it updates at the same speed. 10ms it's the minimum period that the game needs to start working again. | |||||
2022-01-12 | core/hid: Reduce gyro threshold even more | Narr the Reg | 1 | -1/+1 | |
2022-01-12 | hle: kernel: k_page_table: Update SetProcessMemoryPermission. | bunnei | 6 | -45/+68 | |
2022-01-12 | hle: service: ldr: UnmapCodeMemory BSS only when set. | bunnei | 1 | -3/+7 | |
2022-01-12 | hle: kernel: k_page_table: ReadAndWrite -> UserReadWrite. | bunnei | 3 | -18/+18 | |
2022-01-12 | hle: kernel: k_page_table: Rename *ProcessCodeMemory -> *CodeMemory. | bunnei | 4 | -20/+19 | |
2022-01-12 | cmake: make tests optional | Alexandre Bouvier | 2 | -2/+5 | |
2022-01-11 | common: bit_util: Add IsPow2 helper function | Morph | 1 | -0/+6 | |
Makes use of std::has_single_bit() to check whether the value is a power of 2. | |||||
2022-01-10 | yuzu: main: Increase the open file limit on Windows to 8192 | Morph | 1 | -2/+2 | |
This is a temporary solution for now to accommodate for mods containing more than 4096 files. | |||||
2022-01-10 | logging/log.h: move enum class formatter to a separate file ... | liushuyu | 6 | -22/+32 | |
... to common/logging/formatter.h | |||||
2022-01-09 | logging/log: use `underlying_type` instead of hardcoding types | liushuyu | 1 | -2/+4 | |
2022-01-08 | core: hle: kernel: svc: Updates to SetMemoryAttribute and SetMemoryPermission. | bunnei | 3 | -45/+46 | |
2022-01-08 | input_common: Handle errors on TAS scripts | german77 | 1 | -7/+24 | |
2022-01-08 | core: hle: kernel: k_page_table: Update CheckMemoryState. | bunnei | 4 | -116/+166 | |
2022-01-08 | logging: adapt to changes in fmt 8.1 | liushuyu | 3 | -7/+20 | |
2022-01-07 | yuzu: Use pad parameter to choose the correct controller | german77 | 2 | -9/+14 | |
2022-01-07 | input_common: Fix udp motion not automapping to both sides | german77 | 1 | -8/+16 | |
2022-01-07 | yuzu: Add controller hotkeys | german77 | 14 | -79/+580 | |
2022-01-07 | core/hid: Add home and screenshot button support | german77 | 3 | -1/+46 | |
2022-01-07 | core/hid: Set minimum gyro threshold | german77 | 1 | -0/+1 | |
2022-01-07 | input_common: Use accelerometer data for mapping | german77 | 1 | -2/+10 | |
2022-01-05 | configure_per_game: Initialize tabs after loading custom configuration | lat9nq | 1 | -15/+9 | |
Changes tab initialization to happen after the configuration is loaded, which means that it no longer happens as member initializers in the ConfigurePerGame constructor. Removes the cluster of ??_tab->SetConfiguration's that I added earlier to get around this issue initially. Fixes a regression in #6774 | |||||
2022-01-05 | video_core: Remove unnecesary maybe_unused flag | Narr the Reg | 1 | -1/+1 | |
2022-01-05 | glsl: Remove unreachable return | Narr the Reg | 1 | -1/+0 | |
2022-01-04 | gpu: Add shut down method to synchronize threads before destruction | ameerj | 3 | -0/+15 | |
2022-01-04 | ShaderDecompiler: Add a debug option to dump the game's shaders. | Fernando Sahmkow | 8 | -1/+98 | |
2022-01-04 | Revert "Merge pull request #7668 from ameerj/fence-stop-token" | ameerj | 3 | -10/+15 | |
This reverts commit e7733544779f2706d108682dd027d44e7fa5ff4b, reversing changes made to abbbdc2bc027ed7af236625ae8427a46df63f7e7. | |||||
2022-01-03 | gpu: Use std::stop_token in WaitFence for VSync thread | ameerj | 3 | -15/+10 | |
Fixes a hang that may occur when stopping emulation and the VSync thread is blocked on the syncpoint condition variable. | |||||
2022-01-02 | core/hid: Add fallback to fullkey controllers | german77 | 2 | -4/+36 | |
2022-01-02 | controller_applet: Only populate supported controllers | german77 | 2 | -53/+68 | |
2022-01-02 | yuzu: Fix UI elements not updating correctly | german77 | 1 | -2/+2 | |
2022-01-01 | texture_cache/util: Fix s32 overflow when resolving overlaps | ameerj | 1 | -5/+5 | |
2021-12-31 | video_core/memory_manager: Fixes for sparse memory management | ameerj | 2 | -14/+12 | |
2021-12-31 | video_core/memory_manager: Deduplicate Read/WriteBlock | ameerj | 2 | -47/+32 | |
2021-12-31 | core: hle: kernel: Implement thread pinning. | bunnei | 10 | -14/+140 | |
- We largely had the mechanics in place for thread pinning, this change hooks these up. - Validated with tests https://github.com/Atmosphere-NX/Atmosphere/blob/master/tests/TestSvc/source/test_thread_pinning.cpp. | |||||
2021-12-30 | core/hid: Fix controller type validation | german77 | 5 | -17/+23 | |
2021-12-30 | glsl: Add boolean reference workaround | ameerj | 6 | -2/+15 | |
2021-12-30 | glsl_context_get_set: Add alternative cbuf type for broken drivers | ameerj | 6 | -24/+35 | |
some drivers have a bug bitwise converting floating point cbuf values to uint variables. This adds a workaround for these drivers to make all cbufs uint and convert to floating point as needed. | |||||
2021-12-30 | emit_glsl_integer: Use negation work around | ameerj | 1 | -2/+2 | |
2021-12-30 | shader: Add integer attribute get optimization pass | ameerj | 9 | -0/+86 | |
Works around an nvidia driver bug, where casting the integer attributes to float and back to an integer always returned 0. | |||||
2021-12-28 | Empty spaces | Matías Locatti | 1 | -1/+1 | |
2021-12-28 | Changes to avoid warnings in SSE4.2 optimized SPIR-V | Matías Locatti | 1 | -0/+9 | |
2021-12-28 | Remove invalid assertion statement | Feng Chen | 1 | -3/+0 | |
2021-12-28 | Remove invalid header include | Feng Chen | 1 | -1/+0 | |
2021-12-28 | Implement few type in bufferqueue query method | Feng Chen | 2 | -0/+9 | |
2021-12-28 | core: hle: kernel: Updated implementation of svcSetHeapSize. | bunnei | 6 | -83/+141 | |
- Updates our svcSetHeapSize with latest HOS, furthermore allowing heap size to properly be extended/shrunk. - Validated with tests https://github.com/Atmosphere-NX/Atmosphere/blob/master/tests/TestSvc/source/test_set_heap_size.cpp. | |||||
2021-12-25 | emit_glasm_context_get_set: Fix GetAttribute return value type. | ameerj | 1 | -4/+4 | |
GetAttribute expects an F32 result type at the IR level, this fixes the return value of attributes which were not returning an F32 | |||||
2021-12-25 | emit_glsl_floating_point: Fix FPNeg on newer Nvidia drivers | ameerj | 1 | -2/+2 | |
2021-12-24 | vk_texture_cache: Use 3D scale helpers for MSAA texture scaling on Intel Windows drivers | ameerj | 4 | -20/+35 | |
Fixes a crash when scaling MSAA textures in titles such as Sonic Colors Ultimate. | |||||
2021-12-24 | blit_image: Remove unused function | ameerj | 2 | -50/+0 | |
2021-12-24 | vk_texture_cache: Fix invalidated pointer access | ameerj | 5 | -8/+21 | |
The vulkan ImageView held a reference to its source image for rescale status checking. This pointer is sometimes invalidated when the texture cache slot_images container is resized. To avoid an invalid pointer dereference, the ImageView now holds a reference to the container itself. | |||||
2021-12-23 | core: hle: kernel: Implement SetMemoryPermission. | bunnei | 4 | -1/+67 | |
- Not seen in any games yet, but validated with kernel tests. | |||||
2021-12-23 | core: hle: kernel: KThread: X18 should be a cryptographically random number. | bunnei | 1 | -0/+2 | |
- This was added with firmware 11.0.0 (https://switchbrew.org/wiki/11.0.0). - X18 is OR'd by kernel with 1, to make sure it is odd. | |||||
2021-12-22 | main: reword inhibit reason | liushuyu | 1 | -2/+3 | |
2021-12-22 | main: fix wake lock in Flatpak ... | liushuyu | 3 | -0/+63 | |
... by using the XDP system | |||||
2021-12-22 | hle: kernel: svc: GetInfo: Fix error checking with IdleTickCount. | bunnei | 1 | -14/+9 | |
- Enforce tha the supplied handle is invalid, not valid. - This gets Witcher 3 booting. | |||||
2021-12-21 | Allow overriding SCM version info | Andrew Udvare | 1 | -0/+5 | |
If the build is from a non-repository, these functions will return empty. This patch allows using defines to CMake to set version info such as -DGIT_BRANCH=master. | |||||
2021-12-19 | main: Refactor to reduce code duplication in ShowFullscreen() | ameerj | 1 | -25/+16 | |
2021-12-19 | main: Make render window borderless fullscreen toggle on the monitor it resides in | ameerj | 1 | -1/+1 | |
Toggling borderless fullscreen on the separate render window made it fullscreen on the monitor which the main yuzu window resided in. This change allows the render window to go fullscreen on the monitor it resides in, independent of the main window location. | |||||
2021-12-19 | kernel: Manually destroy the current process during shut down | ameerj | 1 | -1/+4 | |
Avoids a memory leak. | |||||
2021-12-18 | video_core/codecs: re-enable VAAPI/VDPAU on BSDs after 72aa418b0b41 | Jan Beich | 1 | -1/+1 | |
2021-12-18 | core: loader: kip: Minimal changes to fix KIP loading. | bunnei | 1 | -1/+7 | |
- Allows us to boot KIP (kernal apps), useful for testing the kernel. | |||||
2021-12-18 | Address format clang | vonchenplus | 3 | -38/+38 | |
2021-12-18 | Vulkan: Fix the checks for primitive restart extension. | Fernando Sahmkow | 3 | -21/+28 | |
2021-12-18 | Remove spirv handle legacy related code | vonchenplus | 4 | -190/+1 | |
2021-12-18 | Remove glsl handle legacy related code | vonchenplus | 3 | -103/+1 | |
2021-12-18 | Vulkan: implement Logical Operations. | Fernando Sahmkow | 2 | -3/+3 | |
2021-12-18 | Vulkan: Implement VK_EXT_primitive_topology_list_restart | Fernando Sahmkow | 3 | -2/+40 | |
2021-12-18 | core: hle: Remove global HLE lock. | bunnei | 11 | -67/+1 | |
- This was added early on as a hack to protect against some concurrency issues. - It's not clear that this serves any purpose anymore, and if it does, individual components should be fixed rather than using a global recursive mutex. | |||||
2021-12-17 | [input_common] Move variable declaration closer to usage | vperus | 1 | -2/+2 | |
MSVC supplied with VS2022 generates "warning C4189: 'CALIBRATION_THRESHOLD': local variable is initialized but not referenced" which is treated as an error. Circumvent it by moving constexpr variable directly into body of lambda function. | |||||
2021-12-16 | core/hid: Cancel any vibration after the test | Narr the Reg | 5 | -23/+19 | |
2021-12-16 | Suggestions from CrusadingNinja | Matías Locatti | 1 | -2/+2 | |
2021-12-16 | Changed link | Matías Locatti | 1 | -1/+1 | |
2021-12-16 | video_core/codecs: (re-spin) refactor ffmpeg searching and handling | liushuyu | 1 | -0/+6 | |
2021-12-15 | Revert "video_core/codecs: refactor ffmpeg searching and handling in cmake" | bunnei | 1 | -6/+0 | |
2021-12-15 | yuzu/main: Fix host memory byte units. GB to GiB | Wunkolo | 1 | -4/+6 | |
I have `134850146304` bytes of ram and Yuzu was saying that I had `125.59 GB` of ram. But `125.59` is actually the amount of gi**bi**bytes I have. In gi**ga**bytes I would have `134.9`. Additionally, I changed the `1024 / 1024 / 1024` here into the `_GiB` user-literals that I added a while ago(#6519). https://www.wolframalpha.com/input/?i=134850146304+bytes | |||||
2021-12-15 | core/hid: Fix faulty analog triggers | Narr the Reg | 1 | -2/+2 | |
2021-12-14 | input/SDL: Update SDL hints | Valeri | 1 | -3/+4 | |
SDL_HINT_JOYSTICK_HIDAPI_SWITCH_HOME_LED is no longer needed thanks to new default in SDL 2.0.18. SDL_HINT_JOYSTICK_HIDAPI_XBOX is reported to cause conflicts with native driver Xbox driver on Linux, and Xbox controllers don't benefit from hidapi anyways. | |||||
2021-12-14 | CI: fix CI on Linux | liushuyu | 1 | -3/+0 | |
2021-12-14 | video_core/codecs: skip decoders that use hw frames ... | liushuyu | 1 | -0/+9 | |
... this would resolve some edge-cases where multiple devices are present and ffmpeg is unable to auto-supply the hw surfaces | |||||
2021-12-14 | common/input: Avoid numerous large copies of CallbackStatus | Lioncash | 9 | -129/+171 | |
CallbackStatus instances aren't the cheapest things to copy around (relative to everything else), given that they're currently 520 bytes in size and are currently copied numerous times when callbacks are invoked. Instead, we can pass the status by const reference to avoid all the copying. | |||||
2021-12-14 | common/cpu_detect: Remove CPU family and model | Morph | 1 | -12/+0 | |
We currently do not make use of these fields, remove them for now. | |||||
2021-12-14 | common/input: Remove unnecessary returns | Lioncash | 1 | -6/+2 | |
Given these return void, these can be omitted. | |||||
2021-12-14 | input_poller: Add missing override specifiers | Lioncash | 1 | -20/+19 | |
2021-12-14 | input_mapping: Amend specification of parameters | Lioncash | 1 | -14/+14 | |
param tags are supposed to specify the parameter name without any quoting. Silences several -Wdocumentation warnings. | |||||
2021-12-14 | input_poller: Remove several unnecessary @param tags | Lioncash | 1 | -106/+106 | |
Silences quite a bit of -Wdocumentation warnings, given the @param tag is only intended to be used to identify function parameters, not what it contains. | |||||
2021-12-14 | qt_software_keyboard: Fix out of bounds array access | Morph | 1 | -4/+19 | |
We were unconditionally accessing the keyboard_buttons array, even if the bottom_osk_index was for the numberpad, leading to an out of bounds array access. Fix this by accessing the proper array for the current button when the index is for the numberpad. | |||||
2021-12-13 | tas_input: Avoid minor copies in Read/WriteCommandButtons() | Lioncash | 1 | -2/+2 | |
We don't need to copy the whole pair | |||||
2021-12-13 | tas_input: Remove unnecessary semicolon | Lioncash | 1 | -1/+1 | |
Resolves a -Wextra-semi warning | |||||
2021-12-13 | tas_input: Execute clear() even if empty | Lioncash | 1 | -3/+2 | |
clear() when empty is simply a no-op, so we can get rid of the check here and let the stdlib do it for us. | |||||
2021-12-13 | tas_input: Remove unnecessary includes | Lioncash | 1 | -2/+2 | |
Gets rid of indirect includes and includes only what the interface needs. | |||||
2021-12-13 | tas_input: std::move strings into vector | Lioncash | 1 | -21/+24 | |
While we're in the same area, we can also avoid performing std::stoi in a loop when it only needs to be performed once. | |||||
2021-12-13 | tas_input: Use istringstream over stringstream | Lioncash | 1 | -2/+2 | |
This is only using the input facilities, so we don't need to use the fully-fleged stringstream. | |||||
2021-12-13 | tas_input: Use u8string_view instead of u8string | Lioncash | 2 | -6/+7 | |
Same behavior, but without the potential for extra allocations. | |||||
2021-12-13 | tas_input: Remove unused std::smatch variable | Lioncash | 1 | -2/+0 | |
This also means we can get rid of the dependency on <regex> | |||||
2021-12-13 | tas_input: Amend -Wdocumentation warnings | Lioncash | 2 | -28/+30 | |
Parameters shouldn't have the colon by their name. | |||||
2021-12-13 | tas_input: Make TasAxes enum an enum class | Lioncash | 2 | -5/+14 | |
Prevents these values from potentially clashing with anything in other headers. | |||||
2021-12-13 | input_engine: Fix typo in TriggerOnAxisChange() parameter name | Lioncash | 1 | -1/+1 | |
2021-12-13 | input_engine: Simplify PreSet* family of functions | Lioncash | 2 | -24/+14 | |
We can make use of try_emplace() to insert values only if they don't already exist. | |||||
2021-12-13 | input_engine: Avoid redundant map lookups | Lioncash | 1 | -16/+24 | |
We can use iterators to avoid looking up into maps twice in the getter functions. At the same time we can also avoid copying the ControllerData structs, since they're 264 bytes in size. | |||||
2021-12-13 | input_engine: Remove left-over namespace qualifiers | Lioncash | 1 | -3/+3 | |
These types are part of the InputCommon namespace. | |||||
2021-12-13 | input_engine: Iterate by reference rather than by value where applicable | Lioncash | 1 | -10/+10 | |
Avoids creating copies of several object instances (some of which being over 100 bytes in size). | |||||
2021-12-13 | input_engine: Take BasicMotion by const reference with SetMotion() and TriggerOnMotionChange() | Lioncash | 3 | -6/+7 | |
Copies the BasicMotion instance once instead of twice. | |||||
2021-12-13 | input_engine: std::move InputIdentifier in SetCallback() | Lioncash | 1 | -1/+1 | |
Allows avoiding std::function allocations. | |||||
2021-12-13 | input_engine: Pass LedStatus by const reference | Lioncash | 3 | -3/+3 | |
Avoids copies where reasonably applicable | |||||
2021-12-13 | input_engine: Pass VibrationStatus by const reference in SetRumble() | Lioncash | 7 | -12/+12 | |
Avoids creating copies of the struct where not necessary. | |||||
2021-12-13 | input_engine: std::move engine name where applicable | Lioncash | 15 | -29/+29 | |
We can allow the name to be moved into, allowing allocations to be avoided. | |||||
2021-12-13 | input_engine: Remove callback clearing in constructor | Lioncash | 1 | -3/+1 | |
The callback map is a member variable, so this will always be empty on initial construction. | |||||
2021-12-13 | input_engine: Remove unnecessary semi-colons | Lioncash | 1 | -6/+6 | |
Silences -Wextra-semi warnings | |||||
2021-12-13 | input_engine: Remove unnecessary return | Lioncash | 1 | -3/+1 | |
This is a void function, so it doesn't need this. | |||||
2021-12-13 | Remove erroneous #pragma once | Valeri | 1 | -2/+0 | |
2021-12-13 | service/hid: Improve console motion accuracy | Narr the Reg | 6 | -20/+32 | |
2021-12-12 | game_list: Add persistent setting for the favorites row expanded state | ameerj | 3 | -7/+17 | |
Previously, the favorites row was always expanded on launch. This change introduces a persistent setting that allows the favorites row's expanded state to be remembered between launches. | |||||
2021-12-11 | maxwell_to_vk: Add ASTC_2D_5X4_UNORM | Morph | 1 | -1/+1 | |
2021-12-10 | Fix blit image/view not compatible | Feng Chen | 1 | -1/+6 | |
2021-12-09 | maxwell_to_vk: Add ASTC_2D_8X5_UNORM | Morph | 1 | -1/+1 | |
- Used by Lego City Undercover | |||||
2021-12-08 | profiler: Use QWheelEvent position().toPoint() | Morph | 1 | -1/+1 | |
QWheelEvent::pos() is deprecated. Make use of position().toPoint() instead. | |||||
2021-12-08 | renderer_vulkan: Add R16G16_UINT | Morph | 2 | -1/+2 | |
- Used by Immortals Fenyx Rising | |||||
2021-12-07 | Update k_code_memory.h | itsmeft24 | 1 | -6/+6 | |
2021-12-07 | make KCodeMemory::GetSourceAddress const | itsmeft24 | 1 | -1/+1 | |
Co-authored-by: Mai M. <mathew1800@gmail.com> | |||||
2021-12-07 | main: Update video core popup | Matías Locatti | 1 | -8/+5 | |
Old version had formatting issues, and I want to provide an answer to the most common reason this pops up in the first place, outdated drivers. | |||||
2021-12-07 | hle: kernel k_scheduler: EnableScheduling: Remove redundant GetCurrentThreadPointer calls. | bunnei | 1 | -3/+5 | |
2021-12-07 | hle: kernel k_process: Remove unnecessary .at usage with thread pinning methods. | bunnei | 1 | -3/+3 | |
2021-12-07 | hle: kernel: Remove unnecessary virtual specifier on NotifyAvailable. | bunnei | 1 | -2/+2 | |
2021-12-07 | hle: kernel: Remove unnecessary virtual specifier on EndWait. | bunnei | 1 | -1/+1 | |
2021-12-07 | hle: kernel: k_light_condition_variable: Revert unnecessary license comment changes. | bunnei | 1 | -1/+1 | |
2021-12-07 | hle: kernel: k_condition_variable: Revert unnecessary style changes. | bunnei | 1 | -2/+2 | |
2021-12-07 | hle: kernel: Remove unnecessary virtual specifier on CancelWait. | bunnei | 6 | -14/+14 | |
2021-12-07 | hle: kernel: service_thread: Force stop threads on destruction. | bunnei | 1 | -1/+7 | |
2021-12-07 | hle: kernel: k_light_lock: Implement CancelWait. | bunnei | 1 | -5/+10 | |
- Fixes a crash in Megadimension Neptunia VII. | |||||
2021-12-07 | hle: kernel: service_thread: Use std::jthread. | bunnei | 1 | -18/+19 | |
- Fixes a potential deadlock on service thread shutdown. | |||||
2021-12-07 | hle: kernel: k_thread: Skip reschedule on DisableDispatch with SC. | bunnei | 1 | -0/+5 | |
2021-12-07 | hle: kernel: k_thread: Rename sleeping_queue -> wait_queue. | bunnei | 2 | -17/+13 | |
2021-12-07 | hle: kernel: svc: Fix deadlock that can occur with single core. | bunnei | 1 | -10/+8 | |
2021-12-07 | hle: kernel: k_thread: Treat dummy threads as a special type. | bunnei | 2 | -1/+4 | |
2021-12-07 | hle: kernel: fix timing on thread preemption | FernandoS27 | 1 | -4/+2 | |
2021-12-07 | hle: kernel: fix scheduling ops from HLE host thread. | FernandoS27 | 1 | -3/+3 | |
2021-12-07 | hle: kernel: Add a flag for indicating that the kernel is currently shutting down. | bunnei | 6 | -0/+49 | |
2021-12-07 | hle: kernel: KSynchronizationObject: Fix variable shadowing. | bunnei | 1 | -8/+8 | |
2021-12-07 | hle: kernel: Cleanup to match coding style. | bunnei | 6 | -26/+21 | |
2021-12-07 | hle: kernel: KProcess: Improvements for thread pinning. | bunnei | 2 | -8/+26 | |
2021-12-07 | hle: kernel: KThreadQueue: Remove deprecated code. | bunnei | 1 | -63/+0 | |
2021-12-07 | hle: kernel: KConditionVariable: Various updates & simplifications. | bunnei | 2 | -121/+65 | |
2021-12-07 | hle: kernel: KThread: Migrate to updated KThreadQueue (part 2). | bunnei | 1 | -29/+19 | |
2021-12-07 | hle: kernel: KThread: Migrate to updated KThreadQueue (part 1). | bunnei | 3 | -60/+71 | |
2021-12-07 | hle: kernel: KConditionVariable: Migrate to updated KThreadQueue. | bunnei | 1 | -12/+55 | |
2021-12-07 | hle: kernel: KServerSession: Migrate to updated KThreadQueue. | bunnei | 2 | -5/+11 | |
2021-12-07 | hle: kernel: KLightConditionVariable: Migrate to updated KThreadQueue. | bunnei | 3 | -54/+87 | |
2021-12-07 | hle: kernel: KLightLock: Migrate to updated KThreadQueue. | bunnei | 2 | -35/+36 | |
2021-12-07 | hle: kernel: KAddressArbiter: Migrate to updated KThreadQueue. | bunnei | 1 | -43/+39 | |
2021-12-07 | hle: kernel: KThread: Remove tracking of sync object from threads. | bunnei | 6 | -41/+21 | |
2021-12-07 | hle: kernel: Update KThreadQueue and migrate KSynchronizationObject. | bunnei | 8 | -75/+251 | |
2021-12-07 | core: hle: kernel: Disable dispatch count tracking on single core. | bunnei | 3 | -5/+14 | |
- This would have limited value, and would be a mess to handle properly. | |||||
2021-12-07 | core: hle: kernel: k_thread: Mark KScopedDisableDispatch as nodiscard. | bunnei | 1 | -1/+1 | |
2021-12-07 | core: cpu_manager: Use invalid core_id on init and simplify shutdown. | bunnei | 1 | -7/+3 | |
2021-12-07 | core: hle: kernel: k_auto_object: Add GetName method. | bunnei | 1 | -0/+4 | |
- Useful purely for debugging. | |||||
2021-12-07 | core: hle: kernel: DisableDispatch on suspend threads. | bunnei | 1 | -0/+3 | |
2021-12-07 | core: hle: kernel: k_scheduler: Improve DisableScheduling and EnableScheduling. | bunnei | 1 | -14/+9 | |
2021-12-07 | core: cpu_manager: Use KScopedDisableDispatch. | bunnei | 1 | -7/+8 | |
2021-12-07 | core: hle: kernel: Use CurrentPhysicalCoreIndex as appropriate. | bunnei | 1 | -6/+2 | |
2021-12-07 | core: hle: kernel: k_scheduler: Remove unnecessary MakeCurrentProcess. | bunnei | 1 | -5/+0 | |
2021-12-07 | core: hle: kernel: k_scheduler: Improve ScheduleImpl. | bunnei | 1 | -6/+7 | |
2021-12-07 | core: hle: kernel: k_scheduler: Improve Unload. | bunnei | 1 | -17/+29 | |
2021-12-07 | core: hle: kernel: k_process: DisableDispatch on main thread. | bunnei | 1 | -0/+1 | |
2021-12-07 | core: hle: kernel: k_handle_table: Use KScopedDisableDispatch as necessary. | bunnei | 2 | -0/+8 | |
2021-12-07 | core: hle: kernel: k_thread: Add KScopedDisableDispatch. | bunnei | 2 | -1/+47 | |
2021-12-07 | core: hle: kernel: Ensure idle threads are closed before destroying scheduler. | bunnei | 3 | -24/+22 | |
2021-12-07 | core: hle: kernel: Reflect non-emulated threads as core 3. | bunnei | 7 | -14/+17 | |
2021-12-07 | CMakeLists: Specify /Zm200 when compiling in MSVC | Morph | 1 | -0/+2 | |
This increases the memory heap size for constructing precompiled headers to 2x the default. | |||||
2021-12-06 | service/notif: Add notif:a and stub ListAlarmSettings,Initialize | german77 | 6 | -0/+77 | |
Used by ring fit adventure 1.2.0 | |||||
2021-12-06 | fix formatting | itsmeft24 | 1 | -1/+6 | |
2021-12-06 | move private members below public members | itsmeft24 | 1 | -10/+11 | |
2021-12-06 | fix formatting | itsmeft24 | 1 | -4/+1 | |
2021-12-06 | fix formatting | itsmeft24 | 1 | -1/+1 | |
Co-authored-by: Mai M. <mathew1800@gmail.com> | |||||
2021-12-06 | service/hid: Stub SetNpadCaptureButtonAssignment and ClearNpadCaptureButtonAssignment | german77 | 2 | -2/+35 | |
Used by ring fit adventure 1.2.0 | |||||
2021-12-06 | loader: Support loading subsdk{8,9} | jam1garner | 1 | -2/+3 | |
2021-12-06 | fix formatting | itsmeft24 | 2 | -2/+2 | |
2021-12-06 | Remove unnecessary includes | itsmeft24 | 2 | -50/+13 | |
2021-12-06 | emit_spirv: Reduce emit_spirv.h include overhead | ameerj | 20 | -3/+20 | |
emit_spirv.h is included in video_core, which was propagating further includes that video_core did not depend on. | |||||
2021-12-06 | glasm: Move implemented instructions from not_implemented.cpp | ameerj | 7 | -169/+220 | |
2021-12-06 | shader_recompiler: Adjust emit_context includes | ameerj | 37 | -37/+37 | |
2021-12-05 | service/hid: Implement SetNpadJoyAssignmentMode | german77 | 5 | -38/+174 | |
2021-12-05 | Add copyright notice | itsmeft24 | 2 | -0/+8 | |
2021-12-05 | shader_recompiler: Rename backend emit_context files | ameerj | 7 | -6/+6 | |
2021-12-05 | general: Add missing copyright notices | ameerj | 5 | -0/+20 | |
2021-12-05 | Add KCodeMemory to CMakeLists.txt | itsmeft24 | 1 | -0/+2 | |
2021-12-05 | vk_texture_cache: Add ABGR src format check for D24S8 conversions | ameerj | 1 | -1/+5 | |
2021-12-05 | renderer_opengl: Minor refactoring of filter selection | ameerj | 1 | -30/+20 | |
2021-12-05 | texture_cache: Fix image convert dimensions assertion | ameerj | 1 | -1/+12 | |
2021-12-05 | blit_image: Refactor upscale factors usage | ameerj | 6 | -62/+53 | |
The image view itself can be queried to see if it is being rescaled or not, removing the need to pass the upscale/down shift factors from the texture cache. | |||||
2021-12-05 | vk_texture_cache: Add a function to ImageView to check if src image is rescaled | ameerj | 2 | -4/+22 | |
2021-12-05 | blit_image: Refactor ConvertPipeline functions | ameerj | 2 | -29/+15 | |
2021-12-05 | blit_image: Refactor ConvertPipelineEx functions | ameerj | 2 | -33/+18 | |
reduces much of the duplication between the color/depth variants | |||||
2021-12-05 | vk_blit_screen: Minor refactor of filter pipeline selection | ameerj | 1 | -21/+16 | |
2021-12-05 | Revert "Merge pull request #7395 from Morph1984/resolve-comments" | ameerj | 3 | -16/+31 | |
This reverts commit d20f91da11fe7c5d5f1bd4f63cc3b4d221be67a4, reversing changes made to 5082712b4e44ebfe48bd587ea2fa38767b7339cb. | |||||
2021-12-05 | kernel: svc: Implement Map/UnmapProcessMemory and Create/ControlCodeMemory | itsmeft24 | 11 | -7/+636 | |
Used by Skyline modding framework | |||||
2021-12-05 | core/hid: Add missing controller type | german77 | 1 | -0/+2 | |
2021-12-05 | Fixed #7502 | Adam Heinermann | 1 | -8/+9 | |
2021-12-05 | core/hid: Ensure only valid npad are connected | german77 | 8 | -88/+147 | |
2021-12-04 | Address feedback | Feng Chen | 5 | -17/+27 | |
2021-12-04 | Texture Cache: Fix crashes on NVIDIA. | Fernando Sahmkow | 1 | -3/+6 | |
2021-12-04 | native_clock: Wait for less time in EstimateRDTSCFrequency | Morph | 1 | -18/+18 | |
In my testing, waiting for 200ms provided the same level of precision as the previous implementation when estimating the RDTSC frequency. This significantly improves the yuzu executable launch times since we reduced the wait time from 3 seconds to 200 milliseconds. | |||||
2021-12-03 | video_core/cmake: link against libva explicitly ... | liushuyu | 1 | -0/+1 | |
... to fix build on Flatpak (and self-builds) | |||||
2021-12-03 | video_core/codecs: more fixes for VAAPI detection ... | liushuyu | 1 | -63/+25 | |
* skip impersonated VAAPI implementaions ("imposter detection") * place VAAPI priority below CUDA/NVDEC/CUVID | |||||
2021-12-03 | video_core/codec: address comments | liushuyu | 1 | -8/+12 | |
2021-12-03 | video_core/codecs: more robust ffmpeg hwdecoder selection logic | liushuyu | 1 | -10/+27 | |
2021-12-03 | service: am: ISelfController: Stub SaveCurrentScreenshot | Morph | 3 | -2/+15 | |
- Used by Disney Magical World 2: Enchanted Edition | |||||
2021-12-02 | yuzu: Implement basic controller navigation | german77 | 9 | -8/+285 | |
2021-12-02 | general: Replace high_resolution_clock with steady_clock | Morph | 7 | -13/+13 | |
On some OSes, high_resolution_clock is an alias to system_clock and is not monotonic in nature. Replace this with steady_clock. | |||||
2021-12-02 | Support multiple videos playing | Feng Chen | 6 | -41/+36 | |
2021-11-30 | service: friend: Implement GetCompletionEvent | Morph | 1 | -2/+21 | |
- Used by Super Bomberman R Online | |||||
2021-11-30 | input_common: Fix error with thread name | Narr the Reg | 1 | -2/+1 | |
2021-11-30 | input_interpreter: Make use of NpadButton instead of a u64 | Morph | 2 | -9/+9 | |
Allows us to be more explicit with the representation of button states and use the provided bit manipulation operators | |||||
2021-11-30 | npad: Return NpadButton in GetAndResetPressState | Morph | 3 | -7/+6 | |
We were previously truncating this to a u32 as there were no known buttons that used the full 64 bits of this type. Fix this now that we know they are used. | |||||
2021-11-30 | core: hid: hid_types: Add "All" to NpadButton | Morph | 1 | -0/+2 | |
This represents a bitmask for all pressed buttons | |||||
2021-11-30 | qt_controller: Make use of (Enable/Disable)AllControllerConfiguration | Morph | 1 | -8/+5 | |
This also moves the use of DisableConfiguration to the destructor. | |||||
2021-11-29 | core: hid: hid_core: Add (Enable/DIsable)AllControllerConfiguration | Morph | 2 | -0/+32 | |
2021-11-29 | general: Fix handheld typo | Morph | 2 | -17/+17 | |
2021-11-29 | core: hid: Mark constructors as explicit | Morph | 2 | -2/+2 | |
2021-11-29 | core: hid: Cleanup and amend documentation | Morph | 4 | -69/+76 | |
2021-11-29 | Revert of b01aa72 | vperus | 1 | -35/+39 | |
Caused worker_thread to be stuck in Stage1Completed state until job's destruction. | |||||
2021-11-29 | [input_common] Add completion test for CalibrationConfigurationJob | vperus | 3 | -9/+151 | |
2021-11-29 | Add missing pixel format mapping | Feng Chen | 1 | -0/+2 | |
2021-11-29 | qt_controller: Fix input when the controller applet is ignored | german77 | 1 | -0/+3 | |
2021-11-28 | Texture Cache: Secure insertions against deletions. | Fernando Sahmkow | 1 | -3/+13 | |
2021-11-28 | core/ns: Implement GetReadOnlyApplicationControlDataInterface | Narr the Reg | 2 | -1/+26 | |
Used in checkpoint homebrew | |||||
2021-11-28 | core/pdm: Stub QueryPlayStatisticsByApplicationIdAndUserAccountId | Narr the Reg | 4 | -0/+107 | |
Used in checkpoint homebrew | |||||
2021-11-28 | settings: Add debug setting to enable all controllers | german77 | 8 | -0/+75 | |
2021-11-27 | core/hid: Stub GetUniquePadsFromNpad | Narr the Reg | 1 | -1/+13 | |
Used in checkpoint homebrew | |||||
2021-11-27 | Texture Cache: Redesigning the blitting system (again). | Fernando Sahmkow | 3 | -23/+64 | |
2021-11-27 | config: Remove vibration configuration | german77 | 7 | -104/+3 | |
2021-11-27 | applet/controller: Enable configuring mode while the applet is open | german77 | 1 | -7/+12 | |
2021-11-26 | input_common: Fully implement UDP controllers | Narr the Reg | 12 | -40/+397 | |
2021-11-26 | Texture Cache: Further fix regressions. | Fernando Sahmkow | 1 | -11/+15 | |
2021-11-25 | service/hid: Finish converting LIFO objects and address some nits | Narr the Reg | 14 | -95/+50 | |
2021-11-25 | yuzu: Fix TAS from rebase | german77 | 3 | -9/+11 | |
2021-11-25 | input_common: Move button names to the frontend | german77 | 12 | -52/+160 | |
2021-11-25 | input_common: Fix SDL controller with inverted axis | german77 | 2 | -24/+8 | |
2021-11-25 | bootmanager: Use cross-platform keyboard input | german77 | 3 | -39/+58 | |
2021-11-25 | kraken: Address comments from review | german77 | 17 | -66/+54 | |
Fix compiler bug | |||||
2021-11-25 | core/hid: Improve accuary of mouse implementation | german77 | 14 | -48/+79 | |
2021-11-25 | core/hid: Fully implement native mouse | german77 | 21 | -1039/+323 | |
2021-11-25 | input_common: Allow keyboard to be backwards compatible | german77 | 10 | -48/+115 | |
2021-11-25 | core/hid: Improve accuracy of the keyboard implementation | german77 | 13 | -313/+682 | |
2021-11-25 | core/hid: Fix keyboard alignment | german77 | 2 | -12/+14 | |
2021-11-25 | core/hid: Remove usage of native types, fix a couple of errors with motion | german77 | 11 | -428/+632 | |
2021-11-25 | settings: Remove includes of core.h | german77 | 10 | -57/+55 | |
2021-11-25 | service/hid: Remove includes of core.h and settings.h | german77 | 29 | -67/+67 | |
2021-11-25 | UI nits | Levi Behunin | 1 | -9/+6 | |
Set top margin to 6 on Right Stick, LeftStick, Face Buttons, D-Pad. Change property on Input Device QComboBox from minimumSize to minimumContentsLength. | |||||
2021-11-25 | service/hid: Add support for new controllers | german77 | 2 | -2/+31 | |
2021-11-25 | settings: Fix controller preview not displaying the correct controller | german77 | 3 | -4/+7 | |
2021-11-25 | core/hid: Rename NpadType to NpadStyleIndex | german77 | 15 | -215/+228 | |
2021-11-25 | config: Cleanup and documentation | german77 | 8 | -99/+46 | |
2021-11-25 | input_common: Fix motion from 3 axis | german77 | 1 | -0/+2 | |
2021-11-25 | core/hid: Prevent Emulated controller from flapping with multiple inputs devices | german77 | 5 | -36/+77 | |
2021-11-25 | core/hid: Fully emulate motion from button | german77 | 7 | -37/+97 | |
2021-11-25 | second commit lion review | german77 | 28 | -42/+73 | |
2021-11-25 | settings: Fix Debug controller type options | german77 | 13 | -95/+77 | |
2021-11-25 | kraken: Address comments from review | german77 | 31 | -466/+534 | |
start lion review | |||||
2021-11-25 | input_common: Revert deleted TAS functions | german77 | 7 | -48/+122 | |
2021-11-25 | core/hid: Explain better what a temporary value does | german77 | 2 | -24/+28 | |
2021-11-25 | input_common: Fix GC adapter initialization | german77 | 1 | -12/+12 | |
Fix GC controller | |||||
2021-11-25 | core/hid: Update structs to 13.1.0 | german77 | 12 | -50/+107 | |
2021-11-25 | core/hid: Add TAS input | german77 | 6 | -13/+82 | |
2021-11-25 | input_common: Fix UDP uuid | german77 | 3 | -2/+16 | |
2021-11-25 | input_common: Add multiple vibration curves | german77 | 2 | -15/+28 | |
2021-11-25 | core/hid: Rework battery mappings | german77 | 9 | -46/+109 | |
2021-11-25 | input_common: Add manual update options to input devices | german77 | 5 | -0/+56 | |
2021-11-25 | service/hid: Fix memory allocated incorrectly | german77 | 5 | -7/+7 | |
2021-11-25 | settings: Fix mouse and keyboard mappings | german77 | 10 | -105/+102 | |
2021-11-25 | web_applet: Replace HIDButton with NpadButton | german77 | 3 | -36/+44 | |
2021-11-25 | Morph review first wave | german77 | 23 | -136/+117 | |
2021-11-25 | service/hid: Match shared memory closer to HW | german77 | 2 | -26/+75 | |
2021-11-25 | yuzu: Fix loading input profiles | german77 | 2 | -0/+9 | |
2021-11-25 | kraken: Address comments from review | german77 | 15 | -56/+56 | |
review fixes | |||||
2021-11-25 | service/hid: Use ring buffer for gestures | german77 | 2 | -79/+52 | |
2021-11-25 | service/hid: Fix gesture input | german77 | 8 | -91/+159 | |
2021-11-25 | configuration: Migrate controller settings to emulated controller | german77 | 12 | -127/+141 | |
2021-11-25 | core/hid: Fix rumble too strong at 1% | german77 | 3 | -13/+48 | |
2021-11-25 | core/hid: Only signal when needed | german77 | 11 | -153/+240 | |
2021-11-25 | hid: Fix controller connection/disconnection | german77 | 10 | -65/+226 | |
2021-11-25 | core/hid: Documment some files | german77 | 4 | -52/+265 | |
2021-11-25 | kraken: Fix errors from rebase and format files | german77 | 20 | -53/+83 | |
2021-11-25 | core/hid: Add output devices | german77 | 20 | -144/+312 | |
2021-11-25 | core: Update input interpreter | german77 | 4 | -54/+18 | |
2021-11-25 | yuzu: Update overlay applet | german77 | 2 | -16/+21 | |
2021-11-25 | core/frontend: Update applets | german77 | 2 | -10/+15 | |
2021-11-25 | core: Remove frontend/input | german77 | 1 | -217/+0 | |
2021-11-25 | service/hid: Rewrite npad to use ring lifo and the emulated controller | german77 | 2 | -890/+605 | |
2021-11-25 | service/hid: Update console sixaxis to the emulated console | german77 | 2 | -28/+26 | |
2021-11-25 | service/hid: Update mouse and keyboard to use ring lifo and the emulated device | german77 | 4 | -158/+71 | |
2021-11-25 | service/hid: Update touch and gestures to use ring lifo and the emulated console | german77 | 4 | -370/+191 | |
2021-11-25 | service/hid: Update debug pad, xpad, stubbed and controller base to use ring lifo and the emulated controller | german77 | 7 | -166/+80 | |
2021-11-25 | service/hid: Use remove duplicated code, update names | german77 | 2 | -64/+30 | |
2021-11-25 | service/hid: Create ring LIFO | german77 | 2 | -1/+55 | |
2021-11-25 | Qt_applets: Use new input | german77 | 5 | -49/+68 | |
2021-11-25 | settings: Cleanup settings | german77 | 6 | -9/+16 | |
2021-11-25 | debugger/controller: Remove TAS | german77 | 2 | -46/+5 | |
2021-11-25 | core/emu_window: Remove touch input | german77 | 2 | -113/+15 | |
2021-11-25 | yuzu: Update frontend | german77 | 13 | -1010/+822 | |
2021-11-25 | core: Register HID | german77 | 3 | -4/+25 | |
2021-11-25 | core/hid: Add emulated controllers | german77 | 9 | -0/+2025 | |
2021-11-25 | yuzu_cmd: Use new input | german77 | 3 | -45/+39 | |
2021-11-25 | yuzu: Use new input on main and bootmanager | german77 | 3 | -68/+59 | |
2021-11-25 | input_common: Rewrite main and add the new drivers | german77 | 2 | -49/+330 | |
2021-11-25 | input_common: Remove obsolete files | german77 | 5 | -444/+0 | |
2021-11-25 | input_common: Rewrite SDL | german77 | 6 | -1757/+950 | |
2021-11-25 | input_common: Rewrite udp client | german77 | 5 | -441/+54 | |
2021-11-25 | input_common: Rewrite tas input | german77 | 5 | -840/+2 | |
2021-11-25 | input_common: Rewrite gc_adapter | german77 | 8 | -827/+848 | |
2021-11-25 | input_common: Rewrite touch | german77 | 3 | -0/+99 | |
2021-11-25 | input_common: Rewrite mouse | german77 | 7 | -751/+217 | |
2021-11-25 | input_common: Rewrite keyboard | german77 | 11 | -614/+95 | |
2021-11-25 | input_common: Move touch and analog from button. Move udp protocol | german77 | 10 | -132/+172 | |
2021-11-25 | input_common: Create input poller and mapping | german77 | 6 | -0/+1305 | |
2021-11-25 | input_common: Create input_engine | german77 | 2 | -0/+585 | |
2021-11-25 | core/hid: Move motion_input, create input converter and hid_types | german77 | 6 | -0/+1164 | |
2021-11-25 | core/hid: Move input_interpreter to hid | german77 | 4 | -4/+4 | |
2021-11-25 | common: Rewrite and move core/frontend/input.h to common | german77 | 2 | -0/+243 | |
2021-11-25 | Refactor menu states and shortcuts in GMainWindow. (#7419) | Adam Heinermann | 3 | -237/+175 | |
Refactor menu states and shortcuts in GMainWindow. - Removed "Start", since it was always disabled unless it was "Continue" which has now been moved to "Pause". - Allow hotkeys to be used while in fullscreen. - Removed the load amiibo hotkey. | |||||
2021-11-25 | video_core/codec: address comments | liushuyu | 1 | -17/+11 | |
2021-11-25 | video_core/codecs: fix multiple decoding issues on Linux ... | liushuyu | 1 | -2/+47 | |
* when someone installed Intel video drivers on an AMD system, the decoder will select the Intel VA-API decoding driver and yuzu will crash due to incorrect driver selection; the fix will check if the currently about-to-use driver is loaded in the kernel * when using NVIDIA driver on Linux with a ffmpeg that does not have CUDA capability enabled, the decoder will crash; the fix simply making the decoder prefers the VDPAU driver over CUDA on Linux | |||||
2021-11-22 | Texture Cache: Fix issue with blitting 3D textures. | Fernando Sahmkow | 1 | -2/+4 | |
2021-11-22 | arm: dynarmic: Cleanup icache op handling | jam1garner | 1 | -10/+9 | |
2021-11-22 | arm: dynarmic: Implement icache op handling for 'ic iallu' instruction | jam1garner | 1 | -0/+3 | |
2021-11-22 | arm: dynarmic: Implement icache op handling for 'ic ivau' instruction | jam1garner | 1 | -0/+18 | |
2021-11-22 | const fixes | Adam Heinermann | 2 | -3/+3 | |
2021-11-22 | Apply clang format | Adam Heinermann | 1 | -1/+0 | |
2021-11-22 | Added TAS controls to the menu under Tools | Adam Heinermann | 5 | -57/+153 | |
2021-11-22 | Texture Cache: Correct conversion shaders. | Fernando Sahmkow | 2 | -2/+2 | |
2021-11-22 | Texture Cache: Always copy on NVIDIA. | Fernando Sahmkow | 1 | -0/+5 | |
2021-11-22 | TextureCache: Simplify blitting of D24S8 formats and fix bugs. | Fernando Sahmkow | 10 | -195/+73 | |
2021-11-21 | VulkanTexturECache: Use reinterpret on D32_S8 formats. | Fernando Sahmkow | 1 | -2/+7 | |
2021-11-21 | HostShaders: Fix D24S8 convertion shaders. | Fernando Sahmkow | 6 | -23/+47 | |
2021-11-21 | configure_general: Allow framerate cap to be used in custom game configs | Kewlan | 5 | -27/+99 | |
2021-11-21 | TextureCache: Eliminate format deduction as full depth conversion has been supported. | Fernando Sahmkow | 2 | -29/+5 | |
2021-11-21 | kernel: svc: Move all IsValid functions to an anonymous namespace | Morph | 1 | -3/+15 | |
2021-11-21 | kernel: svc: Implement SetProcessMemoryPermission | Morph | 1 | -1/+41 | |
- Used by Skyline modding framework | |||||
2021-11-21 | kernel: KPageTable: Rename SetCodeMemoryPermission to SetProcessMemoryPermission | Morph | 4 | -8/+8 | |
2021-11-21 | vk_texture_cache: Mark VkBufferUsageFlags as static constexpr | Morph | 1 | -3/+3 | |
2021-11-21 | vk_blit_image: Consolidate CreatePipelineTargetEx functions | Morph | 2 | -28/+13 | |
2021-11-21 | service: pm: Implement AtmosphereGetProcessId | Morph | 1 | -0/+24 | |
- Used by Skyline modding framework | |||||
2021-11-21 | service: pm: Add all relevant result codes | Morph | 1 | -3/+8 | |
2021-11-21 | service: pm: Rename title id to program id | Morph | 1 | -6/+6 | |
2021-11-20 | Fix screenshot dimensions when at 1x scale | ameerj | 5 | -20/+8 | |
This was regressed by ART. Prior to ART, the screenshots were saved at the title's framebuffer resolution. A misunderstanding of the existing logic led to screenshot dimensions becoming dependent on the host render window size. This changes the behavior to match how it was prior to ART at 1x, with screenshots now always being the title's framebuffer dimensions scaled by the resolution scaling factor. | |||||
2021-11-20 | TextureCache: Refactor and fix linux compiling. | Fernando Sahmkow | 3 | -9/+11 | |
2021-11-20 | TextureCache: Assure full conversions on depth/stencil write shaders. | Fernando Sahmkow | 3 | -6/+6 | |
2021-11-20 | TextureCache: Implement buffer copies on Vulkan. | Fernando Sahmkow | 6 | -9/+193 | |
2021-11-20 | TextureCache: Add R16G16 to D24S8 converter. | Fernando Sahmkow | 5 | -0/+38 | |
2021-11-19 | TextureCache: Add B10G11R11 to D24S8 converter. | Fernando Sahmkow | 5 | -13/+84 | |
2021-11-19 | TextureCache: Further fixes on resolve algorithm. | Fernando Sahmkow | 2 | -16/+17 | |
2021-11-19 | Implement convert legacy to generic | Feng Chen | 6 | -1/+108 | |
2021-11-19 | TextureCache: Implement additional D24S8 convertions. | Fernando Sahmkow | 6 | -0/+86 | |
2021-11-19 | TextureCache: force same image format when resolving an image. | Fernando Sahmkow | 2 | -2/+9 | |
2021-11-19 | main: Fix default AA name | Morph | 1 | -4/+4 | |
By default, no AA is applied, not FXAA | |||||
2021-11-19 | configure_graphics_ui: AMD's -> AMD | Morph | 1 | -1/+1 | |
AMD officially markets FSR as AMD FidelityFX™️ Super Resolution | |||||
2021-11-19 | main: Shorten AMD FSR status bar text | Morph | 1 | -1/+1 | |
AMD'S FIDELITYFX SR -> FSR | |||||
2021-11-19 | TextureCache: Fix regression caused by ART and improve blit detection algorithm to be smarter. | Fernando Sahmkow | 2 | -10/+27 | |
2021-11-19 | Vulkan: implement D24S8 <-> RGBA8 convertions. | Fernando Sahmkow | 6 | -0/+166 | |
2021-11-18 | renderer_vulkan: Implement S8_UINT stencil format | Morph | 3 | -0/+18 | |
It should be noted that on Windows, only nvidia gpus support this format natively as of this commit. | |||||
2021-11-18 | gl_texture_cache: Round format conversion PBO to next power of 2 | ameerj | 1 | -1/+5 | |
2021-11-18 | Fix crash on exit due to static scoped dummy threads | Adam Heinermann | 1 | -8/+14 | |
2021-11-17 | renderer_opengl: Implement S8_UINT stencil format | Morph | 3 | -6/+25 | |
2021-11-17 | video_core: Add S8_UINT stencil format | Morph | 4 | -3/+21 | |
2021-11-17 | hotkeys: Don't allow hotkeys to spam | german77 | 1 | -0/+2 | |
2021-11-17 | Prevent window flickering when holding Esc | Valeri | 1 | -1/+1 | |
Reported on discord by Levlight. Don't try to exit fullscreen if it's already off. | |||||
2021-11-17 | Fix image update/download error when width too small | Feng Chen | 2 | -10/+18 | |
2021-11-17 | texture_cache: Use pixel format conversion when supported by the runtime | ameerj | 5 | -0/+15 | |
2021-11-17 | gl_texture_cache: Make FormatConversionPass more generic | ameerj | 1 | -7/+12 | |
This allows the usage of the FormatConversionPass to be applied to more than the previously used BGR conversion scenarios. | |||||
2021-11-17 | gl_texture_cache: Rename BGRCopyPass to FormatConversionPass | ameerj | 2 | -21/+18 | |
2021-11-17 | TextureCache: Fix Automatic Anisotropic. | Fernando Sahmkow | 1 | -6/+5 | |
2021-11-17 | TextureCache: OGL query device memory if possible. | FernandoS27 | 2 | -2/+14 | |
2021-11-17 | TextureCache: Fix OGL cleaning | Fernando Sahmkow | 5 | -0/+43 | |
2021-11-16 | TextureCache: Add automatic anisotropic filtering and refactor code. | Fernando Sahmkow | 5 | -16/+22 | |
2021-11-16 | TextureCache: Make a better Anisotropic setter. | Fernando Sahmkow | 4 | -24/+21 | |
2021-11-16 | Texture Cache: revert Image changes. | Fernando Sahmkow | 1 | -0/+4 | |
2021-11-16 | ShaderCache: Better fix for Shuffling gl_FragCoord | Fernando Sahmkow | 1 | -2/+13 | |
2021-11-16 | HostShader: fix Gaussian filter. | FernandoS27 | 1 | -2/+2 | |
2021-11-16 | Texture Cahe/Shader decompiler: Resize PointSize on rescaling, refactor and make reaper more agressive on 4Gb GPUs. | FernandoS27 | 5 | -22/+29 | |
2021-11-16 | texture_cache: Refactor Render Target scaling function | ameerj | 2 | -14/+24 | |
2021-11-16 | gl_resource_manager: Ensure non EXT_framebuffer objects are created | ameerj | 2 | -13/+8 | |
2021-11-16 | Texture Cache: Fix memory usage on ScaleDown. | FernandoS27 | 1 | -4/+0 | |
2021-11-16 | OpenGL: Fix viewport/Scissor scaling on downscaling. | FernandoS27 | 1 | -6/+28 | |
2021-11-16 | Vulkan: fix regression. | FernandoS27 | 1 | -14/+17 | |
2021-11-16 | host_shaders: Misc copyright/style changes | ameerj | 4 | -10/+12 | |
2021-11-16 | configure_graphics.ui: Cleanup scaling options and fix duplicate name warning | ameerj | 1 | -5/+5 | |
2021-11-16 | FSR: Fix GCC build errors | ameerj | 3 | -43/+50 | |
2021-11-16 | Vulkan: Reimplement FSR constant generation functions to avoid GCC warnings | Marshall Mohror | 2 | -9/+145 | |
2021-11-16 | vk_blit_screen: Fix AA destruction order | ameerj | 1 | -9/+10 | |
2021-11-16 | Presentation: Only use FP16 in scaling shaders on supported devices in Vulkan | Marshall Mohror | 14 | -116/+197 | |
2021-11-16 | renderer_vulkan/blit_image: Use generic color state on Depth to Color blits | ameerj | 1 | -1/+1 | |
Fixes Bayonetta 2 on AMD | |||||
2021-11-16 | vk_texture_cache: Refactor 3D scaling helpers | ameerj | 2 | -113/+74 | |
2021-11-16 | gl_rasterizer: Fix ScissorTest and Clear when scaling | ameerj | 1 | -10/+6 | |
2021-11-16 | gl_texture_cache: Simplify scaling procedures | ameerj | 2 | -57/+28 | |
2021-11-16 | OpenGlTextureCache: Fix state invalidation on rescaling. | Fernando Sahmkow | 3 | -2/+17 | |
2021-11-16 | VulkanBufferCache: Avoid adding barriers between multiple copies. | Fernando Sahmkow | 3 | -5/+43 | |
2021-11-16 | HostShader: Fix gaussian and add attribution. | Fernando Sahmkow | 1 | -23/+19 | |
2021-11-16 | Yuzu UI: Add button for Anti Alias | Fernando Sahmkow | 3 | -0/+45 | |
2021-11-16 | Vulkan: Fix FXAA in AMD. | Fernando Sahmkow | 1 | -2/+40 | |
2021-11-16 | Texture Cache: Fix blitting. | Fernando Sahmkow | 1 | -2/+2 | |
2021-11-16 | Vulkan: Implement FXAA | FernandoS27 | 3 | -22/+387 | |
2021-11-16 | OpenGL: fix FXAA with scaling | Marshall Mohror | 2 | -9/+31 | |
2021-11-16 | OpenGL: Implement FXAA | Marshall Mohror | 6 | -35/+194 | |
2021-11-16 | Frontend: Add anti-aliasing method setting | Marshall Mohror | 5 | -0/+70 | |
2021-11-16 | Settings: Add anti-aliasing method setting | Marshall Mohror | 2 | -0/+7 | |
2021-11-16 | QtGUI: Add buttton to toggle the filter. | FernandoS27 | 5 | -1/+61 | |
2021-11-16 | VideoCore: Add gaussian filtering. | FernandoS27 | 8 | -2/+140 | |
2021-11-16 | TextureCache: Improve Reaper. | FernandoS27 | 2 | -14/+26 | |
2021-11-16 | Vulkan: fix waiting on semaphore. | FernandoS27 | 1 | -1/+3 | |
2021-11-16 | Update scaleforce to use FP16 | Marshall Mohror | 1 | -88/+55 | |
2021-11-16 | VideoCore: Add more rescaling option. | FernandoS27 | 3 | -7/+38 | |
2021-11-16 | TextureCache: fix rescaling in aliases and overlap joins. | FernandoS27 | 4 | -23/+48 | |
2021-11-16 | Presentation: Fix turning FSR on and off in settings | Marshall Mohror | 1 | -0/+11 | |
2021-11-16 | Video Core: fix building for GCC. | Fernando Sahmkow | 5 | -24/+42 | |
2021-11-16 | Vulkan Rasterizer: Fix clears on integer textures. | FernandoS27 | 3 | -1/+84 | |
2021-11-16 | Texture cache: fix Intel with rescaler. | FernandoS27 | 1 | -2/+2 | |
2021-11-16 | TextureCache: Fix blitting filter in Vulkan and correct viewport/scissor calculation when downscaling. | FernandoS27 | 2 | -20/+44 | |
2021-11-16 | Texture Cache: fix memory managment and optimize scaled downloads, uploads. | Fernando Sahmkow | 7 | -28/+57 | |
2021-11-16 | Texture Cache: ease the requirements of textures being blacklisted. | Fernando Sahmkow | 2 | -22/+7 | |
2021-11-16 | Vulkan: Fix Blit Depth Stencil | Fernando Sahmkow | 2 | -14/+20 | |
2021-11-16 | Texture Cache: Fix downscaling and correct memory comsumption. | Fernando Sahmkow | 8 | -36/+147 | |
2021-11-16 | Presentation: add Nearest Neighbor filter. | Fernando Sahmkow | 6 | -14/+67 | |
2021-11-16 | vulkan: Implement FidelityFX Super Resolution | Marshall Mohror | 11 | -17/+643 | |
2021-11-16 | Texture Cache: Rescale conversions between depth and color | FernandoS27 | 6 | -25/+37 | |
2021-11-16 | Texture cache: Fix memory consumption and ignore rating when a depth texture is rendered. | Fernando Sahmkow | 3 | -7/+19 | |
2021-11-16 | vulkan: Fix rescaling push constant usage | ameerj | 8 | -69/+78 | |
2021-11-16 | Texture Cahe: Fix downscaling on SMO. | Fernando Sahmkow | 5 | -0/+11 | |
2021-11-16 | texture_cache_base: Remove unused function declarations | ameerj | 1 | -8/+0 | |
2021-11-16 | yuzu: Fix build errors | ameerj | 1 | -1/+1 | |
2021-11-16 | vk_texture_cache: Use 3D to scale images when blit is unsupported | ameerj | 4 | -29/+87 | |
2021-11-16 | texture_cache: Fix infinitely recursive ImageCanRescale check | ameerj | 3 | -10/+13 | |
2021-11-16 | vk_texture_cache: Fix BlitScale of non-2D images | ameerj | 1 | -10/+9 | |
2021-11-16 | video_core: Refactor resolution scale function | ameerj | 4 | -46/+34 | |
2021-11-16 | texture_cache: Fix image resolves when src/dst are not both scaled | ameerj | 1 | -5/+8 | |
2021-11-16 | yuzu_cmd: Read resolution_setup and scaling_filter from config | lat9nq | 2 | -0/+25 | |
Also adds descriptions and the settings to the default config. | |||||
2021-11-16 | video_core,yuzu: Move UpdateRescalingInfo call to video_core | lat9nq | 3 | -5/+2 | |
This only needs to happen once per game boot, so we can just call it during CreateGPU and be done with it, avoiding the need to call it in the frontends. | |||||
2021-11-16 | gl_texture_cache: Disable scissor test when scaling textures | ameerj | 1 | -0/+8 | |
Fixes a bug on BOTW where some objects were no longer being rendered after blitting | |||||
2021-11-16 | vk_texture_cache: Fix unsupported blit format error checking | ameerj | 2 | -9/+9 | |
2021-11-16 | vk_texture_cache: Fix early returns on unsupported scales | ameerj | 2 | -19/+11 | |
2021-11-16 | video_core: Misc resolution scaling related refactoring | ameerj | 8 | -47/+51 | |
2021-11-16 | texture_cache: Refactor scaled image size calculation | ameerj | 2 | -12/+13 | |
2021-11-16 | Texture Cache: Fix calculations when scaling. | Fernando Sahmkow | 1 | -0/+12 | |
2021-11-16 | gl_texture_cache: Fix BGR pbo size for scaled textures | ameerj | 1 | -11/+10 | |
2021-11-16 | rescaling_pass: Fix IR errors when unscalable texture types are encountered | ameerj | 1 | -0/+28 | |
2021-11-16 | Texture Cache: Fix Rescaling on Multisample | Fernando Sahmkow | 3 | -8/+21 | |
2021-11-16 | TextureCache: Base fixes on rescaling. | Fernando Sahmkow | 2 | -4/+6 | |
2021-11-16 | rescaling_pass: Logic simplification and minor style cleanup | ameerj | 2 | -33/+17 | |
2021-11-16 | rescaling_pass: Scale ImageFetch offset if it exists | ameerj | 1 | -59/+37 | |
Plus some code deduplication | |||||
2021-11-16 | rescaling_pass: Enable PatchImageQueryDimensions on fragment stages | ameerj | 1 | -5/+4 | |
2021-11-16 | vk_texture_cache: Simplify scaled image management | ameerj | 2 | -107/+34 | |
2021-11-16 | gl_texture_cache: Fix scaling backup logic | ameerj | 2 | -20/+16 | |
2021-11-16 | vk_rasterizer: Fix scaling on Y_NEGATE | ameerj | 1 | -3/+9 | |
2021-11-16 | vk_texture_cache: Use nearest neighbor scaling when available | ameerj | 4 | -29/+36 | |
2021-11-16 | gl_texture_cache: Fix depth and integer format scaling blits | ameerj | 2 | -16/+61 | |
2021-11-16 | gl_texture_cache/rescaling_pass: minor cleanup | ameerj | 3 | -16/+10 | |
2021-11-16 | vk_texture_cache: Minor cleanup | ameerj | 2 | -11/+8 | |
2021-11-16 | rescaling_pass: Fix and simplify shuffle/fragcoord pass | ameerj | 1 | -26/+20 | |
2021-11-16 | Shader: Don't rescale FragCoord if used by Shuffle | Fernando Sahmkow | 2 | -2/+55 | |
2021-11-16 | image_info: Mark MSAA textures as non-rescalable | ameerj | 1 | -2/+2 | |
Blitting or resolving multisampled images requires the dimensions of the src and dst to be equal for valid usage, making them difficult for resolution scaling using the current implementation. | |||||
2021-11-16 | bootmanager: Fix screenshot resolution factor usage | ameerj | 7 | -20/+13 | |
Fixes screenshots at non integer scaling | |||||
2021-11-16 | gl_texture_cache: Simplify scaling | ameerj | 2 | -31/+39 | |
We don't need to reconstruct new textures every time we ScaleUp/ScaleDown. We can scale up once, and revert to the original texture whenever scaling down. Fixes memory leaks due to glDeleteTextures being deferred for later handling on some drivers | |||||
2021-11-16 | Renderers: Unify post processing filter shaders | ameerj | 7 | -211/+36 | |
2021-11-16 | gl_texture_cache: fix scaling on upload | ameerj | 1 | -0/+7 | |
2021-11-16 | Renderer: Implement Bicubic and ScaleForce filters. | Fernando Sahmkow | 15 | -34/+620 | |
2021-11-16 | Texture Cache: fix scaling on upload and stop scaling on base resolution. | Fernando Sahmkow | 1 | -14/+32 | |
2021-11-16 | shader, video_core: Fix GCC build errors | ameerj | 3 | -14/+3 | |
2021-11-16 | emit_spirv: Fix RescalingLayout alignment | ameerj | 3 | -4/+8 | |
2021-11-16 | TextureCache: Fix Buffer Views Scaling. | Fernando Sahmkow | 2 | -5/+9 | |
2021-11-16 | RescalingPass: Agregate pixels on texelFetch while on Fragment Shader | Fernando Sahmkow | 1 | -3/+97 | |
2021-11-16 | Texture Cache: Correctly fix Blits Rescaling. | Fernando Sahmkow | 1 | -9/+12 | |
2021-11-16 | shader: Fix TextureSize check on rescaling. | Fernando Sahmkow | 1 | -27/+21 | |
2021-11-16 | texture_cache: Disable dst_image scaling in BlitImage | ameerj | 1 | -5/+7 | |
Fixes scaling in Super Mario Party | |||||
2021-11-16 | emit_spirv: Fix RescalingLayout alignment | ameerj | 2 | -3/+3 | |
2021-11-16 | shader: Properly scale image reads and add GL SPIR-V support | ReinUsesLisp | 25 | -77/+228 | |
Thanks for everything! | |||||
2021-11-16 | shader: Properly blacklist and scale image loads | ReinUsesLisp | 5 | -11/+31 | |
2021-11-16 | texture_cache: Add getter to query if image view is rescaled | ReinUsesLisp | 5 | -22/+12 | |
2021-11-16 | vk_rasterizer: Minor style change | ReinUsesLisp | 1 | -2/+2 | |
2021-11-16 | gl_texture_cache: Fix scaling blits | ReinUsesLisp | 1 | -20/+12 | |
2021-11-16 | glsl/glasm: Pass and use scaling parameters in shaders | ReinUsesLisp | 9 | -28/+51 | |
2021-11-16 | gl_rasterizer: Properly scale viewports and scissors | ReinUsesLisp | 1 | -23/+24 | |
2021-11-16 | gl_texture_cache: Fix multi layered texture Scale | ameerj | 1 | -11/+15 | |
2021-11-16 | gl_compute_pipeline: Add downscale factor to shader uniforms | ameerj | 1 | -0/+9 | |
2021-11-16 | gl_rasterizer: Fix rescale dirty state checking | ameerj | 1 | -4/+9 | |
2021-11-16 | gl_graphics_pipeline: Add downscale factor to shader uniforms | ameerj | 4 | -5/+19 | |
2021-11-16 | texture_cache: Fix blacklists on compute | ReinUsesLisp | 1 | -1/+1 | |
2021-11-16 | texture_cache: Simplify image view queries and blacklisting | ReinUsesLisp | 16 | -192/+192 | |
2021-11-16 | Vulkan: Fix downscaling Blit. | Fernando Sahmkow | 1 | -14/+18 | |
2021-11-16 | Texture Cache: Implement Rating System. | Fernando Sahmkow | 5 | -15/+47 | |
2021-11-16 | OpenGL: set linear mag filter when blitting a downscaled image. | Fernando Sahmkow | 1 | -0/+1 | |
2021-11-16 | Vulkan: Fix AA when rescaling. | Fernando Sahmkow | 1 | -1/+1 | |
2021-11-16 | Texture Cache: Implement Blacklisting. | Fernando Sahmkow | 5 | -4/+90 | |
2021-11-16 | main: Add resolution scale label in the status bar | Morph | 2 | -2/+12 | |
Shows the resolution scale as "Scale: {}x" in the status bar, where {} is a floating point value representing the current resolution scaling factor. | |||||
2021-11-16 | vulkan: Implement rescaling shader patching | ReinUsesLisp | 8 | -27/+103 | |
2021-11-16 | vk_texture_cache: Properly scale blit source images | ReinUsesLisp | 1 | -2/+2 | |
2021-11-16 | vk_graphics_pipeline: Use Shader::NumDescriptors when possible | ReinUsesLisp | 1 | -18/+6 | |
2021-11-16 | opengl: Use Shader::NumDescriptors when possible | ReinUsesLisp | 3 | -46/+20 | |
2021-11-16 | spirv: Implement rescaling patching | ReinUsesLisp | 8 | -5/+86 | |
2021-11-16 | shader/rescaling_pass: Patch more instructions | ReinUsesLisp | 1 | -4/+101 | |
2021-11-16 | shader: Add IsTextureScaled opcode | ReinUsesLisp | 10 | -0/+34 | |
2021-11-16 | texture_cache: Add image getters | ReinUsesLisp | 2 | -0/+16 | |
2021-11-16 | shader: Add copy constructor to instructions | ReinUsesLisp | 4 | -1/+20 | |
2021-11-16 | shader: Add integer division opcodes | ReinUsesLisp | 9 | -0/+37 | |
2021-11-16 | common/settings: Remove unused scaling options | ReinUsesLisp | 2 | -18/+7 | |
2021-11-16 | shader: Fix rescaling pass | ReinUsesLisp | 1 | -1/+1 | |
2021-11-16 | gl_texture_cache: Simplify rescaling | ameerj | 2 | -19/+15 | |
2021-11-16 | texture_cache: Fix typo in aliased image rescaling | ameerj | 1 | -1/+1 | |
2021-11-16 | vk_texture_cache: Simplify and optimize scaling blits | ReinUsesLisp | 1 | -106/+62 | |
2021-11-16 | vk_texture_cache: Fix scaling blit validation errors | ReinUsesLisp | 1 | -81/+78 | |
2021-11-16 | shader: Fix resolution scaling pass | ReinUsesLisp | 5 | -35/+32 | |
2021-11-16 | shader: Add resolution down factor opcode | ReinUsesLisp | 9 | -0/+25 | |
2021-11-16 | gl_texture_cache: Implement ScaleDown | ameerj | 2 | -26/+36 | |
2021-11-16 | gl_texture_cache: Rescale fixes for multi-layered textures | ameerj | 2 | -16/+32 | |
2021-11-16 | Texture Cache: Implement Rescaling on Aliases and Blits. | Fernando Sahmkow | 1 | -5/+53 | |
2021-11-16 | Fix blits with mips | ReinUsesLisp | 1 | -12/+16 | |
2021-11-16 | Fix blits | ReinUsesLisp | 1 | -10/+10 | |
2021-11-16 | renderer_gl: Resolution scaling fixes | ameerj | 3 | -61/+107 | |
2021-11-16 | TextureCache: Fix rescaling of ImageCopies | Fernando Sahmkow | 3 | -18/+67 | |
2021-11-16 | TextureCache: Modify Viewports/Scissors according to Rescale. | Fernando Sahmkow | 6 | -35/+93 | |
2021-11-16 | Settings: eliminate rescaling_factor. | Fernando Sahmkow | 7 | -37/+19 | |
2021-11-16 | Texture Cache: More rescaling fixes. | Fernando Sahmkow | 4 | -84/+96 | |
2021-11-16 | gl_texture_cache: WIP texture rescale | ameerj | 2 | -3/+69 | |
2021-11-16 | Texture Cache: Implement Vulkan UpScaling & DownScaling | Fernando Sahmkow | 6 | -42/+327 | |
2021-11-16 | ShaderDecompiler: Add initial support for rescaling. | Fernando Sahmkow | 2 | -0/+73 | |
2021-11-16 | Settings: Add resolution scaling to settings. | Fernando Sahmkow | 6 | -5/+155 | |
2021-11-16 | VideoCore: Initial Setup for the Resolution Scaler. | Fernando Sahmkow | 11 | -18/+255 | |
2021-11-16 | Replace keys error pop up | Matías Locatti | 1 | -2/+2 | |
Fight me. | |||||
2021-11-14 | Replace "Light" theme by "Default" | Romain Failliot | 2 | -25/+27 | |
This reflects the current behavior: Light = System default. If your system is set to dark theme, then Light = Dark, which is a bit confusing for the end user. In this PR, I propose to change "Light" with "Default". This way, the user has "Default" and "Default Colorful", which will apply the system theme. Now that the Flatpak respects the system theme, I think this makes much more sense. I also simplified the theme update. Before the code was branching between the default theme and the others, but I think we can have something simpler by forcing the default theme if no theme is defined in the settings, or if the selected theme doesn't exist. And if there's an error, tell the theme name in the error message. | |||||
2021-11-13 | codes: Rename ComposeFrameHeader to ComposeFrame | ameerj | 7 | -14/+14 | |
These functions were composing the entire frame, not just the headers. Rename to more accurately describe them. | |||||
2021-11-13 | vp8: Implement header composition | ameerj | 4 | -6/+90 | |
Enables frame decoding with FFmpeg | |||||
2021-11-13 | codecs: Add VP8 codec class | ameerj | 9 | -20/+90 | |
2021-11-11 | program_metadata: Add default ThreadInfo kernel capability | OatmealDome | 1 | -1/+4 | |
2021-11-08 | applets/swkbd: Fix text check message encoding | Morph | 1 | -7/+15 | |
The text check message can be encoded in UTF-8. | |||||
2021-11-08 | applets/swkbd: Skip text checking if the text has been confirmed | Morph | 8 | -26/+36 | |
Confirm means that the text has already been checked by the application to be correct, but is asking the user for confirmation. The confirmation text itself seems to be corrupted though, this needs to be investigated. Fixes the software keyboard in Famicom Detective Club: The Missing Heir | |||||
2021-11-05 | service/pctl: Stub EndFreeCommunication | Narr the Reg | 1 | -1/+8 | |
- Used by Just Dance 2022 | |||||
2021-11-05 | vulkan_device: Add missing vulkan image format R5G6B5 in GetFormatProperties | Feng Chen | 1 | -0/+1 | |
- Used by Dragon Quest Builders | |||||
2021-11-05 | core: Reorder perf_stats destruction order on Shutdown | ameerj | 1 | -1/+1 | |
Avoids the gpu_core using perf_stats after it's been freed. | |||||
2021-11-04 | general: Get the current process program id directly from the system | Morph | 21 | -56/+42 | |
This allows us to avoid including KProcess' header file in files that only need to get the current process' program id. | |||||
2021-11-04 | general: Rename GetTitleID to GetProgramID | Morph | 24 | -43/+46 | |
2021-11-04 | service: aoc: Stub NotifyUnmountAddOnContent | Morph | 2 | -1/+9 | |
Used by Animal Crossing: New Horizons v2.0.0 DLC | |||||
2021-11-04 | service: aoc: Stub NotifyMountAddOnContent and NotifyMountAddOnContent | Morph | 2 | -0/+21 | |
Used by Animal Crossing: New Horizons v2.0.0 DLC | |||||
2021-11-04 | service/acc: Rename Unknown160 to InitializeApplicationInfoV2 | german77 | 3 | -3/+3 | |
2021-11-04 | service: acc: Stub acc:u0 '160' | Morph | 3 | -0/+9 | |
- Used by Animal Crossing: New Horizons v2.0.0 Since the name is currently unknown, '160' is used as a placeholder. | |||||
2021-11-04 | core: Fix transitive include build errors | ameerj | 5 | -0/+9 | |
2021-11-04 | core: Remove unused includes | ameerj | 133 | -221/+1 | |
2021-11-04 | Simply legacy attribute implement | Feng Chen | 3 | -152/+125 | |
2021-11-03 | svc: Correct WaitSynchronization num_handles param type | Morph | 2 | -4/+4 | |
num_handles is a s32 | |||||
2021-11-02 | general: Remove MakeResult helpers | Morph | 13 | -69/+48 | |
This is made obsolete by the presence of implicit constructors. | |||||
2021-11-02 | hle/result: Amend ResultVal documentation | Morph | 1 | -12/+10 | |
This amends the documentation slightly to reflect the updated interface. | |||||
2021-11-02 | hle/result: Reimplement ResultVal using Common::Expected | Morph | 1 | -117/+63 | |
Common::Expected effectively provides the same functions as ResultVal, so we can implement it with this. This can be replaced with std::expected with minimal effort should it be standardized in the C++ Standard Template Library. | |||||
2021-11-02 | common: Implement a subset of P0323 (std::expected) | Morph | 2 | -0/+988 | |
This implementation is based on and is a subset of the proposed implementation of std::expected https://github.com/TartanLlama/expected/blob/master/include/tl/expected.hpp | |||||
2021-11-02 | Refactor Logging Impl | Levi Behunin | 4 | -28/+41 | |
Loop on stop_token and remove final_entry in Entry. Move Backend thread out of Impl Constructor to its own function. Add Start function for backend thread. Use stop token in PopWait and check if entry filename is nullptr before logging. | |||||
2021-11-02 | Shader Cahe: Fix Phi Nodes on GLASM. | Fernando Sahmkow | 1 | -1/+1 | |
2021-11-01 | ShaderCache: Fix Phi Nodes Type on OGL. | Fernando Sahmkow | 3 | -2/+30 | |
2021-11-01 | gl_rasterizer: Remove unused includes | Morph | 1 | -4/+2 | |
This removes unused includes, especially the core includes which were causing this file to be recompiled every time files included by those headers are modified. | |||||
2021-10-31 | ShaderCache: Order Phi Arguments from farthest away to nearest. | Fernando Sahmkow | 5 | -0/+37 | |
2021-10-31 | Support gl_FogFragCoord attribute | vonchenplus | 3 | -48/+58 | |
2021-10-30 | yuzu qt: Disable the screensaver with SDL2 | lat9nq | 2 | -1/+23 | |
Disables the screen saver when a game boots using SDL2 so that it works on any supported platform. | |||||
2021-10-30 | profile_manager: Resize any image bigger than 256p | german77 | 1 | -0/+11 | |
2021-10-29 | CMakeLists: Document the /GT compile option | Morph | 1 | -0/+1 | |
2021-10-29 | file_sys: control_metadata: Add BrazilianPortuguese | Morph | 2 | -2/+4 | |
2021-10-29 | ns: language: Add BrazilianPortuguese to ApplicationLanguage | Morph | 2 | -1/+26 | |
It seems that Nintendo finally filled that last empty spot in ApplicationLanguage for a total of 16 supported languages. | |||||
2021-10-29 | gl_device: Force GLASM on NVIDIA drivers 495-496 | lat9nq | 1 | -0/+15 | |
GLSL shaders currently do not render correctly on the recent NVIDIA drivers. This adds a check that forces assembly shaders for these drivers since they seem unaffected and adds a warning informing of the decision. Developers can disable the check by enabling graphics debugging. | |||||
2021-10-28 | hle/result: Declare copy/move constructor/assignment as noexcept | Morph | 1 | -3/+3 | |
While we're at it, we can also declare these copy/move constructor/assignment as noexcept. | |||||
2021-10-28 | hle/result: Add move assignment operator in ResultVal | Morph | 1 | -0/+20 | |
ResultVal was missing a move assignment operator, add it. | |||||
2021-10-28 | hle/result: Remove cv-qualifiers from Arg in MakeResult | Morph | 1 | -2/+2 | |
This removes the const qualification for types when MakeResult(arg) is used in a const member function, allowing for automatic deduction and removing the need to manually specify the non-const type as the template argument. | |||||
2021-10-27 | Fix dangling kernel objects when exiting | Feng Chen | 2 | -11/+13 | |
2021-10-27 | Revert PR7009 | Feng Chen | 2 | -15/+5 | |
2021-10-27 | Fix memory leak | Feng Chen | 4 | -0/+38 | |
2021-10-26 | Support gl_BackSecondaryColor attribute | vonchenplus | 3 | -0/+33 | |
2021-10-26 | Support gl_FrontSecondaryColor attribute | vonchenplus | 3 | -0/+33 | |
2021-10-26 | Support gl_BackColor attribute | vonchenplus | 3 | -0/+33 | |
2021-10-26 | Geometry property removal and rewording | Moonlacer | 2 | -9/+1 | |
2021-10-24 | TexturePass: Fix clamping of images as this allowed negative indices. | Fernando Sahmkow | 1 | -1/+1 | |
2021-10-24 | Fixed ARM_Dynamic_64 Step | Andrew Strelsky | 1 | -1/+1 | |
2021-10-24 | Fixup channel submit IOCTL syncpoint parameters | Billy Laws | 2 | -21/+9 | |
The current arguments worked by happenstance as games only ever submit one syncpoint and request one fence back, if a game were to do something other than this then the arguments would've been parsed entirely wrong. | |||||
2021-10-23 | Vulran Rasterizer: address feedback. | Fernando Sahmkow | 1 | -3/+5 | |
2021-10-23 | Revert "input_common: Fix data race on GC implementation" | Fernando S | 2 | -120/+115 | |
2021-10-22 | Fix vulkan viewport issue | Feng Chen | 1 | -0/+1 | |
2021-10-20 | common/alignment: Fix VS2022 compilation | ameerj | 1 | -1/+6 | |
VS2022 seems to introduce an optimization when moving vectors to check for equality of the element values. AlignmentAllocator needed to overload the equality operator to fix compilation of its usage in vector moving. | |||||
2021-10-20 | input_common: Fix VS2022 compilation errors | ameerj | 1 | -39/+35 | |
2021-10-17 | emit_spirv_image: Fix depth image implicit lod sample in compute | ameerj | 1 | -5/+16 | |
Ensures all drivers behave the same way in this case. | |||||
2021-10-17 | settings: Remove std::chrono usage | ameerj | 7 | -24/+20 | |
Alleviates the dependency on chrono for all files that include settings.h | |||||
2021-10-17 | add_link | Moonlacer | 1 | -2/+2 | |
remove_accident fix_whoopsie | |||||
2021-10-17 | Shader Compiler: avoid overflowed indices on indixed samplers. | Fernando Sahmkow | 1 | -1/+2 | |
2021-10-16 | SVC: Implement svcInfo:IdleTickCount | Fernando Sahmkow | 2 | -0/+22 | |
Used by the Witcher 3 | |||||
2021-10-16 | main: fix typo in warning message | Romain Failliot | 1 | -1/+1 | |
2021-10-16 | main: Add missing make_unique for ui | Morph | 1 | -1/+1 | |
2021-10-16 | service/vi: Stub IHOSBinderDriver::TransactParcel GetBufferHistory (#7184) | Feng Chen | 1 | -1/+11 | |
2021-10-16 | qt_web_browser: Add missing QApplication include | Morph | 1 | -0/+1 | |
2021-10-16 | NvHost/Core: Address Feedback. | Fernando Sahmkow | 3 | -19/+27 | |
2021-10-16 | Suspend temporally | FernandoS27 | 3 | -1/+31 | |
2021-10-16 | NVHost_Ctrl: Force wait if the gpu falls behind too long. | FernandoS27 | 2 | -0/+13 | |
2021-10-15 | ui: fix crash when closing configure window | Romain Failliot | 1 | -2/+5 | |
This crash happens 100% of the time (on Linux at least), you just need to open the configure window and click OK. It seems to happen when the tabs are destroyed and once all the tabs are destroyed, a final signal is sent with `index == -1`. So `debug_tab_tab` doesn't exist anymore when this happens, so the crash. | |||||
2021-10-15 | bootmanager: Forward declare System and SystemResultStatus | Morph | 1 | -1/+5 | |
2021-10-15 | yuzu: Construct system in GMainWindow | Morph | 2 | -81/+83 | |
2021-10-15 | core: Move ResultStatus outside of System | Morph | 7 | -67/+69 | |
Allows it to be a forward declaration in other header files. | |||||
2021-10-15 | yuzu_cmd: Remove remaining static system instances | Morph | 1 | -3/+2 | |
2021-10-15 | core: Remove static system instance | Morph | 2 | -28/+5 | |
2021-10-15 | Hide mouse cursor by default | Romain Failliot | 1 | -1/+1 | |
2021-10-15 | main: Slightly refactor NCA entry installation in InstallNCA (#7181) | Creak | 1 | -8/+6 | |
* main: Slightly refactor NCA entry installation in InstallNCA Co-authored-by: Ameer J <52414509+ameerj@users.noreply.github.com> | |||||
2021-10-15 | main: Use std::unique_ptr for ui | Morph | 2 | -137/+142 | |
2021-10-15 | configuration: Use std::make_unique instead of operator new for ui | Morph | 13 | -14/+15 | |
2021-10-15 | config: Read network_interface | lat9nq | 2 | -0/+9 | |
Let's yuzu_cmd use a network interface. Also adds it to the default ini. | |||||
2021-10-15 | settings_ui: Better NVDEC Description For Each Video Rendering Option (#7165) | Moonlacer | 1 | -3/+3 | |
* better_description * Revert "better_description" This reverts commit 3a152a6ba6f2d6e02530b69a8194e4db302c8acd. * better_nvdec_wording * best_performance * update_word_stuff * another_update | |||||
2021-10-14 | string_util: Make use of std::string_view and add bounds checking | Morph | 2 | -5/+5 | |
Makes use of std::string_view in StringFromFixedZeroTerminatedBuffer and add bounds checking | |||||
2021-10-14 | string_util: Prevent out of bounds access in u16string_view buffer | Morph | 1 | -2/+2 | |
2021-10-13 | KPageTable: Perform ranged invalidation when unmapping code memory | Morph | 1 | -0/+2 | |
Co-Authored-By: Fernando S. <1731197+FernandoS27@users.noreply.github.com> | |||||
2021-10-12 | common/fs/path_util: Slightly refactor PathManagerImpl's constructor | Creak | 1 | -12/+15 | |
This moves all GenerateYuzuPath calls outside of the platofrm-specific #ifdefs, replacing them with assignments to paths. | |||||
2021-10-12 | Create local variables for mouse and wheel positions | Romain Failliot | 1 | -5/+9 | |
2021-10-12 | Fix a few warnings | Romain Failliot | 3 | -6/+5 | |
- configure_input_player_widget.cpp: always better to use `const auto &` whenever possible - profiler.cpp: `ev->pos()` is deprecated, replace with `ev->position()`, which returns floats, thus the addition of `.toPoint()` (same as what's happening in `pos()`) - game_list.cpp: `QString::SplitBehavior` is deprecate, use `Qt::` namespace instead | |||||
2021-10-11 | input_common/sdl: Fix joystick range | german77 | 1 | -3/+4 | |
2021-10-11 | main: Add option to reset window size to 900p | ameerj | 3 | -36/+53 | |
2021-10-11 | applets/web: Fallback to loader to get the manual romfs if none is found | Feng Chen | 1 | -0/+10 | |
2021-10-11 | vic: Use the minimum of surface/frame dimensions when writing the final frame to the GPU | ameerj | 1 | -16/+15 | |
Addresses possible buffer overflow behavior. | |||||
2021-10-10 | h264: Use max allowed max_num_ref_frames when using CPU decoding | Feng Chen | 1 | -1/+6 | |
2021-10-09 | vic: Allow surface to be higher than frame | Valeri | 1 | -2/+3 | |
Touhou Genso Wanderer Lotus Labyrinth R decodes 1920x1080 videos into 1920x1088 surface. Only allow mismatch for height, since larger width would result in increasingly offset rows and somewhat defeat entire purpose of this check. | |||||
2021-10-08 | Update configure_tas.ui | Levi Behunin | 1 | -8/+0 | |
Remove the geometry property again(7045) after 7090 re-added. | |||||
2021-10-08 | vic: Avoid memory corruption when multiple streams with different dimensions are decoded | ameerj | 1 | -0/+9 | |
This is a work around to avoid buffer overflow errors until multi channel/multi stream decoding is supported. | |||||
2021-10-07 | vic: Refactor frame writing methods | ameerj | 2 | -138/+146 | |
2021-10-07 | discord_impl: Remove global system instances | lat9nq | 3 | -6/+13 | |
2021-10-07 | game_list: Remove global instances of Core::System | lat9nq | 5 | -13/+19 | |
2021-10-07 | configuration: Add const qualifier where able | lat9nq | 18 | -31/+28 | |
2021-10-07 | yuzu qt: Remove global system instances from config, WaitTree, main | lat9nq | 69 | -636/+688 | |
2021-10-07 | kernel: hle_ipc: Foward declare KAutoObject | Morph | 2 | -1/+2 | |
2021-10-07 | service: Reduce header include overhead | Morph | 31 | -39/+11 | |
2021-10-07 | vic: Implement RGBX frame format | ameerj | 2 | -3/+15 | |
2021-10-04 | Vulkan: Fix failing barrier on refresh. | Fernando Sahmkow | 1 | -1/+2 | |
2021-10-04 | RasterizerInterface: Correct size of CPU addresses to cache. | FernandoS27 | 1 | -1/+1 | |
2021-10-04 | Vulkan: Fix the master Semaphore | FernandoS27 | 1 | -4/+12 | |
2021-10-03 | nvflinger: Use jthread and stop_token for VSync thread | ameerj | 2 | -32/+8 | |
Avoids a destruction data race that may occur on the vsync thread | |||||
2021-10-03 | nvhost_ctrl: Refactor usage of gpu.LockSync() | ameerj | 3 | -35/+16 | |
This seems to only be used to protect a later gpu function call. So we can move the lock into that call instead. | |||||
2021-10-03 | gpu: Migrate implementation to the cpp file | ameerj | 19 | -632/+875 | |
2021-10-02 | service: am: Make use of Exit to exit the currently running application | Morph | 1 | -2/+2 | |
This also moves the call to the end to ensure services are properly destructed on exit. | |||||
2021-10-02 | yuzu: main: Register a callback for Exit | Morph | 4 | -0/+17 | |
2021-10-02 | core: Add Exit and ExitCallback | Morph | 2 | -0/+25 | |
This allows ISelfController::Exit to stop the currently running application. This is typically used by homebrew to exit back to the homebrew menu after calling consoleExit with libnx. | |||||
2021-10-02 | service: Replace service event creation with ServiceContext::CreateEvent | Morph | 26 | -271/+367 | |
The service context helps to manage all created events and allows us to close them upon destruction. | |||||
2021-10-02 | network: Do not log IP address | Morph | 1 | -2/+0 | |
Logging this may be a privacy concern for some users. | |||||
2021-10-02 | common/logging: Reduce scope of fmt include | ameerj | 4 | -1/+5 | |
2021-10-02 | common/logging: Move Log::Entry declaration to a separate header | ameerj | 12 | -17/+48 | |
This reduces the load of requiring to include std::chrono in all files which include log.h | |||||
2021-10-01 | main: Don't add an extra separator when the title version is absent | lat9nq | 1 | -2/+7 | |
Some titles, such as homebrew, do not have any version string. Because yuzu hard codes the title bar string assuming a version string is preset, booting homebrew causes yuzu to add an extra separator with no content between. This uses a lambda expression to prevent that from happening. | |||||
2021-09-30 | prevent access violation from iob in Memory::IsValidVirtualAddress | Andrew Strelsky | 1 | -1/+5 | |
2021-09-29 | Fixed invalid iterator usage | Andrew Strelsky | 1 | -1/+1 | |
2021-09-29 | style: Remove extra space preceding the :: operator | Morph | 8 | -10/+10 | |
2021-09-29 | CMakeLists: Remove BoxCat build option | Morph | 1 | -4/+0 | |
2021-09-29 | settings: Remove BCAT settings | Morph | 5 | -17/+0 | |
2021-09-29 | configure_network: Remove BCAT | Morph | 3 | -208/+0 | |
2021-09-29 | service: bcat: Remove BoxCat BCAT implementation | Morph | 4 | -631/+0 | |
The current implementation of BoxCat as it stands is non-functional due to the reliance on a server providing BCAT files. This implementation will eventually be replaced with one that allows the use of local BCAT files dumped from a Nintendo Switch. | |||||
2021-09-29 | configure_tas: Remove help button from dialog window | Moonlacer | 1 | -0/+1 | |
2021-09-29 | configure_tas: Ensure dialog buttons always stay at the bottom | Moonlacer | 1 | -146/+187 | |
Previously, the dialog buttons would be floating in-place when the dialog is stretched downwards. This change ensures that the dialog buttons always stay at the bottom of the window. | |||||
2021-09-29 | externals: Remove libzip | Morph | 1 | -1/+1 | |
2021-09-29 | file_sys: Remove vfs_libzip | Morph | 3 | -103/+0 | |
2021-09-29 | Fix KShareMemory object leak | Feng Chen | 5 | -3/+106 | |
2021-09-28 | vk_graphics_pipeline: Force patch list topology when tessellation is used | ameerj | 1 | -1/+10 | |
Fixes a crash on some drivers when tessellation is used but the IA topology is not patch list. | |||||
2021-09-27 | service/es: Update to 13.0.0 | german77 | 1 | -0/+6 | |
2021-09-27 | service/npns: Update to 13.0.0 | german77 | 1 | -0/+1 | |
2021-09-27 | service/vi: Update to 13.0.0 | german77 | 2 | -0/+2 | |
2021-09-27 | service/am: Update to 13.0.0 | german77 | 1 | -0/+4 | |
2021-09-27 | service/audio: Update to 13.0.0 | german77 | 2 | -1/+10 | |
2021-09-27 | service/hid: Update to 13.0.0 | german77 | 2 | -0/+10 | |
2021-09-27 | service/btdrv: Update to 13.0.0 | german77 | 1 | -0/+4 | |
2021-09-27 | service/usb: Update to 13.0.0 | german77 | 1 | -3/+3 | |
2021-09-25 | Fix KScopedAutoObject object leak when SendSyncRequest | Feng Chen | 1 | -6/+8 | |
2021-09-25 | service: bsd: Stub Read | Morph | 1 | -6/+5 | |
- Used by Diablo II: Resurrected | |||||
2021-09-24 | service: bsd: Implement Read | Morph | 2 | -1/+15 | |
- Used by Diablo II: Resurrected | |||||
2021-09-24 | general: Update style to clang-format-12 | ameerj | 13 | -66/+62 | |
2021-09-24 | video_core: Fix jthread related hangs when stopping emulation | ameerj | 2 | -2/+2 | |
jthread on some compilers is more picky when it comes to the order in which objects are destroyed. | |||||
2021-09-24 | vk_texture_cache: Disable cube compatibility flag on non-mesa AMD GCN4 and earlier | ameerj | 3 | -11/+22 | |
Fixes rainbow textures on BOTW. | |||||
2021-09-24 | Vulkan Query Cache: make sure to wait for the query result. | Fernando Sahmkow | 1 | -1/+2 | |
2021-09-24 | QueryCache: Flush queries in order of running. | Fernando Sahmkow | 1 | -4/+4 | |
2021-09-23 | Use subdirectory of main data directory for QtWebEngine storage | v1993 | 1 | -0/+3 | |
Previously, an unrelated directory was used for this. Keep everything together for consistency. | |||||
2021-09-23 | Vulkan Rasterizer: Correct DepthBias/PolygonOffset on Vulkan. | Fernando Sahmkow | 6 | -3/+29 | |
2021-09-23 | core/profile_select: Avoid uninitialized read in SelectProfile() | Lioncash | 1 | -1/+2 | |
The default constructor of UUID doesn't initialize its data members, so we need to directly initialize it to be invalid. | |||||
2021-09-22 | common/uuid: Add validity checking functions to interface | Lioncash | 4 | -7/+14 | |
Given we have a function to invalidate, we should also have ones to query the validity. Also makes the code more straightforward to read. | |||||
2021-09-22 | Clean-up and nits | Levi Behunin | 1 | -121/+60 | |
Remove redundent label, rearange checkboxs to keep same 3 per column layout, remove unneeded properties. | |||||
2021-09-21 | Clean-up | Levi Behunin | 1 | -44/+14 | |
Numerize names, remove unneeded properties and spacer. | |||||
2021-09-20 | maxwell_dma: Minor refactoring | ameerj | 2 | -33/+33 | |
2021-09-20 | buffer_cache: Minor fixes | ameerj | 2 | -6/+4 | |
Loop through the tmp_intervals by reference, rather than by copy, and fix gl clear buffer size calculation. | |||||
2021-09-19 | Tas configure ui nits | Levi Behunin | 1 | -4/+4 | |
Text looked cramped on my pc (Ubuntu 21.04). Re-flowed text as well for nicer read. | |||||
2021-09-18 | UI: Relocate tas menu and add brief description | german77 | 10 | -68/+148 | |
2021-09-18 | input_common/tas: new update method | german77 | 5 | -17/+4 | |
2021-09-18 | input_common/tas: Document the main class | german77 | 8 | -51/+153 | |
2021-09-18 | input_common/tas: Add swap controller | german77 | 8 | -39/+99 | |
2021-09-18 | input_common/tas: overwrite file dialog | german77 | 3 | -20/+16 | |
2021-09-18 | input_common/tas: Fallback to simple update | MonsterDruide1 | 10 | -102/+60 | |
2021-09-18 | config: Move TAS options to it's own menu | german77 | 19 | -184/+452 | |
2021-09-18 | core: Hacky TAS syncing & load pausing | MonsterDruide1 | 9 | -107/+140 | |
To keep the TAS inputs synced to the game speed even through lag spikes and loading zones, deeper access is required. First, the `TAS::UpdateThread` has to be executed exactly once per frame. This is done by connecting it to the service method the game calls to pass parameters to the GPU: `Service::VI::QueueBuffer`. Second, the loading time of new subareas and/or kingdoms (SMO) can vary. To counteract that, the `CPU_BOOST_MODE` can be detected: In the `APM`-interface, the call to enabling/disabling the boost mode can be caught and forwarded to the TASing system, which can pause the script execution if neccessary and enabled in the settings. | |||||
2021-09-18 | main: TAS Playback state label | MonsterDruide1 | 2 | -0/+10 | |
During script playback/recording, the user has to see what happens currently. For that, a new label has been added to the bottom-left corner, always displaying the current state of the TASing system. | |||||
2021-09-18 | settings: File selector & other settings | MonsterDruide1 | 9 | -2/+104 | |
First of all, TASing requires a script to play back. The user can select the parent directory at `System -> Filesystem`, next to an option to pause TAS during loads: This requires a "hacky" setup deeper in the code and will be added in the last commit. Also, Hotkeys are being introduced: CTRL+F5 for playback start/stop, CTRL+F6 for re-reading the script and CTRL+F7 for recording a new script. | |||||
2021-09-18 | input_common/tas: Base playback & recording system | MonsterDruide1 | 14 | -9/+818 | |
The base playback system supports up to 8 controllers (specified by `PLAYER_NUMBER` in `tas_input.h`), which all change their inputs simulataneously when `TAS::UpdateThread` is called. The recording system uses the controller debugger to read the state of the first controller and forwards that data to the TASing system for recording. Currently, this process sadly is not frame-perfect and pixel-accurate. Co-authored-by: Naii-the-Baf <sfabian200@gmail.com> Co-authored-by: Narr-the-Reg <juangerman-13@hotmail.com> | |||||
2021-09-18 | If not on Windows, disable raw input | Valeri | 1 | -0/+4 | |
This way, if someone copies their Windows config to other OS, they won't be stuck without web applet for no apparent reason. | |||||
2021-09-18 | Hide XInput bypass on non-Windows OSes | Valeri | 1 | -0/+4 | |
Follow-up to #6950. This option is a no-op on other OSes and only serves to spread confusion there. | |||||
2021-09-17 | host_shaders: Remove opengl_copy_bgra.comp | ameerj | 4 | -19/+0 | |
2021-09-17 | gl_texture_cache: Migrate BGRCopyPass from util_shaders | ameerj | 4 | -42/+48 | |
The BGR copies no longer use shaders. | |||||
2021-09-16 | vulkan_device: Reorder Float16Int8 declaration | ameerj | 1 | -1/+2 | |
This variable was going out of scope before its usage in the vulkan device creation, causing a crash on very specific drivers. | |||||
2021-09-16 | Revert "Merge pull request #7006 from FernandoS27/a-motherfucking-driver" | ameerj | 1 | -13/+1 | |
This reverts commit 62e88d0e7455e37840db7e2a8e199bc6ca176966, reversing changes made to edf3da346f4ec0ca492b427f4f693d56e84abc52. | |||||
2021-09-16 | fix_clang_error | Moonlacer | 1 | -1/+0 | |
2021-09-16 | util_shaders: Unify BGRA copy passes | ameerj | 5 | -82/+36 | |
2021-09-16 | fix_accidental_deletion | Moonlacer | 1 | -1/+2 | |
2021-09-16 | remove-audio-stretching-setting | Moonlacer | 8 | -30/+1 | |
2021-09-16 | vk_scheduler: Use std::jthread | ameerj | 2 | -17/+9 | |
2021-09-16 | gpu: Use std::jthread for async gpu thread | ameerj | 5 | -69/+18 | |
2021-09-16 | threadsafe_queue: Add std::stop_token overload to PopWait | ameerj | 1 | -5/+22 | |
Useful for jthreads which make use of the threadsafe queues. | |||||
2021-09-15 | audin_u: Return a buffer event in RegisterBufferEvent | lat9nq | 2 | -2/+12 | |
Co-authored-by: Morph <39850852+Morph1984@users.noreply.github.com> | |||||
2021-09-15 | audin_u: stub Start, RegisterBufferEvent, AppendAudioInBufferAuto | lat9nq | 2 | -26/+57 | |
This also moves IAudioIn's definition to the header. Required for Splatoon 2 LAN play. | |||||
2021-09-15 | Build System: Build with JCC Erratum Mitigation | Fernando Sahmkow | 1 | -0/+5 | |
2021-09-15 | Spir-V: Rescale the frag depth to 0,1 mode when -1,1 mode is used in Vulkan. | Fernando Sahmkow | 1 | -1/+7 | |
2021-09-15 | ngct: Stub Match | Narr the Reg | 1 | -1/+14 | |
Needed for Cruis'n Blast | |||||
2021-09-14 | renderers: Log total pipeline count | Morph | 2 | -0/+4 | |
2021-09-14 | vfs: Partially implement GetFileTimeStampRaw | Morph | 8 | -1/+83 | |
Gets rid of homebrew warnings using this func | |||||
2021-09-14 | core: Destroy main_process during shutdown | ameerj | 1 | -3/+12 | |
The main_process was never being cleaned up, causing a noticeable memory leak after subsequent launches. This change cleans up the memory during Core Shutdown, mitigating the leak. | |||||
2021-09-14 | vulkan_debug_callback: Ignore InvalidCommandBuffer-VkDescriptorSet errors | ameerj | 1 | -0/+1 | |
This validation error is spammed on some titles, asserting that VkDescriptorSet 0x0[] was destroyed. This is likely a validation layer bug when using VK_KHR_push_descriptor, which can avoid using traditional VkDescriptorSet. It should be safe to ignore for now. | |||||
2021-09-13 | Vulkan: Disable VK_EXT_SAMPLER_FILTER_MINMAX in GCN AMD since it's broken. | Fernando Sahmkow | 1 | -6/+20 | |
2021-09-13 | Vulkan: Blacklist Int8Float16 Extension on AMD on driver 21.9.1 | Fernando Sahmkow | 1 | -1/+13 | |
2021-09-13 | Vulkan/Descriptors: Increase sets per pool on AMFD propietary driver. | Fernando Sahmkow | 3 | -3/+14 | |
2021-09-13 | common_funcs: Add enum flag bitwise shift operator overloads | Morph | 1 | -0/+16 | |
This adds bitwise shift operator overloads (<<, >>, <<=, >>=) in the macro DECLARE_ENUM_FLAG_OPERATORS(type) | |||||
2021-09-13 | vk_swapchain: Use immediate present mode when mailbox is unavailable and FPS is unlocked | ameerj | 3 | -4/+38 | |
Allows drivers that do not support VK_PRESENT_MODE_MAILBOX_KHR the ability to present at a framerate higher than the monitor's refresh rate when the FPS is unlocked. | |||||
2021-09-12 | vk_rasterizer: Fix dynamic StencilOp updating when two faces are enabled | ameerj | 1 | -6/+8 | |
This function was incorrectly using the stencil_two_side_enable register when dynamically updating the StencilOp. | |||||
2021-09-12 | vk_state_tracker: Remove unused function | ameerj | 1 | -4/+0 | |
2021-09-12 | FS: Mark recursive CreateDirectory as inaccurate and temporary | Morph | 1 | -0/+5 | |
2021-09-12 | main: Apply confirm exit setting in exit locked scenarios | ameerj | 1 | -11/+9 | |
Some titles set an exit lock through HLE, which prompts an exit confirmation when stopping emulation if the system is locked. This change allows bypassing this confirmation if the setting to confirm exits has been disabled by the user. | |||||
2021-09-11 | shader_environment: Add missing <algorithm> include | Morph | 1 | -0/+1 | |
2021-09-11 | vk_descriptor_pool: Add missing <algorithm> include | Morph | 1 | -0/+1 | |
2021-09-11 | slot_vector: Add missing <algorithm> include | Morph | 1 | -0/+1 | |
2021-09-11 | video_core/memory_manager: Add missing <algorithm> include | Morph | 1 | -0/+2 | |
2021-09-11 | kernel: Add missing <functional> include | Morph | 1 | -0/+1 | |
2021-09-11 | file_sys/kernel_executable: Add missing <string> include | Morph | 1 | -0/+1 | |
2021-09-11 | codec: Add missing <string_view> include | Morph | 1 | -0/+1 | |
2021-09-11 | common_funcs: Replace <algorithm> with <iterator> | Morph | 1 | -1/+1 | |
2021-09-11 | common: Move error handling to error.cpp/h | Morph | 6 | -18/+34 | |
This allows us to avoid implicitly including <string> every time common_funcs.h is included. | |||||
2021-09-10 | am: Implement GetNotificationStorageChannelEvent | german77 | 2 | -2/+16 | |
2021-09-10 | hid: Stub SetTouchScreenConfiguration | german77 | 3 | -1/+28 | |
2021-09-10 | input_common: Enable steam controllers and 8 player support | german77 | 8 | -11/+35 | |
2021-09-10 | api_version: Update and add AtmosphereTargetFirmware | Morph | 1 | -5/+12 | |
2021-09-08 | Addressed issues | Chloe | 1 | -1/+1 | |
Co-authored-by: Mai M. <mathew1800@gmail.com> | |||||
2021-09-08 | Mark is_complete as atomic | Chloe Marcec | 2 | -4/+5 | |
2021-09-08 | Addressed issues | Chloe Marcec | 3 | -15/+14 | |
2021-09-08 | Detail adjustment | Feng Chen | 1 | -13/+14 | |
2021-09-08 | Detail adjustment | Feng Chen | 2 | -28/+35 | |
2021-09-07 | Re-implement get unused location | Feng Chen | 1 | -30/+30 | |
2021-09-07 | Move attribute related definitions to spirv anonymous namespace | Feng Chen | 4 | -30/+26 | |
2021-09-07 | input_common: Add alternative string for joycons | german77 | 1 | -2/+16 | |
2021-09-07 | nvflinger: Use external surface format for framebuffer creation | ameerj | 3 | -7/+8 | |
The format member the IGBPBuffer may not always specify the correct desired format. Using the external format member ensures a valid format is provided when creating the framebuffer. Fixes homebrew using the wrong framebuffer format. | |||||
2021-09-07 | Fix blend equation enum error | Feng Chen | 1 | -4/+4 | |
2021-09-06 | Second part of Golden's PR | Moonlacer | 2 | -3/+3 | |
2021-09-06 | Rename all shader cache references to pipeline cache | Matías Locatti | 1 | -4/+4 | |
After Hades, both OpenGL and Vulkan use a pipeline cache instead of single stages of the graphics pipeline. Renamed the Remove menu entries to match. | |||||
2021-09-06 | address name shadowing with system | Chloe Marcec | 1 | -2/+2 | |
2021-09-06 | account: EnsureTokenIdCacheAsync | Chloe Marcec | 4 | -19/+154 | |
Closes #2547, #6946 | |||||
2021-09-06 | FS: Recursively create directories for CreateDirectory | Chloe Marcec | 1 | -8/+13 | |
Originally we only created the parent directory, this caused issues for creating directories which also contained subdirectories, eg `/Folder1/Folder2` This allows the ultimate mod manager homebrew to at least boot | |||||
2021-09-06 | Dynamic get unused location | Feng Chen | 1 | -27/+49 | |
2021-09-06 | Implement intput and output fixed fnc textures | Feng Chen | 4 | -19/+25 | |
2021-09-05 | core: hle: service: buffer_queue: Improve management of KEvent. | bunnei | 3 | -14/+24 | |
2021-09-04 | core: hle: service: nvflinger/vi: Improve management of KEvent. | bunnei | 4 | -16/+30 | |
2021-09-04 | core: cpu_manager: Use jthread. | bunnei | 2 | -18/+13 | |
2021-09-03 | Rename parameters | Feng Chen | 5 | -14/+24 | |
2021-09-03 | Fix create GraphicsPipelines crash | Feng Chen | 1 | -5/+5 | |
2021-09-02 | renderer_vulkan: Wait on present semaphore at queue submit | ameerj | 5 | -26/+33 | |
The present semaphore is being signalled by the call to acquire the swapchain image. This semaphore is meant to be waited on when rendering to the swapchain image. Currently it is waited on when presenting, but moving its usage to be waited on in the command buffer submission allows for proper usage of this semaphore. Fixes the device lost when launching titles on the Intel Linux Mesa driver. | |||||
2021-09-02 | Add input/output location | Feng Chen | 1 | -5/+13 | |
2021-09-02 | common/logging: Add missing include | german77 | 1 | -0/+1 | |
2021-08-31 | emit_glsl_warp: Fix shuffle ops for 64-thread warp sizes | ameerj | 1 | -24/+36 | |
2021-08-31 | emit_glsl_warp: Fix ballot related ops for 64-thread warp sizes | ameerj | 1 | -24/+38 | |
2021-08-31 | emit_spirv_warp: Fix shuffle ops for 64-thread warp sizes | ameerj | 1 | -1/+29 | |
2021-08-31 | emit_spirv_warp: Fix ballot related ops for 64-thread warp sizes | ameerj | 1 | -10/+11 | |
2021-08-31 | Add colorfront and txtcoord support | Feng Chen | 5 | -0/+57 | |
2021-08-30 | structured_control_flow: Skip reordering nested demote branches. | ameerj | 1 | -0/+11 | |
Nested demote branches add complexity with combining the condition if it has not been initialized yet. Skip them for the time being. | |||||
2021-08-30 | structured_control_flow: Conditionally invoke demote reorder pass | ameerj | 7 | -10/+23 | |
This is only needed on select drivers when a fragment shader discards/demotes. | |||||
2021-08-29 | Garbage Collection: Make it more agressive on high priority mode. | Fernando Sahmkow | 3 | -5/+5 | |
2021-08-29 | Garbage Collection: Adress Feedback. | Fernando Sahmkow | 4 | -17/+23 | |
2021-08-29 | vulkan_device: Enable VK_KHR_swapchain_mutable_format if available | ameerj | 3 | -0/+27 | |
Silences validation errors when creating sRGB image views of linear swapchain images | |||||
2021-08-29 | vk_swapchain: Prefer linear swapchain format when presenting sRGB images | ameerj | 3 | -11/+10 | |
Fixes broken sRGB when presenting from a secondary GPU. | |||||
2021-08-28 | Garbage Collection: enable as default, eliminate option. | Fernando Sahmkow | 9 | -26/+2 | |
2021-08-28 | VideoCore: Rework Garbage Collection. | Fernando Sahmkow | 6 | -101/+213 | |
2021-08-28 | structured_control_flow: Add DemoteCombinationPass | ameerj | 1 | -1/+107 | |
Some drivers misread data when demotes are interleaved in the program. This moves demote branches to be checked at the end of the program. Fixes "wireframe" issue in Pokemon SwSh on some drivers | |||||
2021-08-27 | ngct: Stub NGCT:U service | german77 | 6 | -0/+72 | |
2021-08-27 | Revert "logging: Display backtrace on crash" | Morph | 2 | -114/+1 | |
2021-08-27 | service: nifm: Populate fields in GetCurrentNetworkProfile | Morph | 1 | -29/+37 | |
Populates the current_address, subnet_mask, and gateway fields from the selected network interface. | |||||
2021-08-27 | service: nifm: Cleanup GetCurrentIpConfigInfo | Morph | 1 | -26/+21 | |
2021-08-27 | network_interface: Cleanup code | Morph | 1 | -76/+83 | |
2021-08-27 | network_interface: Replace default return value with std::nullopt | Morph | 1 | -6/+6 | |
2021-08-27 | emit_spirv_context_get_set: Fix Get FrontFace return value | ameerj | 1 | -2/+3 | |
The IR expects GetAttribute to return an F32 value. This case was returning a U32 instead. | |||||
2021-08-26 | Revert "kernel: Various improvements to scheduler" | bunnei | 23 | -224/+140 | |
2021-08-26 | vp9_types: Minor refactor of VP9 info structs. | ameerj | 1 | -32/+29 | |
2021-08-26 | vp9_types: Remove unused Vp9PictureInfo members | ameerj | 2 | -24/+1 | |
2021-08-25 | vulkan_device: Add a check for int8 support | ameerj | 3 | -9/+19 | |
Silences validation errors when shaders use int8 without specifying its support to the API | |||||
2021-08-24 | logging: Fix log filter during initialization | ameerj | 4 | -12/+16 | |
The log filter was being ignored on initialization due to the logging instance being initialized before the config instance, so the log filter was set to its default value. This fixes that oversight, along with using descriptive exceptions instead of abort() calls. | |||||
2021-08-22 | CMakeLists: Ensure proper numerusform tags are generated for pluralized translations | Lioncash | 1 | -1/+8 | |
If we don't set an explicit source and target language for the base english translation, then we'll generate an incorrect number of <numerusform> tags (which Transifex doesn't like). | |||||
2021-08-21 | settings: Amend language_index maximum setting range | Morph | 1 | -1/+1 | |
The maximum is now 17 with the addition of Brazilian Portuguese | |||||
2021-08-21 | vk_rasterizer: Only clear depth and stencil buffers when set in attachment aspect mask | ameerj | 3 | -6/+24 | |
Silences validation errors for clearing the depth/stencil buffers of framebuffer attachments that were not specified to have depth/stencil usage. | |||||
2021-08-19 | GPU_MemoryManger: Fix GetSubmappedRange. | Fernando Sahmkow | 1 | -0/+1 | |
2021-08-19 | Replace QPoint with QPointF where applicable | Valeri | 1 | -16/+18 | |
Previously, floats were implicitly cast to integers | |||||
2021-08-19 | qt_software_keyboard: fix copy-paste error | Valeri | 1 | -1/+1 | |
2021-08-19 | video_core: eliminate constant ternary | Valeri | 1 | -1/+1 | |
`via_header_index` is already checked above, so it would never be true in this branch | |||||
2021-08-19 | applet_error: Fix 64-bit error code conversion | Morph | 1 | -6/+25 | |
2021-08-19 | SPIR-V: Merge two ifs in EmitGetAttribute | Valeri | 1 | -6/+2 | |
2021-08-19 | Fix crash in logging in CreateStrayLayer | Valeri | 1 | -1/+1 | |
It was trying to log value of layer_id which is specifically known not to exist, potentially leading to segfault. Log display_id instead. | |||||
2021-08-19 | Fix check is thread current in GetThreadContext | Valeri | 1 | -1/+1 | |
Misplaced break made it only check for the first core. | |||||
2021-08-16 | h264: Lower max_num_ref_frames | ameerj | 1 | -1/+2 | |
GPU decoding seems to be more picky when it comes to the maximum number of reference frames. | |||||
2021-08-16 | configure_graphics: Add GPU nvdec decoding as an option | ameerj | 12 | -27/+120 | |
Some system configurations may see visual regressions or lower performance using GPU decoding compared to CPU decoding. This setting provides the option for users to specify their decoding preference. Co-Authored-By: yzct12345 <87620833+yzct12345@users.noreply.github.com> | |||||
2021-08-16 | codec: Improve libav memory alloc and cleanup | ameerj | 2 | -14/+19 | |
2021-08-16 | codec: Fallback to CPU decoding if no compatible GPU format is found | ameerj | 2 | -22/+32 | |
2021-08-16 | cmake: Add VDPAU and NVDEC support to FFmpeg | lat9nq | 1 | -0/+1 | |
Adds {h264_,vp9_}{nvdec,vdpau} hwaccels. | |||||
2021-08-16 | vk_blit_screen: Fix non-accelerated texture size calculation | ameerj | 2 | -9/+3 | |
Addresses the potential OOB access in UnswizzleTexture. | |||||
2021-08-16 | kernel: Optimize GetHostThreadID | BreadFish64 | 1 | -10/+13 | |
2021-08-16 | network_interface: correct formatting | Sönke Holz | 1 | -1/+1 | |
2021-08-16 | network_interface: fix mingw-w64 build | spholz | 1 | -1/+1 | |
2021-08-16 | network: retrieve subnet mask and gateway info | Sönke Holz | 5 | -24/+137 | |
2021-08-15 | xbyak: Update include path | Merry | 3 | -3/+3 | |
2021-08-14 | core: hle: kernel: Disable dispatch count tracking on single core. | bunnei | 3 | -5/+12 | |
- This would have limited value, and would be a mess to handle properly. | |||||
2021-08-13 | threadsafe_queue: Fix deadlock | yzct12345 | 1 | -6/+4 | |
This fixes a lost wakeup in SPSCQueue. If the reader is in just the right position, the writer's notification will be lost and this will be a problem if the writer then does something to wait on the reader. This was discovered to affect my upcoming stacktrace PR. I don't think any performance decrease will be noticeable because an uncontended mutex is smart enough to skip the syscall. This PR might also resolve some rare deadlocks but I don't know of any examples. | |||||
2021-08-13 | logging: Display backtrace on crash | yzct12345 | 2 | -1/+114 | |
This implements backtraces so we don't have to tell users how to use gdb anymore. This prints a backtrace after abort or segfault is detected. It also fixes the log getting cut off with the last line containing only a bracket. This change lets us know what caused a crash not just what happened the few seconds before it. I only know how to add support for Linux with GCC. Also this doesn't work outside of C/C++ such as in dynarmic or certain parts of graphics drivers. The good thing is that it'll try and just crash again but the stack frames are still there so the core dump will work just like before. | |||||
2021-08-13 | logging: Simplify and make thread-safe | yzct12345 | 8 | -292/+243 | |
This simplifies the logging system. This also fixes some lost messages on startup. The simplification is simple. I removed unused functions and moved most things in the .h to the .cpp. I replaced the unnecessary linked list with its contents laid out as three member variables. Anything that went through the linked list now directly accesses the backends. Generic functions are replaced with those for each specific use case and there aren't many. This change increases coupling but we gain back more KISS and encapsulation. With those changes it was easy to make it thread-safe. I just removed the mutex and turned a boolean atomic. I was planning to use this thread-safety in my next PR about stacktraces. It was actually async-signal-safety at first but I ended up using a different approach. Anyway getting rid of the linked list is important for that because have the list of backends constantly changing complicates things. | |||||
2021-08-13 | configuration: fix mingw-w64 build | Sönke Holz | 1 | -2/+2 | |
2021-08-13 | network: don't use reinterpret_cast in GetAvailableNetworkInterfaces | spholz | 1 | -7/+4 | |
2021-08-13 | network: fix mingw-w64 build | Sönke Holz | 1 | -4/+4 | |
The header "combaseapi.h" of mingw-w64 defines "interface" as "struct". | |||||
2021-08-13 | network: don't use assert to check if no network interfaces are returned | Sönke Holz | 1 | -2/+4 | |
2021-08-13 | configuration: move network_interface include to source file | Sönke Holz | 2 | -2/+1 | |
2021-08-13 | network: use Common::BitCast instead of std::bit_cast | Sönke Holz | 1 | -2/+3 | |
2021-08-13 | network: narrow down scope of "result" in win32 code for | Sönke Holz | 1 | -4/+5 | |
GetAvailableNetworkInterfaces | |||||
2021-08-13 | configuration: use tr instead of QStringLiteral for "None" item in | Sönke Holz | 1 | -1/+1 | |
network interface combobox | |||||
2021-08-13 | network: use explicit bool conversions in GetAvailableNetworkInterfaces | Sönke Holz | 1 | -1/+1 | |
2021-08-13 | network: initialize ip_addr in GetHostIPv4Address() | Sönke Holz | 1 | -1/+1 | |
2021-08-13 | nifm: use operator*() instead of .value() to get value of std::optional | Sönke Holz | 1 | -2/+2 | |
2021-08-13 | nifm: treat a missing host IP address as a non-critical error | Sönke Holz | 1 | -2/+2 | |
2021-08-12 | network: correct formatting in network.cpp and network_interface.cpp | Sönke Holz | 2 | -8/+6 | |
2021-08-12 | configuration: add option to select network interface | spholz | 15 | -90/+278 | |
This commit renames the "Services" tab to "Network" and adds a combobox that allows the user to select the network interface that yuzu should use. This new setting is now used to get the local IP address in Network::GetHostIPv4Address. This prevents yuzu from selecting the wrong network interface and thus using the wrong IP address. The return type of Network::GetHostIPv4Adress has also been changed. | |||||
2021-08-12 | input_common: Disable sdl raw input mode | german77 | 1 | -0/+3 | |
2021-08-12 | codec: Replace deprecated av_init_packet usage | ameerj | 1 | -9/+13 | |
2021-08-12 | nvdec: Implement GPU accelerated decoding for all platforms | ameerj | 2 | -70/+92 | |
Supplements the VAAPI intel gpu decoder by implementing the D3D11VA decoder for Windows, and CUVID/VDPAU for Nvidia and AMD on drivers linux respectively. | |||||
2021-08-12 | decoders: Templates allow memcpy optimizations | yzct12345 | 1 | -57/+116 | |
2021-08-11 | settings: Fix MSVC issues | lat9nq | 1 | -7/+22 | |
According to https://stackoverflow.com/questions/469508, we run into a MSVC bug (since VS 2005) when using diamond inheritance for RangedSetting. This explicitly implements those functions in RangedSetting. GetValue is implemented as just calling the inherited version. The explicit converson operator is reimplemented. I opted for this over ignoring the warning with a pragma since this specifies the inherited behavior, and I have now less faith in MSVC to pick the right one. In addition, we mark destructors as virtual to silence what I believe is a fair MSVC compilation error. | |||||
2021-08-10 | vic: Specify sws_scale height stride. | ameerj | 1 | -3/+2 | |
Silences a sws_scale runtime warning about unaligned strides. | |||||
2021-08-08 | yuzu-cmd/CMakeLists: Correct attribution for this function. | Fernando Sahmkow | 2 | -0/+2 | |
2021-08-08 | vp9: Ensure the first frame is complete | ameerj | 2 | -3/+3 | |
Silences a runtime error due to the first frame missing the frame data, and being set to hidden despite being a key-frame. | |||||
2021-08-08 | texture_cache: Address ameerj's review | yzct12345 | 3 | -7/+4 | |
2021-08-08 | configure_general: Swap positions of speed limit and frame limit options | ameerj | 1 | -30/+30 | |
2021-08-08 | input_common: Improve SDL joystick and hide toggle option | german77 | 4 | -33/+76 | |
2021-08-07 | input_common: Fix data race on GC implementation | Rodrigo Locatti | 2 | -115/+120 | |
2021-08-07 | main: Avoid stopping emulation when taking a screenshot | german77 | 1 | -5/+2 | |
2021-08-07 | core: hle: kernel: k_thread: Mark KScopedDisableDispatch as nodiscard. | bunnei | 1 | -1/+1 | |
2021-08-07 | core: cpu_manager: Use invalid core_id on init and simplify shutdown. | bunnei | 1 | -7/+3 | |
2021-08-07 | core: hle: service: buffer_queue: Improve management of KEvent. | bunnei | 3 | -14/+24 | |
2021-08-07 | core: hle: kernel: k_auto_object: Add GetName method. | bunnei | 1 | -0/+4 | |
- Useful purely for debugging. | |||||
2021-08-07 | core: hle: service: nvflinger/vi: Improve management of KEvent. | bunnei | 4 | -16/+30 | |
2021-08-07 | core: hle: kernel: DisableDispatch on suspend threads. | bunnei | 1 | -0/+3 | |
2021-08-07 | core: hle: kernel: k_scheduler: Improve DisableScheduling and EnableScheduling. | bunnei | 1 | -14/+9 | |
2021-08-07 | core: cpu_manager: Use KScopedDisableDispatch. | bunnei | 1 | -7/+8 | |
2021-08-07 | core: hle: kernel: Use CurrentPhysicalCoreIndex as appropriate. | bunnei | 1 | -6/+2 | |
2021-08-07 | core: hle: kernel: k_scheduler: Remove unnecessary MakeCurrentProcess. | bunnei | 1 | -5/+0 | |
2021-08-07 | core: hle: kernel: k_scheduler: Improve ScheduleImpl. | bunnei | 1 | -6/+7 | |
2021-08-07 | core: hle: kernel: k_scheduler: Improve Unload. | bunnei | 1 | -17/+29 | |
2021-08-07 | core: hle: kernel: k_process: DisableDispatch on main thread. | bunnei | 1 | -0/+1 | |
2021-08-07 | core: hle: kernel: k_handle_table: Use KScopedDisableDispatch as necessary. | bunnei | 2 | -0/+8 | |
2021-08-07 | core: hle: kernel: k_thread: Add KScopedDisableDispatch. | bunnei | 2 | -1/+47 | |
2021-08-07 | core: hle: kernel: Ensure idle threads are closed before destroying scheduler. | bunnei | 3 | -24/+22 | |
2021-08-07 | core: hle: kernel: Reflect non-emulated threads as core 3. | bunnei | 7 | -13/+15 | |
2021-08-07 | core: cpu_manager: Use jthread. | bunnei | 2 | -18/+13 | |
2021-08-07 | vulkan_memory_allocator: Respect bufferImageGranularity | Robin Kertels | 2 | -2/+8 | |
2021-08-07 | nvdec: Better logging for unimplemented codecs | ameerj | 1 | -1/+1 | |
2021-08-07 | memory: Address lioncash's review | yzct12345 | 1 | -52/+6 | |
2021-08-07 | memory: Dedup Read and Write and fix logging bugs | yzct12345 | 1 | -129/+115 | |
2021-08-07 | texture_cache: Address ameerj's review | yzct12345 | 4 | -10/+5 | |
2021-08-07 | network: GetAndLogLastError: ignore Errno::AGAIN | Sönke Holz | 1 | -1/+5 | |
If non-blocking sockets are used, they generate a lot of Errno::AGAIN errors when they didn't receive any data. These errors shouldn't be logged. | |||||
2021-08-07 | network: GetCurrentIpConfigInfo: return host IP address | Sönke Holz | 1 | -1/+4 | |
Service::NIFM::IGeneralService::GetCurrentIpConfigInfo currently hardcodes 192.168.1.100 as the IP address, which prevents LAN play from working correctly. | |||||
2021-08-07 | nvhost_nvdec_common: Remove BufferMap | ameerj | 2 | -76/+0 | |
This was mainly used to keep track of mapped buffers for later unmapping. Since unmap is no longer implemented, this no longer seves a valuable purpose. | |||||
2021-08-07 | vp9: Cleanup unused variables | ameerj | 3 | -58/+17 | |
With reference frames refreshes fix, we no longer need to buffer two frames in advance. We can also remove other unused or otherwise unneeded variables. | |||||
2021-08-07 | vp9: Fix reference frame refreshes | ameerj | 2 | -48/+31 | |
This resolves the artifacting when decoding VP9 streams. | |||||
2021-08-07 | nvhost_nvdec_common: Stub UnmapBuffer Ioctl | ameerj | 1 | -23/+4 | |
Skip unmapping nvdec buffers to avoid breaking the continuity of the VP9 reference frame addresses, and the risk of invalidating data before the async GPU thread is done with it. | |||||
2021-08-06 | network: fix fcntl cmds | Sönke Holz | 1 | -2/+2 | |
F_SETFL/F_GETFL are the correct commands to set a socket to be non-blocking | |||||
2021-08-06 | common: uuid: Add hash function for UUID | Morph | 1 | -0/+11 | |
Used when UUID is a key in an unordered_map. The hash is produced by XORing the high and low 64-bits of the UUID together. | |||||
2021-08-05 | memory: Clean up CopyBlock too | yzct12345 | 1 | -36/+15 | |
2021-08-05 | Update configure_graphics_advanced.ui | gidoly | 1 | -2/+5 | |
add description too fast gpu time | |||||
2021-08-05 | texture_cache: Don't change copyright year | yzct12345 | 4 | -4/+4 | |
2021-08-05 | texture_cache: Address ameerj's review | yzct12345 | 12 | -1821/+1821 | |
2021-08-05 | memory: Address lioncash's review | yzct12345 | 2 | -7/+8 | |
2021-08-05 | memory: Clean up code | yzct12345 | 2 | -329/+81 | |
2021-08-05 | assert: Verify formatting | yzct12345 | 1 | -2/+6 | |
2021-08-05 | assert: Avoid empty macros | yzct12345 | 1 | -2/+2 | |
2021-08-05 | texture_cache: Split templates out | yzct12345 | 7 | -1532/+1533 | |
2021-08-05 | applet_swkbd: Include the null terminator in the buffer size calculation | Morph | 1 | -2/+4 | |
Some games may interpret the read string as a null-terminated string instead of just reading the string up to buffer_size. | |||||
2021-08-05 | hex_util: Fix incorrect array size in AsArray | Morph | 1 | -1/+1 | |
Although this isn't used, this is a potential bug as HexStringToArray will perform an out-of-bounds read. | |||||
2021-08-04 | config: Read connected setting for controllers | lat9nq | 1 | -0/+3 | |
Currently yuzu will read the mapping but does not connect a controller despite adding subsequent configurations for it. Read the `connected` setting for now as a boolean like the Qt frontend. | |||||
2021-08-04 | settings_ui: Add emulated joystick position dot to controller preview | german77 | 2 | -21/+46 | |
2021-08-04 | common: uuid: Add hex string to UUID constructor | Morph | 2 | -0/+73 | |
This allows for easily converting a hex string into a Common::UUID, which is backed by a 128 bit unsigned integer. | |||||
2021-08-04 | nvdec: Implement VA-API hardware video acceleration (#6713) | yzct12345 | 5 | -72/+175 | |
* nvdec: VA-API * Verify formatting * Forgot a semicolon for Windows * Clarify comment about AV_PIX_FMT_NV12 * Fix assert log spam from missing negation * vic: Remove forgotten debug code * Address lioncash's review * Mention VA-API is Intel/AMD * Address v1993's review * Hopefully fix CMakeLists style this time * vic: Improve cache locality * vic: Fix off-by-one error * codec: Async * codec: Forgot the GetValue() * nvdec: Address ameerj's review * codec: Fallback to CPU without VA-API support * cmake: Address lat9nq's review * cmake: Make VA-API optional * vaapi: Multiple GPU * Apply suggestions from code review Co-authored-by: Ameer J <52414509+ameerj@users.noreply.github.com> * nvdec: Address ameerj's review * codec: Use anonymous instead of static * nvdec: Remove enum and fix memory leak * nvdec: Address ameerj's review * codec: Remove preparation for threading Co-authored-by: Ameer J <52414509+ameerj@users.noreply.github.com> | |||||
2021-08-03 | config: Only read/write current_user on global config | lat9nq | 1 | -5/+6 | |
2021-08-02 | network: fix ternary operator in Socket::SendTo | spholz | 1 | -1/+1 | |
2021-08-02 | decoders: Optimize swizzle copy performance (#6790) | yzct12345 | 1 | -9/+43 | |
This makes UnswizzleTexture up to two times faster. It is the main bottleneck in NVDEC video decoding. | |||||
2021-08-01 | yuzu-cmd: hide cursor when in fullscreen | san | 4 | -0/+9 | |
Exposed the SDL_ShowCursor function to EmuWindow baseclass. When creating the window (GL or VK) in fullscreen it now automatically hides the cursor. | |||||
2021-08-01 | game_list: Make game list folder icons smaller (#6762) | Malte Jürgens | 6 | -28/+70 | |
Makes the default game list folder icons 48x48 by default instead of 64x64, and allows for selecting small (24x24) and large (72x72) icon sizes. | |||||
2021-08-01 | service: set: Correct copy amount in GetAvailableLanguageCodes | Morph | 1 | -1/+2 | |
2021-08-01 | astc_decoder: Reduce workgroup size | ameerj | 3 | -5/+5 | |
This reduces the amount of over dispatching when there are odd dimensions (i.e. ASTC 8x5), which rarely evenly divide into 32x32. | |||||
2021-08-01 | astc_decoder: Compute offset swizzles in-shader | ameerj | 4 | -109/+25 | |
Alleviates the dependency on the swizzle table and a uniform which is constant for all ASTC texture sizes. | |||||
2021-08-01 | astc_decoder: Make use of uvec4 for payload data | ameerj | 1 | -79/+43 | |
2021-08-01 | astc_decoder: Simplify Select2DPartition | ameerj | 1 | -38/+19 | |
2021-08-01 | astc_decoder: Optimize the use EncodingData | ameerj | 6 | -138/+108 | |
This buffer was a list of EncodingData structures sorted by their bit length, with some duplication from the cpu decoder implementation. We can take advantage of its sorted property to optimize its usage in the shader. Thanks to wwylele for the optimization idea. | |||||
2021-08-01 | astc.h: Move data to cpp implementation | ameerj | 2 | -64/+63 | |
Moves leftover values that are no longer used by the gpu decoder back to the cpp implementation. | |||||
2021-07-31 | settings: Use std::clamp where possible | lat9nq | 1 | -39/+9 | |
Addresses PR review Co-authored-by: PixelyIon <pixelyion@protonmail.com> | |||||
2021-07-31 | hle: api_version: Update HOS version to 12.1.0 | Morph | 1 | -7/+7 | |
Keeps us up to date with reporting the system version. | |||||
2021-07-31 | settings: Remove unnecessary std::move usages | lat9nq | 1 | -12/+12 | |
Addresses review feedback. Co-authored-by: Mai M. <mathew1800@gmail.com> | |||||
2021-07-30 | settings: Fix function virtualization | lat9nq | 1 | -12/+18 | |
Fixes a theoretical scenario where a Setting is using the BasicSetting's GetValue function. In practice this probably only happens on yuzu-cmd, where there is no need for a Setting's additional features. Need to fix regardless. | |||||
2021-07-30 | settings: Implement setting ranges | lat9nq | 1 | -18/+152 | |
Clamps the setting's values against the specified minimum and maximum values. | |||||
2021-07-30 | emu_window: Remove global system instance | lat9nq | 7 | -12/+23 | |
It was just the one in emu_window_sdl2, but since _gl and _vk inherit from it, they all needed adjustments. Leaves just the one auto system& in main(). | |||||
2021-07-30 | applet_swkbd: Correct string buffer size calculation | Morph | 1 | -2/+2 | |
The buffer size here does not include the initial 8 bytes. | |||||
2021-07-30 | configure_system: Add Brazilian Portuguese to the list of languages | Morph | 2 | -1/+6 | |
2021-07-30 | service: set: Correct 4.0.0 max_entries to 0x40 (64) instead of 17 | Morph | 1 | -8/+8 | |
2021-07-30 | service: ns, set: Add PT_BR (Brazilian Portuguese) | Morph | 3 | -2/+6 | |
2021-07-30 | shader: Fold UnpackFloat2x16 and PackFloat2x16 | ReinUsesLisp | 1 | -0/+4 | |
Simplifies the code a bit when possible. These instructions should be no-ops codegen wise. | |||||
2021-07-29 | vk_rasterizer: Flip viewport on Y_NEGATE | ReinUsesLisp | 1 | -2/+7 | |
Matches OpenGL's behavior. I don't believe this register flips geometry, but we have to try to match behavior on both backends. | |||||
2021-07-29 | renderers: Add explicit invert_y bool to screenshot callback | ameerj | 5 | -7/+7 | |
OpenGL and Vulkan images render in different coordinate systems. This allows us to specify the coordinate system of the screenshot within each renderer | |||||
2021-07-29 | renderer_vulkan: Implement screenshots | ameerj | 2 | -0/+152 | |
2021-07-29 | vk_blit_screen: Add public CreateFramebuffer method | ameerj | 2 | -14/+18 | |
2021-07-29 | vk_blit_screen: Make Draw method more generic | ameerj | 3 | -55/+71 | |
Allows specifying the framebuffer and render area dimensions, rather than being hard coded for the render window. | |||||
2021-07-28 | shader: Mark ConvertF16F32 and ConvertF32F16 as fp16 instructions | ReinUsesLisp | 1 | -0/+2 | |
Fixes instances where fp16 types are not declared on SPIR-V but they are used. This shouldn't happen on master, as it's been uncovered by an additional optimization pass. | |||||
2021-07-28 | renderer_vulkan: Add setting to log pipeline statistics | ReinUsesLisp | 19 | -24/+307 | |
Use VK_KHR_pipeline_executable_properties when enabled and available to log statistics about the pipeline cache in a game. For example, this is on Turing GPUs when generating a pipeline cache from Super Smash Bros. Ultimate: Average pipeline statistics ========================================== Code size: 6433.167 Register count: 32.939 More advanced results could be presented, at the moment it's just an average of all 3D and compute pipelines. | |||||
2021-07-27 | host_memory: Add workaround for FreeBSD 12 | Jan Beich | 1 | -0/+5 | |
src/common/host_memory.cpp:360:14: error: use of undeclared identifier 'memfd_create' fd = memfd_create("HostMemory", 0); ^ | |||||
2021-07-27 | host_memory: Enable Linux implementation on FreeBSD | Jan Beich | 1 | -2/+2 | |
HW.Memory <Critical> common/host_memory.cpp:HostMemory:492: Fastmem unavailable, falling back to VirtualBuffer for memory allocation | |||||
2021-07-27 | qt_web_browser: Fix lambda capture for HIDButton | jls47 | 1 | -1/+1 | |
2021-07-27 | qt_web_browser: Focus on the first link element | jls47 | 3 | -0/+22 | |
Focusing on the first link element fixes element navigation upon loading the web applet in games such as Super Mario Odyssey | |||||
2021-07-27 | service: ns: Remove unused ns_language header | Morph | 1 | -42/+0 | |
2021-07-27 | service: ns: Map ZH_TW and ZH_CN to Traditional/Simplified Chinese | Morph | 1 | -0/+2 | |
2021-07-27 | render_target: Add missing initializer for size extent | Lioncash | 1 | -3/+3 | |
Everything else has a default constructor that does the straightforward thing of initializing most members to a default value, except for the size. We explicitly initialize the size (and others, for consistency), to prevent potential uninitialized reads from occurring. Particularly given the largeish surface area that this struct is used in. | |||||
2021-07-27 | video_core/engine: Consistently initialize rasterizer pointers | Lioncash | 2 | -2/+2 | |
Ensures all of the engines have consistent and deterministic initialization of the rasterizer pointers. | |||||
2021-07-27 | vulkan_wrapper: Fix SetObjectName() always indicating objects as images | Lioncash | 1 | -1/+1 | |
We should be using the passed in object type instead. | |||||
2021-07-27 | buffer_cache: Remove unused small_vector in CommitAsyncFlushesHigh() | Lioncash | 1 | -1/+0 | |
Given this is non-trivial, the constructor is required to execute, so this removes a bit of redundant codegen. | |||||
2021-07-27 | gl_shader_cache: Remove unused variable | Lioncash | 1 | -1/+0 | |
2021-07-27 | vk_compute_pass: Remove unused captures | Lioncash | 1 | -3/+2 | |
Resolves two compiler warnings. | |||||
2021-07-27 | exception: Make constructors explicit | Lioncash | 1 | -4/+4 | |
Ensures that exception construction is always explicit. | |||||
2021-07-27 | exception: Make what() member function nodiscard | Lioncash | 1 | -1/+1 | |
2021-07-27 | exception: Narrow down specific header | Lioncash | 1 | -1/+1 | |
We can use the <exception> header instead of pulling in all of the exception-style classes. | |||||
2021-07-27 | common: fs: fs_util: Add BufferToUTF8String | Morph | 2 | -0/+15 | |
Allows for direct conversion to std::string without having to convert std::u8string to std::string | |||||
2021-07-27 | common: uuid: Return a lower-case hex string in Format | Morph | 3 | -15/+15 | |
2021-07-26 | vk_staging_buffer_pool: Fall back to host memory when allocation fails | Robin Kertels | 1 | -8/+21 | |
2021-07-26 | vk_stream_buffer: Remove unused stream buffer | ReinUsesLisp | 2 | -244/+0 | |
Remove unused file. | |||||
2021-07-26 | configure_graphics: reword GLASM option | Vamsi Krishna | 1 | -1/+1 | |
Change wording to explain that GLASM is actually short for Assembly Shaders | |||||
2021-07-26 | vk_compute_pass: Fix pipeline barrier for indexed quads | ReinUsesLisp | 1 | -1/+1 | |
Use an index buffer barrier instead of a vertex input read barrier. | |||||
2021-07-26 | vk_buffer_cache: Add transform feedback usage to null buffer | ReinUsesLisp | 1 | -3/+7 | |
Fixes bad API usages on Vulkan. | |||||
2021-07-26 | emit_glasm: Fix LINESS_ADJACENCY typo in InputPrimitive() | Lioncash | 1 | -1/+1 | |
This should be LINES_ADJACENCY | |||||
2021-07-26 | emit_spirv_instructions: Add missing header guard | Lioncash | 1 | -0/+2 | |
2021-07-26 | shader_recompiler: Remove unnecessary [[nodiscard]] instances | Lioncash | 2 | -4/+4 | |
[[nodiscard]] doesn't do anything on functions with a void return type and causes superfluous warnings. | |||||
2021-07-26 | control_flow: Fix duplicate switch case in OpcodeToken | Lioncash | 1 | -1/+1 | |
This previously duplicated the case of the PBK case above it. | |||||
2021-07-26 | object_pool: Add missing return in Chunk move assignment operator | Lioncash | 1 | -0/+1 | |
Prevents undefined behavior from occurring. | |||||
2021-07-26 | shader: Fold integer FMA from Nvidia's pattern | ReinUsesLisp | 1 | -0/+175 | |
Fold shaders doing "a * b + c" on integers from the pattern generated by Nvidia's GL compiler. On a somewhat complex compute shader it reduces the code size by 16 instructions from 2 matches on Turing GPUs. On Intel as extracted from KHR_pipeline_executable_properties: Before the optimization: ``` Instruction Count: 2057 Basic Block Count: 45 Scratch Memory Size: 14752 Spill Count: 232 Fill Count: 261 SEND Count: 610 Cycle Count: 11325 ``` After the optimization: ``` Instruction Count: 2046 Basic Block Count: 44 Scratch Memory Size: 13728 Spill Count: 219 Fill Count: 268 SEND Count: 604 Cycle Count: 11367 ``` | |||||
2021-07-26 | shader: Use TryInstRecursive on XMAD multiply folding | ReinUsesLisp | 1 | -14/+12 | |
Simplify a bit the logic. | |||||
2021-07-26 | shader: Add TryInstRecursive utility to values | ReinUsesLisp | 1 | -0/+8 | |
2021-07-25 | main: Fix screenshot filepath construction | ameerj | 1 | -1/+1 | |
The screenshot directory path returned does not have a trailing directory separator character. This caused screenshots to be saved in the parent directory of the configured screenshot directory. This fixes that behavior | |||||
2021-07-24 | renderer_base: Removed redundant settings | ameerj | 3 | -12/+4 | |
use_framelimiter was not being used internally by the renderers. set_background_color was always set to true as there is no toggle for the renderer background color, instead users directly choose the color of their choice. | |||||
2021-07-24 | general: Rename "Frame Limit" references to "Speed Limit" | ameerj | 16 | -77/+77 | |
This setting is best referred to as a speed limit, as it involves the limits of all timing based aspects of the emulator, not only framerate. This allows us to differentiate it from the fps unlocker setting. | |||||
2021-07-24 | config, nvflinger: Add FPS cap setting | ameerj | 8 | -6/+49 | |
Allows finer tuning of the FPS limit. | |||||
2021-07-23 | configuration: Use combobox apply template where possible | lat9nq | 2 | -35/+2 | |
We don't need to manually apply this setting now that a template can do this for us. | |||||
2021-07-23 | general: Implement FullscreenMode enumeration | lat9nq | 8 | -28/+38 | |
Prevents us from using an unclear 0 or 1 to describe the fullscreen mode. | |||||
2021-07-23 | common: Publically link to pthreads | lat9nq | 1 | -1/+1 | |
Common requires pthreads but does not refer to it when linking to other modules. Fix this by linking to Threads where necessary. | |||||
2021-07-23 | shader: Support out of bound local memory reads and immediate writes | ReinUsesLisp | 1 | -4/+21 | |
Support ignoring immediate out of bound writes. Writing dynamically out of bounds is not yet supported (e.g. R0+0x4). Reading out of bounds yields zero. This is supported checking for the size from the IR; if the input is immediate, the optimization passes will drop it. | |||||
2021-07-23 | vulkan/blit_image: Commit descriptor sets within worker thread | ReinUsesLisp | 1 | -9/+7 | |
Fixes race condition caused. The descriptor pool is not thread safe, so we have to commit descriptor sets within the same thread. | |||||
2021-07-23 | vulkan_device: Blacklist Volta and older from VK_KHR_push_descriptor | ReinUsesLisp | 1 | -4/+39 | |
Causes crashes on Link's Awakening intro. It's hard to debug if it's our fault due to bugs in validation layers. | |||||
2021-07-23 | qt: Remove "experimental" from asynchronous shader building UI | ReinUsesLisp | 1 | -1/+1 | |
2021-07-23 | Revert "renderers: Disable async shader compilation" | ReinUsesLisp | 2 | -5/+3 | |
This reverts commit 4a152767286717fa69bfc94846a124a366f70065. | |||||
2021-07-23 | opengl: Fix asynchronous shaders | ReinUsesLisp | 2 | -4/+33 | |
Wait for shader to build before configuring it, and wait for the shader to build before sharing it with other contexts. | |||||
2021-07-23 | shader_environment: Receive cache version from outside | ReinUsesLisp | 4 | -16/+23 | |
This allows us invalidating OpenGL and Vulkan separately in the future. | |||||
2021-07-23 | cmake: Remove shader cache version | ReinUsesLisp | 3 | -12/+1 | |
2021-07-23 | shader: Fix disabled attribute default values | ameerj | 2 | -2/+2 | |
2021-07-23 | gl_device: Simplify GLASM setting logic | ameerj | 1 | -15/+8 | |
2021-07-23 | glsl: Simplify FCMP emission | ameerj | 1 | -6/+4 | |
2021-07-23 | glsl: Update TessellationControl gl_in | ameerj | 1 | -0/+28 | |
Adheres to GL_ARB_separate_shader_objects requirements | |||||
2021-07-23 | renderer_opengl: Use ARB_separate_shader_objects | ReinUsesLisp | 9 | -116/+154 | |
Ensures that states set for a particular stage are not attached to other stages which may not need them. | |||||
2021-07-23 | shader: Implement ISETP.X | ameerj | 4 | -44/+57 | |
2021-07-23 | shader: Avoid usage of C++20 ranges to build in clang | ReinUsesLisp | 11 | -39/+47 | |
2021-07-23 | glsl: Clamp shared mem size to GL_MAX_COMPUTE_SHARED_MEMORY_SIZE | ameerj | 3 | -2/+12 | |
2021-07-23 | gl_shader_cache: Properly implement asynchronous shaders | ReinUsesLisp | 1 | -1/+1 | |
2021-07-23 | shader_recompiler, video_core: Resolve clang errors | lat9nq | 14 | -44/+40 | |
Silences the following warnings-turned-errors: -Wsign-conversion -Wunused-private-field -Wbraced-scalar-init -Wunused-variable And some other errors | |||||
2021-07-23 | main: Update Shader Cache menu options | ameerj | 4 | -16/+64 | |
This change adds two new context menu items to remove either the OpenGL or the Vulkan shader caches individually, and the provides the option to remove all caches for the selected title. This also changes the behavior of the open shader cache option. Now it creates the shader cache directory for the title if it does not yet exist. | |||||
2021-07-23 | renderers: Fix clang formatting | ameerj | 4 | -9/+13 | |
2021-07-23 | shader: Manually convert from array<u32> to bitset instead of using bit_cast | ReinUsesLisp | 1 | -2/+3 | |
2021-07-23 | renderers: Disable async shader compilation | ameerj | 2 | -3/+5 | |
The current implementation is prone to causing graphical issues. Disable until a better solution is implemented. | |||||
2021-07-23 | maxwell_to_vk: Add R16_SNORM | ReinUsesLisp | 2 | -1/+2 | |
2021-07-23 | configure_graphics: Mark SPIR-V as Experimental, Mesa only | lat9nq | 1 | -1/+1 | |
2021-07-23 | glsl: Fix tracking of info.uses_shadow_lod | ameerj | 1 | -4/+4 | |
2021-07-23 | shader: Ignore global memory ops on devices lacking int64 support | ameerj | 8 | -30/+79 | |
2021-07-23 | vulkan_device: Add missing include algorithm | lat9nq | 1 | -0/+1 | |
2021-07-23 | vulkan_device: Blacklist ampere devices from float16 math | ameerj | 2 | -12/+23 | |
2021-07-23 | dual_vertex_pass: Clang format | ameerj | 1 | -14/+14 | |
2021-07-23 | gl_shader_cache: Fixes for async shaders | ameerj | 2 | -2/+25 | |
2021-07-23 | vulkan_device: Enable VK_EXT_extended_dynamic_state on RADV 21.2 onward | ReinUsesLisp | 1 | -4/+7 | |
2021-07-23 | emit_spirv: Workaround VK_KHR_shader_float_controls on fp16 Nvidia | ReinUsesLisp | 4 | -5/+12 | |
Fix regression on Fire Emblem: Three Houses when using native fp16. | |||||
2021-07-23 | configure_graphics: Re-order vulkan device populating | lat9nq | 1 | -4/+4 | |
2021-07-23 | shader: GCC fmt 8.0.0 fixes | lat9nq | 7 | -16/+19 | |
2021-07-23 | shader: Account for 33-bit IADD3 scenario | ameerj | 1 | -2/+10 | |
2021-07-23 | shader: Only apply shift on register mode for IADD3 | ReinUsesLisp | 1 | -10/+14 | |
2021-07-23 | vk_rasterizer: Workaround bug in VK_EXT_vertex_input_dynamic_state | ReinUsesLisp | 4 | -19/+20 | |
Workaround potential bug on Nvidia's driver where only updating high attributes leaves low attributes out dated. | |||||
2021-07-23 | shader: Fix disabled and unwritten attributes and varyings | ReinUsesLisp | 3 | -18/+31 | |
2021-07-23 | glsl: Fix shared and local memory declarations | ameerj | 1 | -3/+3 | |
account for the fact that program.*memory_size is in units of bytes. | |||||
2021-07-23 | opengl: Implement LOP.CC | ameerj | 2 | -6/+38 | |
Used by MH:Rise | |||||
2021-07-23 | vk_graphics_pipeline: Implement smooth lines | ReinUsesLisp | 5 | -5/+65 | |
2021-07-23 | vk_graphics_pipeline: Implement line width | ReinUsesLisp | 8 | -8/+36 | |
2021-07-23 | spirv: Fix code emission when descriptor aliasing is unsupported | ReinUsesLisp | 1 | -1/+2 | |
Fixes OpenGL. | |||||
2021-07-23 | video_core: Enable GL SPIR-V shaders | lat9nq | 7 | -38/+105 | |
2021-07-23 | general: Add setting shader_backend | lat9nq | 14 | -87/+182 | |
GLASM is getting good enough that we can move it out of advanced graphics settings. This removes the setting `use_assembly_shaders`, opting for a enum class `shader_backend`. This comes with the benefits that it is extensible for additional shader backends besides GLSL and GLASM, and this will work better with a QComboBox. Qt removes the related assembly shader setting from the Advanced Graphics section and places it as a new QComboBox in the API Settings group. This will replace the Vulkan device selector when OpenGL is selected. Additionally, mark all of the custom anisotropic filtering settings as "WILL BREAK THINGS", as that is the case with a select few games. | |||||
2021-07-23 | glsl: Declare local memory in main | ameerj | 1 | -3/+3 | |
2021-07-23 | glsl: Add passthrough geometry shader support | ameerj | 3 | -7/+27 | |
2021-07-23 | shader: Use std::bit_cast instead of Common::BitCast for passthrough | ReinUsesLisp | 1 | -2/+3 | |
2021-07-23 | glasm: Add passthrough geometry shader support | ReinUsesLisp | 5 | -8/+33 | |
2021-07-23 | shader: Rework varyings and implement passthrough geometry shaders | ReinUsesLisp | 29 | -331/+345 | |
Put all varyings into a single std::bitset with helpers to access it. Implement passthrough geometry shaders using host's. | |||||
2021-07-23 | vk_graphics_pipeline: Implement conservative rendering | ReinUsesLisp | 6 | -10/+44 | |
2021-07-23 | shader: Only verify shader when graphics debugging is enabled | ReinUsesLisp | 1 | -2/+7 | |
2021-07-23 | shader: Unify shader stage types | ReinUsesLisp | 15 | -55/+37 | |
2021-07-23 | lower_int64_to_int32: Add missing include | lat9nq | 1 | -0/+1 | |
2021-07-23 | shader: Emulate 64-bit integers when not supported | ReinUsesLisp | 6 | -2/+16 | |
Useful for mobile and Intel Xe devices. | |||||
2021-07-23 | shader: Add int64 to int32 lowering pass | ReinUsesLisp | 3 | -0/+218 | |
2021-07-23 | shader: Teach global memory base tracker to follow vectors | ReinUsesLisp | 1 | -15/+14 | |
2021-07-23 | shader: Add constant propagation to integer vectors | ReinUsesLisp | 1 | -0/+9 | |
2021-07-23 | glsl: Better IAdd Overflow CC fix | ameerj | 2 | -11/+13 | |
This ensures the original operand values are not overwritten when being used in the overflow detection. | |||||
2021-07-23 | shader: Remove IAbs64 | ReinUsesLisp | 9 | -26/+3 | |
2021-07-23 | glsl: Fix IADD CC | ameerj | 2 | -5/+7 | |
2021-07-23 | shader_recompiler: Fix IADD3 input partitioning | ameerj | 1 | -14/+13 | |
2021-07-23 | shader: Move loop safety tests to code emission | ReinUsesLisp | 16 | -108/+54 | |
2021-07-23 | gl_graphics_pipeline: Fix assembly shaders check for transform feedbacks | ReinUsesLisp | 1 | -1/+1 | |
2021-07-23 | glsl: Remove frag color initialization | ameerj | 1 | -9/+0 | |
2021-07-23 | glasm: Implement SetAttribute ViewportMask | ameerj | 2 | -1/+10 | |
2021-07-23 | gl_graphics_pipeline: Inline hash and operator== key functions | ReinUsesLisp | 2 | -12/+8 | |
2021-07-23 | gl_shader_cache: Check previous pipeline before checking hash map | ReinUsesLisp | 5 | -29/+41 | |
Port optimization from Vulkan. | |||||
2021-07-23 | gl_graphics_pipeline: Port optimizations from Vulkan pipelines | ReinUsesLisp | 2 | -57/+141 | |
2021-07-23 | emit_glsl_special: Skip initialization of frag_color0 | ameerj | 1 | -1/+1 | |
Fixes rendering in Devil May Cry without regressing Ori and the Blind Forest. | |||||
2021-07-23 | shader: Calibrate loop safety threshold | ReinUsesLisp | 1 | -1/+1 | |
2021-07-23 | buffer_cache: Fix debugging leftover | ReinUsesLisp | 1 | -1/+1 | |
2021-07-23 | glsl: Add missing ; in EmitSetSampleMask | Morph | 1 | -1/+1 | |
Fixes shader compilation in Okami HD | |||||
2021-07-23 | buffer_cache: Fix size reductions not having in mind bind sizes | ReinUsesLisp | 1 | -7/+23 | |
A buffer binding can change between shaders without changing the shaders. This lead to outdated bindings on OpenGL. | |||||
2021-07-23 | glsl: Fix output varying initialization when transform feedback is used | ameerj | 1 | -3/+37 | |
2021-07-23 | shaders: Allow shader notify when async shaders is disabled | ameerj | 2 | -11/+9 | |
2021-07-23 | texture_pass: Fix is_read image qualification | ameerj | 1 | -1/+1 | |
Atomic operations are considered to have both read and write access. This was not being accounted for. | |||||
2021-07-23 | shader: Align constant buffer sizes to 16 bytes | ReinUsesLisp | 1 | -1/+2 | |
WAR for AMD reading zeroes on uniform buffers of size 2. | |||||
2021-07-23 | spirv: Properly handle devices without int8 and int16 | ReinUsesLisp | 2 | -39/+67 | |
2021-07-23 | spirv: Handle small storage buffer loads on devices with no support | ReinUsesLisp | 2 | -6/+6 | |
2021-07-23 | vk_graphics_pipeline: Use VK_KHR_push_descriptor when available | ReinUsesLisp | 8 | -36/+88 | |
~51% faster on Nvidia compared to previous method. | |||||
2021-07-23 | glsl: Fix cbuf component indexing bug falback | ameerj | 1 | -7/+6 | |
2021-07-23 | shader: Simplify MergeDualVertexPrograms | ReinUsesLisp | 1 | -6/+4 | |
2021-07-23 | shader: Properly manage attributes not written from previous stages | ReinUsesLisp | 12 | -41/+62 | |
2021-07-23 | glsl: Only declare fragment outputs on fragment shaders | ReinUsesLisp | 1 | -4/+6 | |
2021-07-23 | shader: Split profile and runtime info headers | ReinUsesLisp | 13 | -77/+93 | |
2021-07-23 | shader: Add support for native 16-bit floats | ReinUsesLisp | 9 | -14/+50 | |
2021-07-23 | shader: Rename maxwell/program.h to translate_program.h | ReinUsesLisp | 5 | -11/+6 | |
2021-07-23 | vulkan_device: Blacklist VK_EXT_vertex_input_dynamic_state on Intel | ReinUsesLisp | 1 | -0/+4 | |
2021-07-23 | glsl: Obey need_declared_frag_colors to declare and initialize all frag_color | ameerj | 2 | -1/+10 | |
Fixes Ori and the blind forest title screen | |||||
2021-07-23 | glsl: Address rest of feedback | ameerj | 11 | -38/+86 | |
2021-07-23 | glsl: Move gl_Position/generic attribute initialization to EmitProlgue | ameerj | 2 | -14/+12 | |
2021-07-23 | glsl: Conditionally use fine/coarse derivatives based on device support | ameerj | 4 | -4/+29 | |
2021-07-23 | glsl: Cleanup/Address feedback | ameerj | 10 | -28/+24 | |
2021-07-23 | gl_shader_cache: Implement async shaders | ameerj | 7 | -107/+154 | |
2021-07-23 | glsl: Add Shader_GLSL logging | ameerj | 3 | -28/+32 | |
2021-07-23 | glsl: Add LoopSafety instructions | ameerj | 2 | -0/+10 | |
2021-07-23 | glsl: Conditionally add EXT_texture_shadow_lod | ameerj | 3 | -4/+15 | |
2021-07-23 | glsl: Add stubs for sparse queries and variable aoffi when not supported | ameerj | 7 | -13/+47 | |
2021-07-23 | glsl: Implement legacy varyings | ameerj | 6 | -8/+81 | |
2021-07-23 | gl_shader_cache: Remove const from pipeline source arguments | ameerj | 4 | -6/+6 | |
2021-07-23 | gl_shader_cache: Move OGL shader compilation to the respective Pipeline constructor | ameerj | 5 | -76/+79 | |
2021-07-23 | glsl: Minor cleanup | ameerj | 2 | -19/+15 | |
2021-07-23 | glsl: Fix Cbuf getters for F32 type | ameerj | 1 | -12/+15 | |
2021-07-23 | glsl: Add immediate index oob checking for Cbuf getters | ameerj | 1 | -0/+16 | |
2021-07-23 | glsl: Refactor GetCbuf functions to reduce code duplication | ameerj | 1 | -104/+66 | |
2021-07-23 | glsl: Address more feedback. Implement indexed texture reads | ameerj | 6 | -114/+112 | |
2021-07-23 | glsl: Remove Signed Integer variables | ameerj | 8 | -43/+13 | |
2021-07-23 | glsl: Address Rodrigo's feedback | ameerj | 13 | -75/+87 | |
2021-07-23 | glsl: Reorganize backend code, remove unneeded [[maybe_unused]] | ameerj | 12 | -315/+251 | |
2021-07-23 | glsl: Implement SampleId and SetSampleMask | ameerj | 3 | -30/+35 | |
plus some minor refactoring of implementations | |||||
2021-07-23 | glsl: Add gl_PerVertex in for GS | ameerj | 1 | -1/+2 | |
2021-07-23 | glsl: Use existing tracking for enabling EXT_shader_image_load_formatted | ameerj | 1 | -15/+1 | |
2021-07-23 | glsl: Enable early fragment tests | ameerj | 2 | -4/+7 | |
2021-07-23 | gl_rasterizer: Add texture fetch barrier for fragments | ameerj | 1 | -1/+1 | |
Fixes flicker seen in XC2 | |||||
2021-07-23 | glsl: Implement more attribute getters and setters | ameerj | 2 | -12/+60 | |
2021-07-23 | glsl: Implement fswzadd | ameerj | 5 | -5/+45 | |
and wip nv thread shuffle impl | |||||
2021-07-23 | glsl: Implement indexed attribute loads | ameerj | 5 | -29/+64 | |
2021-07-23 | glsl: Conditionally add GL_ARB_sparse_texture2 | ameerj | 1 | -2/+3 | |
2021-07-23 | glsl: Rebase fixes | ameerj | 2 | -3/+5 | |
2021-07-23 | glsl: Conditionally use GL_EXT_shader_image_load_formatted | ameerj | 1 | -2/+18 | |
Fix for SULD.D | |||||
2021-07-23 | glsl: Remove output generic indexing for geometry stage | ameerj | 1 | -5/+3 | |
2021-07-23 | glsl: Allow dynamic tracking of variable allocation | ameerj | 3 | -21/+35 | |
2021-07-23 | glsl: Implement barriers | ameerj | 3 | -13/+21 | |
2021-07-23 | glsl: Implement image atomics and set layer | ameerj | 5 | -153/+202 | |
along with some more cleanup/oversight fixes | |||||
2021-07-23 | glsl: Fix image gather logic | ameerj | 1 | -0/+4 | |
2021-07-23 | glsl: Add cbuf access workaround for devices with component indexing bug | ameerj | 2 | -51/+112 | |
2021-07-23 | glsl: Use textureGrad fallback when EXT_texture_shadow_lod is unsupported | ameerj | 4 | -8/+42 | |
2021-07-23 | emit_glsl_image: Use immediate offsets when possible | ameerj | 1 | -12/+33 | |
2021-07-23 | glsl: Fix <32-bit SSBO writes | ameerj | 4 | -50/+43 | |
and more cleanup | |||||
2021-07-23 | glsl: Cleanup and address feedback | ameerj | 10 | -86/+69 | |
2021-07-23 | glsl: Refactor Global memory functions | ameerj | 2 | -71/+73 | |
2021-07-23 | glsl: Increase NUM_VARS that can be allocated | ameerj | 1 | -1/+1 | |
needed for HW:AoC. | |||||
2021-07-23 | glsl: Implement Load/WriteGlobal | ameerj | 9 | -98/+185 | |
along with some other misc changes and fixes | |||||
2021-07-23 | glsl: Implement Images | ameerj | 2 | -9/+74 | |
2021-07-23 | glsl: skip gl_ViewportIndex write if device does not support it | ameerj | 5 | -8/+18 | |
2021-07-23 | glsl: Implement transform feedback | ameerj | 4 | -18/+76 | |
2021-07-23 | glsl: Yet another gl_ViewportIndex fix attempt | ameerj | 1 | -3/+19 | |
2021-07-23 | glsl: Add gl_ViewportIndex out attribute | ameerj | 1 | -1/+3 | |
2021-07-23 | emit_glsl_context_get_set: Remove unused function | lat9nq | 1 | -4/+0 | |
2021-07-23 | glsl: Fix precise variable declaration | ameerj | 3 | -24/+25 | |
and add some more separation in the shader for better debugability when dumped | |||||
2021-07-23 | glsl: Implement tessellation shaders | ameerj | 5 | -27/+146 | |
2021-07-23 | glsl: Implement ImageGradient and other texture function variants | ameerj | 2 | -32/+73 | |
2021-07-23 | glsl: Fix atomic SSBO offsets | ameerj | 4 | -67/+74 | |
and implement misc getters | |||||
2021-07-23 | glsl: Implement geometry shaders | ameerj | 4 | -9/+62 | |
2021-07-23 | glsl: Use NotImplemented macro with function name output | ameerj | 10 | -104/+103 | |
2021-07-23 | glsl: Implement gl_ViewportIndex | ameerj | 3 | -5/+14 | |
SSBU now working | |||||
2021-07-23 | glsl: SHFL fix and prefer shift operations over divide in glsl shader | ameerj | 5 | -63/+64 | |
2021-07-23 | glsl: Implement precise fp variable allocation | ameerj | 4 | -8/+67 | |
2021-07-23 | HACK glsl: Write defaults to unused generic attributes | ameerj | 2 | -2/+11 | |
2021-07-23 | glsl: Fix ssbo indexing and name shadowing between shader stages | ameerj | 3 | -77/+101 | |
2021-07-23 | glsl: implement set clip distance | ameerj | 2 | -0/+15 | |
and missed a diff in emit_glsl relating to var alloc ref counting | |||||
2021-07-23 | glsl: Rework var alloc to not assign unused results | ameerj | 9 | -49/+91 | |
2021-07-23 | glsl: Rework variable allocator to allow for variable reuse | ameerj | 14 | -353/+482 | |
2021-07-23 | glsl: Fix ATOM and implement ATOMS | ameerj | 5 | -114/+136 | |
2021-07-23 | glsl: Use gl_SubGroupInvocationARB | ameerj | 2 | -8/+7 | |
2021-07-23 | glsl: Implement VOTE for subgroup size potentially larger | ameerj | 5 | -20/+43 | |
2021-07-23 | glsl: Implement VOTE | ameerj | 4 | -50/+64 | |
2021-07-23 | glsl: Implement ST{LS} | ameerj | 6 | -69/+106 | |
2021-07-23 | glsl: Implement more instructions used by SMO | ameerj | 1 | -3/+3 | |
2021-07-23 | glsl: Implement more instructions used by SMO | ameerj | 5 | -10/+16 | |
2021-07-23 | glsl: Fix GetAttribute return values | ameerj | 2 | -7/+9 | |
fixes font rendering issues as these were used to index into the ssbos | |||||
2021-07-23 | glsl: minor cleanup | ameerj | 4 | -20/+19 | |
2021-07-23 | glsl: Fix and implement rest of cbuf access | ameerj | 1 | -7/+43 | |
2021-07-23 | glsl: Implement TXQ and other misc changes | ameerj | 5 | -6/+36 | |
2021-07-23 | glsl: TLD4 implementation | ameerj | 1 | -2/+89 | |
2021-07-23 | glsl: Implement TLD instruction | ameerj | 1 | -1/+55 | |
2021-07-23 | glsl: Implement TEXS | ameerj | 1 | -1/+29 | |
2021-07-23 | glsl: Cleanup texture functions | ameerj | 1 | -13/+11 | |
2021-07-23 | shader_recompiler: GCC fixes | lat9nq | 14 | -3/+13 | |
2021-07-23 | glsl: Implement TEX depth functions | ameerj | 2 | -4/+46 | |
2021-07-23 | glsl: Implement TEX ImageSample functions | ameerj | 3 | -11/+71 | |
2021-07-23 | glsl: Rework Shuffle emit instructions to align with SPIR-V | ameerj | 1 | -19/+40 | |
2021-07-23 | glsl: Better Storage access and wip warps | ameerj | 8 | -62/+133 | |
2021-07-23 | glsl: Fix integer conversions, implement clamp CC | ameerj | 2 | -27/+36 | |
2021-07-23 | glsl: Implement IADD CC | ameerj | 2 | -2/+17 | |
2021-07-23 | glsl: SSBO access fixes and wip SampleExplicitLod implementation. | ameerj | 2 | -4/+19 | |
2021-07-23 | glsl: WIP var forward declaration | ameerj | 6 | -49/+60 | |
to fix Loop control flow. | |||||
2021-07-23 | glsl: Fix bindings, add some CC ops | ameerj | 8 | -57/+91 | |
2021-07-23 | glsl: remove unused headers | ameerj | 14 | -34/+10 | |
2021-07-23 | glsl: Implement derivatives and YDirection | ameerj | 8 | -81/+87 | |
plus some other misc additions/changed | |||||
2021-07-23 | glsl: Fix non-immediate buffer access | ameerj | 12 | -72/+133 | |
and many other misc implementations | |||||
2021-07-23 | glsl: textures wip | ameerj | 9 | -75/+139 | |
2021-07-23 | glsl: Implement some attribute getters and setters | ameerj | 10 | -192/+337 | |
2021-07-23 | glsl: Track S32 atomics | ameerj | 3 | -6/+16 | |
2021-07-23 | glsl: Update phi node management | ameerj | 4 | -21/+53 | |
2021-07-23 | glsl: Fix floating point compare ops | ameerj | 1 | -28/+28 | |
Logic for ordered/unordered ops was wrong. | |||||
2021-07-23 | glsl: Query GL Device for FP16 extension support | ameerj | 5 | -2/+23 | |
2021-07-23 | glsl: Simply FP storage atomics | ameerj | 2 | -48/+28 | |
2021-07-23 | glsl: F16x2 storage atomics | ameerj | 7 | -58/+64 | |
2021-07-23 | glsl: Revert ssbo aliasing. Storage Atomics impl | ameerj | 5 | -75/+134 | |
2021-07-23 | glsl: implement phi nodes | ameerj | 4 | -20/+54 | |
2021-07-23 | glsl: Wip storage atomic ops | ameerj | 10 | -327/+414 | |
2021-07-23 | glsl: Implement FCMP | ameerj | 3 | -242/+185 | |
2021-07-23 | glsl: Add a more robust fp formatter | ameerj | 4 | -9/+14 | |
2021-07-23 | glsl: More FP fixes | ameerj | 2 | -9/+16 | |
2021-07-23 | glsl: FP function fixes | ameerj | 7 | -17/+25 | |
2021-07-23 | glsl: More FP instructions/fixes | ameerj | 5 | -28/+41 | |
2021-07-23 | glsl: Add many FP32/64 instructions | ameerj | 12 | -765/+1011 | |
2021-07-23 | glsl: Fixup build issues | ReinUsesLisp | 1 | -1/+1 | |
2021-07-23 | glsl: Implement more Integer ops | ameerj | 3 | -119/+72 | |
2021-07-23 | glsl: Implement BF* | ameerj | 3 | -9/+10 | |
2021-07-23 | glsl: Implement a few Integer instructions | ameerj | 10 | -260/+398 | |
2021-07-23 | glsl: Use std::string_view for Emit function args. | ameerj | 6 | -760/+838 | |
2021-07-23 | glsl: Pass IR::Inst& to Emit functions | ameerj | 6 | -171/+169 | |
2021-07-23 | glsl: INeg and IAdd negate tests | ameerj | 3 | -94/+106 | |
2021-07-23 | glsl: Reusable typed variables. IADD32 | ameerj | 6 | -203/+311 | |
2021-07-23 | glsl: Fix program linking and cbuf | ameerj | 2 | -3/+5 | |
2021-07-23 | glsl: Fix "reg" allocing | ameerj | 10 | -898/+938 | |
based on glasm with some tweaks | |||||
2021-07-23 | glsl: Initial backend | ameerj | 28 | -2/+3297 | |
2021-07-23 | spirv: Reduce log severity of mismatching denorm rules | ReinUsesLisp | 1 | -2/+2 | |
2021-07-23 | shader: Fix loop safety to SSA pass | ReinUsesLisp | 2 | -2/+4 | |
2021-07-23 | vk_rasterizer: Exit render passes on fragment barriers | ReinUsesLisp | 1 | -0/+1 | |
2021-07-23 | vk_graphics_pipeline: Fix path with no VK_EXT_extended_dynamic_state | Rodrigo Locatti | 1 | -1/+1 | |
2021-07-23 | buffer_cache: Invalidate fast buffers on compute | ReinUsesLisp | 1 | -0/+1 | |
2021-07-23 | shader: Add logging | ReinUsesLisp | 15 | -28/+38 | |
2021-07-23 | shader: Add shader loop safety check settings | lat9nq | 16 | -35/+183 | |
Also add a setting for enable Nsight Aftermath. | |||||
2021-07-23 | shader: Comment why the array component is not read in TMML | ReinUsesLisp | 1 | -0/+2 | |
2021-07-23 | vulkan_device: Enable VK_EXT_vertex_input_dynamic_state | ReinUsesLisp | 1 | -0/+28 | |
2021-07-23 | vk_pipeline_cache: Skip cached pipelines with different dynamic state | ReinUsesLisp | 1 | -0/+6 | |
2021-07-23 | main: Fix Open Transferable Shader Cache context item | ameerj | 1 | -25/+5 | |
Opens the new shader cache directory location for the specified title, if it exists. | |||||
2021-07-23 | tmml: Remove index component from coords vec | ameerj | 1 | -4/+3 | |
The lod query functions exposed by the rendering API's do not make use of the texturearray layer indexing. | |||||
2021-07-23 | vulkan: Add VK_EXT_vertex_input_dynamic_state support | ReinUsesLisp | 11 | -116/+291 | |
Reduces the number of total pipelines generated on Vulkan. Tested on Super Smash Bros. Ultimate. | |||||
2021-07-23 | shader: Reorder shader cache directories | ReinUsesLisp | 2 | -18/+12 | |
2021-07-23 | vk_rasterizer: Implement first index | ReinUsesLisp | 1 | -2/+5 | |
2021-07-23 | vulkan: Use VK_EXT_provoking_vertex when available | ReinUsesLisp | 6 | -4/+52 | |
2021-07-23 | spirv/convert: Catch more signed operations oversights | ameerj | 1 | -5/+5 | |
The sign bit on integers of size < 32 was not properly preserved in casts | |||||
2021-07-23 | spirv/convert: Catch more broken signed operations on Nvidia OpenGL | ReinUsesLisp | 1 | -0/+6 | |
BitCast U32 to S32 before converting to float on drivers with broken signed operations. | |||||
2021-07-23 | gl_buffer_cache: Use unorm internal formats for snorm texture buffer views | ameerj | 1 | -1/+24 | |
Fixes black textures in UE4 games | |||||
2021-07-23 | shader_environment: Fix local memory size calculations | ReinUsesLisp | 1 | -3/+3 | |
2021-07-23 | buffer_cache: Fix copy based uniform bindings tracking | ReinUsesLisp | 2 | -9/+22 | |
2021-07-23 | shader_environment: Add shader_local_memory_crs_size to local memory size | ameerj | 2 | -3/+3 | |
Fixes DOOM 2016 missing local memory | |||||
2021-07-23 | gl_texture_cache: Create image storage views | ReinUsesLisp | 4 | -38/+126 | |
Fixes SULD.D tests. | |||||
2021-07-23 | gl_shader_util: Move shader utility code to a separate file | ReinUsesLisp | 7 | -245/+106 | |
2021-07-23 | gl_shader_cache: Store workers in shader cache object | ReinUsesLisp | 2 | -58/+78 | |
2021-07-23 | vk_pipeline_cache,shader_notify: Add shader notifications | ReinUsesLisp | 10 | -96/+127 | |
2021-07-23 | vk_pipeline_cache: Add asynchronous shaders | ReinUsesLisp | 3 | -3/+33 | |
2021-07-23 | vk_rasterizer: Flush work on clear and dispatches | ReinUsesLisp | 1 | -0/+3 | |
2021-07-23 | DMA: Restrict optimised path for BlockToLinear further. | FernandoS27 | 1 | -1/+2 | |
2021-07-23 | vk_swapchain: Handle outdated swapchains | ReinUsesLisp | 3 | -17/+34 | |
Fixes pixelated presentation on Intel devices. | |||||
2021-07-23 | shader: Fix VertexA Shaders. | FernandoS27 | 4 | -19/+51 | |
2021-07-23 | shader: Add 2D and 3D variants to SUATOM and SURED | ReinUsesLisp | 1 | -0/+4 | |
Used by Claybook. | |||||
2021-07-23 | vk_buffer_cache: Handle null texture buffers | ReinUsesLisp | 1 | -0/+4 | |
Fixes a crash on Age of Calamity cutscenes. | |||||
2021-07-23 | nsight_aftermath_tracker: Fix SPIR-V module writes | ReinUsesLisp | 1 | -1/+1 | |
2021-07-23 | vk_pipeline_cache: Set support_derivative_control to true | ReinUsesLisp | 1 | -0/+1 | |
2021-07-23 | shader: Avoid CPU side undefined behavior on I2F | ReinUsesLisp | 1 | -0/+2 | |
2021-07-23 | glasm: Use ARB_derivative_control conditionally | ReinUsesLisp | 6 | -7/+37 | |
2021-07-23 | buffer_cache: Reduce uniform buffer size from shader usage | ReinUsesLisp | 11 | -38/+78 | |
Increases performance significantly on certain titles. | |||||
2021-07-23 | transform_feedback: Read buffer stride from index instead of layout | ReinUsesLisp | 1 | -1/+2 | |
2021-07-23 | fixed_pipeline_state: Use regular for loop instead of ranges for perf | ReinUsesLisp | 1 | -2/+3 | |
MSVC generates better code for it. | |||||
2021-07-23 | vk_swapchain: Avoid recreating the swapchain on each frame | ReinUsesLisp | 2 | -15/+9 | |
Recreate only when requested (or sRGB is changed) instead of tracking the frontend's size. That size is still used as a hint. | |||||
2021-07-23 | emit_glasm_context_get_set: Remove unused variable | lat9nq | 1 | -1/+0 | |
2021-07-23 | shader,glasm: Implement legacy texcoord loads | ReinUsesLisp | 3 | -54/+29 | |
2021-07-23 | glasm: Implement legacy varyings | ReinUsesLisp | 1 | -17/+56 | |
2021-07-23 | shader: Track legacy varyings | ReinUsesLisp | 2 | -17/+105 | |
2021-07-23 | shader: Add support for "negative" and unaligned offsets | ReinUsesLisp | 3 | -8/+13 | |
"Negative" offsets don't exist. They are shown as such due to a bug in nvdisasm. Unaligned offsets have been proved to read the aligned offset. For example, when reading an U32, if the offset is 6, the offset read will be 4. | |||||
2021-07-23 | shader: Implement ISCADD32I | ReinUsesLisp | 1 | -17/+31 | |
2021-07-23 | spirv: Fix output generics with components | ReinUsesLisp | 1 | -1/+1 | |
2021-07-23 | vulkan: Conditionally use shaderInt16 | ReinUsesLisp | 3 | -2/+9 | |
Add support for Polaris AMD devices. | |||||
2021-07-23 | vulkan: Enable depth bounds and use it conditionally | ReinUsesLisp | 4 | -2/+17 | |
Intel devices pre-Xe don't support this. | |||||
2021-07-23 | vk_buffer_cache: Add transform feedback usage to buffers | ReinUsesLisp | 1 | -15/+22 | |
2021-07-23 | opengl: Declare fragment outputs even if they are not used | ReinUsesLisp | 6 | -10/+18 | |
Fixes Ori and the Blind Forest's menu on GLASM. For some reason (probably high level optimizations) it is not sanitized on SPIR-V for OpenGL. Vulkan is unaffected by this change. | |||||
2021-07-23 | buffer_cache: Mark uniform buffers as dirty if any enable bit changes | ReinUsesLisp | 5 | -7/+17 | |
2021-07-23 | shader: Always initialize up reference in structure control flow | ReinUsesLisp | 1 | -31/+36 | |
Fixes ubsan issue. | |||||
2021-07-23 | vulkan_device: Enable float64 and int64 conditionally | ReinUsesLisp | 2 | -2/+6 | |
Add Intel Xe support. | |||||
2021-07-23 | shader: Fix ImageWrite indexing | ReinUsesLisp | 1 | -1/+1 | |
2021-07-23 | spirv: Fix image and image buffer descriptor index usage | ReinUsesLisp | 1 | -5/+7 | |
2021-07-23 | glasm: Fix immediate texture coordinate | ReinUsesLisp | 1 | -0/+1 | |
2021-07-23 | shader: Clang-format secondary textures | ReinUsesLisp | 1 | -2/+2 | |
2021-07-23 | shader: Fix secondary textures | ReinUsesLisp | 1 | -2/+2 | |
2021-07-23 | shader: Adhere to disk shader cache setting | ameerj | 2 | -9/+12 | |
2021-07-23 | shader: Fix TMML queries | ReinUsesLisp | 1 | -5/+9 | |
2021-07-23 | shader: Fix FSwizzleAdd folding when going through phi nodes | ReinUsesLisp | 1 | -2/+2 | |
2021-07-23 | shader/exception: Fix compilation errors on gcc | ReinUsesLisp | 1 | -6/+6 | |
2021-07-23 | glasm: Reduce reg allocation leaks from an exception to a log | ReinUsesLisp | 1 | -1/+1 | |
2021-07-23 | texture_cache: Reduce invalid image/sampler error severity | ReinUsesLisp | 1 | -7/+7 | |
2021-07-23 | shader: Handle host exceptions | ReinUsesLisp | 8 | -45/+98 | |
2021-07-23 | glasm: Use integer lod for TXQ | ReinUsesLisp | 2 | -2/+2 | |
2021-07-23 | glasm: Prepare XFB from state instead of global registers | ReinUsesLisp | 1 | -4/+2 | |
2021-07-23 | glasm: Fix global memory fallbacks | ReinUsesLisp | 1 | -9/+10 | |
2021-07-23 | Revert "glasm: Skip phi moves on undefined instructions" | ReinUsesLisp | 2 | -16/+1 | |
Causes regressions on Bowser's Fury. | |||||
2021-07-23 | glasm: Remove unintentional '\n' on Undef32 | ReinUsesLisp | 1 | -1/+1 | |
2021-07-23 | glasm: Use storage buffers instead of global memory when possible | ReinUsesLisp | 17 | -437/+503 | |
2021-07-23 | glasm: Implement Y direction | ReinUsesLisp | 4 | -3/+9 | |
2021-07-23 | glasm: Skip phi moves on undefined instructions | ReinUsesLisp | 2 | -1/+16 | |
2021-07-23 | glasm: Implement undef instructions | ReinUsesLisp | 2 | -15/+15 | |
2021-07-23 | glasm: Fix global memory callbacks | ReinUsesLisp | 1 | -5/+6 | |
2021-07-23 | gl_shader_cache: Add disk shader cache | ReinUsesLisp | 3 | -11/+116 | |
2021-07-23 | video_core,shader: Clang-format fixes | ReinUsesLisp | 4 | -7/+12 | |
2021-07-23 | gl_shader_cache: Rename Program abstractions into Pipeline | ReinUsesLisp | 10 | -104/+104 | |
2021-07-23 | glasm: Release phi node registers after they are no longer needed | ReinUsesLisp | 2 | -38/+54 | |
2021-07-23 | glasm: Remove unintentionally committed fmt::prints | ReinUsesLisp | 1 | -2/+0 | |
2021-07-23 | glasm: Fix INeg32 on negative immediates | ReinUsesLisp | 1 | -1/+5 | |
2021-07-23 | glasm: Remove unnecessary value types | ReinUsesLisp | 3 | -47/+6 | |
2021-07-23 | glasm: Throw when there are register leaks | ReinUsesLisp | 2 | -0/+7 | |
2021-07-23 | glasm: Catch more register leaks | ReinUsesLisp | 8 | -41/+114 | |
Add support for null registers. These are used when an instruction has no usages. This comes handy when an instruction is only used for its CC value, with the caveat of having to invalidate all pseudo-instructions before defining the instruction itself in the register allocator. This commits changes this. Workaround a bug on Nvidia's condition codes conditional execution using branches. | |||||
2021-07-23 | glasm: Fix usage counting on phi nodes | ReinUsesLisp | 3 | -8/+22 | |
2021-07-23 | gl_shader_cache: Do not flip tessellation on OpenGL | ReinUsesLisp | 1 | -2/+1 | |
2021-07-23 | gl_graphics_program: Fix texture buffer bindings | ReinUsesLisp | 1 | -24/+35 | |
2021-07-23 | glasm: Implement global memory fallbacks | ReinUsesLisp | 2 | -50/+89 | |
2021-07-23 | glasm: Implement int64 add and subtract | ReinUsesLisp | 2 | -8/+6 | |
2021-07-23 | emit_glasm_context_get_set: Remove unused variable | lat9nq | 1 | -1/+0 | |
2021-07-23 | glasm: Implement indirect attribute loads | ReinUsesLisp | 4 | -6/+65 | |
2021-07-23 | glasm: Implement image atomics | ReinUsesLisp | 3 | -166/+153 | |
2021-07-23 | glasm: Reorder unreachable image atomic insts | ReinUsesLisp | 1 | -66/+66 | |
Reorder them to the bottom of the file for readability. | |||||
2021-07-23 | glasm: Implement gl_Layer stores | ReinUsesLisp | 1 | -0/+7 | |
2021-07-23 | glasm: Implement SampleId | ReinUsesLisp | 2 | -3/+3 | |
2021-07-23 | glasm: Implement IsHelperInvocation | ReinUsesLisp | 2 | -3/+3 | |
2021-07-23 | glasm: Fix EmitVertex's optimization | ReinUsesLisp | 1 | -1/+1 | |
2021-07-23 | gl_shader_cache: Conditionally use viewport mask | ReinUsesLisp | 1 | -1/+1 | |
2021-07-23 | gl_shader_cache,glasm: Conditionally use typeless image reads extension | ReinUsesLisp | 3 | -39/+43 | |
2021-07-23 | gl_shader_cache: Improve GLASM error print logic | ReinUsesLisp | 1 | -7/+10 | |
2021-07-23 | glasm: Implement forced early Z | ReinUsesLisp | 2 | -4/+8 | |
2021-07-23 | glasm: Set transform feedback state | ReinUsesLisp | 5 | -113/+132 | |
2021-07-23 | video_core: Abstract transform feedback translation utility | ReinUsesLisp | 6 | -111/+145 | |
2021-07-23 | glasm: Simplify patch reads | ReinUsesLisp | 1 | -5/+2 | |
2021-07-23 | glasm: Fix output patch reads | ReinUsesLisp | 2 | -13/+22 | |
With this, Luigi's Mansion's sand renders properly. | |||||
2021-07-23 | gl_shader_cache: Pass shader runtime information | ReinUsesLisp | 1 | -2/+74 | |
2021-07-23 | shader: Split profile and runtime information in separate structs | ReinUsesLisp | 14 | -308/+300 | |
2021-07-23 | emit_glasm_context_get_and_set.cpp: Add missing semicolons | ameerj | 1 | -2/+2 | |
2021-07-23 | glasm: Fix patch attribute declarations | ReinUsesLisp | 1 | -1/+1 | |
2021-07-23 | glasm: Implement FSWZADD | ameerj | 3 | -4/+28 | |
2021-07-23 | glasm: Implement PrimitiveId attribute read | ReinUsesLisp | 1 | -0/+3 | |
2021-07-23 | glasm: Implement clip distance stores | ReinUsesLisp | 2 | -0/+15 | |
2021-07-23 | glasm: Fix tessellation input attributes | ReinUsesLisp | 1 | -2/+5 | |
2021-07-23 | glasm: Add missing semicolon on tesscoord reading | ReinUsesLisp | 1 | -1/+1 | |
2021-07-23 | glasm: Fix tessellation headers | ReinUsesLisp | 1 | -2/+2 | |
2021-07-23 | glasm: Add tessellation shader declarations | ReinUsesLisp | 1 | -0/+35 | |
2021-07-23 | glasm: Implement TessellationEvaluationPoint | ReinUsesLisp | 1 | -0/+4 | |
2021-07-23 | gl_shader_manager: Zero initialize current assembly programs | ReinUsesLisp | 1 | -1/+1 | |
2021-07-23 | gl_shader_manager: Remove unintentionally committed #pragma | ReinUsesLisp | 1 | -2/+0 | |
2021-07-23 | glasm: Implement patch memory | ReinUsesLisp | 3 | -6/+51 | |
2021-07-23 | glasm: Fix InvocationId declaration | ReinUsesLisp | 1 | -1/+1 | |
2021-07-23 | glasm: Implement InvocationId | ReinUsesLisp | 2 | -2/+5 | |
2021-07-23 | glasm: Optimize EmitVertex into EMIT | ReinUsesLisp | 1 | -1/+5 | |
2021-07-23 | glasm: Implement geometry shader attribute reads | ReinUsesLisp | 2 | -4/+18 | |
2021-07-23 | glasm: Properly declare attributes on geometry programs | ReinUsesLisp | 3 | -6/+14 | |
2021-07-23 | glasm: Declare geometry program headers | ReinUsesLisp | 1 | -0/+35 | |
2021-07-23 | renderer_opengl: State track compute assembly programs | ReinUsesLisp | 3 | -4/+21 | |
2021-07-23 | renderer_opengl: State track assembly programs | ReinUsesLisp | 3 | -23/+56 | |
2021-07-23 | glasm: Fix potential aliasing bug on cube array samples | ReinUsesLisp | 2 | -35/+44 | |
2021-07-23 | glasm: Implement ImageWrite | ReinUsesLisp | 1 | -4/+7 | |
2021-07-23 | glasm: Implement ImageRead | ReinUsesLisp | 4 | -4/+56 | |
2021-07-23 | glasm: Implement EmitVertex and EndPrimitive | ReinUsesLisp | 2 | -4/+8 | |
2021-07-23 | glasm: Implement ImageGradient | ReinUsesLisp | 2 | -7/+65 | |
2021-07-23 | glasm: Implement 64-bit shifts | ReinUsesLisp | 2 | -12/+14 | |
2021-07-23 | glasm: Implement barriers | ReinUsesLisp | 1 | -3/+3 | |
2021-07-23 | glasm: Fix compute stage name | ReinUsesLisp | 1 | -1/+1 | |
2021-07-23 | glasm: Fix phi instruction types | ReinUsesLisp | 1 | -1/+1 | |
2021-07-23 | glasm: Implement PREC on relevant instructions | ReinUsesLisp | 1 | -6/+12 | |
2021-07-23 | glasm: Implement stores to gl_ViewportIndex | ReinUsesLisp | 4 | -7/+29 | |
2021-07-23 | glasm: Implement gl_PointSize stores | ReinUsesLisp | 1 | -0/+3 | |
2021-07-23 | glasm: Implement gl_PointCoord | ReinUsesLisp | 1 | -0/+4 | |
2021-07-23 | glasm: Implement ImageQueryLod | ReinUsesLisp | 1 | -3/+5 | |
2021-07-23 | glasm: Implement ImageFetch | ReinUsesLisp | 4 | -13/+38 | |
2021-07-23 | glasm: Implement IADD.CC | ameerj | 1 | -1/+26 | |
2021-07-23 | glasm: Implement BFE.CC | ReinUsesLisp | 1 | -0/+8 | |
2021-07-23 | glasm: Implement SelectU1 | ReinUsesLisp | 2 | -4/+5 | |
2021-07-23 | HACK: Bind stages before and after bindings | ReinUsesLisp | 1 | -0/+11 | |
Works around a bug where program parameters are only applied to the current stage, and this one wasn't bound at the moment. Affects all SSBO usages on GLASM. | |||||
2021-07-23 | glasm: Implement gl_WorkGroupID | ReinUsesLisp | 2 | -3/+3 | |
2021-07-23 | glasm: Implement TXQ and improve texture info reads | ReinUsesLisp | 2 | -50/+51 | |
2021-07-23 | glasm: Implement gl_FrongFacing attribute | ReinUsesLisp | 1 | -0/+3 | |
2021-07-23 | glasm: Support textures used in more than one stage | ReinUsesLisp | 4 | -5/+25 | |
2021-07-23 | glasm: Implement textureGather instructions | ReinUsesLisp | 2 | -15/+97 | |
2021-07-23 | glasm: Implement gl_FragDepth and gl_SampleMask stores | ReinUsesLisp | 2 | -5/+5 | |
2021-07-23 | glasm: Do not alias ConditionRef for now | ReinUsesLisp | 2 | -3/+2 | |
Immediate condition refs where not handled correctly. Just move the value for now. | |||||
2021-07-23 | shader: Read branch conditions from an instruction | ReinUsesLisp | 12 | -16/+36 | |
Fixes the identity removal pass. | |||||
2021-07-23 | glasm: Implement InstanceId and VertexId | ReinUsesLisp | 1 | -0/+6 | |
2021-07-23 | glasm: Add missing return value on move assignment | ReinUsesLisp | 1 | -0/+1 | |
2021-07-23 | glasm: Fix aliased bitcasts ref counting | ReinUsesLisp | 3 | -13/+42 | |
2021-07-23 | glasm: Remove unintentional comma on vector insert | ReinUsesLisp | 1 | -1/+1 | |
2021-07-23 | glasm: Implement TEX and TEXS instructions | ReinUsesLisp | 10 | -69/+275 | |
Remove lod clamp from texture instructions with lod, as this is not needed (nor supported). | |||||
2021-07-23 | glasm: Add support for non-2D texture samples | ReinUsesLisp | 1 | -4/+26 | |
2021-07-23 | glasm: Reorder unreachable image instructions to the bottom | ReinUsesLisp | 1 | -97/+97 | |
2021-07-23 | glasm: Add support for texture offsets | ReinUsesLisp | 1 | -11/+15 | |
2021-07-23 | glasm: Improve texture sampling instructions | ReinUsesLisp | 2 | -50/+70 | |
2021-07-23 | emit_glasm: Enable ARB_draw_buffers when needed | ReinUsesLisp | 2 | -1/+5 | |
2021-07-23 | emit_glasm: Add support for reading position attributes | ReinUsesLisp | 1 | -3/+13 | |
2021-07-23 | shader_recompiler: GCC fixes | lat9nq | 7 | -58/+55 | |
Fixes members of unnamed union not being accessible, and one function without a declaration. | |||||
2021-07-23 | glasm: Implement rest of shared mem | ameerj | 2 | -35/+29 | |
2021-07-23 | opengl: Initial (broken) support to GLASM shaders | ReinUsesLisp | 3 | -14/+53 | |
2021-07-23 | shader: Use a non-trivial dummy to construct ASL node union | ReinUsesLisp | 1 | -1/+6 | |
2021-07-23 | emit_spirv: Jump to loop body with local variable | ReinUsesLisp | 1 | -1/+1 | |
Silence unused variable warning | |||||
2021-07-23 | glasm: Implement derivative instructions on GLASM | ReinUsesLisp | 2 | -12/+12 | |
2021-07-23 | glasm: Initial (broken) implementation of TEX on GLASM | ReinUsesLisp | 3 | -299/+386 | |
2021-07-23 | glasm: Implement some graphics instructions on GLASM | ReinUsesLisp | 2 | -6/+5 | |
2021-07-23 | glasm: Add Void type to GLASM values | ReinUsesLisp | 3 | -0/+15 | |
2021-07-23 | glasm: Add graphics specific shader declarations to GLASM | ReinUsesLisp | 2 | -6/+63 | |
2021-07-23 | glasm: Implement local memory for glasm | ameerj | 4 | -9/+12 | |
2021-07-23 | emit_spirv: Add missing block in case | ReinUsesLisp | 1 | -1/+2 | |
2021-07-23 | glasm: Initial implementation of phi nodes on GLASM | ReinUsesLisp | 12 | -25/+117 | |
2021-07-23 | glasm: Write result to scalar on integer comparison instructions | ReinUsesLisp | 1 | -10/+10 | |
2021-07-23 | glasm: Declare NV_shader_thread_group when needed | ReinUsesLisp | 1 | -3/+4 | |
2021-07-23 | vk_update_descriptor: Properly initialize payload on the update descriptor queue | ReinUsesLisp | 1 | -1/+3 | |
2021-07-23 | glasm: Rework control flow introducing a syntax list | ReinUsesLisp | 33 | -505/+437 | |
This commit regresses VertexA shaders, their transformation pass has to be adapted to the new control flow. | |||||
2021-07-23 | glasm: Implement Storage atomics | ameerj | 5 | -109/+156 | |
StorageAtomicExchangeU64 is failing test seemingly due to failure storing 64-bit result into the register | |||||
2021-07-23 | glasm: Ensure reg alloc order across compilers on GLASM | ReinUsesLisp | 1 | -11/+14 | |
Use a struct constructor to serialize register allocation arguments to ensure registers are allocated in the same order regardless of the compiler used. The A and B functions can be called in any order when passed as arguments to "foo": foo(A(), B()) But the order is guaranteed for curly-braced constructor calls in classes: Foo{A(), B()} Use this to get consistent behavior. | |||||
2021-07-23 | glasm: Enable unintentionally disabled register aliasing on GLASM | ReinUsesLisp | 1 | -16/+11 | |
2021-07-23 | glasm: Review all GLASM insts to be aware of register aliasing | ReinUsesLisp | 4 | -20/+51 | |
2021-07-23 | glasm: Implement shuffle and vote instructions on GLASM | ReinUsesLisp | 10 | -100/+166 | |
2021-07-23 | glasm: Add MUFU instructions to GLASM | ReinUsesLisp | 2 | -21/+22 | |
2021-07-23 | glasm: Implement IAbs64 and INeg64 on GLASM | ReinUsesLisp | 2 | -6/+6 | |
2021-07-23 | shader: Add floating-point rounding to I2F | ReinUsesLisp | 3 | -35/+42 | |
2021-07-23 | glasm: Properly clamp Fp64 on GLASM | ReinUsesLisp | 1 | -6/+6 | |
2021-07-23 | glasm: Fix register allocation when moving immediate on GLASM | ReinUsesLisp | 3 | -42/+89 | |
2021-07-23 | glasm: Implement SelectU64 on GLASM | ReinUsesLisp | 2 | -4/+20 | |
2021-07-23 | glasm: Fix clamps so the min value has priority on NAN on GLASM | ReinUsesLisp | 1 | -12/+15 | |
2021-07-23 | glasm: Fix moving U64 immediates to registers in GLASM | ReinUsesLisp | 2 | -3/+4 | |
2021-07-23 | glasm: Implement storage atomic ops | ameerj | 4 | -305/+358 | |
2021-07-23 | glasm: Add conversion instructions to GLASM | ReinUsesLisp | 9 | -282/+351 | |
2021-07-23 | glasm: Add fp min/max insts and fix store for fp64 on GLASM | ReinUsesLisp | 2 | -10/+8 | |
2021-07-23 | glasm: Add logical instructions on GLASM | ReinUsesLisp | 2 | -12/+12 | |
2021-07-23 | glasm: Remove duplicated Fp64 pack instructions on GLASM | ReinUsesLisp | 1 | -8/+0 | |
2021-07-23 | glasm: Remove unnecesary new white space on Clamp GLASM | ReinUsesLisp | 1 | -4/+4 | |
2021-07-23 | glasm: Add floating-point comparisons on GLASM | ReinUsesLisp | 3 | -120/+116 | |
2021-07-23 | emit_glasm: Implement more integer alu ops | ameerj | 2 | -47/+41 | |
2021-07-23 | glasm: Reimplement bitwise ops and BFI/BFE | ameerj | 4 | -88/+108 | |
2021-07-23 | glasm: Initial GLASM fp64 support | ReinUsesLisp | 9 | -55/+152 | |
2021-07-23 | glasm: Implement GLASM fp16 packing and move bitwise insns | ReinUsesLisp | 4 | -66/+77 | |
2021-07-23 | glasm: Remove unused functions left from rebase | ReinUsesLisp | 1 | -12/+0 | |
2021-07-23 | glasm: Specify namespace when using FormatTo | ReinUsesLisp | 1 | -6/+6 | |
2021-07-23 | glasm: Implement more GLASM composite instructions | ReinUsesLisp | 2 | -54/+63 | |
2021-07-23 | vk_pipeline_cache: Enable int8 and int16 types on Vulkan | ReinUsesLisp | 1 | -0/+2 | |
2021-07-23 | glasm: Make GLASM aware of types | ReinUsesLisp | 12 | -1244/+1380 | |
2021-07-23 | glasm: Use CMP.S for Select32 | ameerj | 3 | -12/+8 | |
also fixes ADD and SUB to use U modifier | |||||
2021-07-23 | glasm: Implement more logical ops | ameerj | 2 | -5/+5 | |
2021-07-23 | glasm: Implement BFI, BFE | ameerj | 4 | -138/+164 | |
Along with implementations of common instructions along the way | |||||
2021-07-23 | glasm: Use BitField instead of C bitfields | ReinUsesLisp | 2 | -8/+12 | |
2021-07-23 | glasm: Remove unused argument in identity instructions on GLASM | ReinUsesLisp | 1 | -7/+7 | |
2021-07-23 | gl_rasterizer: Flush L2 caches before glFlush on GLASM | ReinUsesLisp | 1 | -0/+8 | |
2021-07-23 | glasm: Initial GLASM compute implementation for testing | ReinUsesLisp | 3 | -14/+47 | |
2021-07-23 | glasm: Implement basic GLASM instructions | ReinUsesLisp | 10 | -840/+1173 | |
2021-07-23 | glasm: Changes to GLASM register allocator and emit context | ReinUsesLisp | 4 | -26/+64 | |
2021-07-23 | vk_scheduler: Use locks instead of SPSC a queue | ReinUsesLisp | 2 | -32/+42 | |
This tries to fix a data race where we'd wait forever for the GPU. | |||||
2021-07-23 | vk_query_cache: Wait before reading queries | ReinUsesLisp | 1 | -9/+2 | |
2021-07-23 | vk_master_semaphore: Use fetch_add to increase master semaphore tick | ReinUsesLisp | 2 | -6/+4 | |
2021-07-23 | glasm: Add GLASM backend infrastructure | ReinUsesLisp | 28 | -4/+3115 | |
2021-07-23 | shader: ISET.X implementation | ameerj | 1 | -8/+58 | |
2021-07-23 | gl_shader_cache: Remove code unintentionally committed | ReinUsesLisp | 1 | -3/+0 | |
2021-07-23 | shader: Fixup SPIR-V emit header namespaces | ReinUsesLisp | 1 | -2/+2 | |
2021-07-23 | Move SPIR-V emission functions to their own header | ReinUsesLisp | 26 | -579/+637 | |
2021-07-23 | shader: Optimize NVN Fallthrough | FernandoS27 | 4 | -9/+83 | |
2021-07-23 | shader: Stub SR_AFFINITY | FernandoS27 | 1 | -0/+3 | |
2021-07-23 | shader: Implement Int32 SUATOM/SURED | ameerj | 17 | -6/+733 | |
2021-07-23 | shader: Initial OpenGL implementation | ReinUsesLisp | 38 | -705/+1427 | |
2021-07-23 | spirv: Be aware of NAN unaware drivers | ReinUsesLisp | 1 | -18/+40 | |
2021-07-23 | spirv: Add SSBO read fallbacks when no aliasing is available | ReinUsesLisp | 1 | -37/+99 | |
2021-07-23 | spirv: Add OpKill fallback to demote | ReinUsesLisp | 1 | -2/+6 | |
2021-07-23 | spirv: Do not enable ShaderLayer | ReinUsesLisp | 1 | -3/+0 | |
This is enabled by an extension instead of the capability. | |||||
2021-07-23 | spirv: Enable DemoteToHelperInvocationEXT only when supported | ReinUsesLisp | 1 | -1/+1 | |
2021-07-23 | spirv: Use OriginLowerLeft when requested | ReinUsesLisp | 1 | -1/+5 | |
2021-07-23 | spirv: Only add image operands mask when needed | ReinUsesLisp | 1 | -5/+9 | |
2021-07-23 | spirv: Workaround image unsigned offset bug | ReinUsesLisp | 2 | -9/+26 | |
Workaround bug on Nvidia's OpenGL SPIR-V compiler when using unsigned texture offsets. | |||||
2021-07-23 | spirv: Add int8 and int16 capabilities only when supported | ReinUsesLisp | 1 | -2/+2 | |
2021-07-23 | spirv: Add integer clamping workarounds | ReinUsesLisp | 1 | -4/+34 | |
Workaround more bugs on Nvidia's OpenGL SPIR-V compiler. | |||||
2021-07-23 | spirv: Implement int8 and int16 conversion fallbacks | ReinUsesLisp | 1 | -19/+80 | |
2021-07-23 | spirv: Support OpenGL uniform buffers and change bindings | ReinUsesLisp | 6 | -58/+168 | |
2021-07-23 | spirv: Desambiguate descriptor names | ReinUsesLisp | 1 | -9/+37 | |
Worksaround a bug on Nvidia's OpenGL SPIR-V compiler where names are used for name matching. | |||||
2021-07-23 | shader: Add OpenGL shader profile options | ReinUsesLisp | 1 | -0/+11 | |
2021-07-23 | shader: Remove shader util | ReinUsesLisp | 4 | -176/+0 | |
2021-07-23 | shader: Address feedback | FernandoS27 | 5 | -44/+42 | |
2021-07-23 | shader: Implement VertexA stage | FernandoS27 | 12 | -3/+180 | |
2021-07-23 | shader: Implement delegation of Exit to dispatcher on CFG | FernandoS27 | 2 | -3/+47 | |
2021-07-23 | vk_graphics_pipeline: Fix texture buffer descriptors | ReinUsesLisp | 1 | -7/+8 | |
2021-07-23 | shader: Fix IADD3.CC | ameerj | 1 | -12/+5 | |
2021-07-23 | vk_scheduler: Allow command submission on worker thread | ReinUsesLisp | 8 | -182/+200 | |
This changes how Scheduler::Flush works. It queues the current command buffer to be sent to the GPU but does not do it immediately. The Vulkan worker thread takes care of that. Users will have to use Scheduler::Flush + Scheduler::WaitWorker to get the previous behavior. Scheduler::Finish is unchanged. To avoid waiting on work never queued, Scheduler::Wait sends the current command buffer if that's what the caller wants to wait. | |||||
2021-07-23 | vk_compute_pass: Fix -Wshadow warning | ReinUsesLisp | 1 | -3/+3 | |
2021-07-23 | shader: Move pipeline cache logic to separate files | ReinUsesLisp | 12 | -824/+1095 | |
Move code to separate files to be able to reuse it from OpenGL. This greatly simplifies the pipeline cache logic on Vulkan. Transform feedback state is not yet abstracted and it's still intrusively stored inside vk_pipeline_cache. It will be moved when needed on OpenGL. | |||||
2021-07-23 | vulkan: Defer descriptor set work to the Vulkan thread | ReinUsesLisp | 8 | -79/+69 | |
Move descriptor lookup and update code to a separate thread. Delaying this removes work from the main GPU thread and allows creating descriptor layouts on another thread. This reduces a bit the workload of the main thread when new pipelines are encountered. | |||||
2021-07-23 | vulkan: Rework descriptor allocation algorithm | ReinUsesLisp | 15 | -197/+314 | |
Create multiple descriptor pools on demand. There are some degrees of freedom what is considered a compatible pool to avoid wasting large pools on small descriptors. | |||||
2021-07-23 | vk_graphics_pipeline: Generate specialized pipeline config functions and improve code | ReinUsesLisp | 2 | -31/+230 | |
2021-07-23 | shader: Accelerate pipeline transitions and use dirty flags for shaders | ReinUsesLisp | 9 | -64/+114 | |
2021-07-23 | shader: Fix BFE s32 undefined check | ameerj | 1 | -1/+1 | |
Our unit tests were hitting this exception. | |||||
2021-07-23 | vk_compute_pipeline: Fix index comparison oversight on compute texture buffers | ReinUsesLisp | 1 | -1/+1 | |
2021-07-23 | shader: Fix error checking in bitfieldExtract and implement bitfieldInsert folding | ReinUsesLisp | 1 | -5/+14 | |
2021-07-23 | vulkan_device: Require shaderClipDistance and shaderCullDistance features | ReinUsesLisp | 1 | -2/+4 | |
2021-07-23 | vk_graphics_pipeline: Guard against non-tessellation pipelines using patches | ReinUsesLisp | 1 | -2/+8 | |
2021-07-23 | shader: Fix storage type when reading patches on tess control | ReinUsesLisp | 1 | -1/+2 | |
2021-07-23 | shader: Fix VMNMX selector B | ReinUsesLisp | 1 | -1/+2 | |
2021-07-23 | shader: Fix bugs and build issues on GCC | Rodrigo Locatti | 3 | -4/+4 | |
2021-07-23 | shader: Fix render targets with null attachments | ReinUsesLisp | 2 | -26/+34 | |
2021-07-23 | shader: Increase the maximum number of storage buffers | ReinUsesLisp | 1 | -1/+1 | |
Compute shaders spill uniform buffers on storage buffers, increasing the expected number. | |||||
2021-07-23 | shader: Remove identity removal pass for better build times | ReinUsesLisp | 1 | -1/+0 | |
2021-07-23 | shader: Add more strict validation the pass | ReinUsesLisp | 1 | -0/+42 | |
2021-07-23 | shader: Fix forward referencing identity instructions when inserting phi | ReinUsesLisp | 1 | -11/+13 | |
2021-07-23 | shader: Remove invalidated blocks in dead code elimination pass | ReinUsesLisp | 1 | -3/+6 | |
2021-07-23 | shader: Add missing UndoUse case for GetSparseFromOp | ReinUsesLisp | 1 | -0/+4 | |
2021-07-23 | shader: Require dual source blending | ReinUsesLisp | 1 | -1/+2 | |
2021-07-23 | shader: Simplify code in opcodes.h to fix Intellisense | ReinUsesLisp | 1 | -8/+6 | |
Avoid using std::array to fix Intellisense not properly compiling this code and disabling itself on all files that include it. While we are at it, change the code to use u8 instead of size_t for the number of instructions in an opcode. | |||||
2021-07-23 | shader: Implement indexed textures | ReinUsesLisp | 10 | -157/+284 | |
2021-07-23 | shader: Refactor atomic_operations_global_memory | ameerj | 1 | -44/+36 | |
2021-07-23 | shader: add missing include guard in half_floating_point_helper.h | ameerj | 1 | -0/+2 | |
2021-07-23 | shader: Fix gcc warnings | ReinUsesLisp | 2 | -2/+2 | |
2021-07-23 | shader: Inline common Value getters | ReinUsesLisp | 2 | -109/+102 | |
2021-07-23 | shader: Intrusively store in a block if it's sealed or not | ReinUsesLisp | 2 | -3/+11 | |
2021-07-23 | cmake: Link to common in shader_recompiler | ReinUsesLisp | 1 | -1/+1 | |
2021-07-23 | shader: Improve goto removal algorithm complexity | ReinUsesLisp | 1 | -49/+28 | |
Find sibling node containing a nephew searching from the nephew itself instead of the uncle. | |||||
2021-07-23 | shader: Use memset to reset instruction arguments | ReinUsesLisp | 2 | -4/+7 | |
2021-07-23 | shader: Inline common Value functions into the header | ReinUsesLisp | 2 | -19/+23 | |
2021-07-23 | shader: Move microinstruction header to the value header | ReinUsesLisp | 20 | -181/+162 | |
2021-07-23 | shader: Move siblings check to a separate function and comment them out | ReinUsesLisp | 1 | -16/+21 | |
2021-07-23 | shader: Intrusively store register values in block for SSA pass | ReinUsesLisp | 2 | -21/+53 | |
2021-07-23 | shader: Inline common Opcode and Inst functions | ReinUsesLisp | 4 | -112/+83 | |
2021-07-23 | shader: Inline common IR::Block methods | ReinUsesLisp | 2 | -17/+12 | |
2021-07-23 | shader: Use a small_vector for phi blocks | ReinUsesLisp | 1 | -1/+2 | |
2021-07-23 | shader: Calculate number of arguments in an opcode at compile time | ReinUsesLisp | 1 | -3/+12 | |
2021-07-23 | shader: Implement D3D samplers | ReinUsesLisp | 6 | -49/+127 | |
2021-07-23 | shader: Add constant propagation for arithmetic right shifts | ReinUsesLisp | 1 | -0/+3 | |
2021-07-23 | shader: Simplify code for local memory | ReinUsesLisp | 1 | -6/+11 | |
2021-07-23 | shader: Add NVN storage buffer fallbacks | ReinUsesLisp | 9 | -62/+214 | |
When we can't track the SSBO origin of a global memory instruction, leave it as a global memory operation and assume these pointers are in the NVN storage buffer slots, then apply a linear search in the shader's runtime. | |||||
2021-07-23 | spirv: Fix ViewportMask | ReinUsesLisp | 1 | -1/+2 | |
2021-07-23 | spirv: Replace Constant/ConstantComposite with Const helper | ameerj | 12 | -112/+101 | |
2021-07-23 | shader: Address feedback | FernandoS27 | 2 | -7/+10 | |
2021-07-23 | shader: Implement F2F (Imm) | FernandoS27 | 1 | -2/+28 | |
2021-07-23 | shader: Implement IADD3.CC/.X | FernandoS27 | 1 | -7/+22 | |
2021-07-23 | shader: Address feedback | FernandoS27 | 4 | -7/+4 | |
2021-07-23 | shader: Add coarse derivatives | FernandoS27 | 7 | -8/+28 | |
2021-07-23 | shader: Implement fine derivates constant propagation | FernandoS27 | 9 | -0/+101 | |
2021-07-23 | shader: Implement SR_Y_DIRECTION | FernandoS27 | 10 | -0/+22 | |
2021-07-23 | shader: Fix Phi node types | ReinUsesLisp | 2 | -4/+4 | |
2021-07-23 | shader: Fix memory barriers | ReinUsesLisp | 8 | -62/+30 | |
2021-07-23 | spirv: Fix implicit lod type | ReinUsesLisp | 2 | -1/+5 | |
2021-07-23 | spirv: Use explicit lods outside of fragment shaders | ReinUsesLisp | 1 | -5/+16 | |
2021-07-23 | spirv: Use ConstOffset instead of Offset when possible | ReinUsesLisp | 3 | -21/+67 | |
2021-07-23 | shader: Implement BFE and BFI CC | ameerj | 3 | -14/+17 | |
Fix two bugs in BFI. | |||||
2021-07-23 | shader: Implement SampleMask | ReinUsesLisp | 11 | -2/+22 | |
2021-07-23 | shader: Implement PIXLD.MY_INDEX | ReinUsesLisp | 14 | -5/+71 | |
2021-07-23 | spirv: Bitcast non-F32 output attributes to their type before store | ReinUsesLisp | 1 | -13/+28 | |
2021-07-23 | spirv: Implement ViewportMask with NV_viewport_array2 | ReinUsesLisp | 10 | -0/+32 | |
2021-07-23 | spirv: Bitcast non-F32 attributes to F32 | ReinUsesLisp | 1 | -7/+9 | |
2021-07-23 | shader: Implement PrimitiveId | ReinUsesLisp | 5 | -0/+10 | |
2021-07-23 | shader: Implement tessellation shaders, polygon mode and invocation id | ReinUsesLisp | 28 | -91/+605 | |
2021-07-23 | shader: Mark atomic instructions as writes | ReinUsesLisp | 1 | -0/+27 | |
2021-07-23 | vk_pipeline_cache: Silence GCC warnings | lat9nq | 1 | -0/+2 | |
Silences `-Werror=missing-field-initializers` due to missing initializers. | |||||
2021-07-23 | spirv: Implement image buffers | ReinUsesLisp | 9 | -49/+142 | |
2021-07-23 | spirv: Implement Layer stores | ReinUsesLisp | 6 | -9/+30 | |
2021-07-23 | spirv: Fix alpha test | FernandoS27 | 1 | -0/+5 | |
2021-07-23 | spirv: Fix non-atomic 64-bit store | ameerj | 1 | -1/+1 | |
2021-07-23 | spirv: Implement alpha test | ameerj | 3 | -1/+95 | |
2021-07-23 | shader: Implement transform feedbacks and define file format | ReinUsesLisp | 11 | -23/+272 | |
2021-07-23 | shader: Implement early Z tests | ReinUsesLisp | 3 | -0/+5 | |
2021-07-23 | shader: Document and relax cache control on surface instructions | ReinUsesLisp | 1 | -10/+11 | |
2021-07-23 | spirv: Rework storage buffers and shader memory | ReinUsesLisp | 9 | -500/+581 | |
2021-07-23 | shader: Fix fixed pipeline point size on geometry shaders | ReinUsesLisp | 1 | -10/+18 | |
2021-07-23 | shader: Add constant propagation for *&^| binary operations | ReinUsesLisp | 1 | -0/+12 | |
2021-07-23 | shader: Implement geometry shaders | ReinUsesLisp | 14 | -91/+277 | |
2021-07-23 | shader: Implement OUT | ReinUsesLisp | 10 | -17/+73 | |
2021-07-23 | internal_stage_buffer_entry_read: Remove pragma optimize off | lat9nq | 1 | -2/+0 | |
2021-07-23 | shader: Stub SR_INVOCATION_INFO | ReinUsesLisp | 1 | -2/+5 | |
2021-07-23 | shader: Stub ISBERD | ReinUsesLisp | 3 | -4/+56 | |
2021-07-23 | shader: Fix CC in I2I | ReinUsesLisp | 1 | -0/+2 | |
2021-07-23 | spirv: Define StorageImageWriteWithoutFormat capability when used | ReinUsesLisp | 3 | -0/+9 | |
2021-07-23 | pipeline_helper: Simplify descriptor objects initialization | ReinUsesLisp | 1 | -33/+25 | |
2021-07-23 | shader: Simplify FLO and throw on CC | ReinUsesLisp | 1 | -12/+13 | |
2021-07-23 | shader: Mark blocks with no end branch as unreachable | ReinUsesLisp | 1 | -2/+7 | |
2021-07-23 | shader: Implement LOP CC | ReinUsesLisp | 3 | -12/+29 | |
2021-07-23 | shader: Implement SR_THREAD_KILL | ReinUsesLisp | 10 | -0/+22 | |
2021-07-23 | shader: Apply sign bit in FCMP (imm) | ReinUsesLisp | 1 | -1/+1 | |
2021-07-23 | shader: Implement ATOM/S and RED | ameerj | 21 | -19/+1745 | |
2021-07-23 | nsight_aftermath_tracker: Report used shaders to Nsight Aftermath | ReinUsesLisp | 6 | -16/+20 | |
2021-07-23 | spirv: Move phi node patching to a separate function | ReinUsesLisp | 1 | -13/+16 | |
2021-07-23 | spirv: Guard against typeless image reads on unsupported devices | ReinUsesLisp | 6 | -1/+17 | |
2021-07-23 | shader: Move LaneId to the warp emission file and fix AMD | ReinUsesLisp | 5 | -7/+11 | |
2021-07-23 | vk_rasterizer: Request outside render pass execution context for compute | ReinUsesLisp | 1 | -0/+1 | |
2021-07-23 | pipeline_helper: Add missing [[maybe_unused]] | ReinUsesLisp | 1 | -1/+1 | |
2021-07-23 | spirv: Fix forward declarations on phi nodes | ReinUsesLisp | 1 | -47/+25 | |
2021-07-23 | shader: Mark ImageWrite with side effects | ReinUsesLisp | 1 | -0/+3 | |
2021-07-23 | shader: Implement CC for ISET, FSET, PSET, CSET, and DSET | FernandoS27 | 18 | -13/+136 | |
Throw when other instructions are missing CC. | |||||
2021-07-23 | shader: Remove outdated comment in F2I | ReinUsesLisp | 1 | -4/+0 | |
2021-07-23 | shader: Implement SULD and SUST | ReinUsesLisp | 31 | -202/+732 | |
2021-07-23 | shader: Fix Windows build issues | ReinUsesLisp | 1 | -1/+1 | |
2021-07-23 | shader: Address feedback + clang format | lat9nq | 12 | -24/+22 | |
2021-07-23 | shader_recompiler,video_core: Cleanup some GCC and Clang errors | lat9nq | 66 | -313/+308 | |
Mostly fixing unused *, implicit conversion, braced scalar init, fpermissive, and some others. Some Clang errors likely remain in video_core, and std::ranges is still a pertinent issue in shader_recompiler shader_recompiler: cmake: Force bracket depth to 1024 on Clang Increases the maximum fold expression depth thread_worker: Include condition_variable Don't use list initializers in control flow Co-authored-by: ReinUsesLisp <reinuseslisp@airmail.cc> | |||||
2021-07-23 | shader: Fix FCMP immediate variant | ReinUsesLisp | 1 | -1/+9 | |
2021-07-23 | shader: Fix dangling labels | ReinUsesLisp | 1 | -0/+5 | |
2021-07-23 | shader: Interact texture buffers with buffer cache | ReinUsesLisp | 17 | -148/+333 | |
2021-07-23 | shader: Fix F2I | ReinUsesLisp | 1 | -1/+1 | |
2021-07-23 | shader: Fix TextureGrad | ReinUsesLisp | 1 | -1/+1 | |
2021-07-23 | shader: Implement texture buffers | ReinUsesLisp | 10 | -35/+154 | |
2021-07-23 | shader: Address feedback | FernandoS27 | 5 | -53/+54 | |
2021-07-23 | shader: Implement indexed Position and ClipDistances | FernandoS27 | 3 | -11/+100 | |
2021-07-23 | shader: Implement indexed attributes | FernandoS27 | 12 | -35/+279 | |
2021-07-23 | shader: Implement AL2P | FernandoS27 | 3 | -4/+36 | |
2021-07-23 | shader: Fix BRX tracking | FernandoS27 | 2 | -3/+4 | |
2021-07-23 | vk_pipeline_cache: Fix num of pipeline workers on weird platforms | ReinUsesLisp | 1 | -1/+1 | |
2021-07-23 | shader: Move recursive SSA rewrite to the heap | ReinUsesLisp | 1 | -29/+89 | |
2021-07-23 | shader: Fix ShadowCube declaration type, set number of pipeline threads based on hardware | FernandoS27 | 2 | -2/+4 | |
2021-07-23 | shader: Fix splits on blocks using indirect branches | ReinUsesLisp | 3 | -17/+38 | |
2021-07-23 | shader: Eliminate orphan blocks more efficiently | ReinUsesLisp | 1 | -7/+8 | |
2021-07-23 | shader: Add subgroup masks | ReinUsesLisp | 10 | -45/+169 | |
2021-07-23 | shader: Implement BAR and fix memory barriers | ReinUsesLisp | 7 | -5/+79 | |
2021-07-23 | shader: Abstract breadth searches and use the abstraction | ReinUsesLisp | 4 | -104/+106 | |
2021-07-23 | shader: Reimplement GetCbufU64 as GetCbufU32x2 | ReinUsesLisp | 9 | -22/+21 | |
It may generate better code on some compilers and it's easier to handle. | |||||
2021-07-23 | vk_compute_pass: Fix compute passes | ReinUsesLisp | 3 | -23/+19 | |
2021-07-23 | shader: Remove atomic flags and use mutex + cond variable for pipelines | ReinUsesLisp | 4 | -11/+32 | |
2021-07-23 | shader: Remove unused header in VOTE | ReinUsesLisp | 1 | -2/+0 | |
2021-07-23 | vk_pipeline_cache: Remove unnecesary scope in pipeline cache locking | ReinUsesLisp | 1 | -15/+12 | |
2021-07-23 | shader: Rework global memory tracking to use breadth-first search | ReinUsesLisp | 1 | -69/+80 | |
2021-07-23 | shader: Fix fp16 merge when using native fp16 | ReinUsesLisp | 1 | -3/+3 | |
2021-07-23 | shader: Fix FADD32I | ReinUsesLisp | 1 | -6/+4 | |
2021-07-23 | shader: Fix undetected bug from review | FernandoS27 | 1 | -0/+3 | |
2021-07-23 | shader: Address feedback | FernandoS27 | 3 | -13/+16 | |
2021-07-23 | shader: "Implement" NOP | FernandoS27 | 1 | -1/+1 | |
2021-07-23 | vk_pipeline_cache: Small fixes to the pipeline cache | FernandoS27 | 1 | -10/+14 | |
2021-07-23 | shader: Address Feedback | FernandoS27 | 16 | -211/+60 | |
2021-07-23 | shader: Implement SR_LaneId | FernandoS27 | 7 | -0/+15 | |
2021-07-23 | shader: Fix shared memory on cool drivers | FernandoS27 | 1 | -0/+1 | |
2021-07-23 | shader: Implement MEMBAR | FernandoS27 | 9 | -11/+121 | |
2021-07-23 | shader: Improve VOTE.VTG stub | FernandoS27 | 7 | -4/+147 | |
2021-07-23 | shader: Mark SSBOs as written when they are | FernandoS27 | 4 | -4/+32 | |
2021-07-23 | shader: Implement ViewportIndex | FernandoS27 | 8 | -2/+33 | |
2021-07-23 | shader: Stub TLD4's PTP when it isn't constant | FernandoS27 | 1 | -1/+2 | |
2021-07-23 | shader: Stub VOTE.VTG | FernandoS27 | 4 | -4/+15 | |
2021-07-23 | shader: Fold composite extract | FernandoS27 | 1 | -0/+62 | |
2021-07-23 | shader: Fold comparisons and Pack/Unpack16 | FernandoS27 | 1 | -1/+41 | |
2021-07-23 | shader: Fix branches to visited virtual blocks | ReinUsesLisp | 2 | -0/+12 | |
2021-07-23 | vulkan: Serialize pipelines on a separate thread | ReinUsesLisp | 2 | -67/+64 | |
2021-07-23 | vulkan: Create pipeline layouts in separate threads | ReinUsesLisp | 7 | -63/+65 | |
2021-07-23 | vulkan: Build pipelines in parallel at runtime | ReinUsesLisp | 9 | -165/+197 | |
Wait from the worker thread for a pipeline to build before binding it to the command buffer. This allows queueing pipelines to multiple threads. | |||||
2021-07-23 | shader: Fix dependency on identity removal pass | ReinUsesLisp | 2 | -3/+8 | |
2021-07-23 | shader: Fix constant propagation to use reverse post order | ReinUsesLisp | 1 | -1/+2 | |
2021-07-23 | shader: Implement LDG .U.128 as .128 | ReinUsesLisp | 1 | -3/+2 | |
2021-07-23 | shader: Unroll "using enum" for opcode declarations | ReinUsesLisp | 1 | -1/+27 | |
2021-07-23 | vk_pipeline_cache: Name SPIR-V modules | ReinUsesLisp | 1 | -1/+11 | |
2021-07-23 | spirv: Remove unnecesary variable for clip distances | ReinUsesLisp | 2 | -6/+2 | |
2021-07-23 | shader: Implement ClipDistance | FernandoS27 | 5 | -0/+36 | |
2021-07-23 | shader: Fix TXD | FernandoS27 | 2 | -2/+2 | |
2021-07-23 | shader: Address feedback | FernandoS27 | 5 | -53/+49 | |
2021-07-23 | shader: Always pass a lod for TexelFetch | ReinUsesLisp | 3 | -25/+17 | |
2021-07-23 | shader: Implement TXD | FernandoS27 | 4 | -10/+183 | |
2021-07-23 | shader: Implement ImageGradient | FernandoS27 | 8 | -2/+84 | |
2021-07-23 | shader: Implement TMML partially | FernandoS27 | 6 | -13/+137 | |
2021-07-23 | shader,spirv: Implement ImageQueryLod. | FernandoS27 | 9 | -1/+38 | |
2021-07-23 | shader: Implement TLDS | FernandoS27 | 3 | -4/+253 | |
2021-07-23 | shader: Implement TLD | FernandoS27 | 8 | -16/+174 | |
2021-07-23 | spirv: Add fixed pipeline point size | ReinUsesLisp | 4 | -1/+11 | |
2021-07-23 | shader: Add PointCoord attribute | FernandoS27 | 5 | -0/+16 | |
2021-07-23 | shader: Add PointSize attribute | ameerj | 5 | -0/+13 | |
2021-07-23 | shader: Store type of phi nodes in flags | ReinUsesLisp | 3 | -2/+11 | |
This is needed because pseudo-instructions where invalidated. | |||||
2021-07-23 | shader: Fix indirect branches to scheduler instructions | ReinUsesLisp | 3 | -7/+17 | |
2021-07-23 | spirv: Fix default output attribute initialization | ReinUsesLisp | 1 | -3/+3 | |
2021-07-23 | shader: Add missing new lines | ReinUsesLisp | 1 | -0/+2 | |
2021-07-23 | shader: Implement FSWZADD | ameerj | 14 | -4/+87 | |
2021-07-23 | shader: Implement BRX | FernandoS27 | 21 | -48/+437 | |
2021-07-23 | shader: Fix alignment checks on RZ | ReinUsesLisp | 1 | -1/+1 | |
2021-07-23 | shader: Implement I2I CC | ameerj | 3 | -24/+45 | |
2021-07-23 | shader: Implement I2I SAT | ameerj | 6 | -10/+52 | |
2021-07-23 | vk_pipeline_cache: Fix size hashing of shaders | ReinUsesLisp | 1 | -8/+7 | |
2021-07-23 | shader: Fix ISCADD logic for PO/CC | ameerj | 1 | -7/+8 | |
2021-07-23 | shader: Implement LDS, STS, LDL, and STS and use SPIR-V 1.4 when available | ReinUsesLisp | 20 | -36/+730 | |
2021-07-23 | shader: Implement ISCADD CC | ameerj | 1 | -1/+4 | |
2021-07-23 | shader: Implement VMAD, VMNMX, VSETP | ameerj | 9 | -23/+319 | |
2021-07-23 | shader: Add missing I2I exception when CC is used | ReinUsesLisp | 1 | -0/+4 | |
2021-07-23 | shader: Better interpolation and disabled attributes support | ReinUsesLisp | 9 | -25/+101 | |
2021-07-23 | spirv: Remove dependencies on Environment when generating SPIR-V | ReinUsesLisp | 5 | -16/+15 | |
2021-07-23 | vk_pipeline_cache: Fix pipeline and shader caches | ReinUsesLisp | 2 | -6/+21 | |
2021-07-23 | shader: Implement front face | ReinUsesLisp | 5 | -0/+12 | |
2021-07-23 | shader: Fix structured control flow on KIL instructions | ReinUsesLisp | 2 | -3/+7 | |
This could potentially leave unvisited blocks, leading to illegal phi nodes. | |||||
2021-07-23 | shader: Fix TXQ | FernandoS27 | 1 | -1/+1 | |
2021-07-23 | shader: Fix rasterizer integration order issues | ReinUsesLisp | 3 | -7/+6 | |
2021-07-23 | shader: Implement TXQ and fix FragDepth | ReinUsesLisp | 15 | -21/+264 | |
2021-07-23 | shader: Refactor PTP and other minor changes | ReinUsesLisp | 14 | -123/+67 | |
2021-07-23 | shader: Add IR opcode for ImageFetch | FernandoS27 | 7 | -5/+55 | |
2021-07-23 | shader: Implement TLD4.PTP | FernandoS27 | 15 | -28/+111 | |
2021-07-23 | shader: Fix Array Indices in TEX/TLD4 | FernandoS27 | 2 | -6/+6 | |
2021-07-23 | shader: Implement FragDepth | FernandoS27 | 2 | -1/+7 | |
2021-07-23 | shader: Implement TLD4S. | FernandoS27 | 3 | -4/+134 | |
2021-07-23 | shader: Implement TLD4 and TLD4_B | FernandoS27 | 13 | -11/+315 | |
2021-07-23 | shader: Implement SHFL | ameerj | 16 | -69/+284 | |
2021-07-23 | shader: Track first bindless argument instead of the instruction itself | ReinUsesLisp | 1 | -1/+1 | |
2021-07-23 | shader: Properly insert Prologue instruction | ReinUsesLisp | 1 | -1/+2 | |
2021-07-23 | shader: Minor style nits | ReinUsesLisp | 1 | -2/+4 | |
2021-07-23 | shader: Fix F2I | FernandoS27 | 10 | -9/+147 | |
2021-07-23 | shader: Implement NDC [-1, 1], attribute types and default varying initialization | ReinUsesLisp | 15 | -43/+186 | |
2021-07-23 | shader: Fix use-after-free bug in object_pool | ReinUsesLisp | 1 | -3/+3 | |
2021-07-23 | shader: Implement VOTE | ameerj | 18 | -6/+182 | |
2021-07-23 | vk_pipeline_cache: Fix ReleaseContents order | ReinUsesLisp | 1 | -2/+2 | |
2021-07-23 | shader: Fix TEX mask | ReinUsesLisp | 1 | -1/+3 | |
2021-07-23 | vk_pipeline_cache: Add pipeline cache | ReinUsesLisp | 2 | -0/+7 | |
2021-07-23 | vk_pipeline_cache: Add pipeline cache | ReinUsesLisp | 8 | -106/+347 | |
2021-07-23 | shader: Fold interpolation multiplications | ReinUsesLisp | 1 | -0/+34 | |
2021-07-23 | shader: Better but still partial interpolation support | ReinUsesLisp | 1 | -5/+7 | |
2021-07-23 | shader: Implement DMNMX, DSET, DSETP | ameerj | 16 | -59/+210 | |
2021-07-23 | shader: Implement FADD32I | FernandoS27 | 1 | -2/+15 | |
2021-07-23 | shader: Implement F2F | FernandoS27 | 6 | -20/+192 | |
2021-07-23 | shader: Add missing fp64 usage flags | ReinUsesLisp | 1 | -0/+34 | |
2021-07-23 | shader: Implement DMUL and DFMA | ameerj | 8 | -30/+111 | |
Also add a missing const on DADD | |||||
2021-07-23 | shader: Add FP64 register load/store helpers | ameerj | 3 | -21/+24 | |
2021-07-23 | shader: Add support for fp16 comparisons and misc fixes | ReinUsesLisp | 11 | -14/+56 | |
2021-07-23 | shader: Fix floating point comparison for FP16 | FernandoS27 | 5 | -32/+56 | |
2021-07-23 | shader: Implement HSETP2 | FernandoS27 | 3 | -12/+117 | |
2021-07-23 | shader: Implement HSET2 | FernandoS27 | 5 | -14/+119 | |
2021-07-23 | shader: Implement HMUL2 | FernandoS27 | 3 | -16/+144 | |
2021-07-23 | shader: Implement HFMA2 | FernandoS27 | 5 | -20/+192 | |
2021-07-23 | spirv: Implement VertexId and InstanceId, refactor code | ReinUsesLisp | 10 | -144/+244 | |
2021-07-23 | shader: Refactor half floating instructions | FernandoS27 | 4 | -58/+84 | |
2021-07-23 | shader: Implement I2F | ReinUsesLisp | 17 | -70/+429 | |
2021-07-23 | shader: Implement ISCADD (imm) | ReinUsesLisp | 1 | -2/+2 | |
2021-07-23 | shader: Implement LOP32I | ReinUsesLisp | 2 | -18/+45 | |
2021-07-23 | shader: Add partial rasterizer integration | ReinUsesLisp | 54 | -566/+1927 | |
2021-07-23 | shader: Implement DADD | ameerj | 8 | -14/+132 | |
2021-07-23 | shader: Implement CSET and CSETP | ameerj | 6 | -15/+114 | |
2021-07-23 | shader: Reorder phi nodes when redefined as undefined opcodes | ReinUsesLisp | 1 | -1/+9 | |
2021-07-23 | shader: Fix instruction transitions in and out of Phi | ReinUsesLisp | 1 | -9/+11 | |
2021-07-23 | shader: Implement FSET and FSETP | ameerj | 9 | -94/+204 | |
Also fix oversight with adding SignedZeroInfNanPreserve execution mode. | |||||
2021-07-23 | shader: Implement TEXS | ReinUsesLisp | 8 | -7/+287 | |
2021-07-23 | shader: Implement CAL inlining function calls | ReinUsesLisp | 24 | -330/+286 | |
2021-07-23 | spirv: Add SignedZeroInfNanPreserve logic | ameerj | 3 | -0/+12 | |
2021-07-23 | shader: Implement FMNMX | ameerj | 8 | -25/+101 | |
And add a const in FCMP | |||||
2021-07-23 | shader: Fix rebase issue | ReinUsesLisp | 1 | -1/+0 | |
2021-07-23 | shader: Implement FCMP | ameerj | 9 | -50/+203 | |
still need to configure some settings for NV denorm flush and intel NaN | |||||
2021-07-23 | shader: Partial implementation of LDC | ReinUsesLisp | 16 | -50/+405 | |
2021-07-23 | shader: Initial support for textures and TEX | ReinUsesLisp | 33 | -342/+1489 | |
2021-07-23 | shader: Implement R2P | ameerj | 8 | -15/+88 | |
2021-07-23 | shader: Implement SHF | ameerj | 8 | -31/+119 | |
2021-07-23 | shader: Implement LEA | ameerj | 9 | -29/+136 | |
2021-07-23 | shader: Deduplicate HADD2 code | ReinUsesLisp | 1 | -19/+16 | |
2021-07-23 | shader: Implement I2I | ameerj | 3 | -12/+100 | |
2021-07-23 | shader: Implement HADD2 | ReinUsesLisp | 12 | -42/+400 | |
2021-07-23 | shader: Implement LOP and LOP3 | ameerj | 8 | -31/+227 | |
2021-07-23 | shader: Implement IADD3 | ameerj | 3 | -12/+104 | |
2021-07-23 | shader: Implement PSETP | ameerj | 4 | -5/+40 | |
2021-07-23 | Implement PSET, refactor common comparison funcs | ameerj | 9 | -101/+88 | |
2021-07-23 | shader: Implement FLO | ameerj | 8 | -18/+75 | |
2021-07-23 | shader: Implement ISET, add common_funcs | ameerj | 8 | -50/+150 | |
2021-07-23 | shader: Make IMNMX, SHR, SEL stylistically more consistent | ameerj | 3 | -5/+5 | |
2021-07-23 | shader: Implement ICMP | ameerj | 3 | -16/+84 | |
2021-07-23 | shader: Implement IMNMX | ameerj | 8 | -12/+105 | |
2021-07-23 | shader: Implement BFI | ameerj | 3 | -16/+57 | |
2021-07-23 | shader: Implement BFE | ameerj | 3 | -12/+67 | |
2021-07-23 | shader: Implement POPC | ameerj | 8 | -12/+59 | |
2021-07-23 | shader: Implement SHR | ameerj | 8 | -18/+80 | |
2021-07-23 | shader: Implement SEL | ameerj | 4 | -16/+53 | |
2021-07-23 | spirv: Move phi arguments emit to a separate function | ReinUsesLisp | 1 | -27/+27 | |
2021-07-23 | shader: Avoid infinite recursion when tracking global memory | ReinUsesLisp | 1 | -5/+26 | |
2021-07-23 | shader: Fix conditional execution of exit instructions | ReinUsesLisp | 2 | -5/+6 | |
2021-07-23 | spirv: Add support for self-referencing phi nodes | ReinUsesLisp | 1 | -3/+10 | |
2021-07-23 | shader: Fix control flow | ReinUsesLisp | 8 | -20/+39 | |
2021-07-23 | shader: Implement more of XMAD and FFMA32I and fix XMAD.CBCC | ReinUsesLisp | 5 | -28/+76 | |
2021-07-23 | shader: FMUL, select, RRO, and MUFU fixes | ReinUsesLisp | 18 | -119/+507 | |
2021-07-23 | shader: Fix MOV(reg), add SHL variants and emit neg and abs instructions | ReinUsesLisp | 4 | -11/+11 | |
2021-07-23 | spirv: Fixes and Intel specific workarounds | ReinUsesLisp | 11 | -32/+44 | |
2021-07-23 | shader: Rename, implement FADD.SAT and P2R (imm) | ReinUsesLisp | 18 | -127/+213 | |
2021-07-23 | shader: Add denorm flush support | ReinUsesLisp | 20 | -93/+260 | |
2021-07-23 | spirv: Add lower fp16 to fp32 pass | ReinUsesLisp | 32 | -285/+479 | |
2021-07-23 | shader: Primitive Vulkan integration | ReinUsesLisp | 43 | -3036/+1003 | |
2021-07-23 | shader: Remove old shader management | ReinUsesLisp | 80 | -19568/+54 | |
2021-07-23 | shader: Add XMAD multiplication folding optimization | ReinUsesLisp | 1 | -5/+77 | |
2021-07-23 | shader: Simplify ISCADD | ReinUsesLisp | 1 | -6/+1 | |
2021-07-23 | shader: Add utility to resolve identities on a value | ReinUsesLisp | 2 | -0/+8 | |
2021-07-23 | spirv: Implement EmitIdentity | ReinUsesLisp | 2 | -3/+3 | |
2021-07-23 | spirv: Initial bindings support | ReinUsesLisp | 22 | -292/+671 | |
2021-07-23 | shader: Improve object pool | ReinUsesLisp | 3 | -50/+66 | |
2021-07-23 | shader: Fix tracking | ReinUsesLisp | 1 | -50/+72 | |
2021-07-23 | shader: Add support for forward declarations | ReinUsesLisp | 10 | -68/+79 | |
2021-07-23 | shader: Support SSA loops on IR | ReinUsesLisp | 12 | -46/+150 | |
2021-07-23 | shader: Misc fixes | ReinUsesLisp | 10 | -89/+104 | |
2021-07-23 | shader: Initial implementation of an AST | ReinUsesLisp | 32 | -589/+1345 | |
2021-07-23 | spirv: Initial SPIR-V support | ReinUsesLisp | 20 | -3299/+1400 | |
2021-07-23 | shader: Better constant folding | ReinUsesLisp | 2 | -13/+48 | |
2021-07-23 | shader: Properly store phi on Inst | ReinUsesLisp | 6 | -75/+132 | |
2021-07-23 | shader: Add pools and rename files | ReinUsesLisp | 30 | -108/+255 | |
2021-07-23 | shader: Make typed IR | ReinUsesLisp | 19 | -269/+495 | |
2021-07-23 | shader: Remove illegal character in SSA pass | ReinUsesLisp | 1 | -1/+1 | |
2021-07-23 | shader: Constant propagation and global memory to storage buffer | ReinUsesLisp | 17 | -63/+652 | |
2021-07-23 | shader: Initial instruction support | ReinUsesLisp | 28 | -334/+1450 | |
2021-07-23 | shader: SSA and dominance | ReinUsesLisp | 24 | -77/+570 | |
2021-07-23 | shader: Initial recompiler work | ReinUsesLisp | 57 | -0/+7061 | |
2021-07-23 | thread_worker: Fix compile time error | ameerj | 1 | -1/+1 | |
state is unused in the branch where with_state is false | |||||
2021-07-22 | yuzu_cmd: Make use of fullscreen_mode setting | lat9nq | 3 | -15/+34 | |
Reverts 48259de0c1a6a1aca77eec31cb8aca5ca2b680dd to the previous hierarchy and fixes the resolution issue with this fullscreen mode. yuzu-cmd will now read the fullscreen_mode setting and use it appropriately. | |||||
2021-07-21 | yuzu-cmd: Fullscreen Improvements (#6656) | san | 4 | -9/+13 | |
* emu_window_sdl2_vk: Use the generated SDL config On Linux, due to the way we include SDL2 as a submodule, it makes it difficult for us to specify which SDL_config.h we intended to include. Before, CMake would default to the dummy one included with SDL and ignore the generated one. This tells CMake to use the generated one. In addition, we define USING_GENERATED_CONFIG_H to throw an error in case the dummy config is used by accident. Fixes Vulkan not working on Linux yuzu-cmd. * emu_window_sdl2_vk: Specify the window manager if it should be supported The original language "not implemented" is wrong if the implementation exists but is not compiled. This causes a bit of a debugging headache when it goes wrong. Log it if the window manager is known before exiting. * sdl_impl, emu_window: Remove clang ignore Fixed upstream by libsdl-org/SDL@25fc40b0bd44c484051064bc6b945ea9943f88dd * Enable fullscreen support for Vulkan on yuzu-cmd Hooked up the existing SDL2 logic for fullscreen support in the Vulkan window of yuzu-cmd. * Change fullscreen logic to attempt desktop resolution first on yuzu-cmd Changed the order in which we attempt to switch to fullscreen. First try desktop resolution first, if it fails fall back to streched fullscreen using windowed resolution. Co-authored-by: lat9nq <22451773+lat9nq@users.noreply.github.com> Co-authored-by: san <san+gitkraken@smederijmerlijn.nl> | |||||
2021-07-21 | hle: service: kernel_helpers: Remove unnecessary pragma once. | bunnei | 1 | -2/+0 | |
2021-07-21 | hle: kernel: svc: Remove part of ExitProcess. | bunnei | 1 | -5/+0 | |
- ExitProcess is not actually implemented either way, and this needs more work before we implement. | |||||
2021-07-21 | hle: service: nvdrv: Remove unused kernel reference. | bunnei | 1 | -1/+0 | |
2021-07-21 | hle: service: hid: npad: Remove unused kernel reference. | bunnei | 1 | -1/+0 | |
2021-07-21 | hle: kernel: Track and release server sessions, and protect methods with locks. | bunnei | 4 | -13/+82 | |
2021-07-21 | hle: kernel: KProcess: Change process termination assert to a warning. | bunnei | 1 | -1/+1 | |
- Since we do not implement multiprocess right now, this should not be a crashing assert. | |||||
2021-07-21 | hle: kernel: Ensure current running process is closed. | bunnei | 1 | -5/+6 | |
2021-07-21 | hle: kernel: Ensure global handle table is finalized before closing. | bunnei | 1 | -0/+1 | |
2021-07-21 | kernel: svc: ConnectToNamedPort: Close extra reference to port. | bunnei | 1 | -0/+1 | |
2021-07-21 | hle: service: sm: Refactor to better manage ports. | bunnei | 4 | -45/+47 | |
2021-07-21 | hle: kernel: k_process: Close the handle table on shutdown. | bunnei | 1 | -0/+3 | |
2021-07-21 | hle: kernel: k_process: Close main thread reference after it is inserted into handle table. | bunnei | 1 | -0/+3 | |
2021-07-21 | hle: kernel: Ensure global handle table is initialized. | bunnei | 1 | -0/+1 | |
2021-07-21 | hle: service: Add a helper module for managing kernel objects. | bunnei | 10 | -20/+146 | |
2021-07-21 | hle: kernel: Provide methods for tracking dangling kernel objects. | bunnei | 4 | -2/+43 | |
2021-07-20 | gl_buffer_cache: Use glClearNamedBufferSubData:GL_RED instead of GL_RGBA | ReinUsesLisp | 1 | -1/+1 | |
Avoids reading out of bounds from the stack. | |||||
2021-07-20 | buffer_cache: Simplify clear logic | ReinUsesLisp | 1 | -6/+2 | |
Use existing helper functions and avoid looping when only one buffer has to be active. | |||||
2021-07-20 | vk_texture_cache: Use VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL when possible | ReinUsesLisp | 1 | -21/+35 | |
Silences performance warnings generated from validation layers on each frame. | |||||
2021-07-20 | gl_texture_cache: Workaround slow PBO downloads on radeonsi | ReinUsesLisp | 1 | -1/+1 | |
There's an optimization bug on non-git mesa versions where not specifying GL_CLIENT_STORAGE_BIT causes very slow reads on the CPU side. Add this bit for all vendors. | |||||
2021-07-20 | uuid: Directly compare UUID instead of checking per element | Chloe Marcec | 1 | -3/+2 | |
We can now update this for C++20 | |||||
2021-07-20 | vk_buffer_cache: Fix quad index array with 0 vertices (#6627) | Fernando S | 1 | -0/+7 | |
2021-07-20 | input/sdl_impl: fix rumble support on DualSense. (#6683) | Nicolas Jallamion | 1 | -2/+2 | |
- value return can be different 0, is not error is normal, error is only -1. | |||||
2021-07-20 | applet_controller: Add preliminary support for version 8 | Morph | 2 | -3/+33 | |
Version 8 adds support for key remapping introduced in FW 11.0, we will not be implementing this for now. | |||||
2021-07-20 | bootmanager: Create a dummy render widget | Morph | 1 | -0/+6 | |
This ensures that Qt positions the render window at the correct position on initializing the respective render backends. | |||||
2021-07-20 | file_sys: Support load game collection (#6582) | Feng Chen | 17 | -108/+171 | |
Adds support for loading games with multiple programs embedded within such as the Dragon Quest 1+2+3 Collection | |||||
2021-07-19 | Update src/video_core/renderer_vulkan/vk_texture_cache.cpp | yzct12345 | 1 | -1/+1 | |
Co-authored-by: Vitor K <vitor-kiguchi@hotmail.com> | |||||
2021-07-19 | Update src/video_core/renderer_vulkan/vk_texture_cache.cpp | yzct12345 | 1 | -1/+1 | |
Co-authored-by: Vitor K <vitor-kiguchi@hotmail.com> | |||||
2021-07-18 | Ignore wrong blit format | yzct12345 | 1 | -1/+4 | |
2021-07-18 | vk_texture_cache: Finalize renderpass when downloading images | ReinUsesLisp | 1 | -0/+1 | |
2021-07-18 | vk_compute_pass: Fix pipeline barriers on non-initialized ASTC images | ReinUsesLisp | 1 | -2/+3 | |
2021-07-18 | vk_compute_pass: Fix ASTC buffer setup synchronization | ReinUsesLisp | 1 | -14/+14 | |
2021-07-18 | texture_cache/util: Fix size calculations of multisampled images | ReinUsesLisp | 1 | -53/+33 | |
On the texture cache we handle multisampled images by keeping their real size in samples (e.g. 1920x1080 with 4 samples is 3840x2160). This works nicely with size matches and other comparisons, but the calculation for guest sizes was not having this in mind, and the size was being multiplied (again) by the number of samples per dimension. For example a 3840x2160 texture cache image had its width and height multiplied by 2, resulting in a much larger texture. Fix this issue. - Fixes performance regression on cooking related titles when an unrelated bug was fixed. | |||||
2021-07-18 | texture_cache: Always prepare image views on render targets | ReinUsesLisp | 1 | -0/+6 | |
Images used as render targets were not being "prepared", causing desynchronizations on the texture cache. Needs #6669 to avoid performance regressions on certain cooking titles. - Fixes black shadows on Age of Calamity. | |||||
2021-07-17 | configure/ui: Add sliders for trigger buttons | german77 | 2 | -0/+78 | |
2021-07-17 | input_common: Fix mouse panning behaivour | german77 | 3 | -5/+8 | |
2021-07-16 | sdl_impl, emu_window: Remove clang ignore | lat9nq | 4 | -33/+0 | |
Fixed upstream by libsdl-org/SDL@25fc40b0bd44c484051064bc6b945ea9943f88dd | |||||
2021-07-16 | emu_window_sdl2_vk: Specify the window manager if it should be supported | lat9nq | 1 | -0/+15 | |
The original language "not implemented" is wrong if the implementation exists but is not compiled. This causes a bit of a debugging headache when it goes wrong. Log it if the window manager is known before exiting. | |||||
2021-07-16 | emu_window_sdl2_vk: Use the generated SDL config | lat9nq | 2 | -0/+11 | |
On Linux, due to the way we include SDL2 as a submodule, it makes it difficult for us to specify which SDL_config.h we intended to include. Before, CMake would default to the dummy one included with SDL and ignore the generated one. This tells CMake to use the generated one. In addition, we define USING_GENERATED_CONFIG_H to throw an error in case the dummy config is used by accident. Fixes Vulkan not working on Linux yuzu-cmd. | |||||
2021-07-16 | configure_audio: Fix volume clamping to 0 | Morph | 1 | -6/+6 | |
2021-07-16 | yuzu_cmd: Add missing or update current settings | lat9nq | 2 | -4/+112 | |
Many settings in common/settings.h are missing from yuzu-cmd, either they were added to default_ini.h but not read in, or vice versa, or the setting was altogether omitted from yuzu-cmd. Some defaults were reported wrong, so those were fixed where noticed. | |||||
2021-07-16 | input_common: Make button threshold customizable | german77 | 2 | -3/+13 | |
2021-07-16 | default_ini: Remove deprecated settings | lat9nq | 1 | -61/+1 | |
These settings are not being read in config.cpp AND they do not exist in common/settings.h. Remove their references. | |||||
2021-07-15 | input_common: Support SDL toggle buttons | german77 | 2 | -5/+53 | |
2021-07-15 | vic: Fix dimension compuation of YUV frames | ameerj | 1 | -11/+10 | |
Fixes out of bound memory crashes in Mario Golf | |||||
2021-07-15 | applets/web: Resolve Nintendo CDN URLs | Morph | 1 | -0/+13 | |
This fixes the hint videos in New Super Mario Bros. U Deluxe | |||||
2021-07-15 | nvhost_nvdec_common: Read Submit ioctl data from object addr | ameerj | 1 | -8/+2 | |
Fixes Mario Golf intro video decoding. | |||||
2021-07-15 | nvhost_nvdec_common: Fix {Slice/Write}Vectors return | ameerj | 1 | -37/+38 | |
Plus some minor cleanup for consistency. | |||||
2021-07-15 | Buffer cache: Fixes, Clang and Feedback. | Fernando Sahmkow | 3 | -11/+10 | |
2021-07-14 | GPUMemoryManager: Force inmediate invalidation when writting block. | Fernando Sahmkow | 1 | -1/+1 | |
2021-07-14 | Buffer Cache: Fixes to DMA Copy. | Fernando Sahmkow | 1 | -6/+7 | |
2021-07-14 | DMAEngine: Revert flushing from Pitch to BlpockLinear. | Fernando Sahmkow | 1 | -2/+7 | |
2021-07-14 | BufferCache: fix clearing on forced download. | Fernando Sahmkow | 1 | -10/+20 | |
2021-07-14 | service: Append service name prefix to common filenames | Morph | 41 | -56/+56 | |
2021-07-14 | applets: Append applet_ prefix to backend applets | Morph | 19 | -33/+33 | |
2021-07-14 | applets: Append qt_ prefix to Qt frontend applets | Morph | 15 | -25/+26 | |
2021-07-13 | vk_rasterizer: Only clear valid color attachments | ameerj | 1 | -2/+4 | |
2021-07-13 | DMAEngine: Accelerate BufferClear | Fernando Sahmkow | 11 | -6/+115 | |
2021-07-12 | accelerateDMA: Fixes and feedback. | Fernando Sahmkow | 3 | -88/+62 | |
2021-07-12 | content_archive: Remove unnecessary include to <ranges> | ReinUsesLisp | 1 | -1/+0 | |
Fixes build issues on clang. | |||||
2021-07-12 | web_service: Silence -Wmaybe-uninitialized on httplib.h | ReinUsesLisp | 1 | -0/+10 | |
2021-07-12 | boxcat: Silence -Wmaybe-uninitialized in httplib.h | ReinUsesLisp | 1 | -0/+3 | |
2021-07-11 | npad: Disable vibration check if disabled | german77 | 1 | -0/+5 | |
2021-07-11 | input_common: Fix build with sdl disabled | german77 | 1 | -2/+2 | |
2021-07-11 | accelerateDMA: Accelerate Buffer Copies. | Fernando Sahmkow | 9 | -13/+176 | |
2021-07-10 | Buffer Cache: Address Feedback. | Fernando Sahmkow | 3 | -5/+10 | |
2021-07-10 | settings: Disable FPS unlimit setting between title launches | ameerj | 6 | -29/+10 | |
Some titles crash if the FPS limit is disabled when launching. This change ensures that titles launch with the limit in-place to avoid issues. In order to simplify the change, the UI toggle was removed as it will always be overridden at launch to be disabled. The setting can still be toggled during gameplay with the hotkey, and indicated by the fps label in the status bar. | |||||
2021-07-09 | Buffer Cache: Fix GCC copmpile error | Fernando Sahmkow | 1 | -1/+0 | |
2021-07-09 | Fence Manager: remove reference fencing. | Fernando Sahmkow | 3 | -31/+6 | |
2021-07-09 | BufferCache: Additional download fixes. | Fernando Sahmkow | 2 | -23/+107 | |
2021-07-09 | Buffer Cache: Revert unnecessary range reduction. | Fernando Sahmkow | 1 | -29/+13 | |
2021-07-09 | Fence Manager: Force ordering on WFI. | Fernando Sahmkow | 4 | -38/+71 | |
2021-07-09 | Buffer Cache: Eliminate the AC Hack as the base game is fixed in Hades. | Fernando Sahmkow | 1 | -14/+4 | |
2021-07-09 | Fence Manager: Add fences on Reference Count. | Fernando Sahmkow | 8 | -6/+57 | |
2021-07-09 | Videocore: Address Feedback & CLANG Format. | Fernando Sahmkow | 2 | -78/+75 | |
2021-07-09 | Buffer Cache: Fix High Downloads and don't predownload on Extreme. | Fernando Sahmkow | 4 | -92/+123 | |
2021-07-09 | yuzu qt: config: Only save renderer_debug as a global setting | lat9nq | 1 | -2/+8 | |
This is a bug fix. Enabling graphics debug mode, then saving a custom configuration causes graphics debugging to be saved and read from the custom configuration. Isolate it the same way we isolate the CPU settings. | |||||
2021-07-09 | Update src/yuzu/main.cpp | Fernando S | 1 | -2/+2 | |
Co-authored-by: Morph <39850852+Morph1984@users.noreply.github.com> | |||||
2021-07-09 | vk_buffer_cache: Use emulated null buffers for transform feedback | ReinUsesLisp | 2 | -11/+19 | |
Vulkan does not support null buffers on transform feedback bindings. Emulate these using the same null buffer we were using for index buffers. | |||||
2021-07-09 | configure_input: Use u8 for mouse sensitivity | ameerj | 3 | -11/+8 | |
2021-07-09 | config: Remove float {Read,Write}Setting variants | ameerj | 2 | -29/+2 | |
2021-07-09 | configure_graphics: Use u8 for bg_color values | ameerj | 5 | -19/+20 | |
2021-07-09 | configure_audio: Use u8 for volume value | ameerj | 4 | -10/+9 | |
2021-07-09 | Settings: Eliminate ASYNC & MULTICORE Toggles and add GPU Accuracy Toggle. | Fernando Sahmkow | 2 | -39/+45 | |
2021-07-09 | common/thread_worker: Stop workers on stop_token when waiting | ReinUsesLisp | 1 | -18/+20 | |
2021-07-09 | common/thread_worker: Add support for stateful threads | ReinUsesLisp | 3 | -78/+86 | |
2021-07-09 | common/thread_worker: Simplify logic | FernandoS27 | 1 | -8/+1 | |
2021-07-09 | common/thread_worker: Fix data race | FernandoS27 | 2 | -1/+18 | |
2021-07-09 | common/thread_worker: Use unique function | ReinUsesLisp | 2 | -28/+24 | |
2021-07-09 | common: Add unique function | ReinUsesLisp | 4 | -0/+172 | |
2021-07-09 | common/thread_worker: Add wait for requests method | ReinUsesLisp | 2 | -0/+11 | |
2021-07-08 | settings, arm_dynarmic, yuzu qt: Move CPU debugging option | lat9nq | 18 | -132/+244 | |
Decouples the CPU debugging mode from the enumeration to its own boolean. After this, it moves the CPU Debugging tab over to a sub tab underneath the Debug tab in the configuration UI. | |||||
2021-07-08 | arm_dynarmic_64: Re-add fastmem_address_space_bits to Auto setting | lat9nq | 1 | -0/+1 | |
2021-07-08 | qt/main: Make title string more i18n-friendly | Lioncash | 1 | -2/+4 | |
Currently, whether or not the title is 32-bit or 64-bit was being appended as a suffix to the title, which is fine for left-to-right languages, but may not always fly so smoothly with some right-to-left languages. We also weren't marking that portion of the string as translatable, which prevents translators from translating part of the title string. | |||||
2021-07-08 | settings, yuzu qt: Add migration code for CPU accuracy | lat9nq | 2 | -1/+10 | |
Old CPU Accuracy setting won't translate well into since we're adding one at the beginning of the list. On first boot with the new setting, just use the default setting. | |||||
2021-07-08 | arm_dynarmic{32,64}: Fixes from test build | lat9nq | 2 | -18/+5 | |
Now sets optimizations regardless of the Settings. Drops unsafe fastmem optimization. | |||||
2021-07-08 | core,common,yuzu qt: Add CPU accuracy option 'Auto' | lat9nq | 4 | -16/+50 | |
The current CPU accuracy settings in yuzu are fairly polarized and require more than common knowledge to know what the optimal settings for yuzu would be. This adds a curated option called 'Auto' that applies a few at the moment known-good unsafe optimizations to Dynarmic. | |||||
2021-07-08 | general: Code formatting improvements | lat9nq | 4 | -22/+25 | |
Slight improvements to readability. Dropped suggestions for string_view (settings.h:101), pass by value (settings.h:82), reverting double to a float (config.cpp:316), and other smaller ones, some out of scope. Addresses review feedback. Co-authored-by: Ameer J <52414509+ameerj@users.noreply.github.com> | |||||
2021-07-08 | Out of bound blit (#6531) | Feng Chen | 2 | -58/+35 | |
* Fix out of bound blit error * Fix code read * Fix ci error Co-authored-by: Feng Chen <chen.feng@gloritysolutions.com> | |||||
2021-07-08 | Replace NaN mix volume samples with silence. | Kelebek1 | 1 | -0/+9 | |
Fixes Xenoblade Chronicles 2 blowing out the audio. | |||||
2021-07-08 | audio_core: Preserve front channel volume after 6 to 2 downmix | Kelebek1 | 5 | -75/+81 | |
Many games report 6 channel output while only providing data for 2. We only output 2-channel audio regardless, and in the downmixing, front left/right only provide 36% of their volume. This is done assuming all of the other channels also contain valid data, but in many games they don't. This PR alters the downmixing to preserve front left/right, so volume is not lost. This improves volume in Link's Awakening, New Super Mario Bros U, Disgaea 6, Super Kirby Clash. | |||||
2021-07-07 | util_shaders: Fix BindImageTexture | lat9nq | 1 | -2/+2 | |
According to https://gitlab.freedesktop.org/mesa/mesa/-/issues/3820#note_753371 we need to set these to true for use with 3D textures. Fixes BOTW teleporting on RadeonSI and iris. | |||||
2021-07-06 | Report 2 channels active. Fixes Tales of Vesperia's mono channel audio. | Kelebek1 | 1 | -1/+1 | |
2021-07-06 | Support more PCM formats. Fixes Ys IX audio. | Kelebek1 | 2 | -18/+51 | |
2021-07-06 | CMakeLists: Treat -Wsign-compare as an error on GCC/Clang | Morph | 4 | -8/+1 | |
Treats (un)signed comparison mismatches as errors to be consistent with MSVC | |||||
2021-07-06 | common: logging: backend: Close the file after exceeding the write limit | Morph | 1 | -8/+11 | |
There's no point in keeping the file open after the write limit is exceeded. This allows the file to be committed to the disk shortly after it is closed and avoids redundantly checking whether or not the write limit is exceeded. | |||||
2021-07-06 | common: fs: file: Revert Flush to its previous behavior and add Commit | Morph | 2 | -3/+34 | |
It became apparent that logging can continuously spam errors that trigger file flushing. Since committing the files to disk is an expensive operation, this causes unnecessarily high disk usage. As such, we will revert Flush() to the previous behavior and add a Commit() member function in the event that this behavior is needed. | |||||
2021-07-06 | common: fs: file: Flush the file in GetSize | Morph | 1 | -0/+3 | |
This ensures that GetSize always retrieves the correct file size after a write operation. | |||||
2021-07-05 | input_common: Add missing modifier callback to analog from button | german77 | 1 | -0/+1 | |
2021-07-05 | profiler: Fix deprecated functions | german77 | 1 | -4/+5 | |
2021-07-04 | Texture Cache: Fix collision with multiple overlaps of the same sparse texture. | Fernando Sahmkow | 1 | -1/+6 | |
2021-07-04 | Texture Cache: Fix GCC & Clang. | Fernando Sahmkow | 2 | -11/+11 | |
2021-07-04 | Texture Cache: Address feedback. | Fernando Sahmkow | 5 | -18/+37 | |
2021-07-04 | Texture Cache: Improve accuracy of sparse texture detection. | Fernando Sahmkow | 6 | -131/+342 | |
2021-07-04 | Texture Cache: Initial Implementation of Sparse Textures. | Fernando Sahmkow | 12 | -23/+310 | |
2021-07-04 | service: mii: Retrieve the correct default miis. | Morph | 1 | -2/+3 | |
We were including the first 2 default miis which are not meant to be shown in games. With this change, we properly retrieve the 6 default miis shown in games, with 3 of each gender. | |||||
2021-07-03 | TextureCacheOGL: Implement Image Copies for 1D and 1D Array. | Fernando Sahmkow | 1 | -0/+26 | |
2021-07-03 | TextureCache: Fix 1D to 2D overlapps. | Fernando Sahmkow | 1 | -3/+0 | |
2021-07-03 | CMakeLists: Enforce C4189 | Morph | 1 | -0/+1 | |
This supplements C4101 by detecting initialized but unreferenced local variables | |||||
2021-07-02 | config: Read UISettings as basic settings | lat9nq | 1 | -30/+19 | |
I must have been asleep or something. These need to be read with the new ReadBasicSetting function. | |||||
2021-07-01 | settings: Set resolution_factor default to 1 | lat9nq | 1 | -1/+1 | |
Fixes Disgaea 6 Demo issues. | |||||
2021-07-01 | Slightly refactor NVDEC and codecs for readability and safety | Kelebek1 | 10 | -356/+522 | |
2021-07-01 | Fix XC2/VOEZ crashing, add audio looping and a few misc fixes | Kelebek1 | 7 | -132/+188 | |
2021-07-01 | yuzu_cmd: config: Pass a reference in | lat9nq | 2 | -5/+11 | |
Also adds documentation for the ReadSetting function. Address review comments. Co-authored-by: Mai M. <mathew1800@gmail.com> | |||||
2021-06-29 | core, input_common: Miscellaneous fixes | lat9nq | 3 | -5/+8 | |
bcat: Fix settings access telemetry_session: Fix settings accesses So this is what I get for testing with the web service disabled. touch_from_button: Fix settings access for clang | |||||
2021-06-29 | yuzu qt: Make most UISettings a BasicSetting | lat9nq | 12 | -91/+107 | |
For simple primitive settings, moves their defaults and labels to definition time. Also fixes typo and clang-format yuzu qt: config: Fix rng_seed | |||||
2021-06-28 | general: Make most settings a BasicSetting | lat9nq | 32 | -660/+807 | |
Creates a new BasicSettings class in common/settings, and forces setting a default and label for each setting that uses it in common/settings. Moves defaults and labels from both frontends into common settings. Creates a helper function in each frontend to facillitate reading the settings now with the new default and label properties. Settings::Setting is also now a subclass of Settings::BasicSetting. Also adds documentation for both Setting and BasicSetting. | |||||
2021-06-28 | CMakeLists: Disable all warnings for external headers | Morph | 1 | -0/+5 | |
This lets us avoid needing to wrap external headers with #pragma warning directives for warnings we treat as errors and avoids generating warnings for external code. Thanks to MerryMage for pointing this out. | |||||
2021-06-28 | video_core: Remove #pragma warning directives for external headers | Morph | 2 | -15/+0 | |
2021-06-28 | input_common: Remove #pragma warning directives for external headers | Morph | 2 | -14/+0 | |
2021-06-28 | CMakeLists: Enforce C4018, C4267, C4305, C4389 | Morph | 1 | -3/+7 | |
2021-06-28 | core: Enforce C4242 | Morph | 1 | -6/+3 | |
2021-06-28 | input_common: Enforce C4242 | Morph | 1 | -12/+4 | |
2021-06-28 | video_core: Enforce C4242 | Morph | 1 | -3/+2 | |
2021-06-28 | patch_manager: Do not apply LayeredFS mods when dumping | Morph | 3 | -4/+8 | |
We should not apply any mods when dumping a game's RomFS. | |||||
2021-06-28 | filesystem: Open a read-only directory for SDMC mods | Morph | 3 | -19/+25 | |
This prevents mod files from being locked due to the read-only share flag in Windows. | |||||
2021-06-28 | core: Simplify SDMC mod loading | lat9nq | 3 | -21/+10 | |
If someone else wants to support other mod formats in the SDMC directory, that can be added later. For now, just allow RomFS modding here and force people to do other types of mods the old way. Addresses review comments. Co-authored-by: LC <mathew1800@gmail.com> | |||||
2021-06-28 | core: Support LayeredFS mod from SDMC directory | lat9nq | 5 | -2/+47 | |
Enables loading a mod directly from `[yuzu data directory]/sdmc/atmosphere/contents/[title_id]`. For use with some homebrew mod managers. | |||||
2021-06-28 | yuzu qt: Add option to dump to SDMC directory | lat9nq | 4 | -7/+23 | |
Enables dumping the RomFS to SDMC directory, specifically '[yuzu data directory]/sdmc/atmosphere/contents/[title_id]/romfs'. | |||||
2021-06-28 | video_core: Silence signed/unsigned mismatch warnings | Morph | 4 | -5/+6 | |
2021-06-28 | main: Display the instruction set of the running title in the window name | ameerj | 1 | -0/+3 | |
Displays whether the currently running title uses 64-bit instructions or only 32-bit instructions. | |||||
2021-06-27 | Decouple audio processing and run at variable rate | Kelebek1 | 3 | -79/+115 | |
Currently, processing of audio samples is called from AudioRenderer's Update method, using a fixed 4 buffers to process the given samples. Games call Update at variable rates, depending on framerate and/or sample count, which causes inconsistency in audio processing. From what I've seen, 60 FPS games update every ~0.004s, but 30 FPS/160 sample games update somewhere between 0.02 and 0.04, 5-10x slower. Not enough samples get fed to the backend, leading to a lot of audio skipping. This PR seeks to address this by de-coupling the audio consumption and the audio update. Update remains the same without calling for buffer queuing, and the consume now schedules itself to run based on the sample rate and count. | |||||
2021-06-26 | hle: service: hwopus: OpenHardwareOpusDecoderEx: Remove unused buffer size. | bunnei | 1 | -1/+30 | |
2021-06-26 | configuration: Defer to common/settings for per-game settings defaults | lat9nq | 2 | -127/+100 | |
Avoids double-setting defaults, and avoids potential accidents when inconsistently setting the default on new settings. | |||||
2021-06-26 | common: Force defaults for Settings::Setting's | lat9nq | 1 | -44/+57 | |
Requires a default value when creating each per-game setting. | |||||
2021-06-26 | buffer_cache: Only flush downloaded size | ReinUsesLisp | 1 | -2/+3 | |
Fixes a regression unintentionally introduced by the garbage collector. This makes regular memory downloads only flush the requested sizes. This negatively affected Koei Tecmo games. | |||||
2021-06-26 | video_core: Enforce C4244 | ReinUsesLisp | 1 | -0/+1 | |
Enforce implicit integer casts to a smaller type as errors. | |||||
2021-06-26 | codec,vic: Disable warnings in ffmpeg headers | ReinUsesLisp | 2 | -4/+29 | |
2021-06-26 | vk_buffer_cache: Silence implicit cast warnings | ReinUsesLisp | 1 | -2/+3 | |
2021-06-26 | buffer_cache/texture_cache: Make GC functions private | ReinUsesLisp | 2 | -5/+5 | |
2021-06-26 | buffer_cache: Silence implicit cast warning | ReinUsesLisp | 1 | -1/+1 | |
2021-06-25 | vulkan_device: Make device memory match the rest of the file | ReinUsesLisp | 2 | -19/+18 | |
Match the style in the file. | |||||
2021-06-25 | hle: hle_helpers: Skip data payload offset checks on TIPC requests. | bunnei | 1 | -2/+6 | |
- TIPC does not use this. | |||||
2021-06-25 | hle: service: hwopus: Implement GetWorkBufferSizeEx and OpenHardwareOpusDecoderEx. | bunnei | 2 | -5/+15 | |
- This is used by the latest update of Doom Eternal. | |||||
2021-06-25 | hle: service: aoc: Stub GetAddOnContentListChangedEventWithProcessId. | bunnei | 2 | -1/+10 | |
- This is used by the latest update of Doom Eternal. | |||||
2021-06-25 | audio_core: common: Bump audio revision to 9. | bunnei | 1 | -1/+1 | |
- This is used in fw 12.x.x games. | |||||
2021-06-24 | common: Replace common_sizes into user-literals | Wunkolo | 19 | -126/+152 | |
Removes common_sizes.h in favor of having `_KiB`, `_MiB`, `_GiB`, etc user-literals within literals.h. To keep the global namespace clean, users will have to use: ``` using namespace Common::Literals; ``` to access these literals. | |||||
2021-06-24 | general: Add missing #pragma once directives | Morph | 4 | -0/+8 | |
2021-06-24 | Add missing includes (#6521) | Chloe | 4 | -0/+7 | |
* Add missing includes * Add array | |||||
2021-06-23 | General: Resolve fmt specifiers to adhere to 8.0.0 API where applicable | Lioncash | 9 | -15/+23 | |
Also removes some deprecated API usages. | |||||
2021-06-23 | maxwell3d: Add missing return in default SizeInBytes() case | Lioncash | 1 | -0/+1 | |
We were returning '1' in ComponentCount()'s default case but were neglecting to do the same with SizeInBytes(). | |||||
2021-06-23 | Simple resizing of the Per-Game configuration window and removal of useless Help question mark button in the title bar | OZtistic | 2 | -1/+8 | |
2021-06-22 | Reaper: Set minimum cleaning limit on OGL. | Fernando Sahmkow | 1 | -1/+4 | |
2021-06-22 | common: fs: Add a description of a regular file in IsFile | Morph | 1 | -4/+6 | |
This provides a more concrete example of what a regular file is and isn't. | |||||
2021-06-22 | vfs_real: Fix Mode to FileAccessMode conversion | Morph | 1 | -6/+1 | |
These enforce requiring the file to exist prior to opening. | |||||
2021-06-22 | common: fs: Amend IsFile check in FileOpen / (Write/Append)StringToFile | Morph | 4 | -9/+12 | |
This check was preventing files with the Write or Append file access modes from being created, as per the documented behavior in FileAccessMode. This amends the check to test for the existence of a filesystem object prior to checking whether it is a regular file. Thanks to liushuyu for pointing out that removing the check altogether would not guard against attempting to open non-regular files such as directories, symlinks, FIFO (pipes), sockets, block devices, or character devices. The documentation has also been updated for these functions to clarify that a file refers to a regular file. | |||||
2021-06-22 | common: fs: file: Remove [[nodiscard]] attribute from Flush | Morph | 2 | -3/+3 | |
Similarly, Flush() is typically called to attempt to flush a file into the disk. In the one case where this is used, we do not care whether the flush has succeeded or not, making [[nodiscard]] unnecessary. | |||||
2021-06-22 | common: fs: Remove [[nodiscard]] attribute on Remove* functions | Morph | 6 | -26/+26 | |
There are a lot of scenarios where we don't particularly care whether or not the removal operation and just simply attempt a removal. As such, removing the [[nodiscard]] attribute is best for these functions. | |||||
2021-06-22 | core: Make is_powered_on atomic | Rodrigo Locatti | 1 | -2/+3 | |
Fixes potential data races when shutting down. | |||||
2021-06-22 | common/detached_tasks: Wait for tasks before shutting down | Rodrigo Locatti | 1 | -0/+2 | |
If this is not waited on, the synchronization primitives are destroyed whe main exits and the detached task ends up signalling garbage and not properly finishing. | |||||
2021-06-22 | npad: Fix data race when updating devices | Rodrigo Locatti | 2 | -0/+8 | |
Add a lock to avoid data races. This reduces the number of -fsanitize=thread errors significantly. | |||||
2021-06-22 | input_common/mouse_input: Fix data race | Rodrigo Locatti | 2 | -12/+10 | |
Fix data race using std::jthread and std::stop_token. | |||||
2021-06-22 | Implement audout GetAudioOutPlayedSampleCount | Kelebek1 | 3 | -3/+20 | |
Used in Ninja Gaiden games. | |||||
2021-06-22 | bootmanager: Use std::stop_source for stopping emulation | ReinUsesLisp | 8 | -18/+18 | |
Use its std::stop_token to abort shader cache loading. Using std::stop_token instead of std::atomic_bool allows the usage of other utilities like std::stop_callback. | |||||
2021-06-22 | vk_master_semaphore: Use jthread for debug thread | ReinUsesLisp | 2 | -19/+8 | |
2021-06-21 | gl_device: Expand on Mesa driver names | lat9nq | 1 | -3/+28 | |
Makes this list a bit more capable at identifying Mesa drivers. Tries to deal with two of the overloaded vendor strings in a more generic fashion. | |||||
2021-06-21 | video_core: Add GPU vendor name to window title bar | ameerj | 9 | -10/+75 | |
2021-06-20 | Update dynarmic and add new unsafe CPU option. | Fernando Sahmkow | 7 | -0/+31 | |
2021-06-20 | Reaper: Guarantee correct deletion. | Fernando Sahmkow | 5 | -2/+23 | |
2021-06-20 | Reaper: Upgrade label from unsafe to experimental as no regressions are known now. | Fernando Sahmkow | 1 | -1/+1 | |
2021-06-19 | util_shaders: Specify ASTC decoder memory barrier bits | ameerj | 1 | -1/+6 | |
2021-06-19 | astc_decoder.comp: Remove unnecessary LUT SSBOs | ameerj | 5 | -113/+34 | |
We can move them to instead be compile time constants within the shader. | |||||
2021-06-19 | astc: Various robustness enhancements for the gpu decoder | ameerj | 5 | -47/+16 | |
These changes should help in reducing crashes/drivers panics that may occur due to synchronization issues between the shader completion and later access of the decoded texture. | |||||
2021-06-19 | host_memory: Correct MEM_RESERVE_PLACEHOLDER | lat9nq | 1 | -1/+1 | |
Microsoft defines `MEM_RESERVE_PLACEHOLDER` as `0x00040000`, but our manually imported version of it drops the last zero. | |||||
2021-06-18 | externals: httplib: replace custom httplib header with upstream as submodule. | Vortex | 1 | -1/+2 | |
This also includes a minor change to web_service.cpp - to fix compatibility with upstream changes. | |||||
2021-06-18 | service: time: Use GetFileRelative to get files within subdirectories | Morph | 1 | -1/+1 | |
The timezone info file can be within subdirectories (such as Asia/Tokyo), use GetFileRelative instead of GetFile to get files within subdirectories. | |||||
2021-06-18 | kernel: Fix missing peak set in KResourceLimit::SetLimitValue | Morph | 1 | -0/+1 | |
2021-06-18 | vulkan_debug_callback: Skip logging known false-positive validation errors | ameerj | 1 | -0/+8 | |
Avoids overwhelming the log with validation errors that are not applicable | |||||
2021-06-17 | Reaper: Correct size calculation on Vulkan. | Fernando Sahmkow | 1 | -5/+3 | |
2021-06-17 | config: Add frame limiter toggle hotkey | ameerj | 3 | -3/+8 | |
2021-06-17 | nvflinger: Add toggle to disable buffer swap interval limits | ameerj | 8 | -0/+38 | |
Enabling this setting will allow some titles to present more frames to the screen as they become available in the nvflinger buffer queue. | |||||
2021-06-17 | Reaper: Change memory restrictions on TC depending on host memory on VK. | Fernando Sahmkow | 10 | -41/+90 | |
2021-06-16 | Reaper: Address Feedback. | Fernando Sahmkow | 6 | -20/+43 | |
2021-06-16 | Reaper: Setup settings and final tuning. | Fernando Sahmkow | 10 | -32/+64 | |
2021-06-16 | Reaper: Tune it up to be an smart GC. | Fernando Sahmkow | 5 | -13/+130 | |
2021-06-16 | Initial Reaper Setup | ReinUsesLisp | 6 | -56/+226 | |
WIP | |||||
2021-06-16 | vulkan_memory_allocator: Release allocations with no commits | ReinUsesLisp | 2 | -5/+22 | |
2021-06-16 | spl: Mark the other functions as unimplemented | Morph | 1 | -5/+30 | |
2021-06-16 | spl: Implement spl::GetConfig | Morph | 2 | -1/+90 | |
2021-06-16 | hle: api_version: Add HLE API version constants | Morph | 3 | -33/+54 | |
2021-06-16 | spl: Add the general SPL interface | Morph | 4 | -45/+64 | |
2021-06-16 | spl: Add SPL types | Morph | 2 | -0/+231 | |
2021-06-16 | spl: Add SPL result codes | Morph | 2 | -0/+30 | |
2021-06-16 | common: fs: file: Remove redundant call to WriteStringToFile | Morph | 2 | -6/+1 | |
The Append open mode will create a new file if said file does not exist at a given path, making this call redundant. | |||||
2021-06-16 | fsp_srv: Fix filesystem access logging | Morph | 10 | -38/+63 | |
This introduces a new setting Enable FS Access Log which saves the filesystem access log to sdmc:/FsAccessLog.txt If this setting is not enabled, this will indicate to FS to not call OutputAccessLogToSdCard. Fixes softlocks during loading in Xenoblade Chronicles 2 when certain DLC is enabled. | |||||
2021-06-16 | astc_decoder: Fix LDR CEM1 endpoint calculation | ameerj | 2 | -2/+2 | |
Per the spec, L1 is clamped to the value 0xff if it is greater than 0xff. An oversight caused us to take the maximum of L1 and 0xff, rather than the minimum. Huge thanks to wwylele for finding this. Co-Authored-By: Weiyi Wang <wwylele@gmail.com> | |||||
2021-06-16 | yuzu_cmd/config: Add Accelerate ASTC and missing NVDEC emulation settings | ameerj | 2 | -2/+12 | |
2021-06-16 | configure_graphics: Add Accelerate ASTC decoding setting | ameerj | 9 | -2/+32 | |
2021-06-16 | textures: Reintroduce CPU ASTC decoder | ameerj | 4 | -2/+1592 | |
Users may want to fall back to the CPU ASTC texture decoder due to hangs and crashes that may be caused by keeping the GPU under compute heavy loads for extended periods of time. This is especially the case in games such as Astral Chain which make extensive use of ASTC textures. | |||||
2021-06-15 | lm: Demote guest logs to LOG_DEBUG | ameerj | 1 | -27/+20 | |
Guest logs are not very useful, as they are intended for use by the game developers during development. As such, they provide little meaning to be logged by yuzu and tend to overwhelm the log output at times. | |||||
2021-06-15 | texture_cache/util: Avoid relaxed image views on different bytes per pixel | ReinUsesLisp | 1 | -1/+9 | |
Avoids API usage errors on UE4 titles leading to crashes. | |||||
2021-06-13 | general: Remove extraneous includes | Morph | 3 | -3/+0 | |
2021-06-13 | common: logging: Restructure backend code | Morph | 8 | -278/+288 | |
2021-06-13 | common: logging: backend: Wrap IOFile in a unique_ptr | Morph | 2 | -6/+27 | |
Allows us to forward declare Common::FS::IOFile. | |||||
2021-06-13 | common: fs: file: Flush the file to the disk when Flush() is called | Morph | 1 | -1/+5 | |
std::fflush does not guarantee that file buffers are flushed to the disk. Use _commit on Windows and fsync on all other OSes to ensure that the file is flushed to the disk. | |||||
2021-06-13 | cmake: Fix find_program usage for 3.15 | lat9nq | 1 | -1/+4 | |
yuzu requires CMake 3.15 yet find_program was using REQUIRED, which is only available on 3.18 and later. Instead, we check for "<VAR>-NOTFOUND". In addition, check for additional requirements before building libusb or FFmpeg with autotools. Otherwise, CMake configuration will pass yet compilation will fail. | |||||
2021-06-13 | configure_cpu_debug: Clarify settings behavior | Morph | 1 | -1/+1 | |
This makes it clear that the disabled settings only take effect when CPU Accuracy is set to Debug Mode. | |||||
2021-06-12 | common: fs: Use the normal directory iterator in *Recursively functions | Morph | 1 | -2/+16 | |
MSVC's implementation of recursive_directory_iterator throws an exception on an error despite a std::error_code being passed into its constructor. This is most likely a bug in MSVC's implementation since directory_iterator does not throw an exception on an error. We can replace the usage of recursive_directory_iterator for now until MSVC fixes their implementation of it. | |||||
2021-06-11 | hid: Stub IsFirmwareUpdateAvailableForSixAxisSensor | german77 | 2 | -1/+23 | |
2021-06-11 | yuzu: main: Ensure enough space is available for RomFS dumping | Morph | 1 | -0/+12 | |
This warns the user if there isn't enough free space to dump the entire RomFS to disk. It requires at least the size of the extracted RomFS + 1 GiB as a buffer of free space. | |||||
2021-06-11 | common/host_memory: Implement a fallback if fastmem fails. | Markus Wick | 2 | -14/+49 | |
This falls back to the old approach of using a virtual buffer. Windows is untested, but this build should fix support for Windows < 10 v1803. However without fastmem support at all. | |||||
2021-06-11 | common/host_shader: Load Windows 10 functions dynamically | ReinUsesLisp | 1 | -29/+88 | |
Workaround old headers and libraries shipped on MinGW. | |||||
2021-06-11 | GPUTHread: Remove async reads from Normal Accuracy. | Fernando Sahmkow | 1 | -18/+6 | |
2021-06-11 | rasterizer: Update pages in batches | ReinUsesLisp | 1 | -15/+41 | |
2021-06-11 | host_memory: Support staged VirtualProtect calls | ReinUsesLisp | 1 | -3/+12 | |
2021-06-11 | General: Add settings for fastmem and disabling adress space check. | FernandoS27 | 12 | -6/+83 | |
2021-06-11 | common/host_memory: Optimize for huge tables. | Markus Wick | 2 | -11/+24 | |
In theory, if we have 2 MB continously mapped, this should save one layer of TLB. Let's make it at least more likely by aligning the memory. | |||||
2021-06-11 | core: Make use of fastmem | Markus Wick | 6 | -8/+30 | |
2021-06-11 | tests: Add tests for host memory | ReinUsesLisp | 2 | -0/+184 | |
2021-06-11 | common/host_memory: Add Linux implementation | Markus Wick | 1 | -10/+120 | |
2021-06-11 | common/host_memory: Add interface and Windows implementation | ReinUsesLisp | 3 | -0/+384 | |
2021-06-11 | kernel: Unconditionally set thread state when appropriate | Morph | 2 | -23/+12 | |
2021-06-11 | kernel: KLightConditionVariable: Update implementation to 12.x | Morph | 2 | -14/+31 | |
Updates the implementation of KLightConditionVariable to FW 12.x | |||||
2021-06-10 | Fix GCC undefined behavior sanitizer. | Markus Wick | 3 | -1/+9 | |
* Wrong alignment in u64 LOG_DEBUG -> memcpy. * Huge shift exponent in stride calculation for linear buffer, unused result -> skipped. * Large shift in buffer cache if word = 0, skip checking for set bits. Non of those were critical, so this should not change any behavior. At least with the assumption, that the last one used masking behavior, which always yield continuous_bits = 0. | |||||
2021-06-10 | hle: service: sm: Remove redundant session reservation, etc. | bunnei | 2 | -18/+13 | |
- We were double-reserving, causing us to run out of sessions in Pokemon Sword & Shield. | |||||
2021-06-10 | hle: service: Increase arbitrary max sessions limit. | bunnei | 1 | -4/+1 | |
- Pokemon Sword/Shield are still hitting this for some reason, causing an svcBreak. | |||||
2021-06-10 | hle: kernel: KClientPort: Add an assert for session count. | bunnei | 1 | -0/+3 | |
- Prevents us from over decrementing num_sessions. | |||||
2021-06-10 | hle: service: sm: Fix GetService setup of session & port. | bunnei | 2 | -5/+5 | |
2021-06-10 | hle: service: Use correct size for ServerSessionCountMax. | bunnei | 1 | -4/+6 | |
2021-06-10 | hle: kernel: KServerSession: Fix client disconnected. | bunnei | 3 | -9/+8 | |
- Prevents a cloned session's handler from being overwritten by another disconnected session. - Fixes session handler nullptr asserts with Pokemon Sword & Shield. | |||||
2021-06-10 | kernel: svc: Add missing error check to CancelSynchronization. | bunnei | 1 | -2/+2 | |
- Avoids a potential crash if the handle is invalid, and also makes this code accurate to real kernel behavior. | |||||
2021-06-09 | hle: service: Increase arbitrary max sessions limit. | bunnei | 1 | -1/+1 | |
- Pokemon Sword/Shield are still hitting this for some reason, causing an svcBreak. | |||||
2021-06-09 | src/common/CMakeLists.txt: fix variable escaping | liushuyu | 1 | -8/+9 | |
2021-06-09 | common/fs/path_util: Remove [[nodiscard]] from function with void return | Lioncash | 1 | -1/+1 | |
We can't make use of the return value here, since we don't a return value to work with. | |||||
2021-06-09 | configure_ui: Add translation context for file-scope strings | Lioncash | 1 | -13/+27 | |
Allows for these strings to show up in the translation files. | |||||
2021-06-08 | hle: kernel: KServerSession: Work-around scenario where session is closed too early. | bunnei | 1 | -7/+24 | |
2021-06-08 | hle: kernel: hle_ipc: Ensure SessionRequestHandler is valid. | bunnei | 3 | -5/+26 | |
2021-06-08 | hle: kernel: Remove service thread manager and use weak_ptr. | bunnei | 3 | -18/+8 | |
- We no longer need to queue up service threads to be destroyed. - Fixes a race condition where a thread could be destroyed too early, which caused a crash in Pokemon Sword/Shield. | |||||
2021-06-08 | yuzu qt: Start games from context menu | lat9nq | 4 | -3/+23 | |
This connects the BootGame function to the context menu. In addition, there is an option to boot without using the custom configuration. | |||||
2021-06-07 | Various suggestions by v1993 and lioncash | Clément Gallet | 2 | -11/+9 | |
2021-06-07 | hle: kernel: KServerSession: Use ASSERT_MSG where appropriate. | bunnei | 1 | -1/+1 | |
2021-06-07 | hle: kernel: k_server_session: Return service thread by strong pointer. | bunnei | 2 | -4/+4 | |
2021-06-07 | hle: kernel: k_server_session: Ensure service thread is valid before dereference. | bunnei | 1 | -1/+3 | |
2021-06-07 | hle: kernel: hle_ipc: Use default destructor for SessionRequestManager. | bunnei | 1 | -1/+1 | |
2021-06-07 | hle: kernel: KAutoObjectWithListContainer: Use boost::instrusive::rbtree. | bunnei | 11 | -22/+26 | |
- Fixes some crashes introduced by our common intrusive red/black tree impl. | |||||
2021-06-06 | Add sdl2 audio description in the yuzu-cmd config file | Clément Gallet | 1 | -1/+2 | |
2021-06-06 | Add SDL2 audio backend | Clément Gallet | 4 | -0/+211 | |
2021-06-06 | limitable_input_dialog: Implement character limiter | Kewlan | 3 | -5/+48 | |
When using GetText() you can now choose what set of characters the user can't enter. | |||||
2021-06-05 | Avoid -Wshadow warning | Clément Gallet | 1 | -1/+1 | |
Co-authored-by: Mai M. <mathew1800@gmail.com> | |||||
2021-06-05 | result: Add [[nodiscard]] specifiers where applicable | Lioncash | 1 | -20/+20 | |
The result code classes are used quite extensively throughout both the kernel and service HLE code. We can mark these member functions as [[nodiscard]] to prevent a few logic bugs from slipping through. | |||||
2021-06-05 | hle: kernel: Refactor to allocate a ServiceThread per service handler. | bunnei | 13 | -67/+75 | |
- Previously, we would allocate a thread per session, which adds new threads on CloneCurrentObject. - This results in race conditions with N sessions queuing requests to the same service interface. - Fixes Pokken Tournament DX crashes/softlocks, which were regressed by #6347. | |||||
2021-06-04 | yuzu-cmd: Fix OpenGL rendering | Clément Gallet | 2 | -12/+6 | |
2021-06-04 | decoders: Break instead of continue | lat9nq | 1 | -2/+2 | |
continue causes a memory leak in A Hat in Time. | |||||
2021-06-04 | decoders: Avoid out-of-bounds access | lat9nq | 1 | -0/+8 | |
This is not a real fix, so assert here and continue before crashing. | |||||
2021-06-04 | [game_list] Correct light theme loading (#6408) | Maide | 1 | -5/+1 | |
Correct light theme loading The setLayout call in game list instantiation will call resizing signals with default values in light theme, which was then being erroneously saved. setLayout doesn't seem to call resizing for any other theme, so I'm not sure why that happens. | |||||
2021-06-04 | yuzu-cmd: Add touch_from_button in config file | Clément Gallet | 2 | -1/+50 | |
2021-06-03 | cmake: General improvements to libusb linking | lat9nq | 1 | -2/+1 | |
Delegates libusb external communication to externals/CMakeLists.txt Ensures an interface library `usb` for every pathway input_common just links to the `usb` library now externals/libusb/CMakeLists.txt sets variables to override SDL2's libusb finding Other minor cleanup | |||||
2021-06-03 | fsp-srv: Replace one last instance of RESULT_SUCCESS | Morph | 1 | -1/+1 | |
2021-06-03 | fspsrv: Implement DisableAutoSaveDataCreation (#6355) | Chloe | 6 | -2/+25 | |
- Used by Mii Edit | |||||
2021-06-03 | yuzu qt: Revert some usages of string_view | lat9nq | 7 | -18/+27 | |
Causes a heap-use-after free reported by AddressSanitizer. This makes use of std::filesystem::path, but due to that we have to use their string() function which may not work for all characters. | |||||
2021-06-02 | game_list: Minor for loop optimizations | Kewlan | 1 | -9/+6 | |
There's no need to check the first and last rows since they'll always be the Favorites and AddDir rows. Also change the name of the clear_all variable for consistency. | |||||
2021-06-02 | Stop the columns resizing on NAND install | Kelebek1 | 2 | -34/+17 | |
2021-06-02 | general: Replace RESULT_UNKNOWN with ResultUnknown | Morph | 13 | -45/+45 | |
Transition to PascalCase for result names. | |||||
2021-06-02 | general: Replace RESULT_SUCCESS with ResultSuccess | Morph | 113 | -933/+930 | |
Transition to PascalCase for result names. | |||||
2021-06-02 | common: fs: fs_util: Move PathToUTF8String to fs_util | Morph | 4 | -15/+14 | |
2021-06-02 | common: fs: fs_util: Add more string conversion functions | Morph | 2 | -0/+33 | |
2021-06-01 | yuzu qt: Use lambda and std::function for reset callback | lat9nq | 4 | -19/+17 | |
Also makes use of std::move, and performs a clang-format cleanup. This addresses review comments. Co-authored-by: LC <mathew1800@gmail.com> | |||||
2021-06-01 | yuzu: Add settings reset button to general configuration | lat9nq | 8 | -23/+111 | |
Builds on german77's work to reset all settings back to their defaults. This include UISettings and Settings values structs, but does not affect save profiles, input profiles, and game directories. This works from a button input in configure_general. When activated, it calls a callback to close the whole configure dialog, then GMainWindow deletes the old configuration, both on disk and in memory, and reinitalizes a new one. It also resets a portion of the UI and calls the telemetry window prompt. | |||||
2021-06-01 | configuration: Initial work to reset all settings | fearlessTobi | 6 | -0/+33 | |
This commit does not compile. Initial work to add and connect a Reset to Defaults button to the configure_general tab. Co-authored-by: german77 <juangerman-13@hotmail.com> | |||||
2021-06-01 | buffer_cache: Simplify uniform disabling logic | ameerj | 8 | -6/+29 | |
2021-05-31 | common_funcs: Move R_ macros to result.h | Lioncash | 2 | -25/+25 | |
These macros all interact with the result code type, so they should ideally be within this file as well, so all the common_funcs machinery doesn't need to be pulled in just to use them. | |||||
2021-05-30 | settings: Disable controller preview if controller is not active | german77 | 3 | -2/+25 | |
2021-05-30 | input_common: Analog button, use time based position instead of frequent updates | german77 | 3 | -73/+138 | |
2021-05-29 | k_class_token: Use variable templates where applicable | Lioncash | 1 | -43/+36 | |
Same behavior, less code. | |||||
2021-05-29 | video_core: gpu: WaitFence: Do not block threads during shutdown. | bunnei | 2 | -1/+13 | |
- Fixes a hang on shutdown when NVFlinger thread is waiting on a syncpoint that will never occur. - Commonly observed when stopping emulation in Super Mario Odyssey. | |||||
2021-05-29 | core/memory: Check our memory fallbacks for out-of-bound behavior. | Markus Wick | 3 | -4/+46 | |
This makes it by far harder to crash yuzu. Also implement the 48bit masking of AARCH64 while touching this code. | |||||
2021-05-29 | core/arm_interface: Improve the performance of memory fallbacks. | Markus Wick | 2 | -29/+31 | |
We just create one memory subsystem. This is a constant all the time. So there is no need to call the non-inlined parent.Memory() helper on every callback. | |||||
2021-05-29 | kernel: Add missing override specifiers | Lioncash | 15 | -53/+48 | |
Over the course of the kernel refactoring a tiny bit of missing overrides slipped through review, so we can add these. While we're at it, we can remove redundant virtual keywords where applicable as well. | |||||
2021-05-29 | Fix two GCC 11 warnings: Unneeded copies. | Markus Wick | 2 | -3/+3 | |
std::move created an unneeded copy. iterating without reference also created copies. | |||||
2021-05-29 | externals: Update dynarmic. | Markus Wick | 6 | -11/+11 | |
The new version supports fastmem on a64. | |||||
2021-05-29 | k_thread: Move dereference after null check in Initialize() | Lioncash | 1 | -5/+5 | |
Prevents a -Wnonnull warning on GCC. | |||||
2021-05-29 | hle: kernel: KSlabHeap: Allow host or guest allocations. | bunnei | 2 | -11/+191 | |
- Use host allocations for kernel memory, as this is not properly emulated yet. - Use guest allocations for TLS, as this needs to be backed by DeviceMemory. | |||||
2021-05-28 | touchscreen: Make use of common point struct | Lioncash | 2 | -10/+10 | |
2021-05-28 | common: Extract point into a common struct | Lioncash | 3 | -29/+65 | |
This is generic enough that it can be moved into the Common class for reuse. | |||||
2021-05-28 | common/fs/file: Explicitly delete copy constructors | Lioncash | 1 | -1/+4 | |
Relocates them to the same place the move equivalents are at for consistent viewing. | |||||
2021-05-28 | common/fs/file: Devirtualize destructor | Lioncash | 1 | -1/+1 | |
IOFile is a final class, so there's no need for a virtual destructor. | |||||
2021-05-28 | common/fs/file: Default initialize IOFile members | Lioncash | 1 | -2/+2 | |
Prevents a potential uninitialized read vector in the move constructor. | |||||
2021-05-28 | applets/swkbd: Make use of std::move where applicable | Morph | 2 | -22/+19 | |
Avoids redundant string copies | |||||
2021-05-28 | applets/swkbd: Only read the text check message on Failure/Confirm | Morph | 1 | -2/+7 | |
Applications may leave this region of memory uninitialized when the text check result is not either Failure or Confirm. Attempting to read uninitialized memory may cause an exception within the UTF16 to UTF8 string converter. Fix this by only reading the text check message on Failure or Confirm. | |||||
2021-05-27 | video_core: rasterizer_cache: Use u16 for cached page count. | bunnei | 2 | -9/+9 | |
- Greatly reduces the risk of overflow, at the cost of doubling the size of this array. | |||||
2021-05-27 | core/arm_interface: Call SVC after end of dynarmic block. | Markus Wick | 6 | -18/+42 | |
So we can modify all of dynarmic states within SVC without ExceptionalExit. Especially as the ExceptionalExit hack is dropped on upstream dynarmic. | |||||
2021-05-27 | vulkan_memory_allocator: Allow textures to be allocated in host memory | ReinUsesLisp | 2 | -31/+43 | |
Allow Vulkan's allocator to use host memory when there's no more device local memory. This delays OOM, but it will eventually still happen. | |||||
2021-05-26 | cmake: Download Qt binaries on Linux if needed | lat9nq | 1 | -2/+11 | |
If the local version of Qt is older than the minimum version required by yuzu, download a pre-built binary package from yuzu-emu/ext-linux-bin and build yuzu with it, instead. This also requires linking yuzu to the correct libraries after building it, and copying over the required binaries when building yuzu. This sets the Qt requirement to 5.12, which is intentionally behind the versions used by our toolchains since they are not all updated yet to 5.15. | |||||
2021-05-26 | core/arm: Drop ChangeProcessorID. | Markus Wick | 5 | -12/+0 | |
This code was used to switch the CPU ID on thread switches. However since "hle: kernel: multicore: Replace n-JITs impl. with 4 JITs.", the CPU ID is not a constant. This has been dead code since this rewrite, and dropped in dynarmic as well. So there is no need to keep it. | |||||
2021-05-26 | ldn: Add and stub lp2p:sys lp2p:app INetworkServiceMonitor INetworkService | german77 | 1 | -0/+141 | |
2021-05-26 | yuzu qt: Restore const qualifiers | lat9nq | 2 | -23/+12 | |
This addresses review comments. Co-authored-by: LC <mathew1800@gmail.com> | |||||
2021-05-26 | yuzu qt: Handle per-game configs for title id 0 | lat9nq | 8 | -22/+46 | |
Currently with programs that have a 0 title id, yuzu loads the custom configuration 0000000000000000.ini for per-game configs. This is not ideal since many homebrews share this id. Instead for these programs, we load a config that is simply the file name and `.ini` appended to it. | |||||
2021-05-26 | common: fs: Rework the Common Filesystem interface to make use of std::filesystem (#6270) | Morph | 74 | -2173/+3789 | |
* common: fs: fs_types: Create filesystem types Contains various filesystem types used by the Common::FS library * common: fs: fs_util: Add std::string to std::u8string conversion utility * common: fs: path_util: Add utlity functions for paths Contains various utility functions for getting or manipulating filesystem paths used by the Common::FS library * common: fs: file: Rewrite the IOFile implementation * common: fs: Reimplement Common::FS library using std::filesystem * common: fs: fs_paths: Add fs_paths to replace common_paths * common: fs: path_util: Add the rest of the path functions * common: Remove the previous Common::FS implementation * general: Remove unused fs includes * string_util: Remove unused function and include * nvidia_flags: Migrate to the new Common::FS library * settings: Migrate to the new Common::FS library * logging: backend: Migrate to the new Common::FS library * core: Migrate to the new Common::FS library * perf_stats: Migrate to the new Common::FS library * reporter: Migrate to the new Common::FS library * telemetry_session: Migrate to the new Common::FS library * key_manager: Migrate to the new Common::FS library * bis_factory: Migrate to the new Common::FS library * registered_cache: Migrate to the new Common::FS library * xts_archive: Migrate to the new Common::FS library * service: acc: Migrate to the new Common::FS library * applets/profile: Migrate to the new Common::FS library * applets/web: Migrate to the new Common::FS library * service: filesystem: Migrate to the new Common::FS library * loader: Migrate to the new Common::FS library * gl_shader_disk_cache: Migrate to the new Common::FS library * nsight_aftermath_tracker: Migrate to the new Common::FS library * vulkan_library: Migrate to the new Common::FS library * configure_debug: Migrate to the new Common::FS library * game_list_worker: Migrate to the new Common::FS library * config: Migrate to the new Common::FS library * configure_filesystem: Migrate to the new Common::FS library * configure_per_game_addons: Migrate to the new Common::FS library * configure_profile_manager: Migrate to the new Common::FS library * configure_ui: Migrate to the new Common::FS library * input_profiles: Migrate to the new Common::FS library * yuzu_cmd: config: Migrate to the new Common::FS library * yuzu_cmd: Migrate to the new Common::FS library * vfs_real: Migrate to the new Common::FS library * vfs: Migrate to the new Common::FS library * vfs_libzip: Migrate to the new Common::FS library * service: bcat: Migrate to the new Common::FS library * yuzu: main: Migrate to the new Common::FS library * vfs_real: Delete the contents of an existing file in CreateFile Current usages of CreateFile expect to delete the contents of an existing file, retain this behavior for now. * input_profiles: Don't iterate the input profile dir if it does not exist Silences an error produced in the log if the directory does not exist. * game_list_worker: Skip parsing file if the returned VfsFile is nullptr Prevents crashes in GetLoader when the virtual file is nullptr * common: fs: Validate paths for path length * service: filesystem: Open the mod load directory as read only | |||||
2021-05-25 | yuzu qt: Add an Apply button to configuration dialogs | lat9nq | 6 | -18/+57 | |
Most of the code already exists to do this, but the Apply button itself was never added. This adds a button and boolean that tells yuzu to save the configuration after applying settings, even if close/Cancel is pressed on the dialog. Changes after applying will not be saved when Cancel is pressed, though. | |||||
2021-05-25 | kernel: process_capability: Add MapRegion capability | Morph | 2 | -0/+12 | |
- Used by nx-hbloader | |||||
2021-05-24 | zstd_compression: Make use of std::span | Lioncash | 2 | -3/+4 | |
Allows for the incoming data stream to be non-allocating. | |||||
2021-05-24 | lz4_compression: Make use of std::span | Lioncash | 2 | -4/+4 | |
Allows making the incoming data stream non-allocating. | |||||
2021-05-24 | hid: ApplyNpadSystemCommonPolicy | Chloe Marcec | 1 | -1/+10 | |
We already do this specifically for homebrew, so we can keep it stubbed out for the time being | |||||
2021-05-24 | settings: Forbid docked mode on handheld | german77 | 3 | -4/+24 | |
2021-05-23 | input_common: Add dual joycon support | german77 | 2 | -60/+258 | |
2021-05-23 | settings: Suppress duplicate label name warning | german77 | 1 | -3/+3 | |
2021-05-22 | applets/swkbd: Make use of QueuedConnection in returnPressed signal | Morph | 1 | -15/+3 | |
Some users have reported rare crashes when pressing the Enter key on the keyboard to confirm input in the normal software keyboard, particularly in Super Smash Bros. Ultimate while entering the name of a ruleset or controller layout. It is suspected that the QLineEdit::returnPressed signal is causing a race condition as confirming input through other means does not produce the crash. Since Qt::QueuedConnection posts an event to the event queue of the callee's thread instead of executing it directly on the caller's thread, this eliminates any potential race conditions from occurring in this scenario. | |||||
2021-05-21 | hle: kernel: service_thread: Take reference to KServerSession on service request. | bunnei | 1 | -9/+5 | |
2021-05-21 | hle: kernel: k_port: Use AcceptSession to ensure SessionList state is correct. | bunnei | 1 | -1/+1 | |
- Fixes a use-after-free, work-around until we fixup session/port management. | |||||
2021-05-21 | hle: kernel: Use host memory allocations for KSlabMemory. | bunnei | 4 | -174/+20 | |
- There are some issues with the current workaround, we will just use host memory until we have a complete kernel memory implementation. | |||||
2021-05-21 | Revert "WORKAROUND: Do not use slab heap while we track down issues with resource management." | bunnei | 1 | -2/+2 | |
This reverts commit f2c26443f85a3c3fd43137509368ba5c7ab80ee7. | |||||
2021-05-21 | hle: kernel: hle_ipc: Simplify incoming/outgoing move/copy/domain objects. | bunnei | 3 | -62/+17 | |
2021-05-21 | common: tree: Avoid a crash on nullptr dereference. | bunnei | 1 | -0/+11 | |
2021-05-21 | hle: kernel: Implement CloneCurrentObject and improve session management. | bunnei | 13 | -99/+184 | |
2021-05-21 | Revert "WORKAROUND: temp. disable session resource limits while we work out issues" | bunnei | 4 | -11/+11 | |
This reverts commit fc086f93b2165b5c210cb7dcd6c18ebe17f1fd7b. | |||||
2021-05-20 | configure_cpu: Simplify UpdateGroup | lat9nq | 1 | -7/+4 | |
Co-authored-by: Ameer J <52414509+ameerj@users.noreply.github.com> | |||||
2021-05-19 | configuration_shared: Drop unused function and template another | lat9nq | 2 | -52/+7 | |
Drops an unused variant of ApplyPerGameSetting, and turns the QComboBox variants of SetPerGameSetting into a template. Co-authored-by: Ameer J <52414509+ameerj@users.noreply.github.com> | |||||
2021-05-19 | applets/swkbd: Send the correct text string on TextCheck::Confirm | Morph | 1 | -8/+8 | |
Previously the text string for the inline software keyboard was being sent instead of the normal software keyboard, leading to empty text being sent all the time. | |||||
2021-05-18 | KTransferMemory: Return size instead of size * PageSize in GetSize() | Morph | 1 | -1/+1 | |
size is already the size in bytes. We do not need to multiply it by the page size | |||||
2021-05-18 | hid/gesture: Factor out last gesture retrieval into its own function | Lioncash | 2 | -14/+23 | |
Deduplicates a commonly repeated expression. | |||||
2021-05-18 | hid/gesture: Ensure all ID arrays are initialized | Lioncash | 1 | -4/+4 | |
Makes for deterministic initial state. | |||||
2021-05-18 | hid/gesture: Make Point a template | Lioncash | 2 | -38/+46 | |
We can now use this in a generic context to reuse it with the finger position. | |||||
2021-05-18 | hid/gesture: Replace x,y members of GestureState with a Point | Lioncash | 2 | -6/+4 | |
Simplifies assignments. | |||||
2021-05-18 | hid/gesture: Add default comparators to Point | Lioncash | 2 | -10/+7 | |
Simplifies some comparisons. | |||||
2021-05-18 | hid/gesture: Rename Points to Point | Lioncash | 1 | -5/+5 | |
This only represents a single point | |||||
2021-05-17 | general: Demote custom_rtc to regular setting | lat9nq | 6 | -58/+30 | |
2021-05-17 | CMakeLists: Enforce C4715 on MSVC | Morph | 1 | -0/+1 | |
This is similar to -Werror=return-type | |||||
2021-05-17 | configure_debug: FIx duplicate labels | Morph | 1 | -5/+5 | |
Duplicate labels were unintentionally introduced due to copy-paste. This silences the compilation warning produced by the presence of these duplicates. | |||||
2021-05-17 | yuzu/main: Fix version info in logging and about dialog | Morph | 3 | -14/+17 | |
2021-05-16 | buffer_cache: Ensure null buffers cannot take the fast uniform bind path | ameerj | 1 | -1/+4 | |
Fixes a crash in New Pokemon Snap | |||||
2021-05-16 | main: Prevent installing base titles into NAND | Morph | 4 | -3/+28 | |
Many users have been installing their base titles into NAND instead of adding them into the games list. This prevents users from installing any base titles and warns the user about the action. | |||||
2021-05-16 | hle_ipc: unsigned -> u32 | Morph | 1 | -7/+7 | |
This is more concise and consistent with the rest of the codebase. | |||||
2021-05-16 | hle_ipc: Add a getter for PID | Morph | 2 | -2/+7 | |
2021-05-16 | core: Make variable shadowing a compile-time error | Lioncash | 99 | -279/+304 | |
Now that we have most of core free of shadowing, we can enable the warning as an error to catch anything that may be remaining and also eliminate this class of logic bug entirely. | |||||
2021-05-16 | configuration: Add CPU tab to game properties | lat9nq | 13 | -88/+181 | |
Allows setting CPU accuracy to Accurate or Unsafe per-game, as well as the accuracy options for Unsafe. Debug is not allowed here as a per-game CPU accuracy. | |||||
2021-05-16 | nifm, ssl: Fix incorrect response sizes | Morph | 2 | -2/+2 | |
2021-05-16 | configuration: Simplify applying per-game settings | lat9nq | 6 | -112/+69 | |
Originally, every time we add a per-game setting, we'd have to guard for it when setting it on the global config, and use a specific function to do it for the per-game config. This moves the global check into the ApplyPerGameSetting function so that we can use it for changing both the global and per-game states. Less work for the programmer. | |||||
2021-05-16 | configuration_shared: Add some comments | lat9nq | 1 | -6/+14 | |
Monke brain can't remember what all of these does a year later. | |||||
2021-05-16 | general: Make CPU accuracy and related a Settings::Setting | lat9nq | 7 | -41/+47 | |
Required to make CPU accuracy and unsafe settings available to use as a per-game setting. | |||||
2021-05-16 | perf_stats: Rework FPS counter to be more accurate | ameerj | 10 | -14/+26 | |
The FPS counter was based on metrics in the nvdisp swapbuffers call. This metric would be accurate if the gpu thread/renderer were synchronous with the nvdisp service, but that's no longer the case. This commit moves the frame counting responsibility onto the concrete renderers after their frame draw calls. Resulting in more meaningful metrics. The displayed FPS is now made up of the average framerate between the previous and most recent update, in order to avoid distracting FPS counter updates when framerate is oscillating between close values. The status bar update frequency was also changed from 2 seconds to 500ms. | |||||
2021-05-15 | main: Add title's version to window name on EA/mainline | ameerj | 1 | -11/+6 | |
Fixes the missing title version number on EA/mainline builds which override the title bar string. | |||||
2021-05-15 | input_common: Implement SDL motion | german77 | 5 | -3/+167 | |
2021-05-15 | input_common: Fix crash when controller disconnects | german77 | 1 | -1/+3 | |
2021-05-15 | input_common: Rewrite sdl analog mapping | german77 | 1 | -25/+25 | |
2021-05-13 | input_common: Sanitize motion data | german77 | 1 | -0/+23 | |
2021-05-13 | ssl: Stub Import(Client/Server)Pki | Morph | 1 | -2/+40 | |
- Used in JUMP FORCE Deluxe Edition | |||||
2021-05-12 | common: tree: Avoid a nullptr dereference. | bunnei | 1 | -1/+1 | |
2021-05-11 | hle: kernel: hle_ipc: Fix outgoing IPC response size calculation. | bunnei | 3 | -1/+15 | |
2021-05-11 | WORKAROUND: temp. disable session resource limits while we work out issues | bunnei | 4 | -11/+11 | |
2021-05-11 | WORKAROUND: Do not use slab heap while we track down issues with resource management. | bunnei | 1 | -2/+2 | |
2021-05-11 | audren | bunnei | 2 | -25/+16 | |
2021-05-11 | core: hle: ipc_helpers: Fix cast on raw_data_size calculation. | bunnei | 1 | -1/+1 | |
2021-05-11 | hle: service: sm: Add TIPC support. | bunnei | 2 | -41/+66 | |
- Fixes our error checking of names as well. | |||||
2021-05-11 | hle: kernel: hle_ipc: Improve IPC code and add initial support for TIPC. | bunnei | 2 | -81/+57 | |
- Fixes our move handles implementation to actually move objects. - Simplifies the traditional IPC path. | |||||
2021-05-11 | hle: service: sm: GetService: Reserve session resource when we create a KSession. | bunnei | 1 | -0/+7 | |
2021-05-11 | hle: service: Add support for dispatching TIPC requests. | bunnei | 2 | -1/+52 | |
2021-05-11 | hle: service: Implement IPC::CommandType::Close. | bunnei | 3 | -11/+15 | |
- This was not actually closing sessions before. | |||||
2021-05-11 | hle: service: sm: Use RegisterNamedService to register the service. | bunnei | 1 | -1/+1 | |
2021-05-11 | hle: service: sm: Improve Initialize implementation. | bunnei | 2 | -0/+3 | |
2021-05-11 | hle: kernel: svc: Update ConnectToNamedPort to use new CreateNamedServicePort interface. | bunnei | 1 | -4/+3 | |
2021-05-11 | hle: kernel: Implement named service ports using service interface factory. | bunnei | 4 | -22/+30 | |
- This allows us to create a new interface each time ConnectToNamedPort is called, removing the assumption that these are static. | |||||
2021-05-11 | hle: kernel: KSession: Improve implementation of CloneCurrentObject. | bunnei | 1 | -2/+10 | |
2021-05-11 | hle: service: sm: Increase point buffer size. | bunnei | 1 | -1/+1 | |
2021-05-11 | hle: ipc_helpers: Reserve session resource when we create a KSession. | bunnei | 1 | -0/+5 | |
2021-05-11 | hle: kernel: KClientPort: Cleanup comment format. | bunnei | 1 | -1/+1 | |
2021-05-11 | hle: ipc: Add declarations for TIPC. | bunnei | 1 | -1/+16 | |
2021-05-11 | hle: kernel: Further cleanup and add TIPC helpers. | bunnei | 2 | -4/+12 | |
2021-05-11 | hle: ipc_helpers: Update IPC response generation for TIPC. | bunnei | 2 | -19/+39 | |
2021-05-10 | configure_ui: Call RequestGameListUpdate when toggling "Show Add-Ons Column" | Kewlan | 1 | -0/+1 | |
2021-05-10 | parent_of_member: Make sign conversion explicit in OffsetOfImpl() | Lioncash | 1 | -1/+2 | |
Previously these conversions were implicit and causing quite a few warnings on clang. | |||||
2021-05-09 | kernel: Delete unused files | german77 | 2 | -151/+0 | |
2021-05-08 | kernel: Eliminate variable shadowing | Lioncash | 40 | -140/+138 | |
Now that the large kernel refactor is merged, we can eliminate the remaining variable shadowing cases. | |||||
2021-05-08 | texture_cache: Handle out of bound texture blits | ameerj | 8 | -61/+99 | |
Some games interleave a texture blit using regions which are out-of-bounds. This addresses the interleaving to avoid oob reads from the src texture. | |||||
2021-05-07 | ldr: Simplify memory copy within LoadNro() | Lioncash | 1 | -5/+3 | |
We can use the dedicated memory function for performing copies instead of reading into a temporary buffer and then immediately writing it back out to memory. Eliminates a bit of heap memory churn. | |||||
2021-05-06 | nvflinger: Create layers when they are queried but not found | ameerj | 2 | -5/+35 | |
Fixes Shantae softlock on boot. | |||||
2021-05-06 | hle: kernel: KPageTable: CanContain should not be constexpr. | bunnei | 2 | -2/+2 | |
2021-05-06 | hle: kernel: Move slab resource counts to Kernel. | bunnei | 4 | -33/+52 | |
2021-05-06 | fixup! hle: kernel: Migrate KSharedMemory to KAutoObject. | bunnei | 1 | -2/+2 | |
2021-05-06 | fixup! hle: kernel: Migrate more of KThread to KAutoObject. | bunnei | 1 | -1/+1 | |
2021-05-06 | fixup! common: bit_util: Add BIT macro. | bunnei | 1 | -2/+0 | |
2021-05-06 | fixup! hle: kernel: Ensure all kernel objects with KAutoObject are properly created. | bunnei | 1 | -2/+0 | |
2021-05-06 | fixup! hle: kernel: Ensure all kernel objects with KAutoObject are properly created. | bunnei | 1 | -2/+0 | |
2021-05-06 | kernel: svc: Remove unused RetrieveResourceLimitValue function. | bunnei | 1 | -32/+0 | |
2021-05-06 | hle: kernel: Fix un/sign mismatch errors with NUM_CPU_CORES. | bunnei | 1 | -3/+3 | |
2021-05-06 | fixup! hle: kernel: Add initial impl. of slab setup. | bunnei | 1 | -6/+2 | |
2021-05-06 | fixup! hle: kernel: Migrate to KHandleTable. | bunnei | 1 | -0/+3 | |
2021-05-06 | fixup! hle: kernel: Migrate more of KThread to KAutoObject. | bunnei | 1 | -7/+0 | |
2021-05-06 | common: parent_of_member: Fix build for OffsetOf(). | bunnei | 1 | -4/+4 | |
2021-05-06 | fixup! common: intrusive_red_black_tree: Disable static_assert that will not evaluate as constant on MSVC. | bunnei | 1 | -5/+0 | |
2021-05-06 | fixup! hle: kernel: Migrate KReadableEvent and KWritableEvent to KAutoObject. | bunnei | 2 | -2/+2 | |
2021-05-06 | fixup! hle: kernel: Migrate to KHandleTable. | bunnei | 1 | -1/+1 | |
2021-05-06 | fixup! hle: kernel: Add initial impl. of KLinkedList. | bunnei | 1 | -12/+12 | |
2021-05-06 | fixup! hle: kernel: Migrate to KHandleTable. | bunnei | 1 | -1/+1 | |
2021-05-06 | fixup! hle: kernel: Migrate KPort, KClientPort, and KServerPort to KAutoObject. | bunnei | 1 | -1/+1 | |
2021-05-06 | fixup! hle: kernel: Migrate KSession, KClientSession, and KServerSession to KAutoObject. | bunnei | 3 | -22/+28 | |
2021-05-06 | fixup! hle: kernel: Migrate KSession, KClientSession, and KServerSession to KAutoObject. | bunnei | 1 | -1/+1 | |
2021-05-06 | fixup! hle: kernel: Migrate KPort, KClientPort, and KServerPort to KAutoObject. | bunnei | 1 | -1/+1 | |
2021-05-06 | fixup! hle: kernel: Migrate to KHandleTable. | bunnei | 1 | -60/+58 | |
2021-05-06 | fixup! hle: kernel: Add initial impl. of KAutoObjectWithListContainer. | bunnei | 1 | -11/+9 | |
2021-05-06 | fixup! hle: kernel: Add initial impl. of KAutoObjectWithListContainer. | bunnei | 1 | -9/+2 | |
2021-05-06 | fixup! hle: kernel: Add initial impl. of KAutoObject. | bunnei | 1 | -46/+46 | |
2021-05-06 | fixup! hle: kernel: Add initial impl. of KAutoObject. | bunnei | 1 | -1/+1 | |
2021-05-06 | fixup! hle: kernel: Add initial impl. of slab setup. | bunnei | 1 | -8/+8 | |
2021-05-06 | common: Rename NON_COPYABLE/NON_MOVABLE with YUZU_ prefix. | bunnei | 5 | -11/+11 | |
2021-05-06 | fixup! hle: kernel: Rename Process to KProcess. | bunnei | 1 | -1/+1 | |
2021-05-06 | fixup! hle: kernel: Migrate to KHandleTable. | bunnei | 1 | -1/+1 | |
2021-05-06 | fixup! hle: kernel: Improve MapSharedMemory and implement UnmapSharedMemory. | bunnei | 1 | -3/+3 | |
2021-05-06 | hle: kernel: svc: ConnectToNamedPort: Use KHandleTable::Reserve. | bunnei | 1 | -3/+8 | |
2021-05-06 | hle: kernel: Migrate to KHandleTable. | bunnei | 22 | -381/+503 | |
2021-05-06 | hle: kernel: KClassToken: Ensure class tokens are correct. | bunnei | 1 | -1/+127 | |
2021-05-06 | hle: kernel: Improve MapSharedMemory and implement UnmapSharedMemory. | bunnei | 10 | -95/+210 | |
2021-05-06 | hle: kernel: Rename Process to KProcess. | bunnei | 83 | -247/+249 | |
2021-05-06 | hle: kernel: Remove deprecated Object class. | bunnei | 39 | -423/+34 | |
2021-05-06 | hle: kernel: Do not shutdown twice on emulator close. | bunnei | 1 | -3/+1 | |
2021-05-06 | hle: kernel: Cleanup shutdown of persistent kernel objects. | bunnei | 1 | -14/+12 | |
2021-05-06 | hle: kernel: Migrate KPort, KClientPort, and KServerPort to KAutoObject. | bunnei | 22 | -166/+444 | |
2021-05-06 | hle: kernel: Migrate KServerPort to KAutoObject. | bunnei | 8 | -52/+67 | |
2021-05-06 | hle: kernel: Migrate KClientPort to KAutoObject. | bunnei | 18 | -63/+92 | |
2021-05-06 | hle: kernel: HandleTable: Remove deprecated APIs. | bunnei | 7 | -111/+28 | |
2021-05-06 | hle: kernel: Migrate KResourceLimit to KAutoObject. | bunnei | 13 | -122/+197 | |
2021-05-06 | hle: kernel: svc: Migrate WaitSynchronization. | bunnei | 2 | -47/+78 | |
2021-05-06 | hle: kernel: svc: Use new handle table API for Process. | bunnei | 2 | -16/+17 | |
2021-05-06 | hle: kernel: Migrate KTransferMemory to KAutoObject. | bunnei | 12 | -68/+209 | |
2021-05-06 | hle: kernel: Migrate KSession, KClientSession, and KServerSession to KAutoObject. | bunnei | 31 | -356/+412 | |
2021-05-06 | hle: kernel: svc: Migrate GetThreadContext, GetThreadCoreMask. | bunnei | 1 | -2/+59 | |
2021-05-06 | hle: kernel: svc: Migrate GetProcessId, CancelSynchronization, SetThreadActivity. | bunnei | 1 | -13/+67 | |
2021-05-06 | hle: kernel: KThread: Remove incorrect resource release. | bunnei | 1 | -2/+1 | |
2021-05-06 | hle: kernel: svc_results: Update naming.. | bunnei | 8 | -42/+43 | |
2021-05-06 | hle: kernel: KThread: Add missing resource hint release. | bunnei | 1 | -1/+1 | |
2021-05-06 | hle: kernel: Migrate KReadableEvent and KWritableEvent to KAutoObject. | bunnei | 35 | -200/+215 | |
2021-05-06 | hle: ipc_helpers: Add methods for copy/move references. | bunnei | 1 | -2/+24 | |
2021-05-06 | hle: kernel: Move slab heaps to their own container. | bunnei | 2 | -10/+16 | |
2021-05-06 | hle: kernel: Refactor several threads/events/sharedmemory to use slab heaps. | bunnei | 11 | -59/+53 | |
2021-05-06 | hle: kernel: Move slab heap management to KernelCore. | bunnei | 7 | -64/+106 | |
2021-05-06 | hle: kernel: Ensure all kernel objects with KAutoObject are properly created. | bunnei | 20 | -0/+55 | |
2021-05-06 | hle: kernel: Use unique_ptr for suspend and dummy threads. | bunnei | 1 | -8/+8 | |
2021-05-06 | hle: kernel: Migrate KEvent to KAutoObject. | bunnei | 37 | -266/+269 | |
2021-05-06 | hle: kernel: Migrate KSharedMemory to KAutoObject. | bunnei | 16 | -114/+128 | |
2021-05-06 | hle: kernel: Migrate KProcess to KAutoObject. | bunnei | 14 | -58/+80 | |
2021-05-06 | hle: kernel: Refactor IPC interfaces to not use std::shared_ptr. | bunnei | 28 | -59/+65 | |
2021-05-06 | hle: kernel: Migrate more of KThread to KAutoObject. | bunnei | 18 | -294/+451 | |
2021-05-06 | hle: kernel: svc: Migrate GetThreadPriority, StartThread, and ExitThread. | bunnei | 1 | -21/+12 | |
2021-05-06 | hle: kernel: svc: Migrate CreateThread. | bunnei | 1 | -14/+21 | |
2021-05-06 | hle: kernel: Migrate idle threads. | bunnei | 2 | -13/+9 | |
2021-05-06 | hle: kernel: Migrate KThread to KAutoObject. | bunnei | 2 | -109/+91 | |
2021-05-06 | hle: kernel: Add initial impl. of slab setup. | bunnei | 3 | -0/+227 | |
2021-05-06 | hle: kernel: Refactor out various KThread std::shared_ptr usage. | bunnei | 10 | -58/+30 | |
2021-05-06 | core: Defer CoreTiming initialization. | bunnei | 1 | -1/+1 | |
2021-05-06 | core: memory: Add a work-around to allocate and access kernel memory regions by vaddr. | bunnei | 3 | -1/+46 | |
2021-05-06 | common: common_funcs: Add Size helper function. | bunnei | 1 | -0/+15 | |
2021-05-06 | hle: kernel: Add initial impl. of KLinkedList. | bunnei | 2 | -0/+234 | |
2021-05-06 | common: bit_util: Add BIT macro. | bunnei | 1 | -0/+2 | |
2021-05-06 | hle: kernel: Add initial impl. of KSlabAllocated. | bunnei | 2 | -0/+153 | |
2021-05-06 | hle: kernel: Add initial impl. of KAutoObjectWithListContainer. | bunnei | 3 | -0/+109 | |
2021-05-06 | hle: kernel: Add initial impl. of KAutoObject. | bunnei | 3 | -0/+306 | |
2021-05-06 | common: intrusive_red_black_tree: Disable static_assert that will not evaluate as constant on MSVC. | bunnei | 1 | -0/+4 | |
2021-05-06 | common: common_funcs: Add helper macros for non-copyable and non-moveable. | bunnei | 1 | -0/+8 | |
- Useful for scenarios where we do not want to inherit from NonCopyable. | |||||
2021-05-06 | Update src/core/hle/service/nvdrv/interface.cpp | bunnei | 1 | -1/+1 | |
Co-authored-by: Ameer J <52414509+ameerj@users.noreply.github.com> | |||||
2021-05-05 | hid: Improve hardware accuracy of gestures | german77 | 2 | -76/+340 | |
2021-05-05 | service: Remove unused class variables | Lioncash | 3 | -7/+4 | |
Prevents some warnings from occurring. | |||||
2021-05-04 | service: Resolve cases of member field shadowing | Lioncash | 60 | -117/+119 | |
Now all that remains is for kernel code to be 'shadow-free' and then -Wshadow can be turned into an error. | |||||
2021-05-03 | core: Resolve misc cases of variable shadowing | Lioncash | 10 | -25/+27 | |
Resolves shadowing warnings that aren't in a particularly large subsection of core. Brings us closer to turning -Wshadow into an error. All that remains now is for cases in the kernel (left untouched for now since a big change by bunnei is pending), and a few left over in the service code (will be tackled next). | |||||
2021-05-03 | nvdrv: /dev/nvhost-prof-gpu for production | Chloe Marcec | 1 | -3/+14 | |
While we're at it, we can fix the is_initialized error code. This fixes the crashes on Shante | |||||
2021-05-03 | hid: Fix touch not initializing properly if disabled | german77 | 2 | -2/+10 | |
2021-05-03 | input_common: Release mouse buttons on out of focus | german77 | 3 | -1/+18 | |
2021-05-02 | file_sys: Resolve cases of variable shadowing | Lioncash | 21 | -114/+132 | |
Brings us closer to enabling -Wshadow as an error in the core code. | |||||
2021-05-01 | service: filesystem: Return proper error codes for CreateFile | Morph | 2 | -2/+8 | |
This improves the accuracy of CreateFile by returning the correct error codes on certain conditions (parent directory does not exist, path already exists). This fixes saving and the loading of existing saves in New Pokemon Snap | |||||
2021-05-01 | Disable touch if setting is not enabled | german77 | 2 | -2/+2 | |
2021-04-30 | game_list: Fix dir move up/down expand state | Kewlan | 1 | -2/+4 | |
2021-04-30 | game_list: Update filter results when removing directories | Kewlan | 2 | -5/+6 | |
2021-04-29 | yuzu: config: Silence narrowing conversion warning on MSVC | Morph | 1 | -2/+1 | |
2021-04-28 | applets/web: Fix a use-after-free when passing in the URL string | Morph | 6 | -25/+28 | |
The URL string was being deleted before being used, leading to a use-after-free occurring when it is used afterwards. Fix this by taking the string by const ref to extend its lifetime, ensuring it doesn't get deleted before use. | |||||
2021-04-28 | yuzu: main: Silence type conversion warning on MSVC | Morph | 1 | -1/+1 | |
2021-04-27 | loader: Resolve instances of variable shadowing | Lioncash | 19 | -169/+257 | |
Eliminates variable shadowing cases across all the loaders to bring us closer to enabling variable shadowing as an error in core. | |||||
2021-04-27 | address comments | german77 | 2 | -5/+5 | |
2021-04-27 | input_common: Reset GC sticks center by measuring multiple packets | german77 | 2 | -2/+7 | |
2021-04-26 | gl_device: Intel: Disable texture view formats workaround on mesa | A-w-x | 1 | -1/+1 | |
2021-04-26 | service: Eliminate cases of member shadowing | Lioncash | 15 | -76/+81 | |
Resolves a few localized instances of member variable shadowing. Brings us a little closer to turning shadowing warnings into errors. | |||||
2021-04-25 | config: Add new keyboard bindings | Morph | 1 | -9/+10 | |
Changes the keyboard bindings to be based on RPCS3's tried and true keyboard bindings. | |||||
2021-04-25 | vk_texture_cache: Swap R and B channels of color flipped format | ameerj | 1 | -1/+24 | |
Swaps the Red and Blue channels of the A1B5G5R5_UNORM texture format, which was being incorrectly rendered. | |||||
2021-04-25 | nvhost_vic: Fix device closure | ameerj | 4 | -15/+11 | |
Implements the OnClose method of the nvhost_vic device, and removes the remnants of an older implementation. Also cleans up some of the surrounding code. | |||||
2021-04-24 | applets/swkbd: Fix software keyboard button hint scaling | Its-Rei | 1 | -12/+6 | |
Fixes the scaling of the button hints using background images. Now they scale like the rest of the elements. | |||||
2021-04-24 | glue: Add ectx:aw placeholder | german77 | 4 | -0/+49 | |
2021-04-24 | hid: Implement SevenSixAxis and ConsoleSixAxisSensor | german77 | 10 | -17/+220 | |
2021-04-24 | ICommonStateGetter: Stub SetRequestExitToLibraryAppletAtExecuteNextProgramEnabled | Morph | 2 | -1/+10 | |
- Used by Pixel Game Maker Series Werewolf Princess Kaguya | |||||
2021-04-23 | program_metadata: Set a default resource size when a NPDM is not present | Morph | 3 | -4/+8 | |
Sets a default size of 0x1FE00000 bytes (510 MiB) for the system_resource_size when a NPDM is not present. | |||||
2021-04-23 | emu_window: Return pair from ClipToTouchScreen() instead of tuple | Lioncash | 2 | -5/+8 | |
This is only a 2-tuple, so it can be converted over to the std::pair class. | |||||
2021-04-23 | emu_window: unsigned -> u32 | Lioncash | 4 | -23/+23 | |
This is more concise and consistent with the rest of the codebase. | |||||
2021-04-23 | aes_util: Make use of std::span | Lioncash | 2 | -9/+5 | |
Allows us to simplify the interface quite a bit as it will handle contiguous sequences for us. | |||||
2021-04-23 | acc/lbl: Remove unused variables | Lioncash | 2 | -6/+0 | |
2021-04-23 | lm: Make use of insert_or_assign() in Log() | Lioncash | 1 | -1/+1 | |
Avoids unnecessary default construction of an entry in cases where no entry exists before overwriting the created entry. | |||||
2021-04-23 | lm: Prevent redundant map lookups in Log() | Lioncash | 1 | -4/+5 | |
We can perform the lookup and then do the contains check by checking the end iterator. The benefit of this is that if we *do* find an entry, then we aren't hashing into the map again to find it. We can also get rid of an unused std::vector temporary while we're at it. | |||||
2021-04-23 | lm: Resolve -Wextra-semi warning | Lioncash | 1 | -1/+1 | |
Resolves a trivial warning with clang. | |||||
2021-04-23 | program_metadata: Explicitly specify copy/move functions | Lioncash | 1 | -0/+6 | |
The generation of the copy assignment operators are deprecated on being generated when a user-provided destructor is present. We can explicitly specify that we desire this behavior to keep the class forward compatible with future standards. | |||||
2021-04-23 | yuzu_cmd: Remove unused resource.h | ameerj | 2 | -17/+0 | |
2021-04-22 | service: hid: Get transfer memory for InitializeSevenSixAxisSensor | Morph | 1 | -1/+38 | |
2021-04-20 | log/backend: Use in-class initializer for FileBackend | Lioncash | 2 | -6/+8 | |
We can also avoid redundant constructions of the same string repeatedly. | |||||
2021-04-20 | log/backend: Make use of erase_if | Lioncash | 1 | -4/+4 | |
Same behavior, but less verbose. | |||||
2021-04-19 | texture_cache/util: Fix src being used instead of dst within DeduceBlitImages | Lioncash | 1 | -1/+1 | |
This line can only ever be reached if src is null, so dereferencing it here is a logic bug that slipped through. Instead, we dereference dst instead which is guaranteed to be valid. | |||||
2021-04-19 | general: Write buffers before pushing raw arguments | Morph | 3 | -5/+12 | |
For consistency with the rest of the service implementations | |||||
2021-04-19 | arp: Use type alias for issue function | Lioncash | 1 | -4/+4 | |
Reduces some verbosity and centralizes the function details in one spot. | |||||
2021-04-19 | arp: Prevent uninitialized read of launch member variable | Lioncash | 1 | -1/+1 | |
If anything happened to call arp functions in the wrong order and called IRegistrar's Issue function before SetApplicationLaunchProperty, we'd read from an uninitialized ApplicationLaunchProperty instance. Instead, we can always initialize it so if this does happen, then the outcome of doing such a thing is at least consistently reproducible. | |||||
2021-04-19 | npad: Remove duplicated class member variable | Lioncash | 2 | -2/+1 | |
ControllerBase already has a System reference that can be accessed from this class, so we can get rid of this to make the class layout a little more straightforward. | |||||
2021-04-19 | time: Write buffer before pushing RESULT_SUCCESS in GetClockSnapshot | Morph | 1 | -1/+2 | |
2021-04-19 | time: Fix GetClockSnapshotFromSystemClockContext | Morph | 1 | -2/+3 | |
This removes an incorrect alignment usage and corrects the positions of the popped parameters. - Fixes Super Kirby Clash crashing on boot | |||||
2021-04-18 | general: Ignore implicit-fallthrough for SDL.h | lat9nq | 5 | -0/+47 | |
SDL 2.0.14 introduces an incompatibility with Clang, causing it to trigger -Wimplicit-fallthrough even though it is marked. Ignore it for now, with a comment mentioning why this is needed. | |||||
2021-04-18 | cmake: Use SDL 2.0.14 and fix CMake scope issue | lat9nq | 1 | -1/+1 | |
Forces using SDL 2.0.14. Upgrades the SDL external to that version. Adds a message when switching to the external. Fixes an error where input_common only links to SDL when SDL2_FOUND is set, but externals/CMakeLists cannot set that variable to the required scope. Switch to using ENABLE_SDL2, which we can use since we now include the SDL source. | |||||
2021-04-17 | applets: Send focus state change message on applet state change | Morph | 10 | -22/+56 | |
Fixes the softlock after the controller applet exits in Mario Kart 8 Deluxe. | |||||
2021-04-17 | applets: Make the applet mode a protected property of Applet | Morph | 14 | -22/+20 | |
2021-04-16 | Address issues | Chloe Marcec | 1 | -3/+2 | |
2021-04-15 | applets/swkbd: Implement the Qt Software Keyboard frontend | Morph | 6 | -14/+5518 | |
The Qt Software Keyboard frontend attempts to mimic the software keyboard rendered by the Nintendo Switch. This frontend implements multiple keyboard types, such as the normal software keyboard, the numeric pad software keyboard and the inline software keyboard. Keyboard and controller input is also supported in this frontend. Keyboard input is handled as native keyboard input, and so the on-screen keyboard cannot be navigated with the keyboard arrow keys as the arrow keys are used to move the text cursor. Controller input is translated into mouse hover movements on the onscreen keyboard or their respective button actions (B for backspace, A for entering the selected button, L/R for moving the text cursor, etc). The text check dialogs can also be confirmed with controller input through the use of the OverlayDialog Massive thanks to Rei for creating all the UI for the various keyboards and OverlayDialog. This would not have been possible without his excellent work. Co-authored-by: Its-Rei <kupfel@gmail.com> | |||||
2021-04-15 | error: Make the error code as the title text of the OverlayDialog | Morph | 4 | -15/+17 | |
Co-authored-by: Its-Rei <kupfel@gmail.com> | |||||
2021-04-15 | overlay_dialog: Add an overlay text dialog that accepts controller input | Morph | 5 | -1/+768 | |
An OverlayDialog is an interactive dialog that accepts controller input (while a game is running) This dialog attempts to replicate the look and feel of the Nintendo Switch's overlay dialogs and provide some extra features such as embedding HTML/Rich Text content in a QTextBrowser. The OverlayDialog provides 2 modes: one to embed regular text into a QLabel and another to embed HTML/Rich Text content into a QTextBrowser. Co-authored-by: Its-Rei <kupfel@gmail.com> | |||||
2021-04-15 | main: Move meta type registration into its own function | Morph | 2 | -9/+65 | |
Moves the existing meta type registration into its own function and adds registration of common integral, floating point and string types. This function is also now called in the constructor of the GMainWindow instead of on starting a game. | |||||
2021-04-15 | input_interpreter: Fix button hold being interpreted incorrectly on init | Morph | 2 | -1/+17 | |
We reset all the button states to 0 except the first index (which has all the buttons as pressed) to prevent a button hold being interpreted as a button that was pressed once on the first poll. | |||||
2021-04-15 | applets/swkbd: Implement the Default Software Keyboard frontend | Morph | 2 | -2/+236 | |
2021-04-15 | applets/swkbd: Implement the Normal and Inline Software Keyboard Applet | Morph | 4 | -13/+1488 | |
2021-04-15 | ILibraryAppletCreator: Implement CreateHandleStorage | Morph | 2 | -6/+64 | |
Used by Monster Hunter Generations Ultimate | |||||
2021-04-15 | hle_ipc: Add helper functions to get copy/move handles | Morph | 2 | -2/+16 | |
2021-04-15 | ILibraryAppletAccessor: Demote from ERROR to DEBUG for null storage logs | Morph | 1 | -2/+2 | |
Avoids unnecessary console spam when the inline software keyboard is used. | |||||
2021-04-15 | applets: Pass in the LibraryAppletMode each applet's constructor | Morph | 13 | -33/+58 | |
2021-04-15 | applets: Remove the previous software keyboard applet implementation | Morph | 8 | -492/+14 | |
2021-04-15 | game_list: Mark games as favorite to make them appear at the top. | Kewlan | 5 | -5/+144 | |
Icons are from Icons8. | |||||
2021-04-15 | log/backend: Correct order of const in copy constructor | Lioncash | 1 | -2/+5 | |
Follows our predominant coding style. Also explicitly specifies the move constructor/assignment operator as well. | |||||
2021-04-15 | common/log: Move Log namespace into the Common namespace | Lioncash | 11 | -43/+53 | |
Forgot to move this over when I moved the rest of the source files with lacking namespaces over. | |||||
2021-04-15 | common: Move settings to common from core. | bunnei | 116 | -146/+144 | |
- Removes a dependency on core and input_common from common. | |||||
2021-04-15 | core: settings: Add setting for debug assertions and disable by default. | bunnei | 7 | -2/+28 | |
- This is a developer-only setting and no longer needs to be enabled by default. - Also adds "use_auto_stub" setting to SDL frontend while we are here. - Supersedes #1340. | |||||
2021-04-14 | k_resource_limit: Minor cleanup of member variables/headers | ameerj | 4 | -21/+13 | |
2021-04-13 | applets/controller: Hook up the "Motion" button functionality | Morph | 2 | -0/+19 | |
I forgot to hook this up during the development of the controller applet, this PR amends that. | |||||
2021-04-13 | nvidia_flags: Add missing header guard | Lioncash | 1 | -0/+2 | |
Prevents potential inclusion compilation errors. | |||||
2021-04-12 | kernel/process: Replace process resource limit instance with the kernel's resource limit | ameerj | 2 | -38/+27 | |
This commit addresses the inaccurate behavior of kernel processes creating their own resource limit, rather than utilizing the kernel's system-wide resource limit instance. | |||||
2021-04-12 | k_thread: Remove [[nodiscard]] attribute from ClearWaitCancelled() | Lioncash | 1 | -1/+1 | |
This function has a void return value, so this attribute doesn't apply to it. | |||||
2021-04-12 | engine_interface: Add missing virtual destructor | Lioncash | 4 | -4/+5 | |
Eliminates a potential bug vector related to inheritance. Plus, we should generally be specifying the destructor as virtual within purely virtual interfaces to begin with. | |||||
2021-04-12 | vk_master_semaphore: Deduplicate atomic access within IsFree() | Lioncash | 1 | -1/+1 | |
We can just reuse the already existing KnownGpuTick() to deduplicate the access. | |||||
2021-04-12 | vk_master_semaphore: Add missing const qualifier for IsFree() | Lioncash | 1 | -1/+1 | |
This member function doesn't modify class state. | |||||
2021-04-12 | vk_texture_cache: Make use of Common::BitCast where applicable | Lioncash | 1 | -5/+6 | |
Also clarify the TODO comment a little more on the lacking implementations for std::bit_cast. | |||||
2021-04-12 | texure_cache/util: Resolve implicit sign conversions with std::reduce | Lioncash | 2 | -11/+15 | |
Amends implicit sign conversions occurring with usages of std::reduce and also relocates it to its own utility function to reduce verbosity a little bit. | |||||
2021-04-12 | query_cache: Make use of std::erase_if | Lioncash | 1 | -5/+4 | |
Same behavior, but much more straightforward to read. | |||||
2021-04-11 | vk_buffer_cache: Fix offset for NULL vertex buffers | Joshua Ashton | 1 | -1/+1 | |
The Vulkan spec states: If an element of pBuffers is VK_NULL_HANDLE, then the corresponding element of pOffsets must be zero. https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/vkCmdBindVertexBuffers2EXT.html#VUID-vkCmdBindVertexBuffers2EXT-pBuffers-04112 | |||||
2021-04-11 | vulkan_device: Enable EXT_robustness2 features | Joshua Ashton | 1 | -0/+9 | |
When this was being made mandatory, these enablement of these features was removed, but this is still needed. Fixes: 757fd1e91716 ("vulkan_device: Require VK_EXT_robustness2") | |||||
2021-04-11 | renderer_vulkan: Check return value of AcquireNextImage | Joshua Ashton | 3 | -5/+10 | |
We can get into a really bad state by ignoring this leading to device loss and using incorrect resources. | |||||
2021-04-09 | ns: Update to 12.x | Morph | 1 | -3/+38 | |
2021-04-09 | aoc_u: Update to 12.x | Morph | 1 | -0/+2 | |
2021-04-09 | nim: Update to 12.x | Morph | 1 | -44/+55 | |
2021-04-09 | npns: Update to 12.x | Morph | 1 | -0/+3 | |
2021-04-09 | bgtc: Update to 12.x and implement OpenTaskService | Morph | 4 | -1/+36 | |
2021-04-09 | vi: Update to 12.x | Morph | 1 | -0/+8 | |
2021-04-09 | erpt: Update to 12.x | Morph | 1 | -1/+6 | |
2021-04-09 | btm: Update to 12.x | Morph | 1 | -0/+1 | |
2021-04-09 | btdrv: Update to 12.x | Morph | 1 | -0/+19 | |
2021-04-09 | wlan: Update to 12.x | german77 | 1 | -0/+7 | |
2021-04-09 | usb: Use proper names | german77 | 1 | -21/+21 | |
2021-04-09 | ITimeZoneService: Update to 12.x | german77 | 1 | -0/+1 | |
2021-04-09 | spl: Update to 12.x | german77 | 1 | -0/+3 | |
2021-04-09 | sfdnsres: Use proper names | german77 | 1 | -2/+2 | |
2021-04-09 | nsd: Update to 12.x | german77 | 1 | -0/+1 | |
2021-04-09 | ethc: Update to 12.x | german77 | 1 | -0/+1 | |
2021-04-09 | sm: Use proper names, update to 12.x | german77 | 1 | -4/+5 | |
2021-04-09 | set_sys: Update to 12.x | german77 | 1 | -0/+6 | |
2021-04-09 | pctl_module: Update to 12.x | german77 | 1 | -0/+3 | |
2021-04-09 | pcie: Use proper names | german77 | 1 | -1/+1 | |
2021-04-09 | olsc: Update to 12.x | german77 | 1 | -0/+1 | |
2021-04-09 | pl_u: Update to 12.x | german77 | 1 | -0/+4 | |
2021-04-09 | ldr: Use proper names | german77 | 1 | -16/+16 | |
2021-04-09 | arp: Use proper names, update to 12.x | german77 | 2 | -3/+10 | |
2021-04-09 | caps_u: Update to 12.x | german77 | 1 | -0/+1 | |
2021-04-09 | caps_a: Update to 12.x | german77 | 1 | -0/+1 | |
2021-04-09 | bpc: Use proper names | german77 | 1 | -2/+2 | |
2021-04-09 | bcat_module: Update to 12.x | german77 | 1 | -0/+2 | |
2021-04-09 | codecctl: Use proper names | german77 | 1 | -13/+13 | |
2021-04-09 | audren_u: Use proper names | german77 | 2 | -4/+4 | |
2021-04-09 | audren_a: Use proper names | german77 | 1 | -6/+6 | |
2021-04-09 | audrec_u: Use proper names, update to 12.x | german77 | 1 | -3/+4 | |
2021-04-09 | audrec_a: Use proper names | german77 | 1 | -2/+2 | |
2021-04-09 | audout_u: Use proper names | german77 | 1 | -3/+3 | |
2021-04-09 | audout_a: Use proper names | german77 | 1 | -6/+6 | |
2021-04-09 | audin_u: Use proper names | german77 | 1 | -7/+7 | |
2021-04-09 | audin_a: Use proper names | german77 | 1 | -4/+4 | |
2021-04-08 | externals: Search for shared opus installation. | Markus Wick | 1 | -1/+1 | |
We had used conan for opus before, but there was a bug in the AVX detection. However we still had the Findopus.cmake file within the repository, but not used. This patch reenables the Findopus helper and prefer the system wide installation of opus. | |||||
2021-04-08 | service: time: Setup the network clock with the local clock context | Morph | 6 | -21/+38 | |
Setting the network time allows some time based events using the network clock to not reset. | |||||
2021-04-08 | service: hid: Stub SetAnalogStickUseCenterClamp | Morph | 4 | -1/+29 | |
- Used by eBASEBALLパワフルプロ野球2020 | |||||
2021-04-08 | service: time: Fix CalculateStandardUserSystemClockDifferenceByUser | Morph | 1 | -3/+8 | |
CalculateStandardUserSystemClockDifferenceByUser passes in the ClockSnapshots through 2 input buffers and not as raw arguments. Fix this by reading the 2 input buffers instead of popping raw arguments. | |||||
2021-04-07 | video_core: Use a CV for blocking commands. | Markus Wick | 2 | -23/+31 | |
There is no need for a busy loop here. Let's just use a condition variable to save some power. | |||||
2021-04-07 | video_core/gpu_thread: Keep the write lock for allocating the fence. | Markus Wick | 2 | -1/+4 | |
Else the fence might get submited out-of-order into the queue, which makes testing them pointless. Overhead should be tiny as the mutex is just moved from the queue to the writing code. | |||||
2021-04-07 | video_core/gpu_thread: Implement a ShutDown method. | Markus Wick | 5 | -15/+28 | |
This was implicitly done by `is_powered_on = false`, however the explicit method allows us to block until the GPU is actually gone. This should fix a race condition while removing the other subsystems while the GPU is still active. | |||||
2021-04-07 | common/threadsafe_queue: Provide Wait() method. | Markus Wick | 2 | -3/+10 | |
It shall block until there is something to consume in the queue. And use it for the GPU emulation instead of the spin loop. This is only in booting the emulator, however in BOTW this is the case for about 1 second. | |||||
2021-04-07 | hwopus: Update to 12.x | Morph | 1 | -0/+4 | |
2021-04-07 | IFile: Update to 12.x | Morph | 1 | -3/+7 | |
2021-04-07 | fsp-srv: Update to 12.x | Morph | 2 | -3/+8 | |
2021-04-07 | dauth_o: Update to 11.x | Morph | 1 | -6/+11 | |
2021-04-07 | acc_u1: Update to 12.x | Morph | 1 | -13/+15 | |
2021-04-07 | acc_su: Update to 12.x | Morph | 1 | -17/+19 | |
2021-04-07 | hid: Update service function tables | german77 | 2 | -0/+85 | |
2021-04-07 | ISelfController: Update to 11.x | Morph | 1 | -0/+1 | |
2021-04-07 | IApplicationFunctions: Update to 11.x | Morph | 1 | -0/+6 | |
2021-04-07 | IDebugFunctions: Update to 12.x | Morph | 1 | -0/+2 | |
2021-04-07 | ICommonStateGetter: Update to 12.x | Morph | 1 | -0/+9 | |
2021-04-07 | IGlobalStateController: Update to 12.x | Morph | 1 | -0/+1 | |
2021-04-07 | IHomeMenuFunctions: Update to 12.x | Morph | 1 | -0/+3 | |
2021-04-07 | Amend bizarre clang-format suggestions | Lioncash | 3 | -5/+5 | |
2021-04-07 | k_scoped_scheduler_lock_and_sleep: Mark class as [[nodiscard]] | Lioncash | 1 | -1/+1 | |
Prevents logic bugs from slipping through. | |||||
2021-04-07 | k_scoped_lock: delete copy and move assignment operators | Lioncash | 1 | -2/+5 | |
If we delete the copy and move constructor, we should also be deleting the copy and move assignment operators (and even if this were intended, it would be pretty odd to not document why it's done this way). | |||||
2021-04-07 | k_scoped_lock: Mark class as [[nodiscard]] | Lioncash | 1 | -1/+1 | |
Prevents logic bugs of the kind described in the previous commit from slipping through. | |||||
2021-04-07 | k_scheduler: Mark KScopedSchedulerLock as [[nodiscard]] | Lioncash | 1 | -1/+1 | |
Prevents logic bugs like: KScopedSchedulerLock{kernel}; instead of: KScopedSchedulerLock lk{kernel}; from slipping through. | |||||
2021-04-07 | kernel: Increase event and session counts | ameerj | 1 | -2/+2 | |
12.x increased the number of available sessions and event resource counts | |||||
2021-04-07 | svc: Expand SVC tables | Lioncash | 1 | -0/+132 | |
12.x expanded the range of SVC entries from 0x7F to 0xBF (with all new entries being unused), so we can expand it to also match. | |||||
2021-04-07 | process_capability: Handle extended SVC range | Lioncash | 2 | -6/+1 | |
12.x extended the range of SVC IDs, so we need to expand the range of bits that need to be tested. The upside of this is that we can eliminate a range check, given the whole range is used. | |||||
2021-04-06 | config: Default to exclusive fullscreen mode on platforms other than Windows | Morph | 1 | -0/+12 | |
Several issues have been reported with the borderless windowed fullscreen mode on *nix platforms. Default to exclusive fullscreen mode on these platforms for now. | |||||
2021-04-06 | configure_graphics: Add Borderless Windowed fullscreen mode | Morph | 5 | -9/+108 | |
The borderless windowed fullscreen mode solves several issues with the presentation of the overlay dialogs and on-screen keyboard in exclusive fullscreen mode, and also has other benefits such as smoother gameplay, lower latency and a significant reduction in screen tearing. Co-authored-by: Its-Rei <kupfel@gmail.com> | |||||
2021-04-05 | nvhost_nvdec_common: Avoid memcpy with null pointers | lat9nq | 1 | -6/+11 | |
Avoid sending null pointer to memcpy as reported by Undefined Behavious Sanitizer. Co-authored-by: LC <mathew1800@gmail.com> | |||||
2021-04-05 | nvhost_ctrl_gpu: Avoid sending null pointer to memcpy | lat9nq | 1 | -1/+7 | |
Undefined Behaviour Sanitizer reports a null pointer is being sent to memcpy, thought it's "guaranteed to never be null". Guard it with an if statement, and log when the action has been averted. | |||||
2021-04-05 | vp9: Avoid memcpy with null pointers | lat9nq | 1 | -7/+9 | |
Avoid sending null pointer to memcpy as reported by Undefined Behaviour Sanitizer. Replaces the std::memcpy calls in SpliceVectors with std::copy calls. Opting to replace all the memcpy's with copy's. Co-authored-by: LC <mathew1800@gmail.com> | |||||
2021-04-04 | common: Move assert failure handling into a cpp file. | Markus Wick | 3 | -6/+20 | |
Advantage: Altering the handler does not need a full recompilation. Disadvantage: noreturn is droped, so the caller is a bit slower. We quite often run yuzu with a YOLO assertion handler. In fact, only very few games run at all with asserts. This patch allows developers to patch the handler without recompiling everything. The overhead of the missing "noreturn" attribute shoul be negletable. |