⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 radio_new_ui.c

📁 Sunplus 8202S source code.
💻 C
📖 第 1 页 / 共 4 页
字号:
#ifdef SUPPORT_Radio_NEW_UI     //wuzhj add for new ui 2004/12/10
#ifdef SUPPORT_RDS_FUNCTION
void disp_rds_func(void)
{
	
    	       	psprintf(RegionValStr[REGION1],"PS :");
		 		osd_DrawString(1, SETUP_MENU_YSTART, RegionValStr[REGION1], SFONTCOLOR, SBGCOLOR);
        
    			psprintf(RegionValStr[REGION1],"PTY :");
		 		osd_DrawString(1, SETUP_MENU_YSTART+1, RegionValStr[REGION1], SFONTCOLOR, SBGCOLOR);
	    
    	        psprintf(RegionValStr[REGION1],"RT :");
		 		osd_DrawString(1, SETUP_MENU_YSTART+2, RegionValStr[REGION1], SFONTCOLOR, SBGCOLOR);
       
        
    	 		psprintf(RegionValStr[REGION1],"CT :");
		 		osd_DrawString(1, SETUP_MENU_YSTART+3, RegionValStr[REGION1], SFONTCOLOR, SBGCOLOR);

    	       	psprintf(RegionValStr[REGION1],"PTYN :");
				osd_DrawString(1, SETUP_MENU_YSTART+4, RegionValStr[REGION1], SFONTCOLOR, SBGCOLOR);
	    
}

void disp_rds(BYTE enter_flag)
{
    enter_flag = enter_flag;

	char rds_disp_buf[65];
	
            if(RDS_PS_RDY())
            {
    	       	psprintf(RegionValStr[REGION1],"PS : %s",rds_get_ps());
		 		osd_DrawString(1, SETUP_MENU_YSTART, RegionValStr[REGION1], SFONTCOLOR, SBGCOLOR);
		 		RDS_PS_CLR_RDY();
    	    }
  
            if(RDS_PTY_RDY())
            {
    			psprintf(RegionValStr[REGION1],"PTY : %s",rds_get_pty());
		 		osd_DrawString(1, SETUP_MENU_YSTART+1, RegionValStr[REGION1], SFONTCOLOR, SBGCOLOR);
		 		RDS_PTY_CLR_RDY();
            }
	  
             if(RDS_RTA_RDY()||RDS_RTB_RDY())
           	{
    	      	memcpy(rds_disp_buf,rds_get_rt(RDS_RT_TYPE()),64);
    	        capitalize(rds_disp_buf, 0, 64);
		 		str_filter(rds_disp_buf, 64);
    	        psprintf(RegionValStr[REGION1],"RT : %s",rds_disp_buf);
                osd_DrawString(1, SETUP_MENU_YSTART+2, RegionValStr[REGION1], SFONTCOLOR, SBGCOLOR);
		 		RDS_RTA_CLR_RDY();
		 		RDS_RTB_CLR_RDY();
            }
     
            if(RDS_CT_RDY())
           	{
    	 		psprintf(RegionValStr[REGION1],"%s",rds_get_ct());
		 		osd_DrawString(1, SETUP_MENU_YSTART+3, RegionValStr[REGION1], SFONTCOLOR, SBGCOLOR);
		 		RDS_CT_CLR_RDY();
            }

    	     if(RDS_PTYN_RDY())
           	{
    	       	psprintf(RegionValStr[REGION1],"PTYN:%s",rds_get_ptyn());
				osd_DrawString(1, SETUP_MENU_YSTART+4, RegionValStr[REGION1], SFONTCOLOR, SBGCOLOR);
				RDS_PTYN_CLR_RDY();
            }
	
}

#endif /*rds func*/
#else

#ifdef SUPPORT_RDS_FUNCTION
disp_rds_func(BYTE enter_flag)
{
	printf("flag %d\n",enter_flag);
	    if(enter_flag == 0)
	    {
    	       	psprintf(RegionValStr[REGION1],"PS :");
		 		PrintOsdMsg(0, REGION1, 1, 1);
        }
	   
	    else if(enter_flag == 1)
	    {
    			psprintf(RegionValStr[REGION1],"PTY :");
		 		PrintOsdMsg(0, REGION1, 1, 1);
	    }
	    
	    else if(enter_flag == 2)
		{
    	        psprintf(RegionValStr[REGION1],"RT :");
		 		PrintOsdMsg(0, REGION1, 1, 1);
        }
 	    else if(enter_flag == 3)
        {
    	 		psprintf(RegionValStr[REGION1],"CT :");
		 		PrintOsdMsg(0, REGION1, 1, 1);
	    }

	    else if(enter_flag == 4)
    	{
    	       	psprintf(RegionValStr[REGION1],"PTYN :");
				PrintOsdMsg(0, REGION1, 1, 1);
	    }

}

