📄 uopmap.h
字号:
// *********************************************************************
// FILE SYSTEM MENU.
// *********************************************************************
void vFsMenuInit(BOOL fgInit) large;
BOOL fgFsMenuState(void) large;
void vFsMenuExit(void);
#ifndef PLAYER_FLMENU
void vFsMenuRecoverMenus(void);
#endif
//BOOL fgFsMenuIsMenuOn(void);
//BOOL fgFsMenuIsBusy(void);
//BOOL fgFsMenuIsDecoding(void);
#ifdef PLAYER_FLMENU
void vFlHandleUopRet(BYTE bUopId, BYTE bUopRet) large;
#else
void vFsMenuHandleUopRet(BYTE bUopId, BYTE bUopRet) large;
#endif
// *********************************************************************
// Select State Machine
// *********************************************************************
#ifdef PLAYER_PROGRAM
void vSelectInit(BYTE fgInit) large;
BOOL fgSelectState(void) large;
#endif
// *********************************************************************
// Search State Machine
// *********************************************************************
#define SEARCH_NONE 0
#define SEARCH_DVD_TIME 1 /* for title time search in TT/TIME */
#define SEARCH_DVD_TIME_CH 2 /* for chapter time search in CH/TIME */
#define SEARCH_VCD_TIME_DISC 3
#define SEARCH_VCD_TIME_TRACK 4
#define SEARCH_VCD_TRACK 5
#define SEARCH_DVD_PTT 6 /* for chapter search in TT/CH */
#define SEARCH_DVD_CH 7 /* for chapter search in CH/TIME */
#define SEARCH_DVD_TIME_CH_WAIT 8 /* for chapter search wait complete */
#define SEARCH_DVD_TIME_CH_CHANGE 9 /* for chapter search change to CH time search */
#define SEARCH_DVD_PTT_TTL 10 /* for title search in TT/CH */
#define SEARCH_DVD_TIME_TTL 11 /* for title search in TT/TIME */
#define SEARCH_DVD_TIME_WAIT 12 /* for title search wiat complete */
#define SEARCH_DVD_PTT_WAIT 13 /* for title search wiat complete */
#define SEARCH_DVD_TIME_CHANGE 14 /* for title search change to TT time search */
#define SEARCH_DVD_PTT_CHANGE 15 /* for title search change to PTT search */
#define SEARCH_ISO_TIME 16
#define SEARCH_ISO_FILE 17
EXTERN xdata struct
{
BYTE bType;
}
_rSearchStateCtx;
// *********************************************************************
// General Number Input State Machine
// *********************************************************************
WORD wWRDToBCD(WORD wVal) large;
void vNumInInitState(BYTE bType, BYTE bCnt) large;
BOOL fgNumInState(void) large;
#define NUM_IN_NONE 0
#define NUM_IN_TYPE_1 1
#define NUM_IN_TYPE_2 2
#define NUM_IN_TYPE_3 3
#define NUM_IN_TYPE_4 4
#define NUM_IN_VCD_TIME 5
#define NUM_IN_DVD_TIME 6
#define NUM_IN_SEQ_WAIT 7
#define NUM_IN_SEQ_LIMIT 8
typedef struct {
/* BYTE 1 */
BYTE bInputType:4;
BYTE bInputState:4;
/* BYTE 2 */
BYTE bTotalDigNum:3;
BYTE bDigNum:3;
BYTE fgComplete:1;
BYTE fgCancel:1;
} strucNumState;
EXTERN xdata struct
{
BYTE bDig[6];
BYTE wNum;
strucNumState rState;
}
_rNumInStateCtx;
// *********************************************************************
// OSD Display Update Routines
// *********************************************************************
void vSmUpdate(BYTE *pbInfo) large;
void vPlayerKeyProc(void) large;
void vShowInitState(BYTE bInitState) large;
EXTERN xdata struct
{
/* BYTE 0 */
BYTE fgUopUpdate:1;
BYTE fgSetupShow:1;
BYTE fgTimeShow:1;
BYTE bTimeType:3;
BYTE fgRemainMsgShow:1;
BYTE fgPlayInfoShow:1;
/* BYTE 1 */
BYTE bPlayInfoType:3;
BYTE bPlayType:4;
BYTE fgPlayShow:1;
/* BYTE 2 */
BYTE fgRepeatShow:1;
BYTE fgABShow:1;
BYTE fgUsrCtrlShow:1;
BYTE fgZoomShow:1;
BYTE fgAngleShow:1;
BYTE fgTimePos:1;
BYTE fgAudioStatusRecall:1;
BYTE bAudioStatus:1;
/* BYTE 3 */
#ifdef EN_DISC_ID_CHK
BYTE bDiscInitFlag:7;
BYTE bDiscIDFound:1;
#endif
/* BYTE 4 */
BYTE fgZoomBrShow:1;
BYTE fgGotoShow:1;
BYTE bGotoTimeType:2;
BYTE fgVRemoteShow:1;
BYTE fgLastMemWrBack:1;
BYTE Reserve:2;
/* BYTE 5/6 */
BYTE bUopRetId;
BYTE bUopRetVal;
}
_rOsdStateCtx;
#define fgIsInSetupMenu() (_rOsdStateCtx.fgSetupShow == TRUE)
#ifdef PLAYER_GOTO
#define fgIsInGoto() (_rOsdStateCtx.fgGotoShow == TRUE) //megaa Goto
#else
#define fgIsInGoto() FALSE
#endif
#define fgIsUopUpdate() (_rOsdStateCtx.fgUopUpdate == TRUE)
#define bCurrRemainType() (_rOsdStateCtx.bTimeType)
#define vSetAngleShow(fgOnOff) (_rOsdStateCtx.fgAngleShow = fgOnOff)
#define fgIsAngleShow() (_rOsdStateCtx.fgAngleShow == TRUE)
#define fgIsUopRetOK(bUop) (fgIsUopUpdate() && (bUop == _rOsdStateCtx.bUopRetId) && \
(_rOsdStateCtx.bUopRetVal == SV_NO_ERROR))
// *********************************************************************
// For disc identification
// *********************************************************************
#define DISC_INIT_DISC_TYPE 0x01
#define DISC_INIT_DISC_ID 0x02
#define DISC_INIT_LOCK_CHK 0x04
#define DISC_INIT_WAIT_PWD_IN 0x08
#define DISC_INIT_PWD_OK 0x10
#define DISC_INIT_LASTMEM 0x20
#define DISC_INIT_FINISHED (DISC_INIT_DISC_TYPE | DISC_INIT_DISC_ID)
#define DISC_INIT_NEED_PWD (DISC_INIT_DISC_TYPE | DISC_INIT_DISC_ID \
| DISC_INIT_LOCK_CHK)
#define DISC_INIT_WAIT_PWD (DISC_INIT_DISC_TYPE | DISC_INIT_DISC_ID \
| DISC_INIT_LOCK_CHK | DISC_INIT_WAIT_PWD_IN)
#define DISC_INIT_CHECKED (DISC_INIT_DISC_TYPE | DISC_INIT_DISC_ID \
| DISC_INIT_LOCK_CHK | DISC_INIT_WAIT_PWD_IN \
| DISC_INIT_PWD_OK)
#ifdef EN_DISC_ID_CHK
#define vResetDiscInitFlag() \
{ \
_rOsdStateCtx.bDiscIDFound = 0; \
_rOsdStateCtx.bDiscInitFlag = 0; \
}
#define vSetDiscInitFlag(bFlag) (_rOsdStateCtx.bDiscInitFlag |= bFlag)
#define fgIsDiscInitFlagSet(bFlag) ((_rOsdStateCtx.bDiscInitFlag & bFlag) != 0)
#define fgIsDiscInitFinished() (_rOsdStateCtx.bDiscInitFlag == DISC_INIT_FINISHED)
#define fgIsDiscInitAskPwd() (_rOsdStateCtx.bDiscInitFlag == DISC_INIT_NEED_PWD)
#define fgIsDiscInitWaitPwd() (_rOsdStateCtx.bDiscInitFlag == DISC_INIT_WAIT_PWD)
#define fgIsDiscInitChecked() (_rOsdStateCtx.bDiscInitFlag == DISC_INIT_CHECKED)
#else
#define vResetDiscInitFlag()
#define vSetDiscInitFlag(bFlag)
#define fgIsDiscInitChecked() (TRUE)
#define fgIsDiscInitAskPwd() (FALSE)
#define fgIsDiscInitWaitPwd() (FALSE)
#define fgIsDiscInitFinished() (TRUE)
#endif
// *********************************************************************
// Player display mode
// *********************************************************************
typedef struct
{
void (code *vShowInit)(void) large;
void (code *vShowTimeMark)(BYTE fgClear) large;
void (code *vShowRemainMsg)(BYTE fgShowOff) large;
void (code *vShowPlayInfo)(BYTE bMode) large;
void (code *vShowTrick)(BYTE bPbcState) large;
void (code *vShowStopResumeState)(void) large;
void (code *vShowStopState)(void) large;
void (code *vStatusDispRecall)(void) large;
void (code *vChangeRemainType)(BYTE bType) large;
}
strucDisplayState;
#define DISP_INIT 0
#define DISP_TIME_MARK 1
#define DISP_REMAIN_MSG 2
#define DISP_PLAY_INFO 3
#define DISP_TRICK 4
#define DISP_STOP_RESUME 5
#define DISP_STOP 6
#define DISP_RECALL 7
#define DISP_REMAIN_CHG 8
#define DISP_REMAIN_CHG_INIT 9
#define DISP_REMAIN_CHG_EXIT 10
#define DISP_MAX 11
// *********************************************************************
// OSD display function
// *********************************************************************
void vOsdDisplayChange(BYTE bIndex, BYTE bOption) large;
void vShowPbcState(BYTE bPbcState) large;
// *********************************************************************
// for vShowPlayInfo()
// *********************************************************************
#define PLAY_INFO_CLEAR 0xff
// *********************************************************************
// Time Display Mode for bRemainType
// *********************************************************************
#define OSD_SHOW_DISABLE 0
#define OSD_SHOW_SINGLE_ELAPSED 1
#define OSD_SHOW_SINGLE_REMAIN 2
#define OSD_SHOW_TOTAL_ELAPSED 3
#define OSD_SHOW_TOTAL_REMAIN 4
#define OSD_SHOW_VCD_REMAIN_MAX 4
#define OSD_SHOW_TITLE_ELAPSED 1
#define OSD_SHOW_TITLE_REMAIN 2
#define OSD_SHOW_CHAPTER_ELAPSED 3
#define OSD_SHOW_CHAPTER_REMAIN 4
#define OSD_SHOW_DVD_REMAIN_MAX 4
#define OSD_SHOW_DISP_CHG_INIT 0x80
#define OSD_SHOW_DISP_CHG_EXIT 0x81
#define OSD_SHOW_TIME_LEFT 0
#define OSD_SHOW_TIME_RIGHT 1
// *********************************************************************
// Time Display Mode for bGotoTimeType
// *********************************************************************
#define GOTO_SHOW_TITLE_ELAPSED 0
#define GOTO_SHOW_TITLE_REMAIN 1
#define GOTO_SHOW_CHAPTER_ELAPSED 2
#define GOTO_SHOW_CHAPTER_REMAIN 3
// *********************************************************************
// Info Display Mode for bPlayInfoType
// *********************************************************************
#define OSD_INFO_DISABLE 0
// *********************************************************************
// General OSD function
// *********************************************************************
void vOsdPosClear(WORD wPosIndex) large;
void vOsdPosShow(WORD wPosIndex, WORD wMsgIndex, BYTE bTime) large;
void vOsdPosShowArg(WORD wPosIndex, WORD wMsgIndex, BYTE bTime, BYTE *pbStr) large;
void vOsdPosPaste(WORD wPosIndex, WORD wMsgIndex) large;
void vOsdPosShowStr(WORD wPosIndex, BYTE *pbStr) large;
#if (defined(PLAYER_BOOKMARK) || defined(PLAYER_PROGRAM) || defined(PLAYER_DIGEST))
void vOsdPosHili(BYTE bMode, WORD wPosIndex, BYTE bWidth) large;
/* for vOsdPosHili() */
#define OSD_POS_HILI_CLEAR 0xff
#define OSD_POS_HILI_SHOW 0x00
#endif /* PLAYER_BOOKMARK || PLAYER_PROGRAM || PLAYER_DIGEST */
// *********************************************************************
// Player Power Status Control
// *********************************************************************
void vSendPlayerIdle(void) large;
void vSendPlayerActive(void) large;
// *********************************************************************
// Game States
// *********************************************************************
// *********************************************************************
// Temp use for error message
// *********************************************************************
#define OSD_MSG_ERR_GENERAL OSD_MSG_ERROR
// *********************************************************************
// Macros
// *********************************************************************
#define vCheckTimeValid3(bHr, bMin, bSec) { \
if (bHr > 9) bHr = 9; \
if (bBCDToHEX(bMin) > 59) bMin = 0x59; \
if (bBCDToHEX(bSec) > 59) bSec = 0x59; \
}
#define vCheckTimeValid2(bMin, bSec) { \
if (bBCDToHEX(bMin) > 99) bMin = 0x99; \
if (bBCDToHEX(bSec) > 59) bSec = 0x59; \
}
#if (defined(PLAYER_STOP_SRV_STOP) || defined(AUDIO_IN_EN) || defined(SUPPORT_CAPTURE_LOGO))
// *********************************************************************
// Export Player Servo Status
// *********************************************************************
EXTERN xdata BYTE _bUISrvStatus;
#define PLAYER_SRV_NORMAL 0
#define PLAYER_SRV_STOP 1
#endif /* PLAYER_STOP_SRV_STOP */
// *********************************************************************
// for show logo
// *********************************************************************
void vPlayerShowLogo(BYTE bType, WORD wOption) large;
#define LOGO_BLACK 0x881
#define LOGO_BLUE 0x7f3
#define LOGO_GREEN 0x239
#define LOGO_YELLOW 0x91d
#define LOGO_PINK 0xb7a
#define LOGO_RED 0xf65
#define LOGO_WHITE 0x88f
#define LOGO_PURPLE 0xba4
#define LOGO_GRAY 0x888
#define LOGO_BROWN 0xA65
#define LOGO_LIGHTBLUE 0x4d7
#define LOGO_LIGHTGREEN 0x56A
#define LOGO_ORANGE 0xC39
#define LOGO_CYAN 0x697
// *********************************************************************
// for vocal assist
// *********************************************************************
#define _fgVocalOn (_rUopmapFlag.fgVocalOn)
// *********************************************************************
// for audio stream change
// *********************************************************************
#ifdef AUDIO_STREAM_CHANGE_MUTE
#define _fgAstChg (_rUopmapFlag.fgAstChg)
void vSetAudioStreamChange(BYTE bCnt, BYTE bOpt1, BYTE bOpt2, BYTE bOpt3) large;
#endif
// *********************************************************************
// for audio in test
// *********************************************************************
#define PLAYER_FUNC_DVD 0
#define PLAYER_FUNC_AIN 1
#ifdef AUDIO_IN_EN
EXTERN BYTE xdata _bPlayerFuncMode;
#define fgIsFuncDvd() (_bPlayerFuncMode == PLAYER_FUNC_DVD)
#define fgIsFuncAin() (_bPlayerFuncMode == PLAYER_FUNC_AIN)
void vPlayerFuncSwitch(BYTE bMode) large;
#endif /* AUDIO_IN_EN */
// *********************************************************************
// for servo debug
// *********************************************************************
#ifdef SRV_SHOW_ERROR_COUNTER
EXTERN BYTE xdata _bSrvShowErrIdx;
EXTERN BYTE xdata _bSrvErrorTimer;
#endif
BOOL fgSCRSAVKeyProc(void ) large;
#endif /* _UOPMAP_H_ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -