📄 radio_new_ui.c
字号:
user_mute=!user_mute;
tuner_mute(user_mute);
if(user_mute)
{
id=STR_OS_MUTE;
PrintOsdMsg(id,REGION1,0,0);
}
else
OSD_OnOffRegion(OSD_OFF,1);//xyy 2003-10-13 17:15
break;
}
case IRC_GOTO:
tuner_oper_mode = AUTO_SEARCH;
timeout_vfd = 0;
if(tuner.bandswitch == 1)
{
auto_search_all_am();
tuner.am_ch = 0;
set_station(tuner.am_ch);
}
else
{
auto_search_all_fm();
tuner.fm_ch = 0;
set_station(tuner.fm_ch);
}
save_tuner_E2PROM();
tuner_oper_mode = NORMAL_TUNE;
disfreq();
break;
case IRC_SETUP:
search_station = 1;
tuner_oper_mode = RECALL_OR_STORE;
timeout_vfd = 6000;
break;
case IRC_AUD_LANGUAGE:
if(!tuner.bandswitch)
{
tuner_st_mono();
timeout_vfd = 4000;
}
break;
case IRC_FORWARD:/* auto search up */
tuner_oper_mode = NORMAL_TUNE;
tuner.Istuning[tuner.bandswitch]=1;
timeout_vfd = 0;
// to avoid the noise when enter auto search mode
tuner_mute_flag = 0;
search_dir=1;
break;
case IRC_BACKWARD: /* auto search down */
// to avoid the noise when enter auto search mode
tuner_oper_mode = NORMAL_TUNE;
timeout_vfd = 0;
tuner_mute_flag = 0;
search_dir=2;
break;
case IRC_LEFT:
search_dir = 0;
search(SEARCHDEC);
break;
case IRC_RIGHT:
search_dir = 0;
search(SEARCHADD);
break;
case IRC_PREV:
//printf("left\n");
if(tuner.bandswitch)//am
{
if(tuner.am_ch>1)
tuner.am_ch--;
else
tuner.am_ch = 1;
set_station(tuner.am_ch);
}
else //fm
{
if(tuner.fm_ch>=1)
tuner.fm_ch--;
else
// tuner.fm_ch = 1;
tuner.fm_ch = 0;
set_station(tuner.fm_ch);
}
write2mem =1;
break;
case IRC_NEXT:
if(tuner.bandswitch) //am
{
if(tuner.am_ch<MAX_MEM_BAND)
tuner.am_ch++;
else
tuner.am_ch = MAX_MEM_BAND;
set_station(tuner.am_ch);
}
else //fm
{
if(tuner.fm_ch<MAX_MEM_BAND)
tuner.fm_ch++;
else
tuner.fm_ch = MAX_MEM_BAND;
set_station(tuner.fm_ch);
}
write2mem =1;
break;
case IRC_RCVR_BAND: /* serach- */
{
search_dir=0;
tuner.bandswitch=(!tuner.bandswitch);
//printf("band\n");
set_band(tuner.bandswitch);
write2mem=1;
break;
}
default:
break;
}
}
#elif defined(SUPPORT_Radio_NEW_UI) //wuzhj add for new ui 2004/12/10
void tuner_key(BYTE key) //wuzhj 2004/12/10
{
static BYTE enter_flag=0;
//return;
switch(key)
{
case IRC_MUTE:
{
user_mute=!user_mute;
tuner_mute(user_mute);
if(user_mute)
{
psprintf(RegionValStr[1]," MUTE ");
osd_DrawString(SETUP_SUB_XSTART+8, SETUP_MENU_YSTART-2, RegionValStr[1], SFONTCOLOR, SBGCOLOR);
}
else
{
osd_draw_rect(416, 4, 100, 26, 4);
if(tuner.st_mono == 1)
{
psprintf(RegionValStr[1]," ST ");
}
else
{
psprintf(RegionValStr[1]," MONO ");
}
osd_DrawString(SETUP_SUB_XSTART+8, SETUP_MENU_YSTART-2, RegionValStr[1], SFONTCOLOR, SBGCOLOR);
}
break;
}
case IRC_SELECT:
if(rds_radio_flag==0)
{
if(tuner.bandswitch) //am
{
if(am_radio_right_flag==0)
{
tuner.am_ch=radio_down_flag;
set_station(tuner.am_ch);
write2mem =1;
disfreq();
}
else
{
tuner.am_ch=radio_down_flag+10;
set_station(tuner.am_ch);
write2mem =1;
disfreq();
}
}
else //fm
{
if(radio_right_flag==0)
{
tuner.fm_ch=radio_down_flag;
set_station(tuner.fm_ch);
write2mem =1;
disfreq();
}
else
{
tuner.fm_ch=radio_down_flag+10;
set_station(tuner.fm_ch);
write2mem =1;
disfreq();
}
}
}
break;
case IRC_UP:
if(rds_radio_flag==0)
{
if(radio_down_flag <= 0)
{
radio_down_flag = 9;
}
else
{
radio_down_flag--;
}
//osd_init_Radio();
DrawRadioup(radio_down_flag,radio_right_flag,am_radio_right_flag);
}
break;
case IRC_DOWN:
if(rds_radio_flag==0)
{
if(radio_down_flag >= 9)
{
radio_down_flag = 0;
}
else
{
radio_down_flag++;
}
//osd_init_Radio();
DrawRadiodown(radio_down_flag,radio_right_flag,am_radio_right_flag);
}
break;
case IRC_LEFT:
if(rds_radio_flag==0)
{
if(tuner.bandswitch)
{
am_radio_right_flag=0;
DrawRadiodown(radio_down_flag,radio_right_flag,am_radio_right_flag);
}
else
{
radio_right_flag=0;
DrawRadiodown(radio_down_flag,radio_right_flag,am_radio_right_flag);
}
}
break;
case IRC_RIGHT:
if(rds_radio_flag==0)
{
if(tuner.bandswitch)
{
am_radio_right_flag=1;
DrawRadiodown(radio_down_flag,radio_right_flag,am_radio_right_flag);
}
else
{
radio_right_flag=1;
DrawRadiodown(radio_down_flag,radio_right_flag,am_radio_right_flag);
}
}
break;
case IRC_FORMAT:
if(tuner.st_mono == 1)
{
tuner.st_mono = 0;
}
else
{
tuner.st_mono = 1;
}
tuner_st_mono();
break;
case IRC_ZOOM: /* serach- */
{
search_dir=0;
tuner.bandswitch=(!tuner.bandswitch);
//printf("band\n");
set_band(tuner.bandswitch);
write2mem=1;
osd_init_Radio_fm();
disfreq();
break;
}
case IRC_PROGRAM:
#ifndef NEW_AUTO_SEARCH_ALL
auto_search_all();
#else
// osd_init_Radio_fm();
auto_search_all_am();
auto_search_all_fm();
//write2mem=1;
tuner.fm_ch = 0;
set_station(tuner.fm_ch); //goto the 1st station
#endif //NEW_AUTO_SEARCH_ALL
break;
#ifdef SUPPORT_APOGEE_AMP
case IRC_VOLUME_UP:
Radio_vol_up();
//subvol_time_out = 10;
osd_draw_rect(416, 35, 132, 26, 11);
osd_DrawString(SETUP_SUB_XSTART+8, SETUP_MENU_YSTART-1, RegionValStr[REGION1], SFONTCOLOR, SBGCOLOR);
// ircmd_volume_up();
// set_volume(1);
break ;
case IRC_VOLUME_DN:
Radio_vol_down();
osd_draw_rect(416, 35, 132, 26, 11);
//subvol_time_out = 10;
osd_DrawString(SETUP_SUB_XSTART+8, SETUP_MENU_YSTART-1, RegionValStr[REGION1], SFONTCOLOR, SBGCOLOR);
// ircmd_volume_down();
// set_volume(0);
break ;
#endif
case IRC_PROLOGIC:
{
BYTE buf[40];
AudioSetVolume(0); // cmhuang, 2003/8/28 11:58PM
prologic_val++;
if(prologic_val>2)
prologic_val=0;
switch(prologic_val)
{
case 0:
//id=STR_OS_PL_MOVIE;
psprintf(buf," PROLOGIC:[MOVIE MODE]");
osd_draw_rect(14, 35, 360, 26, 11);
osd_DrawString(1, SETUP_MENU_YSTART-1, buf, SFONTCOLOR, SBGCOLOR);
break;
case 1:
//id=STR_OS_PL_MUSIC;
psprintf(buf," PROLOGIC:[MUSIC MODE]");
osd_draw_rect(14, 35, 360, 26, 11);
osd_DrawString(1, SETUP_MENU_YSTART-1, buf, SFONTCOLOR, SBGCOLOR);
break;
case 2:
//id=STR_OS_OFF;
psprintf(buf," PROLOGIC:[ OFF ] ");
osd_draw_rect(14, 35, 360, 26, 11);
osd_DrawString(1, SETUP_MENU_YSTART-1, buf, SFONTCOLOR, SBGCOLOR);
break;
}
//PrintOsdMsg(STR_OS_PROLOGIC|(id<<OSDSTR_ID_TOTL_BIT),REGION1,1,4);
set_prologic_val(prologic_val);
AudioDemute(); // cmhuang, 2003/8/28 11:58PM
break;
}
case IRC_PAUSE:
if(rds_radio_flag==0)
{
osd_init_Radio_rds();
disp_rds_func();
osd_DrawString(1, SETUP_MENU_YSTART-2, RegionValStr[2], SFONTCOLOR, SBGCOLOR);
rds_radio_flag=1;
}
else
{
osd_init_Radio_fm();
disfreq();
rds_radio_flag=0;
}
break;
case IRC_NEXT:/* auto search down */
#ifdef SUPPORT_RDS_FUNCTION//xyy 2003-12-4 16:18
rds_clear_var();
#endif
{
tuner.Istuning[tuner.bandswitch]=1;
if(search_dir&&(rep_ir_times<INC_SPEED_TIMES))
{
search_dir=0;
//tuner_mute( 0 ); //demute when auto search
tuner_mute_flag = 1; // auto demute after 500ms
}else
{
if(rep_ir_times<INC_SPEED_TIMES)
{
#ifdef TUNER_DBG
//printf("dec\n");
#endif
search(SEARCHDEC);
}else
{
// to avoid the noise when enter auto search mode
tuner_mute_flag = 0;
search_dir=2;
}
}
break;
}
case IRC_PREV:/* auto search up */
#ifdef SUPPORT_RDS_FUNCTION//xyy 2003-12-4 16:18
rds_clear_var();
#endif
{
tuner.Istuning[tuner.bandswitch]=1;
if(search_dir&&(rep_ir_times<INC_SPEED_TIMES))
{
search_dir=0;
//tuner_mute( 0 ); // demute when auto search
tuner_mute_flag = 1; // auto demute after 500ms
}else
{
if(rep_ir_times<INC_SPEED_TIMES)
{
#ifdef TUNER_DBG
//printf("add\n");
#endif
search(SEARCHADD);
}else
{
// to avoid the noise when enter auto search mode
tuner_mute_flag = 0;
search_dir=1;
}
}
break;
}
default:
break;
}
}
#else
void tuner_key(BYTE key)
{
static BYTE enter_flag=0;
//return;
switch(key)
{
case IRC_MUTE:
{
int id;
//rds_decoder_init();
//return;
//printf("size of :%d\n",sizeof(tuner));
user_mute=!user_mute;
tuner_mute(user_mute);
if(user_mute)
{
id=STR_OS_MUTE;
PrintOsdMsg(id,REGION1,0,0);
}
else
{
// id=STR_OS_SPACE;
OSD_OnOffRegion(OSD_OFF,1);//xyy 2003-10-13 17:15
}
break;
}
#ifdef SUPPORT_RDS_FUNCTION
case IRC_SELECT:
if(rds_func_flag >= 4)
{
rds_func_flag = 0;
}
else
{
rds_func_flag++;
}
disp_rds_func(rds_func_flag);
break;
#endif /*SUPPORT_RDS_FUNCTION*/
case IRC_UP:/* auto search up */
#ifdef SUPPORT_RDS_FUNCTION//xyy 2003-12-4 16:18
rds_clear_var();
#endif
{
tuner.Istuning[tuner.bandswitch]=1;
if(search_dir&&(rep_ir_times<INC_SPEED_TIMES))
{
search_dir=0;
//tuner_mute( 0 ); // demute when auto search
tuner_mute_flag = 1; // auto demute after 500ms
}else
{
if(rep_ir_times<INC_SPEED_TIMES)
{
#ifdef TUNER_DBG
//printf("add\n");
#endif
search(SEARCHADD);
}else
{
// to avoid the noise when enter auto search mode
tuner_mute_flag = 0;
search_dir=1;
}
}
break;
}
case IRC_DOWN: /* auto search down */
#ifdef SUPPORT_RDS_FUNCTION//xyy 2003-12-4 16:18
rds_clear_var();
#endif
{
tuner.Istuning[tuner.bandswitch]=1;
if(search_dir&&(rep_ir_times<INC_SPEED_TIMES))
{
search_dir=0;
//tuner_mute( 0 ); //demute when auto search
tuner_mute_flag = 1; // auto demute after 500ms
}else
{
if(rep_ir_times<INC_SPEED_TIMES)
{
#ifdef TUNER_DBG
//printf("dec\n");
#endif
search(SEARCHDEC);
}else
{
// to avoid the noise when enter auto search mode
tuner_mute_flag = 0;
search_dir=2;
}
}
break;
}
case IRC_LEFT:
//printf("left\n");
#ifdef SUPPORT_RDS_FUNCTION//xyy 2003-12-4 16:18
rds_clear_var();
#endif
if(tuner.bandswitch)//am
{
if(tuner.am_ch>0)
tuner.am_ch--;
else
tuner.am_ch = 0;
set_station(tuner.am_ch);
}
else //fm
{
if(tuner.fm_ch>0)
tuner.fm_ch--;
else
tuner.fm_ch = 0;
set_station(tuner.fm_ch);
}
write2mem =1;
disfreq();
break;
case IRC_RIGHT:
#ifdef SUPPORT_RDS_FUNCTION//xyy 2003-12-4 16:18
rds_clear_var();
#endif
if(tuner.bandswitch) //am
{
if(tuner.am_ch<(MAX_MEM_BAND-1))
tuner.am_ch++;
else
tuner.am_ch = (MAX_MEM_BAND-1);
set_station(tuner.am_ch);
}
else //fm
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -