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

📄 play.old

📁 一个两碟控制的VCD的代码,两碟之间的转动及连续播放,已大量生产的CODE.
💻 OLD
📖 第 1 页 / 共 5 页
字号:
             return(1);
           dsa_stop();
           trans_dsa(0x0b, 0);
           play_state = ENTRY_STATE;
        }
        cd_opened = 0;
	CDinited = 0;
        forceDSAabort = 0;
/*
        set_abort_ltoc = 1;
        if (initCD()) {
            i = get_keycode();
            current_key = PLAY_KEY;
        } else {
            i = get_keycode();
            save_key = NO_KEY;
        }
        set_abort_ltoc = 0;
*/
        cd_tray_just_closed = 1;
        return (1);
	} else {
	  save_key = NO_KEY;
	  forceDSAabort = 0;
	  return(1);
	}
	save_key = NO_KEY;
        return (1);
    }
#else
    /* check cd type and tray status first */
    if (cd_opened) {
        if (initCD()) {
            current_key = save_key;
        }
        return (1);
    }
#endif  /* TWO_CDS */
#endif /* THREE_CDS */


#ifdef  MEIXINDA_REMOTE
    if (save_key == TURNS_KEY)
     {
      if (PBC_on)
         save_key = RETURN_KEY;
      else
        save_key = STOP_KEY;
     }
#endif


#ifdef  ZHENSHENG_REMOTE
    if ((!PBC_on) && (save_key == RETURN_KEY))
       save_key = STOP_KEY;
#endif


/*
if ((save_key == PLAY_KEY) && ((play_state == PLAY_NORMAL_STATE)
	 )) {
	   save_key = PAUSE_KEY;
      }
*/

 if (save_key == PLAY_KEY) {
   if ((stopresume_flag ==1) && (play_state == ENTRY_STATE) && (!((play_state == PLAY_PROGRAM_STATE)
        ||(play_state == PLAY_MENU_STATE))))
        save_key = RESUME_KEY;
   if (play_state == PLAY_NORMAL_STATE)
       save_key = PAUSE_KEY;
   }

    if (CDinfo.type == CD_NODISC) {
#ifdef JUMPGAME
	if (save_key == MODE_KEY) {
	    save_resume_time(ResumeTrack, ResumeMinute, ResumeSecond);
	    BankSwitch(0);
	}
#endif
        OSD_clear_all();
	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 NGAME
	&& (play_state != PLAY_GAME_STATE)
#endif
	) {
    switch (save_key) {
   case KEY_PLUS:
	if (vcx_karaokey < 7)
	  vcx_karaokey++;
	panel_key_shift(vcx_karaokey);
        break;

    case KEY_MINUS:
	if (vcx_karaokey > -7)
	  vcx_karaokey--;
	panel_key_shift(vcx_karaokey);
        break;

    case KEY_RESUME_KEY:
        vcx_karaokey = 0;
	panel_key_shift(vcx_karaokey);
        break;

#ifdef ECHO
    case ECHO_PLUS:
#ifdef NGAME
        if (play_state == PLAY_GAME_STATE) break;
#endif
        if (vcx_echo < vcx_echo_max_level) {
	    vcx_echo ++;
	    if (vcx_echo == 0) { /* -1 -> 0 */
		MIC_init();
		MIC_start_take_in();
	    }
            MIC_clear_buffer();
	}
	OSD_echo();
	break;
    case ECHO_MINUS:
#ifdef NGAME
        if (play_state == PLAY_GAME_STATE) break;
#endif
	if (vcx_echo > -1) {
	    vcx_echo --;
	    if (vcx_echo == -1) { /* 0 -> -1 */
		MIC_stop_take_in();
	    }
	}
	OSD_echo();
	break;
#endif

#if SPATIAL & KARAOKE
    case SURROUND_KEY:
#ifdef NGAME
        if (play_state == PLAY_GAME_STATE) break;
#endif
	SPA_msg = SPA_set_level((SPA_level >= SPA_VOCAL_CUT) ? SPA_OFF
			    : SPA_level + 1);
	assign_osd_msg(osd_msg, SPA_msg, c_osd_msg, SPA_msg);

#ifdef  KANGHUI
        panel_surround();
#endif

#ifndef  KANGHUI
	osd_region = OSD_AUDFX_REGION;
#else
        osd_region = OSD_FUNCTION_STATUS_REGION;
#endif
	break;
#endif

    case VOCAL_ASSIST_KEY:

#ifdef NGAME
        if (play_state == PLAY_GAME_STATE) break;
#endif
        audio_mode++;


#ifdef AIQING_S310
      if (audio_mode == LEFT_RIGHT)
           vfdled = 0xff;
      else
         vfdled = 0xf0;
#endif

#ifdef AIQING_S510
      if (audio_mode == LEFT_RIGHT)
           vfdled = 0xff;
      else
         vfdled = 0xf0;
#endif




#ifdef  KANGHUI
	if ((play_item_type == DATA_TRACK) &&
	    (audio_mode > (LEFT_RIGHT)))
#else
	/* additional vocal LL/RR */
        if ((play_item_type == DATA_TRACK) &&
	    (audio_mode > (LEFT_RIGHT + 2)))
#endif
	{
            audio_mode = LEFT_LEFT;
        } else if ((play_item_type == AUDIO_TRACK) &&
		   (audio_mode > LEFT_RIGHT)) {	/* Audio track..no vocal assist */
            audio_mode = LEFT_LEFT;
	}

	show_audio_panel(1); /* 1 -> show osd */
        break;

    case REPEAT_KEY:
#ifdef VCDROM
	if (play_clip) {
	    key_processed = 0;	/* do not accept key repeat in vcd3.0 */
	} else {
           if (PBC_on)
            { assign_osd_msg(osd_msg, error_msg, c_osd_msg, error_msg);}
           else
            { repeat_mode = panel_repeat_mode_change();}
	}
#else
         repeat_mode = panel_repeat_mode_change();
#endif
        break;
    case PBC_KEY:
#ifdef VCDROM
	if (play_clip == VCD30_PLAY_CLIP) {
	    play_clip = VCD30_PLAY_VCD;
	    VCD30_event = VCD30_PLAY_VCD;
	    return;
	}
#endif

        if ((!play_clip) && (CDinfo.type == CD_VCD) && (PSD_size > 0)) {
            if (!cd_stop)
                process_stop_key(1, 0);

            if (play_state == PLAY_MENU_STATE) {
                vcx_user_video_stream = 0xe0;
                fill_screen(COLOR_BLUE);
            }

	    /* process_PBC_key() after process_stop_key()..OSD related */
            process_PBC_key();

            play_state = ENTRY_STATE;

        } else {
            /* PBC off can not change to PBC on */
	    assign_osd_msg(osd_msg, error_msg, c_osd_msg, error_msg);
        }
        break;
    case TIME_KEY:
#ifdef REAL_CLOCK
	if (play_state != ENTRY_STATE) {
	    /* when ENTRY_TATE, time key is used for clock setting. */
#endif
        if (!screen_display) {
           start_timer = glbTimer;
           screen_flag = 1;
           screen_display = 1;
        }
        panel_time_mode_change();


#ifdef REAL_CLOCK
       } else {
	   key_processed = 0;
       }
#endif
        break;
    case SCREEN_ON_KEY:
	screen_display ^= 1;
   #ifdef  KANGHUI
        panel_osd();
   #endif
        if (!screen_display)
            OSD_clear_all();



   /*     panel_osd_mode_change(); */

#ifdef SCREEN_ON_TIME_SAME_KEY
	if (osd_time_key_index == 0)
	    panel_time_mode_change();
#endif
        break;
#ifdef USE_SLEEP
    case AUTO_POWER_OFF_KEY:
        sleep_flag += 1;
        if (sleep_flag == 11)
	   sleep_flag = 0;
	if (sleep_flag == 1) {
	     sleep_limit_timer = NINETY_NINE_MINUTE;
	     assign_osd_msg(osd_msg, MSG_ninimi_msg, c_osd_msg, MSG_c_ninimi_msg);
	     panel_select_track(99,1);
	} else if (sleep_flag == 2) {
	     sleep_limit_timer = NINETY_MINUTE;
	     assign_osd_msg(osd_msg, MSG_nimi_msg, c_osd_msg, MSG_c_nimi_msg);
	     panel_select_track(90,1);
	} else if (sleep_flag == 3) {
	     sleep_limit_timer = EIGHTY_MINUTE;
	     assign_osd_msg(osd_msg, MSG_eimi_msg, c_osd_msg, MSG_c_eimi_msg);
	     panel_select_track(80,1);
	} else if (sleep_flag == 4) {
	     sleep_limit_timer = SEVENTY_MINUTE;
	     assign_osd_msg(osd_msg, MSG_semi_msg, c_osd_msg, MSG_c_semi_msg);
	     panel_select_track(70,1);
	} else if (sleep_flag == 5) {
	     sleep_limit_timer = SIXTY_MINUTE;
	     assign_osd_msg(osd_msg, MSG_simi_msg, c_osd_msg, MSG_c_simi_msg);
	     panel_select_track(60,1);
	} else if (sleep_flag == 6) {
	     sleep_limit_timer = FIFTY_MINUTE;
	     assign_osd_msg(osd_msg, MSG_fimi_msg, c_osd_msg, MSG_c_fimi_msg);
	     panel_select_track(50,1);
	} else if (sleep_flag == 7) {
	     sleep_limit_timer = FOURTY_MINUTE;
	     assign_osd_msg(osd_msg, MSG_fomi_msg, c_osd_msg, MSG_c_fomi_msg);
	     panel_select_track(40,1);
	} else if (sleep_flag == 8) {
	     sleep_limit_timer = THIRTY_MINUTE;
	     assign_osd_msg(osd_msg, MSG_thmi_msg, c_osd_msg, MSG_c_thmi_msg);
	     panel_select_track(30,1);
	} else if (sleep_flag == 9) {
	     sleep_limit_timer = TWENTY_MINUTE;
	     assign_osd_msg(osd_msg, MSG_twmi_msg, c_osd_msg, MSG_c_twmi_msg);
	     panel_select_track(20,1);
	} else if (sleep_flag == 10) {
	     sleep_limit_timer = TEN_MINUTE;
	     assign_osd_msg(osd_msg, MSG_temi_msg, c_osd_msg, MSG_c_temi_msg);
	     panel_select_track(10,1);
	} else if (sleep_flag == 0) {
	     assign_osd_msg(osd_msg, MSG_tioff_msg, c_osd_msg, MSG_c_tioff_msg);
	     panel_select_track(0,1);
	}
	sleep_timer = glbTimer;
	break;
#endif

    case RESUME_KEY:
        process_resume_key();
        break;
#ifdef VOLUME_CONTROL
    case MUTE_KEY:
	process_mute_key();
	break;
    case VOLUME_UP_KEY:
	process_volume_key(1);	/* increase one level. */
	break;
    case VOLUME_DOWN_KEY:
	process_volume_key(-1);	/* decrease one level. */
	break;
#endif
#ifdef KANGHUI
    case KARAOKE_KEY:
	karaoke_flag += 1;
	if (karaoke_flag == 1) {
             OUTOSD(OSD_FUNCTION_STATUS_REGION,MSG_karaoke_on, MSG_c_karaoke_on, DISPLAY_TIME_OUT);
             CLEAR_EAUX5;
             panel_karaoke(1);
             vocal_assist_on = 0;
	} else if (karaoke_flag == 2) {
             panel_karaoke(1);
             vocal_assist_on = 1;
             vcx_audio_channel = LEFT_RIGHT;
             audio_mode = VOCAL_LEFT_LEFT;
             panel_vocal_mode(VOCAL_LEFT);
             OUTOSD(OSD_FUNCTION_STATUS_REGION,MSG_vocal_left, MSG_c_vocal_left, DISPLAY_TIME_OUT);
        } else if (karaoke_flag == 3) {
              panel_karaoke(1);
              vocal_assist_on = 1;
              vcx_audio_channel = LEFT_RIGHT;
              audio_mode = VOCAL_RIGHT_RIGHT;
              panel_vocal_mode(VOCAL_RIGHT);
              OUTOSD(OSD_FUNCTION_STATUS_REGION,MSG_vocal_right, MSG_c_vocal_right, DISPLAY_TIME_OUT);
        } else if (karaoke_flag == 4) {
            OUTOSD(OSD_FUNCTION_STATUS_REGION,MSG_karaoke_off, MSG_c_karaoke_off, DISPLAY_TIME_OUT);
            panel_karaoke(2);
            SET_EAUX5;
            karaoke_flag = 0;
            vocal_assist_on = 0;
	}
         break;
#else

#ifdef  ALLONE
   case KARAOKE_KEY:
	karaoke_flag += 1;
        if (karaoke_flag == 1) {
            OUTOSD(OSD_AUDIO_REGION,MSG_karaoke_on, MSG_c_karaoke_on, DISPLAY_TIME_OUT);
            vfdled = 0xf7;
            CLEAR_EAUX15;
            panel_karaoke(1);
            vocal_assist_on = 0;
        } else if (karaoke_flag == 2) {
          OUTOSD(OSD_AUDIO_REGION,MSG_karaoke_off, MSG_c_karaoke_off, DISPLAY_TIME_OUT);
           panel_karaoke(2);
           SET_EAUX15;
           vfdled = 0xff;
           karaoke_flag = 0;
        }
        break;
#else
   case KARAOKE_KEY:
	karaoke_flag += 1;
        if (karaoke_flag == 1) {
            OUTOSD(OSD_AUDIO_REGION,MSG_karaoke_on, MSG_c_karaoke_on, DISPLAY_TIME_OUT);
            vfdled = 0xf7;
            CLEAR_EAUX5;
            panel_karaoke(1);
            vocal_assist_on = 0;
        } else if (karaoke_flag == 2) {
          OUTOSD(OSD_AUDIO_REGION,MSG_karaoke_off, MSG_c_karaoke_off, DISPLAY_TIME_OUT);
           panel_karaoke(2);
            SET_EAUX5;
            vfdled = 0xff;
            karaoke_flag = 0;
        }
        break;

#endif

#endif
     case XUECHANG_KEY:
        xuechang_flag +=1;
        if (xuechang_flag ==1) {
           if (PBC_on) {
                xuechang_flag =0;
                assign_osd_msg(osd_msg, error_msg, c_osd_msg, error_msg);
          } else {
           if (play_state == PLAY_NORMAL_STATE) {
              continue_sec = (servo_info & 0xff);
              continue_min = ((servo_info >> 8) & 0xff);

	   if (continue_sec < 0x05 ) {
	       continue_sec += 0x55;
	       if (continue_min >= 1)
		  continue_min -= 1;
	       else
		  continue_sec = 0x00;
	    }

⌨️ 快捷键说明

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