fsNAV.h
上传用户:poi891205
上传日期:2013-07-15
资源大小:9745k
文件大小:5k
源码类别:

DVD

开发平台:

C/C++

  1. //
  2. // fsGUI.h
  3. //
  4. //      fs9660-GUI module external include
  5. //
  6. // notes:
  7. //
  8. // history:
  9. //  2002/02/26  : create
  10. //
  11. #ifndef __FS_NAV_H
  12. #define __FS_NAV_H
  13. #include "bufloc.h"
  14. #include "types.h"
  15. #include "fs96602.h"
  16. //define file type
  17. enum 
  18. {
  19.     FS_FUNC_IDLE = 0,
  20. FS_FUNC_MP3 = 1,
  21. FS_FUNC_JPEG = 2,
  22. #if defined(SUPPORT_NESGAME)||defined(SUPPORT_SPG_GAME)
  23. FS_FUNC_GAME,
  24. #endif
  25. #ifdef SUPPORT_FILE_SYSTEM_MODE
  26. FS_FUNC_OTHER,   // .dat, .mpg and .txt files. Robert 020930
  27. #endif
  28. #ifdef SUPPORT_MIDI
  29.     FS_FUNC_MIDI,  //.mid
  30. #endif
  31. FS_FUNC_OKO_MENU,
  32. #ifdef FILE_MODE_WRITE     //SUNZHH 20041225
  33.     FS_FUNC_COPYING,
  34.     FS_FUNC_DELETE,
  35.     FS_FUNC_NEW,
  36.     FS_FUNC_RENAME,
  37.     FS_FUNC_FORMAT,
  38.     FS_FUNC_CAPACITY,
  39. #endif        
  40. };
  41. enum 
  42. {
  43.     FS_STATE_INIT = 0,
  44. FS_STATE_LIST = 1,
  45. FS_STATE_MP3 = 2,
  46. FS_STATE_JPEG = 3,
  47. FS_STATE_GAME = 4,
  48. FS_STATE_OTHER,  // Robert 021001
  49.     FS_STATE_MIDI,
  50. #ifdef SUPPORT_MULTI_PARTITION
  51.     FS_STATE_HDD,
  52. #ifdef FAT_FILE_MODE
  53.     FS_STATE_MODE,
  54. #endif
  55. #ifdef PMP_UI//liweihua 2005-1-5
  56.     FS_STATE_COPY,
  57. #endif
  58. #endif
  59. #ifdef FILE_MODE_WRITE
  60.     FS_STATE_MEDIA,       //SUNZHH 2004-12-24 15:25
  61.     FS_STATE_COPY,
  62. #endif    
  63. };
  64. // Added by Robert. 2002/05/08
  65. // The flag is used to identify which state it is while FS_STATE_JPEG
  66. enum
  67. {
  68. JPEG_NORMAL_MODE = 0,
  69. JPEG_MIDDLE_MODE, // This mode is just for escaping main loop.
  70. JPEG_THUMBNAIL_MODE,
  71. };
  72. EXTERN_FS  UINT32  mp3ReadLen;
  73. /*
  74. EXTERN_FS  UINT16  g_nJpegMode;
  75. EXTERN_FS  UINT16  file_specify_in_dir; // number of specify style file in current directory
  76. EXTERN_FS  UINT16  count_dir[4];
  77. EXTERN_FS  UINT16  first_dir[4];
  78. EXTERN_FS  UINT16  count_file[4];
  79. EXTERN_FS  UINT16  Dir_entry[ISO_DIR_MAX]; // map to real track number
  80. EXTERN_FS  UINT16  dir_current;
  81. EXTERN_FS  UINT16  file_current; // index of current file in current page
  82. EXTERN_FS  UINT16  file_will; // index of file will in current page,panxing,2002-4-13
  83. EXTERN_FS  BYTE gifsFuncBtn; // indicate which button that we choose(FS_FUNC_MP3, FS_FUNC_JPEG, FS_FUNC_GAME)
  84. EXTERN_FS  BYTE gifsState;
  85. EXTERN_FS  UINT16  gifsMP3Count; // # of MP3 files in current disc
  86. EXTERN_FS  UINT16  gifsJPEGCount; // .jpg
  87. EXTERN_FS  UINT16  gifsGAMECount; // .nes
  88. EXTERN_FS  UINT16  gifsOtherCount; // .dat, .mpg, and .txt. Robert 020930
  89. EXTERN_FS  UINT32  gifsMSFDVDRom; //system upgrade image
  90. EXTERN_FS  UINT32  gifsDVDRomSize; //system-image file size
  91. EXTERN_FS  UINT32  gifsMSFNESDrv; //NES driver image
  92. EXTERN_FS  UINT32  gifsNESDrvSize; //NES-driver-image file size
  93. EXTERN_FS  BYTE    gbfsSlide;
  94. EXTERN_FS  BYTE    gifsbPreview;
  95. EXTERN_FS  BYTE    gifsbZoomOK;
  96. EXTERN_FS  BYTE    gfsnot2NormalSpeed;
  97. EXTERN_FS  BYTE    iGraphMode; //0:small graph, 1:NTSC graph
  98. EXTERN_FS  BYTE    bNesDrvError;
  99. EXTERN UINT16 iso9660_dir_cnt;
  100. EXTERN UINT16 iso9660_file_cnt; //huo 891108, Jeff 20010709 BYTE->UINT16
  101. */
  102. //called by iso9660 module
  103. void FSNav_Init();
  104. void FSNav_MP3Init();
  105. void FSNav_JPEGInit();
  106. void FSNav_GameInit();
  107. void FSNav_OtherInit(); // Robert 021014
  108. void ReturnFromOtherModeToMenu(); // Robert 021014
  109. BYTE GetCurrentFileType(); // Robert 021015
  110. void FSNav_MainLoop();
  111. int  FSNav_DoUpgrade(BYTE* strVersion);
  112. void ShowMP3Reading(BYTE offset);
  113. void FS_MoveCD2RAM(BYTE *dest, UINT32 lba, UINT32 size);
  114. void FS_NesDeScramble(int *pData, int iSize);
  115. //extern function could be used
  116. //DSP audio related
  117. //2004AUDDRV extern void init_mp3(void);
  118. //2004AUDDRV extern void init_jpg(void);
  119. //2004AUDDRV extern void  InitWma(void);
  120. //OSD related
  121. extern void     DispCookOSD0(BYTE bChange);
  122. extern void     DispPolling(BYTE bReset);
  123. #ifdef AUDIO_SHOW_SAVER
  124. extern BYTE    bDisableGUI;
  125. #endif
  126. #ifdef MP3_JPEG_COWORK
  127. #include "lbc.h"
  128. #include  "drv.h"
  129. UINT32 check_mp3_boundary(UINT32 nLBA);
  130. BYTE check_input_interval(void);
  131. BYTE feed_data(UINT32 nLBA);//susu add 2003-11-4 21:32
  132. UINT16  anchor_convert_mp3;
  133. UINT16 mp3_increase_count;
  134. BYTE back_sign;//add 2004-01-15 wuxiaofeng
  135. UINT32 old_time;
  136. BYTE feed_new_data(UINT32 offset);
  137. BYTE polling_feed_new_data(UINT32 nLBA);
  138. void read_data(UINT32 nLBA);
  139. //wuxiaofeng 2004-04-19
  140. #include "memmap0.h"
  141. UINT32  feed_ptr;
  142. UINT32  read_ptr;
  143. UINT8   *MP3_START;//=(UINT8 *)(SDRAM_BASE + (MP3_BUFFER_START) * 1024);
  144. BYTE ReadMP3fromBuffer();
  145. void FeedMP3toBuffer(UINT32 nLBA);
  146. BYTE polling_read_data();
  147. void polling_feed_read_data(UINT32 nLBA);
  148. int ReadJPEG(UINT32 msf, UINT32 iFrame, UINT8* buf);
  149. extern UINT16  refresh_file_page;
  150. extern UINT16  refresh_dir_page;
  151. int mp3_loop_lock; //ycwen 2005/1/21
  152. #endif
  153. /**********************************************************
  154. **  Description: declaration and definition
  155. **  Creater:wuxiaofeng
  156. **  Date:03-09-16 17:53
  157. ***********************************************************/
  158. #if defined(CF_CARD_WRITE)||defined(SPHE8202_FAT_Write_Function) //||defined(WRITE_USB)
  159. extern BYTE sign_PFun;
  160. extern BYTE read_card_sign,flag_cf2cd,flag_cd2cf;   //xulf0826
  161. extern void Message_Show(BYTE strID);
  162. //extern int CardSchedule(BYTE copy_mode);
  163. extern int FSSchedule(BYTE copy_mode);
  164. #define PFUN_WRITE     1
  165. #define P_SPACEFULL      6
  166. #define PFUN_COPYING     5
  167. #define P_NOMATCH     9
  168. #define P_DIREXISTING     10//add 2003-12-22
  169. extern  BYTE CopyID;
  170. #endif
  171. #endif