亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? initial.bak.c

?? 車載電子影音系統dvd播放系統原程序代碼
?? C
?? 第 1 頁 / 共 5 頁
字號:
//////////////////////////////////////////////////////////
// ******  Big modification History Area  ******
// LLY.172q, fix "non-give argument type of function prototype" for "ARM" warnning message
// LLY.274, some big modification
// [1] rename all MP3 relative info. because module name has changed !!
//     - "mp3.h"  -->  "fmanager.h"
//     - MP3_CheckMP3Disc()  -->  MP3_CheckPlayableCDROM()

// LLY2.80, Remove some un-necessary code
// [1] COMBO_SYSTEM
// [2] _QChannelTorelence(), because the action will be done with UTL_ReadSector()

// Micky2.80a
//  - remove MULTI_DISC_SYSTEM codes
// LLY2.80a,
//  - remove ADD_BACKGND_FOR_CDDA codes
//  - remove the code while define "SUPPORT_SW_REROUTE" by H/W
//    because it's only necessary for BA5580E chip
//  - remove the code "SW_VERSION < 39"
//////////////////////////////////////////////////////////
//LJY1.10,
// - Remove the reference of CHIP_W9928
//LJY1.21,
// - Remove __btVideoFreeze, __btFreeze, __btEnableBookMarkPlay.

//////////////////////////////////////////////////////////////
// *****  Include header file Area  *****
// The file "winav.h" must be included in first line
#include "winav.h"
#include "w99av.h"
#include "initial.h"
#include "utl.h"
#include "hal.h"
#include "servo.h"
#include "input.h"
#include "cdinfo.h"
#include "avsys.h"  // LLY.277a-2

#ifdef  _WINDVD
#include "navigate.h"
#endif  // #ifdef _WINDVD

#include "digest.h"
#include "chips.h"
#include "cc.h"
#include "isr.h"
#include "osd.h"
#include "setup.h"   // DVD_028 Micky added
#include "linear.h"     // wyc.pro added
#include "ucode.h"   // ** TCH1.55;
#include "dvdinfo.h"  // LLY.171
#include "sysdebug.h"
#include "thumb.h"  // LLY2.80
#include "amp.h"
#include "gdi.h"

#ifndef NO_MP3
#include "fmanager.h"
#endif  // #ifndef NO_MP3
#include <string.h>
// Micky2.31, reduce codes, don't use C string API
#include "ctstring.h"
#ifdef TFT_CONTROL
#include "tft.h"
#endif

/////////////////////////////////////////////////////////////
//  Extern other module's global variable Area
extern  BYTE    __bDigestStyle;     // in cc.c
extern  BYTE    __bInvalidRegion;   // in cc.c
extern  BYTE    _bLastSession;      // in ser_ata.c
#ifdef PRESTOP_BEFORE_SETUP_AND_PROGRAM //XuLi.230
extern BYTE __bProgramStop;
extern BYTE __bPreCountStop;
#endif
////////////////////////////////////////////////////////////
// *****  Define some global variable Area  *****//
// [1] Tolerance time for reading sector
//     In CDIF path: must give the tolerance value for servo seeking, ex 5 sector
//     In ATAPI path: it's unnecessary, the value alwasy "zero"
// LLY2.80, it's necessary to give the default value, because it will be set
//          within ReadTOC() & UTL_ReadSector()
// [G-4bytes]
DWORD   __dwTimeTorelence; //= 0;

// [2] The real sectors that will jump for each SCAN action
// LLY2.80, remove to CC module, becasue it only be updated within it.
// it's unnecessary to give the default value, becasue it will be set
//          before issue SCAN command !!
// [G-2bytes]
//WORD    __wScanGap;//=750;

// LLY2.78b-2, add a variable to keep initial status
// [3] Initial status info.
// Using bit addressing, ie. one bit means one mode status.
// Notice: Must merge all similiar status into this variables
// [G-1bytes]
BYTE    __bInitialStatus;

// [5] Internal temp usage variables
// [G-5bytes]
BYTE    _bINITIALTemp;
DWORD   _dwINITIALTemp; // LLY.161

////////////////////////////////////////////////////////////
// ***** Extern other module's global variable Area ***** //
extern  BYTE    __bDigestStyle;      // in cc.c

