Commit Graph

27585 Commits

Author SHA1 Message Date
Shinmegumi c8d6f23129
[vk] Bring Vulkan closer to Spec (#180)
The changes noted below bring Vulkan closer to 1.3 spec and get rid of validation errors and enable us to properly use one or two more functions.

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/180
Reviewed-by: crueter <crueter@eden-emu.dev>
Reviewed-by: Maufeat <sahyno1996@gmail.com>
Co-authored-by: Shinmegumi <shinmegumi@eden-emu.dev>
Co-committed-by: Shinmegumi <shinmegumi@eden-emu.dev>
2025-08-13 18:02:05 +02:00
weakboson 383fb23348
Revert image view usage flags regression introduced in 492d3856e8. (#241)
Maxwell format `VK_FORMAT_A8B8G8R8_SRGB_PACK32` does not support storage. However a `A8B8G8R8_UNORM` view is created for a image with that format which supports storage. The previous patch ignored image view format usage making it impossible for the pipeline to render to the texture.
This commit reverts the image usage override. However, there is still a mismatch between image format usage and image view format usage.

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/241
Reviewed-by: Shinmegumi <shinmegumi@eden-emu.dev>
Co-authored-by: weakboson <weakboson@quantum-field.net>
Co-committed-by: weakboson <weakboson@quantum-field.net>
2025-08-13 15:35:57 +02:00
Maufeat 89d40c6302
[vk, texture_cache] MSAA ensure no more crash (#245)
> The shared_ptr<Image> capture ensures the temporary image outlives all queued GPU work (both the upload/download step and the MSAA compute copy). Without this, drivers read freed memory
> The temp image always has STORAGE & TRANSFER usage, matching what the compute MSAA path actually binds.
> Since this only a temp fix ontop of the previous commit, we only use the MSAA path for color; depth/stencil still use the original safe route.
> Should still be reworked though, as seen in the other MSAA commis that are open.

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/245
Reviewed-by: crueter <crueter@eden-emu.dev>
Reviewed-by: Shinmegumi <shinmegumi@eden-emu.dev>
Co-authored-by: Maufeat <sahyno1996@gmail.com>
Co-committed-by: Maufeat <sahyno1996@gmail.com>
2025-08-13 01:42:56 +02:00
MaranBr 234e41193e
[desktop] Fix Default theme on Windows 10 (#246)
This fixes the default theme on Windows 10. Regression introduced in commit: [3f02d77](3f02d7713f)

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/246
Reviewed-by: crueter <crueter@eden-emu.dev>
Co-authored-by: MaranBr <maranbr@outlook.com>
Co-committed-by: MaranBr <maranbr@outlook.com>
2025-08-12 20:01:55 +02:00
crueter 1551387739
[cmake, frontend] feat: CPMUtil + dependency viewer (#238)
- creates a CPMUtil.cmake module that makes my job 10x easier and removes boilerplate
- also lets us generate dependency names/versions at compiletime, thus letting the frontend display each dependency's versions.

Signed-off-by: crueter <crueter@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/238
2025-08-11 22:27:29 +02:00
Maufeat 3f02d7713f
[qt] Fix title bar for windows being forced to light theme (#236)
Fixed the title bar being forced to light theme and properly handle it the qt6.5 way
See: https://stackoverflow.com/a/78854851

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/236
Reviewed-by: crueter <crueter@eden-emu.dev>
Co-authored-by: Maufeat <sahyno1996@gmail.com>
Co-committed-by: Maufeat <sahyno1996@gmail.com>
2025-08-10 22:14:12 +02:00
Guo Yunhe bdf5674d7e
[cmake] use CPM.cmake without download (#234)
openSUSE build environment doesn't have internet access. So all downloads must be skipped.

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/234
Co-authored-by: Guo Yunhe <i@guoyunhe.me>
Co-committed-by: Guo Yunhe <i@guoyunhe.me>
2025-08-09 18:47:25 +02:00
crueter 6b8408ef50
[android] fix light theming (#230)
Signed-off-by: crueter <crueter@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/230
Reviewed-by: Lizzie <lizzie@eden-emu.dev>
2025-08-09 01:09:01 +02:00
crueter a3cf780a3a
[dynarmic] fix pch gen (#231)
Signed-off-by: lizzie <lizzie@eden-emu.dev>
Co-authored-by: lizzie <lizzie@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/231
Reviewed-by: Lizzie <lizzie@eden-emu.dev>
2025-08-09 01:08:55 +02:00
crueter 0705ba0b47
[frontend] add revolt links to about (#227)
Signed-off-by: crueter <crueter@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/227
Reviewed-by: Lizzie <lizzie@eden-emu.dev>
2025-08-08 01:56:42 +02:00
crueter 982b171f30
[desktop] fix random qt annoyances (#226)
Removes that silly QLayout message and improves consistency thereof for
other QLayouts

Still work to be done but this is all that's needed rn

Signed-off-by: crueter <crueter@eden-emu.dev>

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/226
Reviewed-by: Shinmegumi <shinmegumi@eden-emu.dev>
2025-08-08 01:25:00 +02:00
crueter ae89b5e1b9
[android] fix regressions from redesign + room (#197)
- Don't set room address during creation
- Fixed per-game config not properly unloading
- Fixed invisible thumb on switch setting
- Fixed north app bar not coloring

Signed-off-by: crueter <crueter@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/197
Reviewed-by: Shinmegumi <shinmegumi@eden-emu.dev>
2025-08-07 22:29:47 +02:00
crueter d499693c29
[cmake] don't explicitly set archflags by default (#220)
Closes #216

Signed-off-by: crueter <crueter@eden-emu.dev>

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/220
Reviewed-by: Shinmegumi <shinmegumi@eden-emu.dev>
2025-08-07 22:09:02 +02:00
crueter 1f5b4cce6e
[externals] revert oaknut to Merry's last version (#223)
thanks wunkolo, very cool

Signed-off-by: crueter <crueter@eden-emu.dev>

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/223
Reviewed-by: Shinmegumi <shinmegumi@eden-emu.dev>
2025-08-07 22:08:05 +02:00
lizzie 6b7cac003a
[deps] use --enable-pic for ffmpeg (#214)
Signed-off-by: lizzie <lizzie@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/214
Reviewed-by: crueter <crueter@eden-emu.dev>
Co-authored-by: lizzie <lizzie@eden-emu.dev>
Co-committed-by: lizzie <lizzie@eden-emu.dev>
2025-08-07 22:05:51 +02:00
lizzie 99426f064c
[docs] freebsd does not have pkg-config since FBSD12 (#222)
Signed-off-by: lizzie <lizzie@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/222
Reviewed-by: crueter <crueter@eden-emu.dev>
Co-authored-by: lizzie <lizzie@eden-emu.dev>
Co-committed-by: lizzie <lizzie@eden-emu.dev>
2025-08-07 22:05:36 +02:00
lizzie 37618e1043
[dist] fix icons (#221)
Signed-off-by: lizzie <lizzie@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/221
Reviewed-by: crueter <crueter@eden-emu.dev>
Co-authored-by: lizzie <lizzie@eden-emu.dev>
Co-committed-by: lizzie <lizzie@eden-emu.dev>
2025-08-07 22:05:21 +02:00
crueter 6b33b5a734
revolt (#213)
Signed-off-by: crueter <crueter@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/213
Reviewed-by: Lizzie <lizzie@eden-emu.dev>
2025-08-07 05:44:51 +02:00
crueter dc444c7af9
[docs] update Linux build guide to include private for debian (#191)
Signed-off-by: crueter <crueter@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/191
Reviewed-by: Lizzie <lizzie@eden-emu.dev>
2025-08-06 07:48:41 +02:00
crueter a4f845b98d
[meta] readme updates (#206)
Signed-off-by: crueter <crueter@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/206
Reviewed-by: Lizzie <lizzie@eden-emu.dev>
2025-08-06 07:48:28 +02:00
crueter f1e74f6855
[meta] remove MicroProfile (#185)
Signed-off-by: crueter <crueter@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/185
Reviewed-by: Lizzie <lizzie@eden-emu.dev>
2025-08-06 07:48:11 +02:00
crueter dbbe5b3328
[android] Early Release Fences, v2 (#190)
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/190
Reviewed-by: Shinmegumi <shinmegumi@eden-emu.dev>
2025-08-05 23:16:57 +02:00
MaranBr 0102f548d0
[host1x] Update FFmpeg to 7.1.1 and add support for NVidia CUDA on Linux (#207)
This updates FFmpeg to 7.1.1 and add support for NVidia CUDA on Linux, following the same version as Android and Windows to maintain a standard across platforms.

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/207
Co-authored-by: MaranBr <maranbr@outlook.com>
Co-committed-by: MaranBr <maranbr@outlook.com>
2025-08-05 23:16:15 +02:00
crueter 9634342100
[cmake] fix regressions intr. CPM and packaging (#201)
- don't install dynarmic, mcl, unordered_dense files
- fix bundled qt w/ quazip
- don't install libyuzu-room.a
- don't link to VUH

Signed-off-by: crueter <crueter@eden-emu.dev>

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/201
Reviewed-by: Shinmegumi <shinmegumi@eden-emu.dev>
2025-08-04 21:57:01 +02:00
crueter 41f0fa97ca
[dynarmic] revert bad changes (#202)
This reverts commit 56acd4041a.

pr needs rebase and fix, audio broke

Signed-off-by: crueter <crueter@eden-emu.dev>

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/202
Reviewed-by: Lizzie <lizzie@eden-emu.dev>
Signed-off-by: crueter <crueter@eden-emu.dev>
2025-08-04 15:21:54 -04:00
lizzie 76d0659ffe
[docs] IDE setup for vscode, better wording in guideline (#200)
Signed-off-by: lizzie <lizzie@eden-emu.dev>
Co-authored-by: crueter <crueter@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/200
Reviewed-by: crueter <crueter@eden-emu.dev>
Co-authored-by: lizzie <lizzie@eden-emu.dev>
Co-committed-by: lizzie <lizzie@eden-emu.dev>
2025-08-04 18:48:32 +02:00
lizzie 5ee06b2d75
[dist] update icons + script to update icons (#198)
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/198
Reviewed-by: crueter <crueter@eden-emu.dev>
Co-authored-by: lizzie <lizzie@eden-emu.dev>
Co-committed-by: lizzie <lizzie@eden-emu.dev>
2025-08-04 18:42:05 +02:00
wildcard 41ffa5a342
[core, nce] module_id cache key handling (#195)
Uses Module_id plus offset for cache key, Module_id is unique to each module. Also passes the module_id everytime new patcher is created in case the module is too big.

Co-authored-by: crueter <crueter@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/195
Reviewed-by: crueter <crueter@eden-emu.dev>
Co-authored-by: wildcard <nubieluv@gmail.com>
Co-committed-by: wildcard <nubieluv@gmail.com>
2025-08-04 18:41:28 +02:00
weakboson 33275c28d3
[texture_cache] Enforce conservative 3D texture aliasing. Consistently merge/lookup images. (#196)
Previously, the merging strategy is permissive but the lookup strategy is strict. Together they create a infinite merge loop because lookup always fails and merges are always executed.
The last attempt to fix this issue made the lookup strategy more permissive which created unexpected aliased textures.
This commit implements an alternative: make the merging strategy strict.

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/196
Reviewed-by: Shinmegumi <shinmegumi@eden-emu.dev>
Co-authored-by: weakboson <weakboson@quantum-field.net>
Co-committed-by: weakboson <weakboson@quantum-field.net>
2025-08-04 18:39:17 +02:00
crueter 51b170b470
[cmake] refactor: Use CPM over submodules (#143)
Transfers the majority of submodules and large externals to CPM, using source archives rather than full Git clones. Not only does this save massive amounts of clone and configure time, but dependencies are grabbed on-demand rather than being required by default. Additionally, CPM will (generally) automatically search for system dependencies, though certain dependencies have options to control this.

Testing shows gains ranging from 5x to 10x in terms of overall clone/configure time.

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/143
Reviewed-by: CamilleLaVey <camillelavey99@gmail.com>
2025-08-04 04:50:14 +02:00
lizzie 04e5e64538
[memory] remove "fast" memcpy and memset (not fast at all), remove slow parallel impl and just use serial (#188)
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/188
Co-authored-by: lizzie <lizzie@eden-emu.dev>
Co-committed-by: lizzie <lizzie@eden-emu.dev>
2025-08-03 17:07:39 +02:00
Producdevity f72783e017
[android]: (feat) emuready launch intent + redesign (#162)
feat: emuready intent support and slight redesign
Co-authored-by: crueter <crueter@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/162
Reviewed-by: CamilleLaVey <camillelavey99@gmail.com>
Reviewed-by: crueter <crueter@eden-emu.dev>
Co-authored-by: Producdevity <y.gherbi.dev@gmail.com>
Co-committed-by: Producdevity <y.gherbi.dev@gmail.com>
2025-08-03 17:03:53 +02:00
lizzie 3b72c29303
[compat] fix solaris shm_open syscall causing crashes with SHM_ANON, implement portable posix shm_open_anon (#187)
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/187
Reviewed-by: crueter <crueter@eden-emu.dev>
Co-authored-by: lizzie <lizzie@eden-emu.dev>
Co-committed-by: lizzie <lizzie@eden-emu.dev>
2025-08-02 22:21:50 -04:00
crueter 9966da9ff3
[cmake] check if submodule dir is empty (#182)
previously, it would check for Git submodules... which fails for source packs...

Signed-off-by: crueter <crueter@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/182
2025-08-03 04:10:34 +02:00
crueter e7becc15b4
[android] remove early release fences option (#186)
Signed-off-by: crueter <crueter@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/186
Reviewed-by: Shinmegumi <shinmegumi@eden-emu.dev>
Reviewed-by: CamilleLaVey <camillelavey99@gmail.com>
2025-08-03 03:17:12 +02:00
Gamer64 1f34d836b4
Add cmake option to enable microprofile (#179)
Backported from dd9c743041.

Co-authored-by: PabloMK7 <hackyglitch2@gmail.com>

Co-authored-by: Shinmegumi <shinmegumi@eden-emu.dev>
Co-authored-by: Gamer64 <76565986+Gamer64ytb@users.noreply.github.com>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/179
Co-authored-by: Gamer64 <gamer64@eden-emu.dev>
Co-committed-by: Gamer64 <gamer64@eden-emu.dev>
2025-08-02 17:22:38 +02:00
Pavel Barabanov b32a667d6f [android] "Disable Buffer Reorder" option translations 2025-08-02 16:58:37 +03:00
CamilleLaVey 15d371c51a revert 45e7c0d62d
Revert fix inversion of toggle for early fences (#175)

This should fix performance regressions in games that didn't need this and fix it to work with the games it is intended to be used for.

// Commit reverted there's some issues with the logic of "release early fences", it's going to be solved in a later commit.

Made based on recommendations by Discord Contributor.

Signed-off-by: Shinmegumi <shinmegumi@eden-emu.dev>
Co-authored-by: Gamer64 <76565986+Gamer64ytb@users.noreply.github.com>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/175
Co-authored-by: Shinmegumi <shinmegumi@eden-emu.dev>
Co-committed-by: Shinmegumi <shinmegumi@eden-emu.dev>
2025-08-02 02:50:17 +02:00
Gamer64 8cfcf1e8bf
[vector_math]: Use NEON intrinsics in Vec4 dot operation (#177)
PabloMK7: Changes the Vec4 dot operation to use NEON intrinsics on ARM devices.
This function is used every time a triangle is added to the rendered, so it can be considered hot code. The other vector operations are not used as much, so there is no gain to provide NEON operations for them.

The improvements from this change are most likely minimal.

Co-authored-by: PabloMK7 <hackyglitch2@gmail.com>
Co-authored-by: Gamer64 <76565986+Gamer64ytb@users.noreply.github.com>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/177
Co-authored-by: Gamer64 <gamer64@eden-emu.dev>
Co-committed-by: Gamer64 <gamer64@eden-emu.dev>
2025-08-02 01:48:04 +02:00
lizzie 56acd4041a
[dynarmic] XMM spill, SSE/AVX emit, sub/add, configurable JIT state pointer, remove unnecessary stuff (#128)
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/128

https://www.agner.org/optimize/
Co-authored-by: lizzie <lizzie@eden-emu.dev>
Co-committed-by: lizzie <lizzie@eden-emu.dev>
2025-08-02 00:48:10 +02:00
Shinmegumi 45e7c0d62d
Fix inversion of toggle for early fences (#175)
This should fix performance regressions in games that didn't need this and fix it to work with the games it is intended to be used for.

Made based on recommendations by Discord Contributor.

Signed-off-by: Shinmegumi <shinmegumi@eden-emu.dev>
Co-authored-by: Gamer64 <76565986+Gamer64ytb@users.noreply.github.com>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/175
Co-authored-by: Shinmegumi <shinmegumi@eden-emu.dev>
Co-committed-by: Shinmegumi <shinmegumi@eden-emu.dev>
2025-08-02 00:10:29 +02:00
Gamer64 c47eb9760b Android: Expose "Disable Buffer Reorder" option 2025-08-01 18:11:47 +02:00
weakboson 6fd10fd85e
[vk] Remove improper check for image depth in texture cache. (#164)
When looking for existing images, ImageBase::TryFindBase checks the depth of the existing image to be greater than the layer of the base + depth of the candidate.
However the depth of images are not updated when cache were merged causing the lookup to fail.
This commit disables this faulty check to fix a critical memory leak that crashes the emulator in some games.

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/164
Co-authored-by: weakboson <weakboson@quantum-field.net>
Co-committed-by: weakboson <weakboson@quantum-field.net>
2025-07-31 17:47:29 +02:00
notenergydrinks c1d9cbca64
[cheats] Check for comments in patch line loop (#156)
My test case is this file, after line 27 is not marked as patch because it's after `@` tag but rest is patch lines including comments. <2ac3ff239f/1.0.0.pchtxt (L31)>

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/156
Co-authored-by: notenergydrinks <notenergydrinks@eden-emu.dev>
Co-committed-by: notenergydrinks <notenergydrinks@eden-emu.dev>
2025-07-31 16:55:14 +02:00
Bix b089e7d4e6
[android] Update Ukrainian translation (#168)
Authored-by: Rondo <Rondo@eden-emu.dev>
Signed-off-by: Bix <bix@bixed.xyz>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/168
Co-authored-by: Bix <bix@bixed.xyz>
Co-committed-by: Bix <bix@bixed.xyz>
2025-07-31 16:54:04 +02:00
Maufeat bd2061f44b
[vk] remove config check return (#151)
This is for testing some bugs, the return acually shouldn't happen and misses the rest of ConfigureImpl

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/151
Co-authored-by: Maufeat <sahyno1996@gmail.com>
Co-committed-by: Maufeat <sahyno1996@gmail.com>
2025-07-31 16:47:21 +02:00
SDK Chan 3f12ae1e6e
[shader_recompiler/Maxwell] Unstub ISBERD completely (#160)
Unstub previous ISBERD stubs.
Should improve internal shader handling in certain aspects.

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/160
Co-authored-by: SDK Chan <sdkchan@eden-emu.dev>
Co-committed-by: SDK Chan <sdkchan@eden-emu.dev>
2025-07-31 16:42:00 +02:00
Maufeat c609389ec1
[nifm] Readd room check to fix LAN on MK8D (#166)
Co-authored-by: Maufeat <sahyno1996@gmail.com>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/166
Co-authored-by: Maufeat <maufeat@eden-emu.dev>
Co-committed-by: Maufeat <maufeat@eden-emu.dev>
2025-07-31 00:03:18 +02:00
Pavel Barabanov f6b6a856a4
[android] Early release fences option fix and translations (#167)
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/167
Co-authored-by: Pavel Barabanov <pavelbarabanov94@gmail.com>
Co-committed-by: Pavel Barabanov <pavelbarabanov94@gmail.com>
2025-07-30 23:51:20 +02:00
MaranBr 7249bc0d22
[host1x] Remove unused code (#161)
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/161
Co-authored-by: MaranBr <maranbr@outlook.com>
Co-committed-by: MaranBr <maranbr@outlook.com>
2025-07-30 21:08:43 +02:00