- Oct 16, 2018
-
-
bunnei authored
- This will be used as a catch-all for slow-but-accurate GPU emulation paths.
-
Lioncash authored
file_sys/registered_cache: Use unique_ptr and regular pointers instead of shared_ptrs where applicable The data retrieved in these cases are ultimately chiefly owned by either the RegisteredCache instance itself, or the filesystem factories. Both these should live throughout the use of their contained data. If they don't, it should be considered an interface/design issue, and using shared_ptr instances here would mask that, as the data would always be prolonged after the main owner's lifetime ended. This makes the lifetime of the data explicit and makes it harder to accidentally create cyclic references. It also makes the interface slightly more flexible than the previous API, as a shared_ptr can be created from a unique_ptr, but not the other way around, so this allows for that use-case if it ever becomes necessary in some form.
-
- Oct 15, 2018
-
-
Lioncash authored
-
Zach Hilman authored
-
- Oct 13, 2018
-
-
FernandoS27 authored
-
Lioncash authored
filesystem: Make CreateFactories() and InstallInterface() take a VfsFilesystem instance by reference Neither of these functions alter the ownership of the provided pointer, so we can simply make the parameters a reference rather than a direct shared pointer alias. This way we also disallow passing incorrect memory values like nullptr.
-
Lioncash authored
We can utilize QStringList's join() function to perform all of the appending in a single function call. While we're at it, make the extension list a single translatable string and add a disambiguation comment to explain to translators what %1 actually is.
-
Lioncash authored
Depending on whether or not USE_DISCORD_PRESENCE is defined, the "state" parameter can be used or unused. If USE_DISCORD_PRESENCE is not defined, the parameter will be considered unused, which can lead to compiler warnings. So, we can explicitly mark it with [[maybe_unused]] to inform the compiler that this is intentional.
-
- Oct 09, 2018
-
-
Lioncash authored
patch_manager: Return a std::unique_ptr from ParseControlNCA() and GetControlMetadata() instead of a std::shared_ptr Neither of these functions require the use of shared ownership of the returned pointer. This makes it more difficult to create reference cycles with, and makes the interface more generic, as std::shared_ptr instances can be created from a std::unique_ptr, but the vice-versa isn't possible. This also alters relevant functions to take NCA arguments by const reference rather than a const reference to a std::shared_ptr. These functions don't alter the ownership of the memory used by the NCA instance, so we can make the interface more generic by not assuming anything about the type of smart pointer the NCA is contained within and make it the caller's responsibility to ensure the supplied NCA is valid.
-
NeatNit authored
change TouchToPixelPos to return std::pair<int, int> static_cast (SDL) various minor style and code improvements style - PascalCase for function names made touch events private const pointer arg in touch events make TouchToPixelPos a const member function did I do this right? braces on barely-multiline if remove question comment (confirmed in Discord) fixed consts remove unused parameter from TouchEndEvent DRY - High-DPI scaled touch put in separate function also fixes a bug where if you start touching (with either mouse or touchscreen) and drag the mouse to the LEFT of the emulator window, the touch point jumps to the RIGHT side of the touchscreen; draggin to above the window would make it jump to the bottom. implicit conversion from QPoint to QPointF, apparently I have no idea what const even means but I'll put it here anyway remove unused or used-once variables make touch scaling functions const, and put their implementations together removed unused FingerID parameters QTouchEvent forward declaration; add comment to TouchBegin that was lost in an edit better DRY in SDL To do -> TODO(NeatNit) remove unused include
-
- Oct 07, 2018
-
-
Zach Hilman authored
-
Zach Hilman authored
x
-
Zach Hilman authored
-
Zach Hilman authored
-
- Oct 06, 2018
-
-
bunnei authored
-
zhupengfei authored
* Added a context menu on the buttons including Clear & Restore Default * Allow clearing (unsetting) inputs. Added a Clear All button * Allow restoring a single input to default (instead of all)
-
Lioncash authored
These were pointing to a non-existent webpage.
-
- Oct 05, 2018
-
-
Zach Hilman authored
-
Zach Hilman authored
Reads as Update (NSP) in add-ons
-
Zach Hilman authored
-
- Oct 04, 2018
-
-
Lioncash authored
Placing the array wholesale into the header places a copy of the whole array into every translation unit that uses the data, which is wasteful. Particularly given that this array is referenced from three different translation units. This also changes the array to contain pairs of const char*, rather than QString instances. This way, the string data is able to be fixed into the read-only segment of the program, as well as eliminate static constructors/heap allocation immediately on program start.
-
Lioncash authored
Many of the member variables of the thread class aren't even used outside of the class itself, so there's no need to make those variables public. This change follows in the steps of the previous changes that made other kernel types' members private. The main motivation behind this is that the Thread class will likely change in the future as emulation becomes more accurate, and letting random bits of the emulator access data members of the Thread class directly makes it a pain to shuffle around and/or modify internals. Having all data members public like this also makes it difficult to reason about certain bits of behavior without first verifying what parts of the core actually use them. Everything being public also generally follows the tendency for changes to be introduced in completely different translation units that would otherwise be better introduced as an addition to the Thread class' public interface.
-
- Oct 03, 2018
-
-
Lioncash authored
These strings are user-facing, so they should be specified as translatable with tr().
-
Lioncash authored
Keeps the individual behaviors in their own functions, and cleanly separate. We can also do a little better by converting the relevant IDs within the core to a QString only once, instead of converting every string into a std::string.
-
- Oct 02, 2018
-
-
Lioncash authored
This ensures that the proper codec will always be used no matter what. It also avoids relying on ASCII conversions.
-
Lioncash authored
Disambiguates what the string represents to help translators more easily understand what it is that they're translating. While we're at it, we can move the code to its own function, so that we don't need to specify the same string twice.
-
Lioncash authored
These aren't used outside of this translation unit, so they can be internally linked.
-
fearlessTobi authored
-
fearlessTobi authored
-
fearlessTobi authored
-
fearlessTobi authored
-
fearlessTobi authored
-
- Oct 01, 2018
-
-
Zach Hilman authored
-
- Sep 30, 2018
-
-
Lioncash authored
Makes the public interface consistent in terms of how accesses are done on a process object. It also makes it slightly nicer to reason about the logic of the process class, as we don't want to expose everything to external code.
-
- Sep 27, 2018
-
-
Zach Hilman authored
Fixes an issue where installed system archive NCAs would be installed to user NAND and not recognized by games.
-
- Sep 26, 2018
-
-
Lioncash authored
Ternary operators have a lower precedence than arithmetic operators, so what was actually occurring here is "return (out + full) ? x : y" which most definitely isn't intended, given we calculate out recursively above. We were essentially doing a lot of work for nothing.
-
Lioncash authored
This can cause warnings about static constructors, and is also not ideal performance-wise due to the indirection through std::function. This also keeps the behavior itself separate from the surrounding code, which can make it nicer to read, due to the size of the code.
-
Lioncash authored
Given we just recently had a patch backport this from citra, let's try and keep the convention uniform.
-
- Sep 24, 2018
-
-
Zach Hilman authored
-
- Sep 22, 2018
-
-
Zach Hilman authored
-