void disp_rds(BYTE enter_flag)
{


	char rds_disp_buf[65];
	
	    if(enter_flag == 0)
	    {
            if(RDS_PS_RDY())
            {
    	       	psprintf(RegionValStr[REGION1],"PS : %s",rds_get_ps());
		 		PrintOsdMsg(0, REGION1, 1, 1);
		 		RDS_PS_CLR_RDY();
    	    }
        }
	   
	    else if(enter_flag == 1)
	    {
            if(RDS_PTY_RDY())
            {
    			psprintf(RegionValStr[REGION1],"PTY : %s",rds_get_pty());
		 		PrintOsdMsg(0, REGION1, 1, 1);
		 		RDS_PTY_CLR_RDY();
            }
	    }
	    
	    else if(enter_flag == 2)
		{
            if(RDS_RTA_RDY()||RDS_RTB_RDY())
           	{
    	      	memcpy(rds_disp_buf,rds_get_rt(RDS_RT_TYPE()),64);
    	        capitalize(rds_disp_buf, 0, 64);
		 		str_filter(rds_disp_buf, 64);
    	        psprintf(RegionValStr[REGION1],"RT : %s",rds_disp_buf);
		 		PrintOsdMsg(0, REGION1, 1, 1);
		 		RDS_RTA_CLR_RDY();
		 		RDS_RTB_CLR_RDY();
            }
        }
 	    else if(enter_flag == 3)
        {
            if(RDS_CT_RDY())
           	{
    	 		psprintf(RegionValStr[REGION1],"%s",rds_get_ct());
		 		PrintOsdMsg(0, REGION1, 1, 1);
		 		RDS_CT_CLR_RDY();
            }
	    }

	    else if(enter_flag == 4)
    	{
    	    if(RDS_PTYN_RDY())
           	{
    	       	psprintf(RegionValStr[REGION1],"PTYN:%s",rds_get_ptyn());
				PrintOsdMsg(0, REGION1, 1, 1);
				RDS_PTYN_CLR_RDY();
            }
	    }
    	
}




#endif /*rds func*/
#endif

#ifdef SUPPORT_Radio_NEW_UI     //wuzhj add for new ui 2004/12/10
void ShowRadioMsg(void)
{
    BYTE    buf[40];
    

    //Right leve1   wuzhj 2004/11/27
    
     
  int i;
for (i=0;i<10;i++)
{
    if(tuner.bandswitch) //show am all frqu
     {
     psprintf(buf,"CH:%d %03d KHZ",(1+i),(tuner.amfreq[i]>>4)*3-450);
     osd_DrawString(1, SETUP_MENU_YSTART+i, buf, SFONTCOLOR, SBGCOLOR);

     psprintf(buf,"CH:%d %03d KHZ",(11+i),(tuner.amfreq[10+i]>>4)*3-450);
     osd_DrawString(SETUP_SUB_XSTART, SETUP_MENU_YSTART+i, buf, SFONTCOLOR, SBGCOLOR);
    }
    else    //show fm all frqu
    {
    // psprintf(linebuf,"               ");  
    //osd_DrawString(1, SETUP_MENU_YSTART, buf, SFONTCOLOR, 12);
    
     int xi = tuner.fmfreq[10+i]*5-1070;
	psprintf(buf,"CH:%d %d.%02d MHZ",(11+i),xi/100,xi%100);
    osd_DrawString(SETUP_SUB_XSTART, SETUP_MENU_YSTART+i, buf, SFONTCOLOR, SBGCOLOR);

    int yi = tuner.fmfreq[i]*5-1070;
	psprintf(buf,"CH:%d %d.%02d MHZ",(1+i),yi/100,yi%100);
    osd_DrawString(1, SETUP_MENU_YSTART+i, buf, SFONTCOLOR, SBGCOLOR);

    }
}       
   
// show fm and am frqu
    osd_DrawString(1, SETUP_MENU_YSTART-2, RegionValStr[2], SFONTCOLOR, SBGCOLOR);
}

void ShowRadioTitle (void)
{
    BYTE    buf[40];
//show st and mono  
    if(tuner.st_mono == 1)
	{
		psprintf(RegionValStr[1]," MONO ");
	}
	else
	{
		psprintf(RegionValStr[1],"  ST  ");
	}	
	osd_DrawString(SETUP_SUB_XSTART+8, SETUP_MENU_YSTART-2, RegionValStr[1], SFONTCOLOR, SBGCOLOR);
//show prologic
    switch(prologic_val)
    {
    case 0:
        psprintf(buf," PROLOGIC:[MOVIE MODE]");      
        break;
    case 1:
        psprintf(buf," PROLOGIC:[MUSIC MODE]");
        break;
    case 2:
        psprintf(buf," PROLOGIC:[ OFF ] ");
        break;
    }       
     osd_draw_rect(14, 35, 360, 26, 11);
     osd_DrawString(1, SETUP_MENU_YSTART-1, buf, SFONTCOLOR, SBGCOLOR);
//show main vol
    //BYTE volum_list[0];
    Radio_main_vol();
   // psprintf(RegionValStr[REGION1], " MAIN %d",volum_list[0]);
    osd_draw_rect(416, 35, 132, 26, 11);
    osd_DrawString(SETUP_SUB_XSTART+8, SETUP_MENU_YSTART-1, RegionValStr[REGION1], SFONTCOLOR, SBGCOLOR);

}
extern BYTE header_id;
void osd_init_Radio(void)
{
	UINT16 screen_h,screen_w;
    __osd_init();
    #define RADIO_REGION_WIDTH 8*35
    #define RADIO_REGION_HEIGHT 12*32
    #define SETUP_BGCOLOR 9
    header_id = SETUP_HEADER;
    region[0].osd_w = RADIO_REGION_WIDTH;    //35 English Characters
    region[0].osd_h = RADIO_REGION_HEIGHT;   //12 lines
    if(TV_FORMAT_PAL==tv_format)
    	{
		screen_h=288;
		screen_w=352;
    	//screen_h=288;
		//screen_w=352;
    	}
	else
		{
		screen_h=240;
		screen_w=360;
		}
    osd_create_region1(&region[0],(screen_w-RADIO_REGION_WIDTH)/2,(screen_h-RADIO_REGION_HEIGHT/2)/2, NULL, OSD_FORMAT_16COLOR, OSD_INTERLACED);
    //osd_create_region1(&region[SETUP_REGION], SETUP_REGION_X,  SETUP_REGION_Y, NULL, OSD_FORMAT_16COLOR, OSD_INTERLACED);
	osd_draw_rect(0,0,RADIO_REGION_WIDTH<<1,RADIO_REGION_HEIGHT,SETUP_BGCOLOR);
    osd_draw_rect(0, 0, RADIO_REGION_WIDTH<<1, 32, 4);//ONE
    osd_draw_rect(0, 32, RADIO_REGION_WIDTH<<1, 32, 6);//TOW
   // osd_draw_rect(12, 68, 250, 26, 11);
    //osd_draw_rect(282, 68, 250, 26, 11);

    int i;
    for (i=0;i<10;i++)
        {
            osd_draw_rect(14, 68+32*i, 258, 26, 11);
            osd_draw_rect(288, 68+32*i, 258, 26, 11);
        }
    osd_draw_rect(278, 64, 4, 320, 12);//red vertical
   //osd_draw_rect(0, RADIO_REGION_HEIGHT, RADIO_REGION_WIDTH<<1,2, 12);
   // osd_draw_rect(560, SETUP_MENU_YSTART, 2, 560, 12);
		osd_active_regions = 1;
		ENABLE_OSD();
	//for(screen_w=0;screen_w<16;screen_w++)
	 //   {
	//    psprintf(linebuf,"%02d",screen_w);
	//    osd_DrawString(screen_w*2+2, 1, linebuf,16-screen_w,screen_w);
	//    }
	}

void osd_init_Radio_fm(void)
{
    //draw yellow icon
    osd_draw_rect(0,64,8*35<<1,12*32-64,SETUP_BGCOLOR);
    int i;
    for (i=0;i<10;i++)
        {
            osd_draw_rect(14, 68+32*i, 258, 26, 11);
            osd_draw_rect(288, 68+32*i, 258, 26, 11);
        }
    //draw fm and am blue icon
    osd_draw_rect(14, 3, 324, 26, 11);
    //draw red vertical
    osd_draw_rect(278, 64, 4, 320, 12);
}
void osd_init_Radio_rds(void)
{
	osd_draw_rect(278, 64, 4, 320, SETUP_BGCOLOR);
    int i;
    for (i=0;i<9;i++)
        {
            osd_draw_rect(12, 68+32*i, 536, 26, 11);
           // osd_draw_rect(298, 68+32*i, 250, 26, 11);
        }
   
    osd_draw_rect(0, 32*11, (8*35)<<1, 32, 4);    //low 

	
	}

void DrawRadiodown(BYTE radio_down_flag,BYTE radio_right_flag,BYTE am_radio_right_flag)
{
    BYTE    buf[40];

if(tuner.bandswitch) //am ui
{
    if(am_radio_right_flag==0)//left am ui
    {
        //draw vertical left blue icon
        if(radio_down_flag==0)
        {
            osd_draw_rect(14, 68+32*9, 258, 26, SBGCOLOR);
            psprintf(buf,"CH:%d %03d KHZ",10,(tuner.amfreq[9]>>4)*3-450);
            osd_DrawString(1, SETUP_MENU_YSTART+9, buf, SFONTCOLOR, SBGCOLOR);
        }
        else
        {
            osd_draw_rect(14, 68+32*(radio_down_flag-1), 258, 26, SBGCOLOR);
            psprintf(buf,"CH:%d %03d KHZ",(radio_down_flag),(tuner.amfreq[(radio_down_flag-1)]>>4)*3-450);
            osd_DrawString(1, SETUP_MENU_YSTART+(radio_down_flag-1), buf, SFONTCOLOR, SBGCOLOR);
            
        }
        //draw level right blue icon    
        osd_draw_rect(12+276, 68+32*(radio_down_flag), 258, 26, SBGCOLOR);
        psprintf(buf,"CH:%d %03d KHZ",(1+(radio_down_flag)+10),(tuner.amfreq[(radio_down_flag)+10]>>4)*3-450);
        
        osd_DrawString(SETUP_SUB_XSTART, SETUP_MENU_YSTART+(radio_down_flag), buf, SFONTCOLOR, SBGCOLOR);
        //draw leve left red icon
        osd_draw_rect(14, 68+32*(radio_down_flag), 258, 26, 12);
        psprintf(buf,"CH:%d %03d KHZ",(1+(radio_down_flag)),(tuner.amfreq[radio_down_flag]>>4)*3-450);
        
        osd_DrawString(1, SETUP_MENU_YSTART+(radio_down_flag), buf, SFONTCOLOR, 12);
       
    }
    else //right am ui
    {
        //draw vertical right blue icon
        if(radio_down_flag==0)
        {
            osd_draw_rect(12+276, 68+32*9, 258, 26, SBGCOLOR);
            psprintf(buf,"CH:%d %03d KHZ",(10+10),(tuner.amfreq[9+10]>>4)*3-450);
            
            osd_DrawString(SETUP_SUB_XSTART, SETUP_MENU_YSTART+9, buf, SFONTCOLOR, SBGCOLOR);
        }
        else
        {
            osd_draw_rect(12+276, 68+32*(radio_down_flag-1), 258, 26, SBGCOLOR);
            psprintf(buf,"CH:%d %03d KHZ",(radio_down_flag+10),(tuner.amfreq[(radio_down_flag-1)+10]>>4)*3-450);
            
            osd_DrawString(SETUP_SUB_XSTART, SETUP_MENU_YSTART+(radio_down_flag-1), buf, SFONTCOLOR, SBGCOLOR);
            
        }
     //draw level left blue icon   
     osd_draw_rect(14, 68+32*(radio_down_flag), 258, 26, SBGCOLOR);
     psprintf(buf,"CH:%d %03d KHZ",(1+(radio_down_flag)),(tuner.amfreq[(radio_down_flag)]>>4)*3-450);       
     
     osd_DrawString(1, SETUP_MENU_YSTART+(radio_down_flag), buf, SFONTCOLOR, SBGCOLOR);
     //draw level right red icon
     osd_draw_rect(12+276, 68+32*(radio_down_flag), 258, 26, 12);
     psprintf(buf,"CH:%d %03d KHZ",(1+(radio_down_flag)+10),(tuner.amfreq[(radio_down_flag)+10]>>4)*3-450);        
     
     osd_DrawString(SETUP_SUB_XSTART, SETUP_MENU_YSTART+(radio_down_flag), buf, SFONTCOLOR, 12);
       
    }
}
else //fm ui
{
        
    if(radio_right_flag==0)//left fm ui
    {
        //draw left vertical blue icon
        if(radio_down_flag==0)
        {
            osd_draw_rect(14, 68+32*9, 258, 26, SBGCOLOR);
            int yi = tuner.fmfreq[9]*5-1070;
	        psprintf(buf,"CH:%d %d.%02d MHZ",10,yi/100,yi%100);
            osd_DrawString(1, SETUP_MENU_YSTART+9, buf, SFONTCOLOR, SBGCOLOR);
        }
        else
        {
            osd_draw_rect(14, 68+32*(radio_down_flag-1), 258, 26, SBGCOLOR);
            int yi = tuner.fmfreq[(radio_down_flag-1)]*5-1070;
	        psprintf(buf,"CH:%d %d.%02d MHZ",(radio_down_flag),yi/100,yi%100);
            osd_DrawString(1, SETUP_MENU_YSTART+(radio_down_flag-1), buf, SFONTCOLOR, SBGCOLOR);
            
        }
        //draw level right blue icon    
        osd_draw_rect(12+276, 68+32*(radio_down_flag), 258, 26, SBGCOLOR);
        int xi = tuner.fmfreq[(radio_down_flag)+10]*5-1070;
	    psprintf(buf,"CH:%d %d.%02d MHZ",(1+(radio_down_flag)+10),xi/100,xi%100);
        osd_DrawString(SETUP_SUB_XSTART, SETUP_MENU_YSTART+(radio_down_flag), buf, SFONTCOLOR, SBGCOLOR);
        //draw level left red icon
        osd_draw_rect(14, 68+32*(radio_down_flag), 258, 26, 12);
        int zi = tuner.fmfreq[(radio_down_flag)]*5-1070;
	    psprintf(buf,"CH:%d %d.%02d MHZ",(1+(radio_down_flag)),zi/100,zi%100);
        osd_DrawString(1, SETUP_MENU_YSTART+(radio_down_flag), buf, SFONTCOLOR, 12);
       
    }
    else //right fm ui
    {
        //draw vertical right blue icon
        if(radio_down_flag==0)
        {
            osd_draw_rect(12+276, 68+32*9, 258, 26, SBGCOLOR);
            int yi = tuner.fmfreq[9+10]*5-1070;
	        psprintf(buf,"CH:%d %d.%02d MHZ",10+10,yi/100,yi%100);
            osd_DrawString(SETUP_SUB_XSTART, SETUP_MENU_YSTART+9, buf, SFONTCOLOR, SBGCOLOR);
        }
        else
        {
            osd_draw_rect(12+276, 68+32*(radio_down_flag-1), 258, 26, SBGCOLOR);
            int yi = tuner.fmfreq[(radio_down_flag-1)+10]*5-1070;
	        psprintf(buf,"CH:%d %d.%02d MHZ",(radio_down_flag+10),yi/100,yi%100);
            osd_DrawString(SETUP_SUB_XSTART, SETUP_MENU_YSTART+(radio_down_flag-1), buf, SFONTCOLOR, SBGCOLOR);
            
        }
     //draw level left blue icon   
     osd_draw_rect(14, 68+32*(radio_down_flag), 258, 26, SBGCOLOR);
     int xi = tuner.fmfreq[(radio_down_flag)]*5-1070;
	 psprintf(buf,"CH:%d %d.%02d MHZ",(1+(radio_down_flag)),xi/100,xi%100);
     osd_DrawString(1, SETUP_MENU_YSTART+(radio_down_flag), buf, SFONTCOLOR, SBGCOLOR);
     //draw level right red icon
     osd_draw_rect(12+276, 68+32*(radio_down_flag), 258, 26, 12);
     int zi = tuner.fmfreq[(radio_down_flag)+10]*5-1070;
	 psprintf(buf,"CH:%d %d.%02d MHZ",(1+(radio_down_flag)+10),zi/100,zi%100);
     osd_DrawString(SETUP_SUB_XSTART, SETUP_MENU_YSTART+(radio_down_flag), buf, SFONTCOLOR, 12);
       
    }
}   
   //show fm and am frqu 
    osd_DrawString(1, SETUP_MENU_YSTART-2, RegionValStr[2], SFONTCOLOR, SBGCOLOR);    

}

