aboutsummaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2019-02-17Merge pull request #2134 from lioncash/namingbunnei
audio_core/buffer: Make const and non-const getter for samples consistent
2019-02-16Corrections, documenting and fixes.Fernando Sahmkow
2019-02-16Merge pull request #2133 from lioncash/arbiterbunnei
address_arbiter: Use nested namespaces where applicable
2019-02-16Merge pull request #2127 from FearlessTobi/fix-screenshot-srgbbunnei
renderer_opengl: respect the sRGB colorspace for the screenshot feature
2019-02-16Merge pull request #2128 from FearlessTobi/port-4197bunnei
Port citra-emu/citra#4197: "threadsafe_queue: Add PopWait and use it where possible "
2019-02-16audio_core/buffer: Make const and non-const getter for samples consistentLioncash
This way proper const/non-const selection can occur.
2019-02-16address_arbiter: Use nested namespaces where applicableLioncash
A fairly trivial change. Other sections of the codebase use nested namespaces instead of separate namespaces here. This one must have just been overlooked.
2019-02-15video_core: Remove usages of System::GetInstance() within the enginesLioncash
Avoids the use of the global accessor in favor of explicitly making the system a dependency within the interface.
2019-02-15Use u128 on Clock Cycles calculation.Fernando Sahmkow
2019-02-15Implement 128 bits Unsigned Integer Multiplication and Division.Fernando Sahmkow
2019-02-15Correct CNTPCT to use Clock Cycles instead of Cpu Cycles.Fernando Sahmkow
2019-02-15Merge pull request #2123 from lioncash/coretiming-globalJames Rowe
core_timing: De-globalize core_timing facilities
2019-02-15core_timing: Convert core timing into a classLioncash
Gets rid of the largest set of mutable global state within the core. This also paves a way for eliminating usages of GetInstance() on the System class as a follow-up. Note that no behavioral changes have been made, and this simply extracts the functionality into a class. This also has the benefit of making dependencies on the core timing functionality explicit within the relevant interfaces.
2019-02-15Adressed review commentsB3n30
2019-02-15threadsafe_queue: Add WaitIfEmpty and use it in loggingB3n30
2019-02-15renderer_opengl: respect the sRGB colorspace for the screenshot featurefearlessTobi
Previously, we were completely ignoring for screenshots whether the game uses RGB or sRGB. This resulted in screenshot colors that looked off for some titles.
2019-02-15gl_state: Synchronize gl_state even when state is disabledReinUsesLisp
There are some potential edge cases where gl_state may fail to track the state if a related state changes while the toggle is disabled or it didn't change. This addresses that.
2019-02-14Merge pull request #2112 from lioncash/shadowingbunnei
gl_rasterizer_cache: Get rid of variable shadowing
2019-02-14Merge pull request #2111 from ReinUsesLisp/fetch-fixbunnei
gl_shader_decompiler: Re-implement TLDS lod
2019-02-14vk_resource_manager: Implement a command buffer pool with VKFencedPoolReinUsesLisp
2019-02-14vk_resource_manager: Add VKFencedPool interfaceReinUsesLisp
Handles a pool of resources protected by fences. Manages resource overflow allocating more resources. This class is intended to be used through inheritance.
2019-02-14vk_resource_manager: Implement VKResourceManager and fence allocatorReinUsesLisp
CommitFence iterates a pool of fences until one is found. If all fences are being used at the same time, allocate more.
2019-02-14vk_resource_manager: Implement VKFenceWatchReinUsesLisp
A fence watch is used to keep track of the usage of a fence and protect a resource or set of resources without having to inherit from their handlers.
2019-02-14vk_resource_manager: Implement VKFenceReinUsesLisp
Fences take ownership of objects, protecting them from GPU-side or driver-side concurrent access. They must be commited from the resource manager. Their usage flow is: commit the fence from the resource manager, protect resources with it and use them, send the fence to an execution queue and Wait for it if needed and then call Release. Used resources will automatically be signaled when they are free to be reused.
2019-02-14vk_resource_manager: Add VKResource interfaceReinUsesLisp
VKResource is an interface that gets signaled by a fence when it is free to be reused.
2019-02-14Merge pull request #2113 from ReinUsesLisp/vulkan-basebunnei
vulkan: Add dependencies and device abstraction
2019-02-14shader_decompiler: Improve Accuracy of Attribute Interpolation.Fernando Sahmkow
2019-02-13Merge pull request #2115 from lioncash/localbunnei
core_timing: Make EmptyTimedCallback a local variable
2019-02-13Merge pull request #2116 from lioncash/sizebunnei
threadsafe_queue: Remove NeedSize template parameter
2019-02-13rasterizer_cache_gl: Only do fast layered copy on the same format. AsFernando Sahmkow
glCopyImageSubData does not support different formats.
2019-02-13Make bitfield assignment operator publicfearlessTobi
This change needs to be made to get the code compiling again. It was suggested after a conversation with Lioncash. The conversation can be seen here: https://user-images.githubusercontent.com/20753089/45064197-b6107800-b0b2-11e8-9db8-f696299fb86a.PNG
2019-02-12threadsafe_queue: Use std::size_t for representing sizeLioncash
Makes it consistent with the regular standard containers in terms of size representation. This also gets rid of dependence on our own type aliases, removing the need for an include.
2019-02-12threadsafe_queue: Remove NeedSize template parameterLioncash
The necessity of this parameter is dubious at best, and in 2019 probably offers completely negligible savings as opposed to just leaving this enabled. This removes it and simplifies the overall interface.
2019-02-12core_timing: Make EmptyTimedCallback a local variableLioncash
Given this is only used in one place, it can be moved closest to its usage site.
2019-02-12Merge pull request #2099 from greggameplayer/BGRA8-Framebuffer-Realbunnei
Implement BGRA8 framebuffer format
2019-02-12vk_device: Abstract device handling into a classReinUsesLisp
VKDevice contains all the data required to manage and initialize a physical device. Its intention is to be passed across Vulkan objects to query device-specific data (for example the logical device and the dispatch loader).
2019-02-12renderer_opengl: Remove reference to global system instanceLioncash
We already store a reference to the system instance that the renderer is created with, so we don't need to refer to the system instance via Core::System::GetInstance()
2019-02-12Merge pull request #2110 from lioncash/namespacebunnei
core_timing: Rename CoreTiming namespace to Core::Timing
2019-02-12Merge pull request #2104 from ReinUsesLisp/compute-assertbunnei
kepler_compute: Fixup assert and rename the engine
2019-02-12gl_rasterizer_cache: Remove unnecessary newlineLioncash
2019-02-12gl_rasterizer_cache: Get rid of variable shadowingLioncash
Avoids shadowing the members of the struct itself, which results in a -Wshadow warning.
2019-02-12renderer_vulkan: Add declarations fileReinUsesLisp
This file is intended to be included instead of vulkan/vulkan.hpp. It includes declarations of unique handlers using a dynamic dispatcher instead of a static one (which would require linking to a Vulkan library).
2019-02-12logging: Add Vulkan backend logging class typeReinUsesLisp
2019-02-12gl_shader_decompiler: Re-implement TLDS lodReinUsesLisp
2019-02-12core_timing: Rename CoreTiming namespace to Core::TimingLioncash
Places all of the timing-related functionality under the existing Core namespace to keep things consistent, rather than having the timing utilities sitting in its own completely separate namespace.
2019-02-12Merge pull request #2108 from FernandoS27/fix-ccbunnei
Fix incorrect value for CC bit in IADD
2019-02-12Merge pull request #2109 from FernandoS27/fix-f2ibunnei
Corrected F2I None mode to RoundEven.
2019-02-12Merge pull request #2068 from ReinUsesLisp/shader-cleanup-texturesbunnei
shader_ir: Clean texture management code
2019-02-11Corrected F2I None mode to RoundEven.Fernando Sahmkow
2019-02-11Fix incorrect value for CC bit in IADDFernando Sahmkow