Commit Graph

799 Commits (b5483d8fe028e18fe0ac4a69e40eb3780eaf76e1)

Author SHA1 Message Date
Evan Husted a506d81989 Split ConfigurationState into 3 parts:
Migration, Model, and everything else.
2024-11-10 22:16:45 -06:00
Evan Husted 15c20920b3 I thought this was a typo on my part; it wasn't 2024-11-10 22:04:55 -06:00
Evan Husted 285ee276b6 misc: Bake in value change logging into ReactiveObject to reduce logic duplication. 2024-11-10 22:03:12 -06:00
Evan Husted 617b81e209 UI: Conditionally enable install/uninstall file types buttons based on whether they're installed already 2024-11-10 20:33:49 -06:00
Evan Husted eb6ce7bcb3 misc: chore: replace some new "" additions & some I missed 2024-11-10 20:09:02 -06:00
Evan Husted 69f75f2df1 misc: Fix small code formatting & styling issues 2024-11-10 19:58:02 -06:00
Evan Husted 10c8d73b60 UI: Ryujinx Canary title in NCA extractor 2024-11-10 19:10:02 -06:00
Evan Husted e01a30016e RPC: Add Mario & Luigi Brothership image. 2024-11-10 17:01:47 -06:00
Evan Husted e26625dfd5 UI: Disable XCI trimmer button when in-game 2024-11-10 16:17:36 -06:00
Evan Husted 9c82d98ec4 headless: Add Ignore Controller Applet as a configurable option 2024-11-10 15:48:07 -06:00
Evan Husted 4aae82bad1 misc: Small cleanups 2024-11-10 15:34:24 -06:00
Vladimir Sokolov 299be822c4
UI: fix: when switching players, it would show old config (#122)
When switching between players' gamepads while saving settings, then
returning to the previous player, the settings show the default settings
instead of the actual settings applied
2024-11-09 23:24:17 -06:00
Jacobwasbeast b17e4f79fb
Adds the ability to read a amiibo's nickname from the VirtualAmiiboFile (#217)
This feature adds a way to change the Amiibo's nickname inside Smash and
other places where it's used, so it’s not always "Ryujinx." However, I
did not add a GUI or create the Cabinet applet that would allow users to
change this. So you will have to go to system/amiibo and find your
amiibo id to change it.
2024-11-09 21:18:50 -06:00
Jacobwasbeast 8c2d6192ba
Add Dummy Applet to Replace NotImplementedException (#216)
Currently, in Ryujinx, if an app attempts to open an unimplemented
applet, it crashes. This change adds a dummy applet to send a dummy
response instead of crashing and logs the applet.
2024-11-09 19:28:12 -06:00
WilliamWsyHK bd2681b2f9
Add missing and update translations for zh-tw (#158)
Simply add back some missing translations and update outdated
translations for zh-tw.
2024-11-07 10:46:40 -06:00
Evan Husted 640d7f9e77 Updater: kinda confused how this didn't work? 2024-11-06 19:55:58 -06:00
Evan Husted 02e8278438 Merge remote-tracking branch 'origin/master' 2024-11-06 19:46:30 -06:00
Evan Husted 6acd86c890 Fix canary updater & checking if current build is canary. 2024-11-06 19:46:20 -06:00
Luke Warner 708256ce96
Add just, a whole bunch of games to RPC assets. (#98) 2024-11-06 19:22:40 -06:00
Evan Husted 5bf50836e1 i18n: missing comma in en_US locale 2024-11-06 18:24:30 -06:00
Evan Husted 730ba44043 misc: Canary-specific naming & other small changes I had that I need to push. 2024-11-06 18:23:27 -06:00
Kekschen 36c374cc7a
fix: remove --deep (#188) 2024-11-06 18:18:59 -06:00
GabCoolGuy 75f714488e
Add many missing locales to all languages (#160)
* Added many missing locales
2024-11-06 17:57:12 -06:00
TheToid 4831965404
Add ability to trim and untrim XCI files from the application context menu AND in Bulk (#105) 2024-11-06 17:37:30 -06:00
Luke Warner 47b8145809
Fix fullscreen when using 'Show Title Bar' (#150) 2024-11-06 17:36:30 -06:00
James Duarte 20cc21add6
fix minor grammatical issues in en_US.json (#183) 2024-11-06 17:36:02 -06:00
Evan Husted 6664ed1b11 Merge remote-tracking branch 'origin/master' 2024-11-06 16:48:33 -06:00
Evan Husted 0c88b9eff7 Canary & Release separation. 2024-11-06 16:48:20 -06:00
Daniel Zauner 5ff962be37
fix index out of range check in GetCoefficientAtIndex (#164) 2024-11-03 13:58:27 -06:00
agnostk d9c8b7d937
feat: add DebugMouse HID (#163) 2024-11-03 13:58:14 -06:00
Evan Husted 04f014c777 hotfix: Locale formatting 2024-11-01 16:17:08 -05:00
Evan Husted 1c07bf3dd0 misc: Abstract repeated logic in markup extensions & move Updater into the base of the Avalonia project. 2024-11-01 15:48:25 -05:00
Evan Husted 4c83794254 Avalonia: Move LocaleExtension & IconExtension into one namespace to simplify the usage sites in the markup. 2024-11-01 13:00:56 -05:00
Evan Husted 6911e288bc misc: Code cleanups. 2024-11-01 12:00:07 -05:00
Evan Husted 67ab54e2bb misc: Remove custom themes in config. 2024-11-01 11:58:58 -05:00
Evan Husted 139c195eb7 misc: Replace "" with string.Empty. 2024-11-01 11:57:23 -05:00
MaxLastBreath 9305d171e7
Textures : Increase the amount of VRAM Cache available for Textures based on selected DRAM. (#36) 2024-11-01 06:46:29 -05:00
sovervo fb4ab5ea08
UI: Set UseFloatingWatermark to false when the watermark is empty (#135) 2024-11-01 06:46:15 -05:00
Evan Husted d7e17abade Fix homebrew loading. Fixes #109, #107 2024-11-01 06:41:02 -05:00
GabCoolGuy 70b7c4c1c3
French: Fixed faulty colon formatting and wrong translations (#92)
* Fixed faulty colon formatting and wrong translations

(The wrong translatations were mostly my fault but you don't need to know that)

* Fixed a typo

* Fixed a couple more colons

* Changed DRamTooltip

* Update fr_FR.json
2024-10-30 02:23:18 -05:00
Diego Tegani 7764a74a6d
Update pt_BR.json (#97)
Inserting new translations and updating some.
2024-10-30 02:22:40 -05:00
G4-Synix 5de2c4f292
Italian translation (#96) 2024-10-30 02:22:32 -05:00
Luke Warner 5845787325
Add option to show the old title bar (#101) 2024-10-30 02:22:22 -05:00
WalkQuackBack 9c94db1130
Update logo (#103)
higher resolution
2024-10-30 02:21:39 -05:00
GabCoolGuy 1c3347c95a
Added missing french translations (#87)
and also fixed a couple wrong ones
2024-10-27 17:38:34 -05:00
Nebroc351 b70580bc9f
Update fr_FR.json (#88) 2024-10-27 17:38:27 -05:00
Vladimir Sokolov 4926df42a4
Added Thai language description of the Ignore Applet setting (#60) 2024-10-27 06:33:06 -05:00
TheToid 7038a902c3
Automatically remove invalid dlc and updates as part of auto load (#42)
* Automatically remove invalid dlc and updates as part of auto load
Fixed some minor label spacing issues in options dialog
Removal of unused variable in input view model

* Fixed missing french message for AutoloadDlcAddedMessage
2024-10-27 06:32:32 -05:00
Evan Husted 6be8838043 ci moment 2024-10-26 09:00:35 -05:00
Evan Husted dfb4854d19 misc: Replace references to IntPtr/UIntPtr with nint/nuint + code cleanups. 2024-10-26 08:46:50 -05:00
Evan Husted a09d314817 UI: Updater: Remove Avalonia migration code. 2024-10-26 08:46:50 -05:00
Evan Husted 75035b3231 UI: Fix crash when using "delete all" button in mod manager. 2024-10-26 08:46:50 -05:00
Evan Husted 9a1bdaae16 UI: Attach dev tools in debug. 2024-10-26 08:46:50 -05:00
Evan Husted d280fbdf37 UI: RPC: Added SONIC X SHADOW GENERATIONS asset image 2024-10-25 08:36:41 -05:00
Evan Husted 7d88dfa00d UI: Add program icon to windows other than the main 2024-10-25 08:36:41 -05:00
Evan Husted 570c7cfaa2 UI: reference recently added translations 2024-10-25 08:36:41 -05:00
Evan Husted 281be7ca62 misc: Code cleanup 2024-10-25 08:36:41 -05:00
Vladimir Sokolov c69904afc6
Add descriptions for "ignoring applet" translated into other languages (#59)
* Added description of the "Ignore applet" setting and translated descriptions into all available languages ​​in the emulator
2024-10-25 07:56:21 -05:00
Evan Husted 26375766b4 Note to self, CHECK PRs MORE THOROUGHLY. 2024-10-24 14:28:14 -05:00
Evan Husted a01a06cd3f 2 unmerged PRs from original Ryujinx:
Implement shader compile counter (currently not translated, will change, need to pull changes.)
Remove event logic in favor of a single init function.
Thanks @MutantAura
2024-10-24 14:14:17 -05:00
Evan Husted 7618ef134d misc: Code cleanups. 2024-10-24 14:14:17 -05:00
WhitesCatz a2cd3c2799
Added missing strings, less transliterated word and grammar fixed. (#54)
Co-authored-by: Evan Husted <gr33m11@gmail.com>
2024-10-24 14:05:14 -05:00
Vladimir Sokolov e30ee32eee
Added option to ignore applet (gamepad connection window will not appear when it is disconnected) (#40)
This option is under the hacks category for a reason; use if you know what you're doing.
2024-10-23 20:10:54 -05:00
Evan Husted 59277a9301 Merge remote-tracking branch 'origin/master' 2024-10-23 14:19:47 -05:00
Evan Husted 2d0d73b617 Null-coalesce autoload dirs on config load 2024-10-23 14:19:34 -05:00
ssc19940105 59277e49c5
Update Simplified Chinese Translation (#51) 2024-10-23 11:20:22 -05:00
MaxLastBreath 4d1ebaf9ba
Ava UI : Set the Default Controller to Pro Controller. (#37)
* Set the Default Controller to Pro Controller.

- Let's be honest nobody is using JoyCon pair on their PC.
- It looks nicer and more accurate to more traditional controllers.
- Fixes issues with UltraCam mods and other such mods with lack of proper Dual Joycon support.

* Change standard configuration too.
2024-10-23 06:56:58 -05:00
TheToid dc3267f152
Ensure we unselect the previously selected update when auto selcting a new update (#30) 2024-10-21 23:22:13 -05:00
Keaton f76a97c976
Replace 'Expand DRAM' option with dropdown menu (#32)
Allows to use mods that require a larger memory pool to allocate from.
2024-10-21 23:16:41 -05:00
TheToid 0f3c7f920b
Fix for duplicate controller names under Ava when two controllers of the same type are attached (#29) 2024-10-21 10:25:14 -05:00
Nebroc351 9ae89d55ca
i18n: fr_FR: Added missing strings and general improvements (#27) 2024-10-21 09:51:59 -05:00
Evan Husted decc93bcdc I18n: Improve french translation 2024-10-21 07:40:42 -05:00
Evan Husted 8b75ce1d98 misc: Fix the issues blocking PRs 2024-10-21 02:43:07 -05:00
Evan Husted 509f6d738c Revert Maximized = Fullscreen changes, fixes #20 2024-10-21 02:43:07 -05:00
Evan Husted b20613661c misc: Code cleanups 2024-10-19 16:41:04 -05:00
Evan Husted 2facad4be3 UI: Reset RPC state when AppHost stops 2024-10-19 16:40:28 -05:00
Evan Husted 741eba2798 UI: Add keybinds to useful things 2024-10-19 16:39:21 -05:00
Evan Husted 59b3ff7802 Ava: Cleanup XML 2024-10-19 16:36:39 -05:00
Evan Husted c0cc3c4188 UI: Reload games list on locale change. 2024-10-19 16:31:15 -05:00
Evan Husted 6ca57dd016 UI: No longer download amiibo.ryujinx.org, and remove references to ryujinx.org in localization.
The future of the site is almost certainly for it to go offline, so any HTTP requests needed to be delegated elsewhere or removed entirely to ensure smooth operation of the emulator.
2024-10-19 00:46:13 -05:00
Evan Husted 01aa8a6a29 UI: I may be stupid. 2024-10-17 12:03:56 -05:00
Evan Husted 430073817c UI: Fix diaglog popups doubling the window controls and laying text over the menu bar. 2024-10-17 11:51:40 -05:00
Evan Husted 045f9a39bb UI: Remove title bar, put icon next to File button. Added icons to most dropdown menu actions. Title bar content is now displayed when hovering the logo in the title bar. 2024-10-17 01:24:16 -05:00
Evan Husted 235083ad75 misc: Code cleanups & improvements, again 2024-10-17 01:21:32 -05:00
Evan Husted a13cf098b4 misc: More cleanup changes 2024-10-16 19:32:18 -05:00
Evan Husted 1800ecc1b4 UI: Add Skyrim, KAFTL & HW:AOC to RPC.
Minor code improvements and comment fixes.
2024-10-16 19:23:11 -05:00
Evan Husted 280b94fc0c I18n: Move low-power PPTC strings into translation files & add german version. 2024-10-15 21:56:20 -05:00
Evan Husted 0faf3f5709 CPU: Add low-power PPTC load mode.
Specifically, this setting causes the translation load core count to get reduced by two-thirds, for lower-power but still fast loading, and for unstable CPUs.
2024-10-14 21:48:21 -05:00
Evan Husted 4ee1dff497 SDL: Move Mouse to the Input project instead of Headless. 2024-10-14 15:03:36 -05:00
Evan Husted b2a35ecf6c misc: Small code improvements. 2024-10-14 15:03:09 -05:00
Evan Husted 5f6d9eef6b misc: Use a method to create window titles. 2024-10-14 15:01:31 -05:00
Evan Husted 456f1ec739 UI: Link to the Discord in the About window, more Discord RPC games. 2024-10-12 21:44:13 -05:00
Evan Husted df9450d2ad misc: More minor code style changes. 2024-10-12 21:43:02 -05:00
Evan Husted a989d28e03 misc: Convert UIntUtils.CreateRandom into an extension on Random. 2024-10-12 21:41:36 -05:00
Evan Husted cb31d79164 misc: Collapse XXHash128 into Hash128. 2024-10-12 21:39:30 -05:00
Evan Husted 4d311dfc1a UI: RPC: show game version when hovering large image asset. 2024-10-11 23:55:50 -05:00
Evan Husted 5b6e3521d8 misc: More minor style changes. 2024-10-11 23:55:12 -05:00
Evan Husted e1dda4cef1 UI: Add more Discord presence games. 2024-10-11 17:57:33 -05:00
Evan Husted 169126e511 UI: Remember the last state of UseRandomUuid. 2024-10-11 17:57:20 -05:00
Evan Husted 4c237c4793 misc: Code cleanups & remove references to Patreon & Twitter. 2024-10-11 17:56:59 -05:00
Evan Husted 335eed75ef UI: Extract the 256x256 thumbnail too when extracting the logo. 2024-10-10 21:39:50 -05:00
Evan Husted 92b29ae4a5 Chore: Minor code cleanups 2024-10-10 18:17:46 -05:00
Evan Husted 602251be51 UI: oops, forgot that file 2024-10-10 18:16:43 -05:00
Evan Husted 6da83688b2 UI: Improve Discord RPC for select games & show play time in place of title ID. 2024-10-10 18:15:38 -05:00
Jimmy Reichley 565acec468
AutoLoad DLC/updates (#12)
* Add hooks to ApplicationLibrary for loading DLC/updates

* Trigger DLC/update load on games refresh

* Initial moving of DLC/updates to UI.Common

* Use new models in ApplicationLibrary

* Make dlc/updates records; use ApplicationLibrary for loading logic

* Fix a bug with DLC window; rework some logic

* Auto-load bundled DLC on startup

* Autoload DLC

* Add setting for autoloading dlc/updates

* Remove dead code; bind to AppLibrary apps directly in mainwindow

* Stub out bulk dlc menu item

* Add localization; stub out bulk load updates

* Set autoload dirs explicitly

* Begin extracting updates to match DLC refactors

* Add title update autoloading

* Reduce size of settings sections

* Better cache lookup for apps

* Dont reload entire library on game version change

* Remove ApplicationAdded event; always enumerate nsp when autoloading
2024-10-07 20:08:41 -05:00
Evan Husted 9a1863c752 You see, when I said remove GTK3, what I actually meant was remove references to it. Here's removing GTK3. 2024-10-07 18:34:04 -05:00
Evan Husted 12358182aa Remove unused workflows, remove FUNDING.yml, remove GTK3. 2024-10-07 18:29:08 -05:00
gdkchan a2c0035013
Update audio renderer to REV13: Add support for compressor statistics and volume reset (#7372)
* Update audio renderer to REV13: Add support for compressor statistics and volume reset

* XML docs

* Disable stats reset

* Wrong comment

* Fix more XML docs

* PR feedback
2024-10-01 11:30:57 +01:00
gdkchan 7d158acc3b
Do not try to create a texture pool if shader does not use textures (#7379) 2024-09-30 11:41:07 -03:00
e2dk4r 5dbba07e33
sdl: set app name (#7370)
Ryujinx was not hinting application name, so on some platforms (e.g.
Linux) volume control shows Ryujinx as 'SDL Application'. This can cause
confusion.

This commit fixes name in volume control applets on some platforms.

see: https://wiki.libsdl.org/SDL2/SDL_HINT_APP_NAME
2024-09-28 10:44:23 +02:00
MaxLastBreath d86249cb0a
Convert MaxTextureCacheCapacity to Dynamic MaxTextureCacheCapacity for High Resolution Mod support. (#7307)
* Add Texture Size Capacity and 8GB Dram Build

* Update AutoDeleteCache.cs

* Dynamic Texture Cache (WIP)

* Change to float Multiplier, in-case it needs fine-tuning.

* Delete src/src.sln

* Update AutoDeleteCache.cs

* Format

* Fix Formatting

* Add DefaultTextureSizeCapacity and MemoryScaleFactor

- Also remove redundant New Lines

* Fix 4GB dram crashing

* Format newline

* Refractor

- Added Initialize() function to TextureCache and AutoDeleteCache
- Removed GetMaxTextureCapacity() function and instead added _maxCacheMemoryUsage
- Added private const MaxTextureSizeCapacity to AutoDelete Cache
- Added TextureCache.Initialize() to MemoryManager in order to fetch MaxGpuMemory at the right time.
- Moved and Changed Logger.Info for Gpu Memory to Logger.Notice and Moved it to PrintGpuInformation function.
- Opted to use a ternary operator for the Initialize function, I think it looks cleaner than bunch of if statements.

* Update src/Ryujinx.Graphics.Gpu/Image/AutoDeleteCache.cs

Co-authored-by: gdkchan <gab.dark.100@gmail.com>

* maxMemory to CacheMemory, use Clamp instead of Ternary. Changed MinTextureCapacity 1GiB to 512 MiB

* Update src/Ryujinx.Graphics.Gpu/Image/AutoDeleteCache.cs

Co-authored-by: gdkchan <gab.dark.100@gmail.com>

* Format comment

* comment context

* Increase TextureSize capacity for OpenGL back to 1024

- Added a new const ulong for OpenGLTextureSizeCapacity

* Fix changes from last commit.

* Adjust last OpenGL changes.

* Remove garbage VSC file

* Update src/Ryujinx.Graphics.Gpu/Image/AutoDeleteCache.cs

Co-authored-by: gdkchan <gab.dark.100@gmail.com>

* Update src/Ryujinx.Graphics.Gpu/Image/AutoDeleteCache.cs

Co-authored-by: gdkchan <gab.dark.100@gmail.com>

* Update src/Ryujinx.Graphics.Gpu/Image/AutoDeleteCache.cs

Co-authored-by: gdkchan <gab.dark.100@gmail.com>

---------

Co-authored-by: gdkchan <gab.dark.100@gmail.com>
2024-09-26 14:33:38 -03:00
riperiperi 04d68ca616
GPU: Ensure all clip distances are initialized when used (#7363)
* GPU: Ensure all clip distances are initialized when used

* Shader cache version
2024-09-26 14:19:12 -03:00
gdkchan 319507f2a1
Fix quads draws after DrawTexture on Vulkan (#7336) 2024-09-22 19:36:53 -03:00
gdkchan d717aef2be
Shader: Assume the only remaining source is the right one when all others are undefined (#7331)
* Shader: Assume the only remaining source is the right one when all other are undefined

* Shader cache version bump

* Improve comment
2024-09-19 21:23:09 -03:00
gdkchan 24ee8c39f1
Add support for sampler sRGB disable (#7312) 2024-09-19 14:38:30 -03:00
jhorv 73f985d27c
Replace passing by IMemoryOwner<byte> with passing by concrete MemoryOwner<byte> (#7171)
* refactor(perf): pass MemoryOwner<byte> around as itself rather than IMemoryOwner<byte>

* fix(perf): get span via MemoryOwner<byte>.Span property instead of through Memory property

* fix: incorrect comment change
2024-09-18 23:00:54 -03:00
gdkchan ef81658fbd
Implement support for shader ATOM.EXCH instruction (#7320)
* Implement support for shader ATOM.EXCH instruction

* Shader cache version bump

* Check type
2024-09-18 15:48:55 -03:00
gdkchan 062ef43eb4
Revert "Wait for async task to complete (#7122)" (#7318)
This reverts commit ccf96bf5e6.
2024-09-17 16:25:26 -03:00
gdkchan eb8132b627
Change image format view handling to allow view incompatible formats (#7311)
* Allow creating texture aliases on texture pool

* Delete old image format override code

* New format incompatible alias

* Missing bounds check

* GetForBinding now takes FormatInfo

* Make FormatInfo struct more compact
2024-09-17 15:52:30 -03:00
TSRBerry ccf96bf5e6
Wait for async task to complete (#7122)
This way exceptions thrown during the execution of CheckLaunchState()
will correctly invoke the unhandled exception handler
and cause Ryujinx to crash.
2024-09-17 15:42:00 -03:00
ZenoArrows f39e89ece7
Add area sampling scaler to allow for super-sampled anti-aliasing. (#7304)
* Add area sampling scaler to allow for super-sampled anti-aliasing.

* Area scaling filter doesn't have a scaling level.

* Add further clarification to the tooltip on how to achieve supersampling.

* ShaderHelper: Merge the two CompileProgram functions.

* Convert tabs to spaces in area scaling shaders

* Fixup Vulkan and OpenGL project files.

* AreaScaling: Replace texture() by texelFetch() and use integer vectors.

No functional difference, but it cleans up the code a bit.

* AreaScaling: Delete unused sharpening level member.

Also rename _scale to _sharpeningLevel for clarity and consistency.

* AreaScaling: Delete unused scaleX/scaleY uniforms.

* AreaScaling: Force the alpha to 1 when storing the pixel.

* AreaScaling: Remove left-over sharpening buffer.
2024-09-17 15:30:50 -03:00
gdkchan cf77c011e4
Change 6GB DRAM expansion to 8GB (#7313)
* Change 6GB DRAM expansion to 8GB

* Update texts and tooltips
2024-09-17 15:09:20 -03:00
gdkchan cd74ae1bbd
Implement fast DMA texture to texture copy (#7299)
* Implement fast DMA texture to texture copy

* PR feedback
2024-09-15 18:12:05 -03:00
Emmanuel Hansen 62216782ca
Make GetFunctionPointerForDelegate as explicit as possible (#7279)
Co-authored-by: gdk <gab.dark.100@gmail.com>
2024-09-15 17:39:10 -03:00
gdkchan 2f36a6665c
Implement Arm32 VSHLL and QADD16 instructions (#7301) 2024-09-12 18:22:30 -03:00
riperiperi ca59c3f499
Vulkan: Feedback loop detection and barriers (#7226)
* Vulkan: Feedback loop improvements

This PR allows the Vulkan backend to detect attachment feedback loops. These are currently used in the following ways:

- Partial use of VK_EXT_attachment_feedback_loop_layout
  - All renderable textures have AttachmentFeedbackLoopBitExt
  - Compile pipelines with Color/DepthStencil feedback loop flags when present
- Support using FragmentBarrier for feedback loops (fixes regressions from https://github.com/Ryujinx/Ryujinx/pull/7012 )

TODO:
- AMD GPUs may need layout transitions for it to properly allow textures to be used in feedback loops.
- Use dynamic state for feedback loops. The background pipeline will always miss since feedback loop state isn't known on the GPU project.
- How is the barrier dependency flag used? (DXVK just ignores it, there's no vulkan validation...)
- Improve subpass dependencies to fix validation errors

* Mark field readonly

* Add feedback loop dynamic state

* fix: add MoltenVK resolver workaround

fix: add MoltenVK resolver workaround

* Formatting

* Fix more complaints

* RADV dcc workaround

* Use dynamic state properly, cleanup.

* Use aspects flags in more places
2024-09-01 21:28:16 -03:00
gdkchan fdd7ee791c
Fix incorrect depth texture 3D flag (#7262) 2024-09-01 17:58:01 -03:00
riperiperi 398fa1c238
Vulkan: Update Silk.NET to 2.21 (#7266)
* Update Silk.NET version

* fix: add MoltenVK resolver workaround

fix: add MoltenVK resolver workaround

* Cleanup

* Readonly ref warnings

* Remove driver id todo
2024-09-01 17:33:11 -03:00
Emmanuel Hansen 2c5c0392f9
Make HLE project AOT friendly (#7085)
* add hle service generator

remove usage of reflection in device state

* remove rd.xml generation

* make applet manager reflection free

* fix typos

* fix encoding

* fix style report

* remove rogue generator reference

* remove double assignment
2024-08-31 11:39:26 -03:00
Emmanuel Hansen e0acde04bb
Replace ImageSharp with SkiaSharp everywhere (#7030)
* replace ImageSharp with SkiaSharp for inline keyboard applet rendering

* fix avalonia inline keyboard input

* remove image sharp from gtk3 project

* add skiasharp linux assets

* fix whitespace

* fix format

* fix ico image offset when saving shortcut to windows
2024-08-31 11:32:53 -03:00
David McFarland 3c61d560c3
Fix deadlock in background translation thread shutdown (#7239)
TryDequeue checks for _disposed before taking the lock.  If another
thread calls Dispose before it takes the lock, it won't get woken up by
the PulseAll call, and will deadlock in Monitor.Wait.

Double-checking _disposed with the lock taken should avoid this.
2024-08-27 19:10:24 +02:00
gdkchan 460f9faf4e
Fix NRE when using buffer image array (#7159) 2024-08-21 00:49:17 +01:00
Tsubasa0504 0137c9e635
nim:eca : Stub CreateServerInterface2 (#7128)
* Add files via upload

* Add files via upload

* Update src/Ryujinx.HLE/HOS/Services/Nim/IShopServiceAccessServerInterface.cs

---------

Co-authored-by: Ac_K <Acoustik666@gmail.com>
2024-08-17 09:57:22 +01:00
Logan Stromberg 23fa5f4c9c
Fix arbitrary game ordering when sorting by Favorites (#7170)
* Fix arbitrary sorting by "Favorite" in the UI by making it the same as sorting alphabetically while giving favorites priority.

* Use a more engineered solution rather than string hacks.

* Address code style warnings. Add null checking. Make title name comparison case insensitive.

* one more style fix

---------

Co-authored-by: Logan Stromberg <lostromb@microsoft.com>
2024-08-13 15:23:11 +02:00
gdkchan 4f75e26ec7
Clamp amount of mipmap levels to max allowed for all backends (#7197)
* Clamp amount of mipmap levels to max allowed for all backends

* XML docs

* Remove using
2024-08-12 17:45:25 -03:00
gdkchan 8d8983049e
Implement UQADD16, UQADD8, UQSUB16, UQSUB8, VQRDMULH, VSLI and VSWP Arm32 instructions (#7174) 2024-08-08 17:07:24 -03:00
jhorv 7969fb6bba
Replace and remove obsolete ByteMemoryPool type (#7155)
* refactor: replace usage of ByteMemoryPool with MemoryOwner<byte>

* refactor: delete unused ByteMemoryPool and ByteMemoryPool.ByteMemoryPoolBuffer types

* refactor: change IMemoryOwner<byte> return types to MemoryOwner<byte>

* fix(perf): get span via `MemoryOwner<T>.Span` directly instead of `MemoryOwner<T>.Memory.Span`

* fix(perf): get span via MemoryOwner<T>.Span directly instead of `MemoryOwner<T>.Memory.Span`

* fix(perf): get span via MemoryOwner<T>.Span directly instead of `MemoryOwner<T>.Memory.Span`
2024-08-05 21:09:08 -03:00
gdkchan 4a4b11871e
Fix same textures with unmapped start being considered different (#7141)
* Fix same textures with unmapped start being considered different

* Consolidate IsInvalid check

* InvalidAddress const

* Fix typo

Co-authored-by: riperiperi <rhy3756547@hotmail.com>

---------

Co-authored-by: riperiperi <rhy3756547@hotmail.com>
2024-08-05 11:00:41 -03:00
Julien Lebosquain e85ee673b1
Fix LocaleExtension SetRawSource usages + language perf improvement (#7121)
* Avoid Avalonia CompiledBindingPathBuilder.SetRawSource

* Improve UI language change performance
2024-08-04 19:04:12 +01:00
Isaac Marovitz 42f22fe5d7
Infra: Update Microsoft.IdentityModel.JsonWebTokens (#7070)
* Update Microsoft.IdentityModel.JsonWebTokens

* Update
2024-08-04 18:56:27 +01:00
TSRBerry 263eb97f79
Avoid race conditions while launching games directly from the command line (#7116)
* optimization: Load application metadata only for applications with IDs

* Load applications when necessary

This prevents loading applications when launching an application
directly from the command line (or a shortcut).
Instead, applications will be loaded after the emulation was stopped by the user.

* Show the title in the configured language when launching an application

* Rename DesiredTitleLanguage to DesiredLanguage
2024-08-03 22:31:34 +01:00
jhorv 59ddb26628
replace ByteMemoryPool usage in Ryujinx.Graphics (#7129)
* chore: replace `ByteMemoryPool` usage with `MemoryOwner<byte>`

* refactor: `PixelConverter.ConvertR4G4ToR4G4B4A4()` - rename old `outputSpan` to `outputSpanUInt16`, reuse same output `Span<byte>` as newly-freed name `outputSpan`

* eliminate temporary buffer allocations

* chore, perf: use MemoryOwner<byte> instead of IMemoryOwner<byte>
2024-08-03 19:50:53 +01:00
TSRBerry 83fda10f6e
Fix FileNotFoundException in TryGetApplicationsFromFile() and improve loading applications (#7145)
* Don't load files from hidden subdirectories

* Catch FileNotFoundException in TryGetApplicationsFromFile()

* Skip non-existent files and bad symlinks when loading applications
2024-08-03 19:46:59 +02:00
gdkchan d97e995e59
Fix off-by-one on audio renderer PerformanceManager.GetNextEntry (#7139) 2024-07-31 22:22:11 -03:00
gdkchan 56b2f84702
Fix shader RegisterUsage pass only taking first operation dest into account (#7131)
* Fix shader RegisterUsage pass only taking first operation dest into account

* Shader cache version bump
2024-07-30 21:57:55 -03:00
riperiperi 698e36bbd2
Vulkan: Force topology to PatchList for Tessellation (#7102)
Vulkan spec states that input topology should always be PatchList when a tessellation pipeline is present. The AMD GPU on windows crashes so hard it BSODs the machine if this isn't the case, so it's forced here just in case.

I'm not sure what providing a different topology here would even do, as you'd think it would always be a patch list input.
2024-07-30 21:48:30 -03:00
Isaac Marovitz 6ce49a2dc7
Ava UI: Handle updates containing non numeric characters (#7043)
* Handle updates containing non numeric characters

Smh

Dont be stupid

* Use Berry’s method

* Thanks gdk

* Remove using
2024-07-25 16:44:33 -03:00
riperiperi ccd330ba0f
Vulkan: Add missing barriers for texture to buffer copy (#7092)
This barrier has always been missing, but it only became apparent when #7012 merged.

I also added some barriers in case the target buffer used here is used by other commands, though right now it isn't.

Fixes a regression where water would turn white on AMD GPUs with the proprietary driver. May fix other issues on this driver.
2024-07-25 16:34:30 -03:00
gdkchan 95d252b7b8
Update kernel GetInfo SVC for firmware 18.0.0 (#7075)
* Implement kernel GetInfo AliasRegionExtraSize

* Implement IsSvcPermitted

* Remove warning supressions that are no longer needed

* Remove useless cast
2024-07-22 12:46:04 -03:00
TSRBerry add681144b
Fix checking for the wrong metadata files for applications launched with a different program index (#7055)
* Fix checking for the wrong update metadata file

* Apply the same fix for dlc.json

* Use the base application ids for updates and DLCs in the GUI too

This shouldn't actually change anything, since the program index part of the application id
should always be 0 for all applications currently seen by the GUI.

This was just done for completeness.
2024-07-21 14:42:23 -03:00