📄 osddraw.lst
字号:
213 void OSDSetRamAddr(uWORD address)
214 {
215 1 I2CWriteByte(TW101,OSD_RAM_AH,(uCHAR)(address>>8));
216 1 I2CWriteByte(TW101,OSD_RAM_AL,(uCHAR)(address & 0xff));
217 1 //EA=0;
218 1 }
219
220 void OSDEnable(void)
221 {
222 1 // m_bOSDEnable = 1;
223 1 OSDCfgWr(OSD_CTRL,0x98);
224 1 //OSDCfgWr(OSD_CTRL,0x99); //For malata only
225 1
226 1 //#ifndef TIMER0
227 1 // if(m_bFactryMode) return;
228 1 // Timer0Start();
229 1 //#endif
230 1
231 1 }
232
233 void OSDDisable(void)
234 {
235 1 /*
236 1 #ifdef TIMER0
237 1 if(!m_bFactryMode)
238 1
239 1 #endif
240 1 */ //Timer0Stop();
241 1 OSDCfgWr(OSD_CTRL,0x18);
C51 COMPILER V7.06 OSDDRAW 09/22/2005 16:15:34 PAGE 5
242 1 // m_cOSDEvent=0;
243 1 // m_cOSDFunc=0;
244 1 // m_cItem=1;
245 1 // m_bAdjRGBColor=0; //Init color
246 1 // m_bOSDEnable=0;
247 1 // m_cCurreKey=m_cPreKey=0xFF;
248 1 }
249 //extern bit bFactry_Func,bFactry_Menu;
250
251 void OSDExit(void)
252 {
253 1 OSDCfgWr(OSD_CTRL,0x18);
254 1 OSDCfgWr(0x10,0x00); //Disable window
255 1 OSDDisable();
256 1 OSDClearPage();
257 1 //bFactry_Func=0;
258 1 //bFactry_Menu=0;
259 1
260 1 }
261
262 /*void OSDEventMgr(void)
263 {
264 // Timer0Stop();
265 switch(m_cOSDEvent){
266 case GammaAdjust:
267 bGAMMA_ADJ=TURE;
268 AddPoint=0;
269 GammaBuffer=I2CReadByte(EEPBLOCK1,AddPoint);
270 OSDPosition(CENTER);
271 OSDEnable();
272 OSDShowLine(iGAMMA,0,0,COL_TITLE,OSD_LENGTH);
273 OSDDisplayNum(AddPoint, 8,0, COL_TITLE);
274 OSDDisplayNum(GammaBuffer, 13,0, COL_TITLE);
275 break;
276 case CLOSEMENU:
277 OSDExit();
278 break;
279 case OPENMENU:
280 m_cItem=1;
281 OSDOpenMenu();
282 OSDMoveCursor(0x00,0x17);
283 break;
284 case FUNCSELCT_IN:
285 if(bGAMMA_ADJ==TURE){
286 AddPoint++;
287 if(AddPoint>=GAMMA_TABLE_DATA_SIZE)
288 AddPoint=0;
289 GammaBuffer=I2CReadByte(EEPBLOCK1,AddPoint);
290 OSDDisplayNum(AddPoint, 8,0, COL_TITLE);
291 OSDDisplayNum( GammaBuffer, 13,0, COL_TITLE);
292 }
293 else
294 OSDFuncSelect(-1);
295 break;
296 case FUNCSELCT_DN:
297 if(bGAMMA_ADJ==TURE){
298 if(AddPoint==0)
299 AddPoint=GAMMA_TABLE_DATA_SIZE;
300 AddPoint--;
301 GammaBuffer=I2CReadByte(EEPBLOCK1,AddPoint);
302 OSDDisplayNum(AddPoint, 8,0, COL_TITLE);
303 OSDDisplayNum( GammaBuffer, 13,0, COL_TITLE);
C51 COMPILER V7.06 OSDDRAW 09/22/2005 16:15:34 PAGE 6
304 }
305 else
306 OSDFuncSelect(1);
307 break;
308 case FUNCEXIT:
309 OSDFuncExit();
310 break;
311 case FUNCADJ_IN:
312 if(bGAMMA_ADJ==TURE){
313 GammaBuffer++;
314 I2CWriteByte(EEPBLOCK1,AddPoint,GammaBuffer);
315 OSDDisplayNum(AddPoint, 8,0, COL_TITLE);
316 OSDDisplayNum(GammaBuffer, 13,0, COL_TITLE);
317 AdjustGammmaDate();
318 }
319 else
320 OSDItemAdj(INCREASE);
321 break;
322 case FUNCADJ_DN:
323 if(bGAMMA_ADJ==TURE){
324 GammaBuffer--;
325 I2CWriteByte(EEPBLOCK1,AddPoint,GammaBuffer);
326 OSDDisplayNum(AddPoint, 8,0, COL_TITLE);
327 OSDDisplayNum(GammaBuffer, 13,0, COL_TITLE);
328 AdjustGammmaDate();
329 }
330 else
331 OSDItemAdj(DECREASE);
332 break;
333 case POWERMANAGE:
334 m_bKyPowerOn = m_bKyPowerOn^0x01;
335 PowerManage();
336 //if(m_bChipPowerOn)
337 // BKPower();
338 break;
339 default: break;
340 }
341
342 //if(m_bOSDEnable)
343 // Timer0Start();
344 }*/
345 /*void OSDDisplayNum(uCHAR cVal, uCHAR x, uCHAR y, uCHAR cColor)
346 { uCHAR i;
347 uCHAR cTemp=cVal;
348 uCHAR Num[2]=0;
349 Num[0]=(uCHAR)(cTemp/16);
350 Num[1]=(uCHAR)(cTemp%16);
351
352 OSDSetRamAddr(MENU_RAM_START_ADDRESS+((int)y << 5)+x);
353 twdWr_Burst_A(OSD_RAM_DL);
354 for(i=0;i<2;i++){
355 OSDNumConvert(Num[i]);
356 twdWr_Burst_D(cColor );
357 x++;
358 }
359 twdWr_Burst_P();
360 }
361 */
362 /*void OSDOpenMenu(void)
363 {
364
365 OSDPosition(CENTER);
C51 COMPILER V7.06 OSDDRAW 09/22/2005 16:15:34 PAGE 7
366 OSDEnable();
367 OSDShowPage(); //Title
368 m_cOSDFunc|=m_cItem;
369 OSDShowVideoData();
370 }*/
371 /*void OSDFuncExit(void)
372 {
373 OSDCfgWr(0x10,0x00); //Disable window
374 OSDClearPage();
375 OSDDisable();
376 m_cOSDEvent=0;
377 m_cItem=1;
378 }*/
379 /*void OSDFuncSelect(sCHAR sStep)
380 {
381 //Remove previous cursor
382 //OSDHLLine(m_cItem, COL_NORMAL);
383
384 switch(m_cOSDFunc&0xf0){
385 case idMainMenu:
386 if(m_cItem+sStep>=1 && m_cItem+sStep<=5 ) m_cItem+=sStep;
387 else{
388 if(sStep<0) m_cItem=5;
389 else m_cItem=1;
390 }
391 break;
392 default:
393 break;
394 }
395 m_cOSDFunc=(m_cOSDFunc&0xf0)|m_cItem;
396 //High Light Current item
397 OSDMoveCursor(0x00,0x17);
398 }
399 */
400
401 /*void OSDShowPage(void)
402 {
403 uCHAR i=0;
404 uCHAR y=1;
405
406 MULTILANGUAGEOSD *pOSDLangPtr;
407 OSDMENU **pOSDMenuPtr;
408
409 OSDPosition(CENTER);
410 pOSDLangPtr=&MultiLangOSD[0];
411 pOSDMenuPtr=pOSDLangPtr->osdMenuPtr; //Main
412
413 while(pOSDMenuPtr[(m_cOSDFunc>>4)-1][i].iconStr!=NULL)
414 {
415 OSDShowLine(iBlankLine,0,y,COL_NORMAL,OSD_LENGTH);//TV Kuo
416 OSDSetRamAddr(MENU_RAM_START_ADDRESS+((int)y<<5)+24);
417 twdWr_Burst_A(OSD_RAM_DL);
418 twdWr_Burst_D(0x3C); //V
419 twdWr_Burst_D(0x02);
420 twdWr_Burst_P();
421
422 OSDShowLine(pOSDMenuPtr[(m_cOSDFunc>>4)-1][i].iconStr,ICON_STAT,y,COL_NORMAL,OSD_LENGTH);//TV Kuo
423 OSDShowLine(pOSDMenuPtr[(m_cOSDFunc>>4)-1][i].txtStr,TXT_STAT,y,COL_NORMAL,OSD_LENGTH);
424 if(pOSDMenuPtr[(m_cOSDFunc>>4)-1][i].cDataAttr==GAUGE)
425 {
426 OSDShowVideoNum(i+m_cOSDFunc+1,y);
427 }
C51 COMPILER V7.06 OSDDRAW 09/22/2005 16:15:34 PAGE 8
428 i++;
429 y++;
430 }
431 OSDShowLine(iBlankLine,0,y,COL_NORMAL,OSD_LENGTH);//Kuo TV
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -