Zach Hilman
df1c902e44
settings: Add option to dump ExeFS of games upon launch
...
When enabled, all exefs(es) will be copied to yuzu/dump/<title_id>/exefs.
2018-11-20 17:49:09 -05:00
Lioncash
7bdf580058
kernel/process: Move <random> include to the cpp file
...
<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-20 17:46:20 -05:00
Markus Wick
ac59f51d23
shader_cache: Only lock covered instructions.
2018-11-20 21:58:31 +01:00
Lioncash
323618c33b
am/applets: Make the applet data broker part of the applet itself.
...
The accessor should be doing just that, accessing, rather than retaining
the lifetime of the data broker as well.
2018-11-20 12:36:33 -05:00
Lioncash
646c9eeca5
am/applets: Replace includes with forward declarations where applicable
...
Also resolve places where includes should have been provided, but
weren't.
2018-11-20 11:53:55 -05:00
Lioncash
e784b733d9
am/applets: Relocate comments above the relevant data member in AppletDataBroker
...
Avoids wonky wrapping and makes it nicer to read.
2018-11-20 11:49:49 -05:00
Lioncash
22af607a8d
yuzu/applets/software_keyboard: Override accept() and reject() instead of providing own differently named member functions
...
Uses Qt's built-in interface instead of rolling our own separate one on
top of it. This also fixes a bug in reject() where we were calling
accept() instead of reject().
2018-11-20 11:36:50 -05:00
Lioncash
870fa5e657
yuzu/applets/software_keyboard: std::move std::function instances where applicable
...
std::function instances can potentially allocate. std::moveing them
prevents an avoidable allocation in that case.
2018-11-20 11:34:19 -05:00
Lioncash
a7602de1b5
yuzu/applets/software_keyboard: Make slots private functions
...
These aren't required to be public.
2018-11-20 11:29:22 -05:00
bunnei
81306c4368
Merge pull request #1667 from DarkLordZach/swkbd
...
am: Implement HLE software keyboard applet
2018-11-20 08:24:11 -08:00
bunnei
744cd346ff
Merge pull request #1739 from lioncash/lm
...
lm: Implement SetDestination by doing nothing
2018-11-19 18:40:17 -08:00
bunnei
c9fb7e3c06
Merge pull request #1738 from lioncash/res-limit
...
kernel/resource_limit: Clean up interface
2018-11-19 18:40:02 -08:00
FernandoS27
76f57ab562
Implemented Fast Layered Copy
2018-11-19 19:51:13 -04:00
Lioncash
fa7a76d1e0
kernel/resource_limit: Clean up interface
...
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-19 18:16:39 -05:00
Lioncash
5508ceb0eb
lm: Implement SetDestination by doing nothing
...
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-19 18:09:40 -05:00
Zach Hilman
a52a226ded
software_keyboard: Fix erroneous extra PushNormalData
2018-11-19 16:30:17 -05:00
Zach Hilman
3b90729c00
software_keyboard: Return correct result code on user cancel operation
2018-11-19 15:10:01 -05:00
Zach Hilman
0660384309
applet: Add AppletDataBroker to manage HLE to AM service interaction
...
This cleans up most of the callbacks and such in the Applets::Applet interface, while also properly implementing all four data channels.
2018-11-19 14:24:36 -05:00
bunnei
a34e584ed2
Merge pull request #1634 from DarkLordZach/better-hid-2
...
hid: Add support for multiplayer and multilayout controllers
2018-11-19 08:30:10 -08:00
Zach Hilman
0e6547f499
software_keyboard: Use correct offset for inital text string
2018-11-19 11:22:04 -05:00
Lioncash
0067bc137f
kernel/shared_memory: Make Map() and Unmap() take the target process by 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-19 09:20:29 -05:00
Lioncash
a356495312
kernel/shared_memory: Add a const qualified member function overload for GetPointer()
...
Given this doesn't mutate instance state, we can provide a
const-qualified variant as well.
2018-11-19 09:20:29 -05:00
Lioncash
ee329d2bdf
kernel/shared_memory: Use 64-bit types for offset and size in CreateForApplet
...
Keeps the interface consistent with the regular Create() function.
2018-11-19 09:20:29 -05:00
Lioncash
5833b84689
kernel/shared_memory: Make GetPointer() take a std::size_t instead of a u32
...
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-19 09:20:29 -05:00
Lioncash
d997cf19e0
kernel/shared_memory: Make data members private
...
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-19 09:20:25 -05:00
Lioncash
93babd2c2f
ldr: Clean up error codes
...
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-19 08:12:25 -05:00
Zach Hilman
51e18706a9
filesystem: Clear registered union paths on factory creation
2018-11-18 23:31:30 -05:00
Zach Hilman
10eb01586e
configure_input: Use Joycons Docked instead of Connected as label
2018-11-18 23:22:36 -05:00
Zach Hilman
fab550b629
configure_input_player: Set minimum width on controls
2018-11-18 23:22:36 -05:00
Zach Hilman
63d941fb6a
configure_input: Properly update UI components on removal of player
2018-11-18 23:22:36 -05:00
Zach Hilman
b131a4bbb2
configure_input: Make None a controller option instead of checkbox
2018-11-18 23:22:36 -05:00
Zach Hilman
2d8a5a4e9b
hid: Use player-defined controller type as PREFERRED_CONTROLLER
2018-11-18 23:22:36 -05:00
Zach Hilman
25c07217cf
qt: Move controller button config to separate dialog
...
Handles button configuration for all controller layouts and debug pads. Configurable at construction.
2018-11-18 23:22:36 -05:00
Zach Hilman
2ec994c396
qt: Add UI to configure touchscreen parameters
...
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-18 23:22:36 -05:00
Zach Hilman
558777d83f
qt: Add UI to configure mouse buttons
...
Supports setting the five mouse buttons to any valid controller button/keyboard key (Left, Right, Middle, Foward, Back)
2018-11-18 23:22:36 -05:00
Zach Hilman
b43b2d857f
configure_input: Add support for multiplayer and controller types
...
This moves the actual button configuration to a separate dialog and only has the enabled and type controls in the tab.
2018-11-18 23:22:36 -05:00
Zach Hilman
8e4125d25f
hid/npad: Update NPad to use player controller bindings and type
2018-11-18 23:22:36 -05:00
Zach Hilman
651d96479a
hid/touchscreen: Update Touchscreen to use advanced parameters
...
Including finger ID, diamater x/y, and angle. Additionally, checks if the touchscreen is enabled.
2018-11-18 23:22:36 -05:00
Zach Hilman
1abee80ce3
hid: Add controller bindings for Mouse controller
2018-11-18 23:22:36 -05:00
Zach Hilman
701c23ec92
hid: Add keyboard bindings for Keyboard controller
2018-11-18 23:22:36 -05:00
Zach Hilman
ba768cfdc7
hid: Add controller bindings for DebugPad controller
...
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-18 23:22:36 -05:00
Zach Hilman
288dfe1ba5
yuzu/config: Add (de-)serialization for multiplayer
...
Defaults to full keyboard for keyboard -- It did not seem to be necessary to make the keyboard configurable (besides enabled/disabled).
2018-11-18 23:22:36 -05:00
Zach Hilman
d0c4137dc1
yuzu_cmd/config: Add config deserialization for multiplayer
2018-11-18 23:22:36 -05:00
Zach Hilman
bcbd6015f3
settings: Add settings for multiple players and controllers
...
Uses the PlayerInput struct to represent all of the data that constitutes a player.
2018-11-18 23:21:33 -05:00
Zach Hilman
8cfe1e015d
settings: Add Native type for keyboard
2018-11-18 23:21:33 -05:00
Zach Hilman
b75d8cbc89
settings: Add Native type for mouse buttons
2018-11-18 23:21:33 -05:00
David Marcec
d59c9bc684
Added missing start/end touch attributes to touchscreen
2018-11-18 23:21:33 -05:00
David Marcec
a15c3d6b27
Added debugpad skeleton
2018-11-18 23:21:33 -05:00
David Marcec
8ed0216784
Added controller helper funcs
2018-11-18 23:21:33 -05:00
David Marcec
2c23ad1189
Changed polling rate of hid and Right joycon rotation
2018-11-18 23:21:33 -05:00