Commit graph

24135 commits

Author SHA1 Message Date
Briar fe51be43c1 android: Enhance FPS Overlay with more customizable options
- Now the fps follows theme color set in settings
- Added the ability to toggle stats on and off depending on user preference
- Now you are able to change the fps position and add a background behind it for easier reding

New added stats for the overlay are

FPS
FRAMETIME,
SPEED,
APP_RAM_USAGE,
SYSTEM_RAM_USAGE,
BATTERY_TEMPERATURE,
2025-04-13 05:36:30 +02:00
MrPurple666 e26a256a44 Fix Zephyron commits 2025-04-13 00:23:18 -03:00
Zephyron 777111dfb4 feat(video_core): Fix Linux compilation issues in Hybrid Memory Manager
- Added missing <thread> header for std::thread usage
- Added <fcntl.h> for O_CLOEXEC and O_NONBLOCK definitions
- Fixed struct initialization order in uffdio_copy to match declaration order

Signed-off-by: Zephyron <zephyron@citron-emu.org>
2025-04-12 23:42:39 -03:00
Zephyron 34693001aa Add Windows support to Hybrid Memory Manager
This commit adds Windows-specific implementation of the fault-managed memory
system, providing similar functionality to the existing Linux/Android implementation.

Key changes:
- Added Windows-specific memory management using VirtualAlloc/VirtualFree
- Implemented Windows vectored exception handler for page fault handling
- Added proper memory protection and page fault handling on Windows
- Updated memory snapshot functionality to work on Windows
- Added proper cleanup of Windows-specific resources
- Fixed type conversion issues in memory management code
- Added proper error handling for Windows memory operations
- Fixed VRAM Memory Layout Mode to allow up to 12Gb

The implementation uses Windows-specific APIs:
- VirtualAlloc/VirtualFree for memory management
- AddVectoredExceptionHandler for page fault handling
- VirtualProtect for memory protection management

This change maintains feature parity with the Linux/Android implementation
while using Windows-native APIs for better performance and reliability.

Signed-off-by: Zephyron <zephyron@citron-emu.org>
2025-04-12 23:42:24 -03:00
Zephyron 9615e910f9 feat(video_core): Implement HybridMemory for advanced Vulkan memory management
Adds a new cross-platform memory management system with enhanced capabilities:
- Fault-managed memory allocation for Linux/Android platforms
- Memory snapshot and differential snapshot support
- Predictive memory reuse tracking for optimized access patterns
- Vulkan compute buffer integration
- User-configurable settings for enabling features

The system integrates with the existing Vulkan renderer to provide more
efficient memory handling, especially for compute-intensive workloads.

Co-authored-by: boss.sfc <boss.sfc@citron-emu.org>
Co-committed-by: boss.sfc <boss.sfc@citron-emu.org>
Signed-off-by: Zephyron <zephyron@citron-emu.org>
2025-04-12 23:41:26 -03:00
Zephyron 0c5659a198 video_core: Enhance Vulkan shader compilation with async threading system
Implement a robust asynchronous shader compilation system inspired by commit
1fd5fefcb17fe7fe65faed1c991fb41db782ab0f. This enhancement provides:

- True multi-threaded shader compilation with atomic status tracking
- Persistent disk caching for faster shader loading
- Command queue system for background processing
- Integration with Citron's scheduler for better resource management
- Parallel shader loading to reduce startup times
- Improved error handling and recovery mechanisms

These changes significantly reduce shader compilation stuttering and improve
overall performance when using asynchronous shaders. The implementation
maintains compatibility with Citron's existing architecture while adding
more robust threading capabilities.

Co-authored-by: boss.sfc <boss.sfc@citron-emu.org>
Co-committed-by: boss.sfc <boss.sfc@citron-emu.org>
Signed-off-by: Zephyron <zephyron@citron-emu.org>
2025-04-12 23:39:24 -03:00
Zephyron b550c6e3cc feat(vulkan): implement enhanced texture and shader management
This commit adds improved Vulkan functionality to the Citron emulator:

- Add thread-safe texture management with automatic error recovery
- Implement shader caching with validation support
- Add robust error handling for Vulkan operations
- Implement platform-specific initialization for Windows, Linux, and Android

These enhancements improve stability when handling texture loading errors
and provide better recovery mechanisms for Vulkan failures.

Co-authored-by: boss.sfc <boss.sfc@citron-emu.org>
Co-committed-by: boss.sfc <boss.sfc@citron-emu.org>
Signed-off-by: Zephyron <zephyron@citron-emu.org>
2025-04-12 23:39:19 -03:00
Zephyron 991770b84f build: fix linux compilation
- Removes unnecessary \ from Copyright Line Causing Linux Builds To Fail

Signed-off-by: Zephyron <zephyron@citron-emu.org>
2025-04-12 23:37:27 -03:00
Zephyron c57a5fef92 WIP: Enhance shader compilation performance and control
This commit adds new settings and optimizations for shader compilation:

- Add new settings:
  - use_enhanced_shader_building: Enable enhanced shader compilation
  - shader_compilation_priority: Control shader compilation priority

- Improve shader compilation performance:
  - Optimize worker thread allocation based on CPU cores
  - Add smarter async shader compilation heuristics
  - Prioritize vertex and fragment shader compilation
  - Add performance tracking and logging

- Add performance monitoring:
  - Track shader compilation times
  - Log slow shader compilations
  - Monitor async shader compilation statistics

This is a work in progress commit. Further optimizations and refinements
will be needed based on testing and feedback.

Signed-off-by: Zephyron <zephyron@citron-emu.org>
2025-04-12 23:37:11 -03:00
JPikachu bc86307ad6 Service: Add AliasRegionExtraSize
Thanks to Briar for finding and testing the Service
Credit: Antique - [Sudachi] Dev (https://sudachi.emuplace.app/)
2025-04-12 22:54:32 -03:00
MrPurple666 be4bc3b477 WIP: DO-NOT-MERGE: NCE experiments: Better Pre-Fetch implementation
should make it more performatic as in use with new lru cache implmentation
2025-04-12 22:54:32 -03:00
MrPurple666 739e5c47ea WIP: DO-NOT-MERGE: NCE experiments: Better LRU cache implementation
It uses a better lru implementation, since initial as basic functions to LRU, use a modern system to it to make performance better
2025-04-12 22:54:32 -03:00
MrPurple666 ce1a1912ae RenderVulkan Experiments: DO-NOT-MERGE: Only recreate when necessary and NEAREST 2025-04-12 22:54:32 -03:00
MrPurple666 2a793d610d RenderVulkan Experiments: DO-NOT-MERGE: Introduce functionality to frame interpolation
The functionality acts much more like a real-time downscale since the FSR1 used by Yuzu is not compatible with a real interpolation and is just upscale and downscale.
2025-04-12 22:54:32 -03:00
Pavel Barabanov 38737f26e5 Optimize SpiriV output 2025-04-12 22:54:32 -03:00
Pavel Barabanov bd2f935c4d delete "enable" in setting.h 2025-04-12 22:54:32 -03:00
Pavel Barabanov be2e838f0d FRAME_SKIPPING and FRAME_INTERPOLATION only android and delete "enable" 2025-04-12 22:54:32 -03:00
Pavel Barabanov 70c2439d8c Add sync core speed 2025-04-12 22:54:32 -03:00
Pavel Barabanov d25bea5762 Android: add FRAME_SKIPPING and FRAME_INTERPOLATION 2025-04-12 22:54:32 -03:00
MrPurple666 f9f311c014 Revert "Merge branch 'pr-12'"
This reverts commit dfe104bbb96b52f47943462c296ecbcb046dffdf, reversing
changes made to 45683a4034.
2025-04-12 22:54:32 -03:00
JPikachu 61d4233228 Rename Yuzu logo to Eden 2025-04-13 01:15:36 +01:00
JPikachu e0795f2b40 Service: Add AliasRegionExtraSize
Thanks to Briar for finding and testing the Service
Credit: Antique - [Sudachi] Dev (https://sudachi.emuplace.app/)
2025-04-12 16:23:47 +01:00
JPikachu a6c9177ad1 Implement additions to nvdr services
Fixes log error: "[  41.472933] Debug <Critical> core/hle/service/nvdrv/devices/nvhost_ctrl_gpu.cpp:operator():81: Assertion Failed! Unimplemented ioctl=C0084713"

Credit: Antique - Sudachi dev, for the base Implementation and Citron for slight additions.
2025-04-11 17:48:09 -03:00
Zephyron 45683a4034 video_core/vulkan: Improve texture format conversion handling
Refactors and improves the texture format conversion system in the Vulkan
renderer:

- Adds proper sRGB to linear conversion for depth formats
- Improves shader accuracy for ABGR8 SRGB to D24S8 conversion
- Adds gamma correction and proper depth range clamping
- Moves GetSupportedFormat implementation to header
- Cleans up format conversion switch statement
- Removes redundant format conversion paths

The changes improve accuracy when converting between color and depth
formats, particularly for sRGB sources. The shader improvements ensure
proper gamma correction and depth range handling.

Technical changes:
- Improves sRGB to linear conversion in fragment shader
- Adds proper depth value clamping
- Consolidates format conversion logic
- Removes duplicate GetSupportedFormat implementation
2025-04-11 17:05:41 -03:00
Zephyron 3e835ac3aa video_core: Add new shader format conversion pipelines
Adds several new shader-based format conversion pipelines to support additional
texture formats and operations:

- RGBA8 to BGRA8 conversion
- YUV420/RGB conversions
- BC7 to RGBA8 decompression
- ASTC HDR to RGBA16F decompression
- RGBA16F to RGBA8 conversion
- Temporal dithering
- Dynamic resolution scaling

Updates the texture cache runtime to handle these new conversion paths and adds
helper functions to check format compatibility for dithering and scaling
operations.

The changes include:
- New shader files and CMake entries
- Additional conversion pipeline setup in BlitImageHelper
- Extended format conversion logic in TextureCacheRuntime
- New format compatibility check helpers
2025-04-11 17:05:30 -03:00
Zephyron 5cb3153f15 video_core: Add sRGB to D24S8 depth-stencil conversion support
Implements conversion from sRGB color formats to D24S8 depth-stencil format
in the Vulkan renderer. This change includes:

- New fragment shader convert_abgr8_srgb_to_d24s8.frag that handles proper
  sRGB to linear conversion before depth calculation
- Added shader to CMake build system
- Extended BlitImageHelper with new conversion pipeline and methods
- Updated texture cache to handle sRGB to D24S8 format conversion paths

The conversion properly handles sRGB color space by first converting to
linear space before calculating luminance values for the depth component,
while preserving alpha channel data for the stencil component.
2025-04-11 17:05:20 -03:00
MrPurple666 3d43fecece WIP: DO-NOT-MERGE: NCE experiments: Initial LRU 2025-04-11 17:05:06 -03:00
MrPurple666 27ceda2c6c WIP: DO-NOT-MERGE: NCE experiments: Fix build errors 2025-04-11 17:04:55 -03:00
MrPurple666 777b674edf WIP: DO-NOT-MERGE: NCE experiments: Some optimizations on pre-fetch and cache 2025-04-11 17:04:45 -03:00
MrPurple666 d36031849e WIP: DO-NOT-MERGE: NCE experiments: Ensure guest context reflects thread state during unlock 2025-04-11 17:04:34 -03:00
MrPurple666 d621707001 WIP: DO-NOT-MERGE: NCE experiments
botw boots but with poor performance
2025-04-11 17:04:24 -03:00
JPikachu 4957950b55 revert 789bbd7ab5
This needs to be put aside for now, but may be implemented again later
2025-04-10 03:45:51 +00:00
crueter 9278eac8f0 Fix controls config dialog
Signed-off-by: swurl <swurl@swurl.xyz>
2025-04-10 02:38:34 +02:00
crueter 9cef9f5dce Update fmt to allow for v11
Signed-off-by: swurl <swurl@swurl.xyz>
2025-04-10 01:11:22 +02:00
Briar 216ded6997 android: Improve network gateway handling 2025-04-10 00:40:07 +02:00
PabloMK7 5f0542c2bf Pre alpha watermark
* android: Add pre-alpha warning dialog and banner

* qt: android: Add pre-alpha warning banner
2025-04-10 00:18:18 +02:00
Briar 077592903e core: Add support for game settings overrides (#6)
* core: Add support for game settings overrides
---------

Co-authored-by: Gamer64 <76565986+Gamer64ytb@users.noreply.github.com>
Co-authored-by: zhang wei <zwdreams@gmail.com>
2025-04-09 23:44:33 +02:00
Briar 8ef4da686c Refactor Android Game Screen UI
* Port SearchFragment functionality to GameFragment @kleidis

Co-authored-by: Briar <205427297+icybriarr@users.noreply.github.com>

* Remove the bottom navigation bar and SearchFragment remaining code @ishan09811

* Add 2 new game view types `Grid & `List` to GameAdapter @kleidis

* Fix padding on header

* Change app name to uppercase

---------

Co-authored-by: Kleidis <167202775+kleidis@users.noreply.github.com>
Co-authored-by: Briar <205427297+icybriarr@users.noreply.github.com>
Co-authored-by: Ishan09811 <156402647+Ishan09811@users.noreply.github.com>
2025-04-09 00:01:32 +02:00
JPikachu 52eab40fc8 Implement LogicOP Workaround for Vulkan on AMD GPUs
This fixes black sewers in Paper Mario: TTYD
Credit: Antique - [Sudachi] Dev (https://sudachi.emuplace.app/)
2025-04-08 19:17:28 +02:00
Briar 6f45ab5344 Revert "Disabled MCO_USE_VMEM_ALLOCATOR because standard stack size seems to suffice"
This reverts commit ada5dcf01a.
2025-04-06 22:52:55 -03:00
Mr_Purple_666 90bda9fee5 Use u32 instead of int
fix windows build error
2025-04-04 03:40:50 +02:00
MrPurple666 2d2e9208d2 Unified torzu and sudachi friend.cpp + fix android build on dma_pusher 2025-04-04 03:40:49 +02:00
Pavel Barabanov 409946d1e6 Added the GetKeyCodeMapByPort service, thanks JPikachu for the tip. 2025-04-04 03:40:49 +02:00
Pavel Barabanov c09347ff5f Slightly changed the overlay design 2025-04-04 03:40:49 +02:00
pavelbarabanov 70c151fba0 Обновить src/android/app/src/main/java/org/yuzu/yuzu_emu/fragments/EmulationFragment.kt
- Add MEM overlay
- Add thermal overlay to show temperature in C/F with color indication
2025-04-04 03:40:49 +02:00
JPikachu 7c4fdaf528 Update freind, nifm and nim stubs
Credit: Antique - [Sudachi] Dev (https://sudachi.emuplace.app/)
2025-04-04 03:40:49 +02:00
Zephyron 0071e980b8 video_core: Enforce safe memory reads for compute dispatch
- Modify DmaPusher to use safe memory reads when handling compute
  operations at High GPU accuracy
- Prevent potential memory corruption issues that could lead to
  invalid dispatch parameters
- Previously, unsafe reads could result in corrupted launch_description
  data in KeplerCompute::ProcessLaunch, causing invalid vkCmdDispatch
  calls
- By enforcing safe reads specifically for compute operations, we
  maintain performance for other GPU tasks while ensuring compute
  dispatch stability

This change requires >= High GPU accuracy level to take effect.
2025-04-04 03:40:49 +02:00
EmulationEnjoyer d5bb26bf3e Implement HID function stub "SetGestureOutputRanges" (#105)
Add function stub for "SetGestureOutputRanges" in HID service

Fixes userspace panic when booting Donkey Kong Country Returns HD:

> Debug <Critical> core\hle\service\service.cpp:operator ():78: Assertion Failed!
Unknown / unimplemented function '92(<unknown>)': port='hid' cmd_buf={[0]=0x6, [1]=0x8000000C, [2]=0x1, [3]=0x0, [4]=0x4F434653, [5]=0x0, [6]=0x0, [7]=0x0, [8]=0x49434653}
> Service.AM <Info> core\hle\service\am\service\application_functions.cpp:SetTerminateResult:187: (STUBBED) called, result=0x1a80a (2010-0212)
> Debug.Emulated <Critical> core\hle\kernel\svc\svc_exception.cpp:Break:52: Userspace PANIC! info1=0x0000001086D02C4C, info2=0x0000000000000004
> Debug.Emulated <Critical> core\hle\kernel\svc\svc_exception.cpp:operator ():33: debug_buffer_err_code=1A80A
> Debug.Emulated <Critical> core\hle\kernel\svc\svc_exception.cpp:Break:102: Emulated program broke execution! reason=0x0000000000000000, info1=0x0000001086D02C4C, info2=0x0000000000000004

ref: 132077e18f

![](https://i.imgur.com/hbBnlYs.png)

Reviewed-on: http://vub63vv26q6v27xzv2dtcd25xumubshogm67yrpaz2rculqxs7jlfqad.onion/torzu-emu/torzu/pulls/105
Co-authored-by: EmulationEnjoyer <emulationenjoyer@noreply.localhost>
Co-committed-by: EmulationEnjoyer <emulationenjoyer@noreply.localhost>
2025-04-04 03:40:49 +02:00
EmulationEnjoyer 2c02c18c86 Update src/audio_core/common/feature_support.h
Updated AudioCore Revision from 11 -> 13
2025-04-04 03:40:49 +02:00
Zephyron 789bbd7ab5 kernel: Implement SystemResourceSize info type for VAMM initialization
Adds support for InfoType::SystemResourceSize (0x1C) which is required for
proper initialization of the Virtual Address Memory Manager (VAMM). This
implementation:

1. Adds SystemResourceSize to the InfoType enum in svc_types.h
2. Implements the GetInfo handler for SystemResourceSize in svc_info.cpp
3. Returns 512MB (0x20000000 bytes) as the system resource size
4. Adds debug logging for the SVC call

The 512MB value is chosen based on typical system resource allocations
needed for VAMM initialization on the Nintendo Switch.

This fixes crashes in games that rely on VAMM functionality, particularly
during nn::os::detail::VammManager::InitializeIfEnabled().
2025-04-04 03:40:49 +02:00
MrPurple666 c6f2a85142 Add the rest of the necessary code for ssl:s
Credit: Antique - (Sudachi) Dev [https://sudachi.emuplace.app/]

Signed-off-by: MrPurple666 <antoniosacramento666@gmail.com>
2025-04-04 03:40:49 +02:00
JPikachu 6581fc5b98 Update ssl stubs
Updated the ssl stubs to implement ssl:s for Firmware 19
This should make Xenoblade X: Definitive Edition bootable
Credit: Antique - (Sudachi) Dev [https://sudachi.emuplace.app/]
2025-04-04 03:40:48 +02:00
JPikachu 6abd4d2f2b Rewrote mm:u to follow switchbrew.org documentation and update them
Credit: Antique - [Sudachi Dev] (https://sudachi.emuplace.app/)
2025-04-04 03:40:48 +02:00
darktux ada5dcf01a Disabled MCO_USE_VMEM_ALLOCATOR because standard stack size seems to suffice 2025-04-04 03:40:48 +02:00
darktux 9f4ef30b55 Add SR_WScaleFactorXY/SR_WScaleFactorZ stubs for Prince of Persia (#5)
Pulled in and cleaned up from Sudachi

Reviewed-on: http://y2nlvhmmk5jnsvechppxnbyzmmv3vbl7dvzn6ltwcdbpgxixp3clkgqd.onion/darktux/torzu/pulls/5
Co-authored-by: darktux <darktux@y2nlvhmmk5jnsvechppxnbyzmmv3vbl7dvzn6ltwcdbpgxixp3clkgqd.onion>
Co-committed-by: darktux <darktux@y2nlvhmmk5jnsvechppxnbyzmmv3vbl7dvzn6ltwcdbpgxixp3clkgqd.onion>
2025-04-04 03:40:48 +02:00
darktux a1d4963fb8 Remove accidental use of standard format instead of libfmt format 2025-04-04 03:40:48 +02:00
darktux 2011cdd333 Added v18.0.0 stubs and updated tzdb_to_nx 2025-04-04 03:40:48 +02:00
darktux 492d3856e8 Vulkan validation error fix.
Different image usage flags between image creation and image view
creation.
2025-04-04 03:40:48 +02:00
darktux 5af02a5cea Save memory by using dyamic stack size in Fiber 2025-04-04 03:40:48 +02:00
darktux d8c2ab85eb Implemented a more correct version of ISfServiceMonitor::GetGroupInfo 2025-04-04 03:40:48 +02:00
darktux bc2fdfee13 Fixed minicoro.h formatting 2025-04-04 03:40:47 +02:00
darktux edff3d4adb Radeon gpu profiler detection support 2025-04-04 03:40:47 +02:00
darktux 4a71984803 clang-formated new fiber.cpp and minicoro.h 2025-04-04 03:40:47 +02:00
darktux 16f92e5b32 Implemented rewindless Fiber without Boost (using minicoro) 2025-04-04 03:40:47 +02:00
darktux 60643dd1b2 Solves warning about GuestMemory having internal linkage.
It is very hard to explain why this public interface class was defined
in an anonymous namespace inside a header file.
2025-04-04 03:40:47 +02:00
darktux 1c7bae50cc Fixed formatting in new stubs ported from Suyu 2025-04-04 03:40:47 +02:00
darktux cacef3d8e7 Ported some stubs from Suyu (2ba2db7795) 2025-04-04 03:40:47 +02:00
darktux 2032d035a3 Removed telemetry and anonymized SCM (git) strings 2025-04-04 03:40:47 +02:00
darktux 5056d87da3 Actually return 0 in IFriendService::GetReceivedFriendRequestCount 2025-04-04 03:40:47 +02:00
darktux 675d53ab71 Fixed minor issues from previous PR related to buffers and a typo in npns 2025-04-04 03:40:47 +02:00
darktux d82ee773da Implemented IFriendService::GetUserPresenceView stub to get QLaunch friends list running 2025-04-04 03:40:46 +02:00
darktux df67582446 Always report command ID in log and implement LoadUserSetting stub 2025-04-04 03:40:46 +02:00
darktux 6ff1dc8bdb Disable "Open Home Menu" action as appropriate 2025-04-04 03:40:46 +02:00
darktux 616619c8f7 Port changes from Early Access 2025-04-04 03:40:46 +02:00
darktux 19a93a3fd1 Android: Add ability to run Qlaunch 2025-04-04 03:40:46 +02:00
darktux 76a55dc003 Implement option to start QLaunch from Tools menu 2025-04-04 03:40:45 +02:00
Briar c4fb749028 android: Add static color theme option
* android: Add static color theme option ported from Azahar 

* android: Remove leftover xml from early access fragment

* android: Properly theme material dialogs to theme color

* android: Fixup colors through the app

and make game image corners more round

* android: Set default theme to violet to match eden branding

* Update license headers

---------

Co-authored-by: Kleidis <167202775+kleidis@users.noreply.github.com>
2025-04-04 03:35:28 +02:00
Briar b1dc4fa121 android: Update AndroidX dependencies to latest versions 2025-04-04 03:23:32 +02:00
Briar 4bb6e633e0 externals: Downgrade dynarmic to ae99622 and xbyak to 0d67fd15; modify ABI parameter handling in macro_jit_x64.cpp 2025-04-04 03:23:32 +02:00
Briar dd32efa3d8 android: Switch to custom Oboe submodule 2025-04-04 03:23:32 +02:00
Briar bd844d2830 Fix windows boost compilation errors 2025-04-04 03:23:32 +02:00
Briar c98be3d793 Update fastmem pointer handling to use std::optional 2025-04-04 03:23:32 +02:00
Briar 6c3381a608 qt: 6.7.3 Implementation
Co-authored-by: Kleidis <167202775+kleidis@users.noreply.github.com>
2025-04-04 03:23:31 +02:00
briar 24fb37525c android: Remove leftover EA strings 2025-04-04 03:23:31 +02:00
Briar 5bf118114d android: Remove early access fragment and home setting item 2025-04-04 03:23:31 +02:00
Briar bef5846725 android: Update icons to use eden's 2025-04-04 03:23:31 +02:00
Briar 55d6b40fe3 android: Change appID 2025-04-04 03:23:31 +02:00
Briar 8364ab1b00 android: Rename default device name to eden 2025-04-04 03:23:31 +02:00
Briar 384535e636 android: Change app name to eden 2025-04-04 03:23:31 +02:00
Briar 8c28ebe212 android: Updated some user-facing strings to refer to eden 2025-04-04 03:23:31 +02:00
Briar b1ec0e9dec Switch default username to eden 2025-04-01 18:38:41 +02:00
Briar efb94f76d0 qt: Updated some user-facing strings to refer to eden 2025-04-01 18:37:54 +02:00
Briar 0c4d8a8b08 Rename log file to eden_log 2025-04-01 18:36:48 +02:00
Briar 0d8a40e3da Changed executable names to eden 2025-04-01 18:35:37 +02:00
voidanix d60cf76e2d Fix GCC builds with Debug build type 2025-04-01 18:31:44 +02:00
briar 2b2ddb581d android: Update various deps 2025-04-01 18:30:57 +02:00
yuzubot c280f95b1a "Merge Tagged PR 13018" 2024-03-03 13:02:50 +00:00
yuzubot f2aa821f94 "Merge Tagged PR 13178" 2024-03-03 13:02:49 +00:00
Pengfei Zhu 3e795c7d8c Revert arbaic translation 2024-03-01 15:20:53 +08:00
Pengfei Zhu f83547b26b Remove trailing whitespaces 2024-03-01 14:19:02 +08:00
The yuzu Community d97964f282 Update translations (2024-03-01) 2024-03-01 03:12:19 +00:00
liamwhite 3f719aed35 Merge pull request #13135 from german77/hid-interface
service: hid: Migrate HidServer to new IPC
2024-02-27 12:26:26 -05:00
liamwhite d7b17e2886 Merge pull request #13175 from liamwhite/asan
general: fix asan errors
2024-02-27 09:42:59 -05:00
liamwhite 3a31129447 Merge pull request #13171 from liamwhite/fake-address
texture_cache: do not track invalid addresses
2024-02-27 09:42:46 -05:00
liamwhite 5f2369bba6 general: workarounds for SMMU syncing issues (#12749) 2024-02-27 15:42:15 +01:00
liamwhite a918ce6fe9 vk_rasterizer: flip scissor y on lower left origin mode (#13122) 2024-02-27 15:40:33 +01:00
liamwhite c98e01cee8 buffer_cache: avoid overflow in usage tracker (#13166) 2024-02-27 15:39:11 +01:00
liamwhite df3712ad06 texture_cache: use two-pass collection for costly load resources (#13096) 2024-02-27 15:38:14 +01:00
Liam 7af4637f3d general: fix asan errors 2024-02-26 19:28:49 -05:00
Narr the Reg 325e577eec Merge pull request #13172 from liamwhite/gl-streams
renderer_opengl: declare geometry stream support in profile
2024-02-26 11:51:25 -06:00
liamwhite 67120d9623 Merge pull request #13159 from liamwhite/web-error
core: enable error applet, add stubs for web applet
2024-02-26 12:44:55 -05:00
Liam 71a6d3596a renderer_opengl: declare geometry stream support in profile 2024-02-26 11:18:30 -05:00
Liam 9db29b4e20 settings: remove global override for smash on amdvlk 2024-02-26 11:16:18 -05:00
Liam e15b1021a4 video_core: make gpu context aware of rendering program 2024-02-26 11:16:14 -05:00
Liam afb3516d43 texture_cache: do not track invalid addresses 2024-02-26 10:26:27 -05:00
liamwhite 0b15d99bb2 Merge pull request #13163 from german77/ring
core: hid: hid_core doesn't have access to LIBUSB
2024-02-25 14:01:05 -05:00
liamwhite 02b3a50564 Merge pull request #13154 from german77/vibration-filter
core: hid: Reintroduce vibration filter
2024-02-25 14:00:59 -05:00
german77 68b0f72f27 core: hid: hid_core doesn't have access to LIBUSB 2024-02-25 10:06:43 -06:00
Liam e850ec7aa9 settings: enable error applet 2024-02-24 22:56:08 -05:00
Liam 1958a2df6b ldn: return no connection from GetStateForMonitor 2024-02-24 22:56:08 -05:00
Liam cacfe8ec90 ssl: add cert store 2024-02-24 22:56:05 -05:00
Liam 1c7c59ad91 glue: load initial year setting as s32 2024-02-24 22:49:38 -05:00
Liam 2945ef5999 acc: add account manager for acc:u1 2024-02-24 22:25:34 -05:00
Liam 4cc17106f6 fs: add stubs for online web applet 2024-02-24 22:25:34 -05:00
Liam dd24fbb33c erpt: stub report creation 2024-02-24 22:25:34 -05:00
Liam 7f0b506cf1 set: add GetPlatformRegion 2024-02-24 22:25:34 -05:00
german77 4e20a37a2b service: set: Fix GetSettingsItemValue 2024-02-24 14:44:21 -06:00
german77 bdd95714d5 core: hid: Reintroduce vibration filter 2024-02-24 12:19:51 -06:00
liamwhite d953c2d880 Merge pull request #13153 from german77/defaultset
service: set: Enable nfc and others by default and bump version
2024-02-24 12:48:31 -05:00
liamwhite 843674567c Merge pull request #13081 from FearlessTobi/aoc-ipc
aoc: Migrate to use cmif serialization
2024-02-24 12:48:26 -05:00
german77 0f1de8fee0 service: set: Enable nfc and others by default and bump version 2024-02-24 11:19:51 -06:00
Liam 04e16dcb2f set: fix region code for system settings 2024-02-24 00:48:44 -05:00
liamwhite 8727ea220b Merge pull request #13142 from t895/vibration-queue
android: Play vibrations asynchronously
2024-02-24 00:38:13 -05:00
liamwhite 5e07baddbc Merge pull request #13146 from wheremyfoodat/patch-1
common/ring_buffer: Include <limits> header
2024-02-23 20:32:40 -05:00
Narr the Reg 8bc1934126 service: audio: Add missing logging properties of SetHeadphoneOutputLevelMode 2024-02-23 18:58:51 -06:00
Narr the Reg 08703d2350 service: btdrv: Add EnableRadio for Qlaunch 2024-02-23 18:58:51 -06:00
Narr the Reg a23f148581 service: friend: Add GetFriendCount, GetNewlyFriendCount, GetReceivedFriendRequestCount, GetPlayHistoryStatistics, GetReceivedFriendInvitationCountCache for QLaunch 2024-02-23 18:58:51 -06:00
Narr the Reg d77cb74cb2 service: hid: Add IsAnyCustomButtonConfigEnabled for QLaunch 2024-02-23 18:58:51 -06:00
Narr the Reg b1994c06df service: lbl: Add SaveCurrentSetting, LoadCurrentSetting and IsAutoBrightnessControlSupported for QLaunch 2024-02-23 18:58:50 -06:00
Narr the Reg ba58902d76 service: nfc: Implement SetNfcEnabled 2024-02-23 18:58:50 -06:00
Narr the Reg 2ab5090b02 service: npns: Add ListenTo and GetReceiveEvent for QLaunch 2024-02-23 18:58:39 -06:00
Narr the Reg ed811a58e9 service: set: Add default eula setting 2024-02-23 18:58:19 -06:00
wheremyfoodat 8a5329b19a common/ring_buffer: Include <limits> header 2024-02-24 02:34:09 +02:00
Narr the Reg 9d2a7fba97 service: hid: Migrate HidServer to new IPC 2024-02-23 17:49:02 -06:00
Narr the Reg c10b688712 service: hid: Move and migrate AppletResource and ActiveVibrationDevice 2024-02-23 17:49:02 -06:00
t895 ebcf0a3415 android: Play vibrations asynchronously 2024-02-23 16:41:59 -05:00
liamwhite 26ab5e9c88 Merge pull request #13141 from liamwhite/swap
fs: fix argument order
2024-02-23 15:23:06 -05:00
Liam 996211f28f fs: fix argument order 2024-02-23 15:10:35 -05:00
Liam b47cfa8e48 fs: add ISaveDataTransferProhibiter, stub FindSaveDataWithFilter 2024-02-23 12:17:24 -05:00
liamwhite bedb70d105 Merge pull request #13133 from liamwhite/libstdcxx-issue
vi: workaround conductor includes
2024-02-23 11:34:34 -05:00
liamwhite 0ca185f68d Merge pull request #13115 from liamwhite/olsc-pctl
olsc, pctl: move to new ipc
2024-02-23 11:34:29 -05:00
liamwhite 56834236dc Merge pull request #13100 from liamwhite/audio-ipc
audio: move to new ipc
2024-02-23 11:34:21 -05:00
liamwhite 0e16d64fbc Merge pull request #13073 from FearlessTobi/fsp-srv-ipc
fsp: Migrate remaining interfaces to cmif serialization
2024-02-23 11:34:06 -05:00
Liam 10966412ac vi: workaround conductor includes 2024-02-23 10:34:49 -05:00
Liam ecf0037c31 oboe_sink: handle temporary stream creation failure 2024-02-23 10:30:52 -05:00
liamwhite 6ce6149347 Merge pull request #13121 from german77/clean-shortcut
yuzu: Fix shortcut error message
2024-02-22 23:04:28 -05:00
liamwhite cee82ecadb Merge pull request #13117 from liamwhite/ovln
psc: stub overlay notification channel
2024-02-22 20:26:03 -05:00
Liam c847c2e75a audio: fix released buffer bounds check 2024-02-22 20:20:31 -05:00
FearlessTobi 830d5766ae aoc: Rename AOC_U to IAddOnContentManager 2024-02-23 01:19:18 +01:00
Narr the Reg 71937393a6 yuzu: Fix shortcut error message 2024-02-22 17:52:30 -06:00
liamwhite 4df301d9af Merge pull request #12982 from FearlessTobi/fs-rewrite-part0
fs: Add FileSystemAccessor and use cmif serialization
2024-02-22 12:34:47 -05:00
Narr the Reg 565921a463 Merge pull request #13000 from liamwhite/skip-null-memory
device_memory_manager: skip unregistered interfaces on invalidate
2024-02-22 11:34:23 -06:00
Narr the Reg 615cc06ca4 Merge pull request #13001 from liamwhite/scaled-availability
vulkan_device: don't use fixed cap for memory limits
2024-02-22 11:31:17 -06:00
Narr the Reg 091abdc5cb Merge pull request #13075 from liamwhite/mali-having-a-bad-time
shader_recompiler: throw on missing geometry streams in geometry shaders
2024-02-22 11:30:26 -06:00
Liam a086cf4136 audio: add NotifyHeadphoneVolumeWarningDisplayedEvent 2024-02-21 23:54:10 -05:00
Liam 28827c325e pctl: rewrite IParentalControlService 2024-02-21 23:42:33 -05:00
Liam af6a347b18 pctl: rewrite IParentalControlServiceFactory 2024-02-21 23:00:01 -05:00
Liam 2a4e185c0e pctl: move IParentalControlServiceFactory 2024-02-21 23:00:01 -05:00
Liam 9e4b8cee15 pctl: move IParentalControlService 2024-02-21 23:00:01 -05:00
Liam d623433963 pctl: move types and results 2024-02-21 22:58:20 -05:00
Liam c84e79e742 psc: stub overlay notification channel 2024-02-21 22:54:05 -05:00
Liam da72188456 psc: rewrite IPmService 2024-02-21 22:26:32 -05:00
Liam dc62ca20ee psc: move IPmControl, IPmModule, IPmService 2024-02-21 22:26:12 -05:00
Liam 41d6ea28bf olsc: rewrite IOlscServiceForSystemService 2024-02-21 20:02:00 -05:00
Liam 0975b47dc4 olsc: add IRemoteStorageController 2024-02-21 19:47:54 -05:00
Liam c7414c03b7 olsc: add IDaemonController 2024-02-21 19:05:19 -05:00
Liam 6ac3fcb51e olsc: rewrite ITransferTaskListController 2024-02-21 18:36:17 -05:00
Liam b9e7d1d09e olsc: rewrite INativeHandleHolder 2024-02-21 18:19:48 -05:00
Liam 852ff835b5 olsc: rewrite IOlscServiceForApplication 2024-02-21 18:19:12 -05:00
Liam 450171275d olsc: move INativeHandleHolder, IOlscServiceForApplication, IOlscServiceForSystemService, ITransferTaskListController 2024-02-21 16:13:01 -05:00
liamwhite 56ea569c6d Merge pull request #13105 from t895/connection-fix
android: Misc controller fixes
2024-02-21 10:43:46 -05:00
liamwhite a98669d39d fs: add missing mutex header for member (#13106) 2024-02-21 16:43:05 +01:00
t895 4c2ddb2cb2 android: Connect controllers with supported styles
If you tried to connect a controller that was previously configured with an unsupported style for your game, when you try to connect that controller, it will immediately disconnect. This ensures that the controller that is being connected will be changed to the first supported style index before being connected.
2024-02-21 08:37:55 -05:00
t895 f46654b3b0 android: Add additional check for hasMapping
Controls can have no mapping if they are either "[empty]" or and empty string. This was causing an issue if you reset mapping on all controllers and then tried to play a game. The check to determine whether auto mapping was required would fail and leave you will no mapped controllers. This feels a bit like user error but it smooths things out if you forget so I see it as necessary.
2024-02-21 08:17:30 -05:00
t895 3637b5e4fb android: Enable all controller styles on emulation shutdown 2024-02-21 08:13:54 -05:00
Liam 58d8db6ac7 audio: format 2024-02-20 22:51:39 -05:00
Liam db225a3838 audio: rewrite IHardwareOpusDecoder 2024-02-20 22:15:38 -05:00
Liam a898ae4f7d audio: rewrite IAudioDevice 2024-02-20 22:15:38 -05:00
Liam f5c288e8ae audio: rewrite IHardwareOpusDecoderManager 2024-02-20 22:15:38 -05:00
Liam 722a7571a5 audio: rewrite IAudioRenderer 2024-02-20 22:15:38 -05:00
Liam 99b848b523 audio: rewrite IAudioRendererManager 2024-02-20 22:15:37 -05:00
Liam 103d1ad376 audio: split IHardwarweOpusDecoder, move IHardwareOpusDecoderManager 2024-02-20 22:15:37 -05:00
Liam f3a957d570 audio: split IAudioDevice, IAudioRenderer, move IAudioRendererManager 2024-02-20 22:15:37 -05:00
Liam c453442f87 audio: move IFinalOutputRecorderManager{,ForApplet} 2024-02-20 22:15:37 -05:00
Liam 147afedf27 audio: rewrite IAudioOutManager 2024-02-20 22:15:37 -05:00
Liam b11e15833e audio: rewrite IAudioOut 2024-02-20 22:15:37 -05:00
Liam 001db3afdd audio: rewrite IAudioInManager 2024-02-20 22:15:37 -05:00
Liam 1d37442af9 audio: rewrite IAudioIn 2024-02-20 22:15:37 -05:00
t895 9c51cb5361 android: Fix extra stick setting default values
The default value was accidentally hardcoded for all extra stick settings
2024-02-20 22:13:59 -05:00
liamwhite 3b13df9a82 Merge pull request #13095 from liamwhite/ns-oops
ns: fix alignment of uid type
2024-02-20 21:19:35 -05:00
Matías Locatti 40497ab00f Merge pull request #10529 from liamwhite/critical-spacing
caches: make critical reclamation less eager and possible in more cases
2024-02-20 23:19:27 -03:00
Liam 6c06717658 ns: fix alignment of uid type 2024-02-20 18:43:44 -05:00
liamwhite c980f572f4 Merge pull request #13091 from t895/device-renaming
android: Expose device name setting
2024-02-20 18:30:54 -05:00
t895 aa5605101a android: Expose device name setting 2024-02-20 08:16:38 -05:00
t895 7d2f11fac6 android: Add StringInputSetting settings item 2024-02-20 08:06:56 -05:00
Liam 0e032e03e6 vi: ignore shared buffer destruction failure on termination 2024-02-20 00:02:56 -05:00
Liam 3b78f33757 vi: remove superfluous locking in shared buffer manager 2024-02-19 23:59:35 -05:00
Liam 6fabb06764 nvnflinger/vi: don't recreate buffer queue on open/close 2024-02-19 23:59:35 -05:00
Andrew Pilley 9ef7dbbb2b Import keys from filesystem. (#13056)
* Import keys, re-initialize KeyManager, re-scan vfs, re-populate game list.

* <.< spelling.

* Update based on feedback on #13047 and this PR

* Based on feedback: Don't delete existing files. There's legitimate reasons that someone may want to keep their retail keys and title key handling is resilient to mismatches.

* Update src/yuzu/main.cpp

Co-authored-by: Tobias <thm.frey@gmail.com>

* Remove translation of literal filename/filter format.

* clang-format.

---------

Co-authored-by: Tobias <thm.frey@gmail.com>
2024-02-19 19:18:13 -05:00
liamwhite 6e55dc775d Merge pull request #13086 from t895/clear-button-fix
android: Fix broken clear button check
2024-02-19 19:18:05 -05:00
Charles Lombardo 30cfd14873 android: Have input overlay follow player 1 style index (#13085) 2024-02-19 22:47:21 +01:00
t895 fbec2ba35d android: Fix broken clear button check 2024-02-19 15:54:52 -05:00
liamwhite efa774c2e5 Merge pull request #13031 from german77/btm-interfcae
service: btm: Migrate service to new IPC
2024-02-19 14:49:42 -05:00
Charles Lombardo 0b351f0635 android: Fix overlay visibility reset (#13083) 2024-02-19 19:44:42 +01:00
Charles Lombardo f7ec8a8b77 android: Show done button when configuring input overlay (#13082) 2024-02-19 19:26:18 +01:00
FearlessTobi 459761fc2a Address review comments pt. 2 2024-02-19 19:22:51 +01:00
FearlessTobi 350efe5caf Address review comments 2024-02-19 19:20:46 +01:00
FearlessTobi f37b5ac9cc fs: Refactor to use cmif serialization 2024-02-19 19:20:46 +01:00
FearlessTobi 52f6c6b46c fs: Add FileSystemAccessor classes 2024-02-19 19:20:40 +01:00
FearlessTobi dcc9189dcb Address review comments 2024-02-19 19:11:07 +01:00
FearlessTobi 27dede35d2 fs: Add and use fs_save_data_types.h 2024-02-19 19:06:31 +01:00
FearlessTobi f01a14c5fd fsp: Migrate remaining interfaces to cmif serialization 2024-02-19 19:06:31 +01:00
FearlessTobi 8da9fbdb66 fsp-srv: Migrate to use cmif serialization 2024-02-19 19:06:31 +01:00
FearlessTobi 06d2c70a05 fsp: Move IMultiCommitManager to a seperate file 2024-02-19 19:06:31 +01:00
FearlessTobi 10f80939ee fsp: Move ISaveDataInfoReader to a seperate file 2024-02-19 19:06:31 +01:00
FearlessTobi e916791809 aoc: Migrate to use cmif serialization 2024-02-19 17:20:02 +01:00
FearlessTobi 1427917a8a core/aoc: Move IPurchaseEventManager to separate file 2024-02-19 16:36:24 +01:00
FearlessTobi 4d55e58ee4 scope_exit: Make constexpr
Allows the use of the macro in constexpr-contexts.
Also avoids some potential problems when nesting braces inside it.
2024-02-19 16:00:46 +01:00
FearlessTobi 79a983cc95 core/CMakeLists: Sort alphabetically 2024-02-19 15:51:02 +01:00
Narr the Reg 984329e0e6 Merge pull request #13006 from liamwhite/a-hat-in-vram
buffer_cache: use mapped range with large vertex buffer size
2024-02-18 23:37:49 -06:00
Narr the Reg 93bcf8e879 Merge pull request #13026 from liamwhite/scale-this-mf
shader_recompiler: fix non-const offset for arrayed image types
2024-02-18 23:37:25 -06:00
Narr the Reg 07d6778128 Merge pull request #13035 from liamwhite/vi2
vi: manage resources independently of nvnflinger and refactor
2024-02-18 23:36:53 -06:00
Narr the Reg a44256e149 Merge pull request #13048 from liamwhite/new-shell
ns: rewrite for new IPC
2024-02-18 23:36:29 -06:00
Liam 749f0564ae shader_recompiler: throw on missing geometry streams in geometry shaders 2024-02-19 00:34:00 -05:00
liamwhite 20f06586e9 Merge pull request #13070 from liamwhite/offset
am: account for offset in transfer memory storage
2024-02-18 19:03:56 -05:00
liamwhite 8001355894 Merge pull request #13030 from german77/audio-controller
service: audio: Rewrite IAudioController to new IPC
2024-02-18 19:03:49 -05:00
Liam a20eb0f265 ns: address review comments 2024-02-18 19:02:00 -05:00
Liam a956f0f4f8 vulkan_device: don't use fixed cap for memory limits 2024-02-18 18:59:13 -05:00
Liam 4df0f0c70c am: account for offset in transfer memory storage 2024-02-18 14:56:48 -05:00
german77 16b5a24d6f core: hid: Remove driver errors from log 2024-02-18 10:54:56 -06:00
Liam d082a80d79 nvnflinger: check for layers before compose 2024-02-18 11:25:52 -05:00
liamwhite f204de2c55 Merge pull request #13067 from t895/xbox-automap-invert
android: Flip AB/XY for xbox controllers during auto-mapping
2024-02-18 10:48:54 -05:00
t895 e69efb0f73 android: Flip AB/XY for xbox controllers during auto-mapping 2024-02-18 10:40:33 -05:00
liamwhite b67cdf9285 Merge pull request #13032 from german77/qlauncher
service: Implement functions needed by Qlaunch
2024-02-18 10:37:52 -05:00
Liam 9716503c0a ns: rewrite IQueryService 2024-02-18 10:35:39 -05:00
Liam 81a1a3f7f1 ns: rewrite IServiceGetterInterface 2024-02-18 10:35:39 -05:00
Liam ddeb9191f4 ns: rewrite IApplicationManagerInterface 2024-02-18 10:35:39 -05:00
Liam 0fe10d0b09 ns: move IDevelopInterface 2024-02-18 10:35:37 -05:00
Liam 1a9bd38a20 ns: rewrite ISystemUpdateInterface 2024-02-18 10:32:21 -05:00
Liam bea44994ee ns: move ISystemUpdateControl 2024-02-18 10:32:21 -05:00