Commit Graph

11596 Commits (48e16c4c496474793da36fde89a3f0d5c5f69b28)

Author SHA1 Message Date
Fernando Sahmkow 1509d2ffbd Shader_Ir: Fix TLD4S from using a component mask.
TLD4S always outputs 4 values, the previous code checked a component 
mask and omitted those values that weren't part of it. This commit 
corrects that and makes sure all 4 values are set.
6 years ago
ReinUsesLisp 1ea07954fb shader_ir/memory: Ignore global memory when tracking fails
Ignore global memory operations instead of invoking undefined behaviour
when constant buffer tracking fails and we are blasting through asserts,
ignore the operation.

In the case of LDG this means filling the destination registers with
zeroes; for STG this means ignore the instruction as a whole.

The default behaviour is still to abort execution on failure.
6 years ago
ReinUsesLisp e3107788e6
maxwell_3d: Reduce FlushMMEInlineDraw logging to Trace 6 years ago
bunnei a86a88109a core: Fix clang-format errors. 6 years ago
Nicolae-Andrei Cociorba 20521da259 Fix null pointer deref. 6 years ago
Rodrigo Locatti dc5eedef71
Merge pull request #2994 from lioncash/fmt
video_core/shader/ast: Minor changes to ASTPrinter
6 years ago
Lioncash 074b38b7a9 video_core/shader/ast: Make ShowCurrentState() and SanityCheck() const member functions
These can also trivially be made const member functions, with the
addition of a few consts.
6 years ago
Lioncash 222f4b45eb video_core/shader/ast: Make ASTManager::Print a const member function
Given all visiting functions never modify the nodes, we can trivially
make this a const member function.
6 years ago
Rodrigo Locatti fd922ddb01
Merge pull request #2993 from lioncash/vulkan-expr
vk_shader_decompiler: Mark operator() function parameters as const references
6 years ago
Lioncash 7831e86c34 video_core/shader/ast: Make ExprPrinter members private
This member already has an accessor, so there's no need for it to be
public.
6 years ago
Lioncash a2eccbf075 video_core/shader/ast: Make Indent() return a string_view
The returned string is simply a substring of our constexpr tabs
string_view, so we can just use a string_view here as well, since the
original string_view is guaranteed to always exist.

Now the function is fully non-allocating.
6 years ago
Lioncash 15d177a6ac video_core/shader/ast: Make Indent() private
It's never used outside of this class, so we can narrow its scope down.
6 years ago
Lioncash 7f6a8a33d4 video_core/shader/ast: Rename Ident() to Indent()
This can be confusing, given "ident" is generally used as a shorthand
for "identifier".
6 years ago
Lioncash 081530686c video_core/shader/ast: Make use of fmt where applicable
Makes a few strings nicer to read and also eliminates a bit of string
churn with operator+.
6 years ago
bunnei d1713ad451
Merge pull request #2992 from lioncash/dmnt
dmnt_cheat_vm: Correct register Restore and ClearRegs behavior
6 years ago
Lioncash c6bec9aa10 vk_shader_decompiler: Mark operator() function parameters as const references
These parameters aren't actually modified in any way, so they can be
made const references.
6 years ago
Lioncash 2c34d8aabb dmnt_cheat_vm: Correct register Restore and ClearRegs behavior
Previously these were performing the same behavior as the Save and
ClearSaved opcode types.
6 years ago
Rodrigo Locatti 219fdcb9d9
Merge pull request #2966 from FernandoS27/astc-formats
Implement a series of ASTC formats and R4G4B4A4 format
6 years ago
Rodrigo Locatti a21b88ef8f
Merge pull request #2979 from lioncash/macro
video_core/macro_interpreter: Make definitions of most private enums/unions hidden
6 years ago
Fernando Sahmkow c0eb1aecfd Fermi2D: Use a different formula for delimiting blit areas. 6 years ago
Rodrigo Locatti 7cf091bb20
Merge pull request #2989 from lioncash/apm
service/apm/controller: Minor interface changes
6 years ago
Lioncash 8d8e495248 hid/npad: Fix incorrect connection boolean value in ConnectAllDisconnectedControllers()
We should be setting the connection state to true, otherwise we aren't
actually making the controllers connected like the function name
indicates.
6 years ago
Lioncash d076466f26 hid/npad: Add missing break in default case
While not an issue, it does prevent fallthrough from occurring if
anything is ever added after this case (unlikely to occur, but this
turns a trivial "should not cause issues" into a definite "won't cause
issues).
6 years ago
Lioncash 26c84718c8 hid/npad: Replace std::for_each with ranged for loops
Performs the same behavior, but is built into the core language itself.

No functional change.
6 years ago
Lioncash e433e99191 hid/npad: Remove redundant non-const variant of IsControllerSupported()
The const qualified variant can also be called in non-const contexts, so
we can remove the non-const variant to eliminate a bit of code
duplication.
6 years ago
Lioncash a71e8066a1 hid/npad: Move function declarations
Clearly separate these from the variable declarations to make them more
visible.
6 years ago
Lioncash 125caf5d6e video_core/macro_interpreter: Make definitions of most private enums/unions hidden
This allows the implementation of these types to change without
requiring a rebuild of everything that includes the macro interpreter
header.
6 years ago
Lioncash 98c6a95079 core/core: Resolve -Wreorder warnings
Amends the initializer lists to be ordered in the same manner that
they're declared within the class.
6 years ago
Lioncash 6414d9e2e5 core/memory/cheat_engine: Resolve -Wreorder warnings
Amends the initializer lists to be ordered in the same manner that
they're declared within the class.
6 years ago
Lioncash b77430df70 apm/controller: Make SetPerformanceConfiguration() use an array of pairs over a map
While a map is an OK way to do lookups (and usually recommended in most
cases), this is a map that lives for the entire duration of the program
and only deallocates its contents when the program terminates.

