swurl
d659d6f5b4
Runtime option for flushing logs by line ( #90 )
...
Signed-off-by: swurl <swurl@swurl.xyz>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/90
Co-authored-by: swurl <swurl@swurl.xyz>
Co-committed-by: swurl <swurl@swurl.xyz>
2025-05-08 06:20:20 +00:00
edendev
b01e20414f
Readd Revert Problematic Commits
2025-05-04 08:24:54 +00:00
edendev
4181b53e19
revert Remove problematic commits
...
revert Remove problematic commits
2025-05-04 08:17:03 +00:00
MrPurple666
b689d74bc9
Remove problematic commits
2025-05-03 16:01:11 -03:00
Briar
54c3c4503a
android: Add initial frontend for LAN network rooms ( #76 )
...
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/76
Co-authored-by: Briar <205427297+icy-briar@users.noreply.github.com>
Co-committed-by: Briar <205427297+icy-briar@users.noreply.github.com>
2025-05-03 17:53:09 +00:00
MrPurple666
7bd606bece
Merge https://git.eden-emu.dev/eden-emu/eden
2025-04-30 16:19:06 -03:00
MrPurple666
b5bec371ae
Add toggle for LRU
2025-04-30 04:05:45 -03:00
JPikachu
e4e27ef86b
implement: New API for Multiplayer Support
2025-04-30 06:34:25 +00:00
Pavel Barabanov
37a508c3ba
Add USE AUTO STUB to Android
2025-04-30 03:00:46 +03:00
MrPurple666
b695ca5a2a
Revert some wip changes
2025-04-28 16:14:42 -03:00
swurl
808276b48a
Dynamic State Fixes ( #57 )
...
- Forcefully disabled dynamic state extensions if Vulkan reports that
the device doesn't support it (need to update UI for this)
- Adds some more supported state 3 extensions
- Adds back stencil reinterpretation
- default to 0 on Android and 1 on desktop
Signed-off-by: swurl <swurl@swurl.xyz>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/57
Co-authored-by: swurl <swurl@swurl.xyz>
Co-committed-by: swurl <swurl@swurl.xyz>
2025-04-27 17:07:49 -04:00
swurl
9f806138ab
Merge branch 'log-by-line'
...
Signed-off-by: swurl <swurl@swurl.xyz>
2025-04-24 15:58:49 -04:00
CamilleLaVey
30670bd92a
Merge pull request 'Add configurations for VkExtendedDynamicState extensions' ( #53 ) from crueter/eden:dynamic-state-config into master
...
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/53
2025-04-24 19:55:58 +00:00
swurl
83cf9774e1
switch dynamic state to a slider
...
Signed-off-by: swurl <swurl@swurl.xyz>
2025-04-24 12:08:01 -04:00
swurl
9cb03cd007
Log by line compilation option
...
Signed-off-by: swurl <swurl@swurl.xyz>
2025-04-24 10:58:22 -04:00
swurl
1949e7c438
Add dynamic state extension configs
...
Signed-off-by: swurl <swurl@swurl.xyz>
2025-04-23 20:57:53 -04:00
swurl
8795b96d46
Fix Qt <6.7 build and allow speed limit to be saved
...
Signed-off-by: swurl <swurl@swurl.xyz>
2025-04-23 18:36:39 -04:00
FireBurn
b03d51f06f
Include memory header
...
This stops build failures for missing std::shared_ptr which is in multiple files
Signed-off-by: FireBurn <mike@fireburn.co.uk>
2025-04-19 17:56:48 -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
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
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
crueter
9cef9f5dce
Update fmt to allow for v11
...
Signed-off-by: swurl <swurl@swurl.xyz>
2025-04-10 01:11:22 +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
darktux
ada5dcf01a
Disabled MCO_USE_VMEM_ALLOCATOR because standard stack size seems to suffice
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
5af02a5cea
Save memory by using dyamic stack size in Fiber
2025-04-04 03:40:48 +02:00
darktux
bc2fdfee13
Fixed minicoro.h formatting
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
2032d035a3
Removed telemetry and anonymized SCM (git) strings
2025-04-04 03:40:47 +02:00
darktux
616619c8f7
Port changes from Early Access
2025-04-04 03:40:46 +02:00
Briar
8364ab1b00
android: Rename default device name to eden
2025-04-04 03:23:31 +02:00
Briar
0c4d8a8b08
Rename log file to eden_log
2025-04-01 18:36:48 +02:00
voidanix
d60cf76e2d
Fix GCC builds with Debug build type
2025-04-01 18:31:44 +02: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
9db29b4e20
settings: remove global override for smash on amdvlk
2024-02-26 11:16:18 -05:00
Liam
e850ec7aa9
settings: enable error applet
2024-02-24 22:56:08 -05:00
wheremyfoodat
8a5329b19a
common/ring_buffer: Include <limits> header
2024-02-24 02:34:09 +02:00
liamwhite
56834236dc
Merge pull request #13100 from liamwhite/audio-ipc
...
audio: move to new ipc
2024-02-23 11:34:21 -05: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
Liam
a898ae4f7d
audio: rewrite IAudioDevice
2024-02-20 22:15:38 -05: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
Liam
a956f0f4f8
vulkan_device: don't use fixed cap for memory limits
2024-02-18 18:59:13 -05:00
t895
a29782ce6a
android: Input mapping
2024-02-17 12:32:33 -05:00
Narr the Reg
e29b241a5a
Merge pull request #12756 from liamwhite/applet-multiprocess-hwc
...
general: applet multiprocess
2024-02-11 20:58:28 -06:00
liamwhite
354e0a2791
Merge pull request #12920 from t895/jni-common
...
android: Move JNI setup and helpers to common
2024-02-09 11:49:25 -05:00
Liam
b4b3ddf4b4
general: add default configurations for applet mode
2024-02-09 09:20:53 -05:00
t895
5200236f89
common: fs: Expand android macros
2024-02-08 14:13:46 -05:00
t895
28fcbacc78
android: Move JNI setup and helpers to common
2024-02-08 13:45:26 -05:00
liamwhite
d26c4a5090
Merge pull request #12914 from FernandoS27/vc-refactor
...
VideoCore Refactor Part 1.
2024-02-08 10:59:59 -05:00
Fernando Sahmkow
758d895408
Common: Rename SplitRangeSet to OverlapRangeSet
2024-02-05 23:01:17 +01:00
Liam
b4c3007b7c
typed_address: test values are unsigned
2024-02-05 12:47:10 -05:00
Fernando Sahmkow
80d505b5cf
Buffer Cache: Refactor to use Range sets instead
2024-02-05 11:06:52 +01:00
Fernando Sahmkow
75f5d982a0
Common: Introduce Range Sets
2024-02-04 20:01:50 +01:00
Fernando Sahmkow
4d97c54676
VideoCore: Move Slot Vector to Common
2024-02-04 20:01:47 +01:00
Narr the Reg
1f0a9436c7
service: fs: Skip non user id folders
2024-02-02 13:25:38 -06:00
liamwhite
df38bba6a8
Merge pull request #12869 from FernandoS27/smmu-fixes
...
SMMU: A set of different fixes.
2024-01-31 11:22:29 -05:00
Liam
27989bd49c
smmu: use new range mutex construction for protecting counters
2024-01-31 16:38:51 +01:00
t895
6c6d6ece77
settings: Allow audio sink, input, and output to be set per game
2024-01-31 09:31:19 -05:00
liamwhite
9b07313a94
Merge pull request #12814 from Kelebek1/time_new_ipc
...
Move time services to new IPC and add debug printing
2024-01-29 09:08:46 -05:00
Merry
a3871f6172
atomic_ops: Fix MSVC
2024-01-27 21:42:16 +00:00
Merry
bd45dad4f2
atomic_ops: Remove volatile qualifier
2024-01-27 21:36:39 +00:00
Merry
93e483d9e4
atomic_ops: Reduce code duplication with templates
...
Also fixes builds on unusual toolchains where:
- u32 is unsigned int
- u64 is unsigned long long
- uintptr_t is unsigned long
2024-01-27 21:12:12 +00:00
Kelebek1
05afa94a3b
Move time services to new IPC.
...
Add some fixes/improvements to usage with the new IPC
2024-01-27 03:30:09 +00:00
FearlessTobi
2b4d7506a8
Address review comments and fix compilation problems
2024-01-25 16:43:53 -05:00
FearlessTobi
99d76bf25a
fs: Add path class
2024-01-25 16:42:06 -05:00
liamwhite
0ab550c726
Merge pull request #12499 from Kelebek1/time
...
Rework time services
2024-01-25 14:19:01 -05:00
Kelebek1
52c35521bd
Rework time service to fix time passing offline.
2024-01-24 04:26:55 +00:00
liamwhite
5a6b3a0125
Merge pull request #12579 from FernandoS27/smmu
...
Core: Implement Device Mapping & GPU SMMU
2024-01-22 10:55:39 -05:00
Merry
66e66eef90
fs/file: Explicitly convert std::u8string to std::filesystem::path
2024-01-20 17:46:30 +00:00
Fernando Sahmkow
04b4af6044
Core: Initial implementation of device memory mapping
2024-01-18 21:12:30 -05:00
Viktor Szépe
168f763ee6
Merge remote-tracking branch 'origin/master' into typos3
2024-01-16 00:09:00 +00:00
Viktor Szépe
8f8a15827f
Fix more typos
2024-01-15 23:26:53 +00:00
Liam
12fe8c5b76
kernel: fix page leak on process termination
2024-01-12 18:31:33 -05:00
liamwhite
15ed65780e
Merge pull request #12518 from t895/theme-settings
...
android: Migrate remaining settings to ini
2024-01-01 15:02:06 -05:00
Narr the Reg
5dbd02ebb1
Merge pull request #12466 from liamwhite/sh2
...
core: track separate heap allocation for linux
2024-01-01 13:56:16 -06:00
t895
c206e92b35
android: Migrate in-game overlay settings to ini
2023-12-30 15:11:36 -05:00
Liam
421c59da99
heap_tracker: use linear-time mapping eviction
2023-12-27 10:42:27 -05:00
liamwhite
f7725444ac
Merge pull request #12471 from FearlessTobi/port-7146
...
Port citra-emu/citra#7146 : "assert/logging: Stop the logging thread and flush the backends before crashing"
2023-12-26 11:46:04 -05:00
FearlessTobi
85ec46c7d1
assert/logging: Stop the logging thread and flush the backends before crashing
...
Co-Authored-By: SachinVin <26602104+SachinVin@users.noreply.github.com>
2023-12-26 10:35:14 +01:00
Liam
c366d8e8d9
core: track separate heap allocation for linux
2023-12-25 23:30:56 -05:00
FearlessTobi
f14b3364ad
ring_buffer: Use feature macro
...
Co-Authored-By: GPUCode <47210458+GPUCode@users.noreply.github.com>
2023-12-25 14:10:40 +01:00
Fernando S
7c8e3b1891
Merge pull request #12387 from liamwhite/oboe
...
android: add oboe audio sink
2023-12-19 16:15:07 +01:00
Liam
9254cbb1b0
path_util: copy output for GetParentPath
2023-12-17 14:25:42 -05:00
Liam
b787b5db2e
android: add oboe audio sink
2023-12-17 01:42:59 -05:00
liamwhite
b5f4a18f2f
Merge pull request #12335 from t895/per-game-settings
...
android: Game Properties
2023-12-16 13:57:54 -05:00
liamwhite
a871e2fd99
Merge pull request #12184 from Kelebek1/system_settings
...
Make system settings persistent across boots
2023-12-16 11:47:52 -05:00
liamwhite
1c033b5417
Merge pull request #12290 from liamwhite/deferred-path-split
...
Improve path splitting speed
2023-12-16 11:47:29 -05:00
Kelebek1
9dc9e91e2a
Make system settings persistent across boots
2023-12-16 06:01:54 +00:00
Liam
1075c88dca
common: use memory holepunching when clearing memory
2023-12-14 23:44:33 -05:00
t895
8323adf027
settings: Allow vsync to be changed per-game
2023-12-12 17:25:37 -05:00
t895
1fb59b06a6
settings: Allow CPU Debug and Fastmem to be changed per-game
2023-12-12 17:25:37 -05:00
t895
6cf701ae25
android: Add per-game drivers
2023-12-12 17:25:37 -05:00
t895
10eee4c0c3
android: Refactor settings to expose more options
...
In AbstractSetting, this removes the category, androidDefault, and valueAsString properties as they are no longer needed and have replacements. isSwitchable, global, and getValueAsString are all exposed and give better options for working with global/per-game settings.
2023-12-12 17:25:36 -05:00
GPUCode
7ab4cb1910
settings: Clearer NCE error messages
2023-12-09 23:37:14 +02:00
t895
23d1e33daa
settings: Enable NCE by default on capable systems
2023-12-08 20:25:07 -05:00
BreadFish64
d1ee9e48d9
Improve path splitting speed
2023-12-05 23:17:19 -05:00
Jan Beich
d4e8540135
host_memory: move MAP_ALIGNED_SUPER attempt after de66cf5637
...
src/common/host_memory.cpp:410:14: error: unused function 'ChooseVirtualBase' [-Werror,-Wunused-function]
410 | static void* ChooseVirtualBase(size_t virtual_size) {
| ^~~~~~~~~~~~~~~~~
2023-12-02 00:25:50 +01:00
Jan Beich
6ab3d70252
host_memory: allow missing MAP_NORESERVE on FreeBSD after de66cf5637
...
src/common/host_memory.cpp:408:47: error: use of undeclared identifier 'MAP_NORESERVE'
MAP_PRIVATE | MAP_ANONYMOUS | MAP_NORESERVE, -1, 0);
^
2023-12-02 00:25:50 +01:00
Alexandre Bouvier
6d1049366d
cmake: prefer system gamemode library
2023-11-30 16:54:00 +01:00
liamwhite
360381aaaf
Merge pull request #12227 from jbeich/gamemode
...
cmake: unbreak build on FreeBSD by re-enabling gamemode
2023-11-30 09:21:19 -05:00
liamwhite
da8676dda1
Merge pull request #12074 from GPUCode/yuwu-on-the-metal
...
Implement Native Code Execution (NCE)
2023-11-30 09:20:55 -05:00
Jan Beich
93abc60cf7
cmake: sync gamemode conditionals with code after 0fff56e1ef
...
FAILED: bin/yuzu
ld: error: unable to find library -lgamemode
FAILED: bin/yuzu-cmd
ld: error: undefined symbol: Common::Linux::StartGamemode()
>>> referenced by yuzu.cpp
>>> src/yuzu_cmd/CMakeFiles/yuzu-cmd.dir/yuzu.cpp.o:(main)
ld: error: undefined symbol: Common::Linux::StopGamemode()
>>> referenced by yuzu.cpp
>>> src/yuzu_cmd/CMakeFiles/yuzu-cmd.dir/yuzu.cpp.o:(main)
2023-11-30 00:05:11 +01:00
Liam
0fff56e1ef
general: conditionally compile gamemode on linux only
2023-11-29 14:26:11 -05:00
liamwhite
c90b7f3b93
Merge pull request #11946 from flodavid/gamemode
...
Enable (Feral Interactive) Gamemode on Linux
2023-11-29 12:33:09 -05:00
GPUCode
fab81ee39d
cmake: Move HAS_NCE to root cmake
...
* So we can use it in common
2023-11-29 01:35:06 +02:00
amazingfate
c95a560bc3
qt: add cpu_backend configuration
2023-11-26 20:44:07 -05:00
Liam
82c5e2472e
general: fix mac compile
2023-11-26 19:50:10 -05:00
Fernando S
896ae72dbf
Merge pull request #11535 from GPUCode/upload_cmdbuf
...
renderer_vulkan: Introduce separate cmd buffer for uploads
2023-11-26 18:33:05 +01:00
flodavid
6bd3056c52
yuzu: create linux group in general settings
...
- Create files dedicated to starting and stopping gamemode functions
- Use them in yuzu and yuzu_cmd modules
2023-11-25 19:30:37 +01:00
xcfrg
e21bdc68db
yuzu: integrate gamemode support on linux
2023-11-25 19:30:29 +01:00
GPUCode
064d5bf4aa
host_memory: Simplify randomness generation
2023-11-25 00:47:43 -05:00
GPUCode
38091d3a1d
common: Enforce fastmem for nce usage
2023-11-25 00:47:36 -05:00
GPUCode
3814ca9d84
Address some review comments
2023-11-25 00:47:35 -05:00
GPUCode
3764cc4be2
android: Add cpu bakend gui toggle
2023-11-25 00:47:28 -05:00
Liam
19619b1b14
arm: Implement native code execution backend
2023-11-25 00:46:47 -05:00
GPUCode
dee5002355
device_memory: Enable direct mapped addresses for nce
2023-11-25 00:46:47 -05:00
GPUCode
9e5f019dee
settings: Add cpu backend setting
2023-11-25 00:46:15 -05:00
GPUCode
2590906d14
core: Respect memory permissions in Map
2023-11-25 00:46:15 -05:00
Liam
0dc5c75243
host_memory: Switch to FreeRegionManager
2023-11-25 00:46:15 -05:00
Liam
de66cf5637
host_memory: ensure map base is between 36 and 39 bits
2023-11-25 00:46:15 -05:00
--author=Liam
5e96634f40
common: Add free region manager
...
* Abstraction for placeholder region tracking in host_memory
2023-11-25 00:46:15 -05:00
GPUCode
d4ff9e191b
common: Add libc sigaction hook
2023-11-25 00:46:15 -05:00
t895
95fa508a1c
common: settings: Add ifdefs to define android's default settings
2023-11-21 01:58:13 -05:00
t895
230bd06245
config: Unify config handling under frontend_common
...
Replaces every way of handling config for each frontend with SimpleIni. frontend_common's Config class is at the center where it saves and loads all of the cross-platform settings and provides a set of pure virtual functions for platform specific settings.
As a result of making config handling platform specific, several parts had to be moved to each platform's own config class or to other parts. Default keys were put in platform specific config classes and translatable strings for Qt were moved to shared_translation. Default hotkeys, default_theme, window geometry, and qt metatypes were moved to uisettings. Additionally, to reduce dependence on Qt, QStrings were converted to std::strings where applicable.
2023-11-21 01:58:13 -05:00
liamwhite
3254ed9634
Merge pull request #12007 from german77/moar_buttons
...
core: hid: Split SL and SR buttons
2023-11-16 09:13:39 -05:00
liamwhite
e3a8c777be
Merge pull request #11990 from german77/audio
...
yuzu: Save mute when in background setting
2023-11-13 09:13:12 -05:00
GPUCode
4b853ff5cf
renderer_vulkan: Introduce separate cmd buffer for uploads
2023-11-12 20:27:39 +01:00
german77
6788dffa53
core: hid: Split SL and SR buttons
2023-11-11 21:03:15 -06:00
Liam
713f292a25
kernel: add KPageTableBase
...
Co-authored-by: Kelebek1 <eeeedddccc@hotmail.co.uk>
2023-11-10 12:01:35 -05:00
Narr the Reg
e19c9281db
yuzu: Make mute audio persistent
2023-11-10 10:22:04 -06:00
Narr the Reg
50474720f2
yuzu: Save mute when in background setting
2023-11-10 10:22:02 -06:00
Charles Lombardo
6fa1b029a7
arm: NativeClock: Special handling for bad system counter clock frequency reporting
...
On some devices, checking the system counter clock frequency will return 0. Substitute in the correct values to prevent issues.
2023-11-03 16:21:54 -04:00
Charles Lombardo
df17162f9c
android: Fix resolving android URIs in native code
2023-10-30 11:38:10 -04:00
liamwhite
4940a6b310
Merge pull request #11689 from liamwhite/breakpad
...
qt: implement automatic crash dump support
2023-10-29 23:41:13 -04:00
Ameer J
5f3f83d1f5
nvidia_flags: Enable GL Threaded optimizations
2023-10-28 21:26:22 -04:00
Alexandre Bouvier
fc27fd3f02
cmake: prefer system stb headers
2023-10-25 21:47:32 +02:00
Liam
17cd28ecb5
common: use SetThreadDescription API for thread names
2023-10-20 11:41:29 -04:00
liamwhite
bd2d7c4d8b
Merge pull request #11159 from flodavid/master_bis
...
Enable to use controller to close a game
2023-10-14 09:58:03 -04:00
Valeri Ochinski
4f85040c40
common/polyfill_thread: use std::forward where appropriate, qualify std::move calls
2023-10-13 18:51:11 +03:00
liamwhite
6486ef8c30
Merge pull request #11746 from liamwhite/relr
...
jit: add support for relr-type relocations
2023-10-12 18:23:31 -04:00
Liam
66472af2d0
kernel: mark TLS accessors as noinline for non-MSVC LTO
2023-10-12 09:16:22 -04:00
Florian
032d4938a9
yuzu: Use new setting method for stop emulation
2023-10-12 01:51:53 +02:00
Liam
b1f2242a7a
jit: add support for relr-type relocations
2023-10-11 11:13:19 -04:00
Fernando S
08876f51c0
Merge pull request #11718 from liamwhite/arm64-native-clock
...
common: add arm64 native clock
2023-10-10 11:48:06 +02:00
liamwhite
2c7e606aa4
Merge pull request #11705 from FearlessTobi/windows-sc
...
yuzu: Add desktop shortcut support for Windows (continuation of #11344 )
2023-10-08 17:11:52 -04:00
liamwhite
90d65919b5
Merge pull request #10519 from mdmrk/master
...
yuzu-qt: Track play time
2023-10-08 17:11:34 -04:00
Liam
28e25c454f
common: add arm64 native clock
2023-10-08 12:54:23 -04:00
Liam
5f51662bdb
qt: implement automatic crash dump support
2023-10-08 11:35:53 -04:00
FearlessTobi
bcc50c707c
yuzu: Add desktop shortcut support for Windows
...
Allows creating desktop shortcuts with icons for yuzu games.
Co-Authored-By: Jeroen van Schijndel <13182141+roenyroeny@users.noreply.github.com>
2023-10-07 21:24:11 -04:00
Liam
890f5f8759
gdbserver: use numeric character references for unicode
2023-10-01 19:22:08 -04:00
liamwhite
da04fbdc2e
Merge pull request #11402 from FernandoS27/depth-bias-control
...
Vulkan: Implement Depth Bias Control
2023-09-28 09:35:37 -04:00
lat9nq
ab0c149771
settings_setting: Read audio engine
...
This was mysteriously missing, likely from when I ported Citra fixes
semi-recently.
2023-09-25 22:20:24 -04:00
Fernando Sahmkow
5ea12207f3
Query Cachge: Fully rework Vulkan's query cache
2023-09-23 23:05:29 +02:00
Fernando Sahmkow
dcf5c4bec0
Vulkan: add temporary workaround for AMDVLK
2023-09-16 11:59:20 -04:00
Kelebek1
07b63b15ad
Reimplement HardwareOpus
2023-09-16 11:56:25 -04:00
liamwhite
8e8e1d4910
Merge pull request #11499 from Squall-Leonhart/bitlockerfix
...
add std::error_code for std::filesystem exceptions
2023-09-16 11:40:10 -04:00
liamwhite
f56103605e
Merge pull request #11492 from lat9nq/c-numeric-conversions
...
general: Remove uncaught usages of C++ string number conversions
2023-09-16 11:40:03 -04:00
Squall-Leonhart
e263eb1a98
add std::error_code for std::filesystem exceptions
...
Resolves a case on Windows where an unmounted bitlocker protected volume containing an assigned game directory would crash Yuzu at start.
May also resolve cases where a disconnected SMB volume causes similar crashes (needs testing)
2023-09-15 04:47:15 +10:00
lat9nq
cd0fb12c62
settings_common: Fix typo
2023-09-14 11:30:14 -04:00
GPUCode
cc2c6d8805
debug: Add renderdoc capture hotkey
2023-09-14 16:37:41 +03:00
liamwhite
4c4208c8e9
Merge pull request #11496 from liamwhite/ngc
...
ngc: implement service
2023-09-14 09:24:46 -04:00
liamwhite
8b2bb90e36
Merge pull request #11433 from liamwhite/shutdown-oopsie
...
polyfill_thread: ensure mutex was locked before signaling stop
2023-09-14 09:24:20 -04:00
Liam
08191b07e3
ngc: implement service
2023-09-14 09:14:08 -04:00
lat9nq
4fc1f4ec1a
settings_setting: Don't remove the AudioEngine workaround
2023-09-13 15:59:44 -04:00
lat9nq
8d8e9552aa
settings: Retro-port Citra Settings work
...
This has yet to be PR'd on Citra, but regressions on yuzu that have
been fixed in Citra needed to appear here.
2023-09-13 13:36:25 -04:00
liamwhite
4e96b630b4
Merge pull request #11447 from xcfrg/portable-compile-out
...
common: add a compile time option to allow disabling portable mode
2023-09-12 09:17:50 -04:00
xcfrg
6178343f3f
add a compile time option to allow disabling portable mode
2023-09-06 18:53:39 -04:00
Danila Malyutin
7f0de0f204
msvc: set warning level to /W4 globally
...
And fix a bunch of warnings
2023-09-03 18:42:10 +04:00
Liam
1da6fd9d74
polyfill_thread: ensure mutex was locked before signaling stop
2023-09-02 11:51:40 -04:00
Charles Lombardo
26d3fa2d01
android: Expose interface for getting settings from native code
...
Completely removes code related to parsing the settings file on the java side. Now all settings are accessed via NativeConfig.kt and config.cpp has been modified to be closer to the core counterpart. Since the core currently uses QSettings, we can't remove reliance from Wini yet. This also includes simplifications to each settings interface to get closer to native code and prepare for per-game settings.
2023-08-29 19:40:17 -04:00
Mario
54a5b8062e
yuzu-qt: Track play time
2023-08-26 22:20:19 -04:00
liamwhite
e392005f94
Merge pull request #11356 from lat9nq/console-mode-pg
...
general,config-qt: Present Console Mode as an enum with separate options in game properties
2023-08-26 19:15:00 -04:00
comex
4285e35375
Warnings cleanup for GCC 13 and Clang 16
...
Note: For GCC there are still a huge number of `-Warray-bounds` warnings
coming from `externals/dynarmic`. I could have added a workaround in
`externals/CMakeLists.txt` similar to what this PR does for other
externals, but given Dynarmic's close affiliation with Yuzu, it would be
better to fix it upstream.
Besides that, on my machine, this makes the build warning-free except
for some warnings from glslangValidator and AutoMoc.
Details:
- Disable some warnings in externals.
- Disable `-Wnullability-completeness`, which is a Clang warning triggered
by the Vulkan SDK where if any pointers in the header are marked
_Nullable, it wants all pointers to be marked _Nullable or _Nonnull.
Most of them are, but some aren't. Who knows why.
- `src/web_service/verify_user_jwt.cpp`: Disable another warning when
including `jwt.hpp`.
- `src/input_common/input_poller.cpp`: Add missing `override` specifiers.
- src/common/swap.h: Remove redundant `operator&`. In general, this
file declares three overloads of each operator. Using `+` as an
example, the overloads are:
- a member function for `swapped_t + integer`
- a member function for `swapped_t + swapped_t`
- a free function for `integer + swapped_t`
But for `operator&`, there was an additional free function for
`swapped_t + integer`, which was redundant with the member function.
This caused a GCC warning saying "ISO C++ says that these are
ambiguous".
2023-08-25 19:22:31 -04:00
lat9nq
8980108234
settings: Add docked mode helper function
2023-08-22 21:58:09 -04:00
lat9nq
447ec24378
general: Convert use_docked_mode to an enumeration
...
Allows some special interactions with it in the Qt frontend.
2023-08-22 16:07:52 -04:00
liamwhite
4c4ee1b088
Merge pull request #11303 from lat9nq/screenshots-configurable
...
yuzu-qt: Add configuration for screenshot resolution
2023-08-22 11:30:25 -04:00
lat9nq
e6fb92574b
yuzu-qt: Screenshots depend more on the graphics settings
2023-08-16 16:12:42 -04:00
lat9nq
9433d04259
yuzu-qt: Implement unspecified screenshot ratio
2023-08-16 00:18:47 -04:00
lat9nq
276bc80544
settings: Add AspectRatio enum, split res scale function
2023-08-15 22:41:50 -04:00
Liam
1cecd1d96a
fssystem: rework for yuzu style
2023-08-15 17:47:40 -04:00
Liam
5e3139e7c6
vfs: expand support for NCA reading
2023-08-15 17:47:25 -04:00
Liam
3e4076c2ac
general: fix apple clang build
2023-08-09 22:38:37 -04:00
liamwhite
28b236b988
Merge pull request #10839 from lat9nq/pgc-plus
...
general: Reimplement per-game configurations
2023-08-02 14:25:52 -04:00
Morph
4d018d4060
wall_clock: Increase precision requirements
...
We are providing a conversion to nanoseconds in NativeClock, which is more precise than the GPU tick.
2023-07-27 18:40:56 -04:00
liamwhite
a28a0c47f8
Merge pull request #10990 from comex/ubsan
...
Fixes and workarounds to make UBSan happier on macOS
2023-07-26 10:33:28 -04:00
lat9nq
4246d7d97d
(ui)settings: Add more runtime_modifiable settings
2023-07-25 23:14:13 -04:00
lat9nq
722821707d
backend: Remove usage of explicit operator overload
...
Causes a crash on MSVC from a race condition on application quit.
Intended to address yuzu-emu/yuzu/issues/11137
2023-07-25 22:53:58 -04:00
lat9nq
cac8b672aa
settings: Correct Linkage member impl location
2023-07-25 15:57:55 -04:00
lat9nq
9fbed50208
settings: Set GPU as default ASTC decoder
2023-07-24 16:28:13 -04:00
lat9nq
43ce3ae0d9
settings_common: Document specializations
2023-07-23 16:21:08 -04:00
lat9nq
cce6c6919c
common,qt-config: Remove usage of forward_list
2023-07-21 23:09:09 -04:00
liamwhite
c52c03b718
Merge pull request #11069 from lat9nq/mingw-no-tzdb
...
common: Use arithmetic instead of string ops to get time zone
2023-07-21 15:05:59 -04:00
lat9nq
1067bbf7b7
settings_common: Use a vector in category linkage
...
Improve storage requirements.
2023-07-21 10:56:55 -04:00
lat9nq
093b0c051d
settings: Remove sorting from log
...
Unecessary, and would run every time the settings are logged.
2023-07-21 10:56:55 -04:00
lat9nq
5c0cf58f73
common: Move global configuration state modifiers back to settings
2023-07-21 10:56:55 -04:00
lat9nq
fc4d2cbf34
settings_setting: Fix typo
2023-07-21 10:56:55 -04:00
lat9nq
b187a3c214
common,configure_system: Rename method to GetCategory
...
Fixes essentially a shadowing issue.
2023-07-21 10:56:55 -04:00
lat9nq
5e52526942
settings: Cleanup
...
Addresses review feedback
Co-authored-by: Morph <39850852+Morph1984@users.noreply.github.com>
2023-07-21 10:56:55 -04:00
lat9nq
e952af53be
core,common: Give memory layout setting an enum
...
Allows for 6GB and 8GB layouts to be selected.
2023-07-21 10:56:55 -04:00
lat9nq
5011827255
settings: Require time zone setting value for stirng
2023-07-21 10:56:55 -04:00
lat9nq
7168d30a6e
settings: Give indices to enums
2023-07-21 10:56:55 -04:00
lat9nq
42c6056deb
settings_common: Remove unncessary enum spec
2023-07-21 10:56:55 -04:00
lat9nq
8c4acf2ebb
settings_enums: Remove casting
...
Not sure how I missed this earlier, but these vectors can be constructed
using the type of the enum.
2023-07-21 10:56:55 -04:00
lat9nq
6dd818a105
settings_setting: Silence shadowing warnings
2023-07-21 10:56:55 -04:00
lat9nq
245c490e02
settings,configuration: Add a default suffix
2023-07-21 10:56:55 -04:00
lat9nq
4ffbd95fa5
settings: Define paired settings
...
settings_common: Remove unused optional
2023-07-21 10:56:55 -04:00
lat9nq
eb6fe05451
settings: Define specializations for settings
...
Suggests to a frontend how to represent each setting.
2023-07-21 10:56:55 -04:00
lat9nq
27df166abd
settings,translation: Fix time zone enum
...
Renames enum values to conform to naming convention.
2023-07-21 10:56:55 -04:00
lat9nq
ed14cd8748
settings,opengl,yuzu-qt: Fix AA, Filter maximums
...
The new enum macros don't support setting values directly.
For LastAA and LastFilter, this means we need a simpler approach to loop
around the toggle in the frontend...
2023-07-21 10:56:55 -04:00
lat9nq
f42ebb3405
settings_enums: More aggressively use macros
...
This lets us define an enum and all the textual representations
of its values in one swing. All for the price of some ugly macros.
2023-07-21 10:56:55 -04:00
lat9nq
c0e9075d6b
settings,uisettings: Remove leading underscore
2023-07-21 10:56:55 -04:00
lat9nq
e09f6ee530
settings: Move speed_limit to core
2023-07-21 10:56:55 -04:00
lat9nq
a7a32ab8a0
common,yuzu-qt: Avoid explicit instantiation on old clang
...
Clang versions < 15 have compile issues with explicit instantiation.
Disable it for these versions.
2023-07-21 10:56:55 -04:00
lat9nq
c2b577b364
settings_setting: Fix MSVC error
2023-07-21 10:56:55 -04:00
lat9nq
859dff4c27
common,yuzu-qt: GCC warning silences
...
Fixes -Wshadow, -Wdeprecated, and catch by copy rather than by ref.
2023-07-21 10:56:55 -04:00
lat9nq
98eb39ee74
settings: Delete cpu_accuracy_first_time
...
Almost a 2 year old migration setting now
2023-07-21 10:56:54 -04:00
lat9nq
8addc74f4f
settings: Document BasicSetting, add Ranged
2023-07-21 10:56:54 -04:00
lat9nq
8d4c466cde
settings: Move IsConfiguringGlobal to settings_common
2023-07-21 10:56:54 -04:00
lat9nq
e0d6f3435e
settings: Move some simple data to BasicSetting
...
Reduces the need for the compiler to duplicate this code, by about
100KB executable size.
2023-07-21 10:56:54 -04:00
lat9nq
9eee631154
settings_setting: Fix errors
...
ToString didn't have a constexpr if statement where needed.
Canonicalize missed an else, causing unreachable code error on MSVC.
2023-07-21 10:56:54 -04:00
lat9nq
5a2b7f951d
(ui,)settings: Use explicit instantiation
...
Reduces compile times a tad on clang.
2023-07-21 10:56:54 -04:00
lat9nq
5574e68b57
settings: Remove redundant false literals
2023-07-21 10:56:54 -04:00
lat9nq
9d6de208a1
general: Add typeinfo where needed
...
Using typeid without including typeinfo first produces an ill-formed program.
2023-07-21 10:56:54 -04:00
lat9nq
9d3715a68c
settings_enums: Add const type where needed
2023-07-21 10:56:54 -04:00
lat9nq
9ba1120d59
settings: yuzu is not capitalized why is it capitalized stop no bad
2023-07-21 10:56:54 -04:00
lat9nq
c97378bbf1
settings: Reorder
...
Groups graphics audio and system settings together in a way that
reflects the frontend. This also just conceptually groups them more
nicely than they were.
2023-07-21 10:56:54 -04:00
lat9nq
cfa06e42e6
settings: Report all contained settings values
...
Also adds a couple characters that denotes the state of the setting.
M for modified, or not default.
C for custom, in context of per-game settings.
2023-07-21 10:56:54 -04:00
lat9nq
d344ecbee1
settings_enums: Cannonicalize settings names
...
Gives every option of the enums a string literal via a macro.
2023-07-21 10:56:54 -04:00
lat9nq
78f92086ca
settings,general: Rename non-confirming enums
2023-07-21 10:56:54 -04:00
lat9nq
1eb6680ca3
settings: Make volume runtime-configurable
2023-07-21 10:56:07 -04:00
lat9nq
d39bfc646f
configure_audio: Implement ui generation
...
Needs a considerable amount of management specific to some of
the comoboboxes due to the audio engine configuration.
general: Partial audio config implmentation
configure_audio: Implement ui generation
Needs a considerable amount of management specific to some of
the comoboboxes due to the audio engine configuration.
general: Partial audio config implmentation
settings: Make audio settings as enums
2023-07-21 10:56:07 -04:00
lat9nq
a61beb7123
settings: Split enums to new file
2023-07-21 10:56:07 -04:00
lat9nq
e24838dabc
settings, uisettings: Initialize linkage counter
2023-07-21 10:56:07 -04:00
lat9nq
689efc9175
configure_system: Implement with for loop
2023-07-21 10:56:07 -04:00
lat9nq
0dcb7fe1ce
settings: Move runtime and save to parameters
...
These don't need to be whole new types.
2023-07-21 10:56:07 -04:00
lat9nq
793d6c2a85
settings: Add UiGeneral class
2023-07-21 10:56:07 -04:00
lat9nq
f9310ec1e8
configuration: Implement slider
2023-07-21 10:56:07 -04:00
lat9nq
cc4dbb8c8c
settings: Define base renderer runtime modifiable settings
2023-07-21 10:56:07 -04:00
lat9nq
11c4168adb
settings: Add anisotropy mode enum
2023-07-21 10:56:07 -04:00
lat9nq
eae5e1f6f3
shared_translation: Finish using int ids
2023-07-21 10:56:07 -04:00
lat9nq
825e8f0611
settings,uisettings: Add IDs to settings
2023-07-21 10:56:07 -04:00
lat9nq
d7ffd33ca0
configure_graphics: Partial runtime implementation
2023-07-21 10:56:07 -04:00
lat9nq
c7e5ead869
settings: Recategorize a bit
...
Will help with generating config UI later.
2023-07-21 10:56:07 -04:00
lat9nq
4a5f3e4733
configure_graphics_advance: Generate UI at runtime
...
We can iterate through the AdvancedGraphics settings and generate the UI
during runtime. This doesn't help runtime efficiency, but it helps a ton
in reducing the amount of work a developer needs in order to add a new
setting.
2023-07-21 10:56:07 -04:00