www.pudn.com > 8032.RAR > config.h


/***************    MTK CONFIDENTIAL & COPYRIGHTED     ****************/ 
/***************                                       ****************/ 
/***************  $Modtime:: 04/07/02 5:14p    $       ****************/ 
/***************  $Revision:: 69               $       ****************/ 
/***************                                       ****************/ 
/*************** Description : This file contains all  ****************/ 
/***************               Vendor relative         ****************/ 
/***************               prototype definition    ****************/ 
/***************               used for Channel decoder****************/ 
/***************                                       ****************/ 
/***************     Company : MediaTek Inc.           ****************/ 
/***************  Programmer : Joseph Lin              ****************/ 
/***************               Yih-Shin Weng           ****************/ 
/**********************************************************************/ 
 
#ifndef _H_VENDOR_ 
#define _H_VENDOR_ 
 
#define MT1389 
#define MT1389_REV_D 
#define MT1389_512K 
#define GCY_EDIT_SETUP 
#define GCY_EDIT 
#define zzf_modify 
#define ROCKY_MODIFY 
//#define TEST_CODE 
//#define MT1379_MANUFACTURE_TEST 
//#define MT1389_SINGLE_TEST 
//*********************************CUSTOME************************************// 
 
 
 
 
//***********************************END**************************************// 
/*=======================================================================*/ 
// Version  Ch        HDCD/WMA        DTS 
// ---------------------------------------------------------------------- 
// MT1369A  2ch       no              no 
// MT1369B  5.1ch     no              yes 
// MT1369C  2ch       yes             no 
// MT1369D  5.1ch     yes             yes 
// MT1369E  Support ALL audio functions (DTS/WMA/DVD-A/.....) 
// MT1369F  5.1ch     no              no 
// MT1369G  Support ALL audio functions (WMA/DVD-A/.....) except DTS 
// MT1369H  (not defined, reserved for future) 
/*=======================================================================*/ 
#define MT1369A     0 
#define MT1369B     1 
#define MT1369C     2 
#define MT1369D     3 
#define MT1369E     4 
#define MT1369F     5 
#define MT1369G     6 
#define MT1369H     7 
 
/*========================================================================*/ 
// Select you target here 
/*========================================================================*/ 
#if (defined(MTK_2CH) || defined(MTK_TINY)) 
  #define MT1369_CHIP_VER       MT1369A 
#elif defined(MTK_FULL) 
  #define MT1369_CHIP_VER       MT1369E 
#elif defined(MTK_1379) 
  // include all 1369 function 
  #define MT1369_CHIP_VER       MT1369E 
  #define MT1379 
#elif defined(MTK_2CH79) 
  #define MT1369_CHIP_VER       MT1369A 
  #define MT1379 
#elif defined(NUI_1379) 
  // default not include DVD-Audio 
  #define MT1369_CHIP_VER       MT1369D 
  #define MT1379 
  #define PLAYER_NUI 
#elif defined(NUI_2CH) 
  #define MT1369_CHIP_VER       MT1369A 
  #define MT1379 
  #define PLAYER_NUI 
#elif defined(NUI_BAS) 
  #define MT1369_CHIP_VER       MT1369A 
  #define MT1379 
  #define PLAYER_BASIC 
  #define PLAYER_NUI 
#else 
  #define MT1369_CHIP_VER       MT1369A    // release default setting 
  //#define MT1369_CHIP_VER       MT1369B 
  //#define MT1369_CHIP_VER       MT1369C    // original 2 channel 
  //#define MT1369_CHIP_VER       MT1369D 
  //#define MT1369_CHIP_VER       MT1369E    // original full function 
  //#define MT1369_CHIP_VER       MT1369F 
#endif 
 
/*========================================================================*/ 
// Compile Target Setting, for vendor.h only, don't use in code directly 
/*========================================================================*/ 
#if (MT1369_CHIP_VER == MT1369A) 
  // 2 channel 
  #define PLAYER_2_CHANNEL 
  #define NO_DTS_DECODE 
#elif (MT1369_CHIP_VER == MT1369B) 
  // 5.1 channel 
#elif (MT1369_CHIP_VER == MT1369C) 
  // 2 channel 
  #define PLAYER_2_CHANNEL 
  #define NO_DTS_DECODE 
  #define DDISC_FTYPE_WMA_SUPPORT 
  #define HDCD_EN 
#elif (MT1369_CHIP_VER == MT1369D) 
  // 5.1 channel  //use this project zzf mark 
  #define DDISC_FTYPE_WMA_SUPPORT 
  #define HDCD_EN 
  #define NO_DTS_DECODE 
 
#elif (MT1369_CHIP_VER == MT1369E) 
  // 5.1 channel 
  #define DDISC_FTYPE_WMA_SUPPORT 
  #define HDCD_EN 
  #define SUPPORT_DVD_AUDIO 
  //#define DVD_AUDIO_TEST 
#elif (MT1369_CHIP_VER == MT1369F) 
  // 5.1 channel 
  #define NO_DTS_DECODE 
#elif (MT1369_CHIP_VER == MT1369G) 
  // 5.1 channel 
  #define DDISC_FTYPE_WMA_SUPPORT 
  #define HDCD_EN 
  #define SUPPORT_DVD_AUDIO 
  #define NO_DTS_DECODE 
#endif 
 
#ifdef MT1379 
  //#define AUDIO_IN_ONLY 
  //#define AUDIO_IN_EN                 // not yet 
  //#define VIDEO_IN_EN                 // not yet 
  #define MTK_TVE                       // use internal TVE 
  //#define SPDIF_ON_ANALOG_MUTE        // not yet 
  //#define USE_3W_SIF                    // not yet 
  //#define USE_VRAM2 
#endif 
//#define RS232_LOG 
//#define RS232_WB_DEBUG 
//#define RS232_LOG_UI 
//#define RS232_LOG_TOC 
 
#ifdef AUDIO_IN_ONLY 
#define TRAY_NOT_CONNECT 
#define AIN_USE_SPDIF_1 
//#define AIN_USE_LINE_1 
#endif 
 
#ifdef MTK_TVE 
  #define PSCAN_EN 
#endif 
 
#ifdef PSCAN_EN 
  //#define PSCAN_FORCE_TV_AUTO 
  //#define SETUP_NO_PSCAN_CTRL 
 
  #ifndef SETUP_NO_PSCAN_CTRL 
    #define PSCAN_SIMPLE_MENU 
  #endif 
#endif 
 
 
#ifdef AUDIO_IN_EN 
  //#define AUDIO_IN_TEST 
#endif 
 
#ifdef VIDEO_IN_EN 
  //#define VIN_USE_PORT_A    // this needs 16-bit DRAM setting 
  #define VIN_USE_PORT_B 
#endif 
 
#define DROP_DUMMY_FUNC 
 
/*========================================================================*/ 
// Internal test related definition 
/*========================================================================*/ 
//#define INTERNAL_TEST                 // enable internal test 
 
#define NEW_SHOW  //use show_com to shrink show_dvd,show_vcd and show_iso 
#define NEW_PLAY  //use PLAY_com to shrink PLAY_dvd,PLAY_vcd and PLAY_iso 
#define ENFORCE_OSD_SHOW_TIME_LEFT      //enforce show time_osd on the left side because it can reduce some code 
 
//#define BOOTUP_RAM_TEST 
//#define LOW_SPEED_TEST 
//#define DELAY_UI_STARTUP 
 
#ifdef MT1379 
  //#define RISC_PROTECT_EN 
  #define MT1379_REV_C 
 
  #if (defined(MT1379_REV_C) && defined(PSCAN_EN)) 
    // need to check PCB layout and DRAM speed 
    //#define HIGH_SPEED_DRAM 
  #endif 
 
  //#define ADSP_USE_APLL 
  #if (defined(MT1379_REV_C) && defined(ADSP_USE_APLL)) 
    #define DSP_LOAD_FORCE_SYNC 
  #endif 
 
  #ifdef MT1379_REV_C 
    // original is defined in dec2srv.h 
    #undef UP_RATE_27M 
    #undef UP_RATE_24M 
    #define UP_RATE_27M       0 
    #define UP_RATE_24M       1 
  #endif 
#endif /* MT1379 */ 
 
//#define RS232_LOG_UI 
 
#ifdef RS232_LOG_UI // log timer task 
#else // log main task 
  //#define RS232_LOG 
  //#define RS232_LOG_EEPROM 
  //#define RS232_LOG_FLASH 
#endif 
 
#define USE_FLASH_DMA 
 
// This option need special RISC binary 
//#define RISC_BOOT_CODE_CHKSUM 
 
 
#define USE_FLASH_70NS 
 
/*========================================================================*/ 
//        Certification 
/*========================================================================*/ 
#define DVD_CERTIFICATION 
#ifdef INTERNAL_TEST 
#undef DVD_CERTIFICATION 
#endif 
//#define HDCD_CERTIFICATION 
//#define AC3_CERTIFICATION 
//#define DTS_CERTIFICATION 
//#define WMA_CERTIFICATION 
//#define MLP_CERTIFICATION 
//#define N22_CERTIFICATION 
 
/*========================================================================*/ 
//                    MEGA I/O PORT DEFINITION & 
//                 BOARD COMPONENTS RELATED SETTING 
/*========================================================================*/ 
#define DRAM_2M          0x200000 
#define DRAM_4M          0x400000 
#define DRAM_8M          0x800000 
#define DRAM_16M         0x1000000 
 
// DRAM size selection 
#define DRAM_SZ          DRAM_2M 
 
 
#ifdef MT1389_REV_D 
  #if (DRAM_SZ == DRAM_2M) 
    #define PURE_2M 
  #elif (DRAM_SZ == DRAM_4M) 
    #define DRAM_CASCADE 
  #endif 
#endif 
// not use auto detect, assign DRAM type 
//#define DRAM_1B1M16X2      // 4MB 
//#define DRAM_4B1M16X1      // 8MB 
 
// use auto detect 
//#define DRAM_16BIT_ONLY 
 
#ifdef MT1379 
  #define DRAM_REFRESH_PERIOD   0x20          // DRAM refresh period 
  #ifdef MT1379_REV_C 
    #define DRAM_RAMPC          0x96          // 12mA DRAM driving strength, clock invert 
  #else 
    #define DRAM_RAMPC          0x16          // 12mA DRAM driving strength 
  #endif 
#else // MT1369 
  #define DRAM_REFRESH_PERIOD   0x40          // DRAM refresh period 
  #define DRAM_RAMPC            0x9A          // 4mA DRAM driving strength 
#endif 
 
#ifdef MT1379_REV_C 
  //#define DRAM_CASCADE 
  //#define DRAM_CL3T 
#endif 
 
#define DLL_RESET 
 
/*========================================================================*/ 
//                    Flash Upgrade 
/*========================================================================*/ 
#define DISC_UPDATE_CODE 
 
#ifdef DISC_UPDATE_CODE 
  //#define DISC_UPG_PATCH 
#endif 
 
#ifdef DISC_UPDATE_CODE 
//  #define VOLUME_ID             'M', 'E', 'D', 'I', 'A', 'T', 'E', 'K', '\0' 
  #define VOLUME_ID             'M', 'T', 'K', '\0'			//Samuel Zhou use the simple define 
  #define UPDATE_FILE           'M', 'T', 'K', '.', 'B', 'I', 'N', '\0' 
  #define FLASH_UPG_RETRY_CNT   5 
  //#define UPG_FINISH_TRAY_OUT 
  //#define UPG_VFD_STATUS 
#define FLASH_8BIT 
  //#define FLASH_16BIT_SWAP 
//#define FLASH_16BIT_NO_SWAP 
 
  //#define UPDATE_KEEP_CPPM_KEY  // default is replace 
#endif 
 
//#define FLASH_USE_POLLING 
//#define FLASH_USE_RESET 
//#define FLASH_CHECK_DQ5 
//#define FLASH_LOOP_CNT 
 
#define FLASH_BYTE_RETRY          3 
 
#ifdef FLASH_LOOP_CNT 
  #define FLASH_WRITE_LOOP_MAX    100 
  #define FLASH_ERASE_LOOP_MAX    5000  // 1 seconds 
#endif 
 
/*========================================================================*/ 
//                    For Password File 
/*========================================================================*/ 
//#define LOAD_USR_PWD_FILE 
 
#ifdef LOAD_USR_PWD_FILE 
  #define PWD_FILENAME          'M', 'T', 'K', '.', 'T', 'X', 'T', '\0' 
#endif 
 
/*========================================================================*/ 
//                    Disc Supporting 
/*========================================================================*/ 
//#define SUPPORT_CDI 
#define SUPPORT_DTS_CD  // support DTS CD or not 
#ifdef SUPPORT_DTS_CD 
  #define DTS_CD_DETECT_TIMEOUT    20       // (400ms) detect DTS CD timeout 
#endif 
 
#define SUPPORT_DACD                      // support DACD 
 
//#define CHK_PASSWD_VCD_EN               // vcd control by password 
 
#define VCD_SUPPORT 
#ifdef VCD_SUPPORT 
  #define SUPPORT_VCD_1X 
  #define SUPPORT_VCD_20 
  #define SUPPORT_VCD_30 
  #define SUPPORT_SVCD 
  //#define SUPPORT_CVD 
#endif 
 
#define SUPPORT_PCD     // - enable Kodak PCD support 
#ifndef SUPPORT_PCD 
#define PCD_AS_DATA_DISC 
//#define PCD_AS_UNKNOWN_DISC 
#endif // !SUPPORT_PCD 
 
#define NOT_SUPPORT_VCD_AS_DATA 
 
//#define SUPPORT_CD_TEXT                   // support CD-Text reading 
 
#define MINI_DVD_SUPPORT 
 
#ifndef PLAYER_BASIC 
  #define SUPPORT_DATA_DISC 
#endif 
 
/*========================================================================*/ 
//        EEPROM related option 
/*========================================================================*/ 
#define I2C_EEPROM 
 
/* set retry number to 0 to disable retry timeout */ 
#if 0 
  #define EEPROM_INIT_RETRY     10 /* at least 1 */ 
  #define EEPROM_RUN_RETRY       3 /* at lesat 2 */ 
#else 
  #define EEPROM_INIT_RETRY      0 
  #define EEPROM_RUN_RETRY       0 
#endif 
 
#ifdef I2C_EEPROM 
  #ifdef PLAYER_2_CHANNEL 
    #define  _24C01_ 
  #else 
    #define  _24C02_ 
  #endif 
 
  #ifdef DISC_UPDATE_CODE 
    //#define DISC_UPG_RESET_DEFAULT 
    #ifdef DISC_UPG_RESET_DEFAULT 
      #define DISC_UPG_RESET_KEEP_REGION 
    #endif 
  #endif /* DISC_UPDATE_CODE */ 
 
  //#define EEPROM_CHK_2ND_MAGIC 
  //#define EEPROM_SLOW_ACK_POLLING 
#endif 
 
/*========================================================================*/ 
//        Audio DAC related option  //default : Right-Justified, 24-bit 
/*========================================================================*/ 
//#define AC3_DITHER_MUTE 
//#define AC3_BASS_OVERFLOW_DETECT 
 
//#define DAC_AUTO_MUTE 
//#define DAC_DEEMPH 
//#define DAC_EXTPIN_MUTE 
 
#define PLAYER_51_CHANNEL 
#ifdef MT1389_REV_D 
#ifndef PLAYER_51_CHANNEL 
#define INT_ADAC 
#ifdef  INT_ADAC 
  #define MTK_ADAC 
  #undef _NPADAC_ 
  #define TWO_CHANNEL_ONLY 
#else 
//    #define _WM8756_ 
  #undef MTK_ADAC 
#endif 
#endif 
#endif 
 
#define _INTACLK_       // use MT1369 audio clock 
 
#if (defined(AUDIO_IN_EN) || defined(_WM8714_)) 
  #define AUDIO_256FS 
#else 
  #define AUDIO_384FS 
#endif 
 
#ifdef ADSP_USE_APLL 
  #ifdef AUDIO_256FS 
    #define ADSP_APLL_RATIO   AC_APLD2 
#else // AUDIO_384FS 
    #define ADSP_APLL_RATIO   AC_APLD3 
  #endif 
#endif /* ADSP_USE_APLL */ 
 
#ifdef _AKM4381_ 
  #define _AKM4382_ 
#endif 
 
#ifdef  _CS4337_ 
  #define AUDIO_DATA_18BIT 
  #define _NPADAC_  //define no programming ADAC 
#elif (defined(_CS4330_) || defined(_CS4339_)) 
  #define AUDIO_DATA_20BIT 
  #define _NPADAC_  //define no programming ADAC 
#elif defined(_CS4335_) 
  #define AUDIO_DATA_LTJ 
  #define AUDIO_DATA_24BIT 
  #define _NPADAC_  //define no programming ADAC 
#elif defined(_CS4331_) 
  #define AUDIO_DATA_I2S 
  #define AUDIO_DATA_18BIT 
  #define _NPADAC_  //define no programming ADAC 
#elif (defined(_CS4334_) || defined(_CS4340_) || defined(_WM8728_) || \ 
       defined(_WM8714_) || defined(_WM8720_) || defined(_PCM1606_)) 
  #define AUDIO_DATA_I2S 
  #define AUDIO_DATA_24BIT 
  #define _NPADAC_  //define no programming ADAC 
#elif (defined(_CS4360HW_) || defined(_WM8725_) || defined(_WM8746HW_)) 
  #define AUDIO_DATA_24BIT  // DIF1=1, DIF0=1, M2=0, M1=0 
  #define AUDIO_DATA_RTJ 
  #define _NPADAC_          // hardware mode no need programming ADAC 
#elif (defined(_CS4360_) || defined(_AK4382_) || defined(_CS4362_) || \ 
       defined(_CS4391_)) //programable 
  #define AUDIO_DATA_LTJ 
  #define AUDIO_DATA_24BIT 
#else 
  #define AUDIO_DATA_24BIT 
  #define AUDIO_DATA_RTJ 
#endif 
 
#if (defined(_PCM1602_) || defined(_PCM1605_)) 
  #define _PCM1604_ 
#endif 
#if defined(_PCM1748_) 
  #define _PCM1742_ 
#endif 
 
#ifdef WMA_CERTIFICATION 
  #define AUDIO_POLARITY_NINV //Use even stages 
  #define AUDIO_LR_INV 
#endif 
//#define AUDIO_LR_INV  //Inverse the channel(L->R, R->L), analog circuit 
 
#ifdef  _NPADAC_ // Still AudioClk output in the PowerDown Mode 
  #define POWERDOWN_AUDIOOUT_CLK 
#endif 
 
///Define Mute Pin Control 
#ifdef MT1379 
  #define USE_1379_MUTE 
#else 
//#define USE_1336_MUTE 
#define USE_1369_MUTE 
#endif 
//#define USE_IOA20_MUTE //USE 1379 IOA20 as mute function 
//#ifdef USE_IOA20_MUTE 
//  #define LOW_MUTE 
//#endif 
 
///Define Use 1336C IO Switch DSD/PCM 
#ifdef MT1379_REV_C 
  #define MT1336_REV_C 
#endif 
 
/*========================================================================*/ 
//        Audio DAC related option  //default : Right-Justified, 24-bit 
/*========================================================================*/ 
#ifdef AUDIO_IN_EN 
  #define _AK4114_ 
#endif /* AUDIO_IN_EN */ 
 
/*========================================================================*/ 
//        TV Encoder related option 
/*========================================================================*/ 
#ifdef MTK_TVE 
 
  #define NO_PEDESTAL_OFFSET  // No 7.5IRE 
 
  #define NTSC_ADJUST_H         0      /* 2 pixel base, only positive*/ 
  #define NTSC_ADJUST_V         0      /* 1 pixel base */ 
  #define PAL_ADJUST_H          0      /* 2 pixel base, only positive*/ 
  #define PAL_ADJUST_V          6      /* 1 pixel base */ 
  #define OSD_NTSC_ADJUST_H     0      /* 2 pixel base */ 
  #define OSD_NTSC_ADJUST_V     0      /* 1 pixel base */ 
  #define OSD_PAL_ADJUST_H      0      /* 2 pixel base */ 
  #define OSD_PAL_ADJUST_V      0      /* 1 pixel base */ 
 
#else /* for external TVE */ 
 
  #define ENCODER_MASTER 
 
  #define NO_PEDESTAL_OFFSET  // No 7.5IRE 
 
  #define TVE_YCDELAY_ON 
  #define TVE_REDGE_ON 
 
  #if (defined(_AV3168_) || defined(_AV3169_)) 
    #undef  TVE_YCDELAY_ON 
    #undef  TVE_REDGE_ON 
  #endif 
 
  // These 4 Parameters is used to adjust TV Main Video Position 
  // value from (-10 ~ 10) 
  #define NTSC_ADJUST_H         0   /* 2 pixel base */ 
  #define NTSC_ADJUST_V         0   /* 1 pixel base */ 
  #if (defined(_CS4954_) || defined(_CS4955_)) 
    #define PAL_ADJUST_H        0   /* 2 pixel base */ 
  #else 
    #define PAL_ADJUST_H        4   /* 2 pixel base */ 
  #endif 
  #define PAL_ADJUST_V          0   /* 1 pixel base */ 
  #define OSD_NTSC_ADJUST_H     0   /* 2 pixel base */ 
  #define OSD_NTSC_ADJUST_V     0   /* 1 pixel base */ 
  #if (defined(_CS4954_) || defined(_CS4955_)) 
    #define OSD_PAL_ADJUST_H    0   /* 2 pixel base */ 
  #else 
    #define OSD_PAL_ADJUST_H    4   /* 2 pixel base */ 
  #endif 
  #define OSD_PAL_ADJUST_V      0   /* 1 pixel base */ 
 
#endif /* for external TVE */ 
 
/* yes->turn off video, no->turn on video with macrovision title 
   Only for non-support-macrovision chip */ 
#define MACROVISION_CERTIFICATION 
 
#ifdef INTERNAL_TEST 
  #undef MACROVISION_CERTIFICATION 
#endif 
 
//#define VDO_CFG_NO SV_HI_IMP_FLT_FRONT 
//#define VDO_CFG_NO SV_HI_IMP_FLT_BACK 
#define VDO_CFG_NO SV_LO_IMP 
 
//#define SHARPNESS_USE_YLPF 
 
// TV encoder output mode 
//#define COMPONENT_ON_S_OFF  // When Component is turned on, turn off S-video 
 
#define SV_TVE_DIRECT (SV_DA0_S_CVBS | SV_DA0_CVBS_ON | SV_DA1_CVBS) // CVBS1 , S-Video, CVBS2 
#ifdef COMPONENT_ON_S_OFF 
#define SV_TVE_YCBCR    (SV_DA0_S_CVBS | SV_DA0_CVBS_ON | SV_DA1_CPNT)  // CVBS, YCbCr 
#define SV_TVE_RGB    (SV_DA0_S_CVBS | SV_DA0_CVBS_ON | SV_DA1_CPNT | SV_CPNT_RGB)  // CVBS, RGB 
#else 
#define SV_TVE_YCBCR    (SV_DA0_S_CVBS | SV_DA0_CVBS_ON | SV_DA1_CPNT)  // CVBS, YCbCr 
#define SV_TVE_RGB      (SV_DA0_S_CVBS | SV_DA0_CVBS_ON | SV_DA1_CPNT | SV_CPNT_RGB)  // CVBS, RGB 
#endif 
#define SV_TVE_VGA    (SV_TVE_RGB | SV_CPNT_VGA)    // Off,  Off,     VGA, force P-Scan on 
#define SV_TVE_SCART  0xFF 
 
#define CVBS2_OUTPUT_ON_G //Max'0623'04, ifdef -> CVBS2 will be on G (new schematics) 
/* yes->no support macrovision, only for video quality testing*/ 
//#define  NO_SUPPORT_MACROVISION 
//#define P_DEVICE_DEBUG    /* I2C peripheral debug */ 
 
/*========================================================================*/ 
// Playback Behavior Setup 
/*========================================================================*/ 
#define TRICK_MODE_USE_PLAY 
#define PLAY_PAUSE_TRICK_PLAY 
#ifdef PLAYER_2_CHANNEL 
  #define PAUSE_NO_TRICK 
#endif 
 
//#define PROGRAM_NO_REPEAT 
//#define RANDOM_SHUFFLE_NO_REPEAT 
#define USR_CTRL_CANCEL_REPEAT 
 
#define STOP_RESUME_CANCEL_REPEAT 
 
//#define DIGIT_CANCEL_REPEAT               // user select digit button or time search will cancel repeat mode 
 
//#define REVERSE_END_RESTART_PLAY          // restart playing instead of continue trick mode reverse 
//#define KEEP_TRICK_AFTER_SEARCH           // keep the trick mode after search 
//#defien FF_2X_PLAY_AUDIO                  // let dsp play at 2X speed instead of mute 
//#define BM_CLR_REARRANGE                  // 021031: when one bookmark is cleared, rearrange others. 
//#define DVD_TITLE_SHUFFLE                 // use title to do shuffle, instead of PG. 
//#define FFSCAN_NO_STILL                   // forward scan no vobu still, no cell still 
//#define BAN_STEP_WHEN_PAUSE_BLOCK         // If Pause is blocked, prohibit Step 
//#define FF_2X4X_NOSP                      // fast forward 2X/4X, the sub-picture will be disabled 
#define TITLE_PLAY_RESET_ASTN             // reset ASTN after a Title_Play() 
//#define TITLE_PLAY_RESET_SPSTN            // reset SPSTN after a Title_Play() 
//#define TIME_SRCH_WITHIN_A_B              // time search to C < A then C = A; to C > B then ignore time search 
 
//#define PAUSE_MODE_SWITCH                 // switch among auto, frame and video pause mode 
/*========================================================================*/ 
// Player System Config 
/*========================================================================*/ 
#define REGION_NO     0 
 
#define PLAYER_POWERDOWN 
#define PLAYER_IDLE 
#define REDUCE_POWER_MODE 
 
#ifdef PLAYER_POWERDOWN 
  //#define PLAYER_ACON_STANDBY 
  #define POWERDOWN_KEY_SCAN 
  #ifndef _NPADAC_ 
    //#define POWERDOWN_HOLD_RESET 
  #endif 
#endif 
 
#ifdef PLAYER_IDLE 
  #define IDLE_FORCE_SRV_STOP 
  //#define PLAYER_IDLE_SPEED_DOWN 
  #define PLAYER_AUTO_PWR_DOWN 
  #ifdef PLAYER_AUTO_PWR_DOWN 
    #define AUTO_PWR_DOWN_TIMEOUT   120 /* 1 tick 5 seconds */ 
  #endif 
#endif 
 
#define PLAYER_STOP_SRV_STOP 
 
//#define CDDA_SPEED_DOWN 
 
/*========================================================================*/ 
//             PSCAN RELATED SETTING 
/*========================================================================*/ 
// note this setting could be overide by setup menu setting 
#ifdef MT1379_REV_C 
  #define PSCAN_DEFAULT_VIDEO_MODE SV_PSCAN_HR 
#else 
  #define PSCAN_DEFAULT_VIDEO_MODE SV_PSCAN_NF 
#endif 
// 030220 
//note following settings are for MT1379 REV B, scene-adaptive 
#define PSCAN_MOTION_THD_LOW   0x14  // these three threshold must be High > Mid > Low 
#define PSCAN_MOTION_THD_MID   0x24  // larger: more scene become still 
#define PSCAN_MOTION_THD_HIGH  0x3c  // smaller: more scene become motion 
 
#define PSCAN_MODE_SWITCH_THD  0x8   // mode change sensitivity 
                                     // smaller: mode change more sensitive 
                                     // larger: mode change need longer time 
 
//note following settings are for MT1379 REV C, motion-adaptive 
#define PSCAN_M_PXL_THD_LOW  0x5 
#define PSCAN_M_PXL_THD_MID  0x8 
#define PSCAN_M_PXL_THD_HIGH 0xA 
#define PSCAN_M_PXL_THD_STILL 0x10 
#define PSCAN_STILL_SCENE_THD 0x3 
#define PSCAN_NTSC_MODE PS_NTSC_DEFAULT 
#define PSCAN_PAL_MODE PS_PAL_DEFAULT 
 
//for 1389 trick pscan mode setup 
#define PSCAN_TRICK_MODE 0 //SV_SLOW_INTRA, SV_FAST_INTRA, SV_STEP_INTRA 
/*========================================================================*/ 
//             VIDEO RELATED SETTING 
/*========================================================================*/ 
#define SETUP_MENU_VID_CTRL 
 
#define DISABLE_ZOOM_OUT 
 
 
#ifdef SETUP_MENU_VID_CTRL 
  //#define RESET_VDO_TRAY_OUT 
  //#define POWER_ON_RESET_VDO 
#endif 
 
//#define ENABLE_ZOOM_USER_MODE 
#define SIMPLE_ZOOM_MODE        // for old zoom mode 
 
 
#define ZOOM_IN_X_FILTER  SV_LPF 
/*========================================================================*/ 
//             AUDIO RELATED SETTING 
/*========================================================================*/ 
#ifdef MTK_ADAC 
  #define DSP_AUTO_MUTE 
#endif 
 
#ifdef HDCD_EN 
  //#define HDCD_FILTER // must be defined while certification 
  #define HDCD_AUTO_LEVEL 
#endif 
 
#ifndef MT1389_512K 
  #define SIMULTANEOUS_DOWNMIX_OUTPUT // only for MT1379 
#endif 
 
#ifdef SIMULTANEOUS_DOWNMIX_OUTPUT 
  //#define SIMULTANEOUS_DOWNMIX_OUTPUT_LTRT //Output is LT/RT, else is LO/RO 
#endif 
 
#define SUPPORT_VOLUME_ADJUST       //suport volume adjust +,-,mute or not 
//#define SUPPORT_AUDIO_KEY_ADJUST 
 
#define MUTE_KEY_MUTE_SPDIF 
 
#ifdef MUTE_KEY_MUTE_SPDIF 
  #define VOL_ZERO_AS_MUTE 
#endif 
 
#ifndef SIMULTANEOUS_DOWNMIX_OUTPUT 
  #define SPDIF_PCM_CH_SELECT 
  //#define SPDIF_PCM_FORCE_DOWNMIX 
#endif 
 
//#define MUTE_NO_VOL_KEY 
//#define DISC_IDENT_AUTO_MUTE_OFF 
 
#define SPDIF_MODE_CHANGE_MUTE 
//#define AUDIO_STREAM_CHANGE_MUTE 
 
#define USE_EXTERNAL_KARAOKE 
 
#ifdef PLAYER_2_CHANNEL 
  #define TWO_CHANNEL_ONLY 
  #define SPDIF_NO_MPEG_OUT /* with simple menu */ 
#else /* full version */ 
  #ifndef USE_EXTERNAL_KARAOKE 
    //#define PLAYER_KARAOKE 
  #endif 
  //#define PLAYER_SURROUND 
  #ifdef MT1379 
    #define DOLBY_PROLOGIC2 
  #else 
    #define DOLBY_PROLOGIC 
  #endif 
#endif 
 
//#define SPDIF_FORCE_MPEG_OUT 
 
#ifdef SPDIF_FORCE_MPEG_OUT 
  #undef  SPDIF_NO_MPEG_OUT 
#endif 
 
#ifdef DOLBY_PROLOGIC2 
  #define PL2_AV_DECODER 
  //#define PL2_CAR_AUDIO 
#endif 
 
#define VOCAL_ASSIST_STREAM_CHANGE 
#define AC3_KARA_MODE 
#ifdef PLAYER_KARAOKE 
  #ifdef SPDIF_PCM_FORCE_DOWNMIX 
  //#define KARA_FORCE_SPDIF_PCM 
  #endif 
  #define VOCAL_ASSIST_STREAM_CHANGE 
  #define AC3_KARA_MODE 
  #ifdef AC3_KARA_MODE 
    //#define AC3_KARA_MIC_ON_VOCAL 
    //#define AC3_KARA_MIC_OFF_BOTH 
    //#define AC3_KARA_MELODY 
  #endif 
 
  #define KARAOKE_SIMPLE_ECHO 
  #define KARAOKE_MIC_THRESHOLD 
  //#define KARAOKE_MIC_REC 
  #define MIC_AUTOMUTE 
  #define VOCAL_ASSIST_MIC_CNT        125    // 2.5 seconds, 20ms base 
  #ifdef VOCAL_ASSIST_MIC_CNT 
    //#define VCD_VA_MIC_OFF_STEREO 
  #endif 
 
  #define MIC_DOWNSAMPLE_RATIO          0    // 0 for 44K, 1 for 22K, 2 for 11K 
 
  #if(DRAM_SZ == DRAM_2M || DRAM_SZ == DRAM_4M) 
    #undef KARAOKE_MIC_REC            //4M bytes can not support mic record 
  #endif 
 
  #ifdef KARAOKE_MIC_REC 
    #undef MIC_AUTOMUTE               //When mic record on, do not use mic auto mute 
  #endif 
 
//  #define KARAOKE_SCORING           // define this to enable karaoke scoring 
  #ifdef KARAOKE_SCORING 
    #define KSCORE_STG_HARD   3 
    #define KSCORE_STG_NORMAL 2 
    #define KSCORE_STG_EASY   1 
    #define KSCORE_STG_PITCH  (0) 
    #define KSCORE_STG_NO_PITCH (4) 
    #define KARAOKE_SCORE_TEST 
  #endif 
#endif 
 
#ifdef KARAOKE_MIC_THRESHOLD 
  #ifdef VOCAL_ASSIST_MIC_CNT 
    #define MIC_TH_DEFAULT            9 
  #else 
    #define MIC_TH_DEFAULT            0 
  #endif 
#endif 
 
#if (!defined(PLAYER_KARAOKE) && defined(USE_EXTERNAL_KARAOKE)) 
#define MANUAL_MIC_ON_OFF   // if no microphone detect pin 
#define DSP_STOP_NO_NOTIFY 
#endif 
 
#ifdef PLAYER_SURROUND 
  //#define NO_POST_DRC_ON_OFF 
#endif 
 
#ifndef PLAYER_2_CHANNEL 
  //#define PLAY_AUDIO_CLIP 
  #define SPDIF_PCM_FREQ_SELECT 
#endif 
 
#ifdef SPDIF_PCM_FREQ_SELECT 
  //#define PCM_FREQ_CHANGE_MUTE 
  //#define PLAY_NO_PCM_FREQ_SELECT 
#endif 
 
#ifdef DOLBY_PROLOGIC 
  #if (defined(PLAYER_KARAOKE) || defined(USE_EXTERNAL_KARAOKE)) 
    #define PROLOGIC_NO_KEY_SHIFT 
  #endif 
#endif 
 
#if (!defined(ADSP_USE_APLL) || defined(MT1379_REV_C)) 
  #define DTS_NO_KEY_SHIFT 
  //#define CH_EQ_NO_SUPER_EQ 
#endif 
 
#define DVD_AUDIO_NO_KEY_SHIFT 
 
// Bass Management Method Select (Old->To L/R, New->To Sub) 
//#define BASS_TO_SUB 
 
#define AUD_EN_MIXED_MONO 
 
//#define FAKE_DTS 
 
/*========================================================================*/ 
//             SPECTRUM RELATED SETTING 
/*========================================================================*/ 
#ifndef PLAYER_2_CHANNEL 
  //#define SPTM_SUPPORT 
#endif 
 
#define SPTM_EN_BAR_TYPE 
 
#define SPTM_BAR_NOISE    (FALSE)             //add noise on bar type spectrum 
#define SPTM_GRID_NOISE   (FALSE)             //add noise on grid type spectrum 
//#define SPTM_DATA_OUT                       //out spectrum data to 8032 
#define USE_MED_SPTM 
 
#ifdef USE_LARGE_SPTM 
#define SPTM_TOTAL_LINE   15 
#define SPTM_LINE_HEIGHT  128 
#define SPTM_LINE_WIDTH   24 
#define SPTM_LINE_SPACE   4 
#endif 
 
#ifdef USE_MED_SPTM 
#define SPTM_TOTAL_LINE   13 
#define SPTM_LINE_HEIGHT  64 
#define SPTM_LINE_WIDTH   24 
#define SPTM_LINE_SPACE   8 
#endif 
 
/*========================================================================*/ 
// Auto Play Option 
/*========================================================================*/ 
#define DVD_AUTO_PLAY 
#ifdef VCD_SUPPORT 
  #define VCD_AUTO_PLAY 
#endif 
#define CDDA_AUTO_PLAY 
#ifdef MT1379_MANUFACTURE_TEST 
#define ISO_AUTO_PLAY 
#endif 
 
//#define USE_8032_AUTO_PLAY 
 
//#define AUTO_LONGEST_TT_PLAY    // set this to auto play the longest title 
#define LONG_TT_OPTION_MAX_PTT  /* set this to use title with max PttNs as 
                                   the longest title, otherwise use title 
                                   with longest time instead              */ 
/*========================================================================*/ 
// Last Memory Option 
/*========================================================================*/ 
 
//#define LAST_MEM_SUPPORT 
 
#if (defined(I2C_EEPROM) && (!defined(PLAYER_2_CHANNEL))) 
 #if defined(LAST_MEM_SUPPORT) 
  #ifdef VCD_SUPPORT 
    //#define VCD_LAST_MEM 
  #endif 
 // #define DVD_LAST_MEM 
  //#define CDDA_LAST_MEM 
  //#define ISO_LAST_MEM 
 #endif 
#endif 
 
//#define MEMORY_SUPPORT 
 
//#define SHARED_LASTMEM_SLOT 
 
#ifdef SHARED_LASTMEM_SLOT 
  //#define EEPROM_LASTMEM_EJECT_WR_BACK 
#endif 
 
#ifndef EEPROM_LASTMEM_EJECT_WR_BACK 
  #define EEPROM_CHK_LASTMEM_CHKSUM 
#endif 
 
//#define EN_DISC_ID_CHK 
 
#ifdef EN_DISC_ID_CHK 
  #define DVD_DISC_ID_CHK 
  #ifdef VCD_SUPPORT 
    #define VCD_DISC_ID_CHK 
  #endif 
  #define CDDA_DISC_ID_CHK 
  #define ISO_DISC_ID_CHK 
  #define PCD_DISC_ID_CHK 
 
  #ifndef USE_8032_AUTO_PLAY 
    #define USE_8032_AUTO_PLAY 
  #endif 
#endif 
 
/*========================================================================*/ 
// DVD Misc. Option 
/*========================================================================*/ 
#define DIRECT_SEARCH 
#define TITLE_PLAY_IGNORE_UOP_BLOCK    (TRUE) 
#define DVD_STOP_PLAY_NO_FP 
#define DVD_IGNORE_BTN_NO_CMD 
#define MENU_TITLE_KEY_RESUME 
//#define DVD_NO_VID_NO_STEP 
 
#define DVD_MENU_NO_ZOOM 
 
#define DVD_SHOW_MSG_FIRST 
 
//#define DVD_SHOW_MENU_TIME 
 
#ifndef DVD_SHOW_MENU_TIME 
  //#define DVD_MENU_OSD_TIME_ZERO 
#endif 
 
//#define DVD_LAST_MEM_WAIT_INPUT // 020731 
 
#define TREAT_PS_LB_AS_THE_SAME 
 
#ifndef PAUSE_MODE_SWITCH 
  #define VIDEO_PAUSE_SHOW_1FLD 
#endif 
 
//#define VIDEO_PN_NO_FRM_YC 
 
#ifdef PLAYER_NUI 
  #define VIDEO_SHOW_DYNAMIC_BITRATE 
#endif 
 
//#define VIDEO_LOGO_KEEP_TVSYS 
 
//#define VIDEO_SPEED_CONTROL 
 
//#define SP_N2P_NO_SCALE 
 
#define ENABLE_LNKPRVC_CHK_PRV_PG // 030605: turn on as default for DVD-Audio "HALLOWEEN FRANK ZAPPA" 
 
//#define USR_CTRL_NO_MENU_TITLE_KEY 
 
#define DVD_NO_PTT_PLAY_UOP_BLOCK 
 
//#define DVD_STOP_NO_MENU_CALL 
 
//#define DVD_NO_REPEAT_ALL 
 
//#define DVD_DGST_SHOW_MSG_ONLY 
//#define DVD_CHAP_3_DIGITS 
#define DVD_IN_MENU_BLOCK_MENU_CALL 
 
#define DVD_SP_UNKNOWN_LCD_MSG        OSD_MSG_NULL   // OSD_MSG_SP_OTHERS    // OSD_MSG_UNKNOWN 
 
//#define DVD_AUDIO_INFO_NO_CHNL 
 
#define DVDAUD_HIDE_HGR 
//#define DVDAUD_PREV_DLIST_CYCLE 
 
//#define DVD_STOP_NO_RESET_PTL 
 
#ifdef DVD_STOP_NO_RESET_PTL 
  #define NOTIFY_PTL_LV_CHG 
#endif 
 
//#define DVD_STOP_NO_RESET_ASTN //020805 
//#define DVD_STOP_NO_RESET_SPSTN 
//#define DVD_STOP_NO_RESET_AGLN 
 
//#define DVD_REVERSE_END_RESTART_PLAY          // restart playing instead of continue trick mode reverse 
//#define DVD_KEEP_TRICK_AFTER_SEARCH           // keep the trick mode after search 
//#define DVD_FORWARD_END_RESTART_PLAY         // restart playing instead of continue trick mode forward 
//#define DVD_FF_2X_PLAY_AUDIO                       // let dsp play at 2X speed instead of mute 
//#define DVD_SKIP_KEEP_A                         // keep a point when doing next pg search 
//#define DVD_STILL_NO_TRICK                      // in still menu, trick mode is prohibited. 
#define DVD_FAST_ALLOW_NO_VIDEO             // in fast mode, allow jumping to a VOBU without video 
 
//#define DVD_FORCE_CHG_ANGLE  // allow user to change angle even in non-angle-block cell 
 
#ifdef DVD_FORCE_CHG_ANGLE 
#define DVD_FAST_SL_AGL_CHG  // seamless angle change doesn't block UOP 
#endif 
 
//#define DVD_REP_HLI_NO_FORCED_EXE   // in repeat, ignore forced execution of HLI 
 
//#define DVD_AST_FOLLOW_USR   // warning: turning this on violates the spec 
//#define DVD_SPST_FOLLOW_USR  // warning: turning this on violates the spec 
//#define DVD_LOCK_INI_LCD     // allow INI_LCDs to be changed only in Initial Access 
 
/*========================================================================*/ 
// VCD Misc. Option 
/*========================================================================*/ 
#ifdef VCD_SUPPORT 
#define VCD_PBC_ON_PLAY 
  //#define VCD_PLAY_PBC_ON 
  #define VCD_KEEP_FF 
  #define VCD_KEEP_FR 
  //#define VCD_KEEP_SF 
  #define VCD_FORCE_PBC_ON_OFF 
  //#define VCD_FF2X_NO_MUTE 
  //#define VCD_SEARCH_KEEP_FF 
  //#define VCD_SEARCH_KEEP_FR 
  //#define VCD_SEARCH_KEEP_SF 
  //#define VCD_SEARCH_KEEP_PAUSE 
  //#define VCD_REPAB_KEEP_FF 
  //#define VCD_REPAB_KEEP_SF 
 
  // if pbc table is wrong, go to simulate pbc on 
  #define VCD_FAKE_PBC 
 
  // if pbc state of last memory slot is not equal to current pbc state, discard last memory play 
  //#define VCD_STRICT_MEM_CHK 
 
  //#define SETUP_MENU_PBC_CTRL // Enable setup menu PBC control 
 
  #ifndef SETUP_MENU_PBC_CTRL 
    //#define VCD_DEFAULT_PBC_OFF 
  #endif 
 
  //#define VCD_MENU_NO_ZOOM_IN 
  //#define VCD_MENU_NO_ZOOM_OUT 
 
  #define VCD_MENU_NO_ZOOM 
 
  // for backward compatibility 
  #ifdef VCD_MENU_NO_ZOOM 
    #define VCD_MENU_NO_ZOOM_OUT 
  #endif 
 
  #define SVCD_4AST 
  #define VCD_USE_BOOKMARK_PBC 
  //#define VCD_NOT_KEEP_FF_IN_TRK_0 
  //#define CVD_4AST 
 
  //#define VCD_DGST_SHOW_MSG_ONLY 
  //#define VCD_VFD_SHOW_HOUR 
  //#define VCD_VFD_TRACK0_SHOW_TIME 
  //#define VCD_TRACK0_NO_FF_FR 
 
  // 0 - 10, the bigger, the higher skip rate 
  #define VCD_PSR_ERR_SKIP_LV 0 
 
#endif /* #ifdef VCD_SUPPORT */ 
/*========================================================================*/ 
// CDDA Misc. Option 
/*========================================================================*/ 
#define CDDA_FF_KEEP_TRICK 
#define CDDA_FR_KEEP_TRICK 
//#define CDDA_SEARCH_KEEP_TRICK  //not support in 1369 
 
#define CDDA_AUTO_DISPLAY 
 
//#ifdef MTK_TINY 
//#define CDG_SUPPORT  // 1389 Rev D always not support CDG 
//#endif 
 
#ifndef PLAYER_2_CHANNEL 
  #define CDDA_NO_DISPLAY_OFF 
#endif 
 
#ifndef CDDA_AUTO_DISPLAY 
  #ifdef CDDA_NO_DISPLAY_OFF 
    #define CDDA_AUTO_DISPLAY 
  #endif 
#endif 
 
#ifdef HDCD_EN 
//#define SHOW_CD_STREAM_TYPE 
#endif /* HDCD_EN */ 
 
#define CDDA_RTIME_FROM_ATIME   // show RTime from ATime 
 
//#define CDDA_FAST_LOWER_VOL     // FF/FR lower volume 2 
//#define CDDA_LOWER_LVL  2 
 
