Lioncash
a02f8af45a
service/am: Sort ISelfController's member functions according to table order
Makes the declaration order of the handling functions consistent with
the handler table itself.
7 years ago
Lioncash
5af93ea994
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
a7cb88f3b2
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
a3db2ec8af
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
c70aa00b23
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
ac9fcf2ca2
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
a8c8b14c6c
Proper no message handling for AM::PopMessage
When we have no messages, we should be returning an error code.
7 years ago
Zach Hilman
e115b53d10
applets: Implement LibAppletOff (Web) applet
7 years ago
Zach Hilman
c3ce81337d
am: Add size parameter to am:IStorage logging
7 years ago
Zach Hilman
9121887ae4
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
3204df8a21
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
7a809f935c
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
adb047e6fa
am: Use ProfileSelect applet
7 years ago
Zach Hilman
c011ba51b7
hle_ipc: Refactor SleepClientThread to avoid ReadableEvent
7 years ago
Zach Hilman
b0d0735e9b
kernel/event: Reference ReadableEvent from WritableEvent
7 years ago
Zach Hilman
fe0071f8fa
core: Port all current usages of Event to Readable/WritableEvent
7 years ago
David Marcec
67518a57b9
Reworked svcs slightly, improved error messages in AM and fsp_srv
7 years ago
David Marcec
7caebd7e0e
Improved error messages in AM, HwOpus and NvMap
7 years ago
David Marcec
5ae0d6cba2
Changed logging to be "Log before execution", Added more error logging, all services should now log on some level
7 years ago
Zach Hilman
1bf2d163e3
am: Return StubApplet instead of nullptr when AppletId not found
7 years ago
Lioncash
4bf9e0d35d
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
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.
7 years ago
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.
7 years ago
Zach Hilman
6874ed4531
applet: Use std::queue instead of std::vector for storage stack
7 years ago
Zach Hilman
948e1b2f42
applet: Add operation completed callback
7 years ago
Zach Hilman
b9caffe103
software_keyboard: Push buffer size to offset 0x4 in output data
7 years ago
Zach Hilman
f0d2246b6a
software_keyboard: Make GetText asynchronous
a
7 years ago
Zach Hilman
04bc2fafbc
am: Allow applets to push multiple and different channels of data
7 years ago
Zach Hilman
57a051a767
am: Implement ILibraryAppletAccessor IsCompleted and GetResult
7 years ago
Zach Hilman
27ebe123e9
am: Implement text check software keyboard mode
Allows the game to verify and send a message to the frontend.
7 years ago
Zach Hilman
efced53d38
am: Deglobalize software keyboard applet
7 years ago
Zach Hilman
3a5f620041
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
b1fd8313f8
am: Unstub ILibraryAppletAccessor::Start
Now starts the applet provided in constructor.
7 years ago
Zach Hilman
df4573e786
am: Implement PopInteractiveOutData and PushInteractiveInData
Used by software keyboard applet for data transfer.
7 years ago
Zach Hilman
c5e0ab1a79
am: Convert storage stack to vector
std::stack was no longer suitable for non-trivial operations
7 years ago
Zach Hilman
5fe3583762
am: Move AM::IStorage to header
Needs to be accessible by applet files.
7 years ago
Zach Hilman
1ebdafe073
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
7ee51622c4
am: Implement CreateTransferMemoryStorage
Creates an AM::IStorage object with the contents of the transfer memory located at the handle provided.
7 years ago
MysticExile
da0f4cb242
Stubbed am:EnableApplicationCrashReport
7 years ago
David Marcec
2b69fabf51
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
2848c8b088
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
c76f4b6aec
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
94daae2847
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
da04134ce6
acc: Fix account UUID duplication error
7 years ago
Zach Hilman
8bdf2fe7b7
profile_manager: Load user icons, names, and UUIDs from system save
7 years ago
Zach Hilman
89d1743f1f
am: Pass current user UUID to launch parameters
7 years ago
Lioncash
aa09b18f97
am: Add the basic skeleton for the tcap service
Added based off information provided by Switchbrew.
7 years ago
Lioncash
85df255cd1
am: Update service function tables
Updated based off information from Switchbrew
7 years ago
David Marcec
69140470d7
Stubbed home blocking
Needed by arms due to new hid rework
7 years ago
David Marcec
cfbfad9ffe
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