3191 Commits

Author SHA1 Message Date
Emmanuel Hansen
953559c71c initial work on multi driver selection 2024-01-22 22:55:06 +00:00
Emmanuel Hansen
d6ba9ad8f5 move android related file to subfolder 2024-01-22 22:55:06 +00:00
Emmanuel Hansen
4eb8e27517 fix native file logs 2024-01-22 22:55:05 +00:00
Emmanuel Hansen
6262bd1730 use int game controller ids 2024-01-22 22:55:05 +00:00
Emmanuel Hansen
e9c7564a03 add more options, fix vsync option 2024-01-22 22:55:05 +00:00
Emmanuel Hansen
7b1ce437ef add settings view 2024-01-22 22:55:05 +00:00
Gabriel A
21a78f173e Add work around for Adreno batched texture + sampler descriptor updates bug 2024-01-22 22:55:05 +00:00
Emmanuel Hansen
e54e18dab8 move android kotlin project over 2024-01-22 22:55:05 +00:00
Emmanuel Hansen
2d39deba26 add more parameters to initialize device 2024-01-22 22:55:04 +00:00
Emmanuel Hansen
28eb812018 add overload for loading game info from path 2024-01-22 22:55:04 +00:00
Emmanuel Hansen
9c510fec3e add android bionic nce support 2024-01-22 22:55:03 +00:00
gdk
44551a0409 Add back IsApplication flag 2024-01-22 22:55:03 +00:00
gdk
0970972f0d Add NCE code 2024-01-22 22:55:02 +00:00
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