#define   CDG_START_X   44 
#define   CDG_START_Y   16 
#define   CDG_M_WIDTH   72 
#define   CDG_M_H_PAL   28 
#define   CDG_M_H_NTSC  36 
 
//#define SHOW_CD_TEXT 
//#define SHOW_CD_JACKET 
 
#ifdef SHOW_CD_TEXT 
  #define SUPPORT_CD_TEXT 
#endif 
/*========================================================================*/ 
// SACD Misc. Option 
/*========================================================================*/ 
//#define SUPPORT_SACD 
#ifdef SUPPORT_SACD 
  //#define SACD_PCM_OUTPUT // if not define, SACD will output DSD data to DAC 
#endif 
 
/*========================================================================*/ 
// Picture CD or JPEG behavior Misc. Option 
/*========================================================================*/ 
//#define JPEG_SHOW_DEC_STATUS 
#define JPEG_SEL_AUTOSLIDE 
//#define JPEG_SHOW_THUMBNAIL_IDX 
 
//#define JPEG_DIGEST_BK_USE_LOGO  //add this option to save space. 
 
#ifdef JPEG_DIGEST_BK_USE_LOGO 
  #define JPEG_BG_FOR_DIGEST_MENU     SV_DIGEST_BG_LOGO_MIN 
#else 
  #define JPEG_BG_FOR_DIGEST_MENU     (SV_DIGEST_BG_COLOR + SV_DIGEST_BG_COLOR_BLUE) 
  #define JPEG_BG_COLOR_Y     0x00 // make it bluer 
  #define JPEG_BG_COLOR_CB    0xA4 
  #define JPEG_BG_COLOR_CR    0x75 
#endif 
 
//#define JPG_PREVIEW_SUPPORT 
#ifdef JPG_PREVIEW_SUPPORT 
#define JPEG_PREVIEW_BG       0x02 
#endif 
 
#define JPEG_SLIDESHOW_INTERVAL     3 
#define JPEG_TRANSITION_SPEED       10    // 0 ~ 255, 0:fastest, 255:slowest 
//#define JPEG_AUTO_SLIDE_AFTER_ROTATE 
#ifdef JPEG_AUTO_SLIDE_AFTER_ROTATE 
  #define JPEG_TIME_TO_SLIDE        4     //0 ~ 15 
#endif 
//#define JPEG_DDISC_DIGEST_ENABLE 
//#define JPEG_PROGRESS_SHOW_ENABLE 
 
//#define JPEG_DGST_SHOW_NO 
#define  JPEG_DIGEST_4x3 
#ifdef  JPEG_DIGEST_4x3 
#define DIGEST_START_X_DIV_4          (100/4) 
#define DIGEST_START_Y_NTSC_DIV_5     (105/5) 
#define DIGEST_X_DIM_NUMS             4 
#define DIGEST_Y_DIM_NUMS             3 
#define DIGEST_H_GAP_DIV_4            (40/4) 
#define DIGEST_V_GAP_NTSC_DIV_5       (15/5) 
#define DIGEST_WIDTH_DIV_4            (100/4) 
#define DIGEST_HEIGHT_DIV_5           (80/5) 
#else //3x3 
#define DIGEST_START_X_DIV_4          (100/4) 
#define DIGEST_START_Y_NTSC_DIV_5     (40/5) 
#define DIGEST_X_DIM_NUMS             3 
#define DIGEST_Y_DIM_NUMS             3 
#define DIGEST_H_GAP_DIV_4            (20/4) 
#define DIGEST_V_GAP_NTSC_DIV_5       (10/5) 
#define DIGEST_WIDTH_DIV_4            (160/4) 
#define DIGEST_HEIGHT_DIV_5           (110/5) 
#endif 
 
#define JPG_MAX_PROGRESS_PIC_SIZ      0 
    // n >0: set maximum progressive jpg picture size(width x height) to (n*100000) 
    // n =0: turn off 
//#define JPG_ADAPTIVE_PAN_STEP 
#ifdef  JPG_ADAPTIVE_PAN_STEP 
  #define JPG_H_PAN_STEP_NUM        69 
  #define JPG_V_PAN_STEP_NUM        39 
#endif 
 
/*========================================================================*/ 
// MPEG4 Misc. Option 
/*========================================================================*/ 
#define AVI_FF_MODE SV_AVIFF_QUICK 
 
 
/*========================================================================*/ 
// DATA DISC Misc. Option 
/*========================================================================*/ 
//#define DDISC_PB_SINGLE_ENABLED   //to solve repeat then shuffle then repeat , display Single 
//#define DDISC_PB_SHUFFLE_ENABLED//oneway enable for mico 
//#define DDISC_PB_RANDOM_ENABLED//oneway enable for mico 
#define DDISC_PB_REP_FOLDER_ENABLED 
 
#define DDISC_DEF_PLAYBACK_MODE     SV_REPEAT_NONE 
#define DDISC_READ_DISC_RETRY       4 
#ifdef PLAYER_NUI 
  #if (DRAM_SZ == DRAM_8M) 
       #define DDISC_ENB_CONC_AV_MODE 
  #endif 
#endif 
 
//#define DISABLE_SF 
#define DISABLE_SR 
//#define SHOW_FS_SLIDER 
//#define CDDA_USE_CDFS 
#ifdef CDDA_USE_CDFS 
#define DDISC_ENB_CDFS 
#define SUPPORT_DATA_DISC 
#define CDFS_AUTO_PLAY 
#endif 
#define DDISC_ENB_MIXED_TYPE_MODE 
 
// - for data type support 
#define DDISC_FTYPE_MP3_SUPPORT 
#define DDISC_FTYPE_MPEGA_SUPPORT 
//#define DDISC_FTYPE_AAC_SUPPORT 
 
#if !defined(MTK_TINY) && !defined(PLAYER_BASIC) 
  #define DDISC_FTYPE_JPEG_SUPPORT 
#endif 
 
//#define DDISC_FTYPE_MPG_SUPPORT 
#define DDISC_FTYPE_WMA_SUPPORT // config by chip version 
 
#ifndef MTK_TINY 
  #define DDISC_FTYPE_MLP_SUPPORT 
#endif 
 
//#define DDISC_FTYPE_WAV_SUPPORT 
#define DDISC_FTYPE_MP3PRO_SUPPORT 
 
//#define DDISC_FTYPE_MAP_SUPPORT 
//#define DDISC_FTYPE_CDDA_SUPPORT 
 
/*========================================================================*/ 
// FSMENU Option 
/*========================================================================*/ 
//#define FSMENU_STYLE_1 
#define FSMENU_WITH_BUTTONS 
//#define FSMENU_DISABLE_PREV_WHEN_SHUFFLE 
#define FSMENU_DEF_OPMODE   SV_FSMENU_OPMODE_DIRBWR 
//#define FSMENU_DISABLE_OPMODE_SWITCH 
#define FSMENU_SYNC_SELECTED_AND_HILIT 
#define FSMENU_PARENT_DIR_MSG_IDX   OSD_MSG_PARENT_DIR 
//#define FSMENU_HLITEM_TEXT_COLOR  COLOR_BLACK 
#define FSMENU_DENY_PLAYING_ITEM_SELECTION 
//#define FS_ENABLE_NEXT_PREV_WHEN_SINGLE 
 
#ifdef PLAYER_NUI 
  #define FSMENU_INFO_PANEL 
  #define FSMENU_MTK_STYLE 
#endif 
 
#ifdef PLAYER_VRMT 
  #define ISO_PAUSE_STEP_NO_STEP 
#endif 
 
  #define ISO_PLAY_KEY_CONTINUE_PLAY  //nicle[04\07\27] 
 
/*========================================================================*/ 
// Audio file Option 
/*========================================================================*/ 
//#define AFILE_TRICK_MODE_STILL 
//#define ENABLE_ID3 
 
/*========================================================================*/ 
// OSD Display Option 
/*========================================================================*/ 
#define MT1389_OSD 
 
#ifdef PLAYER_NUI 
  #define NUI_OSD_STYLE 
  #define OSD_SLIDER_SUPPORT 
#else 
  #define FONT_NO_BORDER 
#endif 
 
//#define OSD_TRANSPARENT_BG 
 
#define PLAY_INFO_SHOW_TYPE   3 
 
#if (PLAY_INFO_SHOW_TYPE == 1) 
  #define KEEP_REMAIN_TYPE_SHOW 
  #define KEEP_PLAY_INFO_SHOW 
#elif (PLAY_INFO_SHOW_TYPE == 2) 
  #define DISPLAY_SHOW_INFO_FIRST 
#elif (PLAY_INFO_SHOW_TYPE == 3) 
  #define KEEP_PLAY_INFO_SHOW 
  #define TIME_INFO_SAME_LINE 
#endif 
 
#define USR_PBC_NO_TOTAL_TIME 
#define SHOW_ERROR_TYPE_MSG 
 
#define NO_DISC_STOP_CLEAR // for DEMO 
 
//#define MULTI_LANG 
 
// for test 
#define SEARCH_INPUT_SHOW 
 
#ifdef PLAYER_NUI 
  #define OSD_SWAP_LINE_23 
#endif 
 
/*========================================================================*/ 
// DVD Next/Prev Style 
/*========================================================================*/ 
#define DVD_NEXT_STYLE        SV_DVD_NEXT_POST 
//#define DVD_NEXT_STYLE                (SV_DVD_NEXT_TITLE + SV_DVD_NEXT_POST) 
 
 
  #define DVD_PREV_STYLE      (SV_DVD_PREV_TITLE + SV_DVD_PREV_CHAP + SV_PREV_GOTOP) 
  #define DVD_GOTOP_OFFSET    2 /* vobu */ 
 
#define DVD_FIRST_ITEM_PREV_STOP  /* for user control mode only */ 
#define DVD_LAST_ITEM_NEXT_STOP   /* for user control mode only */ 
 
//#define DVD_SHUFFLE_NO_PREV 
 
/*========================================================================*/ 
// VCD Next/Prev Style 
/*========================================================================*/ 
#ifdef VCD_SUPPORT 
  #define VCD_PBC_NEXT_STYLE    SV_VCD_NEXT_NORMAL /* NORMAL, RETURN, STOP */ 
  #define VCD_PBC_PREV_STYLE    SV_VCD_PREV_NORMAL /* NORMAL, RETURN, STOP */ 
 
  #ifdef PLAYER_2_CHANNEL 
    #define VCD_PREV_STYLE      SV_PREV_ONLY 
    #define VCD_GOTOP_OFFSET    0 /* seconds */ 
  #else 
#define VCD_PREV_STYLE      SV_PREV_ONLY 
#define VCD_GOTOP_OFFSET    0 /* seconds */ 
  #endif 
 
  #define VCD_FIRST_TRACK_PREV_STOP  /* for PBC off sequential play only */ 
  #define VCD_LAST_TRACK_NEXT_STOP   /* for PBC off sequential play only */ 
 
//  #define VCD_SHUFFLE_NO_PREV 
 
  //#define PBC_ON_NUM_SEL_TRK 
#endif /* #ifdef VCD_SUPPORT */ 
/*========================================================================*/ 
// CDDA Next/Prev Style 
/*========================================================================*/ 
#ifdef PLAYER_2_CHANNEL 
  #define CDDA_PREV_STYLE     SV_PREV_ONLY 
  #define CDDA_GOTOP_OFFSET   0 /* seconds */ 
#else 
  #define CDDA_PREV_STYLE     SV_PREV_ONLY 
  #define CDDA_GOTOP_OFFSET   0 /* seconds */ 
#endif 
 
#define CDDA_FIRST_TRACK_PREV_STOP 
#define CDDA_LAST_TRACK_NEXT_STOP 
 
//#define CDDA_SHUFFLE_NO_PREV 
 
/*========================================================================*/ 
// Stop Mode Option 
/*========================================================================*/ 
#define STOP_RESUME_TWO_KEYS  1 
#define STOP_RESUME_TWO_STOP  2 
 
#ifdef DISC_UPDATE_CODE 
  //#define SUPPORT_CAPTURE_LOGO 
#endif 
 
#ifdef SUPPORT_CAPTURE_LOGO 
  #define DVD_STOP_LOGO         SV_LOGO_SETUP 
  #define DVD_LOGO_COLOR        0 
  #ifdef VCD_SUPPORT 
    #define VCD_STOP_LOGO         SV_LOGO_SETUP 
    #define VCD_LOGO_COLOR        0 
  #endif 
  /* 
  #define ISO_STOP_LOGO         SV_LOGO_SETUP 
  #define ISO_LOGO_COLOR        0 
  */ 
  #define ISO_STOP_LOGO         SV_LOGO_FLASH 
  #ifdef NUI_OSD_STYLE 
    #define ISO_LOGO_COLOR        2 //0 [runma] 0->2 
  #else 
    #define ISO_LOGO_COLOR        0 
  #endif 
  #define CDDA_STOP_LOGO        SV_LOGO_SETUP 
  #define CDDA_LOGO_COLOR       0 
 
  #ifdef SUPPORT_DVD_AUDIO 
    #define CAP_LOGO_SZ          SV_CAP_LOGO_SZ_64K_CPPM 
    #define CAP_LOGO_CPPM_NOT_OVERLAP 
  #else 
    #define CAP_LOGO_SZ          SV_CAP_LOGO_SZ_64K 
  #endif 
#else 
  #define DVD_STOP_LOGO         SV_LOGO_JACKET 
  #define DVD_LOGO_COLOR        0 
  #define VCD_STOP_LOGO         SV_LOGO_FLASH 
  #define VCD_LOGO_COLOR        0 
  #define ISO_STOP_LOGO         SV_LOGO_FILL//SV_LOGO_FLASH 
  #ifdef NUI_OSD_STYLE 
    #define ISO_LOGO_COLOR        2 //0 [runma] 0->2 
  #else 
    #define ISO_LOGO_COLOR        0 
  #endif 
  #define CDDA_STOP_LOGO        SV_LOGO_FLASH 
  #define CDDA_LOGO_COLOR       LOGO_BLUE 
#endif 
 
/*========================================================================*/ 
// DVD Audio/Sub-title/Angle Change Option 
/*========================================================================*/ 
#define DVD_STREAM_CHANGE_DIRECT  0 
#define DVD_STREAM_CHANGE_INFO    1 
#define DVD_STREAM_CHANGE_SELECT  2 
 
#ifdef AUDIO_STREAM_CHANGE_MUTE 
  #define DVD_USER_STREAM_CHANGE    DVD_STREAM_CHANGE_INFO 
#else 
  #define DVD_USER_STREAM_CHANGE    DVD_STREAM_CHANGE_DIRECT 
#endif 
 
#define DVD_ANGLE_CHANGE_SELECT 
 
/* for DVD change audio stream */ 
#define DVD_CHG_AST_OPT2    SV_AUDIO_MASTER 
#define DVD_CHG_AST_OPT3    SV_UOP_FORCE 
 
#if (DVD_USER_STREAM_CHANGE != DVD_STREAM_CHANGE_DIRECT) 
//#define DVD_UOP_BLOCK_NO_STREAM_INFO 
#endif 
 
/*========================================================================*/ 
// Trick Mode Customization 
/*========================================================================*/ 
#if(defined (_SHOW_COM_C_)) 
#define FAST_MAX   6 
#define SLOW_MAX   5 
static code BYTE pbFastDispTbl[FAST_MAX] = { 0, 2, 4, 8, 16, 32 }; 
static code BYTE pbSlowDispTbl[SLOW_MAX] = { 0, 2, 4, 8, 16 }; 
#endif 
 
#if (defined(_PLAY_DVD_C_) || defined(_SHOW_DVD_C_)) || defined(_GOTO_C_) 
 
#define DVD_FAST_MAX    6 /* 32X */ 
#define DVD_SLOW_MAX    5 /* 1/16 */ 
 
  #if defined(_PLAY_DVD_C_) 
static code BYTE pbDVDFastSpeedTbl[DVD_FAST_MAX] = { 0, 0, 0, 2, 4, 8 }; 
  #elif defined(_SHOW_DVD_C_) || defined(_GOTO_C_) 
static code BYTE pbDVDFastDispTbl[DVD_FAST_MAX] = { 0, 2, 4, 8, 16, 32 }; 
    #if ((!defined DISABLE_SF) && (!defined DISABLE_SR)) 
static code BYTE pbDVDSlowDispTbl[DVD_SLOW_MAX] = { 0, 2, 4, 8, 16 }; 
  #endif 
  #endif 
 
#elif (defined(_PLAY_VCD_C_) || defined(_SHOW_VCD_C_)) 
 
#define VCD_FAST_MAX    6 /* 32X */ 
#define VCD_SLOW_MAX    5 /* 1/16 */ 
 
  #if defined(_PLAY_VCD_C_) 
static code BYTE pbVCDFastSpeedTbl[VCD_FAST_MAX] = { 0, 0, 0, 2, 4, 8 }; 
  #elif (defined(_SHOW_VCD_C_)) 
static code BYTE pbVCDFastDispTbl[VCD_FAST_MAX] = { 0, 2, 4, 8, 16, 32 }; 
    #if ((!defined DISABLE_SF) && (!defined DISABLE_SR)) 
static code BYTE pbVCDSlowDispTbl[VCD_SLOW_MAX] = { 0, 2, 4, 8, 16 }; 
  #endif 
  #endif 
 
#elif (defined(_PLAY_ISO_C_) || defined(_SHOW_ISO_C_)) 
 
#define ISO_FAST_MAX    6 /* 32X */ 
#define ISO_SLOW_MAX    5 /* 1/16 */ 
 
  #if defined(_PLAY_ISO_C_) 
static code BYTE pbISOFastSpeedTbl[ISO_FAST_MAX] = { 0, 0, 0, 2, 4, 8 }; 
  #elif (defined(_SHOW_ISO_C_)) 
static code BYTE pbISOFastDispTbl[ISO_FAST_MAX] = { 0, 2, 4, 8, 16, 32 }; 
static code BYTE pbISOSlowDispTbl[ISO_SLOW_MAX] = { 0, 2, 4, 8, 16 }; 
  #endif 
 
#elif (defined(_PLAY_CDDA_C_) || defined(_SHOW_CDDA_C_)) 
 
#define CDDA_FAST_MAX   6 /* 32X */ 
#define CDDA_SLOW_MAX   5 /* 1/16 */ 
 
  #if defined(_PLAY_CDDA_C_) 
static code BYTE pbCDDAFastSpeedTbl[CDDA_FAST_MAX] = { 0, 2, 4, 8, 16, 32 }; 
  #elif defined(_SHOW_CDDA_C_) 
static code BYTE pbCDDAFastDispTbl[CDDA_FAST_MAX] = { 0, 2, 4, 8, 16, 32 }; 
static code BYTE pbCDDASlowDispTbl[CDDA_SLOW_MAX] = { 0, 2, 4, 8, 16 }; 
  #endif 
 
#endif /* end of trick mode customization */ 
 
/*========================================================================*/ 
// User Control Option 
/*========================================================================*/ 
#ifndef PLAYER_BASIC 
//#ifdef GCY_EDIT 
   #define PLAYER_PROGRAM 
//#endif 
  #ifdef PLAYER_PROGRAM 
    #define DVD_PROGRAM 
    #define VCD_PROGRAM 
    #define CDDA_PROGRAM 
  #endif 
#endif 
 
#if !defined(PLAYER_2_CHANNEL) && !defined(PLAYER_BASIC) 
#ifdef GCY_EDIT 
  //#define PLAYER_BOOKMARK 
#endif 
  //#define PLAYER_DIGEST 
#endif /* PLAYER_2_CHANNEL */ 
 
#ifdef PLAYER_NUI 
  #define MTK_MENU 
  #ifdef SUPPORT_DATA_DISC 
    #define PLAYER_FLMENU // new file sustem menu 
  #endif 
  #ifndef PLAYER_BASIC 
    //#define PLAYER_VRMT // Add for NUI 
    //#define PLAYER_GOTO    // Add for NUI 
    //#define PLAYER_ZOOMIN_INDICATOR 
  #endif 
//  #define STPMN_HEAD_GRAY //add for nui, gray header bitmap when unselected. 
#endif 
 
#ifdef PLAYER_PROGRAM 
  //#define PROG_NO_STOP_RESUME 
#endif 
 
#if (defined(SUPPORT_DVD_AUDIO) && defined(PLAYER_DIGEST)) 
  #if (DRAM_SZ == DRAM_4M) 
    #define PLAYER_SCAN 
  #endif 
#endif 
 
#define STOP_CANCEL_USR_CTRL 
//#define SINGLE_STOP_KEEP_USR_CTRL 
 
/*========================================================================*/ 
// VFD display related config 
/*========================================================================*/ 
//#define PLAYER_NO_VFD         //turn on VFD function xj_hawk 
//#define PANEL_LED 
//#define LCD_HT1621 
 
//#define VFD_SHOW_PBC_PLAY 
//#define VFDICON_SHOW_CVD_AS_VCD 
 
#ifdef PLAYER_NO_VFD 
  //#define PLAYER_IO_KEY 
  //#define PLAYER_IO_LED 
#else 
  #ifdef INTERNAL_TEST 
    #define VFD_SHOW_ERR 
  #endif 
  //#define PANEL_VFD_LED 
  //#define VFD_VOLATILE_MSG 
  //#define VFD_WHEEL_REVERSE_ROTATE 
  //#define DVD_MENU_SHOW_VFD_WHEEL 
  //#define VCD_MENU_SHOW_VFD_WHEEL 
  //#define JPEG_DECODING_SHOW_VFD_WHEEL 
  //#define VFD_NO_DIRECT_MSG 
  //#define VFD_INIT_STATE_FLASHING 
  //#define VFD_MULTI_FUNC_KEY 
#endif 
 
#ifdef PANEL_VFD_LED 
  //#define VFD_STANDBY_LED 
  //#define VFD_HDCD_LED 
#endif 
 
#define VFD_DATA_H    ".\vfd\vfd_data.h" 
#define VFD_DATA_C    ".\vfd\vfd_data.c" 
#define VFD_KEY_C     ".\vfd\vfdkey.c" 
 
// turn RISC_1K_SQUARE_WAVE on will ask RISC to generate 1K HZ square wave in P3.5 
//#define RISC_1K_SQUARE_WAVE 
 
/*========================================================================*/ 
// Password 
/*========================================================================*/ 
#if 1//def PLAYER_2_CHANNEL 
  #define PASSWORD_LEN          4 /* 4 ~ 6 */ 
#else 
  #define PASSWORD_LEN          6 /* 4 ~ 6 */ 
  #define NO_DEFAULT_PASSWORD 
#endif 
 
// Universal Password 
#ifdef __STPPASS_C_ 
  #if (PASSWORD_LEN == 4) 
static code BYTE _pbSuperPass[4] = {8, 8, 0, 6}; 
  #elif (PASSWORD_LEN == 5) 
static code BYTE _pbSuperPass[5] = {1, 3, 6, 9, 0}; 
  #elif (PASSWORD_LEN == 6) 
static code BYTE _pbSuperPass[6] = {1, 3, 6, 9, 0, 0}; 
  #endif 
#endif /* _PASSR_C_ */ 
 
// Factory Default Password 
#ifdef _EEPROM_C_ 
  #ifdef NO_DEFAULT_PASSWORD 
    #if (PASSWORD_LEN == 4) 
static code BYTE _pbFactoryPass[4] = {0xff, 0xff, 0xff, 0xff}; 
    #elif (PASSWORD_LEN == 5) 
static code BYTE _pbFactoryPass[5] = {0xff, 0xff, 0xff, 0xff, 0xff}; 
    #elif (PASSWORD_LEN == 6) 
static code BYTE _pbFactoryPass[6] = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff}; 
    #endif 
  #else /* set default password */ 
    #if (PASSWORD_LEN == 4) 
static code BYTE _pbFactoryPass[4] = {8, 8, 0, 6}; 
    #elif (PASSWORD_LEN == 5) 
static code BYTE _pbFactoryPass[5] = {1, 2, 3, 4, 5}; 
    #elif (PASSWORD_LEN == 6) 
static code BYTE _pbFactoryPass[6] = {1, 2, 3, 4, 5, 6}; 
    #endif 
  #endif /* end of default password */ 
#endif /* _EEPROM_C_ */ 
 
#ifdef PLAYER_GOTO 
  #ifdef DVD_MENU_NO_ZOOM 
    #define GOTO_VTSTT_DOM_ONLY   // allow entering Goto in VTSTT_DOM only 
  #endif 
  #ifdef VCD_MENU_NO_ZOOM 
    #define GOTO_IN_TRACK_ONLY 
  #endif 
 
  //#define NO_SCROLL_OVER  // define this to disable scrolling over behaviior 
                            // such as setup menu, goto menu 
 
  //#define GOTO_VCD_SEGMENT  // define this to enable VCD's segment search 
 
  #define GOTO_STATUS_NO_TTCH  // define this to show displayed time type and bitrate number 
 
  //#define GOTO_SEPARATE_KEY   IR_XXX  // define this to use another key for entering Goto 
#endif 
 
/*========================================================================*/ 
// Setup Menu 
/*========================================================================*/ 
//#define SETUP_MENU_OPTION_SELECT_RETAIN_OPTION //Retain in option area when option is selected. 
 
#define SETUP_USE_TAB 
 
#define BITMAP_DEF  0 
#define BITMAP_JYC1 1 
#define BITMAP_JYC2 2 
#define SETUP_HEAD_BITMAP BITMAP_DEF 
 
#ifndef MTK_MENU 
  #define SETUP_NO_BORDER 
  //#define SETUP_SHOW_BMP 
#endif 
 
//#define NO_REGION_CODE        //do not show region code 
//#define NO_INT_VER            //do not show internal version number 
 
#ifdef MTK_MENU 
  #ifdef PLAYER_2_CHANNEL 
//    #define SHOW_MARK 
    #define SIMPLE_MENU 
  #endif 
#else 
  #ifdef PLAYER_2_CHANNEL 
    #define SHOW_MARK 
    #define SIMPLE_MENU 
  #else 
    #define SHOW_MARK 
  #endif 
#endif 
 
//#define SETUP_NO_CC_CTRL 
//#define SETUP_NO_AGL_MARK 
 
#if (defined(USE_TYPE_2) && !defined(SIMPLE_MENU)) 
  //#define SETUP_USE_TYPE2_ONLY 
#endif 
 
#ifdef MT1379 
  #define SUPPORT_TRUECOLOR 
  #define SETUP_MENU_TRUECOLOR 
  #define ALL_WB_USE_TRUECOLOR 
  //#define USE_ONE_BIT_WB 
  #ifdef USE_ONE_BIT_WB 
    #define TWO_LINE_OSD 
  #endif 
  #ifdef PLAYER_VRMT 
    #define VRMT_WB_USE_TRUECOLOR 
  #endif 
#else // MT1369 
//#define SUPPORT_TRUECOLOR 
//#define SETUP_MENU_TRUECOLOR 
//#define ALL_WB_USE_TRUECOLOR 
#endif 
 
#define WB_ALLOC_MIN 
 
#ifndef PLAYER_2_CHANNEL 
 // #define ENABLE_USER_LANG_CODE 
  #ifdef MTK_TVE 
    #define STP_VDO_Q_MENU 
  #endif 
#endif 
 
#if (!defined(TWO_CHANNEL_ONLY) && defined(PLAYER_SURROUND)) 
  #define SET_VSURR_IN_SPKCFG 
#endif 
 
#ifndef SUPPORT_TRUECOLOR 
  #undef SETUP_MENU_TRUECOLOR 
#endif 
 
#define RESET_CLOSE_SETUP_MENU 
//#define SIMPLE_USE_MULTI_MENU 
 
#define SCART_SELECTION 
 
//#if !defined(SIMPLE_MEUN) && defined(SIMPLE_USE_MULTI_MENU) 
//#undef SIMPLE_USE_MULTI_MENU 
//#endif 
 
#ifdef PLAYER_NUI 
  #define SET_PTL_NEED_PWD 
  #ifndef SIMPLE_MENU 
  #define PTL_PWD_MODE_SW 
  #endif 
#else 
  //#define SET_PTL_NEED_PWD 
  //#define PTL_PWD_MODE_SW 
#endif 
 
#ifndef PTL_PWD_MODE_SW 
  //#define PWD_ON_NO_SET_PTL 
#endif 
 
#ifndef PLAYER_2_CHANNEL 
  //#define SETUP_ENABLE_TEST_TONE 
  #define SETUP_ENABLE_DIALOG_GAIN 
  //#define DOWNMIX_NO_SUBWOFFER 
#endif 
 
#ifdef SETUP_ENABLE_TEST_TONE 
  //#define SPDIF_ON_NO_TEST_TONE 
  //#define SUBWOOFER_TEST_TONE 
#endif 
 
#ifdef INTERNAL_TEST 
  #define MENU_ITEM_PIC_MODE 
#endif 
 
//#define MENU_ITEM_PIC_MODE 
//#define SETUP_PAUSE_PLAY 
 
//#define PLAY_NO_CHG_TV_FMT 
#define PREFERENCE_CHINESE 
//#define SETUP_CIRCULAR_ITEM 
 
#ifdef SIMPLE_MENU 
  #define SIMPLE_AUDIO_SETUP_MENU 
#endif 
 
#ifdef SIMPLE_AUDIO_SETUP_MENU 
  //#define CHNL_DELAY_USE_TIME 
  #ifdef SIMPLE_MENU 
    #define SIMPLE_SPDIF_CTRL 
  #endif 
  #ifdef SPDIF_PCM_CH_SELECT 
    #undef SPDIF_PCM_CH_SELECT 
  #endif 
#endif 
 
//#define PLAYER_DELUXE 
#ifdef PLAYER_DELUXE 
  #define SHOW_SPK 
  #define PLAYER_TRIM 
  #define PLAYER_SEQ 
  #define PLAYER_ADV_EQ 
  #define PLAYER_MIC_EQ 
  #define PLAYER_3D_GAIN 
#endif 
 
/*========================================================================*/ 
// Setup Menu Default Option 
/*========================================================================*/ 
#ifdef _SETUP_C 
  #ifdef PREFERENCE_CHINESE 
 
 
 
       #define TV_SYSTEM_DEFAULT         SV_PAL 
    #define OSD_LANG_DEFAULT          EV_OSD_ENGLISH 
    #define AUDIO_LCD_DEFAULT         EV_ENGLISH 
    #define SP_LCD_DEFAULT            EV_ENGLISH 
    #define MENU_LCD_DEFAULT          EV_ENGLISH 
    #define REGION_DEFAULT            EV_CHINA 
    #define ASPECT_DEFAULT            SV_4_3_PS 
 
  #else /* original default */ 
    #define TV_SYSTEM_DEFAULT         SV_PAL 
    #define OSD_LANG_DEFAULT          EV_OSD_ENGLISH 
    #define AUDIO_LCD_DEFAULT         EV_ENGLISH 
 
    #ifdef ENABLE_USER_LANG_CODE 
      #define SP_LCD_DEFAULT          EV_LANG_OFF 
    #else 
      #define SP_LCD_DEFAULT          EV_LANG_OFF 
    #endif 
 
    #define MENU_LCD_DEFAULT          EV_ENGLISH 
    #define REGION_DEFAULT            EV_USA 
    #define ASPECT_DEFAULT            SV_4_3_PS 
  #endif /* original default */ 
 
  #ifdef N22_CERTIFICATION 
    #define GLOBAL_SPDIF_DEFAULT      EV_PCM 
    #define SPEAKER_SET_DEFAULT       EV_DOWN_OFF 
    #define CNTR_SPK_DEFAULT          EV_LARGE 
    #define REAR_SPK_DEFAULT          EV_LARGE 
    #define POST_DRC_DEFAULT          EV_POST_DRC_OFF 
  #else /* normal default */ 
    #define GLOBAL_SPDIF_DEFAULT      EV_RAW 
    #define SPEAKER_SET_DEFAULT       EV_DOWN_LORO 
    #define CNTR_SPK_DEFAULT          EV_SMALL 
    #define REAR_SPK_DEFAULT          EV_SMALL 
    #define POST_DRC_DEFAULT          EV_POST_DRC_AUTO 
  #endif /* normal default */ 
 
#endif /* _SETUP_C */ 
 
 
 
/*========================================================================*/ 
// Screen Saver 
/*========================================================================*/ 
#ifndef PLAYER_BASIC 
  //#define SS_RECT 
  #define SS_BMP 
#endif 
 
#define SS_USE_ONE_BMP 
#define SCR_SAVER_TIMEOUT     36      /* 3 minute, 1 tick 5 seconds */ 
 
#define MOVE_PER_STATE        4       /* move speed, bigger for higher speed */ 
#define SS_START_X          280       /* start location X */ 
#define SS_START_Y          280       /* start location Y */ 
 
#ifdef SS_USE_ONE_BMP 
  #ifdef ALL_WB_USE_TRUECOLOR 
    #define SS_BMP_WIDTH        158 
    #define SS_BMP_HEIGHT       94 
  #else 
    #define SS_BMP_WIDTH        148 
    #define SS_BMP_HEIGHT       68 
  #endif 
  #define SS_NO_LIGHT_COL               /* use lighter color or not */ 
#else 
  #define SS_BMP_WIDTH        64 
  #define SS_BMP_HEIGHT       64 
#endif 
 
//#define SS_FADE_INOUT                   /* use fade in / fade out screen saver */ 
 
/*========================================================================*/ 
// Playback Debug Option 
/*========================================================================*/ 
#ifdef INTERNAL_TEST 
  #define SHOW_ERROR_CODE 
 
  #define TRACE_RISC_EEVT 
  #define TRACE_RESTART 
 
  #define TRACE_WRONG_SINFO 
 
  //#define TRACE_WRONG_VOL 
  #ifdef TRACE_WRONG_VOL 
    //#define TRAP_WRONG_VOL 
  #endif 
 
  #define TRACE_EEPROM_SHADOW_RW 
 
  //#define REBOOT_TEST 
#else /* for release */ 
  #define ADSP_RECOVERY               // Audio DSP recovery 
#endif 
 
/*========================================================================*/ 
// Remote Controller Setup 
/*========================================================================*/ 
//#define PLAYER_NO_IR 
 
#define SHRINK_KEYPROC 
 
#ifndef PLAYER_NO_IR 
  #define IR_USE_HW 
  #define IR_USE_REPEAT 
 
  #ifndef IR_USE_HW // for software 
    #define IR_CHECK_DATA_CODE_INV 
    #define IR_STRICT_TIMING 
  #else // for hardware mode 
    // #define IR_USE_RC6 
    // #define IR_USE_RC5 
    #ifdef IR_USE_RC6 
      // use RC5 & RC6 at the same time 
      #define IR_USE_RC5_UNDER_RC6 
    #endif 
    #if (defined(IR_USE_RC6) || defined(IR_USE_RC5)) 
       // for check toggle status.. 
       #define IR_CHECK_DATA_CODE_INV 
    #endif 
    #ifdef MT1379 
      //#define IR_USE_2X 
    #endif 
  #endif 
#endif /* !PLAYER_NO_IR */ 
 
//#define IR_CHECK_KEY_LOCK 
 
#define MTK_REMOTE  2 
 
#if (MTK_REMOTE != 3) 
  //#define SF_SR_SAME_KEY 
#endif 
 
#if (MTK_REMOTE == 4) 
  #define IR_SUPPORT_SHIFT_KEY 
  #define ISO_SELECT_USE_ADD10_KEY 
#endif 
 
#if (MTK_REMOTE == 5) 
  #define STOP_RESUME_STYLE     STOP_RESUME_TWO_KEYS 
#else 
  #define STOP_RESUME_STYLE     STOP_RESUME_TWO_STOP 
#endif 
 
#if (MTK_REMOTE == 6) 
  #define CDDA_NO_STOP_RESUME 
#endif 
 
#if ((MTK_REMOTE == 1) || (MTK_REMOTE == 2) || (MTK_REMOTE == 5)) 
  #define USE_NUM0_AS_NUM10 
#endif 
 
#if ((MTK_REMOTE == 7) || (MTK_REMOTE == 11)) 
  #define NO_ADD10_KEY 
#endif 
 
#if (MTK_REMOTE == 16) 
  #define ISO_PAUSE_STEP_NO_STEP 
#else 
 // #define PN_IP_SAME_KEY	//comment by Samuel Zhou 
#endif 
 
#ifndef PLAYER_2_CHANNEL 
  #define USE_TEMP_DIGEST_KEY 
#endif 
 
//#define ADD10_SHOW_10  // by megaa 
 
// ADD5 key related settings begin, by megaa 
#define NO_ADD5_KEY 
//#define NO_ADD10_KEY 
 
#if !defined(NO_ADD10_KEY) && !defined(NO_ADD5_KEY) && !defined(ADD10_SHOW_10) 
  #define ADD10_SHOW_10 
#endif 
// ADD5 key related settings end, by megaa 
 
 
//#define USE_TEMP_SR_KEY 
//#define USE_TEMP_CLEAR_KEY 
//#define PTT_TRK_SEARCH_CONFIRM  // for DVD PTT and VCD Track search 
//#define SHUFFLE_RANDOM_SAME_KEY 
//#define ZOOM_IN_OUT_SAME_KEY 
 
#define ISO_TIMEOUT_SELECT        // for ISO file select 
 
#define NUM_KEY_SEARCH            // for DVD/VCD 
 
#ifdef NUM_KEY_SEARCH 
  #define NUM_KEY_DIRECT_SEARCH 
  #define ONE_PTT_NO_SEARCH       // DVD 
  #define ONE_TRACK_NO_SEARCH     // VCD 
 
  #ifdef NUM_KEY_DIRECT_SEARCH 
    #define NUM_KEY_DIRECT_SEARCH_CHECK_RANGE 
  #endif 
#endif 
 
#ifdef PLAYER_VRMT 
  #define ISO_PAUSE_STEP_NO_STEP 
#endif 
 
//#define ZOOM_NO_SLOW_STEP 
 
/*========================================================================*/ 
//        TRAY CONTROL DEFINE AREA 
/*========================================================================*/ 
//#define SLOT_IN 
//#define THOMSON_TRAY 
//#define TOP_LOADER                // for top open cover loader 
 
#ifdef TOP_LOADER                   // [0811 Gary] Tray PWM Function 
  #define TARY_OPEN_CLOSE_BRAKE  0 
  #define TARY_OPEN_BRAKE        0 
#else 
  #define TRAY_IN_OUT_DELAY                 // Add some delay when touch/leave limit S/W 
  //#define  BA5956_DRIVER 
 
  #define TARY_OPEN_CLOSE_BRAKE  0  //!!!NOT READY OF BA5956 DRIVER 
//  #define TARY_OPEN_BRAKE       0// 1  //oneway for mico  test1 
  #define TARY_OPEN_BRAKE        1  //oneway for mico  test2 
 #if (TARY_OPEN_CLOSE_BRAKE == 1) 
  #define TRAY_OPEN_LEVEL1  0               // Duty Cycle 0/16 H (16/16 L) 
  #define TRAY_OPEN_TIME1   25              // 500 ms 
  #define TRAY_OPEN_LEVEL2  3               // Duty Cycle 3/16 H (13/16 L) 
  #define TRAY_OPEN_TIME2   50              // 1.0 Sec 
  #define TRAY_OPEN_LEVEL3  5               // Duty Cycle 5/16 H (11/16 L) 
 
  #define TRAY_CLOSE_LEVEL1 11              // Duty Cycle 10/16 H (6/16 L) 
  #define TRAY_CLOSE_TIME1  40              // 800 ms 
  #define TRAY_CLOSE_LEVEL2 16              // Duty Cycle 16/16 H (0/16 L) 
  #define TRAY_CLOSE_TIME2  65              // 1.3 Sec 
  #define TRAY_CLOSE_LEVEL3 13              // Duty Cycle 13/16 H (3/16 L) 
 #else 
  #if (TARY_OPEN_BRAKE == 1) 
   #define TRAY_FULLFORCE_TIME    30        // Tray Open Using Full Force Time = TRAY_FULLFORCE_TIME * 20ms 
   #define TRAY_START_TIME      0xF0        // Duty Cycle Start Point 
   #define TRAY_TRAN_TIME       0xFE        // Tray Push Time = (TRAY_TRAN_TIME - TRAY_START_TIME) * 2ms  //form 0xfb oneway 
   #define TRAY_STOP_TIME       0xFF        // Tray Stop Time = (TRAY_STOP_TIME - TRAY_TRAN_TIME) * 2ms 
  #endif 
 #endif 
#endif 
 
#define LIMIT_TRAY_ERR 
#ifdef LIMIT_TRAY_ERR 
  #define MAX_TRAY_ERR_CNT      2   // Tray Error Retry Count 
#endif 
 
/*========================================================================*/ 
//        Servo Config 
/*========================================================================*/ 
#define SRV_DATA_READ_TIMEOUT  4    //  3 // in second 
#define SRV_ERROR_RETRY 
//#define SRV_SHOW_ERROR_COUNTER 
 
#if (DRAM_SZ == DRAM_8M) 
#define DVD_ARBUF_DEFAULT       0xff // base on 256/90k 
#else 
#define DVD_ARBUF_DEFAULT       0x30 // base on 256/90k 
#endif 
 
//#define LIMIT_READ_RETRY 
 
#ifdef MINI_DVD_SUPPORT 
  // #define MINI_DVD_8X_SPEED 
#endif 
 
/*========================================================================*/ 
//        Define Vendor DEBUG ATAPI CMD ON/OFF 
/*========================================================================*/ 
#define DRS232_DEBUG 
 
#ifdef MT1379 
  #if (defined(RS232_LOG) || defined(RS232_LOG_EEPROM) || defined(RS232_LOG_UI) || defined(RS232_LOG_TOC)) 
    #define DRS232_LOG_LEN        30 
  #else 
    #define DRS232_LOG_LEN        5 
  #endif 
#else 
  #define DRS232_LOG_LEN          5 
#endif 
 
#ifdef DRS232_DEBUG 
  #define DISABLE_LED_ONOFF 
 
//  #define DEBUG_RS232_C1C2                  // SERVO RS232 DEBUG MODE 
  #ifdef DEBUG_RS232_C1C2 
    #define READ_C1C2PIPO                   // SERVO C1C2PIPO DEBUG INFO 
 
    #ifdef READ_C1C2PIPO 
      #define READ_PIPO_1ECCBLK 
      #define READ_PIERR_ONLY 
    #endif 
  #endif 
#else /* not define DRS232_DEBUG */ 
  #define DISABLE_LED_ONOFF 
#endif 
 
//#define DEBUG_CMD_8032 
 
//#define RISC_ICE_MODE 
//#define READ_NO_ERROR                     // DVD READ ERROR NOTIFY CLOSE 
 
 
/*========================================================================*/ 
//        Certification related definition 
/*========================================================================*/ 
#if defined(HDCD_CERTIFICATION) 
  #define HDCD_EN 
  #define HDCD_AUTO_LEVEL 
  #define SHOW_CD_STREAM_TYPE 
#endif 
 
#if defined(DVD_CERTIFICATION) 
  #undef DVD_IGNORE_BTN_NO_CMD 
  #undef DVD_NEXT_STYLE 
  #undef DVD_PREV_STYLE 
  #undef DVD_GOTOP_OFFSET 
  #undef DVD_CHG_AST_OPT3 
  #undef DVD_SHOW_MSG_FIRST 
  #undef DVD_NO_PTT_PLAY_UOP_BLOCK 
  #undef TITLE_PLAY_IGNORE_UOP_BLOCK 
  //#undef TREAT_PS_LB_AS_THE_SAME 
  //#define DVD_NEXT_STYLE                  SV_NEXT_NORMAL 
  #define DVD_NEXT_STYLE                  SV_DVD_NEXT_TITLE 
  //#define DVD_NEXT_STYLE                (SV_DVD_NEXTCHAP_FST + SV_NEXT_POST) 
  //#define DVD_PREV_STYLE                  SV_PREV_ONLY 
  #define DVD_PREV_STYLE                  SV_PREV_ONLY 
  #define DVD_GOTOP_OFFSET                0 
  #define DVD_CHG_AST_OPT3                SV_UOP_BLOCK 
  #define TITLE_PLAY_IGNORE_UOP_BLOCK    (FALSE) 
  #define CHECK_TV_ASPECT_SET 
#endif 
 
/*========================================================================*/ 
//        Include files 
/*========================================================================*/ 
#ifdef PLAYER_NUI 
  #define OSD_COLOR_FILE        "nui_clr.h" 
  #define OSD_COLOR_CUST_FILE   "..\..\nui_clr.h" 
  #ifdef _C_OSD8032 
    #define WB_H_FILE           "nuiwb.h" 
  #endif 
  #define WB_PUB_FILE           "nuiwbpub.h" 
  #define WB_PUB_CUST_FILE      "..\..\nuiwbpub.h" 
#else 
  #define OSD_COLOR_FILE        "osd_clr.h" 
  #define OSD_COLOR_CUST_FILE   "..\..\osd_clr.h" 
  #ifdef _C_OSD8032 
    #define WB_H_FILE           "wb.h" 
  #endif 
  #define WB_PUB_FILE           "wbpub.h" 
  #define WB_PUB_CUST_FILE      "..\..\wbpub.h" 
#endif 
 
#define SETUP_MENU_FILE   ".\setupmn\stpmenu1.h" 
 
//#define TEST_VFD 
#define zzf_modify_video 
#define zzf_restore_video 
#ifdef zzf_modify_video 
#define		SV_S_VIDEO			0 
#define		SV_YCBCR_VIDEO	                1 
#define		SV_YPBPR_VIDEO	                2 
#define		SV_VGA_VIDEO		        3 
#define		SV_SCART_VIDEO	                4 
#define		SV_LAST_VIDEO		        SV_SCART_VIDEO 
#define         SV_DEFAULT_VIDEO                SV_YCBCR_VIDEO 
#define         SV_FIRST_VIDEO                  SV_S_VIDEO 
#endif 
#define zzf_region 
//#define GCY_EDIT_NO_SCREENSAVER 
#endif //_H_VENDOR_