aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2023-05-06AM: Stub some service calls (#4825)1.1.762Ac_K
* AM: Stub some service call Some IPC I have stubbed during private testing and I don't want to deal with them anymore. Nothing more. * ICommonStateGetter disposable
2023-05-05Use correct offset for storage constant buffer elimination (#4821)1.1.761riperiperi
2023-05-05GPU: Remove CPU region handle containers (#4817)1.1.760riperiperi
* GPU: Remove CPU region handle containers. Another one for the "I don't know why I didn't do this earlier" pile. This removes the "Cpu" prefixed region handle classes, which each mirror a region handle type from Ryujinx.Memory. Originally, not all projects had a reference to Ryujinx.Memory, so these classes were introduced to bridge the gap. Someone else crossed that bridge since, so these classes don't have much of a purpose anymore. This PR replaces all uses of CpuRegionHandle etc to their direct Ryujinx.Memory versions. RegionHandle methods (specifically QueryModified) are about the hottest path there is in the entire emulator, so there is a nice boost from doing this. * Add docs
2023-05-05UI: Fix sections extraction (#4820)1.1.759Ac_K
* UI: Fix sections extraction There is currently an issue when the update NCA doesn't contains the section we want to extract, this is fixed by adding a check. I have fixed the inverted handler of ExeFs/Logo introduced in #4755. Fixes #4521 * Addresses feedback
2023-05-05Correct tooltips for add,remove,removeall buttons (#4819)1.1.758ashuk
2023-05-05Fix typo in TextureBindingsManager.cs (#4798)1.1.757Ikko Eltociear Ashimine
accomodate -> accommodate
2023-05-05Use ToLowerInvariant when detecting GPU vendor. (#4815)1.1.756Skyth (Asilkan)
2023-05-05Allow any shader SSBO constant buffer slot and offset (#2237)1.1.755gdkchan
* Allow any shader SSBO constant buffer slot and offset * Fix slot value passed to SetUsedStorageBuffer on fallback case * Shader cache version * Ensure that the storage buffer source constant buffer offset is word aligned * Fix FirstBinding on GetUniformBufferDescriptors
2023-05-05GPU: Allow granular buffer updates from the constant buffer updater (#4749)1.1.754riperiperi
* GPU: Allow granular buffer updates from the constant buffer updater Sometimes, constant buffer updates can't be avoided, either due to a cb0 access that cannot be eliminated, or the game updating a buffer between draws to the detriment of everyone. To avoid uploading the full 4096 bytes each time, this PR remembers the offset and size containing all constant buffer updates since the last sync. It will then upload that range after sync. * Allow clearing the dirty range * Always use precise Might want to not do this if distance between the existing range and new one is too high. * Use old force dirty mechanism when distance between regions is too great * Update src/Ryujinx.Graphics.Gpu/Memory/Buffer.cs Co-authored-by: gdkchan <gab.dark.100@gmail.com> * Fix inheritance of _dirtyStart and _dirtyEnd --------- Co-authored-by: gdkchan <gab.dark.100@gmail.com>
2023-05-05ModLoader: Fix case sensitivy issues without breaking cheats (#4783)1.1.753TSRBerry
* Fix case sensitivity for mod subdirectories * Small refactoring of ModLoader * Don't share instruction list between all cheats Co-authored-by: riperiperi <rhy3756547@hotmail.com> --------- Co-authored-by: riperiperi <rhy3756547@hotmail.com>
2023-05-05fix: linux launcher breaks when there are spaces in the directory path (#4795)1.1.752Horizon
* fix: linux launcher breaks when there are spaces in the directory path * Add quotes around $0 as well --------- Co-authored-by: TSRBerry <20988865+TSRBerry@users.noreply.github.com>
2023-05-04Revert "bcat ipc (#4446)" (#4801)1.1.751gdkchan
This reverts commit 42507323535443ad79be071367f3d4815afca688.
2023-05-04UI: Move ApplicationContextMenu in a separated class (#4755)1.1.750Ac_K
* UI: Move ApplicationContextMenu in a separated class This PR remove duplicated code related to the context menu on the Application list/grid by create a control for the menu which include related handler. I've renamed "GameList/GameGrid" by "Application" for consistencies. And I've removed all uneeded field from the project file too. While I cleaned up things, I've found an issue about purging Ptc/Shader cache, both methods list files even if the user say "No", shader cache is purged even if the user say "No". It's fixed. * Adresses feedbacks
2023-05-04bcat ipc (#4446)1.1.749Emmanuel Hansen
2023-05-03Fix some invalid blits involving depth textures (#4723)1.1.748gdkchan
2023-05-03Update SettingsWindow.cs (#4785)1.1.747Erdem Keskin
fix saving if directory path directly pasted in to the text field instead of using FileChooser.
2023-05-03Revert "ModLoader: Fix case sensitivy issues (#4720)" (#4781)1.1.746Mary
This reverts commit cc1a933a2f4adf05a45c7adcf02669c4f423bedb.
2023-05-03Vulkan: Record modifications after changing the framebuffer (#4775)1.1.745riperiperi
Our Vulkan backend inserts image barriers when a texture is sampled after it is rendered. This is done via a "modification flag" which is set when a render target is unbound (presuming that a texture has finished drawing to it). Imagine the following scenario: - Game sets render target to texture A - Game renders to texture A - (render pass ends) - Game binds texture A to a sampler - Game sets render target to texture B - Renders to texture B using texture A (barrier required) Because of the previous behaviour, the check to add a barrier for sampling a texture actually happens before it is registered as modified, meaning no barrier was added at all. This isn't always the case, but it was definitely causing issues in Xenoblade 2. This doesn't fix any more complicated issues where a texture is repeatedly sampled while it is currently being rendered. Fixes visual glitches at lower resolutions in Xenoblade 2. May fix other cases.
2023-05-03ModLoader: Fix case sensitivy issues (#4720)1.1.744TSRBerry
* Fix case sensitivity for mod subdirectories * Small refactoring of ModLoader
2023-05-02Add hide-cursor command line argument & always hide cursor option (#4613)1.1.743TSRBerry
* Add hide-cursor command line argument * gtk: Adjust SettingsWindow for hide cursor options * ava: Adjust SettingsWindow for hide cursor options * ava: Add override check for HideCursor arg * Remove copy&paste sins * ava: Leave a little more room between the options * gtk: Fix hide cursor issues * ava: Only hide cursor if it's within the embedded window
2023-05-01GPU: Keep rendered textures without any pool references alive (#4662)1.1.742riperiperi
* GPU: Keep sampled textures without any pool references alive Occasionally games are very wasteful and clear/write to a texture without ever sampling it. As rendered textures in NVN games seem to all have overlapping memory ranges, the texture will eventually get overwritten. Normally, this would trigger a removal from the auto delete cache, but a pool entry would keep the texture alive. However, with these textures that are never used, they will get deleted immediately and recreated on the next frame. This change makes it so the ShortTextureCache can keep textures that have naver had a pool reference alive for a few frames, so they're not constantly being created and deleted. This improves performance in Zelda BOTW a little. * Cleanup
2023-05-01GPU: Pre-emptively flush textures that are flushed often (to imported memory ↵1.1.741riperiperi
when available) (#4711) * WIP texture pre-flush Improve performance of TextureView GetData to buffer Fix copy/sync ordering Fix minor bug Make this actually work WIP host mapping stuff * Fix usage flags * message * Cleanup 1 * Fix rebase * Fix * Improve pre-flush rules * Fix pre-flush * A lot of cleanup * Use the host memory bits * Select the correct memory type * Cleanup TextureGroupHandle * Missing comment * Remove debugging logs * Revert BufferHandle _value access modifier * One interrupt action at a time. * Support D32S8 to D24S8 conversion, safeguards * Interrupt cannot happen in sync handle's lock Waitable needs to be checked twice now, but this should stop it from deadlocking. * Remove unused using * Address some feedback * Address feedback * Address more feedback * Address more feedback * Improve sync rules Should allow for faster sync in some cases.
2023-05-01GPU: Fix errors handling texture remapping (#4745)1.1.740riperiperi
* GPU: Fix errors handling texture remapping - Fixes an error where a pool entry and memory mapping changing at the same time could cause a texture to rebind its data from the wrong GPU VA (data swaps) - Fixes an error where the texture pool could act on a mapping change before the mapping has actually been changed ("Unmapped" event happens before change, we need to signal it changed _after_ it completes) TODO: remove textures from partially mapped list... if they aren't. * Add Remap actions for handling post-mapping behaviours * Remove unused code. * Address feedback * Nit
2023-04-29Uneven frame pacing with vsync (#4744)1.1.739al81-ru
fixes issue #3906
2023-04-28Allow window to remember its size, position and state (GTK + Avalonia) (#4657)1.1.738MutantAura
* Update ConfigurationState.cs * Update ConfigurationFileFormat.cs * Update MainWindow.cs * Update ConfigurationFileFormat.cs * Update ConfigurationState.cs * Update MainWindow.cs * Update MainWindow.cs * Update Ryujinx.Ui.Common/Configuration/ConfigurationState.cs Co-authored-by: gdkchan <gab.dark.100@gmail.com> * Update MainWindow.cs * Update Ryujinx/Ui/MainWindow.cs Co-authored-by: gdkchan <gab.dark.100@gmail.com> * Initial properties * Viewmodel adjustments and additions * abstract and monitor dimension changes * Remove position from ViewModel and simplify methods * Remove unused dep * Update configuration and fix typo from AA * review changes * Review changes * Screensize checks - Ava * Review changes 2 * basic review changes * Standardise GTK/Ava functions * Actually call function --------- Co-authored-by: HaizenTrist <123991082+HaizenTrist@users.noreply.github.com> Co-authored-by: gdkchan <gab.dark.100@gmail.com>
2023-04-28nuget: bump System.IdentityModel.Tokens.Jwt from 6.29.0 to 6.30.0 (#4736)1.1.737dependabot[bot]
Bumps [System.IdentityModel.Tokens.Jwt](https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet) from 6.29.0 to 6.30.0. - [Release notes](https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet/releases) - [Changelog](https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet/blob/dev/CHANGELOG.md) - [Commits](https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet/compare/6.29.0...6.30.0) --- updated-dependencies: - dependency-name: System.IdentityModel.Tokens.Jwt dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-28Fix paths and typos for macOS scripts (#4738)1.1.736TSRBerry
* Fix paths and typos for macOS scripts * Update outdated comments about rcodesign --------- Co-authored-by: Mary <thog@protonmail.com>
2023-04-27Adjust github workflows for new src directory1.1.735TSR Berry
2023-04-27Adjust Ryujinx.Tests.Memory namespaceTSR Berry
2023-04-27Rename Ryujinx.Memory.Tests to Ryujinx.Tests.MemoryTSR Berry
2023-04-27Move solution and projects to srcTSR Berry
2023-04-27Fix geometry shader layer passthrough regression (#4735)1.1.734gdkchan
* Fix geometry shader layer passthrough regression * Shader cache version bump
2023-04-25Refactor attribute handling on the shader generator (#4565)1.1.733gdkchan
* Refactor attribute handling on the shader generator * Implement gl_ViewportMask[] * Add back the Intel FrontFacing bug workaround * Fix GLSL transform feedback outputs mistmatch with fragment stage * Shader cache version bump * Fix geometry shader recognition * PR feedback * Delete GetOperandDef and GetOperandUse * Remove replacements that are no longer needed on GLSL compilation on Vulkan * Fix incorrect load for per-patch outputs * Fix build
2023-04-25Add missing check for thread termination on ArbitrateLock (#4722)1.1.732gdkchan
* Add missing check for thread termination on ArbitrateLock * Use TerminationRequested in all places where it can be used
2023-04-24Implement DMA texture copy component shuffle (#4717)1.1.731gdkchan
* Implement DMA texture copy component shuffle * Set UInt24 alignment to 1
2023-04-24Use vector transform feedback outputs with fragment shaders (#4708)1.1.730gdkchan
* Use vector transform feedback outputs with fragment shaders * Shader cache version bump * Fix missing outputs when vector transform feedback outputs are used
2023-04-24Set the console title for GTK again (#4706)1.1.729TSRBerry
Fixes a regression from #3707 where I accidentally removed that line.
2023-04-24Fix amiibo timeout issues & log errors/exceptions (#4712)1.1.728TSRBerry
2023-04-24Reducing Memory Allocations 202303 (#4624)1.1.727jhorv
* use ArrayPool, avoid 6000-7000 allocs/sec of runtime * use ArrayPool, avoid ~7k allocs/second during game execution * use ArrayPool, avoid ~3000 allocs/sec during game execution * use MemoryPool, reduce 0.5 MB/sec of new allocations during game execution * avoid over-allocation by setting List<> Capacity when known * remove LINQ in KTimeManager.UnscheduleFutureInvocation * KTimeManager - avoid spinning one more time when the time has arrived * KTimeManager - let SpinWait decide when to Thread.Yield(), and don't SpinOnce() immediately after Thread.Yield() * use MemoryPool, reduce ~175k bytes/sec allocation during game execution * IpcService - call commands via dynamic methods instead of reflection .Invoke(). Faster to call and with fewer allocations because parameters can be passed directly instead of as an array * Make ButtonMappingEntry a record struct to avoid allocations. Set the List<ButtonMappingEntry> capacity according to use. * add MemoryBuffer type for working with MemoryPool<byte> * update changes to use MemoryBuffer * make parameter ReadOnlySpan instead of Span * whitespace fix * Revert "IpcService - call commands via dynamic methods instead of reflection .Invoke(). Faster to call and with fewer allocations because parameters can be passed directly instead of as an array" This reverts commit f2c698bdf65f049e8481c9f2ec7138d9b9a8261d. * tweak KTimeManager spin behavior * replace MemoryBuffer with ByteMemoryPool modeled after System.Buffers.ArrayMemoryPool<T> * make ByteMemoryPoolBuffer responsible for renting memory
2023-04-22Shader: Bias textureGather instructions on AMD/Intel (#4703)1.1.726riperiperi
* Experimental (GLSL, forced) * SPIR-V attempt * Add capability * Fix pCount == 1 on glsl * Fix typo
2023-04-22Removed MotionInput Calibration (#4705)1.1.725SpicerXD
Don't know why this is here. It just seems to set the filter to an identity. Which then quickly returns to where its supposed to be anyways.
2023-04-20Avoid LM service crashes by not reading more than the buffer size (#4701)1.1.724gdkchan
2023-04-17nuget: bump System.IdentityModel.Tokens.Jwt from 6.28.1 to 6.29.0 (#4694)1.1.723dependabot[bot]
Bumps [System.IdentityModel.Tokens.Jwt](https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet) from 6.28.1 to 6.29.0. - [Release notes](https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet/releases) - [Changelog](https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet/blob/dev/CHANGELOG.md) - [Commits](https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet/compare/6.28.1...6.29.0) --- updated-dependencies: - dependency-name: System.IdentityModel.Tokens.Jwt dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-17nuget: bump System.Management from 7.0.0 to 7.0.1 (#4695)1.1.722dependabot[bot]
Bumps [System.Management](https://github.com/dotnet/runtime) from 7.0.0 to 7.0.1. - [Release notes](https://github.com/dotnet/runtime/releases) - [Commits](https://github.com/dotnet/runtime/compare/v7.0.0...v7.0.1) --- updated-dependencies: - dependency-name: System.Management dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-17Support copy between multisample and non-multisample depth textures (#4676)1.1.721gdkchan
* Support copy between multisample and non-multisample depth textures * PR feedback
2023-04-16Revert "chore: Update Silk.NET to 2.17.1 (#4686)" (#4690)1.1.720gdkchan
This reverts commit 79d1c190dba48e405a833f654691e47509a29792.
2023-04-16Vulkan: HashTableSlim lookup optimization (#4688)1.1.719riperiperi
2023-04-16Change SMAA filter texture clear method (#4685)1.1.718gdkchan
* Change SMAA filter texture clear method * Alpha should be 1 * Delete more unnecessary code
2023-04-16[GUI] Add network interface dropdown (#4597)1.1.717TSRBerry
* Add network adapter dropdown from LDN build * Ava: Add NetworkInterfaces to SettingsNetworkTab * Add headless network interface option * Add network interface dropdown to Avalonia * Fix handling network interfaces without a gateway address * gtk: Actually save selected network interface to config * Increment config version
2023-04-16Fix a crash in Ryujinx.Headless.SDL2 when loading an app (#4687)1.1.716Mary
Caused by the recent application loader changes.