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

📄 play.c

📁 ESS3890+SL原代码(1*16内存)
💻 C
📖 第 1 页 / 共 5 页
字号:
/*------------------------------------------------------------------------  Function:  Parameters:  Description:------------------------------------------------------------------------*/#if (defined(JPEG_DEC) && defined(JPEG_ROTATE))void JpgRotationKeyProc(JPEG_ROTATION){    if(play_state == PLAY_NORMAL_STATE) { 	JPEG_ReDecoding = 1; 	Rotate_Proc = JPEG_ROTATION; 	cur_track_index--;         if(cur_track_index<0) cur_track_index=0;	cur_track_number = cur_track_index+1; 	system_reset(); 	play_data_file(cur_track_number);     }     else if((play_state==PLAY_PAUSE_STATE)||	    (play_state==PLAY_WAIT_TIME_STATE)) { 	if(Huff_state_jpg==0) 	    JPG_rotate_pic(JPEG_ROTATION); 	else { 	    Pause_JPEG_ReDecoding = 1; 	    play_state = PLAY_NORMAL_STATE; 	    jpeg_pause = 0; 	    JPEG_ReDecoding = 1; 	    Rotate_Proc = JPEG_ROTATION; 	    cur_track_index--; 	    if(cur_track_index<0) cur_track_index=0;	    cur_track_number = cur_track_index+1; 	    system_reset(); 	    play_data_file(cur_track_number); 	}     } }#endifextern int SystemStatus;int process_non_play_keys(){    int min, sec;    int key_processed = 1;    int save_key;    /* check if we are in power off key */#ifdef DSC    if (IS_POWER_DOWN) {	if (current_key != POWER_KEY) {	    current_key = NO_KEY;	    return (1);	}    }#endif	    save_key = current_key;    current_key = NO_KEY;#ifdef SCREEN_ON_TIME_SAME_KEY#define SCREEN_KEY_INDEX_LIMIT	2#define TIME_KEY_INDEX_LIMIT	4    /* Convert the osd and  time key. */    if (!cd_stop && (save_key == SCREEN_ON_KEY) 	&& ((!(DiscMode & DISC_PBC_ON) || (SystemStatus != SYSTEM_PLAYING)))#ifdef DATA_CD        && (!STREAM_type)#endif    ) {	/* Sync with OSD & TimeMode */	if (!osd_time_key_index && (DiscMode & DISC_OSD_ON))	    osd_time_key_index = SCREEN_KEY_INDEX_LIMIT - 1; 	osd_time_key_index++;	if (osd_time_key_index < SCREEN_KEY_INDEX_LIMIT) {	    save_key = SCREEN_ON_KEY;	} else if (osd_time_key_index == TIME_KEY_INDEX_LIMIT) {	    save_key = SCREEN_ON_KEY;	    osd_time_key_index = 0;	} else {	    save_key = TIME_KEY;	}    }#endif#ifdef ZOOM    if (zoom_level) {	/* reset zoom level if the key is not good for zoom mode. */	if ((save_key < ZOOM_IN_KEY) || (save_key > ZOOM_DOWN_KEY)) {	    zoom_reset();	}    }#endif#ifdef EQUALIZER    if ((KEY_RESUME_mode == EQ_KEY_INPUT) && 	(save_key == EQ_ON_OFF_KEY)) {	EQ_mode ^= 1; /* toggle on/off */        if (EQ_mode) MIX_init();	return (1);    }    if (((KEY_RESUME_mode == EQ_KEY_INPUT) && (save_key == EQ_KEY)) 	|| (OSD_eq_mode>0) || (OSD_eq_mode_previous>0)) {	key_processed = process_EQ_key(save_key);	if (key_processed) return (1);    }#endif EQUALIZER    if (save_key == TV_MODE_KEY) {	if (!tv_changed) {#ifndef LTOC_TV_CHANGE	    play_change_tv_mode();#endif	} else {	    /* ignore if currently in TV mode change..next time */	    assign_key = TV_MODE_KEY;	}	return (1);    }    if ((save_key == NEXT_KEY) || (save_key == PREVIOUS_KEY))	forceDSAabort = 0;    if (save_key == EJECT_KEY) {	forceDSAabort = 0;        if (cd_opened) {            OUTOSD(OSD_FUNCTION_STATUS_REGION, MSG_close, MSG_c_close, 		   DISPLAY_TIME_OUT);            process_close_key();        } else {#ifndef THREE_CDS            CLEARALLOSD();#endif /* THREE_CDS */            OUTOSD(OSD_FUNCTION_STATUS_REGION, MSG_open, MSG_c_open,		   DISPLAY_TIME_OUT);            process_open_key();#ifdef CD_TEXT            if(CDT_data_ready) CD_text_reset();#endif        }        save_key = NO_KEY;#ifndef THREE_CDS        play_state = ENTRY_STATE;#endif /* THREE_CDS */        return (1);    }    /* check rotation key */#ifdef THREE_CDS    if (save_key == FIRST_DISC_KEY) {	if (cd_disc_slot == 2)	    save_key = ROTATE_CLOCK_KEY;	else if (cd_disc_slot == 3)	    save_key = ROTATE_ANTI_CLOCK_KEY;	else	    return (1);    }    if (save_key == SECOND_DISC_KEY) {	if (cd_disc_slot == 3)	    save_key = ROTATE_CLOCK_KEY;	else if (cd_disc_slot == 1)	    save_key = ROTATE_ANTI_CLOCK_KEY;	else	    return (1);    }    if (save_key == THIRD_DISC_KEY) {	if (cd_disc_slot == 1)	    save_key = ROTATE_CLOCK_KEY;	else if (cd_disc_slot == 2)	    save_key = ROTATE_ANTI_CLOCK_KEY;	else	    return (1);    }    if (((save_key == ROTATE_CLOCK_KEY) || (save_key == ROTATE_ANTI_CLOCK_KEY))        && (play_state != PLAY_MENU_STATE)) {	forceDSAabort = 0;        process_stop_key();	repeat_a2b = REPEAT_AB_OFF;	repeat_mode = 0;	shuffle_on = 0;	PBC_on = 0;        if (save_key == ROTATE_CLOCK_KEY)            dsa_rotate_disk(0);        else            dsa_rotate_disk(1);        CDinited = 0;        initCD();	dsa_stop();        play_state = ENTRY_STATE;        return (1);    }#else /* ifndef THREE_CDS */    /* check cd type and tray status first */    if (cd_opened) {        if (initCD()) {            current_key = save_key;        }        return (1);    }#endif /* THREE_CDS */    if (CDinfo.type == CD_NODISC) {	assign_osd_msg(osd_msg, MSG_no_disc, c_osd_msg, MSG_c_no_disc);        play_state = ENTRY_STATE;        return (1);    } else if (CDinfo.type == CD_UNKNOWN) {	assign_osd_msg(osd_msg, MSG_unknown_disc, c_osd_msg, 		       MSG_c_unknown_disc);        play_state = ENTRY_STATE;        return (1);    }  if ((play_state != PLAY_MENU_STATE) #ifdef GAMEBOY	&& (play_state != PLAY_GAME_STATE)#endif	) {    switch (save_key) {#if (defined(JPEG_DEC) && defined(JPEG_ROTATE))    case ZOOM_UP_KEY:       if(is_jpeg #ifdef FLESHTONE          && !JpgFleshtoneVscale && !fleshtone_proc #endif          && !Rotate_Proc)           JpgRotationKeyProc(ROTATE_INVERT);       else           key_processed = 0;		break;	case ZOOM_DOWN_KEY:       if(is_jpeg #ifdef FLESHTONE          && !JpgFleshtoneVscale && !fleshtone_proc #endif          && !Rotate_Proc)           JpgRotationKeyProc(ROTATE_MIRROR);       else           key_processed = 0;		break;    case ZOOM_LEFT_KEY:       if(is_jpeg #ifdef FLESHTONE          && !JpgFleshtoneVscale && !fleshtone_proc #endif          && !Rotate_Proc)           JpgRotationKeyProc(ROTATE_LEFT);       else           key_processed = 0;		break;	case ZOOM_RIGHT_KEY:       if(is_jpeg #ifdef FLESHTONE          && !JpgFleshtoneVscale && !fleshtone_proc #endif          && !Rotate_Proc)           JpgRotationKeyProc(ROTATE_RIGHT);       else           key_processed = 0;		break;#endif    case KEY_PLUS:#ifdef GAMMA	    if (KEY_RESUME_mode == GAMMA_KEY_INPUT) {		if(vcx_user_video_stream != 0xe2) {		    gamma_index++;		    if (play_state == PLAY_PAUSE_STATE) 			Gamma_Pause_Proc();		    else Gamma_NonPause_Proc();		} else {		    OUTOSD(1, error_msg, error_msg, QUICK_TIME_OUT);		}	    } else#endif #ifdef FLESHTONE            if (KEY_RESUME_mode == FLESHTONE_KEY_INPUT) {                if (((play_state==PLAY_PAUSE_STATE)#ifdef JPEG_DEC                  ||(is_jpeg&&(!JpgFleshtoneVscale)&&(!done_blank))#endif                )&&(!fleshtone_proc) &&(!CG_menu_on))                {                    fleshtone_index++;                    FleshTone_Main_Proc();                }             } else#endif	    { /* KEY_ADJUST_INPUT */#ifdef HOST_SLAVE		if (codeOperand==0xff) {#endif		    if (vcx_karaokey < 7)			vcx_karaokey++;#ifdef HOST_SLAVE		} else 		    vcx_karaokey=(codeOperand>7)?7:codeOperand;#endif		#ifdef KARAOKE		panel_key_shift(vcx_karaokey);#endif			    }	    break;    case KEY_MINUS:#ifdef GAMMA	    if (KEY_RESUME_mode == GAMMA_KEY_INPUT) {		if(vcx_user_video_stream != 0xe2) {		    gamma_index--;		    if (play_state == PLAY_PAUSE_STATE) 			Gamma_Pause_Proc();		    else Gamma_NonPause_Proc();		} else {		    OUTOSD(1, error_msg, error_msg, QUICK_TIME_OUT);		}	    } else#endif#ifdef FLESHTONE            if(KEY_RESUME_mode == FLESHTONE_KEY_INPUT) {                if (((play_state==PLAY_PAUSE_STATE)#ifdef JPEG_DEC                  ||(is_jpeg&&(!JpgFleshtoneVscale)&&(!done_blank)) #endif                )&&(!fleshtone_proc)&&(!CG_menu_on))               {                   fleshtone_index--;                   FleshTone_Main_Proc();               }             } else#endif	    { /* KEY_ADJUST_INPUT */#ifdef HOST_SLAVE		if (codeOperand==0xff) {#endif		    if (vcx_karaokey > -7)			vcx_karaokey--;#ifdef HOST_SLAVE		} else 		    vcx_karaokey=(codeOperand <-7)? 7:codeOperand;#endif		#ifdef KARAOKE		panel_key_shift(vcx_karaokey);#endif			    }	    break;    case KEY_RESUME_KEY:	    KEY_RESUME_mode++;            {                int mode_limit = GAMMA_KEY_INPUT;#if (defined DAE_SPATIAL && defined ECHO && defined KARASC && defined MIC_RECORD)                /*Since we have no enough power to support all the functions                  turned on when MIC_REC is on, we close the GAMMA.                */                if ( KSC_mode>0 && DAE_mode>0 && EQ_mode>0                     && play_state == PLAY_FOLLOWING_STATE)                     mode_limit = EQ_KEY_INPUT;#endif                if((vcx_user_video_stream==0xe2)||(TDM_isCDDA))                    mode_limit = EQ_KEY_INPUT;                if (STREAM_type) {                    mode_limit = EQ_KEY_INPUT;#ifndef KARAOKE                    if (CG_menu_on) {                        OUTOSD(1, error_msg, error_msg, 3);                        break;                    }#endif#if (defined(VCDJPEG) && defined(FLESHTONE))                    if (is_jpeg&&(!done_blank)&&(!CG_menu_on)) {                    {                        mode_limit = FLESHTONE_KEY_INPUT;                        if (KEY_RESUME_mode == GAMMA_KEY_INPUT)                            KEY_RESUME_mode = FLESHTONE_KEY_INPUT;                    }#endif                } else {                    if ((play_state == PLAY_PAUSE_STATE)                       && (vcx_user_video_stream != 0xe2))                     {                        mode_limit = FLESHTONE_KEY_INPUT;                    }                }                if (KEY_RESUME_mode > mode_limit)                    KEY_RESUME_mode = KEY_ADJUST_INPUT;            }#ifdef FLESHTONE            if (is_jpeg && (!CG_menu_on))                 KEY_RESUME_mode = FLESHTONE_KEY_INPUT;#endif	    assign_osd_msg(osd_msg, KEY_mode_msg[KEY_RESUME_mode], 			   c_osd_msg, KEY_mode_msg[KEY_RESUME_mode]);	    osd_timeout = QUICK_TIME_OUT;	    if (KEY_RESUME_mode_old != KEY_RESUME_mode) {#if (defined(GAMMA) || defined(FLESHTONE))		if (KEY_RESUME_mode_old > EQ_KEY_INPUT) {		    /* clear slide bar */		    OSD_clear_region(OSD_SLIDE_BAR_REGION);		} else #endif /* GAMMA || FLESHTONE */		if (KEY_RESUME_mode_old == KEY_ADJUST_INPUT) {		    /* clear pitch bar */		    OSD_clear_region(OSD_KARAOKE_REGION);		} 	    }	    #ifdef GAMMA	    if (KEY_RESUME_mode == GAMMA_KEY_INPUT) {		GAMMA_bar(gamma_index);	    } #endif	    #ifdef FLESHTONE	    else if(KEY_RESUME_mode == FLESHTONE_KEY_INPUT) {	        OSD_slide_bar(fleshtone_index, 5);	    } else#endif#ifdef KARAOKE   	    	    if ((KEY_RESUME_mode == KEY_ADJUST_INPUT) && !is_jpeg) {		if(!CG_menu_on)panel_key_shift(vcx_karaokey);	    }#endif	    KEY_RESUME_mode_old = KEY_RESUME_mode;            OUTOSD(1,osd_msg,c_osd_msg,osd_timeout);	    key_processed = 1; 	    	    break;#ifdef ECHO    case ECHO_PLUS:        if (vcx_echo < vcx_echo_max_level) {	    vcx_echo ++;	    if (vcx_echo == 0) { /* -1 -> 0 */		MIC_init();		MIC_start_take_in();	    }	}	OSD_echo();	break;    case ECHO_MINUS:	if (vcx_echo > -1) {	    vcx_echo --;	    if (vcx_echo == -1) { /* 0 -> -1 */		MIC_stop_take_in();	    }	}	OSD_echo();	break;#endif    case SURROUND_KEY:#ifdef REVERB	    RVB_toggle_mode();#elif defined(EQUALIZER) && defined(DAE_SPAT

⌨️ 快捷键说明

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