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

📄 hd60.h

📁 MTK1389L的源代码
💻 H
📖 第 1 页 / 共 2 页
字号:

/***************      MTK CONFIDENTIAL & COPYRIGHTED          ***************/
/***************                                              ***************/
/***************    Filename: SRV2DEC.H                       ***************/
/***************              DVD_ROM Servo FW header file    ***************/
/*************** Description :                                ***************/
/***************                                              ***************/
/***************                                              ***************/
/***************     Company: MediaTek Inc.                   ***************/
/***************  Programmer: Jason Gau. (jishian)            ***************/
/****************************************************************************/

 
#ifndef _H_SRV2DEC_
  #define _H_SRV2DEC_

  /*========================================================================
        ERROR Code Table
  ========================================================================*/
  #define PLAYER_READY          0x00
  #define ILLEGAL_COMMAND       0x01
  #define ILLEGAL_PARAM         0x02
  #define SLEDGE_ERROR          0x03
  #define FOCUS_ERROR           0x04
  #define MOTOR_ERROR           0x05
  #define RADIAL_ERROR          0x06
  #define PLL_LOCK_ERROR        0x07    // not used
  #define READ_ERROR            0x08
  #define QID_NOT_FOUND         0x09    // not used
  #define TRAY_ERROR            0x0A
  #define TOC_READ_ERROR        0x0B    // not used
  #define SEEK_ERROR            0x0C
  #define HF_ERROR              0x0D    // not used
  #define NO_SESSION_ERROR      0x0E
  //      ERROR Code Table : Self Implement
  #define DISK_NO_EXIST         0x10
  #define CALIBRATE_ERROR       0x11    // Don't care about this erorr
  #define ABORTED               0x12
  /*      Player Status Code                                            */
  #define PLAYER_BUSY           0x80    /* Player is busy             */
  #define PLAYER_ERROR          0xFF    /* Different to Player Busy   */

/*=========================================================================
   Media Type Definition
=========================================================================*/
  #define MEDIA_CDROM           0x01
  #define MEDIA_CDRW            0x02
  #define MEDIA_DVCD            0x05
  #define MEDIA_DVD_SINGLE      0x10
  #define MEDIA_DVD_DUAL        0x11
  #define MEDIA_DVD_LOW         0x14
  #define MEDIA_DVDR_V10        0x30
  #define MEDIA_DVDR_V20        0x31
  #define MEDIA_DVD_PRW_47G     0x50
  #define MEDIA_DVD_PRW_30G     0x51
  #define MEDIA_DVD_MRW         0x52
  #define MEDIA_DVD_RAM_26G     0x90
  #define MEDIA_DVD_RAM_47G     0x91

//=====================================================================
//                     SERVO change speed parameters
//=====================================================================
  #define SRV_SPEED_OK          0
  #define SRV_SPEED_NOOK        1

//=====================================================================
//                     SERVO Seek Mode types
//=====================================================================
  #define SEEK_NORMAL           0x00
  #define SEEK_LEAD_IN          0x04
  #define SEEK_LEAD_OUT         0x08
  #define SEEK_MULTI_SEN        0x0C
  #define SEEK_AUDIO            0x02
  #define SEEK_LAYER0           0x00
  #define SEEK_LAYER1           0x01


/*=========================================================================
   Optional Definition
=========================================================================*/

  #define MAX_DVD_SPEED        2     //6 Initial servo maximum speed for DVD
  #define OPT_DVD_SPEED        2     //6 Initial servo optimum speed for DVD
  #define MAX_DVDCLV_SPEED     2
  #define MAX_TWO_DVD_SPEED    2     //dual layer speed
  #define MIN_DVD_SPEED        2     // 1Initial servo optimum speed for DVD
  #define RANGE_DVD_SPEED      2     // 4Change speed limit for DVD
  #define RANACC_DVD_SPEED     2     //4 Random Access speed
  #define LEADIN_DVD_SPEED     2     //1 Read leadin speed

  #define MAX_DVDR_SPEED       2
  #define MAX_DVDMRW_SPEED     2     // DVD-RW
  #define MAX_DVDPRW_SPEED     2     // DVD+RW
  #define MAX_RAMV1_SPEED      2     // Initial servo maximum speed for RAM Ver.1
  #define MAX_RAMV2_SPEED      2     // Initial servo maximum speed for RAM Ver.2

  #define DVD_SPEED_GAP        1     // for MTK decoder speed down function
  #define DVD_VIDEO_SPEED      2
#ifdef CD_CAV_TEST
  #define MAX_CD_SPEED        10     // Initial servo minimum speed for CD
#else
  #define MAX_CD_SPEED         4     // Initial servo minimum speed for CD
