lizzie
d8f2e22bf8
Revert "[gpu/nvdrv] Unstub SetErrorNotifier, add PostErrorNotification function ( #2500 )" ( #3046 )
...
This reverts commit 74d6eaf721 .
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3046
Reviewed-by: MaranBr <maranbr@eden-emu.dev >
Co-authored-by: lizzie <lizzie@eden-emu.dev >
Co-committed-by: lizzie <lizzie@eden-emu.dev >
2025-11-19 23:17:38 +01:00
SDK Chan
74d6eaf721
[gpu/nvdrv] Unstub SetErrorNotifier, add PostErrorNotification function ( #2500 )
...
This commit should ensure that GPU error handling is handled correctly.
Replace some unimplemented stubs with PostErrorNotification.
I believe this should mitigate some hiccups encountered in unreal engine based games.
Co-authored-by: Maufeat <sahyno1996@gmail.com >
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/2500
Reviewed-by: Shinmegumi <shinmegumi@eden-emu.dev >
Reviewed-by: Caio Oliveira <caiooliveirafarias0@gmail.com >
Reviewed-by: Maufeat <sahyno1996@gmail.com >
Reviewed-by: Lizzie <lizzie@eden-emu.dev >
Co-authored-by: SDK Chan <sdkchan@eden-emu.dev >
Co-committed-by: SDK Chan <sdkchan@eden-emu.dev >
2025-11-16 22:53:16 +01:00
lizzie
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 >
2025-11-16 22:15:09 +01:00
SDK Chan
680384f7b8
[gpu/NVDRV] Unstub SetChannelPriority and adjust ChannelSetTimeSlice ( #3017 )
...
Games usually rely on either 1 of this services or both.
The last call adjusts channel_timeslice.
This behavior closely resembles Ryujinx accurate behavior for setting the channel_timeslice accordingly to the situation.
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3017
Reviewed-by: Caio Oliveira <caiooliveirafarias0@gmail.com >
Reviewed-by: crueter <crueter@eden-emu.dev >
Co-authored-by: SDK Chan <sdkchan@eden-emu.dev >
Co-committed-by: SDK Chan <sdkchan@eden-emu.dev >
2025-11-15 14:49:43 +01:00
MaranBr
326865cba2
[host1x] Improve FFmpeg error handling ( #2643 )
...
This improves the FFmpeg error handling.
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/2643
Co-authored-by: MaranBr <maranbr@outlook.com >
Co-committed-by: MaranBr <maranbr@outlook.com >
2025-10-02 00:15:14 +02:00
lizzie
191e4c75a1
[meta] fix license headers ( #2547 )
...
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/2547
Reviewed-by: MaranBr <maranbr@eden-emu.dev >
Co-authored-by: lizzie <lizzie@eden-emu.dev >
Co-committed-by: lizzie <lizzie@eden-emu.dev >
2025-09-21 21:58:59 +02:00
SDK-Chan
cf634d4d6f
[gpu/nvdrv] Rewrite ZBC functions ( #2501 )
...
This rewrite attempts to implement a fully correct ZBC (Zero Bandwith Clear) mechanism.
The zbc_mutex attempts to mitigate contention by assuring that only threads which hold the mutex can modify the table.
Notify drivers about the index size, I believe some drivers even need the notification.
Only add new entries if a entry was not previously available.
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/2501
Reviewed-by: Shinmegumi <shinmegumi@eden-emu.dev >
Reviewed-by: MaranBr <maranbr@eden-emu.dev >
Reviewed-by: crueter <crueter@eden-emu.dev >
Co-authored-by: SDK-Chan <sdkchan@eden-emu.dev >
Co-committed-by: SDK-Chan <sdkchan@eden-emu.dev >
2025-09-18 14:46:53 +02:00
lizzie
9d2681ecc9
[cmake] enable clang-cl and WoA builds ( #348 )
...
Compilation and CMake fixes for both Windows on ARM and clang-cl, meaning Windows can now be built on both MSVC and clang on both amd64 and aarch64.
Compiling on clang is *dramatically* faster so this should be useful for CI.
Co-authored-by: crueter <crueter@eden-emu.dev >
Co-authored-by: crueter <crueter@crueter.xyz >
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/348
Reviewed-by: CamilleLaVey <camillelavey99@gmail.com >
Reviewed-by: crueter <crueter@eden-emu.dev >
Co-authored-by: lizzie <lizzie@eden-emu.dev >
Co-committed-by: lizzie <lizzie@eden-emu.dev >
2025-09-09 20:47:49 +02:00
SDK-Chan
8dba6a2cb4
[gpu/NVDRV] Finalize, improve AllocObjCtx ( #333 )
...
Improves object allocation per channel, only allowing max amount of 6 objects contexts per channel.
Previously objects were stored in a heap allocated vector which is sub-optimal for performance reasons.
The new implementation instead uses a stack based array with a O(1) approach.
This should boost performance in games which heavily rely on object context creation.
Co-authored-by: MaranBr <maranbr@outlook.com >
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/333
Reviewed-by: crueter <crueter@eden-emu.dev >
Reviewed-by: CamilleLaVey <camillelavey99@gmail.com >
Co-authored-by: SDK-Chan <sdkchan@eden-emu.dev >
Co-committed-by: SDK-Chan <sdkchan@eden-emu.dev >
2025-08-31 07:32:54 +02:00
lizzie
9d53933a95
[fmt] use {:#X} for format instead of 0x{:X} ( #309 )
...
Signed-off-by: lizzie <lizzie@eden-emu.dev >
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/309
Reviewed-by: crueter <crueter@eden-emu.dev >
Co-authored-by: lizzie <lizzie@eden-emu.dev >
Co-committed-by: lizzie <lizzie@eden-emu.dev >
2025-08-27 22:39:11 +02:00
SDK-Chan
c36cc0d3ee
[core/nvdrv] Fix Random Unmap Memory Clearing ( #176 )
...
Now memory should only be unmapped after it was mapped.
Could eventually fix some graphical errors, and improve performance.
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/176
Reviewed-by: Shinmegumi <shinmegumi@eden-emu.dev >
Co-authored-by: SDK-Chan <sdkchan@eden-emu.dev >
Co-committed-by: SDK-Chan <sdkchan@eden-emu.dev >
2025-08-14 14:30:09 +02:00
SDK-Chan
03ab350bc6
[nvdrv] Add AllocGPFIFOEX1 + modify GPFIFOEXs ( #115 )
...
I noticed that AllocGPFIFOEX was missing from eden.
It is the same as GPFIFOEX2, but is called separately, even on the real console.
I updated the struct to match closely the one seen on switchbrew, and changed the STUBS, because according to sources they seem to be complete.
My guess is that the STUBS were remained due to the unknowns back then.
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/115
Co-authored-by: SDK-Chan <sdkchan@eden-emu.dev >
Co-committed-by: SDK-Chan <sdkchan@eden-emu.dev >
2025-07-24 16:57:53 +02:00
SDK-Chan
46ddbea71c
[nvdrv] Unstub Allocate Object Context ( #104 )
...
Adds proper checking to allocate object context, and saves each context separately, based on old stubs from Yuzu's, implemented now to resolve services and better handling of future issues.
Co-authored-by: Shinmegumi <shinmegumi@eden-emu.dev >
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/104
Co-authored-by: SDK-Chan <sdkchan@eden-emu.dev >
Co-committed-by: SDK-Chan <sdkchan@eden-emu.dev >
2025-07-24 16:34:18 +02:00
lizzie
12a690e15f
[nvdrv] ZBC table implement stubs ( #83 )
...
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/83
This commit introduces an implementation for `ZBCSetTable` in `nvhost_ctrl_gpu`, which is invoked by games and system services to configure default clear values for depth, stencil, and color attachments on the GPU, allowing better instructions on how the ZCull Block Compression expects to work within the emulated GPU.
This is an important step for compatibility with titles or system modules that expect ZBC configuration support.
Co-authored-by: lizzie <lizzie@eden-emu.dev >
Co-committed-by: lizzie <lizzie@eden-emu.dev >
2025-07-21 04:35:43 +02:00
Pavel Barabanov
b66ebe638b
Qlauncher firmware 19
2025-04-14 14:18:13 -04:00
crueter
9cef9f5dce
Update fmt to allow for v11
...
Signed-off-by: swurl <swurl@swurl.xyz >
2025-04-10 01:11:22 +02:00
darktux
616619c8f7
Port changes from Early Access
2025-04-04 03:40:46 +02:00
Liam
e15b1021a4
video_core: make gpu context aware of rendering program
2024-02-26 11:16:14 -05:00
FearlessTobi
4d55e58ee4
scope_exit: Make constexpr
...
Allows the use of the macro in constexpr-contexts.
Also avoids some potential problems when nesting braces inside it.
2024-02-19 16:00:46 +01:00
Liam
f5d736af4b
vi: manage resources independently of nvnflinger and refactor
2024-02-17 18:08:38 -05:00
Liam
b1f1beae41
nvnflinger: convert to process
2024-02-17 18:01:41 -05:00
Liam
1c32e4157c
nvnflinger/gpu: implement blending
2024-02-09 09:20:53 -05:00
Liam
effe70a904
nvservices: unmap only on last container free
2024-02-09 09:20:53 -05:00
liamwhite
d26c4a5090
Merge pull request #12914 from FernandoS27/vc-refactor
...
VideoCore Refactor Part 1.
2024-02-08 10:59:59 -05:00
liamwhite
9e83fdcde3
Merge pull request #12883 from FernandoS27/memory_manager_mem
...
MemoryManager: Reduce the page table size based on last big page address.
2024-02-06 10:25:03 -05:00
Fernando Sahmkow
758d895408
Common: Rename SplitRangeSet to OverlapRangeSet
2024-02-05 23:01:17 +01:00
Fernando Sahmkow
6f91002f90
NVDRV: Refactor HeapMapper to use RangeSets
2024-02-04 20:01:50 +01:00
Fernando Sahmkow
4d65645d80
MemoryManager: Reduce the page table size based on last big page address.
2024-02-01 13:00:36 +01:00
Liam
5ec76db392
nvnflinger/gpu: implement layer stack composition
2024-01-31 11:27:21 -05:00
Fernando Sahmkow
811f5f1b1e
NVDRV: Join the heaper optimization blocks
2024-01-31 16:38:51 +01:00
liamwhite
ff084ece75
Merge pull request #12759 from liamwhite/mp-misc
...
core: miscellaneous fixes
2024-01-25 16:21:38 -05:00
Narr the Reg
aad9258100
service: properly convert buffers to strings
2024-01-23 10:24:05 -06:00
Liam
cc7a7b5253
nvservices: close map handles on session close
2024-01-22 21:18:52 -05:00
Liam
d31406f2c1
nvhost_vic: use map erase by key
2024-01-18 21:12:30 -05:00
Liam
0bb66a7b2b
nvdrv: clean up preallocation
2024-01-18 21:12:30 -05:00
Liam
344d9c067c
nvdrv: use correct names for interface factory
2024-01-18 21:12:30 -05:00
Liam
bf2dab5b2b
nvdrv: use static typing for SessionId, smmu Asid types
2024-01-18 21:12:30 -05:00
Fernando Sahmkow
b206089ea7
Core: Clang format and other small issues.
2024-01-18 21:12:30 -05:00
Fernando Sahmkow
aaf5f8c831
SMMU: Fix software rendering and cleanup
2024-01-18 21:12:30 -05:00
Fernando Sahmkow
0797d63a36
SMMU: Add continuity tracking optimization.
2024-01-18 21:12:30 -05:00
Fernando Sahmkow
355bbea52d
SMMU: Add Android compatibility
2024-01-18 21:12:30 -05:00
Fernando Sahmkow
ff6cd1c212
GPU-SMMU: Estimate game leak and preallocate device region.
2024-01-18 21:12:30 -05:00
Fernando Sahmkow
bb7b14acd5
GPU SMMU: Expand to 34 bits
2024-01-18 21:12:30 -05:00
Fernando Sahmkow
f11218a03e
SMMU: Implement physical memory mirroring
2024-01-18 21:12:30 -05:00
Fernando Sahmkow
9db159da71
SMMU: Initial adaptation to video_core.
2024-01-18 21:12:30 -05:00
Fernando Sahmkow
eb4f7f35ea
NVDRV: Implement sessions and initial implementation of SMMU
2024-01-18 21:12:30 -05:00
Viktor Szépe
cff668e1c4
Fix typos in src/core ( #12625 )
...
* Fix typos in src/core
* Fix typo correction
* Fix indentation of MemoryStateNames
* Fix indent
2024-01-08 13:31:48 -06:00
Liam
cb176ebdd7
nvdrv: rework to remove memcpy
2023-10-25 13:05:56 -04:00
Liam
16156ce42d
nvdrv: fix up remaining copy calls
2023-10-25 13:05:56 -04:00
Liam
a059aedaf1
nvdrv: convert nvmap
2023-10-25 13:05:56 -04:00