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

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

?? servo.h

?? 車載電子影音系統dvd播放系統原程序代碼
?? H
字號:
/**************************************************************************

        (C)Copyright Cheertek Inc. 2002-2003,
           D300, all right reserved

        Product : WinDVD Firmware

        Date    : 1999.8.26
        Purpose : Provide all SERVO information
        Sources :

****************************************************************************/

#ifndef __SERVO_H__
#define __SERVO_H__
//MICKYATA
#ifdef __cplusplus
        extern  "C"     {
#endif

//LJY1.22, LJY1.11b, for sector control(CDDA) and OSD time display(CDDA & VCD)
#define SECTOR_512  512 //2048/4=512DW
#define SECTOR_588  588 //2352/4=588DW
#define SECTOR_581  581 //2324/4=581DW, LJY1.24a, for VCD/SVCD 
#define SECTOR_607  607 //(2352+4*19)/5=607DW, For non-CDG RISC code, "55805580" will be inserted per 128bytes.
#define SECTOR_784  784 //((24B data+8B subcode)*98)/4=784DW, RISC won't insert "55805580"
//LJY1.23, share same define for CDG & pure CDDA
#ifdef SUPPORT_CDDA_WITH_SUBCODE
#define SECTOR_CDDA     SECTOR_784
#else
#define SECTOR_CDDA     SECTOR_588 //55805580+2352B for pure CDDA
#endif
// Global Variables
extern BYTE    __bCurrentIF; // using ATAPI_IF 
extern BYTE    __bServoAutoCtrl;

//----------------------------------------------
//              SERVO definition
//----------------------------------------------
#define DISC_TYPE_NONE          0
#define DISC_TYPE_DVD           1
#define DISC_TYPE_DVD_ROM       (0x00|DISC_TYPE_DVD)
#define DISC_TYPE_DVD_RAM       (0x10|DISC_TYPE_DVD)
#define DISC_TYPE_DVD_R         (0x20|DISC_TYPE_DVD)
#define DISC_TYPE_DVD_RW        (0x30|DISC_TYPE_DVD)
#define DISC_TYPE_DVD_PLUS_RW   (0x90|DISC_TYPE_DVD)
#define DISC_TYPE_VCD           0x14    // 2
#define DISC_TYPE_CDI           0x0A    // 3
#define DISC_TYPE_CDDA          0x04
#define DISC_TYPE_UNKNOWN       0xff

#define SERVO_MODE_CDROM        0x08
#ifdef CDDA_WAITSERVO
#define SERVO_MODE_AUDIO        0x10
#else
#define SERVO_MODE_AUDIO        0x00
#endif

// *** MULTI_DISC; Compatible with multiple-disc
#define SERVO_HAVEDISC          0x01
#define SERVO_NODISC            0x00
#define SERVO_WAITSTABLE_TIMEOUT 0x02 //LJY1.05, it means servo cannot focus-on for power-on initial.
#define SERVO_USER_ABORT         0x03 //LJY1.05-2
#define SERVO_LOADDISC_FAILED	0x04 //LJY1.25, Support opentray when servo fails to close tray.
#define SERVO_COMMAND_FAIL      0xff

// Error Status
#define ERR_RESPONSE            0xff
#define ERR_NOFOUND             0
#define ERR_SERVO_READ          1
#define ERR_SERVO_JUMP          2
#define ERR_SERVO_TRAY          3
#define ERR_SERVO_SET           4
#define ERR_SERVO_INFO          5

#define SERVO_END_TIME          0x7fffffffL

// TCC037, for control threshold
#define	SERVO_THRESHOLD_DISABLE		0x01
#define	SERVO_THRESHOLD_ENABLE		0x02
#define	SERVO_THRESHOLD_VIDEO		0x03
#define	SERVO_THRESHOLD_AUDIO		0x04
/////////////////////////////////
//LJY1.25, Support opentray when servo fails to close tray.
#define TRAY_OPENED        0x00
#define TRAY_OPENING     0x04
#define TRAY_CLOSED       0x08
#define TRAY_CLOSING     0x0C

////////////////////////////////////////////
// TCC172, For returning error status of the atapi command
#define SERVO_ERROR_NONE    		0	// No Error
#define SERVO_ERROR_CMD     		1	// Command Error
#define SERVO_ERROR_NOTREADY		2	// Device not ready(2/xx/xx)
#define SERVO_ERROR_NODISC     		3	// No Disc in tray(2/3a/xx)
#define SERVO_ERROR_LOADDISC     	4	// Loading disc (2/4/xx)
#define SERVO_ERROR_AUTH	     	5	// Authentication Error
#define SERVO_ERROR_INCOMPAT     6		// Imcompatible disc type. Usually incorrect command
#define SERVO_ERROR_TIMEOUT     	7	// Timout Error. (atapi timeout)
#define SERVO_ERROR_READ     		8	// Read Command Error
#define SERVO_ERROR_DMA     		9	// DMA Error (DMA timeout w/o buffer full)
#define SERVO_ERROR_DEAD     		10	// Dead Error (DMA timeout+buffer full)
#define SERVO_ERROR_USERABORT		11	// Means the command isn't issued/finished by IR key abort
#define SERVO_ERROR_UNKNOWN			12	// Unknow Error Type

////////////////////////////////////////////
// TCC155, default a/v threshold
#define SERVO_DEFAULT_VIDEO_THRESHOLD   0xa000
//Kevin0.90, modify
//Currently, audio buffer size=8KDW and audio buffer underflow threshold=5KDW. The 1KHz-AC3 break noise may be due to the RISC performance issue for that RISC has to frequently deal with the input bitstream when audio buffer remainder is less than the  underflow threshold.
//=> Temp. sloution: use a small audio underflow threshold, say 1.25KDW.  The setting seems OK for other DVD tiltes (AC3/DTS/LPCM). Integrate into DVD_090.
//#define SERVO_DEFAULT_AUDIO_THRESHOLD       0x1400/4  

// Brian0.90, before this issue is cleared, use the original value.
#define SERVO_DEFAULT_AUDIO_THRESHOLD   0x1400  

////////////////////////////////////////////
// TCC170, power mode for atapi
// wyc.171-3, modify the parameter for SERVO_PowerMode
#define SERVO_POWER_STOP          0x0
#define SERVO_POWER_IDLE          0x20
#define SERVO_POWER_STANDBY       0x30
#define SERVO_POWER_SLEEP         0x50
#define SERVO_POWER_START         0x1
////////////////////////////////////////////
// wyc.170-2, add the define for CDDA audio de-emphasis
#define SERVO_CDDA_NONE             0
#define SERVO_CDDA_DEEMPHASIS       1
#define SERVO_CDDA_NON_DEEMPHASIS     2
////////////////////////////////////////////

//LJY0.95, wait stable mode
#define WAITSTABLE_SHOW_INFO            1
#define WAITSTABLE_NOT_SHOW_INFO        2
#define WAITSTABLE_SLEDGE                 3
#define SERVO_STATE_SLEDGE                4 //servo state of sledge-in is 4
#define WAITSTABLE_SLEDGE_SHOW_BAR      5 //LJY1.07, show loading status bar

//LJY2.37, port KCHong's code
#ifdef SUPPORT_PORTABLE_PROJECT
#define TOP_OPENED                     0
#define TOP_CLOSED                     1
#define TOP_OPENING                    2
#define TOP_CLOSING                    3
#define TOP_UNSTABLE                   4
#endif // #ifdef SUPPORT_PORTABLE_DVD_TOP_LOADING

//LJY1.10
#define AUDIO_DATA                          0x00
#define CONTINUOUS_DATA                0x01
#define INTERPOLATION_DISABLE       0x02 //bit1, for interpolation control
#define SUBCHANNEL_ENABLE           0x04  //bit2, for subcode control


// Structure Definition
// wyc.172r, define a new structure for scan title key usage and the purpose is to reduce one array.
typedef struct
{
 DWORD TitKey[2];  // Record the frame of the track start address
} SCAN_TITLE;

typedef struct
{
 BYTE Trk;  // Record the track number
 BYTE Ctl;  // Record the attribute of the track
 BYTE Min;  // Record the minute of the track start address
 BYTE Sec;  // Record the second of the track start address
 BYTE Frm;  // Record the frame of the track start address
} TRKINFO;

typedef struct
{
 BYTE bFirstTrack;  // Record the first track of the session
 BYTE bLastTrack;  // Record the last track of the session
 DWORD dwLeadOutPos;  // Record the leadout position of the session
} SESSIONINFO;

typedef struct {
    BYTE        bADRControl;
    BYTE        bTrackNum;
    BYTE        bPoint;
    BYTE        bRelMin;
    BYTE        bRelSec;
    BYTE        bRelFrame;
    BYTE        bReserved;
    BYTE        bAbsMin;
    BYTE        bAbsSec;
    BYTE        bAbsFrame;
} Q_CODE;

typedef struct tagCOPYINFO
{
    BYTE    bCPS_Type ;  // Store the Copy Protect Type of the dvd title
    BYTE    bRegionInfo ;  // Stores the Region Code Info of the dvd title
    BYTE    bCGMS ; // Store the Copy Generation Management System
} COPYINFO ;

#define SERVO_CGMS_NO_RESTRICTION   0
#define SERVO_CGMS_RESERVED         1
#define SERVO_CGMS_ONE_COPY         2
#define SERVO_CGMS_NO_COPY          3
#define SERVO_CGMS_NONE             4

BIT  SERVO_Reset(BYTE bShowBar); //LJY1.07, pass parameter for status bar display
BIT SERVO_Init(void);       // initial servo status when change title

BIT SERVO_OpenTray( void );
BIT SERVO_CloseTray( void );
BYTE SERVO_CheckTrayStatus(void); //LJY1.25 
//BYTE CDROM_GetDiscStatus( void );
BYTE SERVO_GetDiscStatus(PBYTE pStatus);
//BYTE CDROM_ReadTOC( BYTE );
BIT SERVO_ReadTOC( BYTE );
BIT SERVO_Stop(void);
BIT SERVO_Pause(void);
BIT SERVO_Abort(void) ;
BIT SERVO_PowerMode (BYTE bMode) ;
// wyc.170
BYTE SERVO_AudioDeemphasis(WORD wPlayItem);
 
//BIT CDROM_GoTime( DWORD );
BIT SERVO_ReadSectors( DWORD dwStartPos, DWORD dwEndPos );
BIT     SERVO_SetSectors ( DWORD dwStartPos, DWORD dwEndPos );  // ** TCH0.27;
BOOL    SERVO_EnableRunning ( BIT bGo );    // ** DVD-TCH0.25;

//BIT CDROM_GetTime( DWORD *);
BIT SERVO_GetCurrentPos( PDWORD pCurrentPos );
//DWORD SERVO_JumpGroove(BYTE, DWORD);
DWORD SERVO_JumpGroove( BYTE bForward, DWORD dwCurrentPos );
BIT SERVO_GetDiscInfo( PBYTE pMinTrack, PBYTE pMaxTrack, PDWORD pMaxPos );
//BIT CDROM_GetTrkInfo( BYTE, BYTE *, DWORD *);
BIT SERVO_GetTrackInfo( BYTE bTrackNum, PBYTE pTrackCtl, PDWORD pStartPos );
BIT SERVO_GetTrackEnd (BYTE bTrackNum, PDWORD pLength); // ** TCH1.61a; 
BIT SERVO_GetDiscLength(PDWORD pLength);


BYTE SERVO_GetSpeed(void);
BYTE SERVO_GetStatus(void);
// wyc.160a-XQ, add return parameter in SERVO_ResetRecover
BYTE SERVO_ResetRecover (BYTE bNeedStable);
// wyc.171-2
BYTE SERVO_Seek (DWORD dwSeekLBA, BYTE  bWaitBusy);
BIT     SERVO_Monitor( void );                  // WWH_CD7
WORD    SERVO_GetDiscType(void);       // WWH_CD7

//For DVD
BIT SERVO_CheckDiscEnding(void);

BIT SERVO_ReadDiscKey(void);
BIT SERVO_SetTitleKey(BYTE bStore);     // Added by Chern Shyh-Chain, 08-30-2001
//BIT SERVO_ReadTitleKey(DWORD dwSectorNumber);
BIT SERVO_ReadTitleKey(DWORD dwSectorNumber, BYTE bStore);  // Replaced by Chern Shyh-Chain, 08-30-2001
BIT SERVO_ReadCopyInfo(void);
void SERVO_AdjustThreshold (BYTE bType, DWORD dwLevel) ;
BYTE SERVO_CheckTrayClosed ();


//LJY275b, servo debug info
#ifdef SUPPORT_CDIF
#define GET_FW_VERSION			0x00
#define READ_420_REG			0x40
#define WRITE_420_REG			0x41
#define READ_3721_REG			0x42
#define WRITE_3721_REG			0x43
#define DEBUG_PIPO				0x44
#define GET_PIPO				0x45
#define SERVO_CMD_OFFSET		0x80

BIT SERVO_GetServoDebugInfo (BYTE bItem, WORD wAddr, WORD wData);
#endif // SUPPORT_CDIF

// Micky2.81_host, support host I/F
#ifdef  INPUT_PATH_HOSTIF
void SERVO_CDROMRead(BYTE NOofSector);
void SERVO_Exit();
#endif
BIT    _CSS_SentDiscKey(void);  // LLY.103e-XQ and LLY.160a-1, in SER_ATA.C module

#ifdef __cplusplus
        }
#endif
#endif  // __SERVO_H__

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲一区二区三区四区五区黄| 成人不卡免费av| 精久久久久久久久久久| 成人激情电影免费在线观看| 欧美日韩高清一区二区不卡| 欧美高清在线一区二区| 亚洲午夜在线视频| 不卡的看片网站| 久久综合九色欧美综合狠狠| 亚洲国产成人91porn| 成人激情动漫在线观看| 久久先锋影音av| 日韩福利视频网| 欧美制服丝袜第一页| 中文字幕人成不卡一区| 国产激情偷乱视频一区二区三区| 欧美日本一区二区| 亚洲欧美日韩在线不卡| 国产高清不卡一区二区| 日韩精品一区二区三区四区| 国产传媒日韩欧美成人| 制服丝袜亚洲网站| 一区二区三区四区蜜桃| 不卡电影一区二区三区| 国产免费成人在线视频| 国产又黄又大久久| 精品国产免费一区二区三区四区| 强制捆绑调教一区二区| 日韩欧美色综合网站| 日本女人一区二区三区| 91.麻豆视频| 日韩成人一级大片| 欧美一区二区成人| 日本不卡一二三区黄网| 欧美一区二区性放荡片| 丝袜a∨在线一区二区三区不卡| 色呦呦网站一区| 一区二区激情视频| 欧美体内she精视频| 亚洲图片一区二区| 在线成人av网站| 免费日韩伦理电影| 国产日韩精品一区二区浪潮av| 国产毛片精品一区| 国产精品电影院| 色视频欧美一区二区三区| 亚洲精品国产无天堂网2021 | 免费欧美在线视频| 精品国产乱码久久久久久久久| 黄色成人免费在线| 中文字幕一区二区三区不卡 | 国产精品1区2区| 国产三区在线成人av| 高清beeg欧美| 亚洲欧美一区二区三区国产精品| 91成人在线精品| 国产大陆a不卡| 亚洲欧美日韩国产手机在线| 欧洲亚洲精品在线| 韩国女主播一区| 综合欧美亚洲日本| 91精品国产一区二区三区香蕉| 国产麻豆精品theporn| 最新久久zyz资源站| 91精品国产色综合久久不卡电影 | 欧美一区二区三区四区五区| 国内外成人在线| 亚洲人成在线观看一区二区| 在线不卡免费欧美| 成人一区二区三区视频| 亚洲一二三四区| 久久久久久久久久电影| 在线视频欧美精品| 国产高清无密码一区二区三区| 一区二区在线看| 久久久久国产精品免费免费搜索| 日本电影亚洲天堂一区| 国产麻豆一精品一av一免费 | 亚洲一区二区欧美| 国产网红主播福利一区二区| 欧美三级乱人伦电影| 国产精品综合一区二区三区| 亚洲一区二区中文在线| 国产人成亚洲第一网站在线播放| 在线亚洲一区二区| 国产盗摄视频一区二区三区| 日韩精品成人一区二区在线| 国产精品免费久久久久| 日韩欧美国产一二三区| 欧美日韩黄色一区二区| 97精品电影院| 国产成人精品免费| 黄页视频在线91| 日本美女视频一区二区| 亚洲一区在线观看网站| 国产精品理伦片| 久久久蜜臀国产一区二区| 欧美一区二视频| 在线精品国精品国产尤物884a| 国产不卡在线播放| 国产一区二区调教| 蜜臀久久久久久久| 五月婷婷久久丁香| 亚洲国产aⅴ成人精品无吗| 国产精品不卡在线| 国产色一区二区| 久久影音资源网| 欧美成人精品1314www| 91精品欧美福利在线观看| 欧美老女人第四色| 欧美三级三级三级| 欧美精品日韩一区| 制服视频三区第一页精品| 欧美理论在线播放| 日韩一区二区三区在线| 欧美一区二区啪啪| 欧美另类高清zo欧美| 欧美一区二区三区婷婷月色| 91精品国产一区二区| 日韩一级完整毛片| 欧美电影免费观看高清完整版在线观看 | 高清在线不卡av| 国产精品自在在线| 国产白丝精品91爽爽久久 | 国产亚洲一区二区三区在线观看| 亚洲精品一区二区三区四区高清| 日韩欧美国产1| 久久久久久久久久久久久女国产乱 | 欧美亚洲国产怡红院影院| 欧美在线综合视频| 日韩欧美亚洲国产精品字幕久久久| 欧美一区二区三区四区高清| 精品日本一线二线三线不卡| 欧美大片免费久久精品三p| 欧美精品一区二区高清在线观看| 精品国产乱码久久久久久图片| 国产欧美日韩在线| 亚洲丝袜自拍清纯另类| 亚洲午夜久久久久久久久电影院| 首页欧美精品中文字幕| 精东粉嫩av免费一区二区三区| 国产盗摄精品一区二区三区在线| www.视频一区| 欧美高清激情brazzers| 久久免费精品国产久精品久久久久| 欧美国产视频在线| 亚洲五码中文字幕| 国产一区二区精品久久| 色婷婷综合久久久久中文一区二区 | 免费的国产精品| 99热国产精品| 欧美一级在线视频| 国产精品毛片a∨一区二区三区 | 欧美日韩的一区二区| 久久久综合视频| 亚洲一卡二卡三卡四卡无卡久久 | 久久精品一二三| 亚洲国产中文字幕| 国产成人aaaa| 日韩精品中午字幕| 亚洲人成在线观看一区二区| 老司机一区二区| 91麻豆蜜桃一区二区三区| 欧美一区二区大片| 亚洲天堂a在线| 国产精品一区不卡| 欧美一区二区二区| 亚洲国产精品久久人人爱蜜臀| 国产一区高清在线| 欧美狂野另类xxxxoooo| 国产精品久久二区二区| 久久99国产精品麻豆| 欧美日本在线视频| 亚洲免费资源在线播放| 国产jizzjizz一区二区| 日韩久久久精品| 日本色综合中文字幕| 色先锋aa成人| 成人欧美一区二区三区在线播放| 激情五月激情综合网| 91麻豆精品国产91| 亚洲成a天堂v人片| www.66久久| 亚洲国产岛国毛片在线| 另类欧美日韩国产在线| 欧美日韩久久不卡| 亚洲精品免费在线播放| 不卡一区二区中文字幕| 日本一区二区免费在线观看视频| 免费观看在线综合色| 69堂成人精品免费视频| 国产精品1区二区.| 精品少妇一区二区三区视频免付费| 亚洲一区二区视频在线| 欧美性受xxxx| 一区二区三区欧美在线观看| aaa欧美日韩| 亚洲视频一二区| 色综合久久88色综合天天6| 亚洲欧美自拍偷拍色图|