xan1242 / NFS-XtendedInput

NFS (Black Box, MW & newer) - XInput Plugin
MIT License
112 stars 7 forks source link

Link with Xinput 9.1.0 #3

Closed TorutheRedFox closed 2 years ago

TorutheRedFox commented 2 years ago

There's no reason to use Xinput 1.4 and reduce compatibility as 9.1.0 works fine.

xan1242 commented 2 years ago

Honestly, this is not an issue.

These are built with the Visual C++ 2022 toolchain which doesn't work on the platforms XInput 9.1.0 targets anyway (WinXP, Vista, 7). It makes 0 sense to link against such an old library and use new build targets.

If you want support for those, you can always build them with v140_xp toolchain and link it with 9.1.0 then (which I am unable to do currently). The code automatically switches to it anyway.

TorutheRedFox commented 2 years ago

VC++ 2022 works fine on Windows 7, although VS2022 itself isn't supported on 7 anymore (although it still runs, but it shows a warning that this is the case)

don't think it does on Vista though (and definitely not XP)

xan1242 commented 2 years ago

Unless people really need XP/Vista/7 builds, I won't make them for now.

I am aware that people exist who still run 7, yes, so as I'll say it again, if they really really need this plugin with old XInput for whatever reason, I'll spin up a machine for older builds.

Until then, they can build it themselves. The code is already there.

Right now this isn't something that I can focus on and it is a niche within a niche anyways.

I will take this into consideration if it affects Wine users. It is something a bit more important to focus on than users of old Windows.

TorutheRedFox commented 2 years ago

apparently Xinput1_4.dll has dependency issues in WINE (some system API libraries it depends on don't work right or something like that)

WINE generally has better compatibility with older system libraries, so it's best to target the oldest one that works correctly for WINE (and older Windows, and even ReactOS compatibility once MW gets stable on there, as it's based on Server 2003) compatibility.

MechanicalPen commented 1 year ago

Anyone needing xinput_9_1_0.dll instead of xinput1_4.dll may download the release from my fork

xan1242 commented 1 year ago

Anyone needing xinput_9_1_0.dll instead of xinput1_4.dll may download the release from my fork

Why not chime in instead? I want to see how many Win7 and older users there actually are.

As I've said already, I'm open to making it available as long as there's people really needing it.

In any case, I'll add a Win7 config to the build and get some older build tools installed.

MechanicalPen commented 1 year ago

I needed it, I had Visual Studio 2019 already installed so I built it. If you want to do it I'll be happy not to have to keep the fork updated.

I don't think you have to do anything but edit targetver.h I downloaded the latest Windows SDK and it worked fine. unless maybe it served me old files because I was running Windows 7?