summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2018-11-22macro_interpreter: Implement AddWithCarry and SubtractWithBorrow.bunnei
- Used by Undertale.
2018-11-21Merge pull request #1754 from ReinUsesLisp/zero-registerbunnei
gl_shader_decompiler: Remove UNREACHABLE when setting RZ
2018-11-21Merge pull request #1758 from lioncash/rectbunnei
common/math_util: Minor cleanup
2018-11-21common: Remove dependency on xbyakLioncash
Xbyak is currently entirely unused. Rather than carting it along, remove it and get rid of a dependency. If it's ever needed in the future, then it can be re-added (and likely be more up to date at that point in time).
2018-11-21common/math_util: Simplify std::make_signed usages to std::make_signed_tLioncash
Gets rid of the need to use typename to access the ::type alias.
2018-11-21common/math_util: Make Rectangle's constructors constexprLioncash
Allows objects that contain rectangle instances to be constexpr constructible as well.
2018-11-21common/math_util: Remove unnecessary static from PILioncash
const/constexpr variables have internal linkage by default.
2018-11-21common/math_util: Remove unused IntervalsIntersect() functionLioncash
This hasn't been used since the project started, so we may as well get rid of it to keep it from bit rotting.
2018-11-20Merge pull request #1751 from bunnei/color-mask-fixbunnei
maxwell_3d: Initialize rasterizer color mask registers as enabled.
2018-11-20gl_shader_decompiler: Remove UNREACHABLE when setting RZReinUsesLisp
2018-11-20maxwell_3d: Initialize rasterizer color mask registers as enabled.bunnei
- Fixes rendering regression with Sonic Mania.
2018-11-20am: Correct build failureLioncash
The interface for shared memory was changed, but another commit was merged that relied on the (previously public) internals of SharedMemory. This amends that discrepancy.
2018-11-20Merge pull request #1734 from lioncash/sharedbunnei
kernel/shared_memory: Make data members private, plus minor interface changes
2018-11-20Merge pull request #1733 from lioncash/ldrbunnei
ldr: Clean up error codes
2018-11-20Merge pull request #1746 from lioncash/randombunnei
kernel/process: Move <random> include to the cpp file
2018-11-20Merge pull request #1748 from lioncash/assertbunnei
common/assert: Make the UNIMPLEMENTED macro properly assert
2018-11-20file_sys/card_image: Provide named members for the GamecardInfo structLioncash
Fills out the struct according to information provided by SwitchBrew
2018-11-20common/assert: Add UNIMPLEMENTED_IF and UNIMPLEMENTED_IF_MSG for conditional ↵Lioncash
assertions Currently, there's no way to specify if an assertion should conditionally occur due to unimplemented behavior. This is useful when something is only partially implemented (e.g. due to ongoing RE work). In particular, this would be useful within the graphics code. The rationale behind this is it allows a dev to disable unimplemented feature assertions (which can occur in an unrelated work area), while still enabling regular assertions, which act as behavior guards for conditions or states which must not occur. Previously, the only way a dev could temporarily disable asserts, was to disable the regular assertion macros, which has the downside of also disabling, well, the regular assertions which hold more sanitizing value, as opposed to unimplemented feature assertions.
2018-11-20common/assert: Make the UNIMPLEMENTED macro properly assertLioncash
Currently, this was only performing a logging call, which doesn't actually invoke any assertion behavior. This is unlike UNIMPLEMENTED_MSG, which *does* assert. This makes the expected behavior uniform across both macros.
2018-11-20kernel/process: Move <random> include to the cpp fileLioncash
<random> isn't necesary directly within the header and can be placed in the cpp file where its needed. Avoids propagating random generation utilities via a header file.
2018-11-20Merge pull request #1667 from DarkLordZach/swkbdbunnei
am: Implement HLE software keyboard applet
2018-11-19Merge pull request #1739 from lioncash/lmbunnei
lm: Implement SetDestination by doing nothing
2018-11-19kernel/resource_limit: Clean up interfaceLioncash
Cleans out the citra/3DS-specific implementation details that don't apply to the Switch. Sets the stage for implementing ResourceLimit instances properly. While we're at it, remove the erroneous checks within CreateThread() and SetThreadPriority(). While these are indeed checked in some capacity, they are not checked via a ResourceLimit instance. In the process of moving out Citra-specifics, this also replaces the system ResourceLimit instance's values with ones from the Switch.
2018-11-19lm: Implement SetDestination by doing nothingLioncash
This service function was likely intended to be a way to redirect where the output of a log went. e.g. Firing a log over a network, dumping over a tunneling session, etc. Given we always want to see the log and not change its output. It's one of the lucky service functions where the easiest implementation is to just do nothing at all and return success.
2018-11-19software_keyboard: Fix erroneous extra PushNormalDataZach Hilman
2018-11-19software_keyboard: Return correct result code on user cancel operationZach Hilman
2018-11-19applet: Add AppletDataBroker to manage HLE to AM service interactionZach Hilman
This cleans up most of the callbacks and such in the Applets::Applet interface, while also properly implementing all four data channels.
2018-11-19software_keyboard: Use correct offset for inital text stringZach Hilman
2018-11-19kernel/shared_memory: Make Map() and Unmap() take the target process by ↵Lioncash
reference rather than as a pointer Both member functions assume the passed in target process will not be null. Instead of making this assumption implicit, we can change the functions to be references and enforce this at the type-system level.
2018-11-19kernel/shared_memory: Add a const qualified member function overload for ↵Lioncash
GetPointer() Given this doesn't mutate instance state, we can provide a const-qualified variant as well.
2018-11-19kernel/shared_memory: Use 64-bit types for offset and size in CreateForAppletLioncash
Keeps the interface consistent with the regular Create() function.
2018-11-19kernel/shared_memory: Make GetPointer() take a std::size_t instead of a u32Lioncash
Makes the interface nicer to use in terms of 64-bit code, as it makes it less likely for one to get truncation warnings (and also makes sense in the context of the rest of the interface where 64-bit types are used for sizes and offsets
2018-11-19kernel/shared_memory: Make data members privateLioncash
Rather than allow unfettered access to the class internals, we hide all members by default and create and API that other code can operate against.
2018-11-19ldr: Clean up error codesLioncash
The separate enum isn't particularly necessary here, and the values can just be directly put into the ResultCode instances, given the names are also self-documenting here.
2018-11-18configure_input: Use Joycons Docked instead of Connected as labelZach Hilman
2018-11-18configure_input_player: Set minimum width on controlsZach Hilman
2018-11-18configure_input: Properly update UI components on removal of playerZach Hilman
2018-11-18configure_input: Make None a controller option instead of checkboxZach Hilman
2018-11-18hid: Use player-defined controller type as PREFERRED_CONTROLLERZach Hilman
2018-11-18qt: Move controller button config to separate dialogZach Hilman
Handles button configuration for all controller layouts and debug pads. Configurable at construction.
2018-11-18qt: Add UI to configure touchscreen parametersZach Hilman
This allows adjusting the finger, diameter, and angle of the emulated touchscreen. It also provides a warning to the user about what changing these parameters can do.
2018-11-18qt: Add UI to configure mouse buttonsZach Hilman
Supports setting the five mouse buttons to any valid controller button/keyboard key (Left, Right, Middle, Foward, Back)
2018-11-18configure_input: Add support for multiplayer and controller typesZach Hilman
This moves the actual button configuration to a separate dialog and only has the enabled and type controls in the tab.
2018-11-18hid/npad: Update NPad to use player controller bindings and typeZach Hilman
2018-11-18hid/touchscreen: Update Touchscreen to use advanced parametersZach Hilman
Including finger ID, diamater x/y, and angle. Additionally, checks if the touchscreen is enabled.
2018-11-18hid: Add controller bindings for Mouse controllerZach Hilman
2018-11-18hid: Add keyboard bindings for Keyboard controllerZach Hilman
2018-11-18hid: Add controller bindings for DebugPad controllerZach Hilman
Used by developers to test games, not present on retail systems. Some games are known to respond to DebugPad input though, for example Kirby Star Allies.
2018-11-18yuzu/config: Add (de-)serialization for multiplayerZach Hilman
Defaults to full keyboard for keyboard -- It did not seem to be necessary to make the keyboard configurable (besides enabled/disabled).
2018-11-18yuzu_cmd/config: Add config deserialization for multiplayerZach Hilman