www.pudn.com > 6027_HD65.rar > sv_const.h
/*************** MTK CONFIDENTIAL & COPYRIGHTED ****************/
/*************** ****************/
/*************** $Modtime:: 04/06/26 10:23p $ ****************/
/*************** $Revision:: 15 $ ****************/
/*************** ****************/
/*************** Description : common constants for ****************/
/*************** shared info ****************/
/*************** Company : MediaTek Inc. ****************/
/*************** Programmer : ****************/
/**********************************************************************/
#ifndef _SV_CONST_H_
#define _SV_CONST_H_
// *********************************************************************
// For SR_SPIN_FLAG and SR_SPIN_ST
// *********************************************************************
#define SV_SPIN_DOWN 0x00
#define SV_SPIN_UP 0x01
#define SV_UPG_OK 0x5A
// *********************************************************************
// For SR_ADAC_ST
// *********************************************************************
#define SV_ADAC_MUTE 0x80
// *********************************************************************
// Share info update queue size
// *********************************************************************
#define SV_SI_QUEUE_SZ 32
#define SV_SI_ENTRY_SZ 4
// *********************************************************************
// For sense key
// *********************************************************************
#define SV_SK_NOERR 0x00
#define SV_SK_DATA_MODE 0x01
#define SV_SK_READ_TOC 0x02
#define SV_SK_CMD_FAIL 0x03
#define SV_SK_CMD_ABORT 0x04
// *********************************************************************
// For tray status
// *********************************************************************
#define SV_TRAY_ST_OUT 0x00
#define SV_TRAY_ST_IN 0x01
#define SV_TRAY_ST_MIDDLE 0x02
#define SV_TRAY_ST_ERROR 0x03
// *********************************************************************
// value for shared data access & parameters of UOP command
// *********************************************************************
#define SV_PAL 0
#define SV_AUTO 1
#define SV_NTSC 2
// for SI_TV_SYSTEM_30
#define SV_NTSC_M 0
#define SV_PAL_60 1
#define SV_PAL_M 2
#define SV_NTSC_443 3
// for SI_TV_SYSTEM_25
#define SV_PAL_B 0
#define SV_PAL_N 1
#define SV_FP_DOM 1
#define SV_VMGM_DOM 2
#define SV_VTSM_DOM 3
#define SV_VTSTT_DOM 4
#define SV_ATSTT_DOM 5
#define SV_PLAY_LIST 6
#define SV_SELECT_LIST 7
#define fgIsInDvdMenu(bDom) ((bDom > SV_FP_DOM) && (bDom < SV_VTSTT_DOM))
#define SV_USR_STOP 1
#define SV_REPEAT_NONE 2
#define SV_USR_PBC_NORMAL 2
#define SV_REPEAT_ALL 3
#define SV_REPEAT_TRACK 4
#define SV_REPEAT_LIST 5
#define SV_REPEAT_TITLE 6
#define SV_REPEAT_CHAPTER 7
#define SV_REPEAT_SET_A 8
#define SV_REPEAT_AB 9
#define SV_MIC_REP_A 10
#define SV_MIC_REP_AB 11
#define SV_REPEAT_LAST_SP 12
#define SV_REPEAT_INSTANT 13
#define SV_REPEAT_ABNONE 14
#define SV_RANDOM 15
#define SV_SHUFFLE 16
#define SV_PROGRAM 17
#define SV_USR_DIGEST 18
#define SV_SINGLE 19
#define SV_SCAN 20
#define SV_REPEAT_FOLDER 21
#define SV_SHUFFLE_FOLDER 22
#define fgIsUsrCtrlMode(bMode) ((bMode >= SV_RANDOM) && (bMode <= SV_USR_DIGEST))
#define fgISUsrSeqPlay(bMode) ((bMode == SV_REPEAT_NONE) || (bMode == SV_REPEAT_ABNONE))
#define fgIsRepeatMode(bMode) ((bMode >= SV_REPEAT_ALL) && (bMode <= SV_REPEAT_CHAPTER))
#define fgIsA2BMode(bMode) ((bMode >= SV_REPEAT_SET_A) || (bMode < SV_REPEAT_ABNONE))
#define SV_STOP 1
#define SV_PLAY 2
#define SV_FF 3
#define SV_SF 4
#define SV_FR 5
#define SV_SR 6
#define SV_PAUSE 7
#define SV_STEP 8
#define SV_STEP_BACK 9
#define SV_FREEZE 10
#define SV_STILL 11
#define SV_SETUP_PAUSE 12
#define SV_STOP_RESUME 13
/* note the definition before this can not be changed! */
#define SV_DIGEST9 14
#define SV_DIGEST4 15
#define SV_DIGEST 16
#define SV_PTL_ERR 17
#define SV_REGION_ERR 18
#define SV_DISC_ERR 19
#define SV_SET_TMP_PTL 20
#define SV_PBC_INIT 21
#define SV_WAIT_LASTMEM 22 //020731
#define SV_PRE_PLAY 23
#define fgIsTrickPlay(bState) ((bState >= SV_FF) && (bState <= SV_STEP_BACK))
#define fgIsDiscPlay(bState) ((bState > SV_STOP) && (bState < SV_STOP_RESUME))
#define fgIsDiscPause(bState) ((bState >= SV_PAUSE) && (bState <= SV_STEP_BACK))
#define fgIsInDigest(bState) ((bState >= SV_DIGEST9) && (bState <= SV_DIGEST))
#if ((!defined DISABLE_SF) && (!defined DISABLE_SR))
#define fgIsDiscSlow(bState) ((bState == SV_SF) || (bState == SV_SR))
#endif
#define SV_FAST 0
#define SV_SLOW 1
#define SV_TRICK_KEEP 0x80
#define SV_ZOOM_1 0
#define SV_ZOOM_11 1
#define SV_ZOOM_12 2
#define SV_ZOOM_15 3
#define SV_ZOOM_2 4
#define SV_ZOOM_25 5
#define SV_ZOOM_3 6
#define SV_ZOOM_35 7
#define SV_ZOOM_4 8
#define SV_ZOOM_21 9
#define SV_ZOOM_31 10
#define SV_ZOOM_41 11
#define SV_ZOOM_MODE_MAX 12
#define SV_ZOOM_USR 0x80
#define SV_ZOOM_OFF SV_ZOOM_1
#define SV_ZOOM_IN_MAX SV_ZOOM_4//SV_ZOOM_4
#define SV_ZOOM_IN_MIN SV_ZOOM_11
#define SV_ZOOM_OUT_MAX SV_ZOOM_41
#define SV_ZOOM_OUT_MIN SV_ZOOM_21
#define SV_ONE 0
#define SV_TWO 1
#define SV_FOUR 2
#define SV_EIGHT 3
#define SV_SIXTEEN 4
#define SV_THIRTYTWO 5 /* for DVD only */
#define SV_UP 0
#define SV_DOWN 1
#define SV_LEFT 2
#define SV_RIGHT 3
#define SV_ACTIVATE 4
#define SV_ABS_TIME 0
#define SV_TRK_TIME 1
#define SV_RMN_TIME 2
#define SV_TT_TIME 3
#define SV_TT_RMN_TIME 4
#define SV_CHAPTER_TIME 5
#define SV_CHAPTER_RMN_TIME 6
#define SV_TITLE_MENU 2
#define SV_ROOT_MENU 3
#define SV_SP_MENU 4
#define SV_AUDIO_MENU 5
#define SV_AGL_MENU 6
#define SV_PTT_MENU 7
#define SV_DVD_VIDEO 0
#define SV_DVD_AUDIO 1
#define SV_MINI_DVD 2
#define SV_VCD3_0 3
#define SV_VCD2_0 4
#define SV_VCD1_1 5
#define SV_VCD6_0 6
#define SV_VCD6_1 7
#define SV_SVCD 8
#define SV_CVD 9
#define SV_CDDA 10
#define SV_HDCD 11
#define SV_DTS_CS 12
#define SV_CDG 13
#define SV_PCD 14
#define SV_DATA 15
#define SV_UPG 16
#define SV_SACD 17
#define SV_AUDIO_IN 18 // set by 8032 only
#define SV_DVD_VR 19
// SI_INIT_STATE
#define SV_LOADING_DISC 0
#define SV_TRAY_OPENING 1
#define SV_TRAY_CLOSING 2
#define SV_TRAY_ERROR 3
#define SV_NO_DISC 4
#define SV_UNKNOWN_DISC 5
#define SV_DISC_IDENTIFIED 6
#define SV_DISC_INITED 7
#define fgIsDiscReady(bMode) (bMode == SV_DISC_IDENTIFIED)
#define fgIsDiscLoaded(bMode) ((bMode >= SV_NO_DISC) && (bMode <= SV_DISC_IDENTIFIED))
// TV
#define SV_4_3_PS 0
#define SV_4_3_LB 1
#define SV_WIDE 2
#define SV_WIDESQZ 3
// PBC On/Off
#define SV_PBC_ON 1
#define SV_PBC_OFF 0
// On/Off
#define SV_ON 0
#define SV_OFF 1
// Audio Decode Mode
#define SV_A_CODE_MPEG 0
#define SV_A_CODE_DTS 1
#define SV_A_CODE_PCM 2
#define SV_A_CODE_AC3 3
#define SV_A_CODE_SDDS 4
#define SV_A_CODE_MP3 5
#define SV_A_CODE_WAV 6
#define SV_A_CODE_MLP 7
#define SV_A_CODE_WMA 8
#define SV_A_CODE_HDCD 9
#define SV_A_CODE_AAC 10
#define SV_A_CODE_VORBIS 11
#define SV_A_CODE_NONE 0xff
// User Program Item Type
#define SV_PROGRAM_NONE_ITEM 0
#define SV_PROGRAM_TRACK_ITEM 1
#define SV_PROGRAM_CHAPTER_ITEM 2
#define SV_PROGRAM_TT_ITEM 3
#define SV_PROGRAM_TT_CH_ITEM 4
#define SV_PROGRAM_TIME_ITEM 5 /* not supported */
#define SV_PROGRAM_MP3_ITEM 6 /* not supported */
#define SV_PROGRAM_JPEG_ITEM 7 /* not supported */
#define SV_PROGRAM_MAX_ITEM 24
#define SV_PROGRAM_ITEM_SIZE 4
/* for UOP_PROGRAM */
#define SV_PROGRAM_STOP 0
#define SV_PROGRAM_START 1
#define SV_PROGRAM_CHECK 2
// User Bookmark Type
#define SV_BOOKMARK_NONE_ITEM 0
#define SV_BOOKMARK_TRACK_ITEM 1
#define SV_BOOKMARK_TT_CH_ITEM 2
#define SV_BOOKMARK_MAX_ITEM 12
#define SV_BOOKMARK_ITEM_SIZE 8
#define SV_BOOKMARK_TT_OFST 0
#define SV_BOOKMARK_CH_OFST 1
#define SV_BOOKMARK_PBC_OFST 2
#define SV_BOOKMARK_HH_OFST 4
#define SV_BOOKMARK_MM_OFST 5
#define SV_BOOKMARK_SS_OFST 6
/* for UOP_BOOKMARK */
#define SV_BOOKMARK_CLEAR 0
#define SV_BOOKMARK_MARK 1
#define SV_BOOKMARK_PLAY 2
/* For trick mode state */
#define SV_1X 0
#define SV_2X 1
#define SV_4X 2
#define SV_8X 3
#define SV_16X 4
#define SV_32X 5
#define SV_64X 6
// Audio Channel Config
#define SV_A_CH_MN ((0x1<<5)|(0x0<<1)|0)
#define SV_A_CH_LL ((0x1<<5)|(0x1<<1)|0)
#define SV_A_CH_RR ((0x1<<5)|(0x2<<1)|0)
#define SV_A_CH_20_0 ((0x2<<5)|(0x0<<1)|0)
#define SV_A_CH_21_0 ((0x2<<5)|(0x1<<1)|0)
#define SV_A_CH_22_0 ((0x2<<5)|(0x2<<1)|0)
#define SV_A_CH_20_1 ((0x2<<5)|(0x0<<1)|1)
#define SV_A_CH_21_1 ((0x2<<5)|(0x1<<1)|1)
#define SV_A_CH_22_1 ((0x2<<5)|(0x2<<1)|1)
#define SV_A_CH_30_0 ((0x3<<5)|(0x0<<1)|0)
#define SV_A_CH_31_0 ((0x3<<5)|(0x1<<1)|0)
#define SV_A_CH_32_0 ((0x3<<5)|(0x2<<1)|0)
#define SV_A_CH_33_0 ((0x3<<5)|(0x3<<1)|0)
#define SV_A_CH_30_1 ((0x3<<5)|(0x0<<1)|1)
#define SV_A_CH_31_1 ((0x3<<5)|(0x1<<1)|1)
#define SV_A_CH_32_1 ((0x3<<5)|(0x2<<1)|1)
#define SV_A_CH_33_1 ((0x3<<5)|(0x3<<1)|1)
#define SV_A_CH_LR SV_A_CH_20_0
// Audio Stream Application Information
#define SV_A_APPL_NONE 0x00
#define SV_A_APPL_KARA 0x01
#define SV_A_APPL_SURR 0x02
// Audio Effect
#define SV_A_KARA_LR_MIX 0 // bit 0: Karaoke L/R Mixing On/Off
#define SV_A_KARA_VC 1 // bit 1: Karaoke Vocal Mute On/Off
#define SV_A_VOCAL_ASSIST 2 // bit 2: Karaoke Channel Mix Reverse Mode or Vocal Assist On/Off
#define SV_A_KEY_SHIFT 3 // bit 3: Keyshift On/Off
#define SV_A_PRO_LOGIC 4 // bit 4: Prologic On/Off
#define SV_A_VSURR 5 // bit 5: Virtual Surround On/Off
#define SV_A_REVERB 6 // bit 6: Reverb On/Off
#define SV_A_PL2 7 // bit 7: Prologic II On/Off
#define SV_A_CH_EQ 8 // bit 8: Channel Equalizer On/Off
#define SV_A_BASS_BOOST 9 // bit 9: Bass Boost On/Off
#define SV_A_SUPER_BASS 10 // bit 10: Super Bass On/Off
#define SV_A_TREBLE_BOOST 11 // bit 11: Clear Boost On/Off
#define SV_A_HDCD 12 // bit 12: HDCD On/Off
#define SV_A_POST_DRC 13 // bit 13: DRC On/Off
#define SV_A_N22 14 // bit 14: Spatializer On/Off
#define SV_A_DOLBY_EX 15 // bit 15: Dolby Digital EX On/Off
// ERROR_RET
#define SV_NO_ERROR 0
#define SV_ERR_GENERAL 1
#define SV_ERR_INVALID_OPERATION 2
#define SV_ERR_INPUT_INVALID 3
#define SV_ERR_DISC_NOT_SUPPORT 4
#define SV_ERR_PLAYBACK_ONLY 5
#define SV_ERR_STOP_ONLY 6
#define SV_ERR_PBC_ON_ONLY 7
#define SV_ERR_PBC_OFF_ONLY 8
#define SV_ERR_NORMAL_PLAY_ONLY 9
#define SV_ERR_KARA_ONLY 10
#define SV_ERR_NON_KARA_ONLY 11
#define SV_ERR_OSD_MEM_FULL 12
#define SV_ERR_LIST_HEAD_TRK 13
#define SV_ERR_LIST_END_TRK 14
#define SV_ERR_LIST_HEAD_CH 15
#define SV_ERR_LIST_END_CH 16
#define SV_ERR_MAX 17
#define SV_USER 0
#define SV_PRIOR 1
#define SV_VIDEO_FIRST 0
#define SV_AUDIO_FIRST 1
#define SV_KOK_OFF 0
#define SV_KOK_LRMIX 1
#define SV_KOK_VMUTE 2
//
#define SV_NONE 0 //No Gamma
#define SV_LOW 8 //fine tune Gamma curve gain, range: 1~100
#define SV_MID 16 //
#define SV_HIGH 24 //
#define SV_YLP_ENABLE 0x80
#define SV_CLP_MASK 0x03 // high, mid and low
#define SV_YLP_MASK (0x0F << 2) // 0~10, 10 sets
#define SV_LUMINANCE_DELAY_0 0
#define SV_LUMINANCE_DELAY_1 1
#define SV_HI_RESOLUTION 0
#define SV_NONFLICKER 1
// Black Level
#define SV_NORMAL 0
#define SV_LIGHTER 1
// Black Level (for SI_BLK_LVL)
#define SV_BLACK_NONE 0
#define SV_SETUP (0x1) // composite setup
#define SV_CPNT_SETUP (0x1 << 1) // component setup
#define SV_BLACKER (0x1 << 2) // blacker than black
// for UOP_STOP
#define SV_LOGO_JACKET 0x00
#define SV_LOGO_FLASH 0x01
#define SV_LOGO_CAPTURE 0x02
#define SV_LOGO_COLOR 0x03
#define SV_LOGO_KEEP 0x04 /* keep current display */
#define SV_LOGO_FILL 0x05
#define SV_LOGO_TYPE_MAX 0x06
#define SV_LOGO_SETUP 0x20 /* by setup menu setting, for 8032 only */
#define SV_LOGO_COLOR_BLACK 0
#define SV_LOGO_COLOR_BLUE 1
#define SV_LOGO_COLOR_WHITE 2
#define SV_STOP_NORMAL 0
#define SV_STOP_FORCE 1 /* enter fully stop directly */
// for UOP_PAUSE
#define SV_PAUSE_NORMAL 0
#define SV_SETUP_ENTER 1 /* enter setup menu */
#define SV_SETUP_EXIT 2 /* exit setup menu */
#define SV_SHOW_MENU 3
#define SV_SHOW_SETUP 0x01
#define SV_SHOW_PROGRAM 0x02
#define SV_SHOW_BOOKMARK 0x03
#define SV_SHOW_DIGEST 0x04
// for DVD/VCD UOP_NEXT
#define SV_NEXT_NORMAL 0
// for DVD UOP_NEXT
#define SV_DVD_NEXT_FORCE (1 << 4) // ignore UOP block
#define SV_DVD_NEXT_POST (1 << 5) // check post-cmd
#define SV_DVD_NEXT_TITLE (1 << 6) // jump to next title. higher priority than POST
/*
Next procedures : (high priority to low priority)
1. If UOP block and NEXT_FORCE is off, return FALSE.
2. Go to next PG if available.
3. Go to first PG of Next_PGCN in PGC_NV_CTL, if available
4. If in TT_DOM, TT_NO < TT_NS, and NEXT_TITLE is on,
go to first chapter of next title.
5. If NEXT_POST is on, execute POST_CMD of this PGC.
*/
// for VCD UOP_NEXT
#define SV_VCD_NEXT_NORMAL 0 /* if next is not valid, return fail */
#define SV_VCD_NEXT_RETURN (1 << 4) /* if next is not valid, try to do return */
#define SV_VCD_NEXT_STOP (2 << 4) /* if next is not valid, stop play */
// for DVD/VCD UOP_PREV
#define SV_PREV_GOTOP 0
#define SV_PREV_ONLY 1
// for DVD UOP_PREV
#define SV_DVD_PREV_FORCE (1 << 4) // ignore UOP block
#define SV_DVD_PREV_CHAP (1 << 5) // jump to previous chapter
#define SV_DVD_PREV_TITLE (1 << 6) // jump to previous title
#define SV_DVD_PREV_TT_1ST_CH (1 << 7) // jump to 1st ch of prev title
/* Prev procedures: (high priority to low priority)
1. If UOP block and PREV_FORCE is off, return FALSE
2. If in TT_DOM, SV_DVD_PREV_CHAP is on and PTTN > 1, go to previous chapter.
3. Go to previous PG if available.
4. Go to first PG of Previous_PGCN in PGC_NV_CTL is available.
5. If in TT_DOM, TT_NO > 1, and PREV_TITLE is on,
go to either the 1st chapter or the last chapter of the previous title,
depending on PREV_TT_1ST_CH.
*/
// for VCD UOP_PREV
#define SV_VCD_PREV_NORMAL 0
#define SV_VCD_PREV_RETURN (1 << 4)
#define SV_VCD_PREV_STOP (2 << 4)
// for DVD change audio stream
#define SV_AUDIO_MASTER 0
#define SV_VIDEO_MASTER 1
#define SV_UOP_BLOCK 0
#define SV_UOP_FORCE 1
#define SV_SCR_SAVER_OFF 0
#define SV_SCR_SAVER_ON 1
// for VCD UOP_TIME_PLAY
#define SV_TIME_TRACK 0
#define SV_TIME_DISC 1
// POWER MODE
#define SV_PWR_ACTIVE 1
#define SV_PWR_IDLE_PAUSE 2
#define SV_PWR_IDLE_STOP 3
#define SV_PWR_STANDBY 4
#define SV_PWR_SLEEP 5 /* only for 8032, not for RISC */
// UOP_OPEN_CLOSE
#define SV_FORCE_CLOSE 1
#define SV_FORCE_OPEN 2
#define SV_PSEUDO_CLOSE 3
#define SV_PSEUDO_OPEN 4
// UOP_PLAY option 1
#define SV_STOP_PLAY_NO_FP 0x01
#define SV_STOP_PLAY_CHK_LASTMEM 0x02
// UOP_PLAY option 2
#define SV_PTL_PWD_FAIL 0
#define SV_PTL_PWD_OK 1
// for UOP_A_TO_B
#define SV_A_TO_B 0
#define SV_SP_REPEAT 1
#define SV_INST_REPLAY 2
#define SV_MIC_REPLAY 3
#define SV_AB_OFF 4
// for _bSysClk
#define SV_SCLK_INIT 0 /* only for 8032 */
#define SV_SCLK_FULL 1
#define SV_SCLK_1 2
#define SV_SCLK_2 3
#define SV_SCLK_IDLE 4 /* only for 8032 */
#define SV_SCLK_MAX 5
#define SV_SCLK_RESTORE 6
// for UOP_DIGEST sub-command
#define DGST_SLICE_TIME 5
#define SV_DGST_STROBE 0
#define SV_DGST_TITLE 1
#define SV_DGST_CHAPTER 2
#define SV_DGST_TRACK 3
#define SV_DGST_BOOKMARK 4
#define SV_DGST_PROGRAM 5
#define SV_DGST_TIME_DISK 6
#define SV_DGST_TIME_TRK 7 /* current play track only */
#define SV_DGST_TIME_TTL 8 /* current play title only */
#define SV_DGST_TIME_PTT 9 /* current play chapter only */
#define SV_DGST_GROUP 10
#define SV_DGST_INDEX 11 /* currently played track only */
#define SV_DGST_SPOTLIGHT 12 /* currently played track only */
#define SV_DGST_TIME_GRP 13 /* currently played group only */
#define SV_DGST_RESUME 14 /* use UOP_RESUME instead */
#define SV_DGST_PLAY 15 /* use UOP_DIGITAL_BTN instead */
#define SV_DGST_NEXT 16 /* use UOP_NEXT instead */
#define SV_DGST_PREV 17 /* use UOP_PREVIOUS instead */
// for SI_USR_DIGEST_CTRL
#define SV_DGST_ONCE 0
#define SV_DGST_REP_PAGE 1
#define SV_DGST_REP_ALL 2
// for SI_ISO_ITEM_TYPE (the MAX number of types 32)
#define SV_ISO_NONE 0
// - graphic item.
#define SV_ISO_JPG 1
// - audio item.
#define SV_ISO_MP3 2
#define SV_ISO_AC3 3
#define SV_ISO_DTS 4
#define SV_ISO_MLP 5
#define SV_ISO_WMA 6
#define SV_ISO_WAV 7
#define SV_ISO_MPEGA 8
#define SV_ISO_AAC 9
#define SV_ISO_DSD 10
#define SV_ISO_CDA 11
// - av item.
#define SV_ISO_MPG 12
#define SV_ISO_DAT 13
#define SV_ISO_VOB 14
#define SV_ISO_AVI 15
#define SV_ISO_TS1 16
#define SV_ISO_TS2 17
#define SV_ISO_TS3 18
// - misc items.
#define SV_ISO_TYPE_MAX 32
#define fgIsIsoItemAOnly(bItem) ((bItem >= SV_ISO_MP3) && (bItem <= SV_ISO_CDA))
#define fgIsIsoItemStill(bItem) (bItem == SV_ISO_JPG)
//#define fgIsIsoItemAV(bItem) ((bItem >= SV_ISO_MPG) && (bItem <= SV_ISO_VOB))
#define fgIsIsoItemAV(bItem) ((bItem >= SV_ISO_MPG) && (bItem <= SV_ISO_TS2))
// for ASPECT Ratio change
#define SV_PSCAN_ON (1 << 0)
#define SV_LB_ON (1 << 1)
#define SV_WIDE_ON (1 << 2)
#define SV_BLOCK_ON (1 << 3)
// for SI_V_4_3
#define SV_V_4_3 0
#define SV_V_16_9 1
// for UOP_AUDIO_CLIP
#define SV_ACLIP_FLASH 0
// for JPEG module UOP_STOP
#define SV_JPG_STOP_DEC 0
#define SV_JPG_STOP_SSHOW 1
#define SV_JPG_STOP_ALL_STATE 2
// for SI_SRV_BOOT_STATE
#define SV_SRV_BOOT_LOAD 0
#define SV_SRV_BOOT_EJECT 1
#define SV_SRV_BOOT_UPG 2
#define SV_SRV_BOOT_SKIP_LOAD 3
// for JPEG digest background.
#define SV_DIGEST_BG_COLOR 0xF0
#define SV_DIGEST_BG_LOGO_MIN 0x01
#define SV_DIGEST_BG_LOGO_MAX 0x10
#define SV_DIGEST_BG_COLOR_BLUE 0x00
// for DRAM size config
#define SV_DRAM_2M 0x01
#define SV_DRAM_4M 0x02
#define SV_DRAM_8M 0x03
#define SV_DRAM_16M 0x04
#define SV_DRAM_16BIT 0x01
#define SV_DRAM_32BIT 0x02
// for FLASH size config
#define SV_FLASH_512K 0x01
#define SV_FLASH_1M 0x02
#define SV_FLASH_2M 0x03
#define SV_FLASH_4M 0x04
// Parental Level
#define SV_PR_KID 1
#define SV_PR_G 2
#define SV_PR_PG 3
#define SV_PR_PG13 4
#define SV_PR_PR5 5
#define SV_PR_GR 6
#define SV_PR_NC 7
#define SV_PR_ADULT 8
#define SV_PR_OFF 0xF
// for TV Encoder Mode
#define SV_EXT_TVE_MASTER 0x0
#define SV_EXT_TVE_SLAVE 0x1
#define SV_INT_TVE 0x2
// for TV Encoder Setting
#define SV_YC_DELAY (0x1)
#define SV_RISING_EDGE (0x1 << 1)
// for SI_TVE_OUTPUT_MODE
// bits 0,1: DA0 output mode
#define SV_DA0_OFF (0x0)
#define SV_DA0_S_CVBS (0x1)
#define SV_DA0_CPNT (0x2)
#define SV_DA0_MODE_MASK (0x3)
// bit 2: DA0 S on/off
// bit 3: DA0 CVBS on/off
#define SV_DA0_S_ON (0x1 << 2)
#define SV_DA0_CVBS_ON (0x1 << 3)
// bits 4,5: DA1 output mode
#define SV_DA1_OFF (0x0 << 4)
#define SV_DA1_CVBS (0x1 << 4)
#define SV_DA1_CPNT (0x2 << 4)
#define SV_DA1_MODE_MASK (0x3 << 4)
// bit 6: for component output: 0: YCbCr, 1: RGB
#define SV_CPNT_RGB (0x1 << 6)
// bit 7: for component RGB output
#define SV_CPNT_VGA (0x1 << 7)
// for SI_PSCAN_MODE
#define SV_PSCAN_AUTO (0x0)
#define SV_PSCAN_FILM (0x1)
#define SV_PSCAN_VIDEO (0x2)
// for SI_PSCAN_VIDEO
#define SV_PSCAN_NF (0x0) // non-flicker
#define SV_PSCAN_HR (0x1) // hi-resolution
#define SV_PSCAN_SM (0x2) // smooth
// for SI_PSCAN_PAUSE_MODE
#define SV_PSCAN_PAUSE_AUTO (0x0)
#define SV_PSCAN_PAUSE_FRAME (0x1)
#define SV_PSCAN_PAUSE_FIELD (0x2)
// for SI_PSCAN_NTSC
#define SV_PSCAN_FORCE_FRAME (0x1)
#define SV_PSCAN_22FLG_ON (0x1 << 1)
#define SV_PSCAN_22DET_FLG_ON (0x1 << 2)
#define SV_PSCAN_22DET_NF_ON (0x1 << 3)
#define SV_PSCAN_32FLG_ON (0x1 << 4)
#define SV_PSCAN_32DET_ON (0x1 << 5)
#define PS_NTSC_FULL (SV_PSCAN_22DET_FLG_ON | SV_PSCAN_22DET_NF_ON \
SV_PSCAN_32FLG_ON | SV_PSCAN_32DET_ON)
#define PS_NTSC_DEFAULT (SV_PSCAN_32FLG_ON | SV_PSCAN_32DET_ON)
#define PS_NTSC_FLAG (SV_PSCAN_32FLG_ON | SV_PSCAN_22FLG_ON)
#define PS_NTSC_SIMPLE (SV_PSCAN_32FLG_ON)
// for SI_PSCAN_PAL
//#define SV_PSCAN_FORCE_FRAME (0x1)
//#define SV_PSCAN_22FLG_ON (0x1 << 1)
//#define SV_PSCAN_22DET_FLG_ON (0x1 << 2)
//#define SV_PSCAN_22DET_NF_ON (0x1 << 3)
#define PS_PAL_FULL (SV_PSCAN_22DET_FLG_ON | SV_PSCAN_22DET_NF_ON)
#define PS_PAL_DEFAULT (SV_PSCAN_22DET_FLG_ON)
#define PS_PAL_FLAG (SV_PSCAN_22FLG_ON)
#define PS_PAL_SIMPLE (SV_PSCAN_22DET_FLG_ON)
// for SI_PSCAN_TRICK_MODE
#define SV_PS_SLOW_INTRA (0x1 << 0)
#define SV_PS_FAST_INTRA (0x1 << 1)
#define SV_PS_STEP_INTRA (0x1 << 2)
//for Warnth filter setup
#define SV_WARNTH_OFF 0
#define SV_WARNTH_ON 1
#define SV_WARNTH_VIDEO 2
//for X-direction Zoom-in filter
#define SV_LPF 0
#define SV_LNR 1
#define SV_DOWN_LP 2
// for SI_VDO_IN_EN
#define SV_VDO_IN_OFF 0
#define SV_VDO_IN_SUB 1
#define SV_VDO_IN_MAIN 2
// for SI_VDO_IN_SCALE
#define SV_VDO_IN_1 0
#define SV_VDO_IN_12 1
#define SV_VDO_IN_13 2
#define SV_VDO_IN_14 3
// for SI_VDO_CFG_SET
#define SV_HI_IMP_FLT_FRONT 0
#define SV_HI_IMP_FLT_BACK 1
#define SV_LO_IMP 2
// CONST FOR FS MENU PROPERTY GROUP
// SI_FSMENU_OPMODE
#define SV_FSMENU_OPMODE_FILELIST 0x1
#define SV_FSMENU_OPMODE_DIRBWR 0x2
#define SV_FSMENU_OPMODE_PLAYLIST 0x3
// CONST FOR RETURN CODE OF THE FS MENU COMMANDS (under modification)
#define SV_FSMENU_RC_S_OK 0x0
#define SV_FSMENU_RC_E_INVALID_MENU 0x1
#define SV_FSMENU_RC_E_INVALID_TARGET 0x2
#define SV_FSMENU_RC_E_INVALID_OP 0x3
#define SV_FSMENU_RC_E_GENERAL_ERR 0xFF
// FOR MENU TYPE
#define SV_FSMENU_MENU_TYPE_UNKNOWN 0x0
#define SV_FSMENU_MENU_TYPE_FILES 0x1
#define SV_FSMENU_MENU_TYPE_DIRS 0x2
#define SV_FSMENU_MENU_TYPE_PLAYLIST 0x3
// FOR DDISC PLAYBACK MODULE
#define SV_DDISC_MODULE_NONE 0x0
#define SV_DDISC_MODULE_MP3 0x1
#define SV_DDISC_MODULE_JPG 0x2
#define SV_DDISC_MODULE_MPG 0x3
// for the style of item on the fs menu.
#define SV_NUM_STR 0x1
// TODO: other item for style setting.
// for SI_DVD_SUPPORT
#define SV_DVD_VIDEO_SUPPORT 0x01
#define SV_DVD_AUDIO_SUPPORT 0x02
#define SV_MINI_DVD_SUPPORT 0x04
// for SI_VCD_SUPPORT
#define SV_VCD_1X_SUPPORT 0x01
#define SV_VCD_20_SUPPORT 0x02
#define SV_VCD_30_SUPPORT 0x04
#define SV_SVCD_SUPPORT 0x08
#define SV_CVD_SUPPORT 0x10
#define SV_VCD_AS_DATA 0x80
// for SI_CDDA_SUPPORT
#define SV_CDDA_SUPPORT 0x01
#define SV_DTS_CD_SUPPORT 0x02
#define SV_CDG_SUPPORT 0x04
// for SI_PCD_SUPPORT
#define SV_PCD_SUPPORT 0x01
#define SV_PCD_AS_DATA_DISC 0x02
#define SV_PCD_AS_UNKNOWN_DISC 0x03
// User Opetaion Definition
#define SV_NV_TIME_PLAY 0
#define SV_NV_PTT_PLAY 1
#define SV_NV_TITLE_PLAY 2
#define SV_NV_STOP 3
#define SV_NV_GO_UP 4
#define SV_NV_TIME_SEARCH 5
#define SV_NV_PRE_PG 6
#define SV_NV_NEXT_PG 7
#define SV_NV_FWD_SCAN 8
#define SV_NV_BWD_SCAN 9
#define SV_NV_TITLE_MENU 10
#define SV_NV_ROOT_MENU 11
#define SV_NV_SP_MENU 12
#define SV_NV_A_MENU 13
#define SV_NV_ANGLE_MENU 14
#define SV_NV_PTT_MENU 15
#define SV_NV_RESUME 16
#define SV_NV_HLI_BTN 17
#define SV_NV_STILL_OFF 18
#define SV_NV_PAUSE_ON 19
#define SV_NV_A_CHANGE 20
#define SV_NV_SP_CHANGE 21
#define SV_NV_ANGLE_CHANGE 22
#define SV_NV_KARA_MODE 23
#define SV_NV_V_MODE 24
#define SV_NV_UOP_BLK_MAX 25
//for upgrade disc
#define SV_FILE_EXIST 1
#define SV_CHKSUM_OK 2
#define SV_COPY_RETRY 3
#define SV_CHKSUM_ERR 4
#define SV_CAP_LOGO_SZ_64K 0
#define SV_CAP_LOGO_SZ_128K 1
#define SV_CAP_LOGO_SZ_64K_CPPM 2
#define SV_CAP_LOGO_SZ_128K_CPPM 3
//for IEC max frequency
#define SV_48K 1
#define SV_96K 2
#define SV_192K 3
//Repeat AB state
#define SV_AB_A 1
#define SV_AB_B 2
// for UOP_PTT_PLAY
#define SV_PTT_PLAY_NORMAL 0
#define SV_PTT_PLAY_FORCE 1
#define SV_ASVMD_SLIDESHOW 0x00
#define SV_ASVMD_BROWSABLE 0x04
#define SV_ASVMD_SEQUENTIAL 0x00
#define SV_ASVMD_RANDOM 0x02
#define SV_ASVMD_SHUFFLE 0x03
// - for type of file system setting
/* byte 1 */
#define SV_FS_MP3_SUPPORT 0x01
#define SV_FS_MPEGA_SUPPORT 0x02
#define SV_FS_JPEG_SUPPORT 0x04
#define SV_FS_MPG_SUPPORT 0x08
#define SV_FS_WMA_SUPPORT 0x10
#define SV_FS_ASF_SUPPORT 0x20
#define SV_FS_WAV_SUPPORT 0x40
#define SV_FS_MP3PRO_SUPPORT 0x80
/* byte 2 */
#define SV_FS_MAP_SUPPORT 0x01
#define SV_FS_CDDA_SUPPORT 0x02
#define SV_FS_AAC_SUPPORT 0x04
#define SV_FS_MLP_SUPPORT 0x08
// for SI_GROUP_END (DVD-Audio behavior)
// bit 0,1: 1st priority; bit 2,3: 2nd priority;
#define SV_STOP_PLAYING 0
#define SV_RTN_MENU 1
#define SV_NEXT_GROUP 2
// for UOP_CHANGE_ASTN or UOP_NEXT_ASTN in DVD-Audio
#define SV_REPLAY_TRK 0
#define SV_KEEP_PLAY 1
//for SI_PLAY_STOP
#define SV_AUTO_STOP 0
#define SV_USER_STOP 1
//for SI_MEMORY_RES
#define SV_MEM_STORE 0
#define SV_MEM_PLAY 1
#define SV_MEM_ERR 2
// for SI_CAP_LOGO_ST
#define SV_LCAP_IDLE 0
#define SV_LCAP_ENC 1
#define SV_LCAP_WRITE 2
// SI_LPCM_BIT. (DO NOT CHANGE THESE VALUES)
#define SV_16_BIT 0
#define SV_20_BIT 1
#define SV_24_BIT 2
#define SV_8_BIT 3
// SI_LPCM_FREQ (DO NOT CHANGE THESE VALUES)
#define SV_LPCM_48K 0x0
#define SV_LPCM_96K 0x1
#define SV_LPCM_192K 0x2
#define SV_LPCM_24K 0x3
#define SV_LPCM_12K 0x4
#define SV_LPCM_44_1K 0x8
#define SV_LPCM_88_2K 0x9
#define SV_LPCM_176_4K 0xa
#define SV_LPCM_22_05K 0xb
#define SV_LPCM_11_025K 0xc
#define SV_LPCM_32K 0x10
#define SV_LPCM_16K 0x13
#define SV_LPCM_8K 0x14
// *********************************************************************
// MPEG4 options
// *********************************************************************
// for SI_AVI_FF_MODE
#define SV_AVIFF_ACCURATE 0 // accurate speed, with delay
#define SV_AVIFF_QUICK 1 // quick and inaccurate, with no delay
// *********************************************************************
// Peripheral Commands: ADAC
// *********************************************************************
// ADAC programming
#define ADAC_CMD_FMT 0x01
#define ADAC_CMD_MUTE 0x02
#define ADAC_CMD_VOL 0x03
#define ADAC_CMD_EMPH 0x04
#define ADAC_CMD_DATA_FMT 0x05
#define ADAC_CMD_DAC_MUTE 0x06
#define ADAC_CMD_DSD_MODE 0x07
#define ADAC_SET_DSP_SPEED_DMPLL 0x08
#define ADAC_SET_DSP_SEEED_APLL 0x09
#define ADAC_CMD_AIN_SEL 0x10
#define ADAC_CMD_MAX 0x30
// for ADAC_CMF_FMT
#define RTJ_16BIT 0x00
#define RTJ_18BIT 0x01
#define RTJ_20BIT 0x02
#define RTJ_24BIT 0x03
#define I2S_16BIT 0x04
#define I2S_18BIT 0x05
#define I2S_20BIT 0x06
#define I2S_24BIT 0x07
#define LTJ_16BIT 0x08
#define LTJ_18BIT 0x09
#define LTJ_20BIT 0x0A
#define LTJ_24BIT 0x0B
#define UPSAMPLE_MASK 0xE0
#define UPSAMPLE_OFF 0x00
#define UPSAMPLE_1X 0x20
#define UPSAMPLE_2X 0x40
#define UPSAMPLE_4X 0x60
#define UPSAMPLE_8X 0x80
#define FS256_16K 0x00
#define FS256_22K 0x01
#define FS256_24K 0x02
#define FS256_32K 0x03
#define FS256_44K 0x04
#define FS256_48K 0x05
#define FS256_64K 0x06
#define FS256_88K 0x07
#define FS256_96K 0x08
#define FS256_176K 0x09
#define FS256_192K 0x0A
#define FS512_44K 0x0B
#define FS384_16K 0x01
#define FS384_24K 0x02
#define FS384_32K 0x03
#define FS384_48K 0x04
#define FS384_64K 0x05
#define FS384_96K 0x06
#define FS384_192K 0x07
#define FS384_22K 0x11
#define FS384_44K 0x12
#define FS384_88K 0x13
#define FS384_176K 0x14
#define FS768_44K 0x15
// for ADAC_CMD_AIN_SEL
#define AIN_SEL_OFF 0x00
#define AIN_SEL_D0 0x10
#define AIN_SEL_D1 0x11
#define AIN_SEL_D2 0x12
#define AIN_SEL_D3 0x13
#define AIN_SEL_L0 0x20
#define AIN_SEL_L1 0x21
#define AIN_SEL_L2 0x22
#define AIN_SEL_L3 0x23
// for Audion Sampling rate
#define AFS512_48K 0
#define AFS256_96K 1
#define AFS128_192K 2
// *********************************************************************
// Peripheral Commands: TVE
// *********************************************************************
#define TVE_CMD_INIT 0x31
#define TVE_CMD_PWR 0x32
#define TVE_CMD_SVIDEO_ON 0x33
#define TVE_CMD_SET_FORMAT 0x34
#define TVE_CMD_COLOR_BURST_OFF 0x35
#define TVE_CMD_DELAY_1T 0x36
#define TVE_CMD_AMP_ADJUST 0x37
#define TVE_CMD_DAC_ENABLE 0x38
#define TVE_CMD_DAC_MODE 0x39
#define TVE_CMD_SET_SHARP 0x3A
#define TVE_CMD_SET_BLACK_LV 0x3B
#define TVE_CMD_MACRO_VISION 0x3C
#define TVE_CMD_CLOSE_CAPTION 0x51
#define TVE_CMD_MAX 0x60
// *********************************************************************
// Peripheral Commands: Misc.
// *********************************************************************
#define MISC_CMD_SET_POWER 0x70
#define MISC_CMD_SAVE_LOGO 0x71
#define MISC_CMD_EEPROM_SVC 0x72
// *********************************************************************
// "FS LIST" CONTROL
// *********************************************************************
/* commands */
#define FLCMD_CREATE 0x1
#define FLCMD_SET 0x2
#define FLCMD_GET_ITEMS 0x3
#define FLCMD_CLICK_ITEM 0x4
#define FLCMD_ADD_TO_PL 0x5
#define FLCMD_RM_FROM_PL 0x6
#define FLCMD_CLEAN 0x7
#define FLCMD_QUERY_ITEM 0x8
#define FLCMD_ADD_ITEM 0x9
#define FLCMD_DEL_ITEM 0xa
#define FLCMD_REG_TO_PBMOD 0xb
/* return */
#define FLRET_S_OK 0x0
#define FLRET_E_INVALID_PARM 0x1
#define FLRET_E_INVALID_OP 0x2
#define FLRET_E_CMD_UNRDY 0x3
/* parameters */
/* exe list type */
#define FLPARM_LIST_INVALID 0xff
#define FLPARM_LIST_FOLDER 0x0
#define FLPARM_LIST_DISC 0x1
#define FLPARM_LIST_PLAYLIST 0x2
#define FLPARM_LIST_FJPIC 0x3
/* including file type config */
#define FLPARM_INC_PARENT 0x01
#define FLPARM_INC_FILLED_FOLDER 0x02
/* file filter config */
#define FLPARM_FF_DIR 0x0001 /* dir */
#define FLPARM_FF_MP3 0x0002 /* mp3 */
#define FLPARM_FF_MPEGA 0x0004 /* mpeg audio file group */
#define FLPARM_FF_JPEG 0x0008 /* jpeg */
#define FLPARM_FF_MPG 0x0010 /* mpeg video file group */
#define FLPARM_FF_WMA 0x0020 /* wma */
#define FLPARM_FF_CDDA 0x0040 /* audio track */
#define FLPARM_FF_AAC 0x0080 /* aac file */
#define FLPARM_FF_MLP 0x0100 /* mlp */
#define FLPARM_FF_WAV 0x0200 /* wav */
/* sorting order config */
#define FLPARM_SO_NAME 0x1 /* sorting by name */
#define FLPARM_SO_GDIR 0x2 /* group dir first */
/* access option */
#define FLPARM_OPT_IMG_MODE 0x1 /* turn on image mode */
/* type of reqisted list */
#define FLPARM_FLREG_DISP 0x1 /* registed as display list */
#define FLPARM_FLREG_PLAYBACK 0x2 /* registed as playback list */
/* file type */
#define FTYPE_UNKNOWN 0xFF
#define FTYPE_MP3 0x01
#define FTYPE_MP2 0x02
#define FTYPE_MP1 0x03
#define FTYPE_JPG 0x05
#define FTYPE_WMA 0x07
#define FTYPE_ASF 0x08
#define FTYPE_MPG 0x09
#define FTYPE_DAT 0x0A
#define FTYPE_VOB 0x0B
#define FTYPE_DSD 0x0D
#define FTYPE_CDA 0x0F
#define FTYPE_DIR 0x10 /* directory */
#define FTYPE_DTS 0x11
#define FTYPE_AVI 0x12
#define FTYPE_TS1 0x13 /* for test */
#define FTYPE_TS2 0x14 /* for test */
#define FTYPE_DST 0x15
#define FTYPE_TS3 0x16
#ifdef CDG_SUPPORT
#define FTYPE_CDG 0x17
#endif
/* FOR MP3 MODULE STATE UPDATE USED IN "SI_MP3_STT" (PLAYBACK STATE) */
#define MP3STT_PB_ENB 0x1 // - playback enabled
#define MP3STT_PB_STRT 0x2 // - playback starts
#define MP3STT_PB_FSH 0x3 // - playback finishes
#define MP3STT_PB_ABT 0x4 // - playback aborted
#define MP3STT_PB_ERR 0x5 // - playback error
/* FOR JPEG DECODING STATE UPDATE USED IN "SI_JPEG_STT" */
#define JPEGSTT_DEC_STRT 0x1 // - decoding starts
#define JPEGSTT_DEC_FSH 0x2 // - decoding finished
#define JPEGSTT_DEC_ABT 0x3 // - decoding aborted
#define JPEGSTT_DEC_ERR 0x4 // - decoding error
/* FOR JPEG MODE UPDATE USED IN "SI_JPEG_MODE" */
#define JPEGMOD_NORMAL 0x1 // - normal mode
#define JPEGMOD_DIGEST 0x2 // - digest mode
#define JPEGMOD_SLIDESHOW 0x3 // - slide show mode
/* FOR MOTION PICTURE UPDATE USED IN "SI_MPIC_STT" */
#define MPICSTT_PB_STRT 0x1 // - playback started
#define MPICSTT_PB_FSH 0x2 // - playback finished
#define MPICSTT_PB_ABT 0x3 // - playback aborted
#define MPICSTT_PB_ERR 0x4 // - playback error
/* FOR file system type */
#define FSTYPE_ISO9660 0x0
#define FSTYPE_UDF 0x1
#define FSTYPE_CDFS 0x2
#define FSTYPE_SACDFS 0x3
#define FSTYPE_UNKNOWN 0xFF
#define CPPM_KEY_RESERVE 256
#endif /* _SV_CONST_H_ */