// Brian.170, for SW detect MIC & auto vocal
#ifdef  ENABLE_AUTOVOCAL
extern DWORD __dwMICDectectInterval;
extern bit   _btPreMICDetect;
extern BYTE  _bMICOffCount;
#ifdef  SW_MIC_DETECT
extern bit __sbMICDetect;
#endif  // #ifdef  SW_MIC_DETECT
#endif  // #ifdef  ENABLE_AUTOVOCAL

///////////////////////////////////////////////////////////////////////
// ***** Constant Code Define Area  ***** //
// LLY.273, give pseudo code for constant code usage
// Otherwise, it will be linker error if F/W specify constant code location
// Example, if F/W enable AUTO_UPGRADE feature, F/W will use constant string "BIN"
//          and, no constant code exist while disable AUTO_UPGRADE feature
BYTE code PseudoCode[]={0};
#ifdef SUPPORT_PORTABLE_PROJECT
BYTE __bKeyInputEnable;     //added for portable
BYTE    __bTopOpen;
BYTE   __bTopInitial=1;
#endif
// CZ1.10-3
#ifdef SHOW_6_DISPLAY_MODE
//wendy1.07 record HDCD disctype,
//Because __bCDDA_DTS will be updated to CDDA title after 1st time checking as HDCD,
//we must use another variable to record the disc type at running time.
BYTE __bDiscHDCDType;//=FALSE; //LJY2.31, no need to initialize it
#endif

// Micky1.24, make sure that servo send correct dvdinfo data
// used for DVDINFO reference
// bit 4=0, ISO_9660 must be correct
// bit 0=0, DVDINFO must be correct
BYTE __bDataRequest;

// wyc1.24a, one function to display first time LOGO.
void    INITIAL_ShowFirstLOGO();

extern BYTE _OSD_ShowLogo();

