From 007678bdae708fac2bea0f7e055f2721f52bc5b4 Mon Sep 17 00:00:00 2001 From: Adam Honse Date: Wed, 27 Jul 2022 14:59:46 -0500 Subject: [PATCH] Initial commit for Razer Turret for Xbox One --- .../RazerController/RazerController.cpp | 2 + .../RazerController/RazerControllerDetect.cpp | 1 + Controllers/RazerController/RazerDevices.h | 37 +++++++++++++++++++ 3 files changed, 40 insertions(+) diff --git a/Controllers/RazerController/RazerController.cpp b/Controllers/RazerController/RazerController.cpp index f0b59aa2c..3e23fc8d8 100644 --- a/Controllers/RazerController/RazerController.cpp +++ b/Controllers/RazerController/RazerController.cpp @@ -87,6 +87,7 @@ RazerController::RazerController(hid_device* dev_handle, hid_device* dev_argb_ha break; case RAZER_BLACKWIDOW_V3_MINI_WIRELESS_PID: + case RAZER_TURRET_FOR_XBOX_ONE_PID: { dev_transaction_id = 0x9F; break; @@ -277,6 +278,7 @@ RazerController::RazerController(hid_device* dev_handle, hid_device* dev_argb_ha case RAZER_SEIREN_EMOTE_PID: case RAZER_TARTARUS_V2_PID: case RAZER_TIAMAT_71_V2_PID: + case RAZER_TURRET_FOR_XBOX_ONE_PID: case RAZER_VIPER_8KHZ_PID: case RAZER_VIPER_MINI_PID: case RAZER_VIPER_PID: diff --git a/Controllers/RazerController/RazerControllerDetect.cpp b/Controllers/RazerController/RazerControllerDetect.cpp index e409984c7..c1e1a8007 100644 --- a/Controllers/RazerController/RazerControllerDetect.cpp +++ b/Controllers/RazerController/RazerControllerDetect.cpp @@ -269,6 +269,7 @@ REGISTER_HID_DETECTOR_IPU("Razer Huntsman V2 TKL", Det REGISTER_HID_DETECTOR_IPU("Razer Huntsman V2", DetectRazerControllers, RAZER_VID, RAZER_HUNTSMAN_V2_PID, 0x03, 0x0C, 0x01); REGISTER_HID_DETECTOR_IPU("Razer Ornata Chroma", DetectRazerControllers, RAZER_VID, RAZER_ORNATA_CHROMA_PID, 0x02, 0x01, 0x02); REGISTER_HID_DETECTOR_IPU("Razer Ornata Chroma V2", DetectRazerControllers, RAZER_VID, RAZER_ORNATA_CHROMA_V2_PID, 0x02, 0x01, 0x02); +REGISTER_HID_DETECTOR("Razer Turret for Xbox One", DetectRazerControllers, RAZER_VID, RAZER_TURRET_FOR_XBOX_ONE_PID ); /*-----------------------------------------------------------------------------------------------------*\ | Laptops | diff --git a/Controllers/RazerController/RazerDevices.h b/Controllers/RazerController/RazerDevices.h index 6592c2a17..1082b71ab 100644 --- a/Controllers/RazerController/RazerDevices.h +++ b/Controllers/RazerController/RazerDevices.h @@ -84,6 +84,7 @@ #define RAZER_ORNATA_CHROMA_V2_PID 0x025D #define RAZER_TARTARUS_CHROMA_PID 0x0208 #define RAZER_TARTARUS_V2_PID 0x022B +#define RAZER_TURRET_FOR_XBOX_ONE_PID 0x0904 /*-----------------------------------------------------*\ | Mouse product IDs | @@ -3622,6 +3623,41 @@ static const razer_device huntsman_v2_device = HUNTSMAN_V2_KEYMAP_SIZE }; +/*-------------------------------------------------------------*\ +| Razer Turret for Xbox One | +| | +| Zone "Keyboard" | +| Matrix | +| 6 Rows, 17 Columns | +\*-------------------------------------------------------------*/ +static const razer_zone turret_for_xbox_one_keyboard_zone = +{ + "Keyboard", + ZONE_TYPE_MATRIX, + 6, + 17 +}; + +static const razer_device turret_for_xbox_one_device = +{ + "Razer Turret for Xbox One", + RAZER_TURRET_FOR_XBOX_ONE_PID, + DEVICE_TYPE_KEYBOARD, + true, + 6, + 17, + { + &turret_for_xbox_one_keyboard_zone, + NULL, + NULL, + NULL, + NULL, + NULL + }, + NULL, + 0 +}; + /*-------------------------------------------------------------------------*\ | LAPTOPS | \*-------------------------------------------------------------------------*/ @@ -8073,6 +8109,7 @@ static const razer_device* device_list[] = &huntsman_v2_analog_device, &huntsman_v2_tkl_device, &ornata_chroma_device, + &turret_for_xbox_one_device, /*-----------------------------------------------------------------*\ | LAPTOPS | \*-----------------------------------------------------------------*/