Changes

471 bytes added ,  07:05, 30 November 2021
no edit summary
Line 44: Line 44:  
| 1 || [[#Finalize]]
 
| 1 || [[#Finalize]]
 
|-
 
|-
| 2 || ListDevices
+
| 2 || [[#ListDevices]]
 
|-
 
|-
 
| 3 || StartDetection
 
| 3 || StartDetection
Line 62: Line 62:  
| 10 || [[#GetState]]
 
| 10 || [[#GetState]]
 
|-
 
|-
| 11 || GetDeviceState
+
| 11 || [[#GetDeviceState]]
 
|-
 
|-
 
| 12 || GetNpadId
 
| 12 || GetNpadId
Line 102: Line 102:  
| 403 || [4.0.0+] [[#IsNfcEnabled]]
 
| 403 || [4.0.0+] [[#IsNfcEnabled]]
 
|-
 
|-
| 404 || [4.0.0+] ListDevices
+
| 404 || [4.0.0+] [[#ListDevices]]
 
|-
 
|-
| 405 || [4.0.0+] GetDeviceState
+
| 405 || [4.0.0+] [[#GetDeviceState]]
 
|-
 
|-
 
| 406 || [4.0.0+] GetNpadId
 
| 406 || [4.0.0+] GetNpadId
Line 184: Line 184:  
| 403 || [4.0.0+] [[#IsNfcEnabled]]
 
| 403 || [4.0.0+] [[#IsNfcEnabled]]
 
|-
 
|-
| 404 || [4.0.0+] ListDevices
+
| 404 || [4.0.0+] [[#ListDevices]]
 
|-
 
|-
| 405 || [4.0.0+] GetDeviceState
+
| 405 || [4.0.0+] [[#GetDeviceState]]
 
|-
 
|-
 
| 406 || [4.0.0+] GetNpadId
 
| 406 || [4.0.0+] GetNpadId
Line 272: Line 272:  
| 1 || [[#Finalize]]
 
| 1 || [[#Finalize]]
 
|-
 
|-
| 2 || ListDevices
+
| 2 || [[#ListDevices]]
 
|-
 
|-
 
| 3 || StartDetection
 
| 3 || StartDetection
Line 308: Line 308:  
| 19 || [[#GetState]]
 
| 19 || [[#GetState]]
 
|-
 
|-
| 20 || GetDeviceState
+
| 20 || [[#GetDeviceState]]
 
|-
 
|-
 
| 21 || GetNpadId
 
| 21 || GetNpadId
Line 330: Line 330:     
Internally this is mostly the same for each service, this differs depending on the service/cmd however.
 
Internally this is mostly the same for each service, this differs depending on the service/cmd however.
 +
 +
=== ListDevices ===
 +
Takes a type-0xA output buffer containing an array of [[#DeviceHandle]], returns an output s32 total_out.
 +
 +
This can return a maximum of 0xA entries.
 +
 +
=== GetDeviceState ===
 +
Takes an input [[#DeviceHandle]], returns an output u32.
 +
 +
The returned u32 is loaded from a lookup table. nfp services uses the same table, mifare uses a separate one, and the nfc services use another separate table.
    
= nfp:dbg =
 
= nfp:dbg =
Line 352: Line 362:  
| 1 || [[#Finalize|FinalizeDebug]]
 
| 1 || [[#Finalize|FinalizeDebug]]
 
|-
 
|-
| 2 || ListDevices
+
| 2 || [[#ListDevices]]
 
|-
 
|-
 
| 3 || StartDetection
 
| 3 || StartDetection
Line 388: Line 398:  
| 19 || [[#GetState]]
 
| 19 || [[#GetState]]
 
|-
 
|-
| 20 || GetDeviceState
+
| 20 || [[#GetDeviceState]]
 
|-
 
|-
 
| 21 || GetNpadId
 
| 21 || GetNpadId
Line 485: Line 495:  
| 1 || [[#Finalize|FinalizeSystem]]
 
| 1 || [[#Finalize|FinalizeSystem]]
 
|-
 
|-
| 2 || ListDevices
+
| 2 || [[#ListDevices]]
 
|-
 
|-
 
| 3 || StartDetection
 
| 3 || StartDetection
Line 513: Line 523:  
| 19 || [[#GetState]]
 
| 19 || [[#GetState]]
 
|-
 
|-
| 20 || GetDeviceState
+
| 20 || [[#GetDeviceState]]
 
|-
 
|-
 
| 21 || GetNpadId
 
| 21 || GetNpadId