Oh no! Where's the JavaScript?Your Web browser does not have JavaScript enabled or does not support JavaScript. Please enable JavaScript on your Web browser to properly view this Web site, or upgrade to a Web browser that does support JavaScript; Firefox, Safari, Opera, Chrome or a version of Internet Explorer newer then version 6.

Iirc the lowlevel lib was designed for the Cd32. It can only read 7 buttons per port, it reads the hat or xy analog, but not both, and cannot read z-axis or rotation, Imo, if the lowlevel lib was expanded or redesigned, then joy configuration would not be such a pita.

Tested both of my controllers (the F710 and F310) on native installation and they seem to work with the class just fine while plugged in at the same time. Had bit of a trouble with the corded one on housted. It just didn't want to play along... at all...

Well I'd like it to be somewhat more mature than what it is now... I've barely changed a couple of lines from one existing Poseidon class to be frank... Well, I emptied most of the code away from one and did some MUI gui's

If it wasn't for my gcc 8 point something It would only take two lines altered to get some input from the controller... Now the bare minimum is 4 lines...

For this to be of any use the games would need a mechanism to get to the controller, I think I'll go the XInput API way and provide a simple library for four players.

Whenever a gamepad is inserted it tries to take one of location from the four provided. If there's no room then it won't be used (or somehow unused needs to be purged)

Game could then query for the controller (just gamepad for now) and allocate it to use. A call to get the controller state is also provided, very much the same as in XInput. No need to over complicate things.

For the rumble effects we need a couple of more lines of code. The interface to the gamepad is really, really simple. More simple than what I first thought. This is good for us as I'm pretty confident that we can cook something up!

I'm assuming that a full XInput API isn't wanted? We could make this what ever we want.

Dizzy: Ok Just tell me when you have something ready you want me to test.
Little off topic but in Triden I have tried to configure 2 pads using the hid interface to play 2 player games in Janus-uae. I configure everything to the right ports. That is 1 and 0 and also configure this in Janus-UAE.
What happen is that the trigger button works on both ports but for port 0 I can not controll or stear anything. For port 1 everything works good.
Any clue if this is triden or janus-uae fault? Is there any other way to test this?

If lets say Janus-UAE is going to use your class does it need to be compiled again or is it a matter of changing the Janus-UAE configuration file?

This class should really connect to some sort gamepad library of some sort. If I'd make this class expose a library interface then only xinput gamepads could be used by the library, but if this thing connects to some external gamepad API then everything that connects to that API can be used.

There is no interface yeat to get any output, but I'd imagine that a new compile of said software is needed in order to connect to that something, which we don't have.

EDIT:

Does the new class show gauges moving? Remove all previous xinput.classes if you have them in the class directory or they will fight on the ownership of the usb interface.

There's also some serial debug stuff going on the background, this will hinder the MUI performance as the code prints it's debug. Slowdown if more than one controller is checked in the settings window

If only xinput devices would work with the new library I don't have problem with that, but it should be compatible with lowlevel, or classic input.
I know the classic stuff is stupid to configure for multible controllers, but I guess it could be fine that only 1 controller is supported that always go for port 1 anyway.

I guess mapping classic with the new lib to different ports might be difficult?

I tried lot's of hid devices and it seams to always be problems unless you are only out for classic 2-3 button joystick and even with classic controllers it is sometimes not possible to configure the buttons and some controllers does not even take me to the config window. They are simply not recoginzed by the hid interface as a controller and it does not help to try to force the class.

All this said it is better to be fully compatilbe with one controller that is easy to find like the xbox controller than making some mess out of lot's not working and others half way working etc.

For my distro "AspireOS" I simply would put in the hardware page that xbox controllers is what is working and others not recommended.

I tried the new class. As you mentioned it is now no debug from the controller. Nothing happen pressing buttons or directions.
When I insert it in usb port it say play it again "controller"
Does that seam ok?

I tried the new class. As you mentioned it is now no debug from the controller. Nothing happen pressing buttons or directions.
When I insert it in usb port it say play it again "controller"
Does that seam ok?

Sounds about right, there is no automatic popup for the testing window, need to go there manually. There's two ways of opening the window: