[SOLVED] Missing ForceFeedback in DualShock3 / Dualshock4

Having technical difficulties with Supermodel? Last-minute wardrobe malfunction? Get help here.
Forum rules
Keep it classy!

  • No ROM requests or links.
  • Do not ask to be a play tester.
  • Do not ask about release dates.
  • No drama!

[SOLVED] Missing ForceFeedback in DualShock3 / Dualshock4

Postby zuppa_di_pesce » Sun Jul 26, 2020 12:24 pm

Hay guys!!

I can't get rumble to workswith DualShock4 (latest version: CUH-ZCT2E).
Please help!

Force Feedback is NOT working in native mote (DInput, USB or bluetooth).
I also tried to emulate XBoX 360 via DS4Windows (USB or bluetooth) and using XInput with no success... :(

Inside srall2y.zip the file "epr-20512.bin" is valid.

Code: Select all
Input System Settings
---------------------

Input System: Xinput

Keyboards:
 System Keyboard
Mice:
 System Mouse
Joysticks:
 1: Xbox 360 Controller 1 (via XInput) [Force Feedback Available]



Look at the log... There are both DInput and XInput inside the log...
Code: Select all
Supermodel v0.3a-WIP Error Log
------------------------------

Started as:
  argv[0] = Supermodel.exe
  argv[1] = -ppc-frequency=55
  argv[2] = -gpu-multi-threaded
  argv[3] = -fullscreen
  argv[4] = -res=992,768
  argv[5] = -no-vsync
  argv[6] = -show-fps
  argv[7] = -legacy3d
  argv[8] = -multi-texture
  argv[9] = -input-system=xinput
  argv[10] = roms\srally2.zip

Opened roms\srally2.zip.
srally2:
  banked_crom: stride=8, chunk size=2, byte swap=1
    mpr-20605.4, crc32=0x00513401, offset=0x00000000
    mpr-20605.3, crc32=0x99c5f396, offset=0x00000002
    mpr-20603.2, crc32=0xad0d8eb8, offset=0x00000004
    mpr-20602.1, crc32=0x60cfa72a, offset=0x00000006
    mpr-20609.8, crc32=0xc03cc0e5, offset=0x01000000
    mpr-20608.7, crc32=0x0c9b0571, offset=0x01000002
    mpr-20607.6, crc32=0x6da85aa3, offset=0x01000004
    mpr-20606.5, crc32=0x072498fd, offset=0x01000006
    mpr-20613.12, crc32=0x2938c0d9, offset=0x02000000
    mpr-20612.11, crc32=0x721a44b6, offset=0x02000002
    mpr-20611.10, crc32=0x5d9f8ba2, offset=0x02000004
    mpr-20610.9, crc32=0xb6e0ff4e, offset=0x02000006
  crom: stride=8, chunk size=2, byte swap=1
    epr-20635.20, crc32=0x7937473f, offset=0x00000000
    epr-20634.19, crc32=0x45a09245, offset=0x00000002
    epr-20633.18, crc32=0xf5a24f24, offset=0x00000004
    epr-20632.17, crc32=0x6829a801, offset=0x00000006
  driveboard_program: stride=1, chunk size=1, byte swap=0
    epr-20512.bin, crc32=0xcf64350d, offset=0x00000000
  mpeg_music: stride=1, chunk size=1, byte swap=0
    mpr-20637.57, crc32=0xd66e8a02, offset=0x00000000
    mpr-20638.58, crc32=0xd1513382, offset=0x00400000
    mpr-20639.59, crc32=0xf6603b7b, offset=0x00800000
    mpr-20640.60, crc32=0x9eea07b7, offset=0x00c00000
  mpeg_program: stride=1, chunk size=1, byte swap=1
    epr-20641.2, crc32=0xc9b82035, offset=0x00000000
  sound_program: stride=1, chunk size=1, byte swap=1
    epr-20636.21, crc32=0x7139ebf8, offset=0x00000000
  sound_samples: stride=1, chunk size=1, byte swap=1
    mpr-20614.22, crc32=0xa3930e4a, offset=0x00000000
    mpr-20615.24, crc32=0x62e8a94a, offset=0x00400000
  vrom: stride=32, chunk size=2, byte swap=0
    mpr-20616.26, crc32=0xe11dcf8b, offset=0x00000000
    mpr-20617.27, crc32=0x96acef3f, offset=0x00000002
    mpr-20618.28, crc32=0x6c281281, offset=0x00000004
    mpr-20619.29, crc32=0x0fa65819, offset=0x00000006
    mpr-20620.30, crc32=0xee79585f, offset=0x00000008
    mpr-20621.31, crc32=0x3a99148f, offset=0x0000000a
    mpr-20622.32, crc32=0x0618f056, offset=0x0000000c
    mpr-20623.33, crc32=0xccf31b85, offset=0x0000000e
    mpr-20624.34, crc32=0x90f30936, offset=0x00000010
    mpr-20625.35, crc32=0x04f804fa, offset=0x00000012
    mpr-20626.36, crc32=0x2d6c97d6, offset=0x00000014
    mpr-20627.37, crc32=0xa14ee871, offset=0x00000016
    mpr-20628.38, crc32=0xbba829a3, offset=0x00000018
    mpr-20629.39, crc32=0xead2eb31, offset=0x0000001a
    mpr-20630.40, crc32=0xcc5881b8, offset=0x0000001c
    mpr-20631.41, crc32=0x5cb69ffd, offset=0x0000001e
Runtime configuration:
  GameXMLFile=Config/Games.xml
  InitStateFile=
  MultiThreaded=1
  GPUMultiThreaded=1
  PowerPCFrequency=55
  MultiTexture=1
  VertexShader=
  FragmentShader=
  VertexShaderFog=
  FragmentShaderFog=
  VertexShader2D=
  FragmentShader2D=
  EmulateSound=1
  Balance=0
  EmulateDSB=1
  SoundVolume=100
  MusicVolume=100
  SoundFreq=57.5
  LegacySound=0
  ForceFeedback=1
  New3DEngine=0
  QuadRendering=0
  XResolution=992
  YResolution=768
  FullScreen=1
  WideScreen=0
  Stretch=0
  VSync=0
  Throttle=1
  ShowFrameRate=1
  Crosshairs=0
  FlipStereo=0
  InputSystem=xinput
  DirectInputConstForceLeftMax=100
  DirectInputConstForceRightMax=100
  DirectInputSelfCenterMax=100
  DirectInputFrictionMax=100
  DirectInputVibrateMax=100
  XInputConstForceThreshold=20
  XInputConstForceMax=100
  XInputVibrateMax=100
  EmulateNet=0
  Outputs=none
  port_in=1970
  port_out=1971
  addr_out=127.0.0.1
  InputJoy1XOffVal=0
  InputJoy1XDeadZone=1
  InputJoy1YMinVal=-32767
  InputJoy1YOffVal=0
  InputJoy1YMaxVal=32768
  InputJoy1YDeadZone=1
  InputJoy1ZMinVal=0
  InputJoy1ZDeadZone=1
  InputJoy1RXOffVal=0
  InputJoy1RXDeadZone=1
  InputJoy1RYMinVal=-32767
  InputJoy1RYOffVal=0
  InputJoy1RYMaxVal=32768
  InputJoy1RYDeadZone=1
  InputJoy1RZMinVal=0
  InputJoy1RZDeadZone=1
  InputStart1=JOY1_BUTTON8
  InputStart2=NONE
  InputCoin1=JOY1_BUTTON7
  InputCoin2=NONE
  InputServiceA=KEY_M
  InputServiceB=KEY_N
  InputTestA=KEY_B
  InputTestB=KEY_V
  InputJoyUp=JOY1_POV1_UP
  InputJoyDown=JOY1_POV1_DOWN
  InputJoyLeft=JOY1_POV1_LEFT
  InputJoyRight=JOY1_POV1_RIGHT
  InputJoyUp2=NONE
  InputJoyDown2=NONE
  InputJoyLeft2=NONE
  InputJoyRight2=NONE
  InputPunch=NONE
  InputKick=NONE
  InputGuard=NONE
  InputEscape=NONE
  InputPunch2=NONE
  InputKick2=NONE
  InputGuard2=NONE
  InputEscape2=NONE
  InputShift=NONE
  InputBeat=NONE
  InputCharge=NONE
  InputJump=NONE
  InputShortPass=NONE
  InputLongPass=NONE
  InputShoot=NONE
  InputShortPass2=NONE
  InputLongPass2=NONE
  InputShoot2=NONE
  InputSteeringLeft=JOY1_XAXIS_NEG
  InputSteeringRight=JOY1_XAXIS_POS
  InputSteering=NONE
  InputAccelerator=JOY1_RZAXIS_POS
  InputBrake=JOY1_ZAXIS_POS
  InputGearShiftUp=NONE
  InputGearShiftDown=NONE
  InputGearShift1=JOY1_BUTTON3
  InputGearShift2=JOY1_BUTTON1
  InputGearShift3=JOY1_BUTTON2
  InputGearShift4=JOY1_BUTTON4
  InputGearShiftN=NONE
  InputVR1=NONE
  InputVR2=NONE
  InputVR3=NONE
  InputVR4=NONE
  InputViewChange=JOY1_BUTTON6
  InputHandBrake=JOY1_BUTTON5
  InputRearBrake=NONE
  InputMusicSelect=NONE
  InputTwinJoyTurnLeft=NONE
  InputTwinJoyTurnRight=NONE
  InputTwinJoyForward=NONE
  InputTwinJoyReverse=NONE
  InputTwinJoyStrafeLeft=NONE
  InputTwinJoyStrafeRight=NONE
  InputTwinJoyJump=NONE
  InputTwinJoyCrouch=NONE
  InputTwinJoyLeft1=NONE
  InputTwinJoyLeft2=NONE
  InputTwinJoyRight1=NONE
  InputTwinJoyRight2=NONE
  InputTwinJoyUp1=NONE
  InputTwinJoyUp2=NONE
  InputTwinJoyDown1=NONE
  InputTwinJoyDown2=NONE
  InputTwinJoyShot1=NONE
  InputTwinJoyShot2=NONE
  InputTwinJoyTurbo1=NONE
  InputTwinJoyTurbo2=NONE
  InputAnalogJoyLeft=NONE
  InputAnalogJoyRight=NONE
  InputAnalogJoyUp=NONE
  InputAnalogJoyDown=NONE
  InputAnalogJoyX=NONE
  InputAnalogJoyY=NONE
  InputAnalogJoyTrigger=NONE
  InputAnalogJoyTrigger2=NONE
  InputAnalogJoyEvent=NONE
  InputAnalogJoyEvent2=NONE
  InputGunLeft=NONE
  InputGunRight=NONE
  InputGunUp=NONE
  InputGunDown=NONE
  InputGunX=NONE
  InputGunY=NONE
  InputTrigger=NONE
  InputOffscreen=NONE
  InputAutoTrigger=0
  InputGunLeft2=NONE
  InputGunRight2=NONE
  InputGunUp2=NONE
  InputGunDown2=NONE
  InputGunX2=NONE
  InputGunY2=NONE
  InputTrigger2=NONE
  InputOffscreen2=NONE
  InputAutoTrigger2=0
  InputAnalogGunLeft=NONE
  InputAnalogGunRight=NONE
  InputAnalogGunUp=NONE
  InputAnalogGunDown=NONE
  InputAnalogGunX=NONE
  InputAnalogGunY=NONE
  InputAnalogTriggerLeft=NONE
  InputAnalogTriggerRight=NONE
  InputAnalogGunLeft2=NONE
  InputAnalogGunRight2=NONE
  InputAnalogGunUp2=NONE
  InputAnalogGunDown2=NONE
  InputAnalogGunX2=NONE
  InputAnalogGunY2=NONE
  InputAnalogTriggerLeft2=NONE
  InputAnalogTriggerRight2=NONE
  InputSkiLeft=NONE
  InputSkiRight=NONE
  InputSkiUp=NONE
  InputSkiDown=NONE
  InputSkiX=NONE
  InputSkiY=NONE
  InputSkiPollLeft=NONE
  InputSkiPollRight=NONE
  InputSkiSelect1=NONE
  InputSkiSelect2=NONE
  InputSkiSelect3=NONE
  InputMagicalLeverUp1=NONE
  InputMagicalLeverDown1=NONE
  InputMagicalLeverUp2=NONE
  InputMagicalLeverDown2=NONE
  InputMagicalLever1=NONE
  InputMagicalLever2=NONE
  InputMagicalPedal1=NONE
  InputMagicalPedal2=NONE
  InputFishingRodLeft=NONE
  InputFishingRodRight=NONE
  InputFishingRodUp=NONE
  InputFishingRodDown=NONE
  InputFishingStickLeft=NONE
  InputFishingStickRight=NONE
  InputFishingStickUp=NONE
  InputFishingStickDown=NONE
  InputFishingRodX=NONE
  InputFishingRodY=NONE
  InputFishingReel=NONE
  InputFishingStickX=NONE
  InputFishingStickY=NONE
  InputFishingCast=NONE
  InputFishingSelect=NONE

OpenGL information:
  Vendor                   : Intel
  Renderer                 : Intel(R) HD Graphics 4400
  Version                  : 4.3.0 - Build 20.19.15.5126
  Shading Language Version : 4.30 - Build 20.19.15.5126
  Maximum Vertex Array Size: 1048576 vertices
  Maximum Texture Size     : 16384 texels
  Maximum Vertex Attributes: 16
  Maximum Vertex Uniforms  : 4096
  Maximum Texture Img Units: 32

Static vertex buffer size: 69.43 MB
Dynamic vertex buffer size: 6.35 MB
Located and bound 8 'textureMap' uniform(s) in fragment shader.
Created 8 2048x2048-texel GL texture map(s).
Mapped 8 Model3 texture formats to 8 texture sheet(s) in 8 2048x2048-texel texture map(s).
Program terminated normally.
Last edited by zuppa_di_pesce on Sun Sep 27, 2020 12:35 pm, edited 1 time in total.
"Did you surfcast that fish?" - "Kinda... But... That wasn't a fish... It was a GNU!"
User avatar
zuppa_di_pesce
 
Posts: 120
Joined: Fri Jun 12, 2020 1:51 pm
Location: surfCASTING on a beach

Re: Force Feedback / vibration / rumble with dualshock4

Postby zuppa_di_pesce » Mon Aug 03, 2020 11:35 am

So, anyone who could help me find out how to get force feedback works with DualShock4? ;)
"Did you surfcast that fish?" - "Kinda... But... That wasn't a fish... It was a GNU!"
User avatar
zuppa_di_pesce
 
