VOGONS


Old ForceFeedBack api (IFORCE/IFORCE2)

Topic actions

First post, by sonik

User metadata
Rank Newbie
Rank
Newbie

Creating this topic as a means to discuss old FFB api.

I want to create a wrapper for the IFORCE and IFORCE2 api and make it compatible with newer DINPUT devices.
But I don't have any iforce compatible device and I've never seen one.

I want to start with NFS:SE.
And as a bonus, NFS2:SE. This one is already a dinput game but it's not compatible with newer wheels. I even suspect that the original FFB implementation is buggy.

Video capture or explanation of how a game does it's ffb effects would help a lot.
Any info is welcome!

This is how NFS2:SE outputs to a ffb joystick
https://www.youtube.com/watch?v=EW0PKr6Bbf8
As can be seen at 0:45, when the car enters the tunnel, game pulls joystick to the left and does not look correct to me.

Reply 1 of 31, by original_meusli

User metadata
Rank Newbie
Rank
Newbie

I can confirm that NFS2:SE does not even see my CH Force FX Joystick as a force feedback device, so just works as a four axis input device. Shall I try it with a MS Sidewinder Force Feeback wheel/joystick?

Reply 2 of 31, by sonik

User metadata
Rank Newbie
Rank
Newbie

Yes, please.
See if it supports the sidewinder wheel.

Reply 3 of 31, by sonik

User metadata
Rank Newbie
Rank
Newbie

No idea where to post this...

https://github.com/sonik-br/DirectX-Wrappers/ … g/ff-gain-pre-1

I use a Sidewinder FFB 2 Joystick on windows 10. The native driver won't let me adjust the force gain. And some games have some very strong effects.
So I did this little experiment and it's working like a charm. I can finally play Comanche 4 with FFB and without the joystick dancing over the table.

Reply 4 of 31, by Pierre32

User metadata
Rank Oldbie
Rank
Oldbie

This seems interesting. Is there a handy list of IFORCE supported games and input devices anywhere?

Reply 6 of 31, by sonik

User metadata
Rank Newbie
Rank
Newbie

I've found this info from Immersion:

"Old Win95 applications written using the obsolete I-FORCE 1.x API (Need For Speed II, Air Warrior II, Rocket Jockey, Descent II, etc) can be made to work on any DirectX force feedback device using the Immersion DX iforce.dll. The Immersion DX5 iforce.dll translates I-FORCE 1.x API calls into DX DirectInput API calls. Simply replace the old I-FORCE 1.x iforce.dll with the new DX iforce.dll."

Looks like this "new" dll will do what I wanted to do. Convert iforce calls to direct input! Now I just need to find this new dll.

Reply 7 of 31, by Pierre32

User metadata
Rank Oldbie
Rank
Oldbie

Great info in both posts. Keen to hear how you go with the hunt for that dll.

Reply 8 of 31, by Stretch

User metadata
Rank Oldbie
Rank
Oldbie

The DX5 drivers are listed at the following link but the Internet Archive didn't let me download them CH Products: Tech Support

EDIT: Disregard, I found a listing of the driver on driversguide.com and there is no iforce dll in the DX5 driver.

Win 11 - Intel i7-1360p - 32 GB - Intel Iris Xe - Sound Blaster G8

Reply 9 of 31, by sonik

User metadata
Rank Newbie
Rank
Newbie

At least I've got the "source code and header" of the original iforce.dll.
This will help a lot if I go in the route of making a wrapper for it.

Reply 10 of 31, by Pierre32

User metadata
Rank Oldbie
Rank
Oldbie

Had a stab at looking for that DLL, and didn't have any luck. But I did find a lot of general info for the thread.

https://web.archive.org/web/20000229184203/ht … mersion.com:80/

force-feedback.com was a thing of theirs for a time (it seemed to showcase I-Force gear and software), but links will take you back to immersion.com

https://web.archive.org/web/19981212025025/ht … eedback.com:80/

They hosted their SDK in the developers area:

https://web.archive.org/web/20000815071843/ht … eloper/sdk.html

Dead links that might be of interest if you can find these EXEs:

Immersion Foundation Classes (including DLLs):
https://web.archive.org/web/20000815071843/ht … /IFC21setup.exe

Immersion Studio:
https://web.archive.org/web/20000815071843/ht … s/IS32setup.exe

They appear to have packaged a version of the Half-Life Western Mod to showcase the Logitech iFeel Mouse:

https://archive.org/details/wanted-1.6

Possibly interesting links here, including a PDF link to the DX5 & I-Force 2.0 programming guide:

https://github.com/tloimu/adapt-ffb-joy/issues/14

From the discussion below I found mention of "the CH ForceFX DirectX 5 driver from www.force-feedback.com"

https://groups.google.com/g/comp.sys.ibm.pc.g … m/c/mzUV3NSWoUQ

Some driver packs:

https://www.driverguide.com/driver/detail.php … driverid=137120
https://www.driverguide.com/driver/detail.php … driverid=137117
https://www.driverguide.com/driver/detail.php … driverid=137119
https://www.driverguide.com/driver/detail.php … driverid=638534

I have compiled all of this into a resource pack which I will add to if more is found: https://archive.org/details/Immersion_I-Force … ivers_resources

Reply 11 of 31, by B24Fox

User metadata
Rank Member
Rank
Member
sonik wrote on 2023-04-03, 13:52:
Creating this topic as a means to discuss old FFB api. […]
Show full quote

