Changes

Jump to navigation Jump to search
2,801 bytes added ,  07:35, 19 February 2017
m
no edit summary
Line 1: Line 1: −
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".
+
Nintendo provides application developers with an API, which communicate with certain services. Services, in this sense, are [[Title_list#00040130_-_System_Modules|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.
+
Handles for services are retrieved from the [[Services|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]].
 
For a description of how commands and arguments are passed to services, see [[IPC Command Structure]].
   −
List of services:
+
List of services (grouped by the process which provides them):
 
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
 
|-
 
|-
Line 16: Line 16:  
| [[Filesystem services‎]]
 
| [[Filesystem services‎]]
 
| fs:USER, fs:LDR, fs:REG
 
| fs:USER, fs:LDR, fs:REG
|
+
| USER: normal applications and system modules, LDR: loader, REG: register
 
|-
 
|-
 
| style="background: green" | Yes
 
| style="background: green" | Yes
 
| [[Process Services‎]]
 
| [[Process Services‎]]
|  
+
| ps:ps
 
|
 
|
 
|-
 
|-
Line 30: Line 30:  
| style="background: green" | Yes
 
| style="background: green" | Yes
 
| [[Application Manager Services]]
 
| [[Application Manager Services]]
| am:net, am:u, am:sys, am:pipe
+
| am:app, am:net, am:u, am:sys, am:pipe
|
+
| app: am for applications, net: network installation ([[NIM_Services|nim]]), u: local installation, sys: am for system titles, pipe: not an actual port (internally used to represent the [[Application_Manager_Services#File_service|FSFile-like interface]])
 
|-
 
|-
 
| style="background: green" | Yes
 
| style="background: green" | Yes
 
| [[Process Manager Services]]
 
| [[Process Manager Services]]
 
| pm:app, pm:dbg
 
| pm:app, pm:dbg
|
+
| app: launching titles, dbg: launching titles with debugging enabled
 
|-
 
|-
 
| style="background: green" | Yes
 
| style="background: green" | Yes
 
| [[NIM Services]]
 
| [[NIM Services]]
|  
+
| nim:aoc, nim:ndm, nim:s, nim:u
|
+
| aoc: DLC, ndm: for [[NDM Services|ndm]], s: for eShop, u: for updater
 
|-
 
|-
 
| style="background: green" | Yes
 
| style="background: green" | Yes
 
| [[Config Services]]
 
| [[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
 
|-
 
|-
 
| style="background: green" | Yes
 
| style="background: green" | Yes
 
| [[NS|NS and APT Services]]
 
| [[NS|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
 
|-
 
|-
 
| style="background: green" | Yes
 
| style="background: green" | Yes
Line 60: Line 60:  
| style="background: green" | Yes
 
| style="background: green" | Yes
 
| [[NDM Services]]
 
| [[NDM Services]]
|  
+
| ndm:u
 
|
 
|
 
|-
 
|-
Line 67: Line 67:  
| csnd:SND
 
| csnd:SND
 
|
 
|
 +
|-
 +
| style="background: green" | Yes
 +
| [[Camera Services]]
 +
| cam:u, y2r:u, cam:s, cam:c, cam:q (New3DS only)
 +
|
 
|-
 
|-
 
| style="background: green" | Yes
 
| style="background: green" | Yes
 
| [[Codec 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
|
+
| HID: human interface device, MIC: microphone, CSN: for [[CSND_Services|csnd]]?, DSP: for [[DSP_Services|dsp]]?, LGY: legacy (some kind of backwards compat?), CHK: ?
 +
|-
 +
| style="background: green" | Yes
 +
| [[DLP Services]]
 +
| dlp:CLNT, dlp:FKCL, dlp:SRVR
 +
| CLNT: client, FKCL: fake client, SRVR: server
 
|-
 
|-
 
| style="background: green" | Yes
 
| style="background: green" | Yes
 
| [[DSP Services]]
 
| [[DSP Services]]
| dsp:DSP
+
| dsp::DSP
 
|
 
|
 
|-
 
|-
Line 81: Line 91:  
| [[GSP Services]]
 
| [[GSP Services]]
 
| gsp::Lcd, gsp::Gpu
 
| gsp::Lcd, gsp::Gpu
|
+
| Lcd: LCD control, Gpu: GPU control
 +
|-
 +
| style="background: green" | Yes
 +
| [[BOSS Services]]
 +
| boss:U, boss:P, boss:M
 +
| U: user, P: privileged, M: for [[NDM Services|ndm]]
 +
|-
 +
| style="background: green" | Yes
 +
| [[CECD Services]]
 +
| cecd:u, cecd:s, cecd:ndm
 +
| u: user, s: system, ndm: for [[NDM Services|ndm]]
 
|-
 
|-
 
| style="background: green" | Yes
 
| style="background: green" | Yes
 
| [[IR Services]]
 
| [[IR Services]]
|  
+
| ir:u, ir:USER, ir:rst
 
|
 
|
 
|-
 
|-
 
| style="background: green" | Yes
 
| style="background: green" | Yes
 
| [[I2C Services]]
 
| [[I2C Services]]
| i2c::MCU, i2c::CAM, i2c::LCD, i2c::DEB, i2c::HID, i2c::IR, i2c::EEP
+
| i2c::MCU, i2c::CAM, i2c::LCD, i2c::DEB, i2c::HID, i2c::IR, i2c::EEP, i2c::NFC, i2c::QTM
|
+
|  
 
|-
 
|-
 
| style="background: green" | Yes
 
| style="background: green" | Yes
 
| [[GPIO Services]]
 
| [[GPIO Services]]
| gpio:CDC, gpio:MCU, gpio:HID, gpio:NWM, gpio:IR
+
| gpio:CDC, gpio:MCU, gpio:HID, gpio:NWM, gpio:IR, gpio:NFC, gpio:QTM
|
+
|  
 
|-
 
|-
 
| style="background: green" | Yes
 
| style="background: green" | Yes
 
| [[HID Services]]
 
| [[HID Services]]
|  
+
| hid:NFC, hid:QTM, hid:SPVR, hid:USER
|
+
| NFC: near-field communication (amiibo), QTM: head tracking device (related to [[QTM_Services|QTM Services]])?, SPVR: system privileged?
 
|-
 
|-
 
| style="background: green" | Yes
 
| style="background: green" | Yes
 
| [[PTM Services]]
 
| [[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
 
|-
 
|-
 
| style="background: green" | Yes
 
| style="background: green" | Yes
 
| [[NWM Services]]
 
| [[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: ?
 
|-
 
|-
 
| style="background: green" | Yes
 
| style="background: green" | Yes
 
| [[HTTP Services]]
 
| [[HTTP Services]]
|  
+
| http:C
|
+
| C: connection
 
|-
 
|-
 
| style="background: green" | Yes
 
| style="background: green" | Yes
 
| [[SSL Services]]
 
| [[SSL Services]]
|  
+
| ssl:C
|
+
| C: connection
 
|-
 
|-
 
| style="background: green" | Yes
 
| style="background: green" | Yes
 
| [[Socket Services]]
 
| [[Socket Services]]
|  
+
| soc:P, soc:U
|
+
| P: privileged, U: user
 
|-
 
|-
 
| style="background: green" | Yes
 
| style="background: green" | Yes
 
| [[AC Services]]
 
| [[AC Services]]
|  
+
| ac:i, ac:u
|
+
| i: internal, u: user
 
|-
 
|-
 
| style="background: green" | Yes
 
| style="background: green" | Yes
 
| [[Friend Services]]
 
| [[Friend Services]]
|  
+
| frd:a, frd:n, frd:u
|
+
| a: admin, n: for [[NDM Services|ndm]], u: user
 +
|-
 +
| style="background: green" | Yes
 +
| [[News Services]]
 +
| <nowiki>news:s, news:u</nowiki>
 +
| s: system, u:user
 
|-
 
|-
 
| style="background: green" | Yes
 
| style="background: green" | Yes
 
| [[PDN Services]]
 
| [[PDN Services]]
 +
| pdn:s, pdn:d, pdn:i, pdn:g, pdn:c
 
|  
 
|  
|
   
|-
 
|-
 
| style="background: green" | Yes
 
| style="background: green" | Yes
 
| [[SPI Services]]
 
| [[SPI Services]]
|  
+
| SPI::NOR, SPI::CD2, SPI::CS2, SPI::CS3, SPI::DEF
 
|
 
|
 
|-
 
|-
 
| style="background: green" | Yes
 
| style="background: green" | Yes
 
| [[Loader Services]]
 
| [[Loader Services]]
|  
+
| Loader
 
|
 
|
 
|-
 
|-
Line 163: Line 188:  
|
 
|
 
|-
 
|-
| style="background: red" | No
+
| style="background: green" | Yes
 +
| [[ACT Services]]
 +
| act:a, act:u
 +
| a: admin, u: user
 +
|-
 +
| style="background: green" | Yes
 +
| [[MP Services]]
 +
| mp:u
 +
|
 +
|-
 +
| style="background: green" | Yes
 
| [[NFC Services]]
 
| [[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
 
|-
 
|-
 
| style="background: red" | No
 
| style="background: red" | No

Navigation menu