Commit graph

2414 commits

Author SHA1 Message Date
lizzie
5a8dce8de5 file loggin is safe now, settings too 2026-05-16 01:51:42 +00:00
lizzie
2e8b0a7554 properly define orbis page size 2026-05-16 01:51:42 +00:00
lizzie
830882c98e proper virtual base, remove uneeded sysconf things 2026-05-16 01:51:42 +00:00
lizzie
48ddd1db15 ryujinx was never ported to PS4 2026-05-16 01:51:42 +00:00
lizzie
17c6af80b2 fix shit 2026-05-16 01:51:42 +00:00
lizzie
87e12ed35d native ps4 audio sink 2026-05-16 01:51:42 +00:00
lizzie
e7b024f888 fix virtual buffers 2026-05-16 01:51:42 +00:00
lizzie
e42f2557c4 let it rip 2026-05-16 01:51:42 +00:00
lizzie
078a998bc2 leave pending param package stuff 2026-05-16 01:51:42 +00:00
lizzie
1bed6723d3 restore protection 2026-05-16 01:51:42 +00:00
lizzie
404f89ed9b immediately terminate in OO, use 2MB swap handler 2026-05-16 01:51:42 +00:00
lizzie
21667df1ea use btver2 2026-05-16 01:51:42 +00:00
lizzie
f518b699da reduce fiber sizes 2026-05-16 01:51:42 +00:00
lizzie
28445b1a87 use dmem for swap buffers, restore full jit sizes 2026-05-16 01:51:42 +00:00
lizzie
171cc72975 use newer sdl2, make bigger stack 2026-05-16 01:51:42 +00:00
lizzie
48e033396d update loicense 2026-05-16 01:51:42 +00:00
lizzie
c5e014abaa reduce arm codeisze, force 16x4 pages again 2026-05-16 01:51:41 +00:00
lizzie
d7aee42379 extra buffer precautions to not exhaust DMem, format better + perf history nerf 2026-05-16 01:51:41 +00:00
lizzie
9f9d130fa0 fibers that don't immediately crash?!!?!?!!? 2026-05-16 01:51:41 +00:00
lizzie
1db720173d add fallback buffer back 2026-05-16 01:51:41 +00:00
lizzie
56d60ab236 fix alloc failures 2026-05-16 01:51:41 +00:00
lizzie
c86887d7ff fix for crashes on TLS due to openorbis being W E I R D 2026-05-16 01:51:41 +00:00
lizzie
a59aeea2e2 opengl bullshit 2026-05-16 01:51:41 +00:00
lizzie
51e4e1ca32 proper memswap mechanism 2026-05-16 01:51:41 +00:00
lizzie
9033c5fceb more stupid stuff 2026-05-16 01:51:41 +00:00
lizzie
488aaea1d6 fixes 4 stuff 2026-05-16 01:51:41 +00:00
lizzie
efc44db9df swap handling 2026-05-16 01:51:41 +00:00
lizzie
fc3c706fd5 license 2026-05-16 01:51:41 +00:00
lizzie
c73e17f4f1 evil haxx 2026-05-16 01:51:30 +00:00
lizzie
c7169dfbb1 extra ps4 defs 2026-05-16 01:51:30 +00:00
lizzie
27f0d1add1 make virtual buffer become an optional 2026-05-16 01:51:29 +00:00
lizzie
48c0912bdd force NO fastmem 2026-05-16 01:51:29 +00:00
lizzie
88ad8917dc more memory shit 2026-05-16 01:51:29 +00:00
lizzie
0b1d7d39bc MAP_SYSTEM 2026-05-16 01:51:29 +00:00
lizzie
14dccb898f (likely) fixes for virtual dmem? 2026-05-16 01:51:29 +00:00
lizzie
5be4ad6b65 disable fastmem 2026-05-16 01:51:29 +00:00
lizzie
bcb9e1514c try to fix the paths 2026-05-16 01:51:29 +00:00
lizzie
a7cb95d921 sysconf stub cuz crash(?) + some stderrp stuff 2026-05-16 01:51:29 +00:00
lizzie
b95c0092e9 merge 2026-05-16 01:51:07 +00:00
lizzie
85b45d5472 merge 2026-05-16 01:50:50 +00:00
lizzie
2f0f8a979c
[dynarmic, macroHLE] Use faster ankerl for xbyak maps (#3716)
the nominal std::unordered_map<> isn't enough to warrant it's continued usage in xbyak internal structures, thus using ankerl should greatly remove a lot of indirection/stdc++ specific overhead from the usually poorly performant std::unordered_map

Both dynarmic and macroHLE should benefit greatly from a less-stupid unordered_dense

This should speedup both CPU and shader compilation latency (NOT BY A GREAT MARGIN) just enough to make loading zones in ToTK less horrific

Signed-off-by: lizzie <lizzie@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3716
Reviewed-by: crueter <crueter@eden-emu.dev>
2026-05-15 22:07:45 +02:00
lizzie
975aa4e2f2
[common] remove ptr indirection on WallClock (#3864)
also devirtualizes manually since compiler doesn't do it with LTO

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

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3864
Reviewed-by: crueter <crueter@eden-emu.dev>
2026-05-15 22:06:38 +02:00
John
7e84f9ef59
[common] Revert back Aync GPU default to true to fix flickering on Linux (#3946)
Some checks failed
tx-src / sources (push) Has been cancelled
Check Strings / check-strings (push) Has been cancelled
The cause of the flickering needs to be investigated but this will set it ON as default for desktop platforms.

Co-authored-by: lizzie <lizzie@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3946
Reviewed-by: crueter <crueter@eden-emu.dev>
Reviewed-by: Lizzie <lizzie@eden-emu.dev>
Reviewed-by: CamilleLaVey <camillelavey99@gmail.com>
2026-05-11 22:03:19 +02:00
John
609756db30
[common] Revert default VIDS setting to true to fix AMD GPU and Windows (#3945)
Some checks are pending
tx-src / sources (push) Waiting to run
Check Strings / check-strings (push) Waiting to run
Games such as bayonetta 3 or totk need VIDS on for some windows users or it results in broken graphics.

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3945
Reviewed-by: crueter <crueter@eden-emu.dev>
Reviewed-by: Lizzie <lizzie@eden-emu.dev>
2026-05-11 18:52:28 +02:00
CamilleLaVey
5575d77520
[android] Another set of QoL changes for Android - 2 (#3886)
Some checks failed
tx-src / sources (push) Has been cancelled
Check Strings / check-strings (push) Has been cancelled
Changes:

- Defaults: Set Async GPU and Async Vulkan Presentation to OFF. Stability wasn't worth the trade-off.
- Threading: Lowered default pipeline workers from 7 to 4 to reduce heat and CPU contention.
- Settings: Added a slider for manual pipeline worker count so users can test what works best for their SoC.
- QCOM: Removed SPIRV bans; improves load times and thermals in heavy titles like Jump Force.
- UI: Cleaned up settings descriptions to be less ambiguous.

------------------------
Some games fixed:

-> Trinity Fusion: No longer crashes with Turnip, no longer shows the black dot in the middle of the screen on both QCOM and Turnip drivers.
-> Naruto X Boruto - Ultimate Ninja Storm Connections: Game no longer requires a fixed version of turnip to work (previously requiring Turnip driver from MESA 24.3/ @MrPurple666 EoL v2 driver)

Co-authored-by: lizzie <lizzie@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3886
Reviewed-by: crueter <crueter@eden-emu.dev>
Reviewed-by: Lizzie <lizzie@eden-emu.dev>
2026-05-10 06:38:02 +02:00
John
732fee2e85
Add Enable Legacy Rescale Pass to Android (#3851)
Some checks are pending
tx-src / sources (push) Waiting to run
Check Strings / check-strings (push) Waiting to run
Testing: Luigi Mansion 3 artifact lines also happen on android.

Toggle existed on every platform but android. It works on Android and also removes the artifact lines that also happen on intel and amd gpus.

A testing PR until #3665

Co-authored-by: lizzie <lizzie@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3851
Reviewed-by: CamilleLaVey <camillelavey99@gmail.com>
2026-05-09 23:49:14 +02:00
lizzie
707e8afb29
[common] remove logging thread, simply write in place like a maniac (#3928)
theoretically, it's better because distributes load of logging across various threads

this should work because 99% of I/O solutions are blocking by default

EXCEPT, maybe android differs? please check logcat didn't get affected (again) by me underestimating android ~~stupidity~~ brillaince

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

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3928
Reviewed-by: CamilleLaVey <camillelavey99@gmail.com>
2026-05-09 05:26:17 +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
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