Line 119: |
Line 119: |
| ! Cmd || Name | | ! Cmd || Name |
| |- | | |- |
− | | 0 || GetBluetoothBdAddress | + | | 0 || [[#GetBluetoothBdAddress]] |
| |- | | |- |
| | 1 || [[#GetConfigurationId1]] | | | 1 || [[#GetConfigurationId1]] |
| |- | | |- |
− | | 2 || GetAccelerometerOffset | + | | 2 || [[#GetAccelerometerOffset]] |
| |- | | |- |
− | | 3 || GetAccelerometerScale | + | | 3 || [[#GetAccelerometerScale]] |
| |- | | |- |
− | | 4 || GetGyroscopeOffset | + | | 4 || [[#GetGyroscopeOffset]] |
| |- | | |- |
− | | 5 || GetGyroscopeScale | + | | 5 || [[#GetGyroscopeScale]] |
| |- | | |- |
− | | 6 || GetWirelessLanMacAddress | + | | 6 || [[#GetWirelessLanMacAddress]] |
| |- | | |- |
− | | 7 || GetWirelessLanCountryCodeCount | + | | 7 || [[#GetWirelessLanCountryCodeCount]] |
| |- | | |- |
− | | 8 || GetWirelessLanCountryCodes | + | | 8 || [[#GetWirelessLanCountryCodes]] |
| |- | | |- |
− | | 9 || GetSerialNumber | + | | 9 || [[#GetSerialNumber]] |
| |- | | |- |
− | | 10 || SetInitialSystemAppletProgramId | + | | 10 || [[#SetInitialSystemAppletProgramId]] |
| |- | | |- |
− | | 11 || SetOverlayDispProgramId | + | | 11 || [[#SetOverlayDispProgramId]] |
| |- | | |- |
− | | 12 || GetBatteryLot | + | | 12 || [[#GetBatteryLot]] |
| |- | | |- |
| | 14 || [[#GetEciDeviceCertificate]] | | | 14 || [[#GetEciDeviceCertificate]] |
Line 161: |
Line 161: |
| | 21 || [[#GetEticketDeviceKey]] | | | 21 || [[#GetEticketDeviceKey]] |
| |- | | |- |
− | | 22 || GetSpeakerParameter | + | | 22 || [[#GetSpeakerParameter]] |
| |- | | |- |
− | | 23 || [4.0.0+] GetLcdVendorId | + | | 23 || [4.0.0+] [[#GetLcdVendorId]] |
| |- | | |- |
| | 24 || [5.0.0+] [[#GetEciDeviceCertificate2]] | | | 24 || [5.0.0+] [[#GetEciDeviceCertificate2]] |
Line 169: |
Line 169: |
| | 25 || [5.0.0+] [[#GetEciDeviceKey2]] | | | 25 || [5.0.0+] [[#GetEciDeviceKey2]] |
| |- | | |- |
− | | 26 || [5.0.0+] GetAmiiboKey | + | | 26 || [5.0.0+] [[#GetAmiiboKey]] |
| |- | | |- |
− | | 27 || [5.0.0+] GetAmiiboEcqvCertificate | + | | 27 || [5.0.0+] [[#GetAmiiboEcqvCertificate]] |
| |- | | |- |
− | | 28 || [5.0.0+] GetAmiiboEcdsaCertificate | + | | 28 || [5.0.0+] [[#GetAmiiboEcdsaCertificate]] |
| |- | | |- |
− | | 29 || [5.0.0+] GetAmiiboEcqvBlsKey | + | | 29 || [5.0.0+] [[#GetAmiiboEcqvBlsKey]] |
| |- | | |- |
− | | 30 || [5.0.0+] GetAmiiboEcqvBlsCertificate | + | | 30 || [5.0.0+] [[#GetAmiiboEcqvBlsCertificate]] |
| |- | | |- |
− | | 31 || [5.0.0+] GetAmiiboEcqvBlsRootCertificate | + | | 31 || [5.0.0+] [[#GetAmiiboEcqvBlsRootCertificate]] |
| |- | | |- |
− | | 32 || [5.0.0+] GetUsbTypeCPowerSourceCircuitVersion | + | | 32 || [5.0.0+] [[#GetUsbTypeCPowerSourceCircuitVersion]] |
| |- | | |- |
− | | 33 || [8.1.1+] GetAnalogStickModuleTypeL | + | | 33 || [8.1.1+] [[#GetAnalogStickModuleTypeL]] |
| |- | | |- |
− | | 34 || [8.1.1+] GetAnalogStickModelParameterL | + | | 34 || [8.1.1+] [[#GetAnalogStickModelParameterL]] |
| |- | | |- |
− | | 35 || [8.1.1+] GetAnalogStickFactoryCalibrationL | + | | 35 || [8.1.1+] [[#GetAnalogStickFactoryCalibrationL]] |
| |- | | |- |
− | | 36 || [8.1.1+] GetAnalogStickModuleTypeR | + | | 36 || [8.1.1+] [[#GetAnalogStickModuleTypeR]] |
| |- | | |- |
− | | 37 || [8.1.1+] GetAnalogStickModelParameterR | + | | 37 || [8.1.1+] [[#GetAnalogStickModelParameterR]] |
| |- | | |- |
− | | 38 || [8.1.1+] GetAnalogStickFactoryCalibrationR | + | | 38 || [8.1.1+] [[#GetAnalogStickFactoryCalibrationR]] |
| |- | | |- |
− | | 39 || [8.1.1+] GetConsoleSixAxisSensorModuleType | + | | 39 || [8.1.1+] [[#GetConsoleSixAxisSensorModuleType]] |
| |- | | |- |
− | | 40 || [8.1.1+] GetConsoleSixAxisSensorHorizontalOffset | + | | 40 || [8.1.1+] [[#GetConsoleSixAxisSensorHorizontalOffset]] |
| |- | | |- |
− | | 41 || [6.0.0+] GetBatteryVersion | + | | 41 || [6.0.0+] [[#GetBatteryVersion]] |
| |- | | |- |
| | 42 || [10.0.0+] [[#GetDeviceId]] | | | 42 || [10.0.0+] [[#GetDeviceId]] |
| |- | | |- |
− | | 43 || [10.0.0+] GetConsoleSixAxisSensorMountType | + | | 43 || [10.0.0+] [[#GetConsoleSixAxisSensorMountType]] |
| |} | | |} |
| | | |
− | Used for accessing data calibrated at the factory. | + | Used for accessing data [[Calibration|calibrated]] at the factory. |
| + | |
| + | == GetBluetoothBdAddress == |
| + | No input. Returns a [[#BdAddress]]. |
| | | |
| == GetConfigurationId1 == | | == GetConfigurationId1 == |
− | Returns the [[#ConfigurationId1]]. | + | No input. Returns a [[#ConfigurationId1]]. |
| + | |
| + | == GetAccelerometerOffset == |
| + | No input. Returns a [[#AccelerometerOffset]]. |
| + | |
| + | == GetAccelerometerScale == |
| + | No input. Returns a [[#AccelerometerScale]]. |
| + | |
| + | == GetGyroscopeOffset == |
| + | No input. Returns a [[#GyroscopeOffset]]. |
| + | |
| + | == GetGyroscopeScale == |
| + | No input. Returns a [[#GyroscopeScale]]. |
| + | |
| + | == GetWirelessLanMacAddress == |
| + | No input. Returns a [[#MacAddress]]. |
| + | |
| + | == GetWirelessLanCountryCodeCount == |
| + | No input. Returns a s32 '''OutCount'''. |
| + | |
| + | == GetWirelessLanCountryCodes == |
| + | Takes a type-0x16 output buffer containing an array of [[#CountryCode]]. Returns a s32 '''OutCount'''. |
| + | |
| + | == GetSerialNumber == |
| + | No input. Returns a [[#SerialNumber]]. |
| + | |
| + | == SetInitialSystemAppletProgramId == |
| + | Takes an input [[NCM_services#ProgramId|ProgramId]]. No output. |
| + | |
| + | == SetOverlayDispProgramId == |
| + | Takes an input [[NCM_services#ProgramId|ProgramId]]. No output. |
| + | |
| + | == GetBatteryLot == |
| + | No input. Returns a [[#BatteryLot]]. |
| | | |
| == GetEciDeviceCertificate == | | == GetEciDeviceCertificate == |
− | Takes a type-0x16 output buffer containing a [[#EccB233DeviceCertificate]]. | + | Takes a type-0x16 output buffer containing a [[#EccB233DeviceCertificate]]. No output. |
| | | |
| Returns the device certificate (ECC signed). This is identical to 3DS DeviceCert/CTCert besides the strings. NIM loads the DeviceId from this. | | Returns the device certificate (ECC signed). This is identical to 3DS DeviceCert/CTCert besides the strings. NIM loads the DeviceId from this. |
| | | |
| == GetEticketDeviceCertificate == | | == GetEticketDeviceCertificate == |
− | Takes a type-0x16 output buffer containing a [[#Rsa2048DeviceCertificate]]. | + | Takes a type-0x16 output buffer containing a [[#Rsa2048DeviceCertificate]]. No output. |
| | | |
| Returns the ETicket certificate (RSA signed). | | Returns the ETicket certificate (RSA signed). |
| | | |
| == GetSslKey == | | == GetSslKey == |
− | Takes a type-0x16 output buffer containing a [[#SslKey]]. | + | Takes a type-0x16 output buffer containing a [[#SslKey]]. No output. |
| | | |
| Returns the extended SSL key (0x130 bytes) from [[Calibration#CAL0|CAL0]]. If the extended key is not programmed then it falls back to the normal SSL key (0x110 bytes). | | Returns the extended SSL key (0x130 bytes) from [[Calibration#CAL0|CAL0]]. If the extended key is not programmed then it falls back to the normal SSL key (0x110 bytes). |
Line 229: |
Line 265: |
| | | |
| == GetSslCertificate == | | == GetSslCertificate == |
− | Takes a type-0x16 output buffer containing a [[#SslCertificate]]. | + | Takes a type-0x16 output buffer containing a [[#SslCertificate]]. No output. |
| | | |
| Used by SSL-sysmodule, see [[SSL_services|here]]. | | Used by SSL-sysmodule, see [[SSL_services|here]]. |
| | | |
| == GetGameCardKey == | | == GetGameCardKey == |
− | Takes a type-0x16 output buffer containing a [[#GameCardKey]]. | + | Takes a type-0x16 output buffer containing a [[#GameCardKey]]. No output. |
| | | |
| Returns the extended GameCard key (0x130 bytes) from [[Calibration#CAL0|CAL0]]. If the extended key is not programmed then it falls back to the normal GameCard key (0x110 bytes). | | Returns the extended GameCard key (0x130 bytes) from [[Calibration#CAL0|CAL0]]. If the extended key is not programmed then it falls back to the normal GameCard key (0x110 bytes). |
| | | |
| == GetGameCardCertificate == | | == GetGameCardCertificate == |
− | Takes a type-0x16 output buffer containing a [[#GameCardCertificate]]. | + | Takes a type-0x16 output buffer containing a [[#GameCardCertificate]]. No output. |
| | | |
| == GetEciDeviceKey == | | == GetEciDeviceKey == |
− | No input, returns an [[#EccB233DeviceKey]]. | + | No input. Returns an [[#EccB233DeviceKey]]. |
| | | |
| Returns the extended device ECC-B233 key (0x50 bytes) from [[Calibration#CAL0|CAL0]]. If the extended key is not programmed then it falls back to the normal device ECC-B233 key (0x30 bytes). | | Returns the extended device ECC-B233 key (0x50 bytes) from [[Calibration#CAL0|CAL0]]. If the extended key is not programmed then it falls back to the normal device ECC-B233 key (0x30 bytes). |
| | | |
| == GetEticketDeviceKey == | | == GetEticketDeviceKey == |
− | Takes a type-0x16 output buffer containing a [[#Rsa2048DeviceKey]]. | + | Takes a type-0x16 output buffer containing a [[#Rsa2048DeviceKey]]. No output. |
| | | |
| Returns the extended ETicket RSA-2048 key (0x240 bytes) from [[Calibration#CAL0|CAL0]]. If the extended key is not programmed then it falls back to the normal ETicket RSA-2048 key (0x220 bytes). | | Returns the extended ETicket RSA-2048 key (0x240 bytes) from [[Calibration#CAL0|CAL0]]. If the extended key is not programmed then it falls back to the normal ETicket RSA-2048 key (0x220 bytes). |
| + | |
| + | == GetSpeakerParameter == |
| + | No input. Returns a [[#SpeakerParameter]]. |
| + | |
| + | == GetLcdVendorId == |
| + | No input. Returns a [[#LcdVendorId]]. |
| | | |
| == GetEciDeviceCertificate2 == | | == GetEciDeviceCertificate2 == |
− | Same as [[#GetEciDeviceCertificate]], but [[#Rsa2048DeviceCertificate|returns]] a RSA-2048 variant of the device certificate. | + | Same as [[#GetEciDeviceCertificate]], but returns a [[#Rsa2048DeviceCertificate|RSA-2048]] variant of the device certificate. |
| | | |
| == GetEciDeviceKey2 == | | == GetEciDeviceKey2 == |
− | Same as [[#GetEciDeviceKey]], but [[#Rsa2048DeviceKey|returns]] a RSA-2048 variant of the device key. | + | Same as [[#GetEciDeviceKey]], but returns a [[#Rsa2048DeviceKey|RSA-2048]] variant of the device key. |
| + | |
| + | == GetAmiiboKey == |
| + | No input. Returns an [[#AmiiboKey]]. |
| + | |
| + | == GetAmiiboEcqvCertificate == |
| + | No input. Returns an [[#AmiiboEcqvCertificate]]. |
| + | |
| + | == GetAmiiboEcdsaCertificate == |
| + | No input. Returns an [[#AmiiboEcdsaCertificate]]. |
| + | |
| + | == GetAmiiboEcqvBlsKey == |
| + | No input. Returns an [[#AmiiboEcqvBlsKey]]. |
| + | |
| + | == GetAmiiboEcqvBlsCertificate == |
| + | No input. Returns an [[#AmiiboEcqvBlsCertificate]]. |
| + | |
| + | == GetAmiiboEcqvBlsRootCertificate == |
| + | No input. Returns an [[#AmiiboEcqvBlsRootCertificate]]. |
| + | |
| + | == GetUsbTypeCPowerSourceCircuitVersion == |
| + | No input. Returns an [[#UsbTypeCPowerSourceCircuitVersion]]. |
| + | |
| + | == GetAnalogStickModuleTypeL == |
| + | No input. Returns an [[#AnalogStickModuleType]]. |
| + | |
| + | == GetAnalogStickModelParameterL == |
| + | No input. Returns an [[#AnalogStickModelParameter]]. |
| + | |
| + | == GetAnalogStickFactoryCalibrationL == |
| + | No input. Returns an [[#AnalogStickFactoryCalibration]]. |
| + | |
| + | == GetAnalogStickModuleTypeR == |
| + | No input. Returns an [[#AnalogStickModuleType]]. |
| + | |
| + | == GetAnalogStickModelParameterR == |
| + | No input. Returns an [[#AnalogStickModelParameter]]. |
| + | |
| + | == GetAnalogStickFactoryCalibrationR == |
| + | No input. Returns an [[#AnalogStickFactoryCalibration]]. |
| + | |
| + | == GetConsoleSixAxisSensorModuleType == |
| + | No input. Returns a [[#ConsoleSixAxisSensorModuleType]]. |
| + | |
| + | == GetConsoleSixAxisSensorHorizontalOffset == |
| + | No input. Returns a [[#ConsoleSixAxisSensorHorizontalOffset]]. |
| + | |
| + | == GetBatteryVersion == |
| + | No input. Returns a [[#BatteryVersion]]. |
| | | |
| == GetDeviceId == | | == GetDeviceId == |
− | Returns an u64 '''DeviceId''' by reading and converting the hexadecimal string at offset 0xC6 inside [[#EccB233DeviceCertificate]] or [[#Rsa2048DeviceCertificate]]. | + | No input. Returns an u64 '''DeviceId''' by reading and converting the hexadecimal string at offset 0xC6 inside [[#EccB233DeviceCertificate]] or [[#Rsa2048DeviceCertificate]]. |
| + | |
| + | == GetConsoleSixAxisSensorMountType == |
| + | No input. Returns a [[#ConsoleSixAxisSensorMountType]]. |
| | | |
| = set:sys = | | = set:sys = |
Line 1,309: |
Line 1,402: |
| |- | | |- |
| | 0x4A || 0x10 || Reserved | | | 0x4A || 0x10 || Reserved |
| + | |} |
| + | |
| + | = LcdVendorId = |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Value |
| + | ! Description |
| + | |- |
| + | | 0 || |
| + | |} |
| + | |
| + | = UsbTypeCPowerSourceCircuitVersion = |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Value |
| + | ! Description |
| + | |- |
| + | | 0 || |
| + | |} |
| + | |
| + | = AnalogStickModuleType = |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Value |
| + | ! Description |
| + | |- |
| + | | 0 || |
| + | |} |
| + | |
| + | = ConsoleSixAxisSensorModuleType = |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Value |
| + | ! Description |
| + | |- |
| + | | 0 || |
| + | |} |
| + | |
| + | = BatteryVersion = |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Value |
| + | ! Description |
| + | |- |
| + | | 0 || |
| + | |} |
| + | |
| + | = ConsoleSixAxisSensorMountType = |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Value |
| + | ! Description |
| + | |- |
| + | | 0 || |
| |} | | |} |
| | | |