summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
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-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-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-14Merge pull request #2113 from ReinUsesLisp/vulkan-basebunnei
vulkan: Add dependencies and device abstraction
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-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-12Merge pull request #2114 from lioncash/globalbunnei
renderer_opengl: Remove reference to global system instance
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-12cmake: Add Vulkan optionReinUsesLisp
2019-02-12gitmodules: Add Vulkan headers dependencyReinUsesLisp
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
2019-02-10kepler_compute: Fixup assert and rename enginesReinUsesLisp
When I originally added the compute assert I used the wrong documentation. This addresses that. The dispatch register was tested with homebrew against hardware and is triggered by some games (e.g. Super Mario Odyssey). What exactly is missing to get a valid program bound by this engine requires more investigation.
2019-02-09Implement BGRA8 framebuffer formatgreggameplayer
2019-02-08Merge pull request #1904 from bunnei/better-fermi-copybunnei
gl_rasterizer: Implement a more accurate fermi 2D copy.
2019-02-08Merge pull request #2096 from FearlessTobi/patch-3bunnei
nvdisp_disp0: change drawing message log level from Warning to Trace
2019-02-08Implement linear textures (#2089)Fernando Sahmkow
2019-02-08Merge pull request #2097 from ReinUsesLisp/fixup-texviewbunnei
gl_rasterizer_cache: Fixup texture view parameters
2019-02-08gl_rasterizer_cache: Fixup texture view parametersReinUsesLisp
These parameters were declared as constants and passed to glTextureView but then they were removed on a rabase. This addresses that mistake.
2019-02-08nvdisp_disp0: change drawing message log level from Warning to TraceTobias
This is a leftover from the early yuzu days. We shouldn't log every time when we are drawing by default, so let's change the log level to Trace.
2019-02-07shader_ir: Remove F4 prefix to texture operationsReinUsesLisp
This was originally included because texture operations returned a vec4. These operations now return a single float and the F4 prefix doesn't mean anything.
2019-02-07shader_ir: Clean texture management codeReinUsesLisp
Previous code relied on GLSL parameter order (something that's always ill-formed on an IR design). This approach passes spatial coordiantes through operation nodes and array and depth compare values in the the texture metadata. It still contains an "extra" vector containing generic nodes for bias and component index (for example) which is still a bit ill-formed but it should be better than the previous approach.
2019-02-06Merge pull request #2083 from ReinUsesLisp/shader-ir-cbuf-trackingbunnei
shader/track: Add a more permissive global memory tracking
2019-02-06gl_rasterizer_cache: Mark surface copy destinations as modified.bunnei
2019-02-06gl_rasterizer: Implement a more accurate fermi 2D copy.bunnei
- This is a blit, use the blit registers.
2019-02-06Merge pull request #2091 from FearlessTobi/port-4603bunnei
Port citra-emu/citra#4603: "gdbstub: only let Execute breakpoints write/restore BKPT opcodes into target memory"
2019-02-06Merge pull request #2021 from ReinUsesLisp/disk-cachebunnei
gl_shader_cache: Disk based shader cache
2019-02-06cmake: Fix title bar issueReinUsesLisp
2019-02-06gl_shader_disk_cache: Check LZ4 size limitFrederic L
Co-Authored-By: ReinUsesLisp <reinuseslisp@airmail.cc>
2019-02-06gl_shader_disk_cache: Consider compressed size zero as an errorFrederic L
Co-Authored-By: ReinUsesLisp <reinuseslisp@airmail.cc>
2019-02-06cmake: Use CMAKE_COMMAND instead of "cmake"Frederic L
Co-Authored-By: ReinUsesLisp <reinuseslisp@airmail.cc>
2019-02-06gl_shader_disk_cache: Use unordered containersReinUsesLisp