Given the total size of the map is quite small, we can simply use a
std::array of pairs and utilize std::find_if to perform the same
behavior without loss of performance.

This eliminates a static constructor and places the data into the
read-only segment.

While we're at it, we can also handle malformed inputs instead of
directly dereferencing the resulting iterator.
6 years ago
Lioncash 141d929929 apm/controller: Make GetCurrentPerformanceMode() a const member function
This doesn't modify instance state, so it can be made const qualified.
6 years ago
bunnei 9fe8072c67
Merge pull request #2980 from lioncash/warn
maxwell_3d: Silence truncation warnings
6 years ago
Fernando Sahmkow 57a46c69f1 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
6 years ago
Rodrigo Locatti 60c602e4e7
Merge pull request #2978 from lioncash/doxygen
video_core/texture_cache: Amend Doxygen references
6 years ago
Rodrigo Locatti e00b529a89
Merge pull request #2982 from lioncash/surface
texture_cache: Avoid unnecessary surface copies within PickStrategy() and TryReconstructSurface()
6 years ago
bunnei ef9b31783d
Merge pull request #2912 from FernandoS27/async-fixes
General fixes to Async GPU
6 years ago
Rodrigo Locatti 60315060b1
Merge pull request #2984 from lioncash/fallthrough2
video_core/surface: Add missing break in PixelFormatFromTextureFormat()
6 years ago
Lioncash cf9e13c255 video_core/surface: Add missing break in PixelFormatFromTextureFormat()
Prevents fallthrough into the following case.
6 years ago
Rodrigo Locatti 14f3cebcd4
Merge pull request #2981 from lioncash/copy
gl_shader_decompiler: Minor cleanup-related changes
6 years ago
Lioncash 6947bf8e44 vk_shader_decompiler: Resolve fallthrough within ExprDecompiler's ExprCondCode operator()
This would previously result in NeverExecute and UnusedIndex being
treated as regular predicates.
6 years ago
Lioncash b42a74ff2c gl_shader_decompiler: Resolve fallthrough within ExprDecompiler's ExprCondCode operator()
This would previously result in NeverExecute and UnusedIndex being
treated as regular predicates.
6 years ago
Lioncash a24e8bf9cf texture_cache: Avoid unnecessary surface copies within PickStrategy() and TryReconstructSurface()
We can take these by const reference and avoid making unnecessary
copies, preventing some atomic reference count increments and
decrements.
6 years ago
Lioncash 77b4916b33 control_flow: Silence truncation warnings
This can be trivially fixed by making the input size a size_t.
CFGRebuildState's constructor parameter is already a std::size_t, so
this just makes the size type fully conform with it.
6 years ago
Lioncash 4f16ce9294 gl_shader_decompiler: Make ExprDecompiler's GetResult() a const member function
This is only ever used to read, but not write, the resulting string, so
we can enforce this by making it a const member function.
6 years ago
Lioncash 67df3f7742 gl_shader_decompiler: Use a std::string_view with GetDeclarationWithSuffix()
This allows the function to be completely non-allocating for inputs of
all sizes (i.e. there's no heap cost for an input to convert to a
std::string_view).
6 years ago
Lioncash 04a1161354 gl_shader_decompiler: Fold flow_var constant into GetFlowVariable()
This is only ever used within this function, so we can narrow it's scope
down.
6 years ago
Lioncash 2f2ab9b5bc gl_shader_decompiler: Mark ASTDecompiler/ExprDecompiler parameters as const references where applicable
These member functions don't actually modify the input parameter, so we
can make this explicit with the use of const.
6 years ago
Lioncash b8a62adcf1 gl_shader_decompiler: Pass by reference to GenerateTextureArgument()
Avoids an unnecessary atomic reference count increment and decrement.
6 years ago
Lioncash d1d7ce74d2 gl_shader_decompiler: Use std::holds_alternative within GenerateTexture()
This only ever queries if the type exists within the variant, but
doesn't actually do anything with the return value. We can just use
std::holds_alternative for this use case.
6 years ago
Lioncash 67658dd6e8 shader/node: std::move Meta instance within OperationNode constructor
Allows usages of the constructor to avoid an unnecessary copy.
6 years ago
Lioncash 9760795bfb gl_shader_decompiler: Avoid unnecessary copies of MetaImage
MetaImage contains a std::vector, so copying here could result in
unnecessary reallocations. Given the operation lives throughout the
entire scope, this is safe to do.
6 years ago
Lioncash c9c75f9587 maxwell_3d: Silence truncation warnings
A trivial warning caused by not using size_t as the argument types
instead of u32.
6 years ago
bunnei 2299950de1
Merge pull request #2972 from lioncash/system
{bcat, gpu, nvflinger}: Remove trivial usages of the global system accessor
6 years ago
Lioncash b25b94400e video_core/gpu: Remove use of the global system accessor
We can just make use of the reference member variable instead of
accessing the global system instance.
6 years ago
Lioncash cc1d7048b5 bcat: Remove use of global system accessors
Removes all uses of the global system accessor within the BCAT
interface.
6 years ago
Lioncash 524eb15513 video_core/texture_cache: Amend Doxygen references
Amends the doxygen comments so that they properly resolve. While we're
at it, we can correct some typos and fix up some of the comments'
formatting in order to make them slightly nicer to read.
6 years ago
Lioncash d5706346d7 common/algorithm: Add description comment indicating intended algorithms
Makes it explicit that the header is intended for iterator-based
algorithms that can ideally operate on any type.
6 years ago
Lioncash ac4dbd3b25 common: Rename binary_find.h to algorithm.h
Makes the header more general for other potential algorithms in the
future. While we're at it, include a missing <functional> include to
satisfy the use of std::less.
6 years ago
Fernando Sahmkow 64e652d8cb Kernel Thread: Cleanup THREADPROCESSORID_DONT_UPDATE. 6 years ago
Fernando Sahmkow e28c7f5217 Kernel: Address Feedback 2 6 years ago
Fernando Sahmkow a3524879be Kernel: Clang Format 6 years ago
Fernando Sahmkow c32520ceb7 Kernel: Reverse global accessor removal. 6 years ago
Fernando Sahmkow 3073615dbc Kernel: Address Feedback. 6 years ago
Fernando Sahmkow 25f8606a6d Kernel Scheduler: Make sure the global scheduler shutdowns correctly. 6 years ago
Fernando Sahmkow b3c1deba49 Kernel_Thread: Eliminate most global accessors. 6 years ago
Fernando Sahmkow 0b72b34d89 KernelSVC: Assert that condition variable address is aligned to 4 bytes. 6 years ago
Fernando Sahmkow 96b1b144af Kernel: Correct Paused scheduling 6 years ago
Fernando Sahmkow 1c6a11ab14 Kernel: Corrections to Wait Objects clearing in which a thread could still be signalled after a timeout or a cancel. 6 years ago
Fernando Sahmkow 27d571c084 Kernel: Correct redundant yields to only advance time forward. 6 years ago
Fernando Sahmkow 7176857177 Kernel: Corrections to ModifyByWaitingCountAndSignalToAddressIfEqual 6 years ago
Fernando Sahmkow 44e09e5f21 Kernel: Correct Results in Condition Variables and Mutexes 6 years ago
Fernando Sahmkow 1ec1e81373 Kernel: Clang Format 6 years ago
Fernando Sahmkow e05a8c2385 Kernel: Remove global system accessor from WaitObject 6 years ago
Fernando Sahmkow 0cf26cee59 Scheduler: Implement Yield Count and Core migration on Thread Preemption. 6 years ago
Fernando Sahmkow 2d382de6fa Scheduler: Corrections to YieldAndBalanceLoad and Yield bombing protection. 6 years ago
Fernando Sahmkow b49c0dab87 Kernel: Initial implementation of thread preemption. 6 years ago
Fernando Sahmkow 103f3a2fe5 Scheduler: Add protections for Yield bombing
In case of redundant yields, the scheduler will now idle the core for 
it's timeslice, in order to avoid continuously yielding the same thing 
over and over.
6 years ago
Fernando Sahmkow 82218c925a Kernel: Style and Corrections 6 years ago
Fernando Sahmkow fcc6b34fff Correct PrepareReschedule 6 years ago
Fernando Sahmkow 3a94e7ea33 Comment and reorganize the scheduler 6 years ago
Fernando Sahmkow b5d1e44782 Add PrepareReschedule where required. 6 years ago
Fernando Sahmkow b8b7ebcece Correct compiling errors and addapt to the new interface. 6 years ago
Fernando Sahmkow 9031502974 Correct Supervisor Calls to work with the new scheduler, 6 years ago
Fernando Sahmkow 47c6c78c03 Redesign CPU Cores to work with the new scheduler 6 years ago
Fernando Sahmkow 57a71f899a Add interfacing to the Global Scheduler 6 years ago
Fernando Sahmkow a1ac0c6cb4 Addapt thread class to the new Scheduler 6 years ago
Fernando Sahmkow b164d8ee53 Implement a new Core Scheduler 6 years ago
bunnei cab2619aeb
Merge pull request #2965 from FernandoS27/fair-core-timing
Core Timing: Rework Core Timing to run all cores evenly.
6 years ago
bunnei 0378babd15
Merge pull request #2897 from DarkLordZach/oss-ext-fonts-1
pl_u: Move open source font archives and fix NAND error
6 years ago
bunnei c274fd588d
Merge pull request #2968 from FreddyFunk/fix-zl-zr-analog-triggers
yuzu/configure_input_player: Fix input handling for ZL and ZR from controllers with analog triggers
6 years ago
bunnei cd2efed922
Merge pull request #2930 from DarkLordZach/gamecard-partitions
file_sys: Add code to access raw gamecard partitions and lazily load them
6 years ago
Zach Hilman e0b9ee9b94 card_image: Implement system update commands in XCI 6 years ago
Zach Hilman 1911f85391 pl_u: Fix mismatched rebase size error in font encryption 6 years ago
Zach Hilman 36d829c27b pl_u: Use kernel physical memory 6 years ago
Zach Hilman b3a8a094a5 pl_u: Remove excess static qualifier 6 years ago
Zach Hilman 40284c6868 pl_u: Use OSS system archives if real archives don't exist 6 years ago
Zach Hilman 920742d418 system_archive: Synthesize shared fonts system archives 6 years ago
Zach Hilman d6d6a87bde externals: Move OSS font data to file_sys in core 6 years ago
Lioncash 574440d59f nvflinger/buffer_queue: Remove use of a global system accessor 6 years ago
Fernando Sahmkow a4ae11d63e Core_Timing: Address Remaining feedback. 6 years ago
Fernando Sahmkow 91f6333e23 Core_Timing: Fix tests. 6 years ago
Fernando Sahmkow e0650a2034 Core_Timing: Address Feedback and suppress warnings. 6 years ago
Fernando Sahmkow cfc2f30dc4 AsyncGpu: Address Feedback 6 years ago
FreddyFunk be5dc68ca3 fixed clang format & addressed feedback 6 years ago
FreddyFunk a31c6b2c4e yuzu/configure_input_player: Fix input handling for ZL and ZR from controllers with analog triggers 6 years ago
bunnei b41692b69b
Merge pull request #2910 from FearlessTobi/port-4930
Port citra-emu/citra#4930: "Pause when in background"
6 years ago
bunnei 2ba273e49e
Merge pull request #2928 from ReinUsesLisp/dirty-depth-bounds
maxwell_3d: Add dirty flags for depth bounds values
6 years ago
bunnei 6b5e50d20e
Merge pull request #2927 from ReinUsesLisp/polygon-offset-units
gl_rasterizer: Fix polygon offset units
6 years ago
Fernando Sahmkow f32a49d3d8 Surfaces: Implement R4G4B4A4U format. 6 years ago
Fernando Sahmkow b9ddb517b1 Surfaces: Implement ASTC 6x6 10x10 12x12 8x6 6x5 6 years ago
Fernando Sahmkow 96f2b16356 Core Timing: Correct Idle and remove lefting pragma 6 years ago
Fernando Sahmkow 65aff6930b Core Timing: General corrections and added tests. 6 years ago
Fernando Sahmkow c9a1129c95 Tests: Eliminate old Core Timing Tests 6 years ago
Fernando Sahmkow 555866f8dc Core Timing: Rework Core Timing to run all cores evenly. 6 years ago
bunnei e664c24355
Merge pull request #2921 from FreddyFunk/compiler-warnings-core
Services::ES fix casting warnings
6 years ago
bunnei b9c831de62
Merge pull request #2654 from DarkLordZach/lm-log-rewrite
lm: Rewrite logger to use core reporting services
6 years ago
Fernando Sahmkow 971870b89d
Merge pull request #2959 from ReinUsesLisp/cbuf-hsetp2
shader/half_set_predicate: Fix HSETP2 for constant buffers
6 years ago
ReinUsesLisp 3d0f357307
shader/half_set_predicate: Fix HSETP2 for constant buffers
HSETP2 when used with a constant buffer parses the second operand type
as F32. This is not configurable.
6 years ago
ReinUsesLisp 632c9e4ee3
shader/half_set_predicate: Reduce DEBUG_ASSERT to LOG_DEBUG 6 years ago
Morph 29e15601f3 hid: Implement DeactivateNpad
Makes use of the already existing DeactivateController function.
6 years ago
Morph c1e9ca4c08 hid: Stub SetNpadJoyAssignmentModeSingle and reorganize service commands 6 years ago
Zach Hilman 5326d3cb3a
Merge pull request #2951 from lioncash/global
core: Remove Core::CurrentProcess()
6 years ago
Rodrigo Locatti dcdd887df3
Merge pull request #2952 from lioncash/warning
bcat: Silence various warnings
6 years ago
Rodrigo Locatti 3cb4c9f08a
Merge pull request #2955 from lioncash/allocator
alignment: Resolve allocator construction issues on debug
6 years ago
Lioncash 57ffada746 alignment: Resolve allocator construction issues on debug
This was related to the source allocator being passed into the
constructor potentially having a different type than allocator being
constructed.

We simply need to provide a constructor to handle this case.

This resolves issues related to the allocator causing debug builds on
MSVC to fail.
6 years ago
Lioncash 9aafb2a277 alignment: Specify trait definitions within the allocator
Allows containers and other data structures to consider optimizations
based off of them. We satisfy all of these requirements anyways.
6 years ago
Fernando Sahmkow 8f407adeeb
Merge pull request #2954 from ReinUsesLisp/fix-invalidation
gl_shader_disk_cache: Properly ignore existing cache
6 years ago
ReinUsesLisp 58b597c5ec
gl_shader_disk_cache: Properly ignore existing cache
Previously old entries where appended to the file even if the shader
cache was ignored at boot. Address that issue.
6 years ago
Lioncash 0705ce0ed1 bcat/module: Silence truncation warnings
We need to perform explicit casts here, otherwise we're implicitly
truncating a 64-bit type to a 32-bit one.
6 years ago
Lioncash 7e77d1593f bcat: Take std::function instance by value in NullBackend's constructor
Without this, the std::move within the constructor initializer list
won't be able to actually perform a move.
6 years ago
Lioncash 81adf46d1d bcat: In-class initialize ProgressServiceBackend's impl member
Allows us to remove a constructor initializer list.
6 years ago
Lioncash 3fcd2180e4 bcat: Make ProgressServiceBackend's constructor take a std::string_view
Given the string is appended to another, we can make it a view so a
redundant full copy of the string isn't made.
6 years ago
Zach Hilman 81fff7aec0 qt: Fix game name format error 6 years ago
Lioncash f2fa16b609 bcat: Make ProgressServiceBackend's GetEvent() const
This member function doesn't modify internal member state, so it can be
marked const.
6 years ago
Lioncash 329081fcb7 boxcat: Silence an unused variable warning
On parse errors, we can log out the explanatory string indicating what
the parsing error was, rather than just ignoring the variable and
returning an overly broad error code.
6 years ago
Lioncash 839b38c404 core/core: Remove unused header
This isn't used anywhere in either the cpp or header file.
6 years ago
Lioncash f1382cf0e7 core: Remove Core::CurrentProcess()
This only encourages the use of the global system instance (which will
be phased out long-term). Instead, we use the direct system function
call directly to remove the appealing but discouraged short-hand.
6 years ago
Lioncash 69f16ba50e hle/service: Replace global system instance calls with instance-based ones
Migrates the HLE service code off the use of directly accessing the
global system instance where trivially able to do so.

This removes all usages of Core::CurrentProcess from the service code,
only 8 occurrences of this function exist elsewhere. There's still quite
a bit of "System::GetInstance()" being used, however this was able to
replace a few instances.
6 years ago
bunnei deecd7f074
Merge pull request #2942 from ReinUsesLisp/clang-warnings
Silence miscellaneous warnings
6 years ago
bunnei 6f511c8006
Merge pull request #2943 from DarkLordZach/azure-titlebars-v2
ci: Add custom titlebars for mainline and patreon
6 years ago
Lioncash f883cd4f0e video_core/control_flow: Eliminate variable shadowing warnings 6 years ago
Lioncash 25702b6256 video_core/control_flow: Eliminate pessimizing moves
These can inhibit the ability of a compiler to perform RVO.
6 years ago
Lioncash d82b181d44 video_core/ast: Unindent most of IsFullyDecompiled() by one level 6 years ago
Lioncash 6c41d1cd7e video_core/ast: Make ShowCurrentState() take a string_view instead of std::string
Allows the function to be non-allocating in terms of the output string.
6 years ago
Lioncash 3c54edae24 video_core/ast: Eliminate variable shadowing warnings 6 years ago
Lioncash 5a0a9c7449 video_core/ast: Replace std::string with a constexpr std::string_view
Same behavior, but without the need to heap allocate
6 years ago
Lioncash 3a20d9734f video_core/ast: Default the move constructor and assignment operator
This is behaviorally equivalent and also fixes a bug where some members
weren't being moved over.
6 years ago
Lioncash 43503a69bf video_core/{ast, expr}: Organize forward declaration
Keeps them alphabetically sorted for readability.
6 years ago
Lioncash 50ad745585 video_core/expr: Supply operator!= along with operator==
Provides logical symmetry to the interface.
6 years ago
Lioncash 8eb1398f8d video_core/{ast, expr}: Use std::move where applicable
Avoids unnecessary atomic reference count increments and decrements.
6 years ago
Lioncash 8e0c80f269 video_core/ast: Supply const accessors for data where applicable
Provides const equivalents of data accessors for use within const
contexts.
6 years ago
David 3728bbc22a
Merge pull request #2888 from FernandoS27/decompiler2
Shader_IR: Implement a full control flow decompiler for the shader IR.
6 years ago
Zach Hilman 57fe7fdec0 qt: Change titlebar formatting 6 years ago
Zach Hilman 3d4a0b94e3 common: Add additional SCM revision fields 6 years ago
ReinUsesLisp fe7f20e659 maxwell_3d: Add dirty flags for depth bounds values
This is useful in Vulkan where we want to update depth bounds without
caring if it's enabled or disabled through vkCmdSetDepthBounds.
6 years ago
Fernando Sahmkow 538f5880ff GL_Renderer: Remove lefting snippet. 6 years ago
Fernando Sahmkow 75395605d6 NvFlinger: Remove leftover from corrections and clang format. 6 years ago
Fernando Sahmkow 9f2719d1a4 Gl_Rasterizer: Protect CPU Memory mapping from multiple threads. 6 years ago
Fernando Sahmkow 3f104464de Core: Wait for GPU to be idle before shutting down. 6 years ago
Fernando Sahmkow 69fa2e6525 Nvdrv: Correct Event setup in Nvdrv
Events are supposed to be cleared on quering. This fixes that issue.
6 years ago
Fernando Sahmkow 782b7a0ca4 NVFlinger: Reverse the change that only signaled events on buffer acquire.
This has been hardware tested and it seems that NVFlinger will still 
signal even if there are no buffers to present.
6 years ago
Fernando Sahmkow ffc2ce89a0 Nvdrv: Do framelimiting only in the CPU Thread 6 years ago
Fernando Sahmkow 976d9ef43c NvFlinger: Don't swap buffers if a frame is missing and always trigger event in sync gpu. 6 years ago
Fernando Sahmkow 5b5e60ffec GPU_Async: Correct fences, display events and more.
This commit uses guest fences on vSync event instead of an articial fake 
fence we had.
It also corrects to keep signaling display events while loading the game 
as the OS is suppose to send buffers to vSync during that time.
6 years ago
Fernando Sahmkow 4e9f975935 Nvdrv: Correct Async regression and avoid signaling empty buffer vsyncs 6 years ago
ReinUsesLisp 25ee892d5e audio/audout_u: Change formatting for old clang-format versions 6 years ago
ReinUsesLisp e1afeec76d yuzu/game_list_worker: Silence warnings 6 years ago
ReinUsesLisp f297e9ff22 yuzu/game_list: Silence -Wswitch and -Wunused-variable 6 years ago
ReinUsesLisp 2b9b695fa7 yuzu/configure_service: Silence -Wswitch 6 years ago
ReinUsesLisp e03f46fb0e yuzu_tester: Remove unused variable 6 years ago
ReinUsesLisp 8d0b1a957e service/nvdrv: Silence -Wswitch 6 years ago
ReinUsesLisp 5c907f85fc service/nfp: Silence -Wunused and -Wswitch 6 years ago
ReinUsesLisp 0759df0aff service/hid: Silence -Wunused and -Wswitch 6 years ago
ReinUsesLisp ab6f8d8a1e service/am: Silence -Wreorder 6 years ago
ReinUsesLisp 634c6e24b0 service/hid: Remove unused system reference 6 years ago
ReinUsesLisp 1dbd22e695 service/friend: Remove unused field 6 years ago
ReinUsesLisp 99db7d23dd service/filesystem: Silence -Wunused-variable 6 years ago
ReinUsesLisp 8566096794 service/bcat: Silence -Wreorder and -Wunused 6 years ago
ReinUsesLisp 87e7cc2d5a service/audio: Silence -Wunused 6 years ago
ReinUsesLisp aacb473aa2 service/apm: Silence -Wunused and -Wreorder 6 years ago
ReinUsesLisp f4417eab8f common/file_util: Silence -Wswitch 6 years ago
Fernando Sahmkow ab47a660c8 Texture_Cache: Blit Deduction corrections and simplifications. 6 years ago
Fernando Sahmkow 2036504a82 TextureCache: Add the ability to deduce if two textures are depth on blit. 6 years ago
Fernando Sahmkow e6eae4b815 Shader_ir: Address feedback 6 years ago
Fernando Sahmkow 3c09d9abe6 Shader_Ir: Address Feedback and clang format. 6 years ago
Fernando Sahmkow 507a9c6a40 vk_shader_decompiler: Correct Branches inside conditionals. 6 years ago
Fernando Sahmkow 000ad558dd vk_shader_decompiler: Clean code and be const correct. 6 years ago
Fernando Sahmkow 7c756baa77 Shader_IR: clean up AST handling and add documentation. 6 years ago
Fernando Sahmkow 5ea740beb5 Shader_IR: Correct OutwardMoves for Ifs 6 years ago
Fernando Sahmkow 100a4bd988 vk_shader_compiler: Don't enclose branches with if(true) to avoid crashing AMD 6 years ago
Fernando Sahmkow 189a50bc2a gl_shader_decompiler: Refactor and address feedback. 6 years ago
Fernando Sahmkow b3c46d6948 Shader_IR: corrections and clang-format 6 years ago
Fernando Sahmkow 466cd52ad4 vk_shader_compiler: Correct SPIR-V AST Decompiling 6 years ago
Fernando Sahmkow 2e9a810423 Shader_IR: allow else derivation to be optional. 6 years ago
Fernando Sahmkow ca9901867e vk_shader_compiler: Implement the decompiler in SPIR-V 6 years ago
Fernando Sahmkow 0366c18d87 Shader_IR: mark labels as unused for partial decompile. 6 years ago
Fernando Sahmkow 47e4f6a52c Shader_Ir: Refactor Decompilation process and allow multiple decompilation modes. 6 years ago
Fernando Sahmkow 38fc995f6c gl_shader_decompiler: Implement AST decompiling 6 years ago
Fernando Sahmkow 6fdd501113 shader_ir: Declare Manager and pass it to appropiate programs. 6 years ago
Fernando Sahmkow 8be6e1c522 shader_ir: Corrections to outward movements and misc stuffs 6 years ago
Fernando Sahmkow 4fde66e609 shader_ir: Add basic goto elimination 6 years ago
Fernando Sahmkow c17953978b shader_ir: Initial Decompile Setup 6 years ago
Fernando Sahmkow 678d9ccad6 SDL: Fix missing header
This fixes linux and mingw builds.
6 years ago
bunnei 94c34f23d7
Merge pull request #2896 from FearlessTobi/port-4950
Port citra-emu/citra#4950: "Add FPS to SDL title bar"
6 years ago
bunnei 7fbaf62bac
Merge pull request #2936 from VPeruS/use-isallzeroarray
[crypto] Use IsAllZeroArray helper function
6 years ago
bunnei c818728513
Merge pull request #2898 from FearlessTobi/port-4004
Port citra-emu/citra#4004: "qt_themes: add two colorful themes"
6 years ago
David 9aac7fbc22
Merge pull request #2539 from DarkLordZach/bcat
bcat: Implement BCAT service and connect to yuzu Boxcat server
6 years ago
vperus 29b1d0db0f [crypto] Use IsAllZeroArray helper function 6 years ago
Zach Hilman e55d086cc9 qt: Add service dialog 6 years ago
bunnei 5e677a3178
Merge pull request #2904 from ogniK5377/better-signal-hid
Signal styleset changes at a better time
6 years ago
Zach Hilman 5d86c52a3a boxcat: Use updated game-asset API URL and tags 6 years ago
Zach Hilman 19c466dfb1 bcat: Add FSC accessors for BCAT data
Ports BCAT to use FSC interface
6 years ago
ReinUsesLisp 69c806feb6
gl_rasterizer: Fix polygon offset units
For some reason hardware divides polygon offset units by two. This is
visible since drivers multiply the application requested polygon offset
by two.
6 years ago
Zach Hilman bcf1eafb8b boxcat: Implement events global field 6 years ago
Zach Hilman 2d410ddf4d bcat: Implement DeliveryCacheProgressImpl structure
Huge thanks to lioncash for re-ing this for me.
6 years ago
Zach Hilman 92b70a3bf9 boxcat: Use Etag header names for file digest 6 years ago
Zach Hilman e8183f9ef0 boxcat: Add downloading and client for launch parameter data 6 years ago
Zach Hilman b8ce87103d bcat: Add backend function for BCAT Indirect (launch parameter)
Returns the data that should be returned by PopLaunchParameter kind=ApplicationSpecific.
6 years ago
Zach Hilman ea17b294ea bcat: Expose CreateBackendFromSettings helper function 6 years ago
Zach Hilman fe8c7e66e2 am: Unstub PopLaunchParameter and add bcat connection for app-specific data
Previously we were simply returning the account-preselect structure all times but if passed with a different mode the game expects application-specific data. This also adds a hook for BCAT into this allowing us to send the launch parameter through bcat,
6 years ago
Zach Hilman 02f8f1bb3e configure_service: Allow Qt to open external links 6 years ago
Zach Hilman f0551aef09 yuzu: Add UI tab to configure BCAT services
Also displays current events if boxcat is selected.
6 years ago
Zach Hilman 102db206e0 bcat: Implement cmd 90201 ClearDeliveryCacheStorage
Takes a title ID and simply deletes all the data for that title ID's bcat. Invokes the respective backend command.
6 years ago
Zach Hilman 1bde5a3c6a bcat: Implement cmd 30100 SetPassphrase
Takes a title ID and passphrase (0x40 byte string) and passes it to the backend.
6 years ago
Zach Hilman 86773a7f08 bcat: Implement cmd RequestSyncDeliveryCache and variant
Variant also supports only updating a single directory. These just both invoke backend commands.
6 years ago
Zach Hilman cb7c96b96a bcat: Implement IDeliveryCacheProgressService commands
Used to query completion status and events for the current delivery task.
6 years ago
Zach Hilman f352ad5c93 bcat: Implement IDeliveryCacheFileService commands
Used to read the contents of files and access their metadata.
6 years ago
Zach Hilman 8812018c1d bcat: Implement IDeliveryCacheDirectoryService commands
Used to list and get directories at the root level.
6 years ago
Zach Hilman 862131ead9 bcat: Implement IDeliveryCacheStorageService commands
Used to create subclasses to manage files and directories and to list directories.
6 years ago
Zach Hilman 78d146f907 bcat: Add commands to create IDeliveryCacheStorageService
Used to access contents of download.
6 years ago
Zach Hilman 68658a8385 module: Create BCAT backend based upon Settings value on construction 6 years ago
Zach Hilman 2903f3524e bcat: Add BCAT backend for Boxcat service
Downloads content from yuzu servers and unpacks it into the temporary directory provided. Fully supports all Backend features except passphrase.
6 years ago
Zach Hilman 2c0b75a744 bcat: Add backend class to generify the functions of BCAT
Provides the most abstract simplified functions of BCAT as functions. Also includes a NullBackend class which is just a no-op.
6 years ago
Zach Hilman 647992e666 settings: Add option to set BCAT backend 6 years ago
Zach Hilman 532ec459b8 nifm: Signal to applications that internet access is available 6 years ago
Zach Hilman f6c53526b3 core/loader: Track the NSO build ID of the current process 6 years ago
Zach Hilman 943662dc3c applets: Add accessor for AppletFrontendSet
Allows other services to call applets without using LLE.
6 years ago
Zach Hilman f2073217a4 filesystem: Add getter for BCAT temporary directory 6 years ago
Zach Hilman c00ed8f4ff vfs: Add function to extract ZIP file into virtual filesystem 6 years ago
bunnei dc29919bbe
Revert "arm_dynarmic: Check if jit is nullptr when preparing reschedule" 6 years ago
bunnei 28538bba9c
Merge pull request #2574 from DarkLordZach/dynarmic-jit-nullptr
arm_dynarmic: Check if jit is nullptr when preparing reschedule
6 years ago
FreddyFunk 7b93c4646a Services::ES fix casting warnings 6 years ago
FearlessTobi b89fb6e1be yuzu: Pause when in background
Co-Authored-By: Vitor K <vitor-k@users.noreply.github.com>
6 years ago
David Marcec 77fbf29047 Signal styleset changes at a better time
We should signal when a net controller is added and our event should be manual, not automatic.
6 years ago
ReinUsesLisp f926230ab1
gl_shader_decompiler: Add tailing return for HUnpack2 6 years ago
ReinUsesLisp 25bfaffdff
gl_shader_decompiler: Fix clang build issues 6 years ago
bunnei 376f1a4432
Merge pull request #2869 from ReinUsesLisp/suld
shader/image: Implement SULD and fix SUATOM
6 years ago
Zach Hilman c4f3400bea card_image: Add accessors for raw partitions in XCI 6 years ago
Zach Hilman 3952c73aee card_image: Lazily load partitions in XCI 6 years ago
Zach Hilman 3895f7e456 pfs: Provide accessors for file sizes and offsets 6 years ago
Zach Hilman 14248685af cmake: Add SCM detection for Azure 6 years ago
Zach Hilman 6212df3beb lm: Flush manager output on core shutdown 6 years ago
Zach Hilman fa6531ab0f lm: Rename Initialize to Log and implement with manager/reporter
Allows saving and clearer output of data.
6 years ago
Zach Hilman ef9a7fa1f5 lm: Implement manager class to output to reporter 6 years ago
Zach Hilman 4153bd8d17 core: Add LM::Manager to system
Allows centralized control over logging mechanisms.
6 years ago
Zach Hilman 82bf055eca reporter: Add log output for packaged lm log data
Takes the vector from head to tail of log data and saves it.
6 years ago
FearlessTobi 855e7237ff qt_themes: add two colorful themes
These two colorful themes are based on the Default and Dark themes, and contain icons that are colored rather than black and white. These icons come from icons8.com and they have been slightly revised by me. I'm pretty sure I was licensed to use them for Citra.

