How to Use Game Controllers
From MorphOS Library
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>).
Game Controllers Reported to Work
- Speedlink Competition Pro USB
- Thrustmaster 360 Modena Pro Racing Wheel (needs some setup for the ranges from the Poseidon prefs)
- Sony Dualshock 4 (PS4)
- Xbox 360 wired and wireless pads (using a PC USB adapter)
Game Controllers Which Don't Work
- PS3 controllers (they need some non-standard initializing command, but may get the support later)