aboutsummaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2020-02-19fixups mistake auto commit.Nguyen Dac Nam
2020-02-19Update code structureNguyen Dac Nam
Co-Authored-By: Mat M. <mathew1800@gmail.com>
2020-02-18Merge pull request #3409 from ReinUsesLisp/host-queriesFernando Sahmkow
query_cache: Implement a query cache and query 21 (samples passed)
2020-02-18add vertex UnsignedInt size RGBANguyen Dac Nam
2020-02-18add eBc2SrgbBlock to formatsNguyen Dac Nam
2020-02-18vulkan: add DXT23_SRGBNguyen Dac Nam
2020-02-18renderer_vulkan: Add the rest of case for TryConvertBorderColorNguyen Dac Nam
2020-02-18analog_from_button get direction implementationCJBok
2020-02-17Merge pull request #3412 from Morph1984/aspect-ratiobunnei
GUI: Add aspect ratio dropdown
2020-02-17Merge pull request #3420 from namkazt/master2bunnei
nvhost_gpu: implement ChannelSetTimeslice
2020-02-16texture_cache: Implement layered framebuffer attachmentsReinUsesLisp
Layered framebuffer attachments is a feature that allows applications to write attach layered textures to a single attachment. What layer the fragments are written to is decided from the shader using gl_Layer.
2020-02-16vk_shader_decompiler: Implement Layer output attributeReinUsesLisp
SPIR-V's Layer is GLSL's gl_Layer. It lets the application choose from a shader stage (vertex, tessellation or geometry) which framebuffer layer write the output fragments to.
2020-02-16texture_cache: Avoid matches in 3D texturesReinUsesLisp
Code before this commit was trying to match 3D textures with another target. Fix that.
2020-02-16surface_base: Implement texture buffer flushesReinUsesLisp
Implement downloads to guest memory from texture buffers on the generic cache and OpenGL.
2020-02-16IUserLocalCommunicationService: add function Initialize2Nguyen Dac Nam
2020-02-16HLE: correct function name of IUserLocalCommunicationServiceNguyen Dac Nam
402: function name should be Initialize2 (7.0.0+) not SetOperationMode Follow by: https://switchbrew.org/wiki/LDN_services#IUserLocalCommunicationService
2020-02-16nvhost_gpu: implement ChannelSetTimeslicenamkazy
2020-02-15Revert "video_core: memory_manager: Use GPU interface for cache functions."bunnei
2020-02-15texture: Implement R32IReinUsesLisp
2020-02-15shader/texture: Allow 2D shadow arrays and simplify codeReinUsesLisp
Shadow sampler 2D arrays are supported on OpenGL, so there's no reason to forbid these. Enable textureLod usage on these. Minor style changes.
2020-02-14maxwell_3d: Unify draw methodsReinUsesLisp
Pass instanced state of a draw invocation as an argument instead of having two separate virtual methods.
2020-02-14query_cache: Address feedbackReinUsesLisp
2020-02-14query_cache: Fix ambiguity in CacheAddr getterReinUsesLisp
2020-02-14query_cache: Add a recursive mutex for concurrent usageReinUsesLisp
2020-02-14vk_query_cache: Implement generic query cache on VulkanReinUsesLisp
2020-02-14query_cache: Abstract OpenGL implementationReinUsesLisp
Abstract the current OpenGL implementation into the VideoCommon namespace and reimplement it on top of that. Doing this avoids repeating code and logic in the Vulkan implementation.
2020-02-14gl_query_cache: Optimize query cacheReinUsesLisp
Use a custom cache instead of relying on a ranged cache.
2020-02-14gl_query_cache: Implement host queries using a deferred cacheReinUsesLisp
Instead of waiting immediately for executed commands, defer the query until the guest CPU reads it. This way we get closer to what the guest program is doing. To archive this we have to build a dependency queue, because host APIs (like OpenGL and Vulkan) use ranged queries instead of counters like NVN. Waiting for queries implicitly uses fences and this requires a command being queued, otherwise the driver will lock waiting until a timeout. To fix this when there are no commands queued, we explicitly call glFlush.
2020-02-14gl_rasterizer: Sort method declarationsReinUsesLisp
2020-02-14gl_rasterizer: Add queued commands counterReinUsesLisp
Keep track of the queued OpenGL commands that can signal a fence if waited on. As a side effect, we avoid calls to glFlush when no commands are queued.
2020-02-14maxwell_3d: Slow implementation of passed samples (query 21)ReinUsesLisp
Implements GL_SAMPLES_PASSED by waiting immediately for queries.
2020-02-14Merge pull request #3401 from FernandoS27/synchronizationbunnei
Set of refactors for Kernel Synchronization and Hardware Constants
2020-02-14Add 4:3 aspect ratio and address feedbackMorph
2020-02-14Merge pull request #3379 from ReinUsesLisp/cbuf-offsetbunnei
shader/decode: Fix constant buffer offsets
2020-02-14Core: Correct compilition in GCCFernando Sahmkow
2020-02-14Address feedbackMorph
2020-02-13Use enumeration instead of magic numbersMorph
2020-02-13Add following aspect ratios: 16:9, 21:9, Stretch to WindowMorph
Available as a drop down within the configure graphics tab.
2020-02-13Merge pull request #3400 from makigumo/patch-1bunnei
update hwopus DecodeInterleaved for FW 7.0.0+
2020-02-13gl_resource_manager: Add managed query classReinUsesLisp
2020-02-13Merge pull request #3395 from FernandoS27/queriesbunnei
GPU: Refactor queries implementation and correct GPU Clock.
2020-02-13gl_rasterizer: Use the least generic OpenGL draw function possibleReinUsesLisp
This may help some implementations.
2020-02-13vk_shader_decompiler: Fix vertex id and instance idReinUsesLisp
Vulkan's VertexIndex and InstanceIndex don't match with hardware. This is because Nvidia implements gl_VertexID and gl_InstanceID. The math that relates these is: gl_VertexIndex = gl_BaseVertex + gl_VertexID gl_InstanceIndex = gl_InstanceIndex + gl_InstanceID To emulate it using what Vulkan's SPIR-V offers (the *Index variants) this commit substracts gl_Base* from gl_*Index to obtain the OpenGL and hardware's equivalent.
2020-02-13Core: Address FeedbackFernando Sahmkow
2020-02-13GPU: Address Feedback.Fernando Sahmkow
2020-02-12address_arbiter: Collapse loops in InsertThread() and RemoveThread()Lioncash
Same behavior, but without the need to explicitly loop through everything manually.
2020-02-12address_arbiter: Simplify GetThreadsWaitingOnAddress()Lioncash
Simplifies the overall function and also allows for it to become a const-qualified member function.
2020-02-12Merge pull request #3403 from lioncash/debugbunnei
bcat/backend: Prevent fmt exception in debug log within NullBackend::Clear()
2020-02-12bcat/backend: Make formatting of passphrase consistent in ↵Lioncash
NullBackend::SetPassphrase() Aligns the '=' to be consistent with the rest of the logs within this source file.
2020-02-12bcat/backend: Prevent fmt exception in debug log within NullBackend::Clear()Lioncash
A formatting specifier within Clear wasn't being used, which will cause fmt to throw an exception. This fixes that.