?? uopmap.h
字號:
/**********************************************************************/
/*************** MTK CONFIDENTIAL & COPYRIGHTED ****************/
/*************** ****************/
/*************** $Modtime:: 07/04/18 10:01a $ ****************/
/*************** $Revision:: 4 $ ****************/
/*************** ****************/
/*************** Description : State Machine ****************/
/*************** Management ... ****************/
/*************** ****************/
/*************** Company : MediaTek Inc. ****************/
/*************** Programmer : Sung-Ching Lin ****************/
/**********************************************************************/
#ifndef _UOPMAP_H_
#define _UOPMAP_H_
#ifdef _UOPMAP_C_
#define EXTERN
#else
#define EXTERN extern
#endif
//===================================================================
// Share info update count
//===================================================================
#if defined(NO_SM_NOTIFY)
EXTERN xdata BYTE _bShmRp;
#endif
//#define ACCEL_SI_PROC
#ifdef ACCEL_SI_PROC
EXTERN xdata BYTE _bShmUpdCnt;
#define vClearShmUpdCnt() (_bShmUpdCnt = 0)
#define SHM_PROC_CNT 4
#else
#define vClearShmUpdCnt()
#endif /* ACCEL_SI_PROC */
//===================================================================
// User working data in SDRAM
//===================================================================
enum
{
/* 4 bytes for parental password */
SH_PASS_0 = SI_USER_START,
/* for osdshow.c */
SH_OSD_WB_MODE = SH_PASS_0 + PASSWORD_LEN,
SH_OSD_WB_SAVED,
SH_OSD_WB_USR_SAVED,
SH_OSD_LAYER1_WB,
SH_OSD_LAYER1_STATUS,
SH_OSD_LAYER2_WB,
SH_OSD_LAYER2_STATUS,
SH_OSD_TIMER_LAYER2_1,
SH_OSD_TIMER_LAYER2_2,
SH_OSD_TIMER_LAYER2_3,
SH_OSD_TIMER_LAYER2_4,
SH_OSD_TIMER_PLAY_STATUS,
SH_OSD_TIMER_AUDIO_CTRL,
SH_OSD_TIMER_ERR_MSG,
/* for uopmap.c */
SH_IR_TIMER_AUTO_PWR_DOWN,
/* for OSD state */
SH_OSD_REMAIN_MSG_TIMEOUT,
SH_OSD_PLAY_TYPE_TIMEOUT,
SH_OSD_PLAY_INFO_TIMEOUT,
/* for Screen Saver */
SH_SCR_COL_CNT,
/* for VCD user PBC on/off control */
SH_VCD_USR_PBC_OFF,
/* for DVD audio bit-stream change */
#ifdef AUDIO_STREAM_CHANGE_MUTE
SH_CHG_AST_CNT,
SH_CHG_AST_OPT1,
SH_CHG_AST_OPT2,
SH_CHG_AST_OPT3,
#endif
/* for aud_ctrl.c */
SH_SPK_CFG,
#ifdef MIC_AUTOMUTE
SH_MIC_MIX_CH,
SH_MIC_GAIN_1,
SH_MIC_GAIN_2,
SH_MIC_AUTOMUTE_OFF_LEVEL_HI,
SH_MIC_AUTOMUTE_OFF_LEVEL_LO,
SH_MIC_AUTOMUTE_ON_LEVEL_HI,
SH_MIC_AUTOMUTE_ON_LEVEL_LO,
#endif
#ifdef SS_FADE_INOUT
SH_SS_COUNT,
#endif
#ifdef ENABLE_USER_LANG_CODE
SH_LCD_0,
SH_LCD_1,
SH_LCD_2,
SH_LCD_3,
#endif
#ifdef MTK_MENU
SH_DLG_VAL_0, //[runma] add by michael
SH_DLG_VAL_1,
SH_DLG_VAL_2,
SH_DLG_VAL_3,
//SH_DLG_VAL4, //[runma] del line by michael.
#endif /* MTK_MENU */
#ifdef OSD_SLIDER_SUPPORT
SH_CMP_CLR0,
SH_CMP_CLR1,
SH_CMP_CLR2,
SH_CMP_CLR3,
SH_CMP_CLR4,
SH_CMP_CLR5,
#endif /* OSD_SLIDER_SUPPORT */
// Seiya: Added on 2004/07/27 for dual mono switch.
#ifdef DVD_VR_SUPPORT
// LLY.0926 begin ...
// add one shared info. to keep DVD-VR desired dual mono mode
SH_VR_DUAL_MONO_MODE,
#endif
/* 8032 working data max */
SH_USER_DATA_MAX
};
#define OSD_TIMER_MAX (SH_OSD_TIMER_ERR_MSG - SH_OSD_TIMER_LAYER2_1 + 1)
//===================================================================
// For Bit Flags in xdata
//===================================================================
EXTERN xdata struct
{
BYTE fgInputResend:1;
BYTE fgInputEscape:1;
BYTE fgVocalOn:1;
BYTE fgAstChg:1;
BYTE fgDVDStopPlayWait:1;
BYTE fgFlSrcSet:1;
BYTE Reserve:2;
}
_rUopmapFlag;
#define _fgFlSrcSet _rUopmapFlag.fgFlSrcSet
#define _fgDVDStopPlayWait _rUopmapFlag.fgDVDStopPlayWait
//===================================================================
// Player Related Function
//===================================================================
void vPlayerReset(void) large;
void vUIStop(void) large;
//===================================================================
// SM functions Prototype
//===================================================================
void SmInit(void) large;
//===================================================================
// SETUP functions Prototype
//===================================================================
void vUserInit(BOOL fgInited) large;
//===================================================================
// Screen Saver
//===================================================================
BOOL fgScrSaverCheck(void) large;
// *********************************************************************
// 8032 play type define
// *********************************************************************
#define UOP_OK 0
#define UOP_FAIL 1
#define UOP_REMAP 2
#define UOP_UPDATE 3
#define PLAY_TYPE_NONE 0
#define PLAY_TYPE_DVD 1
#define PLAY_TYPE_VCD 2
#define PLAY_TYPE_ISO 3
#define PLAY_TYPE_PCD 4
#define PLAY_TYPE_CDDA 5
#define PLAY_TYPE_AIN 6
#define TOTAL_PLAY_TYPE 7
EXTERN xdata BYTE _bPlayType;
#ifdef MPEG4_CHROMA_ERROR_WORKAROUND
EXTERN xdata BYTE _bPrePlayType;
#endif
EXTERN xdata BYTE _bJpgIdx;
void vSetPlayType(BYTE bType) large;
void vClearPlayType(void) large;
/* These macros is for 8032 temp use only */
#define fgIsNonPlay() (_bPlayType == PLAY_TYPE_NONE)
#define fgIsDvdPlay() (_bPlayType == PLAY_TYPE_DVD)
#define fgIsVcdPlay() (_bPlayType == PLAY_TYPE_VCD)
#define fgIsIsoPlay() (_bPlayType == PLAY_TYPE_ISO)
#define fgIsPcdPlay() (_bPlayType == PLAY_TYPE_PCD)
#define fgIsCddaPlay() (_bPlayType == PLAY_TYPE_CDDA)
#define fgIsAinPlay() (_bPlayType == PLAY_TYPE_AIN)
#define IS_SVCD_TYPE(a) (a==SV_SVCD)
#define IS_VCD_TYPE(a) ((a==SV_VCD3_0)||(a==SV_VCD2_0)||(a==SV_VCD1_1)||(a==SV_VCD6_0)||(a==SV_VCD6_1)||(a==SV_CVD))
#define IS_SACD_TYPE() (fgIsIsoPlay() && bSharedInfo(SI_FS_FSTYPE) == FSTYPE_SACDFS)
#define IS_ISO_EXCEPT_SACD() (fgIsIsoPlay() && bSharedInfo(SI_FS_FSTYPE) != FSTYPE_SACDFS)
#define IS_CDDA_AND_SACD() (fgIsCddaPlay() || IS_SACD_TYPE())
// *********************************************************************
// For share info update
// *********************************************************************
EXTERN xdata DWRD _dwIrDoneParm;
EXTERN xdata BYTE _bSMUpdate;
// *********************************************************************
// 8032 share info update and RISC handshaking internal states
// *********************************************************************
EXTERN xdata BYTE _bLastSyncUop; /* only for selected UOP */
EXTERN xdata BYTE _bLastPbcState;
// *********************************************************************
// For IR shift key
// *********************************************************************
#ifdef IR_SUPPORT_SHIFT_KEY
#define fgIsKeyTblShift() (_fgIRShiftKey == TRUE)
void vSetShiftKeyMode(BOOL fgEnable) large;
#endif
// *********************************************************************
// For UI timer
// *********************************************************************
#define IR_TIMER_BEEP_PERIOD 50 /* based on 20ms 8032 timer */
#define IR_TIMER_TIMEOUT 0xff
#define IR_TIMER_VOID 0x00
#define IR_TIMEOUT_SEARCH 5
#define IR_TIMEOUT_AUDIO 5
#define IR_TIMEOUT_SUBTITLE 5
#define IR_TIMEOUT_ANGLE 5
#define IR_TIMEOUT_DISPLAY 8
EXTERN xdata BYTE _bIrTimerBeepCnt;
EXTERN xdata BYTE _bIrTimer;
void vIrSetTimeOut(BYTE bTime) large;
// *********************************************************************
// For Player timer
// *********************************************************************
#define PLAYER_TIMER_BEEP_PERIOD 24 /* about 0.5 sec. for 20ms timer */
EXTERN xdata BYTE _bPlayerTimerBeepCnt;
// *********************************************************************
// Screen Saver
// *********************************************************************
EXTERN xdata BYTE _bScrSaverBeepCnt;
EXTERN xdata BYTE _bScrSaverTimer;
EXTERN BOOL _fgScrSaverOn;
#define SCR_SAVER_ON_BEEP_COUNT 2 /* 20ms base, 25Hz */
#define SCR_SAVER_OFF_BEEP_COUNT 250 /* 5 seconds */
#define fgIsScrSaverOn() (_fgScrSaverOn == TRUE)
#define vSetScrSaverOn() (_fgScrSaverOn = TRUE)
#define vSetScrSaverOff() (_fgScrSaverOn = FALSE)
void vScrSaverSetTimeOut(BYTE bTime) large;
// *********************************************************************
// Player input mode
// *********************************************************************
typedef struct
{
void (code *vInit)(BYTE fgInit) large;
BOOL (code *fgState)(void) large;
void (code *vExit)(void) large;
BYTE bKeyShiftMode;
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -