Tree:
f12fa481a8
00336
2ndAdjustmentVulkan
2ndgpuopts
Compatlist
Kernel
Update-some-barriers-test
astc_optimization1
astc_optimizations
atomicops-mxwell
auto-updater
bcn-ternary-soft
bump-httplib-minver
camillelavey-patch-1
civa
cyber/async-gpu-android
descriptor
descriptor_pool_opt
descriptor_set
discfix
dmnt2
dravee/remove-async
dynarmic-ppc64
eden-orbis-ps4
eds-true-adreno-fixes
eds-true-adreno-fixes-pre-0.1.0
eds_changes1
eds_changes_phasewise
feat/22.0.0
feat/android_kotlin_compose
feat/game_override
feat/new_lang
ffmpeg-cross-compile
fix-grid-autoalign
fix/discord-rpc
fix/socket
flatopsfixes23485
fs-try
gpuopts
interval-zero
kosmic_krisp
kosmickrisp
lanobu
lines
liz-crash-dumps-solaris
liz-dynarmic-macos-fbsd-port
liz-get-rid-of-mcl-intrusive-list
liz-heaptrack-fix
lizize/fixcrashwehenimagesizeexceed
lizzie/adreno5-mali-driver-fix
lizzie/anv-cached-mesa-hack
lizzie/astc-mp4-improv
lizzie/attempt2-better-list-dynarmic
lizzie/audio-remove-recursive-lock
lizzie/batched-draws-wip
lizzie/betterflusher
lizzie/bsdsockets-mod-fix
lizzie/correcter-convert-abgr8-srgb-d24s8
lizzie/draw-state-inline
lizzie/dynarmic-faster-xbyak
lizzie/dynarmic-next-2026-03-26
lizzie/edit-handheld-mode
lizzie/evil-f32-u32-format-fix
lizzie/fix-dragonslayer-armnce
lizzie/fix-my-fuckup-with-vic
lizzie/fix-nvmap-handles
lizzie/fix-nvmap-handles-but-evil
lizzie/fix-rw-garten
lizzie/fix-vic-msvc-attempt-2
lizzie/fs-msvc-succks
lizzie/gutter-sw-blitter
lizzie/hleinlineremoveredundant
lizzie/inline-123
lizzie/inline-cmif-request
lizzie/inline-dynarmic-spooky
lizzie/invert-gyro
lizzie/ios-port-sud
lizzie/jit-addresschecks
lizzie/lrunsdfkdsjfl
lizzie/ltofix123
lizzie/macos-fix
lizzie/macos-network-ifaces
lizzie/macos-vk-metal-fix-stype
lizzie/mark-bl-dynarmic
lizzie/maxwell-dumb-tools
lizzie/mlp223
lizzie/multicore-macos-fix1
lizzie/nce-invalidate-split
lizzie/nce-port1123
lizzie/noexcept-dynarmic
lizzie/product-model-wawa
lizzie/qt-fix-user-dialogue
lizzie/rasterizer-recursive-mutex-not
lizzie/readonly-listicons
lizzie/remove-disassembler-dynarmic
lizzie/remove-mlp-2-level
lizzie/restore-fcsm
lizzie/settings-blocked-domains
lizzie/sgsr
lizzie/sm-AtmosphereHasService
lizzie/splay
lizzie/spscs-mpscs-queue
lizzie/stable-shader-pools
lizzie/stupid-socket-bullshit
lizzie/texture-pass-revert-1
lizzie/try-fix-win11-crash-fuck
lizzie/ulaunch-attempt1
lizzie/unaligned-attempt-2
lizzie/unity-build
lizzie/update-faq-link-wwa
lizzie/vids-ratatata
lizzie/vkexperiments1-highp-fucked
lizzie/wstring-uni-123
lizzie/xbyak-unor-mapfix-with-boost
lizzie/xcode-evil-shit-123
lock-term-1
macroify-surface-stuffs
master
memory_changes
mmap-fixews
msvc
mutliplayer-filter-better1
n64
nce_cpp
pipelinederivative
qcomopts2
queries
querybugfix
refactoreds2
release-early-fences
release/0.0.3
release/0.0.4
release/0.1.0
revert-2695
revert-noinline
revert-xbyak
revertrevert
sgsrtry
showcase
showcase2
sjkdbsdfjkbsdf-2834
spvopts
sured-revert
techno48473719
test-revert-gpu-optim
test2
tex_opt
texture_cache
true-eds
true-eds-graphics
true-eds-pre-0.0.1
uma
update-deps-040626
vk-fix-oom-force-maller-buffers
vk-symph
vkexperiments1
vkfixes1
vuid00336_1
vuid02999
vuid04553
vulkan-thingy
vulkanasync
woa-turnip-expr
workgroup
xbzk-dma-pusher-step-redesign
xbzk-saf-recursive-write-with-permission-request
xbzk/background-support
xbzk/bindless-textures-support
xbzk/dma-step-ondemand-flush
xbzk/flicker-fix
xbzk/input-delay-fix
xbzk/press-back-again-issue-fix
xbzk/settings-fragment-rework
xbzk/unreal-unsafe-junk-guards
xbzk/vsync-immed-fallback-fix
xbzk/vulkan-vuid-goodies-pack
0.0.0
0.0.1-pre-alpha
0.0.2-pre-alpha
test-tag1
test-tag2
v0.0.3
v0.0.3-rc1
v0.0.3-rc2
v0.0.3-rc3
v0.0.3.git
v0.0.4
v0.0.4-rc1
v0.0.4-rc2
v0.0.4-rc2.test
v0.0.4-rc2.test2
v0.0.4-rc3
v0.0.4-rc3.test1
v0.0.4-rc3.test2
v0.0.4.test
v0.1.0
v0.1.0-rc1
v0.1.1
v0.2.0-rc1
v0.2.0-rc2
${ noResults }
7 Commits (f12fa481a82a87279a3c13005fa2cb25d7fdb758)
| Author | SHA1 | Message | Date |
|---|---|---|---|
|
|
8678cb06eb
|
[meta] clang-format literally all of the Qt code (#3706)
I'm tired of dealing with this tbh Signed-off-by: crueter <crueter@eden-emu.dev> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3706 Reviewed-by: Lizzie <lizzie@eden-emu.dev> |
1 month ago |
|
|
7d239df065
|
[hle, kernel] Add support for FW21 and kernel changes (#3004)
- Adapts kernel changes from atmosphere for firmware 21.0.0.
- Fixes launch error of firmware 21.0.0 applets.
- Adds new commands for `prepo` (New `SaveSystemReport` & `SaveSystemReportWithUser`).
- Adds new commands for `IReadOnlyApplicationControlDataInterface` (cmd 19; incomplete!)
- Adds `{12010, nullptr, "SetButtonConfigLeft"},` undocumented IHidServer.
- Adds new commands for `ngc:u` (`Mask2` and `Check2`)
- Adds new commands for system settings server (GetHttpAuthConfig) for webapplet
- Removes incompatible firmware popup warning.
Signed-off-by: lizzie lizzie@eden-emu.dev
Co-authored by: maufeat sahyno1996@gmail.com
Co-authored-by: crueter <crueter@eden-emu.dev>
Co-authored-by: JPikachu <jpikachu.eden@gmail.com>
Co-authored-by: Maufeat <sahyno1996@gmail.com>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3004
Reviewed-by: Maufeat <sahyno1996@gmail.com>
Reviewed-by: crueter <crueter@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>
|
5 months ago |
|
|
08f3639c80
|
[desktop, fs] main_window separation; fix Ryujinx save data link issues (#2929)
Some genius decided to put the entire MainWindow class into main.h and main.cpp, which is not only horrific practice but also completely destroys clangd beyond repair. Please, just don't do this. (this will probably merge conflict to hell and back) Also, fixes a bunch of issues with Ryujinx save data link: - Paths with spaces would cause mklink to fail - Add support for portable directories - Symlink detection was incorrect sometimes(????) - Some other stuff I'm forgetting Furthermore, when selecting "From Eden" and attempting to save in Ryujinx, Ryujinx would destroy the link for... some reason? So to get around this we just copy the Eden data to Ryujinx then treat it like a "From Ryujinx" op Signed-off-by: crueter <crueter@eden-emu.dev> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/2929 Reviewed-by: Lizzie <lizzie@eden-emu.dev> Reviewed-by: CamilleLaVey <camillelavey99@gmail.com> |
5 months ago |
|
|
5af5214451
|
[desktop] Move save option location in the Data Manager tool. (#2985)
Move the save option further away from the shader option to help alleviate users accidents when deleting data. (I slipped and I accidentally deleted all my saves instead of shaders when testing so many builds) Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/2985 Reviewed-by: crueter <crueter@eden-emu.dev> Reviewed-by: Caio Oliveira <caiooliveirafarias0@gmail.com> Co-authored-by: John <john@eden-emu.dev> Co-committed-by: John <john@eden-emu.dev> |
5 months ago |
|
|
39f226a853
|
[qt] Ryujinx save data link (#2815)
This adds an action to the Game List context menu that lets users link save data from Eden to Ryujinx, or vice versa. Unfortunately, this isn't so simple to deal with due to the way Ryujinx's saves work. Ryujinx stores its saves in the... config directory... in `bis/user/save`. Unlike Yuzu, however, it doesn't store things by TitleID, instead it's just a bunch of directories from 000...01 to 000...0f and so on. The way it *maps* TitleID to SaveID is via `imkvdb.arc` in `bis/system/save/8000000000000000/0/` and also an identical copy in the `1` directory for... some reason. `imkvdb.arc` is handled by `FlatMapKeyValueStore` in LibHac, which, as the name implies, is a key-value storage system that `imkvdb.arc`, and seemingly `imkvdb.arc` alone, uses. The way this class is written is really weird, almost as if it's designed to accommodate more types of kvdbs... but for now we can safely assume that there aren't gonna be any other `kvdb` implementations added to HorizonNX. Regardless, the file format is ridiculously simple so I didn't actually need to do a deep dive into C# code... of which I can basically only read Avalonia. A simple `xxd` on the `imkvdb.arc` is all that's needed, and here's everything that matters: - The `IMKV` magic header (4 bytes) - 8 bytes that don't really have anything useful to us, except for a size byte (presumably a `u32`) strewn at offset `0x08` from the start of the file, which is useless to us - Then we start the `IMEN` list. I don't know what the `IM` stands for, but `IMEN` is just, well, an ENtry. Offsets shown are relative to the start of the `IMEN` header. * 4-byte `IMEN` magic header at 0x0 * 8 bytes of filler data. It contains two `0x40` bytes, but I'm not really sure what they do * TitleID (u64) at `0xC`, for example `00a0 df10 501f 0001` for Legends: Arceus (the byte order is swapped) * 0x38 bytes of filler starting at offset 0x14 * SaveID (u64) at `0x4C`, for example `0a00 0000 0000 0000` for my Legends: Arceus save * 0x38 bytes of filler starting at offset 0x54 Full example for Legends: Arceus: ``` 000001b0: 494d 454e 4000 0000 4000 0000 00a0 df10 IMEN@...@....... 000001c0: 501f 0001 0100 0000 0000 0000 0000 0000 P............... 000001d0: 0000 0000 0000 0000 0000 0000 0100 0000 ................ 000001e0: 0000 0000 0000 0000 0000 0000 0000 0000 ................ 000001f0: 0000 0000 0000 0000 0000 0000 0a00 0000 ................ 00000200: 0000 0000 0000 0000 0000 0000 0000 0000 ................ 00000210: 0000 0000 0100 0000 0000 0000 0000 0000 ................ 00000220: 0000 0000 0000 0000 0000 0000 0000 0000 ................ 00000230: 0000 0000 0000 0000 0000 0000 494d 454e ............IMEN ``` Ultimately, the size of the `IMEN` sits at 0x8C or 140 bytes. With this knowledge reading all the TitleID -> SaveID pairs is basically free, and outside of validation and stuff is like 15 lines of relevant code. Some interesting caveats, though: - There are two entries for some TitleIDs for... some reason? Ignoring the second one seems to work though. - Within each save directory, there are directories `0` and `1`... and only `0` ever seems used??? It's where Ryujinx points you to for save, so I just chose to use that. Once everything is parsed, the rest of the implementation is extremely trivial: - When the user requests a Ryujinx link, match the current program_id to the corresponding SaveID in `imkvdb` - If it doesn't exist, just error out (save data is probably nonexistent) - If it does though, give the user the option to use Eden's current save data OR Ryujinx's current save data. Old save data is deleted depending on which one you chose. Signed-off-by: crueter <crueter@eden-emu.dev> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/2815 Reviewed-by: Lizzie <lizzie@eden-emu.dev> Reviewed-by: MaranBr <maranbr@eden-emu.dev> |
5 months ago |
|
|
fff8e2026f
|
[qt_common] reorg + checkstate abstraction (#2735)
no diff. in functionality, just confirm builds on ubuntu 24.04/debian 12 Signed-off-by: crueter <crueter@eden-emu.dev> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/2735 |
6 months ago |
|
|
5f9dba40a0
|
[desktop] Data Manager, data import/export (#2700)
This adds a "Data Manager" dialog to the Tools menu. The Data Manager allows for the following operations: - Open w/ system file manager - Clear - Export - Import On any of the following directories: - Save (w/ profile selector) - UserNAND - SysNAND - Mods - Shaders TODO for the future: - "Cleanup" for each directory - TitleID -> Game name--let users clean data for a specific game if applicable Signed-off-by: crueter <crueter@eden-emu.dev> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/2700 Reviewed-by: MaranBr <maranbr@eden-emu.dev> Reviewed-by: Lizzie <lizzie@eden-emu.dev> |
6 months ago |