Archived
1
0
forked from MeloNX/MeloNX

3453 Commits

Author SHA1 Message Date
Emmanuel Hansen
a583d6bf46 android - load firmware version at launch
clean main ui, add option to import app data

android - add basic user management

android - fix app menu

android - fix game update icon, add app icon

android - add crash handler

android - fix crash when no user is available at launch

android - improve game update selection

android - make settings view scrollable, bump version
2024-09-10 09:10:23 +00:00
Emmanuel Hansen
898f88350c android - sanitize stick input
use file descriptors to load game list

improve async loading. add game load progress
2024-09-10 09:10:22 +00:00
Gabriel A
9eaa683ae4 Add spin lock to prevent waiting for fences on multiple threads at once on Adreno
Support ballot operations with divergent control flow on Adreno

Extend Adreno binding workaround to buffer textures
2024-09-10 09:09:25 +00:00
Emmanuel Hansen
7cfd5dc902 don't request storage usage for surface on bionic 2024-09-10 09:09:25 +00:00
Emmanuel Hansen
dedecebc6b create a copy of updates when added
fix rebase
2024-09-10 09:09:24 +00:00
Emmanuel Hansen
aa34233634 android - some optimizations. apply current transform to native window instead of defaulting to Identity 2024-09-10 09:09:23 +00:00
Emmanuel Hansen
eb8cdde8dd switch to using stream base game loading
add game searching

add bottom popup ingame

move game view to new activity

fix manifest error

reduced virtual controller deadzone

enable hardware accel for activity
2024-09-10 09:09:23 +00:00
TSR Berry
8ac307166a Update Android gradle plugins
Fix gradle build issues when multiple configurations are present
2024-09-10 09:09:23 +00:00
Emmanuel Hansen
b28f9a6331 android - add adrenotools module
test

restore driver selection

fix adreno hooking

fix adreno hooking

fix unzip code

refactor virtual pad composition

separate game loading from surface creation

add closing emulation(starting a new one is still broken), disabled audio

safely close audio on game exit

add dlc manager

fix AsFlags rename conflict
2024-09-10 09:09:22 +00:00
TSR Berry
f28f2dfeeb Replace Helpers.getPath() with file.getAbsolutePath() 2024-09-10 09:09:21 +00:00
TSR Berry
8b7beb6f22 Cleanup gitignore and project file structure
Switch to Java 17 LTS

Keep libryujinx symbols

Add gradle module for libryujinx

Update dependencies

Raise minSdk to 30 to fix linter errors

Make stripSymbols a gradle property

Preserve other jni libraries

Fix file trees

Fix AndroidManifest.xml warnings

Suppress Google Play permission warning

Add preBuild dependency on libryujinx for app

Add toolchain path to all operating systems correctly

Make dotnet executable path configurable

Fix OS detection

Only build LibRyujinx if source or project files changed

Add toolchain path to output

Fix PATH variable on Windows

I spent ~7 hours debugging this.
I searched for a bug in the Exec task and found nothing.
I tried different ways to invoke the dotnet command
to make sure PATH is always set before.
I also modified Microsoft.NETCore.Native.Unix.targets to echo PATH via Exec and via Text.
But in the end I was confused about seeing two PATH variables
when checking the dotnet.exe subprocess with ProcessHacker.
This made me try setting the Path variable instead of PATH
and to my surprise this just worked.
Turns out Windows environment variables are case-sensitive and
Windows uses Path instead of PATH like Unix.

God, I love Microsoft Windows. :)

Cleanup LibRyujinx and add more verbose logging

Cleanup RyujinxAndroid
2024-09-10 09:09:19 +00:00
Emmanuel Hansen
fcb511bbca android - add physical controller support
add performance hints

expand full screen to behind cutouts

fix touch, add toggle for virtual gamepad

remove safe area margins
2024-09-10 09:09:17 +00:00
Gabriel A
c57f6a7fe3 Remove address space mirror and tweak address space layout when host has small adress space 2024-09-10 09:08:03 +00:00
Gabriel A
bbe460cecd Use alternate stack for the segfault handler too 2024-09-10 09:08:02 +00:00
Gabriel A
0ffb074d9a Work around Adreno compute dispatch crash when changing grpahics state with a compute pipeline bound 2024-09-10 09:08:02 +00:00
Gabriel A
51aec9a2ed Allocate NCE patch region dynamically to avoid not having enough space 2024-09-10 09:08:01 +00:00
Gabriel A
282ba31810 Rewrite NceAsmTable using dynamic generation instead to be more robust, fix bugs 2024-09-10 09:08:00 +00:00
Gabriel A
498bb95cf1 Fix incorrect AslrRegionStart when using NCE
(cherry picked from commit 0f34b8e78e2cfca99f6a25553a1fedebbfd3adae)
2024-09-10 09:05:08 +00:00
Gabriel A
88c45e1e86 Add work around for Adreno batched texture + sampler descriptor updates bug
(cherry picked from commit 93abc5ac47fedc413a3437c65de9fecf0555afa6)
2024-09-10 09:05:02 +00:00
Emmanuel Hansen
32064ccba5 move android kotlin project over
(cherry picked from commit de59e13fc267e3e9b2f9f08a88aa6dee21b0e7f3)
2024-09-10 09:04:55 +00:00
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