?? osddrawt100.lst
字號:
773 2 OSDDrawNum(EepVideo.cContrast,V_CONTRAST_MAX,NUM_STAT,GAUGE_Y,COL_TITLE,DRAW_BLANK|0x03);
774 2 break;
775 2 case idSHARPMENU_VIDEO:
776 2 case idSHARP_VIDEO:
777 2 OSDDrawGauge(EepVideo.cSharp,V_SHARP_MAX,0,GAUGE_Y,COL_GAUGE);
778 2 OSDDrawNum(EepVideo.cSharp,0,NUM_STAT,GAUGE_Y,COL_TITLE,DRAW_BLANK|0x03);
779 2 break;
780 2 case idSATMENU_VIDEO:
781 2 OSDDrawGauge(EepVideo.cSat,V_SAT_MAX,0,GAUGE_Y,COL_GAUGE);
782 2 OSDDrawNum(EepVideo.cSat,V_SAT_MAX,NUM_STAT,GAUGE_Y,COL_TITLE,DRAW_BLANK|0x03);
783 2 break;
784 2 case idHUEMENU_VIDEO:
785 2 OSDDrawGauge(EepVideo.cHue,V_HUE_MAX,0,GAUGE_Y, COL_GAUGE);
786 2 OSDDrawNum(EepVideo.cHue,V_HUE_MAX,NUM_STAT,GAUGE_Y,COL_TITLE,DRAW_BLANK|0x03);
787 2 break;
788 2 case idTIMEMENU_VIDEO:
789 2 EepVideo.cB2=I2CReadByte(TW101,0xb2);
790 2 EepVideo.cB8=I2CReadByte(TW101,0xb8);
791 2 OSDDrawNum(EepVideo.cB2,0,NUM_STAT-10,GAUGE_Y,COL_TITLE,DRAW_BLANK|0x03);
792 2 OSDDrawNum(EepVideo.cB8,0,NUM_STAT,GAUGE_Y,COL_TITLE,DRAW_BLANK|0x03);
793 2 break;
794 2 default: break;
795 2 }
796 1 }
797
C51 COMPILER V7.07 OSDDRAWT100 10/27/2005 16:13:34 PAGE 14
798 #define GAUGE_TOTAL_FONT_L 24 //Long
799 #define GAUGE_TOTAL_FONT_S 16 //Short
800 #define GAUGE_STAT_L 2
801 #define GAUGE_STAT_S 4
802 //#define NUM_STAT 21 // mark by Sherman 05'10'23
803 void OSDDrawGauge(uCHAR cVal, uCHAR cMax, uCHAR x, uCHAR y, uCHAR cColor)
804 {
805 1 bit bLastBar;
806 1 //Init Part
807 1 if((m_cOSDFunc&0xF0)==idCOLORMENU)
808 1 {
809 2 m_cBuff[3]=GAUGE_TOTAL_FONT_S;
810 2 m_wBuff[0]=(unsigned long)cVal*GAUGE_TOTAL_FONT_S;
811 2 }
812 1 else
813 1 {
814 2 m_cBuff[3]=GAUGE_TOTAL_FONT_L;
815 2 m_wBuff[0]=(unsigned long)cVal*GAUGE_TOTAL_FONT_L;
816 2 }
817 1 m_cBuff[0]=m_wBuff[0]/cMax;
818 1 m_cBuff[1]=(m_wBuff[0]%cMax)*100/cMax;
819 1
820 1 if(m_cBuff[0]==0)
821 1 {
822 2 if(m_cBuff[1]>=0 && m_cBuff[1]<=24)
823 2 m_cBuff[2]=BAR_S_MIN;
824 2 else if(m_cBuff[1]>=25 && m_cBuff[1]<=49)
825 2 m_cBuff[2]=BAR_S_1;
826 2 else if(m_cBuff[1]>=50 && m_cBuff[1]<=74)
827 2 m_cBuff[2]=BAR_S_2;
828 2 else if(m_cBuff[1]>=75 && m_cBuff[1]<=99)
829 2 m_cBuff[2]=BAR_S_MAX;
830 2 }
831 1 else if(m_cBuff[0]==m_cBuff[3]-1)
832 1 {
833 2 if(m_cBuff[1]>=0 && m_cBuff[1]<=24)
834 2 m_cBuff[2]=BAR_E_MIN;
835 2 else if(m_cBuff[1]>=25 && m_cBuff[1]<=49)
836 2 m_cBuff[2]=BAR_E_1;
837 2 else if(m_cBuff[1]>=50 && m_cBuff[1]<=74)
838 2 m_cBuff[2]=BAR_E_2;
839 2 else if(m_cBuff[1]>=75 && m_cBuff[1]<=99)
840 2 m_cBuff[2]=BAR_E_MAX;
841 2 }
842 1 else
843 1 {
844 2 if(m_cBuff[1]>=0 && m_cBuff[1]<=24)
845 2 m_cBuff[2]=BAR_MIN;
846 2 else if(m_cBuff[1]>=25 && m_cBuff[1]<=49)
847 2 m_cBuff[2]=BAR_1;
848 2 else if(m_cBuff[1]>=50 && m_cBuff[1]<=74)
849 2 m_cBuff[2]=BAR_2;
850 2 else if(m_cBuff[1]>=75 && m_cBuff[1]<=99)
851 2 m_cBuff[2]=BAR_MAX;
852 2 }
853 1
854 1 bLastBar=1;
855 1 if((m_cOSDFunc&0xF0)==idCOLORMENU)
856 1 {
857 2 m_cBuff[1]=GAUGE_TOTAL_FONT_S;
858 2 OSDSetRamAddr(MENU_RAM_START_ADDRESS+((int)y << 5)+GAUGE_STAT_S);
859 2 }
C51 COMPILER V7.07 OSDDRAWT100 10/27/2005 16:13:34 PAGE 15
860 1 else
861 1 {
862 2 m_cBuff[1]=GAUGE_TOTAL_FONT_L;
863 2 OSDSetRamAddr(MENU_RAM_START_ADDRESS+((int)y << 5)+x);
864 2 }
865 1 twdWr_Burst_A(OSD_RAM_DL); // Write OSD index
866 1 m_cBuff[3]=0;
867 1 while(m_cBuff[3]<m_cBuff[1])
868 1 {
869 2 if(m_cBuff[0]>0)
870 2 {
871 3 if(m_cBuff[3]==0)
872 3 twdWr_Burst_D(BAR_S_MAX);
873 3 else if(m_cBuff[3]==m_cBuff[1]-1)
874 3 twdWr_Burst_D(BAR_E_MAX);
875 3 else
876 3 twdWr_Burst_D(BAR_MAX);
877 3 m_cBuff[0]--;
878 3 }
879 2 else if(m_cBuff[3]==m_cBuff[1]-1 && !bLastBar)
880 2 twdWr_Burst_D(BAR_E_MIN);
881 2 else if(bLastBar)
882 2 {
883 3 twdWr_Burst_D(m_cBuff[2]);
884 3 bLastBar=0;
885 3 }
886 2 else
887 2 twdWr_Burst_D(BAR_MIN);
888 2
889 2 twdWr_Burst_D(cColor );
890 2 m_cBuff[3]++;
891 2 }
892 1
893 1 twdWr_Burst_P();
894 1 }
895
896 //Maximum three initiger, percentage
897 void OSDDrawNum(uWORD wVal, uCHAR cMax, uCHAR x, uCHAR y, uCHAR cColor, uCHAR cAttr)
898 {
899 1 //Init Part
900 1 uCHAR cTemp;
901 1 if(cMax!=0)
902 1 {
903 2 m_wBuff[0]=(unsigned long)wVal*100;
904 2 m_wBuff[0]=m_wBuff[0]/cMax;
905 2 }
906 1 else //Non percentage
907 1 {
908 2 m_wBuff[0]=wVal;
909 2 }
910 1
911 1 //OSDSetRamAddr(MENU_RAM_START_ADDRESS+((int)y << 5)+NUM_STAT);
912 1 //twdWr_Burst_A(OSD_RAM_DL); // Write OSD index
913 1
914 1 if(m_wBuff[0]<10)
915 1 m_cBuff[1]=1;
916 1 else if(m_wBuff[0]<100)
917 1 m_cBuff[1]=2;
918 1 else
919 1 m_cBuff[1]=3;
920 1
921 1 OSDSetRamAddr(MENU_RAM_START_ADDRESS+((int)y << 5)+x);
C51 COMPILER V7.07 OSDDRAWT100 10/27/2005 16:13:34 PAGE 16
922 1 twdWr_Burst_A(OSD_RAM_DL); // Write OSD index
923 1
924 1 if((cAttr&0xF0)==DRAW_BLANK)
925 1 {
926 2 switch(m_cBuff[1]){
927 3 case 1:
928 3 if((cAttr&0x0F)==3||(cAttr&0x0F)==2)
929 3 {
930 4 twdWr_Burst_D(BLANK);
931 4 twdWr_Burst_D(cColor);
932 4 }
933 3 case 2:
934 3 if((cAttr&0x0F)==3)
935 3 {
936 4 twdWr_Burst_D(BLANK);
937 4 twdWr_Burst_D(cColor);
938 4 }
939 3 }
940 2 }
941 1 else if((cAttr&0xF0)==DRAW_ZERO)
942 1 {
943 2 switch(m_cBuff[1]){
944 3 case 1:
945 3 if((cAttr&0x0F)==3||(cAttr&0x0F)==2)
946 3 {
947 4 twdWr_Burst_D('0');
948 4 twdWr_Burst_D(cColor);
949 4 }
950 3 case 2:
951 3 if((cAttr&0x0F)==3)
952 3 {
953 4 twdWr_Burst_D('0');
954 4 twdWr_Burst_D(cColor);
955 4 }
956 3 }
957 2 }
958 1
959 1
960 1 while(m_cBuff[1]>0)
961 1 {
962 2 if(m_cBuff[1]==3)
963 2 cTemp=m_wBuff[0]/100;
964 2 else if(m_cBuff[1]==2)
965 2 cTemp=(m_wBuff[0]%100)/10;
966 2 else if(m_cBuff[1]==1)
967 2 cTemp=m_wBuff[0]%10;
968 2
969 2 OSDNumConvert(cTemp);
970 2 twdWr_Burst_D(cColor );
971 2 m_cBuff[1]--;
972 2 }
973 1 twdWr_Burst_P();
974 1 }
975
976 #ifdef TV
void OSDDrawSoundSystem(void)
{
if(m_cSoundSystem==PAL_I)
//OSDShowLine(iPAL_I,20,3,COL_NORMAL,OSD_LENGTH);
OSDShowLine(iPAL_I,20,3,COL_TITLE,OSD_LENGTH);
else
C51 COMPILER V7.07 OSDDRAWT100 10/27/2005 16:13:34 PAGE 17
//OSDShowLine(iPAL_DK,20,3,COL_NORMAL,OSD_LENGTH);
OSDShowLine(iPAL_DK,20,3,COL_TITLE,OSD_LENGTH);
}
void OSDDrawTVFreq(uWORD wFreq)
{
// float fTemp;
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');
twdWr_Burst_D(COL_TITLE);
twdWr_Burst_D('A');
twdWr_Burst_D(COL_TITLE);
break;
}
}
void OSDDrawBand(uWORD wFreq)
{
uCHAR k;
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -