Commit Graph
28228 Commits
Author SHA1 Message Date
wildcard 338ea4e9d5 [texture_pass] Re-Add caching optimization for Texture_Pass (#3356)
Caching optimization for Texture_Pass
 (#481)

Add Caching per texture_pass and optimize sorting to single pass.
Use Logical shift instead of arithmetic shift.

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3356
Reviewed-by: MaranBr <[email protected]>
Reviewed-by: Maufeat <[email protected]>
Co-authored-by: wildcard <[email protected]>
Co-committed-by: wildcard <[email protected]>
2026-01-21 13:38:35 +01:00
lizzie 368a8f9e3d [android] fix resolution info.active causing 1/4th of screen rendering when using 0.5x instead of downscaled 0.5x (#3361)
Signed-off-by: lizzie <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3361
Reviewed-by: MaranBr <[email protected]>
Co-authored-by: lizzie <[email protected]>
Co-committed-by: lizzie <[email protected]>
2026-01-21 03:55:34 +01:00
lizzie a3fa666510 [android] fix discrepancy of MAXTEXTURE v. TEXTURE in setting string set (#3360)
Signed-off-by: lizzie <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3360
Reviewed-by: crueter <[email protected]>
Reviewed-by: MaranBr <[email protected]>
Reviewed-by: DraVee <[email protected]>
Co-authored-by: lizzie <[email protected]>
Co-committed-by: lizzie <[email protected]>
2026-01-21 01:17:10 +01:00
lizzie cb40b310f5 [opengl] fix GL_NV_geometry_shader_passthrough compiler complaints (#3357)
this can be seen immediately on startup of switch sports where the passthru geometry shader will spectacularly fail to compile because the driver complains about re-declaration

this is just a simple and quickie fix for that

Signed-off-by: lizzie <[email protected]>

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3357
Reviewed-by: Maufeat <[email protected]>
Reviewed-by: MaranBr <[email protected]>
Reviewed-by: DraVee <[email protected]>
Co-authored-by: lizzie <[email protected]>
Co-committed-by: lizzie <[email protected]>
2026-01-21 00:16:30 +01:00
lizzie 9dbb8c33e2 [opengl] remove leftover invalid uniform 2ui being sent every frame x every fb (doesnt exist on opengl_present.frag) (#3358)
the mfer straight up doesn't exist anymore in the .frag shader - probably a leftover, but right now spams a bunch of errors under graphics debugging on switch sports

Signed-off-by: lizzie <[email protected]>

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3358
Reviewed-by: Maufeat <[email protected]>
Reviewed-by: DraVee <[email protected]>
Co-authored-by: lizzie <[email protected]>
Co-committed-by: lizzie <[email protected]>
2026-01-21 00:12:18 +01:00
lizzie 16c7c03b33 [dynarmic] fix 64-bit indexing in pagetable being cutoff on ARM64 (#3314)
Signed-off-by: lizzie <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3314
Reviewed-by: DraVee <[email protected]>
Reviewed-by: MaranBr <[email protected]>
Co-authored-by: lizzie <[email protected]>
Co-committed-by: lizzie <[email protected]>
2026-01-20 19:20:52 +01:00
MaranBr 9aa8e9b0a1 [video_core] Disable resolution rescaling pass on Android to avoid visual artifacts (#3353)
The rescaling optimization causes visual artifacts on Android (GLES). Disable the pass entirely on Android to preserve correct rendering.

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3353
Reviewed-by: crueter <[email protected]>
Reviewed-by: Maufeat <[email protected]>
Co-authored-by: MaranBr <[email protected]>
Co-committed-by: MaranBr <[email protected]>
2026-01-20 18:54:02 +01:00
Maufeat 4510e9ff7f [core] Use a eden profile picture instead of the default grey one. (#3350)
The gray one is not displaying correct on qlaunch, so why not use a eden one :)

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3350
Reviewed-by: crueter <[email protected]>
Reviewed-by: DraVee <[email protected]>
Reviewed-by: Lizzie <[email protected]>
Co-authored-by: Maufeat <[email protected]>
Co-committed-by: Maufeat <[email protected]>
2026-01-20 18:32:08 +01:00
crueter f61f0a28c6 [cmake] Fix MinGW/arm64 build/runtime errors (#3352)
Mostly just jpeg being weird. Also, due to the way I've built it, we
don't need all those system libs anymore because they are bundled into
the Qt build.

Signed-off-by: crueter <[email protected]>

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3352
Reviewed-by: DraVee <[email protected]>
Reviewed-by: Lizzie <[email protected]>
2026-01-20 18:31:28 +01:00
lizzie cb26ea154c [vk, ogl/IR, dynarmic/IR] friendlier IR identity pointer chasing, inline AA passes (#3250)
Only merge once we find out wth is causing the crashes [we know it's fsr]

This reverts commit 82f9d489e7.

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3250
Reviewed-by: DraVee <[email protected]>
Reviewed-by: MaranBr <[email protected]>
Co-authored-by: lizzie <[email protected]>
Co-committed-by: lizzie <[email protected]>
2026-01-20 02:36:24 +01:00
lizzieandCaio Oliveira 8663913510 [video_core/vic] Partial revert to fix Link Awakening's blue tint (#3348)
fixes link awakening intro screen on non-SSE 4.1

Signed-off-by: lizzie [email protected]
Co-authored-by: Caio Oliveira <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3348
Reviewed-by: DraVee <[email protected]>
Reviewed-by: Maufeat <[email protected]>
Co-authored-by: lizzie <[email protected]>
Co-committed-by: lizzie <[email protected]>
2026-01-19 23:58:14 +01:00
crueter 872e03c9a6 [android] exclude cpm cache from index, set default to mainline (#3340)
Your radioactive computers get beat by an intel i5-2540M on a 5400RPM
hard drive that exploded in my sleep btw

Also sets mainline to default and gets rid of the horrific naming logic
I had before.

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3340
Reviewed-by: MaranBr <[email protected]>
Reviewed-by: Lizzie <[email protected]>
Reviewed-by: DraVee <[email protected]>
2026-01-19 23:12:46 +01:00
lizzie 651585963a [core] Fix range batching using nil ranges (#3349)
this fixes mario rabbids flickering at start

Signed-off-by: lizzie <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3349
Reviewed-by: Maufeat <[email protected]>
Reviewed-by: MaranBr <[email protected]>
Co-authored-by: lizzie <[email protected]>
Co-committed-by: lizzie <[email protected]>
2026-01-19 22:19:34 +01:00
MaranBr 30e073b02b [video_core] Fixes flickering and weird textures at native 1x resolution (#3346)
The issue occurs because shaders generated without RescalingPass are too simple, triggering driver optimization bugs on some GPUs.
Fixes rendering issues in Luigi's Mansion 3 and possibly other games as well.

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3346
Reviewed-by: DraVee <[email protected]>
Co-authored-by: MaranBr <[email protected]>
Co-committed-by: MaranBr <[email protected]>
2026-01-19 20:57:48 +01:00
lizzieandDraVee b9da45cb1f [tests] fix compile+linking issues with PlayTime (#3345)
fixes linking + comp issues but not the test themselves, who have now became invalid

Signed-off-by: lizzie <[email protected]>

Co-authored-by: DraVee <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3345
Reviewed-by: DraVee <[email protected]>
Reviewed-by: Maufeat <[email protected]>
Co-authored-by: lizzie <[email protected]>
Co-committed-by: lizzie <[email protected]>
2026-01-19 16:27:18 +01:00
crueter 8663d7fa41 [android] DriverFetcher: add Whitebelyash's Turnip repo (#3343)
* Reverting back recommended A8XX drivers to Gamehub Adeno 8XX (T23 is on experimental phase)

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3343
Reviewed-by: CamilleLaVey <[email protected]>
Reviewed-by: DraVee <[email protected]>
2026-01-19 13:19:28 +01:00
Maufeat 30cbec7ad5 [core/hle] Adds sorting game titles and prevents hard crashes in qlaunch (#3330)
Adds correct sorting in qlaunch (tested with FW 19 and FW20-21)

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3330
Reviewed-by: DraVee <[email protected]>
Reviewed-by: CamilleLaVey <[email protected]>
Reviewed-by: MaranBr <[email protected]>
Co-authored-by: Maufeat <[email protected]>
Co-committed-by: Maufeat <[email protected]>
2026-01-19 04:18:55 +01:00
CamilleLaVey 1fbace438c [vulkan, qcom] Another set of fixes for QCOM stock driver (#3334)
This pr is another set of fixes for the system driver (stock) on Qualcomm devices, mostly taking into consideration drivers from series 512.800.0 and on, reduces unwanted loads in the GPU by allocating properly features that were forced available, when they weren't, generating wrong commands between shader recompiler and Adreno's compiler; also this pr has a bunch of small fixes on games that some textures were displayed wrongly due to double swizzling during the creation of shaders, which allows serveral games to be fixed:

- Zelda: Link's Awakening (no blur, hearts properly displayed, flickering highly reduced on NCE)
- Zelda: Echoes Of Wisdom (no blur, hearts properly displayed, reduced highly flickering, rift properly rendered)
- Mario Kart 8 Deluxe (no longer wrong blue texture on icons of the cups or countdown marker, no longer freezes when compilling shaders on game versions below NCE update to bring more compatibility with CTGP MOD)
- Naruto's Ninja Storm series (no longer blue texturing on Naruto or main character on the screeen)
- Pokemon Scarlet/ Violet (no longer missing characters or npc)
- And many more games that are missing from our scope of testing.

But not only that, but also improved GPU - CPU synchornization for better performance (by 15% compared to previous builds) more stable shader compilations and removed unneeded emulation paths; making games as Breath Of The Wild less stuttery than it was used to; along some cleaning from dead code, allowing mobile devices to go brrrr, always long live to the Snapdragon Master Race, it's needed to explain that devices from A7XX need to use the driver 819.2, meanwhile A8XX can use 842.9 to obtain all the benefits from VK 1.4 allowed in Eden.

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3334
Reviewed-by: DraVee <[email protected]>
Reviewed-by: Maufeat <[email protected]>
Reviewed-by: Lizzie <[email protected]>
Reviewed-by: MaranBr <[email protected]>
Co-authored-by: CamilleLaVey <[email protected]>
Co-committed-by: CamilleLaVey <[email protected]>
2026-01-19 04:10:54 +01:00
crueter 1ae084e87b [ci] update license header year to 2026 (#3341)
happy new year or something

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3341
Reviewed-by: DraVee <[email protected]>
2026-01-19 03:41:25 +01:00
lizzie 323e946d06 [android] exclude some strings that shouldn't need to be translated (#3311)
Signed-off-by: lizzie <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3311
Reviewed-by: DraVee <[email protected]>
Reviewed-by: Maufeat <[email protected]>
Co-authored-by: lizzie <[email protected]>
Co-committed-by: lizzie <[email protected]>
2026-01-19 03:39:59 +01:00
lizzie cb4239829f [qt] remove duplicate applet launch code (#3135)
Signed-off-by: lizzie <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3135
Reviewed-by: DraVee <[email protected]>
Reviewed-by: Maufeat <[email protected]>
Co-authored-by: lizzie <[email protected]>
Co-committed-by: lizzie <[email protected]>
2026-01-19 03:26:21 +01:00
MaranBr 023a4bceca [video_core] Avoid false feedback loop barriers for render targets (#3338)
Ignore views that are render targets when checking feedback loops. Fixes flickering caused by false barriers.

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3338
Reviewed-by: Lizzie <[email protected]>
Co-authored-by: MaranBr <[email protected]>
Co-committed-by: MaranBr <[email protected]>
2026-01-19 03:05:14 +01:00
lizzie 4025925539 [common/log] reoder file:func:line to file:line:func for nicer IDE integration with logs (#3321)
Signed-off-by: lizzie <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3321
Reviewed-by: DraVee <[email protected]>
Reviewed-by: Maufeat <[email protected]>
Co-authored-by: lizzie <[email protected]>
Co-committed-by: lizzie <[email protected]>
2026-01-18 23:41:08 +01:00
lizzie f45491e128 [cmake, core/hle] fix no-OpenSSL builds with BCAT news using unguarded httplib (#3326)
Signed-off-by: lizzie <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3326
Reviewed-by: DraVee <[email protected]>
Reviewed-by: Maufeat <[email protected]>
Co-authored-by: lizzie <[email protected]>
Co-committed-by: lizzie <[email protected]>
2026-01-18 22:07:36 +01:00
Maufeat 84e11a52ba [audio] Fix release buffer for audio input (#3336)
fixes microphone release buffer and data. Tested with Let's Sing 2025

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3336
Reviewed-by: MaranBr <[email protected]>
Reviewed-by: CamilleLaVey <[email protected]>
Co-authored-by: Maufeat <[email protected]>
Co-committed-by: Maufeat <[email protected]>
2026-01-18 16:20:32 +01:00
xbzk d72553f519 fixes joypad overlay autohide during holding actions (#3337)
fixes joypad overlay autohide during holding actions

suppose holding right to move character. that wouldn't clear autohide countdown, and it also would deny other touches to do so.
i guess this was buried coz those who truly use joypad overlay don't use autohide.

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3337
Reviewed-by: Maufeat <[email protected]>
Reviewed-by: CamilleLaVey <[email protected]>
Co-authored-by: xbzk <[email protected]>
Co-committed-by: xbzk <[email protected]>
2026-01-18 16:11:31 +01:00
lizzie 291b5febec [common] merge RenderBackend and ShaderBackend options (#3313)
first of all it makes UI a tad bit more simple and benefits the end user
second, it allows to add new backends a bit more easily
and also, there was a shader backend option in android... we don't use opengl in android
so may as well save ourselves the trouble, aye

![image](/attachments/c0195bca-da18-4907-9e4a-3b62c4292f1a)

Signed-off-by: lizzie <[email protected]>

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3313
Reviewed-by: Maufeat <[email protected]>
Reviewed-by: DraVee <[email protected]>
Co-authored-by: lizzie <[email protected]>
Co-committed-by: lizzie <[email protected]>
2026-01-18 12:33:00 +01:00
Caio Oliveira ed0276582e [fixup] Revert "[video_core] remove decoders.cpp template<A,B> spam (16 copies of the same function) (#3263)" (#3333)
This make slowdown on:
- Mario 3D World (path from World 6 to World 7)
- Okami HD (On Docked)

Should check the cause for such regression

(Maran's Note: looks like VRAM allocation is not being freed?)

This reverts commit ea29f169e6.

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3333
Reviewed-by: Maufeat <[email protected]>
Reviewed-by: MaranBr <[email protected]>
Co-authored-by: Caio Oliveira <[email protected]>
Co-committed-by: Caio Oliveira <[email protected]>
2026-01-18 05:42:05 +01:00
DraVee 5406a153e1 [cmake] Promote Qt FreeBSD (fix building with Qt 6.10.1) (#3335)
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3335
Reviewed-by: Maufeat <[email protected]>
Reviewed-by: CamilleLaVey <[email protected]>
Co-authored-by: DraVee <[email protected]>
Co-committed-by: DraVee <[email protected]>
2026-01-18 05:25:37 +01:00
xbzk 4ea8311113 revert old mocking for bindless textures (#3331)
this revert is intended to bring back the original behavior (throw exception) for untracked bindless textures.
reason: this was a mock intended to extend ender magnolia's mean time to crash.
by reverting it we will be able to identify more games which rely on bindless textures, and avoid to obfuscate visual issues investigation on them.

this is super safe to merge. if any game that was benefitting of it gets visual regression, we will know immediately via the throw message in logs.

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3331
Reviewed-by: MaranBr <[email protected]>
Reviewed-by: Maufeat <[email protected]>
Co-authored-by: xbzk <[email protected]>
Co-committed-by: xbzk <[email protected]>
2026-01-18 04:31:24 +01:00
CamilleLaVey 1a9b4b37e1 [buffer_cache] Add batching support for memory tracker updates (#3288)
I added a batching/ coalescing of ranges in WordManager to reduce calls per pages in UpdatePagesCachedCount, also a test to verify if FlushCachedWrites coalesced (reduces callings to UpdatePagesCachedCount) callings and register each of them to inspect them.

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3288
Reviewed-by: Maufeat <[email protected]>
Reviewed-by: DraVee <[email protected]>
Co-authored-by: CamilleLaVey <[email protected]>
Co-committed-by: CamilleLaVey <[email protected]>
2026-01-18 03:48:09 +01:00
CamilleLaVeyandlizzie 51cc1bc6be [scheduler, dma, maxwell] Reduce CPU stalls in the GPU command processing pipeline through multiple targeted optimizations (#3296)
- Scheduler: Reduced lock scope to allow parallel command preparation across channels
- DmaPusher: Added command prefetching (16-command lookahead) to improve cache hit rate
- Maxwell3D: Pre-allocated macro parameter vectors to eliminate dynamic allocations and unrolls dirty register tracking loop for better cache locality
- MacroEngine: Added last-executed macro cache to skip hash table lookups on hot path

Co-authored-by: lizzie <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3296
Reviewed-by: Maufeat <[email protected]>
Reviewed-by: DraVee <[email protected]>
Co-authored-by: CamilleLaVey <[email protected]>
Co-committed-by: CamilleLaVey <[email protected]>
2026-01-18 03:45:18 +01:00
6ec6ca7c37 [clang, opengl] fix opengl build on PGO build and clang-cl on windows (#3332)
- [backported] opengl: fix PGO build error
(pulled from 34332ab81326c3f2dfae2fd11ff5b18619fedb1e@pflyly/eden-nightly)

- [clang] chore: fix std::min on windows

Signed-off-by: lizzie [email protected]
Co-authored-by: DraVee <[email protected]>
Co-authored-by: Escary <[email protected]>
Co-authored-by: Caio Oliveira <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3332
Reviewed-by: DraVee <[email protected]>
Reviewed-by: MaranBr <[email protected]>
Co-authored-by: Lizzie <[email protected]>
Co-committed-by: Lizzie <[email protected]>
2026-01-18 02:35:57 +01:00
Maufeat 833a38b443 [hle] adds SetProtocol to user local communication (#3329)
Stubs SetProtocol needed for Animal Crossing 3.0 LDN

SwitchBrew documentation: https://switchbrew.org/wiki/LDN_services#SetProtocol

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3329
Reviewed-by: MaranBr <[email protected]>
Reviewed-by: Lizzie <[email protected]>
Co-authored-by: Maufeat <[email protected]>
Co-committed-by: Maufeat <[email protected]>
2026-01-18 02:21:59 +01:00
xbzk 8df41f06c7 [android, ui] joypad overlay show/hide overhaul + touchpad fix (#3315)
As stated by @PavelBARABANOV when joypad overlay was being hidden via quick toggle or autohides (time/input), touchpad was being disabled along (hiding via original show/hide checkbox was working ok).

This PR fixes this by centering all joypad overlay toggling paths, and using correct method to not disable touchpad.
Additionally, mirror state variable was removed for better sync, and also touching screen will only unhide if hiding was triggered via autohides.

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3315
Reviewed-by: MaranBr <[email protected]>
Reviewed-by: DraVee <[email protected]>
Co-authored-by: xbzk <[email protected]>
Co-committed-by: xbzk <[email protected]>
2026-01-17 23:42:34 +01:00
CamilleLaVey 4a7772f104 [renderer_vulkan, buffer_cache] Fixing turnip shenanigans (#3325)
This is a trivial change to remove turnip from some of my clamps for qcom hardware, fixes crashes of turnip drivers in recent nightlies.

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3325
Reviewed-by: MaranBr <[email protected]>
Reviewed-by: DraVee <[email protected]>
Co-authored-by: CamilleLaVey <[email protected]>
Co-committed-by: CamilleLaVey <[email protected]>
2026-01-17 10:17:10 +01:00
lizzie 170f113453 [qt] remove VTable bouncing from unsafe options in CPU settings (#3320)
it's a workaround, not a speed optimisation

Signed-off-by: lizzie <[email protected]>

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3320
Reviewed-by: DraVee <[email protected]>
Reviewed-by: MaranBr <[email protected]>
Co-authored-by: lizzie <[email protected]>
Co-committed-by: lizzie <[email protected]>
2026-01-17 03:40:09 +01:00
ae501e256e [bcat/news/web/am] Implement news applet, proper TLV return, external web browser URL and qlaunch app sorting (#3308)
This pulls eden releases changelog & text from our github releases.
We don't store the msgpack file but rather generate them in-memory for the News Applet.
Uses cache folder. Files generated are:
- cache/news/github_releases.json
- cache/news/eden_logo.jpg
- cache/news/news_read

Additional changes:
- Proper TLV returning for online web applet, to open external URL
- Add applet type `LHub` to properly close, as it also uses TLV return
- qlaunch app sorting, adds another cached .json to track last launched app timestamps and sort them accordingly

Co-authored-by: crueter <[email protected]>
Co-authored-by: DraVee <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3308
Reviewed-by: MaranBr <[email protected]>
Reviewed-by: DraVee <[email protected]>
Reviewed-by: Lizzie <[email protected]>
Co-authored-by: Maufeat <[email protected]>
Co-committed-by: Maufeat <[email protected]>
2026-01-17 01:48:15 +01:00
BixandCamilleLaVey b7417f68ce [android] Update Driver recommendation to T23 (#3323)
Signed-off-by: Bix <[email protected]>
Co-authored-by: CamilleLaVey <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3323
Reviewed-by: CamilleLaVey <[email protected]>
Reviewed-by: DraVee <[email protected]>
Reviewed-by: Lizzie <[email protected]>
Co-authored-by: Bix <[email protected]>
Co-committed-by: Bix <[email protected]>
2026-01-17 00:06:09 +01:00
lizzie 83a28dc251 [common, core] remove uneeded memory indirection overhead at startup (#3306)
for core stuff:
just remove unique ptrs that dont need any pointer stability at all (afterall its an allocation within an allocation so yeah)

for fibers:
Main reasoning behind this is because virtualBuffer<> is stupidly fucking expensive and it also clutters my fstat view
ALSO mmap is a syscall, syscalls are bad for performance or whatever
ALSO std::vector<> is better suited for handling this kind of "fixed size thing where its like big but not THAT big" (512 KiB isn't going to kill your memory usage for each fiber...)

for core.cpp stuff
- inlines stuff into std::optional<> as opposed to std::unique_ptr<> (because yknow, we are making the Impl from an unique_ptr, allocating within an allocation is unnecessary)
- reorganizes the structures a bit so padding doesnt screw us up (it's not perfect but eh saves a measly 44 bytes)
- removes unused/dead code
- uses std::vector<> instead of std::deque<>

no perf impact expected, maybe some initialisation boost but very minimal impact nonethless
lto gets rid of most calls anyways - the heavy issue is with shared_ptr and the cache coherency from the atomics... but i clumped them together because well, they kinda do not suffer from cache coherency - hopefully not a mistake

this balloons the size of Impl to about 1.67 MB - which is fine because we throw it in the stack anyways

REST OF INTERFACES: most of them ballooned in size as well, but overhead is ok since its an allocation within an alloc, no stack is used (when it comes to storing these i mean)

Signed-off-by: lizzie [email protected]
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3306
Reviewed-by: CamilleLaVey <[email protected]>
Reviewed-by: MaranBr <[email protected]>
Co-authored-by: lizzie <[email protected]>
Co-committed-by: lizzie <[email protected]>
2026-01-16 23:39:16 +01:00
lizzie 5768600c8b [input_common] fix xinput raw not working on sdl2 (#3305)
this should fix issue where you couldn't connect more than 4 controllers at once
Signed-off-by: lizzie <[email protected]>

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3305
Reviewed-by: MaranBr <[email protected]>
Reviewed-by: crueter <[email protected]>
Co-authored-by: lizzie <[email protected]>
Co-committed-by: lizzie <[email protected]>
2026-01-16 22:18:19 +01:00
crueter 6f9fb83a1d [cmake] Fix Qt component finding (#3319)
Oops

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3319
Reviewed-by: MaranBr <[email protected]>
Reviewed-by: Lizzie <[email protected]>
Reviewed-by: DraVee <[email protected]>
2026-01-16 03:34:04 +01:00
Caio OliveiraandMaufeat a82cf247fd [chore, dist] icons: newyear2025 -> base (#3298)
Signed-off-by: Caio Oliveira <[email protected]>
Co-authored-by: Maufeat <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3298
Reviewed-by: Maufeat <[email protected]>
Reviewed-by: Lizzie <[email protected]>
Co-authored-by: Caio Oliveira <[email protected]>
Co-committed-by: Caio Oliveira <[email protected]>
2026-01-15 21:47:41 +01:00
lizzie 8d9607ec60 [dynarmic] fix qlaunch on android (#3310)
Signed-off-by: lizzie <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3310
Reviewed-by: Maufeat <[email protected]>
Reviewed-by: CamilleLaVey <[email protected]>
Co-authored-by: lizzie <[email protected]>
Co-committed-by: lizzie <[email protected]>
2026-01-14 23:08:57 +01:00
crueter 89f72d286a [cmake, tools] update CPMUtil and add support for CPMUtil bundled Qt, module updates, cleanups (#3289)
Support for bundled Qt, not through aqtinstall but rather my CI. Multimedia is
implemented too, works on both Windows and Linux, though we don't
actually use it so it doesn't really matter. Contains Declarative and all that so the Quick frontend will work once it becomes a thing.

Some options have changed, notably w.r.t LTO and faster
linker, which are now handled directly in the modules.

CPMUtil also has support for custom dirs (`PackageName_CUSTOM_DIR`) now. Probably most useful for adding external fragment shaders and whatnot.

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3289
2026-01-14 19:29:13 +01:00
ecd01e13fd [video_core] Implement GPU-accelerated texture unswizzling and optimize sparse texture handling (#3246)
- [Added] a new compute shader to handle block-linear unswizzling on the GPU, reducing CPU overhead during texture uploads
- [Implemented] BlockLinearUnswizzle3DPass to take advantage of the new compute shader, unimplemented for OpenGL
- [Implemented] texture streaming and queue system for large sparse textures to prevent hitches
- [Implemented] aggressive garbage collection system to eject large sparse textures to save on memory (Unused)
- [Added] user settings to adjust the streaming unswizzle system for low-end machines
- [Improved] slightly the ASTC GPU decoding system

Co-authored-by: Caio Oliveira <[email protected]>
Co-authored-by: CamilleLaVey <[email protected]>
Co-authored-by: DraVee <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3246
Reviewed-by: Maufeat <[email protected]>
Reviewed-by: MaranBr <[email protected]>
Reviewed-by: DraVee <[email protected]>
Reviewed-by: CamilleLaVey <[email protected]>
Co-authored-by: Forrest Keller <[email protected]>
Co-committed-by: Forrest Keller <[email protected]>
2026-01-13 19:18:08 +01:00
lizzie f544004b5d [core/hle] update firmware constants to 21.2.0 (#3304)
Signed-off-by: lizzie <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3304
Reviewed-by: MaranBr <[email protected]>
Reviewed-by: DraVee <[email protected]>
Co-authored-by: lizzie <[email protected]>
Co-committed-by: lizzie <[email protected]>
2026-01-13 15:02:42 +01:00
xbzkandCaio Oliveira 9c5203d922 [debug] added functions to enable access to debug knobs from kotlin side + docs (#3265)
Co-authored-by: Caio Oliveira <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3265
Reviewed-by: MaranBr <[email protected]>
Reviewed-by: DraVee <[email protected]>
Reviewed-by: CamilleLaVey <[email protected]>
Co-authored-by: xbzk <[email protected]>
Co-committed-by: xbzk <[email protected]>
2026-01-13 04:22:46 +01:00
lizzie b1daffad19 [common] move spinlock to pure header def (#3287)
inline justified because it's like 4-5 assembly instructions max

Signed-off-by: lizzie <[email protected]>

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3287
Reviewed-by: DraVee <[email protected]>
Reviewed-by: CamilleLaVey <[email protected]>
Co-authored-by: lizzie <[email protected]>
Co-committed-by: lizzie <[email protected]>
2026-01-13 04:17:27 +01:00
lizzie 3bae47cd94 [dynarmic] backport WAITPKG based spinlocks (#2614)
Alder Lake/Tremont or superior feature only, based on archived UMWAIT by @Wunkolo. With some fixes due to register corruption/clobber (regalloc was blind to this)

Signed-off-by: lizzie <[email protected]>

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/2614
Reviewed-by: MaranBr <[email protected]>
Reviewed-by: DraVee <[email protected]>
Reviewed-by: CamilleLaVey <[email protected]>
Co-authored-by: lizzie <[email protected]>
Co-committed-by: lizzie <[email protected]>
2026-01-13 03:37:56 +01:00