Commit graph

27280 commits

Author SHA1 Message Date
Maran Br
3cc4e5b0dc Fixes second controller not detected in DKTF and possibly other games
All checks were successful
eden-build / source (push) Successful in 4m37s
eden-build / linux (push) Successful in 28m3s
eden-build / android (push) Successful in 17m43s
eden-build / windows (msvc) (push) Successful in 53m32s
2025-05-09 14:20:53 +00:00
78d07631f3 Vulkan 1.4 and New Extensions (#93)
Some checks failed
eden-build / windows (msvc) (push) Has been cancelled
eden-build / linux (push) Has been cancelled
eden-build / android (push) Has been cancelled
eden-build / source (push) Has been cancelled
- Add descriptor_indexing, VIDS, provoking_vertex
- Fix up EDS
- Implement VK 1.4

Co-authored-by: JPikachu <jpikachu.eden@gmail.com>
Reviewed-on: #93
Co-authored-by: swurl <swurl@swurl.xyz>
Co-committed-by: swurl <swurl@swurl.xyz>
2025-05-09 14:19:51 +00:00
ea921db65d Some fixes before Release (#92)
All checks were successful
eden-build / source (push) Successful in 4m6s
eden-build / linux (push) Successful in 25m43s
eden-build / android (push) Successful in 16m27s
eden-build / windows (msvc) (push) Successful in 56m35s
Co-authored-by: MrPurple666 <antoniosacramento666@gmail.com>
Reviewed-on: #92
2025-05-08 23:03:52 +00:00
20cc867c62 User Data Migration from Citron, Sudachi, and Yuzu (#91)
Some checks failed
eden-build / linux (push) Has been cancelled
eden-build / android (push) Has been cancelled
eden-build / windows (msvc) (push) Has been cancelled
eden-build / source (push) Has been cancelled
Includes citron, sudachi, yuzu

currently broken, because the eden dir is always made early?

Signed-off-by: swurl <swurl@swurl.xyz>

Reviewed-on: #91
Co-authored-by: swurl <swurl@swurl.xyz>
Co-committed-by: swurl <swurl@swurl.xyz>
2025-05-08 22:16:07 +00:00
4632ab2912 Runtime option for flushing logs by line (#90)
Some checks failed
eden-build / windows (msvc) (push) Has been cancelled
eden-build / source (push) Has been cancelled
eden-build / linux (push) Has been cancelled
eden-build / android (push) Has been cancelled
Signed-off-by: swurl <swurl@swurl.xyz>
Reviewed-on: #90
Co-authored-by: swurl <swurl@swurl.xyz>
Co-committed-by: swurl <swurl@swurl.xyz>
2025-05-08 06:20:20 +00:00
32a9e4b0bb release workflow (#87)
Some checks failed
eden-build / windows (msvc) (push) Has been cancelled
eden-build / linux (push) Has been cancelled
eden-build / android (push) Has been cancelled
eden-build / source (push) Has been cancelled
Signed-off-by: swurl <swurl@swurl.xyz>
Reviewed-on: #87
Co-authored-by: swurl <swurl@swurl.xyz>
Co-committed-by: swurl <swurl@swurl.xyz>
2025-05-08 06:19:58 +00:00
a19c93fbf8 Firmware 20.0.0 Initial Implementation & Android: Uninstall Firmware Button
Some checks failed
eden-build / source (push) Successful in 4m15s
eden-build / linux (push) Successful in 23m12s
eden-build / windows (msvc) (push) Has been cancelled
eden-build / android (push) Successful in 16m14s
Co-authored-by: Pavel Barabanov <pavelbarabanov94@gmail.com>
Reviewed-on: #89
Co-authored-by: crueter <crueter@noreply.localhost>
Co-committed-by: crueter <crueter@noreply.localhost>
2025-05-07 20:15:25 +00:00
Briar
b2bfee2de8 Android: A few fixes
Some checks failed
eden-build / source (push) Successful in 4m12s
eden-build / linux (push) Successful in 23m13s
eden-build / android (push) Successful in 14m48s
eden-build / windows (msvc) (push) Has been cancelled
- Fix icon size
- Change some description strings

Reviewed-on: #88
Co-authored-by: Briar <205427297+icy-briar@users.noreply.github.com>
Co-committed-by: Briar <205427297+icy-briar@users.noreply.github.com>
2025-05-07 18:21:57 +00:00
Briar
a10ca9e40e Fix bAd commit revert
Some checks failed
eden-build / linux (push) Has been cancelled
eden-build / android (push) Has been cancelled
eden-build / source (push) Has been cancelled
eden-build / windows (msvc) (push) Has been cancelled
2025-05-06 17:59:19 -07:00
2133c04d20 Update FFmpeg: (#84)
Update: 9c1294eadd → 62e1c44263
Reviewed-on: #84

Thanks JPikachu for caring about this.
Co-authored-by: JPikachu <jpikachu.eden@gmail.com>
Co-committed-by: JPikachu <jpikachu.eden@gmail.com>
2025-05-06 17:59:19 -07:00
143d74fc78 revert 8390c7dff7
revert Add rasterizer_accelerated (#79)

Credit: Antique - [Sudachi] Dev (https://sudachi.emuplace.app/)
2025-05-06 17:59:19 -07:00
c2cfd71078 Add rasterizer_accelerated (#79)
Credit: Antique - [Sudachi] Dev (https://sudachi.emuplace.app/)
Reviewed-on: #79
Co-authored-by: JPikachu <jpikachu@noreply.localhost>
Co-committed-by: JPikachu <jpikachu@noreply.localhost>
2025-05-06 17:58:48 -07:00
5b08d7ef3d Readd Revert Problematic Commits
All checks were successful
eden-build / source (push) Successful in 4m2s
eden-build / linux (push) Successful in 22m11s
eden-build / android (push) Successful in 15m3s
eden-build / windows (msvc) (push) Successful in 57m47s
2025-05-04 08:24:54 +00:00
14d8e99651 revert Remove problematic commits
All checks were successful
eden-build / source (push) Successful in 3m55s
eden-build / linux (push) Successful in 22m49s
eden-build / android (push) Successful in 14m51s
eden-build / windows (msvc) (push) Successful in 58m7s
revert Remove problematic commits
2025-05-04 08:17:03 +00:00
MrPurple666
b2371163ae Remove problematic commits
Some checks failed
eden-build / source (pull_request) Has been skipped
eden-build / linux (pull_request) Successful in 23m53s
eden-build / android (pull_request) Successful in 19m24s
eden-license / license-header (pull_request_target) Failing after 29s
eden-build / windows (msvc) (pull_request) Successful in 58m40s
eden-build / android (push) Waiting to run
eden-build / source (push) Successful in 4m6s
eden-build / linux (push) Has been cancelled
eden-build / windows (msvc) (push) Has been cancelled
2025-05-03 16:01:11 -03:00
Briar
0d206c99a7 android: Add initial frontend for LAN network rooms (#76)
All checks were successful
eden-build / source (push) Successful in 4m21s
eden-build / linux (push) Successful in 24m46s
eden-build / android (push) Successful in 23m29s
eden-build / windows (msvc) (push) Successful in 1h11m38s
Reviewed-on: #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
Pavel Barabanov
76fd41dc5d renamed SetTouchScreenOutputRanges to SetTouchScreenOutputRanges [20.0.0+]
All checks were successful
eden-build / source (push) Successful in 4m40s
eden-build / linux (push) Successful in 23m43s
eden-build / android (push) Successful in 19m7s
eden-build / windows (msvc) (push) Successful in 1h6m17s
2025-05-03 06:26:24 +03:00
Pavel Barabanov
400ce804f0 started adding services for firmware 20.0.0 without implementation
Some checks failed
eden-build / android (push) Waiting to run
eden-build / source (push) Successful in 4m57s
eden-build / linux (push) Has been cancelled
eden-build / windows (msvc) (push) Has been cancelled
2025-05-03 06:15:23 +03:00
Briar
3fe0cbe3fb renderer_vulkan: Use raw surface handles and improve release logic (#75)
All checks were successful
eden-build / source (push) Successful in 4m52s
eden-build / linux (push) Successful in 24m55s
eden-build / android (push) Successful in 17m21s
eden-build / windows (msvc) (push) Successful in 1h8m31s
Should fix or at least lessen the crashes when leaving runtime emulation on both Android / PC
Also, may have improved the time required to leave the game

Reviewed-on: #75
Co-authored-by: Briar <205427297+icy-briar@users.noreply.github.com>
Co-committed-by: Briar <205427297+icy-briar@users.noreply.github.com>
2025-05-02 18:42:58 +00:00
0d034ba584 Add LRU toggle in Android settings (#72)
All checks were successful
eden-build / source (push) Successful in 4m15s
eden-build / linux (push) Successful in 22m13s
eden-build / android (push) Successful in 15m3s
eden-build / windows (msvc) (push) Successful in 58m23s
Reviewed-on: #72
2025-05-01 07:23:15 +00:00
c9f8594bb9 Revert "Add more audio logging to pinpoint issues better"
Some checks failed
eden-build / source (push) Successful in 4m11s
eden-build / android (push) Has been cancelled
eden-build / linux (push) Has been cancelled
eden-build / windows (msvc) (push) Has been cancelled
This reverts commit 01b790ff29.
2025-04-30 18:21:01 -07:00
01b790ff29 Add more audio logging to pinpoint issues better
Some checks failed
eden-build / android (push) Has been cancelled
eden-build / source (push) Has been cancelled
eden-build / windows (msvc) (push) Has been cancelled
eden-build / linux (push) Failing after 8m56s
2025-04-30 18:01:26 -07:00
MrPurple666
c0bc9c3f51 Merge https://git.eden-emu.dev/eden-emu/eden
Some checks failed
eden-build / source (pull_request) Has been skipped
eden-build / linux (pull_request) Successful in 22m14s
eden-build / android (pull_request) Successful in 15m11s
eden-license / license-header (pull_request_target) Failing after 17s
eden-build / windows (msvc) (pull_request) Successful in 58m16s
2025-04-30 16:19:06 -03:00
MrPurple666
8d3ca74664 Use a different approach for the LRU toggle 2025-04-30 16:11:15 -03:00
MrPurple666
fe8ea33a4e Add toggle for LRU 2025-04-30 04:05:45 -03:00
MrPurple666
3b66092a5b Fix some issues in RAII
All checks were successful
eden-build / source (push) Successful in 4m10s
eden-build / linux (push) Successful in 22m42s
eden-build / android (push) Successful in 14m31s
eden-build / windows (msvc) (push) Successful in 58m27s
2025-04-30 03:57:11 -03:00
JPikachu
bc5d36778d service: sm/kernel/loader: Implement QueryPointerBufferSize, automatic pointer buffer sizing, and SM service improvements
Some checks are pending
eden-build / source (push) Waiting to run
eden-build / windows (msvc) (push) Waiting to run
eden-build / linux (push) Waiting to run
eden-build / android (push) Waiting to run
This commit introduces multiple improvements to IPC handling and system management services, enhancing game compatibility and emulator stability.

--- 1. Fully Implemented QueryPointerBufferSize Service:
- Exposes the per-process IPC pointer buffer size through `QueryPointerBufferSize` instead of returning stubbed values.
- Added `m_pointer_buffer_size` field to `KProcess`, initialized with a safe default (0x8000).
- Introduced getter and setter methods (`GetPointerBufferSize()` / `SetPointerBufferSize()`).
- Registered new handler in `sm_controller` for handling QueryPointerBufferSize requests.
- Ensures accurate buffer size reporting for games relying on this service.

--- 2. Automatic Pointer Buffer Sizing Per-Game:
- Automatically determines heap size by parsing `main.npdm` from the game’s ExeFS:
  - Heap size > 1 GiB → pointer buffer size set to `0x10000`.
  - Heap size > 512 MiB → pointer buffer size set to `0xC000`.
  - Otherwise, defaults to `0x8000`.
- Gracefully handles missing or malformed `main.npdm` by falling back to default settings.
- Automatically configures pointer buffer size during `AppLoader_NCA::Load`.
- Added logging for heap size detection and buffer size configuration for easier debugging.

--- 3. SM Service Improvements:
- Added full implementation of `QueryPointerBufferSize` within the SM service framework.
- Cleaned up stubbed methods and ensured correct domain handling.
- Registered new service commands (e.g., `SetPointerBufferSize` and `QueryPointerBufferSize`) in `sm_controller`.
- Improved session handling with proper conversion to domain objects where necessary.

--- Benefits:
- Greatly improves compatibility with games that require larger IPC pointer buffers
- Eliminates the need for manual per-game pointer buffer overrides.
- More accurate emulation of Switch system services, improving stability for both commercial titles and homebrew.
- Provides cleaner logging for easier debugging and maintenance.
- Future-proofs IPC handling for upcoming titles with higher memory demands.

--- Additional Notes:
- Default pointer buffer size remains 0x8000 for smaller titles or if heap size cannot be determined.
- Falls back to safe defaults without affecting overall emulator performance.
- All new service calls properly registered and integrated without breaking existing functionality.
2025-04-30 06:35:22 +00:00
JPikachu
b2dcc2d0d2 vulkan_device: Fully disable dynamic state extensions/features when dyna_state = 0
Some checks are pending
eden-build / source (push) Waiting to run
eden-build / windows (msvc) (push) Waiting to run
eden-build / linux (push) Waiting to run
eden-build / android (push) Waiting to run
If the user selects dynamic state = 0, force-disable all Vulkan dynamic state extensions and related struct fields.
This ensures compatibility with drivers and simplifies shader pipeline logic.

Also logs all removals for clarity.
2025-04-30 06:34:49 +00:00
82d2f14f48 fix syntax
Signed-off-by: swurl <swurl@swurl.xyz>
2025-04-30 06:34:49 +00:00
JPikachu
521312cf8f vulkan_device: Remove must_emulate_scaled_formats = false for all Qualcomm and Arm processes 2025-04-30 06:34:49 +00:00
JPikachu
17fd5aa3b6 vulkan_device: Dynamically control scaled format emulation based on dynamic state setting fixing the "0" option
If the setting dyna_state is set to 0 (dynamic state disabled), must_emulate_scaled_formats is forced "true" for proper rendering.
If dyna_state is set to 1, 2, or 3 (dynamic state enabled), must_emulate_scaled_formats is forced "false" for proper dyna-state use.

This change applies globally after all device-specific quirks and is logged clearly at boot for easier debugging.
2025-04-30 06:34:49 +00:00
JPikachu
77787ad55a implement: New API for Multiplayer Support
Some checks are pending
eden-build / source (push) Waiting to run
eden-build / windows (msvc) (push) Waiting to run
eden-build / linux (push) Waiting to run
eden-build / android (push) Waiting to run
2025-04-30 06:34:25 +00:00
Pavel Barabanov
d6e17f1f9c Add USE AUTO STUB to Android
All checks were successful
eden-build / source (push) Successful in 4m21s
eden-build / linux (push) Successful in 22m22s
eden-build / android (push) Successful in 16m19s
eden-build / windows (msvc) (push) Successful in 58m18s
2025-04-30 03:00:46 +03:00
Pavel Barabanov
49fb0ce348 Remove the stub for GetCradleFwVersion 2025-04-30 02:52:04 +03:00
MrPurple666
01db6e61b4 Initial MMO implementation
Some checks failed
eden-build / source (pull_request) Has been skipped
eden-build / linux (pull_request) Successful in 22m18s
eden-build / android (pull_request) Successful in 14m57s
eden-license / license-header (pull_request_target) Failing after 21s
eden-build / windows (msvc) (pull_request) Successful in 59m2s
eden-build / linux (push) Has been cancelled
eden-build / android (push) Has been cancelled
eden-build / windows (msvc) (push) Has been cancelled
eden-build / source (push) Has been cancelled
MMO (Multithreaded Memory Operations)
2025-04-28 16:44:35 -03:00
MrPurple666
9efdf44a75 Better FastMemcpy and FastMemset
Use 16-byte copy paths
2025-04-28 16:44:21 -03:00
MrPurple666
b51a8294d9 Use 4MB cache size instead of 1MB
Some checks failed
eden-build / source (pull_request) Has been skipped
eden-build / windows (msvc) (pull_request) Has been cancelled
eden-build / android (pull_request) Has been cancelled
eden-build / linux (pull_request) Has been cancelled
eden-license / license-header (pull_request_target) Has been cancelled
2025-04-28 16:38:44 -03:00
MrPurple666
4feb1a5afe Some RAII fixes 2025-04-28 16:27:54 -03:00
MrPurple666
4901eb17db Initial RAII implementation 2025-04-28 16:27:42 -03:00
MrPurple666
4d682a6793 Replace std::memcpy/memset with intrinsics on known sizes 2025-04-28 16:27:30 -03:00
MrPurple666
674cc6f6be Revert some wip changes
Some checks failed
eden-build / source (pull_request) Has been skipped
eden-build / linux (pull_request) Successful in 22m6s
eden-build / android (pull_request) Successful in 14m47s
eden-license / license-header (pull_request_target) Failing after 14s
eden-build / windows (msvc) (pull_request) Has been cancelled
2025-04-28 16:14:42 -03:00
013b8d8b28
Dynamic State Fixes (#57)
Some checks failed
eden-build / source (push) Has been cancelled
eden-build / windows (msvc) (push) Has been cancelled
eden-build / linux (push) Has been cancelled
eden-build / android (push) Has been cancelled
- 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: #57
Co-authored-by: swurl <swurl@swurl.xyz>
Co-committed-by: swurl <swurl@swurl.xyz>
2025-04-27 17:07:49 -04:00
1b25d9e604
updated build guide links (#60)
Some checks failed
eden-build / source (push) Successful in 4m5s
eden-build / linux (push) Successful in 22m13s
eden-build / android (push) Successful in 14m37s
eden-build / windows (msvc) (push) Has been cancelled
Signed-off-by: swurl <swurl@swurl.xyz>
2025-04-26 18:32:42 -04:00
Bix
42f9b4c0bd Some slight changes to the readme. (#59)
Some checks failed
eden-build / source (push) Has been cancelled
eden-build / windows (msvc) (push) Has been cancelled
eden-build / linux (push) Has been cancelled
eden-build / android (push) Has been cancelled
Just a small fix to the readme, I tested it by the way.
Fixed "Levey" to "LaVey"
Made shortened words complete.
Declared Language.
Used "en-gb" complaint Language.

Signed-off-by: Bix <xq9zp7f2@proton.me>

Reviewed-on: #59
Co-authored-by: Bix <xq9zp7f2@proton.me>
Co-committed-by: Bix <xq9zp7f2@proton.me>
2025-04-26 19:07:48 +00:00
36d917a3c9
fix cmake formatting
Some checks failed
eden-build / source (push) Successful in 4m20s
eden-build / linux (push) Successful in 22m7s
eden-build / android (push) Failing after 18m27s
eden-build / windows (msvc) (push) Successful in 1h5m58s
Signed-off-by: swurl <swurl@swurl.xyz>
2025-04-24 16:19:38 -04:00
fdf3a31f6c
Merge branch 'game-warnings'
Some checks failed
eden-build / source (push) Successful in 4m15s
eden-build / android (push) Has been cancelled
eden-build / linux (push) Has been cancelled
eden-build / windows (msvc) (push) Has been cancelled
Closes #55

Signed-off-by: swurl <swurl@swurl.xyz>
2025-04-24 16:00:29 -04:00
1d932cec61
Merge branch 'log-by-line'
Some checks are pending
eden-build / source (push) Waiting to run
eden-build / windows (msvc) (push) Waiting to run
eden-build / linux (push) Waiting to run
eden-build / android (push) Waiting to run
Signed-off-by: swurl <swurl@swurl.xyz>
2025-04-24 15:58:49 -04:00
9819f6c1bc Merge pull request 'Add configurations for VkExtendedDynamicState extensions' (#53) from crueter/eden:dynamic-state-config into master
Some checks are pending
eden-build / source (push) Waiting to run
eden-build / windows (msvc) (push) Waiting to run
eden-build / linux (push) Waiting to run
eden-build / android (push) Waiting to run
Reviewed-on: #53
2025-04-24 19:55:58 +00:00
c494c4a094 Merge pull request 'Fix Qt <6.7 build and allow speed limit to be saved' (#52) from crueter/eden:fix-limit-speed into master
Some checks are pending
eden-build / source (push) Waiting to run
eden-build / windows (msvc) (push) Waiting to run
eden-build / linux (push) Waiting to run
eden-build / android (push) Waiting to run
Reviewed-on: #52
2025-04-24 19:55:16 +00:00
3cbb80b123 Merge pull request 'shader compiler: Ensure all clip distances are initialized when used' (#48) from JPikachu/eden:EOW into master
Some checks are pending
eden-build / source (push) Waiting to run
eden-build / windows (msvc) (push) Waiting to run
eden-build / linux (push) Waiting to run
eden-build / android (push) Waiting to run
Reviewed-on: #48
2025-04-24 19:54:59 +00:00