watlers world wrote:can I just use DX,
or do I have to use DS?
You have to use DS. An offset without a segment doesn't mean anything.
watlers world wrote:ignored ds just put the 16bit real address in the dx
with the request structure created (but not set to anything )
I got
00000000
0000FFFF
0000FFFF
0000FFFF
nice to have somthing working
Since you didn't provide a specific segment, though, DS was random and you have no idea what you actually told the USB driver to do. The fact that AX returned 0 instead of some other value is a good sign, but doesn't necessarily tell you anything.
watlers world wrote:since most old uhci computers only have 1 or 2 ports
on those you only need to make the call support a few joysticks
Not true, Even if there is only a single port on the host, you can at least theoretically have more than 100 joysticks attached by using Hubs. The USB bus would run out of bandwidth if you actually had that many devices, though, so on a real system the practical limit is much less than that.
watlers world wrote:my usb joystick has 7 button inputs
AH is 8 bits right?
It is, but the BIOS spec only allows four of the bits to be used. You can't use the other four bits of the register, or any of the other registers either, or you will be incompatible with other programs and may cause them to crash.
watlers world wrote:how many VR suits do you have?
None. I'm just saying that if a NEW standard were developed, it should be flexible enough to allow for things like VR suits and two-way communications. I currently don't have any devices with force feedback, either, though would like to get one to test with.
watlers world wrote:and how many buttons does your average old used usb controller have?
I personally have two USB devices I use for testing: one joystick and one gamepad. The joystick has four axes: a regular handle (an X and a Y axis), you can twist the handle left and right (rotation around the Z axis), and a slider on the base. It also has a small 8-way hat-switch on the handle. There are a total of 7 buttons, 5 on the handle and 2 on the base.
The gamepad has three axes: you "rotate" the gamepad in the air left/right/forward/backward for the X & Y axes (there is some sort of "gravity sensor" inside the gamepad), and there is a slider. There is also an 8-way direction pad, and a total of 12 buttons. I think in general gamepads have more buttons than joyticks do.