Adding per-keyset editable data
[pierogi] / keysets / nad.cpp
1 #include "nad.h"
2 #include "protocols/necprotocol.h"
3 #include "protocols/necxprotocol.h"
4 #include "protocols/sircprotocol.h"
5
6
7 NADAudio1::NADAudio1(
8   unsigned int index)
9   : PIRKeysetMetaData(
10       "Receiver Component 1",
11       NAD_Make,
12       index)
13 {
14 }
15
16
17 void NADAudio1::populateProtocol(
18   QObject *guiObject)
19 {
20   if (threadableProtocol)
21   {
22     // Keyset already populated.
23     return;
24   }
25
26   threadableProtocol = new NECProtocol(guiObject, index, true, true);
27
28   setPreData(0x7C87, 16);
29
30   addKey("CD-Play", Play_Key, 0x01, 8);
31   addKey("CD-Stop", Stop_Key, 0x02, 8);
32   addKey("CD-Previous", Previous_Key, 0x05, 8);
33   addKey("CD-Next", Next_Key, 0x06, 8);
34   addKey("disp-info", Info_Key, 0x08, 8);
35   addKey("rpt", Repeat_Key, 0x0A, 8);
36
37   addKey("CD-Disc", NextDisc_Key, 0x17, 8);
38   addKey("SLEEP", Sleep_Key, 0x20, 8);
39   addKey("Tuner-Bank", Unmapped_Key, 0x24, 8);
40   addKey("Power-On", PowerOn_Key, 0x25, 8);
41   addKey("RCVR_LEVEL", Unmapped_Key, 0x2B, 8);
42   addKey("EXT._5.1", Unmapped_Key, 0x2E, 8);
43   addKey("RCVR_DYN.R", NoiseReduction_Key, 0x2F, 8);
44
45   addKey("VIDEO_4", Unmapped_Key, 0x30, 8);
46   addKey("VIDEO_5", Unmapped_Key, 0x31, 8);
47   addKey("RCVR_TUNE_MODE", Mode_Key, 0x33, 8);
48   addKey("CD-Pause", Pause_Key, 0x4A, 8);
49
50   addKey("TapeA-Stop", Unmapped_Key, 0x52, 8);
51   addKey("TapeA-Play", Unmapped_Key, 0x53, 8);
52   addKey("TapeA-Rev", Unmapped_Key, 0x54, 8);
53   addKey("TapeA-Record", Unmapped_Key, 0x55, 8);
54   addKey("TapeA-FastForward", Unmapped_Key, 0x56, 8);
55   addKey("TapeA-Rewind", Unmapped_Key, 0x57, 8);
56
57   addKey("Standby", Power_Key, 0x80, 8);  // "RCVR_POWER"
58   addKey("Input-TunerFM", FM_Key, 0x81, 8);
59   addKey("Input-TunerAM", AM_Key, 0x82, 8);
60   addKey("Input-CD", CDInput_Key, 0x85, 8);
61   addKey("VolumeUp", VolumeUp_Key, 0x88, 8);
62   addKey("Input-Disc", PhonoInput_Key, 0x89, 8);
63   addKey("RCVR_1", One_Key, 0x8A, 8);
64   addKey("RCVR_5", Five_Key, 0x8B, 8);
65   addKey("VolumeDown", VolumeDown_Key, 0x8C, 8);
66   addKey("Input-Tape1", TapeInput_Key, 0x8D, 8);
67   addKey("RCVR_2", Two_Key, 0x8E, 8);
68   addKey("RCVR_6", Six_Key, 0x8F, 8);
69
70   addKey("Input-Tape2", Unmapped_Key, 0x91, 8);
71   addKey("RCVR_3", Three_Key, 0x92, 8);
72   addKey("RCVR_7", Seven_Key, 0x93, 8);
73   addKey("Mute", Mute_Key, 0x94, 8); // "RCVR_MUTE_ENTER"
74   addKey("RCVR_4", Four_Key, 0x96, 8);
75   addKey("RCVR_8", Eight_Key, 0x97, 8);
76   addKey("RCVR_9", Nine_Key, 0x98, 8);
77   addKey("TapeB-Record", Unmapped_Key, 0x9A, 8);
78   addKey("Input-Aux", AuxInput_Key, 0x9B, 8);
79   addKey("TapeB-Play", Unmapped_Key, 0x9C, 8);
80   addKey("TapeB-FastForward", Unmapped_Key, 0x9D, 8);
81   addKey("TapeB-Rewind", Unmapped_Key, 0x9E, 8);
82   addKey("TapeB-Stop", Unmapped_Key, 0x9F, 8);
83
84   addKey("Input-Video2", SatInput_Key, 0xC0, 8); // "SAT"
85   addKey("Input-Video3", VCRInput_Key, 0xC1, 8); // "VCR"
86   addKey("Input-Video1", DVDInput_Key, 0xC2, 8); // "DVD", "LD"
87   addKey("RCVR_0", Zero_Key, 0xC7, 8);
88   addKey("Power-Off", PowerOff_Key, 0xC8, 8);
89   addKey("RCVR_SURR.", Surround_Key, 0xCC, 8);
90   addKey("RCVR_TEST", Unmapped_Key, 0xCD, 8);
91   addKey("Speakers-A", Unmapped_Key, 0xCE, 8);
92   addKey("Speakers-B", Unmapped_Key, 0xCF, 8);
93
94   addKey("Tuner-PresetLeft", ChannelDown_Key, 0xD1, 8);
95   addKey("Tuner-PresetRight", ChannelUp_Key, 0xD2, 8);
96   addKey("FM/AM", TunerInput_Key, 0xDD, 8); // "tuner"
97   addKey("TapeB-Rev", Unmapped_Key, 0xDE, 8);
98 }
99
100
101 NADTuner1::NADTuner1(
102   unsigned int index)
103   : PIRKeysetMetaData(
104       "Tuner Component 1",
105       NAD_Make,
106       index)
107 {
108 }
109
110
111 void NADTuner1::populateProtocol(
112   QObject *guiObject)
113 {
114   if (threadableProtocol)
115   {
116     // Keyset already populated.
117     return;
118   }
119
120   threadableProtocol = new NECProtocol(guiObject, index, true, true);
121
122   setPreData(0x7C87, 16);
123
124   addKey("Tuner-Bank", Unmapped_Key, 0x24, 8);
125   addKey("tuner-disp-info", Info_Key, 0x26, 8); // "RCVR_DISPLAY"
126
127   addKey("tuner-1", One_Key, 0x8A, 8);
128   addKey("tuner-2", Two_Key, 0x8E, 8);
129   addKey("tuner-3", Three_Key, 0x92, 8);
130   addKey("tuner-4", Four_Key, 0x96, 8);
131   addKey("tuner-5", Five_Key, 0x8B, 8);
132   addKey("tuner-6", Six_Key, 0x8F, 8);
133   addKey("tuner-7", Seven_Key, 0x93, 8);
134   addKey("tuner-8", Eight_Key, 0x97, 8);
135   addKey("tuner-9", Nine_Key, 0x98, 8);
136   addKey("tuner-0", Zero_Key, 0xC7, 8);
137   addKey("tuner-10", Unmapped_Key, 0xF2, 8);
138   addKey("tuner-+10", DoubleDigit_Key, 0xF3, 8);
139
140   addKey("tuner-enter", Select_Key, 0xC5, 8);
141   addKey("tuner-enter", Enter_Key, 0xC5, 8);
142   addKey("Tuner-PresetRight", ChannelUp_Key, 0xD2, 8);
143   addKey("Tuner-PresetRight", Up_Key, 0xD2, 8);
144   addKey("Tuner-PresetLeft", ChannelDown_Key, 0xD1, 8);
145   addKey("Tuner-PresetLeft", Down_Key, 0xD1, 8);
146   addKey("tuner-tune-left", Left_Key, 0xD3, 8);
147   addKey("tuner-tune-right", Right_Key, 0xD4, 8);
148
149   addKey("tuner-fm-mute", Unmapped_Key, 0x37, 8);
150   addKey("tuner-blend", Unmapped_Key, 0x35, 8);
151   addKey("tuner-am-fm-dab", TunerInput_Key, 0xDD, 8);
152
153   addKey("Standby", Power_Key, 0x80, 8);  // "RCVR_POWER"
154   addKey("VolumeUp", VolumeUp_Key, 0x88, 8);
155   addKey("VolumeDown", VolumeDown_Key, 0x8C, 8);
156   addKey("Mute", Mute_Key, 0x94, 8); // "RCVR_MUTE_ENTER"
157 }
158
159
160 NADDVD1::NADDVD1(
161   unsigned int index)
162   : PIRKeysetMetaData(
163       "DVD Keyset 1",
164       NAD_Make,
165       index)
166 {
167 }
168
169 void NADDVD1::populateProtocol(
170   QObject *guiObject)
171 {
172   if (threadableProtocol)
173   {
174     // Keyset already populated.
175     return;
176   }
177
178   threadableProtocol = new NECXProtocol(guiObject, index, true);
179
180   setPreData(0x2D2D, 16);
181
182   addKey("OPEN/CLOSE", Eject_Key, 0x36, 8);
183   addKey("STOP", Stop_Key, 0x39, 8);
184   addKey("PLAY", Play_Key, 0x31, 8);
185   addKey("PAUSE/STEP", Pause_Key, 0x38, 8);
186   addKey("SKIP-", Previous_Key, 0x35, 8);
187   addKey("SKIP+", Next_Key, 0x34, 8);
188   addKey("SCAN-", Rewind_Key, 0x32, 8);
189   addKey("SCAN+", FastForward_Key, 0x33, 8);
190   addKey("REPEAT", Repeat_Key, 0x53, 8);
191   addKey("PROGRAM", Program_Key, 0x57, 8);
192   addKey("AUDIO", Audio_Key, 0x4F, 8);
193   addKey("SUBTITLE", Captions_Key, 0x50, 8);
194   addKey("CLEAR", Clear_Key, 0x46, 8);
195   addKey("ZOOM", Zoom_Key, 0x64, 8);
196   addKey("DVD_POWER", Power_Key, 0x30, 8);
197   addKey("DVD_1", One_Key, 0x3B, 8);
198   addKey("DVD_2", Two_Key, 0x3C, 8);
199   addKey("DVD_3", Three_Key, 0x3D, 8);
200   addKey("DVD_4", Four_Key, 0x3E, 8);
201   addKey("DVD_5", Five_Key, 0x3F, 8);
202   addKey("DVD_6", Six_Key, 0x40, 8);
203   addKey("DVD_7", Seven_Key, 0x41, 8);
204   addKey("DVD_8", Eight_Key, 0x42, 8);
205   addKey("DVD_9", Nine_Key, 0x43, 8);
206   addKey("DVD_0", Zero_Key, 0x44, 8);
207   addKey("DVD_VOLUME+", VolumeUp_Key, 0x47, 8);
208   addKey("DVD_VOLUME+", Up_Key, 0x47, 8);
209   addKey("DVD_VOLUME-", VolumeDown_Key, 0x48, 8);
210   addKey("DVD_VOLUME-", Down_Key, 0x48, 8);
211   addKey("DVD_TUNE_DOWN", Left_Key, 0x59, 8);
212   addKey("DVD_TUNE_UP", Right_Key, 0x5A, 8);
213   addKey("DVD_MUTE_ENTER", Select_Key, 0x58, 8);
214   addKey("DVD_MUTE_ENTER", Mute_Key, 0x58, 8);
215   addKey("DVD_SET_UP", Menu_Key, 0x56, 8);
216   addKey("DVD_NEXT_DISC", NextDisc_Key, 0x49, 8);
217   addKey("DVD_TITLE", DiscTitle_Key, 0x4A, 8);
218   addKey("DVD_MENU", DiscMenu_Key, 0x4B, 8);
219   addKey("DVD_DISPLAY", Info_Key, 0x3A, 8);
220   addKey("DVD_RETURN", Exit_Key, 0x45, 8);
221 }
222
223
224 NADCD1::NADCD1(
225   unsigned int index)
226   : PIRKeysetMetaData(
227       "CD Component 1",
228       NAD_Make,
229       index)
230 {
231 }
232
233
234 void NADCD1::populateProtocol(
235   QObject *guiObject)
236 {
237   if (threadableProtocol)
238   {
239     // Keyset already populated.
240     return;
241   }
242
243   threadableProtocol = new SIRCProtocol(guiObject, index);
244
245   addSIRC12Key("PLAY", Play_Key, 0x11, 0x32);
246   addSIRC12Key("STOP", Stop_Key, 0x11, 0x38);
247   addSIRC12Key("PAUSE", Pause_Key, 0x11, 0x39);
248   addSIRC12Key("SKIP_LEFT", Previous_Key, 0x11, 0x30);
249   addSIRC12Key("SKIP_RIGHT", Next_Key, 0x11, 0x31);
250   addSIRC12Key("SCAN_LEFT", Rewind_Key, 0x11, 0x3A);
251   addSIRC12Key("SCAN_RIGHT", FastForward_Key, 0x11, 0x3B);
252 }
253
254
255 NADCD2::NADCD2(
256   unsigned int index)
257   : PIRKeysetMetaData(
258       "CD Component 2",
259       NAD_Make,
260       index)
261 {
262 }
263
264
265 void NADCD2::populateProtocol(
266   QObject *guiObject)
267 {
268   if (threadableProtocol)
269   {
270     // Keyset already populated.
271     return;
272   }
273
274   threadableProtocol = new NECProtocol(guiObject, index, true, true);
275
276   setPreData(0x7C87, 16);
277
278   addKey("PlayPause", Play_Key, 0x01, 8);
279 //  addKey("PlayPause", Pause_Key, 0x01, 8);
280   addKey("Stop", Stop_Key, 0x02, 8);
281   addKey("Random", Random_Key, 0x03, 8);
282   addKey("ScanBack", Rewind_Key, 0x04, 8);
283   addKey("SkipBack", Previous_Key, 0x05, 8);
284   addKey("SkipForward", Next_Key, 0x06, 8);
285   addKey("ScanForward", FastForward_Key, 0x07, 8);
286   addKey("cd-disp-info", Info_Key, 0x08, 8); // "Time"
287   addKey("Repeat", Repeat_Key, 0x0A, 8);
288   addKey("Program", Program_Key, 0x0B, 8);
289   addKey("1", One_Key, 0x0C, 8);
290   addKey("2", Two_Key, 0x0D, 8);
291   addKey("3", Three_Key, 0x0E, 8);
292   addKey("4", Four_Key, 0x0F, 8);
293
294   addKey("5", Five_Key, 0x10, 8);
295   addKey("6", Six_Key, 0x11, 8);
296   addKey("7", Seven_Key, 0x12, 8);
297   addKey("8", Eight_Key, 0x13, 8);
298   addKey("9", Nine_Key, 0x15, 8);
299   addKey("0", Zero_Key, 0x16, 8);
300
301   addKey("cd-eject", Eject_Key, 0x48, 8);
302   addKey("cd-pause", Pause_Key, 0x4A, 8);
303   addKey("10", Unmapped_Key, 0x4C, 8);
304   addKey("Add10", DoubleDigit_Key, 0x4D, 8);
305
306   addKey("Standby", Power_Key, 0x80, 8);  // "RCVR_POWER"
307   addKey("VolumeUp", VolumeUp_Key, 0x88, 8);
308   addKey("VolumeDown", VolumeDown_Key, 0x8C, 8);
309   addKey("Mute", Mute_Key, 0x94, 8); // "RCVR_MUTE_ENTER"
310 }
311
312
313 NADTape1::NADTape1(
314   unsigned int index)
315   : PIRKeysetMetaData(
316       "Tape Component 1",
317       NAD_Make,
318       index)
319 {
320 }
321
322
323 void NADTape1::populateProtocol(
324   QObject *guiObject)
325 {
326   if (threadableProtocol)
327   {
328     // Keyset already published.
329     return;
330   }
331
332   threadableProtocol = new NECProtocol(guiObject, index, true, true);
333
334   setPreData(0x7C87, 16);
335
336   addKey("TapeA-Stop", Stop_Key, 0x52, 8);
337   addKey("TapeA-Play", Play_Key, 0x53, 8);
338   addKey("TapeA-Rev", StepBack_Key, 0x54, 8);
339   addKey("TapeA-Record", Record_Key, 0x55, 8);
340   addKey("TapeA-FastForward", FastForward_Key, 0x56, 8);
341   addKey("TapeA-Rewind", Rewind_Key, 0x57, 8);
342
343   addKey("TapeB-Play", Unmapped_Key, 0x9C, 8);
344   addKey("TapeB-Rev", Unmapped_Key, 0xDE, 8);
345   addKey("TapeB-Stop", Unmapped_Key, 0x9F, 8);
346   addKey("TapeB-Record", Unmapped_Key, 0x9A, 8);
347   addKey("TapeB-FastForward", Unmapped_Key, 0x9D, 8);
348   addKey("TapeB-Rewind", Unmapped_Key, 0x9E, 8);
349
350   addKey("Standby", Power_Key, 0x80, 8);  // "RCVR_POWER"
351   addKey("VolumeUp", VolumeUp_Key, 0x88, 8);
352   addKey("VolumeDown", VolumeDown_Key, 0x8C, 8);
353   addKey("Mute", Mute_Key, 0x94, 8); // "RCVR_MUTE_ENTER"
354 }