Evan Husted
ad9d6588e8
misc: chore: Collapse HLE swkbd character validation utils into a single class
Canary release job / Create tag (push) Waiting to run
Canary release job / Release for linux-arm64 (push) Waiting to run
Canary release job / Release for linux-x64 (push) Waiting to run
Canary release job / Release for win-x64 (push) Waiting to run
Canary release job / Release MacOS universal (push) Waiting to run
2025-02-01 14:11:35 -06:00
Evan Husted
38ef65aae0
misc: chore: Move all GeneratedRegex methods into one static class with static instance accessors.
2025-02-01 14:07:32 -06:00
Evan Husted
ff05e03cc8
misc: chore: Remove unused using directives across entire solution.
2025-01-30 20:27:17 -06:00
Evan Husted
a624fe64b9
UI: Scanning for mods on DLC content
Canary release job / Create tag (push) Waiting to run
Canary release job / Release for linux-arm64 (push) Waiting to run
Canary release job / Release for linux-x64 (push) Waiting to run
Canary release job / Release for win-x64 (push) Waiting to run
Canary release job / Release MacOS universal (push) Waiting to run
2025-01-29 13:33:34 -06:00
Evan Husted
2acc43e968
misc: chore: Use string.Empty in more places where it's snuck back
2025-01-28 22:17:11 -06:00
LotP1
7085bafa60
PPTC Profiles ( #370 )
...
Added functionality that allows ExeFS mods to compile to their own PPTC
Profile and therefore store PTC data between sessions.
The feature calculates the hash of the currently loaded ExeFS mods and
stores the PPTC data in a profile that matches said hash, so you can
have multiple ExeFS loadouts without causing issues. This includes
different versions of the same mod as their hashes will be different.
Using this PR should be seamless as the JIT Sparse PR already laid the
groundwork for PPTC Profiles and this PR just allows ExeFS mods to load
and store their own profiles besides the `default` profile.
❗ ❗ ❗ **WARNING!** ❗ ❗ ❗
**This will update your PPTC profile version, which means the
PPTC profile will be invalidated if you try to run a PR/Build/Branch
that does not include this change!**
**This is only relevant for the default PPTC Profile, as any other profiles do not exist to older versions!**
2025-01-28 20:36:58 -06:00
Evan Husted
9d28af935d
headless: Enable Rainbow cycling if any input configs have UseRainbow enabled
2025-01-28 20:16:41 -06:00
Josh
31de0bf8c6
Increase NAT discovery timeout to 5000ms ( #589 )
...
Canary release job / Create tag (push) Has been cancelled
Canary release job / Release for linux-arm64 (push) Has been cancelled
Canary release job / Release for linux-x64 (push) Has been cancelled
Canary release job / Release for win-x64 (push) Has been cancelled
Canary release job / Release MacOS universal (push) Has been cancelled
1000ms was too fast on some slower networks. It would lead to an early
cancellation before device could be found.
2025-01-26 19:40:10 -06:00
Evan Husted
70b767ef60
misc: chore: Use collection expressions in HLE project
2025-01-26 15:43:02 -06:00
Evan Husted
beab133c8d
misc: chore: Fix object creation in HLE project
2025-01-26 15:15:26 -06:00
Evan Husted
5eba42fa06
misc: chore: Use explicit types in HLE project
2025-01-25 14:13:18 -06:00
Evan Husted
33079422fe
misc: chore: code cleanups
2025-01-23 16:47:11 -06:00
Evan Husted
f81cb093fc
misc: chore: Change references of GreemDev/Ryujinx to Ryubing/Ryujinx
2025-01-23 16:27:49 -06:00
Evan Husted
9c8055440e
HLE: TryAdd firmware NCAs
2025-01-22 23:58:11 -06:00
LotP1
e743d78115
Add/fix service reported info ( #551 )
...
Canary release job / Create tag (push) Waiting to run
Canary release job / Release for linux-arm64 (push) Waiting to run
Canary release job / Release for linux-x64 (push) Waiting to run
Canary release job / Release for win-x64 (push) Waiting to run
Canary release job / Release MacOS universal (push) Waiting to run
fixes the GetConfig service call, which now returns success correctly
adds support for getting the device serial number (which is fake and
reports as "RYU00000000000")
2025-01-20 14:59:54 -06:00
Evan Husted
f42b2ed59d
misc: chore: more correct last used user checking
2025-01-20 13:33:59 -06:00
Jacob
52269964b6
Add the player select applet. ( #537 )
...
This introduces the somewhat completed version of the Player Select
Applet, allowing users to select either a user or a guest from the UI.
Note: Selecting the guest more then once currently does not work.
closes https://github.com/Ryubing/Ryujinx/issues/532
2025-01-18 20:40:33 -06:00
LotP1
5aa071c59b
remove notice for unusual core counts ( #531 )
Canary release job / Create tag (push) Waiting to run
Canary release job / Release for linux-arm64 (push) Waiting to run
Canary release job / Release for linux-x64 (push) Waiting to run
Canary release job / Release for win-x64 (push) Waiting to run
Canary release job / Release MacOS universal (push) Waiting to run
2025-01-17 05:50:42 -06:00
Evan Husted
a5a4ef38e6
HLE: Stub IHidServer SetGestureOutputRanges ( #524 )
...
Canary release job / Create tag (push) Waiting to run
Canary release job / Release for linux-arm64 (push) Waiting to run
Canary release job / Release for linux-x64 (push) Waiting to run
Canary release job / Release for win-x64 (push) Waiting to run
Canary release job / Release MacOS universal (push) Waiting to run
Lets "Donkey Kong Country Returns HD" get into main gameplay.
2025-01-16 02:39:39 -06:00
Evan Husted
017f46f318
HLE: misc: throw a more descriptive error when the loaded processes doesn't contain _latestPid (likely missing FW)
2025-01-15 03:01:17 -06:00
LotP1
918ec1bde3
cores rework ( #505 )
...
This PR changes the core count to be defined in the device instead of
being a const value.
This is mostly a change for future features I want to implement and
should not impact any functionality.
The console will now log the range of cores requested from the
application, and for now, if the requested range is not 0 to 2 (the 3
cores used for application emulation), it will give an error message
which tells the user to contact me on discord. I'm doing this because
I'm interested in finding applications/games that don't use 3 cores and
the error will be removed in the future once I've gotten enough data.
2025-01-09 21:43:18 -06:00
WilliamWsyHK
f43442f774
Include Hack for XC2 JP Edition ( #481 )
...
Canary release job / Create tag (push) Has been cancelled
Canary release job / Release for linux-arm64 (push) Has been cancelled
Canary release job / Release for linux-x64 (push) Has been cancelled
Canary release job / Release for win-x64 (push) Has been cancelled
Canary release job / Release MacOS universal (push) Has been cancelled
XC2 has 2 editions, one JP and one global. I own the JP version and
suffered from the soft-lock, meanwhile the current hack only works for
global edition, so PR is simply include JP edition from the hack.
2025-01-01 02:15:14 -06:00
Evan Husted
f426945fec
misc: Rename DirtyHacks to DirtyHack
...
Rename DirtyHack.ShaderCompilationThreadSleep to ShaderTranslationDelay
Changed EnabledDirtyHack to a struct
rename DirtyHackCollection to DirtyHacks
2024-12-30 22:18:35 -06:00
Marco Carvalho
699e1962b1
Prefer 'Convert.ToHexString' over call chains based on 'BitConverter.ToString' ( #428 ) [ci-skip]
...
Co-authored-by: Evan Husted <greem@greemdev.net>
2024-12-30 01:53:43 -06:00
Evan Husted
42a739d34c
misc: Expose DirtyHacks on GpuContext
2024-12-29 22:21:09 -06:00
Evan Husted
f362bef43d
misc: Overhaul DirtyHacks saving to support storing a value alongside an off/off flag.
2024-12-29 21:17:01 -06:00
Evan Husted
cbd851d00e
misc: Forgot about ReactiveObject
Canary release job / Create tag (push) Waiting to run
Canary release job / Release for linux-arm64 (push) Waiting to run
Canary release job / Release for linux-x64 (push) Waiting to run
Canary release job / Release for win-x64 (push) Waiting to run
Canary release job / Release MacOS universal (push) Waiting to run
2024-12-29 04:16:08 -06:00
Evan Husted
f463ea1c5d
misc: Refactor Discord integration to listen on TitleIDs.CurrentApplication changes instead of waiting to be directly told when to change states.
2024-12-29 03:27:05 -06:00
Evan Husted
1dd69912b1
Partial revert, decouple TitleIDs.CurrentApplication from shader cache stuff; as I want that to ALWAYS reflect the current app.
2024-12-29 03:02:56 -06:00
Evan Husted
b5999583d6
misc: this is C# XMLdocs not Javadocs
2024-12-28 22:08:37 -06:00
Evan Husted
8b3a945b5f
misc: Dirty Hacks
...
Enable this settings screen via a boolean in Config.json
First one is the xb2 menu softlock fix
2024-12-28 22:04:21 -06:00
Evan Husted
09107b67ff
misc: Remove GAL/Configuration duplicate enums
Canary release job / Create tag (push) Waiting to run
Canary release job / Release for linux-arm64 (push) Waiting to run
Canary release job / Release for linux-x64 (push) Waiting to run
Canary release job / Release for win-x64 (push) Waiting to run
Canary release job / Release MacOS universal (push) Waiting to run
2024-12-28 05:08:21 -06:00
Evan Husted
12b264af44
Headless in Avalonia v2 ( #448 )
...
Launch the Ryujinx.exe, first argument --no-gui or nogui, and the rest of the arguments should be your normal headless script. You can include the new option --use-main-config which will provide any arguments that you don't, filled in from your main config made by the UI.
Input config is not inherited at this time.
2024-12-28 03:49:06 -06:00
Evan Husted
0733b7d0a1
chore: Remove duplicate VSyncMode enum in GAL
2024-12-27 00:38:12 -06:00
Evan Husted
17233d30da
misc: give various threads dedicated names
...
Canary release job / Create tag (push) Waiting to run
Canary release job / Release for linux-arm64 (push) Waiting to run
Canary release job / Release for linux-x64 (push) Waiting to run
Canary release job / Release for win-x64 (push) Waiting to run
Canary release job / Release MacOS universal (push) Waiting to run
Move all title ID lists into a TitleIDs class in Ryujinx.Common, with helpers.
Unify & simplify Auto graphics backend selection logic
2024-12-26 00:29:00 -06:00
Evan Husted
a0a4f78cff
UI: Thin down the borders of the app icon a little bit and trim down the file size significantly.
2024-12-24 20:47:14 -06:00
Marco Carvalho
b5483d8fe0
Prefer generic overload when type is known ( #430 )
2024-12-22 13:23:35 -06:00
Marco Carvalho
5913ceda40
Avoid zero-length array allocations ( #427 )
2024-12-22 11:36:05 -06:00
Marco Carvalho
decd37ce6d
Add missing "yield return" ( #424 )
Canary release job / Create tag (push) Waiting to run
Canary release job / Release for linux-arm64 (push) Waiting to run
Canary release job / Release for linux-x64 (push) Waiting to run
Canary release job / Release for win-x64 (push) Waiting to run
Canary release job / Release MacOS universal (push) Waiting to run
2024-12-21 23:28:31 -06:00
Evan Husted
4c7cb54ec6
misc: I may be stupid
2024-12-21 21:52:04 -06:00
Evan Husted
4171913baf
misc: One additional usage of Lock & comment why it's not used on the others.
2024-12-21 17:05:55 -06:00
Evan Husted
5b36a9cf9f
chore: small cleanups
2024-12-21 17:05:55 -06:00
Evan Husted
2fa3a7bfa1
HLE: rename AmiiboDecrypter to AmiiboDecryptor
2024-12-20 15:44:01 -06:00
Evan Husted
381921390a
UI: Only show Amiibo bin scan menu item if the key file exists
2024-12-20 15:41:18 -06:00
Jacobwasbeast
221524d879
Added Support for 532-Byte Amiibo BIN Files ( #412 )
...
Canary release job / Create tag (push) Waiting to run
Canary release job / Release for linux-arm64 (push) Waiting to run
Canary release job / Release for linux-x64 (push) Waiting to run
Canary release job / Release for win-x64 (push) Waiting to run
Canary release job / Release MacOS universal (push) Waiting to run
Added functionality to load 532-byte Amiibo BIN files, commonly used in
Tagmo and similar tools. These files were missing the following pages.
* 133 (85h) PWD
* 134 (86h) PACK RFUI
These pages can be added as null bytes if not present. The system seems
to function correctly without them.
2024-12-20 13:54:27 -06:00
Jacobwasbeast
0adaa4cb96
Adds the ability to read and write to amiibo bin files ( #348 )
...
Canary release job / Create tag (push) Waiting to run
Canary release job / Release for linux-arm64 (push) Waiting to run
Canary release job / Release for linux-x64 (push) Waiting to run
Canary release job / Release for win-x64 (push) Waiting to run
Canary release job / Release MacOS universal (push) Waiting to run
This introduces the ability to read and write game data and model
information from an Amiibo dump file (BIN format). Note that this
functionality requires the presence of a key_retail.bin file. For the
option to appear and function in the UI, ensure that the key_retail.bin
file is located in the <RyujinxData>/system folder.
2024-12-19 22:36:46 -06:00
Marco Carvalho
ff6628149d
Migrate to .NET 9 ( #198 )
Canary release job / Create tag (push) Waiting to run
Canary release job / Release for linux-arm64 (push) Waiting to run
Canary release job / Release for linux-x64 (push) Waiting to run
Canary release job / Release for win-x64 (push) Waiting to run
Canary release job / Release MacOS universal (push) Waiting to run
2024-12-19 18:52:25 -06:00
Evan Husted
290a6ad5de
HLE: extract custom NACP data functionality into a static helper for generic reuse elsewhere, and clarify magic numbers.
2024-12-07 04:30:04 -06:00
WilliamWsyHK
d00754477e
Add Firmware keyword in log if it is indeed firmware ( #343 )
...
Co-authored-by: LotP1 <rasmus.stilling.pedersen1@gmail.com>
2024-12-07 04:03:01 -06:00
Luke Warner
baad1e313f
Stub Ldn.Lp2p.ISfService: 776 (DestroyGroup) ( #353 )
...
Canary release job / Create tag (push) Waiting to run
Canary release job / Release for linux-arm64 (push) Waiting to run
Canary release job / Release for linux-x64 (push) Waiting to run
Canary release job / Release for win-x64 (push) Waiting to run
Canary release job / Release MacOS universal (push) Waiting to run
This prevents a crash in Mario Kart Live: Home Circuit that would occur
after exiting the kart pairing screen.
2024-12-06 14:43:31 -06:00