Lioncash
76f27d1f44
service/am: Add function table for IDebugFunctions
We already have the service related stuff set up for this, however, it's
missing the function table.
7 years ago
Lioncash
26b809549b
service/am: Add basic implementation of ChangeMainAppletMasterVolume
All this does is supply a new volume level and a fade time in
nanoseconds for the volume transition to occur within.
7 years ago
Lioncash
c07ebeac19
service/am: Unstub SetTransparentVolumeRate()
Like the other volume setter, this mainly just sets a data member within
the service, nothing too special.
7 years ago
Lioncash
ecd3afdc8e
service/am: Unstub SetExpectedMasterVolume()
This function passes in the desired main applet and library applet
volume levels. We can then just pass those values back within the
relevant volume getter functions, allowing us to unstub those as well.
The initial values for the library and main applet volumes differ. The
main applet volume is 0.25 by default, while the library applet volume
is initialized to 1.0 by default in the services themselves.
7 years ago
Lioncash
ef073ff117
service/nvflinger,service/vi: Handle failure cases with exposed API
Converts many of the Find* functions to return a std::optional<T> as
opposed to returning the raw return values directly. This allows
removing a few assertions and handles error cases like the service
itself does.
7 years ago
David Marcec
f2536cafe5
Proper no message handling for AM::PopMessage
When we have no messages, we should be returning an error code.
7 years ago
Zach Hilman
69f622be36
applets: Implement LibAppletOff (Web) applet
7 years ago
Zach Hilman
94db6e5f3f
am: Add size parameter to am:IStorage logging
7 years ago
Zach Hilman
c643f364b4
am: Implement GetSaveDataSize and ExtendSaveData
These functions come in a pair and are needed by Smash Ultimate, Minecraft, and Skyrim, amongst others.
7 years ago
Lioncash
dd272298aa
service/am: Unstub GetAppletResourceUserId
This is supposed to return the current process' ID. (0 indicates an
invalid ID for both process IDs and ARU IDs).
7 years ago
Zach Hilman
0d2ba2ca4c
applets: Correct usage of SignalStateChanged event
This was causing some games (most notably Pokemon Quest) to softlock due to an event being fired when not supposed to. This also removes a hack wherein we were firing the state changed event when the game retrieves it, which is incorrect.
7 years ago
Zach Hilman
60b59d554d
am: Use ProfileSelect applet
7 years ago
Zach Hilman
170d707850
hle_ipc: Refactor SleepClientThread to avoid ReadableEvent
7 years ago
Zach Hilman
a342bcc9b1
kernel/event: Reference ReadableEvent from WritableEvent
7 years ago
Zach Hilman
ff610103b5
core: Port all current usages of Event to Readable/WritableEvent
7 years ago
David Marcec
f271316822
Reworked svcs slightly, improved error messages in AM and fsp_srv
7 years ago
David Marcec
3d627df4d8
Improved error messages in AM, HwOpus and NvMap
7 years ago
David Marcec
a2cc3b10bb
Changed logging to be "Log before execution", Added more error logging, all services should now log on some level
7 years ago
Zach Hilman
f820e58be4
am: Return StubApplet instead of nullptr when AppletId not found
7 years ago
Lioncash
f17e122025
am: Correct build failure
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.
7 years ago
Lioncash
73b7748984
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.
7 years ago
Zach Hilman
32775125b7
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.
7 years ago
Zach Hilman
4ee087fb3c
applet: Use std::queue instead of std::vector for storage stack
7 years ago
Zach Hilman
19b2571aec
applet: Add operation completed callback
7 years ago
Zach Hilman
6209fe0c27
software_keyboard: Push buffer size to offset 0x4 in output data
7 years ago
Zach Hilman
8b433beff3
software_keyboard: Make GetText asynchronous
a
7 years ago
Zach Hilman
7cfb29de23
am: Allow applets to push multiple and different channels of data
7 years ago
Zach Hilman
3cf7246e37
am: Implement ILibraryAppletAccessor IsCompleted and GetResult
7 years ago
Zach Hilman
fed6ab14c3
am: Implement text check software keyboard mode
Allows the game to verify and send a message to the frontend.
7 years ago
Zach Hilman
e696ed1f4d
am: Deglobalize software keyboard applet
7 years ago
Zach Hilman
48fcb43585
am: Construct and use proper applets with ILibraryAppletAccessor
Allows use of software keyboard applet and future applets to be easily added by adding enum ID and a switch case.
7 years ago
Zach Hilman
731b4bd691
am: Unstub ILibraryAppletAccessor::Start
Now starts the applet provided in constructor.
7 years ago
Zach Hilman
ba03bfa430
am: Implement PopInteractiveOutData and PushInteractiveInData
Used by software keyboard applet for data transfer.
7 years ago
Zach Hilman
5ce6b8fea7
am: Convert storage stack to vector
std::stack was no longer suitable for non-trivial operations
7 years ago
Zach Hilman
0682a908c0
am: Move AM::IStorage to header
Needs to be accessible by applet files.
7 years ago
Zach Hilman
c7b6c9de9c
am: Move IStorageAccessor to header and update backing buffer
Writes to an AM::IStorage object through an IStorageAccessor will now be preserved once the accessor is destroyed.
7 years ago
Zach Hilman
76d515327b
am: Implement CreateTransferMemoryStorage
Creates an AM::IStorage object with the contents of the transfer memory located at the handle provided.
7 years ago
MysticExile
03f274d8c1
Stubbed am:EnableApplicationCrashReport
7 years ago
David Marcec
9359655712
Report resolution scaling support for vi and am
Specifying an internal resolution in yuzu now will report the scaled changes to vi and am.
7 years ago
David Marcec
41e99d8880
Ability to switch between docked and undocked mode in-game
Started implementation of the AM message queue mainly used in state getters. Added the ability to switch docked mode whilst in game without stopping emulation. Also removed some things which shouldn't be labelled as stubs as they're implemented correctly
7 years ago
Frederic L
7a5eda5914
global: Use std::optional instead of boost::optional ( #1578 )
* get rid of boost::optional
* Remove optional references
* Use std::reference_wrapper for optional references
* Fix clang format
* Fix clang format part 2
* Adressed feedback
* Fix clang format and MacOS build
7 years ago
Lioncash
4a31f99a02
profile_manager: Use std::optional instead of boost::optional
Now that we can actually use std::optional on macOS, we don't need to
continue using boost::optional here.
7 years ago
Zach Hilman
45f2a2fe29
acc: Fix account UUID duplication error
7 years ago
Zach Hilman
702622b8f1
profile_manager: Load user icons, names, and UUIDs from system save
7 years ago
Zach Hilman
d3fbf45705
am: Pass current user UUID to launch parameters
7 years ago
Lioncash
5ea4cfd499
am: Add the basic skeleton for the tcap service
Added based off information provided by Switchbrew.
7 years ago
Lioncash
edb1c36a87
am: Update service function tables
Updated based off information from Switchbrew
7 years ago
David Marcec
7a7dad05c0
Stubbed home blocking
Needed by arms due to new hid rework
7 years ago
David Marcec
6a0612f2bf
Removed the use of rp.MakeBuilder
Due to keeping the code style consistent in the yuzu codebase. `rb = rp.MakeBuilder(...)` was replaced with `rb{ctx, ...}`
7 years ago
David Marcec
1a2d33eeb4
Implemented GetDefaultDisplayResolution
7 years ago