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

📄 nav.h

📁 Sunplus 8202S source code.
💻 H
字号:
#ifndef __NAV_H
#define __NAV_H
//#define NAV_ALL_DBG
//#define NAV_DELAY_MSG
//#include "user_if.h"
//#include "types.h"
#include "misc.h"
#include "navdata.h"
#include "image.h"
#include "sup_drv.h"
#include "auddrv.h" //2004AUDDRV oliver 20041004 for using audio driver purpose
//#include "audif.h"
#include "dvdpe.h"
#include "lbaif.h"
#include "func.h"
#include "ircmd.h"
#include "stdlib.h"
#include "global.h"
#include "util.h"

// nav
//void navStartUp(void);
//void navTest(void);
int dvd_navigation(void);


// 0: continue loop
#define LOOP_END_TERMINATION  (1)
#define LOOP_END_PE_PROC      (2)



void decode_tm(UINT8 *, PlayBack_Time *);



void PGC_load(void);
void PGC_play(void);
void PGC_post(void);
void PG_play(void);
void PGC_idle(void);
void CELL_play(void);
void CELL_post(void);
void PE_proc(void);

// PE
void PE_init(UINT8);
void PE_play(void);
void PE_show(UINT32, UINT32);

int do_HLI(UINT32 nowtime);

// Global
void GLB_loc_PGC(void);


// PGPlayed
UINT8 IS_PGPlayed(UINT8);
void SET_PGPlayed(UINT8);
void RESET_PGPlayed(void);
UINT8 SELECT_PGPlayed(void);


// nav_rpt.c
//extern char rpt_buf[128];
#ifdef TEST_REPORT
void rpt_init(void);
void rpt_status(void);
void rpt_cell(void);

void pgcn_report(int n);
void pg_report(int n);
void cell_report(int n);
void ncmd_report(char *s);
#else
#define rpt_init()               ((void)(0))
#define rpt_status()             ((void)(0))
#define rpt_cell()               ((void)(0))

#define pgcn_report(n)           ((void)(0))
#define pg_report(n)             ((void)(0))
#define cell_report(n)           ((void)(0))
#define ncmd_report(s)           ((void)(0))
#endif

// vmg.c
UINT32 VMG_Find_LU(UINT32 lsn);
UINT8 VMG_Find_Menu(UINT16 dPGCN, UINT8 dMenuID);
void VMG_Load_PTL_MAIT(void);
void VMG_Load_TT_SRPT(void);
UINT8 VMG_Load_VMGI(void);
// dVMG_LSN => load VMGI
UINT8 VMG_Load_VMGI(void);

// LSN => LU SA
UINT32 VMG_Find_LU(UINT32);

// LSN, PGCN, MenuID => PGC location
// search type: PGCN != 0 ==> find PGC; PGCN == 0 ==> find Menu 
//void VMG_Find_Menu(UINT16, UINT8);

// TTN => VTS_SA, VTSN, VTS_TTN
// -VTSN => VTS_SA
void VMG_Find_TT(INT16);

// vts.c

// VMGI, dVTS_SA => load VTSI
UINT8 VTS_Load_VTSI(void);
void VMG_Load_ASVI(UINT8 ASVUN);

// VTSI, VTS_TTN, PTTN => PGCN
void VTS_Find_PTT(UINT8 SearchPGN);

// VTSI, TT_PGCN => PGC location
void VTS_Find_PGC(UINT8 get_new_vts_info);


//nav.c
void clr_param(UINT8 p);
void CounterGPRM(void);
void DumpAudioInfo(void);
void DumpPGC(void);
int  dvd_navigation(void);
#ifdef FORCE_REWRITE_WHEN_UPGRADE//terry,2004/1/8 05:32PM
void load_user_setup(UINT8);
#else
void load_user_setup(void);
#endif
void  param_init(void);
void UI_Polling(void);
UINT32	dvd_callback_check(UINT32 func);
UINT8 DVD_show_time(void);
void DVD_get_time(int);
inline void dvd_hl_force_action(void);
void GetOffsetLba(UINT32 *lba,UINT32 abs);


//pgc.c
void get_subp_plt(UINT8 *p);
void CELL_play(void);
void CELL_post(void);
int CellShift(int cn,UINT8 *angle);
void CorrectAngleCell(UINT8 shift);
void decode_tm(UINT8 *p, PlayBack_Time *tm);
int do_HLI(UINT32 nowtime);
void GetPrgTime(void);
UINT8 IS_PGPlayed(UINT8 n);
UINT8 Parental_BMg(UINT8 *p);
UINT16 Parental_ID_Acq(UINT8);
void PE_play(void);
void PE_proc(void);
void PG_play(void);
void PGC_load(void);
void PGC_play(void);
void PGC_post(void);
void RESET_PGPlayed(void);
UINT8 RunNvCmd(UINT16 state);
void Select_ASTN(BYTE selmode);
UINT8 SELECT_PGPlayed(void);
UINT8 RunNvCmd(UINT16 state);
void Select_ASTN(BYTE selmode);
UINT8 SELECT_PGPlayed(void);
void Select_SPSTN(BYTE selmode);
void SET_PGPlayed(UINT8 n);
void SetAPS(UINT16 APSTB);
void TestIsPGPlayed(void);
void SearchPG(void);
void sel_disp_sp_ch(UINT16 id);

//sysmain.c
int	dvd_auth_lba(UINT32 LBA);
//user_if.c
void TM2TM(UINT8 *s,UINT8 *d);
UINT32 AddTM2S(PlayBack_Time*, PlayBack_Time*, UINT32);
UINT8 Time_Play_2(void);
UINT8 Time_Play(void);
UINT8 PTT_Play(UINT8, UINT16, UINT8);
UINT8 PG_Search(UINT8);
UINT8 UOP_func_Menu_Call(UINT8);
UINT32 DesignationCN(UINT8*,UINT32);
UINT8 Resume(void);
UINT8 Stop(void);
UINT8 Resume(void);
UINT8 Menu_Call(UINT8);
void GetCellTime(UINT8,UINT32*);
void GetCellTm(UINT8,PlayBack_Time*);
void S2TM(UINT32,PlayBack_Time*);
UINT8 get_angle_Ns(void);
extern void reset_sup(void);
extern void setDVD_A_V(UINT8);
UINT8 force_rep_all_search_next_trk(UINT16 *ptt,UINT8 *chg_tt);//terry,2004/2/17 11:09AM
#endif/*__NAV_H*/

⌨️ 快捷键说明

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