Line 6: |
Line 6: |
| | | |
| =NFC services= | | =NFC services= |
| + | ==NFC user service "nfc:u"== |
| + | This is the NFC service used by regular applications. |
| + | |
| + | This was first seen in the Super Smash Bros eShop demo (only in the exheader, the demo doesn't actually use it), but at that time no system-module was available for NFC on CDN. The first regular application to use this service was Super Smash Bros, with the v1.0.5 game-update, which used the new 9.3.0-21 command set. |
| + | |
| + | ==NFC management service "nfc:m"== |
| + | This is used by the [[amiibo Settings]] applet. |
| + | |
| + | ==NFC development service "nfc:dev"== |
| + | This service seems to be intended for use only on dev-units(or at least some of the command(s)). |
| + | |
| + | ==NFC service "nfc:p"== |
| + | This service is used by the mint library-applet, starting with [[9.3.0-21]]. This service was added to the mint service-access-control list with [[9.0.0-20]]. |
| + | |
| + | ==NFC service "nfc:r"== |
| + | This service has no known use. |
| + | |
| + | ==NFC service "nfc:s"== |
| + | This service has no known use. |
| + | |
| + | ="nfc:u" and "nfc:m" command set= |
| + | There are two different revisions of the NFC module. First version was introduced on New3DS only with firmware 8.1.0-0_New3DS. Second version made its appearance with 9.3.0-X, on both Old3DS and New3DS. |
| + | |
| + | These two versions are not interchangeable and not compatible, since the newer version uses a different command set and has no implemented commands from the older version. This does not introduce compatibility problems since no retail software used the NFC module before the Super Smash Bros for 3DS, whose NFC update required 9.3.0-21. |
| + | |
| + | ==Post-9.3.0-21== |
| + | Commands for post-9.3.0-21 have been extracted by analyzing the amiibo Settings applet. Therefore this table may be missing commands. |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Command Header |
| + | ! Command |
| + | ! Description |
| + | |- |
| + | | 0x00010040 |
| + | | nfcInit(void) |
| + | | Initializes the NFC service. |
| + | |- |
| + | | 0x00020040 |
| + | | nfcStop(void) |
| + | | Deinitializes the NFC service. |
| + | |- |
| + | | 0x04060000 |
| + | | ???(void) |
| + | | ??? |
| + | |} |
| + | |
| + | ==Pre-9.3.0-21== |
| {| class="wikitable" border="1" | | {| class="wikitable" border="1" |
| |- | | |- |
Line 80: |
Line 127: |
| | | | | |
| |} | | |} |
− |
| |
− | The commands under this section are for "nfc:u" and "nfc:m". The command headers were changed with [[9.3.0-21|9.3.0-X]], which means pre-[[9.3.0-21|9.3.0-X]] NFC user-process software will not work with >=[[9.3.0-21|9.3.0-X]](official retail software for these didn't exist before [[9.3.0-21|9.3.0-X]]).
| |
− |
| |
− | =NFC user service "nfc:u"=
| |
− | This is the NFC service used by regular applications.
| |
− |
| |
− | This was first seen in the Super Smash Bros eShop demo(only in the exheader, the demo doesn't actually use it), at that time no system-module was available for NFC on CDN. The first regular application to use this service was Super Smash Bros, with the v1.0.5 game-update.
| |
− |
| |
− | =NFC service "nfc:r"=
| |
− |
| |
− | =NFC service "nfc:p"=
| |
− | This service is used by the mint library-applet, starting with [[9.3.0-21]]. This service was added to the mint service-access-control list with [[9.0.0-20]].
| |
− |
| |
− | =NFC service "nfc:s"=
| |
− |
| |
− | =NFC development service "nfc:dev"=
| |
− | This service seems to be intended for use only on dev-units(or at least some of the command(s)).
| |
− |
| |
− | =NFC management service "nfc:m"=
| |
− | {| class="wikitable" border="1"
| |
− | |-
| |
− | ! Command Header
| |
− | ! Description
| |
− | |-
| |
− | | 0x04010000
| |
− | | This writes two output words to cmdreply[2].
| |
− | |}
| |
− |
| |
− | This service has all of the commands listed under "NFC services", in addition to the command(s) listed under this section.
| |
− |
| |
− | This is used by the [[amiibo Settings]] applet.
| |
| | | |
| =NFC module savedata= | | =NFC module savedata= |
| * "/nfp_backup.dat" Going by the filename this seems to contain data backed up from amiibo. | | * "/nfp_backup.dat" Going by the filename this seems to contain data backed up from amiibo. |