Line 2,724: |
Line 2,724: |
| ! Offset || Size || Description | | ! Offset || Size || Description |
| |- | | |- |
− | | 0x0 || 0x1 || Bool flag | + | | 0x0 || 0x1 || IsConnected |
| |- | | |- |
− | | 0x1 || 0x3 || Padding | + | | 0x1 || 0x3 || Reserved |
| |- | | |- |
− | | 0x4 || 0x4 || Result | + | | 0x4 || 0x4 || IsConnectedResult |
| |- | | |- |
− | | 0x8 || 0x1 || DeviceEnabled. Bool flag indicating whether a device is [[#EnableExternalDevice|enabled]]. | + | | 0x8 || 0x1 || IsEnabled. Bool flag indicating whether a device is [[#EnableExternalDevice|enabled]]. |
| |- | | |- |
− | | 0x9 || 0x1 || IsValid. Bool flag indicating whether this entry is valid. | + | | 0x9 || 0x1 || IsInFocus. Bool flag indicating whether this entry is valid. |
| |- | | |- |
− | | 0xA || 0x1 || PollingEnabled. Bool flag indicating whether polling is [[#EnableJoyPollingReceiveMode|enabled]]. | + | | 0xA || 0x1 || IsPollingMode. Bool flag indicating whether polling is [[#EnableJoyPollingReceiveMode|enabled]]. |
| |- | | |- |
− | | 0xB || 0x1 || Unknown / padding? | + | | 0xB || 0x1 || Reserved |
| |- | | |- |
− | | 0xC || 0x4 || [[#JoyPollingMode]] | + | | 0xC || 0x4 || [[#JoyPollingMode|PollingMode]] |
| |} | | |} |
| | | |
Line 5,481: |
Line 5,481: |
| | | |
| = TouchScreenConfigurationForNx = | | = TouchScreenConfigurationForNx = |
− | This is "nn::hid::TouchScreenConfigurationForNx". This is a 0x10-byte struct with 1-byte alignment. | + | This is "nn::hid::TouchScreenConfigurationForNx". |
| + | |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Offset |
| + | ! Size |
| + | ! Description |
| + | |- |
| + | | 0x0 |
| + | | 0x1 |
| + | | [[#TouchScreenModeForNx|Mode]] |
| + | |- |
| + | | 0x8 |
| + | | 0xF |
| + | | Reserved |
| + | |} |
| + | |
| + | = TouchScreenModeForNx = |
| + | This is "nn::hid::TouchScreenModeForNx". |
| + | |
| + | {| class="wikitable" border="1" |
| + | ! Value |
| + | ! Description |
| + | |- |
| + | | 0 || UseSystemSetting |
| + | |- |
| + | | 1 || Finger |
| + | |- |
| + | | 2 || Heat2 |
| + | |} |
| | | |
| = InputSourceState = | | = InputSourceState = |
Line 5,878: |
Line 5,907: |
| = KeyboardKeySet = | | = KeyboardKeySet = |
| This is "nn::hid::KeyboardKeySet". This is a BitFlagSet object for [[#KeyboardKey]]. | | This is "nn::hid::KeyboardKeySet". This is a BitFlagSet object for [[#KeyboardKey]]. |
| + | |
| + | = KeyboardLockKeyEventSet = |
| + | This is "nn::hid::system::KeyboardLockKeyEventSet". This is a BitFlagSet object for [[#KeyboardLockKeyEvent]]. |
| | | |
| = KeyboardLockKeyEvent = | | = KeyboardLockKeyEvent = |
− | This is "nn::hid::KeyboardLockKeyEvent" / "nn::hid::system::KeyboardLockKeyEvent". | + | This is "nn::hid::system::KeyboardLockKeyEvent". This is a 32-bit flag. |
| + | |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Bit |
| + | ! Description |
| + | |- |
| + | | 0 |
| + | | NumLockOn |
| + | |- |
| + | | 1 |
| + | | NumLockOff |
| + | |- |
| + | | 2 |
| + | | NumLockToggle |
| + | |- |
| + | | 3 |
| + | | CapsLockOn |
| + | |- |
| + | | 4 |
| + | | CapsLockOff |
| + | |- |
| + | | 5 |
| + | | CapsLockToggle |
| + | |- |
| + | | 6 |
| + | | ScrollLockOn |
| + | |- |
| + | | 7 |
| + | | ScrollLockOff |
| + | |- |
| + | | 8 |
| + | | ScrollLockToggle |
| + | |} |
| | | |
| = BasicXpadButtonSet = | | = BasicXpadButtonSet = |
Line 6,284: |
Line 6,349: |
| ! Description | | ! Description |
| |- | | |- |
− | | 0 || | + | | 0 || 5ms |
| |- | | |- |
− | | 1 || | + | | 1 || 10ms |
| |- | | |- |
− | | 2 || | + | | 2 || 15ms |
| |- | | |- |
− | | 3 || | + | | 3 || Default |
| |} | | |} |
| | | |
Line 6,757: |
Line 6,822: |
| | 0x0 || 0x1 || NpadStyleIndex | | | 0x0 || 0x1 || NpadStyleIndex |
| |- | | |- |
− | | 0x1 || 0x1 || PlayerNumber / [[#NpadIdType]] | + | | 0x1 || 0x1 || [[#NpadIdType|PlayerNumber]] |
| |- | | |- |
− | | 0x2 || 0x1 || Idx | + | | 0x2 || 0x1 || DeviceIdx |
| |} | | |} |
| | | |
Line 6,861: |
Line 6,926: |
| = AccelerometerPlayMode = | | = AccelerometerPlayMode = |
| This is "nn::hid::debug::AccelerometerPlayMode" (pre-10.0.0 this is "nn::hid::AccelerometerPlayMode"). | | This is "nn::hid::debug::AccelerometerPlayMode" (pre-10.0.0 this is "nn::hid::AccelerometerPlayMode"). |
| + | |
| + | {| class="wikitable" border="1" |
| + | ! Value |
| + | ! Description |
| + | |- |
| + | | 0 || Loose |
| + | |- |
| + | | 1 || Tight |
| + | |} |
| | | |
| = GyroscopeZeroDriftMode = | | = GyroscopeZeroDriftMode = |
Line 6,957: |
Line 7,031: |
| | | |
| = DebugPadAutoPilotState = | | = DebugPadAutoPilotState = |
− | This is "nn::hid::debug::DebugPadAutoPilotState". This is a 0x18-byte struct with 4-byte alignment. | + | This is "nn::hid::debug::DebugPadAutoPilotState" |
| + | |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Offset |
| + | ! Size |
| + | ! Description |
| + | |- |
| + | | 0x0 |
| + | | 0x4 |
| + | | [[#DebugPadAttributeSet|Attributes]] |
| + | |- |
| + | | 0x4 |
| + | | 0x4 |
| + | | [[#DebugPadButtonSet|Buttons]] |
| + | |- |
| + | | 0x8 |
| + | | 0x8 |
| + | | [[#AnalogStickState|AnalogStickR]] |
| + | |- |
| + | | 0x10 |
| + | | 0x8 |
| + | | [[#AnalogStickState|AnalogStickL]] |
| + | |} |
| | | |
| = MouseAutoPilotState = | | = MouseAutoPilotState = |
− | This is "nn::hid::debug::MouseAutoPilotState". This is a 0x1C-byte struct with 4-byte alignment. | + | This is "nn::hid::debug::MouseAutoPilotState". |
| + | |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Offset |
| + | ! Size |
| + | ! Description |
| + | |- |
| + | | 0x0 |
| + | | 0x4 |
| + | | X |
| + | |- |
| + | | 0x4 |
| + | | 0x4 |
| + | | Y |
| + | |- |
| + | | 0x8 |
| + | | 0x4 |
| + | | DeltaX |
| + | |- |
| + | | 0xC |
| + | | 0x4 |
| + | | DeltaY |
| + | |- |
| + | | 0x10 |
| + | | 0x4 |
| + | | WheelDeltaX |
| + | |- |
| + | | 0x14 |
| + | | 0x4 |
| + | | WheelDeltaY |
| + | |- |
| + | | 0x18 |
| + | | 0x4 |
| + | | [[#MouseButtonSet|Buttons]] |
| + | |- |
| + | | 0x1C |
| + | | 0x4 |
| + | | [[#MouseAttributeSet|Attributes]] |
| + | |} |
| | | |
| = KeyboardAutoPilotState = | | = KeyboardAutoPilotState = |
− | This is "nn::hid::debug::KeyboardAutoPilotState". This is a 0x28-byte struct with 8-byte alignment. | + | This is "nn::hid::debug::KeyboardAutoPilotState". |
| + | |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Offset |
| + | ! Size |
| + | ! Description |
| + | |- |
| + | | 0x0 |
| + | | 0x8 |
| + | | [[#KeyboardModifierSet|Modifiers]] |
| + | |- |
| + | | 0x8 |
| + | | 0x20 |
| + | | [[#KeyboardKeySet|Keys]] |
| + | |} |
| | | |
| = HdlsHandle = | | = HdlsHandle = |
Line 7,359: |
Line 7,510: |
| ! Description | | ! Description |
| |- | | |- |
− | | 0 || DigitalButtonAssignment_A | + | | 0 || A |
| |- | | |- |
− | | 1 || DigitalButtonAssignment_B | + | | 1 || B |
| |- | | |- |
− | | 2 || DigitalButtonAssignment_X | + | | 2 || X |
| |- | | |- |
− | | 3 || DigitalButtonAssignment_Y | + | | 3 || Y |
| |- | | |- |
− | | 4 || DigitalButtonAssignment_StickL | + | | 4 || StickL |
| |- | | |- |
− | | 5 || DigitalButtonAssignment_StickR | + | | 5 || StickR |
| |- | | |- |
− | | 6 || DigitalButtonAssignment_L | + | | 6 || L |
| |- | | |- |
− | | 7 || DigitalButtonAssignment_R | + | | 7 || R |
| |- | | |- |
− | | 8 || DigitalButtonAssignment_ZL | + | | 8 || ZL |
| |- | | |- |
− | | 9 || DigitalButtonAssignment_ZR | + | | 9 || ZR |
| |- | | |- |
− | | 10 || DigitalButtonAssignment_Select | + | | 10 || Select |
| |- | | |- |
− | | 11 || DigitalButtonAssignment_Start | + | | 11 || Start |
| |- | | |- |
− | | 12 || DigitalButtonAssignment_Left | + | | 12 || Left |
| |- | | |- |
− | | 13 || DigitalButtonAssignment_Up | + | | 13 || Up |
| |- | | |- |
− | | 14 || DigitalButtonAssignment_Right | + | | 14 || Right |
| |- | | |- |
− | | 15 || DigitalButtonAssignment_Down | + | | 15 || Down |
| |- | | |- |
− | | 16 || DigitalButtonAssignment_LeftSL | + | | 16 || LeftSL |
| |- | | |- |
− | | 17 || DigitalButtonAssignment_LeftSR | + | | 17 || LeftSR |
| |- | | |- |
− | | 18 || DigitalButtonAssignment_RightSL | + | | 18 || RightSL |
| |- | | |- |
− | | 19 || DigitalButtonAssignment_RightSR | + | | 19 || RightSR |
| |- | | |- |
− | | 20 || DigitalButtonAssignment_HomeButton | + | | 20 || HomeButton |
| |- | | |- |
− | | 21 || DigitalButtonAssignment_CaptureButton | + | | 21 || CaptureButton |
| |- | | |- |
− | | 22 || DigitalButtonAssignment_Invalid | + | | 22 || Invalid |
| |} | | |} |
| | | |
Line 7,417: |
Line 7,568: |
| | 0x4 || 0x1 || IsPairedStickAssigned | | | 0x4 || 0x1 || IsPairedStickAssigned |
| |- | | |- |
− | | 0x5 || 0x3 || Padding | + | | 0x5 || 0x3 || Reserved |
| |} | | |} |
| | | |
Line 7,427: |
Line 7,578: |
| ! Description | | ! Description |
| |- | | |- |
− | | 0 || AnalogStickRotation_None | + | | 0 || None |
| |- | | |- |
− | | 1 || AnalogStickRotation_Clockwise90 | + | | 1 || Clockwise90 |
| |- | | |- |
− | | 2 || AnalogStickRotation_Anticlockwise90 | + | | 2 || Anticlockwise90 |
| |} | | |} |
| | | |
Line 8,132: |
Line 8,283: |
| | 0x0 || 0x30 || Data | | | 0x0 || 0x30 || Data |
| |- | | |- |
− | | 0x30 || 0x8 || Size of data. | + | | 0x30 || 0x8 || OutSize |
| |- | | |- |
− | | 0x38 || 0x8 || Timestamp | + | | 0x38 || 0x8 || SamplingNumber |
| |} | | |} |
| | | |
Line 8,144: |
Line 8,295: |
| ! Description | | ! Description |
| |- | | |- |
− | | 0 || JoyLeftRail | + | | 0 || LeftJoyRail |
| |- | | |- |
− | | 1 || JoyRightRail | + | | 1 || RightJoyRail |
| |- | | |- |
− | | 2 || [6.0.0+] LarkRightRail (for microphone) | + | | 2 || [6.0.0+] RightLarkRail (for microphone) |
| |} | | |} |
| | | |
Line 8,158: |
Line 8,309: |
| ! Description | | ! Description |
| |- | | |- |
− | | 0 || JoyPollingMode_SixAxisSensorDisable | + | | 0 || SixAxisSensorDisable |
| |- | | |- |
− | | 1 || JoyPollingMode_SixAxisSensorEnable | + | | 1 || SixAxisSensorEnable |
| |- | | |- |
− | | 2 || JoyPollingMode_ButtonOnly | + | | 2 || ButtonOnly |
| |} | | |} |
| | | |