Difference between revisions of "Services API"

From 3dbrew
Jump to navigation Jump to search
(Undo revision 18278 by Neobrain (talk))
Line 74: Line 74:
| style="background: green" | Yes
| style="background: green" | Yes
| [[CDC Services]]
| [[Codec Services]]
| cdc:HID, cdc:MIC, cdc:CSN, cdc:DSP, cdc:LGY, cdc:CHK
| cdc:HID, cdc:MIC, cdc:CSN, cdc:DSP, cdc:LGY, cdc:CHK

Revision as of 15:12, 25 September 2016

Nintendo provides application developers with an API, which communicate with certain services. Services, in this sense, are system processes running in the background which wait for incoming requests. When a process wants to communicate with a service, it first needs to get a handle to the named service, and then it can communicate with the service via interprocess communication. Each service has a name up to 8 characters, for example "nim:u".

Handles for services are retrieved from the service manager port, "srv:". Services are an abstraction of ports, they operate the same way except regular ports can have their handles retrieved directly from a SVC.

For a description of how commands and arguments are passed to services, see IPC Command Structure.

List of services (grouped by the process which provides them):

Old3ds Services Service names Notes
Yes Filesystem services‎ fs:USER, fs:LDR, fs:REG
Yes Process Services‎ ps:ps
Yes PXI Services‎ PxiFS0, PxiFS1, PxiFSB, PxiFSR, PxiPM, pxi:am9, pxi:dev, pxi:mc, pxi:ps9
Yes Application Manager Services am:app, am:net, am:u, am:sys, am:pipe
Yes Process Manager Services pm:app, pm:dbg
Yes NIM Services nim:aoc, nim:ndm, nim:s, nim:u
Yes Config Services cfg:u, cfg:s, cfg:i, cfg:nor
Yes NS and APT Services ns:s, ns:p, ns:c, APT:A, APT:S, APT:U
Yes RO Services ldr:ro
Yes NDM Services ndm:u
Yes CSND Services csnd:SND
Yes Camera Services cam:u, y2r:u, cam:s, cam:c, cam:q (New3DS only)
Yes Codec Services cdc:HID, cdc:MIC, cdc:CSN, cdc:DSP, cdc:LGY, cdc:CHK
Yes DLP Services dlp:CLNT, dlp:FKCL, dlp:SRVR
Yes DSP Services dsp::DSP
Yes GSP Services gsp::Lcd, gsp::Gpu
Yes BOSS Services boss:U
Yes CECD Services cecd:u, cecd:s, cecd:ndm
Yes IR Services
Yes I2C Services i2c::MCU, i2c::CAM, i2c::LCD, i2c::DEB, i2c::HID, i2c::IR, i2c::EEP, i2c::NFC, i2c::QTM
Yes GPIO Services gpio:CDC, gpio:MCU, gpio:HID, gpio:NWM, gpio:IR, gpio:NFC, gpio:QTM
Yes HID Services hid:NFC, hid:QTM, hid:SPVR, hid:USER
Yes PTM Services ptm:gets, ptm:play, ptm:s, ptm:sets, ptm:sysm, ptm:u
Yes NWM Services nwm::UDS
Yes HTTP Services http:C
Yes SSL Services ssl:C
Yes Socket Services soc:P, soc:U
Yes AC Services ac:i, ac:u
Yes Friend Services frd:a, frd:u, frd:n
Yes News Services
Yes PDN Services pdn:s, pdn:d, pdn:i, pdn:g, pdn:c
Yes SPI Services SPI::NOR, SPI::CD2, SPI::CS2, SPI::CS3, SPI::DEF
Yes Loader Services Loader
Yes MCU Services mcu::CAM, mcu::GPU, mcu::HID, mcu::RTC, mcu::SND, mcu::NWM, mcu::HWC, mcu::PLS, mcu::CDC
Yes MIC Services mic:u
Yes ACT Services act:a, act:u
Yes NFC Services
No MVD Services
No QTM Services

List of PXI services:

List of ports:

See Error codes.