caps: Implement SaveScreenShot calls and cleanup (#2140)
* caps: Implement SaveScreenShot calls and cleanup This PR implement: - caps:u IAlbumApplicationService (32) SetShimLibraryVersion - caps:c IAlbumControlService (33) SetShimLibraryVersion - caps:su IScreenShotApplicationService (32) SetShimLibraryVersion - caps:su IScreenShotApplicationService (203/205/210) SaveScreenShotEx0/SaveScreenShotEx1/SaveScreenShotEx2 ImageSharp is used to save the raw screenshot data as a JPG file following what the service does. All screenshots are save in: `%AppData%\Ryujinx\sdcard\Nintendo\Album` folder. (as example a screenshot file path will be `%AppData%\Ryujinx\sdcard\Nintendo\Album\2021\03\26\2021032601020300-0123456789ABCDEF0123456789ABCDEF.jpg` This is needed by Animal Crossing: New Horizon where screenshots looks like this: And this is needed in Monster Hunter Rise but screenshots are currently empty due to another issue. * remove useless comment * Addresses gdkchan feedback * Addresses gdkchan feedback 2 * remove useless comment 2 * Fix nits
This commit is contained in:
parent
4bd1ad16f9
commit
32be8caa9d
13 changed files with 327 additions and 10 deletions
17
Ryujinx.HLE/HOS/Services/Caps/ResultCode.cs
Normal file
17
Ryujinx.HLE/HOS/Services/Caps/ResultCode.cs
Normal file
|
@ -0,0 +1,17 @@
|
|||
namespace Ryujinx.HLE.HOS.Services.Caps
|
||||
{
|
||||
enum ResultCode
|
||||
{
|
||||
ModuleId = 206,
|
||||
ErrorCodeShift = 9,
|
||||
|
||||
Success = 0,
|
||||
|
||||
InvalidArgument = (2 << ErrorCodeShift) | ModuleId,
|
||||
ShimLibraryVersionAlreadySet = (7 << ErrorCodeShift) | ModuleId,
|
||||
OutOfRange = (8 << ErrorCodeShift) | ModuleId,
|
||||
NullOutputBuffer = (141 << ErrorCodeShift) | ModuleId,
|
||||
NullInputBuffer = (142 << ErrorCodeShift) | ModuleId,
|
||||
BlacklistedPid = (822 << ErrorCodeShift) | ModuleId
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue