Another Joystick trouble thread with solution

Topic actions

  • This topic is locked. You cannot reply or edit posts.

First post, by Dominus

User metadata
Rank DOSBox Moderator
DOSBox Moderator

I found something strange happening with my two USB joysticks. One is a N64 controller with an USB adapter and the other a PSX controller with an USB adapter. Both work fine in Windows XP.
When both are connected to the PC and I start Dosbox, the console tells me that both joysticks are being used. Fine.
When I unplug the N64 one and then start Dosbox, the console does not report any joystick. Vice versa, keeping the N64 plugged in and unplugging the PSX one, Dosbox does find the N64 controller.

After some testing I finally found the solution:
In the Windows control panel open the gamecontroller control, and then click on the advance button. The window that opens asks which controller should be used for older programs.
The "preferred controller" setting probably says [none], choose the controller, click ok, exit the gamecontroller control and start Dosbox. It should now find your controller.
Possible cause of this: The first attached controller gets assigned "for older programs". When you plug in a new controller and then unplug the first one, no conroller is assigned anymore.
Weird but probably true.
This could be something for the FAQ, maybe anyone can make screenshots of those settings with an English Windows. My German one doesn't help much , I guess 😀

Reply 1 of 4, by Kaminari

User metadata
Rank Oldbie

The Prefered Device option has never worked for me.

I have a PSX pad (via a SmartJoy adapter) and a Saitek Cyborg. If both are connected, most games and emulators will detect the Cyborg as the primary controller, even though the PSX pad is selected as prefered device.

Reply 2 of 4, by wd

User metadata
Rank DOSBox Author
DOSBox Author

Went through the joystick init code of SDL, and they're using some
variable as joystick index that is always zero.
The svn of SDL has a fix for this actually since mid of 2006 (past their
1.2.11 stable release though). Maybe you could test if a SDL compile
of the newest 1.2 sources really fixes the problem (it should).

Reply 4 of 4, by Dominus

User metadata
Rank DOSBox Moderator
DOSBox Moderator

ok, works with SVN from January (compared old and new sdl.dll).
Gave me the initiative to get and compile the latest SDL stuff "my" apps need (_net, _mixer, _ttf) 😀

For people with Joystick troubles with Dosbox 0.70, look at USB joystick and grab the SDL.dll I attached to it. Maybe this will help you as well.