📄 etc_eep.lst
字号:
C51 COMPILER V7.50 ETC_EEP 08/20/2007 10:23:30 PAGE 1
C51 COMPILER V7.50, COMPILATION OF MODULE ETC_EEP
OBJECT MODULE PLACED IN etc_eep.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE etc_eep.c COMPACT OPTIMIZE(9,SIZE)
line level source
1 //eeprom.c
2 #include "Config.h"
3
4 #include "typedefs.h"
5 #include "main.h"
6 #include "i2c.h"
7 #include "debug.h"
8 #include "printf.h"
9 #include "TW88.h"
10 #include "etc_eep.h"
11 #include "cc.h"
12 #include "osdbasic.h"
13 #include "osdmenu.h"
14 #include "audio.h"
15 //-----------------------------------------------------------------------------
16
17 extern IDATA BYTE InputSelection;
18 extern PDATA BYTE TVChannel, DummyChannel;
19 extern PDATA BYTE TVInputSel;
20
21 //=============================================================================
22 WORD GetFWRevEE()
23 {
24 1 WORD rev;
25 1
26 1 if( ReadEEP(0) != 'T' ) return 0;
27 1 if( ReadEEP(1) != 'W' ) return 0;
28 1 if( ReadEEP(2) != '8' ) return 0;
29 1 if( ReadEEP(3) != '8' ) return 0;
30 1
31 1 rev = ReadEEP(EEP_FWREV_MAJOR) << 8;
32 1 rev |= ReadEEP(EEP_FWREV_MINOR);
33 1
34 1 return rev;
35 1 }
36
37 void SaveFWRevEE(WORD rev)
38 {
39 1 WriteEEP(0, 'T');
40 1 WriteEEP(1, 'W');
41 1 WriteEEP(2, '8');
42 1 WriteEEP(3, '8');
43 1
44 1 WriteEEP(EEP_FWREV_MAJOR, (BYTE)(rev>>8) );
45 1 WriteEEP(EEP_FWREV_MINOR, (BYTE)rev );
46 1 }
47
48 BYTE GetDebugLevelEE(void)
49 {
50 1 return ReadEEP(EEP_DEBUGLEVEL);
51 1 }
52
53 void SaveDebugLevelEE(BYTE dl)
54 {
55 1 WriteEEP(EEP_DEBUGLEVEL, dl);
C51 COMPILER V7.50 ETC_EEP 08/20/2007 10:23:30 PAGE 2
56 1 //delay(1);
57 1 }
58
59 #ifdef WIDE_SCREEN
60 BYTE GetWideModeEE(void)
61 {
62 1 return ReadEEP(EEP_WIDEMODE);
63 1 }
64
65 void SaveWideModeEE(BYTE dl)
66 {
67 1 WriteEEP(EEP_WIDEMODE, dl);
68 1 //delay(1);
69 1 }
70 #endif
71
72 BYTE GetPossibleAutoDetectStdEE(void)
73 {
74 1 BYTE val;
75 1
76 1 val = GetAutoRecogntionEE();
77 1
78 1 #ifdef DEBUG_EEP
dPrintf("\r\nGetPossibleAutoDetectStdEE:0x%02x", (WORD)val);
#endif
81 1
82 1 return val;
83 1 }
84
85 void SetPossibleAutoDetectStdEE()
86 {
87 1 BYTE i, val=0;
88 1 extern CODE struct struct_IdName struct_VInputStd[];
89 1
90 1 for(i=0; ; i++) {
91 2 switch(struct_VInputStd[i].Id) {
92 3 case 0: { // end of list
93 4 SaveAutoRecogntionEE(val);
94 4
95 4 #ifdef DEBUG_EEP
dPrintf("\r\nSetPossibleAutoDetectStdEE:0x%02x", (WORD)val);
#endif
98 4 return;
99 4 }
100 3 case NTSC: val |= 0x01; break;
101 3 case PAL: val |= 0x02; break;
102 3 case SECAM: val |= 0x04; break;
103 3 case NTSC4: val |= 0x08; break;
104 3 case PALM: val |= 0x10; break;
105 3 case PALN: val |= 0x20; break;
106 3 case PAL60: val |= 0x40; break;
107 3 default: break;
108 3 }
109 2 }
110 1 }
111
112 //=============================================================================
113 //
114 //=============================================================================
115 #ifdef SUPPORT_OSDPOSITIONMOVE
BYTE GetOSDPositionModeEE(void)
{
C51 COMPILER V7.50 ETC_EEP 08/20/2007 10:23:30 PAGE 3
BYTE val;
val = ReadEEP(EEP_OSDPOSITIONMODE);
return val;
}
void SaveOSDPositionModeEE(BYTE ndata)
{
WriteEEP(EEP_OSDPOSITIONMODE, ndata);
}
#endif // SUPPORT_OSDPOSITIONMOVE
132
133
134 #define TOT_VIDEO 6
135 BYTE GetVideoDatafromEE(BYTE offset)
136 {
137 1 BYTE val;
138 1
139 1 val = ReadEEP(EEP_CONTRAST+(InputSelection-1)*TOT_VIDEO + offset);
140 1
141 1 return val;
142 1 }
143
144 void SaveVideoDatatoEE(BYTE offset, BYTE ndata)
145 {
146 1 BYTE tot;
147 1
148 1 tot=EEP_CONTRAST+ (InputSelection-1)*TOT_VIDEO+offset;
149 1
150 1 WriteEEP(tot, ndata);
151 1
152 1 }
153 BYTE GetInputSelectionEE(void)
154 {
155 1 BYTE val, i;
156 1 extern CODE struct struct_IdName struct_InputSelection[];
157 1
158 1 val = ReadEEP(EEP_INPUTSELECTION);
159 1
160 1 for(i=0; ; i++)
161 1 if( struct_InputSelection[i].Id == val )
162 1 break;
163 1 else if (struct_InputSelection[i].Id ==0 ) {
164 2 //i=0;
165 2 val = COMPOSITE;//UNKNOWN; (return composite)
166 2 break;
167 2 }
168 1
169 1 //InputSelectionInx = i;
170 1 #ifdef DEBUG_EEP
dPrintf("\r\nGetInputSelectionEE:%02x", (WORD)val);
#endif
173 1
174 1 return val;
175 1 }
176
177 void SaveInputSelectionEE(BYTE val)
178 {
179 1 WriteEEP(EEP_INPUTSELECTION, val);
C51 COMPILER V7.50 ETC_EEP 08/20/2007 10:23:30 PAGE 4
180 1 }
181
182 /*
183 #ifndef TW8803
184
185 BYTE GetOSDDurationEE(void)
186 {
187 BYTE val;
188
189 val = ReadEEP(0x30);
190
191 #ifdef DEBUG_EEP
192 dPrintf("\r\nGetOSDUuration:%02x", (WORD)val);
193 #endif
194
195 return val;
196 }
197
198 void SaveOSDDurationEE(BYTE val)
199 {
200 WriteEEP(0x30, val);
201 }
202 */
203 BYTE GetOSDLangEE(void)
204 {
205 1 BYTE val;
206 1
207 1 val = ReadEEP(EEP_OSDLANG);
208 1
209 1 #ifdef DEBUG_EEP
dPrintf("\r\nGetOSDLang:%02x", (WORD)val);
#endif
212 1
213 1 return val;
214 1 }
215
216 void SaveOSDLangEE(BYTE val)
217 {
218 1 WriteEEP(EEP_OSDLANG, val);
219 1 }
220
221 /*ljy100303
222 BYTE GetOSDZoomEE(void)
223 {
224 BYTE val;
225
226 val = ReadEEP(OSDZOOM);
227
228 #ifdef DEBUG_EEP
229 dPrintf("\r\nGetOSDZoom:%02x", (WORD)val);
230 #endif
231
232 return val;
233 }
234
235 void SaveOSDZoomEE(BYTE val)
236 {
237 WriteEEP(OSDZOOM, val);
238 }
239 */
240
241 //========= Audio =================================================
C51 COMPILER V7.50 ETC_EEP 08/20/2007 10:23:30 PAGE 5
242 BYTE GetAudioVolEE(void)
243 {
244 1 return ReadEEP( 0x38 );
245 1 }
246
247 void SetAudioVolEE( BYTE vol )
248 {
249 1 WriteEEP( 0x38, vol );
250 1 }
251
252 BYTE GetAudioBalanceEE(void)
253 {
254 1 return ReadEEP( 0x39 );
255 1 }
256
257 void SetAudioBalanceEE( BYTE vol )
258 {
259 1 WriteEEP( 0x39, vol );
260 1 }
261
262 BYTE GetAudioBassEE(void)
263 {
264 1 return ReadEEP( 0x3a );
265 1 }
266
267 void SetAudioBassEE( BYTE vol )
268 {
269 1 WriteEEP( 0x3a, vol );
270 1 }
271
272 BYTE GetAudioTrebleEE(void)
273 {
274 1 return ReadEEP( 0x3b );
275 1 }
276
277 void SetAudioTrebleEE( BYTE vol )
278 {
279 1 WriteEEP( 0x3b, vol );
280 1 }
281 /*
282 BYTE GetAudioEffectEE(void)
283 {
284 return ReadEEP( 0x3c );
285 }
286
287 void SetAudioEffectEE( BYTE vol )
288 {
289 WriteEEP( 0x3c, vol );
290 }
291 */
292 //===================================================================
293 /*#include "panel.h"
294 void SavePanelInfoEE(void)
295 {
296 WriteEEP( PANELINFO+0 , (BYTE)PanelConfig.x_res );
297 WriteEEP( PANELINFO+1 , (BYTE)(PanelConfig.x_res >> 8) );
298
299 WriteEEP( PANELINFO+2 , (BYTE)PanelConfig.y_res );
300 WriteEEP( PANELINFO+3 , (BYTE)(PanelConfig.y_res >> 8) );
301
302 WriteEEP( PANELINFO+4 , PanelConfig.h_sync_min_pulse_width );
303
C51 COMPILER V7.50 ETC_EEP 08/20/2007 10:23:30 PAGE 6
304 WriteEEP( PANELINFO+5 , PanelConfig.v_sync_min_pulse_width );
305
306 WriteEEP( PANELINFO+6 , (BYTE)PanelConfig.h_min_back_porch );
307 WriteEEP( PANELINFO+7 , (BYTE)(PanelConfig.h_min_back_porch >> 8 ) );
308
309 WriteEEP( PANELINFO+8 , PanelConfig.h_sync_polarity );
310
311 WriteEEP( PANELINFO+9 , PanelConfig.v_sync_polarity );
312
313 WriteEEP( PANELINFO+0x0a , (BYTE)PanelConfig.dot_clock );
314 WriteEEP( PANELINFO+0x0b , (BYTE)(PanelConfig.dot_clock >> 8 ) );
315
316 WriteEEP( PANELINFO+0x0c , (BYTE)PanelConfig.max_clock );
317 WriteEEP( PANELINFO+0x0d , (BYTE)(PanelConfig.max_clock >> 8 ) );
318
319 WriteEEP( PANELINFO+0x0e , PanelConfig.pixs_per_clock );
320
321 WriteEEP( PANELINFO+0x0f , PanelConfig.DE_only );
322 }
323
324
325 #if (defined SERIAL) || (defined SUPPORT_PATTERN) || (defined WIDE_SCREEN)
326 WORD GetPanelXRes(void)
327 {
328 WORD res;
329
330 res = ReadEEP( PANELINFO+1 );
331 res = (res <<8 ) | ReadEEP( PANELINFO+0 );
332 return res;
333 }
334
335 WORD GetPanelYRes(void)
336 {
337 WORD res;
338
339 res = ReadEEP( PANELINFO+3 );
340 res = (res <<8 ) | ReadEEP( PANELINFO+2 );
341 return res;
342 }
343 #endif// (defined SUPPORT_PATTERN) || (defined WIDE_SCREEN)
344 */
345
346 /****
347 #if (defined SERIAL) || (defined WIDE_SCREEN)
348 BYTE GetPanelHsyncMinPulseWidth(void)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -