?? osddrawt102.lst
字號:
uWORD wTemp;
wTemp=((wFreq&0x7fff)-IF2_FERQ1)/FREQ_1MHZ;
//m_wBuff[0]=wFreq/20-38;
OSDDrawNum(wTemp, 0, 14, 0, COL_TITLE, DRAW_BLANK|0x03);
OSDSetRamAddr(MENU_RAM_START_ADDRESS+17);
twdWr_Burst_A(OSD_RAM_DL);
twdWr_Burst_D(0x14); //'.'
twdWr_Burst_D(COL_TITLE );
twdWr_Burst_P();
wTemp=((wFreq&0x7fFF)-IF2_FERQ1)%FREQ_1MHZ;
OSDDrawNum(wTemp, FREQ_1MHZ, 18, 0, COL_TITLE, DRAW_ZERO|0x02);
}
void OSDDrawSkip(void)
{
OSDSetRamAddr(MENU_RAM_START_ADDRESS+((int)2<<5)+19);
twdWr_Burst_A(OSD_RAM_DL);
switch((uCHAR)m_bTV_Skip){
case 0:
twdWr_Burst_D('A');
twdWr_Burst_D(COL_TITLE);
twdWr_Burst_D('D');
twdWr_Burst_D(COL_TITLE);
twdWr_Burst_D('D');
twdWr_Burst_D(COL_TITLE);
break;
case 1:
twdWr_Burst_D('E');
twdWr_Burst_D(COL_TITLE);
twdWr_Burst_D('R');
C51 COMPILER V7.07 OSDDRAWT102 10/27/2005 16:27:46 PAGE 11
twdWr_Burst_D(COL_TITLE);
twdWr_Burst_D('A');
twdWr_Burst_D(COL_TITLE);
break;
}
}
void OSDDrawBand(uWORD wFreq)
{
uCHAR k;
if(wFreq < VLMAX)
k=BAND_VL;
else if(wFreq > VHMAX)
k=BAND_UHF;
else
k=BAND_VH;
OSDSetRamAddr(MENU_RAM_START_ADDRESS+((int)2<<5)+19);
twdWr_Burst_A(OSD_RAM_DL);
switch(k){
case BAND_VL:
twdWr_Burst_D(BLANK);
twdWr_Burst_D(COL_TITLE);
twdWr_Burst_D('V');
twdWr_Burst_D(COL_TITLE);
twdWr_Burst_D('L');
twdWr_Burst_D(COL_TITLE);
break;
case BAND_VH:
twdWr_Burst_D(BLANK);
twdWr_Burst_D(COL_TITLE);
twdWr_Burst_D('V');
twdWr_Burst_D(COL_TITLE);
twdWr_Burst_D('H');
twdWr_Burst_D(COL_TITLE);
break;
case BAND_UHF:
twdWr_Burst_D('U');
twdWr_Burst_D(COL_TITLE);
twdWr_Burst_D('H');
twdWr_Burst_D(COL_TITLE);
twdWr_Burst_D('F');
twdWr_Burst_D(COL_TITLE);
break;
default: break;
}
twdWr_Burst_P();
}
/*
void OSDTVShowChannel(uCHAR x, uCHAR y, uCHAR cColor, uCHAR cChannel)
{
if(cChannel>=100)
{
OSDSetRamAddr(MENU_RAM_START_ADDRESS+((int)y<<5)+x); //9
twdWr_Burst_A(OSD_RAM_DL);
OSDNumConvert(cChannel/100);
twdWr_Burst_D(cColor );
OSDNumConvert((cChannel/10)%10);
twdWr_Burst_D(cColor );
OSDNumConvert(cChannel%10);
C51 COMPILER V7.07 OSDDRAWT102 10/27/2005 16:27:46 PAGE 12
twdWr_Burst_D(cColor );
twdWr_Burst_P();
}
else if(cChannel>=10)
{
OSDSetRamAddr(MENU_RAM_START_ADDRESS+((int)y<<5)+x);
twdWr_Burst_A(OSD_RAM_DL);
twdWr_Burst_D(BLANK);
twdWr_Burst_D(cColor);
OSDNumConvert(cChannel/10);
twdWr_Burst_D(cColor );
OSDNumConvert(cChannel%10);
twdWr_Burst_D(cColor );
twdWr_Burst_P();
}
else
{
OSDSetRamAddr(MENU_RAM_START_ADDRESS+((int)y<<5)+x);
twdWr_Burst_A(OSD_RAM_DL);
twdWr_Burst_D(BLANK);
twdWr_Burst_D(cColor);
twdWr_Burst_D(BLANK);
twdWr_Burst_D(cColor);
OSDNumConvert(cChannel);
twdWr_Burst_D(cColor );
twdWr_Burst_P();
}
}
*/
#endif
705
706
707 void OSDNumConvert(uCHAR cNum)
708 {
709 1 switch(cNum){
710 2 case 9: twdWr_Burst_D('9'-0x2f); break;
711 2 case 8: twdWr_Burst_D('8'-0x2f); break;
712 2 case 7: twdWr_Burst_D('7'-0x2f); break;
713 2 case 6: twdWr_Burst_D('6'-0x2f); break;
714 2 case 5: twdWr_Burst_D('5'-0x2f); break;
715 2 case 4: twdWr_Burst_D('4'-0x2f); break;
716 2 case 3: twdWr_Burst_D('3'-0x2f); break;
717 2 case 2: twdWr_Burst_D('2'-0x2f); break;
718 2 case 1: twdWr_Burst_D('1'-0x2f); break;
719 2 case 0: twdWr_Burst_D('0'-0x2f); break;
720 2 default: break;
721 2 }
722 1 }
723
724 //Ruby add 2004-06-08
725 extern uCHAR idata m_cScaleratio;
726 void OSDShowRatio(void)
727 {
728 1 uCHAR i;
729 1 for(i=0;i<8;i++)
730 1 {
731 2 OSDCleanLine(0,i,0,30);
732 2 OSDSetLineAttribute(i,0x80);
733 2 }
734 1 OSDPosition(RIGHT_TOP);
735 1 switch(m_cScaleratio)
736 1 {
C51 COMPILER V7.07 OSDDRAWT102 10/27/2005 16:27:46 PAGE 13
737 2 case ScaleFULL:
738 2 OSDShowLine(iScaleFULL,16,1,COL_GAUGE,OSD_LENGTH);
739 2 break;
740 2 case Scale16_9:
741 2 OSDShowLine(iScale16_9,16,1,COL_GAUGE,OSD_LENGTH);
742 2 break;
743 2
744 2 case Scale4_3:
745 2 OSDShowLine(iScale4_3,16,1,COL_GAUGE,OSD_LENGTH);
746 2 break;
747 2 }
748 1 OSDEnable();
749 1 }
750
751
752 void OSDShowSource(void)
753 {
754 1 uCHAR i;
755 1 for(i=0;i<8;i++)
756 1 {
757 2 OSDCleanLine(0,i,0,30);
758 2 OSDSetLineAttribute(i,0x80);
759 2 }
760 1 OSDPosition(RIGHT_TOP);
761 1 switch(m_cSource)
762 1 {
763 2
764 2 #ifdef TV
case isrcTV:
OSDShowLine(iCVBS_TV,16,1,COL_GAUGE,OSD_LENGTH);
break;
#else
769 2 case isrcCVIDEO1:
770 2 OSDShowLine(iCVBS_1,16,1,COL_GAUGE,OSD_LENGTH);
771 2 break;
772 2 #endif
773 2 case isrcCVIDEO2:
774 2 OSDShowLine(iCVBS_2,16,1,COL_GAUGE,OSD_LENGTH);
775 2 break;
776 2 // case isrcCVIDEO3:
777 2 // OSDShowLine(iCVBS_3,16,1,COL_GAUGE,OSD_LENGTH);
778 2 // break;
779 2 case isrcSVIDE1:
780 2 OSDShowLine(iSVideo_1,16,1,COL_GAUGE,OSD_LENGTH);
781 2 break;
782 2 /*
783 2 #ifdef NEW_BOARD
784 2 case isrcSVIDE1:
785 2 OSDShowLine(iSVideo_1,16,1,COL_GAUGE,OSD_LENGTH);
786 2 break;
787 2 #else
788 2 case isrcCVIDEO4:
789 2 OSDShowLine(iCVBS_4,16,1,COL_GAUGE,OSD_LENGTH);
790 2 break;
791 2 #endif
792 2 */
793 2 case isrcSVIDEO:
794 2 OSDShowLine(iSVideo,16,1,COL_GAUGE,OSD_LENGTH);
795 2 break;
796 2 #ifdef component
case isrcCOMPONENT:
OSDShowLine(iCOMPONENT,16,1,COL_GAUGE,26);
C51 COMPILER V7.07 OSDDRAWT102 10/27/2005 16:27:46 PAGE 14
break;
#endif
801 2
802 2 #ifdef T515
case isrc_T515_CVIDEO1:
OSDShowLine(iCVBS_5,16,1,COL_GAUGE,OSD_LENGTH);
break;
case isrc_T515_CVIDEO2:
OSDShowLine(iCVBS_6,16,1,COL_GAUGE,OSD_LENGTH);
break;
case isrc_T515_SVIDEO:
//OSDShowLine(iSVideo_2,16,1,COL_GAUGE,OSD_LENGTH);
OSDShowLine(iSVideo_2,16,1,COL_GAUGE,26);
break;
#endif
816 2
817 2
818 2 //add source OSD here!!
819 2
820 2 }
821 1 OSDEnable();
822 1 }
823 extern uCHAR idata m_cStandard;
824 void OSDShowNTSC_PAL(void)
825 {
826 1 if(m_cStandard==S_PAL)OSDShowLine(iPAL,16,1,COL_GAUGE,OSD_LENGTH);
827 1 else if(m_cStandard==S_NTSC) OSDShowLine(iNTSC,16,1,COL_GAUGE,OSD_LENGTH);
828 1 else if(m_cStandard==S_SECAM) OSDShowLine(iSECAM,16,1,COL_GAUGE,OSD_LENGTH);
829 1 OSDEnable();
830 1 }
831
832 void OSDClearCursor(uCHAR cStart, uCHAR cEnd)
833 {
834 1 pOSDLangPtr=&MultiLangOSD[OSD_cOSDLang];
835 1 pOSDMenuPtr=pOSDLangPtr->osdMenuPtr;
836 1 OSDShowLine(pOSDMenuPtr[m_cOSDMenu-1][m_cOSDFunc-1].txtStr,TXT_STAT,m_cOSDFunc,COL_NORMAL,OSD_LENGTH);
837 1 return;
838 1 }
*** WARNING C280 IN LINE 832 OF SOURCE\OSD\OSDDRAWT102.C: 'cStart': unreferenced local variable
*** WARNING C280 IN LINE 832 OF SOURCE\OSD\OSDDRAWT102.C: 'cEnd': unreferenced local variable
839
840
841 void OSDMoveCursor(uCHAR cStart, uCHAR cEnd)
842 {
843 1 pOSDLangPtr=&MultiLangOSD[OSD_cOSDLang];
844 1 pOSDMenuPtr=pOSDLangPtr->osdMenuPtr;
845 1 OSDShowLine(pOSDMenuPtr[m_cOSDMenu-1][m_cOSDFunc-1].txtStr,TXT_STAT,m_cOSDFunc,LBLUE_RED,OSD_LENGTH);
846 1 return;
847 1 }
*** WARNING C280 IN LINE 841 OF SOURCE\OSD\OSDDRAWT102.C: 'cStart': unreferenced local variable
*** WARNING C280 IN LINE 841 OF SOURCE\OSD\OSDDRAWT102.C: 'cEnd': unreferenced local variable
848
849
850 void OSDPosition(uCHAR cPos)
851 {
852 1 #ifdef _640_220 // PVI_9_VGA
if(cPos==RIGHT_TOP)
{
OSDCfgWr(CHAR_DLY_0,0x00); //V[10:8] bit 6-4; H[10:8] bit2-0 23 12
OSDCfgWr(CHAR_DLY_1,0xEA); //H[7:0] 80 80
C51 COMPILER V7.07 OSDDRAWT102 10/27/2005 16:27:46 PAGE 15
OSDCfgWr(CHAR_DLY_2,0x00); //v[7:0] 64 30
}
if(cPos==CENTER)
{
OSDCfgWr(CHAR_DLY_0,0x00); //V[10:8] bit 6-4; H[10:8] bit2-0 23 12
OSDCfgWr(CHAR_DLY_1,0xEA); //H[7:0] 80 80
OSDCfgWr(CHAR_DLY_2,0x00); //v[7:0] 64 30
}
else if(cPos==LEFT_BOTTOM)//not define yet!
{
OSDCfgWr(CHAR_DLY_0,0x12); //V[10:8] bit 6-4; H[10:8] bit2-0
OSDCfgWr(CHAR_DLY_1,0x00); //H[7:0]
OSDCfgWr(CHAR_DLY_2,0x60); //v[7:0] //00
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -