CamilleLaVey
6b7e54e115
Revert "[engine, dma] Adjustment of the execution mask handling"
4 weeks ago
CamilleLaVey
635335fc85
[engine, dma] Adjustment of the execution mask handling
4 weeks ago
crueter
fb1600b7d1
Revert "[bsd, am, fermi] Replace assertions with warnings and update stubs ( #3160 )" ( #3239 )
This reverts commit adc41bff70 .
fixes jackbox, potentially some others
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3239
Reviewed-by: MaranBr <maranbr@eden-emu.dev>
2 months ago
JPikachu
adc41bff70
[bsd, am, fermi] Replace assertions with warnings and update stubs ( #3160 )
- Return error logs instead of asserts for BSD sockets
- Warn about source depth != 1 in blits instead of assert in Fermi2D
- Update AM 210 - GetLaunchRequiredVersionUpgrade
Credit: liberodark.
Fixes Marvel Cosmic Invasion loading screen crash.
Co-authored-by: JPikachu <jpikachu.eden@gmail.com>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3160
Reviewed-by: crueter <crueter@eden-emu.dev>
Reviewed-by: Caio Oliveira <caiooliveirafarias0@gmail.com>
Co-authored-by: JPikachu <jpikachu@eden-emu.dev>
Co-committed-by: JPikachu <jpikachu@eden-emu.dev>
3 months ago
crueter
f1e74f6855
[meta] remove MicroProfile ( #185 )
Signed-off-by: crueter <crueter@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/185
Reviewed-by: Lizzie <lizzie@eden-emu.dev>
7 months ago
Ameer J
abd400e04f
shader_recompiler: Fix spelling of "derivate" ( #12067 )
2 years ago
Kelebek1
0397e174ae
Account for a pre-added offset when using Corner sample mode for 2D blits
3 years ago
arades79
60a68839ee
remove static from pointer sized or smaller types for aesthetics, change constexpr static to static constexpr for consistency
Signed-off-by: arades79 <scravers@protonmail.com>
3 years ago
arades79
adcef452e0
add static lifetime to constexpr values to force compile time evaluation where possible
Signed-off-by: arades79 <scravers@protonmail.com>
3 years ago
Fernando Sahmkow
91e1c7a727
Fermi2D: sync cache flushes
3 years ago
Fernando Sahmkow
4bf1ee5bdc
DMAPusher: Improve collection of non executing methods
3 years ago
Fernando Sahmkow
41b3ddbbae
Fermi2D: Implement Bilinear software filtering and address feedback.
3 years ago
Fernando Sahmkow
f4291e4576
Fermi2D: Rework blit engine and add a software blitter.
3 years ago
Morph
2b87305d31
general: Convert source file copyright comments over to SPDX
This formats all copyright comments according to SPDX formatting guidelines.
Additionally, this resolves the remaining GPLv2 only licensed files by relicensing them to GPLv2.0-or-later.
4 years ago
Feng Chen
4adb9d01f7
Out of bound blit ( #6531 )
* Fix out of bound blit error
* Fix code read
* Fix ci error
Co-authored-by: Feng Chen <chen.feng@gloritysolutions.com>
5 years ago
ReinUsesLisp
70b3c29534
gpu: Report renderer errors with exceptions
Instead of using a two step initialization to report errors, initialize
the GPU renderer and rasterizer on the constructor and report errors
through std::runtime_error.
5 years ago
ReinUsesLisp
d25b097e84
video_core: Rewrite the texture cache
The current texture cache has several points that hurt maintainability
and performance. It's easy to break unrelated parts of the cache
when doing minor changes. The cache can easily forget valuable
information about the cached textures by CPU writes or simply by its
normal usage.The current texture cache has several points that hurt
maintainability and performance. It's easy to break unrelated parts
of the cache when doing minor changes. The cache can easily forget
valuable information about the cached textures by CPU writes or simply
by its normal usage.
This commit aims to address those issues.
5 years ago
Lioncash
ea0e85b869
video_core: Remove unnecessary enum class casting in logging messages
fmt now automatically prints the numeric value of an enum class member
by default, so we don't need to use casts any more.
Reduces the line noise a bit.
5 years ago
Lioncash
e486fc26a8
fermi_2d: Make use of designated initializers
Same behavior, less repetition. We can also ensure all members of Config
are initialized.
6 years ago
ReinUsesLisp
1c61cf29b6
video_core: Initialize renderer with a GPU
Add an extra step in GPU initialization to be able to initialize render
backends with a valid GPU instance.
6 years ago
Fernando Sahmkow
b916b58702
VideoCore/Engines: Refactor Engines CallMethod.
6 years ago
Fernando Sahmkow
ef3a0ae64a
DMAPusher: Propagate multimethod writes into the engines.
6 years ago
Lioncash
eaeb4520f7
General: Resolve warnings related to missing declarations
6 years ago
Fernando Sahmkow
9dc2027153
Fermi2D: Use a different formula for delimiting blit areas.
6 years ago
Fernando Sahmkow
ea7b91dbf9
Fermi2D: limit blit area to only available area
Normaly OpenGL does not care if the areas exceed the texture regions but
other backends such as Vulkan do care about the limits of this areas.
This PR crops the areas of the blit in order that they don't surpass the
limits of the textures. This should help Vulkan and faulty OpenGL
drivers
7 years ago
FearlessTobi
97f509e9d4
Fix clang-format
7 years ago
FearlessTobi
4c1c09c8d8
fermi_2d: Lower surface copy log severity to DEBUG
7 years ago
Rodrigo Locatti
598157a8c9
video_core: Silent miscellaneous warnings ( #2820 )
* texture_cache/surface_params: Remove unused local variable
* rasterizer_interface: Add missing documentation commentary
* maxwell_dma: Remove unused rasterizer reference
* video_core/gpu: Sort member declaration order to silent -Wreorder warning
* fermi_2d: Remove unused MemoryManager reference
* video_core: Silent unused variable warnings
* buffer_cache: Silent -Wreorder warnings
* kepler_memory: Remove unused MemoryManager reference
* gl_texture_cache: Add missing override
* buffer_cache: Add missing include
* shader/decode: Remove unused variables
7 years ago
Fernando Sahmkow
c15d41e8cd
fermi2d: Correct Origin Mode
7 years ago
Fernando Sahmkow
bc8f3d4964
texture_cache: Fermi2D reform and implement View Mirage
This also does some fixes on compressed textures reinterpret and on the
Fermi2D engine in general.
7 years ago
Lioncash
1211a5623e
video_core/engines: Make memory manager members private
These aren't used externally by anything, so they can be made private
data members.
7 years ago
Lioncash
33742deaf6
video_core/engines: Remove unnecessary inclusions where applicable
Replaces header inclusions with forward declarations where applicable
and also removes unused headers within the cpp file. This reduces a few
more dependencies on core/memory.h
7 years ago
Lioncash
f596ce7887
video_core/engines: Remove unnecessary includes
Removes a few unnecessary dependencies on core-related machinery, such
as the core.h and memory.h, which reduces the amount of rebuilding
necessary if those files change.
This also uncovered some indirect dependencies within other source
files. This also fixes those.
7 years ago
Lioncash
e59ae7210a
common/math_util: Move contents into the Common namespace
These types are within the common library, so they should be within the
Common namespace.
7 years ago
bunnei
4e28975608
gl_rasterizer: Implement a more accurate fermi 2D copy.
- This is a blit, use the blit registers.
7 years ago
ReinUsesLisp
af1543712d
video_core: Assert on invalid GPU to CPU address queries
7 years ago
bunnei
f8b215e361
gpu: Rewrite GPU command list processing with DmaPusher class.
- More accurate impl., fixes Undertale (among other games).
7 years ago
FernandoS27
b509890e4c
Implemented Tile Width Spacing
7 years ago
Markus Wick
264030c070
gl_rasterizer: Skip VB upload if the state is clean.
7 years ago
bunnei
e3fdb2ff4b
fermi_2d: Add support for more accurate surface copies.
8 years ago
FernandoS27
1a70753709
Propagate depth and depth_block on modules using decoders
8 years ago
bunnei
26348d6ebb
fermi_2d: Implement simple copies with AccelerateSurfaceCopy.
8 years ago
Lioncash
bdfd46e192
video_core: Use nested namespaces where applicable
Compresses a few namespace specifiers to be more compact.
8 years ago
James Rowe
d74d2a77cb
Update clang format
8 years ago
James Rowe
e159c550d8
Rename logging macro back to LOG_*
8 years ago
Subv
df214db493
GPU: Partially implemented the Maxwell DMA engine.
Only tiled->linear and linear->tiled copies that aren't offsetted are supported for now. Queries are not supported. Swizzled copies are not supported.
8 years ago
bunnei
f2da134385
fermi_2d: Fix surface copy block height.
8 years ago
Subv
0c04a308d1
GPU: Partially implemented the Fermi2D surface copy operation.
The hardware allows for some rather complicated operations to be performed on the data during the copy, this is not implemented.
Only same-format same-size raw copies are implemented for now.
8 years ago
Subv
b0b75e7ae4
GPU: Added boilerplate code for the Fermi2D engine
8 years ago
Subv
29c026fae1
GPU: Macros are specific to the Maxwell3D engine, so handle them internally.
8 years ago