Commit graph

25196 commits

Author SHA1 Message Date
lizzie
400306abf7 fix shit 2 2026-04-30 16:00:30 +00:00
lizzie
dc1d35d251 swiftuijoystick 2026-04-30 16:00:30 +00:00
lizzie
067c7ae370 merge more 2026-04-30 16:00:30 +00:00
lizzie
e11b8a0733 fix? 2026-04-30 16:00:30 +00:00
lizzie
6f620a00d0 pomelo scraps 2026-04-30 16:00:30 +00:00
lizzie
3222245cfa remove toolchain file + remove multibuild thingy 2026-04-30 16:00:30 +00:00
lizzie
07ed91bc1b AAAAAA 2026-04-30 16:00:30 +00:00
crueter
b6bced1fe0 Build fixes
Signed-off-by: crueter <crueter@eden-emu.dev>
2026-04-30 16:00:30 +00:00
lizzie
f0b638f845 add basic ios shit 2026-04-30 16:00:30 +00:00
crueter
858c49a648 Fix most build errors
Signed-off-by: crueter <crueter@eden-emu.dev>
2026-04-30 15:59:47 +00:00
lizzie
c89a4d8b03 fix sirit i think, add ios-aarch64 2026-04-30 15:58:15 +00:00
lizzie
c78a2fc57e changes? 2026-04-30 15:58:15 +00:00
lizzie
54dd651d6f fix shit? 2026-04-30 15:58:15 +00:00
lizzie
f4df3e1dd7 fix #include "common/logging.h" 2026-04-30 15:58:15 +00:00
lizzie
f7e20cec17 fix IOS again fucking objc bridge 2026-04-30 15:58:15 +00:00
lizzie
0302ef8c43 fix? 2026-04-30 15:58:15 +00:00
lizzie
cafbd54ff0 properly use bridging header, fix headers 2026-04-30 15:58:15 +00:00
lizzie
c646d8f0ee fix swift driver I HOPE 2026-04-30 15:58:15 +00:00
lizzie
64bc2df9ee license 2026-04-30 15:58:15 +00:00
lizzie
c690b4c406 [temporary c++ shit] 2026-04-30 15:58:15 +00:00
lizzie
50f912f9f3 bit of cmake fuckery 2026-04-30 15:58:14 +00:00
lizzie
8efe7f94ea use language generator exprs 2026-04-30 15:57:37 +00:00
lizzie
6534f014cd $<$<COMPILE_LANGUAGE:C,CXX>:-Werror=missing-declarations> 2026-04-30 15:57:37 +00:00
lizzie
f12f2130f6 bridge changes/fixes 2026-04-30 15:57:37 +00:00
lizzie
15c99c31ed fix license 2026-04-30 15:57:37 +00:00
lizzie
4c502fb792 fix xcode 2? 2026-04-30 15:57:37 +00:00
lizzie
3b873d7742 fix xcode paths? 2026-04-30 15:57:37 +00:00
lizzie
4b96a29269 fx 2026-04-30 15:57:37 +00:00
lizzie
40ec05c8a7 fix stuff 2026-04-30 15:57:37 +00:00
lizzie
5d9692ea75 stupid macos 2026-04-30 15:57:37 +00:00
lizzie
e0359dca4b fix license 2026-04-30 15:56:29 +00:00
lizzie
7f83866af4 fix ffmpeg 2026-04-30 15:56:28 +00:00
lizzie
4ebc850fcf license 2026-04-30 15:56:00 +00:00
lizzie
a643e729e5 flatten + cmake 2026-04-30 15:55:59 +00:00
lizzie
48b2097544 flatten 2026-04-30 15:55:59 +00:00
lizzie
35f2fd4923 loicense 2026-04-30 15:55:59 +00:00
lizzie
a3203ab008 modernize #1 2026-04-30 15:55:59 +00:00
lizzie
bc9eb15444 sudachi ios stuff 2026-04-30 15:55:59 +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)
Some checks are pending
tx-src / sources (push) Waiting to run
Check Strings / check-strings (push) Waiting to run
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)
Some checks are pending
tx-src / sources (push) Waiting to run
Check Strings / check-strings (push) Waiting to run
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
lizzie
f088f5bd45
[loader] change ASLR algo to be more uniform (#3869)
Some checks are pending
tx-src / sources (push) Waiting to run
Check Strings / check-strings (push) Waiting to run
Signed-off-by: lizzie <lizzie@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3869
Reviewed-by: crueter <crueter@eden-emu.dev>
Reviewed-by: MaranBr <maranbr@eden-emu.dev>
2026-04-27 05:09:55 +02:00
lizzie
cbeea5b954
[hle] handle NPad shared_memory being null on certain updates and cases (#3860)
Some checks are pending
tx-src / sources (push) Waiting to run
Check Strings / check-strings (push) Waiting to run
Does NOT fix root issue with shared_memory of NPad yet, that is something probably separate
I'd like to suspect it's because every NPad by default it's expected to have shared memory, even when not explicitly initialized, but seems unlikely

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

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3860
Reviewed-by: MaranBr <maranbr@eden-emu.dev>
Reviewed-by: crueter <crueter@eden-emu.dev>
2026-04-27 04:01:49 +02:00