Difference between revisions of "How to Use Game Controllers"
From MorphOS Library
|Line 44:||Line 44:|
Latest revision as of 18:44, 15 August 2018
About the Game Controller Support
MorphOS offers two different interfaces for game controllers: newer sensors.library and older lowlevel.library for the legacy support. Programs supporting sensors.library are still quite rare, but it is planned to be the only API for the controllers, and lowlevel.library would only be a wrapper for it.
MorphOS supports standard HID compatible controllers, which don't require any extra commands to be used in the communication, but also Xbox 360 wired and wireless pads (using a PC USB adapter).
Using Multiple USB Game Controllers with lowlevel.library
If you connect several joysticks to a MorphOS machine, they all get assigned to the port 1 of lowlevel.library and will control the same player in games. You need to change lowlevel.library emulation settings in the USB preferences in MorphOS to get the joysticks to different ports for multiplayer gaming. Unfortunately there isn't any single switch for it and you have to change the port setting in several different places.
In the USB settings, select your controller from the Devices list and click the Settings button.
Controller is assigned to the port 1 by default in the "LowLevel Library Joypad emulation" section.
To change it to a different port select "Don't touch" option for the port 1 and "Merge with USB" for some other port. You may also change the Rumble Port if needed. We'll use port 2 in this example.
Click to the Action tab next. Here you have to define all actions of all directions and buttons to be sent to the wanted port too. Select "X axis" from the "Usage items" list, and then go through all the items in the lower list and change their port setting from the right side.
Do the same for the "Y axis" too.
And for the buttons too. Some controllers have the buttons on the same "Usage items" list with the axes settings, but with some controllers you may have to search them from the different item in the "Reports and collections" list.
Click the Save button and you have the controller configured to a different port!
You can now configure games or programs to use different controllers for different players. For example the Wings Battlefield game has an "Assign Controls" option which just reads any input from any lowlevel.library port automatically, and you can use up to four separate controllers with it.
UAE on the other hand is configured from a text based configuration file. You can assign any of the four lowlevel.library ports from the MorphOS side (joy<n>) to any of the emulated Amiga ports (joyport<n>).
User reported compatibility lists can be found here: Hardware Compatibility