Commit graph

28628 commits

Author SHA1 Message Date
lizzie 92819f34cd extra buffer precautions to not exhaust DMem, format better + perf history nerf 2026-04-30 15:49:16 +00:00
lizzie 9dc1d4c2f6 more inline pt2 2026-04-30 15:49:16 +00:00
lizzie 783571b9e0 fix atexit impl 2026-04-30 15:49:16 +00:00
lizzie 78b6d1c952 fibers that don't immediately crash?!!?!?!!? 2026-04-30 15:49:16 +00:00
lizzie aa4a885de8 add fallback buffer back 2026-04-30 15:49:16 +00:00
lizzie 963bfbe2eb force running services on host 2026-04-30 15:49:16 +00:00
lizzie d72d5aa40b fix alloc failures 2026-04-30 15:49:16 +00:00
lizzie 807283daa6 fix sdl2 2026-04-30 15:49:16 +00:00
lizzie 651411fa33 fix for crashes on TLS due to openorbis being W E I R D 2026-04-30 15:49:16 +00:00
lizzie d9765c72d8 opengl bullshit 2026-04-30 15:49:16 +00:00
lizzie 662a869826 proper memswap mechanism 2026-04-30 15:49:16 +00:00
lizzie 1638c39d0e more stupid stuff 2026-04-30 15:49:16 +00:00
lizzie f23092b82b fixes 4 stuff 2026-04-30 15:49:16 +00:00
lizzie bf4eecc123 swap handling 2026-04-30 15:49:16 +00:00
lizzie 2d9f2485bf license 2026-04-30 15:49:15 +00:00
lizzie ef4c466223 add sce_module so it loads on real hw 2026-04-30 15:49:06 +00:00
lizzie 7e8828d6f4 fixes for mbedtls 2026-04-30 15:49:06 +00:00
lizzie 9f4a9a8b61 adapt to new master 2026-04-30 15:49:06 +00:00
lizzie a3d11c6759 evil haxx 2026-04-30 15:49:06 +00:00
lizzie e0cdd4c5c4 extra ps4 defs 2026-04-30 15:49:06 +00:00
lizzie 1042bd46e5 make virtual buffer become an optional 2026-04-30 15:49:04 +00:00
lizzie a1c9dbee9c force NO fastmem 2026-04-30 15:48:46 +00:00
lizzie 9cce23409e more memory shit 2026-04-30 15:48:46 +00:00
lizzie b2ae1a42d9 MAP_SYSTEM 2026-04-30 15:48:46 +00:00
lizzie ec30d5edbc (likely) fixes for virtual dmem? 2026-04-30 15:48:46 +00:00
lizzie cfbbc38247 disable fastmem 2026-04-30 15:48:46 +00:00
lizzie db5eea139e try to fix the paths 2026-04-30 15:48:46 +00:00
lizzie afefd540f2 sysconf stub cuz crash(?) + some stderrp stuff 2026-04-30 15:48:46 +00:00
lizzie 14846f243a the orb 2026-04-30 15:48:46 +00:00
lizzie c88cd603ce fself + pkg stuffs 2026-04-30 15:48:46 +00:00
lizzie 657912567b make .pkg and .self 2026-04-30 15:48:46 +00:00
lizzie bbf7eab997 exclude more stuff from vulkan 2026-04-30 15:48:46 +00:00
lizzie c7ce61af69 exclude from vulkan surface selection 2026-04-30 15:48:46 +00:00
lizzie d8780a5051 buildable toolchain script + fixes for ffmpeg 2026-04-30 15:48:46 +00:00
lizzie f63d99c666 merge 2026-04-30 15:48:45 +00:00
lizzie 07a4727041 merge 2026-04-30 15:48:45 +00:00
lizzie b9d496b9be fix 2026-04-30 15:48:45 +00:00
lizzie 8f31317c03 toolchain-fix 2026-04-30 15:48:45 +00:00
lizzie 633028864f fuck you 2026-04-30 15:48:45 +00:00
lizzie b62f1d3aeb no conversion fixs 2026-04-30 15:48:45 +00:00
lizzie 8765b49512
[video_core] fix H264 and jthread() causing spurious errors (#3907)
Some checks are pending
tx-src / sources (push) Waiting to run
Check Strings / check-strings (push) Waiting to run
fixes regression by #3878

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

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3907
Reviewed-by: crueter <crueter@eden-emu.dev>
Reviewed-by: MaranBr <maranbr@eden-emu.dev>
2026-04-29 19:23:20 +02:00
lizzie a587b7dc3a
[hle/nvdrv] drop redundant shared_ptr<> in internal nvhost_as_gpu mappings (#3858)
Signed-off-by: lizzie <lizzie@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3858
Reviewed-by: MaranBr <maranbr@eden-emu.dev>
Reviewed-by: crueter <crueter@eden-emu.dev>
2026-04-29 16:44:28 +02:00
lizzie 90515bc6a2
[host1x] fix ffmpeg not having va-api on freebsd, inline nvenc (#3878)
- fix va-api not being used on freebsd

small thingies dont affect a lot:
- removes some pointer indirection (why save pointer to GMMU if its accesible via host1x)
- use std::variant<> for decoder
- miscelly vp9/v8/h264 opts
Signed-off-by: lizzie <lizzie@eden-emu.dev>

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3878
Reviewed-by: crueter <crueter@eden-emu.dev>
Reviewed-by: MaranBr <maranbr@eden-emu.dev>
2026-04-29 16:41:25 +02:00
crueter 676b1aabfc
[frontend] Built-in auto updater (#3845)
Some checks are pending
tx-src / sources (push) Waiting to run
Check Strings / check-strings (push) Waiting to run
Checks latest release and opens a dialog containing the changelog, and
allow the user to select a specific build to download. After
downloading, it prompts the user to open it.

On Windows, this just opens up the zip in File Explorer. In the future setup files will be available. On macOS this opens up the DMG in Finder so the user can drag it to the Applications folder. Android retains the auto-update functionality from before, but updated to the new scheme. Body/View on Forgejo are not implemented, that should be in a future PR.

Additionally, moved some common httplib incantations to `Common::Net`. This will serve as the common network accessor and JSON parser from here on out.

TODO:
- [x] android :(
- [x] Search for builds based on keywords, with weights towards certain builds (e.g. macOS will search for dmg then tar.gz, windows msvc then mingw/exe then zip, etc.)
- [x] remove linux leftovers
- [x] don't allow asset selection on platforms w/o assets
- [x] nightly changelog should be in the real

FUTURE IMPLEMENTATION:
- [ ] Body/View on Forgejo for Android
- [ ] Setup files for Windows (Eden/nightly are separate) -- maybe portable/setup selector?
- [ ] Something else I'm forgetting

Signed-off-by: crueter <crueter@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3845
2026-04-28 20:42:23 +02:00
lizzie 77decca678
[video_core/engines/maxwell3d] memory inline DrawState to reduce indirection on hot paths (#3758)
Some checks are pending
tx-src / sources (push) Waiting to run
Check Strings / check-strings (push) Waiting to run
usual indirection removal
helps very slightly to codegen

the idea is basically to reduce the amount of pointer deference overall in the code, and use idiomatic std::variant<>-isms to not rely on vtables/unique_ptr overhead
this should allow the compiler to emit better code
of course it's a tiny optimisation and only CPU side, but allows us to reduce indirection which is almost always a good thing

"but youre passing more parameters to the function!!!" its literally memoized into a register my friend

Signed-off-by: lizzie <lizzie@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3758
Reviewed-by: crueter <crueter@eden-emu.dev>
Reviewed-by: MaranBr <maranbr@eden-emu.dev>
2026-04-28 17:44:51 +02:00
Eden CI ed225f8a8b
[dist, android] Update translations from Transifex for Apr 28 (#3902)
Automatic translation update for Apr 28

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3902
2026-04-28 16:11:44 +02:00
lizzie d69bd86183
[memory] coalesce redundant remappings of MultiPageLevel (#3857)
Some checks are pending
tx-src / sources (push) Waiting to run
Check Strings / check-strings (push) Waiting to run
there is no need to call mmap() over the mapped region as the OS will automatically map it via lazy paging

basically the mmap() and virtualAlloc on a region already allocated is a no-op (FOR THIS SPECIFIC USECASE)

Signed-off-by: lizzie <lizzie@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3857
Reviewed-by: crueter <crueter@eden-emu.dev>
2026-04-28 01:17:56 +02:00
lizzie c172abfb53
[hle] reuse previous pagetable when initializing new processes on the same KProcessPageTable (#3891)
VirtualBuffer<> would be recreated each time due to the `operator=()` from the unique_ptr<> when initializing a new process, this change makes it so said thing doesn't happen (instead it resizes the existing buffer)

this means that consecutive launches of the same process that happen to have the same process page table (or reuse it) will no longer incur a ctor/dtor path for VirtualBuffer and instead just resize the existing one

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

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3891
Reviewed-by: crueter <crueter@eden-emu.dev>
Reviewed-by: CamilleLaVey <camillelavey99@gmail.com>
2026-04-28 01:15:21 +02:00
lizzie d33dc16820
[dynarmic] set BL terminal as FastLinkBlock (#3811)
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/3811
Reviewed-by: crueter <crueter@eden-emu.dev>
Reviewed-by: CamilleLaVey <camillelavey99@gmail.com>
2026-04-28 01:12:35 +02:00
lizzie 8cdaf19a83
[video_core] simplify InvalidationAccumulator (#3890)
various redundant fields aren't required, so just redo it for good measure

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

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3890
Reviewed-by: crueter <crueter@eden-emu.dev>
Reviewed-by: CamilleLaVey <camillelavey99@gmail.com>
2026-04-28 00:24:54 +02:00