Posts: 120
Joined: Fri Jun 12, 2020 1:51 pm
Location: surfCASTING on a beach

Re: Force Feedback / vibration / rumble with dualshock4

Postby orimarc » Tue Aug 04, 2020 9:10 am

Did you use the -force-feedback option? I don't see it in your error log.
User avatar
orimarc
 
Posts: 115
Joined: Tue Sep 27, 2011 9:17 am

Re: Force Feedback / vibration / rumble with dualshock4

Postby zuppa_di_pesce » Sun Aug 09, 2020 3:30 am

Yes, sorry. Wrong log.

Here's the right one:
Code: Select all
Supermodel v0.3a-WIP Error Log
------------------------------

Started as:
  argv[0] = Supermodel.exe
  argv[1] = -input-system=xinput
  argv[2] = -force-feedback
  argv[3] = -ppc-frequency=55
  argv[4] = -res=1488,1152
  argv[5] = -no-vsync
  argv[6] = -show-fps
  argv[7] = -gpu-multi-threaded
  argv[8] = -legacy3d
  argv[9] = -multi-texture
  argv[10] = roms\srally2.zip

Opened roms\srally2.zip.
srally2:
  banked_crom: stride=8, chunk size=2, byte swap=1
    mpr-20605.4, crc32=0x00513401, offset=0x00000000
    mpr-20605.3, crc32=0x99c5f396, offset=0x00000002
    mpr-20603.2, crc32=0xad0d8eb8, offset=0x00000004
    mpr-20602.1, crc32=0x60cfa72a, offset=0x00000006
    mpr-20609.8, crc32=0xc03cc0e5, offset=0x01000000
    mpr-20608.7, crc32=0x0c9b0571, offset=0x01000002
    mpr-20607.6, crc32=0x6da85aa3, offset=0x01000004
    mpr-20606.5, crc32=0x072498fd, offset=0x01000006
    mpr-20613.12, crc32=0x2938c0d9, offset=0x02000000
    mpr-20612.11, crc32=0x721a44b6, offset=0x02000002
    mpr-20611.10, crc32=0x5d9f8ba2, offset=0x02000004
    mpr-20610.9, crc32=0xb6e0ff4e, offset=0x02000006
  crom: stride=8, chunk size=2, byte swap=1
    epr-20635.20, crc32=0x7937473f, offset=0x00000000
    epr-20634.19, crc32=0x45a09245, offset=0x00000002
    epr-20633.18, crc32=0xf5a24f24, offset=0x00000004
    epr-20632.17, crc32=0x6829a801, offset=0x00000006
  driveboard_program: stride=1, chunk size=1, byte swap=0
    epr-20512.bin, crc32=0xcf64350d, offset=0x00000000
  mpeg_music: stride=1, chunk size=1, byte swap=0
    mpr-20637.57, crc32=0xd66e8a02, offset=0x00000000
    mpr-20638.58, crc32=0xd1513382, offset=0x00400000
    mpr-20639.59, crc32=0xf6603b7b, offset=0x00800000
    mpr-20640.60, crc32=0x9eea07b7, offset=0x00c00000
  mpeg_program: stride=1, chunk size=1, byte swap=1
    epr-20641.2, crc32=0xc9b82035, offset=0x00000000
  sound_program: stride=1, chunk size=1, byte swap=1
    epr-20636.21, crc32=0x7139ebf8, offset=0x00000000
  sound_samples: stride=1, chunk size=1, byte swap=1
    mpr-20614.22, crc32=0xa3930e4a, offset=0x00000000
    mpr-20615.24, crc32=0x62e8a94a, offset=0x00400000
  vrom: stride=32, chunk size=2, byte swap=0
    mpr-20616.26, crc32=0xe11dcf8b, offset=0x00000000
    mpr-20617.27, crc32=0x96acef3f, offset=0x00000002
    mpr-20618.28, crc32=0x6c281281, offset=0x00000004
    mpr-20619.29, crc32=0x0fa65819, offset=0x00000006
    mpr-20620.30, crc32=0xee79585f, offset=0x00000008
    mpr-20621.31, crc32=0x3a99148f, offset=0x0000000a
    mpr-20622.32, crc32=0x0618f056, offset=0x0000000c
    mpr-20623.33, crc32=0xccf31b85, offset=0x0000000e
    mpr-20624.34, crc32=0x90f30936, offset=0x00000010
    mpr-20625.35, crc32=0x04f804fa, offset=0x00000012
    mpr-20626.36, crc32=0x2d6c97d6, offset=0x00000014
    mpr-20627.37, crc32=0xa14ee871, offset=0x00000016
    mpr-20628.38, crc32=0xbba829a3, offset=0x00000018
    mpr-20629.39, crc32=0xead2eb31, offset=0x0000001a
    mpr-20630.40, crc32=0xcc5881b8, offset=0x0000001c
    mpr-20631.41, crc32=0x5cb69ffd, offset=0x0000001e
Runtime configuration:
  GameXMLFile=Config/Games.xml
  InitStateFile=
  MultiThreaded=1
  GPUMultiThreaded=1
  PowerPCFrequency=55
  MultiTexture=1
  VertexShader=
  FragmentShader=
  VertexShaderFog=
  FragmentShaderFog=
  VertexShader2D=
  FragmentShader2D=
  EmulateSound=1
  Balance=0
  EmulateDSB=1
  SoundVolume=100
  MusicVolume=100
  SoundFreq=57.5
  LegacySound=0
  ForceFeedback=1
  New3DEngine=0
  QuadRendering=0
  XResolution=1488
  YResolution=1152
  FullScreen=0
  WideScreen=0
  Stretch=0
  VSync=0
  Throttle=1
  ShowFrameRate=1
  Crosshairs=0
  FlipStereo=0
  InputSystem=xinput
  DirectInputConstForceLeftMax=100
  DirectInputConstForceRightMax=100
  DirectInputSelfCenterMax=100
  DirectInputFrictionMax=100
  DirectInputVibrateMax=100
  XInputConstForceThreshold=30
  XInputConstForceMax=100
  XInputVibrateMax=100
  EmulateNet=0
  Outputs=none
  port_in=1970
  port_out=1971
  addr_out=127.0.0.1
  InputStart1=JOY1_BUTTON8
  InputStart2=NONE
  InputCoin1=JOY1_BUTTON7
  InputCoin2=NONE
  InputServiceA=KEY_K
  InputServiceB=KEY_N
  InputTestA=KEY_L
  InputTestB=KEY_M
  InputJoy1XOffVal=128
  InputJoy1XDeadZone=1
  InputJoy1YMinVal=-32767
  InputJoy1YOffVal=129
  InputJoy1YMaxVal=32768
  InputJoy1YDeadZone=1
  InputJoy1ZMinVal=0
  InputJoy1ZDeadZone=1
  InputJoy1RXOffVal=128
  InputJoy1RXDeadZone=1
  InputJoy1RYMinVal=-32767
  InputJoy1RYOffVal=129
  InputJoy1RYMaxVal=32768
  InputJoy1RYDeadZone=1
  InputJoy1RZMinVal=0
  InputJoy1RZDeadZone=1
  InputJoyUp=JOY1_POV1_UP
  InputJoyDown=JOY1_POV1_DOWN
  InputJoyLeft=JOY1_POV1_LEFT
  InputJoyRight=JOY1_POV1_RIGHT
  InputJoyUp2=NONE
  InputJoyDown2=NONE
  InputJoyLeft2=NONE
  InputJoyRight2=NONE
  InputPunch=NONE
  InputKick=NONE
  InputGuard=NONE
  InputEscape=NONE
  InputPunch2=NONE
  InputKick2=NONE
  InputGuard2=NONE
  InputEscape2=NONE
  InputShift=NONE
  InputBeat=NONE
  InputCharge=NONE
  InputJump=NONE
  InputShortPass=NONE
  InputLongPass=NONE
  InputShoot=NONE
  InputShortPass2=NONE
  InputLongPass2=NONE
  InputShoot2=NONE
  InputSteeringLeft=JOY1_XAXIS_NEG
  InputSteeringRight=JOY1_XAXIS_POS
  InputSteering=NONE
  InputAccelerator=JOY1_RZAXIS_POS
  InputBrake=JOY1_ZAXIS_POS
  InputGearShiftUp=NONE
  InputGearShiftDown=NONE
  InputGearShift1=JOY1_BUTTON2
  InputGearShift2=JOY1_BUTTON1
  InputGearShift3=JOY1_BUTTON3
  InputGearShift4=JOY1_BUTTON4
  InputGearShiftN=NONE
  InputVR1=NONE
  InputVR2=NONE
  InputVR3=NONE
  InputVR4=NONE
  InputViewChange=JOY1_BUTTON6
  InputHandBrake=JOY1_BUTTON5
  InputRearBrake=NONE
  InputMusicSelect=NONE
  InputTwinJoyTurnLeft=NONE
  InputTwinJoyTurnRight=NONE
  InputTwinJoyForward=NONE
  InputTwinJoyReverse=NONE
  InputTwinJoyStrafeLeft=NONE
  InputTwinJoyStrafeRight=NONE
  InputTwinJoyJump=NONE
  InputTwinJoyCrouch=NONE
  InputTwinJoyLeft1=NONE
  InputTwinJoyLeft2=NONE
  InputTwinJoyRight1=NONE
  InputTwinJoyRight2=NONE
  InputTwinJoyUp1=NONE
  InputTwinJoyUp2=NONE
  InputTwinJoyDown1=NONE
  InputTwinJoyDown2=NONE
  InputTwinJoyShot1=NONE
  InputTwinJoyShot2=NONE
  InputTwinJoyTurbo1=NONE
  InputTwinJoyTurbo2=NONE
  InputAnalogJoyLeft=JOY1_XAXIS_NEG
  InputAnalogJoyRight=JOY1_XAXIS_POS
  InputAnalogJoyUp=JOY1_YAXIS_NEG
  InputAnalogJoyDown=JOY1_YAXIS_POS
  InputAnalogJoyX=JOY1_XAXIS
  InputAnalogJoyY=JOY1_YAXIS
  InputAnalogJoyTrigger=NONE
  InputAnalogJoyTrigger2=NONE
  InputAnalogJoyEvent=NONE
  InputAnalogJoyEvent2=NONE
  InputGunLeft=NONE
  InputGunRight=NONE
  InputGunUp=NONE
  InputGunDown=NONE
  InputGunX=NONE
  InputGunY=NONE
  InputTrigger=NONE
  InputOffscreen=NONE
  InputAutoTrigger=0
  InputGunLeft2=NONE
  InputGunRight2=NONE
  InputGunUp2=NONE
  InputGunDown2=NONE
  InputGunX2=NONE
  InputGunY2=NONE
  InputTrigger2=NONE
  InputOffscreen2=NONE
  InputAutoTrigger2=0
  InputAnalogGunLeft=NONE
  InputAnalogGunRight=NONE
  InputAnalogGunUp=NONE
  InputAnalogGunDown=NONE
  InputAnalogGunX=NONE
  InputAnalogGunY=NONE
  InputAnalogTriggerLeft=NONE
  InputAnalogTriggerRight=NONE
  InputAnalogGunLeft2=NONE
  InputAnalogGunRight2=NONE
  InputAnalogGunUp2=NONE
  InputAnalogGunDown2=NONE
  InputAnalogGunX2=NONE
  InputAnalogGunY2=NONE
  InputAnalogTriggerLeft2=NONE
  InputAnalogTriggerRight2=NONE
  InputSkiLeft=NONE
  InputSkiRight=NONE
  InputSkiUp=NONE
  InputSkiDown=NONE
  InputSkiX=NONE
  InputSkiY=NONE
  InputSkiPollLeft=NONE
  InputSkiPollRight=NONE
  InputSkiSelect1=NONE
  InputSkiSelect2=NONE
  InputSkiSelect3=NONE
  InputMagicalLeverUp1=NONE
  InputMagicalLeverDown1=NONE
  InputMagicalLeverUp2=NONE
  InputMagicalLeverDown2=NONE
  InputMagicalLever1=NONE
  InputMagicalLever2=NONE
  InputMagicalPedal1=NONE
  InputMagicalPedal2=NONE
  InputFishingRodLeft=NONE
  InputFishingRodRight=NONE
  InputFishingRodUp=NONE
  InputFishingRodDown=NONE
  InputFishingStickLeft=NONE
  InputFishingStickRight=NONE
  InputFishingStickUp=NONE
  InputFishingStickDown=NONE
  InputFishingRodX=NONE
  InputFishingRodY=NONE
  InputFishingReel=NONE
  InputFishingStickX=NONE
  InputFishingStickY=NONE
  InputFishingCast=NONE
  InputFishingSelect=NONE

OpenGL information:
  Vendor                   : Intel
  Renderer                 : Intel(R) HD Graphics 4400
  Version                  : 4.3.0 - Build 20.19.15.5126
  Shading Language Version : 4.30 - Build 20.19.15.5126
  Maximum Vertex Array Size: 1048576 vertices
  Maximum Texture Size     : 16384 texels
  Maximum Vertex Attributes: 16
  Maximum Vertex Uniforms  : 4096
  Maximum Texture Img Units: 32

Static vertex buffer size: 69.43 MB
Dynamic vertex buffer size: 6.35 MB
Located and bound 8 'textureMap' uniform(s) in fragment shader.
Created 8 2048x2048-texel GL texture map(s).
Mapped 8 Model3 texture formats to 8 texture sheet(s) in 8 2048x2048-texel texture map(s).
Program terminated normally.
"Did you surfcast that fish?" - "Kinda... But... That wasn't a fish... It was a GNU!"
User avatar
zuppa_di_pesce
 
Posts: 120
Joined: Fri Jun 12, 2020 1:51 pm
Location: surfCASTING on a beach

Re: Force Feedback / vibration / rumble with dualshock4

Postby Bart » Mon Aug 10, 2020 12:28 pm

Have you gotten it to work with any controller in any game? Can you also paste the output of Supermodel's game information summary? For example:

Code: Select all
C:\model3emu>bin64\supermodel roms\srally2.zip
Supermodel: A Sega Model 3 Arcade Emulator (Version 0.3a-WIP)
Copyright 2011-2020 by Bart Trzynadlowski, Nik Henson, Ian Curtis,
                       Harry Tuttle, and Spindizzi

    Title:          Sega Rally 2 (?)
    ROM Set:        srally2
    Developer:      Sega
    Year:           1998
    Stepping:       2.0
    Extra Hardware: Digital Sound Board (Type DSB2), Drive Board
User avatar
Bart
Site Admin
 
Posts: 3086
Joined: Thu Sep 01, 2011 2:13 pm
Location: Reno, Nevada

Re: Force Feedback / vibration / rumble with dualshock4

Postby zuppa_di_pesce » Thu Aug 13, 2020 12:03 pm

Hey Bart!

So... On my main PC (ArchLinux) rumble is working on Logitech G27 running Supermodel3 via wine (Supermodel Windows version of course, and dinput input system).
At this time I cannot test DualShock4 on my main PC (ArchLinux)...

BTW, the issue is on my secondary miniPC which runs Windows 10 x64 and DualShock4 is emulated as XBoX 360 using DS4Windows.
Via DS4Windows "emulation", neither with Xinput nor Dinput I cannot get rumble working.
But I can confirm rumble is working inside RetroArch for example (and so I can tell for sure that DS4Windows is emulating DualShock4 properly).

