65fb8e151289912ad3ca0e568fecde7fe8a9e76b
[pierogi] / keysets / adb.cpp
1 #include "adb.h"
2 #include "protocols/mceprotocol.h"
3 #include "protocols/necprotocol.h"
4 #include "protocols/nokia32protocol.h"
5 #include "protocols/aiwaprotocol.h"
6
7 ADBSTB1::ADBSTB1(
8   unsigned int index)
9   : PIRKeysetMetaData(
10       "TV Receiver Keyset 1",
11       ADB_Make,
12       index)
13 {
14   addControlledDevice(ADB_Make, "I-CAN 2840C", Other_Device);
15 }
16
17
18 void ADBSTB1::populateProtocol(
19   QObject *guiObject)
20 {
21   if (threadableProtocol)
22   {
23     // Keyset already populated.
24     return;
25   }
26
27   threadableProtocol = new MCEProtocol(guiObject, index, 0x8059);
28
29   setPreData(0x24, 7);
30
31   addKey("num_0", Zero_Key, 0x00, 8);
32   addKey("num_1", One_Key, 0x01, 8);
33   addKey("num_2", Two_Key, 0x02, 8);
34   addKey("num_3", Three_Key, 0x03, 8);
35   addKey("num_4", Four_Key, 0x04, 8);
36   addKey("num_5", Five_Key, 0x05, 8);
37   addKey("num_6", Six_Key, 0x06, 8);
38   addKey("num_7", Seven_Key, 0x07, 8);
39   addKey("num_8", Eight_Key, 0x08, 8);
40   addKey("num_9", Nine_Key, 0x09, 8);
41   addKey("exit", Exit_Key, 0x0A, 8);
42   addKey("Power", Power_Key, 0x0C, 8);
43   addKey("CH+", ChannelUp_Key, 0x20, 8);
44   addKey("CH-", ChannelDown_Key, 0x21, 8);
45   addKey("Menu", Menu_Key, 0x54, 8);
46   addKey("Last_ch", PrevChannel_Key, 0x55, 8);
47   addKey("up_arrow", Up_Key, 0x58, 8);
48   addKey("down_arrow", Down_Key, 0x59, 8);
49   addKey("left_arrow", Left_Key, 0x5A, 8);
50   addKey("right_arrow", Right_Key, 0x5B, 8);
51   addKey("Select", Select_Key, 0x5C, 8);
52   addKey("Info", Info_Key, 0xCB, 8);
53   addKey("Guide", Guide_Key, 0xCC, 8);
54   addKey("Interactive Menu", Unmapped_Key, 0xFB, 8);
55 }
56
57
58 ADBSTB2::ADBSTB2(
59   unsigned int index)
60   : PIRKeysetMetaData(
61       "TV Receiver Keyset 2",
62       ADB_Make,
63       index)
64 {
65   addControlledDevice(ADB_Make, "5720 CDX", Other_Device);
66 }
67
68
69 void ADBSTB2::populateProtocol(
70   QObject *guiObject)
71 {
72   if (threadableProtocol)
73   {
74     // Keyset already populated.
75     return;
76   }
77
78   threadableProtocol = new NECProtocol(guiObject, index, true, true);
79
80   setPreData(0x0E86, 16);
81
82   addKey("0", Zero_Key, 0x00, 8);
83   addKey("1", One_Key, 0x01, 8);
84   addKey("2", Two_Key, 0x02, 8);
85   addKey("3", Three_Key, 0x03, 8);
86   addKey("4", Four_Key, 0x04, 8);
87   addKey("5", Five_Key, 0x05, 8);
88   addKey("6", Six_Key, 0x06, 8);
89   addKey("7", Seven_Key, 0x07, 8);
90   addKey("8", Eight_Key, 0x08, 8);
91   addKey("9", Nine_Key, 0x09, 8);
92   addKey("exit", Exit_Key, 0x0A, 8);
93   addKey("up arrow", Up_Key, 0x0B, 8);
94   addKey("down arrow", Down_Key, 0x0C, 8);
95   addKey("vol up", VolumeUp_Key, 0x0D, 8);
96   addKey("vol down", VolumeDown_Key, 0x0E, 8);
97   addKey("mute", Mute_Key, 0x0F, 8);
98   addKey("channel up", ChannelUp_Key, 0x10, 8);
99   addKey("menu", Menu_Key, 0x11, 8);
100   addKey("power", Power_Key, 0x12, 8);
101   addKey("program guide", Guide_Key, 0x13, 8);
102   addKey("return", Exit_Key, 0x14, 8);
103   addKey("select", Select_Key, 0x15, 8);
104   addKey("red", Red_Key, 0x16, 8);
105   addKey("green", Green_Key, 0x17, 8);
106   addKey("yellow", Yellow_Key, 0x18, 8);
107   addKey("blue", Blue_Key, 0x19, 8);
108   addKey("channel down", ChannelDown_Key, 0x1A, 8);
109   addKey("left arrow", Left_Key, 0x1B, 8);
110   addKey("right arrow", Right_Key, 0x1C, 8);
111   addKey("rewind", Rewind_Key, 0x1D, 8);
112   addKey("My TV", Unmapped_Key, 0x1E, 8);
113   addKey("record", Record_Key, 0x21, 8);
114   addKey("play", Play_Key, 0x23, 8);
115   addKey("pause", Pause_Key, 0x23, 8);
116   addKey("stop", Stop_Key, 0x24, 8);
117   addKey("fast fwd", FastForward_Key, 0x26, 8);
118   addKey("Teletext", Teletext_Key, 0x27, 8);
119   addKey("Settings", Unmapped_Key, 0x29, 8);
120   addKey("On Demand", Unmapped_Key, 0x2A, 8);
121   addKey("info", Info_Key, 0x2D, 8);
122 }
123
124
125 ADBSTB3::ADBSTB3(
126   unsigned int index)
127   : PIRKeysetMetaData(
128       "TV Receiver Keyset 3",
129       ADB_Make,
130       index)
131 {
132   addControlledDevice(ADB_Make, "7820sx", Other_Device);
133 }
134
135
136 void ADBSTB3::populateProtocol(
137   QObject *guiObject)
138 {
139   if (threadableProtocol)
140   {
141     // Keyset already populated.
142     return;
143   }
144
145   threadableProtocol = new MCEProtocol(guiObject, index, 0x8051);
146
147   setPreData(0x11, 7);
148
149   addKey("vod", Unmapped_Key, 0x01, 8);
150   addKey("5", Five_Key, 0x20, 8);
151   addKey("power", Power_Key, 0x21, 8);
152   addKey("9", Nine_Key, 0x22, 8);
153   addKey("select", Select_Key, 0x23, 8);
154   addKey("down arrow", Down_Key, 0x24, 8);
155   addKey("4", Four_Key, 0x28, 8);
156   addKey("2", Two_Key, 0x29, 8);
157   addKey("8", Eight_Key, 0x2A, 8);
158   addKey("up arrow", Up_Key, 0x2B, 8);
159   addKey("menu", Menu_Key, 0x2C, 8);
160   addKey("green", Green_Key, 0x2D, 8);
161   addKey("program guide", Guide_Key, 0x2E, 8);
162   addKey("1", One_Key, 0x30, 8);
163   addKey("7", Seven_Key, 0x32, 8);
164   addKey("0", Zero_Key, 0x33, 8);
165   addKey("left arrow", Left_Key, 0x34, 8);
166   addKey("channel up", ChannelUp_Key, 0x35, 8);
167   addKey("channel down", ChannelDown_Key, 0x37, 8);
168   addKey("6", Six_Key, 0x38, 8);
169   addKey("3", Three_Key, 0x39, 8);
170   addKey("last (prev ch)", PrevChannel_Key, 0x3A, 8);
171   addKey("right arrow", Right_Key, 0x3B, 8);
172   addKey("display", Info_Key, 0x3C, 8);
173   addKey("yellow", Yellow_Key, 0x3D, 8);
174   addKey("red", Red_Key, 0x3E, 8);
175   addKey("blue", Blue_Key, 0x3F, 8);
176   addKey("record", Record_Key, 0x44, 8);
177   addKey("play", Play_Key, 0x45, 8);
178   addKey("pause", Pause_Key, 0x46, 8);
179   addKey("stop", Stop_Key, 0x47, 8);
180   addKey("rewind", Rewind_Key, 0x48, 8);
181   addKey("fast fwd", FastForward_Key, 0x49, 8);
182 }
183
184
185 ADBSTB4::ADBSTB4(
186   unsigned int index)
187   : PIRKeysetMetaData(
188       "TV Receiver Keyset 4",
189       ADB_Make,
190       index)
191 {
192   addControlledDevice(ADB_Make, "I-CAN 3000", Other_Device);
193 }
194
195
196 void ADBSTB4::populateProtocol(
197   QObject *guiObject)
198 {
199   if (threadableProtocol)
200   {
201     // Keyset already populated.
202     return;
203   }
204
205   threadableProtocol = new Nokia32Protocol(guiObject, index);
206
207   setPreData(0x2190, 16);
208   setPostData(0x26, 7);
209
210   addKey("0", Zero_Key, 0x00, 8);
211   addKey("1", One_Key, 0x01, 8);
212   addKey("2", Two_Key, 0x02, 8);
213   addKey("3", Three_Key, 0x03, 8);
214   addKey("4", Four_Key, 0x04, 8);
215   addKey("5", Five_Key, 0x05, 8);
216   addKey("6", Six_Key, 0x06, 8);
217   addKey("7", Seven_Key, 0x07, 8);
218   addKey("8", Eight_Key, 0x08, 8);
219   addKey("9", Nine_Key, 0x09, 8);
220   addKey("Power", Power_Key, 0x0C, 8);
221   addKey("Mute", Mute_Key, 0x0D, 8);
222   addKey("Info", Info_Key, 0x0F, 8);
223   addKey("VOL+", VolumeUp_Key, 0x10, 8);
224   addKey("VOL-", VolumeDown_Key, 0x11, 8);
225   addKey("CH+", ChannelUp_Key, 0x20, 8);
226   addKey("CH-", ChannelDown_Key, 0x21, 8);
227   addKey("Last_ch", PrevChannel_Key, 0x43, 8);
228   addKey("up_arrow", Up_Key, 0x58, 8);
229   addKey("down_arrow", Down_Key, 0x59, 8);
230   addKey("left_arrow", Left_Key, 0x5A, 8);
231   addKey("right_arrow", Right_Key, 0x5B, 8);
232   addKey("Select", Select_Key, 0x5C, 8);
233   addKey("Guide", Guide_Key, 0xCC, 8);
234   addKey("Enter", Enter_Key, 0xDB, 8);
235   addKey("exit", Exit_Key, 0xE0, 8);
236 }
237
238
239 ADBSTB5::ADBSTB5(
240   unsigned int index)
241   : PIRKeysetMetaData(
242       "TV Receiver Keyset 5",
243       ADB_Make,
244       index)
245 {
246 }
247
248
249 void ADBSTB5::populateProtocol(
250   QObject *guiObject)
251 {
252   if (threadableProtocol)
253   {
254     // Keyset already populated.
255     return;
256   }
257
258   threadableProtocol = new AiwaProtocol(guiObject, index);
259
260   setPreData(0x0008, 13);
261
262   addKey("0", Zero_Key, 0x00, 8);
263   addKey("1", One_Key, 0x01, 8);
264   addKey("2", Two_Key, 0x02, 8);
265   addKey("3", Three_Key, 0x03, 8);
266   addKey("4", Four_Key, 0x04, 8);
267   addKey("5", Five_Key, 0x05, 8);
268   addKey("6", Six_Key, 0x06, 8);
269   addKey("7", Seven_Key, 0x07, 8);
270   addKey("8", Eight_Key, 0x08, 8);
271   addKey("9", Nine_Key, 0x09, 8);
272   addKey("Menu", Menu_Key, 0x0A, 8);
273   addKey("Guide", Guide_Key, 0x0B, 8);
274   addKey("Power", Power_Key, 0x0C, 8);
275   addKey("Format 16:9", AspectRatio_Key, 0x0D, 8);
276   addKey("Info/Display", Info_Key, 0x0D, 8);
277   addKey("Stop", Stop_Key, 0x0D, 8);
278   addKey("CH+", ChannelUp_Key, 0x0E, 8);
279   addKey("CH-", ChannelDown_Key, 0xF, 8);
280   addKey("Volume +", VolumeUp_Key, 0x10, 8);
281   addKey("Volume -", VolumeDown_Key, 0x11, 8);
282   addKey("Arrow_Right", Right_Key, 0x12, 8);
283   addKey("FFWD", FastForward_Key, 0x13, 8);
284   addKey("EXIT", Exit_Key, 0x14, 8);
285   addKey("Arrow_Left", Left_Key, 0x15, 8);
286   addKey("OK/Select", Select_Key, 0x16, 8);
287   addKey("Subtitle", Captions_Key, 0x18, 8);
288   addKey("Mute", Mute_Key, 0x1A, 8);
289   addKey("Input/Source", Input_Key, 0x1B, 8);
290   addKey("Arrow_Down", Down_Key, 0x1C, 8);
291   addKey("Arrow_Up", Up_Key, 0x1D, 8);
292   addKey("Play", Play_Key, 0x1E, 8);
293   addKey("Audio", Audio_Key, 0x1F, 8);
294   addKey("Red", Red_Key, 0x20, 8);
295   addKey("Green", Green_Key, 0x21, 8);
296   addKey("Yellow", Yellow_Key, 0x22, 8);
297   addKey("Blue", Blue_Key, 0x23, 8);
298 }