//  LLY.102p, re-arrange the sequence of INITIAL_System
//  *********************************************************************
//  Function    :   INITIAL_System
//  Description :   Some steps for Player wake-up
//                  [1] uP [2] Variables [3] PANEL/OSD [4] Servo
//                  [5] MPEG Decoder [6] TV Encoder [7] Audio DAC
//  Arguments   :   NONE
//  Return      :
//  Side Effect :
//  *********************************************************************
// LLY.171-2, re-arrange the procedure for INITIAL_System()
// Give the parameter, merge some procedure into HAL_PowerDown()
void INITIAL_System(BYTE bMode)
{
// Micky1.23, support DVD_T
// seems W99AV_Initial will do the initial????? confirm w/ D700
#ifdef  SUPPORT_DVD_T
        //GPCR1[15:0]: output value  GPCR1[31:16]: I/O direction: 0: input mode 1: output mode
        //Kevin1.25, fix CTMan DVD IR power off -> power on => PM jumps to STB in flash (GPA7 is set to be high due to input mode)
        // W99AV_Initial has done the initialization
        //__wW99AVGPCRLow = __wW99AVGPCRHigh= 0 ;
#endif  //#ifdef  SUPPORT_DVD_T

    // uP and global variables initial action only need to do once time
    // while 1st H/W power on
    if(bMode & HARDWARE_SHUTDOWN)
    {
        // Step 1: Initialize uP
        //DVD_051Micky, initial uP should be done first
        INITIAL_uProcessor ();

        // Step 2: Initialize all global variables
        // LLY2.80, Don't put this procedure too late !!
        // Otherwise, something maybe wrong if following API
        // must refer those variable within it !!
        // wyc.172r, move this function to below part.
        // ** TCH1.60-1; Move global initial into here for saving code.
        _INITIAL_Variables_PowerON ();

        // LLY2.81, remove AUX channel initial procedure into HAL_PowerDown()
        // Because, it must be done while enter/ exit power down mode

        //LJY0.95, only H/W power-on needs to disable service 420. Ex. servo still needs to be served while IR power-down, otherwise
        //        the pick-up's behavior would be abnormal.
        // LJY1.00, remove the define of "ONE_CPU"
        {
            extern BIT INIT_420_1(void);
            // suspend 420's main flow. Only can be released after 420 initial OK.
            INIT_420_1();
        }

    }

    // Something need to do for 1st H/W power and total shutdown
    if( !(bMode & PSEUDO_SHUTDOWN) )
    {
        // Step 3: Initialize some necessary pio pin
#ifdef  SYSTEM_8051
#ifdef  _WINDVD

#ifdef  SUPPORT_POWERDOWN_CONTROL
        __sbPowerDown= NULL;     // active HIGH, means power-down enable
#endif  // SUPPORT_POWERDOWN_CONTROL

#ifdef  SUPPORT_AUTOUPGRADE_CONTROL
        __sbAutoUpgrade= 1;     // active HIGH, means SRAM enable
#endif  // SUPPORT_AUTOUPGRADE_CONTROL

#endif  // _WINDVD
#endif  //#ifdef  SYSTEM_8051

        // Step 4: Initialize Panel
        // *** ; let PANEL clear immediately
        // Micky0.91, panel is controlled by GPIO
        // must wait till detect base port OK.
//        PANEL_Initial();

#ifndef    POWERON_STANDBY  // ** TCH0.411;
        {
        extern STATUS    gcShowStatus;
        gcShowStatus.bPowerDown= FALSE;     // let PANEL can show information
        }
        // Micky0.91, panel is controlled by GPIO
        // must wait till detect base port OK.
//        PANEL_Output ( MSG_WAITING, NULL ); // ** S-TCH;
#endif    // POWERON_STANDBY    // ** TCH0.411;

        // Step 5: Initial/ Wake-up MPEG chip
        // All thing need to do or re-do while total shutdown case -- only uP and SRAM active
        // Ex. Base port detecting, set PLLCR, load return code, initial PWRCR
        //     load ucode, initial VCR
        // Detect Base Port for our Decoder IC
        // Add protection method for detecting base port fail
        for ( _bINITIALTemp=0; _bINITIALTemp< 10; _bINITIALTemp++ )
        {
            __btTemp= W99AV_DetectBasePort ();
            if(__btTemp)    // latch base port successfully
            {
                break;
            }
            else    // latch base port fail
            {
#ifdef  _DEBUG_INFO
                PANEL_Output(MSG_VERSION, (WORD)(64000+ _bINITIALTemp) );
#ifdef  SUPPORT_PRINTF
                printf("#### Detect base port fail -- %d !!\n", _bINITIALTemp);
#endif  // #ifdef SUPPORT_PRINTF
#endif  // #ifdef _DEBUG_INFO
                UTL_DelayTime ( COUNT_200_MSEC, FALSE );
            }
        }   // for ( _bHALTemp )

        //Kevin2.26, integrate chip version & part no.
        W99AV_DetectChipVersion();
#ifdef SUPPORT_AVIN
		TFT_MUTE_ON(TRUE);
#endif
        //Kevin1.00, H/W mute to avoid the H/W power-on bo noise when outputing PCMCLK/PCMWS to ADAC for the first time 
        HAL_HardwareMute(TRUE); //H/W mute

        // Micky0.91, panel is controlled by GPIO
        // must wait till detect base port OK.
        PANEL_Initial();    // KCHong 0.90
        // LLY2.80, remove this procedure into W99AV_DetectBasePort()'s last stage !!
        // Otherwise, nobody knows when to un-reset the pin
        // Un-reset the TVE_RST pin after VCR setting is ok !!

        // Step 7: Turn-off TV encoder to avoid "un-stable TV screen" appear
        // Must add after MPEG chip waking-up,
        // Otherwise, the action maybe fail if it use "GPIO" to control TV encoder
        _TVEncoderOff();
    }

// Micky1.23-2 support resume info from EEPROM
// Ming2.36, support multi-disc resume from EEPROM.
// Use the new RESUME mechanism, so mark it.
//#ifdef  SUPPORT_RESUME_EEPROM
//    _Detect_Resume_Information();
//#endif  //#ifdef  SUPPORT_RESUME_EEPROM

    // Step 8: Read-back some necessary setup info. while 1st H/W power on
    if(bMode & HARDWARE_SHUTDOWN)
    {
        SETUP_Initial(SETUP_POWERON_INITIAL);
        
        //Kevin1.24aDVD_T
#ifdef  SUPPORT_DVD_T
        //Kevin1.25, use xdata instead of EEPROM to decide the __bReduceSTBtoDVDtime flag
        //__bReduceSTBtoDVDtime = HAL_EEPROM_Read(SETUP_ADDR_SEEK_FLAG);
        //HAL_EEPROM_Write(SETUP_ADDR_SEEK_FLAG, FALSE); //clear flag 
        {
            extern DWORD   xdata __dwReservedDWORD;

            if ( __dwReservedDWORD == 0x12345678 )  //magic key
                __bReduceSTBtoDVDtime = TRUE;
            else 
                __bReduceSTBtoDVDtime = FALSE;

            __dwReservedDWORD = 0; //clear
        }
#endif
        
    }

    // Step 9: Merge the necessary thing to HAL_PowerDown()
    //         Ex. MPEG chip, TV encoder, Audio DAC, Servo, SCART ...
    HAL_PowerDown(bMode);
//LJY2.39,  show logo after ucode unzip.
#ifndef SUPPORT_SHOWLOGO_AFTER_UNZIP
    // wyc1.24a, when define SUPPORT_GZIP_COMPRESSION, move the code of display LOGO earily.
#ifdef    SUPPORT_GZIP_COMPRESSION  
    //CoCo1.21, Load palette before clearing region.
    GDI_LoadPalette(3);

    //Brian0.87, move from GDI.C
#ifdef CT908_UI
    // Brian1.10, initialize color mode for the case of one OSD region only
    __bColorMode = COLOR_MODE_4_BIT;
    GDI_ClearRegion_By_RISC(0);



#ifndef USE_ONE_OSD_REGION
    __bColorMode = COLOR_MODE_8_BIT;
    GDI_ClearRegion_By_RISC(1);
#endif

    __bColorMode = COLOR_MODE_8_BIT;
    // Brian1.24-3, it will clear the icon bmp uzipped in _PrepareLoadCode2, and we don't want this happen.
    // In fact, there is no need to clear the bmp region at all. 
    //GDI_ClearRegion_By_RISC(2);
#endif
#ifndef   POWERON_STANDBY	//xuli2.36, PowerOnStandby
    INITIAL_ShowFirstLOGO();
#else    
    if(!(bMode & HARDWARE_SHUTDOWN )) //xuliPowerOnStandby
   	{
   	    INITIAL_ShowFirstLOGO();
    }
    else
   	{
   	    W99AV_Reset(W99AV_RESET_TOTAL);//xuliPowerOnStandby
   	}
#endif
#endif // 

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人av在线播放网址| 国产成人av福利| 欧美日免费三级在线| 国产精品午夜免费| 欧美精品色一区二区三区| 亚洲欧美日本在线| 99久久伊人精品| 亚洲天天做日日做天天谢日日欢| 成人av网站大全| 国产精品美女久久久久久久网站| 成人免费av网站| 中文字幕在线不卡视频| 91女厕偷拍女厕偷拍高清| 亚洲色图在线播放| 在线观看视频91| 丝瓜av网站精品一区二区| 欧美放荡的少妇| 六月婷婷色综合| 2021国产精品久久精品| 久久爱www久久做| 久久久久久久久久久久久久久99| 国产精品一区二区男女羞羞无遮挡 | 91丝袜高跟美女视频| 一区二区中文字幕在线| 一本色道a无线码一区v| 亚洲福利视频一区二区| 在线播放视频一区| 美女脱光内衣内裤视频久久网站 | 欧美bbbbb| 欧美日韩综合在线| 免费观看一级欧美片| 精品处破学生在线二十三| 国产成人日日夜夜| 亚洲三级在线免费| 欧美日韩成人综合天天影院| 精品在线观看免费| 国产精品美女久久久久久久| 色婷婷综合久久久中文一区二区| 亚洲mv大片欧洲mv大片精品| 精品久久久久一区二区国产| 大陆成人av片| 亚洲激情在线激情| 日韩欧美成人午夜| 成人丝袜高跟foot| 亚洲国产综合色| 精品国产91乱码一区二区三区| 国产成人久久精品77777最新版本 国产成人鲁色资源国产91色综 | 国产精品乱人伦| 日本乱人伦aⅴ精品| 日本免费在线视频不卡一不卡二| 久久综合给合久久狠狠狠97色69| 成人精品国产福利| 亚洲一区二区在线视频| 欧美大肚乱孕交hd孕妇| 精品播放一区二区| 99久久精品免费看国产 | 中文字幕在线观看不卡| 91.com在线观看| 福利一区福利二区| 亚洲午夜三级在线| 久久久久久电影| 精品视频资源站| 国产福利一区二区三区视频| 亚洲一区二区四区蜜桃| 久久网站最新地址| 欧美特级限制片免费在线观看| 国内精品久久久久影院色| 亚洲摸摸操操av| 26uuuu精品一区二区| 日本韩国欧美三级| 国产精品一区二区在线播放| 亚洲成人av免费| 中文成人综合网| 日韩视频免费观看高清完整版| 波多野结衣在线一区| 秋霞影院一区二区| 亚洲精品高清在线| 久久久综合精品| 欧美日韩国产片| 成人91在线观看| 久久99精品国产麻豆婷婷洗澡| 一区二区免费在线播放| 亚洲国产成人一区二区三区| 91精品欧美久久久久久动漫 | 91麻豆精品久久久久蜜臀| 高清久久久久久| 乱一区二区av| 午夜精品久久久久久久蜜桃app| 日本一区二区在线不卡| 日韩一区二区三区av| 色婷婷亚洲婷婷| 成人在线视频一区二区| 久久99精品视频| 午夜精品一区二区三区电影天堂| 中文字幕一区三区| 国产日韩欧美一区二区三区综合| 欧美一级高清大全免费观看| 欧美系列在线观看| 99re8在线精品视频免费播放| 国产一二三精品| 日本美女一区二区三区视频| 一区二区高清免费观看影视大全| 欧美国产精品一区| 精品国产一区二区三区久久影院 | 精品久久久三级丝袜| 欧美日韩成人激情| 欧美在线制服丝袜| 91小视频免费观看| av电影一区二区| 国产精品一二三四| 国内精品国产三级国产a久久| 青青草国产精品97视觉盛宴| 亚洲福利一二三区| 亚洲香肠在线观看| 一二三区精品福利视频| 国产成人精品www牛牛影视| 裸体一区二区三区| 免费在线一区观看| 日韩高清一区在线| 五月天丁香久久| 亚洲成人激情av| 亚洲国产精品自拍| 五月天一区二区三区| 亚洲成人黄色小说| 亚洲aaa精品| 日韩av不卡一区二区| 天堂成人免费av电影一区| 亚洲va韩国va欧美va精品 | 国产精品的网站| 国产精品成人免费在线| 中文字幕在线不卡国产视频| 中文字幕亚洲一区二区va在线| 国产精品美女久久久久高潮| 中文字幕在线不卡| 一区二区三区中文在线| 亚洲一区免费观看| 亚洲一二三专区| 五月婷婷激情综合| 老司机免费视频一区二区| 久久99深爱久久99精品| 国精产品一区一区三区mba桃花| 国产乱码精品1区2区3区| 国产精品18久久久久久久久 | 中文av字幕一区| 自拍偷自拍亚洲精品播放| 丁香啪啪综合成人亚洲小说| 国产jizzjizz一区二区| 99精品国产视频| 欧美亚洲国产bt| 91精品国产入口在线| 精品理论电影在线| 中文字幕欧美激情| 亚洲女性喷水在线观看一区| 亚洲一区二区av在线| 男女男精品视频网| 国产精品亚洲а∨天堂免在线| av不卡免费在线观看| 欧美中文一区二区三区| 欧美一区二区女人| 久久久www成人免费毛片麻豆| 国产精品电影一区二区三区| 一区二区三区视频在线看| 天涯成人国产亚洲精品一区av| 久久精品72免费观看| 成人国产在线观看| 欧美三级一区二区| 精品国产精品网麻豆系列| 亚洲欧美在线视频| 午夜日韩在线观看| 激情国产一区二区 | 国产精品亚洲视频| 色婷婷精品大视频在线蜜桃视频| 欧美精品粉嫩高潮一区二区| 久久精品亚洲国产奇米99| 亚洲人成精品久久久久| 日韩av在线发布| 不卡的看片网站| 911国产精品| 中文字幕av一区 二区| 亚洲尤物在线视频观看| 精品一区二区三区香蕉蜜桃| 99久久亚洲一区二区三区青草| 亚洲欧美在线aaa| 免费观看久久久4p| 99re热视频精品| 日韩一区二区精品葵司在线| 国产日韩欧美a| 亚洲综合色视频| 国产福利精品一区| 欧美日韩一卡二卡三卡| 国产日韩av一区| 亚洲国产一区二区三区青草影视| 国产一区啦啦啦在线观看| 欧美在线不卡视频| 久久久久免费观看| 天天综合日日夜夜精品| 成人免费看片app下载| 欧美一级理论片| 一区二区三区欧美视频| 国产精品69久久久久水密桃|