Co-Authored-By: Pengfei Zhu <zhupengfei321@sina.cn>
6 years ago
David aaec1562f8
Merge pull request #2683 from DarkLordZach/lock-exit
am: Implement exit locking and self exit commands
6 years ago
David a9abf4e7f8
Merge pull request #2889 from FearlessTobi/adwsawdawd
Add missing include
6 years ago
Zach Hilman b835d76311
Merge pull request #2876 from ogniK5377/AcquireNpadStyleSetUpdateEventHandle-fix
AcquireNpadStyleSetUpdateEventHandle should have a separate event for each controller type
6 years ago
Zach Hilman b7725812ac
Merge pull request #2877 from ogniK5377/framecount-rev7
Added frame_count for REV5 audio renderer
6 years ago
Zach Hilman 9f3bf6d157 main: Use const on all variable initializations 6 years ago
David e31c15606b
Merge pull request #2895 from FearlessTobi/debug-logs
service/acc: Lower log severity from INFO to DEBUG
6 years ago
jroweboy 64dbc92b61 Add FPS to SDL title bar
Also fix a small issue with incorrect shutdown ordering in SDL.
Previously the system would still be running so the telemetry task
didn't launch and detached_tasks would assert(count == 0)
6 years ago
FearlessTobi e22e0eb8d7 Add missing include 6 years ago
Fernando Sahmkow a755f24369
Merge pull request #2873 from ogniK5377/new-ioctls
Initial implementation of Ioctl2 & Ioctl3
6 years ago
David Marcec 59fd910355 removed comment 6 years ago
David Marcec 654427d4d0 Rebased 6 years ago
Fernando Sahmkow 4ace69de9c
Merge pull request #2884 from ogniK5377/deglobal-sys-services
Remove usage of System::CurrentInterface() from most services
6 years ago
FearlessTobi 82979296d2 service/acc: Lower log severity from INFO to DEBUG
According to ogniK, this should have always been Debug and not Info.
6 years ago
David 9d69206cd0
Merge pull request #2870 from FernandoS27/multi-draw
Implement a MME Draw commands Inliner and correct host instance drawing
6 years ago
Fernando Sahmkow 822ca65d69
Merge pull request #2891 from FearlessTobi/rod-tex
video_core: Implement RGBX16F and lower Surface Copy log severity
6 years ago
David 3bfba23362
Merge pull request #2867 from ReinUsesLisp/configure-framebuffers-clean
gl_rasterizer: Remove unused code paths from ConfigureFramebuffers
6 years ago
Fernando Sahmkow 68f5aff64f Maxwell3D: Corrections and refactors to MME instance refactor 6 years ago
David Marcec 9513abbb0a removed unneeded semicolon 6 years ago
David Marcec d961d5479e Revert "Merge pull request #2709 from DarkLordZach/oss-ext-fonts-1"
This reverts commit fa1c60c33e, reversing
changes made to e34899067b.
6 years ago
David Marcec e73ac40eaa Removed reference to core timing to nvflinger and used system instead 6 years ago
David Marcec aed884d121 marked controller constructors as explicit 6 years ago
David Marcec bd1c4ec9a0 Rebase 6 years ago
David Marcec fcdbf0bc53 Rebase 6 years ago
David Marcec 4d220964df Deglobalize System: Vi 6 years ago
David Marcec 2c6e4ce0ad Deglobalize System: Time 6 years ago
David Marcec 36a97dd8a2 Rebase 6 years ago
David Marcec d6e830d877 Deglobalize System: NvFlinger 6 years ago
David Marcec f21ab654db Rebase 6 years ago
David Marcec 8d3ff2b127 Deglobalize System: Nim 6 years ago
David Marcec ad53dc0106 Deglobalize System: Nifm 6 years ago
David Marcec 8df2a98f75 Deglobalize System: NFP 6 years ago
David Marcec 482a03f8a5 Deglobalize System: LDR 6 years ago
David Marcec 07823b61a1 Deglobalize System: IRS 6 years ago
David Marcec 28181919a6 Deglobalize System: Hid 6 years ago
David Marcec a9e9570d84 Deglobalize System: Friend 6 years ago
David Marcec a40e5b2def Deglobalize System: Fatal 6 years ago
David Marcec c33faabb27 Deglobalize System: Btm 6 years ago
David Marcec f2b61ff073 Deglobalize System: Btdrv 6 years ago
David Marcec 7da8e3f812 Deglobalize System: Aoc 6 years ago
David Marcec 2dbfac652e Deglobalize System: Am 6 years ago
David 9187350b32
Merge pull request #2535 from DarkLordZach/cheat-v2
cheat_engine: Use Atmosphere's Cheat VM and fix cheat crash
6 years ago
David fa1c60c33e
Merge pull request #2709 from DarkLordZach/oss-ext-fonts-1
system_archive: Move shared font data to system_archive and fix extended font data
6 years ago
Zach Hilman 2a4730cbee pl_u: Use kernel physical memory 6 years ago