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 | USER: normal applications and system modules, LDR: loader, REG: register |
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 | app: am for applications, net: network installation (nim), u: local installation, sys: am for system titles, pipe: not an actual port (internally used to represent the FSFile-like interface) |
Yes | Process Manager Services | pm:app, pm:dbg | app: launching titles, dbg: launching titles with debugging enabled |
Yes | NIM Services | nim:aoc, nim:ndm, nim:s, nim:u | aoc: DLC, ndm: for ndm, s: for eShop, u: for updater |
Yes | Config Services | cfg:u, cfg:s, cfg:i, cfg:nor | u: for user, s: for system, i: for initialization/formatting, nor: accesses wifi SPI flash |
Yes | NS and APT Services | ns:s, ns:p, ns:c, APT:A, APT:S, APT:U | ns:s: for system, ns:p: power (shutdown/reboot), ns:c: ?, APT:A: application, APT:S: system, APT:U: user |
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 | HID: human interface device, MIC: microphone, CSN: for csnd?, DSP: for dsp?, LGY: legacy (some kind of backwards compat?), CHK: ? |
Yes | DLP Services | dlp:CLNT, dlp:FKCL, dlp:SRVR | CLNT: client, FKCL: fake client, SRVR: server |
Yes | DSP Services | dsp::DSP | |
Yes | GSP Services | gsp::Lcd, gsp::Gpu | Lcd: LCD control, Gpu: GPU control |
Yes | BOSS Services | boss:U, boss:P, boss:M | U: user, P: privileged, M: for ndm |
Yes | CECD Services | cecd:u, cecd:s, cecd:ndm | u: user, s: system, ndm: for ndm |
Yes | IR Services | ir:u, ir:USER, ir:rst | |
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 | NFC: near-field communication (amiibo), QTM: head tracking device (related to QTM Services)?, SPVR: system privileged? |
Yes | PTM Services | ptm:gets, ptm:play, ptm:s, ptm:sets, ptm:sysm, ptm:u | gets: get system time, play: play history, s: system, sets: set system time, sysm: system menu (homemenu/testmenu), u: user |
Yes | NWM Services | nwm::CEC, nwm::EXT, nwm::INF, nwm::SAP, nwm::SOC, nwm::TST, nwm::UDS | CEC: streetpass, EXT: ?, INF: infrastructure, SAP: ?, SOC: socket, UDS: local WLAN, TST: ? |
Yes | HTTP Services | http:C | C: connection |
Yes | SSL Services | ssl:C | C: connection |
Yes | Socket Services | soc:P, soc:U | P: privileged, U: user |
Yes | AC Services | ac:i, ac:u | i: internal, u: user |
Yes | Friend Services | frd:a, frd:n, frd:u | a: admin, n: for ndm, u: user |
Yes | News Services | news:s, news:u | s: system, u:user |
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 | a: admin, u: user |
Yes | NFC Services | nfc:dev, nfc:m, nfc:p, nfc:r, nfc:s, nfc:u | dev: developer, m: ? p: passthrough?, r: raw?, s: system, u: user |
No | MVD Services | ||
No | QTM Services |
List of PXI services:
- Filesystem services PXI
- Process Services PXI
- Application Manager Services PXI
- Process Manager Services PXI
- Development Services PXI
- Gamecard Services PXI
- Legacy FIRM PXI (TWL_FIRM/AGB_FIRM)
List of ports:
See Error codes.