Display services: Difference between revisions

No edit summary
No edit summary
Line 10: Line 10:
! Cmd || Name
! Cmd || Name
|-
|-
| 1 || [[#CaptureRawImage]]
| 1 || [[#CaptureRawImageRgba32IntoArray]]
|-
|-
| 2 || [[#CaptureRawImageWithTimeout]]
| 2 || [[#CaptureRawImageRgba32IntoArrayWithTimeout]]
|-
|-
| 3 || [5.0.0+] [[#AttachSharedBuffer]]
| 3 || [5.0.0+] [[#AttachSharedBufferToCaptureModule]]
|-
|-
| 5 || [5.0.0+] [[#CaptureRawImageToAttachedSharedBuffer]]
| 5 || [5.0.0+] [[#CaptureRawImageToAttachedSharedBuffer]]
|-
|-
| 210 || [6.0.0+]
| 210 || [6.0.0+] [[#SaveScreenShotEx2ViaAm]]
|-
|-
| 1001 || [2.0.0-4.1.0] [[#RequestTakingScreenShot]]
| 1001 || [2.0.0-4.1.0] [[#RequestTakingScreenShot]]
Line 40: Line 40:
| 1101 || [4.0.0+] [[#SetupOverlayMovieThumbnail]]
| 1101 || [4.0.0+] [[#SetupOverlayMovieThumbnail]]
|-
|-
| 1106 || [4.0.0+]
| 1106 || [4.0.0+] [[#CreateProtoMovieMetaDataNv12Ex2]]
|-
|-
| 1107 || [4.0.0+]
| 1107 || [4.0.0+] [[#CreateProtoMovieMetaDataRgbaEx2]]
|-
|-
| 1108 || [18.0.0+]
| 1108 || [18.0.0+]
Line 64: Line 64:
| 1203 || [3.0.0+] [[#ReadRawScreenShotReadStream]]
| 1203 || [3.0.0+] [[#ReadRawScreenShotReadStream]]
|-
|-
| 1204 || [9.0.0+]
| 1204 || [9.0.0+] [[#CaptureCrashScreenShot]]
|}
|}


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.


== CaptureRawImage ==
== CaptureRawImageRgba32IntoArray ==
Takes a type-0x46 output buffer, an input u32 '''layer_stack''', two input u64s '''width'''/'''height''', an input s64 '''buffer_count''', and an input s64 '''buffer_index'''.
Takes a type-0x46 output buffer, an input u32 '''layer_stack''', two input u64s '''width'''/'''height''', an input s64 '''buffer_count''', and an input s64 '''buffer_index'''.


Line 82: Line 82:
Stubbed with [5.0.0+], where it now returns error 0x7FECE.
Stubbed with [5.0.0+], where it now returns error 0x7FECE.


== CaptureRawImageWithTimeout ==
== CaptureRawImageRgba32IntoArrayWithTimeout ==
Calls the same internal func as [[#CaptureRawImage]], where the last param is an additional cmd input u64 instead of hard-coded value 0x5f5e100.
Calls the same internal func as [[#CaptureRawImageRgba32IntoArray]], where the last param is an additional cmd input u64 instead of hard-coded value 0x5f5e100.


Stubbed with [5.0.0+], where it now returns error 0x7FECE.
Stubbed with [5.0.0+], where it now returns error 0x7FECE.


== AttachSharedBuffer ==
== AttachSharedBufferToCaptureModule ==
Takes a total of 8-bytes of input. No output.
Takes a total of 8-bytes of input. No output.


Line 93: Line 93:
Takes a total of 0x10-bytes of input. No output.
Takes a total of 0x10-bytes of input. No output.


== Cmd210 ==
== SaveScreenShotEx2ViaAm ==
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.
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 141: Line 141:
The requirements for the second buffer address/size are the same as the first buffer, except the minimum size is ('''width'''*'''height''')/2.
The requirements for the second buffer address/size are the same as the first buffer, except the minimum size is ('''width'''*'''height''')/2.


== Cmd1106 ==
== CreateProtoMovieMetaDataNv12Ex2 ==
Takes a 0x40-byte input struct, two input u64s '''width'''/'''height''', a 0x18-byte input struct, two type-0x15 input buffers, a type-0x6 output buffer, and two type-0x46 output buffers, returns 3 output u64s.
Takes a 0x40-byte input struct, two input u64s '''width'''/'''height''', a 0x18-byte input struct, two type-0x15 input buffers, a type-0x6 output buffer, and two type-0x46 output buffers, returns 3 output u64s.


Line 150: Line 150:
[5.0.0+] Now takes a total of 0x68-bytes of input instead of 0x30.
[5.0.0+] Now takes a total of 0x68-bytes of input instead of 0x30.


== Cmd1107 ==
== CreateProtoMovieMetaDataRgbaEx2 ==
Takes a 0x40-byte input struct, two input u64s '''width'''/'''height''', a 0x18-byte input struct, two type-0x15 input buffers, a type-0x6 output buffer, and a type-0x45 input buffer, returns 3 output u64s.
Takes a 0x40-byte input struct, two input u64s '''width'''/'''height''', a 0x18-byte input struct, two type-0x15 input buffers, a type-0x6 output buffer, and a type-0x45 input buffer, returns 3 output u64s.


Line 174: Line 174:
Only usable when the previously loaded value from [[Settings_services|set:sys GetDebugModeFlag]] is set.
Only usable when the previously loaded value from [[Settings_services|set:sys GetDebugModeFlag]] is set.


== Cmd1204 ==
== CaptureCrashScreenShot ==
Takes a total of 0x10-bytes of input and a type-0x46 output buffer. Returns a total of 8-bytes of output.
Takes a total of 0x10-bytes of input and a type-0x46 output buffer. Returns a total of 8-bytes of output.


Line 196: Line 196:
| 204 || [3.0.0+] SaveEditedScreenShotEx0
| 204 || [3.0.0+] SaveEditedScreenShotEx0
|-
|-
| 206 || [4.0.0+]
| 206 || [4.0.0+] SaveEditedScreenShotEx1
|-
|-
| 208 || [5.0.0+] SaveScreenShotOfMovieEx1
| 208 || [5.0.0+] SaveScreenShotOfMovieEx1
|-
|-
| 1000 || [13.0.0+]  
| 1000 || [13.0.0+] RequestTakingScreenShotForApplet
|}
|}