CoreGDef.h
上传用户:super_houu
上传日期:2008-09-21
资源大小:4099k
文件大小:40k
- /***********************************************************************/
- /* File: */
- /* ===== */
- /* Descripton: */
- /* =========== */
- /* */
- /* Log: */
- /* ===== */
- /*
- $Name: $
- $Header: /I76/I76_Common/I76_Reference/Playcore/Coremain/CoreGDef.h 72 04-03-31 20:15 Angieh $
- $Log: /I76/I76_Common/I76_Reference/Playcore/Coremain/CoreGDef.h $
- *
- * 72 04-03-31 20:15 Angieh
- * Add some macro for support Index and Page search.
- *
- * 71 04-03-30 21:10 Williaml
- * add the define IS_CLIPS_TYPE_MPEG
- *
- * 70 3/25/04 11:35p Johnk
- * merged the latest code for S1
- *
- * 69 04-03-11 17:28 Jerryc
- * add support for sacd hd/cd layer switch
- *
- * 68 04-03-11 9:53 Wesleyj
- * add PANEL_SKIP_FAST_COMBINE for key scan use
- *
- * 67 3/10/04 4:36p Lotan
- * Merge with Divx Certification DB 3
- *
- * 65 04-03-05 16:45 Jerryc
- *
- * 64 3/01/04 6:28p Lotan
- * merge with Divx certification DB
- *
- * added gns values
- *
- * 63 2/24/04 2:57p Robinj
- * fix SI_IS_CURRENT_MPEG_CLIP
- *
- * 62 2/20/04 6:09p Glenl
- * Merged S1 code
- *
- * 61 04-02-19 17:58 Jerryc
- * add sacd code
- *
- * 60 04-02-19 15:01 Chaol
- * fix IS_DVD_AC3_KARAOKE_DISC
- *
- * 59 2/18/04 7:02p Leonh
- * avoid the FE error when the DVP is IDEL
- *
- * 58 04-02-16 20:14 Chaol
- * add karaoke
- *
- * 57 1/05/04 9:30a Fwang
- * Round the value of frame rate.
- *
- * 56 12/31/03 2:20p Fwang
- * Add AVI display menu.
- *
- * 55 11/28/03 3:41a Leonh
- * Anigeh:Put the Downmix Table updated flag in the gns.dvd.
- *
- * 54 11/27/03 2:44p Leonh
- * Angieh:Add a flag for udpating LPCM DownMix Table
- *
- * 53 11/25/03 9:32a Leonh
- * Angieh:Adjust the remain time value.
- *
- * 52 11/15/03 12:50p Leonh
- * Angieh:add support for the display menu.
- *
- * 51 11/12/03 12:07p Leonh
- * correct availabe group define
- *
- * 50 11/06/03 8:35a Leslie
- * add avtt and amgm domain macro
- *
- * 49 10/23/03 10:07a Leslie
- * Support dvd audio
- *
- * 12 10/14/03 11:52a Leslie
- *
- * 11 10/09/03 9:02a Leslie
- * LeonH: make I76 DVDA project compile through
- *
- * 11 9/16/03 3:16p Leonh
- * Merge the latest change from ref
- *
- * 10 8/20/03 8:22p Leonh
- * finish some API for ASV
- *
- * 9 8/20/03 2:56p Leonh
- * Merge dvd audio code with the latest nav_dvd code with reference
- *
- * 44 03-07-16 9:52 Tonnyg
- * correct the difinition of IS_DISC_TYPE_CLIPS
- *
- * 43 03-07-05 23:50 Tonnyg
- * correct the definition for IS_CLIPS_TYPE_JPG
- *
- * 42 03-06-27 11:09 Janeg
- * Add SI_CDDA_IS_INTRO_MODE.
- *
- * 41 03-06-24 14:09 Janeg
- * Add SI_SVCD_IS_INTRO_MODE.
- *
- * 40 03-06-24 11:31 Leslie
- * Add SI_DVD_NUM_OF_AUDIO_CHANNELS
- *
- * 39 03-06-17 18:27 Admin
- * Merge for ExinoII project
- *
- * 38 03-05-16 21:58 Leslie
- * Fix the problem of SI_DVD_AVAILABLE_ANGLE
- *
- * 37 03-05-13 23:57 Leslie
- * Add SI_SVCD_NUMSELECTION_START and SI_SVCD_NUMSELECTION_END
- *
- * 36 03-05-13 10:45 Jerryc
- * add definition SI_CLIPS_MAX_SUBDIR_NUM.
- *
- * 35 03-04-29 22:32 Leslie
- * Add Entry Information parse
- *
- * 34 03-04-25 17:31 Jerryc
- * refine macro concerning clips.
- *
- * 33 03-04-22 22:36 Leslie
- *
- * 32 03-04-15 16:13 Dingming
- * add support MPG extention
- *
- * 31 03-03-26 13:35 Leslie
- * Database Sync
- *
- * 30 03-03-07 19:08 Jerryc
- * jerrc, add macro.
- *
- * 29 03-03-06 16:09 Jerryc
- * jerryc, add macro for explorer style clips nav
- *
- * 28 03-02-21 13:54 Leslie
- * Add clips total elapsed time and remain time
- *
- * 27 03-02-20 16:39 Billt
- * Add IS_CLIPS_TYPE_MP3 _WMA _JPG macro
- *
- * 26 03-02-20 15:09 Leslie
- *
- * 25 03-02-14 17:36 Royz
- * add total elapsed/remain to VCD display
- *
- * 24 03-02-11 11:39 Leslie
- * Support CDDA Total Elapsed/Remain Time
- *
- * 23 03-02-08 15:35 Dingming
- *
- * 22 2/07/03 10:40p Tomasp
- * - removed obsolete include
- *
- * 21 03-01-30 23:19 Leslie
- * Add defions SI_CLIPS_DIR_NUM and SI_CLIPS_MAX_DIR_NUM
- *
- * 20 03-01-27 19:21 Royz
- *
- * 19 03-01-21 15:14 Royz
- *
- * 18 03-01-16 16:03 Royz
- *
- * 17 03-01-11 16:06 Royz
- * add SI_CDDA_TRACK_TOTAL_TIME definition
- *
- * 16 03-01-11 13:41 Leslie
- * Add SI_SVCD_TRACK_TOTAL_TIME
- *
- * 15 03-01-10 12:17 Royz
- *
- * 14 10/30/02 17:56 Rond
- *
- * 24 6/03/02 1:50p Tomasp
- * Add PCI_DECODED definition
- *
- * 23 30/05/02 16:29 Nirm
- * - Removed unnecessary casting.
- *
- * 22 5/06/02 17:47 Rinata
- * increase NUM_OF_LINE21DATASTRUC to 4
- *
- * 21 6/05/02 14:29 Ettim
- * Added Remaining time value.
- *
- * 20 5/05/02 17:56 Ettim
- * Added support in CDEXTRA.
- *
- * 19 23/04/02 9:28 Nirm
- * - Added dependency in "Config.h".
- *
- * 18 4/09/02 10:48 Rinata
- * remove warnings
- *
- * 17 3/27/02 13:18 Ettim
- * Replaced D_PICTURE_CD_ENABLED with CLIPS_JPEG_SUPPORT
- *
- * 16 3/07/02 8:09p Ravip
- *
- * 15 3/07/02 4:06a Dingming
- * support transation for JPG
- *
- * 14 3/06/02 4:10a Dingming
- * support PCD rotate
- *
- * 13 2/27/02 17:31 Ettim
- * Added Digest support.
- *
- * 12 2/18/02 17:57 Ettim
- * Implementing the audio sid selection both in the ui and in the
- * navigator.
- *
- * 11 18/02/02 11:26 Nirm
- * Added MP3-ID3v1 support.
- *
- * 10 2/17/02 12:15 Rinata
- * Nav DVD header file are under Nav_DVDheader
- *
- * 9 2/17/02 11:41 Rinata
- * Nav DVD sources are compiled to LIB
- *
- * 8 7/02/02 17:00 Nirm
- * Added IS_SVCD_ELAPSED_TIME_VALID.
- *
- * 7 7/02/02 10:41 Nirm
- * - Added Clips Navigator;
- * - Cleanup.
- *
- * 6 1/25/02 15:18 Ettim
- * Adding support for SI_CDDA_REMAIN_TIME.
- *
- * 5 13/01/02 16:26 Atai
- * Remove old Defines
- *
- * 4 8/01/02 16:24 Nirm
- * Corrected Include-Paths.
- *
- * 3 1/02/02 16:08 Ettim
- * Adaptations for the nav_cdda.c of the I54
- *
- * 2 12/26/01 18:51 Ettim
- * After updating nav_svcd.c & pe_cd.c
- Revision 1.53 2001/10/03 00:15:31Z leslie
- Data Memory Reduction for TVG
- Revision 1.52 2001/09/28 04:52:01Z leslie
- Add MuteQueue for TV Guardian
- Revision 1.51 2001/09/27 23:33:11Z lyncolnc
- For CDDA, OSD should display time only when it is valid.
- Revision 1.50 2001/09/26 02:13:53Z stephaneh
- Modified DVD watchdog timeout for Milleno
- Revision 1.49 2001/09/25 03:01:22Z stephaneh
- Increased DVD Watchdog timeout for Milleno player
- Revision 1.48 2001/09/11 02:55:31Z leslie
- Replace TVG unsigned char with BYTE
- Revision 1.47 2001/09/10 09:57:58 leslie
- Definition for TVG data structs
- Revision 1.46 2001/08/08 01:42:20 stephaneh
- Increased watchdog timeout
- Revision 1.45 2001/08/06 22:39:22Z stephaneh
- Added watchdog timeout definition
- Revision 1.44 2001/08/03 21:26:43Z charlie
- Merged Glen's changes
- Revision 1.43 2001/07/12 02:02:02 charlie
- Fix Program Menu logo problem
- Revision 1.42 2001/06/22 16:47:30 victorwu
- Merge ZCH's change
- Revision 1.41 2001/06/21 17:30:01 charlie
- Support Glen's fix for VFD display of invalid CDDA time
- Revision 1.40 2001/05/10 04:50:47 bhupeshv
- Fixed S2 bug A1 fot total title time(Elapsed time)
- Revision 1.39 2001/04/12 23:47:22 bhupeshv
- Created macro SI_DVD_TOTAL_TITLE_TIME for storing title time
- Revision 1.38 2001/03/29 04:52:53 tia
- Add macro for Chapter remain time in DVD.
- Revision 1.37 2001/03/27 11:18:55 leslie
- Merge Changes from ZCH
- Revision 1.36 2001/01/05 17:15:46 stephaneh
- Updated NAV_STATE union, adding CD_TOC array
- Revision 1.35 2000/12/29 18:25:57 tia
- Add new macro IS_IN_TITLE_DOMAIN
- Revision 1.34 2000/12/10 05:23:16 charlie
- Added declaration of g_zoom_from_stop (formerly
- Zoom_From_Stop) from i34decoder.c
- Revision 1.33 2000/12/08 08:29:59 cliff
- Revision 1.32 2000/12/02 00:33:41 tia
- Revision 1.31 2000/11/29 03:41:50 tia
- Add Bookmark info macros
- Revision 1.30 2000/11/28 03:54:21 cliff
- Take update from ZCH
- Revision 1.29 2000/11/27 13:07:09 cliff
- Revision 1.28 2000/11/11 01:05:29 charlie
- Added SI_MP3_MAX_TRACK_NUM
- Revision 1.27 2000/11/09 03:08:18 dingming
- Revision 1.26 2000/11/07 19:46:55 dingming
- Revision 1.25 2000/10/18 21:27:03 eric
- 1.change the chapter display method
- 2.add totlal tracks of svcd/vcd/cdda
- Revision 1.24 2000/10/19 00:09:15Z tia
- Revision 1.23 2000/09/22 18:45:20 tia
- Revision 1.22 2000/09/20 01:35:31 stephaneh
- Revision 1.21 2000/09/05 21:06:06 tia
- Revision 1.20 2000/09/05 20:56:02 tia
- Revision 1.19 2000/08/30 02:40:21 charlie
- Added D_IGNORE_COP_MASK
- Revision 1.18 2000/08/07 03:59:41 arnon
- Revision 1.17 2000/07/27 22:08:54 tia
- Revision 1.3 2000/07/28 02:36:39 leslie
- Revision 1.2 2000/07/04 06:42:37 stephen
- Revision 1.16 2000/06/28 01:11:06 leslie
- MP3 Supported
- Revision 1.15 2000/06/27 01:46:46 stephaneh
- Revision 1.14 2000/06/23 02:18:00 stephaneh
- Revision 1.13 2000/06/21 01:28:16 stephaneh
- Added gcst variable for Global Current State
- Revision 1.12 2000/06/10 00:12:21 stephaneh
- Revision 1.11 2000/06/02 21:59:44 stephaneh
- Revision 1.10 2000/05/25 19:14:54 mnir
- Added SVCD Global-Variables and Macros.
- Revision 1.9 2000/05/25 16:46:23 tia
- Revision 1.8 2000/05/24 23:32:19 tia
- Revision 1.7 2000/05/24 03:21:00 tia
- Revision 1.6 2000/05/05 02:36:08 tia
- Revision 1.5 2000/04/27 02:47:06 tia
- Revision 1.4 2000/04/26 21:28:01 mnir
- Inserted CDDA-Navigator global variables.
- Revision 1.3 2000/04/26 18:56:02 tia
- Revision 1.2 2000/04/24 22:12:07 tia
- Revision 1.1 2000/04/18 18:51:42 tia
- Initial revision
- */
- /***********************************************************************/
- #include "Config.h" // Global Configuration - do not remove!
- #ifndef _COREGDEF_H
- #define _COREGDEF_H
- #include "PlaycoreCoremaincoredefs.h"
- #include "PlaycoreCoremaincorenvg.h"
- #include "Playcorenav_dvdHeadernvdvgdef.h" /* need to be included because of static area sharing with other navigators */
- #include "Playcorenav_cddaglobsdef.h" /* - " - */
- #include "Playcorenav_svcdglobsdef.h" /* - " - */
- #include "Playcorenav_clipsglobsdef.h" /* - " - */
- #include "Playcorepsps.h"
- #include "Decoderdec_defs.h" /* for power_up_logo */
- #include "Drivedrv_defs.h"
- #include "playcorenav_clipsclip.h"
- #ifdef DVD_VR_SUPPORT
- #include "Playcorenav_vrnav_vr_gdef.h"
- #endif
- #if D_SUPPORT_SACD
- #include "Playcorenav_sacdglobsdef.h"
- #endif
- // SEC BK.LIM020903: include for round function
- #include "Includemath-macro.h"
- typedef union{
- /* should describe all navigator exclusive static structure here */
- S_DVD_GLOBALS dvd;
- #ifdef DVD_VR_SUPPORT
- S_VR_GLOBALS dvdvr;
- #endif
- S_CDDA_GLOBALS cdda;
- S_SVCD_GLOBALS svcd;
- S_CLIPS_GLOBALS clips;
- #if D_SUPPORT_SACD
- S_SACD_GLOBALS sacd;
- #endif
- } NAV_STATE;
- //ZORAN LX0822: Implementation of TV Guardian
- #ifdef TV_GUARDIAN_ENABLE
- typedef struct{
- unsigned GopCounter:3;
- unsigned DataLength:5;
- }LINE21DATA_BUFFER_POOL;
- #define NUM_OF_LINE21DATASTRUC 4
- typedef struct
- {
- unsigned GopCounter:3;
- unsigned DataLength:5;
- }LINE21DATASTRUC;
- #define LINE21DATABUFFERSIZE (SC_LINE21_DATA_POOL_SIZE<<1)//in WORDs
- typedef struct{
- unsigned mGOP:3; //gop couner value
- unsigned mCmd:1; //Mute Frame Index inside the GOP
- unsigned mOffset:4; //Unmute frame index inside the GOP
- }LINE21MUTEENTRY;
- #define LINE21MUTEQUEUESIZE 4
- #endif
- #define GLB_NAV_DVD(member) gns.dvd.member
- #define SET_COP_MASK( value ) gcs.cop_mask |= (value)
- #define CLEAR_COP_MASK( value ) gcs.cop_mask &=~((unsigned long) (value))
- #define COP_MASK gcs.cop_mask
- #define IS_COP_ENABLE( value ) (gcs.cop_mask & (value))
- #ifdef DVD_VR_SUPPORT
- extern BOOL g_ExtentIsPlaying;
- extern BYTE g_DVDVR_ExtentsInFE;// extents number in the Front End
- #endif
- extern CORE_STATE gcs;
- extern NAV_STATE gns;
- extern NV_SETTINGS *gps;
- extern TEMP_SETTINGS gtps; /* Global temporary player settings */
- extern CURRENT_STATES gcst; /* Global Current States */
- extern DRIVE_GLOBALS gds;
- extern CONST DEC_FRAME power_up_logo;
- #ifdef S1_GUI // ZKR GLV778
- extern CONST DEC_FRAME setup_menu_logo;
- extern CONST DEC_FRAME power_up_logo_pal;
- extern CONST DEC_FRAME setup_menu_logo_pal;
- extern CONST DEC_FRAME clip_menu_logo;
- extern CONST DEC_FRAME clip_menu_logo_pal;
- #if D_SUPPORT_SACD
- extern CONST DEC_FRAME SACD_menu_logo;
- #endif
- #endif // S1_GUI
- extern DEC_DISC_TYPE g_disc_type;
- #ifdef PANEL_SKIP_FAST_COMBINE
- extern KEY_STATE gks;
- #endif
- extern UINT16 g_uAvailableClipTypes;
- #ifdef K1_WL
- extern UINT8 resume_play_request; //add by wl040704
- #endif
- #if D_SUPPORT_SACD
- //the flag remains valid when playing either CD layer or HD layer of a SACD disc.
- extern BOOL g_disc_is_hybrid_sacd;
- extern BOOL gbplayCDLayerOfSACD;
- #endif
- #define WATCHDOG_SHORT 4 // ZRNSH110101:Reduce Watchdog timeout from 6 to 5 for Sellino
- #define WATCHDOG_LONG 40 // ZRNSH0725:Watchdog timeout when drive is trying to lock
- /* system state variables MACRO */
- #define SI_DISC_TYPE g_disc_type
- #define IS_DISC_TYPE_DVD ((g_disc_type == DEC_DISC_TYPE_DVD_VIDEO) || (g_disc_type == DEC_DISC_TYPE_DVD_AUDIO))
- #ifdef EXTERNAL_KARAOKE
- #define IS_KARAOKE_ON (KARAOKE_ON == gc_Karaoke_mode)
- #define IS_KARAOKE_OFF (KARAOKE_OFF == gc_Karaoke_mode)
- #endif
- #ifdef INTERNAL_KARAOKE
- #define IS_KARAOKE_ON (KARAOKE_SETTING_ON == gtps.mKaraoke)
- #define IS_KARAOKE_OFF (KARAOKE_SETTING_OFF == gtps.mKaraoke)
- #endif
- /* DVD video specific */
- #define fgIsInDvdMenu ((gns.dvd.dvd.domainID > FP_DOM) && (gns.dvd.dvd.domainID <=VTSM_DOM))
- #define IS_IN_TT_MENU_DOMAIN ( gns.dvd.dvd.domainID == VMGM_DOM )
- #define IS_IN_ROOT_MENU_DOMAIN ( gns.dvd.dvd.domainID == VTSM_DOM )
- #ifdef DVD_AUDIO_SUPPORT //Remove until finished
- #define IS_IN_TITLE_DOMAIN (( gns.dvd.dvd.domainID == TT_DOM ) || ( gns.dvd.dvd.domainID == AOTT_GR_DOM ))
- #define SI_DVD_AUDIO_NUM ( IS_IN_TITLE_DOMAIN ? ((gns.dvd.pgc.PgcType == AUDIO_PGC)?(sprm_Get(ASTN)): gns.dvd.audio_stream_num):0)
- #else
- #define IS_IN_TITLE_DOMAIN ( gns.dvd.dvd.domainID == TT_DOM ) /* ZORAN TC1228 */
- #define SI_DVD_AUDIO_NUM ( IS_IN_TITLE_DOMAIN ? gns.dvd.audio_stream_num:0)
- #endif
- #define SI_DVD_SUBPIC_NUM ( IS_IN_TITLE_DOMAIN ?gns.dvd.subpic_stream_num:0)
- #ifdef SET_ANGLE_OUT_OF_ANGLE_BLOCK//Angie_0824_2004:For Funai, need to set the angle out of angle block.
- #define SI_DVD_ANGLE_NUM (((gns.dvd.rtpb.angle_count>1)&&(gns.dvd.sprm.value[3]<=gns.dvd.rtpb.angle_count))?gns.dvd.sprm.value[3]:1)
- #else
- #define SI_DVD_ANGLE_NUM (((gns.dvd.rtpb.available_angles>1)&&(gns.dvd.sprm.value[3]<=gns.dvd.rtpb.available_angles))?gns.dvd.sprm.value[3]:1)
- #endif
- #define SI_DVD_TITLE_NUM_ALLDOM (gns.dvd.sprm.value[4]) //ZCO BMV030602
- #define SI_DVD_TITLE_NUM ( IS_IN_TITLE_DOMAIN ?gns.dvd.sprm.value[4]:0)
- #define SI_DVD_CHAPTER_NUM ( IS_IN_TITLE_DOMAIN ?gns.dvd.pttn:0)
- #ifdef DVD_NO_AVAIABLE_ANGELNUM_DISPLAY_WHEN_ANGLE_CHANGE_PROHIBITED
- #ifdef SET_ANGLE_OUT_OF_ANGLE_BLOCK//Angie_0824_2004:For Funai, need to set the angle out of angle block.
- #define SI_DVD_AVAILABLE_ANGLE ( gns.dvd.rtpb.angle_count && ( gcs.cop_mask & COP_ANGLE_CHANGE) ? gns.dvd.rtpb.angle_count : 1 )
- #else
- #define SI_DVD_AVAILABLE_ANGLE ( gns.dvd.rtpb.available_angles && ( gcs.cop_mask & COP_ANGLE_CHANGE) ? gns.dvd.rtpb.available_angles : 1 )
- #endif
- #else
- #ifdef SET_ANGLE_OUT_OF_ANGLE_BLOCK//Angie_0824_2004:For Funai, need to set the angle out of angle block.
- #define SI_DVD_AVAILABLE_ANGLE (gns.dvd.rtpb.angle_count?gns.dvd.rtpb.angle_count:1)
- #else
- #define SI_DVD_AVAILABLE_ANGLE (gns.dvd.rtpb.available_angles?gns.dvd.rtpb.available_angles:1)
- #endif
- #endif
- #define SI_DVD_AVAILABLE_TITLE ( gns.dvd.vmg.title_table_sc_st.size / 12)
- #ifdef S1_GUI
- #define IS_AVAILABLE_VMGM (gns.dvd.vmg.menu.b_IsAvailable_MenuDom)? TRUE : FALSE
- #define IS_AVAILABLE_VTSM (gns.dvd.vts.menu.b_IsAvailable_MenuDom)? TRUE : FALSE
- #endif
- #ifdef NO_SCPAD
- #define SI_DVD_AVAILABLE_CHAPTER (gns.dvd.vts.part_size / 4)
- #else
- #define SI_DVD_AVAILABLE_CHAPTER (gns.dvd.vts.part_data_sc_st.size /4)
- #endif
- #define SI_DVD_AVAILABLE_AUDIO gns.dvd.audio_stream_count
- #define SI_DVD_AVAILABLE_SUBPIC gns.dvd.subpic_stream_count
- #define SI_DVD_BUTTON_COUNT gns.dvd.button_count
- #ifdef COMPUTE_TITLE_TIME
- #define SI_DVD_ELAPSED_TIME SI_DVD_TITLE_ELAPSED_TIME + ((WORD)((((gns.dvd.pgc.e_time+gns.dvd.pgc.e_cell_time))/90000L)))
- #else //COMPUTE_TITLE_TIME
- #define SI_DVD_ELAPSED_TIME ((WORD)((((gns.dvd.pgc.e_time+gns.dvd.pgc.e_cell_time))/90000L)))
- #endif //COMPUTE_TITLE_TIME
- #define SI_DVD_MAX_PROGRAM_TIME (gns.dvd.pgc_playback_time)
- #define SI_DVD_REMAIN_TIME ((SI_DVD_MAX_PROGRAM_TIME>=SI_DVD_ELAPSED_TIME)?(SI_DVD_MAX_PROGRAM_TIME-SI_DVD_ELAPSED_TIME):0)
- #define SI_DVD_NUM_OF_AUDIO_CH (gns.dvd.audio_ch)
- #define SI_DVD_CODING_TYPE (gns.dvd.audio_code_mode) /* 0: AC3, 2: MPEG, 3: MPEG+extension, 4: LPCM, 6: DTS, 7: SDDS */
- #define SI_DVD_CHAPTER_TOTAL_TIME (gns.dvd.pgc.cur_pg_pbtime/90000L)
- #define SI_DVD_CHAPTER_ELAPSED_TIME ((gns.dvd.pgc.e_pg_time+gns.dvd.pgc.e_cell_time)/90000L)
- #define SI_DVD_CHAPTER_REMAIN_TIME (SI_DVD_CHAPTER_TOTAL_TIME-SI_DVD_CHAPTER_ELAPSED_TIME)
- #define SI_DVD_IS_IN_CELL_PRESENTATION ( ( DEC_DISC_TYPE_DVD_VIDEO == g_disc_type ) && ( cell_presentation == gns.dvd.pgc.state ) )
- #ifdef COMPUTE_TITLE_TIME
- #define SI_DVD_TOTAL_TITLE_TIME (gns.dvd.TitleTime) //Total title time
- #define SI_DVD_TITLE_ELAPSED_TIME (gns.dvd.TitleElapsedTime) //title elapsed time
- #endif //COMPUTE_TITLE_TIME
- #ifdef S1_GUI
- #define SI_DVD_TITLE_NUM_FOR_D1_M gns.dvd.sprm.value[4]
- #define SI_DVD_CHAPTER_NUM_FOR_D1_M gns.dvd.pttn
- #define IS_ANGLE_VALID ( !(gns.dvd.dvd.PGC_UOP_CTL & DVD_UOP_ANGLE_CHANGE) )
- // <<< SEC shKang032304 : changed from gns.dvd.dvd.domainID == TT_DOM to IS_IN_TITLE_DOMAIN
- #define SI_DVD_REAL_TITLE_NUM (IS_IN_TITLE_DOMAIN)? gns.dvd.sprm.value[4]:0 // SEC shKang082702
- #define SI_DVD_REAL_CHAPTER_NUM (IS_IN_TITLE_DOMAIN) ?gns.dvd.pttn:0 // SEC shKang082702
- // SEC shKang032304 >>>
- #endif // S1_GUI
- #define SI_DVD_TYPE gns.dvd.i_dvd_type
- #define IS_DVD_VIDEO_PRESENT (gns.dvd.i_dvd_type&DVD_TYPE_VMG)
- #define IS_DVD_AUDIO_PRESENT (gns.dvd.i_dvd_type&DVD_TYPE_AMG)
- #define IS_DVD_SIMPLE_AUDIO_PRESENT (gns.dvd.i_dvd_type&DVD_TYPE_SAP)
- #define IS_DVD_MPG2_EXT_CODING_MODE (gns.dvd.audio_coding_mode == MPEG2) //DM041503
- //changed by wl042805
- #define IS_DVD_AC3_KARAOKE_DISC (/*((gns.dvd.audio_appi & 0x70) == 0x70) &&*/((gns.dvd.audio_coding_mode & 0x07) == 0x0) && ((gns.dvd.audio_app & 0x03) == 0x1) )
- #define SI_DVD_NUM_OF_AUDIO_CHANNELS ( gns.dvd.audio_ch )
- #define PCI_DECODED (gns.dvd.pci.pci_gi.NV_PCK_LBN != (LBN)(-1))//LX053002
- #define SI_DVD_STILL_STATUS_CHECK ( ( DEC_DISC_TYPE_DVD_VIDEO == g_disc_type )
- && ( ( VOBU_STILL == gns.dvd.dvd.StillType )
- || ( PGC_STILL == gns.dvd.dvd.StillType )
- || ( CELL_STILL == gns.dvd.dvd.StillType) )
- && !( DVD_UOP_STILL_OFF & gns.dvd.nm.actualUOP_CTL ) )
- /* DVD VR specific */
- #ifdef DVD_VR_SUPPORT
- #define SI_DVDVR_MAX_PL_NUM gns.dvdvr.PL_SRP_Ns
- #define SI_DVDVR_PL_NUM ((gns.dvdvr.currPLNum>gns.dvdvr.PG_Ns)?(gns.dvdvr.currPLNum-gns.dvdvr.PG_Ns):0)
- #define SI_DVDVR_MAX_PG_NUM gns.dvdvr.PG_Ns
- #define SI_DVDVR_PG_NUM ((gns.dvdvr.currPLNum>gns.dvdvr.PG_Ns)?0:gns.dvdvr.currPLNum)
- #define SI_DVDVR_TITLE_NUM gns.dvdvr.currPLNum
- #define SI_DVDVR_AVAILABLE_TITLE (SI_DVDVR_MAX_PL_NUM + gns.dvdvr.PG_Ns)
- #define SI_DVDVR_CHAPTER_NUM gns.dvdvr.currPlayEPN
- #define SI_DVDVR_AVAILABLE_CHAPTER gns.dvdvr.totalEntryPtrN
- #define SI_DVDVR_ELAPSED_TIME (gns.dvdvr.elapsePBTM/90000L )
- #define SI_DVDVR_REMAIN_TIME ((gns.dvdvr.totalPBTM/90000L) - SI_DVDVR_ELAPSED_TIME)
- #define SI_DVDVR_MAX_PROGRAM_TIME (gns.dvdvr.totalPBTM/90000L)
- #define SI_DVDVR_AUDIO_NUM gns.dvdvr.AudioNum
- #define SI_DVDVR_AVAILABLE_AUDIO gns.dvdvr.AvailableAudioNum
- #define SI_DVDVR_SUBPIC_ONOROFF gns.dvdvr.SPOnorOff
- #define SI_DVDVR_AVAILABLE_SUBPIC gns.dvdvr.AvailableSPNum
- #define SI_DVDVR_NUM_OF_AUDIO_CH (gns.dvdvr.AudioStreamAtr.Channels)
- #define SI_DVDVR_CODING_TYPE (gns.dvdvr.AudioStreamAtr.Coding)
- #define SI_DVDVR_EXTENT_IS_PLAYING g_ExtentIsPlaying
- #define SI_DVDVR_EXTENT_IN_FE g_DVDVR_ExtentsInFE
- #endif
- /* DVD audio specific */
- #define IS_IN_AOTT_DOMAIN ( (SI_DISC_TYPE == DEC_DISC_TYPE_DVD_AUDIO) && ( gns.dvd.dvd.domainID == AOTT_GR_DOM ) )
- #define IS_IN_AVTT_DOMAIN ( (SI_DISC_TYPE == DEC_DISC_TYPE_DVD_AUDIO) && ( gns.dvd.dvd.domainID == AVTT_GR_DOM ) )
- #define IS_IN_AMGM_DOMAIN ( (SI_DISC_TYPE == DEC_DISC_TYPE_DVD_AUDIO) && ( gns.dvd.dvd.domainID == AMGM_DOM ) )
- #define SI_DVD_AUDIO_GET_PAGE (sprm_Get(ASVN) & 0xff)
- #define SI_DVD_AUDIO_GET_GROUP (IS_IN_TITLE_DOMAIN?(sprm_Get(ATT_GRN) & 0xf):0 )
- #define SI_DVD_AUDIO_GET_TRACK (IS_IN_TITLE_DOMAIN?(sprm_Get(TKN) & 0x7f):0)
- #define SI_DVD_AUDIO_GET_DLISTN ((sprm_Get(ASVN)>>8) & 0x7f)
- #define SI_DVD_AUDIO_GET_ASVN ((sprm_Get(ASVN)) & 0x7f)
- #ifdef EXINO2
- //SEC CH.KO040604: Change(gns.dvd.asv.NumASVs)
- //#define SI_DVD_AUDIO_GET_NUM_OF_ASV (gns.dvd.asv.NumASVs) // deleted duplicate
- #define SI_DVD_AUDIO_GET_NUM_OF_ASV (gns.dvd.asv.MaxDList) //gns.dvd.asv.NumASVs
- #else
- #define SI_DVD_AUDIO_GET_NUM_OF_ASV (gns.dvd.asv.NumASVs)
- #define SI_DVD_AUDIO_GET_NUM_OF_ASV (gns.dvd.asv.NumASVs)
- #endif //EXINO2
- #define SI_DVDA_AVAILABLE_GROUP (gns.dvd.amg.NumGroups)
- #ifdef NO_SCPAD
- #define SI_DVDA_AVAILABLE_TRACKS(group) (gns.dvd.amg.NumTracksInGroup[group])
- #else
- #define SI_DVDA_AVAILABLE_TRACKS(group) (fs_GetByte(&gns.dvd.amg.NumTracksInGroup_sc_st, (group-1)))
- #endif
- #define SI_DVDA_HGR_INF (gns.dvd.amg.HGR_INF) // Hidden group password
- #define SI_DVDA_HGR_EXISTS (gns.dvd.amg.HGR_INF != 0) // Hidden group exists
- //Leon.He_1008_05: Clean up the code for DVD Audio HGR.
- #ifdef DVD_AUDIO_SUPPORT
- #define IS_DVDA_HGR_USER_PWD_MATCH (gtps.dwDvdaHgrUserPwd == SI_DVDA_HGR_INF) // Hidden group password is ok
- #endif
- #define SI_DVDA_ASV_EXISTS (gns.dvd.asv.NumASVs > 0)
- #define SI_DVDA_ASV_IS_BROWSEABLE (gns.dvd.asv.CurrentASV_DMD >= 0x4 )
- #ifdef NO_SCPAD
- #define SI_DVDA_ASV_NSL_BTN_Ns (asv_Get_ASV_NSL_BTN_Ns(gns.dvd.asv.ASV_HLI_Ptr))
- #define SI_DVDA_ASV_BTN_OFN (asv_Get_ASV_BTN_OFN(gns.dvd.asv.ASV_HLI_Ptr))
- #else
- #define SI_DVDA_ASV_NSL_BTN_Ns (asv_Get_ASV_NSL_BTN_Ns(SI_DVD_AUDIO_GET_ASVN))
- #define SI_DVDA_ASV_BTN_OFN (asv_Get_ASV_BTN_OFN(SI_DVD_AUDIO_GET_ASVN))
- #endif
- #define SI_DVDA_ELAPSED_TIME ((gns.dvd.pgc.PgcType == AUDIO_PGC) ? ((long)(gns.dvd.pgc.aob_cell_time - gns.dvd.pgc.curr_fac_s_ptm)/(long)90000): SI_DVD_ELAPSED_TIME)
- #define SI_DVDA_REMAIN_TIME ((SI_DVDA_TOT_TRACK_TIME>=SI_DVDA_ELAPSED_TIME)?(SI_DVDA_TOT_TRACK_TIME-SI_DVDA_ELAPSED_TIME):0)
- #define SI_DVDA_TOT_TRACK_TIME ((gns.dvd.pgc.PgcType == AUDIO_PGC) ? ((long)(gns.dvd.pgc.cur_pg_pbtime)/(long)90000): SI_DVD_MAX_PROGRAM_TIME)
- #define SI_DVDA_MAX_TT_GR_TIME (gns.dvd.tt_gr_time)
- #define SI_DVDA_DISC_ENCRYPTED (MKB_Size > 0)
- #define SI_DVDA_CPPM_IS_ENCRYPTED (gns.dvd.bCPPM_IsEncrypted)
- #define SI_DVDA_WATERMARK_MUTE (gns.dvd.waterMarkMute)
- #ifdef DVD_AUDIO_INDEX
- #define SI_DVDA_FIRST_INDEX (gns.dvd.pgc.current_index <= 1)
- #define SI_DVDA_LAST_INDEX (gns.dvd.pgc.current_index >= gns.dvd.pgc.number_of_indexes)
- #endif
- // CDDA specific
- #define SI_CDDA_TRACK_NUM gns.cdda.uCurrentTrackNumber
- #define SI_CDDA_ELAPSED_TIME gns.cdda.iCurrentTime
- #define SI_CDDA_MAX_PROGRAM_TIME gns.cdda.wTotalPlaybackTime
- #define SI_CDDA_MAX_TRACK_NUM gns.cdda.uTotalCDDATracksCnt //gds.cd_number_of_tracks
- #define SI_CDDA_REMAIN_TIME gns.cdda.wRemainingPlaybackTime
- #define SI_CDDA_ARTIFICIAL_SOUND_NUM gns.cdda.bArtificialSoundMode
- #define SI_CDDA_AVAILABLE_ARTIFICIAL_SOUND M_MAX_MusicMode
- #define SI_CDDA_TRACK_TOTAL_TIME (gns.cdda.iCurrentTime + gns.cdda.wRemainingPlaybackTime)
- #define SI_CDDA_TOTAL_ELAPSED_TIME ( gns.cdda.wTotalElapsedTime )
- #define SI_CDDA_TOTAL_REMAIN_TIME ( gns.cdda.wTotalPlaybackTime - gns.cdda.wTotalElapsedTime )
- #define SI_CDDA_IS_INTRO_MODE gns.cdda.bIsCDDAIntroMode
- #ifdef S1_OSD
- /*
- #define IS_CDDA_ELAPSED_TIME_VALID ((gns.cdda.dwCurrentLocation >= gns.cdda.m_aCurrTrack[0]) && (gns.cdda.dwCurrentLocation <= gns.cdda.m_aCurrTrack[1]))
- #define IS_CDDA_PLAYBACK_TIME_READY (gns.cdda.bPlaybackTimeReady)
- #define SI_CDDA_TOTAL_TRACK_TIME ((gns.cdda.m_aCurrTrack[1]-gns.cdda.m_aCurrTrack[0])/75)
- #define SI_CDDA_CURRENT_TRACK_START_TIME ((gns.cdda.m_aCurrTrack[0])/75)
- */
- #endif//S1_OSD
- // SVCD specific
- #ifdef S1_GUI
- #define SI_SVCD_ELAPSED_TIME_PBC_ON (gns.svcd.dwCurrentLocation / 75L)
- #endif
- #define SI_SVCD_TRACK_NUM (gns.svcd.uCurrentTrackNumber-1)
- #define SI_SVCD_ELAPSED_TIME gns.svcd.iCurrentTime
- #define SI_SVCD_MAX_PROGRAM_TIME gns.svcd.wTotalPlaybackTime
- #define SI_SVCD_MAX_TRACK_NUM ((gds.cd_number_of_tracks==1)?1:gds.cd_number_of_tracks-1)
- //#define SI_SVCD_REMAIN_TIME ((gns.svcd.m_aCurrTrack[1]-gns.svcd.dwCurrentLocation ) / 75L)
- #define SI_SVCD_REMAIN_TIME gns.svcd.wRemainingPlaybackTime
- #define SI_SVCD_PBC_AVAILABLE gns.svcd.bPBC_Available
- #define SI_SVCD_AUDIO_NUM gns.svcd.uCurrentAudioSIDChannel
- #define SI_SVCD_TOTAL_AUDIO_CHANNELS gns.svcd.uTotalNumberOfAudioChannels
- #define SI_SVCD_TRACK_TOTAL_TIME (gns.svcd.iCurrentTime + gns.svcd.wRemainingPlaybackTime)
- #define SI_SVCD_TOTAL_ELAPSED_TIME ( gns.svcd.wTotalElpasedTime )
- #define SI_SVCD_TOTAL_REMAIN_TIME ( gns.svcd.wTotalPlaybackTime - gns.svcd.wTotalElpasedTime )
- #define IS_SVCD_ELAPSED_TIME_VALID gns.svcd.bIsElapsedTimeValid
- #define IS_SVCD_ENTRY_INFO_AVAIABLE (gns.svcd.bEntryInfoAvaiable)
- #define SI_SVCD_CURRENT_ENTRY_NUMBER ( gns.svcd.wCurrentEntryNumber )
- #define SI_SVCD_IS_INTRO_MODE gns.svcd.bIsIntroPlayMode
- //<<<LX051302: This can only be used on PBC is on, UI needs to make sure check it when PBC is on
- #define SI_SVCD_NUMSELECTION_START ( ( SelectionList != gns.svcd.m_CurrPosition.ListType ) ? 0 : gns.svcd.m_CurrList.PSD_SelectionList.uSelectionBase )
- #define SI_SVCD_NUMSELECTION_END ( ( SelectionList != gns.svcd.m_CurrPosition.ListType ) ? 0 : ( gns.svcd.m_CurrList.PSD_SelectionList.uSelectionBase + gns.svcd.m_CurrList.PSD_SelectionList.uSelectionsCnt ) )
- //LX051302>>>
- //Leon.He_1003_05: Merge it from Ginger.
- #define SI_SVCD_IS_PBC_ON ( ( gns.svcd.bPBC_Available ) && ( gns.svcd.g_pSVCDNav->m_bIsUsingPSD ) )
- #define SI_SVCD_IS_MENU_NUMERIC_SELECTION_AVAIABLE ( SI_SVCD_IS_PBC_ON
- && ( SelectionList == gns.svcd.m_CurrPosition.ListType )
- && ( 0 != gns.svcd.m_CurrList.SelectionList.uSelectionsCnt ) )
- // Clips specific
- #define SI_CLIPS_CLIP_NUM (gns.clips.uCurrentClipNumber?(gns.clips.uCurrentClipNumber + gns.clips.uSubDirCount):0)
- #define SI_CLIPS_PROGRAM_ENTRY_NUM gns.clips.uCurrPlaylistItem
- #define SI_CLIPS_ELAPSED_TIME gns.clips.iCurrentTime
- #define SI_CLIPS_REMAIN_TIME ( gns.clips.uTotalPlaybackTime - gns.clips.iCurrentTime )
- #define SI_CLIPS_TRACK_TOTAL_TIME ( gns.clips.uTotalPlaybackTime )
- #define SI_CLIPS_MAX_PROGRAM_TIME gns.clips.uTotalPlaybackTime
- #define SI_CLIPS_MAX_CLIP_NUM (gns.clips.uClipsCnt + gns.clips.uSubDirCount)
- #define SI_CLIPS_CURR_CLIP_INFO gns.clips.cieCurrClip
- #define SI_CLIPS_ANGLE gns.clips.eCurrentAngle
- #define SI_CLIPS_TRANSITION gns.clips.eCurrentTransition
- #ifdef S1_GUI
- #define SI_CLIPS_TOTAL_CNT_IN_DIR gns.clips.uClipsCnt
- #define SI_CLIPS_CURR_NUM gns.clips.uCurrentClipNumber
- #endif // S1_GUI
- #ifdef MANUAL_DIRECTORY_EXPLORER
- #define SI_CLIPS_SUB_DIR_ARRAY_SIZE gns.clips.uSubDirArraySize //ERICM_4JUN25K
- #endif
- #define SI_CLIPS_DIR_NUM gns.clips.uCurrentDir
- #define SI_CLIPS_MAX_DIR_NUM gns.clips.uPeerDirCount
- #define SI_CLIPS_MAX_SUBDIR_NUM gns.clips.uSubDirCount
- #define SI_CLIPS_EXPLORERSTYLEBROWSERPLAYMODE gns.clips.uExplorerStyleBrowserPlayMode
- #define SI_CLIPS_IS_INTRO_MODE gns.clips.bIsIntroPlayMode
- #define SI_IS_PURE_JPEG_DISCS ( g_uAvailableClipTypes & eClipType_JPEG )
- #define SI_IS_CURRENT_MPEG_CLIP (IS_DISC_DATA_ROM && ( eClipType_MPEG == (gns.clips.cieCurrClip).ciInfo.eType))
- #define SI_IS_CURRENT_AVI_CLIP ( eClipType_AVI == (gns.clips.cieCurrClip).ciInfo.eType)
- // Robin_0818_2004, first merge MPEG4 code
- #ifdef IS_ASF_CAPABLE
- #define SI_IS_CURRENT_ASF_CLIP ( eClipType_ASF == (gns.clips.cieCurrClip).ciInfo.eType)
- #else
- #define SI_IS_CURRENT_ASF_CLIP FALSE
- #endif
- #ifdef IS_MP4_CAPABLE
- #define SI_IS_CURRENT_MP4_CLIP ( eClipType_MP4 == (gns.clips.cieCurrClip).ciInfo.eType)
- #else
- #define SI_IS_CURRENT_MP4_CLIP FALSE
- #endif
- // JohnD_0607_2005_A:
- #define SI_IS_CURRENT_CLIPS_VIDEO ((gns.clips.cieCurrClip).ciInfo.eType & (eClipType_MPEG |eClipType_AVI | eClipType_MP4))
- #if defined(IS_ASF_CAPABLE) && defined(IS_MP4_CAPABLE)
- #define SI_IS_CURRENT_MPEG4_CLIP (SI_IS_CURRENT_AVI_CLIP || SI_IS_CURRENT_ASF_CLIP || SI_IS_CURRENT_MP4_CLIP)
- #elif defined(IS_ASF_CAPABLE)
- #define SI_IS_CURRENT_MPEG4_CLIP (SI_IS_CURRENT_AVI_CLIP || SI_IS_CURRENT_ASF_CLIP)
- #elif defined(IS_MP4_CAPABLE)
- #define SI_IS_CURRENT_MPEG4_CLIP (SI_IS_CURRENT_AVI_CLIP || SI_IS_CURRENT_MP4_CLIP)
- #else
- #define SI_IS_CURRENT_MPEG4_CLIP (SI_IS_CURRENT_AVI_CLIP)
- #endif
- #define SI_CLIPS_MPEG4_VIDEO_AVAILABLE (_mpeg4VideoStreamID != NO_STREAM)
- #define SI_CLIPS_MPEG4_AUDIO_AVAILABLE (_mpeg4AudioAvailableNum != 0)
- #define SI_CLIPS_MPEG4_SUBTITLE_AVAILABLE (_mpeg4SubtitleAvailableNum != 0)
- #define SI_CLIPS_MPEG4_CHAPTER_AVAILABLE (_mpeg4ChapterAvailableNum != 0)
- #define SI_CLIPS_MPEG4_WIDTH _mpeg4VideoWidth
- #define SI_CLIPS_MPEG4_HEIGHT _mpeg4VideoHeight
- #define SI_CLIPS_MPEG4_VIDEOCODEC _mpeg4VideoCodec
- #define SI_CLIPS_MPEG4_AUDIOCODEC _mpeg4AudioCodec
- #define SI_CLIPS_MPEG4_SAMPLERAT (_mpeg4AudioSamplesPerSec/1000)
- #define SI_CLIPS_MPEG4_FRAMERATE ((_mpeg4VideoScale != 0) ? round(_mpeg4VideoRate,_mpeg4VideoScale) : 0)
- #define SI_CLIPS_MPEG4_AUDIOCHANNEL _mpeg4AudioChannels
- #define SI_CLIPS_SUB_CURRENT_DISP_IDX _mpeg4SubtitleCurrentDispIdx
- #define SI_CLIPS_SUB_AVAILABLE_NUM _mpeg4SubtitleAvailableNum
- #define SI_CLIPS_AUD_CURRENT_DISP_IDX _mpeg4AudioCurrentDispIdx
- #define SI_CLIPS_AUD_AVAILABLE_NUM _mpeg4AudioAvailableNum
- #define SI_CLIPS_CHAPTER_CURRENT_DISP_IDX _mpeg4ChapterCurrentDispIdx
- #define SI_CLIPS_CHAPTER_AVAILABLE_NUM _mpeg4ChapterAvailableNum
- #define SI_CLIPS_MPEG4_AUDIOLANGUAGECODE _mpeg4AudioLanguageCode
- #define SI_CLIPS_MPEG4_SUBTITLELANGUAGECODE _mpeg4SubtitleLanguageCode
- #define SI_CLIPS_MPEG4_TRICK_MODES_ON _bMPEG4TrickModeOn
- //#define SI_CLIPS_AVI_VIDEO_HEADER_DATA_SIZE _mpeg4VideoHeaderDataLength // Robin_0809_2004
- #ifdef AVI_FF_NO_INDEX
- #define SI_CLIPS_DIVX_DRM_ON (SI_IS_CURRENT_AVI_CLIP && _bAVIDrmOn)
- #endif
- // Robin_1119_2004, if avi is divx encoded, display "DivX"
- #define SI_CLIPS_AVI_IS_DIVX (SI_IS_CURRENT_AVI_CLIP && ((_mpeg4VideoCodec == DIVX_3_11) ||
- (_mpeg4VideoCodec == DIVX_4_12) || (_mpeg4VideoCodec == DIVX_5_0)))
- #ifdef IS_MP4_CAPABLE
- #define SI_CLIPS_MP4_INTERNAL_SUBTITLE_ON (SI_IS_CURRENT_MP4_CLIP && _bMP4InternalSubtitle)
- #define SI_CLIPS_MP4_NERO_DIGITAL (SI_IS_CURRENT_MP4_CLIP && _bMP4IsNeroDigital)
- #else
- #define SI_CLIPS_MP4_INTERNAL_SUBTITLE_ON FALSE
- #define SI_CLIPS_MP4_NERO_DIGITAL FALSE
- #endif
- // SACD specific
- #if D_SUPPORT_SACD
- //TODO: define the following macros
- #define SACD_MULTI_AREA_EXIST (0 < Nav_SACD_Get_Num_Of_Tracks(SAMP(SACD_AREA_MULTICHANNEL)))
- #define SACD_2CH_AREA_EXIST (0 < Nav_SACD_Get_Num_Of_Tracks(SAMP(SACD_AREA_STEREO)))
- #define SACD_ACTIVE_AREA (gns.sacd.activeArea)
- #define SACD_CUR_TRACK (gns.sacd.currentTrack)
- #define SACD_CUR_PLAY_TIME (gns.sacd.iCurrentTime)
- #define MEDIA_IS_SACD (DEC_DISC_TYPE_SACD == g_disc_type)
- #define IS_PLAY_CD_LAYER_OF_SACD gbplayCDLayerOfSACD //(gps->playCDLayerOfSACD)
- #define IS_PLAY_HYBRID_SACD_DISC g_disc_is_hybrid_sacd // 20040416jso(hybrid_sacd SACD<->CD sled position change)
- #endif
- // Miscellaneous
- #define IS_POWER_ON (g_power_state == POWER_SEQUENCE_IN_ON_STATE)
- #define BOOKMARK_TIME( bmark_num ) gcs.mBookmarkTime[(bmark_num)-1]
- #define IS_BOOKMARK_VALID( bmark_num ) (BOOKMARK_TIME(bmark_num)!=EMPTY_BOOKMARK)
- #ifdef ZS5XX
- #define IS_IN_DVD_MENU ((g_disc_type == DEC_DISC_TYPE_DVD_VIDEO) && (gcs.pstate == PST_STILL) && (gns.dvd.rtpb.stopPersistence == 0))
- #define IS_IN_PBC_MENU (((g_disc_type == DEC_DISC_TYPE_SVCD)||(g_disc_type == DEC_DISC_TYPE_VCD)) && (gcs.pstate == PST_STILL))
- #endif
- #ifdef K1_WL
- #define IS_DISPLAY_MENU_ACTIVE ((g_ui_active_menu_id ==DVD_DISPLAY_MENU_ID) || (g_ui_active_menu_id==VCD_DISPLAY_MENU_ID) || (g_ui_active_menu_id == AVI_DISPLAY_MENU_ID))
- #endif
- //<<<Leslie_0823_2003_A: Seperate Physical Media and Logical Media Type definition
- #define IS_DISC_DATA_ROM ( ( DEC_DISC_TYPE_DVD_ROM == g_disc_type ) || ( DEC_DISC_TYPE_CDROM == g_disc_type ) )
- #define IS_DISC_NOT_DATA_ROM ( ( DEC_DISC_TYPE_DVD_ROM != g_disc_type ) && ( DEC_DISC_TYPE_CDROM != g_disc_type ) )
- #define IS_DVD_PHYSICAL_MEDIA ( IS_DVD_MEDIA )
- #define IS_DECODER_DVD_VIDEO_OR_AUDIO ( ( DEC_DISC_TYPE_DVD_AUDIO == gDiskType ) || ( DEC_DISC_TYPE_DVD_VIDEO == gDiskType ) )
- #define IS_GLOBAL_DVD_VIDEO_OR_AUDIO ( ( DEC_DISC_TYPE_DVD_AUDIO == g_disc_type ) || ( DEC_DISC_TYPE_DVD_VIDEO == g_disc_type ) )
- #ifdef DVD_VR_SUPPORT
- #define IS_DISC_GLOBAL_DVD_VR ( DEC_DISC_TYPE_DVD_VR== g_disc_type )
- #endif
- #define IS_CLIPS_TYPE_JPG ( ( IS_DISC_DATA_ROM && (eClipType_JPEG == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType)) || (DEC_DISC_TYPE_PICTURE_CD == g_disc_type))
- #define IS_CLIPS_TYPE_WMA ( IS_DISC_DATA_ROM && (eClipType_WMA == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType))
- #define IS_CLIPS_TYPE_MP3 ( IS_DISC_DATA_ROM && (eClipType_MP3 == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType))
- //Leslie_0823_2003_A>>>
- #define IS_CLIPS_TYPE_AVI (IS_DISC_DATA_ROM && SI_IS_CURRENT_AVI_CLIP)
- // Robin_0818_2004, first merge MPEG4 code
- #ifdef IS_ASF_CAPABLE
- #define IS_CLIPS_TYPE_ASF (IS_DISC_DATA_ROM && SI_IS_CURRENT_ASF_CLIP)
- #endif
- #ifdef IS_MP4_CAPABLE
- #define IS_CLIPS_TYPE_MP4 (IS_DISC_DATA_ROM && SI_IS_CURRENT_MP4_CLIP)
- #endif
- #if defined(IS_ASF_CAPABLE) && defined(IS_MP4_CAPABLE)
- #define IS_CLIPS_TYPE_MPEG4 (IS_CLIPS_TYPE_AVI || IS_CLIPS_TYPE_ASF || IS_CLIPS_TYPE_MP4)
- #elif defined(IS_ASF_CAPABLE)
- #define IS_CLIPS_TYPE_MPEG4 (IS_CLIPS_TYPE_AVI || IS_CLIPS_TYPE_ASF)
- #elif defined(IS_MP4_CAPABLE)
- #define IS_CLIPS_TYPE_MPEG4 (IS_CLIPS_TYPE_AVI || IS_CLIPS_TYPE_MP4)
- #else
- #define IS_CLIPS_TYPE_MPEG4 (IS_CLIPS_TYPE_AVI)
- #endif
- #ifdef EXINO_FE // 20040507(Luis : DVD-Audio 1.5x CLV)
- #define IS_GLOBAL_DVD_AUDIO ( ( DEC_DISC_TYPE_DVD_AUDIO == g_disc_type ) )
- #endif
- // SEC BK.LIM021104
- #ifdef S1_GUI
- #define IS_CLIPS_TYPE_MPEG (IS_DISC_DATA_ROM && (eClipType_MPEG == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType))
- #endif
- #define IS_CLIPS_TYPE_MPEG (IS_DISC_DATA_ROM && (eClipType_MPEG == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType)) //add by wl033004
- #ifdef IS_OGG_VORBIS_CAPABLE
- #if defined(IS_ASF_CAPABLE) && defined(IS_MP4_CAPABLE)
- #define IS_DISC_TYPE_CLIPS ((DEC_DISC_TYPE_PICTURE_CD == g_disc_type) ||( IS_DISC_DATA_ROM && (
- (eClipType_MP3 == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType) ||
- (eClipType_JPEG == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType) ||
- (eClipType_MPEG == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType) ||
- (eClipType_AVI == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType) ||
- (eClipType_ASF == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType) ||
- (eClipType_MP4 == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType) ||
- (eClipType_OGG == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType) ||
- (eClipType_WMA == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType))))
- #elif defined(IS_ASF_CAPABLE)
- #define IS_DISC_TYPE_CLIPS ((DEC_DISC_TYPE_PICTURE_CD == g_disc_type) ||( IS_DISC_DATA_ROM && (
- (eClipType_MP3 == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType) ||
- (eClipType_JPEG == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType) ||
- (eClipType_MPEG == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType) ||
- (eClipType_AVI == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType) ||
- (eClipType_ASF == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType) ||
- (eClipType_OGG == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType) ||
- (eClipType_WMA == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType))))
- #elif defined(IS_MP4_CAPABLE)
- #define IS_DISC_TYPE_CLIPS ((DEC_DISC_TYPE_PICTURE_CD == g_disc_type) ||( IS_DISC_DATA_ROM && (
- (eClipType_MP3 == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType) ||
- (eClipType_JPEG == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType) ||
- (eClipType_MPEG == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType) ||
- (eClipType_AVI == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType) ||
- (eClipType_MP4 == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType) ||
- (eClipType_OGG == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType) ||
- (eClipType_WMA == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType))))
- #else
- #define IS_DISC_TYPE_CLIPS ((DEC_DISC_TYPE_PICTURE_CD == g_disc_type) ||( IS_DISC_DATA_ROM && (
- (eClipType_MP3 == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType) ||
- (eClipType_JPEG == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType) ||
- (eClipType_MPEG == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType) ||
- (eClipType_AVI == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType) ||
- (eClipType_OGG == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType) ||
- (eClipType_WMA == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType))))
- #endif
- #else //IS_OGG_VORBIS_CAPABLE
- #if defined(IS_ASF_CAPABLE) && defined(IS_MP4_CAPABLE)
- #define IS_DISC_TYPE_CLIPS ((DEC_DISC_TYPE_PICTURE_CD == g_disc_type) ||( IS_DISC_DATA_ROM && (
- (eClipType_MP3 == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType) ||
- (eClipType_JPEG == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType) ||
- (eClipType_MPEG == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType) ||
- (eClipType_AVI == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType) ||
- (eClipType_ASF == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType) ||
- (eClipType_MP4 == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType) ||
- (eClipType_WMA == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType))))
- #elif defined(IS_ASF_CAPABLE)
- #define IS_DISC_TYPE_CLIPS ((DEC_DISC_TYPE_PICTURE_CD == g_disc_type) ||( IS_DISC_DATA_ROM && (
- (eClipType_MP3 == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType) ||
- (eClipType_JPEG == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType) ||
- (eClipType_MPEG == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType) ||
- (eClipType_AVI == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType) ||
- (eClipType_ASF == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType) ||
- (eClipType_WMA == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType))))
- #elif defined(IS_MP4_CAPABLE)
- #define IS_DISC_TYPE_CLIPS ((DEC_DISC_TYPE_PICTURE_CD == g_disc_type) ||( IS_DISC_DATA_ROM && (
- (eClipType_MP3 == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType) ||
- (eClipType_JPEG == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType) ||
- (eClipType_MPEG == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType) ||
- (eClipType_AVI == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType) ||
- (eClipType_MP4 == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType) ||
- (eClipType_WMA == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType))))
- #else
- #define IS_DISC_TYPE_CLIPS ((DEC_DISC_TYPE_PICTURE_CD == g_disc_type) ||( IS_DISC_DATA_ROM && (
- (eClipType_MP3 == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType) ||
- (eClipType_JPEG == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType) ||
- (eClipType_MPEG == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType) ||
- (eClipType_AVI == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType) ||
- (eClipType_WMA == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType))))
- #endif
- #endif //IS_OGG_VORBIS_CAPABLE
- #ifdef PANEL_SKIP_FAST_COMBINE
- #define IS_REPEAT_KEY_PRESSED_LONGTIME (gks.bKeyPressedLongTime)
- #define IS_NO_KEY_PRESSED (!gks.mKeyPressed)
- #endif
- #ifdef IS_OGG_VORBIS_CAPABLE
- #define IS_CLIPS_TYPE_OGG ( IS_DISC_DATA_ROM && (eClipType_OGG == SI_CLIPS_CURR_CLIP_INFO.ciInfo.eType))
- #endif
- #endif // _COREGDEF_H