3328 Commits

Author SHA1 Message Date
gdk
a1e34041fa Minor refactoring of KPageTableBase to make custom address space layouts easier to implement 2024-01-22 22:55:01 +00:00
Emmanuel Hansen
c5bcdc06f5 add game stats helper 2024-01-22 22:55:01 +00:00
Emmanuel Hansen
c8d6f786c5 add option to enable debug logs 2024-01-22 22:55:01 +00:00
Emmanuel Hansen
c0a2cc5f6c disable optional logs 2024-01-22 22:54:59 +00:00
Emmanuel Hansen
db9111b895 add file logs 2024-01-22 22:54:58 +00:00
Emmanuel Hansen
159d1f0eae disable network change notification on bionic 2024-01-22 22:54:57 +00:00
Emmanuel Hansen
07caf24936 add steam based loaders 2024-01-22 22:54:57 +00:00
Emmanuel Hansen
56a6ac2a65 add interface fore loading games from storage 2024-01-22 22:54:56 +00:00
Emmanuel Hansen
145cd0b2b1 fix build on newer ndk versions 2024-01-22 22:54:56 +00:00
Emmanuel Hansen
333401b71d add helper to get new surface on android, still crashes when screen resizes 2024-01-22 22:54:55 +00:00
Emmanuel Hansen
5b9b17ef24 attempt to recreate surface if lost 2024-01-22 22:54:55 +00:00
Emmanuel Hansen
ba8028d1d0 add audio support for android 2024-01-22 22:54:55 +00:00
Emmanuel Hansen
a57cad5d5e add sdl audio backend as default audio 2024-01-22 22:54:54 +00:00
Emmanuel Hansen
9bb70e5ac2 enable release optimizations on aot 2024-01-22 22:54:54 +00:00
Emmanuel Hansen
416f40bddc remove spirv compilation option from native aot project 2024-01-22 22:54:54 +00:00
Emmanuel Hansen
3af84d0715 fix release bionic crash 2024-01-22 22:54:54 +00:00
Emmanuel Hansen
d988dfa781 use procontroller as default libryujinx controller type 2024-01-22 22:54:53 +00:00
Emmanuel Hansen
fd05b76554 make applet manager reflection free 2024-01-22 22:54:53 +00:00
Emmanuel Hansen
6828fe6270 fix android bionic log 2024-01-22 22:54:53 +00:00
Emmanuel Hansen
4d06f19fe7 add bionic nativeaot support 2024-01-22 22:54:52 +00:00
Emmanuel Hansen
ad0f9a7fc7 add helper for checking bionic 2024-01-22 22:54:52 +00:00
Mary
1835e16045 armeilleure: Do not call GCSettings.LargeObjectHeapCompactionMode on Android
Mono only support Default as argument and will throw otherwise.
2024-01-22 22:54:51 +00:00
Mary
0a666d9c5b armeilleure: Add Android to GetOSPlatform for PTC 2024-01-22 22:54:51 +00:00
Mary
b7d08e5050 armeilleure: Add Android signal handler 2024-01-22 22:54:51 +00:00
Mary
8a8db6244d armeilleure: Add support for Android in HardwareCapabilities 2024-01-22 22:54:51 +00:00
Mary
0b14eb3a61 memory: Add Android support 2024-01-22 22:54:50 +00:00
Emmanuel Hansen
c27a12df2c add basic touch and button input interface 2024-01-22 22:54:50 +00:00
Emmanuel Hansen
24b8d7c981 remove armeilleire reference in rd file 2024-01-22 22:54:50 +00:00
Emmanuel Hansen
8535b6c2f6 libryujinx - disable shader cache 2024-01-22 22:54:50 +00:00
Emmanuel Hansen
cb8837e1b8 remove redundant project reference 2024-01-22 22:54:49 +00:00
gdk
0e3c224b8d Make GetFunctionPointerForDelegate as explicit as possible 2024-01-22 22:54:49 +00:00
Emmanuel Hansen
1694303e4c add nativaot libryujinx project 2024-01-22 22:54:49 +00:00
Emmanuel Hansen
cea50d80c9 remove usage of reflection in device state 2024-01-22 22:54:49 +00:00
Emmanuel Hansen
c3a3adbaeb add hle service generator 2024-01-22 22:54:49 +00:00
gdkchan
4df22eb867
Fix missing data for new copy dependency textures with mismatching size (#6161) 2024-01-22 17:42:26 -03:00
gdkchan
f241f88558
Add a separate device memory manager (#6153)
* Add a separate device memory manager

* Still need this

* Device writes are always tracked

* Device writes are always tracked (2)

* Rename more instances of gmm to mm
2024-01-22 17:14:46 -03:00
riperiperi
90455a05e6
Input: Improve controller identification (#6029)
* Input: Improve controller identification

Controllers were identified before by a combination of their _global_ index in the list of controllers and their GUID. The problem is, disconnecting and reconnecting a controller can change its global index; the controller can appear at the end. This would give it another ID, and the controller would need to be reconfigured.

This happened to me a lot with a switch pro controller and a USB game controller, it was essentially random which appeared first. Now, it consistently detects them.

This PR changes the controller identification to be a combination of an index of controllers with the same GUID (generally 0), and its GUID. It also reworks managing the list of controllers to properly consider instance IDs.

This also changes the NpadManager to attempt to reuse old controllers when refreshing input configuration, which can prevent input from going dead for seconds whenever a controller connects or disconnects (and the switch pro controller just entirely dying).

Testing with different controller types, OS and Avalonia is welcome. Remember that the target is connecting a ton of controllers, and pulling/reconnecting them.

* Remove double empty line
2024-01-22 17:02:44 -03:00
gdkchan
edc76883db
Fix integer overflow on downsample surround to stereo (#6160) 2024-01-21 21:11:46 +01:00
gdkchan
427b7d06b5
Implement a new JIT for Arm devices (#6057)
* Implement a new JIT for Arm devices

* Auto-format

* Make a lot of Assembler members read-only

* More read-only

* Fix more warnings

* ObjectDisposedException.ThrowIf

* New JIT cache for platforms that enforce W^X, currently unused

* Remove unused using

* Fix assert

* Pass memory manager type around

* Safe memory manager mode support + other improvements

* Actual safe memory manager mode masking support

* PR feedback
2024-01-20 11:11:28 -03:00
riperiperi
331c07807f
Vulkan: Use templates for descriptor updates (#6014)
* WIP: Descriptor template update

* Make configurable

* Wording

* Simplify template creation

* Whitespace

* UTF-8 whatever

* Leave only templated path, better template updater
2024-01-20 11:07:33 -03:00
Steveice10
a772b073ec
Support portable mode using the macOS app bundle. (#6147)
* Support portable mode using the macOS app bundle.

* Apply suggestion

Co-authored-by: TSRBerry <20988865+TSRBerry@users.noreply.github.com>

---------

Co-authored-by: TSRBerry <20988865+TSRBerry@users.noreply.github.com>
2024-01-20 03:09:51 +01:00
gdkchan
870d9599cc
Change shader cache init wait method (#6131)
* Change shader cache init wait method

* Make field readonly
2024-01-18 14:17:38 -03:00
gdkchan
2dbbc9bc05
Move most of signal handling to Ryujinx.Cpu project (#6128)
* Move most of signal handling to Ryujinx.Cpu project

* Format whitespace

* Remove unused member

* Format whitespace

* This does not need to be public anymore
2024-01-18 14:08:40 -03:00
Isaac Marovitz
72634c80f4
Ava UI: Update Ava & Friends (#6109)
* Update Ava & Friends

* FA 2.0.5

* Ava 11.0.7

* Fix
2024-01-17 23:50:31 +01:00
riperiperi
bebd8eb822
Vulkan: Cache delegate for EndRenderPass (#6132)
This prevents a small allocation each time this method is called. This is a top 3 SOH allocation during gameplay in most games, and eliminating it is pretty free.
2024-01-16 13:22:20 +01:00
gdkchan
f4b74e9ce1
Fix vertex buffer size when switching between inline and state draw parameters (#6101)
* Fix vertex buffer size when switching between inline and state draw parameters

* Format whitespace
2024-01-14 09:37:19 +01:00
Isaac Marovitz
4e19b36ad7
CI: Dependabot Groups (#6110)
* CI: Dependabot Groups

* NUnit

* Limit of 10

* Whoops

* Missing wildcard

* Remove Ryujank group
2024-01-13 15:28:57 +01:00
gdkchan
b16923a902
Revert Apple hypervisor force ordered memory change (#6068) 2024-01-13 11:58:09 +01:00
TSRBerry
7e58b21f3d
Fix Amiibo regression and some minor code improvements (#6107)
* Remove redundant code and fix small issues

* Log amiibo exceptions

* Add more checks when getting Amiibo data

* Fall back to online data if local file is inaccessible

* Make dotnet format happy
2024-01-13 11:45:38 +01:00
Isaac Marovitz
4fbc978e73
Switch to Microsoft.IdentityModel.JsonWebTokens (#6108)
* Switch to `Microsoft.IdentityModel.JsonWebTokens`

* Formatting
2024-01-13 11:39:00 +01:00