b09cc711591a9c163c14eba63ad690666f3c2bed
[pierogi] / keysets / goldstar.cpp
1 #include "goldstar.h"
2 #include "protocols/necprotocol.h"
3 #include "protocols/rc5protocol.h"
4 #include "protocols/lircprotocol.h"
5
6 GoldStarTV1::GoldStarTV1(
7   QObject *guiObject,
8   unsigned int index)
9   : PIRKeysetMetaData(
10       "105-210A TV",
11       GoldStar_Make,
12       index)
13 {
14   addControlledDevice(GoldStar_Make, "105-210A", TV_Device);
15
16   threadableProtocol = new NECProtocol(guiObject, index, false, true);
17
18 //  setPreData(0x20DF, 16);
19   setPreData(0x04, 8);
20
21   addKey("prup", ChannelUp_Key, 0x00, 8);
22   addKey("prup", Up_Key, 0x00, 8);
23   addKey("prdown", ChannelDown_Key, 0x01, 8);
24   addKey("prdown", Down_Key, 0x01, 16);
25   addKey("volup", VolumeUp_Key, 0x02, 8);
26   addKey("volup", Right_Key, 0x02, 8);
27   addKey("voldown", VolumeDown_Key, 0x03, 8);
28   addKey("voldown", Left_Key, 0x03, 8);
29   addKey("power", Power_Key, 0x08, 8);
30   addKey("mute", Mute_Key, 0x09, 8);
31   addKey("tvav", Input_Key, 0x0B, 8);
32   addKey("picture", PictureMode_Key, 0x0C, 8);
33   addKey("sleep", Sleep_Key, 0x0E, 8);
34   addKey("0", Zero_Key, 0x10, 8);
35   addKey("1", One_Key, 0x11, 8);
36   addKey("2", Two_Key, 0x12, 8);
37   addKey("3", Three_Key, 0x13, 8);
38   addKey("4", Four_Key, 0x14, 8);
39   addKey("5", Five_Key, 0x15, 8);
40   addKey("6", Six_Key, 0x16, 8);
41   addKey("7", Seven_Key, 0x17, 8);
42   addKey("8", Eight_Key, 0x18, 8);
43   addKey("9", Nine_Key, 0x19, 8);
44   addKey("qview", Unmapped_Key, 0x1A, 8);
45   addKey("recall", PrevChannel_Key, 0x1B, 8);
46   addKey("lowhigh", DoubleDigit_Key, 0x1C, 8);
47   addKey("menu", Menu_Key, 0x43, 8);
48   addKey("ok", Select_Key, 0x44, 8);
49   addKey("psm", Unmapped_Key, 0x4F, 8);
50 }
51
52
53 GoldStarTV2::GoldStarTV2(
54   QObject *guiObject,
55   unsigned int index)
56   : PIRKeysetMetaData(
57       "TV Keyset 2",
58       GoldStar_Make,
59       index)
60 {
61   threadableProtocol = new RC5Protocol(guiObject, index, 0x40);
62
63   addKey("0", Zero_Key, 0x00, 6);
64   addKey("1", One_Key, 0x01, 6);
65   addKey("2", Two_Key, 0x02, 6);
66   addKey("3", Three_Key, 0x03, 6);
67   addKey("4", Four_Key, 0x04, 6);
68   addKey("5", Five_Key, 0x05, 6);
69   addKey("6", Six_Key, 0x06, 6);
70   addKey("7", Seven_Key, 0x07, 6);
71   addKey("8", Eight_Key, 0x08, 6);
72   addKey("9", Nine_Key, 0x09, 6);
73   addKey("-/--", DoubleDigit_Key, 0x0A, 6);
74   addKey("<=", Unmapped_Key, 0x0B, 6);
75   addKey("POWER", Power_Key, 0x0C, 6);
76   addKey("MUTE", Mute_Key, 0x0D, 6);
77   addKey("PP", PrevChannel_Key, 0x0E, 6);
78   addKey("VOL+", VolumeUp_Key, 0x10, 6);
79   addKey("VOL-", VolumeDown_Key, 0x11, 6);
80   addKey("PROG+", ChannelUp_Key, 0x20, 6);
81   addKey("PROG-", ChannelDown_Key, 0x21, 6);
82   addKey("LOOP", Unmapped_Key, 0x22, 6);
83   addKey("OK", Select_Key, 0x25, 6);
84   addKey(">=<", Unmapped_Key, 0x29, 6);
85   addKey("=o", Unmapped_Key, 0x2A, 6);
86   addKey("=^", Unmapped_Key, 0x2B, 6);
87   addKey("=?", TeletextReveal_Key, 0x2C, 6);
88   addKey("=X", Unmapped_Key, 0x2D, 6);
89   addKey("=/", Unmapped_Key, 0x2E, 6);
90   addKey("YELLOW", Yellow_Key, 0x32, 6);
91   addKey("BLUE", Blue_Key, 0x34, 6);
92   addKey("=i", Unmapped_Key, 0x35, 6);
93   addKey("GREEN", Green_Key, 0x36, 6);
94   addKey("RED", Red_Key, 0x37, 6);
95   addKey("AV", Unmapped_Key, 0x38, 6);
96   addKey("MENU", Menu_Key, 0x3B, 6);
97   addKey("=", Unmapped_Key, 0x3C, 6);
98   addKey("=M", Unmapped_Key, 0x3E, 6);
99   addKey("TV", Unmapped_Key, 0x3F, 6);
100 }
101
102
103 GoldStarVCR1::GoldStarVCR1(
104   QObject *guiObject,
105   unsigned int index)
106   : PIRKeysetMetaData(
107       "VCR Keyset 1",
108       GoldStar_Make,
109       index)
110 {
111   addControlledDevice(GoldStar_Make, "GSE-Q204P", VCR_Device);
112   addControlledDevice(GoldStar_Make, "QUISY 500", VCR_Device);
113
114   threadableProtocol = new NECProtocol(guiObject, index, false, true);
115
116 //  setPreData(0x7689, 16);
117   setPreData(0x6E, 8);
118
119   addKey("eject", Eject_Key, 0x00, 8);
120   addKey("stop", Stop_Key, 0x01, 8);
121   addKey("<rew", Rewind_Key, 0x02, 8);
122   addKey("ff>", FastForward_Key, 0x03, 8);
123   addKey("0", Zero_Key, 0x04, 16);
124   addKey("1", One_Key, 0x05, 8);
125   addKey("2", Two_Key, 0x06, 8);
126   addKey("3", Three_Key, 0x07, 8);
127   addKey("play", Play_Key, 0x08, 8);
128   addKey("record", Record_Key, 0x09, 8);
129   addKey("pause||", Pause_Key, 0x0B, 8);
130   addKey("4", Four_Key, 0x0C, 8);
131   addKey("5", Five_Key, 0x0D, 8);
132   addKey("6", Six_Key, 0x0E, 8);
133   addKey("7", Seven_Key, 0x0F, 8);
134   addKey("f/a", StepForward_Key, 0x10, 8); // frame advance?
135   addKey("slow", Slow_Key, 0x13, 8);
136   addKey("power", Power_Key, 0x14, 8);
137   addKey("tv_vcr", Input_Key, 0x15, 8);
138   addKey("menu", Menu_Key, 0x16, 8);
139   addKey("prog+", ChannelUp_Key, 0x18, 8);
140   addKey("prog-", ChannelDown_Key, 0x19, 8);
141   addKey("slow+", SlowPlus_Key, 0x1A, 8);
142   addKey("slow-", SlowMinus_Key, 0x1B, 8);
143   addKey("8", Eight_Key, 0x1C, 8);
144   addKey("9", Nine_Key, 0x1D, 8);
145   addKey("display", Info_Key, 0x1E, 8);
146   addKey("clear", Clear_Key, 0x1F, 8);
147   addKey("child_lock", Unmapped_Key, 0x3F, 8);
148   addKey("viss", Unmapped_Key, 0x41, 8);
149   addKey("tracking+", TrackingPlus_Key, 0x44, 8);
150   addKey("tracking-", TrackingMinus_Key, 0x45, 8);
151   addKey("show_view", Unmapped_Key, 0x47, 8);
152   addKey("sp/lp", VHSSpeed_Key, 0x48, 8);
153   addKey("vps", Unmapped_Key, 0x49, 8);
154   addKey("start", Unmapped_Key, 0x4A, 8);
155   addKey("length", Unmapped_Key, 0x4B, 8);
156   addKey("clock_count", Clock_Key, 0x4C, 8); // "memory"
157   addKey("reset", Reset_Key, 0x4D, 8);
158   addKey("preset", Unmapped_Key, 0x4E, 8);
159   addKey("a_trk", AutoTracking_Key, 0x5F, 8);
160   addKey("up", Up_Key, 0x82, 8);
161   addKey("left", Left_Key, 0x83, 8);
162   addKey("down", Down_Key, 0x89, 8);
163   addKey("ok", Select_Key, 0x8E, 8);
164   addKey("right", Right_Key, 0x90, 8);
165 }
166
167
168 GoldStarVCR1a::GoldStarVCR1a(
169   QObject *guiObject,
170   unsigned int index)
171   : GoldStarVCR1(guiObject, index)
172 {
173   setKeysetName("VCR Keyset 1a");
174
175   addKey("TU_AV", Input_Key, 0x56, 16);
176 }
177
178
179 GoldStarVCR1b::GoldStarVCR1b(
180   QObject *guiObject,
181   unsigned int index)
182   : GoldStarVCR1(guiObject, index)
183 {
184   setKeysetName("VCR Keyset 1b");
185
186   addKey("BACK", Exit_Key, 0x4C, 8);
187 }
188
189
190 GoldStarVCR1c::GoldStarVCR1c(
191   QObject *guiObject,
192   unsigned int index)
193   : GoldStarVCR1(guiObject, index)
194 {
195   setKeysetName("VCR Keyset 1c");
196
197   addKey("trk-", TrackingMinus_Key, 0xED, 8);
198   addKey("trk+", TrackingPlus_Key, 0xEE, 8);
199   addKey("a.trk", AutoTracking_Key, 0xE8, 8);
200   addKey("a.repeart", Unmapped_Key, 0xF5, 8);
201 }
202
203
204 // Based on LIRC 6710S-6000A config file
205 GoldStarCD1::GoldStarCD1(
206   QObject *guiObject,
207   unsigned int index)
208   : PIRKeysetMetaData(
209       "Audio Keyset 1",
210       GoldStar_Make,
211       index)
212 {
213   addControlledDevice(GoldStar_Make, "FFH-272A/L", Audio_Device);
214
215   LIRCProtocol *lp = new LIRCProtocol(
216     guiObject,
217     index,
218     600, 500,
219     600, 1600,
220     108000, true);
221
222   threadableProtocol = lp;
223
224   lp->setHeaderPair(4500, 4500);
225   lp->setTrailerPulse(600);
226   lp->setRepeatPair(600, 1600);
227   lp->setRepeatNeedsHeader(true);
228
229   setPreData(0x0808, 16);
230   setPostData(0x1, 1);
231
232   addKey("power", Power_Key, 0x3C43, 15);
233   addKey("mute", Mute_Key, 0x7C03, 15);
234   addKey("cd", CDInput_Key, 0x601F, 15);
235   addKey("tape", TapeInput_Key, 0x0877, 15);
236   addKey("aux", AuxInput_Key, 0x4837, 15);
237   addKey("fm", Unmapped_Key, 0x007F, 15);
238   addKey("mw", Unmapped_Key, 0x403F, 15);
239   addKey("lw", Unmapped_Key, 0x205F, 15);
240   addKey("pre-", ChannelDown_Key, 0x245B, 15);
241   addKey("pre-", PrevPreset_Key, 0x245B, 15);
242   addKey("pre+", ChannelUp_Key, 0x641B, 15);
243   addKey("pre+", NextPreset_Key, 0x641B, 15);
244   addKey("ply/pau", Play_Key, 0x106F, 15);
245   addKey("stop", Stop_Key, 0x502F, 15);
246   addKey("prev", Previous_Key, 0x304F, 15);
247   addKey("next", Next_Key, 0x700F, 15);
248   addKey("prog", Program_Key, 0x5926, 15);
249   addKey("repeat", Repeat_Key, 0x3946, 15);
250   addKey("random", Random_Key, 0x057A, 15);
251   addKey("dskip", NextDisc_Key, 0x2956, 15);
252   addKey("remain", Unmapped_Key, 0x453A, 15);
253   addKey("eqpatt", Unmapped_Key, 0x017E, 15);
254   addKey("vol-", VolumeDown_Key, 0x344B, 15);
255   addKey("vol+", VolumeUp_Key, 0x740B, 15);
256 }