Commit graph

21652 commits

Author SHA1 Message Date
Charles Lombardo
f0ba58f5aa android: Add theme picker 2023-06-03 00:05:54 -07:00
Charles Lombardo
5b26ac9293 android: Prevent potential abstract settings crash 2023-06-03 00:05:54 -07:00
Charles Lombardo
b6f57da70a android: Fix cast for abstract settings 2023-06-03 00:05:54 -07:00
Charles Lombardo
7531641ecc android: Create xml for Material You theme 2023-06-03 00:05:54 -07:00
Charles Lombardo
89593d70bf android: Remove check for API 29 in themes 2023-06-03 00:05:53 -07:00
Charles Lombardo
8cef21a0b0 android: Adjustments to home option card
Several spacing/color adjustments provided by Flam
2023-06-03 00:05:53 -07:00
Charles Lombardo
a82f8fe1c1 android: Use different colors for logo in options menu
Reverting to the official logo colors
2023-06-03 00:05:53 -07:00
Charles Lombardo
9673974f73 android: New default theme colors 2023-06-03 00:05:53 -07:00
Charles Lombardo
6549348656 android: Use libnx default icon
Credit to jaames for the original icon
2023-06-03 00:05:53 -07:00
Liam
8b4c5a9939 android: enable LTO 2023-06-03 00:05:53 -07:00
Charles Lombardo
83dae1739c android: Show error if invalid keys file is selected
There aren't MIME types specific enough for filtering out files that aren't amiibo or production keys. So here we just check for the extensions "bin" or "keys" where appropriate and stop the process if incorrect. Previously you could select any document and it could cause the app to hang.
2023-06-03 00:05:53 -07:00
Charles Lombardo
d8c102444c android: Fix first time setup scrolling bug
If you quickly scrolled from the second page to the first and then back, the next/back buttons would disappear.
2023-06-03 00:05:53 -07:00
Charles Lombardo
45d81dc6bd android: Fix A button preference key 2023-06-03 00:05:53 -07:00
Charles Lombardo
59525ddbeb android: First time setup screen 2023-06-03 00:05:52 -07:00
Charles Lombardo
766655fa41 android: Prevent editing unsafe settings at runtime
There currently isn't a visual "disabled" cue for any of the view holders that aren't the switch setting. This will be improved in the future.
2023-06-03 00:05:52 -07:00
Charles Lombardo
c609847e49 android: Abstract settings
Previously we could only add settings that would change our ini file. Now we can create abstract settings in our presenter to alter things like shared preferences for theme support!
2023-06-03 00:05:52 -07:00
german77
6dfe4240ac android: Implement gamepad input 2023-06-03 00:05:52 -07:00
Charles Lombardo
f5c48f92f2 android: Bump minimum version to Android 11 2023-06-03 00:05:52 -07:00
Charles Lombardo
9c9d9131b5 android: Decouple status bar shade from navigation bar visibility 2023-06-03 00:05:52 -07:00
Charles Lombardo
d57ae50f17 android: Enable code minification 2023-06-03 00:05:52 -07:00
Charles Lombardo
921e6dddcc android: Switch from a colored status bar to a custom view
Allows for smoother transitions with the search bar
2023-06-03 00:05:52 -07:00
Charles Lombardo
3f2b832371 android: Adjustments to card_game
Removed a currently unused text view and moved to material text views.
2023-06-03 00:05:51 -07:00
Charles Lombardo
233ae9ab69 android: MainActivity overhaul
This moves several parts of the main activity into fragments that manage themselves to react to changes. UI changes like the appearance of a new search view or when the games list changes now gets updated via multiple view models. This also starts a conversion to the androidx navigation component which furthers the goals mentioned previously with more fragment responsibility. This will eventually allow us to use one activity with interchanging fragments and multiple view models that are stored within that central activity.