void DrawRadioup(BYTE radio_down_flag,BYTE radio_right_flag,BYTE am_radio_right_flag)
{
    BYTE    buf[40];

if(tuner.bandswitch) //am ui
{
    if(am_radio_right_flag==0)//left am ui
    {

        //draw level left red icon
        osd_draw_rect(14, 68+32*(radio_down_flag), 258, 26, 12);
        psprintf(buf,"CH:%d %03d KHZ",(1+(radio_down_flag)),(tuner.amfreq[radio_down_flag]>>4)*3-450);
        
        osd_DrawString(1, SETUP_MENU_YSTART+(radio_down_flag), buf, SFONTCOLOR, 12);
       
        //draw vertical left blue icon
        if(radio_down_flag==9)
        {
            osd_draw_rect(14, 68, 258, 26, SBGCOLOR);
            psprintf(buf,"CH:%d %03d KHZ",1,(tuner.amfreq[0]>>4)*3-450);
            osd_DrawString(1, SETUP_MENU_YSTART, buf, SFONTCOLOR, SBGCOLOR);
        }
        else
        {
            osd_draw_rect(14, 68+32*(radio_down_flag+1), 258, 26, SBGCOLOR);
            psprintf(buf,"CH:%d %03d KHZ",(radio_down_flag+2),(tuner.amfreq[(radio_down_flag+1)]>>4)*3-450);
            osd_DrawString(1, SETUP_MENU_YSTART+(radio_down_flag+1), buf, SFONTCOLOR, SBGCOLOR);
            
        }
        //draw level right blue icon    
        osd_draw_rect(12+276, 68+32*(radio_down_flag), 258, 26, SBGCOLOR);
        psprintf(buf,"CH:%d %03d KHZ",(1+(radio_down_flag)+10),(tuner.amfreq[(radio_down_flag)+10]>>4)*3-450);
        
        osd_DrawString(SETUP_SUB_XSTART, SETUP_MENU_YSTART+(radio_down_flag), buf, SFONTCOLOR, SBGCOLOR);
        
    }
    else //right am ui
    {
        //draw level right red icon
        osd_draw_rect(12+276, 68+32*(radio_down_flag), 258, 26, 12);
        psprintf(buf,"CH:%d %03d KHZ",(1+(radio_down_flag)+10),(tuner.amfreq[(radio_down_flag)+10]>>4)*3-450);        
     
        osd_DrawString(SETUP_SUB_XSTART, SETUP_MENU_YSTART+(radio_down_flag), buf, SFONTCOLOR, 12);

        //draw vertical right blue icon
        if(radio_down_flag==9)
        {
            osd_draw_rect(12+276, 68, 258, 26, SBGCOLOR);
            psprintf(buf,"CH:%d %03d KHZ",(1+10),(tuner.amfreq[10]>>4)*3-450);
            
            osd_DrawString(SETUP_SUB_XSTART, SETUP_MENU_YSTART, buf, SFONTCOLOR, SBGCOLOR);
        }
        else
        {
            osd_draw_rect(12+276, 68+32*(radio_down_flag+1), 258, 26, SBGCOLOR);
            psprintf(buf,"CH:%d %03d KHZ",(radio_down_flag+2+10),(tuner.amfreq[(radio_down_flag+1)+10]>>4)*3-450);
            
            osd_DrawString(SETUP_SUB_XSTART, SETUP_MENU_YSTART+(radio_down_flag+1), buf, SFONTCOLOR, SBGCOLOR);
            
        }
     //draw level left blue icon   
     osd_draw_rect(14, 68+32*(radio_down_flag), 258, 26, SBGCOLOR);
     psprintf(buf,"CH:%d %03d KHZ",(1+(radio_down_flag)),(tuner.amfreq[(radio_down_flag)]>>4)*3-450);       
     
     osd_DrawString(1, SETUP_MENU_YSTART+(radio_down_flag), buf, SFONTCOLOR, SBGCOLOR);
     
       
    }
}
else    //fm ui
{
        
    if(radio_right_flag==0)//left fm ui
    {
        //draw level left red icon
        osd_draw_rect(14, 68+32*(radio_down_flag), 258, 26, 12);
        int z = tuner.fmfreq[(radio_down_flag)]*5-1070;
	    psprintf(buf,"CH:%d %d.%02d MHZ",(1+(radio_down_flag)),z/100,z%100);
        osd_DrawString(1, SETUP_MENU_YSTART+(radio_down_flag), buf, SFONTCOLOR, 12);
        //draw vertical left blue icon
        if(radio_down_flag==9)
        {
            osd_draw_rect(14, 68, 258, 26, SBGCOLOR);
            int y = tuner.fmfreq[0]*5-1070;
	        psprintf(buf,"CH:%d %d.%02d MHZ",1,y/100,y%100);
            osd_DrawString(1, SETUP_MENU_YSTART, buf, SFONTCOLOR, SBGCOLOR);
        }
        else
        {
            osd_draw_rect(14, 68+32*(radio_down_flag+1), 258, 26, SBGCOLOR);
            int y = tuner.fmfreq[(radio_down_flag+1)]*5-1070;
	        psprintf(buf,"CH:%d %d.%02d MHZ",(radio_down_flag+2),y/100,y%100);
            osd_DrawString(1, SETUP_MENU_YSTART+(radio_down_flag+1), buf, SFONTCOLOR, SBGCOLOR);
            
        }
        //draw level right blue icon    
        osd_draw_rect(12+276, 68+32*(radio_down_flag), 258, 26, SBGCOLOR);
        int x = tuner.fmfreq[(radio_down_flag)+10]*5-1070;
	    psprintf(buf,"CH:%d %d.%02d MHZ",(1+(radio_down_flag)+10),x/100,x%100);
        osd_DrawString(SETUP_SUB_XSTART, SETUP_MENU_YSTART+(radio_down_flag), buf, SFONTCOLOR, SBGCOLOR);
        
       
    }
    else //right fm ui
    {
        //draw level right red icon
     osd_draw_rect(12+276, 68+32*(radio_down_flag), 258, 26, 12);
     int z = tuner.fmfreq[(radio_down_flag)+10]*5-1070;
	 psprintf(buf,"CH:%d %d.%02d MHZ",(1+(radio_down_flag)+10),z/100,z%100);
     osd_DrawString(SETUP_SUB_XSTART, SETUP_MENU_YSTART+(radio_down_flag), buf, SFONTCOLOR, 12);

        //draw vertical right blue icon
        if(radio_down_flag==9)
        {
            osd_draw_rect(12+276, 68, 258, 26, SBGCOLOR);
            int y = tuner.fmfreq[10]*5-1070;
	        psprintf(buf,"CH:%d %d.%02d MHZ",10+1,y/100,y%100);
            osd_DrawString(SETUP_SUB_XSTART, SETUP_MENU_YSTART, buf, SFONTCOLOR, SBGCOLOR);
        }
        else
        {
            osd_draw_rect(12+276, 68+32*(radio_down_flag+1), 258, 26, SBGCOLOR);
            int y = tuner.fmfreq[(radio_down_flag+1)+10]*5-1070;
	        psprintf(buf,"CH:%d %d.%02d MHZ",(2+radio_down_flag+10),y/100,y%100);
            osd_DrawString(SETUP_SUB_XSTART, SETUP_MENU_YSTART+(radio_down_flag+1), buf, SFONTCOLOR, SBGCOLOR);
            
        }
     //draw level left blue icon   
     osd_draw_rect(14, 68+32*(radio_down_flag), 258, 26, SBGCOLOR);
     int x = tuner.fmfreq[(radio_down_flag)]*5-1070;
	 psprintf(buf,"CH:%d %d.%02d MHZ",(1+(radio_down_flag)),x/100,x%100);
     osd_DrawString(1, SETUP_MENU_YSTART+(radio_down_flag), buf, SFONTCOLOR, SBGCOLOR);
     
       
    }
}   
   //show fm and am frqu 
    osd_DrawString(1, SETUP_MENU_YSTART-2, RegionValStr[2], SFONTCOLOR, SBGCOLOR);    

}

#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -