Bus services: Difference between revisions
Line 443: | Line 443: | ||
| 0 || [[#HasPort]] | | 0 || [[#HasPort]] | ||
|- | |- | ||
| 1 || HasPortForDev | | 1 || [[#HasPortForDev]] | ||
|- | |- | ||
| 2 || [[#IsSupportedBaudRate]] | | 2 || [[#IsSupportedBaudRate]] | ||
|- | |- | ||
| 3 || IsSupportedBaudRateForDev | | 3 || [[#IsSupportedBaudRateForDev]] | ||
|- | |- | ||
| 4 || [[#IsSupportedFlowControlMode]] | | 4 || [[#IsSupportedFlowControlMode]] | ||
|- | |- | ||
| 5 || IsSupportedFlowControlModeForDev | | 5 || [[#IsSupportedFlowControlModeForDev]] | ||
|- | |- | ||
| 6 || [[#CreatePortSession]] | | 6 || [[#CreatePortSession]] | ||
|- | |- | ||
| 7 || IsSupportedPortEvent | | 7 || [[#IsSupportedPortEvent]] | ||
|- | |- | ||
| 8 || IsSupportedPortEventForDev | | 8 || [[#IsSupportedPortEventForDev]] | ||
|- | |- | ||
| 9 || [7.0.0+] | | 9 || [7.0.0+] [[#IsSupportedDevice]] | ||
|- | |- | ||
| 10 || [7.0.0+] | | 10 || [7.0.0+] [[#IsSupportedDeviceForDev]] | ||
|} | |} | ||
== HasPort == | == HasPort == | ||
Takes a u32 [[# | Takes an u32 [[#UartPort]]. Returns a boolean success value. | ||
== HasPortForDev == | |||
Takes an u32 [[#UartPortForDev]]. Returns a boolean success value. | |||
== IsSupportedBaudRate == | == IsSupportedBaudRate == | ||
Takes | Takes an u32 [[#UartPort]] and an u32 '''baudrate'''. Returns a boolean success value. | ||
Supported baud rates are 57600, 115200, 1000000 and 3000000. | |||
== IsSupportedBaudRateForDev == | |||
Takes an u32 [[#UartPortForDev]] and an u32 '''baudrate'''. Returns a boolean success value. | |||
Supported baud rates are 57600, 115200, 1000000 and 3000000. | |||
== IsSupportedFlowControlMode == | == IsSupportedFlowControlMode == | ||
Takes a u32 [[# | Takes an u32 [[#UartPort]] and an u32 '''mode'''. Returns a boolean success value. | ||
Supported modes are 0 (RTS) and 1 (CTS). | |||
== IsSupportedFlowControlModeForDev == | |||
Takes an u32 [[#UartPortForDev]] and an u32 '''mode'''. Returns a boolean success value. | |||
Supported modes are 0 (RTS) and 1 (CTS). | |||
== CreatePortSession == | == CreatePortSession == | ||
Takes a u32 [[#UartPort]] and | No input. Returns an [[#IPortSession]]. | ||
== IsSupportedPortEvent == | |||
Takes an u32 [[#UartPort]] and an u32 '''event'''. Returns a boolean success value. | |||
Supported events are 0 (data), 1 (break), 2 (unknown) and 3 (unknown). | |||
== IsSupportedPortEventForDev == | |||
Takes an u32 [[#UartPortForDev]] and an u32 '''event'''. Returns a boolean success value. | |||
Supported events are 0 (data), 1 (break), 2 (unknown) and 3 (unknown). | |||
== IsSupportedDevice == | |||
Takes an u32 [[#UartPort]] and an u32 '''device'''. Returns a boolean success value. | |||
Supported devices are 0 (Bluetooth) for UART-D, 0 (Joy-Con(R)) for UART-B, 0 (Joy-Con(L)) and 1 (MCU) for UART-C. | |||
== IsSupportedDeviceForDev == | |||
Takes an u32 [[#UartPortForDev]] and an u32 '''device'''. Returns a boolean success value. | |||
Supported devices are 0 (Bluetooth) for UART-D, 0 (Joy-Con(R)) for UART-B, 0 (Joy-Con(L)) and 1 (MCU) for UART-C. | |||
== UartPort == | == UartPort == | ||
{| class="wikitable sortable" border="1" | {| class="wikitable sortable" border="1" | ||
|- | |- | ||
! Name || DeviceCode || Port || Usage | ! Name || DeviceCode (internal) || DeviceCode (mapped) || Port || Usage | ||
|- | |||
| 0 || 0x03000001 || || UART-A || Invalid | |||
|- | |||
| 1 || 0x03000004 || 0x37000001 || UART-D || Bluetooth | |||
|- | |||
| 2 || 0x03000002 || 0x35000405 || UART-B || Joy-Con(R) | |||
|- | |||
| 3 || 0x03000003 || 0x3500040F || UART-C || Joy-Con(L) | |||
|- | |||
| 4 || 0x03000003 || 0x35000419 || UART-C || MCU | |||
|} | |||
== UartPortForDev == | |||
{| class="wikitable sortable" border="1" | |||
|- | |||
! Name || DeviceCode (internal) || DeviceCode (mapped) || Port || Usage | |||
|- | |- | ||
| | | 0 || 0x03000001 || || UART-A || Invalid | ||
|- | |- | ||
| | | 1 || 0x03000002 || 0x35000405 || UART-B || Joy-Con(R) | ||
|- | |- | ||
| | | 2 || 0x03000003 || 0x3500040F || UART-C || Joy-Con(L) | ||
|- | |- | ||
| | | 3 || 0x03000004 || 0x37000001 || UART-D || Bluetooth | ||
|} | |} | ||
Line 497: | Line 550: | ||
! Cmd || Name | ! Cmd || Name | ||
|- | |- | ||
| 0 || OpenPort | | 0 || [[#OpenPort]] | ||
|- | |- | ||
| 1 || OpenPortForDev | | 1 || [[#OpenPortForDev]] | ||
|- | |- | ||
| 2 || GetWritableLength | | 2 || GetWritableLength | ||
Line 514: | Line 567: | ||
|} | |} | ||
[7.0.0+] | === OpenPort === | ||
Takes an u32 [[#UartPort]], 3 u32s, 2 copy handles and 4 u8s. Returns a boolean success value. | |||
[7.0.0+] Now takes an additional u64. | |||
=== | === OpenPortForDev === | ||
Takes an u32 [[#UartPortForDev]], 3 u32s, 2 copy handles and 4 u8s. Returns a boolean success value. | |||
[7.0.0+] Now takes an additional u64. | |||
= pwm = | = pwm = |