Archived
1
0
forked from MeloNX/MeloNX

3433 Commits

Author SHA1 Message Date
Emmanuel Hansen
115f366609 add android bionic nce support
(cherry picked from commit d4c3cd03167922a7255e34892a4954f53c7b8aa2)
2024-09-10 09:04:48 +00:00
gdk
b5a82ac607 Add back IsApplication flag
(cherry picked from commit 64e302e6b14806fb44be17a216ef621d0b85cecd)
2024-09-10 09:04:41 +00:00
gdk
7a2869ab6e Add NCE code
(cherry picked from commit 555f9a2db23751da924be7ed5bb63874a976237e)
2024-09-10 09:02:25 +00:00
gdk
1dd2d68be8 Minor refactoring of KPageTableBase to make custom address space layouts easier to implement
(cherry picked from commit a29acdb593f4426d5a05cf1659ace11361378638)
2024-09-10 09:01:06 +00:00
Emmanuel Hansen
8af1066a55 android - add file logs
android - add game stats helper

(cherry picked from commit 211a8f9defaa73b4dad8e99a67c5d11b480f4a1b)
2024-09-10 09:00:59 +00:00
Emmanuel Hansen
ae5fd72e5c disable network change notification on bionic
(cherry picked from commit 183183d0742f961e9799a6b0f4aa415cd666fec6)
2024-09-10 09:00:52 +00:00
Emmanuel Hansen
839d192635 add bionic nativeaot support
(cherry picked from commit 0aed709520c49d51c5c894b72ee3837680cc1d50)
2024-09-10 09:00:46 +00:00
Emmanuel Hansen
b8125859ed add helper for checking bionic
(cherry picked from commit 5e67c3f56949244d72705c9436950ad9896e302b)
2024-09-10 09:00:39 +00:00
Mary
bab815ab6f armeilleure: Do not call GCSettings.LargeObjectHeapCompactionMode on Android
Mono only support Default as argument and will throw otherwise.

(cherry picked from commit 872a33fd39a6fe9e4be19d612d348d1bc46bd0a7)
2024-09-10 09:00:19 +00:00
Mary
909558859d armeilleure: Add Android to GetOSPlatform for PTC
(cherry picked from commit 6b6e62bf9624badbfda356f083d0e7f503c8208e)
2024-09-10 09:00:12 +00:00
Mary
3042cabb02 armeilleure: Add Android signal handler
(cherry picked from commit 12d7315b54880a4b412b1e6aeb25ef58076c8e02)
2024-09-10 09:00:03 +00:00
Mary
3a7a9e4456 armeilleure: Add support for Android in HardwareCapabilities
(cherry picked from commit ef932749b0a49d0cf59bf5a5cc5315c2f2870910)
2024-09-10 08:58:54 +00:00
Mary
463411546a memory: Add Android support
(cherry picked from commit c800a90eb3eaa99b8b3cfa70661539a10a36af40)
2024-09-10 08:58:43 +00:00
Emmanuel Hansen
0a54501974 libryujinx - fix branch
fix libryujinx content manager rebase
disable trim warning suppression
libryujinx - add graphics logging
libryujinx - use pointers for game info struct
libryujinx - update rd
LibRyujinx: Fix path to Ryujinx.UI.Common project
libryujinx - cleanup
Start GameInfoNative
Expand InitializeDeviceNative Signature
libryujinx - Expose InstallFirmware
libryujinx - Expose GetInstalledFirmwareVersion
Don’t crash if no firmware is installed
libryujinx - Expose Accelerometer & Gyro Functions
libryujinx - add stream support
libryujinx - add motion controls
libryujinx - add openal reference, mii applet launch api
rebase fix
libryujinx - load firmware version at launch, add user manager api
libryujinx - fix whitespace and remove unused usings
libryuijinx - fix rd.xml
libryujinx - some optimizations. apply current transform to native window instead of defaulting to Identity
libryujinx - update
libryujinx - Add more debug information when loading game files
libryujinx - call swapbuffer callback
libryujinx - update input
add file logs
add game stats helper
libryujinx-update
add basic touch and button input interface
remove armeilleire reference in rd file
libryujinx - disable shader cache
remove redundant project reference
add nativaot libryujinx project

