Lots of Keysets
[pierogi] / keysets / grundig.cpp
1 #include "grundig.h"
2 #include "protocols/rc5protocol.h"
3 #include "protocols/necxprotocol.h"
4 #include "protocols/necprotocol.h"
5
6 // This one is iffy, might be another brand:
7 GrundigSat1::GrundigSat1(
8   QObject *guiObject,
9   unsigned int index)
10   : PIRKeysetMetaData(
11       "Satellite Keyset 1",
12       Grundig_Make,
13       index)
14 {
15   threadableProtocol = new RC5Protocol(guiObject, index);
16
17   addKey("Mute", Mute_Key, 0x0286, 13);
18   addKey("Guide", Guide_Key, 0x028F, 13);
19   addKey("Up", Up_Key, 0x0290, 13);
20   addKey("Down", Down_Key, 0x0291, 13);
21   addKey("Serv", Unmapped_Key, 0x0292, 13);
22   addKey("Exit", Exit_Key, 0x0293, 13);
23   addKey("Left", Left_Key, 0x0295, 13);
24   addKey("Right", Right_Key, 0x0296, 13);
25   addKey("OK", Select_Key, 0x0297, 13);
26   addKey("Prefer", Unmapped_Key, 0x02A1, 13);
27   addKey("Perso", Unmapped_Key, 0x02AA, 13);
28   addKey("A", Unmapped_Key, 0x02AB, 13);
29   addKey("B", Unmapped_Key, 0x02AC, 13);
30   addKey("C", Unmapped_Key, 0x02AD, 13);
31   addKey("D", Unmapped_Key, 0x02AE, 13);
32   addKey("E", Unmapped_Key, 0x02AF, 13);
33
34   addKey("1", One_Key, 0x1281, 13);
35   addKey("2", Two_Key, 0x1282, 13);
36   addKey("3", Three_Key, 0x1283, 13);
37   addKey("4", Four_Key, 0x1284, 13);
38   addKey("5", Five_Key, 0x1285, 13);
39   addKey("6", Six_Key, 0x1286, 13);
40   addKey("7", Seven_Key, 0x1287, 13);
41   addKey("8", Eight_Key, 0x1288, 13);
42   addKey("9", Nine_Key, 0x1289, 13);
43   addKey("0", Zero_Key, 0x1280, 13);
44   addKey("Standby", Power_Key, 0x128C, 13);
45   addKey("Info", Info_Key, 0x128F, 13);
46   addKey("TV/Sat", Input_Key, 0x12A8, 13);
47   addKey("Plus", Unmapped_Key, 0x12AF, 13);
48 }
49
50
51 GrundigSat2::GrundigSat2(
52   QObject *guiObject,
53   unsigned int index)
54   : PIRKeysetMetaData(
55       "Satellite Keyset 2",
56       Grundig_Make,
57       index)
58 {
59   addControlledDevice(Grundig_Make, "STR 7100", Sat_Device);
60
61   threadableProtocol = new RC5Protocol(guiObject, index);
62
63   addKey("POWER", Power_Key, 0x017B, 13);
64   addKey("Audio", Audio_Key, 0x00D3, 13);
65   addKey(">|", StepForward_Key, 0x008B, 13);
66   addKey("|<", StepBack_Key, 0x00BB, 13);
67   addKey("1", One_Key, 0x00EB, 13);
68   addKey("2", Two_Key, 0x016B, 13);
69   addKey("3", Three_Key, 0x006B, 13);
70   addKey("4", Four_Key, 0x01AB, 13);
71   addKey("5", Five_Key, 0x00AB, 13);
72   addKey("6", Six_Key, 0x012B, 13);
73   addKey("7", Seven_Key, 0x002B, 13);
74   addKey("8", Eight_Key, 0x01CB, 13);
75   addKey("9", Nine_Key, 0x00CB, 13);
76   addKey("0", Zero_Key, 0x01EB, 13);
77   addKey("i", Info_Key, 0x0093, 13);  // "OSD"
78   addKey("MUTE", Mute_Key, 0x00FB, 13);
79   addKey("P+", ChannelUp_Key, 0x0153, 13);
80   addKey("P-", ChannelDown_Key, 0x0053, 13);
81   addKey("-", VolumeDown_Key, 0x00DB, 13);
82   addKey("+", VolumeUp_Key, 0x01DB, 13);
83   addKey("OK", Select_Key, 0x01FB, 13);
84   addKey("AUX", AuxInput_Key, 0x003B, 13); // "DiscMenu"
85   addKey("TXT", Teletext_Key, 0x01E3, 13);
86   addKey("RED", Red_Key, 0x0143, 13);
87   addKey("GREEN", Green_Key, 0x0103, 13);
88   addKey("YELLOW", Yellow_Key, 0x0043, 13);
89   addKey("BLUE", Blue_Key, 0x0113, 13);
90   addKey("COL-", ColorDown_Key, 0x009B, 13);
91   addKey("COL+", ColorUp_Key, 0x019B, 13);
92   addKey("BRIGHT-", BrightnessDown_Key, 0x005B, 13);
93   addKey("BRIGHT+", BrightnessUp_Key, 0x015B, 13);
94   addKey("TV-G", Unmapped_Key, 0x01BB, 13);
95 }
96
97
98 GrundigAmp1::GrundigAmp1(
99   QObject *guiObject,
100   unsigned int index)
101   : PIRKeysetMetaData(
102       "Amp Keyset 1",
103       Grundig_Make,
104       index)
105 {
106   addControlledDevice(Grundig_Make, "FineArts Amplifier V1", Audio_Device);
107
108   threadableProtocol = new RC5Protocol(guiObject, index);
109
110   addKey("number_10", Zero_Key, 0x1C00, 13);
111   addKey("number_1", One_Key, 0x1C01, 13);
112   addKey("number_2", Two_Key, 0x1C02, 13);
113   addKey("number_3", Three_Key, 0x1C03, 13);
114   addKey("number_4", Four_Key, 0x1C04, 13);
115   addKey("number_5", Five_Key, 0x1C05, 13);
116   addKey("number_6", Six_Key, 0x1C06, 13);
117   addKey("number_7", Seven_Key, 0x1C07, 13);
118   addKey("number_8", Eight_Key, 0x1C08, 13);
119   addKey("number_9", Nine_Key, 0x1C09, 13);
120   addKey("mute", Mute_Key, 0x1C0D, 13);
121   addKey("volume_+", VolumeUp_Key, 0x1C10, 13);
122   addKey("volume_-", VolumeDown_Key, 0x1C11, 13);
123   addKey("standby", Power_Key, 0x1C3D, 13);
124
125   addKey("tuner_up", ChannelUp_Key, 0x1C60, 13);
126   addKey("tuner_down", ChannelDown_Key, 0x1C61, 13);
127   addKey("tuner", TunerInput_Key, 0x1C7F, 13);
128
129   addKey("tape_play_back", Unmapped_Key, 0x1CAF, 13);
130   addKey("tape_pause", Unmapped_Key, 0x1CB0, 13);
131   addKey("tape_fastrewind", Unmapped_Key, 0x1CB2, 13);
132   addKey("tape_fastforward", Unmapped_Key, 0x1CB4, 13);
133   addKey("tape_play_forward", Unmapped_Key, 0x1CB5, 13);
134   addKey("tape_stop", Unmapped_Key, 0x1CB6, 13);
135   addKey("tape_record", Unmapped_Key, 0x1CB7, 13);
136   addKey("tape", TapeInput_Key, 0x1CBF, 13);
137
138   addKey("cd_fastforward", FastForward_Key, 0x1D20, 13);
139   addKey("cd_fastrewind", Rewind_Key, 0x1D21, 13);
140   addKey("cd_pause", Pause_Key, 0x1D30, 13);
141   addKey("cd_play", Play_Key, 0x1D35, 13);
142   addKey("cd_stop", Stop_Key, 0x1D36, 13);
143   addKey("cd", CDInput_Key, 0x1D3F, 13);
144
145   addKey("phono", PhonoInput_Key, 0x1D7F, 13);
146   addKey("dsr_up", Unmapped_Key, 0x1DA0, 13);
147   addKey("dsr_down", Unmapped_Key, 0x1DA1, 13);
148   addKey("dsr_aux", AuxInput_Key, 0x1DBF, 13);
149
150   addKey("dcc_play_back", Unmapped_Key, 0x1DEF, 13);
151   addKey("dcc_pause", Unmapped_Key, 0x1DF0, 13);
152   addKey("dcc_fastrewind", Unmapped_Key, 0x1DF2, 13);
153   addKey("dcc_fastforward", Unmapped_Key, 0x1DF4, 13);
154   addKey("dcc_play_forward", Unmapped_Key, 0x1DF5, 13);
155   addKey("dcc_stop", Unmapped_Key, 0x1DF6, 13);
156   addKey("dcc_record", Unmapped_Key, 0x1DF7, 13);
157   addKey("dcc", Unmapped_Key, 0x1DFF, 13);
158 }
159
160
161 GrundigAudio1::GrundigAudio1(
162   QObject *guiObject,
163   unsigned int index)
164   : PIRKeysetMetaData(
165       "Audio(CD) Keyset 1",
166       Grundig_Make,
167       index)
168 {
169   addControlledDevice(Grundig_Make, "CD 8400", Audio_Device);
170
171   threadableProtocol = new RC5Protocol(guiObject, index);
172
173   addKey("0", Zero_Key, 0x1D00, 13);
174   addKey("1", One_Key, 0x1D01, 13);
175   addKey("2", Two_Key, 0x1D02, 13);
176   addKey("3", Three_Key, 0x1D03, 13);
177   addKey("4", Four_Key, 0x1D04, 13);
178   addKey("5", Five_Key, 0x1D05, 13);
179   addKey("6", Six_Key, 0x1D06, 13);
180   addKey("7", Seven_Key, 0x1D07, 13);
181   addKey("8", Eight_Key, 0x1D08, 13);
182   addKey("9", Nine_Key, 0x1D09, 13);
183   addKey("10+", DoubleDigit_Key, 0x1D0A, 13); // hack
184   addKey("20+", PlusOneHundred_Key, 0x1D0B, 13); // also hack
185
186   addKey("repeat", Repeat_Key, 0x1D1D, 13);
187
188   addKey("track+", Next_Key, 0x1D20, 13);
189   addKey("track-", Previous_Key, 0x1D21, 13);
190   addKey("index+", Unmapped_Key, 0x1D22, 13);
191   addKey("index-", Unmapped_Key, 0x1D23, 13);
192   addKey("store", Memory_Key, 0x1D29, 13);
193   addKey("scan", Scan_Key, 0x1D2B, 13);
194
195   addKey("pause", Pause_Key, 0x1D30, 13);
196   addKey("skip-", Replay_Key, 0x1D32, 13);
197   addKey("skip+", Advance_Key, 0x1D34, 13);
198   addKey("play", Play_Key, 0x1D35, 13);
199   addKey("stop", Stop_Key, 0x1D36, 13);
200 }
201
202
203 GrundigAudio2::GrundigAudio2(
204   QObject *guiObject,
205   unsigned int index)
206   : PIRKeysetMetaData(
207       "Audio Keyset 2",
208       Grundig_Make,
209       index)
210 {
211   addControlledDevice(Grundig_Make, "CDM 700", Audio_Device);
212   addControlledDevice(Grundig_Make, "UMS-9V", Audio_Device);
213
214   threadableProtocol = new NECXProtocol(guiObject, index, true);
215
216   setPreData(0xA2A2, 16);
217
218   addKey("1", One_Key, 0x01, 8);
219   addKey("5", Five_Key, 0x02, 8);
220   addKey("9", Nine_Key, 0x03, 8);
221   addKey("tuning_down", ChannelDown_Key, 0x04, 8);
222   addKey("display", Info_Key, 0x05, 8); // "MODE_remain
223   addKey("on/off", Power_Key, 0x06, 8);
224   addKey("tuner", TunerInput_Key, 0x07, 8);
225   addKey("2", Two_Key, 0x09, 8);
226   addKey("6", Six_Key, 0x0A, 8);
227   addKey("0", Zero_Key, 0x0B, 8);
228   addKey("tuning_up", ChannelUp_Key, 0x0C, 8);
229   addKey("random", Random_Key, 0x0D, 8);
230   addKey("band", TunerBand_Key, 0x0E, 8);
231   addKey("cd", CDInput_Key, 0x0F, 8);
232
233   addKey("3", Three_Key, 0x11, 8);
234   addKey("7", Seven_Key, 0x12, 8);
235   addKey("play/pause", Play_Key, 0x13, 8);
236   addKey("play/pause", Pause_Key, 0x13, 8);
237   addKey("time_program", Program_Key, 0x14, 8); // "MEMORY_clock"
238   addKey("intro", Unmapped_Key, 0x15, 8);
239   addKey("SLEEP", Sleep_Key, 0x17, 8);
240   addKey("4", Four_Key, 0x19, 8);
241   addKey("8", Eight_Key, 0x1A, 8);
242   addKey("stop", Stop_Key, 0x1B, 8);
243   addKey("repeat/scan", Repeat_Key, 0x1C, 8);
244   addKey("repeat/scan", Scan_Key, 0x1C, 8);
245   addKey("BASS", EnhancedBass_Key, 0x1D, 8);
246   addKey("tape", TapeInput_Key, 0x1E, 8);
247   addKey("TIMER", Timer_Key, 0x1F, 8);
248
249   addKey("volume_up", VolumeUp_Key, 0x20, 8);
250   addKey("volume_down", VolumeDown_Key, 0x60, 8);
251   addKey("mute", Mute_Key, 0xA0, 8);
252   addKey("+10", DoubleDigit_Key, 0xE0, 8);
253 }
254
255
256 GrundigVCR1::GrundigVCR1(
257   QObject *guiObject,
258   unsigned int index)
259   : PIRKeysetMetaData(
260       "VCR Keyset 1",
261       Grundig_Make,
262       index)
263 {
264   addControlledDevice(Grundig_Make, "GV 437", VCR_Device);
265
266   threadableProtocol = new RC5Protocol(guiObject, index);
267
268   addKey("SYSTEM", Menu_Key, 0x014A, 13);
269   addKey("OK", Select_Key, 0x0157, 13);
270   addKey("next", Next_Key, 0x0170, 13);
271   addKey("previous", Previous_Key, 0x0171, 13);
272   addKey("MONITOR", Unmapped_Key, 0x017A, 13);
273   addKey("tuner", TunerInput_Key, 0x017D, 13);
274   addKey("cass", Eject_Key, 0x017E, 13); // might be wrong
275
276   addKey("0", Zero_Key, 0x1140, 13);
277   addKey("1", One_Key, 0x1141, 13);
278   addKey("2", Two_Key, 0x1142, 13);
279   addKey("3", Three_Key, 0x1143, 13);
280   addKey("4", Four_Key, 0x1144, 13);
281   addKey("5", Five_Key, 0x1145, 13);
282   addKey("6", Six_Key, 0x1146, 13);
283   addKey("7", Seven_Key, 0x1147, 13);
284   addKey("8", Eight_Key, 0x1148, 13);
285   addKey("9", Nine_Key, 0x1149, 13);
286   addKey("SELECT", Enter_Key, 0x114B, 13); // "selvps"
287   addKey("standby", Power_Key, 0x114C, 13); // "OFF"
288   addKey("tracking", AutoTracking_Key, 0x114E, 13);
289
290   addKey("TIMER", Timer_Key, 0x115D, 13);
291
292   // Just guessing at what + and - mean here:
293   addKey("+", ChannelUp_Key, 0x1160, 13);
294   addKey("-", ChannelDown_Key, 0x1161, 13);
295   addKey("REW", Rewind_Key, 0x1165, 13);
296   addKey("FF", FastForward_Key, 0x1166, 13);
297
298   addKey("CLEAR", Clear_Key, 0x1171, 13);
299   addKey("PLAY", Play_Key, 0x1175, 13);
300   addKey("pausestop", Pause_Key, 0x1176, 13); // "STOP"
301   addKey("pausestop", Stop_Key, 0x1176, 13); // "STOP"
302   addKey("RECORD", Record_Key, 0x1177, 13);
303   addKey("SP/LP", VHSSpeed_Key, 0x117A, 13);
304 }
305
306
307 GrundigVCR1a::GrundigVCR1a(
308   QObject *guiObject,
309   unsigned int index)
310   : GrundigVCR1(guiObject, index)
311 {
312   setKeysetName("VCR Keyset 1a");
313
314   addKey("INDEX", Unmapped_Key, 0x0170, 13);
315   addKey("PAUSE", Pause_Key, 0x1169, 13);
316 }
317
318
319 GrundigTV1::GrundigTV1(
320   QObject *guiObject,
321   unsigned int index)
322   : PIRKeysetMetaData(
323       "TV Keyset 1",
324       Grundig_Make,
325       index)
326 {
327   addControlledDevice(Grundig_Make, "ST 55-908", TV_Device);
328
329   threadableProtocol = new RC5Protocol(guiObject, index);
330
331   addKey("leer", Unmapped_Key, 0x0000, 13);
332   addKey("POWER", Power_Key, 0x017F, 13);
333   addKey("1", One_Key, 0x00EF, 13);
334   addKey("2", Two_Key, 0x016F, 13);
335   addKey("3", Three_Key, 0x006F, 13);
336   addKey("4", Four_Key, 0x01AF, 13);
337   addKey("5", Five_Key, 0x00AF, 13);
338   addKey("6", Six_Key, 0x012F, 13);
339   addKey("7", Seven_Key, 0x002F, 13);
340   addKey("8", Eight_Key, 0x1CF, 13);
341   addKey("9", Nine_Key, 0x00CF, 13);
342   addKey("0", Zero_Key, 0x01EF, 13);
343   addKey("AUX2", Unmapped_Key, 0x014F, 13);
344   addKey("BR+", BrightnessUp_Key, 0x015F, 13);
345   addKey("BR-", BrightnessDown_Key, 0x005F, 13);
346   addKey("COLOR+", ColorUp_Key, 0x019F, 13);
347   addKey("COLOR-", ColorDown_Key, 0x009F, 13);
348   addKey("AUX", AuxInput_Key, 0x003F, 13);
349   addKey("I", Info_Key, 0x0097, 13); // "Info"
350   addKey("TXT", Teletext_Key, 0x01E7, 13);
351   addKey("P+", ChannelUp_Key, 0x0157, 13);
352   addKey("P+", Up_Key, 0x0157, 13);
353   addKey("VOL-", VolumeDown_Key, 0x00DF, 13);
354   addKey("VOL-", Left_Key, 0x00DF, 13);
355   addKey("OK", Select_Key, 0x01FF, 13);
356   addKey("VOL+", VolumeUp_Key, 0x01DF, 13);
357   addKey("VOL+", Right_Key, 0x01DF, 13);
358   addKey("P-", ChannelDown_Key, 0x0057, 13);
359   addKey("P-", Down_Key, 0x0057, 13);
360   addKey("MUTE", Mute_Key, 0x00FF, 13);
361   addKey("BLUE", Blue_Key, 0x0117, 13);
362   addKey("YELLOW", Yellow_Key, 0x0047, 13);
363   addKey("GREEN", Green_Key, 0x0107, 13);
364   addKey("RED", Red_Key, 0x0147, 13);
365 }
366
367
368 GrundigTV2::GrundigTV2(
369   QObject *guiObject,
370   unsigned int index)
371   : PIRKeysetMetaData(
372       "TV Keyset 2",
373       Grundig_Make,
374       index)
375 {
376   threadableProtocol = new RC5Protocol(guiObject, index);
377
378   addKey("P+", ChannelUp_Key, 0x0010, 13);
379   addKey("P+", Up_Key, 0x0010, 13);
380   addKey("P-", ChannelDown_Key, 0x0011, 13);
381   addKey("P-", Down_Key, 0x0011, 13);
382   addKey("info", Info_Key, 0x0012, 13);
383   addKey("<-", VolumeDown_Key, 0x0015, 13);
384   addKey("<-", Left_Key, 0x0015, 13);
385   addKey("+>", VolumeUp_Key, 0x0016, 13);
386   addKey("+>", Right_Key, 0x0016, 13);
387   addKey("OK", Select_Key, 0x0017, 13);
388
389   addKey("NEXT", Next_Key, 0x0170, 13);
390   addKey("PREV", Previous_Key, 0x0171, 13);
391
392   addKey("0AV", Zero_Key, 0x1000, 13); // also AV?
393   addKey("1", One_Key, 0x1001, 13);
394   addKey("2", Two_Key, 0x1002, 13);
395   addKey("3", Three_Key, 0x1003, 13);
396   addKey("4", Four_Key, 0x1004, 13);
397   addKey("5", Five_Key, 0x1005, 13);
398   addKey("6", Six_Key, 0x1006, 13);
399   addKey("7", Seven_Key, 0x1007, 13);
400   addKey("8", Eight_Key, 0x1008, 13);
401   addKey("9", Nine_Key, 0x1009, 13);
402   addKey("power", Power_Key, 0x100C, 13);
403   addKey("mute", Mute_Key, 0x100D, 13);
404
405   addKey("br+", BrightnessUp_Key, 0x1012, 13);
406   addKey("br-", BrightnessDown_Key, 0x1013, 13);
407   addKey("col+", ColorUp_Key, 0x1014, 13);
408   addKey("col-", ColorDown_Key, 0x1015, 13);
409
410   addKey("PC/CL", Unmapped_Key, 0x1031, 13);
411
412   addKey("TXT", Teletext_Key, 0x115D, 13);
413   addKey("<<", Rewind_Key, 0x1165, 13);
414   addKey(">>", FastForward_Key, 0x1166, 13);
415   addKey("||", Pause_Key, 0x1169, 13);
416   addKey(">", Play_Key, 0x1175, 13);
417   addKey("stop", Stop_Key, 0x1176, 13);
418   addKey("REC", Record_Key, 0x1177, 13);
419 }
420
421
422 GrundigTV3::GrundigTV3(
423   QObject *guiObject,
424   unsigned int index)
425   : PIRKeysetMetaData(
426       "TV/VDR Keyset 3",
427       Grundig_Make,
428       index)
429 {
430   threadableProtocol = new RC5Protocol(guiObject, index);
431
432   addKey("USR4", Unmapped_Key, 0x0205, 13);
433   addKey("INFO", Info_Key, 0x0206, 13);
434   addKey("BACK", Exit_Key, 0x020F, 13);
435   addKey("UP", Up_Key, 0x0210, 13);
436   addKey("DOWN", Down_Key, 0x0211, 13);
437   addKey("LEFT", Left_Key, 0x0215, 13);
438   addKey("RIGHT", Right_Key, 0x0216, 13);
439   addKey("OK", Select_Key, 0x0217, 13);
440
441   addKey("RED", Red_Key, 0x022B, 13);
442   addKey("GREEN", Green_Key, 0x022C, 13);
443   addKey("YEL", Yellow_Key, 0x022D, 13);
444   addKey("BLU", Blue_Key, 0x022E, 13);
445   addKey("USR2", Unmapped_Key, 0x0235, 13);
446   addKey("USR1", Unmapped_Key, 0x023E, 13);
447
448   addKey("0", Zero_Key, 0x1200, 13);
449   addKey("1", One_Key, 0x1201, 13);
450   addKey("2", Two_Key, 0x1202, 13);
451   addKey("3", Three_Key, 0x1203, 13);
452   addKey("4", Four_Key, 0x1204, 13);
453   addKey("5", Five_Key, 0x1205, 13);
454   addKey("6", Six_Key, 0x1206, 13);
455   addKey("7", Seven_Key, 0x1207, 13);
456   addKey("8", Eight_Key, 0x1208, 13);
457   addKey("9", Nine_Key, 0x1209, 13);
458
459   addKey("MUTE", Mute_Key, 0x120D, 13);
460   addKey("REC", Record_Key, 0x120E, 13);
461   addKey("VOL+", VolumeUp_Key, 0x1210, 13);
462   addKey("VOL-", VolumeDown_Key, 0x1211, 13);
463   addKey("NEXT", Next_Key, 0x121E, 13);
464   addKey("PREV", Previous_Key, 0x121F, 13);
465   addKey("CHANNEL+", ChannelUp_Key, 0x1220, 13);
466   addKey("CHANNEL-", ChannelDown_Key, 0x1221, 13);
467   addKey("CEC", Unmapped_Key, 0x1222, 13);
468   addKey("USR3", Unmapped_Key, 0x1223, 13);
469   addKey("REW", Rewind_Key, 0x122C, 13);
470   addKey("FF", FastForward_Key, 0x122E, 13);
471
472   addKey("PAUSE", Pause_Key, 0x1230, 13);
473   addKey("PLAY", Play_Key, 0x1235, 13);
474   addKey("STOP", Stop_Key, 0x1236, 13);
475   addKey("MENU", Menu_Key, 0x123C, 13);
476 }
477
478
479 GrundigDVD1::GrundigDVD1(
480   QObject *guiObject,
481   unsigned int index)
482   : PIRKeysetMetaData(
483       "DVD Keyset 1",
484       Grundig_Make,
485       index)
486 {
487   addControlledDevice(Grundig_Make, "GDV 130", DVD_Device);
488
489   threadableProtocol = new NECProtocol(guiObject, index, false, true);
490
491   setPreData(0x10, 8);
492
493   addKey("POWER", Power_Key, 0x00, 8);
494   addKey("FF_SF", FastForward_Key, 0x01, 8);
495   addKey("OPEN_CLOSE", Eject_Key, 0x02, 8);
496   addKey("ARROW_LEFT", Left_Key, 0x03, 8);
497   addKey("STEP", StepForward_Key, 0x04, 8);
498   addKey("PREV", Previous_Key, 0x05, 8);
499   addKey("DISPLAY", Info_Key, 0x06, 8);
500   addKey("NEXT", Next_Key, 0x07, 8);
501   addKey("1", One_Key, 0x08, 8);
502   addKey("2", Two_Key, 0x09, 8);
503   addKey("3", Three_Key, 0x0A, 8);
504   addKey("ARROW_UP", Up_Key, 0x0B, 8);
505   addKey("FR_SR", Rewind_Key, 0x0C, 8);
506   addKey("SETUP", Menu_Key, 0x0D, 8);
507   addKey("TITLE", DiscTitle_Key, 0x0E, 8);
508   addKey("MENU", DiscMenu_Key, 0x0F, 8);
509
510   addKey("4", Four_Key, 0x10, 8);
511   addKey("5", Five_Key, 0x11, 8);
512   addKey("6", Six_Key, 0x12, 8);
513   addKey("SELECT", Select_Key, 0x13, 8);
514   addKey("DIGEST", Unmapped_Key, 0x14, 8);
515   addKey("ANGLE", Angle_Key, 0x15, 8);
516   addKey("SUBTITLE", Captions_Key, 0x16, 8);
517   addKey("AUDIO", Audio_Key, 0x17, 8);
518   addKey("7", Seven_Key, 0x18, 8);
519   addKey("8", Eight_Key, 0x19, 8);
520   addKey("9", Nine_Key, 0x1A, 8);
521   addKey("ARROW_RIGHT", Right_Key, 0x1B, 8);
522   addKey("PROGRAM", Program_Key, 0x1C, 8);
523   addKey("VOLUME_UP", VolumeUp_Key, 0x1D, 8);
524   addKey("ZOOM", Zoom_Key, 0x1E, 8);
525   addKey("3D_SOUND", Surround_Key, 0x1F, 8);
526
527   addKey("CLEAR", Clear_Key, 0x40, 8);
528   addKey("0", Zero_Key, 0x41, 8);
529   addKey("PCB", Unmapped_Key, 0x42, 8);
530   addKey("ARROW_DOWN", Down_Key, 0x43, 8);
531   addKey("SHUFFLE", Random_Key, 0x44, 8);
532   addKey("VOLUME_DOWN", VolumeDown_Key, 0x45, 8);
533   addKey("REPEAT", Repeat_Key, 0x46, 8);
534   addKey("A-B", RepeatAB_Key, 0x47, 8);
535   addKey("STOP/RETURN", Stop_Key, 0x48, 8);
536   addKey("STOP/RETURN", Exit_Key, 0x48, 8);
537   addKey("PLAY/PAUSE", Play_Key, 0x49, 8);
538   addKey("PLAY/PAUSE", Pause_Key, 0x49, 8);
539   addKey("MARKER", Unmapped_Key, 0x4A, 8);
540 }