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

📄 slave.c

📁 ESS3890+SL原代码(1*16内存)
💻 C
📖 第 1 页 / 共 3 页
字号:
    Send_Buffer[1] = (unsigned char )(play_state & 0xff);    Send_Buffer[2] = (unsigned char )(Disc_Status_Monitor & 0xff);    Make_Check_Sum(3);    Total_Byte = 4;    return 1;}/** Playing Modes **/int Task_Play_Mode(int flag){    if (flag) {        Repeat_Mode_Old = (repeat_mode&0x0F)|((repeat_a2b&0x0F)<<4);	Display_Mode_Old = TimeMode;	Play_Order_Old = Play_Order_Monitor;	force_Play_Mode_flag = 0;	return 1;     }    if ((Repeat_Mode_Old == ((repeat_mode&0x0F)|((repeat_a2b&0x0F)<<4)))         &&(Display_Mode_Old == TimeMode)	 &&(Play_Order_Old == Play_Order_Monitor)         && (force_Play_Mode_flag == 0))	 return 0;     Send_Buffer[0] = mPLAYING_MODE;     Send_Buffer[1] =            (unsigned char )((repeat_mode&0x0F) |((repeat_a2b&0x0F)<<4));     Send_Buffer[2] = (unsigned char )TimeMode;     Send_Buffer[3] = (unsigned char )Play_Order_Monitor+1;     Make_Check_Sum(4);     Total_Byte = 5;     return 1;}/* TL Lim added 9/30/2000 *//** Karaoke Settings  **/int Task_Karaoke_Setting(int flag){    extern int audio_level;    extern unsigned char vocal_assist_on;      if (flag) {        force_Karaoke_Setting_flag = 0;#ifdef EQUALIZER        kara_old_set = EQ_music_type_effect;#endif	return 1;    }    if ( (force_Karaoke_Setting_flag == 0) #ifdef EQUALIZER         && (kara_old_set == EQ_music_type_effect) #endif        )       return 0;    Send_Buffer[0] = mKARAOKE;    Send_Buffer[1] = (unsigned char )(vcx_karaokey+7);    Send_Buffer[2] = (unsigned char )vcx_echo;    Send_Buffer[3] = (unsigned char )audio_level;    Send_Buffer[4] = 0;    Send_Buffer[5] = (unsigned char )vocal_assist_on;    Make_Check_Sum(6);    Total_Byte = 7;    return 1;}/** System Settings  **/int Task_System_Setting(int flag){    if (flag) {	TV_Type_old = currentTVmode;	audio_mode_old = audio_mode;        force_System_Setting_flag = 0;	return 1;     }    if ((TV_Type_old == currentTVmode)	&&(audio_mode_old == audio_mode)        && (force_System_Setting_flag == 0))        return 0;    Send_Buffer[0] = mSYSTEM;    Send_Buffer[1] = (unsigned char )(currentTVmode);    Send_Buffer[2] = (unsigned char )audio_mode;    Make_Check_Sum(3);    Total_Byte = 4;    return 1;}/** Send OSD Mask Select Setting Value **/int Task_OSD_Select_Setting(int flag){    unsigned char temp1, temp2;    int ignore_key, key;    if (flag) {        force_osd_setting_flag = 0;        return 1;    }    if (force_osd_setting_flag == 0) return 0;    Send_Buffer[0] = mOSD_SELECT_SETTING;    Send_Buffer[1] = (unsigned char) (host_OSD_mask>>8);    Send_Buffer[2] = (unsigned char) (host_OSD_mask&0xFF);    Make_Check_Sum(3);    Total_Byte = 4;    return 1;}/** Send EAUX Value **/int Task_Read_EAUX(int flag){    if (flag) {        force_read_eaux_flag = 0;        return 1;    }	    if (force_read_eaux_flag == 0) return 0;    Send_Buffer[0] = mREAD_EAUX;    Send_Buffer[1] = GET_EAUX15_8;    Send_Buffer[2] = GET_EAUX7_0;    Make_Check_Sum(3);    Total_Byte = 4;    return 1;}/** Send Version Number Value **/int Task_Version_Number(int flag){    if (flag) {        force_version_number_flag = 0;	return 1;    }		    if (force_version_number_flag == 0) return 0;    Send_Buffer[0] = mVERSION_NUMBER;    Send_Buffer[1] = 0x03;         /* Version 2.0 */    Send_Buffer[2] = 0x00;    Send_Buffer[3] = 0x01;    Make_Check_Sum(4);    Total_Byte = 5;    return 1;}int Task_MP3_Send_Song_Name(int flag){    int i,temp, cur_song_ID;      if (flag) {	force_Send_MP3_songname_flag = 0;	return 1;    }	    if (STREAM_type != MP3_ID) return 0;    if (force_Send_MP3_songname_flag == 0) return 0;    Send_Buffer[0] = mMP3_SONG_NAME;    cur_song_ID = cur_track_index + 1;    temp = cur_song_ID/100;    Send_Buffer[1] = temp;    temp = cur_song_ID - temp*100;    Send_Buffer[2] = (hex2bcd[temp] & 0xff);      mp3_file_name_ptr = (unsigned char *)iso9660_file[cur_track_index].name;     for (i=3; (i<23)&&(*mp3_file_name_ptr); i++) { 	  /* Max send out charactors are 20 */	  Send_Buffer[i] = (unsigned char) *mp3_file_name_ptr++;     }     Send_Buffer[i++] = 0;      Make_Check_Sum(i);     Total_Byte = i+1;     return 1;}int Task_MP3_Send_Dir_Name(int flag){    int i, temp;    int cur_dir_ID;      if (flag) {	force_Send_MP3_directory_name_flag = 0;	return 1;    }	     if ( STREAM_type != MP3_ID) return 0;    if ( mp3_cur_dir_index != mp3_dir) {        /*Jump from a dir to another automatically, need it */         mp3_cur_dir_index = mp3_dir;         force_Send_MP3_directory_name_flag = 1;    }    if (force_Send_MP3_directory_name_flag == 0 ) return 0;    Send_Buffer[0] = mMP3_DIRECTORY_NAME;    cur_dir_ID = mp3_cur_dir_index + 1;    temp = cur_dir_ID/100;    Send_Buffer[1] = temp;    temp = cur_dir_ID - temp*100;    Send_Buffer[2] = (hex2bcd[temp]&0xff);     mp3_file_name_ptr = (unsigned char *) \                  iso9660_dir[real_track[mp3_cur_dir_index]].name;    for (i=3; (i<23)&&(*mp3_file_name_ptr); i++) {	 /* Max send out charactors are 20 */         Send_Buffer[i] = (unsigned char) *mp3_file_name_ptr++;    }    Send_Buffer[i++] = 0;    Make_Check_Sum(i);    Total_Byte = i+1;    return 1;}int Task_Servo_Info(int flag){    extern unsigned char cd_stop;      if (flag) {        force_Servo_Info_flag = 0;	return 1;     }     if (force_Servo_Info_flag == 0) return 0;     Send_Buffer[0] = mHOME_POSITION;     Send_Buffer[1] = cd_stop;     Make_Check_Sum(2);     Total_Byte = 3;	     return 1;}int Task_mp3_title(int flag){    int i;    char *temp;    if (flag) {        force_mp3_title_flag = 0;        return 1;    }    if (force_mp3_title_flag == 0) return 0;#ifdef USE_ID3_INFO    temp = &(ID3_info->song_title[0]);    Send_Buffer[0] = mMP3_SONG_TITLE;    for (i= 1; (i<31)&&(*temp); i++){         Send_Buffer[i] = *temp++;    }     Send_Buffer[i++] = 0;    Make_Check_Sum(i);    Total_Byte = i+1;#else    Total_Byte = 0;#endif    return 1;}int Task_mp3_artist(int flag){    int i;    char *temp;    if (flag) {        force_mp3_artist_flag = 0;        return 1;    }    if (force_mp3_artist_flag == 0) return 0;#ifdef USE_ID3_INFO    temp = &(ID3_info->artist[0]);    Send_Buffer[0] = mMP3_ARTIST;    for (i= 1; (i<31)&&(*temp); i++){          Send_Buffer[i] = *temp++;    }    Send_Buffer[i++] = 0;    Make_Check_Sum(i);    Total_Byte = i+1;#else    Total_Byte = 0;#endif    return 1;}int Task_mp3_album(int flag){    int i;    char *temp;    if (flag) {        force_mp3_album_flag = 0;        return 1;    }    if ( STREAM_type != MP3_ID ) return 0;    if (force_mp3_album_flag == 0) return 0;#ifdef USE_ID3_INFO    temp = &(ID3_info->album[0]);    Send_Buffer[0] = mMP3_ALBUM;    for (i= 1; (i<31)&&(*temp); i++){          Send_Buffer[i] = *temp++;    }    Send_Buffer[i++] = 0;    Make_Check_Sum(i);    Total_Byte = i+1;#else    Total_Byte = 0;#endif    return 1;}int Task_mp3_year(int flag){    int i;    char *temp;    if (flag) {        force_mp3_year_flag = 0;        return 1;    }    if ( STREAM_type != MP3_ID ) return 0;    if (force_mp3_year_flag == 0) return 0;#ifdef USE_ID3_INFO    temp = &(ID3_info->year[0]);    Send_Buffer[0] = mMP3_YEAR;    for (i= 1; i<5; i++){          Send_Buffer[i] = *temp++;    }    Make_Check_Sum(i);    Total_Byte = i+1;#else    Total_Byte = 0;#endif    return 1;}int Task_cdt_title(int flag){    int i;    unsigned char *temp;    if (flag) {        force_cdt_title_flag = 0;        hs_cdt_track_num = cur_track_number;        return 1;    }    if ((force_cdt_title_flag == 0)         && (hs_cdt_track_num == cur_track_number))        return 0;#ifdef CD_TEXT     if (!CDT_data_ready)  return 0;     extern CD_T cd_t;    if (!cd_t) return 0;    temp = (cd_t->Track_Titles[cur_track_number]);    Send_Buffer[0] = mCDT_TRACK_TITLE;    for (i= 1; (i<31)&&(*temp); i++){         Send_Buffer[i] = *temp++;    }    Send_Buffer[i++] = 0;         Make_Check_Sum(i);    Total_Byte = i+1;#else    Total_Byte = 0;#endif    return 1;}int Task_cdt_artist(int flag){    int i;    unsigned char *temp;    if (flag) {        force_cdt_artist_flag = 0;        hs_cdt_track_num0 = cur_track_number;        return 1;    }    if ((force_cdt_artist_flag == 0)        && (hs_cdt_track_num0 == cur_track_number))        return 0;#ifdef CD_TEXT    if (!CDT_data_ready)  return 0;    extern CD_T cd_t;    if (!cd_t) return 0;    temp = (cd_t->Performers[cur_track_number]);    Send_Buffer[0] = mCDT_TRACK_ARTIST;    for (i= 1; (i<31)&&(*temp); i++){         Send_Buffer[i] = *temp++;    }    Send_Buffer[i++] = 0;    Make_Check_Sum(i);    Total_Byte = i+1;#else    Total_Byte = 0;#endif    return 1;}void Make_Check_Sum(int Number){     int i;     Send_Buffer[Number] =0;     for (i=0;i<Number;i++)          Send_Buffer[Number]+=Send_Buffer[i];}

⌨️ 快捷键说明

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