aboutsummaryrefslogtreecommitdiff
path: root/config.py
blob: 6e135122519abe04a6e9a7cdbf8f5e64e6f3ae18 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
# File: config.py
# Package: pyjstest
# Usage: Add new colors, and gamepad configs here. See documented examples.

import sdl2.ext
colors = {
   "BKGD": sdl2.ext.Color(220, 220, 220),
   "RED": sdl2.ext.Color(255, 0,     0),
   "YELLOW": sdl2.ext.Color(255, 255,   0),
   "GREEN": sdl2.ext.Color(0,   255,   0),
   "BLUE": sdl2.ext.Color(50,   50,   255),
   "GRAY": sdl2.ext.Color(180, 180, 180),
   "DARK_RED": sdl2.ext.Color(180, 0,     0),
   "DARK_YELLOW": sdl2.ext.Color(180, 180,   0),
   "DARK_GREEN": sdl2.ext.Color(0,   180,   0),
   "DARK_BLUE": sdl2.ext.Color(0,   0,   100),
   "DARK_GRAY": sdl2.ext.Color(100, 100, 100)
}

CONFIG = {}
CONFIG['SNES gamepad'] = {
   "aliases": ["2Axes 11Keys Game Pad","usb gamepad"],
   "window": (300, 180),
   "buttons": [
      # color_on, color_off, x, y, size, button_id
      ["BLUE", "DARK_BLUE", 220,80, 20, 0],
      ["RED", "DARK_RED", 240,100, 20, 1],
      ["YELLOW", "DARK_YELLOW", 220,120, 20, 2],
      ["GREEN", "DARK_GREEN", 200,100, 20, 3],
      ["GRAY", "DARK_GRAY", 220, 40, 20, 5], # R bumper
      ["GRAY", "DARK_GRAY", 60, 40, 20, 4], # L bumper
      ["GRAY", "DARK_GRAY", 120, 105, 20, 8], # Select
      ["GRAY", "DARK_GRAY", 160, 105, 20, 9] # Start
   ],
   "dpads": [
      # color_on, color_off, x,y, size, axis, direction
      ["GRAY", "DARK_GRAY", 60, 80, 20, 1, "negative"],
      ["GRAY", "DARK_GRAY", 60, 120, 20, 1, "positive"],
      ["GRAY", "DARK_GRAY", 40, 100, 20, 0, "negative"],
      ["GRAY", "DARK_GRAY", 80, 100, 20, 0, "positive"]
   ],
   "dpad_axes": {
      "min":     [-32768, -32768],
      "mid_min": [-500,     -500],
      "mid_max": [500,       500],
      "max":     [32767,   32767]
   }
}

# This is for the Gamestop Xbox style controller
CONFIG["Xbox controller"] = {
   "aliases": ["PDP Xbox 360 Controller","PDP Xbox 360 Controller","Xbox 360 Controller"],
   "window": (420, 240),
   "buttons": [
      # color_on, color_off, x, y, size, button_id
      ["GREEN", "DARK_GREEN", 340,160, 20, 0],
      ["RED", "DARK_RED", 360,140, 20, 1],
      ["BLUE", "DARK_BLUE", 320,140, 20, 2],
      ["YELLOW", "DARK_YELLOW", 340,120, 20, 3],
      ["GRAY", "DARK_GRAY", 60, 80, 20, 4], # L bumper
      ["GRAY", "DARK_GRAY", 340, 80, 20, 5], # R bumper
      ["GRAY", "DARK_GRAY", 140, 60, 20, 6], # Select
      ["GRAY", "DARK_GRAY", 200, 75, 20, 8], # Xbox
      ["GRAY", "DARK_GRAY", 260, 60, 20, 7], # Start
      # Do not use hese here, because they are associated with specific analog sticks.
      #["GRAY", "DARK_GRAY", 60, 140, 20, 9], # left analog
      #["GRAY", "DARK_GRAY", 260, 160, 20, 10], # right analog
   ],
   # Use these if you want to use an analog stick as a mere dpad (up, down, left, right)
   "dpads": [
      # color_on, color_off, x,y, size, axis, direction
      #["GRAY", "DARK_GRAY", 60, 120, 20, 1, "negative"],
      #["GRAY", "DARK_GRAY", 60, 160, 20, 1, "positive"],
      #["GRAY", "DARK_GRAY", 40, 140, 20, 0, "negative"],
      #["GRAY", "DARK_GRAY", 80, 140, 20, 0, "positive"],
      #["GRAY", "DARK_GRAY", 260, 140, 20, 4, "negative"],
      #["GRAY", "DARK_GRAY", 260, 180, 20, 4, "positive"],
      #["GRAY", "DARK_GRAY", 240, 160, 20, 3, "negative"],
      #["GRAY", "DARK_GRAY", 280, 160, 20, 3, "positive"],
      #["GRAY", "DARK_GRAY", 60, 40, 20, 2, "positive"], # L trigger
      #["GRAY", "DARK_GRAY", 340, 40, 20, 5, "positive"] # R trigger
   ],
   "hats": [
      # color_on, color_off, x,y, size, hat_id, up, right, down, left
      ["GRAY", "DARK_GRAY", 140, 160, 20, 0, 0, 1, 2, 4, 8] # binary value of the positions, off, up, right, down, left
   ],
   # Central location of all axes and their ranges. This is how you would calibrate the input.
   # index number of these values, is the axis number.
   "dpad_axes": {
      "min":     [-32768, -32768, -32768, -32768, -32768, -32768],
      "mid_min": [-3000,   -3000, -22000, -10000, -10000, -22000],
      "mid_max": [3000,     3000, -21999,  10000,  10000, -21999],
      "max":     [32767,   32767,  32767,  32767,  32767,  32767]
   },
   "analogs": [
      # color_on, color_off, center X, center Y, indicator_size, size, axes list, orientation list
      # and list of BUTTONs:
      #    color_on, color_off, relx, rely, size, button_id
      ["RED","DARK_GRAY", 70, 150, 4, 100, [0,1],[1,1],[
            # color_on, color_off, relx, rely, size, button_id
            ["YELLOW", "DARK_YELLOW", 4,4, 4, 9]
         ]
      ],
      ["RED","DARK_GRAY", 270, 150, 4, 100, [3,4],[1,1],[
            # color_on, color_off, relx, rely, size, button_id
            ["BLUE", "DARK_BLUE", 0,-4, 4, 10]
         ]
      ]
   ],
   "triggers": [
      # color_on, color_off, background, x1,y1, x2,y2, size, axis, direction
      # direction is not implemented.
      ["RED", "DARK_BLUE", "BKGD", 60,40, 79,40, 3, 2, 1],
      ["YELLOW", "DARK_BLUE", "GRAY", 350,40, 350,59, 3, 5, 1],
   ]
}
bgstack15