Commit graph

28414 commits

Author SHA1 Message Date
JPikachu
f8712e50e6
[audio] stub SetAudioDeviceOutputVolumeAutoTuneEnabled and IsAudioDeviceOutputVolumeAutoTuneEnabled (#3654)
For Pokémon LeafGreen Version and Pokémon FireRed Version

Co-authored-by: JPikachu <jpikachu.eden@gmail.com>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3654
Reviewed-by: Maufeat <sahyno1996@gmail.com>
Reviewed-by: Lizzie <lizzie@eden-emu.dev>
Co-authored-by: JPikachu <jpikachu@eden-emu.dev>
Co-committed-by: JPikachu <jpikachu@eden-emu.dev>
2026-02-28 01:06:22 +01:00
crueter
fc63de39dd
[docs] Bring back the Options page, and clean up LLM policy (#3649)
Signed-off-by: crueter <crueter@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3649
2026-02-27 03:33:36 +01:00
crueter
bf25058dbd
[docs] SIGNUP: Add spam/junk notice, email patch info, and clarify some things (#3648)
Signed-off-by: crueter <crueter@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3648
2026-02-27 03:33:29 +01:00
lizzie
75104b6103
[hle] Implement IApplicationManagerInterface::GetTotalSpaceSize (#3642)
oops

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

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3642
Reviewed-by: MaranBr <maranbr@eden-emu.dev>
Reviewed-by: DraVee <dravee@eden-emu.dev>
Co-authored-by: lizzie <lizzie@eden-emu.dev>
Co-committed-by: lizzie <lizzie@eden-emu.dev>
2026-02-26 16:48:04 +01:00
John
0d950195e9
[Settings] Add "Enable Legacy Rescale Pass" Toggle (#3582)
This PR introduces an optional Legacy Rescale Compatibility Mode that restores the previous rescale‑pass behavior for titles that rely on its quirks. While the new rescale logic is generally more correct, some games exhibit visual issues that the legacy behavior incidentally avoids.
Enabling this mode can mitigate line artifacts on AMD GPUs and reduce grey‑texture flickering on Nvidia GPUs in Luigi’s Mansion 3. This is a compatibility workaround rather than a full fix, and should only be used for titles affected by these rare edge‑case rendering problems.

Original Logic from MaranBR

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3582
Co-authored-by: John <john@eden-emu.dev>
Co-committed-by: John <john@eden-emu.dev>
2026-02-26 03:57:25 +01:00
PavelBARABANOV
04e88ab82c
[qt] Remove QEvent::Polish from titlebar filter to fix Applets tab (#3644)
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3644
Reviewed-by: MaranBr <maranbr@eden-emu.dev>
Reviewed-by: crueter <crueter@eden-emu.dev>
Co-authored-by: PavelBARABANOV <pavelbarabanov94@gmail.com>
Co-committed-by: PavelBARABANOV <pavelbarabanov94@gmail.com>
2026-02-26 03:15:32 +01:00
crueter
f957c36238
[vk] Disable vsync when Turbo Mode is enabled (#3633)
Note to self: you have a 60Hz display, use it

Signed-off-by: crueter <crueter@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3633
Reviewed-by: DraVee <dravee@eden-emu.dev>
Reviewed-by: MaranBr <maranbr@eden-emu.dev>
2026-02-26 01:04:23 +01:00
crueter
ee67853636
[desktop] Show basic driver info on GPU selector box (#3636)
Shows a short driver identification string in the Graphics Device combo box (desktop only, Android doesn't need this at all)

Largely meant for debugging, especially macOS. Maybe Windows in the future once MESA begins working on FOSS drivers over there. Linux on ARM platforms too maybe? And Nvidia

Signed-off-by: crueter <crueter@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3636
Reviewed-by: DraVee <dravee@eden-emu.dev>
Reviewed-by: MaranBr <maranbr@eden-emu.dev>
2026-02-26 01:04:14 +01:00
crueter
0ff84ef312
[desktop] Fix path corruption for special characters on Windows (#3635)
https://github.com/azahar-emu/azahar/pull/1745

Authored-by: RedBlackAka <140876408+RedBlackAka@users.noreply.github.com>
Signed-off-by: crueter <crueter@eden-emu.dev>

Co-authored-by: RedBlackAka <140876408+RedBlackAka@users.noreply.github.com>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3635
Reviewed-by: DraVee <dravee@eden-emu.dev>
Reviewed-by: MaranBr <maranbr@eden-emu.dev>
2026-02-25 14:53:49 +01:00
crueter
00e2128fab
[desktop] Allow deletion of add-ons from the add-on menu (#3626)
Adds a location param to the Patch struct which can be used to delete
any installed mods at the user's request. You can delete multiple at
once too, or just one by right-clicking

You are not able to delete game updates, DLC, or SDMC mods.

Signed-off-by: crueter <crueter@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3626
Reviewed-by: DraVee <dravee@eden-emu.dev>
Reviewed-by: Maufeat <sahyno1996@gmail.com>
2026-02-25 03:38:13 +01:00
crueter
f25582833a
[cmake] Start requiring SDL2 (#3632)
Closes #3466

Like said in the issue and the OpenSSL equivalent, disabling SDL2 on
desktop is just not something we want to do. It's not worth the added
burden of supporting the n+1'th matrix.

Signed-off-by: crueter <crueter@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3632
Reviewed-by: CamilleLaVey <camillelavey99@gmail.com>
Reviewed-by: MaranBr <maranbr@eden-emu.dev>
2026-02-25 02:49:47 +01:00
crueter
7758f70833
[core] Fix language index mismatches (#3629)
For reasons I am not knowledgeable enough to answer, NACP language and
nn::settings::Language don't match.

PR #3587 however erroneously matched language_index directly to NACP
language which caused those weird mismatches (since idx 2 = French
actually matches up to an NACP language of Japanese). So to get around
that just go back to the mapping of language idx -> nacp language

Signed-off-by: crueter <crueter@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3629
Reviewed-by: MaranBr <maranbr@eden-emu.dev>
Reviewed-by: DraVee <dravee@eden-emu.dev>
2026-02-25 00:41:21 +01:00
John
5279e76534
[Configuration] Add Applets Tab to Per-Game Configurations (#3623)
Some games need specific applets to work.

For example for local multiplayer to function the Controller Applet must be set as:
- MK8D -> Custom Applet
- Absolum -> Real Applet

Web/Offline Applet: Assasin Creed and some bundled games might need real applet.

Overlay Toggle added for Horizon's ingame menu.

Thanks PavelBARABANOV for the help with the PR.

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3623
Reviewed-by: crueter <crueter@eden-emu.dev>
Reviewed-by: CamilleLaVey <camillelavey99@gmail.com>
Co-authored-by: John <john@eden-emu.dev>
Co-committed-by: John <john@eden-emu.dev>
2026-02-24 22:25:28 +01:00
crueter
270232e8d6
[dynarmic] Revert "Transition IR::Block to use stable_vector<Inst>, remove inline pool + pooled vector, remove unused mutable get/set block functors (#3543)" (#3625)
This reverts commit d64f7dfe5c.

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3625
2026-02-24 19:34:34 +01:00
PavelBARABANOV
d2bef2731c
[android, tu] Adjusted PoD of Vertex/ Buffers for older turnip drivers (#3621)
This PR aims to return an older way to bind and host vertex/ buffers (via toggle), which had a bunch of indirection and added unnecessary overhead during the drawing phase; current new approach adds just PoD for this operations, which seems to not be acceptable for older turnip drivers.

Meanwhile the performance improvements are gonna be enabled only if the toggle is turned on, it will be required to use newer turnip drivers to make it work (26.0+), default behavior will allow older drivers work as intended.

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3621
Reviewed-by: CamilleLaVey <camillelavey99@gmail.com>
Co-authored-by: PavelBARABANOV <pavelbarabanov94@gmail.com>
Co-committed-by: PavelBARABANOV <pavelbarabanov94@gmail.com>
2026-02-24 18:49:44 +01:00
lizzie
b45c78a051
[dynarmic] use bitset<32> instead of vector for ABI regset allocations (#3507)
HLE macro does this, may as well do it on dynarm as well :)

could improve perf a bit

Signed-off-by: lizzie <lizzie@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3507
Reviewed-by: crueter <crueter@eden-emu.dev>
Reviewed-by: CamilleLaVey <camillelavey99@gmail.com>
Reviewed-by: DraVee <dravee@eden-emu.dev>
Co-authored-by: lizzie <lizzie@eden-emu.dev>
Co-committed-by: lizzie <lizzie@eden-emu.dev>
2026-02-24 06:56:08 +01:00
PavelBARABANOV
40251c2115
[vk] Fix lost wakeup in fence mode using atomic wait (#3598)
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3598
Reviewed-by: crueter <crueter@eden-emu.dev>
Reviewed-by: CamilleLaVey <camillelavey99@gmail.com>
Co-authored-by: PavelBARABANOV <pavelbarabanov94@gmail.com>
Co-committed-by: PavelBARABANOV <pavelbarabanov94@gmail.com>
2026-02-24 06:37:28 +01:00
PavelBARABANOV
83cdeed3c4
[common] Disable BCN patch by default (#3622)
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3622
Reviewed-by: CamilleLaVey <camillelavey99@gmail.com>
Co-authored-by: PavelBARABANOV <pavelbarabanov94@gmail.com>
Co-committed-by: PavelBARABANOV <pavelbarabanov94@gmail.com>
2026-02-24 01:04:35 +01:00
JPikachu
f77c91431f
[shader_recompiler] Implement indirect image/texture array indexing (#3608)
Fixes missing textures in Luigi's Mansion 3 (Invisible Mice lol) and potentially other titles
by implementing OpAccessChain indexing into descriptor arrays instead of throwing NotImplementedException.

Co-authored-by: JPikachu <fakemail@gmail.com>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3608
Reviewed-by: MaranBr <maranbr@eden-emu.dev>
Reviewed-by: DraVee <dravee@eden-emu.dev>
Reviewed-by: CamilleLaVey <camillelavey99@gmail.com>
Co-authored-by: JPikachu <jpikachu@eden-emu.dev>
Co-committed-by: JPikachu <jpikachu@eden-emu.dev>
2026-02-23 21:50:59 +01:00
lizzie
213f7b810d
[dist] New 2026 Saint Patrick's icon; drop named variants (#3617)
Signed-off-by: lizzie <lizzie@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3617
Reviewed-by: MaranBr <maranbr@eden-emu.dev>
Reviewed-by: CamilleLaVey <camillelavey99@gmail.com>
Co-authored-by: lizzie <lizzie@eden-emu.dev>
Co-committed-by: lizzie <lizzie@eden-emu.dev>
2026-02-23 19:54:48 +01:00
DraVee
a11eae425a
[file_sys] Check if language_entry is empty (#3619)
* fixup to #3587

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3619
Reviewed-by: MaranBr <maranbr@eden-emu.dev>
Co-authored-by: DraVee <dravee@eden-emu.dev>
Co-committed-by: DraVee <dravee@eden-emu.dev>
2026-02-23 19:40:56 +01:00
lizzie
c610b61126
[common, hle] add new updates Polish+Thai languages (#3587)
Signed-off-by: lizzie <lizzie@eden-emu.dev>
Co-authored-by: maufeat <sahyno1996@gmail.com>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3587
Reviewed-by: Maufeat <sahyno1996@gmail.com>
Reviewed-by: DraVee <dravee@eden-emu.dev>
Co-authored-by: lizzie <lizzie@eden-emu.dev>
Co-committed-by: lizzie <lizzie@eden-emu.dev>
2026-02-23 13:39:16 +01:00
xbzk
963f9981ce
[chore] Resolve more "warning C4127: conditional expression is constant" while building under MSVC (#3595)
NOISY warning on NINJA MSVC build log.
Complement for PR 3567. Now in another place.

D:\dev\eden\src\dynarmic\src\dynarmic\backend\x64\emit_x64_vector_floating_point.cpp(207): warning C4127: conditional expression is constant
D:\dev\eden\src\dynarmic\src\dynarmic\backend\x64\emit_x64_vector_floating_point.cpp(207): note: consider using 'if constexpr' statement instead

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

Co-authored-by: DraVee <dravee@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3595
Reviewed-by: Lizzie <lizzie@eden-emu.dev>
Reviewed-by: DraVee <dravee@eden-emu.dev>
Co-authored-by: xbzk <xbzk@eden-emu.dev>
Co-committed-by: xbzk <xbzk@eden-emu.dev>
2026-02-23 06:40:42 +01:00
crueter
89dd600790
[cmake] Comment out YUZU_USE_QT_MULTIMEDIA usages (#3616)
This option is currently dead code. Let's not use it. In the future we
should definitely update it. (or not, not a single soul used this beforehand).

See: #3468

Signed-off-by: crueter <crueter@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3616
Reviewed-by: DraVee <dravee@eden-emu.dev>
Reviewed-by: MaranBr <maranbr@eden-emu.dev>
2026-02-23 03:47:25 +01:00
crueter
eb57e11f42
[cmake] Delete YUZU_USE_CPM forever (#3615)
This option is really confusing, and has long since outlived its
originally intended purpose.

Goodbye forever!

Closes #3467

Signed-off-by: crueter <crueter@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3615
Reviewed-by: DraVee <dravee@eden-emu.dev>
Reviewed-by: MaranBr <maranbr@eden-emu.dev>
2026-02-23 03:47:19 +01:00
crueter
45eb9cfcee
[desktop] Reset speed mode on game shutdown (#3613)
Closes #3602

Signed-off-by: crueter <crueter@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3613
Reviewed-by: CamilleLaVey <camillelavey99@gmail.com>
Reviewed-by: Lizzie <lizzie@eden-emu.dev>
Reviewed-by: MaranBr <maranbr@eden-emu.dev>
2026-02-23 02:52:12 +01:00
lizzie
0a687b82d4
[crypto] Atomize all traces of MbedTLS, and require OpenSSL 3+ (#3606)
Closes #3137
Closes #3465

- Replace all mbedtls usage with OpenSSL
- require OpenSSL
- Up OpenSSL version to 3, cuz that's what we actually need...

CAVEATS:
- httplib also now required
- other ssl backends for svc are unused, maybe remove later
  * To be fair, our CI never used them anyways. And we never tested those

TESTERS PLEASE TEST:
- All games and applets boot
- Boot, load, exit, etc. times

Co-authored-by: crueter <crueter@eden-emu.dev>
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/3606
Reviewed-by: crueter <crueter@eden-emu.dev>
Reviewed-by: MaranBr <maranbr@eden-emu.dev>
Reviewed-by: DraVee <dravee@eden-emu.dev>
Co-authored-by: lizzie <lizzie@eden-emu.dev>
Co-committed-by: lizzie <lizzie@eden-emu.dev>
2026-02-23 02:50:13 +01:00
crueter
80d6172084
[desktop] Display currently applied update in tooltip alongside playtime (#3611)
Also nicely formats both it and play time, alongside fallbacks if they
have nothing

Signed-off-by: crueter <crueter@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3611
Reviewed-by: DraVee <dravee@eden-emu.dev>
Reviewed-by: Lizzie <lizzie@eden-emu.dev>
2026-02-23 02:03:30 +01:00
crueter
d8b2971a2e
[desktop] Fix game list name column starting out super small by default (#3610)
Unsure why but geometry is at 100x30 when this func is called. For now
just use sane ish default of 840

Signed-off-by: crueter <crueter@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3610
Reviewed-by: DraVee <dravee@eden-emu.dev>
Reviewed-by: MaranBr <maranbr@eden-emu.dev>
2026-02-23 00:20:14 +01:00
crueter
12157214b6
[externals] Update FFmpeg to c7b5f1537d (#3604)
Fixes some Vulkan VP9 thing

Signed-off-by: crueter <crueter@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3604
Reviewed-by: DraVee <dravee@eden-emu.dev>
2026-02-22 23:28:46 +01:00
crueter
0574d7d2c9
[desktop] Fix mod import for romfs mods (#3609)
Forgot a comma :(

Signed-off-by: crueter <crueter@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3609
Reviewed-by: DraVee <dravee@eden-emu.dev>
Reviewed-by: MaranBr <maranbr@eden-emu.dev>
2026-02-22 22:03:32 +01:00
lizzie
d64f7dfe5c
[dynarmic] Transition IR::Block to use stable_vector<Inst>, remove inline pool + pooled vector, remove unused mutable get/set block functors (#3543)
theoretically, better

in practice, uh

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

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3543
Reviewed-by: DraVee <dravee@eden-emu.dev>
Reviewed-by: CamilleLaVey <camillelavey99@gmail.com>
Co-authored-by: lizzie <lizzie@eden-emu.dev>
Co-committed-by: lizzie <lizzie@eden-emu.dev>
2026-02-22 21:01:04 +01:00
lizzie
2d27359074
[core/memory] remove indirection handling for unaligned access (#3584)
Signed-off-by: lizzie <lizzie@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3584
Reviewed-by: DraVee <dravee@eden-emu.dev>
Reviewed-by: CamilleLaVey <camillelavey99@gmail.com>
Co-authored-by: lizzie <lizzie@eden-emu.dev>
Co-committed-by: lizzie <lizzie@eden-emu.dev>
2026-02-22 06:05:08 +01:00
xbzk
978ba3ed6f
[android,ui] added toggle to swap confirm/back buttons (#3601)
Most android joypads has xbox layout, so while when in UI CONFIRM buttom (A) is the bottom one, in games it is the right one. And the opposite for BACK (B) button.
And that kinda sucks. And some users complained, so i had this idea.
Disabled by default. Toggle in the lonely App Settings menu. No impact at all.

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3601
Reviewed-by: DraVee <dravee@eden-emu.dev>
Reviewed-by: CamilleLaVey <camillelavey99@gmail.com>
Co-authored-by: xbzk <xbzk@eden-emu.dev>
Co-committed-by: xbzk <xbzk@eden-emu.dev>
2026-02-22 06:04:41 +01:00
DraVee
f1e9e846f1
[docs] Add Gentoo and Arch Linux packages to GDB instructions (#3521)
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3521
Reviewed-by: crueter <crueter@eden-emu.dev>
Reviewed-by: CamilleLaVey <camillelavey99@gmail.com>
Co-authored-by: DraVee <dravee@eden-emu.dev>
Co-committed-by: DraVee <dravee@eden-emu.dev>
2026-02-22 05:29:57 +01:00
DraVee
097ccf830d
[dynarmic] Fix building of tests (#3599)
Proposed-by: lizzie lizzie@eden-emu.dev
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3599
Reviewed-by: CamilleLaVey <camillelavey99@gmail.com>
Reviewed-by: Lizzie <lizzie@eden-emu.dev>
Co-authored-by: DraVee <dravee@eden-emu.dev>
Co-committed-by: DraVee <dravee@eden-emu.dev>
2026-02-22 04:22:50 +01:00
crueter
fecf763a51
[desktop] Fix crash on restart (#3600)
Signed-off-by: crueter <crueter@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3600
Reviewed-by: DraVee <dravee@eden-emu.dev>
Reviewed-by: CamilleLaVey <camillelavey99@gmail.com>
2026-02-22 04:15:26 +01:00
lizzie
a12eb5fef6
[docs] add qt6-charts to deps.md, add nixOS note (#3597)
Signed-off-by: lizzie <lizzie@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3597
Reviewed-by: DraVee <dravee@eden-emu.dev>
Reviewed-by: CamilleLaVey <camillelavey99@gmail.com>
Co-authored-by: lizzie <lizzie@eden-emu.dev>
Co-committed-by: lizzie <lizzie@eden-emu.dev>
2026-02-22 03:28:00 +01:00
DraVee
4014b45cb6
[cmake] Remove not working QT_VERSION check (#3553)
* fix copy of files to bin dir on MSVC

* does we even support Qt5? I dont think so

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3553
Reviewed-by: Lizzie <lizzie@eden-emu.dev>
Reviewed-by: CamilleLaVey <camillelavey99@gmail.com>
Co-authored-by: DraVee <dravee@eden-emu.dev>
Co-committed-by: DraVee <dravee@eden-emu.dev>
2026-02-22 03:09:23 +01:00
lizzie
2082ba7ec7
[cmake, common] allow build with -fno-rtti and /GR-, to disable gen of rtti and save some bytes in vtables (#359)
Signed-off-by: lizzie <lizzie@eden-emu.dev>
Co-authored-by: Caio Oliveira <caiooliveirafarias0@gmail.com>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/359
Reviewed-by: DraVee <dravee@eden-emu.dev>
Reviewed-by: CamilleLaVey <camillelavey99@gmail.com>
Co-authored-by: lizzie <lizzie@eden-emu.dev>
Co-committed-by: lizzie <lizzie@eden-emu.dev>
2026-02-22 03:09:03 +01:00
lizzie
bfc720152a
[vfs] remove usage of 'dynamic_cast', use ankerl::map for files (#3594)
Do I need to writeout everything wrong with `dynamic_cast`?

Also the usual std::map -> `ankerl::unordered_dense::map` conversion, seems to work just fine - but of course test that updates/DLCs/mods/cheats/etc are still being applied :)

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

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3594
Reviewed-by: DraVee <dravee@eden-emu.dev>
Reviewed-by: MaranBr <maranbr@eden-emu.dev>
Co-authored-by: lizzie <lizzie@eden-emu.dev>
Co-committed-by: lizzie <lizzie@eden-emu.dev>
2026-02-21 18:38:32 +01:00
lizzie
b6238d6df7
[vfs] fix crash at dtor() time (#3593)
Not very happy with the "solution"

Either way, this affected FBSD where opening then closing the emu would result in a crash, always.

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

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3593
Reviewed-by: DraVee <dravee@eden-emu.dev>
Reviewed-by: MaranBr <maranbr@eden-emu.dev>
Reviewed-by: CamilleLaVey <camillelavey99@gmail.com>
Co-authored-by: lizzie <lizzie@eden-emu.dev>
Co-committed-by: lizzie <lizzie@eden-emu.dev>
2026-02-21 13:47:48 +01:00
lizzie
f94bae10f2
[dynarmic] fix SignedDiv64 crashing if immediate constprop took effect; also fix result for 0x8000_0000/0xFFFF_FFFF not returning properly for SignedDiv32 (#3517)
a program could crash the emulator by just using div immediates and/or dividing by
0x8000_0000_0000_0000/0xFFFF_FFFF_FFFF_FFFF

X0 = 0x8000_0000_0000_0000
X1 = 0xFFFF_FFFF_FFFF_FFFF

SDIV X2, X0, X1
SDIV X2, X1, X0 <- crashes emu

Signed-off-by: lizzie <lizzie@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3517
Reviewed-by: crueter <crueter@eden-emu.dev>
Reviewed-by: DraVee <dravee@eden-emu.dev>
Reviewed-by: MaranBr <maranbr@eden-emu.dev>
Reviewed-by: CamilleLaVey <camillelavey99@gmail.com>
Co-authored-by: lizzie <lizzie@eden-emu.dev>
Co-committed-by: lizzie <lizzie@eden-emu.dev>
2026-02-21 03:01:41 +01:00
xbzk
d19303883e
[chore] Resolve "warning C4127: conditional expression is constant" while building under MSVC (#3567)
NINJA REPORTS THIS SHIT ALMOST EVERY STEP!

[161/863] Building CXX object src\hid_core\CMakeFiles\hid_core.dir\frontend\input_interpreter.cpp.obj
D:\dev\eden\src\.\core/hle/kernel/k_auto_object.h(100): warning C4127: conditional expression is constant
D:\dev\eden\src\.\core/hle/kernel/k_auto_object.h(100): note: consider using 'if constexpr' statement instead
D:\dev\eden\src\.\core/hle/kernel/k_memory_manager.h(246): warning C4127: conditional expression is constant
D:\dev\eden\src\.\core/hle/kernel/k_memory_manager.h(246): note: consider using 'if constexpr' statement instead

The reason, any mention to UNIMPLEMENTED() macro reaches this point where a constant expression (macro argument) is not declared so.
There must be several other ways to suppress, like via cmake C4127 suppression or making every source constexpr, but lazy.
Since it's an unimplemented() feature assert call, i`ve just made it non constant. Covers everything. No charges.

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

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3567
Reviewed-by: Lizzie <lizzie@eden-emu.dev>
Reviewed-by: DraVee <dravee@eden-emu.dev>
Reviewed-by: CamilleLaVey <camillelavey99@gmail.com>
Co-authored-by: xbzk <xbzk@eden-emu.dev>
Co-committed-by: xbzk <xbzk@eden-emu.dev>
2026-02-21 03:01:19 +01:00
xbzk
5ee81a4932
[settings] changed debug knobs category to allow per-game usage (#3564)
as the name says, plus changed android type for shortsetting, and added communication good pratices to handbook (.md) file.

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3564
Reviewed-by: DraVee <dravee@eden-emu.dev>
Reviewed-by: MaranBr <maranbr@eden-emu.dev>
Co-authored-by: xbzk <xbzk@eden-emu.dev>
Co-committed-by: xbzk <xbzk@eden-emu.dev>
2026-02-21 02:35:05 +01:00
lizzie
4f29128e50
[dynarmic] Fix ISB with new JIT schema (#3576)
If an ISB is issued, the changes on the memory wouldn't be reflected
Now we emulate "instruction cache" properly by just telling the mechanism to re-fetch the entire page again (to make ANY changes visible immediately)

This mainly fixes a potential issue where an ISB is emitted before a branch on the same codepage.

Signed-off-by: lizzie <lizzie@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3576
Reviewed-by: CamilleLaVey <camillelavey99@gmail.com>
Reviewed-by: crueter <crueter@eden-emu.dev>
Reviewed-by: DraVee <dravee@eden-emu.dev>
Co-authored-by: lizzie <lizzie@eden-emu.dev>
Co-committed-by: lizzie <lizzie@eden-emu.dev>
2026-02-21 01:53:48 +01:00
lizzie
f76dc401c3
[dynarmic] remove dead-code interpreter (#3547)
interpreter was never called in practice and doesn't do anything other than just crash

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

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3547
Reviewed-by: CamilleLaVey <camillelavey99@gmail.com>
Reviewed-by: crueter <crueter@eden-emu.dev>
Reviewed-by: DraVee <dravee@eden-emu.dev>
Co-authored-by: lizzie <lizzie@eden-emu.dev>
Co-committed-by: lizzie <lizzie@eden-emu.dev>
2026-02-21 01:53:34 +01:00
xbzk
732b7eb560
[file_sys] added packed language entries support (#3585)
Normally,  language_entries contained plain UTF-8 names.
In BotW v1.9.0, that title block is no longer directly readable as old UTF-8, so we were parsing binary data as text and going nuts.
...
In patch_manager.cpp (ParseControlNCA), I added a validity check: If update title text is unreadable, we keep update metadata but copy only the base language_entries block (0x0000..0x2FFF) so the game name is valid again.

UPDATE:
managed to decode the new language entries is a raw headerless zlib deflate.
added support for proper detection and inflation.

Co-authored-by: crueter <crueter@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3585
Reviewed-by: crueter <crueter@eden-emu.dev>
Reviewed-by: MaranBr <maranbr@eden-emu.dev>
Reviewed-by: CamilleLaVey <camillelavey99@gmail.com>
Co-authored-by: xbzk <xbzk@eden-emu.dev>
Co-committed-by: xbzk <xbzk@eden-emu.dev>
2026-02-20 23:28:24 +01:00
lizzie
93eecca894
[xbyak] fix unordered map that wasn't actually wanting to be unordered (#3589)
It seems to be related to the fact multimap on xbyak doesn't properly work if it's unordered
It also seems to NOT play nice at all with unstable iterators (like those found on ankerl) - either we use boost or just let xbyak use normal std

Signed-off-by: lizzie <lizzie@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3589
Reviewed-by: Maufeat <sahyno1996@gmail.com>
Reviewed-by: crueter <crueter@eden-emu.dev>
Co-authored-by: lizzie <lizzie@eden-emu.dev>
Co-committed-by: lizzie <lizzie@eden-emu.dev>
2026-02-20 19:28:36 +01:00
lizzie
d5aa10d572
[dynarmic] make Xbyak::CodeGen use Ankerl for backing unordered maps (#3438)
standard std::unordered_map and std::unordered_set sucks, hadn't found drop-in replacement for multimap, but this change should bring a nice perf boost for x86_64 :)

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

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3438
Reviewed-by: DraVee <dravee@eden-emu.dev>
Reviewed-by: CamilleLaVey <camillelavey99@gmail.com>
Reviewed-by: crueter <crueter@eden-emu.dev>
Co-authored-by: lizzie <lizzie@eden-emu.dev>
Co-committed-by: lizzie <lizzie@eden-emu.dev>
2026-02-20 16:38:17 +01:00