diff options
-rwxr-xr-x | HID Utilities Source/English.lproj/HID_cookie_strings.plist | 128 | ||||
-rwxr-xr-x | HID Utilities Source/English.lproj/HID_device_usage_strings.plist | 633 | ||||
-rwxr-xr-x | HID Utilities Source/English.lproj/HID_usage_strings.plist | 200 | ||||
-rwxr-xr-x | HID Utilities Source/HID Utilities Read Me.rtf | 331 | ||||
-rwxr-xr-x | HID Utilities Source/HID Utilities Slib.pbproj/project.pbxproj | 382 | ||||
-rw-r--r-- | HID_Utilities_Source/HIDLib.h (renamed from HID Utilities Source/HIDLib.h) | 0 | ||||
-rw-r--r-- | HID_Utilities_Source/HID_APIs.h (renamed from HID Utilities Source/HID_APIs.h) | 0 | ||||
-rw-r--r-- | HID_Utilities_Source/HID_CFM.c (renamed from HID Utilities Source/HID_CFM.c) | 0 | ||||
-rw-r--r-- | HID_Utilities_Source/HID_Config_Utilities.c (renamed from HID Utilities Source/HID_Config_Utilities.c) | 0 | ||||
-rw-r--r-- | HID_Utilities_Source/HID_Config_Utilities.h (renamed from HID Utilities Source/HID_Config_Utilities.h) | 0 | ||||
-rw-r--r-- | HID_Utilities_Source/HID_Error_Handler.c (renamed from HID Utilities Source/HID_Error_Handler.c) | 0 | ||||
-rw-r--r-- | HID_Utilities_Source/HID_Error_Handler.h (renamed from HID Utilities Source/HID_Error_Handler.h) | 0 | ||||
-rw-r--r-- | HID_Utilities_Source/HID_Name_Lookup.c (renamed from HID Utilities Source/HID_Name_Lookup.c) | 0 | ||||
-rw-r--r-- | HID_Utilities_Source/HID_Name_Lookup.h (renamed from HID Utilities Source/HID_Name_Lookup.h) | 0 | ||||
-rw-r--r-- | HID_Utilities_Source/HID_Queue_Utilities.c (renamed from HID Utilities Source/HID_Queue_Utilities.c) | 0 | ||||
-rw-r--r-- | HID_Utilities_Source/HID_Queue_Utilities.h (renamed from HID Utilities Source/HID_Queue_Utilities.h) | 0 | ||||
-rw-r--r-- | HID_Utilities_Source/HID_Transaction_Utilities.c (renamed from HID Utilities Source/HID_Transaction_Utilities.c) | 0 | ||||
-rw-r--r-- | HID_Utilities_Source/HID_Transaction_Utilities.h (renamed from HID Utilities Source/HID_Transaction_Utilities.h) | 0 | ||||
-rw-r--r-- | HID_Utilities_Source/HID_Utilities.c (renamed from HID Utilities Source/HID_Utilities.c) | 0 | ||||
-rw-r--r-- | HID_Utilities_Source/HID_Utilities.h (renamed from HID Utilities Source/HID_Utilities.h) | 0 | ||||
-rw-r--r-- | HID_Utilities_Source/HID_Utilities_CFM.h (renamed from HID Utilities Source/HID_Utilities_CFM.h) | 0 | ||||
-rw-r--r-- | HID_Utilities_Source/HID_Utilities_External.h (renamed from HID Utilities Source/HID_Utilities_External.h) | 0 | ||||
-rw-r--r-- | HID_Utilities_Source/HID_Utilities_Internal.h (renamed from HID Utilities Source/HID_Utilities_Internal.h) | 0 | ||||
-rw-r--r-- | HID_Utilities_Source/IOHIDPowerUsage.h (renamed from HID Utilities Source/IOHIDPowerUsage.h) | 0 | ||||
-rw-r--r-- | HID_Utilities_Source/ImmrHIDUtilAddOn.c (renamed from HID Utilities Source/ImmrHIDUtilAddOn.c) | 0 | ||||
-rw-r--r-- | HID_Utilities_Source/ImmrHIDUtilAddOn.h (renamed from HID Utilities Source/ImmrHIDUtilAddOn.h) | 0 | ||||
-rw-r--r-- | HID_Utilities_Source/Makefile.am | 29 | ||||
-rw-r--r-- | HID_Utilities_Source/PID.h (renamed from HID Utilities Source/PID.h) | 0 | ||||
-rw-r--r-- | Makefile | 38 | ||||
-rw-r--r-- | Makefile.am | 39 | ||||
-rwxr-xr-x | autogen.sh | 16 | ||||
-rw-r--r-- | configure.ac | 89 |
32 files changed, 173 insertions, 1712 deletions
diff --git a/HID Utilities Source/English.lproj/HID_cookie_strings.plist b/HID Utilities Source/English.lproj/HID_cookie_strings.plist deleted file mode 100755 index ad0568d..0000000 --- a/HID Utilities Source/English.lproj/HID_cookie_strings.plist +++ /dev/null @@ -1,128 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE plist SYSTEM "file://localhost/System/Library/DTDs/PropertyList.dtd"> -<plist version="0.9"> -<dict> - <key>1118</key> - <dict> - <key>Name</key> <string>Microsoft</string> - <key>27</key> - <dict> - <key>Name</key> <string>SideWinder FFB 2 Joystick</string> - <key>27</key> <string>Button 1 [Trigger]</string> - <key>28</key> <string>Button 2</string> - <key>29</key> <string>Button 3</string> - <key>30</key> <string>Button 4</string> - <key>31</key> <string>Button 5</string> - <key>32</key> <string>Button 6</string> - <key>33</key> <string>Button 7</string> - <key>34</key> <string>Button 8</string> - <key>89</key> <string>X-Axis</string> - <key>90</key> <string>Y-Axis</string> - <key>91</key> <string>Rz-Axis</string> - <key>92</key> <string>Throttle</string> - <key>93</key> <string>Hat Switch</string> - </dict> - </dict> - <key>1133</key> - <dict> - <key>Name</key> <string>Logitech</string> - <key>49797</key> - <dict> - <key>Name</key> <string>WingMan Strike Force 3D</string> - <key>5</key> <string>Button 1 [Trigger]</string> - <key>6</key> <string>Button 2</string> - <key>7</key> <string>Button 3</string> - <key>8</key> <string>Button 4</string> - <key>9</key> <string>Button 5</string> - <key>10</key> <string>Button 6</string> - <key>11</key> <string>Button 7</string> - <key>16</key> <string>Hat Switch 2</string> - <key>24</key> <string>X-Axis</string> - <key>25</key> <string>Y-Axis</string> - <key>26</key> <string>Hat Switch 1</string> - <key>27</key> <string>Rz-Axis</string> - <key>28</key> <string>Throttle</string> - <key>29</key> <string>Button 9</string> - <key>30</key> <string>Button 8</string> - </dict> - </dict> - <key>1635</key> - <dict> - <key>Name</key> <string>Macsense</string> - <key>38916</key> - <dict> - <key>Name</key> <string>FunPad F-107</string> - <key>3</key> <string>Button 1</string> - <key>4</key> <string>Button 2</string> - <key>5</key> <string>Button 3</string> - <key>6</key> <string>Button 4</string> - <key>7</key> <string>L1 Trigger</string> - <key>8</key> <string>R1 Trigger</string> - <key>9</key> <string>L2 Trigger</string> - <key>10</key> <string>R2 Trigger</string> - <key>11</key> <string>Right Stick X-Axis</string> - <key>12</key> <string>Right Stick Y-Axis</string> - <key>13</key> <string>Left Stick X-Axis</string> - <key>14</key> <string>Left Stick Y-Axis</string> - <key>15</key> <string>Hat Switch</string> - </dict> - </dict> - <key>8738</key> - <dict> - <key>Name</key> <string>Macally</string> - <key>16400</key> - <dict> - <key>Name</key> <string>iShock</string> - <key>3</key> <string>D-Pad Up</string> - <key>4</key> <string>D-Pad Down</string> - <key>5</key> <string>D-Pad Left</string> - <key>6</key> <string>D-Pad Right</string> - <key>7</key> <string>Up Button</string> - <key>8</key> <string>Right Button</string> - <key>9</key> <string>Down Button</string> - <key>10</key> <string>Left Button</string> - <key>11</key> <string>C Button</string> - <key>12</key> <string>B Button [Select]</string> - <key>13</key> <string>A Button [Start]</string> - <key>14</key> <string>F Button</string> - <key>15</key> <string>R1 Trigger</string> - <key>16</key> <string>R2 Trigger</string> - <key>17</key> <string>L1 Trigger</string> - <key>18</key> <string>L2 Trigger</string> - <key>19</key> <string>Left Stick Button</string> - <key>20</key> <string>Right Stick Button</string> - <key>21</key> <string>D Button</string> - <key>22</key> <string>E Button</string> - <key>23</key> <string>Left Stick X-Axis</string> - <key>24</key> <string>Left Stick Y-Axis</string> - <key>25</key> <string>Right Stick X-Axis</string> - <key>26</key> <string>Right Stick Y-Axis</string> - </dict> - <key>16416</key> - <dict> - <key>Name</key> <string>iShock II FFB Game Controler</string> - <key>3</key> <string>D-Pad Up</string> - <key>4</key> <string>D-Pad Down</string> - <key>5</key> <string>D-Pad Left</string> - <key>6</key> <string>D-Pad Right</string> - <key>7</key> <string>A Button</string> - <key>8</key> <string>B Button</string> - <key>9</key> <string>C Button</string> - <key>10</key> <string>D Button</string> - <key>11</key> <string>Button 1</string> - <key>12</key> <string>Button 2 [Select]</string> - <key>13</key> <string>Button 3 [Start]</string> - <key>14</key> <string>R1 Button</string> - <key>15</key> <string>R2 Trigger</string> - <key>16</key> <string>L1 Trigger</string> - <key>17</key> <string>L2 Trigger</string> - <key>18</key> <string>Left Stick Button</string> - <key>19</key> <string>Right Stick Button</string> - <key>20</key> <string>Left Stick X-Axis</string> - <key>21</key> <string>Left Stick Y-Axis</string> - <key>22</key> <string>Right Stick X-Axis</string> - <key>23</key> <string>Right Stick Y-Axis</string> - </dict> - </dict> -</dict> -</plist> diff --git a/HID Utilities Source/English.lproj/HID_device_usage_strings.plist b/HID Utilities Source/English.lproj/HID_device_usage_strings.plist deleted file mode 100755 index f0b4375..0000000 --- a/HID Utilities Source/English.lproj/HID_device_usage_strings.plist +++ /dev/null @@ -1,633 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE plist SYSTEM "file://localhost/System/Library/DTDs/PropertyList.dtd"> -<plist version="0.9"> -<dict> - <key>1452</key> - <dict> - <key>516</key> - <dict> - <key>1:6</key> - <string>Keyboard</string> - <key>Name</key> - <string>Apple Extended USB Keyboard</string> - </dict> - <key>770</key> - <dict> - <key>1:1</key> - <string>Pointer</string> - <key>1:2</key> - <string>Mouse</string> - <key>1:48</key> - <string>X-Axis</string> - <key>1:49</key> - <string>Y-Axis</string> - <key>9:1</key> - <string>Button</string> - <key>Name</key> - <string>Apple Optical USB Mouse</string> - </dict> - <key>Name</key> - <string>Mitsumi Electric</string> - </dict> - <key>1118</key> - <dict> - <key>7</key> - <dict> - <key>1:48</key> - <string>X-Axis</string> - <key>1:49</key> - <string>Y-Axis</string> - <key>9:1</key> - <string>Button A</string> - <key>9:2</key> - <string>Button B</string> - <key>9:3</key> - <string>Button C</string> - <key>9:4</key> - <string>Button X</string> - <key>9:5</key> - <string>Button Y</string> - <key>9:6</key> - <string>Button Z</string> - <key>9:7</key> - <string>Left Trigger</string> - <key>9:8</key> - <string>Right Trigger</string> - <key>9:9</key> - <string>Secondary Option 2</string> - <key>9:10</key> - <string>Secondary Option 1</string> - <key>Name</key> - <string>SideWinder Game Pad USB</string> - </dict> - <key>26</key> - <dict> - <key>1:48</key> - <string>Wheel</string> - <key>1:49</key> - <string>Left Pedal [Brake]</string> - <key>1:50</key> - <string>Right Pedal [Gas]</string> - <key>9:1</key> - <string>Button A</string> - <key>9:2</key> - <string>Button B</string> - <key>9:3</key> - <string>Button C</string> - <key>9:4</key> - <string>Button X</string> - <key>9:5</key> - <string>Button Y</string> - <key>9:6</key> - <string>Button Z</string> - <key>9:7</key> - <string>Left Trigger</string> - <key>9:8</key> - <string>Right Trigger</string> - <key>Name</key> - <string>SideWinder Precision Racing Wheel USB v1.0</string> - </dict> - <key>27</key> - <dict> - <key>1:48</key> - <string>X-Axis</string> - <key>1:49</key> - <string>Y-Axis</string> - <key>1:53</key> - <string>Rz-Axis</string> - <key>1:54</key> - <string>Throttle</string> - <key>1:57</key> - <string>Hat Switch</string> - <key>9:1</key> - <string>Button 1 [Trigger]</string> - <key>9:2</key> - <string>Button 2</string> - <key>9:3</key> - <string>Button 3</string> - <key>9:4</key> - <string>Button 4</string> - <key>9:5</key> - <string>Button 5</string> - <key>9:6</key> - <string>Button 6</string> - <key>9:7</key> - <string>Button 7</string> - <key>9:8</key> - <string>Button 8</string> - <key>Name</key> - <string>SideWinder FFB 2 Joystick</string> - </dict> - <key>39</key> - <dict> - <key>1:48</key> - <string>X-Axis</string> - <key>1:49</key> - <string>Y-Axis</string> - <key>9:1</key> - <string>Button 1</string> - <key>9:2</key> - <string>Button 2</string> - <key>9:3</key> - <string>Button 3</string> - <key>9:4</key> - <string>Button 4</string> - <key>9:5</key> - <string>Button 5</string> - <key>9:6</key> - <string>Button 6</string> - <key>Name</key> - <string>SideWinder Plug and Play Game Pad</string> - </dict> - <key>56</key> - <dict> - <key>1:48</key> - <string>X-Axis</string> - <key>1:49</key> - <string>Y-Axis</string> - <key>1:53</key> - <string>Rz-Axis</string> - <key>1:54</key> - <string>Throttle</string> - <key>1:57</key> - <string>Hat Switch</string> - <key>9:1</key> - <string>Button 1 [Trigger]</string> - <key>9:2</key> - <string>Button 2</string> - <key>9:3</key> - <string>Button 3</string> - <key>9:4</key> - <string>Button 4</string> - <key>9:5</key> - <string>Button 5</string> - <key>9:6</key> - <string>Button 6</string> - <key>9:7</key> - <string>Button 7</string> - <key>9:8</key> - <string>Button 8</string> - <key>Name</key> - <string>SideWinder Precision 2 Joystick</string> - </dict> - <key>60</key> - <dict> - <key>1:48</key> - <string>X-Axis</string> - <key>1:49</key> - <string>Y-Axis</string> - <key>1:54</key> - <string>Throttle</string> - <key>9:1</key> - <string>Button 1 [Trigger]</string> - <key>9:2</key> - <string>Button 2</string> - <key>9:3</key> - <string>Button 3</string> - <key>9:4</key> - <string>Button 4</string> - <key>9:5</key> - <string>Button 5</string> - <key>9:6</key> - <string>Button 6</string> - <key>9:7</key> - <string>Button 7</string> - <key>9:8</key> - <string>Button 8</string> - <key>Name</key> - <string>SideWinder Joystick</string> - </dict> - <key>Name</key> - <string>Microsoft</string> - </dict> - <key>1133</key> - <dict> - <key>49200</key> - <dict> - <key>1:1</key> - <string>Pointer</string> - <key>1:2</key> - <string>Mouse</string> - <key>1:48</key> - <string>X-Axis</string> - <key>1:49</key> - <string>Y-Axis</string> - <key>1:56</key> - <string>Wheel</string> - <key>9:1</key> - <string>Left Button</string> - <key>9:2</key> - <string>Right Button</string> - <key>9:3</key> - <string>Middle Button</string> - <key>Name</key> - <string>iFeel Mouse</string> - </dict> - <key>49671</key> - <dict> - <key>1:48</key> - <string>X-Axis</string> - <key>1:49</key> - <string>Y-Axis</string> - <key>1:53</key> - <string>Rz-Axis</string> - <key>1:54</key> - <string>Throttle</string> - <key>1:57</key> - <string>Hat Switch</string> - <key>9:1</key> - <string>Button 1 [Trigger]</string> - <key>9:2</key> - <string>Button 2</string> - <key>9:3</key> - <string>Button 3</string> - <key>9:4</key> - <string>Button 4</string> - <key>9:5</key> - <string>Button 5</string> - <key>9:6</key> - <string>Button 6</string> - <key>9:7</key> - <string>Button 7</string> - <key>Name</key> - <string>WingMan Extreme Digital 3D</string> - </dict> - <key>49797</key> - <dict> - <key>1:48</key> - <string>X-Axis</string> - <key>1:49</key> - <string>Y-Axis</string> - <key>1:53</key> - <string>Rz-Axis</string> - <key>1:54</key> - <string>Throttle</string> - <key>1:57</key> - <string>Hat Switch 1</string> - <key>65280:2</key> - <string>Thumb Wheel</string> - <key>9:1</key> - <string>Button 1 [Trigger]</string> - <key>9:10</key> - <string>Hat Switch 2 - Up</string> - <key>9:11</key> - <string>Hat Switch 2 - Right</string> - <key>9:12</key> - <string>Hat Switch 2 - Down</string> - <key>9:13</key> - <string>Hat Switch 2 - Left</string> - <key>9:14</key> - <string>Hat Switch 2 - Up Right</string> - <key>9:15</key> - <string>Hat Switch 2 - Down Right</string> - <key>9:16</key> - <string>Hat Switch 2 - Down Left</string> - <key>9:17</key> - <string>Hat Switch 2 - Up Left</string> - <key>9:2</key> - <string>Button 2</string> - <key>9:3</key> - <string>Button 3</string> - <key>9:4</key> - <string>Button 4</string> - <key>9:5</key> - <string>Button 5</string> - <key>9:6</key> - <string>Button 6</string> - <key>9:7</key> - <string>Button 7</string> - <key>9:8</key> - <string>Button 8</string> - <key>9:9</key> - <string>Button 9</string> - <key>Name</key> - <string>WingMan Strike Force 3D</string> - </dict> - <key>49811</key> - <dict> - <key>1:48</key> - <string>Wheel</string> - <key>1:49</key> - <string>Pedals</string> - <key>9:1</key> - <string>Button 1</string> - <key>9:2</key> - <string>Button 2</string> - <key>9:3</key> - <string>Button 3</string> - <key>9:4</key> - <string>Button 4</string> - <key>9:5</key> - <string>Button 5</string> - <key>9:6</key> - <string>Button 6</string> - <key>65280:1</key> - <string>Left Pedal [Brake]</string> - <key>Name</key> - <string>WingMan Formula Force GP</string> - </dict> - <key>50433</key> - <dict> - <key>1:48</key> - <string>X-Axis</string> - <key>1:49</key> - <string>Y-Axis</string> - <key>1:56</key> - <string>Wheel</string> - <key>9:1</key> - <string>Left Button</string> - <key>9:2</key> - <string>Right Button</string> - <key>9:3</key> - <string>Middle Button</string> - <key>Name</key> - <string>Cordless Mouse</string> - </dict> - <key>Name</key> - <string>Logitech</string> - </dict> - <key>1293</key> - <dict> - <key>2051</key> - <dict> - <key>1:48</key> - <string>Left Stick X-Axis</string> - <key>1:49</key> - <string>Left Stick Y-Axis</string> - <key>1:50</key> - <string>Right Stick Y-Axis</string> - <key>1:53</key> - <string>Right Stick X-Axis</string> - <key>1:57</key> - <string>Direction Pad</string> - <key>9:1</key> - <string>Button 1</string> - <key>9:2</key> - <string>Button 2</string> - <key>9:3</key> - <string>Button 3</string> - <key>9:4</key> - <string>Button 4</string> - <key>9:5</key> - <string>Left Top Trigger</string> - <key>9:6</key> - <string>Left Bottom Trigger</string> - <key>9:7</key> - <string>Right Top Trigger</string> - <key>9:8</key> - <string>Right Bottom Trigger</string> - <key>9:9</key> - <string>ESC</string> - <key>9:10</key> - <string>Mouse</string> - <key>9:11</key> - <string>Eater</string> - <key>9:12</key> - <string>Right Stick Button</string> - <key>9:13</key> - <string>Left Stick Button</string> - <key>Name</key> - <string>Nostromo n45</string> - </dict> - <key>Name</key> - <string>Belkin</string> - </dict> - <key>1635</key> - <dict> - <key>38916</key> - <dict> - <key>1:48</key> - <string>Left Stick X-Axis</string> - <key>1:49</key> - <string>Left Stick Y-Axis</string> - <key>1:57</key> - <string>Hat Switch</string> - <key>2:186</key> - <string>Right Stick X-Axis</string> - <key>2:187</key> - <string>Right Stick Y-Axis</string> - <key>9:1</key> - <string>Button 1</string> - <key>9:2</key> - <string>Button 2</string> - <key>9:3</key> - <string>Button 3</string> - <key>9:4</key> - <string>Button 4</string> - <key>9:5</key> - <string>L1 Trigger</string> - <key>9:6</key> - <string>R1 Trigger</string> - <key>9:7</key> - <string>L2 Trigger</string> - <key>9:8</key> - <string>R2 Trigger</string> - <key>Name</key> - <string>FunPad F-107</string> - </dict> - <key>Name</key> - <string>Macsense</string> - </dict> - <key>8738</key> - <dict> - <key>16400</key> - <dict> - <key>9:1</key> - <string>D-Pad Up</string> - <key>9:2</key> - <string>D-Pad Down</string> - <key>9:3</key> - <string>D-Pad Left</string> - <key>9:4</key> - <string>D-Pad Right</string> - <key>9:5</key> - <string>Button 5 (Triangle)</string> - <key>9:6</key> - <string>Button 6 (Circle)</string> - <key>9:7</key> - <string>Button 7 (Cross)</string> - <key>9:8</key> - <string>Button 8 (Square)</string> - <key>9:9</key> - <string>Button C</string> - <key>9:10</key> - <string>Button B [Select]</string> - <key>9:11</key> - <string>Button A [Start]</string> - <key>9:12</key> - <string>Button F</string> - <key>9:13</key> - <string>R1 Trigger</string> - <key>9:14</key> - <string>R2 Trigger</string> - <key>9:15</key> - <string>L1 Trigger</string> - <key>9:16</key> - <string>L2 Trigger</string> - <key>9:17</key> - <string>Left Stick Button</string> - <key>9:18</key> - <string>Right Stick Button</string> - <key>9:19</key> - <string>D Button</string> - <key>9:20</key> - <string>E Button</string> - <key>1:48</key> - <string>Left Stick X-Axis</string> - <key>1:49</key> - <string>Left Stick Y-Axis</string> - <key>1:53</key> - <string>Right Stick X-Axis</string> - <key>1:54</key> - <string>Right Stick Y-Axis</string> - <key>Name</key> - <string>iShock</string> - </dict> - <key>16416</key> - <dict> - <key>1:1</key> - <string>Pointer</string> - <key>1:5</key> - <string>GamePad</string> - <key>1:48</key> - <string>Left Stick X-Axis</string> - <key>1:49</key> - <string>Left Stick Y-Axis</string> - <key>1:53</key> - <string>Right Stick X-Axis</string> - <key>1:54</key> - <string>Right Stick Y-Axis</string> - <key>9:1</key> - <string>D-Pad Up</string> - <key>9:10</key> - <string>Button 2 [Select]</string> - <key>9:11</key> - <string>Button 3 [Start]</string> - <key>9:12</key> - <string>R1 Button</string> - <key>9:13</key> - <string>R2 Trigger</string> - <key>9:14</key> - <string>L1 Trigger</string> - <key>9:15</key> - <string>L2 Trigger</string> - <key>9:16</key> - <string>Left Stick Button</string> - <key>9:17</key> - <string>Right Stick Button</string> - <key>9:2</key> - <string>D-Pad Down</string> - <key>9:3</key> - <string>D-Pad Left</string> - <key>9:4</key> - <string>D-Pad Right</string> - <key>9:5</key> - <string>A Button</string> - <key>9:6</key> - <string>B Button</string> - <key>9:7</key> - <string>C Button</string> - <key>9:8</key> - <string>D Button</string> - <key>9:9</key> - <string>Button 1</string> - <key>Name</key> - <string>iShock II FFB Game Controler</string> - </dict> - <key>Name</key> - <string>Macally</string> - </dict> - <key>1699</key> - <dict> - <key>65284</key> - <dict> - <key>1:48</key> - <string>Wheel</string> - <key>1:49</key> - <string>Left Pedal [Brake]</string> - <key>1:50</key> - <string>Right Pedal [Gas]</string> - <key>9:1</key> - <string>Top Left Thumb</string> - <key>9:2</key> - <string>Top Right Thumb</string> - <key>9:3</key> - <string>Bottom Left Thumb</string> - <key>9:4</key> - <string>Bottom Right Thumb</string> - <key>9:5</key> - <string>Right Horn</string> - <key>9:6</key> - <string>Left Horn</string> - <key>Name</key> - <string>R440 Force Feedback</string> - </dict> - <key>Name</key> - <string>Saitek</string> - </dict> - <key>1973</key> - <dict> - <key>39169</key> - <dict> - <key>1:48</key> - <string>X-Axis</string> - <key>1:49</key> - <string>Y-Axis</string> - <key>1:54</key> - <string>Throttle</string> - <key>1:57</key> - <string>Hat Switch</string> - <key>9:1</key> - <string>Button 1 [Trigger]</string> - <key>9:2</key> - <string>Button 2</string> - <key>9:3</key> - <string>Button 3</string> - <key>9:4</key> - <string>Button 4</string> - <key>Name</key> - <string>X8-33GU 2 IN 1 Joystick</string> - </dict> - <key>Name</key> - <string>Saitek</string> - </dict> - <key>1149</key> - <dict> - <key>12293</key> - <dict> - <key>1:48</key> - <string>X-Axis</string> - <key>1:49</key> - <string>Y-Axis</string> - <key>1:50</key> - <string>Throttle</string> - <key>1:57</key> - <string>Hat Switch</string> - <key>9:1</key> - <string>Button 1 [Trigger]</string> - <key>9:2</key> - <string>Button 2</string> - <key>9:3</key> - <string>Button 3</string> - <key>9:4</key> - <string>Button 4</string> - <key>9:5</key> - <string>Button 5</string> - <key>9:6</key> - <string>Button 6 [Thumb Wheel Button]</string> - <key>9:7</key> - <string>Button 7</string> - <key>9:8</key> - <string>Button 8</string> - <key>9:9</key> - <string>Button 9 [Thumb Wheel Left]</string> - <key>9:10</key> - <string>Button 10 [Thumb Wheel Right]</string> - <key>Name</key> - <string>Eliminator Precision Pro Joystick</string> - </dict> - <key>Name</key> - <string>Gravis</string> - </dict> -</dict> -</plist> diff --git a/HID Utilities Source/English.lproj/HID_usage_strings.plist b/HID Utilities Source/English.lproj/HID_usage_strings.plist deleted file mode 100755 index cd068bf..0000000 --- a/HID Utilities Source/English.lproj/HID_usage_strings.plist +++ /dev/null @@ -1,200 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE plist SYSTEM "file://localhost/System/Library/DTDs/PropertyList.dtd"> -<plist version="0.9"> -<dict> - <key>0x0001</key> - <dict> - <key>Name</key> <string>Generic Desktop</string> - <key>0x0001</key> <string>Pointer</string> - <key>0x0002</key> <string>Mouse</string> - <key>0x0004</key> <string>Joystick</string> - <key>0x0005</key> <string>GamePad</string> - <key>0x0006</key> <string>Keyboard</string> - <key>0x0007</key> <string>Keypad</string> - <key>0x0008</key> <string>MultiAxisController</string> - <key>0x0030</key> <string>X</string> - <key>0x0031</key> <string>Y</string> - <key>0x0032</key> <string>Z</string> - <key>0x0033</key> <string>Rx</string> - <key>0x0034</key> <string>Ry</string> - <key>0x0035</key> <string>Rz</string> - <key>0x0036</key> <string>Slider</string> - <key>0x0037</key> <string>Dial</string> - <key>0x0038</key> <string>Wheel</string> - <key>0x0039</key> <string>Hatswitch</string> - <key>0x003A</key> <string>Counted Buffer</string> - <key>0x003B</key> <string>Byte Count</string> - <key>0x003C</key> <string>Motion Wakeup</string> - <key>0x003D</key> <string>Start</string> - <key>0x003E</key> <string>Select</string> - <key>0x0040</key> <string>Vx</string> - <key>0x0041</key> <string>Vy</string> - <key>0x0042</key> <string>Vz</string> - <key>0x0043</key> <string>Vbrx</string> - <key>0x0044</key> <string>Vbry</string> - <key>0x0045</key> <string>Vbrz</string> - <key>0x0046</key> <string>Vno</string> - <key>0x0080</key> <string>System Control</string> - <key>0x0081</key> <string>System Power Down</string> - <key>0x0082</key> <string>System Sleep</string> - <key>0x0083</key> <string>System Wake Up</string> - <key>0x0084</key> <string>SystemContext Menu</string> - <key>0x0085</key> <string>System Main Menu</string> - <key>0x0086</key> <string>System App Menu</string> - <key>0x0087</key> <string>System Menu help</string> - <key>0x0088</key> <string>System Menu Exit</string> - <key>0x0089</key> <string>System Menu</string> - <key>0x008A</key> <string>System Menu Right</string> - <key>0x008B</key> <string>System Menu Left</string> - <key>0x008C</key> <string>System Menu Up</string> - <key>0x008D</key> <string>System Menu Down</string> - <key>0x0090</key> <string>DPad Up</string> - <key>0x0091</key> <string>DPad Down</string> - <key>0x0092</key> <string>DPad Right</string> - <key>0x0093</key> <string>DPad Left</string> - </dict> - <key>0x0002</key> - <dict> - <key>Name</key> <string>Simulation</string> - <key>0x0001</key> <string>Flight Simulation Device</string> - <key>0x0002</key> <string>Automobile Simulation Device</string> - <key>0x0003</key> <string>Tank Simulation Device</string> - <key>0x0004</key> <string>Spaceship Simulation Device</string> - <key>0x0005</key> <string>Submarine Simulation Device</string> - <key>0x0006</key> <string>Sailing Simulation Device</string> - <key>0x0007</key> <string>Motorcycle Simulation Device</string> - <key>0x0008</key> <string>Sports Simulation Device</string> - <key>0x0009</key> <string>Airplane Simulation Device</string> - <key>0x000A</key> <string>Helicopter Simulation Device</string> - <key>0x000B</key> <string>Magic Carpet Simulation Device</string> - <key>0x000C</key> <string>Bicycle Simulation Device</string> - <key>0x0020</key> <string>Flight Control Stick</string> - <key>0x0021</key> <string>Flight Stick</string> - <key>0x0022</key> <string>Cyclic Control</string> - <key>0x0023</key> <string>Cyclic Trim</string> - <key>0x0024</key> <string>Flight Yoke</string> - <key>0x0025</key> <string>Track Control</string> - <key>0x00B0</key> <string>Aileron</string> - <key>0x00B1</key> <string>Aileron Trim</string> - <key>0x00B2</key> <string>Anti Torque Control</string> - <key>0x00B5</key> <string>Collective Control</string> - <key>0x00B6</key> <string>Dive Brake</string> - <key>0x00B7</key> <string>Electronic Countermeasures</string> - <key>0x00B8</key> <string>Elevator</string> - <key>0x00B9</key> <string>Elevator Trim</string> - <key>0x00BA</key> <string>Rudder</string> - <key>0x00BB</key> <string>Throttle</string> - <key>0x00BC</key> <string>Flight Communications</string> - <key>0x00BD</key> <string>Flare Release</string> - <key>0x00BE</key> <string>Landing Gear</string> - <key>0x00BF</key> <string>Toe Brake</string> - <key>0x00C0</key> <string>Trigger</string> - <key>0x00C1</key> <string>Weapons Arm</string> - <key>0x00C2</key> <string>Weapons</string> - <key>0x00C3</key> <string>Wing Flaps</string> - <key>0x00C4</key> <string>Accelerator</string> - <key>0x00C5</key> <string>Brake</string> - <key>0x00C6</key> <string>Clutch</string> - <key>0x00C7</key> <string>Shifter</string> - <key>0x00C8</key> <string>Steering</string> - <key>0x00C9</key> <string>Turret Direction</string> - <key>0x00CA</key> <string>Barrel Elevation</string> - <key>0x00CB</key> <string>Dive Plane</string> - <key>0x00CC</key> <string>Ballast</string> - <key>0x00CD</key> <string>Bicycle Crank</string> - <key>0x00CE</key> <string>Handle Bars</string> - <key>0x00CF</key> <string>Front Brake</string> - <key>0x00D0</key> <string>Rear Brake</string> - </dict> - <key>0x0003</key> - <dict> - <key>Name</key> <string>Virtual Reality</string> - <key>0x0001</key> <string>Belt</string> - <key>0x0002</key> <string>Body Suit</string> - <key>0x0003</key> <string>Flexor</string> - <key>0x0004</key> <string>Glove</string> - <key>0x0005</key> <string>Head Tracker</string> - <key>0x0006</key> <string>Head Mounted Display</string> - <key>0x0007</key> <string>Hand Tracker</string> - <key>0x0008</key> <string>Oculometer</string> - <key>0x0009</key> <string>Vest</string> - <key>0x000A</key> <string>Animatronic Device</string> - <key>0x0020</key> <string>Stereo Enable</string> - <key>0x0021</key> <string>Display Enable</string> - </dict> - <key>0x0004</key> - <dict> - <key>Name</key> <string>Sport</string> - <key>0x0001</key> <string>Baseball Bat</string> - <key>0x0002</key> <string>Golf Club</string> - <key>0x0003</key> <string>Rowing Machine</string> - <key>0x0004</key> <string>Treadmill</string> - - <key>0x0030</key> <string>Oar</string> - <key>0x0031</key> <string>Slope</string> - <key>0x0032</key> <string>Rate</string> - <key>0x0033</key> <string>Stick Speed</string> - <key>0x0034</key> <string>Stick Face Angle</string> - <key>0x0035</key> <string>Stick Heel Or Toe</string> - <key>0x0036</key> <string>Stick Follow Through</string> - <key>0x0037</key> <string>Stick Tempo</string> - <key>0x0038</key> <string>Stick Type</string> - <key>0x0039</key> <string>Stick Height</string> - - <key>0x0050</key> <string>Putter</string> - <key>0x0051</key> <string>1 Iron</string> - <key>0x0052</key> <string>2 Iron</string> - <key>0x0053</key> <string>3 Iron</string> - <key>0x0054</key> <string>4 Iron</string> - <key>0x0055</key> <string>5 Iron</string> - <key>0x0056</key> <string>6 Iron</string> - <key>0x0057</key> <string>7 Iron</string> - <key>0x0058</key> <string>8 Iron</string> - <key>0x0059</key> <string>9 Iron</string> - <key>0x005A</key> <string>10 Iron</string> - <key>0x005B</key> <string>11 Iron</string> - <key>0x005C</key> <string>Sand Wedge</string> - <key>0x005D</key> <string>Loft Wedge</string> - <key>0x005E</key> <string>Power Wedge</string> - <key>0x005F</key> <string>1 Wood</string> - <key>0x0060</key> <string>3 Wood</string> - <key>0x0061</key> <string>5 Wood</string> - <key>0x0062</key> <string>7 Wood</string> - <key>0x0063</key> <string>9 Wood</string> - </dict> - <key>0x0005</key> - <dict> - <key>Name</key> <string>Game</string> - <key>0x0001</key> <string>3D Game Controller</string> - <key>0x0002</key> <string>Pinball Device</string> - <key>0x0003</key> <string>Gun</string> - - <key>0x0020</key> <string>Point of View</string> - <key>0x0021</key> <string>Turn Right Or Left</string> - <key>0x0022</key> <string>Pitch Up Or Down</string> - <key>0x0023</key> <string>Roll Right Or Left</string> - <key>0x0024</key> <string>Move Right Or Left</string> - <key>0x0025</key> <string>Move Forward Or Backward</string> - <key>0x0026</key> <string>Move Up Or Down</string> - <key>0x0027</key> <string>Lean Right Or Left</string> - <key>0x0029</key> <string>Lean Forward Or Backward</string> - <key>0x0029</key> <string>Height Of POV</string> - <key>0x002A</key> <string>Flipper</string> - <key>0x002B</key> <string>Secondary Flipper</string> - <key>0x002C</key> <string>Bump</string> - <key>0x002D</key> <string>New Game</string> - <key>0x002E</key> <string>Shoot Ball</string> - <key>0x002F</key> <string>Player</string> - - <key>0x0030</key> <string>Gun Bolt</string> - <key>0x0031</key> <string>Gun Clip</string> - <key>0x0032</key> <string>Gun</string> - <key>0x0033</key> <string>Gun Single Shot</string> - <key>0x0034</key> <string>Gun Burst</string> - <key>0x0035</key> <string>Gun Automatic</string> - <key>0x0036</key> <string>Gun Safety</string> - <key>0x0037</key> <string>Gamepad Fire Or Jump</string> - <key>0x0039</key> <string>Gamepad Trigger</string> - </dict> -</dict> -</plist> diff --git a/HID Utilities Source/HID Utilities Read Me.rtf b/HID Utilities Source/HID Utilities Read Me.rtf deleted file mode 100755 index 022748c..0000000 --- a/HID Utilities Source/HID Utilities Read Me.rtf +++ /dev/null @@ -1,331 +0,0 @@ -{\rtf1\mac\ansicpg10000\cocoartf102 -{\fonttbl\f0\fswiss\fcharset77 Helvetica;} -{\colortbl;\red255\green255\blue255;} -\vieww17000\viewh11120\viewkind0 -\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural - -\f0\fs22 \cf0 HID Utilities Source\ -Human Interface Device Manager Utility Functions\ -\ -Version 3.7 28 Oct 2K2\ - General cleanup for web posting.\ -\ -Version 3.6 23 Oct 2K2\ - Added new API's: HIDSetElementValue, HIDSetQueueCallback, HIDGetReport, HIDSetReport & HIDPrintElement,\ - Note: <IOHIDPowerUsage.h> & <PID.h> have been incorporated into <IOKit/hid/IOHIDUsageTables.h>.\ -\ -Version 3.5 10 Aug 2K2\ - HIDConfigureAction now only checks kHIDElementTypeInput elements.\ - Changed some "for (x=0;x<n;x++) i[x] = 0;" code to use bzero instead.\ - Moved device & element finding code into its own routines: HIDFindActionDeviceAndElement & HIDFindSubElement.\ - The original HID utilities depended on the BSD FILE* implementation for HID[Save/Restore]ElementConfig and didn't work in CFM applications.\ - So two new routine (HIDSaveElementPref & HIDRestoreElementPref) were added that use the CFPreferences API's instead. \ -\ -Version 3.4 Added code to support hot plugging & un-plugging devices. Note to developers: It's very important to use the HIDIsValidDevice\ - and HIDIsValidElement API's to verify that cached device or element pointers are still valid before de-referencing them.\ - This validation code has been added to all HID Utilities AIP's that take a device or element pointer as a parameter.\ - Note also that this required that queueRunLoopSource and notification port fields be added to the device record. (see <HID_Utilities.h>)\ -\ -Version 3.3 Added output transaction support for UPS & FFB devices (see <HID_Transaction_Utilities.c> & <HID_Transaction_Utilities.h>).\ -\ -Version 3.2 Since 10.2 changed the cookie numbers (by adding a usage == -1element for arrays) a cookie agnostic method of getting\ - device and element names was needed. Plus the nested (device & element) switch statements hardcoding the strings.\ - So all the device, element & cookie strings have been moved out of the source file(s) and put into XML data files instead.\ - NOTE: all local (static) routines now begin with "hid_" instead of "HID".\ - All references to "Kernel/IOKit/hidsystem/" now (correctly) point to "IOKit/hid/" instead.\ -\ -Version 3.1: Added the basics of a element naming scheme. Right now it just supports one device (macally iShock) but as I get more \ - device info I can add other devices (feel free to add to the name lookup file and send me the results). Added bad device \ - and element chencking in config/save. Fixed one case of swapped usage page and usage variables. Fixed a few leaks \ - noted by a developer. Add a NULL check to top level element handler to prevent NULL deference also noted by developer. \ - Checked build with gcc3. Rebuilt bundle and static lib.\ -\ -Version 3.0: Major Change: Added CFM support.\ - Project now can be built in three different ways with the interface being straight C with Mac OS X type reliance, thus completely\ - suitable for CFM or MachO binary formats and Carbon, Cocoa, or command line interfaces.\ -\ - - Static Library: For use with Mac OS X MachO projects. The build product (in the build directory) can be static linked\ - into any exisiting Mac OS X MachO project. The project should include HID_Utilities_External.h only for declarations.\ -\ - - Source: This is just including the HID Utilities source files in the target project. Works as previous, but now all the \ - declarations needed are in the HID_Utilities_External.h header file.\ -\ - - Dynamic Library: Should only be used by CFM applications. There are some notes which MUST be followed. See the HID Explorer\ - or the HID Config Save samples for CW7 projects which show the actual use of the library. The dylib is housed in a bundle\ - which the CFM app finds at runtime and calls into. This bundle is included and the dylib project will automatically place\ - the actual dylib in the bundle (contents/MacOS/). NOTE: The path to this is an absolute path for the build product of the \ - project, you MUST modify this if you rebuild the dylib (which never be required). To do this select the prject name in the\ - Files tab and Get Info. Point the build product to the HID.bundle/contents/MacOS/ directory in the HID Utilities directory.\ - Then point the intermediates to the intermediates directory already in the build directory. This is required since the build\ - product path is absolute and can't be project relative (yes, a bug has been filed). Again, this is only if you wnat to rebuild\ - the dylib used for CFM applications. Also note, you must copy the HID.bundle into your application directory (if you are using\ - the method in the sample to find the bundle) for your CFM application to use it.\ - \ - Other Notes:\ - The interface is now completely Mac OS X type free. This means minor mods to your projects. See the element and device structures\ - for guidence on the types. For example cookies now should be void *'s. Fixed a couple bugs in allocating queues. CLean up error\ - checking to only dump DebugStrs if the source is used (vice the static or dynamic libraries).\ -\ -Version 2.0: Update. Fixed some 10.1 issues, notably spelling errors in constants and include differences. Fixed 10.0.x errors, notably \ - type errors in retrieving element info, negative value handling (see GetElementValue), queuing error, and other minor changes.\ - Major change in element list handling... Elements are now stored in a binary tree to mimic the tree sturcture of the \ - device. This allows hierarchial diplay and parsing (See HID Explorer sample). Additionally, some of the routine declarations \ - have chnaged to work with this tree structure, one can still get same list functionality by using GetNextDeviceElement routine \ - with kHIDElementTypeIO constant. Collections are now stored in tree, so users of these functions must understand if they are \ - looking at a valid IO element or a collection. Lastly, new parsing strings and two new headers are included to aid in decoding \ - PID and power device elements.\ -\ -Version 1.0: Initial release featuring functions to get HID device list, get devices and elements, poll for values, setup queues and get events, \ - handle configuration set up and saving/restoring of configurations.\ -\ -----\ -\ -This group of utilities is stand alone code to help developers work more easily with the HID Manager for Mac OS X with both MachO and CFM support. \ -It provides a high level abstract of the current HID interface that sacrifices slight flexibility in favor single function set up, device and element \ -retrieval, current value and event query, and configuration. This sample is the source code for the Utilities and does not provide a sample of the \ -utilization. There are other samples which provide complete working examples of a HID device explorer and a simple game implementation. More samples \ -will be forth coming shortly.\ -\ -This set of utilities is constantly evolving to both address any bugs and provide better support for developer requested features.\ -Any suggestions and/or bugs can be directed to the Apple bug reporter at:\ -<http://developer.apple.com/bugreporter/index.html>\ -\ -// ==================================\ -\ -// Device and Element Interfaces\ -\ -enum HIDElementTypeMask\ -\{\ - kHIDElementTypeInput = 1 << 1,\ - kHIDElementTypeOutput = 1 << 2,\ - kHIDElementTypeFeature = 1 << 3,\ - kHIDElementTypeCollection = 1 << 4,\ - kHIDElementTypeIO = kHIDElementTypeInput | kHIDElementTypeOutput | kHIDElementTypeFeature,\ - kHIDElementTypeAll = kHIDElementTypeIO | kHIDElementTypeCollection\ -\};\ -typedef enum HIDElementTypeMask HIDElementTypeMask;\ -\ -\ -struct recElement\ -\{\ - unsigned long type; // the type defined by IOHIDElementType in IOHIDKeys.h\ - long usagePage; // usage page from IOUSBHIDParser.h which defines general usage\ - long usage; // usage within above page from IOUSBHIDParser.h which defines specific usage\ - void * cookie; // unique value (within device of specific vendorID and productID) which identifies element, will NOT change\ - long min; // reported min value possible\ - long max; // reported max value possible\ - long scaledMin; // reported scaled min value possible\ - long scaledMax; // reported scaled max value possible\ - long size; // size in bits of data return from element\ - unsigned char relative; // are reports relative to last report (deltas)\ - unsigned char wrapping; // does element wrap around (one value higher than max is min)\ - unsigned char nonLinear; // are the values reported non-linear relative to element movement\ - unsigned char preferredState; // does element have a preferred state (such as a button)\ - unsigned char nullState; // does element have null state\ - long units; // units value is reported in (not used very often)\ - long unitExp; // exponent for units (also not used very often)\ - char name[256]; // name of element (not used often)\ -\ -// runtime variables\ - long minReport; // min returned value\ - long maxReport; // max returned value (calibrate call)\ - long userMin; // user set value to scale to (scale call)\ - long userMax; \ - \ - struct recElement * pPrevious; // previous element (NULL at list head)\ - struct recElement * pChild; // next child (only of collections)\ - struct recElement * pSibling; // next sibling (for elements and collections)\ - \ -\};\ -typedef struct recElement recElement;\ -typedef recElement* pRecElement;\ -\ -struct recDevice\ -\{\ - void * interface; // interface to device, NULL = no interface\ - void * queue; // device queue, NULL = no queue\ - char transport[256]; // device transport\ - long vendorID; // id for device vendor, unique across all devices\ - long productID; // id for particular product, unique across all of a vendors devices\ - long version; // version of product\ - char manufacturer[256]; // name of manufacturer\ - char product[256]; // name of product\ - char serial[256]; // serial number of specific product, can be assumed unique across specific product or specific vendor (not used often)\ - long locID; // long representing location in USB (or other I/O) chain which device is pluged into, can identify specific device on machine\ - long usage; // usage page from IOUSBHID Parser.h which defines general usage\ - long usagePage; // usage within above page from IOUSBHID Parser.h which defines specific usage\ - long totalElements; // number of total elements (should be total of all elements on device including collections) (calculated, not reported by device)\ - long features; // number of elements of type kIOHIDElementTypeFeature\ - long inputs; // number of elements of type kIOHIDElementTypeInput_Misc or kIOHIDElementTypeInput_Button or kIOHIDElementTypeInput_Axis or kIOHIDElementTypeInput_ScanCodes\ - long outputs; // number of elements of type kIOHIDElementTypeOutput\ - long collections; // number of elements of type kIOHIDElementTypeCollection\ - long axis; // number of axis (calculated, not reported by device)\ - long buttons; // number of buttons (calculated, not reported by device)\ - long hats; // number of hat switches (calculated, not reported by device)\ - long sliders; // number of sliders (calculated, not reported by device)\ - long dials; // number of dials (calculated, not reported by device)\ - long wheels; // number of wheels (calculated, not reported by device)\ - recElement* pListElements; // head of linked list of elements \ - struct recDevice* pNext; // next device\ -\};\ -typedef struct recDevice recDevice;\ -typedef recDevice* pRecDevice;\ -\ -// ==================================\ -\ -// builds list of device with elements (allocates memory and captures devices)\ -// list is allcoated internally within HID Utilites and can be accessed via accessor functions\ -// structures within list are considered flat and user accessable, butnot user modifiable\ -// can be called again to rebuild list to account for new devices (will do the right thing in case of disposing existing list)\ -unsigned char HIDBuildDeviceList (unsigned long usagePage, unsigned long usage);\ -\ -// release list built by above function\ -// MUST be called prior to application exit to properly release devices\ -// if not called (or app crashes) devices can be recovered by pluging into different location in USB chain\ -void HIDReleaseDeviceList (void);\ -\ -// does a device list exist\ -unsigned char HIDHaveDeviceList (void);\ -\ -// how many HID devices have been found\ -// returns 0 if no device list exist\ -unsigned long HIDCountDevices (void);\ -\ -// how many elements does a specific device have\ -// returns 0 if device is invalid or NULL\ -// uses mask of HIDElementTypeMask to restrict element found\ -// use kHIDElementTypeIO to get non-collection elements\ -unsigned long HIDCountDeviceElements (pRecDevice pDevice, HIDElementTypeMask typeMask);\ -\ -// get the first device in the device list\ -// returns NULL if no list exists\ -pRecDevice HIDGetFirstDevice (void);\ -\ -// get next device in list given current device as parameter\ -// returns NULL if end of list\ -pRecDevice HIDGetNextDevice (pRecDevice pDevice);\ -\ -// get the first element of device passed in as parameter\ -// returns NULL if no list exists or device does not exists or is NULL\ -// uses mask of HIDElementTypeMask to restrict element found\ -// use kHIDElementTypeIO to get previous HIDGetFirstDeviceElement functionality\ -pRecElement HIDGetFirstDeviceElement (pRecDevice pDevice, HIDElementTypeMask typeMask);\ -\ -// get next element of given device in list given current element as parameter\ -// will walk down each collection then to next element or collection (depthwise traverse)\ -// returns NULL if end of list\ -// uses mask of HIDElementTypeMask to restrict element found\ -// use kHIDElementTypeIO to get previous HIDGetNextDeviceElement functionality\ -pRecElement HIDGetNextDeviceElement (pRecElement pElement, HIDElementTypeMask typeMask);\ -\ -// get previous element of given device in list given current element as parameter\ -// this wlaks directly up the tree to the top element and does not search at each level\ -// returns NULL if beginning of list\ -// uses mask of HIDElementTypeMask to restrict element found\ -// use kHIDElementTypeIO to get non-collection elements\ -pRecElement HIDGetPreviousDeviceElement (pRecElement pElement, HIDElementTypeMask typeMask);\ -\ -// returns C string type name given a type enumeration passed in as parameter (see IOHIDKeys.h)\ -// returns empty string for invlid types\ -void HIDGetTypeName (unsigned long type, char * cstrName);\ -\ -// returns C string usage given usage page and usage passed in as parameters (see IOUSBHIDParser.h)\ -// returns usage page and usage values in string form for unknown values\ -void HIDGetUsageName (long valueUsagePage, long valueUsage, char * cstrName);\ -\ -// ==================================\ -\ -// Element Event Queue and Value Interfaces\ -\ -enum\ -\{\ - kDefaultUserMin = 0, // default user min and max used for scaling\ - kDefaultUserMax = 255\ -\};\ -\ -enum\ -\{\ - kDeviceQueueSize = 50 // this is wired kernel memory so should be set to as small as possible\ - // but should account for the maximum possible events in the queue\ - // USB updates will likely occur at 100 Hz so one must account for this rate of\ - // if states change quickly (updates are only posted on state changes)\ -\};\ -\ -// ==================================\ -\ -// queues specific element, performing any device queue set up required\ -unsigned long HIDQueueElement (pRecDevice pDevice, pRecElement pElement);\ -\ -// adds all elements to queue, performing any device queue set up required\ -unsigned long HIDQueueDevice (pRecDevice pDevice);\ -\ -// removes element for queue, if last element in queue will release queue and device\ -unsigned long HIDDequeueElement (pRecDevice pDevice, pRecElement pElement);\ -\ -// completely removes all elements from queue and releases queue and device\ -unsigned long HIDDequeueDevice (pRecDevice pDevice);\ -\ -// returns true if an event is avialable for the element and fills out *pHIDEvent structure, returns false otherwise\ -// pHIDEvent is a poiner to a IOHIDEventStruct, using void here for compatibility, users can cast a required\ -unsigned char HIDGetEvent (pRecDevice pDevice, void * pHIDEvent);\ -\ -// returns current value for element, creating device interface as required, polling element\ -// Note: this DOES NOT release the inteface so applications must properly release devices via ReleaseHIDDeviceList\ -long HIDGetElementValue (pRecDevice pDevice, pRecElement pElement);\ -\ -// returns calibrated value given raw value passed in\ -// calibrated value is equal to min and max values returned by HIDGetElementValue since device list built scaled to element reported min and max values\ -long HIDCalibrateValue (long value, pRecElement pElement);\ -\ -// returns scaled value given raw value passed in\ -// scaled value is equal to current value assumed to be in the range of element reported min and max values scaled to user min and max scaled values\ -long HIDScaleValue (long value, pRecElement pElement);\ -\ -// ==================================\ -\ -// Conguration and Save Interfaces\ -\ -enum\ -\{\ - kPercentMove = 10 // precent of overall range a element must move to register\ -\};\ -\ -struct recSaveHID\ -\{\ - long actionCookie;\ - // device\ - // need to add serial number when I have a test case\ - long vendorID;\ - long productID;\ - long locID;\ - long usage;\ - long usagePage;\ - // elements\ - long usagePageE;\ - long usageE;\ - void * cookie;\ -\};\ -typedef struct recSaveHID recSaveHID;\ -typedef recSaveHID * pRecSaveHID;\ -\ -// polls all devices and elements for a change greater than kPercentMove. Times out after given time\ -// returns true and pointer to device and element if found\ -// returns false and NULL for both parameters if not found\ -unsigned char HIDConfigureAction (pRecDevice * ppDevice, pRecElement * ppElement, float timeout);\ -\ -// take input records, save required info\ -// assume file is open and at correct position.\ -void HIDSaveElementConfig (FILE * fileRef, pRecDevice pDevice, pRecElement pElement, long actionCookie);\ -\ -// take file, read one record (assume file position is correct and file is open)\ -// search for matching device\ -// return pDevice, pElement and cookie for action\ -long HIDRestoreElementConfig (FILE * fileRef, pRecDevice * ppDevice, pRecElement * ppElement);\ -\ -----\ -\ -Requirements: Mac OS X, Project Builder (CodeWarrior 7 for sample CFM projects)\ -\ -We hope this helps people get up and running with HID Manager in a quick and painless manner.\ -\ -ggs}
\ No newline at end of file diff --git a/HID Utilities Source/HID Utilities Slib.pbproj/project.pbxproj b/HID Utilities Source/HID Utilities Slib.pbproj/project.pbxproj deleted file mode 100755 index 03c11c4..0000000 --- a/HID Utilities Source/HID Utilities Slib.pbproj/project.pbxproj +++ /dev/null @@ -1,382 +0,0 @@ -// !$*UTF8*$! -{ - archiveVersion = 1; - classes = { - }; - objectVersion = 38; - objects = { - 11019ECA0367675E0CCB177F = { - fileRef = F94745EF01B301760ACA2316; - isa = PBXBuildFile; - settings = { - }; - }; - 113C0C5F036745F00CCB177F = { - fileEncoding = 4; - isa = PBXFileReference; - path = HID_Transaction_Utilities.c; - refType = 4; - }; - 113C0C60036745F00CCB177F = { - fileRef = 113C0C5F036745F00CCB177F; - isa = PBXBuildFile; - settings = { - }; - }; - 11AB43E70369956C0CCB177F = { - isa = PBXFileReference; - path = "HID Utilities Read Me.rtf"; - refType = 4; - }; -//110 -//111 -//112 -//113 -//114 -//3A0 -//3A1 -//3A2 -//3A3 -//3A4 - 3A1E2F8308593DC100E32947 = { - fileEncoding = 4; - isa = PBXFileReference; - path = HID_APIs.h; - refType = 4; - }; - 3A1E2F8408593DC100E32947 = { - fileRef = 3A1E2F8308593DC100E32947; - isa = PBXBuildFile; - settings = { - }; - }; - 3A1E2F8508593DD700E32947 = { - fileEncoding = 4; - isa = PBXFileReference; - path = ImmrHIDUtilAddOn.h; - refType = 4; - }; - 3A1E2F8608593DD700E32947 = { - fileRef = 3A1E2F8508593DD700E32947; - isa = PBXBuildFile; - settings = { - }; - }; - 3A1E2F8708593DE400E32947 = { - fileEncoding = 4; - isa = PBXFileReference; - path = ImmrHIDUtilAddOn.c; - refType = 4; - }; - 3A1E2F8808593DE400E32947 = { - fileRef = 3A1E2F8708593DE400E32947; - isa = PBXBuildFile; - settings = { - }; - }; -//3A0 -//3A1 -//3A2 -//3A3 -//3A4 -//F60 -//F61 -//F62 -//F63 -//F64 - F65F9D7E01B4915C01CA2317 = { - children = ( - ); - isa = PBXGroup; - name = "Libraries and Frameworks"; - refType = 4; - }; -//F60 -//F61 -//F62 -//F63 -//F64 -//F90 -//F91 -//F92 -//F93 -//F94 - F94467BD024699CF0ACA2316 = { - fileEncoding = 4; - isa = PBXFileReference; - path = HID_Name_Lookup.c; - refType = 4; - }; - F94467BF024699CF0ACA2316 = { - fileRef = F94467BD024699CF0ACA2316; - isa = PBXBuildFile; - settings = { - }; - }; - F94467C302469A860ACA2316 = { - fileEncoding = 4; - isa = PBXFileReference; - path = HID_Name_Lookup.h; - refType = 4; - }; - F94467C402469A860ACA2316 = { - fileRef = F94467C302469A860ACA2316; - isa = PBXBuildFile; - settings = { - }; - }; - F94745C901B2DAC40ACA2316 = { - buildStyles = ( - F94745CB01B2DAC40ACA2316, - F94745CC01B2DAC40ACA2316, - ); - hasScannedForEncodings = 1; - isa = PBXProject; - mainGroup = F94745CA01B2DAC40ACA2316; - productRefGroup = F94745CF01B2DB060ACA2316; - projectDirPath = ""; - targets = ( - F94745D101B2DB060ACA2316, - ); - }; - F94745CA01B2DAC40ACA2316 = { - children = ( - 11AB43E70369956C0CCB177F, - F94745CE01B2DB060ACA2316, - F94745CD01B2DB060ACA2316, - F94745E201B2DB720ACA2316, - F65F9D7E01B4915C01CA2317, - F94745CF01B2DB060ACA2316, - ); - isa = PBXGroup; - refType = 4; - }; - F94745CB01B2DAC40ACA2316 = { - buildRules = ( - ); - buildSettings = { - COPY_PHASE_STRIP = NO; - }; - isa = PBXBuildStyle; - name = Development; - }; - F94745CC01B2DAC40ACA2316 = { - buildRules = ( - ); - buildSettings = { - COPY_PHASE_STRIP = YES; - }; - isa = PBXBuildStyle; - name = Deployment; - }; - F94745CD01B2DB060ACA2316 = { - children = ( - F94745EB01B2E50A0ACA2316, - F94467C302469A860ACA2316, - F94745F001B301760ACA2316, - ); - isa = PBXGroup; - name = "Internal Headers"; - refType = 4; - }; - F94745CE01B2DB060ACA2316 = { - children = ( - F94467BD024699CF0ACA2316, - F94745D601B2DB130ACA2316, - F94745F301B3062C0ACA2316, - F94745DA01B2DB130ACA2316, - 113C0C5F036745F00CCB177F, - F94745E601B2DB720ACA2316, - 3A1E2F8708593DE400E32947, - ); - isa = PBXGroup; - name = Source; - refType = 4; - }; - F94745CF01B2DB060ACA2316 = { - children = ( - F94745D001B2DB060ACA2316, - ); - isa = PBXGroup; - name = Products; - refType = 4; - }; - F94745D001B2DB060ACA2316 = { - isa = PBXLibraryReference; - path = libHIDUtilities.a; - refType = 3; - }; - F94745D101B2DB060ACA2316 = { - buildPhases = ( - F94745D201B2DB060ACA2316, - F94745D301B2DB060ACA2316, - F94745D401B2DB060ACA2316, - F94745D501B2DB060ACA2316, - ); - buildSettings = { - DEBUGGING_SYMBOLS = NO; - LIBRARY_STYLE = STATIC; - OPTIMIZATION_CFLAGS = "-O3"; - OTHER_LDFLAGS = ""; - OTHER_LIBTOOL_FLAGS = ""; - OTHER_REZFLAGS = ""; - PRECOMPILE_PREFIX_HEADER = YES; - PREFIX_HEADER = HIDLib.h; - PRODUCT_NAME = libHIDUtilities.a; - REZ_EXECUTABLE = YES; - SECTORDER_FLAGS = ""; - WARNING_CFLAGS = "-Wmost -Wno-four-char-constants -Wno-unknown-pragmas"; - }; - dependencies = ( - ); - isa = PBXLibraryTarget; - name = libHIDUtilities.a; - productName = libHIDUtilities.a; - productReference = F94745D001B2DB060ACA2316; - }; - F94745D201B2DB060ACA2316 = { - buildActionMask = 2147483647; - files = ( - F94745EC01B2E50A0ACA2316, - F94745F201B301760ACA2316, - F94467C402469A860ACA2316, - 11019ECA0367675E0CCB177F, - 3A1E2F8408593DC100E32947, - 3A1E2F8608593DD700E32947, - ); - isa = PBXHeadersBuildPhase; - runOnlyForDeploymentPostprocessing = 0; - }; - F94745D301B2DB060ACA2316 = { - buildActionMask = 2147483647; - files = ( - F94745DF01B2DB140ACA2316, - F94745E101B2DB140ACA2316, - F94745EA01B2DB720ACA2316, - F94745F401B3062C0ACA2316, - F94467BF024699CF0ACA2316, - 113C0C60036745F00CCB177F, - 3A1E2F8808593DE400E32947, - ); - isa = PBXSourcesBuildPhase; - runOnlyForDeploymentPostprocessing = 0; - }; - F94745D401B2DB060ACA2316 = { - buildActionMask = 2147483647; - files = ( - ); - isa = PBXFrameworksBuildPhase; - runOnlyForDeploymentPostprocessing = 0; - }; - F94745D501B2DB060ACA2316 = { - buildActionMask = 2147483647; - files = ( - ); - isa = PBXRezBuildPhase; - runOnlyForDeploymentPostprocessing = 0; - }; - F94745D601B2DB130ACA2316 = { - fileEncoding = 4; - isa = PBXFileReference; - path = HID_Config_Utilities.c; - refType = 4; - }; - F94745DA01B2DB130ACA2316 = { - fileEncoding = 4; - isa = PBXFileReference; - path = HID_Queue_Utilities.c; - refType = 4; - }; - F94745DF01B2DB140ACA2316 = { - fileRef = F94745D601B2DB130ACA2316; - isa = PBXBuildFile; - settings = { - }; - }; - F94745E101B2DB140ACA2316 = { - fileRef = F94745DA01B2DB130ACA2316; - isa = PBXBuildFile; - settings = { - }; - }; - F94745E201B2DB720ACA2316 = { - children = ( - F94745E301B2DB720ACA2316, - F94745E401B2DB720ACA2316, - F94745EF01B301760ACA2316, - 3A1E2F8308593DC100E32947, - 3A1E2F8508593DD700E32947, - ); - isa = PBXGroup; - name = "External Headers"; - refType = 4; - }; - F94745E301B2DB720ACA2316 = { - fileEncoding = 4; - isa = PBXFileReference; - path = IOHIDPowerUsage.h; - refType = 4; - }; - F94745E401B2DB720ACA2316 = { - fileEncoding = 4; - isa = PBXFileReference; - path = PID.h; - refType = 4; - }; - F94745E601B2DB720ACA2316 = { - fileEncoding = 4; - isa = PBXFileReference; - path = HID_Utilities.c; - refType = 4; - }; - F94745EA01B2DB720ACA2316 = { - fileRef = F94745E601B2DB720ACA2316; - isa = PBXBuildFile; - settings = { - }; - }; - F94745EB01B2E50A0ACA2316 = { - fileEncoding = 4; - isa = PBXFileReference; - path = HIDLib.h; - refType = 4; - }; - F94745EC01B2E50A0ACA2316 = { - fileRef = F94745EB01B2E50A0ACA2316; - isa = PBXBuildFile; - settings = { - }; - }; - F94745EF01B301760ACA2316 = { - fileEncoding = 4; - isa = PBXFileReference; - path = HID_Utilities_External.h; - refType = 4; - }; - F94745F001B301760ACA2316 = { - fileEncoding = 4; - isa = PBXFileReference; - path = HID_Utilities_Internal.h; - refType = 4; - }; - F94745F201B301760ACA2316 = { - fileRef = F94745F001B301760ACA2316; - isa = PBXBuildFile; - settings = { - }; - }; - F94745F301B3062C0ACA2316 = { - fileEncoding = 4; - isa = PBXFileReference; - path = HID_Error_Handler.c; - refType = 4; - }; - F94745F401B3062C0ACA2316 = { - fileRef = F94745F301B3062C0ACA2316; - isa = PBXBuildFile; - settings = { - }; - }; - }; - rootObject = F94745C901B2DAC40ACA2316; -} diff --git a/HID Utilities Source/HIDLib.h b/HID_Utilities_Source/HIDLib.h index 6123009..6123009 100644 --- a/HID Utilities Source/HIDLib.h +++ b/HID_Utilities_Source/HIDLib.h diff --git a/HID Utilities Source/HID_APIs.h b/HID_Utilities_Source/HID_APIs.h index d281340..d281340 100644 --- a/HID Utilities Source/HID_APIs.h +++ b/HID_Utilities_Source/HID_APIs.h diff --git a/HID Utilities Source/HID_CFM.c b/HID_Utilities_Source/HID_CFM.c index ab00e0b..ab00e0b 100644 --- a/HID Utilities Source/HID_CFM.c +++ b/HID_Utilities_Source/HID_CFM.c diff --git a/HID Utilities Source/HID_Config_Utilities.c b/HID_Utilities_Source/HID_Config_Utilities.c index a8e97b2..a8e97b2 100644 --- a/HID Utilities Source/HID_Config_Utilities.c +++ b/HID_Utilities_Source/HID_Config_Utilities.c diff --git a/HID Utilities Source/HID_Config_Utilities.h b/HID_Utilities_Source/HID_Config_Utilities.h index 1ab7215..1ab7215 100644 --- a/HID Utilities Source/HID_Config_Utilities.h +++ b/HID_Utilities_Source/HID_Config_Utilities.h diff --git a/HID Utilities Source/HID_Error_Handler.c b/HID_Utilities_Source/HID_Error_Handler.c index 2985fce..2985fce 100644 --- a/HID Utilities Source/HID_Error_Handler.c +++ b/HID_Utilities_Source/HID_Error_Handler.c diff --git a/HID Utilities Source/HID_Error_Handler.h b/HID_Utilities_Source/HID_Error_Handler.h index a672182..a672182 100644 --- a/HID Utilities Source/HID_Error_Handler.h +++ b/HID_Utilities_Source/HID_Error_Handler.h diff --git a/HID Utilities Source/HID_Name_Lookup.c b/HID_Utilities_Source/HID_Name_Lookup.c index 717909d..717909d 100644 --- a/HID Utilities Source/HID_Name_Lookup.c +++ b/HID_Utilities_Source/HID_Name_Lookup.c diff --git a/HID Utilities Source/HID_Name_Lookup.h b/HID_Utilities_Source/HID_Name_Lookup.h index 5615172..5615172 100644 --- a/HID Utilities Source/HID_Name_Lookup.h +++ b/HID_Utilities_Source/HID_Name_Lookup.h diff --git a/HID Utilities Source/HID_Queue_Utilities.c b/HID_Utilities_Source/HID_Queue_Utilities.c index 70af952..70af952 100644 --- a/HID Utilities Source/HID_Queue_Utilities.c +++ b/HID_Utilities_Source/HID_Queue_Utilities.c diff --git a/HID Utilities Source/HID_Queue_Utilities.h b/HID_Utilities_Source/HID_Queue_Utilities.h index e9b0501..e9b0501 100644 --- a/HID Utilities Source/HID_Queue_Utilities.h +++ b/HID_Utilities_Source/HID_Queue_Utilities.h diff --git a/HID Utilities Source/HID_Transaction_Utilities.c b/HID_Utilities_Source/HID_Transaction_Utilities.c index c9012f1..c9012f1 100644 --- a/HID Utilities Source/HID_Transaction_Utilities.c +++ b/HID_Utilities_Source/HID_Transaction_Utilities.c diff --git a/HID Utilities Source/HID_Transaction_Utilities.h b/HID_Utilities_Source/HID_Transaction_Utilities.h index 4822ddb..4822ddb 100644 --- a/HID Utilities Source/HID_Transaction_Utilities.h +++ b/HID_Utilities_Source/HID_Transaction_Utilities.h diff --git a/HID Utilities Source/HID_Utilities.c b/HID_Utilities_Source/HID_Utilities.c index b7b22c5..b7b22c5 100644 --- a/HID Utilities Source/HID_Utilities.c +++ b/HID_Utilities_Source/HID_Utilities.c diff --git a/HID Utilities Source/HID_Utilities.h b/HID_Utilities_Source/HID_Utilities.h index e8565ce..e8565ce 100644 --- a/HID Utilities Source/HID_Utilities.h +++ b/HID_Utilities_Source/HID_Utilities.h diff --git a/HID Utilities Source/HID_Utilities_CFM.h b/HID_Utilities_Source/HID_Utilities_CFM.h index 305916a..305916a 100644 --- a/HID Utilities Source/HID_Utilities_CFM.h +++ b/HID_Utilities_Source/HID_Utilities_CFM.h diff --git a/HID Utilities Source/HID_Utilities_External.h b/HID_Utilities_Source/HID_Utilities_External.h index 62a52ec..62a52ec 100644 --- a/HID Utilities Source/HID_Utilities_External.h +++ b/HID_Utilities_Source/HID_Utilities_External.h diff --git a/HID Utilities Source/HID_Utilities_Internal.h b/HID_Utilities_Source/HID_Utilities_Internal.h index 3e1eac2..3e1eac2 100644 --- a/HID Utilities Source/HID_Utilities_Internal.h +++ b/HID_Utilities_Source/HID_Utilities_Internal.h diff --git a/HID Utilities Source/IOHIDPowerUsage.h b/HID_Utilities_Source/IOHIDPowerUsage.h index 27c440f..27c440f 100644 --- a/HID Utilities Source/IOHIDPowerUsage.h +++ b/HID_Utilities_Source/IOHIDPowerUsage.h diff --git a/HID Utilities Source/ImmrHIDUtilAddOn.c b/HID_Utilities_Source/ImmrHIDUtilAddOn.c index 6d2cbaf..6d2cbaf 100644 --- a/HID Utilities Source/ImmrHIDUtilAddOn.c +++ b/HID_Utilities_Source/ImmrHIDUtilAddOn.c diff --git a/HID Utilities Source/ImmrHIDUtilAddOn.h b/HID_Utilities_Source/ImmrHIDUtilAddOn.h index 4563a61..4563a61 100644 --- a/HID Utilities Source/ImmrHIDUtilAddOn.h +++ b/HID_Utilities_Source/ImmrHIDUtilAddOn.h diff --git a/HID_Utilities_Source/Makefile.am b/HID_Utilities_Source/Makefile.am new file mode 100644 index 0000000..184c15c --- /dev/null +++ b/HID_Utilities_Source/Makefile.am @@ -0,0 +1,29 @@ +AUTOMAKE_OPTIONS = foreign + +noinst_LIBRARIES = libHIDUtilities.a + +libHIDUtilities_a_SOURCES = \ + HID_Config_Utilities.c \ + HID_Error_Handler.c \ + HID_Name_Lookup.c \ + HID_Queue_Utilities.c \ + HID_Transaction_Utilities.c \ + HID_Utilities.c \ + ImmrHIDUtilAddOn.c + +# include the headers in the dist so you can build +nobase_noinst_HEADERS = \ + HIDLib.h \ + HID_APIs.h \ + HID_Config_Utilities.h \ + HID_Error_Handler.h \ + HID_Name_Lookup.h \ + HID_Queue_Utilities.h \ + HID_Transaction_Utilities.h \ + HID_Utilities.h \ + HID_Utilities_CFM.h \ + HID_Utilities_External.h \ + HID_Utilities_Internal.h \ + IOHIDPowerUsage.h \ + ImmrHIDUtilAddOn.h \ + PID.h diff --git a/HID Utilities Source/PID.h b/HID_Utilities_Source/PID.h index fac1647..fac1647 100644 --- a/HID Utilities Source/PID.h +++ b/HID_Utilities_Source/PID.h diff --git a/Makefile b/Makefile deleted file mode 100644 index bab756d..0000000 --- a/Makefile +++ /dev/null @@ -1,38 +0,0 @@ -TARGET := $(shell pwd | sed 's|.*/\(.*\)$$|\1|') -EXTERNALS_ROOT := $(shell pwd | sed 's|^\(/.*externals\).*|\1|') - -default: - make -C $(EXTERNALS_ROOT) $(TARGET) - -install: - make -C $(EXTERNALS_ROOT) $(TARGET)_install - -clean: - make -C $(EXTERNALS_ROOT) $(TARGET)_clean - -test_locations: - make -C $(EXTERNALS_ROOT) test_locations - -# for emacs -etags: - etags ../../../pd/src/*.[ch] *.[ch] linux/input.h /usr/include/stdlib.h \ - /usr/include/time.h /usr/include/stdio.h - make etags_`uname -s` - -etags_Darwin: - etags -a HID\ Utilities\ Source/*.[ch] \ - /System/Library/Frameworks/ForceFeedback.framework/Headers/*.h \ - /System/Library/Frameworks/Carbon.framework/Headers/*.h \ - /System/Library/Frameworks/CoreServices.framework/Headers/*.h \ - /System/Library/Frameworks/IOKit.framework/Headers/*.[ch] \ - /System/Library/Frameworks/IOKit.framework/Headers/hid*/*.[ch] \ - /Users/hans/Documents/Research/HID/example\ code/CrossHID/*/*.h \ - /Users/hans/Documents/Research/HID/example\ code/CrossHID/*/*.cpp \ - /usr/include/mach/*.h - -etags_Linux: - etags -a /usr/include/*.h linux/input.h /usr/include/sys/*.h - -etags_MINGW: - etags -a /usr/include/*.h /usr/include/sys/*.h \ - /usr/local/include/*.h /usr/local/include/sys/*.h diff --git a/Makefile.am b/Makefile.am new file mode 100644 index 0000000..ca00a6f --- /dev/null +++ b/Makefile.am @@ -0,0 +1,39 @@ +AUTOMAKE_OPTIONS = foreign + +noinst_PROGRAMS = hidio +hidio_SOURCES = hidio.c hidio_types.c +hidio_CFLAGS = $(CFLAGS) +hidio_LDADD = +hidio_LDFLAGS = $(LDFLAGS) +noinst_HEADERS = hidio.h input_arrays.h + +EXTRA_SUBDIRS = + +if MACOSX +hidio_SOURCES += hidio_darwin.c +EXTRA_SUBDIRS += HID_Utilities_Source +hidio_CFLAGS += -IHID_Utilities_Source +hidio_LDADD += HID_Utilities_Source/libHIDUtilities.a +hidio_LDFLAGS += -bundle -undefined dynamic_lookup \ + -framework Carbon -framework IOKit -framework ForceFeedback +endif + +if LINUX +hidio_SOURCES += hidio_linux.c input_arrays.c +endif + +if WINDOWS +hidio_SOURCES += hidio_windows.c +endif + + + +# files that are included but not built +EXTRA_DIST = COPYING README TODO + +# subdirs that are built +SUBDIRS = $(EXTRA_SUBDIRS) + +# subdirs that are always included in the dist, etc. +DIST_SUBDIRS = HID_Utilities_Source + diff --git a/autogen.sh b/autogen.sh new file mode 100755 index 0000000..582ecb1 --- /dev/null +++ b/autogen.sh @@ -0,0 +1,16 @@ +#!/bin/sh + +PATH=/sw/bin:$PATH + +case `uname -s` in + MINGW*) +# autoreconf doesn't always work on MinGW + libtoolize --install --force \ + && aclocal \ + && automake --add-missing --force-missing \ + && autoconf + ;; + *) + autoreconf --install --force --verbose + ;; +esac diff --git a/configure.ac b/configure.ac new file mode 100644 index 0000000..5c8c9b6 --- /dev/null +++ b/configure.ac @@ -0,0 +1,89 @@ +AC_PREREQ(2.59) +AC_INIT(hidio,0.1) +AC_CONFIG_SRCDIR(hidio.c) +AC_CANONICAL_HOST +AM_INIT_AUTOMAKE(1.9) + +CFLAGS="-DPD $CFLAGS" +INCLUDES="-I../../../pd/src $INCLUDES" + +case $host in +*darwin*) + MACOSX=yes + ;; +*linux*) + LINUX=yes + ;; +*mingw*) + WINDOWS=yes + MINGW=yes + ;; +*cygwin*) + WINDOWS=yes + CYGWIN=yes + ;; +esac +AM_CONDITIONAL(ANDROID, test x$ANDROID = xyes) +AM_CONDITIONAL(IPHONEOS, test x$IPHONEOS = xyes) +AM_CONDITIONAL(LINUX, test x$LINUX = xyes) +AM_CONDITIONAL(MACOSX, test x$MACOSX = xyes) +AM_CONDITIONAL(WINDOWS, test x$WINDOWS = xyes) +AM_CONDITIONAL(CYGWIN, test x$MINGW = xyes) +AM_CONDITIONAL(MINGW, test x$MINGW = xyes) + +# Checks for programs. +AC_PROG_CC +AC_PROG_CXX +AC_PROG_INSTALL +AC_PROG_RANLIB +AC_PROG_MAKE_SET + +AC_SUBST(EXTERNTARGET) +AC_SUBST(INCLUDES) + +AC_HEADER_STDC + +AC_ARG_ENABLE([debug], + [AS_HELP_STRING([--enable-debug], [use debugging support])], + [debug=$enableval]) +if test x$debug = xyes; then + CFLAGS="$CFLAGS -g" +fi + +AC_ARG_ENABLE([universal], + [AS_HELP_STRING([--enable-universal], + [build universal binary on Mac OS X])], + [universal=$enableval], [universal=no]) +AM_CONDITIONAL(UNIVERSAL, test x$universal = xyes) +if test x$universal = xyes; then + UNIVERSAL_FLAGS="-arch ppc -arch i386 -arch x86_64 -mmacosx-version-min=10.4" + CFLAGS="$CFLAGS -fast -ffast-math $UNIVERSAL_FLAGS" + LDFLAGS="$LDFLAGS $UNIVERSAL_FLAGS" +fi + +# Checks for header files. +AC_FUNC_ALLOCA +AC_CHECK_HEADERS([fcntl.h limits.h malloc.h stddef.h stdlib.h string.h sys/ioctl.h sys/param.h sys/socket.h sys/time.h sys/timeb.h unistd.h]) + +# Checks for typedefs, structures, and compiler characteristics. +AC_TYPE_INT16_T +AC_TYPE_INT32_T +AC_TYPE_OFF_T +AC_TYPE_PID_T +AC_TYPE_SIZE_T + +# Checks for library functions. +AC_FUNC_ERROR_AT_LINE +AC_FUNC_FORK +AC_FUNC_MALLOC +AC_FUNC_REALLOC +AC_TYPE_SIGNAL +AC_CHECK_FUNCS([getcwd memmove memset pow regcomp select socket strchr strrchr strstr strtol]) + +# Specify what files are to be created. +AC_CONFIG_FILES([Makefile + HID_Utilities_Source/Makefile]) + +AC_OUTPUT + +dnl output some messages at the end |