- /****************************************************************************************
- * Copyright (c) 2002 ZORAN Corporation, All Rights Reserved
- * THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE OF ZORAN CORPORATION
- *
- * File: $Workfile: GlobsDef.h $
- *
- * Description:
- * ============
- *
- *
- * Log:
- * ====
- * $Revision: 13 $
- * Last Modified by $Author: Glenl $ at $Modtime: 2/20/04 4:09p $
- ****************************************************************************************
- * Updates:
- ****************************************************************************************
- * $Log: /I76/I76_Common/I76_Reference/Playcore/Nav_CDDA/GlobsDef.h $
- *
- * 13 2/20/04 6:11p Glenl
- * Merged S1 code
- *
- * 12 11/01/03 9:08a Nmaurer
- * Add S_CDTOC_BLOBALS
- *
- * 11 7/04/03 5:00a Stephaneh
- * Removed fixed from Frank regarding CDDTS. There is no need to add such
- * a variable. There is already a function called CDDA_IsCDDTS() that
- * return the right information.
- *
- * 10 03-07-03 12:01 Frankm
- * Leslie suggest to add this member.
- *
- * 9 03-06-27 11:12 Janeg
- * Move bIsCDDAIntroMode to global.
- *
- * 8 03-02-11 11:38 Leslie
- * Add wTotalElapsedTime
- *
- * 7 03-01-17 19:33 Leslie
- * AIN Supported
- *
- * 12 2/06/02 17:11 Nirm
- * - Moved CDDA_MAX_BOOKMARKS to Config.h
- *
- * 11 5/05/02 17:56 Ettim
- * Added support in CDEXTRA.
- *
- * 10 23/04/02 9:31 Nirm
- * - Added dependency in "Config.h".
- *
- * 9 31/03/02 8:46 Nirm
- * - Removed unnecessary dependency.
- *
- * 8 3/14/02 11:11 Ettim
- * Removing from Globsdef.h variables that are used only by the CDDA
- * navigator, and declaring them locally in Nav_CDDA.c
- *
- * 7 2/18/02 11:01 Ettim
- * Updated Audio SID setting for the channels C0 & C1
- *
- * 5 9/01/02 15:43 Nirm
- * Corrected Include-Paths.
- *
- * 4 8/01/02 16:26 Nirm
- * Corrected Include-Paths.
- *
- * 3 1/06/02 19:28 Ettim
- * A fully working version of nav_cdda
- ****************************************************************************************/
- #include "Config.h" // Global Configuration - do not remove!
- #include "PlaycoreNav_CDDApe_cd.h"
- #include "Kernelker_API.h"
- #ifndef CDDA_GLOBS_H_
- #define CDDA_GLOBS_H_
- typedef struct CDDA_Marker_TAG {
- int iPlaylistItem;
- DWORD dwAddress;
- } CDDA_Marker;
- typedef struct
- {
- UINT16 MARKABReachGap:3;
- } CDDA_MESSAGE_GAP_STATE;
- typedef struct CDDA_Navigator_TAG
- {
- // Audio stream information ( CDDA/CDTS )
- AudioSID m_eCurrAudSID;
- // Current-Location Information
- BOOL m_bLocationChanging;
- DWORD m_dwTargetLocation;
- CDDA_Marker m_CurrPosition;
- // Repeat-Mode and Random-Access Information
- CDDA_Marker m_PositionA;
- CDDA_Marker m_PositionB;
- CDDA_Marker m_ResumePlayback;
- CDDA_Marker m_Bookmarks[CDDA_MAX_BOOKMARKS];
- UINT8 m_uRendezvousPoint;
- BOOL m_bPendingModeChange;
- EVENT m_evPendingEvent;
- BYTE m_uCurrPlaybackMode;
- UINT8 m_uFirstCDDA_Track;
- UINT8 m_uLastCDDA_Track;
- // Scanning-related Information
- int m_iScanSpeed; // The current Scanning-speed (direction is determined by polarity)
- DWORD m_aCurrSegment[2]; // An array holding the Starting and Ending points of the current segment
- DWORD m_aCurrTrack[2];
- // Error-Handling and Recovery
- struct CDDA_ErrorRecoveryInfo_TAG {
- UINT16 uTimeout; // Holds the Timeout (in Ticks) to activation
- DWORD dwParam; // Holds a Parameter for the Error-Recovery Mechanism
- DWORD dwSavedAddress; // Holds a Parameter for the Error-Recovery Mechanism
- #ifdef CDDA_ERROR_RECOVERY
- BYTE ucRetryCount; //Leslie_0118_2004_A: Task Force III, implement CDDA Navigator Watchdog
- #endif
- } m_ErrorRecoveryInfo;
- BOOL g_bIsCDDTS_BAK;
- BYTE ucCDDATrackChangeDetectionCounter;
- //BYTE bIsCDDAIntroMode:1;
- } CDDA_Nav_Info;
- typedef struct cdda_globals_TAG
- {
- // Public-Access Information
- WORD uCurrentTrackNumber; // Holds the Number of the Current Track
- BYTE ucCurrentTrackInfo; // Holds the Control-field for the Current Track
- int iCurrentTime; // Holds the Current Time inside the Current Track
- WORD wTotalPlaybackTime; // Holds the Total Playback time of the Volume
- UINT8 uTotalCDDATracksCnt; // Holds the total number of CDDA tracks on disc
- WORD wRemainingPlaybackTime; // Holds the remaining playback time
- WORD wTotalElapsedTime; // Total Elapsed time
- UINT32 pTrackCDText; // Holds the pointer to current track's CDTEXT name
- UINT32 pDiscCDText; // Holds the pointer to disc's CDTEXT name
- BOOL bDrivePaused;
- BYTE bArtificialSoundMode; //HOLDS artificial mode DM090902
- #ifdef AUX_IN_ENABLE
- BYTE aux_in_audiostream;
- #endif
- #ifdef S1_GUI // For FLT Display.
- int iPlaylistItemForFLT;
- #endif // S1_GUI
- BYTE bIsCDDAIntroMode; //Is in Intro mode play
- CDDA_MESSAGE_GAP_STATE CDDAMessageGap;
- CDDA_Nav_Info *g_pCDDANav;
- BOOL g_bIsCDDTS;
- UINT32 g_hTrackInfoCache;
- WORD uPrevTrackNumber;
- } S_CDDA_GLOBALS;
- #endif //CDDA_GLOBS_H_