Here's the output:
Code: Select all
Supermodel.exe -input-system=xinput -force-feedback roms/srally2.zip
Supermodel: A Sega Model 3 Arcade Emulator (Version 0.3a-WIP)
Copyright 2011-2019 by Bart Trzynadlowski, Nik Henson, Ian Curtis,
                       Harry Tuttle, and Spindizzi

Init netboard
    Title:          Sega Rally 2 (?)
    ROM Set:        srally2
    Developer:      Sega
    Year:           1998
    Stepping:       2.0
    Extra Hardware: Digital Sound Board (Type DSB2), Drive Board

WARNING: 0:4: '' :  #version directive missing


WARNING: 0:3: '' :  #version directive missing



WARNING: 0:4: '' :  #version directive missing


WARNING: 0:3: '' :  #version directive missing



WARNING: 0:4: '' :  #version directive missing


WARNING: 0:3: '' :  #version directive missing



Thanks!
"Did you surfcast that fish?" - "Kinda... But... That wasn't a fish... It was a GNU!"
User avatar
zuppa_di_pesce
 
Posts: 120
Joined: Fri Jun 12, 2020 1:51 pm
Location: surfCASTING on a beach

Re: Force Feedback / vibration / rumble with dualshock4

Postby Bart » Sat Aug 15, 2020 9:11 pm

Unfortunately, I'm not sure what to suggest as I didn't write the input system and it sounds like you have a bit of a non-standard setup using a controller emulator. Someone would have to dig into the input code and figure out how your pad is being seen.
User avatar
Bart
Site Admin
 
Posts: 3086
Joined: Thu Sep 01, 2011 2:13 pm
Location: Reno, Nevada

Re: Force Feedback / vibration / rumble with dualshock4

Postby zuppa_di_pesce » Sat Sep 26, 2020 5:09 am

So... I also tried in Windows the DualShock3 (bluetooth and USB, emulated via https://github.com/ViGEm/ViGEmBus) on my main PC.
Still no ForceFeedback (neither Windows native nor Linux via WINE).
I can confirm it's not a gampepad or drivers issue, because with other emulators rumble is working via XInput (both Windows and Linux) with DualShock3 (both USB and bluetooth) and DualShock4 (both USB and bluetooth).

What kind of other useful could I provide to you guys?
"Did you surfcast that fish?" - "Kinda... But... That wasn't a fish... It was a GNU!"
User avatar
zuppa_di_pesce
 
Posts: 120
Joined: Fri Jun 12, 2020 1:51 pm
Location: surfCASTING on a beach

Re: Force Feedback / vibration / rumble with dualshock4

Postby zuppa_di_pesce » Sun Sep 27, 2020 12:33 pm

SOLVED!
I was missing SDL2.dll inside the folder in which I have supermodel.exe.
Don't forget to also configure your Supermodel.ini:
Code: Select all
ForceFeedback = 1
InputSystem = xinput
XInputConstForceThreshold = 10
XInputConstForceMax = 100
XInputVibrateMax = 100



Simply copied from C:\msys64\mingw64\bin into the root folder of the emulator (the same in which you have Supermodel.exe). ;)
BTW, thanks for you precious instructions Bart! 8-)
"Did you surfcast that fish?" - "Kinda... But... That wasn't a fish... It was a GNU!"
User avatar
zuppa_di_pesce
 
Posts: 120
Joined: Fri Jun 12, 2020 1:51 pm
Location: surfCASTING on a beach

Re: [SOLVED] Missing ForceFeedback in DualShock3 / Dualshock

Postby Trojan X » Wed Oct 07, 2020 2:56 am

Any one know how to get the rumble working on the Xbox PC pad? I'd love to know how to do this.
Trojan X
 
Posts: 166
Joined: Fri Oct 07, 2011 3:03 am

Next

Return to The Fitting Room

Who is online

Users browsing this forum: No registered users and 1 guest

cron