(cherry picked from commit a3cc23b41858bdfc17d8c9631a31c33f8d1b34cc)
2024-09-10 08:57:35 +00:00
Emmanuel Hansen
0394a39342 replace opentk deprecated size property
(cherry picked from commit e65dc4521353b5cc275ece53fa6367d471fdecba)
2024-09-10 08:49:39 +00:00
Emmanuel Hansen
c90b78499b move unmanaged methods to separate file and expose more api
(cherry picked from commit 4a6b7ffbe55da614ca1a8b8dd693f60e17e99cb0)
2024-09-10 08:49:32 +00:00
gdk
235a90aed8 Make GetFunctionPointerForDelegate as explicit as possible
(cherry picked from commit 49608b7afee445ff20215c029e0515cfc495ba79)
2024-09-10 08:49:08 +00:00
Emmanuel Hansen
0dbca88e08 libryujinx - fix branch
fix libryujinx content manager rebase
disable trim warning suppression
libryujinx - add graphics logging
libryujinx - use pointers for game info struct
libryujinx - update rd
LibRyujinx: Fix path to Ryujinx.UI.Common project
libryujinx - cleanup
Start GameInfoNative
Expand InitializeDeviceNative Signature
libryujinx - Expose InstallFirmware
libryujinx - Expose GetInstalledFirmwareVersion
Don’t crash if no firmware is installed
libryujinx - Expose Accelerometer & Gyro Functions
libryujinx - add stream support
libryujinx - add motion controls
libryujinx - add openal reference, mii applet launch api
rebase fix
libryujinx - load firmware version at launch, add user manager api
libryujinx - fix whitespace and remove unused usings
libryuijinx - fix rd.xml
libryujinx - some optimizations. apply current transform to native window instead of defaulting to Identity
libryujinx - update
libryujinx - Add more debug information when loading game files
libryujinx - call swapbuffer callback
libryujinx - update input
add file logs
add game stats helper
libryujinx-update
add basic touch and button input interface
remove armeilleire reference in rd file
libryujinx - disable shader cache
remove redundant project reference
add nativaot libryujinx project

(cherry picked from commit 6288d793c6d9322c7ea188d689f524a9b73eaa9c)
2024-09-10 08:48:32 +00:00
Emmanuel Hansen
45c4f56c1d fix update searching
(cherry picked from commit c078a561ef781115ee5c7087e071ec141ee9f278)
2024-09-10 08:46:57 +00:00
Emmanuel Hansen
8226f77ddd fix content manager rebase
(cherry picked from commit 086fa8f79be35bc3bcce88764dd56e5ff185d75a)
2024-09-10 08:46:47 +00:00
Emmanuel Hansen
7de794cf81 extend stream loading support
(cherry picked from commit cff4a63e5a6deb33734f296b550723f0c6a9a693)
2024-09-10 08:46:24 +00:00
Emmanuel Hansen
6919b123b7 add stream based loaders
(cherry picked from commit e86dec9112b5e1b58a8241aadcf37bf2e3acd14c)
2024-09-10 08:45:21 +00: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
dependabot[bot]
b45a81458a
nuget: bump DynamicData from 9.0.1 to 9.0.4 (#7220)
Bumps [DynamicData](https://github.com/reactiveui/DynamicData) from 9.0.1 to 9.0.4.
- [Release notes](https://github.com/reactiveui/DynamicData/releases)
- [Changelog](https://github.com/reactivemarbles/DynamicData/blob/main/ReleaseNotes.md)
- [Commits](https://github.com/reactiveui/DynamicData/compare/9.0.1...9.0.4)

---
updated-dependencies:
- dependency-name: DynamicData
  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>
2024-08-21 12:30:43 +02:00
gdkchan
460f9faf4e
Fix NRE when using buffer image array (#7159) 2024-08-21 00:49:17 +01:00
Toni Förster
552c15739c
nuget: bump ImageSharp from 2.1.8 to 2.1.9 (#7160)
While building I got some warnings, so I updated the dependency.

`warning NU1903: Package 'SixLabors.ImageSharp' 2.1.8 has a known high severity vulnerability, https://github.com/advisories/GHSA-63p8-c4ww-9cg7`
2024-08-20 22:26:32 +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
dependabot[bot]
3004902257
nuget: bump DynamicData from 8.4.1 to 9.0.1 (#7040)
Bumps [DynamicData](https://github.com/reactiveui/DynamicData) from 8.4.1 to 9.0.1.
- [Release notes](https://github.com/reactiveui/DynamicData/releases)
- [Changelog](https://github.com/reactivemarbles/DynamicData/blob/main/ReleaseNotes.md)
- [Commits](https://github.com/reactiveui/DynamicData/compare/8.4.1...9.0.1)

---
updated-dependencies:
- dependency-name: DynamicData
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-03 22:34:41 +02: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