Fix for command overrun
[pierogi] / keysets / hauppauge.cpp
1 #include "hauppauge.h"
2 #include "rc5protocol.h"
3
4 HauppaugeGeneric::HauppaugeGeneric(
5   QObject *guiObject,
6   unsigned int index)
7   : PIRKeysetMetaData(
8       "Generic Remote",
9       Hauppauge_Make,
10       index)
11 {
12   RC5Protocol *rp = new RC5Protocol(
13     guiObject,
14     index,
15     950, 820,     // biphase pulse
16     1000,         // lead pulse
17     114000, true); // constant-length gap
18
19   threadableProtocol = rp;
20
21   rp->setPreData(0x17, 5);
22
23   rp->setToggleBit(2);
24
25   addKey("Power", Power_Key, 0xBD, 8);
26   addKey("Go", Unmapped_Key, 0xBB, 8);
27   addKey("TV", Unmapped_Key, 0x9C, 8);
28   addKey("Videos", Unmapped_Key, 0x98, 8);
29   addKey("Music", Unmapped_Key, 0x99, 8);
30   addKey("Pictures", Unmapped_Key, 0x9A, 8);
31   addKey("Guide", Unmapped_Key, 0x9B, 8);
32   addKey("Radio", Unmapped_Key, 0x8C, 8);
33   addKey("Up", Up_Key, 0x94, 8);
34   addKey("Down", Down_Key, 0x95, 8);
35   addKey("Left", Left_Key, 0x96, 8);
36   addKey("Right", Right_Key, 0x97, 8);
37   addKey("Ok", Enter_Key, 0xA5, 8);
38   addKey("Ok", Select_Key, 0xA5, 8);
39   addKey("Back/Exit", Exit_Key, 0x9F, 8);
40   addKey("Menu/i", Menu_Key, 0x8D, 8);
41   addKey("Vol+", VolumeUp_Key, 0x90, 8);
42   addKey("Vol-", VolumeDown_Key, 0x91, 8);
43   addKey("Prev.Ch", PrevChannel_Key, 0x92, 8);
44   addKey("Mute", Mute_Key, 0x8F, 8);
45   addKey("Ch+", ChannelUp_Key, 0xA0, 8);
46   addKey("Ch-", ChannelDown_Key, 0xA1, 8);
47   addKey("Record", Record_Key, 0xB7, 8);
48   addKey("Stop", Stop_Key, 0xB6, 8);
49   addKey("Rewind", Rewind_Key, 0xB2, 8);
50   addKey("Play", Play_Key, 0xB5, 8);
51   addKey("Forward", FastForward_Key, 0xB4, 8);
52   addKey("Replay/SkipBackward", Replay_Key, 0xA4, 8);
53   addKey("Pause", Pause_Key, 0xB0, 8);
54   addKey("SkipForward", Advance_Key, 0x9E, 8);
55   addKey("1", One_Key, 0x81, 8);
56   addKey("2", Two_Key, 0x82, 8);
57   addKey("3", Three_Key, 0x83, 8);
58   addKey("4", Four_Key, 0x84, 8);
59   addKey("5", Five_Key, 0x85, 8);
60   addKey("6", Six_Key, 0x86, 8);
61   addKey("7", Seven_Key, 0x87, 8);
62   addKey("8", Eight_Key, 0x88, 8);
63   addKey("9", Nine_Key, 0x89, 8);
64   addKey("0", Zero_Key, 0x80, 8);
65   addKey("Asterix", Unmapped_Key, 0x8A, 8);
66   addKey("sub/cc", Captions_Key, 0x8E, 8);
67   addKey("Red", Red_Key, 0x8B, 8);
68   addKey("Green", Green_Key, 0xAE, 8);
69   addKey("Yellow", Yellow_Key, 0xB8, 8);
70   addKey("Blue", Blue_Key, 0xA9, 8);
71 }
72
73
74 // Based on LIRC Sony_RM-V302-DVD010 config file
75 HauppaugeTV1::HauppaugeTV1(
76   QObject *guiObject,
77   unsigned int index)
78   : PIRKeysetMetaData(
79       "TV Keyset 1",
80       Hauppauge_Make,
81       index)
82 {
83   addControlledDevice(Hauppauge_Make, "PVR-250", TV_Device);
84
85   RC5Protocol *rp = new RC5Protocol(
86     guiObject,
87     index,
88     889, 889,
89     889,
90     113792, true);
91
92   threadableProtocol = rp;
93
94   rp->setToggleBit(2);
95
96   addKey("POWER", Power_Key, 0x150C, 13);
97   addKey("1", One_Key, 0x1525, 13);
98   addKey("2", Two_Key, 0x1526, 13);
99   addKey("3", Three_Key, 0x1527, 13);
100   addKey("4", Four_Key, 0x1519, 13);
101   addKey("5", Five_Key, 0x153D, 13);
102   addKey("6", Six_Key, 0x1516, 13);
103   addKey("7", Seven_Key, 0x1517, 13);
104   addKey("8", Eight_Key, 0x1518, 13);
105   addKey("9", Nine_Key, 0x152B, 13);
106   addKey("0", Zero_Key, 0x151D, 13);
107   addKey("VOL+", VolumeUp_Key, 0x1810, 13);
108   addKey("VOL-", VolumeDown_Key, 0x1811, 13);
109   addKey("CH+", ChannelUp_Key, 0x1534, 13);
110   addKey("CH-", ChannelDown_Key, 0x1533, 13);
111   addKey("TV/VIDEO", Input_Key, 0x1500, 13);
112   addKey("DISPLAY", Info_Key, 0x1532, 13);
113   addKey("SLEEP", Sleep_Key, 0x1510, 13);
114   addKey("MUTE", Mute_Key, 0x180D, 13);
115   addKey("RECALL", PrevChannel_Key, 0x1501, 13);
116   addKey("UP", Up_Key, 0x1502, 13);
117   addKey("DOWN", Down_Key, 0x1508, 13);
118   addKey("LEFT", Left_Key, 0x1504, 13);
119   addKey("RIGHT", Right_Key, 0x1506, 13);
120   addKey("MENU", Menu_Key, 0x1503, 13);
121   addKey("OK", Enter_Key, 0x1505, 13);
122   addKey("OK", Select_Key, 0x1505, 13);
123   addKey("SEEK-", Rewind_Key, 0x1535, 13);
124   addKey("PLAY", Play_Key, 0x1530, 13);
125   addKey("SEEK+", FastForward_Key, 0x1536, 13);
126   addKey("PAUSE", Pause_Key, 0x153C, 13);
127   addKey("STOP", Stop_Key, 0x1520, 13);
128 }
129