fdas
2023-06-03 00:05:51 -07:00
Charles Lombardo
859c40f00e android: Enforce Vulkan 1.1 support as minimum 2023-06-03 00:05:51 -07:00
Charles Lombardo
e5487243d3 android: Update gradle version to 8.1 2023-06-03 00:05:51 -07:00
Charles Lombardo
b1ebc1c395 android: Update app dependencies 2023-06-03 00:05:51 -07:00
Charles Lombardo
ab87f74998 android: Convert gradle scripts to Kotlin DSL 2023-06-03 00:05:51 -07:00
bunnei
12c9e18b55 android: vulkan: Disable vertex_input_dynamic_state on Qualcomm. 2023-06-03 00:05:51 -07:00
bunnei
d2e55558df android: settings: Add scaling filter & anti-aliasing options. (#66) 2023-06-03 00:05:50 -07:00
bunnei
4006468f73 android: video_core: Add support for disk shader cache. (#64) 2023-06-03 00:05:50 -07:00
bunnei
6d2e7de2e0 android: vulkan_debug_callback: Ignore many innocuous errors. 2023-06-03 00:05:50 -07:00
bunnei
30bf5d5b07 android: config: Change docked mode and GPU accuracy to favor performance on Android. 2023-06-03 00:05:50 -07:00
german77
dc52152a81 service: account: Save user profile folder on first user creation 2023-06-03 00:05:50 -07:00
german77
f9974f7ef3 android: Initialize account manager 2023-06-03 00:05:50 -07:00
german77
5aec62930c android: Remove unsafe null check 2023-06-03 00:05:50 -07:00
Charles Lombardo
78f02ab9a6 android: Scale input overlay independently of system display scale 2023-06-03 00:05:50 -07:00
Charles Lombardo
aeaddf407b android: Use apply instead of commit for shared preferences
Previously we were operating on the assumption that apply'd settings wouldn't be visible immediately. This isn't true and settings will be accessible via memory before being stored to disk. This reduces any potential stutters caused by saving to shared preferences.
2023-06-03 00:05:50 -07:00
Charles Lombardo
fcbf08ca98 android: Add DPad slide toggle 2023-06-03 00:05:50 -07:00
Charles Lombardo
bebc822334 android: Add relative stick center toggle 2023-06-03 00:05:49 -07:00
Charles Lombardo
63819af214 android: Make hash and branch accessible from BuildConfig 2023-06-03 00:05:49 -07:00
Charles Lombardo
f5055ca930 android: Backup shared preferences where applicable 2023-06-03 00:05:49 -07:00
Charles Lombardo
940dbdcff2 android: Enable retaining app data after uninstall 2023-06-03 00:05:49 -07:00
Charles Lombardo
1cc8011355 android: Remove unused doFrame function 2023-06-03 00:05:49 -07:00
Charles Lombardo
4d9011a8f0 android: Convert NativeLibrary to Kotlin 2023-06-03 00:05:49 -07:00
Charles Lombardo
a827486391 android: Remove LocalBroadcastManager
This causes a couple of minor changes to directory initialization. We don't have a lengthy initialization step so we could spend less time creating state receivers and just run initialization on the main thread. We also don't have a situation where external storage will be a concern so checks are removed in favor of a binary check to see if initialization is ready.

This additionally removes the unused DoFrame callback.
2023-06-03 00:05:49 -07:00
Charles Lombardo
9d7a60346f android: Remove game database
The content provider + database solution was excessive and is now replaced with the simple file checks from before but turned into an array list held within a viewmodel.
2023-06-03 00:05:49 -07:00
Charles Lombardo
4816d5158e android: Adjust game icon loading 2023-06-03 00:05:49 -07:00
Charles Lombardo
730c63df7e android: Remove unused dimensions files 2023-06-03 00:05:48 -07:00
Charles Lombardo
83b1459af5 android: Slightly reduce game card size 2023-06-03 00:05:48 -07:00
Charles Lombardo
ac417a4ffa android: Only show company text view if it has content 2023-06-03 00:05:48 -07:00
Charles Lombardo
c0aa5392b9 android: Fix check for ok text in software keyboard 2023-06-03 00:05:48 -07:00
Narr the Reg
ca4be4283d android: Implement amiibo reading from nfc tag 2023-06-03 00:05:48 -07:00
bunnei
b2aeb50229 android: vulkan_device: Disable VK_EXT_custom_border_color on Adreno.
- Causes crashes on sampler creation with Super Mario Odyssey.
2023-06-03 00:05:48 -07:00
Charles Lombardo
1ea84854bd android: Add toggle controls option to input overlay 2023-06-03 00:05:48 -07:00
Charles Lombardo
8b99a1e49b android: Do not update FPS text on null view 2023-06-03 00:05:48 -07:00
Charles Lombardo
d30103b69f android: Convert keyboard applet to kotlin and refactor 2023-06-03 00:05:48 -07:00
bunnei
d5ebfc8e21 android: Implement basic software keyboard applet. 2023-06-03 00:05:47 -07:00
bunnei
58ede89c60 android: config: Disable shader cache by default on Android. 2023-06-03 00:05:47 -07:00
german77
a862c33fc4 android: Fix fps counter not showing up 2023-06-03 00:05:47 -07:00
Charles Lombardo
ec048361af android: Prevent showing games on an invalid view 2023-06-03 00:05:47 -07:00
Charles Lombardo
b0a434b99f android: Re-implement overlay editing 2023-06-03 00:05:47 -07:00
Charles Lombardo
5807cf1b4d android: Fix popup menu going out of bounds 2023-06-03 00:05:47 -07:00
Charles Lombardo
3878c6ced1 android: Use autofit grid for games fragment 2023-06-03 00:05:47 -07:00
Charles Lombardo
9cb7e7072d android: Prevent updating empty game list text on invalid view 2023-06-03 00:05:47 -07:00
Charles Lombardo
295ffd4d47 android: Persist settings across configuration changes
Mostly things get refactored here to remove previous assumptions made about how the activity/fragment lifecycles would operate. The important change for persistence is removing the assumption that the user will be at the first settings fragment on recreation when deciding whether or not to reload settings. Now we check a flag in Settings to know if we loaded the settings within this lifecycle.
2023-06-03 00:05:47 -07:00
Charles Lombardo
aaefe8a0e0 android: Store settings object in viewmodel 2023-06-03 00:05:47 -07:00
Charles Lombardo
06e58cf088 android: Remove configChanges exceptions 2023-06-03 00:05:46 -07:00
Charles Lombardo
35e9a99452 Android: Enable resizeable activities 2023-06-03 00:05:46 -07:00
Charles Lombardo
89b9285627 android: Fix emulation fragment comments 2023-06-03 00:05:46 -07:00
Charles Lombardo
273e81bb94 android: Use modal navigation drawer as in game menu 2023-06-03 00:05:46 -07:00
Charles Lombardo
1f3b41366c android: Make Game class parcelable 2023-06-03 00:05:46 -07:00
Charles Lombardo
c53e927368 android: Add kotlin parcelize plugin 2023-06-03 00:05:46 -07:00
Charles Lombardo
e2a7143a3d android: Remove deprecated use of onActivityResult 2023-06-03 00:05:46 -07:00
Charles Lombardo
d9e7e71a8e android: Fix RTL layouts 2023-06-03 00:05:46 -07:00
Charles Lombardo
3c9aa8d230 android: Use ellipsis character 2023-06-03 00:05:46 -07:00
Charles Lombardo
16c7afbd46 android: Move all array strings to main strings file 2023-06-03 00:05:46 -07:00
Charles Lombardo
03d9247527 android: Remove unused strings 2023-06-03 00:05:45 -07:00
Charles Lombardo
bf584d85ad android: Remove unused colors 2023-06-03 00:05:45 -07:00
Charles Lombardo
9a842deba5 android: Remove citra date time picker 2023-06-03 00:05:45 -07:00
Charles Lombardo
87211c8aec android: Remove unused premium header layout 2023-06-03 00:05:45 -07:00
Charles Lombardo
1c93ac8e03 android: Remove unused fragment animations 2023-06-03 00:05:45 -07:00
Charles Lombardo
27ec749bdf android: Remove unused string arrays 2023-06-03 00:05:45 -07:00
Charles Lombardo
dafa6dff07 android: Remove unused integer xmls 2023-06-03 00:05:45 -07:00
Charles Lombardo
74653f1e80 android: Refactor ic_launcher.xml to drawables 2023-06-03 00:05:45 -07:00
Charles Lombardo
8a34e58ad6 android: Suppress lint in InsetsHelper 2023-06-03 00:05:45 -07:00
Charles Lombardo
1b40a3df19 android: Add data extraction rules 2023-06-03 00:05:44 -07:00
Charles Lombardo
93d6a1fc9c android: Remove requestLegacyExternalStorage attribute 2023-06-03 00:05:44 -07:00
Charles Lombardo
c803d9e5c7 android: Remove unused permissions 2023-06-03 00:05:44 -07:00
Charles Lombardo
d3c3b69755 android: Inset input overlay based on system cutouts 2023-06-03 00:05:44 -07:00
Narr the Reg
3f35b34515 Use yuzu as category instead of citra 2023-06-03 00:05:44 -07:00
Charles Lombardo
1634391bff android: Stop updating fps counter when emulation stops 2023-06-03 00:05:44 -07:00
Charles Lombardo
a49a24b079 android: Move driver installation off of main thread
Additionally creates an indeterminate loading dialog during installation
2023-06-03 00:05:44 -07:00
Charles Lombardo
72bef4fa95 android: Fix crash when decodeGameIcon creates a null Bitmap 2023-06-03 00:05:44 -07:00
Charles Lombardo
72679c7bae android: Use view binding 2023-06-03 00:05:44 -07:00
Charles Lombardo
e49e6cac7e android: Enable view binding 2023-06-03 00:05:44 -07:00
Charles Lombardo
4de3abdd5a android: Refactor CheckBoxSetting to SwitchSetting 2023-06-03 00:05:44 -07:00
bunnei
b5b4e50c32 android: EmulationActivity: Fix variable shadowing in fragment creation. 2023-06-03 00:05:43 -07:00
bunnei
f45a0b94d6 android: res: fragment_emulation: Ensure FPS counter is shown. 2023-06-03 00:05:43 -07:00
Liam
b19754c73f common: link libandroid on android 2023-06-03 00:05:43 -07:00
Liam
616cf70a80 build: only enable adrenotools on arm64 2023-06-03 00:05:43 -07:00
Charles Lombardo
515f3deea1 android: Use Skyline's document provider 2023-06-03 00:05:43 -07:00
Charles Lombardo
55e4c2d87b android: Use androidx splash screen 2023-06-03 00:05:43 -07:00
Charles Lombardo
3fcc6b1104 android: Replace Picasso with Coil 2023-06-03 00:05:43 -07:00
Charles Lombardo
37cc94526b android: New swipe to refresh color scheme 2023-06-03 00:05:43 -07:00
Charles Lombardo
352559b83d android: New settings fragment animations 2023-06-03 00:05:43 -07:00
Charles Lombardo
f40059e4ba android: Use edge to edge 2023-06-03 00:05:43 -07:00
Charles Lombardo
5840d60724 android: Use Material 3 components 2023-06-03 00:05:42 -07:00
Charles Lombardo
18f4ef436d android: Modernize theme system 2023-06-03 00:05:42 -07:00
Charles Lombardo
09780c76aa android: Use vector icons 2023-06-03 00:05:42 -07:00
Charles Lombardo
527229c8b3 android: Use adaptive icon 2023-06-03 00:05:42 -07:00
bunnei
c385b2b07b android: settings: Dynamically evaluate valueAsString
Co-Authored-By: bunnei <bunneidev@gmail.com>
2023-06-03 00:05:42 -07:00
Charles Lombardo
2d934720f5 android: Add license identifier 2023-06-03 00:05:42 -07:00
Charles Lombardo
95af1b2a23 android: Convert YuzuApplication to Kotlin 2023-06-03 00:05:42 -07:00
Charles Lombardo
1a4de8d213 android: Convert Action1 to Kotlin 2023-06-03 00:05:42 -07:00
Charles Lombardo
7a0d7bb3f3 android: Convert GameViewHolder to Kotlin 2023-06-03 00:05:41 -07:00
Charles Lombardo
8a4eb062e8 android: Remove ThemeUtil 2023-06-03 00:05:41 -07:00
Charles Lombardo
b8eb8bd2b5 android: Convert StartupHandler to Kotlin 2023-06-03 00:05:41 -07:00
Charles Lombardo
de1dff557d android: Convert Log to Kotlin 2023-06-03 00:05:41 -07:00
Charles Lombardo
a05c6deb66 android: Convert GpuDriverMetadata to Kotlin 2023-06-03 00:05:41 -07:00
Charles Lombardo
d2f9cf133d android: Convert GpuDriverHelper to Kotlin 2023-06-03 00:05:41 -07:00
Charles Lombardo
bf0c383024 android: Convert GameIconRequestHandler to Kotlin 2023-06-03 00:05:41 -07:00
Charles Lombardo
5d5233ec32 android: Convert ForegroundService to Kotlin 2023-06-03 00:05:41 -07:00
Charles Lombardo
7b54c2b2e2 android: Convert FileUtil to Kotlin 2023-06-03 00:05:41 -07:00
Charles Lombardo
7fb7f3e83f android: Convert FileBrowserHelper to Kotlin 2023-06-03 00:05:41 -07:00
Charles Lombardo
c9d2d74f1f android: Convert EmulationMenuSettings to Kotlin 2023-06-03 00:05:40 -07:00
Charles Lombardo
2444df2bf4 android: Convert DocumentsTree to Kotlin 2023-06-03 00:05:40 -07:00
Charles Lombardo
711aedeaae android: Convert DirectoryStateReceiver to Kotlin 2023-06-03 00:05:40 -07:00
Charles Lombardo
a8994a57d6 android: Convert DirectoryInitialization to Kotlin 2023-06-03 00:05:40 -07:00
Charles Lombardo
b9f1f70688 android: Convert ControllerMappingHelper to Kotlin 2023-06-03 00:05:40 -07:00
Charles Lombardo
c02a27ebd2 android: Convert BiMap to Kotlin 2023-06-03 00:05:40 -07:00
Charles Lombardo
8710c6e14c android: Convert AddDirectoryHelper to Kotlin 2023-06-03 00:05:40 -07:00
Charles Lombardo
e83de8eefb android: Convert PlatformGamesView to Kotlin 2023-06-03 00:05:40 -07:00
Charles Lombardo
fcce7b898f android: Convert PlatformGamesPresenter to Kotlin 2023-06-03 00:05:40 -07:00
Charles Lombardo
0b2350ad5b android: Convert PlatformGamesFragment to Kotlin 2023-06-03 00:05:40 -07:00
Charles Lombardo
67c2e89d2c android: Convert MainView to Kotlin 2023-06-03 00:05:39 -07:00
Charles Lombardo
0f742b3464 android: Convert MainPresenter to Kotlin 2023-06-03 00:05:39 -07:00
Charles Lombardo
42b3e72e96 android: Convert InputOverlayDrawableJoystick to Kotlin 2023-06-03 00:05:39 -07:00
Charles Lombardo
5c8372a566 android: Convert MainActivity to Kotlin 2023-06-03 00:05:39 -07:00
Charles Lombardo
f4508b255f android: Remove ExampleInstrumentedTest 2023-06-03 00:05:39 -07:00
Charles Lombardo
482d3e0b5f android: Remove TwoPaneOnBackPressedCallback
Leftover UI code for dolphin's cheat system. Removing for now.
2023-06-03 00:05:39 -07:00
Charles Lombardo
d85678a80f android: Convert InputOverlayDrawableDpad to Kotlin 2023-06-03 00:05:39 -07:00
Charles Lombardo
0177e908e9 android: Convert InputOverlayDrawableButton to Kotlin 2023-06-03 00:05:39 -07:00
Charles Lombardo
a1c57de466 android: Convert InputOverlay to Kotlin 2023-06-03 00:05:39 -07:00
Charles Lombardo
096cdc57bb android: Remove DividerItemDecoration
Removed in favor of material components version
2023-06-03 00:05:39 -07:00
Charles Lombardo
24ade95a13 android: Inherit from Material 3 themes
Partially breaks the UI for now but is necessary to use new material components.
2023-06-03 00:05:38 -07:00
Charles Lombardo
b5819594ba android: Convert MinimalDocumentFile to Kotlin 2023-06-03 00:05:38 -07:00
Charles Lombardo
9e8ab499dc android: Convert GameProvider to Kotlin 2023-06-03 00:05:38 -07:00
Charles Lombardo
4ce86a526c android: Convert GameDatabase to Kotlin 2023-06-03 00:05:38 -07:00
Charles Lombardo
bbe5dee9f8 android: Convert Game to Kotlin 2023-06-03 00:05:38 -07:00
Charles Lombardo
66079923ae android: Convert EmulationFragment to Kotlin 2023-06-03 00:05:38 -07:00
Charles Lombardo
0e4256651a android: Convert SettingsFile to Kotlin 2023-06-03 00:05:38 -07:00
Charles Lombardo
a29c615f8d android: Convert SettingsFrameLayout to Kotlin 2023-06-03 00:05:38 -07:00
Charles Lombardo
c39bf17f83 android: Convert SettingsFragmentView to Kotlin 2023-06-03 00:05:38 -07:00
Charles Lombardo
14d156701f android: Convert SettingsFragmentPresenter to Kotlin 2023-06-03 00:05:38 -07:00
Charles Lombardo
1fc66f1b30 android: Convert SettingsFragment to Kotlin 2023-06-03 00:05:37 -07:00
Charles Lombardo
469f0ec019 android: Convert SettingsActivityView to Kotlin 2023-06-03 00:05:37 -07:00
Charles Lombardo
34ce4877bd android: Convert SettingsActivityPresenter to Kotlin 2023-06-03 00:05:37 -07:00
Charles Lombardo
b10e13c090 android: Convert SettingsActivity to Kotlin 2023-06-03 00:05:37 -07:00
Charles Lombardo
ed83650ee4 android: Convert SubmenuViewHolder to Kotlin 2023-06-03 00:05:37 -07:00
Charles Lombardo
6044d924f7 android: Convert SliderViewHolder to Kotlin 2023-06-03 00:05:37 -07:00
Charles Lombardo
fd1801aec4 android: Convert SingleChoiceViewHolder to Kotlin 2023-06-03 00:05:37 -07:00
Charles Lombardo
c42eb92557 android: Convert SettingViewHolder to Kotlin 2023-06-03 00:05:37 -07:00
Charles Lombardo
d472f41580 android: Convert HeaderViewHolder to Kotlin 2023-06-03 00:05:37 -07:00
Charles Lombardo
e02e33826b android: Convert DateTimeViewHolder to Kotlin 2023-06-03 00:05:37 -07:00
Charles Lombardo
3a5b9ecba2 android: Convert CheckBoxSettingViewHolder to Kotlin 2023-06-03 00:05:36 -07:00
Charles Lombardo
f0a9fcf100 android: Convert StringSetting to Kotlin 2023-06-03 00:05:36 -07:00
Charles Lombardo
412ec72d26 android: Convert SettingSection to Kotlin 2023-06-03 00:05:36 -07:00
Charles Lombardo
6f80f9d5b0 android: Convert Setting to Kotlin 2023-06-03 00:05:36 -07:00
Charles Lombardo
6e7fdcb484 android: Convert IntSetting to Kotlin 2023-06-03 00:05:36 -07:00
Charles Lombardo
2439fc8374 android: Convert FloatSetting to Kotlin 2023-06-03 00:05:36 -07:00
Charles Lombardo
88b9d484e8 android: Convert BooleanSetting to Kotlin 2023-06-03 00:05:36 -07:00
Charles Lombardo
b98aaf1635 android: Convert SubmenuSetting to Kotlin 2023-06-03 00:05:36 -07:00
Charles Lombardo
91884976a1 android: Convert StringSingleChoiceSetting to Kotlin 2023-06-03 00:05:36 -07:00
Charles Lombardo
89eed93ce0 android: Convert SliderSetting to Kotlin 2023-06-03 00:05:36 -07:00
Charles Lombardo
a0e91e3a93 android: Convert SingleChoiceSetting to Kotlin 2023-06-03 00:05:35 -07:00
Charles Lombardo
22b44be0b2 android: Convert SettingsItem to Kotlin 2023-06-03 00:05:35 -07:00
Charles Lombardo
537c16d4cf android: Convert HeaderSetting to Kotlin 2023-06-03 00:05:35 -07:00
Charles Lombardo
21841b6520 android: Convert DateTimeSetting to Kotlin 2023-06-03 00:05:35 -07:00
Charles Lombardo
4d9cfc6798 android: Convert CheckBoxSetting to Kotlin 2023-06-03 00:05:35 -07:00
Charles Lombardo
0d044e9f2f android: Convert GameAdapter to Kotlin 2023-06-03 00:05:35 -07:00
Charles Lombardo
87f4c3f105 android: Convert SettingsAdapter to Kotlin
Update SettingsAdapter.kt
2023-06-03 00:05:35 -07:00
Charles Lombardo
39a65f8446 android: Convert EmulationActivity to Kotlin 2023-06-03 00:05:35 -07:00
Charles Lombardo
7cd72a7c6d android: Use material slider in settings dialog 2023-06-03 00:05:35 -07:00
Charles Lombardo
fa38c7be4f android: Convert Settings to Kotlin 2023-06-03 00:05:35 -07:00
Charles Lombardo
753a0c6b5d android: Use androidx preferences 2023-06-03 00:05:34 -07:00
bunnei
2dfbfadf82 android: frontend: Add unique error strings for Vulkan initialization errors. 2023-06-03 00:05:34 -07:00
german77
bde568c3c5 android: Use the center of the object and reduce draw calls 2023-06-03 00:05:34 -07:00
german77
7dd02363a3 android: Replace old buttons with vectors 2023-06-03 00:05:34 -07:00
Charles Lombardo
834d53fbbf android: Enable Kotlin support 2023-06-03 00:05:34 -07:00
Charles Lombardo
96ea063b45 android: Upgrade java version to 11 2023-06-03 00:05:33 -07:00
Charles Lombardo
9191ae23ec android: Upgrade dependencies 2023-06-03 00:05:33 -07:00
Charles Lombardo
82dca7e586 android: Upgrade to AGP 7.4.2 2023-06-03 00:05:33 -07:00
Charles Lombardo
fc785972f9 android: Replace lintOptions with lint 2023-06-03 00:05:33 -07:00
Charles Lombardo
9507e99165 android: Move namespace to app module build.gradle 2023-06-03 00:05:33 -07:00
Charles Lombardo
fc0c5fa86f android: bump compile/target sdk to 33 2023-06-03 00:05:33 -07:00
Charles Lombardo
9762646112 android: Upgrade gradle to 8.0.1 2023-06-03 00:05:33 -07:00
liushuyu
e26bd1421e video_core: fix clang-format errors 2023-06-03 00:05:33 -07:00
liushuyu
19eec22b38 CMake: fix pkg-config behavior when building for Android 2023-06-03 00:05:33 -07:00
liushuyu
1d0329a065 CI: add Android build systems 2023-06-03 00:05:33 -07:00
bunnei
26ee6844c2 android: build.gradle: Cleanup build types. 2023-06-03 00:05:32 -07:00
bunnei
4769d716fc android: frontend: settings: Add graphics debugging. 2023-06-03 00:05:32 -07:00
bunnei
0276197744 android: jni: Ensure system is only initialized once.
- Fixes likelihood that fastmem allocation succeeds.
2023-06-03 00:05:32 -07:00
bunnei
ff2f370946 video_core: vulkan_device: Correct error message for unsuitable driver. 2023-06-03 00:05:32 -07:00
bunnei
dcbf0c43c0 android: frontend: Cleanup framerate counter. 2023-06-03 00:05:32 -07:00
bunnei
8248d69093 android: vulkan: Implement adrenotools turbo mode. 2023-06-03 00:05:32 -07:00
bunnei
21320d80d9 android: vulkan_device: Disable VK_EXT_extended_dynamic_state2 on Qualcomm.
- Newer drivers report this as supported, but it is broken.
2023-06-03 00:05:32 -07:00
bunnei
b0f8aef057 android: frontend: Add support for GPU driver selection. 2023-06-03 00:05:32 -07:00
bunnei
4c38220a64 android: native: Add support for custom Vulkan driver loading. 2023-06-03 00:05:31 -07:00
bunnei
ae099d583c core: frontend: Refactor GraphicsContext to its own module. 2023-06-03 00:05:31 -07:00
bunnei
32cf6beee3 common: dynamic_library: Add ctor for existing handle. 2023-06-03 00:05:31 -07:00
bunnei
e9f35d3260 android: EmulationFragment: Always reset overlay.
- Ensures correct placement until we have better overlay configuration.
2023-06-03 00:05:31 -07:00
Billy Laws
b4a12b889e Avoid using VectorExtractDynamic for subgroup mask on Adreno GPUs
This crashes their shader compiler for some reason.
2023-06-03 00:05:31 -07:00
Billy Laws
158a1896ec Implement scaled vertex buffer format emulation
These formats are unsupported by mobile GPUs so they need to be emulated in shaders instead.
2023-06-03 00:05:31 -07:00
Billy Laws
206f1304d6 Disable push descriptors on adreno drivers
Regular descriptors are around 1.5x faster to update.
2023-06-03 00:05:31 -07:00
Billy Laws
26bdecbf45 Disable VK_EXT_extended_dynamic_state on mali 2023-06-03 00:05:31 -07:00
Billy Laws
a3c261d940 Disable multithreaded pipeline compilation on Qualcomm drivers
This causes crashes during compilation on several 6xx and 5xx driver versions.
2023-06-03 00:05:31 -07:00
Narr the Reg
f1bb2f3685 android: Add motion sensor 2023-06-03 00:05:30 -07:00
Narr the Reg
92fb7cc4e4 android: Hook jni input properly 2023-06-03 00:05:30 -07:00
Narr the Reg
5b80dee181 android: cleanup touch update loop 2023-06-03 00:05:30 -07:00
Narr the Reg
3be891ea6f android: Clean joystick overlay 2023-06-03 00:05:30 -07:00
Narr the Reg
639a1f885c android: Clean dpad overlay 2023-06-03 00:05:30 -07:00
Narr the Reg
1ab269775d android: Clean button overlay 2023-06-03 00:05:30 -07:00
Narr the Reg
43e43021a3 android: Add all buttons to screen controller 2023-06-03 00:05:30 -07:00
Narr the Reg
58531ecf4f android: Apply clang format 2023-06-03 00:05:30 -07:00
bunnei
0e52d11ede android: frontend: Implement game grid view. (#9) 2023-06-03 00:05:30 -07:00
german77
5ed8d46340 android: Replace notification icon with yuzu 2023-06-03 00:05:30 -07:00
bunnei
7a89c2fe3a android: strings: Refresh key dumping URL. 2023-06-03 00:05:29 -07:00
bunnei
ddf10cdb18 android: frontend: Modify ROM load messaging for invalid keys. 2023-06-03 00:05:29 -07:00
bunnei
93cf8c3090 android: frontend: Integrate key installation for SAF. 2023-06-03 00:05:29 -07:00
bunnei
63a98e3e1c android: jni: Add function to reload keys. 2023-06-03 00:05:29 -07:00
bunnei
93bad47edb core: crypto: key_manager: Add methods to reload & validate keys. 2023-06-03 00:05:29 -07:00
bunnei
f33776af67 android: EmulationActivity: Temporarily disable running notification. 2023-06-03 00:05:29 -07:00
bunnei
ef605f7d8f android: Implement SAF support & migrate to SDK 31. (#4) 2023-06-03 00:05:29 -07:00
bunnei
39ab81a098 android: Harden emulation shutdown when loader fails. 2023-06-03 00:05:29 -07:00
bunnei
e12e1efa40 android: SettingsFragmentPresenter: Fix default renderer backend. 2023-06-03 00:05:29 -07:00
bunnei
d6a41b3290 android: jni: native: Add lock around HaltEmulation, tighten run loop. 2023-06-03 00:05:29 -07:00
bunnei
d553fd4c3a android: jni: native: Refactor locking for is_running. 2023-06-03 00:05:28 -07:00
bunnei
104ff475d2 android: jni: native: Remove unnecessary atomic for is_running. 2023-06-03 00:05:28 -07:00
bunnei
9ba67eab4f android: jni: native: Tighten up emulation start/stop signaling. 2023-06-03 00:05:28 -07:00
bunnei
1e94d16dad android: jni: native: Consolidate emulation state into EmulationSession singleton.
- Fixes state management issues across multiple boots.
- Fixes crashes related to unsafe access of perf stats.
2023-06-03 00:05:28 -07:00
bunnei
6cc21a56d9 android: Frontend: Fix rendering aspect ratio & add a setting for it. 2023-06-03 00:05:28 -07:00
bunnei
4f903d8d35 android: Integrate settings frontend with yuzu & remove unused code. 2023-06-03 00:05:28 -07:00
Liam
f7a3f1ddf4 externals: add adrenotools for bcenabler 2023-06-03 00:05:28 -07:00
Liam
7cdeaa90af device_memory: Use smaller virtual reservation size for compatibility with 39-bit paging 2023-06-03 00:05:28 -07:00
bunnei
2972a3ccc7 video_core: vulkan_device: Device initialization for Adreno. 2023-06-03 00:05:28 -07:00
bunnei
91350524c2 video_core: vk_pipeline_cache: Disable support_descriptor_aliasing on Android. 2023-06-03 00:05:28 -07:00
bunnei
6ed62a9f10 video_core: vk_swapchain: Fix image format for Android. 2023-06-03 00:05:28 -07:00
bunnei
5e198d1421 android: Minimize frontend & convert to yuzu. 2023-06-03 00:05:27 -07:00
bunnei
18527a8c42 video_core: vk_blit_screen: Rotate viewport for Android landscape. 2023-06-03 00:05:27 -07:00
bunnei
cdbab60bbb common: error: Fix for Android. 2023-06-03 00:05:27 -07:00
bunnei
f8b87e6fab common: fs: Implement for Android. 2023-06-03 00:05:27 -07:00
bunnei
99296a1510 common: logging: Implement Android logcat backend. 2023-06-03 00:05:26 -07:00
bunnei
afdee9abea common: host_memory: Implement for Android. 2023-06-03 00:05:26 -07:00
bunnei
e6d5dbb58e android: Minimal JNI for yuzu. 2023-06-03 00:05:26 -07:00
bunnei
bb2cbbfba3 android: Add Citra frontend. 2023-06-03 00:05:26 -07:00
bunnei
851b1008a8 cmake: Integrate bundled FFmpeg for Android. 2023-06-03 00:05:26 -07:00
ameerj
1fc47361a1 texture_cache: Fix incorrect logic for AccelerateDMA 2023-06-02 18:07:52 -04:00
kkoniuszy
584e8b5c52 host_memory: merge adjacent placeholder mappings on Linux
Track the private anonymous placeholder mappings created by Unmap() and
wherever possible, replace existing placeholders with larger ones
instead of creating many small ones.

This helps with the buildup of mappings in /proc/YUZU_PID/maps after a
longer gaming session, improving stability without having to increase
vm.max_map_count to a ridiculous value. The amount of placeholder
mappings will no longer outgrow the amount of actual memfd mappings in
cases of high memory fragmentation.
2023-06-01 22:57:27 +02:00
liamwhite
d89b98d8e8
Merge pull request #10091 from Kelebek1/bc_bugggggg
Fix buffer overlap checking skipping a page for stream score right expand
2023-06-01 09:06:07 -04:00
liamwhite
00b6bef65a
Merge pull request #10530 from Kelebek1/syncpt_oob
Fix incorrect syncpt id bounds check and potential out of bounds lookup
2023-06-01 09:05:42 -04:00
liamwhite
988f486061
Merge pull request #10474 from GPUCode/you-left-me-waiting
Remove timeline semaphore wait
2023-06-01 09:05:30 -04:00
liamwhite
5ab5987e74
Merge pull request #10352 from grimkor/add-context-menu-status-bar-settings
add context menu for status bar settings
2023-06-01 09:05:23 -04:00
liamwhite
1a4f3b37f1
Merge pull request #10482 from german77/gamelist
yuzu: Disable game list while game is running
2023-06-01 09:05:18 -04:00
Kelebek1
6839341f17 Fix incorrect id check and potential out of bounds lookup 2023-05-31 19:10:00 +01:00
Kelebek1
661375a222 Skip BufferCache tickframe with no channel state set 2023-05-30 21:57:13 +01:00
12101111
f78f82e08d
input_common: rename PAGE_SIZE to avoid conflict
See also: https://github.com/yuzu-emu/yuzu/issues/8779
2023-05-30 16:59:06 +08:00
german77
e5be1835ab yuzu: Disable game list while game is running 2023-05-29 10:00:34 -06:00
Morph
9950a388d2 externals: Update to fmt 10 and add format_as formatter for BitField
Implicit conversions are now disallowed in fmt 10. Use format_as to convert to the underlying type.
2023-05-28 15:05:55 -04:00
liamwhite
381caf4c00
Merge pull request #10483 from ameerj/gl-cpu-astc
gl_texture_cache: Fix ASTC CPU decoding with compression disabled
2023-05-28 13:18:31 -04:00
liamwhite
379d4b5e6a
Merge pull request #10280 from danilaml/cmake-bin-dir
Use TARGET_FILE_DIR generator expression
2023-05-28 13:18:06 -04:00
liamwhite
bf3f450211
Merge pull request #10283 from danilaml/support-interlaced-videos
Add support for deinterlaced video playback
2023-05-28 13:17:58 -04:00
liamwhite
93c17ee4da
Merge pull request #10463 from liamwhite/this-is-why-we-need-g
vfs_concat: fix time complexity of read
2023-05-28 13:17:42 -04:00
liamwhite
18595738fd
Merge pull request #10464 from liamwhite/clear-cache
qt: add menu item to remove cache storage
2023-05-28 13:17:33 -04:00
liamwhite
e994388b43
Merge pull request #10469 from Kelebek1/bc_state
Move buffer bindings to per-channel state
2023-05-28 13:17:26 -04:00
ameerj
ea2e155b0b gl_texture_cache: Fix ASTC CPU decoding with compression disabled
gl_format was incorrectly being overwritten when compression was disabled
2023-05-28 13:14:51 -04:00
ameerj
cb0a410907 gl_staging_buffers: Optimization to reduce fence waiting 2023-05-28 00:38:47 -04:00
ameerj
642c14f0c7 OpenGL: Make use of persistent buffer maps in buffer cache downloads
Persistent buffer maps were already used by the texture cache, this extends their usage for the buffer cache.

In my testing, using the memory maps for uploads was slower than the existing "ImmediateUpload" path, so the memory map usage is limited to downloads for the time being.
2023-05-28 00:38:46 -04:00
GPUCode
4a292efbff renderer_vulkan: Remove timeline semaphore wait 2023-05-28 02:39:44 +03:00
Kelebek1
9c2b211f12 Audren wait as suggested by ByLaws 2023-05-27 17:38:07 +01:00
Kelebek1
b0bea13ed8 Move buffer bindings to per-channel state 2023-05-27 17:04:18 +01:00
Liam
fcd48eb239 qt: add menu item to remove cache storage 2023-05-26 23:29:44 -04:00
Matías Locatti
d6db422098
Merge pull request #10414 from liamwhite/anv-push-descriptor
vulkan_device: Enable VK_KHR_push_descriptor on newer ANV
2023-05-26 17:36:37 -03:00
Matías Locatti
919b54848b
Merge pull request #10418 from liamwhite/blink-and-youll-miss-it
texture_cache: process aliases and overlaps in the correct order
2023-05-26 17:36:09 -03:00
Liam
0596a4afb1 vfs_concat: fix time complexity of read 2023-05-26 16:07:38 -04:00
Kelebek1
7ce181edcf Fix buffer overlap checking skipping a page for stream score right expand 2023-05-26 10:35:46 +01:00
Liam
13d25063a1 shader_recompiler: fix copy-paste error 2023-05-26 00:36:12 -04:00
bunnei
83b502c08c
Merge pull request #10221 from Kelebek1/partial_dsp_revert
Add a 5ms tiemout to the DSP processing wait
2023-05-25 21:34:50 -07:00
bunnei
ffa1fba7d6
Merge pull request #10396 from german77/amiibo_write
input_common: Implement amiibo writing
2023-05-25 14:07:16 -07:00
liamwhite
a596c6e438
Merge pull request #10454 from 521337/fix-u-option
Don't exit when using "-u" option in yuzu-cmd
2023-05-25 14:12:51 -04:00
Fernando S
3c3830953a
Merge pull request #10452 from liamwhite/ibgc
video_core: don't garbage collect during configuration
2023-05-25 20:09:08 +02:00
Ariel Cabello
7d5df4f0ba Don't exit when using "-u" option in yuzu-cmd 2023-05-25 20:07:52 +02:00
Liam
904dc1a567 video_core: don't garbage collect during configuration 2023-05-25 12:03:12 -04:00
Ariel Cabello
d33bdc97d0 Add short "-u" option for yuzu_cmd.
The -u short option was documented but not implemented in yuzu_cmd.
The same long option --user worked before.
2023-05-25 16:05:22 +02:00
bunnei
e264ab4ad0
Merge pull request #10415 from german77/amiibo-no-key
service: nfc: Remove encryption key requirement
2023-05-24 22:14:55 -07:00
bunnei
73a0ea0738
Merge pull request #10435 from FernandoS27/gotta-clean-mess-ups
Texture cache: revert wrong acceleration assumption
2023-05-24 21:00:53 -07:00
Fernando Sahmkow
be3a7f4096 Texture cache: revert wrong acceleration assumption 2023-05-24 10:52:02 +02:00
Fernando Sahmkow
01c4568786 Texture Cache Util: Fix block depth adjustment on slices. 2023-05-24 10:06:58 +02:00
Fernando Sahmkow
72c1ee1bf9 texture_cache: process aliases and overlaps in the correct order 2023-05-24 09:53:42 +02:00
Fernando S
72a14a6817
Merge pull request #10422 from liamwhite/gc
video_core: tune garbage collection aggressiveness
2023-05-24 03:58:49 +02:00
Fernando S
4ee4fdf78c
Merge pull request #10417 from liamwhite/check-state
k_memory_block_manager: remove auditing calls
2023-05-24 03:56:58 +02:00
Fernando S
76f6388969
Merge pull request #10398 from liamwhite/bcn
video_core: add ASTC recompression
2023-05-24 03:55:45 +02:00
grimkor
b3ebfd2481 add context menu for filter and anti-aliasing status buttons 2023-05-24 00:21:04 +00:00
Liam
3b1172c10f video_core: tune garbage collection aggressiveness 2023-05-23 12:55:14 -04:00
Liam
415c78b87c textures: add BC1 and BC3 compressors and recompression setting 2023-05-23 12:54:40 -04:00
liamwhite
a5d4c3e5ad
Merge pull request #10388 from GPUCode/fence-wait
vk_master_semaphore: Move fence wait on separate thread
2023-05-23 09:42:56 -04:00
liamwhite
58be9b12f4
Merge pull request #10402 from liamwhite/uh
renderer_vulkan: barrier attachment feedback loops
2023-05-23 09:42:49 -04:00
liamwhite
09ed5ec665
Merge pull request #10411 from scorpion81/gc-steamdeck-fix-attempt
Limit device access memory for integrated devices to 4 GB
2023-05-23 09:42:39 -04:00
Liam
5e3b3c6643 k_memory_block_manager: remove auditing calls 2023-05-23 09:15:16 -04:00
Narr the Reg
f63586c5f5 service: nfc: Remove encryption key requirement 2023-05-22 18:42:09 -06:00
Liam
8bba9f7dea vulkan_device: Enable VK_KHR_push_descriptor on newer ANV 2023-05-22 19:53:20 -04:00
Liam
8758932031 renderer_vulkan: barrier attachment feedback loops 2023-05-22 18:10:16 -04:00
scorpion81
f8e7b44d28
Limit the device access memory to 4 GB
Hardly limiting the device access memory to 4 GB for integrated vulkan devices here. This works for the Steam Deck in order not to go above 4 GB VRAM usage any more (above this value the likelihood to crash when the RAM exceeds 12 GB as well raises).

But there will be perhaps a detection mechanism necessary for detecting the real memory limit for integrated vulkan devices. Those likely might have small limits anyway, but what about integrated GPUs on machines with > 16 GB RAM, aka larger amounts ?
2023-05-22 16:48:55 +02:00
Narr the Reg
fdb2002f77 input_common: Implement amiibo writting 2023-05-21 21:09:20 -06:00
Danila Malyutin
7701a00a02 Add support for deinterlaced videos playback
This is a follow up to #10254 to improve the playback of cut scenes in Layton's Mystery Journey.
It uses ffmpeg's yadif filter for deinterlacing.
2023-05-22 01:43:44 +04:00
GPUCode
4e491ab59b vk_master_semaphore: Move fence wait on separate thread 2023-05-20 19:23:53 +03:00
german77
dbcdb3523b input_common: Map motion with relative values not absolute ones 2023-05-19 21:19:29 -06:00
bunnei
1e398e6c36
Merge pull request #10344 from german77/pro-amiibo
input_common: Fix pro controller amiibo support
2023-05-18 18:10:38 -07:00
Liam
de7c92d7c4 renderer_vulkan: remove wrong constexpr 2023-05-18 18:01:01 -04:00
Kelebek1
d75bcdd077 Smooth out the DSP callback by adding a 5ms wait time limit 2023-05-18 13:03:32 +01:00
lat9nq
c1a8a508bc vulkan_device: Disable VK_KHR_push_descriptor on ANV
Mesa commit ff91c5ca42bc80aa411cb3fd8f550aa6fdd16bdc breaks
VK_KHR_push_descriptor usage on ANV drivers 22.3.0, so disable it
and allow games to boot.
2023-05-17 22:19:57 -04:00
bunnei
9d4a2de72b
Merge pull request #10262 from liamwhite/depth-clamp
vulkan_common: disable depth clamp dynamic state for older radv
2023-05-17 12:19:03 -07:00
Narr the Reg
5693434b8a input_common: Fix pro controller amiibo support 2023-05-16 18:37:22 -06:00
liamwhite
47c5c37bed
Merge pull request #10217 from Kelebek1/clear_value
Use the rendertarget format of the correct RT rather than the first valid
2023-05-16 10:06:30 -04:00
liamwhite
a540d248f3
Merge pull request #10107 from grimkor/allow-fully-customised-hotkeys
Allow fully customised controller hotkeys
2023-05-16 10:06:15 -04:00
liamwhite
bbb6b58aa4
Merge pull request #10181 from lat9nq/intel-compute-toggle
configure_graphics: Add option to enable compute pipelines for Intel proprietary
2023-05-15 12:05:24 -04:00
liamwhite
736a31e4ff
Merge pull request #10234 from Kelebek1/clouds_depth
Fix Tears of the Kingdom flickering clouds and depths geometry.
2023-05-15 12:03:31 -04:00
liamwhite
6060685609
Merge pull request #10249 from FernandoS27/sorry-i-am-late
Buffer Cache: Clear sync code.
2023-05-15 12:03:25 -04:00
liamwhite
5b85925469
Merge pull request #10254 from danilaml/fix-h264-decode
Fix missing pic_order_present_flag in h264 header
2023-05-15 12:03:14 -04:00
liamwhite
033aa264cf
Merge pull request #10265 from german77/amiibo-lag
input_common: Make amiibo scanning less demanding
2023-05-15 12:03:08 -04:00
liamwhite
9087fe10e9
Merge pull request #10294 from german77/vibration_span
service: hid: Use span instead of vector reference
2023-05-15 12:03:00 -04:00
german77
6e54615b16 service: hid: Use span instead of vector reference 2023-05-14 18:07:04 -06:00
Fernando Sahmkow
c4bfbc6d25 Buffer Cache: Clear sync code. 2023-05-15 01:50:21 +02:00
liamwhite
e9069dfe76
Merge pull request #10288 from liamwhite/vram-limits
vulkan_device: reserve extra memory to prevent swaps
2023-05-14 17:02:15 -04:00
Liam
2be751100b vulkan_device: reserve extra memory to prevent swaps 2023-05-14 16:49:59 -04:00
german77
ac531aa15f input_common: Make amiibo scanning less demanding 2023-05-14 09:04:37 -06:00
Liam
122435e080 vulkan_common: fix incompatible property flags 2023-05-14 01:13:11 -04:00
Danila Malyutin
c9c5d140b8 Use TARGET_FILE_DIR generator expression
Use $<TARGET_FILE_DIR:...> where appropriate instead of trying to guess where the binary will end up.
2023-05-13 23:58:17 +04:00
Liam
856838f7ce vulkan_common: disable depth clamp dynamic state for older radv 2023-05-13 00:37:17 -04:00
Fernando S
9c739f1506
Merge pull request #10244 from liamwhite/lower-upper
time: implement ContinuousAdjustmentTimePoint
2023-05-13 03:51:05 +02:00
Fernando S
075d73f076
Merge pull request #10243 from Kelebek1/red_dot
Correctly track render target index in the framebuffer for image aspects
2023-05-13 03:50:31 +02:00
bunnei
021e503cc8
Merge pull request #10237 from liamwhite/cache-storage
fs: stub cache storage
2023-05-12 16:42:17 -07:00
Danila Malyutin
9367769fe7 Fix missing pic_order_present_flag in h264 header
Fixes #9635
2023-05-12 22:30:59 +04:00
Liam
a22c5a3880 time: implement ContinuousAdjustmentTimePoint 2023-05-11 21:05:27 -04:00
Kelebek1
cd0ded7771 Correctly track RT indexes for image aspect lookup during clears 2023-05-12 01:40:21 +01:00
Liam
351079a4ba fs: adjust future save path 2023-05-11 17:30:30 -04:00
Liam
62bcb99ba8 am: stub CreateCacheStorage 2023-05-11 17:26:02 -04:00
Liam
13e4ceb990 fs: stub cache storage and fix params alignment 2023-05-11 17:23:28 -04:00
Liam
bb94beed15 nvnflinger: fix Parcel serialization 2023-05-11 17:09:19 -04:00
Liam
6e10a0c130 nvnflinger: fix producer slot fence init 2023-05-11 17:08:14 -04:00
Kelebek1
e42b4a16b6 Fix Tears of the Kingdom flickering clouds and depths. 2023-05-11 19:25:24 +01:00
liamwhite
182221b9ff
Merge pull request #10132 from Kelebek1/fermi_blit2
Allow Fermi blit accelerate to work without images in cache
2023-05-11 10:45:59 -04:00
liamwhite
2643ea80df
Merge pull request #10216 from Kelebek1/buffer_cache_region_checks
Swap order of checking/setting region modifications in the buffer_cache
2023-05-11 10:45:47 -04:00
Kelebek1
bf08bc3c0f Allow Fermi blit accelerate to add src/dst to the cache if they don't exist already. Use ScratchBuffers in the software blit path. 2023-05-11 06:42:38 +01:00
grimkor
ceb65c259a Allow fully customisable controller hotkeys 2023-05-10 19:28:11 +01:00
Liam
67fd1df762 renderer_vulkan: separate guest and host compute descriptor queues 2023-05-10 13:46:48 -04:00
liamwhite
b7f60e9123
Merge pull request #10207 from german77/amiibo_cheater
service: nfp: Allow to load with a different amiibo id
2023-05-10 10:25:48 -04:00
Narr the Reg
3ec027400e
Merge pull request #10119 from marius851000/improved_non_hd_feeback
Attempt at improving HD Rumble emulation
2023-05-09 22:59:32 -06:00
Narr the Reg
42e1db4b0e service: nfc: Seed all random values 2023-05-09 17:54:07 -06:00
german77
1968cc7b10 service: nfp: Allow to load with a different amiibo id 2023-05-09 17:51:59 -06:00
Kelebek1
a386003b64 Use the rendertarget format of the correct RT rather than the first valid 2023-05-09 22:13:15 +01:00
Kelebek1
b3691fc33c Swap order of checking/setting region modifications in the buffer_cache 2023-05-09 20:21:08 +01:00
liamwhite
7944f271dc
Merge pull request #10183 from liamwhite/mods
vfs_vector: avoid n^2 lookup in layeredfs building
2023-05-09 09:47:36 -04:00
liamwhite
5890b96ce5
Merge pull request #10203 from german77/calibration
core: hid: Allow to calibrate gyro sensor
2023-05-09 09:47:29 -04:00
liamwhite
1f14b58315
Merge pull request #10206 from FernandoS27/astc-3d
Texture Cache: Fix 3D ASTC textures
2023-05-09 09:47:22 -04:00
german77
cb1487d774 input_common: Fix nfc detection for joycons 2023-05-09 00:32:53 -06:00
Fernando Sahmkow
8a214e5530 Texture Cache: Fix ASTC textures 2023-05-09 02:42:10 +02:00
Jan Beich
a4362765a6 qt_common: consistently ifdef QPlatform after cbd79df233
src/yuzu/qt_common.cpp:45:33: error: member access into incomplete type 'QPlatformNativeInterface'
    wsi.display_connection = pni->nativeResourceForWindow("display", window);
                                ^
/usr/include/qt6/QtGui/qguiapplication.h:20:7: note: forward declaration of 'QPlatformNativeInterface'
class QPlatformNativeInterface;
      ^
src/yuzu/qt_common.cpp:47:42: error: member access into incomplete type 'QPlatformNativeInterface'
        wsi.render_surface = window ? pni->nativeResourceForWindow("surface", window) : nullptr;
                                         ^
/usr/include/qt6/QtGui/qguiapplication.h:20:7: note: forward declaration of 'QPlatformNativeInterface'
class QPlatformNativeInterface;
      ^
2023-05-08 20:47:16 +00:00
Narr the Reg
e1838f51a3 yuzu: Make 3d cube with joycon shape 2023-05-08 12:06:39 -06:00
Narr the Reg
97bd6d6418 core: hid: Allow to calibrate gyro sensor 2023-05-08 12:06:38 -06:00
lat9nq
40f3e2fbf1 configure_graphics_advanced: Hide input compute toggle a little later
SetColoredTristate causes the setting to become visible as it calls
`show()` on it.
2023-05-08 12:32:56 -04:00
bunnei
b70a205a96
Merge pull request #10075 from Kelebek1/silence_nifm_spam
Silence network spam
2023-05-07 17:45:32 -07:00
Liam
bdb7c11d8e bootmanager: remove stop_token header 2023-05-07 19:20:09 -04:00
liamwhite
8f605b542c
Merge pull request #10195 from german77/mutex
core: hid: Update motion on a better place
2023-05-07 19:06:10 -04:00
Liam
d100de27ee vfs_layered: avoid n^2 lookup in layeredfs building 2023-05-07 19:03:41 -04:00
german77
cf023aa8ec core: hid: Update motion on a better place 2023-05-07 17:01:57 -06:00
Fernando Sahmkow
8014dd8259 Texture cache: Only force flush the dma downloads 2023-05-07 23:46:12 +02:00
Fernando Sahmkow
2df19ef0fd Buffer Cache: disable reactive flushing in it. 2023-05-07 23:46:12 +02:00
Fernando Sahmkow
016c6feb49 Texture cache: reverse inmediate flush changes 2023-05-07 23:46:12 +02:00
Fernando Sahmkow
36c302fa32 Buffer cache: always use async buffer downloads and fix regression. 2023-05-07 23:46:12 +02:00
Fernando Sahmkow
6f90dff293 Address feedback, add CR notice, etc 2023-05-07 23:46:12 +02:00
Fernando Sahmkow
ab0c0a469c Query cache: stop updating pages as it's not affected by cpu writes 2023-05-07 23:46:12 +02:00
Fernando Sahmkow
92da86290c Settings: add option to enable / disable reactive flushing 2023-05-07 23:46:12 +02:00
Fernando Sahmkow
0f4f18265f Texture cache: sync the first flush. 2023-05-07 23:46:12 +02:00
Fernando Sahmkow
c6cac2ffaa GPU: Add Reactive flushing 2023-05-07 23:46:12 +02:00
Liam
5792a72c29 vfs_vector: avoid n^2 lookup in layeredfs building 2023-05-07 16:50:35 -04:00
bunnei
e58090c9c7
Merge pull request #10097 from german77/nfp_full
service: nfc: Merge device interfaces and create the device manager
2023-05-07 12:18:09 -07:00
liamwhite
0c5bdc7241
Merge pull request #10081 from Kelebek1/copy_overlap_tick
Sort overlap_ids by modification tick before copy
2023-05-07 14:09:10 -04:00
liamwhite
cb49c3b64c
Merge pull request #10172 from Kelebek1/debug_validation_names
Log object names with debug renderer, add a GPU address to ImageViews
2023-05-07 14:09:03 -04:00
QGJ
4366a21eae yuzu/applets/qt_profile_select: connect double-click to accept()
In the profile selection window:

Allow the user to start the game by double-clicking a profile to avoid having to additionally click the OK button. This avoids an unnecessary "step" to the start of the game...
2023-05-07 18:05:42 +02:00
Kelebek1
6fed48b3a4 Fix address space allocator slow path to avoid OOB 2023-05-07 15:11:16 +01:00
bunnei
f36b5dfd18
Merge pull request #10180 from german77/debug
input_common: Revert debugging changes
2023-05-06 22:26:53 -07:00
german77
91695a453b input_common: Revert debugging changes 2023-05-06 23:06:44 -06:00
lat9nq
55c77dd25b yuzu-qt/config: Add option to disable compute on Intel
This option is only visible if an Intel GPU using the proprietary
driver is found during Vulkan device enumeration.

configure_graphics: More directly get driver id

Vulkan::Device does quite a bit more than we need just to see the
driver ID here.
2023-05-07 01:06:22 -04:00
lat9nq
6ed6e6e18e vk_pipeline_cache: Use setting to disable intel compute 2023-05-07 01:06:22 -04:00
lat9nq
725aacb4bc settings: Add enable compute pipelines
For the Intel proprietary driver's deficiencies.

settings: Restore compute option global state
2023-05-07 01:06:20 -04:00
bunnei
3547248ec2
Merge pull request #10125 from lat9nq/vsync-select
configuration: Expose separate swap present modes
2023-05-06 21:55:39 -07:00
bunnei
82188b2f79
Merge pull request #10174 from german77/motriod
input_common: Add experimental motion to button
2023-05-06 21:40:20 -07:00
liamwhite
27ff00acb1
Merge pull request #10162 from lat9nq/sdl-remove-old
yuzu-sdl,audio_core: Remove antiquated warning ignore
2023-05-06 23:10:09 -04:00
liamwhite
9c9b4616c3
Merge pull request #10167 from german77/motion_preview
yuzu: Add motion preview to controller input
2023-05-06 23:09:55 -04:00
Roni Kirla
a13fd5f7cc Fix read access violation 2023-05-07 00:13:33 +03:00
german77
9b771bcb8f input_common: Add experimental motion to button 2023-05-05 22:49:56 -06:00
Narr the Reg
94151097b9 service: nfc: Merge device interfaces and create the device manager 2023-05-05 22:02:59 -06:00
Kelebek1
ca6bf06ef7 Log object names with debug renderer, add a GPU address to ImageViews 2023-05-06 04:48:32 +01:00
Narr the Reg
f017335fef input_common: Add property to invert an axis button 2023-05-05 17:18:35 -06:00
Narr the Reg
46e835f2d6 yuzu: Add motion preview to controller input 2023-05-05 13:53:38 -06:00
bunnei
bb2e407772
Merge pull request #10159 from german77/home_screenshot
core: hid: Fix state of capture and home buttons
2023-05-05 12:02:15 -07:00
marius david
0a6bd8b236 Improve emulation of HD Rumble 2023-05-05 19:30:40 +02:00
lat9nq
740c349820 yuzu-sdl,audio_core: Remove antiquated warning ignore
Issue was fixed a long time ago, both by SDL2 and in yuzu by including
SDL2 as a system library.
2023-05-05 03:48:28 -04:00
german77
8df3aed2f1 core: hid: Fix state of capture and home buttons 2023-05-04 22:36:59 -06:00
liamwhite
16939b1a6e
Merge pull request #10128 from Kelebek1/audren_terminate
Wait for the terminate event before destroying a system instance
2023-05-04 14:44:09 -04:00
liamwhite
60d54d911e
Merge pull request #10145 from Kelebek1/code_size
Fix shader code resize to use word size rather than byte size
2023-05-04 14:44:02 -04:00
Fernando S
2506594c50
Merge pull request #10153 from FernandoS27/a-quickie-fixie
Memory manager: Fix possible softlock
2023-05-04 03:56:53 +02:00
Fernando S
7d5683c63c
Merge pull request #10154 from liamwhite/optimistic
settings: remove pessimistic flushing
2023-05-04 01:55:51 +02:00
bunnei
055ee84024
Merge pull request #10142 from FernandoS27/missing-astc
GPU: implement missing ASTC
2023-05-03 16:49:27 -07:00
Liam
ae59ffc56c settings: remove pessimistic flushing 2023-05-03 18:52:42 -04:00
Fernando Sahmkow
1c13c74295 Memory manager: Fix possible softlock 2023-05-04 00:15:21 +02:00
lat9nq
a71498d163 qt_common: Remove yuzu prefix 2023-05-03 18:11:53 -04:00
bunnei
a661c547d8
Merge pull request #10088 from FernandoS27/100-gelato-flavor-test-builds-later
Y.F.C Implement Asynchronous Fence manager and Rework Query async downloads
2023-05-03 15:10:22 -07:00
bunnei
737e1ca101
Merge pull request #10117 from liamwhite/sync-register
kernel: match calls to Register and Unregister
2023-05-03 09:07:19 -07:00
Fernando Sahmkow
87a9be8dec GPU: implement missing ASTC 2023-05-03 11:33:28 -04:00
liamwhite
ffeb5cdd8d
Merge pull request #10151 from GPUCode/no-softlocks-please
Fix softlocks when disabling async present
2023-05-03 10:54:24 -04:00
Morph
8dd3baa562
Merge pull request #10144 from liamwhite/dont-turbo
vulkan: disable turbo when debugging tool is attached
2023-05-03 10:53:03 -04:00
Morph
daf7936095
Merge pull request #10143 from liamwhite/fruit-company-moment
video_core: fix build on Apple Clang
2023-05-03 10:52:56 -04:00
Morph
627022bef9
Merge pull request #10124 from liamwhite/pebkac
settings: rename extended memory layout to unsafe, move from general to system
2023-05-03 10:52:45 -04:00
GPUCode
f3fcc15ad5 vk_present_manager: Fix softlocks when disabling async present 2023-05-03 07:50:10 +03:00
lat9nq
35e7f36a39 configure_graphics: No there isn't a hyphen in VSync
Most sources seem to suggest VSync and not V-Sync
2023-05-02 21:52:43 -04:00
lat9nq
d82cad3fb3 configure_input_player: Add missing include
Cleaning up includes in bootmanager and configure_graphics has exposed a
missing include here.
2023-05-02 21:52:43 -04:00
lat9nq
cd2981ee12 configure_graphics: Clean up includes [IWYU] 2023-05-02 21:52:43 -04:00
lat9nq
0c0f5b7ccc bootmanager: Clean up includes [IWYU]
bootmanager: Remove system-specific headers

IWYU can be too complete I suppose.
2023-05-02 21:52:43 -04:00
lat9nq
a546ecbb12 configure_graphics: Actively find present modes
When Vulkan devices are enumerated, this also determines the available
present modes for each device, maps them to a vector, and gives
those options to the user.
OpenGL options are limited to On/Off.

Required creating a VkSurfaceKHR during device enumeration, which
may or may not be desireable. For the sake of a less confusing UI.

Also fixes a bug where if a graphics device disappears on the host, we
don't try and select the non-existant devices.

configure_graphics: Remove vsync runtime lock for Vulkan

configure_graphics: Recommend Mailbox present mode

configure_graphics: Fix type-limits warning

configure_graphics: Clean up includes

configure_graphics: Add tooltip
2023-05-02 21:52:43 -04:00
lat9nq
952b271092 vk_swapchain: Use certain modes for unlocked
Uses mailbox, then immediate for unlocked framerate depending on
support for either. Also adds support for FIFO_RELAXED.

This function now assumes vsync_mode was originially configured to a value
that the driver supports.

vk_swapchain: ChooseSwapPresentMode determines updates

Simplifies swapchain a bit and allows us to change the present mode
during guest runtime.

vk_swapchain: Fix MSVC error

vk_swapchain: Enforce available present modes

Some frontends don't check the value of vsync_mode before comitting it.
Just as well, since a driver update or misconfiguration could problems
in the swap chain.

vk_swapchain: Silence warnings

Silences GCC warnings implicit-fallthrough and shadow, which apparently
are not enabled on clang.
2023-05-02 21:52:43 -04:00
lat9nq
a090a380be bootmanager: Remove inaccurate switch
Those vulkan settings do not correspond 1:1 to the swap intervals that
they set for OpenGL, so remove it.

bootmanager: Add missing include

I didn't add this log why did it break
2023-05-02 21:51:30 -04:00
lat9nq
cbd79df233 qt_common: Move window info function out of bootmanager
Function is useful outside of bootmanager, so put it in a common place.

qt_common: Add missing include

qt_common: Add some newlines

qt_common: Add trailing newline

qt_common: Add trainline newline
2023-05-02 21:51:30 -04:00
lat9nq
c6c11c1553 vulkan_surface: Pass only window info for surface creation
We don't need the whole EmuWindow when creating a surface,
and it creates onerous requirements outside of typical usage for
creating a surface elsewhere.
2023-05-02 21:51:30 -04:00
lat9nq
2528cf7c54 settings: Enable FIFO relaxed
Not entirely sure if we need this, but there's also no reason not to
support it.

settings: Give VSyncMode values
2023-05-02 21:51:30 -04:00
lat9nq
6b973c5986 configure_graphics: Fix another typo 2023-05-02 21:51:29 -04:00
lat9nq
40f062f749 telemetry_session: Make translate function static
Addresses review feedback

Co-authored-by: Lioncash <mathew1800@gmail.com>
2023-05-02 21:51:29 -04:00
lat9nq
29a56496bf bootmanager: Return value in impossible case
The setting is ranged, so this return statement is unreachable.
But GCC can't tell I guess.
2023-05-02 21:51:29 -04:00
lat9nq
41a103c0fc configure_graphics: Fix typo 2023-05-02 21:51:29 -04:00
lat9nq
66ed1c1872 default_ini: Update V-Sync description
default_ini: Update vsync text

default_ini: Add tooltip from configure_graphics
2023-05-02 21:51:29 -04:00
lat9nq
6f0929df82 configuration: Expose separate swap present modes
Previously, yuzu would try and guess which vsync mode to use given
different scenarios, but apparently we didn't always get it right. This
exposes the separate modes in a drop-down the user can select.

If a mode isn't available in Vulkan, it defaults to FIFO.
2023-05-02 21:51:29 -04:00
bunnei
8f43b05d6b
Merge pull request #9973 from GPUCode/async-present
Implement asynchronous presentation
2023-05-02 17:54:57 -07:00
Kelebek1
f902cc2a2b Fix code resize to use word size rather than byte size 2023-05-02 23:52:21 +01:00
liamwhite
451b1bba26
Merge pull request #10133 from lat9nq/clang-shadow-and-fallthrough
CMakeLists: Enable more checks on Clang
2023-05-02 18:18:46 -04:00
liamwhite
494cc992eb
Merge pull request #10130 from liamwhite/keys
qt: warn on inoperable keys
2023-05-02 18:17:24 -04:00
liamwhite
f603dc9763
Merge pull request #10123 from Kelebek1/sample_mask
Define SampleMask as an array
2023-05-02 18:17:15 -04:00
Liam
4df49631de vulkan: disable turbo when debugging tool is attached 2023-05-02 18:14:57 -04:00
Liam
e1c74cea10 video_core: fix build on Apple Clang 2023-05-02 18:05:30 -04:00
lat9nq
f7292c776b CMake: Enable type limits on Clang 2023-05-02 02:07:36 -04:00
lat9nq
2007d0e4a0 CMakeLists: Enable checks on Clang
Enables shadow-uncaptured-locals and implicit-fallthrough for Clang.
implicit-fallthrough is not enabled by default in -Wall or -Wextra, and
shadow-uncaptured-local doesn't seem to be enabled by default by
-Wshadow, even though GCC has both of these by their respective cases.
2023-05-02 01:57:22 -04:00