2 #include "protocols/necprotocol.h"
5 CreativeAudio1::CreativeAudio1(
12 addControlledDevice(Creative_Make, "Inspire 5700", Other_Device);
16 void CreativeAudio1::populateProtocol(
19 if (threadableProtocol)
21 // Keyset already populated.
25 threadableProtocol = new NECProtocol(guiObject, index, true, true);
27 setPreData(0x44C1, 16);
29 addKey("Input Select", Input_Key, 0x37, 8);
30 addKey("vol up", VolumeUp_Key, 0x47, 8);
31 addKey("Dynamic Mode Toggle", Red_Key, 0x4F, 8); // hack
32 addKey("mute", Mute_Key, 0x77, 8);
33 addKey("power", Power_Key, 0x87, 8);
34 addKey("Dolby", NoiseReduction_Key, 0xA7, 8);
35 addKey("Dolby", Blue_Key, 0xA7, 8); // hack
36 addKey("vol down", VolumeDown_Key, 0xC7, 8);
37 addKey("Analog on/off", Green_Key, 0xD7, 8); // hack
38 addKey("Effect Select", Yellow_Key, 0xF2, 8); // hack
40 addKey("rear_center", Unmapped_Key, 0x17, 8);
41 addKey("center", Unmapped_Key, 0x97, 8);
42 addKey("test", Unmapped_Key, 0xF7, 8);
43 addKey("rear", Unmapped_Key, 0xE7, 8);
44 addKey("subwoofer", Unmapped_Key, 0x67, 8);
45 addKey("coaxial", Unmapped_Key, 0x27, 8);
46 addKey("optical", Unmapped_Key, 0x0F, 8);
47 addKey("stereo", Unmapped_Key, 0x2F, 8);
48 addKey("dolby_digital_ex", Unmapped_Key, 0xCF, 8);
49 addKey("ned_6", Unmapped_Key, 0xB7, 8);
53 CreativeAudio2::CreativeAudio2(
56 "MP3 Player Keyset 1",
62 void CreativeAudio2::populateProtocol(
65 if (threadableProtocol)
67 // Keyset already populated.
71 threadableProtocol = new NECProtocol(guiObject, index, true, true);
73 // This is almost possible to integrate with CreativeMisc1, if needed
74 setPreData(0xAC21, 16);
76 addKey("POWER", Power_Key, 0x20, 8);
77 addKey("PLAY_PAUSE", Play_Key, 0x40, 8);
78 addKey("PLAY_PAUSE", Pause_Key, 0x40, 8);
79 addKey("FAST_REVERSE", Rewind_Key, 0xA0, 8);
80 addKey("FAST_FORWARD", FastForward_Key, 0xE0, 8);
81 addKey("STOP", Stop_Key, 0x50, 8);
82 addKey("EAX", Red_Key, 0xB0, 8);
83 addKey("VOLUME_UP", VolumeUp_Key, 0xF0, 8);
84 addKey("VOLUME_DOWN", VolumeDown_Key, 0x70, 8);
88 CreativeAudio3::CreativeAudio3(
91 "Sound Card Keyset 1",
98 void CreativeAudio3::populateProtocol(
101 if (threadableProtocol)
103 // Keyset alredy populated.
107 threadableProtocol = new NECProtocol(guiObject, index, true, true);
109 setPreData(0x44C1, 16);
111 addKey("1", One_Key, 0xD1, 8);
112 addKey("2", Two_Key, 0xF1, 8);
113 addKey("3", Three_Key, 0x09, 8);
114 addKey("4", Four_Key, 0x51, 8);
115 addKey("5", Five_Key, 0x21, 8);
116 addKey("6", Six_Key, 0x1E, 8);
117 addKey("7", Seven_Key, 0x91, 8);
118 addKey("8", Eight_Key, 0xC1, 8);
119 addKey("9", Nine_Key, 0xEE, 8);
120 addKey("0", Zero_Key, 0x01, 8);
121 addKey("stop", Stop_Key, 0xA1, 8);
122 addKey("stop_eject", Eject_Key, 0xA1, 8);
123 addKey("play", Play_Key, 0x9E, 8);
124 addKey("pause", Pause_Key, 0x9E, 8);
125 addKey("slow", Slow_Key, 0xBE, 8);
126 addKey("step", StepForward_Key, 0x7E, 8);
127 addKey("prev", Previous_Key, 0xFE, 8);
128 addKey("next", Next_Key, 0x5E, 8);
129 addKey("mute", Mute_Key, 0x76, 8);
130 addKey("vol-", VolumeDown_Key, 0xC6, 8);
131 addKey("vol+", VolumeUp_Key, 0x46, 8);
132 addKey("eax", Unmapped_Key, 0x31, 8);
133 addKey("EAX_Up", Unmapped_Key, 0x69, 8);
134 addKey("EAX_Down", Unmapped_Key, 0xE9, 8);
135 addKey("options", Unmapped_Key, 0x41, 8);
136 addKey("display", Info_Key, 0x6E, 8);
137 addKey("return", Exit_Key, 0x71, 8);
138 addKey("start", Unmapped_Key, 0x11, 8);
139 addKey("close", Unmapped_Key, 0x3E, 8);
140 addKey("up", Up_Key, 0xDE, 8);
141 addKey("down", Down_Key, 0xB1, 8);
142 addKey("left", Left_Key, 0xE1, 8);
143 addKey("right", Right_Key, 0xAE, 8);
144 addKey("ok", Select_Key, 0x81, 8);
145 addKey("power", Power_Key, 0x86, 8);
146 addKey("cmss", Unmapped_Key, 0x8E, 8);
147 addKey("CMSS_Up", Unmapped_Key, 0x29, 8);
148 addKey("CMSS_Down", Unmapped_Key, 0xA9, 8);
149 addKey("record", Record_Key, 0xCE, 8);
150 addKey("24bit", Unmapped_Key, 0x89, 8); // "x-fi_crystal_on"
151 addKey("24bit_Up", Unmapped_Key, 0x49, 8); // "x-fi_crystal+"
152 addKey("24bit_Down", Unmapped_Key, 0xC9, 8); // "x-fi_crystal-"
153 addKey("3dMidi", Unmapped_Key, 0x19, 8);
154 addKey("3dMidi_Up", Unmapped_Key, 0x99, 8);
155 addKey("3dMidi_Down", Unmapped_Key, 0x59, 8);
159 CreativeAudio4::CreativeAudio4(
169 void CreativeAudio4::populateProtocol(
172 if (threadableProtocol)
174 // Keyset already populated.
178 threadableProtocol = new NECProtocol(guiObject, index, true, true);
180 setPreData(0xAC21, 16);
182 addKey("PAUSE", Pause_Key, 0x80, 8);
183 addKey("PLAY", Play_Key, 0x40, 8);
184 addKey("STOP", Stop_Key, 0xC0, 8);
185 addKey("REW", Rewind_Key, 0xA0, 8);
186 addKey("PREV", Previous_Key, 0x60, 8);
187 addKey("FF", FastForward_Key, 0xE0, 8);
188 addKey("MENU", Menu_Key, 0x20, 8);
189 addKey("MOUSE", Unmapped_Key, 0x10, 8);
190 addKey("1", One_Key, 0x90, 8);
191 addKey("2", Two_Key, 0x50, 8);
192 addKey("3", Three_Key, 0xD0, 8);
193 addKey("4", Four_Key, 0xB0, 8);
194 addKey("5", Five_Key, 0x70, 8);
195 addKey("6", Six_Key, 0xF0, 8);
196 addKey("7", Seven_Key, 0x88, 8);
197 addKey("8", Eight_Key, 0x48, 8);
198 addKey("9", Nine_Key, 0xC8, 8);
199 addKey("0", Zero_Key, 0x68, 8);
200 addKey("MUTE", Mute_Key, 0x30, 8);
201 addKey("VOL_UP", VolumeUp_Key, 0x08, 8);
202 addKey("VOL_DOWN", VolumeDown_Key, 0x28, 8);
203 addKey("SHIFT", Unmapped_Key, 0xA8, 8);
204 addKey("ENTER", Enter_Key, 0xE8, 8);
205 addKey("ZOOM", Zoom_Key, 0x18, 8);