Improved to "half-way usable" (version 0.5)
[pierogi] / keysets / rca.cpp
1 #include "rca.h"
2 #include "necprotocol.h"
3
4 RCATV1::RCATV1(
5   QObject *guiObject,
6   unsigned int index)
7   : PIRKeysetMetaData(
8       "TV Keyset 1",
9       RCA_Make,
10       index)
11 {
12   NECProtocol *np = new NECProtocol(
13     guiObject,
14     index,
15     500, 1000,
16     500, 2000,
17     64500, true,
18     LIRC_NEC);
19
20   threadableProtocol = np;
21
22   np->setHeaderPair(4000, 4000);
23   np->setTrailerPulse(500);
24
25 //  np->setMinimumRepetitions(1);
26
27   setPreData(0xF, 4);
28
29   addKey("vol-left", VolumeDown_Key, 0x2E0D1, 20);
30   addKey("vol-right", VolumeUp_Key, 0x2F0D0, 20);
31   addKey("mute", Mute_Key, 0x3F0C0, 20);
32   addKey("tv-on-off", Power_Key, 0x2A0D5, 20);
33   addKey("tv-who", Unmapped_Key, 0x6109E, 20);
34   addKey("tv-fetch", Unmapped_Key, 0x9306C, 20);
35   addKey("tv-go-back", PrevChannel_Key, 0x270D8, 20);
36   addKey("tv-ch+", ChannelUp_Key, 0x2D0D2, 20);
37   addKey("tv-ch-", ChannelDown_Key, 0x2C0D3, 20);
38   addKey("tv-guide", Guide_Key, 0x1A0E5, 20);
39   addKey("tv-info", Info_Key, 0x3C0C3, 20);
40   addKey("tv-menu", Menu_Key, 0x080F7, 20);
41   addKey("tv-clear", Clear_Key, 0x060F9, 20);
42   addKey("tv-clear", Exit_Key, 0x060F9, 20);
43   addKey("tv-ok", Select_Key, 0xF400B, 20);
44   addKey("tv-up", Up_Key, 0x590A6, 20);
45   addKey("tv-down", Down_Key, 0x580A7, 20);
46   addKey("tv-left", Left_Key, 0x560A9, 20);
47   addKey("tv-right", Right_Key, 0x570A8, 20);
48   addKey("tv-1", One_Key, 0x310CE, 20);
49   addKey("tv-2", Two_Key, 0x320CD, 20);
50   addKey("tv-3", Three_Key, 0x330CC, 20);
51   addKey("tv-4", Four_Key, 0x340CB, 20);
52   addKey("tv-5", Five_Key, 0x350CA, 20);
53   addKey("tv-6", Six_Key, 0x360C9, 20);
54   addKey("tv-7", Seven_Key, 0x370C8, 20);
55   addKey("tv-8", Eight_Key, 0x380C7, 20);
56   addKey("tv-9", Nine_Key, 0x390C6, 20);
57   addKey("tv-0", Zero_Key, 0x300CF, 20);
58   addKey("tv-input", Input_Key, 0xA305C, 20);
59   addKey("tv-antenna", Unmapped_Key, 0x050FA, 20);
60   addKey("tv-reverse", Rewind_Key, 0x1D0E2, 20);
61   addKey("tv-play", Play_Key, 0x150EA, 20);
62   addKey("tv-forward", FastForward_Key, 0x1C0E3, 20);
63   addKey("tv-record", Record_Key, 0x170E8, 20);
64   addKey("tv-stop", Stop_Key, 0x1F0E0, 20);
65   addKey("tv-pause", Pause_Key, 0x190E6, 20);
66   addKey("skip", Advance_Key, 0x530AC, 20);
67   addKey("pgm", Program_Key, 0xE101E, 20);
68   addKey("Sleep", Sleep_Key, 0x070F8, 20);
69   addKey("CC", Captions_Key, 0x8007F, 20);
70   addKey("Presets", Unmapped_Key, 0x120ED, 20);
71   addKey("Sound", SoundMode_Key, 0x5A0A5, 20);
72   addKey("Fav", Favorites_Key, 0x000FF, 20);
73   addKey("tv_again", Unmapped_Key, 0xBA045, 20);
74   addKey("vport", Unmapped_Key, 0x99066, 20);
75   addKey("tv", Unmapped_Key, 0x3A0C5, 20);
76 }
77
78
79 RCATV1a::RCATV1a(
80   QObject *guiObject,
81   unsigned int index)
82   : RCATV1(guiObject, index)
83 {
84   setKeysetName("TV Keyset 1a");
85
86   addKey("repeat", Repeat_Key, 0x050FA, 20);
87   addKey("pip", PIP_Key, 0x1B0E4, 20);
88   addKey("swap", PIPSwap_Key, 0xC303C, 20);
89   addKey("aspect", AspectRatio_Key, 0x9006F, 20);
90 }
91
92
93 RCATV2::RCATV2(
94   QObject *guiObject,
95   unsigned int index)
96   : PIRKeysetMetaData(
97       "TV Keyset 2",
98       RCA_Make,
99       index)
100 {
101   NECProtocol *np = new NECProtocol(
102     guiObject,
103     index,
104     500, 1000,
105     500, 2000,
106     12390, false,
107     LIRC_NEC);
108
109   threadableProtocol = np;
110   np->setHeaderPair(17355, 3978);
111   np->setTrailerPulse(897);
112
113   setPreData(0xF, 4);
114
115   addKey("off", PowerOff_Key, 0x3B0C4, 20);
116   addKey("on", PowerOn_Key, 0x3A0C5, 20);
117   addKey("display", Info_Key, 0x3C0C3, 20);
118   addKey("reset", Reset_Key, 0x120ED, 20);
119   addKey("pc", PrevChannel_Key, 0x270D8, 20);
120   addKey("1", One_Key, 0x310CE, 20);
121   addKey("2", Two_Key, 0x320CD, 20);
122   addKey("3", Three_Key, 0x330CC, 20);
123   addKey("4", Four_Key, 0x340CB, 20);
124   addKey("5", Five_Key, 0x350CA, 20);
125   addKey("6", Six_Key, 0x360C9, 20);
126   addKey("7", Seven_Key, 0x370C8, 20);
127   addKey("8", Eight_Key, 0x380C7, 20);
128   addKey("9", Nine_Key, 0x390C6, 20);
129   addKey("0", Zero_Key, 0x300CF, 20);
130   addKey("ch+", ChannelUp_Key, 0x2D0D2, 20);
131   addKey("ch-", ChannelDown_Key, 0x2C0D3, 20);
132   addKey("vol+", VolumeUp_Key, 0x2F0D0, 20);
133   addKey("vol-", VolumeDown_Key, 0x2E0D1, 20);
134   addKey("vid+", Unmapped_Key, 0x6409B, 20);
135   addKey("vid-", Unmapped_Key, 0xE201D, 20);
136   addKey("setup+", Unmapped_Key, 0x6509A, 20);
137   addKey("setup-", Unmapped_Key, 0x180E7, 20);
138   addKey("mute", Mute_Key, 0x3F0C0, 20);
139 }
140
141
142 RCAAux1::RCAAux1(
143   QObject *guiObject,
144   unsigned int index)
145   : PIRKeysetMetaData(
146       "Aux(?) Keyset 1",
147       RCA_Make,
148       index)
149 {
150   NECProtocol *np = new NECProtocol(
151     guiObject,
152     index,
153     500, 1000,
154     500, 2000,
155     64500, true,
156     LIRC_NEC);
157
158   threadableProtocol = np;
159
160   np->setHeaderPair(4000, 4000);
161   np->setTrailerPulse(500);
162
163   setPreData(0x4, 4);
164
165   addKey("aux1_power", Power_Key, 0x2ABD5, 20);
166   addKey("skip", Advance_Key, 0x53BAC, 20);
167   addKey("aux-ch+", ChannelUp_Key, 0x2DBD2, 20);
168   addKey("aux-ch-", ChannelDown_Key, 0x2CBD3, 20);
169   addKey("aux-fetch", Unmapped_Key, 0x93B6C, 20);
170   addKey("aux-go-back", PrevChannel_Key, 0x27BD8, 20);
171   addKey("aux-guide", Guide_Key, 0x1ABE5, 20);
172   addKey("aux-up", Up_Key, 0x59BA6, 20);
173   addKey("aux-info", Info_Key, 0x3CBC3, 20);
174   addKey("aux-left", Left_Key, 0x56BA9, 20);
175   addKey("aux-ok", Select_Key, 0xF4B0B, 20);
176   addKey("aux-right", Right_Key, 0x57BA8, 20);
177   addKey("aux-menu", Menu_Key, 0x08BF7, 20);
178   addKey("aux-down", Down_Key, 0x58BA7, 20);
179   addKey("aux-clear", Clear_Key, 0x06BF9, 20);
180   addKey("aux-clear", Exit_Key, 0x06BF9, 20);
181   addKey("aux-1", One_Key, 0x31BCE, 20);
182   addKey("aux-2", Two_Key, 0x32BCD, 20);
183   addKey("aux-3", Three_Key, 0x33BCC, 20);
184   addKey("aux-4", Four_Key, 0x34BCB, 20);
185   addKey("aux-5", Five_Key, 0x35BCA, 20);
186   addKey("aux-6", Six_Key, 0x36BC9, 20);
187   addKey("aux-7", Seven_Key, 0x37BC8, 20);
188   addKey("aux-8", Eight_Key, 0x38BC7, 20);
189   addKey("aux-9", Nine_Key, 0x39BC6, 20);
190   addKey("aux-0", Zero_Key, 0x30BCF, 20);
191   addKey("aux-who", Unmapped_Key, 0x61B9E, 20);
192   addKey("aux-antenna", Unmapped_Key, 0x05BFA, 20);
193   addKey("aux-reverse", Rewind_Key, 0x1DBE2, 20);
194   addKey("aux-play", Play_Key, 0x15BEA, 20);
195   addKey("aux-forward", FastForward_Key, 0x1CBE3, 20);
196   addKey("aux-record", Record_Key, 0x17BE8, 20);
197   addKey("aux-stop", Stop_Key, 0x1FBE0, 20);
198   addKey("aux-pause", Pause_Key, 0x19BE6, 20);
199 //  addKey("aux-mute", Mute_Key, 0x3FBC0, 20);
200 //  addKey("aux-vol-left", VolumeDown_Key, 0x2EBD1, 20);
201 //  addKey("aux-vol-right", VolumeUp_Key, 0x2FBD0, 20);
202 }
203
204
205 RCAAux2::RCAAux2(
206   QObject *guiObject,
207   unsigned int index)
208   : PIRKeysetMetaData(
209       "Aux(?) Keyset 2",
210       RCA_Make,
211       index)
212 {
213   NECProtocol *np = new NECProtocol(
214     guiObject,
215     index,
216     500, 1000,
217     500, 2000,
218     64500, true,
219     LIRC_NEC);
220
221   threadableProtocol = np;
222
223   np->setHeaderPair(4000, 4000);
224   np->setTrailerPulse(500);
225
226   setPreData(0xC, 4);
227
228   addKey("aux-on-off", Power_Key, 0x3B3C4, 20);
229   addKey("aux-mute", Mute_Key, 0x3F3C0, 20);
230   addKey("aux-who", Unmapped_Key, 0x6139E, 20);
231   addKey("aux-ch+", ChannelUp_Key, 0x2D3D2, 20);
232   addKey("aux-ch-", ChannelDown_Key, 0x2C3D3, 20);
233   addKey("aux-vol-left", VolumeDown_Key, 0x2E3D1, 20);
234   addKey("aux-vol-right", VolumeUp_Key, 0x2F3D0, 20);
235   addKey("aux-fetch", Unmapped_Key, 0x9336C, 20);
236   addKey("aux-go-back", PrevChannel_Key, 0x273D8, 20);
237   addKey("aux-guide", Guide_Key, 0x1A3E5, 20);
238   addKey("aux-info", Info_Key, 0x3C3C3, 20);
239   addKey("aux-menu", Menu_Key, 0x083F7, 20);
240   addKey("aux-clear", Clear_Key, 0x063F9, 20);
241   addKey("aux-clear", Exit_Key, 0x063F9, 20);
242   addKey("aux-up", Up_Key, 0x593A6, 20);
243   addKey("aux-down", Down_Key, 0x583A7, 20);
244   addKey("aux-right", Right_Key, 0x573A8, 20);
245   addKey("aux-left", Left_Key, 0x563A9, 20);
246   addKey("aux-ok", Select_Key, 0xF430B, 20);
247   addKey("aux-1", One_Key, 0x313CE, 20);
248   addKey("aux-2", Two_Key, 0x323CD, 20);
249   addKey("aux-3", Three_Key, 0x333CC, 20);
250   addKey("aux-4", Four_Key, 0x343CB, 20);
251   addKey("aux-5", Five_Key, 0x353CA, 20);
252   addKey("aux-6", Six_Key, 0x363C9, 20);
253   addKey("aux-7", Seven_Key, 0x373C8, 20);
254   addKey("aux-8", Eight_Key, 0x383C7, 20);
255   addKey("aux-9", Nine_Key, 0x393C6, 20);
256   addKey("aux-0", Zero_Key, 0x303CF, 20);
257   addKey("aux-antenna", Unmapped_Key, 0x053FA, 20);
258   addKey("aux-reverse", Rewind_Key, 0x1D3E2, 20);
259   addKey("aux-play", Play_Key, 0x153EA, 20);
260   addKey("aux-forward", FastForward_Key, 0x1C3E3, 20);
261   addKey("aux-record", Record_Key, 0x173E8, 20);
262   addKey("aux-stop", Stop_Key, 0x1F3E0, 20);
263   addKey("aux-pause", Pause_Key, 0x193E6, 20);
264   addKey("skip", Advance_Key, 0x533AC, 20);
265 }
266
267
268 RCAAux2a::RCAAux2a(
269   QObject *guiObject,
270   unsigned int index)
271   : RCAAux2(guiObject, index)
272 {
273   setKeysetName("Aux(?) Keyset 2a");
274
275   addKey("aux2_up", Up_Key, 0x6339C, 20);
276   addKey("aux2_left", Left_Key, 0x6439B, 20);
277   addKey("aux2_right", Right_Key, 0x6539A, 20);
278   addKey("aux2_down", Down_Key, 0x6239D, 20);
279   addKey("aux2_antenna", Unmapped_Key, 0x413BE, 20);
280   addKey("aux2_whoinput", Input_Key, 0x283D7, 20);
281 }
282
283
284 RCAVCR1::RCAVCR1(
285   QObject *guiObject,
286   unsigned int index)
287   : PIRKeysetMetaData(
288       "VCR Keyset 1",
289       RCA_Make,
290       index)
291 {
292   NECProtocol *np = new NECProtocol(
293     guiObject,
294     index,
295     500, 1000,
296     500, 2000,
297     64500, true,
298     LIRC_NEC);
299
300   threadableProtocol = np;
301
302   np->setHeaderPair(4000, 4000);
303   np->setTrailerPulse(500);
304
305 //  np->setMinimumRepetitions(1);
306
307   setPreData(0xE, 4);
308
309   addKey("vcr1-on-off", Power_Key, 0x2A1D5, 20);
310   addKey("vcr1-who", Unmapped_Key, 0x6119E, 20);
311   addKey("vcr1-ch+", ChannelUp_Key, 0x2D1D2, 20);
312   addKey("vcr1-ch-", ChannelDown_Key, 0x2C1D3, 20);
313   addKey("vcr1-fetch", Unmapped_Key, 0x9316C, 20);
314   addKey("vcr1-go-back", PrevChannel_Key, 0x271D8, 20);
315   addKey("vcr1-guide", Guide_Key, 0x1A1E5, 20);
316   addKey("vcr1-info", Info_Key, 0x3C1C3, 20);
317   addKey("vcr1-ok", Select_Key, 0xF410B, 20);
318   addKey("vcr1-up", Up_Key, 0x591A6, 20);
319   addKey("vcr1-down", Down_Key, 0x581A7, 20);
320   addKey("vcr1-left", Left_Key, 0x561A9, 20);
321   addKey("vcr1-right", Right_Key, 0x571A8, 20);
322   addKey("vcr1-menu", Menu_Key, 0x081F7, 20);
323   addKey("vcr1-clear", Clear_Key, 0x061F9, 20);
324   addKey("vcr1-clear", Exit_Key, 0x061F9, 20);
325   addKey("vcr1-1", One_Key, 0x311CE, 20);
326   addKey("vcr1-2", Two_Key, 0x321CD, 20);
327   addKey("vcr1-3", Three_Key, 0x331CC, 20);
328   addKey("vcr1-4", Four_Key, 0x341CB, 20);
329   addKey("vcr1-5", Five_Key, 0x351CA, 20);
330   addKey("vcr1-6", Six_Key, 0x361C9, 20);
331   addKey("vcr1-7", Seven_Key, 0x371C8, 20);
332   addKey("vcr1-8", Eight_Key, 0x381C7, 20);
333   addKey("vcr1-9", Nine_Key, 0x391C6, 20);
334   addKey("vcr1-0", Zero_Key, 0x301CF, 20);
335   addKey("vcr1-input", Input_Key, 0x471B8, 20);
336   addKey("vcr1-antenna", Unmapped_Key, 0x051FA, 20);
337   addKey("vcr1-reverse", Rewind_Key, 0x1D1E2, 20);
338   addKey("vcr1-play", Play_Key, 0x151EA, 20);
339   addKey("vcr1-forward", FastForward_Key, 0x1C1E3, 20);
340   addKey("vcr1-record", Record_Key, 0x171E8, 20);
341   addKey("vcr1-stop", Stop_Key, 0x1F1E0, 20);
342   addKey("vcr1-pause", Pause_Key, 0x191E6, 20);
343   addKey("skip", Advance_Key, 0x531AC, 20);
344   addKey("vcr", Unmapped_Key, 0x3A1C5, 20);
345   addKey("vcr_again", Unmapped_Key, 0x461B9, 20);
346   addKey("trackplus", TrackingPlus_Key, 0x0B1F4, 20);
347   addKey("trackminus", TrackingMinus_Key, 0x0A1F5, 20);
348 }
349
350
351 RCAVCR2::RCAVCR2(
352   QObject *guiObject,
353   unsigned int index)
354   : PIRKeysetMetaData(
355       "VCR(alt?) Keyset 2",
356       RCA_Make,
357       index)
358 {
359   NECProtocol *np = new NECProtocol(
360     guiObject,
361     index,
362     500, 1000,
363     500, 2000,
364     64500, true,
365     LIRC_NEC);
366
367   threadableProtocol = np;
368
369   np->setHeaderPair(4000, 4000);
370   np->setTrailerPulse(500);
371
372   setPreData(0xD, 4);
373
374   addKey("vcr2-on-off", Power_Key, 0x2A2D5, 20);
375   addKey("vcr2-who", Unmapped_Key, 0x6129E, 20);
376   addKey("vcr2-ch+", ChannelUp_Key, 0x2D2D2, 20);
377   addKey("vcr2-ch-", ChannelDown_Key, 0x2C2D3, 20);
378   addKey("vcr2-fetch", Unmapped_Key, 0x9326C, 20);
379   addKey("vcr2-go-back", PrevChannel_Key, 0x272D8, 20);
380   addKey("vcr2-guide", Guide_Key, 0x1A2E5, 20);
381   addKey("vcr2-info", Info_Key, 0x3C2C3, 20);
382   addKey("vcr2-ok", Select_Key, 0xF420B, 20);
383   addKey("vcr2-up", Up_Key, 0x592A6, 20);
384   addKey("vcr2-down", Down_Key, 0x582A7, 20);
385   addKey("vcr2-left", Left_Key, 0x562A9, 20);
386   addKey("vcr2-right", Right_Key, 0x572A8, 20);
387   addKey("vcr2-menu", Menu_Key, 0x082F7, 20);
388   addKey("vcr2-clear", Clear_Key, 0x062F9, 20);
389   addKey("vcr2-clear", Exit_Key, 0x062F9, 20);
390   addKey("vcr2-1", One_Key, 0x312CE, 20);
391   addKey("vcr2-2", Two_Key, 0x322CD, 20);
392   addKey("vcr2-3", Three_Key, 0x332CC, 20);
393   addKey("vcr2-4", Four_Key, 0x342CB, 20);
394   addKey("vcr2-5", Five_Key, 0x352CA, 20);
395   addKey("vcr2-6", Six_Key, 0x362C9, 20);
396   addKey("vcr2-7", Seven_Key, 0x372C8, 20);
397   addKey("vcr2-8", Eight_Key, 0x382C7, 20);
398   addKey("vcr2-9", Nine_Key, 0x392C6, 20);
399   addKey("vcr2-0", Zero_Key, 0x302CF, 20);
400   addKey("vcr2-input", Input_Key, 0x472B8, 20);
401   addKey("vcr2-antenna", Unmapped_Key, 0x052FA, 20);
402   addKey("vcr2-reverse", Rewind_Key, 0x1D2E2, 20);
403   addKey("vcr2-play", Play_Key, 0x152EA, 20);
404   addKey("vcr2-forward", FastForward_Key, 0x1C2E3, 20);
405   addKey("vcr2-record", Record_Key, 0x172E8, 20);
406   addKey("vcr2-stop", Stop_Key, 0x1F2E0, 20);
407   addKey("vcr2-pause", Pause_Key, 0x192E6, 20);
408   addKey("skip", Advance_Key, 0x532AC, 20);
409 }
410
411
412 RCADVD1::RCADVD1(
413   QObject *guiObject,
414   unsigned int index)
415   : PIRKeysetMetaData(
416       "DVD Keyset 1",
417       RCA_Make,
418       index)
419 {
420   NECProtocol *np = new NECProtocol(
421     guiObject,
422     index,
423     500, 1000,
424     500, 2000,
425     64500, true,
426     LIRC_NEC);
427
428   threadableProtocol = np;
429
430   np->setHeaderPair(4000, 4000);
431   np->setTrailerPulse(500);
432
433   setPreData(0x5, 4);
434
435   addKey("dvd-on-off", Power_Key, 0x2AAD5, 20);
436   addKey("dvd-who", Unmapped_Key, 0x61A9E, 20);
437   addKey("dvd-ch+", ChannelUp_Key, 0x2DAD2, 20);
438   addKey("dvd-ch-", ChannelDown_Key, 0x2CAD3, 20);
439   addKey("dvd-fetch", Unmapped_Key, 0x93A6C, 20);
440   addKey("dvd-go-back", PrevChannel_Key, 0x27AD8, 20);
441   addKey("dvd-guide", Guide_Key, 0x1AAE5, 20);
442   addKey("dvd-info", Info_Key, 0x3CAC3, 20);
443   addKey("dvd-ok", Select_Key, 0xF4A0B, 20);
444   addKey("dvd-up", Up_Key, 0x59AA6, 20);
445   addKey("dvd-down", Down_Key, 0x58AA7, 20);
446   addKey("dvd-left", Left_Key, 0x56AA9, 20);
447   addKey("dvd-right", Right_Key, 0x57AA8, 20);
448   addKey("dvd-menu", Menu_Key, 0x08AF7, 20);
449   addKey("dvd-clear", Clear_Key, 0x06AF9, 20);
450   addKey("dvd-clear", Exit_Key, 0x06AF9, 20);
451   addKey("dvd-1", One_Key, 0x31ACE, 20);
452   addKey("dvd-2", Two_Key, 0x32ACD, 20);
453   addKey("dvd-3", Three_Key, 0x33ACC, 20);
454   addKey("dvd-4", Four_Key, 0x34ACB, 20);
455   addKey("dvd-5", Five_Key, 0x35ACA, 20);
456   addKey("dvd-6", Six_Key, 0x36AC9, 20);
457   addKey("dvd-7", Seven_Key, 0x37AC8, 20);
458   addKey("dvd-8", Eight_Key, 0x38AC7, 20);
459   addKey("dvd-9", Nine_Key, 0x39AC6, 20);
460   addKey("dvd-0", Zero_Key, 0x30ACF, 20);
461   addKey("dvd-input", Input_Key, 0x47AB8, 20);
462   addKey("dvd-antenna", Unmapped_Key, 0x05AFA, 20); // tv_vcr
463   addKey("dvd-reverse", Rewind_Key, 0x1DAE2, 20);
464   addKey("dvd-play", Play_Key, 0x15AEA, 20);
465   addKey("dvd-forward", FastForward_Key, 0x1CAE3, 20);
466   addKey("dvd-record", Record_Key, 0x17AE8, 20);
467   addKey("dvd-stop", Stop_Key, 0x1FAE0, 20);
468   addKey("dvd-pause", Pause_Key, 0x19AE6, 20);
469   addKey("skip", Advance_Key, 0x53AAC, 20);
470   addKey("dvd_again", Replay_Key, 0xBAA45, 20);
471   addKey("dvd_open_close", Eject_Key, 0x40ABF, 20);
472   addKey("dvd_zoom", Zoom_Key, 0x90A6F, 20);
473   addKey("dvd_preset", Unmapped_Key, 0x12AED, 20);
474   addKey("dvd", Unmapped_Key, 0x3AAC5, 20);
475 }
476
477
478 RCADVD1a::RCADVD1a(
479   QObject *guiObject,
480   unsigned int index)
481   : RCADVD1(guiObject, index)
482 {
483   setKeysetName("DVD Keyset 1a");
484
485   addKey("dvd_ch+", ChannelUp_Key, 0x20ADF, 20);
486   addKey("dvd_ch-", ChannelDown_Key, 0x22ADD, 20);
487 }
488
489
490 RCASat1::RCASat1(
491   QObject *guiObject,
492   unsigned int index)
493   : PIRKeysetMetaData(
494       "Satellite(DirecTV) Keyset 1",
495       RCA_Make,
496       index)
497 {
498   NECProtocol *np = new NECProtocol(
499     guiObject,
500     index,
501     500, 1000,
502     500, 2000,
503     64500, true,
504     LIRC_NEC);
505
506   threadableProtocol = np;
507
508   np->setHeaderPair(4000, 4000);
509   np->setTrailerPulse(500);
510
511   setPreData(0x7, 4);
512
513   addKey("on-off", Power_Key, 0x2A8D5, 20);
514   addKey("who", Unmapped_Key, 0x6189E, 20); // "cc", "-"
515   addKey("ch+", ChannelUp_Key, 0x2D8D2, 20);
516   addKey("ch-", ChannelDown_Key, 0x2C8D3, 20);
517   addKey("fetch", Unmapped_Key, 0x9386C, 20);
518   addKey("go-back", PrevChannel_Key, 0x278D8, 20);
519   addKey("guide", Guide_Key, 0x1A8E5, 20);
520   addKey("info", Info_Key, 0x3C8C3, 20);
521   addKey("ok", Select_Key, 0xF480B, 20);
522   addKey("ok", Enter_Key, 0xF480B, 20);
523   addKey("up", Up_Key, 0x598A6, 20);
524   addKey("down", Down_Key, 0x588A7, 20);
525   addKey("left", Left_Key, 0x568A9, 20);
526   addKey("right", Right_Key, 0x578A8, 20);
527   addKey("menu", Menu_Key, 0x088F7, 20);
528   addKey("clear", Clear_Key, 0x068F9, 20);
529   addKey("clear", Exit_Key, 0x068F9, 20);
530   addKey("1", One_Key, 0x318CE, 20);
531   addKey("2", Two_Key, 0x328CD, 20);
532   addKey("3", Three_Key, 0x338CC, 20);
533   addKey("4", Four_Key, 0x348CB, 20);
534   addKey("5", Five_Key, 0x358CA, 20);
535   addKey("6", Six_Key, 0x368C9, 20);
536   addKey("7", Seven_Key, 0x378C8, 20);
537   addKey("8", Eight_Key, 0x388C7, 20);
538   addKey("9", Nine_Key, 0x398C6, 20);
539   addKey("0", Zero_Key, 0x308CF, 20);
540   addKey("hd-input", Input_Key, 0x478B8, 20);
541   addKey("antenna", Unmapped_Key, 0x058FA, 20); // "TV/VCR"
542   addKey("hd-reverse", Rewind_Key, 0x1D8E2, 20);
543   addKey("hd-play", Play_Key, 0x158EA, 20);
544   addKey("hd-forward", FastForward_Key, 0x1C8E3, 20);
545   addKey("hd-record", Record_Key, 0x178E8, 20);
546   addKey("hd-stop", Stop_Key, 0x1F8E0, 20);
547   addKey("hd-pause", Pause_Key, 0x198E6, 20);
548   addKey("skip", Advance_Key, 0x538AC, 20);
549   addKey("SAT", Unmapped_Key, 0x3A8C5, 20);
550   addKey("PIP", PIP_Key, 0x1B8E4, 20);
551   addKey("SWAP", PIPSwap_Key, 0xC383C, 20);
552   addKey("INPUT", Unmapped_Key, 0x6189E, 20);
553 }
554
555
556 RCASat2::RCASat2(
557   QObject *guiObject,
558   unsigned int index)
559   : PIRKeysetMetaData(
560       "Satellite (Dish Network) Keyset 2",
561       RCA_Make,
562       index)
563 {
564   NECProtocol *np = new NECProtocol(
565     guiObject,
566     index,
567     440, 2780,
568     440, 1645,
569     6115, false,
570     LIRC_NEC);
571
572   threadableProtocol = np;
573
574   np->setHeaderPair(525, 6045);
575   np->setTrailerPulse(450);
576
577 //  np->setMinimumRepetitions(6);
578   np->setFullHeadlessRepeat(true);
579
580   np->setCarrierFrequency(56000);
581   np->setDutyCycle(32);
582
583   setPostData(0x000, 10);
584
585   addKey("info", Info_Key, 0x0, 6);
586   addKey("power_on", PowerOn_Key, 0x1, 6);
587   addKey("power", Power_Key, 0x2, 6);
588   addKey("1", One_Key, 0x4, 6);
589   addKey("2", Two_Key, 0x5, 6);
590   addKey("3", Three_Key, 0x6, 6);
591   addKey("4", Four_Key, 0x8, 6);
592   addKey("5", Five_Key, 0x9, 6);
593   addKey("6", Six_Key, 0x10, 6);
594   addKey("7", Seven_Key, 0x12, 6);
595   addKey("8", Eight_Key, 0x13, 6);
596   addKey("9", Nine_Key, 0x14, 6);
597   addKey("0", Zero_Key, 0x17, 6);
598   addKey("menu", Menu_Key, 0x11, 6);
599   addKey("select", Select_Key, 0x16, 6);
600   addKey("cancel", Exit_Key, 0x18, 6);
601   addKey("guide", Guide_Key, 0x20, 6);
602   addKey("view", Unmapped_Key, 0x22, 6);
603   addKey("tv_vcr", Input_Key, 0x23, 6);
604   addKey("right", Right_Key, 0x24, 6);
605   addKey("up", Up_Key, 0x26, 6);
606   addKey("recall", PrevChannel_Key, 0x27, 6);
607   addKey("left", Left_Key, 0x28, 6);
608   addKey("down", Down_Key, 0x30, 6);
609   addKey("record", Record_Key, 0x31, 6);
610   addKey("pause", Pause_Key, 0x32, 6);
611   addKey("stop", Stop_Key, 0x33, 6);
612   addKey("sys_info", Info_Key, 0x36, 6);
613   addKey("asterisk", Unmapped_Key, 0x37, 6);
614   addKey("pound", Unmapped_Key, 0x38, 6);
615   addKey("power_off", PowerOff_Key, 0x39, 6);
616   addKey("sat", Unmapped_Key, 0x41, 6);
617   addKey("dish_home", Unmapped_Key, 0x52, 6);
618   addKey("sys_info2", Unmapped_Key, 0x54, 6);
619   addKey("dish_home2", Unmapped_Key, 0x56, 6);
620 }