VOGONS


First post, by Unregistered

User metadata

thanks for writing this great program!

I'm using the latest version 2.0.4 update1. This problem refers to Tyrian / Tyrian 2000

1. The app works well except for the joystick emulation. I have sidewinder gamepad and sidewinder 3D Pro. It works fine for gamepad, but if I plug in the 3D Pro (a 8-button joystick), the game freezed when started (everything well in level select, options etc, just hang when the actual game starts)

Any idea how to solve it?

2. Also there's a problem in joy3.map. When executing, this line has error

analog.4 = A.analog.T

When I change 'T' to 'Z', the problem solved. But I wonder is there any method to emulate a 8-button joystick?

Thanks

Reply 2 of 4, by psz

User metadata
Rank Newbie
Rank
Newbie

Dunno about 8-button, but I had a 6-button controller (came bundled with Super Street Fighter 2 Turbo for DOS).

Two fours == 8 buttons... If buttons 1 2 3 and 4 of controller 2 can be mapped as 5 6 7 and 8 on controller 1, it COULD work...

It all rests on the If part :->

Reply 3 of 4, by HunterZ

User metadata
Rank l33t++
Rank
l33t++

The PC joystick interface has signal lines for 4 analog axes and 4 on/off buttons (enough for two 2-button, 2-axis analog joysticks). The old 4-button joysticks (e.g. Gravis Gamepad) used to work by using both buttons of both joysticks, so you couldn't use two of them in 4-button mode.

Other joysticks (like the flight sticks with POV hats, 6-button joypads, Gravis gamepad pro, etc.) encode the extra controls in the analog lines (in fact I think the gamepad pro encodes most everything in the analog lines because you can daisy-chain lots of them together in GrIP mode supposedly)

I have no idea how sophisticated VDMSound's joystick emulation is; my guess is that it just does simple axis and button mapping. However, you _may_ be able to get the extra controls working with VDMSound in DOS games if you tell Windows that your joystick is only a 4-axis 4-button stick (this won't work for USB controllers though because they _have_ to use the vendor's drivers in order to function)