Difference between revisions of "How to Use Game Controllers"
From MorphOS Library
(4 intermediate revisions by the same user not shown) | |||
Line 3: | Line 3: | ||
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 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. | + | 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 == | == Using Multiple USB Game Controllers with lowlevel.library == | ||
+ | |||
+ | === USB Settings === | ||
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. | 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. | ||
Line 28: | Line 30: | ||
: [[File:Usb_joystick_6.png|400px]] | : [[File:Usb_joystick_6.png|400px]] | ||
− | Click the Save button and you have the controller configured to a different port! | + | Click the '''Save''' button and you have the controller configured to a different port! |
+ | |||
+ | |||
+ | === Program Settings === | ||
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. | 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. | ||
+ | : [[File:WingsBattlefield_Macmini.jpg|400px]] | ||
+ | : Wings Battlefield with four joysticks connected to a Mac mini computer | ||
+ | |||
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>). | 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>). | ||
Line 36: | Line 44: | ||
− | == | + | == Compatibility Lists == |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | User reported compatibility lists can be found here: [[Hardware Compatibility]] |
Latest revision as of 17:44, 15 August 2018
Contents
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
USB Settings
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!
Program Settings
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>).
Compatibility Lists
User reported compatibility lists can be found here: Hardware Compatibility