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

📄 chips.c

📁 ct952 source code use for Digital Frame Photo
💻 C
📖 第 1 页 / 共 5 页
字号:
    case CHIPS_NORMAL:        __bEchoLevel = CHIPS_DEFAULT_ECHO;        break;    case CHIPS_TOGGLE:        break;    case CHIPS_LEVEL:        return __bEchoLevel;    case CHIPS_SUPPORT:        return TRUE;    default:        break;    }    //Kevin1.05, modify	//W99AV_WriteDM(W99AV_DM_ECHO_CR0, (((WORD)0x5B*__bEchoLevel/ECHO_LEVEL)<<4) | 0x4 );  //scaling factor = 4/16	if(!__bEchoLevel)    {        HAL_WriteAM(HAL_AM_ECHO_CR, 0x808);    }	else    {        HAL_WriteAM(HAL_AM_ECHO_CR, (((WORD)0x5B*__bEchoLevel/ECHO_LEVEL)<<4) | 0x8 );  //scaling factor = 8/16    }    OSD_OUTPUT_MACRO(MSG_ECHO, __bEchoLevel, 0x3);    return TRUE;}//  *********************************************************************//  Function    :   CHIPS_DownMixMode//  Description :   set AC3 downmix mode at run time//  Arguments   :   bMode://                      DOWNMIX_LORO : LoRo//                      DOWNMIX_LTRT : LtRt//  Return      :   None//  Side Effect :   None//  *********************************************************************//Kevin1.07, createvoid CHIPS_DownMixMode(BYTE bMode){    switch(bMode)    {    case AC3_DOWNMIX_LORO:        HAL_WriteAM(HAL_AM_AC3_DOWNMIX_MODE, 0);        // J500KWShih_220, set down mix mode for SD0        if(__SetupInfo.bAudioAnalogOut == SETUP_AUDIO_ANALOG_OUT_2CH)        {            //DBG_Printf(DBG_THREAD_CHEERDVD, DBG_INFO_PRINTF, "Lo/Ro");            HAL_WriteAM(HAL_AM_CHANNEL_MODE, CHIPS_LR);        }        break;    case AC3_DOWNMIX_AUTO:        HAL_WriteAM(HAL_AM_AC3_DOWNMIX_MODE, 2);        break ;    case AC3_DOWNMIX_LTRT:    default :        HAL_WriteAM(HAL_AM_AC3_DOWNMIX_MODE, 1);        // J500KWShih_220, set down mix mode for SD0        if(__SetupInfo.bAudioAnalogOut == SETUP_AUDIO_ANALOG_OUT_2CH)        {            //DBG_Printf(DBG_THREAD_CHEERDVD, DBG_INFO_PRINTF, "Lt/Rt");            HAL_WriteAM(HAL_AM_CHANNEL_MODE, CHIPS_LRD);        }        break;    }}//  *********************************************************************//  Function    :   CHIPS_MICControl//  Description :   Toggle between mic effect levels//                  w9922qf doesn't support mic control//  Arguments   :   bON ://                      CHIPS_TOGGLE, toggle between mic level//  Return      :   TRUE : supported and carried out//                  FALSE : Not supported//  Change      ://  Side Effect ://  *********************************************************************BYTE CHIPS_MICControl(BYTE bON){// DVD_102Micky, support MIC on/off#ifdef SUPPORT_MIC_CONTROL    if(bON == CHIPS_ON)        __sbMuteMic = 1;    else if(bON == CHIPS_OFF)        __sbMuteMic = 0;#else //#ifdef SUPPORT_MIC_CONTROL#ifdef SUPPORT_MIC_CONTROL_INV    if(bON == CHIPS_ON)        __sbMuteMic = 0;    else if(bON == CHIPS_OFF)        __sbMuteMic = 1;#else //#ifdef SUPPORT_MIC_CONTROL_INV    return FALSE;#endif //#ifdef SUPPORT_MIC_CONTROL_INV#endif //#ifdef SUPPORT_MIC_CONTROL    return TRUE;}//  *********************************************************************//  Function    :   CHIPS_VolumeControl//  Description :   It will do volume level control according to the parameter//  Arguments   :   bFunction:      The type of command//                      CHIPS_UP : control up 1 level//                      CHIPS_DOWN : control down 1 level//                      CHIPS_NORMAL : set to default level//                      CHIPS_TOGGLE : toggle between levels in range//                      CHIPS_LEVEL : return current level//                      CHIPS_SUPPORT : return if this function supported//  Return      :   TRUE : Supported/Succeeded//              :   FALSE : Not supported//  Change      :   Will open audio if mute//  Side Effect ://  *********************************************************************DWORD CHIPS_VolumeControl(BYTE bFunction){    //Kevin2.81, Filter if the desired function is supported or not in one place    if (!_CHIPS_FilterFunSupport(CHIPS_VOLUMECONTROL))    {        return FALSE;    }    switch(bFunction)    {    case CHIPS_UP:        //_TuneAudioVolume(TRUE);        //Kevin2.81 delete _TuneAudioVolume()        __dwVolAudio += VOLUME_GAP;        if(__dwVolAudio > VOLUME_MAX)        {            __dwVolAudio= VOLUME_MAX;        }//#ifdef CT950_STYLE //       DVDSETUP_SaveVolume();//#endif //CT950_STYLE        break;    case CHIPS_DOWN:        //_TuneAudioVolume(FALSE);        //Kevin2.81 delete _TuneAudioVolume()        if( __dwVolAudio < VOLUME_MIN + VOLUME_GAP)        {            __dwVolAudio = VOLUME_MIN;        }        else        {            __dwVolAudio -= VOLUME_GAP;        }//#ifdef CT950_STYLE//        DVDSETUP_SaveVolume();//#endif //CT950_STYLE        break;    case CHIPS_LEVEL:        return __dwVolAudio;    case CHIPS_NORMAL:        __dwVolAudio = VOLUME_DEFAULT;#if 0// def 0//CT950_STYLE        DVDSETUP_SaveVolume();#endif //CT950_STYLE        break;    case CHIPS_TOGGLE:        break;    case CHIPS_SUPPORT:        return TRUE;    default:        return FALSE;    } // switch(bFunction)//DVD018    if(__btMute)    {        //DVD018        // J500KWShih_218, fixed mantis bug 1400 and 1563,        HAL_IOMute(FALSE);       __btMute = FALSE ;       OSD_OUTPUT_MACRO(MSG_MUTE, __btMute, 0);    }    CHIPS_OpenAudio(TRUE);    OSD_OUTPUT_MACRO(MSG_VOLUME, (__dwVolAudio / VOLUME_GAP), 3);    return TRUE;}#ifndef NO_MIC_INPUT//  *********************************************************************//  Function    :   CHIPS_MICVolControl//  Description :   Do MIC volume level control//  Arguments   :   bFunction:      The type of command//                      CHIPS_UP : control up 1 level//                      CHIPS_DOWN : control down 1 level//                      CHIPS_NORMAL : set to default level//  Return      :   None//  Side Effect :   None//  *********************************************************************void    CHIPS_MICVolControl( BYTE bFunction){    switch(bFunction)    {        case    CHIPS_UP:                __wMICVol += MIC_VOL_GAP ;                if ( __wMICVol > MIC_VOL_MAX )                    __wMICVol= MIC_VOL_MAX;                break;        case    CHIPS_DOWN:                if ( __wMICVol < MIC_VOL_MIN + VOLUME_GAP)                    __wMICVol = MIC_VOL_MIN;                else                    __wMICVol -= MIC_VOL_GAP;                break;        case    CHIPS_NORMAL :                __wMICVol = MIC_VOL_DEFAULT ;                break;    }    HAL_WriteAM(HAL_AM_MIC_PCM_SCALE, __wMICVol);    OSD_OUTPUT_MACRO(MSG_VOLUME, (__wMICVol / MIC_VOL_GAP), 3 ); //kevin909, remove _bVolOrMIC & add MSG_MICVOLUME later}#endif//  *********************************************************************//  Function    :   CHIPS_ChannelSwitch//  Description :   It will set the desired channel mode//  Arguments   :   bCh:      The type of channel//                      CHIPS_LRD : Audio is Stereo (LR) Dolby Surround Compatible//                      CHIPS_C : Audio is Center//                      CHIPS_LR : Audio is LR//                      CHIPS_LCR : Audio is LCR//                      CHIPS_LRLS : Audio is LRLs//                      CHIPS_LCRLS : Audio is LCRLs//                      CHIPS_LRLSRS : Audio is LRLsRs//                      CHIPS_LCRLSRS : Audio is LCRLsRs//  Return      :   TRUE : Succeeded//              :   FALSE : Out of range//  Change      ://  Side Effect ://  *********************************************************************#if 0   // TCC274, _bChannelMode should reference setupinfo.BYTE    CHIPS_ChannelSwitch(BYTE bCh){    if (bCh > CHIPS_LCRLSRS)        return FALSE ;    _bChannelMode = bCh ;    CHIPS_OpenAudio(TRUE);    //OSD_OUTPUT_MACRO(MSG_CHANNEL, bCh, 3 );    return TRUE;}#endif//  *********************************************************************//  Function    :   CHIPS_LFEEnable//  Description :   It will turn LFE on/off//  Arguments   :   bParam:      The type of channel//                      TRUE : Turn LFE on//                      FALSE : Turn LFE off//  Return      :   None//  Change      ://  Side Effect ://  *********************************************************************#if 0   // TCC274, _bLFE should reference setupinfo.void    CHIPS_LFEEnable(BYTE bParam){    if (bParam)        _bLFE = 1 ;    else        _bLFE = 0 ;    CHIPS_OpenAudio(TRUE);    //OSD_OUTPUT_MACRO(MSG_LFE, _bLFE, 3 );}#endif//  *********************************************************************//  Function    :   CHIPS_AC3KokMode//  Description :   It will do ac3 karaoke control according to the parameter//                  Modes://                      VOCAL_NOVOCAL//                      VOCAL_LEFT//                      VOCAL_RIGHT//                      VOCAL_STEREO//  Arguments   :   bFunction:      The type of command//                      CHIPS_UP : control up 1 level//                      CHIPS_DOWN : control down 1 level//                      CHIPS_NORMAL : set to default level//                      CHIPS_TOGGLE : toggle between levels in range//                      CHIPS_LEVEL : return current level//                      CHIPS_SUPPORT : return if this function supported//  Return      :   TRUE : Supported/Succeeded//              :   FALSE : Not supported//  Change      ://  Side Effect ://  *********************************************************************BYTE CHIPS_AC3KokMode(BYTE bMode){    // TCC050a, only AC3 support vocal.    if(_bAudType != AUDIO_AC3)    {        return FALSE;    }    switch(bMode)    {    case CHIPS_UP:        if(__bVocal < VOCAL_ON)        {            __bVocal++;        }        break;    case CHIPS_DOWN:        if(__bVocal > VOCAL_OFF)        {            __bVocal--;        }        break ;    case CHIPS_NORMAL:        __bVocal = 0;        break ;    case CHIPS_TOGGLE:// TCC104, if defined ENABLE_AUTOVOCAL, only has 2 modes (On/Off)#ifdef ENABLE_AUTOVOCAL        if(__bVocal == VOCAL_OFF)        {            __bVocal = VOCAL_ON;        }        else        {            __bVocal = VOCAL_OFF;        }#else        __bVocal++;        __bVocal %= 4;#endif        break;    case CHIPS_LEVEL:        return __bVocal;    case CHIPS_SUPPORT:        return TRUE;    default:        break;    }    CHIPS_OpenAudio(TRUE);#ifdef SUPPORT_PRINTF    switch(__bVocal)    {    case VOCAL_OFF:        DBG_Printf(DBG_THREAD_CHEERDVD, DBG_INFO_PRINTF, "AC3 No Vocal\n");        break;    case VOCAL_LL:        DBG_Printf(DBG_THREAD_CHEERDVD, DBG_INFO_PRINTF, "AC3 Left Vocal\n");        break;    case VOCAL_RR:        DBG_Printf(DBG_THREAD_CHEERDVD, DBG_INFO_PRINTF, "AC3 Right Vocal\n");        break;    case VOCAL_ON:    default:        DBG_Printf(DBG_THREAD_CHEERDVD, DBG_INFO_PRINTF, "AC3 Stereo Vocal\n");        break;    }#endif    // Current no suitable OSD to show    OSD_OUTPUT_MACRO(MSG_VOCAL, __bVocal, 3);    return TRUE;}//  *********************************************************************//  Function    :   CHIPS_DualMode//  Description :   It will do ac3 dual mode control according to the parameter//                  Modes://                  DUAL_STEREO//                  DUAL_LEFTMONO//                  DUAL_RIGHTMONO//                  DUAL_MIXEDMONO//  Arguments   :   bFunction:      The type of command//                      CHIPS_UP : control up 1 level//                      CHIPS_DOWN : control down 1 level//                      CHIPS_NORMAL : set to default level//                      CHIPS_TOGGLE : toggle between levels in range//                      CHIPS_LEVEL : return current level//                      CHIPS_SUPPORT : return if this function supported//  Return      :   TRUE : Supported/Succeeded//              :   FALSE : Not supported//  Change      ://  Side Effect ://  *********************************************************************#if 0   // TCC274, _bDualMode should reference __bModeChannel.BYTE    CHIPS_DualMode(BYTE bMode){    switch(bMode)

⌨️ 快捷键说明

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