gc_controller.h 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. #include "quantum.h"
  2. typedef enum {
  3. SWITCH_Y = 0x01,
  4. SWITCH_B = 0x02,
  5. SWITCH_A = 0x04,
  6. SWITCH_X = 0x08,
  7. SWITCH_L = 0x10,
  8. SWITCH_R = 0x20,
  9. SWITCH_ZL = 0x40,
  10. SWITCH_ZR = 0x80,
  11. SWITCH_MINUS = 0x100,
  12. SWITCH_PLUS = 0x200,
  13. SWITCH_LCLICK = 0x400,
  14. SWITCH_RCLICK = 0x800,
  15. SWITCH_HOME = 0x1000,
  16. SWITCH_CAPTURE = 0x2000,
  17. } SwitchButtons_t;
  18. typedef enum {
  19. GAMECUBE_A = 0b0000000000000001,
  20. GAMECUBE_B = 0b0000000000000010,
  21. GAMECUBE_X = 0b0000000000000100,
  22. GAMECUBE_Y = 0b0000000000001000,
  23. GAMECUBE_START = 0b0000000000010000,
  24. GAMECUBE_LEFT = 0b0000000100000000,
  25. GAMECUBE_RIGHT = 0b0000001000000000,
  26. GAMECUBE_DOWN = 0b0000010000000000,
  27. GAMECUBE_UP = 0b0000100000000000,
  28. GAMECUBE_Z = 0b0001000000000000,
  29. GAMECUBE_R = 0b0010000000000000,
  30. GAMECUBE_L = 0b0100000000000000,
  31. } GamecubeButtons_t;
  32. #define HAT_TOP 0x00
  33. #define HAT_TOP_RIGHT 0x01
  34. #define HAT_RIGHT 0x02
  35. #define HAT_BOTTOM_RIGHT 0x03
  36. #define HAT_BOTTOM 0x04
  37. #define HAT_BOTTOM_LEFT 0x05
  38. #define HAT_LEFT 0x06
  39. #define HAT_TOP_LEFT 0x07
  40. #define HAT_CENTER 0x08
  41. #define STICK_MIN 0
  42. #define STICK_CENTER 128
  43. #define STICK_MAX 255