📄 ircmd_dir.c
字号:
/**************************************************************************
* *
* Copyright (c) 2002 by Sunplus Technology Co., Ltd. *
* *
* This software is copyrighted by and is the property of Sunplus *
* Technology Co., Ltd. All rights are reserved by Sunplus Technology *
* Co., Ltd. This software may only be used in accordance with the *
* corresponding license agreement. Any unauthorized use, duplication, *
* distribution, or disclosure of this software is expressly forbidden. *
* *
* This Copyright notice MUST not be removed or modified without prior *
* written consent of Sunplus Technology Co., Ltd. *
* *
* Sunplus Technology Co., Ltd. reserves the right to modify this *
* software without notice. *
* *
* Sunplus Technology Co., Ltd. *
* 19, Innovation First Road, Science-Based Industrial Park, *
* Hsin-Chu, Taiwan, R.O.C. *
**************************************************************************/
/*--------------------------------------------------------------------------
| File Name : ircmd_dir.c
|
| Description : realize up,down,left,right function in remoter.
|
| Version : 0.1
|
|
| Rev Date Author(s) Status & Comments
|---------------------------------------------------------------------------------
| 0.1 2004/1/30 Terry Creating
|--------------------------------------------------------------------------------*/
/*
* Terry,2004/1/30 04:12PM
Maoyong 2004/09/24 AM, ircmd_full_scrn_up replace call_full_scrn_fun((IRCMDFUNC *)func);
*/
#define is_zoom() ((vpp_zoom > 1) && (vpp_zoom <= ZOOMIN_MAX))
/**************************************************************************
* Function Name: ircmd_up
* Purposes:
* realize up function using up key of IR.
* Descriptions:
* ircmd_post_func(CMD_SELECT | CMD_FUNC_GAME_UL)
* CMD_SELECT: number or up/down/left/right.
* CMD_FUNC_GAME_UL: up key.
* Arguments: NONE
*
* Returns: NONE
* See also: NONE
*
**************************************************************************/
void ircmd_up(void)
{
#ifdef IRCMD_DBG
printf("======================= up =====================\n");
#endif
#ifdef SUPPORT_MIDIDISK_TITLE
if (bIsPlayMidiTitle)//xlluo for midi title
{
invalid_key();
return;
}
#endif
#ifdef TEST_VFD
update_vfd_mod_inc(); //shawn modify at 910131
return ;
#endif
#ifdef SUPPORT_MULTI_PARTITION//liweihua mod 2004-11-2
if((pFsJpeg->gifsState == FS_STATE_HDD)
#ifdef FAT_FILE_MODE
||(pFsJpeg->gifsState == FS_STATE_MODE)
||(fat_play_mode == 1)
#endif
)
{
HDDCard_up();
return;
}
#endif
if(full_scrn)
{
//call_full_scrn_fun((IRCMDFUNC *)ircmd_up_table);
ircmd_full_scrn_up();
return;
}
else if( is_zoom() )
#ifdef MOVE_INVERSE_WHEN_ZOOM
{ //heqiang, down, 2004-3-2 17:51
if(vpp_zoom_y < getVPP_YOffsetMax())
{
PrintOsdMsg(STR_OS_PIC_UP, REGION1, 1, 0);
vpp_zoom_y += ZOOM_MOVE;
startup_vpp();
return;
}
#if defined(UPDN_AND_KEYUPDN_IN_A_KEY) || defined(LRUPDW_AND_BACKWARD_FORWARD_PREV_NEXT_IN_A_KEY)||defined(UPDN_AND_ECHO_IN_A_KEY) ||defined(UPDN_AND_MICVOL_IN_A_KEY) //nono 20020706 wu 20020920
else
{
invalid_key();
return;
}
#endif
}
#else//MOVE_INVERSE_WHEN_ZOOM
{
if (vpp_zoom_y > -getVPP_YOffsetMax())
{
OSD1000ISP_STATUS(OSDISP_DIR_ZOOM, OSDIR_UP);
PrintOsdMsg(STR_OS_PIC_UP, REGION1, 1, 0);
vpp_zoom_y -= ZOOM_MOVE;
startup_vpp();
return;
}
#if defined(UPDN_AND_KEYUPDN_IN_A_KEY) || defined(LRUPDW_AND_BACKWARD_FORWARD_PREV_NEXT_IN_A_KEY)||defined(UPDN_AND_ECHO_IN_A_KEY) ||defined(UPDN_AND_MICVOL_IN_A_KEY) //nono 20020706 wu 20020920
else
{
invalid_key();
return;
}
#endif
}
#endif//MOVE_INVERSE_WHEN_ZOOM
else if (HL_exist)
{
ExeHLBm(HL_DIR, HL_BM_U);
return;
}
#ifdef MIC_FUNCTION_KEY
#ifdef BBK_DVD//zhaoyanhua add 03-10-19 14:02
else if (bFuncStep)
{
switch (bFuncStep)
{
case 1:
ircmd_mic_up();
break;
case 2:
ircmd_echo_up();
break;
case 3:
ircmd_key_up();
break;;
}
return;
}
#endif//end BBK_DVd
#endif//end MIC_FUNCTION_KEY
else if (cd_type_loaded == CDROM)
{
if ((play_state == VCD_STATE_MP3_FILELIST) || (play_state == VCD_STATE_NORMAL) || adv_search_time)
{
if ( (shuffle_flag == 0||Is_JPEG_SlideMode()==1)
&& ((prog_cnt == 0)||Is_JPEG_SlideMode()==1)
)//NONO 3-12-22 23:22
{
#ifdef ZOOM_DIRECT_STOP_SLIDE //wanghaoying 2003-08-25 20:35
if( Is_JPEG_SlideMode() )
jpg_slide_time = 0xffffffff;
#endif
#ifdef ZOOMOUT_NOT_ROTATE //zhaoyanhua add for DESAY 03-10-11 14:54 when zoom ratio less than 1,not rotate.
if ((vpp_zoom >= ZOOMOUT_BASE) && (vpp_zoom <= ZOOMOUT_MAX))
invalid_key();
else
#endif
{
OSD1000ISP_STATUS(OSDISP_DIR_ROTATE, OSDIR_UP);
ircmd_post_func(CMD_SELECT | CMD_FUNC_GAME_UL);
return;
}
}
}
#ifdef ROTATE_WHEN_PAUSE //zhaoyanhua add 03-10-13 10:09
else if ((play_state == VCD_STATE_PAUSE) && (Is_JPEG_SlideMode()))
{
ircmd_post_func(CMD_SELECT | CMD_FUNC_GAME_UL);
return;
}
#endif
#if defined(UPDN_AND_KEYUPDN_IN_A_KEY) || defined(LRUPDW_AND_BACKWARD_FORWARD_PREV_NEXT_IN_A_KEY)||defined(UPDN_AND_ECHO_IN_A_KEY)||defined(UPDN_AND_MICVOL_IN_A_KEY) //nono 20020706 wu 20020920
else
{
invalid_key();
return;
}
#endif
}
#ifdef UPDN_AND_KEYUPDN_IN_A_KEY //nono 20020706
ircmd_key_up();
#elif defined(LRUPDW_AND_BACKWARD_FORWARD_PREV_NEXT_IN_A_KEY) //wu 20020920
ircmd_prev();
#elif defined(FUSS_FEIYANG_2120_PANEL) //wu 20020923
ircmd_forward();
#elif defined(UPDN_AND_MICVOL_IN_A_KEY)
ircmd_mic_up();
#elif defined(UPDN_AND_ECHO_IN_A_KEY) //nono 20020706
ircmd_echo_up();
#elif defined(CF_GPIO_CONTROL_COLOR)
chang_vfd_back_color_down();
#else
invalid_key();
#endif
}
/**************************************************************************
* Function Name: ircmd_down
* Purposes:
* realize down function using down key of IR.
* Descriptions:
* ircmd_post_func(CMD_SELECT | CMD_FUNC_GAME_DN)
* CMD_SELECT: number or up/down/left/right.
* CMD_FUNC_GAME_DN: down key.
* Arguments: NONE
*
* Returns: NONE
* See also: NONE
*
**************************************************************************/
void ircmd_down(void)
{
#ifdef IRCMD_DBG
printf("======================= ircmd_down ================\n");
#endif
#ifdef SUPPORT_MIDIDISK_TITLE
if (bIsPlayMidiTitle)//xlluo for midi title
{
invalid_key();
return;
}
#endif
#ifdef TEST_VFD
update_vfd_mod_dec(); //shawn modify at 910131
return;
#endif
#ifdef SUPPORT_MULTI_PARTITION//liweihua mod 2004-11-2
if((pFsJpeg->gifsState == FS_STATE_HDD)
#ifdef FAT_FILE_MODE
||(pFsJpeg->gifsState == FS_STATE_MODE)
||(fat_play_mode == 1)
#endif
)
{
HDDCard_down();
return;
}
#endif
if (full_scrn)
{
//call_full_scrn_fun((IRCMDFUNC *)ircmd_down_table);
ircmd_full_scrn_down();
return;
}
else if( is_zoom() )
#ifdef MOVE_INVERSE_WHEN_ZOOM
{ //heqiang, up, 2004-3-2 17:51
if (vpp_zoom_y > -getVPP_YOffsetMax())
{
PrintOsdMsg(STR_OS_PIC_DN, REGION1, 1, 0);
vpp_zoom_y -= ZOOM_MOVE;
startup_vpp();
return;
}
#if defined(UPDN_AND_KEYUPDN_IN_A_KEY) || defined(LRUPDW_AND_BACKWARD_FORWARD_PREV_NEXT_IN_A_KEY)||defined(UPDN_AND_ECHO_IN_A_KEY) ||defined(UPDN_AND_MICVOL_IN_A_KEY) //nono 20020706 wu 20020920
else
{
invalid_key();
return;
}
#endif
}
#else//MOVE_INVERSE_WHEN_ZOOM
{
if(vpp_zoom_y < getVPP_YOffsetMax())
{
OSD1000ISP_STATUS(OSDISP_DIR_ZOOM, OSDIR_DOWN);
PrintOsdMsg(STR_OS_PIC_DN, REGION1, 1, 0);
vpp_zoom_y += ZOOM_MOVE;
startup_vpp();
return;
}
#if defined(UPDN_AND_KEYUPDN_IN_A_KEY) || defined(LRUPDW_AND_BACKWARD_FORWARD_PREV_NEXT_IN_A_KEY)||defined(UPDN_AND_ECHO_IN_A_KEY)||defined(UPDN_AND_MICVOL_IN_A_KEY) //nono 20020706 wu 20020920
else
{
invalid_key();
return;
}
#endif
}
#endif//MOVE_INVERSE_WHEN_ZOOM
else if(HL_exist)
{
ExeHLBm(HL_DIR, HL_BM_D);
return;
}
#ifdef MIC_FUNCTION_KEY
#ifdef BBK_DVD//zhaoyanhua add 03-10-19 14:02
else if (bFuncStep)
{
switch (bFuncStep)
{
case 1:
ircmd_mic_down();
break;
case 2:
ircmd_echo_down();
break;
case 3:
ircmd_key_down();
break;
}
return;
}
#endif//end ifdef BBK_DVD
#endif//MIC_FUNCTION_KEY
else if(cd_type_loaded == CDROM)
{
if ( (play_state == VCD_STATE_MP3_FILELIST) || (play_state == VCD_STATE_NORMAL) ||adv_search_time)
{
if ((shuffle_flag && Is_JPEG_SlideMode()!=1) //nono 2004-7-28 1:51
|| (prog_cnt&&Is_JPEG_SlideMode()!=1)
)//nono 3-12-22 23:22
{
invalid_key();
}
else
{
#ifdef ZOOM_DIRECT_STOP_SLIDE //wanghaoying 2003-08-25 20:35
if( Is_JPEG_SlideMode() )
jpg_slide_time = 0xffffffff;
#endif
#ifdef ZOOMOUT_NOT_ROTATE //zhaoyanhua add for DESAY 03-10-11 14:54 when zoom ratio less than 1,not rotate.
if ((vpp_zoom >= ZOOMOUT_BASE) && (vpp_zoom <= ZOOMOUT_MAX))
invalid_key();
else
#endif
{
OSD1000ISP_STATUS(OSDISP_DIR_ROTATE, OSDIR_DOWN);
ircmd_post_func(CMD_SELECT | CMD_FUNC_GAME_DN);
}
}
return;
}
#ifdef ROTATE_WHEN_PAUSE //zhaoyanhua add 03-10-13 10:09
else if ((play_state == VCD_STATE_PAUSE) && (Is_JPEG_SlideMode()))
{
ircmd_post_func(CMD_SELECT | CMD_FUNC_GAME_DN);
return;
}
#endif
#if defined(UPDN_AND_KEYUPDN_IN_A_KEY) || defined(LRUPDW_AND_BACKWARD_FORWARD_PREV_NEXT_IN_A_KEY)||defined(UPDN_AND_ECHO_IN_A_KEY) ||defined(UPDN_AND_MICVOL_IN_A_KEY) //nono 20020706 wu 20020920
else
{
invalid_key();
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -