Capmtp services
Jump to navigation
Jump to search
This implements the MTP PTP protocol.
capmtp
This is "nn::capmtp::ICapmtpRootSession".
Cmd | Name | Notes |
---|---|---|
0 | No input. Returns a session of #ICapmtpInterface |
ICapmtpInterface
This is "nn::capmtp::ICapmtpInterface".
Cmd | Name | Notes |
---|---|---|
0 | Takes a u32 max folder count, a u32 max image count, a u32 max video count, a transfer memory handle + u32 size and a type-0x5 buffer translated "Other" utf-16 string. | |
1 | No input or output. Unmaps transfer memory from Cmd0, stops "nn.capmtp.CapmtpCommandLoop". | |
2 | No input or output. Starts MTP command handler thread "nn.capmtp.CapmtpCommandLoop". | |
3 | No input or output. Stops "nn.capmtp.CapmtpCommandLoop". | |
4 | No input. Returns true if "nn.capmtp.CapmtpCommandLoop" is running. | |
5 | No input. Returns readable event handle. Signaled when the USB connection status changes. | |
6 | No input. Returns true if a USB connection is established. | |
7 | No input. Returns readable event handle. Signaled when an error occurred during album scan. | |
8 | No input or output. Returns the album scan Result. |
Notes
Only PTP operations 0x1001-0x100A are available. OpenSession/CloseSession only allow a maximum of 1 session to be opened.
While this has access to fsp-srv it remains unused. Images and Videos are loaded with caps:a.
Program names are loaded with ns using the transfer memory from Cmd0.