2 #include "necprotocol.h"
3 #include "rc5protocol.h"
4 #include "pirmakenames.h"
14 threadableProtocol = new NECProtocol(guiObject, index);
16 setPreData(0x20DF, 16);
18 addKey("power", Power_Key, 0x10EF, 16);
19 addKey("input", Input_Key, 0xD02F, 16);
20 addKey("energy", Unmapped_Key, 0xA956, 16); // "EYEASTERISK"
21 addKey("tv/radio", Unmapped_Key, 0x0FF0, 16);
22 addKey("avmode", Unmapped_Key, 0x0CF3, 16); // "UPDATE"
23 addKey("1", One_Key, 0x8877, 16);
24 addKey("2", Two_Key, 0x48B7, 16);
25 addKey("3", Three_Key, 0xC837, 16);
26 addKey("4", Four_Key, 0x28D7, 16);
27 addKey("5", Five_Key, 0xA857, 16);
28 addKey("6", Six_Key, 0x6897, 16);
29 addKey("7", Seven_Key, 0xE817, 16);
30 addKey("8", Eight_Key, 0x18E7, 16);
31 addKey("9", Nine_Key, 0x9867, 16);
32 addKey("0", Zero_Key, 0x08F7, 16);
33 addKey("list", Unmapped_Key, 0xCA35, 16);
34 addKey("qview", Unmapped_Key, 0x58A7, 16);
35 addKey("vol+", VolumeUp_Key, 0x40BF, 16);
36 addKey("vol-", VolumeDown_Key, 0xC03F, 16);
37 addKey("mute", Mute_Key, 0x906F, 16);
38 addKey("p+", ChannelUp_Key, 0x00FF, 16);
39 addKey("p-", ChannelDown_Key, 0x807F, 16);
40 addKey("up", Up_Key, 0x02FD, 16);
41 addKey("down", Down_Key, 0x827D, 16);
42 addKey("left", Left_Key, 0xE01F, 16);
43 addKey("right", Right_Key, 0x609F, 16);
44 addKey("ok", Select_Key, 0x22DD, 16);
45 addKey("menu", Menu_Key, 0xC23D, 16);
46 addKey("return/exit", Exit_Key, 0x14EB, 16);
47 addKey("red", Red_Key, 0x4EB1, 16);
48 addKey("green", Green_Key, 0x8E71, 16);
49 addKey("yellow", Yellow_Key, 0xC639, 16);
50 addKey("blue", Blue_Key, 0x8679, 16);
51 addKey("green/stop", Stop_Key, 0x8E71, 16);
52 addKey("yellow/play", Play_Key, 0xC639, 16);
53 addKey("blue/pause", Pause_Key, 0x8679, 16);
54 addKey("text", Unmapped_Key, 0x04FB, 16);
55 addKey("topt", Unmapped_Key, 0x847B, 16);
56 addKey("topt/rev", Rewind_Key, 0x847B, 16);
57 addKey("subtitle", Captions_Key, 0x9C63, 16); // "cc"
58 addKey("subtitle/ffw", FastForward_Key, 0x9C63, 16);
59 addKey("rec", Record_Key, 0xBD42, 16);
60 addKey("simplink", Unmapped_Key, 0x7E81, 16);
61 addKey("qmenu", Unmapped_Key, 0xA25D, 16);
62 addKey("info", Info_Key, 0x55AA, 16);
63 addKey("guide", Guide_Key, 0xD52A, 16);
64 addKey("fav", Unmapped_Key, 0x7887, 16);
65 addKey("brt.w", Unmapped_Key, 0x7689, 16);
66 addKey("sound", Unmapped_Key, 0xB04F, 16);
67 addKey("auto", Unmapped_Key, 0x2AD5, 16);
68 addKey("comp-rgb-dvi", Unmapped_Key, 0x19E6, 16);
69 addKey("sleep", Sleep_Key, 0x708F, 16);
70 addKey("sap", Unmapped_Key, 0x50AF, 16);
71 addKey("ratio", AspectRatio_Key, 0x9E61, 16);
72 addKey("video", Unmapped_Key, 0xB24D, 16); // "apc", "PSM"
73 addKey("picture", Unmapped_Key, 0x30CF, 16);
74 addKey("review", Unmapped_Key, 0x58A7, 16);
75 addKey("memory/erase", Unmapped_Key, 0xAA55, 16);
76 addKey("sound", Unmapped_Key, 0x4AB5, 16); // "SSM"
77 addKey("INDEX", Unmapped_Key, 0xE41B, 16);
78 addKey("MIX", Unmapped_Key, 0x24DB, 16);
79 addKey("TIME", Unmapped_Key, 0x649B, 16);
80 addKey("TV/PC", Unmapped_Key, 0x0AF5, 16);
81 addKey("xstudio", Unmapped_Key, 0x3EC1, 16);
88 : LGTV1(guiObject, index)
90 setKeysetName("TV Keyset 1a");
92 addKey("exit", Exit_Key, 0xDA25, 16);
93 addKey("pip", PIP_Key, 0x06F9, 16);
94 // addKey("pop", Unmapped_Key, 0x8679, 16);
95 addKey("swap", PIPSwap_Key, 0xC639, 16);
96 addKey("*", Unmapped_Key, 0x9C63, 16);
97 addKey("pipch-", Unmapped_Key, 0x4EB1, 16);
98 addKey("pipch+", Unmapped_Key, 0x8E71, 16);
99 addKey("pipinput", Unmapped_Key, 0x8679, 16);
100 addKey("freeze", Unmapped_Key, 0xA659, 16);
101 addKey("zoom", Unmapped_Key, 0xDE21, 16);
102 addKey("signal", Unmapped_Key, 0x6996, 16);
103 addKey("adjust", Unmapped_Key, 0xD32C, 16);
110 : LGTV1(guiObject, index)
112 setKeysetName("TV Keyset 1b");
114 addKey("Vol-/Left_Arrow", Left_Key, 0xC03F, 16);
115 addKey("Vol+/Right_Arrow", Right_Key, 0x40BF, 16);
116 addKey("PR+/Up_Arrow", Up_Key, 0x00FF, 16);
117 addKey("PR-/Down_Arrow", Down_Key, 0x807F, 16);
118 addKey("I/II", DoubleDigit_Key, 0x50AF, 16);
119 addKey("orange", Red_Key, 0x03FC, 16);
120 addKey("green", Green_Key, 0xC33C, 16);
121 addKey("yellow", Yellow_Key, 0x837C, 16);
122 addKey("blue", Blue_Key, 0x43BC, 16);
129 : LGTV1(guiObject, index)
131 setKeysetName("TV Keyset 1c");
133 addKey("stop", Stop_Key, 0x8D72, 16);
134 addKey("play", Play_Key, 0x0DF2, 16);
135 addKey("pause", Pause_Key, 0x5DA2, 16);
136 addKey("rec", Record_Key, 0xBD42, 16);
137 addKey("backward", Rewind_Key, 0xF10E, 16);
138 addKey("forward", FastForward_Key, 0x718E, 16);
139 addKey("pip", PIP_Key, 0x06F9, 16);
151 RC5Protocol *rp = new RC5Protocol(
158 threadableProtocol = rp;
164 addKey("POWER", Power_Key, 0x0C, 8);
165 addKey("DRP", Unmapped_Key, 0x14, 8);
166 addKey("TVAV", Unmapped_Key, 0x38, 8);
167 addKey("TURBOSOUND", Unmapped_Key, 0x24, 8);
168 addKey("TURBOPICTURE", Unmapped_Key, 0x13, 8);
169 addKey("PIP", PIP_Key, 0x3A, 8);
170 addKey("TEXT", Unmapped_Key, 0x3C, 8);
171 addKey("PR-MINUS", Unmapped_Key, 0x37, 8);
172 addKey("PR-PLUS", Unmapped_Key, 0x36, 8);
173 addKey("SWAP", PIPSwap_Key, 0x32, 8);
174 addKey("INPUT", Input_Key, 0x34, 8);
175 addKey("MENU", Menu_Key, 0x3B, 8);
176 addKey("MUTE", Mute_Key, 0x0D, 8);
177 addKey("PROGUP", ChannelUp_Key, 0x20, 8);
178 addKey("PROGDOWN", ChannelDown_Key, 0x21, 8);
179 addKey("VOLDOWN", VolumeDown_Key, 0x11, 8);
180 addKey("VOLUP", VolumeUp_Key, 0x10, 8);
181 addKey("OK", Select_Key, 0x25, 8);
182 addKey("1", One_Key, 0x01, 8);
183 addKey("2", Two_Key, 0x02, 8);
184 addKey("3", Three_Key, 0x03, 8);
185 addKey("4", Four_Key, 0x04, 8);
186 addKey("5", Five_Key, 0x05, 8);
187 addKey("6", Six_Key, 0x06, 8);
188 addKey("7", Seven_Key, 0x07, 8);
189 addKey("8", Eight_Key, 0x08, 8);
190 addKey("9", Nine_Key, 0x09, 8);
191 addKey("0", Zero_Key, 0x00, 8);
192 addKey("PSM", Unmapped_Key, 0x0E, 8); // preset picture
193 addKey("SSM", Unmapped_Key, 0x16, 8); // preset sound
194 addKey("POS", Unmapped_Key, 0x2D, 8); // position, "UPDATE"
195 addKey("2-12PIP", Unmapped_Key, 0x35, 8); // strobe, "KEY_SHOP"
196 addKey("STILL", Pause_Key, 0x29, 8); // "KEY_PAUSE", "HOLD"
197 addKey("SIZE", Unmapped_Key, 0x2B, 8); // "KEY_SAVE"
198 addKey("TIME", Unmapped_Key, 0x2A, 8);
199 addKey("REVEAL", Unmapped_Key, 0x2C, 8); // "KEY_REDO"
200 addKey("MIX", Unmapped_Key, 0x2E, 8); // "KEY_MAX"
201 addKey("SLEEP", Sleep_Key, 0x3E, 8);
202 addKey("LIST", Unmapped_Key, 0x0F, 8);
203 addKey("I-II", DoubleDigit_Key, 0x23, 8);
204 addKey("ARC", AspectRatio_Key, 0x33, 8);
205 addKey("EYE", Unmapped_Key, 0x12, 8);
206 addKey("KEY_MEDIA", Unmapped_Key, 0x15, 8);
213 : LGTV2(guiObject, index)
215 setKeysetName("TV Keyset 2a");
217 addKey("KEY_RED", Red_Key, 0x37, 8);
218 addKey("KEY_GREEN", Green_Key, 0x36, 8);
219 addKey("KEY_YELLOW", Yellow_Key, 0x32, 8);
220 addKey("KEY_BLUE", Blue_Key, 0x34, 8);
227 : LGTV2(guiObject, index)
229 setKeysetName("TV Keyset 2b");
231 addKey("EYE/*", Unmapped_Key, 0x37, 8);
232 addKey("I/II/*", DoubleDigit_Key, 0x36, 8);
233 addKey("Q.VIEW", Unmapped_Key, 0x32, 8);
234 addKey("LIST", Unmapped_Key, 0x34, 8);
235 addKey("sleep", Sleep_Key, 0x26, 8); // might need separate class
247 NECProtocol *np = new NECProtocol(
254 threadableProtocol = np;
256 np->setHeaderPair(4500, 4500);
257 np->setTrailerPulse(545);
258 np->setRepeatPair(531, 1710);
259 np->setRepeatNeedsHeader(true);
261 setPreData(0x3434, 16);
263 // np->setMinimumRepetitions(1);
265 addKey("power", Power_Key, 0x7887, 16);
266 addKey("open-close", Eject_Key, 0x59A6, 16);
267 addKey("cd-dvd", Unmapped_Key, 0xC03F, 16);
268 addKey("band", Unmapped_Key, 0x9A65, 16);
269 addKey("aux", Unmapped_Key, 0x906F, 16);
270 // addKey("aux", Unmapped_Key, 0x51AE, 16);
271 addKey("1", One_Key, 0x827D, 16);
272 addKey("2", Two_Key, 0x42BD, 16);
273 addKey("3", Three_Key, 0xC23D, 16);
274 addKey("4", Four_Key, 0x22DD, 16);
275 addKey("5", Five_Key, 0xA25D, 16);
276 addKey("6", Six_Key, 0x629D, 16);
277 addKey("7", Seven_Key, 0xE21D, 16);
278 addKey("8", Eight_Key, 0x12ED, 16);
279 addKey("9", Nine_Key, 0x926D, 16);
280 addKey("0", Zero_Key, 0xD22D, 16);
281 addKey("sleep", Sleep_Key, 0x43BC, 16);
282 addKey("audio", Language_Key, 0x05FA, 16);
283 addKey("sound", Unmapped_Key, 0x857A, 16);
284 addKey("s-title", Unmapped_Key, 0xD52A, 16);
285 addKey("return", Exit_Key, 0x45BA, 16);
286 addKey("setup", Menu_Key, 0xA55A, 16);
287 addKey("display", Info_Key, 0xC53A, 16);
288 addKey("menu", DiscMenu_Key, 0x25DA, 16);
289 addKey("title", DiscTitle_Key, 0xF50A, 16);
290 addKey("up", Up_Key, 0xE51A, 16);
291 addKey("down", Down_Key, 0x659A, 16);
292 addKey("left", Left_Key, 0x15EA, 16);
293 addKey("right", Right_Key, 0x956A, 16);
294 addKey("enter", Select_Key, 0x55AA, 16);
295 addKey("plus", Unmapped_Key, 0xC837, 16); // "pr_preset_up"
296 addKey("minus", Unmapped_Key, 0x48B7, 16); // "pr_preset_down"
297 addKey("<<", Rewind_Key, 0x8D72, 16);
298 addKey(">>", FastForward_Key, 0x4DB2, 16);
299 addKey("volume+", VolumeUp_Key, 0xE817, 16);
300 addKey("volume-", VolumeDown_Key, 0x6897, 16);
301 addKey("<<<", Unmapped_Key, 0x609F, 16);
302 addKey(">>>", Unmapped_Key, 0xE01F, 16);
303 addKey("stop", Stop_Key, 0xA05F, 16);
304 addKey("pause", Pause_Key, 0xF20D, 16);
305 addKey("play", Play_Key, 0x20DF, 16);
306 addKey("mute", Mute_Key, 0xF807, 16);
307 addKey("program", Program_Key, 0xB24D, 16);
308 addKey("clear", Clear_Key, 0x0DF2, 16);
309 addKey("repeat", Unmapped_Key, 0x728D, 16);
310 addKey("repeata-b", Unmapped_Key, 0xB54A, 16);
311 addKey("marker", Unmapped_Key, 0x2DD2, 16);
312 addKey("search", Unmapped_Key, 0xCD32, 16);
313 addKey("angle", Unmapped_Key, 0x35CA, 16);
314 addKey("zoom", Unmapped_Key, 0x758A, 16);
315 addKey("rds", Unmapped_Key, 0x06F9, 16);
316 addKey("pty", Unmapped_Key, 0x8E71, 16);
317 addKey("pty-search", Unmapped_Key, 0x9C63, 16);
318 addKey("dimmer", Unmapped_Key, 0x7A85, 16);
319 addKey("tv_radio", Unmapped_Key, 0x41BE, 16);
320 addKey("text", Unmapped_Key, 0xDE21, 16);
321 addKey("caption", Captions_Key, 0x56A9, 16);
322 addKey("guide", Guide_Key, 0xD629, 16);
323 addKey("i_ii", DoubleDigit_Key, 0x5EA1, 16);
324 addKey("exit_cancel", Unmapped_Key, 0x9669, 16);
336 NECProtocol *np = new NECProtocol(
343 threadableProtocol = np;
345 np->setHeaderPair(4500, 4500);
346 np->setTrailerPulse(600);
347 np->setRepeatPair(600, 550);
348 np->setRepeatNeedsHeader(true);
350 setPreData(0xB4B4, 16);
352 // np->setMinimumRepetitions(3);
354 addKey("POWER", Power_Key, 0x0CF3, 16);
355 addKey("OPEN/CLOSE", Eject_Key, 0x6C93, 16);
356 addKey("1", One_Key, 0xDC23, 16);
357 addKey("2", Two_Key, 0x3CC3, 16);
358 addKey("3", Three_Key, 0xBC43, 16);
359 addKey("4", Four_Key, 0x7C83, 16);
360 addKey("5", Five_Key, 0xFC03, 16);
361 addKey("6", Six_Key, 0x02FD, 16);
362 addKey("7", Seven_Key, 0x827D, 16);
363 addKey("8", Eight_Key, 0x42BD, 16);
364 addKey("9", Nine_Key, 0xC23D, 16);
365 addKey("0", Zero_Key, 0x22DD, 16);
366 addKey("CLEAR", Clear_Key, 0x629D, 16);
367 addKey("SCAN-BACK", Rewind_Key, 0x4CB3, 16); // <<
368 addKey("SCAN-FORWARD", FastForward_Key, 0xCC33, 16); // >>
369 addKey("SKIP-BACK", Previous_Key, 0xAC53, 16); // |<<
370 addKey("SKIP-FORWARD", Next_Key, 0x2CD3, 16); // >>|
371 addKey("PAUSE", Pause_Key, 0x1CE3, 16);
372 addKey("PLAY", Play_Key, 0x8C73, 16);
373 addKey("STOP", Stop_Key, 0x9C63, 16);
374 addKey("DVD-MENU", DiscMenu_Key, 0xD22D, 16);
375 addKey("TITLE", DiscTitle_Key, 0x52AD, 16);
376 addKey("UP", Up_Key, 0xE21D, 16);
377 addKey("LEFT", Left_Key, 0x9A65, 16);
378 addKey("RIGHT", Right_Key, 0x5AA5, 16);
379 addKey("DOWN", Down_Key, 0x12ED, 16);
380 addKey("ENTER", Select_Key, 0x1AE5, 16); // "ok"
381 addKey("DISPLAY", Info_Key, 0x5CA3, 16);
382 addKey("RETURN", Exit_Key, 0xA25D, 16);
383 addKey("AUDIO", Unmapped_Key, 0xF20D, 16);
384 addKey("SUBTITLE", Captions_Key, 0x0AF5, 16);
385 addKey("ANGLE", Unmapped_Key, 0x32CD, 16);
386 addKey("SETUP", Menu_Key, 0x6A95, 16);
387 addKey("MARKER", Unmapped_Key, 0x8679, 16);
388 addKey("SEARCH", Unmapped_Key, 0x46B9, 16); // "random"
389 addKey("PROGRAM", Program_Key, 0xEA15, 16);
390 addKey("ZOOM", Unmapped_Key, 0x26D9, 16);
391 addKey("REPEAT", Unmapped_Key, 0xCA35, 16);
392 addKey("A-B", Unmapped_Key, 0xAA55, 16); // "lp"
393 addKey("RANDOM", Unmapped_Key, 0x8A75, 16); // "cm-skip"
394 addKey("STAR", Unmapped_Key, 0x7A85, 16);
395 addKey("DVD", Unmapped_Key, 0x8F70, 16);
396 addKey("KEY_PIP", PIP_Key, 0xFA05, 16);
397 addKey("KEY_RESOLUTION", AspectRatio_Key, 0xAF50, 16);
398 addKey("PowerOn", Unmapped_Key, 0xAE51, 16);
399 addKey("PowerOff", Unmapped_Key, 0x6E91, 16);
406 : LGDisc2(guiObject, index)
408 setKeysetName("DVD/BD Keyset 2a");
410 addKey("KEY_CLEAR", Clear_Key, 0x3EC1, 16);
411 addKey("KEY_A", Unmapped_Key, 0x3EC1, 16);
412 addKey("KEY_RED", Red_Key, 0x3EC1, 16);
413 addKey("KEY_B", Unmapped_Key, 0xBE41, 16);
414 addKey("KEY_GREEN", Green_Key, 0xBE41, 16);
415 addKey("KEY_C", Unmapped_Key, 0x7E81, 16);
416 addKey("KEY_YELLOW", Yellow_Key, 0x7E81, 16);
417 addKey("KEY_D", Unmapped_Key, 0xFE01, 16);
418 addKey("KEY_BLUE", Blue_Key, 0xFE01, 16);
419 addKey("KEY_HOME", Menu_Key, 0xE619, 16);
431 threadableProtocol = new NECProtocol(guiObject, index);
433 setPreData(0x7689, 16);
435 addKey("power", Power_Key, 0x28D7, 16);
436 addKey("rew", Rewind_Key, 0x40BF, 16);
437 addKey("play", Play_Key, 0x10EF, 16);
438 addKey("ff", FastForward_Key, 0xC03F, 16);
439 addKey("rec", Record_Key, 0x906F, 16);
440 addKey("stop", Stop_Key, 0x807F, 16);
441 addKey("p/still", Pause_Key, 0xD02F, 16);
442 addKey("eject", Eject_Key, 0x00FF, 16);
443 addKey("1", One_Key, 0xA05F, 16);
444 addKey("2", Two_Key, 0x609F, 16);
445 addKey("3", Three_Key, 0xE01F, 16);
446 addKey("4", Four_Key, 0x30CF, 16);
447 addKey("5", Five_Key, 0xB04F, 16);
448 addKey("6", Six_Key, 0x708F, 16);
449 addKey("7", Seven_Key, 0xF00F, 16);
450 addKey("8", Eight_Key, 0x38C7, 16);
451 addKey("9", Nine_Key, 0xB847, 16);
452 addKey("0", Zero_Key, 0x20DF, 16);
453 addKey("mute", Mute_Key, 0xBA45, 16);
454 addKey("tv/av", Unmapped_Key, 0x6A95, 16);
455 addKey("menu", Menu_Key, 0x6897, 16); // "setup", "I"
456 addKey("clear/reset", Clear_Key, 0xF807, 16); // might be wrong
457 addKey("timer-prog", Program_Key, 0x5CA3, 16);
458 addKey("pr+", ChannelUp_Key, 0x18E7, 16);
459 addKey("pr-", ChannelDown_Key, 0x9867, 16);
460 addKey("vol+", VolumeUp_Key, 0x1AE5, 16);
461 addKey("vol-", VolumeDown_Key, 0x9A65, 16);
462 addKey("pr+", Up_Key, 0x18E7, 16);
463 addKey("vol-", Left_Key, 0x9A65, 16);
464 addKey("ok", Select_Key, 0x7887, 16);
465 addKey("vol+", Right_Key, 0x1AE5, 16);
466 addKey("pr-", Down_Key, 0x9867, 16);
467 addKey("sleep", Sleep_Key, 0x3AC5, 16);
468 addKey("system", Unmapped_Key, 0x3BC4, 16);
469 addKey("qview", Unmapped_Key, 0xEE11, 16);
470 addKey("auto", Unmapped_Key, 0xFA05, 16); // "A.TRK"
471 addKey("trk-", Unmapped_Key, 0x22DD, 16);
472 addKey("trk+", Unmapped_Key, 0xA25D, 16);
473 addKey("clock/count", Unmapped_Key, 0x32CD, 16);
474 addKey("viss", Unmapped_Key, 0x827D, 16); // "marker-search"
475 addKey("VCR", Unmapped_Key, 0x8F70, 16);
476 addKey("tv/vcr", Input_Key, 0xA857, 16);
477 addKey("audio", Unmapped_Key, 0x837C, 16);
478 addKey("c/lock", Unmapped_Key, 0xFC03, 16);
479 addKey("repeat", Unmapped_Key, 0x6D92, 16);
480 addKey("lp", VHSSpeed_Key, 0x12ED, 16);
481 addKey("cm-skip", Unmapped_Key, 0xBB44, 16);
482 addKey("ez_POWER_OFF", Unmapped_Key, 0x1DE2, 16);
483 addKey("*", Unmapped_Key, 0xE21D, 16);
490 : LGVCR1(guiObject, index)
492 setKeysetName("VCR Keyset 1a");
494 addKey("power", Power_Key, 0xBE41, 16);
501 : LGVCR1(guiObject, index)
503 setKeysetName("VCR Keyset 1b");
505 addKey("menu-left", Left_Key, 0xC13E, 16);
506 addKey("menu-right", Right_Key, 0x09F6, 16);
507 addKey("menu-up", Up_Key, 0x41BE, 16);
508 addKey("menu-down", Down_Key, 0x916E, 16);
509 addKey("ok", Select_Key, 0x718E, 16);