#endif
  #define OPT_CD_SPEED         4     // Initial servo optimum speed for CD
  #define MAX_CDCLV_SPEED      4
  #define MIN_CD_SPEED         4     // Initial servo minimum speed for CD
  #define RANGE_CD_SPEED       4     // Change speed limit for DVD
  #define RANACC_CDROM_SPEED   4     // Random Access speed
  #define LEADIN_CD_SPEED      4     // Read leadin speed
  #define CDRW_SPEED           4     // CDRW PLAYING SPEED
  #define VCD_SPEED            4     // VCD PLAYING SPEED
  #define CDDA_SPEED           4     // AUDIO PLAYING SPEED
  #define HIGH_CDDA_SPEED      4     //
  #define CDPLUS_SPEED         4     // CD+ PLAYING SPEED
  #define ENHANCECD_SPEED      4     // ENHANCE CD PLAYING SPEED
  #define CD_SPEED_GAP         2     // for MTK decoder speed down function


  #ifdef  _SERVO_F_
    #ifdef  _SERVO_F1_
      #ifdef VCODAC_IN_DRAM
        BYTE xdata _bVCODACAddrH;
        BYTE xdata _bVCODACAddrM;
        BYTE xdata _bVCODACAddrL;
      #endif
      /********************************************/
      /*        Media type define                 */
      /*      _bMediaType = 0x01 : CD-ROM         */
      /*      _bMediaType = 0x02 : CD-RW          */
      /*      _bMediaType = 0x05 : CD-DVCD        */
      /*      _bMediaType = 0x10 : DVD-ROM(S)     */
      /*      _bMediaType = 0x11 : DVD-ROM(D)     */
      /*      _bMediaType = 0x14 : DVD-ROM(L)     */
      /*      _bMediaType = 0x30 : DVD-R V1.0     */
      /*      _bMediaType = 0x31 : DVD-R V2.0     */
      /*      _bMediaType = 0x50 : DVD+RW(4.7G)   */
      /*      _bMediaType = 0x51 : DVD+RW(3.0G)   */
      /*      _bMediaType = 0x52 : DVD-RW         */
      /*      _bMediaType = 0x90 : DVD-RAM(2.6G)  */
      /*      _bMediaType = 0x91 : DVD-RAM(4.7G)  */
      /*                        K.J.Chang 01/01/31*/
      /********************************************/
      BYTE bdata  _bMediaType _at_ 0x21;
           sbit  _fgDiskIsDVDRW  = _bMediaType^6;   // DVD-RW/+RW
           sbit  _fgDiskIsDVDMRW = _bMediaType^1;   // DVD-RW
           sbit  _fgDiskIsDVDR   = _bMediaType^5;   // DVD-R
           sbit  _fgDiskIsDVD    = _bMediaType^4;
           sbit  _fgDualLayer    = _bMediaType^0;   // DVD
           sbit  _fgOppTrack     = _bMediaType^1;   // DVD
           sbit  _fgDiskIsDVCD   = _bMediaType^2;   // CD
           sbit  _fgDiskIsCDRW   = _bMediaType^1;   // CD ,new added by jishian

      WORD  xdata bIDCount1;            //[0616] for robust burning
      BYTE  data  _bWdCnt;
      BYTE xdata  _bMaxSpeed;
      BYTE xdata  _bOptimumSpeed;
      BYTE xdata  _bDriveSpeed;
      BYTE xdata  _bPlayerStatus;
      BYTE bdata  _bServoStatus _at_ 0x22;
           sbit  _fgDiscStatus  = _bServoStatus^0; // tracking on:1, off:0
           sbit  _fgSpinStatus  = _bServoStatus^1; // Servo status 1:ON, 0:OFF
           sbit  _fgPauseStatus = _bServoStatus^2; // 1/0: Pause ON/OFF
           sbit  _fgFocusStatus = _bServoStatus^3; // 1/0: FOK/not FOK
           sbit  _fgQIDStatus   = _bServoStatus^4; // '1': when Qcode is available
           sbit  _fgCalStatus   = _bServoStatus^5; // '1': Disk has been Calibrated
           sbit  _fgSpeedStatus = _bServoStatus^6; // '1': is changing speed
           sbit  _fgDmonStatus  = _bServoStatus^7; // '1': spindle has been kicked

      BYTE bdata _bServoFlag1   _at_ 0x29;
          sbit  _fgHybridSACD   = _bServoFlag1^0;
          sbit  _fg8CMDisk      = _bServoFlag1^1;
          sbit  _fgAbort        = _bServoFlag1^2;               // Exist SERVO Routine immediatly

      strucQCode data  _rQCode;                 // for CD

      BYTE  data  _bTarMin      _at_ 0x71;      // use for save target time of seek and
      BYTE  data  _bTarSec      _at_ 0x72;      // pauses mode , they  are in MSB HEX  format
      BYTE  data  _bTarBlk      _at_ 0x73;
      BYTE  data  _bAbsMin      _at_ 0x74;      // use for save current time, they are converted
      BYTE  data  _bAbsSec      _at_ 0x75;      // after read q code and in MSB HEX format
      BYTE  data  _bAbsBlk      _at_ 0x76;

      DWRD xdata  _dSectorID    _at_ 0xFDEA;    // for DVD

  //  NOTE, fgForceSRVOff and _fgAbort need re-arrange

    #else               // _SERVO_F1_
      #ifdef VCODAC_IN_DRAM
        extern  BYTE xdata _bVCODACAddrH;
        extern  BYTE xdata _bVCODACAddrM;
        extern  BYTE xdata _bVCODACAddrL;
      #endif

      extern  BYTE bdata  _bMediaType;
        extern  BIT  _fgDiskIsDVDRW;    // DVD-RW/+RW
        extern  BIT  _fgDiskIsDVDMRW;   // DVD-RW
        extern  BIT  _fgDiskIsDVDR;
        extern  BIT  _fgDiskIsDVD;
        extern  BIT  _fgLowReflect;
        extern  BIT  _fgDualLayer;
        extern  BIT  _fgOppTrack;
        extern  BIT  _fgDiskIsDVCD;
        extern  BIT  _fgDiskIsCDRW;

      extern  WORD xdata  bIDCount1;

⌨️ 快捷键说明

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