Possible Uninstall Fix, plus cleanup, more keysets
[pierogi] / keysets / aiwa.cpp
1 #include "aiwa.h"
2 #include "protocols/aiwaprotocol.h"
3 #include "protocols/lircprotocol.h"
4 #include "protocols/necprotocol.h"
5
6 // Is this a vcr?
7 AiwaVCR1::AiwaVCR1(
8   QObject *guiObject,
9   unsigned int index)
10   : PIRKeysetMetaData(
11       "VCR Keyset 1",
12       Aiwa_Make,
13       index)
14 {
15   addControlledDevice(Aiwa_Make, "HV-CX100KER", VCR_Device); // maybe not vcr
16
17   threadableProtocol = new AiwaProtocol(guiObject, index);
18
19   setPreData(0x007F, 13);
20
21   addKey("POWER", Power_Key, 0x00, 8);
22   addKey("SLOW", Slow_Key, 0x0F, 8);
23   addKey("FORWARD", FastForward_Key, 0x11, 8);
24   addKey("REWIND", Rewind_Key, 0x12, 8);
25   addKey("PLAY", Play_Key, 0x15, 8);
26   addKey("PAUSE", Pause_Key, 0x17, 8);
27   addKey("STOP", Stop_Key, 0x1A, 8);
28   addKey("+", Unmapped_Key, 0x46, 8);
29   addKey("-", Unmapped_Key, 0x47, 8);
30   addKey("AUTO", Unmapped_Key, 0x53, 8);
31   addKey("REPEAT", Repeat_Key, 0x5F, 8);
32   addKey("GUIDE", Guide_Key, 0xB0, 8);
33 }
34
35
36 AiwaVCR2::AiwaVCR2(
37   QObject *guiObject,
38   unsigned int index)
39   : PIRKeysetMetaData(
40       "VCR Keyset 2",
41       Aiwa_Make,
42       index)
43 {
44   threadableProtocol = new NECProtocol(guiObject, index, false, true);
45
46   setPreData(0x6E, 8);
47
48   addKey("eject", Eject_Key, 0x00, 8);
49   addKey("stop", Stop_Key, 0x01, 8);
50   addKey("rew", Rewind_Key, 0x02, 8);
51   addKey("ff", FastForward_Key, 0x03, 8);
52   addKey("0", Zero_Key, 0x04, 8);
53   addKey("1", One_Key, 0x05, 8);
54   addKey("2", Two_Key, 0x06, 8);
55   addKey("3", Three_Key, 0x07, 8);
56   addKey("play", Play_Key, 0x08, 8);
57   addKey("rec/otr", Record_Key, 0x09, 8);
58   addKey("pause", Pause_Key, 0x0B, 8);
59   addKey("4", Four_Key, 0x0C, 8);
60   addKey("5", Five_Key, 0x0D, 8);
61   addKey("6", Six_Key, 0x0E, 8);
62   addKey("7", Seven_Key, 0x0F, 8);
63
64   addKey("power", Power_Key, 0x14, 8);
65   addKey("tv/vcr", Input_Key, 0x15, 8);
66   addKey("menu/i", Menu_Key, 0x16, 8);
67   addKey("8", Eight_Key, 0x1C, 8);
68   addKey("9", Nine_Key, 0x1D, 8);
69   addKey("clear", Clear_Key, 0x1F, 8);
70
71   addKey("child-lock", Unmapped_Key, 0x3F, 8);
72   addKey("viss", Unmapped_Key, 0x41, 8);
73   addKey("showview", Unmapped_Key, 0x47, 8);
74   addKey("speed", VHSSpeed_Key, 0x48, 8);
75   addKey("av", Unmapped_Key, 0x56, 8);
76   addKey("a-tr", AutoTracking_Key, 0x5F, 8);
77
78   addKey("up", Up_Key, 0x82, 8);
79   addKey("left", Left_Key, 0x83, 8);
80   addKey("down", Down_Key, 0x89, 8);
81   addKey("ok/clk/cnt", Select_Key, 0x8E, 8);
82   addKey("right", Right_Key, 0x90, 8);
83
84   addKey("fav.program", Unmapped_Key, 0xB3, 8);
85   addKey("rec-end-search", Next_Key, 0xB5, 8); // might be wrong
86   addKey("otpb", Unmapped_Key, 0xBF, 8);
87   addKey("ad-skip", Advance_Key, 0xDD, 8);
88 }
89
90
91 AiwaAudio1::AiwaAudio1(
92   QObject *guiObject,
93   unsigned int index)
94   : PIRKeysetMetaData(
95       "Audio Keyset 1",
96       Aiwa_Make,
97       index)
98 {
99   addControlledDevice(Aiwa_Make, "LCX-100", Audio_Device);
100
101   threadableProtocol = new AiwaProtocol(guiObject, index);
102
103   setPreData(0x0070, 13);
104
105   addKey("power", Power_Key, 0x00, 8);
106   addKey("volume_up", VolumeUp_Key, 0x11, 8);
107   addKey("volume_down", VolumeDown_Key, 0x12, 8);
108   addKey("tuner_band", TunerBand_Key, 0x13, 8);
109   addKey("geq", Unmapped_Key, 0x1F, 8); // graphic equalizer?
110
111   addKey("sleep", Sleep_Key, 0x40, 8);
112   addKey("tuner_mode", FMMode_Key, 0x4E, 8);
113   addKey("REPEAT", Repeat_Key, 0x51, 8);
114   addKey("set", Memory_Key, 0x52, 8); // "MEMORY"
115   addKey("CANCEL", Clear_Key, 0x53, 8);
116   addKey("timer", Timer_Key, 0x5A, 8);
117
118   addKey("DISPLAY", Info_Key, 0x80, 8);
119   addKey("random", Random_Key, 0x8F, 8);
120   addKey("1", One_Key, 0x91, 8);
121   addKey("2", Two_Key, 0x92, 8);
122   addKey("3", Three_Key, 0x93, 8);
123   addKey("4", Four_Key, 0x94, 8);
124   addKey("5", Five_Key, 0x95, 8);
125   addKey("6", Six_Key, 0x96, 8);
126   addKey("7", Seven_Key, 0x97, 8);
127   addKey("8", Eight_Key, 0x98, 8);
128   addKey("9", Nine_Key, 0x99, 8);
129   addKey("0", Zero_Key, 0x9A, 8);
130   addKey("+10", DoubleDigit_Key, 0x9B, 8);
131
132   addKey("play", Play_Key, 0xC4, 8); // "ENTER", "UP"
133   addKey("play", Up_Key, 0xC4, 8); // "ENTER", "UP"
134   addKey("stop", Stop_Key, 0xC5, 8); // "DOWN"
135   addKey("stop", Down_Key, 0xC5, 8); // "DOWN"
136   addKey("forward", FastForward_Key, 0xC6, 8); // "RIGHT"
137   addKey("forward", Right_Key, 0xC6, 8); // "RIGHT"
138   addKey("back", Rewind_Key, 0xC7, 8); // "LEFT"
139   addKey("back", Left_Key, 0xC7, 8); // "LEFT"
140   addKey("PAUSE", Pause_Key, 0xC9, 8);
141 }
142
143
144 // Don't know why only the numbers are different for this one:
145 AiwaAudio1a::AiwaAudio1a(
146   QObject *guiObject,
147   unsigned int index)
148   : AiwaAudio1(guiObject, index)
149 {
150   setKeysetName("Audio Keyset 1a");
151
152   addControlledDevice(Aiwa_Make, "XR-M201", Audio_Device);
153
154   addKey("1", One_Key, 0x01, 8);
155   addKey("2", Two_Key, 0x02, 8);
156   addKey("3", Three_Key, 0x03, 8);
157   addKey("4", Four_Key, 0x04, 8);
158   addKey("5", Five_Key, 0x05, 8);
159   addKey("6", Six_Key, 0x06, 8);
160   addKey("7", Seven_Key, 0x07, 8);
161   addKey("8", Eight_Key, 0x08, 8);
162   addKey("9", Nine_Key, 0x09, 8);
163   addKey("0", Zero_Key, 0x0A, 8);
164   addKey("+10", DoubleDigit_Key, 0x0B, 8);
165
166   addKey("EQ", Unmapped_Key, 0xCA, 8);
167 }
168
169
170 AiwaAudio2::AiwaAudio2(
171   QObject *guiObject,
172   unsigned int index)
173   : PIRKeysetMetaData(
174       "Audio Keyset 2",
175       Aiwa_Make,
176       index)
177 {
178   addControlledDevice(Aiwa_Make, "NSX-S22", Audio_Device);
179   addControlledDevice(Aiwa_Make, "NSX-532", Audio_Device);
180   addControlledDevice(Aiwa_Make, "NSX-AV320", Audio_Device);
181   addControlledDevice(Aiwa_Make, "XR-M35", Audio_Device);
182
183   threadableProtocol = new AiwaProtocol(guiObject, index);
184
185   setPreData(0x006E, 13);
186
187   addKey("power", Power_Key, 0x00, 8);
188   addKey("1", One_Key, 0x01, 8);
189   addKey("2", Two_Key, 0x02, 8);
190   addKey("3", Three_Key, 0x03, 8);
191   addKey("4", Four_Key, 0x04, 8);
192   addKey("5", Five_Key, 0x05, 8);
193   addKey("6", Six_Key, 0x06, 8);
194   addKey("7", Seven_Key, 0x07, 8);
195   addKey("8", Eight_Key, 0x08, 8);
196   addKey("9", Nine_Key, 0x09, 8);
197   addKey("0", Zero_Key, 0x0A, 8);
198   addKey("plus10", DoubleDigit_Key, 0x0B, 8);
199   addKey("shift7", Timer_Key, 0x0C, 8); // "timer"
200   addKey("shift8", Sleep_Key, 0x0E, 8); // "sleep"
201
202   addKey("shift9", Unmapped_Key, 0x11, 8); // "clock"
203   addKey("shift0", FMMode_Key, 0x12, 8); // "mono tuner"
204   addKey("EJECT", Eject_Key, 0x13, 8);
205   addKey("shift3", Random_Key, 0x15, 8); // "random/repeat"
206   addKey("REPEAT", Repeat_Key, 0x16, 8);
207   addKey("shift1", Unmapped_Key, 0x17, 8); // "edit/check"
208   addKey("shift2", Program_Key, 0x19, 8); // "prgm"
209   addKey("TAPE", TapeInput_Key, 0x1B, 8);
210   addKey("shiftplus10", TunerBand_Key, 0x1C, 8); // "band"
211   addKey("VIDEO", Unmapped_Key, 0x1D, 8);
212   addKey("function", Unmapped_Key, 0x1E, 8);
213   addKey("CD", CDInput_Key, 0x1F, 8);
214
215   addKey("play", Play_Key, 0x40, 8);
216   addKey("stop", Stop_Key, 0x41, 8);
217   addKey("next", FastForward_Key, 0x42, 8); // "FF"
218   addKey("prev", Rewind_Key, 0x43, 8); // "REW"
219   addKey("pause", Pause_Key, 0x44, 8);
220   addKey("record", Record_Key, 0x45, 8);
221   addKey("shift6", EnhancedBass_Key, 0x47, 8); // "t-bass"
222   addKey("shift4", Unmapped_Key, 0x49, 8); // "geq" "eq" equalizer?
223   addKey("volup", VolumeUp_Key, 0x4D, 8);
224   addKey("voldown", VolumeDown_Key, 0x4E, 8);
225
226   addKey("shift5", Unmapped_Key, 0x50, 8);
227   addKey("cd1", Unmapped_Key, 0x51, 8); // "DDP_1"
228   addKey("cd2", Unmapped_Key, 0x52, 8); // "DDP_2"
229   addKey("cd3", Unmapped_Key, 0x53, 8); // "DDP_3"
230   addKey("MANUAL", Unmapped_Key, 0x58, 8);
231   addKey("DOLBY", NoiseReduction_Key, 0x6A, 8);
232 }
233
234
235 // Might not be audio here:
236 AiwaAudio3::AiwaAudio3(
237   QObject *guiObject,
238   unsigned int index)
239   : PIRKeysetMetaData(
240       "Audio Keyset 3",
241       Aiwa_Make,
242       index)
243 {
244   threadableProtocol = new AiwaProtocol(guiObject, index);
245
246   setPreData(0x007B, 13);
247
248   addKey("Power", Power_Key, 0x00, 8);
249   addKey("1", One_Key, 0x01, 8);
250   addKey("2", Two_Key, 0x02, 8);
251   addKey("3", Three_Key, 0x03, 8);
252   addKey("4", Four_Key, 0x04, 8);
253   addKey("5", Five_Key, 0x05, 8);
254   addKey("6", Six_Key, 0x06, 8);
255   addKey("7", Seven_Key, 0x07, 8);
256   addKey("8", Eight_Key, 0x08, 8);
257   addKey("9", Nine_Key, 0x09, 8);
258   addKey("0", Zero_Key, 0x0A, 8);
259
260   addKey("Yellow", Yellow_Key, 0x13, 8);
261   addKey("Right", Right_Key, 0x18, 8);
262   addKey("Left", Left_Key, 0x19, 8);
263   addKey("Ok", Select_Key, 0x1B, 8);
264
265   addKey("Up", Up_Key, 0x40, 8);
266   addKey("Down", Down_Key, 0x41, 8);
267   addKey("Volume-", VolumeDown_Key, 0x43, 8);
268   addKey("Mute", Mute_Key, 0x4A, 8);
269   addKey("Blue", Blue_Key, 0x4B, 8);
270   addKey("RED", Red_Key, 0x4E, 8);
271   addKey("Volume+", VolumeUp_Key, 0x4F, 8);
272
273   addKey("Back", Exit_Key, 0x90, 8);
274   addKey("Menu", Menu_Key, 0xC4, 8);
275   addKey("Green", Green_Key, 0xDC, 8);
276 }
277
278
279 AiwaAudio4::AiwaAudio4(
280   QObject *guiObject,
281   unsigned int index)
282   : PIRKeysetMetaData(
283       "Audio Keyset 4",
284       Aiwa_Make,
285       index)
286 {
287   threadableProtocol = new AiwaProtocol(guiObject, index);
288
289   setPreData(0x00F6, 13);
290
291   addKey("1", One_Key, 0x01, 8);
292   addKey("2", Two_Key, 0x02, 8);
293   addKey("3", Three_Key, 0x03, 8);
294   addKey("4", Four_Key, 0x04, 8);
295   addKey("5", Five_Key, 0x05, 8);
296   addKey("6", Six_Key, 0x06, 8);
297   addKey("7", Seven_Key, 0x07, 8);
298   addKey("8", Eight_Key, 0x08, 8);
299   addKey("9", Nine_Key, 0x09, 8);
300   addKey("10", Zero_Key, 0x0A, 8); // best I can do for now
301   addKey("greater_20", DoubleDigit_Key, 0x0B, 8);
302   addKey("open_close", Eject_Key, 0x0C, 8);
303   addKey("program", Program_Key, 0x0D, 8);
304   addKey("delete", Unmapped_Key, 0x0E, 8);
305   addKey("check", Unmapped_Key, 0x0F, 8);
306
307   addKey("search_forw", FastForward_Key, 0x11, 8);
308   addKey("search_back", Rewind_Key, 0x12, 8);
309   addKey("random", Random_Key, 0x13, 8);
310   addKey("play", Play_Key, 0x15, 8);
311   addKey("pause", Pause_Key, 0x17, 8);
312   addKey("skip_forw", Advance_Key, 0x18, 8);
313   addKey("skip_back", Replay_Key, 0x19, 8);
314   addKey("stop", Stop_Key, 0x1A, 8);
315   addKey("repeat_1_all", Repeat_Key, 0x1B, 8);
316   addKey("repeat_a_b", RepeatAB_Key, 0x1C, 8);
317   addKey("index_forw", Next_Key, 0x1D, 8);
318   addKey("index_back", Previous_Key, 0x1E, 8);
319   addKey("time", Unmapped_Key, 0x1F, 8);
320
321   addKey("ac", Unmapped_Key, 0x2E, 8);
322
323   addKey("blank", Unmapped_Key, 0x40, 8);
324   addKey("11", Unmapped_Key, 0x41, 8);
325   addKey("12", Unmapped_Key, 0x42, 8);
326   addKey("13", Unmapped_Key, 0x43, 8);
327   addKey("14", Unmapped_Key, 0x44, 8);
328   addKey("15", Unmapped_Key, 0x45, 8);
329   addKey("16", Unmapped_Key, 0x46, 8);
330   addKey("17", Unmapped_Key, 0x47, 8);
331   addKey("18", Unmapped_Key, 0x48, 8);
332   addKey("19", Unmapped_Key, 0x49, 8);
333   addKey("20", Unmapped_Key, 0x4A, 8);
334 }
335
336
337 AiwaAudio5::AiwaAudio5(
338   QObject *guiObject,
339   unsigned int index)
340   : PIRKeysetMetaData(
341       "Audio Keyset 5",
342       Aiwa_Make,
343       index)
344 {
345   threadableProtocol = new AiwaProtocol(guiObject, index);
346
347   setPreData(0x0076, 13);
348
349   addKey("1", One_Key, 0x01, 8);
350   addKey("2", Two_Key, 0x02, 8);
351   addKey("3", Three_Key, 0x03, 8);
352   addKey("4", Four_Key, 0x04, 8);
353   addKey("5", Five_Key, 0x05, 8);
354   addKey("6", Six_Key, 0x06, 8);
355   addKey("7", Seven_Key, 0x07, 8);
356   addKey("8", Eight_Key, 0x08, 8);
357   addKey("9", Nine_Key, 0x09, 8);
358   addKey("0", Zero_Key, 0x0A, 8);
359   addKey("+10", DoubleDigit_Key, 0x0B, 8);
360   addKey("open", Eject_Key, 0x0C, 8);
361   addKey("Prog", Program_Key, 0x0D, 8); // "on"
362   addKey("cont", Unmapped_Key, 0x0F, 8);
363   addKey("random", Random_Key, 0x13, 8);
364   addKey("Play", Play_Key, 0x15, 8);
365   addKey("Forward", FastForward_Key, 0x18, 8);
366   addKey("Rewind", Rewind_Key, 0x19, 8);
367   addKey("Stop", Stop_Key, 0x1A, 8);
368   addKey("Rep/Rand", Repeat_Key, 0x1B, 8);
369   addKey("display", Info_Key, 0x1F, 8);
370 }
371
372
373 AiwaDVD1::AiwaDVD1(
374   QObject *guiObject,
375   unsigned int index)
376   : PIRKeysetMetaData(
377       "DVD Keyset 1",
378       Aiwa_Make,
379       index)
380 {
381   LIRCProtocol *lp = new LIRCProtocol(
382     guiObject,
383     index,
384     500, 622,
385     1629, 622,
386     99349, false);
387
388   threadableProtocol = lp;
389
390   lp->setHeaderPair(1623, 615);
391   lp->setRepeatPair(8967, 4467);
392
393   addKey("KEY_POWER", Power_Key, 0x201, 10);
394   addKey("KEY_SUBTITLE", Captions_Key, 0x32C, 10);
395   addKey("KEY_RED", Red_Key, 0x2F1, 10);
396   addKey("KEY_GREEN", Green_Key, 0x390, 10);
397   addKey("KEY_YELLOW", Yellow_Key, 0x370, 10);
398   addKey("KEY_BLUE", Blue_Key, 0x3AC, 10);
399   addKey("KEY_EPG", Guide_Key, 0x360, 10);
400   addKey("KEY_INFO", Info_Key, 0x211, 10);
401   addKey("KEY_OK", Select_Key, 0x28D, 10);
402   addKey("KEY_BACK", Exit_Key, 0x348, 10);
403   addKey("KEY_MENU", Menu_Key, 0x30C, 10);
404   addKey("KEY_UP", Up_Key, 0x24D, 10);
405   addKey("KEY_DOWN", Down_Key, 0x34C, 10);
406   addKey("KEY_LEFT", Left_Key, 0x3CC, 10);
407   addKey("KEY_RIGHT", Right_Key, 0x2CD, 10);
408   addKey("KEY_REWIND", Rewind_Key, 0x2D9, 10);
409   addKey("KEY_PLAYPAUSE", Play_Key, 0x350, 10);
410   addKey("KEY_PLAYPAUSE", Pause_Key, 0x350, 10);
411   addKey("KEY_FORWARD", FastForward_Key, 0x358, 10);
412   addKey("KEY_STOP", Stop_Key, 0x2B1, 10);
413   addKey("KEY_RECORD", Record_Key, 0x3EC, 10);
414   addKey("KEY_CHANNELUP", ChannelUp_Key, 0x231, 10);
415   addKey("KEY_CHANNELDOWN", ChannelDown_Key, 0x330, 10);
416   addKey("KEY_1", One_Key, 0x300, 10);
417   addKey("KEY_2", Two_Key, 0x281, 10);
418   addKey("KEY_3", Three_Key, 0x380, 10);
419   addKey("KEY_4", Four_Key, 0x241, 10);
420   addKey("KEY_5", Five_Key, 0x340, 10);
421   addKey("KEY_6", Six_Key, 0x2C1, 10);
422   addKey("KEY_7", Seven_Key, 0x3C0, 10);
423   addKey("KEY_8", Eight_Key, 0x221, 10);
424   addKey("KEY_9", Nine_Key, 0x320, 10);
425   addKey("KEY_0", Zero_Key, 0x2A1, 10);
426   addKey("KEY_MEDIA", Unmapped_Key, 0x348, 10);
427 }