Skip to content

Commit

Permalink
Release of v3.2.2
Browse files Browse the repository at this point in the history
  • Loading branch information
Electronicks committed Jul 27, 2021
1 parent 96af6d9 commit 3be2823
Show file tree
Hide file tree
Showing 4 changed files with 46 additions and 15 deletions.
8 changes: 4 additions & 4 deletions CHANGELOG.md
Expand Up @@ -6,22 +6,22 @@ This is a summary of new features and bugfixes. Read the README to learn how to
## 3.2.2

Jibb fixed some bugs related to motion stick and lean bindings.
Nicolas fixed some bugs too and makes use of the official SDL2 repo
Nicolas fixed some bugs too and makes use of the official SDL2 repo and GamepadMotionHelpers main branch
TauAkiou helped fix some linux build and updated the README
Github user mmmaisel added some better error handling of the linux build

### Features
An active toggle on the DualSense mic button will turn on the mic light.
An active toggle on the DualSense mic button will turn on the mic light until that toggle is cleared by another toggle of MIC or that binding being released.

### Bugfixes
* SET_MOTION_STICK_NEUTRAL should now behave correctly instead of accumulating errors over time.
* Motion stick and lean bindings should respect gravity more readily. This will also improve WORLD_TURN and WORLD_LEAN behaviour for those who use either of those GYRO_SPACE settings.
* GYRO_SMOOTH_TIME hasn't been working correctly since moving to a fixed tick rate (3.0). This has now been fixed.
* Stick aim inversion didn't work
* Stick aim inversion didn't work becuase it was inverted twice
* Linux easter egg fix (What is VK_NONAME? What does it do?)
* Linux error handling improvement (thanks mmmaisel)
* RIGHT_RING_MODE was confounded with LEFT_RING_MODE
* Fix the numkeys triggering home-end-pup-pdwn-ins-del-arrow keys and vice versa
* Fix the numkeys sending the alternate binding (home end pageup pagedown ...) and vice versa
* README linux notes updated (Thanks TauAkiou)

## 3.2.1
Expand Down
4 changes: 3 additions & 1 deletion JoyShockMapper/include/JslWrapper.h
Expand Up @@ -20,7 +20,9 @@ typedef struct {
#define JS_TYPE_PRO_CONTROLLER 3
#define JS_TYPE_DS4 4
#define JS_TYPE_DS 5
#define JS_TYPE_XBOX 6
#define JS_TYPE_XBOXONE 6
#define JS_TYPE_XBOXONE_ELITE 7
#define JS_TYPE_XBOX_SERIES 8

#define JS_SPLIT_TYPE_LEFT 1
#define JS_SPLIT_TYPE_RIGHT 2
Expand Down
33 changes: 30 additions & 3 deletions JoyShockMapper/src/SDL2Wrapper.cpp
Expand Up @@ -106,10 +106,37 @@ struct ControllerDevice
case SDL_GameControllerType::SDL_CONTROLLER_TYPE_PS5:
_ctrlr_type = JS_TYPE_DS;
break;
case SDL_GameControllerType::SDL_CONTROLLER_TYPE_XBOX360:
case SDL_GameControllerType::SDL_CONTROLLER_TYPE_XBOXONE:
_ctrlr_type = JS_TYPE_XBOX;
break;
_ctrlr_type = JS_TYPE_XBOXONE;
if (vid == 0x0e6f) // PDP Vendor ID
{
_ctrlr_type = JS_TYPE_XBOX_SERIES;
}
if (vid == 0x24c6) // PowerA
{
_ctrlr_type = JS_TYPE_XBOX_SERIES;
}
if (vid == 0x045e) // Microsoft Vendor ID
{
switch (pid)
{
case(0x02e3): // Xbox Elite Series 1
// Intentional fall through to the next case
case(0x0b05): //Xbox Elite Series 2 - Bluetooth
// Intentional fall through to the next case
case(0x0b00): //Xbox Elite Series 2
case (0x02ff): //XBOXGIP driver software PID - not sure what this is, might be from Valve's driver for using Elite paddles
// in any case, this is what my ELite Series 2 is showing as currently, so adding it here for now
_ctrlr_type = JS_TYPE_XBOXONE_ELITE;
break;
case(0x0b12): //Xbox Series controller
// Intentional fall through to the next case
case(0x0b13): // Xbox Series controller - bluetooth
_ctrlr_type = JS_TYPE_XBOX_SERIES;
break;
}
}
break;
}
}
}
Expand Down
16 changes: 9 additions & 7 deletions JoyShockMapper/src/main.cpp
Expand Up @@ -2728,13 +2728,15 @@ void joyShockPollCallback(int jcHandle, JOY_SHOCK_STATE state, JOY_SHOCK_STATE l
0.f;
jc->handleTriggerChange(ButtonID::TOUCH, ButtonID::CAPTURE, jc->getSetting<TriggerMode>(SettingID::TOUCHPAD_DUAL_STAGE_MODE), triggerpos, jc->unused_effect);
} break;
case JS_TYPE_XBOX:
jc->handleButtonChange(ButtonID::CAPTURE, buttons & (1 << JSOFFSET_CAPTURE)); // Xbox One S share button
jc->handleButtonChange(ButtonID::RSL, buttons & (1 << JSOFFSET_SL2)); // Xbox Elite back paddles
jc->handleButtonChange(ButtonID::RSR, buttons & (1 << JSOFFSET_SR2));
jc->handleButtonChange(ButtonID::LSL, buttons & (1 << JSOFFSET_SL));
jc->handleButtonChange(ButtonID::LSR, buttons & (1 << JSOFFSET_SR));
break;
case JS_TYPE_XBOXONE_ELITE:
jc->handleButtonChange(ButtonID::RSL, buttons & (1 << JSOFFSET_SL2)); //Xbox Elite back paddles
jc->handleButtonChange(ButtonID::RSR, buttons & (1 << JSOFFSET_SR2));
jc->handleButtonChange(ButtonID::LSL, buttons & (1 << JSOFFSET_SL));
jc->handleButtonChange(ButtonID::LSR, buttons & (1 << JSOFFSET_SR));
break;
case JS_TYPE_XBOX_SERIES:
jc->handleButtonChange(ButtonID::CAPTURE, buttons & (1 << JSOFFSET_CAPTURE));
break;
default: // Switch Pro controllers and left joycon
{
jc->handleButtonChange(ButtonID::CAPTURE, buttons & (1 << JSOFFSET_CAPTURE));
Expand Down

0 comments on commit 3be2823

Please sign in to comment.