GithubHelp home page GithubHelp logo

gamer-cndg / gamepad Goto Github PK

View Code? Open in Web Editor NEW

This project forked from elanthis/gamepad

0.0 2.0 0.0 203 KB

Windows and Linux library for gamepad (Xbox/Xbox360) input

License: MIT License

Makefile 3.19% C 96.81%

gamepad's Introduction

Gamepad Libary
==============

This is a simple library whose sole purpose is to provide an easy to
use and portable API for accessing the extremely popular and common
Xbox/Xbox360 gamepads.

Currently supported platforms are Windows and Linux.  OS X is planned.

Requirements
============

The header and source file can be dropped into a project's build.

On Windows, XInput must be linked in.

On Linux, libudev must be linked in.

Limitations
===========

The library only supports the functions which are compatible with
all OSes.  Primarily missing are:

- Headset/audio support (can only be supported on Windows)
- XBOX button support (the big button in the middle of the controller)
- LED control support
- Battery status support

Headsets are not supported in Linux via the Xbox controller, and the
big XBOX button and LED control are not supported via XInput on Windows.

OS X support has not yet been implemented, as I do not have an OS X
machine to develop or test on.

There are no plans to support POSIX-style OSes other than Linux and OS X.

Platform Issues
===============

On Linux, the LED turned on does not reflect correctly which device ID is
used by the library.  I have not yet figured out how to either query the
LED set or how to override the LED, and the xpad driver seems to assign
them quite arbitrarily.

Also on Linux, the library has no way to differentiate between gamepads
and other joystick devices.  The library will almost certainly not work
correctly with any device that isn't an XBox controller.

Todo / Roadmap
==============

- Correct LED enumeration on Linux.
- OS X support.
- Win32-only headset interaction API.
- non-Win32-only LED/XBOX-button support (maybe).
- Feature-detection routines.

gamepad's People

Contributors

gamer-cndg avatar seanmiddleditch avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.