Creating this topic as a means to discuss old FFB api.

I want to create a wrapper for the IFORCE and IFORCE2 api and make it compatible with newer DINPUT devices.
But I don't have any iforce compatible device and I've never seen one.

I want to start with NFS:SE.
And as a bonus, NFS2:SE. This one is already a dinput game but it's not compatible with newer wheels. I even suspect that the original FFB implementation is buggy.

Video capture or explanation of how a game does it's ffb effects would help a lot.
Any info is welcome!

This is how NFS2:SE outputs to a ffb joystick
https://www.youtube.com/watch?v=EW0PKr6Bbf8
As can be seen at 0:45, when the car enters the tunnel, game pulls joystick to the left and does not look correct to me.

Hey! Congrats for this great project!

So as I previously stated here: Re: Force Feedback in NFS SE and NFS II SE? , I finally got the MS Sidewinder Force Feedback Wheel - Gameport Version.
And unlike the USB version, or the Logitech WingMan Formula Force wheel [E-UA2]; the FFB on this one DOES work with NFS2SE.

What I can see in your video, is pretty much spot on how this wheel also reacts in NFS2SE (except for the forward-backward movement, obviously 😜 . On a wheel, those are usually also routed to lateral motion).
When I steer in a direction; the FFB tries to pull opposite of that, just like in your video.

Tell me exactly what you need from me, and I'll try to provide 😀

Cheers!

Reply 12 of 31, by sonik

User metadata
Rank Newbie
Rank
Newbie

Pierre32, thanks for the links! All of great value!

B24Fox, for now I hit a wall on NFS2SE. I can't identify why it does not work with some devices. As there's an good "source port" I will put this on a low priority.
BTW NFSSE (the first game) have good force feedback? Any info you can provide from iforce1 games would be valuable.
Yesterday I tried running NFSSE and Descent2 on my win10 pc with no luck. I will need to get an old pc for this.

Reply 13 of 31, by B24Fox

User metadata
Rank Member
Rank
Member
sonik wrote on 2023-04-20, 13:12:

BTW NFSSE (the first game) have good force feedback? Any info you can provide from iforce1 games would be valuable.
Yesterday I tried running NFSSE and Descent2 on my win10 pc with no luck. I will need to get an old pc for this.

Sadly I can't get NFS1SE to start on my 98SE test rig, under any circumstance 🙁
I tried different versions/sources of the game, tried the windows executable, tried the DOS exec. , tried the DOS exec. in "MS-Dos mode"... even tried booting from a 98 startup disk, and the game just gives the same error (half the screen filled with text about codes and crap).
The furthest I got was with the windows exec. , and managed to see the Electronic Arts cinematic, and a short glimpse of the screen before the menu.
Even tried with a PCI video card, and it's all the same.

I'm also extremely curious to try this game out; as it's one of my fav. NFS titles.. But it might just not like the AthlonXP platform with the VIA KT266 chipset & 256MB DDR1, that I'm trying to run it on... 😕

I'm welcoming any suggestion at this point.

Reply 14 of 31, by darklocket1

User metadata
Rank Newbie
Rank
Newbie
B24Fox wrote on 2023-04-20, 22:01:
sonik wrote on 2023-04-20, 13:12:

Yesterday I tried running NFSSE and Descent2 on my win10 pc with no luck. I will need to get an old pc for this.

Sadly I can't get NFS1SE to start on my 98SE test rig, under any circumstance 🙁

I'm welcoming any suggestion at this point.

Here you go, I posted this especially for you

My how to get NFS SE windows version working on Windows 10 using VMware
My how to for setting up NSF SE windows version in a windows computer for 2023

Currently my Windows 10 PC can run NFS SE to Payback, including Motor City and Need for Speed World. So, if you need more docs, let me know and I can post.

Maybe we can race some time? Ive never been able to play a multiple player race with NFS SE, nor NFS SE II.

Reply 15 of 31, by B24Fox

User metadata
Rank Member
Rank
Member

Thank you @darklocket1 !
But the thing is that I needed it to run specifically on my retro testing rig, in order to test NFS1's native compatibility with the Gameport version of the Microsoft Sidewinder Force Feedback Wheel.

Another retro PC build (for a friend) should be ready soon.. based on the K6/2+ CPU this time... But still with a VIA chipset (MVP3).
I really hope that on it, NFS1 will start on it's own.
We will see...

Reply 16 of 31, by sonik

User metadata
Rank Newbie
Rank
Newbie

Pierre32, I've got some files that you might want to host on the archive page:

IFSSetup.exe - Immersion i-force studio 2.0 - uses IFORCE2.dll
IS32setup.exe - Immersion Studio 3.2.0 - uses IFC21.dll

I'm still looking for the "DX iforce.dll" .

Reply 18 of 31, by cyberluke

User metadata
Rank Member
Rank
Member

It is there, but copying to NFS II SE directory is not enough. Can you look at it, please?

Reply 19 of 31, by sonik

User metadata
Rank Newbie
Rank
Newbie
cyberluke wrote on 2024-03-19, 20:01:

It is there, but copying to NFS II SE directory is not enough. Can you look at it, please?

I have this file too.
I need to try some of the dlls with older games like the first NFS but I can't run it on win 11. Need to grab an older pc.

I believe that NFS II SE does work natively with my SideWinder ForceFeedback 2 joystick. So the game must use DINPUT, or it uses some iforce wrapper.