Commit graph

2134 commits

Author SHA1 Message Date
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
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: eden-emu/eden#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
7bd606bece Merge https://git.eden-emu.dev/eden-emu/eden 2025-04-30 16:19:06 -03:00
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
37a508c3ba Add USE AUTO STUB to Android 2025-04-30 03:00:46 +03:00
b695ca5a2a Revert some wip changes 2025-04-28 16:14:42 -03:00
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: eden-emu/eden#57
Co-authored-by: swurl <swurl@swurl.xyz>
Co-committed-by: swurl <swurl@swurl.xyz>
2025-04-27 17:07:49 -04:00
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: eden-emu/eden#53
2025-04-24 19:55:58 +00:00
83cf9774e1 switch dynamic state to a slider
Signed-off-by: swurl <swurl@swurl.xyz>
2025-04-24 12:08:01 -04:00
9cb03cd007 Log by line compilation option
Signed-off-by: swurl <swurl@swurl.xyz>
2025-04-24 10:58:22 -04:00
1949e7c438 Add dynamic state extension configs
Signed-off-by: swurl <swurl@swurl.xyz>
2025-04-23 20:57:53 -04:00
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
38737f26e5 Optimize SpiriV output 2025-04-12 22:54:32 -03:00
bd2f935c4d delete "enable" in setting.h 2025-04-12 22:54:32 -03:00
be2e838f0d FRAME_SKIPPING and FRAME_INTERPOLATION only android and delete "enable" 2025-04-12 22:54:32 -03:00
70c2439d8c Add sync core speed 2025-04-12 22:54:32 -03:00
d25bea5762 Android: add FRAME_SKIPPING and FRAME_INTERPOLATION 2025-04-12 22:54:32 -03:00
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