Changes

Jump to navigation Jump to search
593 bytes added ,  15:56, 14 April 2020
Line 14: Line 14:  
| 3 || [5.0.0+] AttachSharedBuffer || Takes a total of 8-bytes of input, no output.
 
| 3 || [5.0.0+] AttachSharedBuffer || Takes a total of 8-bytes of input, no output.
 
|-
 
|-
| 5 || [5.0.0-8.1.0] CaptureRawImageToAttachedSharedBuffer || Takes a total of 0x10-bytes of input, no output.
+
| 5 || [5.0.0+] CaptureRawImageToAttachedSharedBuffer || Takes a total of 0x10-bytes of input, no output.
 
|-
 
|-
 
| 210 || [6.0.0+] ? || Takes a total of 0x50-bytes of input, a type-0x15 input buffer, and a type-0x45 input buffer, returns a total of 0x20-bytes of output.
 
| 210 || [6.0.0+] ? || Takes a total of 0x50-bytes of input, a type-0x15 input buffer, and a type-0x45 input buffer, returns a total of 0x20-bytes of output.
Line 26: Line 26:  
| 1004 || [5.0.0+] RequestTakingScreenShotEx1 || Takes a total of 0x60-bytes of input, no output. [6.0.0+]: In addition, this also takes a type-0x15 input buffer.
 
| 1004 || [5.0.0+] RequestTakingScreenShotEx1 || Takes a total of 0x60-bytes of input, no output. [6.0.0+]: In addition, this also takes a type-0x15 input buffer.
 
|-
 
|-
| 1009 || [5.0.0-8.1.0] CancelTakingScreenShot || Takes a total of 0x10-bytes of input, no output.
+
| 1009 || [5.0.0+] CancelTakingScreenShot || Takes a total of 0x10-bytes of input, no output.
 
|-
 
|-
| 1010 || [5.0.0-8.1.0] SetTakingScreenShotCancelState || Takes a total of 0x10-bytes of input, no output.
+
| 1010 || [5.0.0+] SetTakingScreenShotCancelState || Takes a total of 0x10-bytes of input, no output.
 
|-
 
|-
| 1011 || [2.0.0-8.1.0] NotifyTakingScreenShotRefused || Takes a total of 8-bytes of input, no output.
+
| 1011 || NotifyTakingScreenShotRefused || Takes a total of 8-bytes of input, no output.
 
|-
 
|-
| 1012 || [2.0.0-8.1.0] NotifyTakingScreenShotFailed || Takes a total of 8-bytes of input, no output.
+
| 1012 || NotifyTakingScreenShotFailed || Takes a total of 8-bytes of input, no output.
 
|-
 
|-
 
| 1101 || [4.0.0+] [[#SetupOverlayMovieThumbnail]] ||  
 
| 1101 || [4.0.0+] [[#SetupOverlayMovieThumbnail]] ||  
Line 52: Line 52:  
* cmd1106/1107: User-processes use hard-coded sizes 0x400 and 0x404 for the first/second type-0x15 buffers.
 
* cmd1106/1107: User-processes use hard-coded sizes 0x400 and 0x404 for the first/second type-0x15 buffers.
 
* cmd1201/1202/1203: These are only usable when the previously loaded value from [[Settings_services|set:sys GetDebugModeFlag]] is set.
 
* cmd1201/1202/1203: These are only usable when the previously loaded value from [[Settings_services|set:sys GetDebugModeFlag]] is set.
 +
* cmd1204: Also required the mentioned debug flag but does no longer as of [10.0.0].
    
The only caps:sc commands used by [[GRC_services|GRC]] are: 1101, 1106, and 1107.
 
The only caps:sc commands used by [[GRC_services|GRC]] are: 1101, 1106, and 1107.
Line 113: Line 114:  
| 204 || [3.0.0+] SaveEditedScreenShotEx0
 
| 204 || [3.0.0+] SaveEditedScreenShotEx0
 
|-
 
|-
| 206 || [?-8.1.0]
+
| 206 || [?+]
 
|-
 
|-
| 208 || [5.0.0-8.1.0] SaveScreenShotOfMovieEx1
+
| 208 || [5.0.0+] SaveScreenShotOfMovieEx1
 
|}
 
|}
   Line 211: Line 212:  
| 0 || [[#vi:u|GetDisplayService]]
 
| 0 || [[#vi:u|GetDisplayService]]
 
|-
 
|-
| 1 || [9.0.0+]
+
| 1 || [9.0.0+] [[#vi:u|GetDisplayServiceWithProxyNameExchange]]
 
|}
 
|}
    
== GetDisplayService ==
 
== GetDisplayService ==
 
Returns an [[#IApplicationDisplayService]]. Takes an input u32, user-processes use 0 or 1, with 0 for regular-applications normally. 0 = user-service(vi:u), 1 = system/manager service (vi:s/vi:m). Returns an error when using value 1 with vi:u(same error listed below for IApplicationDisplayService for unavailable commands), however passing 1 to vi:s/vi:m results in the IApplicationDisplayService having greater privileges.
 
Returns an [[#IApplicationDisplayService]]. Takes an input u32, user-processes use 0 or 1, with 0 for regular-applications normally. 0 = user-service(vi:u), 1 = system/manager service (vi:s/vi:m). Returns an error when using value 1 with vi:u(same error listed below for IApplicationDisplayService for unavailable commands), however passing 1 to vi:s/vi:m results in the IApplicationDisplayService having greater privileges.
 +
 +
== GetDisplayServiceWithProxyNameExchange ==
 +
Takes an input u32, and returns an [[#IApplicationDisplayService]].
    
= vi:s =
 
= vi:s =
Line 349: Line 353:     
== GetDisplayResolution ==
 
== GetDisplayResolution ==
Takes an input u64 DisplayId and returns two output u64s: width and height.
+
Takes an input u64 DisplayId and returns two output s64s: width and height. Official sw copies these to s32 output fields.
    
== OpenLayer ==
 
== OpenLayer ==
Line 373: Line 377:     
== GetIndirectLayerImageMap ==
 
== GetIndirectLayerImageMap ==
Takes a PID-descriptor, an type-0x46 buffer, and four u64s: width(s32), height(s32), <output from [[AM_services|AM]] GetIndirectLayerConsumerHandle>, and [[AM_services|AppletResourceUserId]]. Returns two output u64s.
+
Takes a PID-descriptor, an type-0x46 buffer, two s64s width/height, then two u64s: <output from [[AM_services|AM]] GetIndirectLayerConsumerHandle>, and [[AM_services|AppletResourceUserId]]. Returns two output s64s, which are copied to output u64s by official sw.
 +
 
 +
Official sw sets the width/height using input s32s.
    
Calls the same func as [[#GetIndirectLayerImageCropMap]] internally, with the input floats set to 0.0f, then 1.0f for the rest.
 
Calls the same func as [[#GetIndirectLayerImageCropMap]] internally, with the input floats set to 0.0f, then 1.0f for the rest.
Line 381: Line 387:     
== GetIndirectLayerImageRequiredMemoryInfo ==
 
== GetIndirectLayerImageRequiredMemoryInfo ==
Takes two input u64s: width and height. Returns two output u64s. First u64 is the buffer size to use with the ImageMap cmds, second u64 is the buffer address alignment for those cmds.
+
Takes two input s64s: width and height. Returns two output s64s, which are copied to output u64s by official sw. First field is the buffer size to use with the ImageMap cmds, second field is the buffer address alignment for those cmds.
 +
 
 +
Official sw sets the width/height using input s32s.
    
== GetDisplayVsyncEvent ==
 
== GetDisplayVsyncEvent ==
Line 461: Line 469:  
|-
 
|-
 
| 3217 || SetDisplayCmuLuma
 
| 3217 || SetDisplayCmuLuma
 +
|-
 +
| 6013 || [10.0.0+] GetLayerPresentationSubmissionTimestamps
 
|-
 
|-
 
| 8225 || [4.0.0+] GetSharedBufferMemoryHandleId
 
| 8225 || [4.0.0+] GetSharedBufferMemoryHandleId
Line 630: Line 640:  
| 8298 || [5.0.0+] ExpandStartupLogoOnSharedFrameBuffer
 
| 8298 || [5.0.0+] ExpandStartupLogoOnSharedFrameBuffer
 
|}
 
|}
 +
 +
[10.0.0+] AttachLayerPresentationTracer now takes an additional 8-bytes of input.
    
[5.0.0+] SetDetachedSharedFrameBufferImage now takes an additional 0x10-bytes of input. CopyDetachedSharedFrameBufferImage now takes an additional 0x18-bytes of input. SetDetachedSharedFrameBufferSubImage now takes an additional 0x10-bytes of input, and the buffer type was changed from 0x5 to 0x45.
 
[5.0.0+] SetDetachedSharedFrameBufferImage now takes an additional 0x10-bytes of input. CopyDetachedSharedFrameBufferImage now takes an additional 0x18-bytes of input. SetDetachedSharedFrameBufferSubImage now takes an additional 0x10-bytes of input, and the buffer type was changed from 0x5 to 0x45.

Navigation menu