TypeDef.h
上传用户:hjhsjcl
上传日期:2020-09-25
资源大小:11378k
文件大小:64k
源码类别:

压缩解压

开发平台:

C++ Builder

  1. /*==========================================================================
  2. Copyright (c) 2001 Acer Labs, Inc. All Rights Reserved
  3. File: TypeDef.h
  4. content: define data type
  5. Storage Type Description
  6. ------------   -------------------------------
  7. data  direct addressable on chip RAM
  8. bdat bitaddressable on chip RAM
  9. idata  indirect addressable on chip RAM
  10. pdata paged external RAM within first 256 bytes (P2=0)
  11. xdata  external RAM
  12. code  internal/external ROM
  13.  
  14. History:
  15. ==========================================================================*/
  16. //----For Debug --------------------
  17. #define LCD_DEBUG_LINE_EN 0
  18. #define DSP_BMP_DEBUG 0
  19. #define PLAY_ERR_THEN_NEXT_MUSIC 0
  20. #define MP3_FIND_HEADER 0 //vicky061025#1
  21. #define ANALY_MP3_GENRE_EN 0
  22. #define NAND_FORCE_RESTORE 0
  23. #define NAND_QUICK_SCAN_PM 0
  24. #define UI_COLOR_SETTING 0
  25. #define NAND_ECC_DEBUG   0 //Nick070105#1
  26. #define NAND_ECC_WATCH   0 //Nick070105#1
  27. #if(NAND_ECC_DEBUG)
  28. #undef NAND_QUICK_SCAN_PM
  29. #undef NAND_FORCE_RESTORE
  30. #define NAND_QUICK_SCAN_PM 1
  31. #define NAND_FORCE_RESTORE 1
  32. #endif
  33. #ifdef _LIB_MAKE_
  34. #define LIB_MAKE 1
  35. #else
  36. #define LIB_MAKE 0
  37. #endif
  38. //-----------------------------------------------
  39. // #define _C_MODE_  0  For Mono
  40. // #define _C_MODE_  1  For Color
  41. //-----------------------------------------------
  42. //-----------------------------------------------
  43. //Program module define:
  44. //-----------------------------------------------
  45. #define _PM_INIT_ 0
  46. #define _PM_PLAY_ 0
  47. #define _PM_REC_ 0
  48. #define _PM_FM_ 0
  49. #define _PM_SYS_ 0
  50. #define _PM_USB_ 0
  51. #define _PM_DVR_ 0
  52. #define _PM_SAVE_ 0
  53. #define _PM_MPTEST_ 0
  54. #define _PM_MTP_ 0
  55. #define _PM_HST_ 0
  56. #define _PM_DRM_ 0
  57. #define _PM_MTP_INIT_ 0
  58. #define _PM_FLIST_ 0
  59. #define _PM_MENU_ 0
  60. #define _PM_PLAY_DEL_ 0
  61. #define _PM_INIT_CHK_ 0
  62. #define _PM_SLS_ 0
  63. #define _PM_PHOTO_ 0
  64. #define _PM_USB_MSC_ 0
  65. #define _PM_CLIST_ 0
  66. #define _PM_PLAY_MAIN_ 0
  67. #define _PM_DVR_MAIN_ 0
  68. #define _PM_DIR_DEL_ 0
  69. #define _PM_VIDEO_ 0//Walace051106#Video
  70. #define _PM_VD_PLAY_     0
  71. #define _PM_VD_LIST_ 0//Walace051106#Video
  72. #define _PM_VD_MENU_ 0//Walace051106#Video
  73. #define _PM_CUSTOM_ 0 //Vicky060301 #Amuse
  74. #define _PM_EBOOK_ 0  // Jeff070125#3
  75. #define _PM_PLAY_PRC_   0 //Walace061011 PlayProcess
  76. #define _PM_PLAY_DATA_RTN_RESTORE_ 0//Nick061120 //NandRestore
  77. #if(_PM_MODE_==0)
  78. #undef  _PM_INIT_
  79. #define _PM_INIT_ 1
  80. #endif
  81. #if(_PM_MODE_==1)
  82. #undef  _PM_USB_
  83. #define _PM_USB_ 1
  84. #undef  _PM_USB_MSC_ //050811
  85. #define _PM_USB_MSC_ 1
  86. #endif
  87. #if(_PM_MODE_==2)
  88. #undef  _PM_PLAY_
  89. #undef _PM_PLAY_MAIN_
  90. #define _PM_PLAY_ 1
  91. #define   _PM_PLAY_MAIN_ 1 //tne 2005/09/06
  92. #endif
  93. #if(_PM_MODE_==3)
  94. #undef  _PM_REC_
  95. #define _PM_REC_ 1
  96. #endif
  97. #if(_PM_MODE_==4)
  98. #undef  _PM_FM_
  99. #define _PM_FM_ 1
  100. #endif
  101. #if(_PM_MODE_==5)
  102. #undef  _PM_SYS_
  103. #define _PM_SYS_ 1
  104. #endif
  105. #if(_PM_MODE_==6)
  106. #undef  _PM_DVR_
  107. #undef _PM_PLAY_
  108. #undef _PM_DVR_MAIN_
  109. #define _PM_DVR_ 1
  110. #define _PM_PLAY_ 1
  111. #define  _PM_DVR_MAIN_ 1 //tne 2005/09/06
  112. #endif
  113. #if(_PM_MODE_==7)
  114. #undef  _PM_SAVE_
  115. #define _PM_SAVE_ 1
  116. #endif
  117. #if(_PM_MODE_==8)
  118. #undef  _PM_MPTEST_
  119. #define _PM_MPTEST_ 1
  120. #endif
  121. #if(_PM_MODE_==9) //MTP
  122. #undef  _PM_USB_
  123. #define _PM_USB_ 1
  124. #undef  _PM_MTP_
  125. #define _PM_MTP_ 1
  126. #undef _PM_DRM_
  127. #define _PM_DRM_ 1
  128. #endif
  129. #if(_PM_MODE_==10) //"Host" and "HostCopy"
  130. #undef  _PM_HST_
  131. #define _PM_HST_ 1
  132. #else
  133. #define _HOST_COPY_ 0
  134. #endif
  135. #if(_PM_MODE_==11)
  136. #undef  _PM_SAVE_
  137. #define _PM_SAVE_ 1
  138. #endif
  139. #if(_PM_MODE_==12)
  140. #undef  _PM_MPTEST_
  141. #define _PM_MPTEST_ 1
  142. #undef  _PM_USB_MSC_ //allen060623 new_nf
  143. #define _PM_USB_MSC_ 1
  144. #endif
  145. #if(_PM_MODE_==13)  //MTP INIT
  146. #undef  _PM_MTP_INIT_
  147. #define _PM_MTP_INIT_ 1
  148. //#undef _PM_USB_
  149. //#define _PM_USB_ 1
  150. #endif
  151. #if(_PM_MODE_==14)
  152. #undef  _PM_INIT_CHK_
  153. #define _PM_INIT_CHK_ 1
  154. #endif
  155. #if(_PM_MODE_==16)
  156. #undef _PM_PLAY_
  157. #undef _PM_FLIST_
  158. #define _PM_PLAY_ 1
  159. #define _PM_FLIST_ 1
  160. #endif
  161. //2 DvrFileList
  162. #if(_PM_MODE_==17)
  163. #undef _PM_PLAY_
  164. #undef _PM_DVR_
  165. #undef _PM_FLIST_
  166. #define _PM_PLAY_ 1
  167. #define _PM_DVR_ 1
  168. #define _PM_FLIST_ 1
  169. #endif
  170.  //2  PlayMenu
  171. #if(_PM_MODE_==18)   
  172. #undef _PM_PLAY_
  173. #undef _PM_MENU_
  174. #define _PM_PLAY_ 1
  175. #define _PM_MENU_ 1
  176. #endif
  177.  //2  DVRMenu
  178. #if(_PM_MODE_==19)
  179. #undef _PM_PLAY_
  180. #undef _PM_DVR_
  181. #undef _PM_MENU_
  182. #define _PM_PLAY_ 1
  183. #define _PM_DVR_ 1
  184. #define _PM_MENU_ 1
  185. #endif
  186. //2 DvrRecMenu
  187. #if(_PM_MODE_==22)
  188. #undef _PM_PLAY_
  189. #undef _PM_DVR_
  190. #undef _PM_MENU_
  191. #define _PM_PLAY_ 1
  192. #define _PM_DVR_ 1
  193. #define _PM_MENU_ 2
  194. #endif
  195. #if(_PM_MODE_==23)
  196. #undef _PM_PLAY_DEL_
  197. #define _PM_PLAY_DEL_ 1
  198. #endif
  199. #if(_PM_MODE_==24)
  200.    #undef _PM_SLS_
  201. #define _PM_SLS_ 1
  202. #endif
  203. #if(_PM_MODE_==25) 
  204. #undef  _PM_PHOTO_
  205. #define _PM_PHOTO_ 1
  206. #endif
  207. //tne CDB
  208. #if(_PM_MODE_==26)
  209. #undef _PM_PLAY_
  210. #undef _PM_CLIST_
  211. #define _PM_CLIST_ 1
  212. #define _PM_PLAY_ 1
  213. #endif
  214. //tne dir del
  215. #if(_PM_MODE_==27)
  216. #undef _PM_DIR_DEL_
  217. #define _PM_DIR_DEL_ 1
  218. #endif
  219. #if(_PM_MODE_==28)   //Walace051106#Video
  220. #undef _PM_VIDEO_
  221. #define _PM_VIDEO_ 1
  222. #undef _PM_VD_PLAY_
  223. #define _PM_VD_PLAY_ 1
  224. #endif
  225. #if(_PM_MODE_==29)   //Walace051106#Video
  226. #undef _PM_VIDEO_
  227. #define _PM_VIDEO_ 1
  228. #undef _PM_VD_LIST_
  229. #define _PM_VD_LIST_ 1
  230. #endif
  231. #if(_PM_MODE_==30)   //Walace051106#Video
  232. #undef _PM_VIDEO_
  233. #define _PM_VIDEO_ 1
  234. #undef _PM_VD_MENU_
  235. #define _PM_VD_MENU_ 1
  236. #endif
  237. //Walace061011 PlayProcess start
  238. #if(_PM_MODE_==31)   //Walace060529#1
  239. #undef _PM_PLAY_
  240. #define _PM_PLAY_ 1
  241. #undef _PM_PLAY_PRC_
  242. #define _PM_PLAY_PRC_ 1
  243. #endif
  244. #if(_PM_MODE_==32)   //Walace060529#1
  245. #undef _PM_PLAY_
  246. #define _PM_PLAY_ 1
  247. #undef _PM_DVR_
  248. #define _PM_DVR_ 1
  249. #undef _PM_PLAY_PRC_
  250. #define _PM_PLAY_PRC_ 1
  251. #endif
  252. //Nick061120 start //NandRestore
  253. #if(_PM_MODE_==33) 
  254. #undef _PM_PLAY_DATA_RTN_RESTORE_
  255. #define _PM_PLAY_DATA_RTN_RESTORE_  1
  256. #endif
  257. //Nick061120 end
  258. #if(_PM_MODE_ ==37)       //TONY070109
  259. #undef  _PM_EBOOK_
  260. #define _PM_EBOOK_ 1
  261. #undef  _PM_PHOTO_
  262. #define _PM_PHOTO_ 1
  263. #endif
  264. //Vicky060301
  265. #if(_PM_MODE_==38)
  266. #undef _PM_CUSTOM_
  267. #define _PM_CUSTOM_ 1
  268. #endif
  269. //End
  270. #define NANDRESTORE_EN 1
  271. //Dsp output zero data while volume 0 
  272. //Default disable because of without QT doubel check.
  273. #define DSP_MUTE_TEST 1
  274. #define AGC_USE_DSP_GAIN 0
  275. //============================================
  276. // Test the suggestion from IC team for the issue of interrupt missing 
  277. #define SHOW_NOW_TIME 0
  278. //==============================================
  279. //= Debug Flag ========================================
  280. //Enable toggle GPIOA5 at timer interrupt for debug usage.
  281. #define DEBUG_TIMER_GPIOA5_TOGGLE 0
  282. //Enable GPIO debug function "GPIOC2_DEBUG(BYTE bPeakNum)"
  283. #define USE_GPIOC2_DEBUG 0
  284. #define  GPIOC2_DEBUG_DELAY 10
  285. //Enable GPIO debug function "GPIOA5_DEBUG(BYTE bPeakNum)"
  286. #define USE_GPIOA5_DEBUG 0
  287. #define  GPIOA5_DEBUG_DELAY 200
  288. //============================================
  289. #define USE_KEY_PRESS_WAIT 0
  290. //================================================================
  291. //Use ICE  to simulation real procedure of device flow.
  292. #define ICE_REAL_MODE 0//vicky061001#2 Debug Play Need to Enable
  293. //================================================================
  294. #if(_PM_MTP_) //Walace060811
  295. #define USB_ERROR_HANDLE_ENHANCE 0  
  296. #else
  297. #define USB_ERROR_HANDLE_ENHANCE 1 
  298. #endif
  299. #if(ICE_REAL_MODE)
  300. #define DEBUG_SPEED 1
  301. #define ICE_FOR_USB 0 //vicky061001#2 Debug Play Need to Disable
  302. #define DIS_LOAD_PROGRAME 1
  303. #else
  304. #define DEBUG_SPEED 0
  305. #define ICE_FOR_USB 0
  306. #define DIS_LOAD_PROGRAME 0
  307. #endif
  308. //================================================================
  309. #define PLAY_PROC_DEBUG 0
  310. //===================================================================
  311. #define DEBUG_DEC      0
  312. #define SHOW_DSPERR 0
  313. #define DEBUG_LRC_IN_CUSTOM 0 //Vicky060602#1
  314. #if(_PM_MODE_!=38)
  315. #undef DEBUG_LRC_IN_CUSTOM
  316. #define DEBUG_LRC_IN_CUSTOM 0
  317. #endif
  318. /*
  319. //#if(_PM_USB_)
  320. //#undef SHOW_NOW_TIME 
  321. //#define SHOW_NOW_TIME 0
  322. //#endif
  323. */
  324. //tne 2005/08/17 //release m568c define
  325. /* ===============================================================
  326. #ifdef _S5638_
  327. #if(_S5638_)
  328. #define CDC_FOR_S5638 1
  329. #define DEBUG_S5638 1
  330. #else
  331. #define CDC_FOR_S5638 0
  332. #define DEBUG_S5638 0
  333. #endif
  334. #else
  335. //-----------------------------------------------
  336. // If use S5638 design, set CDC_FOR_S5638 = 1
  337. // DEBUG_S5638 =1 to avoid some problem
  338. // Otherwise, use M5638B as default.
  339. //-----------------------------------------------
  340. #define CDC_FOR_S5638 0
  341. #define DEBUG_S5638 0
  342. #endif
  343. #ifdef _M5638C_
  344. #if(_M5638C_)
  345. #define CDC_FOR_M5638C 1
  346. #define DEBUG_M5638C 1 //Renshuo050530
  347. #else
  348. #define CDC_FOR_M5638C 0
  349. #define DEBUG_M5638C 0 //Renshuo050530
  350. #endif
  351. #else
  352. //vicky050607#1
  353. //-----------------------------------------------
  354. // If use M5638C, set CDC_FOR_M5638C = 1
  355. //-----------------------------------------------
  356. #define CDC_FOR_M5638C 1
  357. #define DEBUG_M5638C 1 //Renshuo050530
  358. #endif
  359. #if(CDC_FOR_M5638C | DEBUG_M5638C)
  360. #undef CDC_FOR_S5638
  361. #define CDC_FOR_S5638 1
  362. #undef DEBUG_S5638
  363. #define DEBUG_S5638  1
  364. #endif
  365. ================================================================ */
  366. //======================================
  367. // LCD_TYPE 1 : OLED_SOLOMON 
  368. // LCD_TYPE 2 : TFT_ORISE
  369. // LCD_TYPE 3 : TFT_SOLOMON
  370. // LCD_TYPE 4 : TFT_TOPPOLY
  371. //======================================
  372. //======================================
  373. #define OLED_SOLOMON 1
  374. #define SOLOMON_SSD1332 1
  375. //======================================
  376. //======================================
  377. #define TFT_ORISE 2
  378. #define ORISE_SPFD54126A 1  // 220*176
  379. #define ORISE_SPFD54124A 2 // 160*128
  380. #define ORISE_SPFD54126B 3 // 220*176
  381. //======================================
  382. //======================================
  383. #define TFT_SOLOMON 3
  384. #define SOLOMON_SSD1289 1 // 320*240
  385. //======================================
  386. //======================================
  387. #define TFT_TOPPOLY 4     // TianMa TFT // Jeff070125#2
  388. #define TOPPOLY_C1E204 1 // 220*176
  389. //======================================
  390. #define LCD_TYPE TFT_ORISE
  391. //#define LCD_TYPE TFT_TOPPOLY
  392. #if(LCD_TYPE==OLED_SOLOMON) 
  393. #define LCD_NUM SOLOMON_SSD1332
  394. #elif (LCD_TYPE==TFT_ORISE)
  395. #define LCD_NUM ORISE_SPFD54124A
  396. #elif (LCD_TYPE==TFT_SOLOMON)
  397. #define LCD_NUM SOLOMON_SSD1289
  398. #elif (LCD_TYPE==TFT_TOPPOLY) // Jeff070125#2
  399. #define LCD_NUM TOPPOLY_C1E204
  400. #endif
  401. #if(NEW_FLASH)
  402. #define MSC_EMPTY_DISK 0 //Allen060623 new_nf
  403. //#define SPECIAL_SETTING_EN  1 //Allen060623 new_nf
  404. //#define REMOVE_FINISHJOB 1 //Allen060624 new_nf
  405. #endif
  406. #define COLOR_MODE 1//0// 1 //add by Rojam 070116
  407. //-----------------------------------------------
  408. // USB_DISPCOUNTER :  0 //OFF DISP COUNTER
  409. // 1 //ON DISP COUNTER
  410. //-----------------------------------------------
  411. #define USB_DISPCOUNTER 1//0// 1 //add by Rojam 070208
  412. //==================================================================
  413. // UI_CHARGE_IC 0: DON'T Use chargeing IC
  414. // 1: Use chargeing IC
  415. //==================================================================
  416. #define UI_CHARGE_IC 0 // modify by Rojam 2007-03-29 09:29
  417. //-----------------------------------------------
  418. // SIMULATION_MODE 0 : normal code
  419. // SIMULATION_MODE 1 : running simulation
  420. //-----------------------------------------------
  421. #define SIMULATION_MODE 0
  422. //-----------------------------------------------
  423. // ENABLE_SD_FUNCTION 0 : disable sd function
  424. // ENABLE_SD_FUNCTION 1 : enable sd function
  425. // PS. This option would not effect USB mode
  426. //-----------------------------------------------
  427. #if(COLOR_MODE==0||COLOR_MODE==3)
  428. #define ENABLE_SD_FUNCTION 1 // modify by Rojam 2007-03-27 17:8
  429. #else
  430. #define ENABLE_SD_FUNCTION 0 //modify by Rojam
  431. #endif
  432. //==================================================================
  433. // _PEDOMETER_Mode_ 0: DON'T Use PEDOMETER
  434. // 1: Use PEDOMETER 
  435. //==================================================================
  436. #if(COLOR_MODE==2)
  437. #define _PEDOMETER_Mode_ 1// 1 //add by rojam 070111
  438. #else
  439. #define _PEDOMETER_Mode_ 0//0// 1 //add by rojam 070111
  440. #endif
  441. #if(ICE_REAL_MODE)
  442. #undef ENABLE_SD_FUNCTION 
  443. #define ENABLE_SD_FUNCTION  0 //060808: for code size 
  444. #endif
  445. //Vicky060301
  446. #if(_PM_CUSTOM_)
  447. #undef ENABLE_SD_FUNCTION 
  448. #define ENABLE_SD_FUNCTION  1
  449. #endif
  450. //End
  451. #if(_PM_USB_|_PM_MPTEST_|_PM_MTP_INIT_)
  452. #undef ENABLE_SD_FUNCTION
  453. #define ENABLE_SD_FUNCTION 1
  454. #endif
  455. #define SD_DET_USE_INT1 0
  456. #if((_PM_USB_)||(!ENABLE_SD_FUNCTION))
  457. #undef SD_DET_USE_INT1
  458. #define SD_DET_USE_INT1 0
  459. #endif
  460. //David051130#1 start
  461. //-----------------------------------------------
  462. // FADE_IN_OUT_MODE  0 : MCU fade in/out (PA gain)
  463. // FADE_IN_OUT_MODE  1 : DSP fade in/out (digital gain)
  464. //-----------------------------------------------
  465. #define FADE_IN_OUT_MODE  1
  466. //End
  467. #if(_PM_CUSTOM_) //Video use the  dsp fade out mode 0
  468. #undef FADE_IN_OUT_MODE
  469. #define FADE_IN_OUT_MODE 0
  470. #endif
  471. //-----------------------------------------------
  472. // ENABLE_HOST_FUNCTION 0 : disable host function
  473. // ENABLE_HOST_FUNCTION 1 : enable host function
  474. // PS. Implement HOST as a storage type
  475. //-----------------------------------------------
  476. #define ENABLE_HOST_FUNCTION  0 //allen050720
  477. #define ENABLE_NAND_FUNCTION  1 //050728t
  478. #define COPY_USE_NORMAL_FS 1 //050803
  479. #if(SIMULATION_MODE)
  480. #define SIMU_INDEX(wAddr,bindex) {*(XBYTE*)(wAddr)=bindex;}
  481. #else
  482. #define SIMU_INDEX(wAddr,bindex)
  483. #endif
  484. #ifdef _ICE_
  485. #define SETTING_FOR_ICE_START 1
  486. #define MIN_UI_CODE_SIZE  1
  487. #else
  488. //-----------------------------------------------
  489. // SETTING_FOR_ICE_START 0 : normal code
  490. // SETTING_FOR_ICE_START 1 : Add clk and variables setting in ICE environment
  491. //-----------------------------------------------
  492. #define SETTING_FOR_ICE_START 0
  493. //-----------------------------------------------
  494. // MIN_UI_CODE_SIZE 0 : Custom setting Ui en/disable option
  495. // MIN_UI_CODE_SIZE 1 : Disable all most Ui function for more code size
  496. //-----------------------------------------------
  497. #define MIN_UI_CODE_SIZE  0
  498. #endif
  499. //-------------------------------
  500. #if(SETTING_FOR_ICE_START)
  501. #define DEBUG_LARGE large
  502. #else
  503.    #define DEBUG_LARGE 
  504. #endif
  505. //-----------------------------------------------
  506. // DRM_MODE_EN 0 : No DRM 
  507. // DRM_MODE_EN 1 : DRM
  508. //-----------------------------------------------
  509. //If DRM_MODE_EN==0
  510. //Please remove the "?PR?UISEARCHMTPPROPFILE?UICOMMON," from Playback.lin
  511. #define DRM_MODE_EN  0// 1 // modify by Rojam 2007-03-27 16:31
  512. //-----------------------------------------------
  513. // SETTING_FOR_ISP_START 0 : normal code
  514. // SETTING_FOR_ISP_START 1 : Add clk and variables setting in ICE environment
  515. //-----------------------------------------------
  516. #define SETTING_FOR_ISP_START 0
  517. #if(_PM_MPTEST_)
  518. #undef SETTING_FOR_ISP_START 
  519. #define SETTING_FOR_ISP_START 1
  520. #endif
  521. #if(NEW_FLASH)
  522. #if(SETTING_FOR_ISP_START) //Allen060623 new_nf
  523. #undef MSC_EMPTY_DISK
  524. #define MSC_EMPTY_DISK 1
  525. #endif
  526. #endif
  527. //-----------------------------------------------
  528. // REMOVE_FOR_TEST_J 0 : normal code
  529. // REMOVE_FOR_TEST_J 1 : for test skip some functions
  530. //-----------------------------------------------
  531. #define REMOVE_FOR_TEST_J 0
  532. //-----------------------------------------------
  533. // ENGINEER_MODE 0 : normal code
  534. // ENGINEER_MODE 1 : engineer mode, record every state
  535. //-----------------------------------------------
  536. #define ENGINEER_MODE 0
  537. /*
  538. //-----------------------------------------------
  539. // EXT_CODEC 0 : use internal codec
  540. // EXT_CODEC 1 : use external codec
  541. //-----------------------------------------------
  542. //#define EXT_CODEC 0
  543. //Ren050312#1
  544. //-----------------------------------------------
  545. // EXT_ADC, EXT_DAC, EXT_PA 0 : use internal codec
  546. // EXT_ADC, EXT_DAC, EXT_PA 1 : use external codec
  547. //
  548. // Supported setting now:
  549. // (EXT_ADC, EXT_DAC, EXT_DAC) = 
  550. // (0, 0, 0) use internal CODEC
  551. // (0, 1, 1) only use internal AD
  552. // (1, 1, 1) use external CODEC
  553. //-----------------------------------------------
  554. #ifndef _CDC_
  555. #define _EXT_CODEC 0
  556. #else
  557. #if(_CDC_==0)
  558. #define _EXT_CODEC 0
  559. #elif(_CDC_==1)
  560. #define _EXT_CODEC 1
  561. #elif(_CDC_==2)
  562. #define _EXT_CODEC 2
  563. #endif
  564. #endif
  565. #if(_EXT_CODEC == 2)
  566. #define EXT_ADC  1
  567. #define EXT_DAC  1
  568. #define EXT_PA  1
  569. #elif(_EXT_CODEC == 1)
  570. #define EXT_ADC  0
  571. #define EXT_DAC  1
  572. #define EXT_PA  1
  573. #elif(_EXT_CODEC == 0)
  574. #define EXT_ADC  0
  575. #define EXT_DAC  0
  576. #define EXT_PA  0
  577. #endif
  578. */
  579. //-----------------------------------------------
  580. // Select FM chip type
  581. // 0: TEA5767
  582. // 1: M5181
  583. // 2: SI4700 //add by Rojam 070117
  584. //-----------------------------------------------
  585. #if(COLOR_MODE==1||COLOR_MODE==3)
  586. #define FM_MODULE 2// 0 //modify by Rojam 070117
  587. #else
  588. #define FM_MODULE  0 //modify by Rojam 070117
  589. #endif
  590. #define FM_INIT_STANDBY 1//0 //Jason060925#1 // modify by Rojam 2007-04-13 11:23
  591. // WHH070322(start)
  592. //-----------------------------------------------
  593. //Use Rds function
  594. // 1: use Rds function
  595. // 0: not use Rds function
  596. //-----------------------------------------------
  597. #define USE_RDS_INF 1// 1 // modify by Rojam 2007-05-21 10:9
  598. #if(FM_MODULE!=2)
  599. #undef USE_RDS_INF
  600. #define USE_RDS_INF 0
  601. #endif
  602. // WHH070322(end)
  603. //-----------------------------------------------
  604. // Save FM Setting directly in FM module (without across SaveSetting)
  605. //-----------------------------------------------
  606. #define FM_PRESET_PRESAVE 1 //Walace060714#1
  607. //-----------------------------------------------
  608. // Determine FM Search Step;
  609. // 0: 100K per step
  610. // 1: 50K per step
  611. //-----------------------------------------------
  612. #if(FM_MODULE==2) //Dennis Shih 2006/02/14 //tne 2006/12/06 #1
  613. #define FM_STEP_100K 1//0 //Dennis060517#1 // modify by Rojam 2007-04-20 15:3
  614. #else
  615. #define FM_STEP_100K 0 //Dennis060517#1 // modify by Rojam 2007-04-20 15:3
  616. #endif
  617. //Walace060829#4
  618. //-----------------------------------------------
  619. // Auto search using on-chip auto search function 
  620. // special case  for TEA5767
  621. //-----------------------------------------------
  622. // ps. USE_CHIP_AUTO_SEARCH=0  is not ready
  623. #define USE_CHIP_AUTO_SEARCH 1
  624. #if(FM_MODULE==1||FM_MODULE==2)
  625. #undef USE_CHIP_AUTO_SEARCH
  626. #define USE_CHIP_AUTO_SEARCH 1
  627. #endif
  628. //-----------------------------------------------
  629. //Walace060131#1
  630. //-----------------------------------------------
  631. // P-switch delay (second) 0~4 sec 
  632. //-----------------------------------------------
  633. #define P_SWITCH_DELAY_SEC 2
  634. //-----------------------------------------------
  635. // SETTING_PM_DEL_DEBUG 0: Normal Mode
  636. //  1: 4 mode for _PM_PLAY_DEL_
  637. //-----------------------------------------------
  638. #define SETTING_PM_DEL_DEBUG 0
  639. #if( (!_PM_PLAY_DEL_) & (!_PM_DIR_DEL_) )
  640. #undef SETTING_PM_DEL_DEBUG
  641. #define SETTING_PM_DEL_DEBUG 0
  642. #endif
  643.  // Jeff_061016
  644. //-----------------------------------------------
  645. // External Codec Type Select, when EXT_CODEC is set to 1.
  646. // Set one chip enable(1) only, and others are disale(0)
  647. //-----------------------------------------------
  648. #define CDC_WM_8731 0
  649. #define CDC_WM_8750 1
  650. //-----------------------------------------------
  651. // EXT_PW_AMP 0 : use internal power amplifier
  652. // EXT_PW_AMP 1 : use external power amplifier
  653. // (Note: it only effects in internal codec mode)
  654. //-----------------------------------------------
  655. #define EXT_PW_AMP 0
  656. //-----------------------------------------------
  657. // EXT_ROM_EN 1 
  658. // EXT_ROM_EN 0 
  659. //-----------------------------------------------
  660. #define EXT_ROM_EN 0
  661. //-----------------------------------------------
  662. // PCM_DEBUG 0 : normal code(IMA ADPCM)
  663. // PCM_DEBUG 1 : PCM only
  664. //-----------------------------------------------
  665. #define PCM_DEBUG 0
  666. //-----------------------------------------------
  667. // DEBUG_MODE 0 : normal code
  668. // DEBUG_MODE 1 : Update manager
  669. //-----------------------------------------------
  670. #define DEBUG_MODE 0
  671. //-----------------------------------------------
  672. // ECC_4BIT_MODE 0 : 1 bit
  673. // ECC_4BIT_MODE 1 : 4 bit
  674. //-----------------------------------------------
  675. #define ECC_4BIT_MODE  0 //a10//a13
  676. //-----------------------------------------------
  677. // USE_BR_CLK_SET 0 : use usb clk
  678. // USE_BR_CLK_SET 1 : use dcv clk
  679. //-----------------------------------------------
  680. #define USE_BR_CLK_SET  0 //a10
  681. //-----------------------------------------------
  682. // SD_WP_SWTICH 0 : don't Check SD WP switch //Vicky060606#1 
  683. // SD_WP_SWTICH 1 : Check SD WP swtich
  684. //-----------------------------------------------
  685. #if(COLOR_MODE==3) //modify by Rojam 2007-05-17 18:36
  686. #define SD_WP_SWTICH  0 //Vicky 050311
  687. #else
  688. #define SD_WP_SWTICH  1 //Vicky 050311
  689. #endif
  690. //-----------------------------------------------
  691. // DEBUG_SDWP 0 : NO wp. 
  692. // DEBUG_SDWP 1 : Write Protected
  693. // only effective when set "SD_WP_SWTICH" =0 or ICE Mode  //Vicky060606#1
  694. //-----------------------------------------------
  695. #define DEBUG_SDWP 0
  696. //-----------------------------------------------
  697. // DEBUG_SDFUNC 0 : NO SDFUNC. 
  698. // DEBUG_SDFUNC 1 : ENABEL SDFUNC DEBUG
  699. //-----------------------------------------------
  700. #define DEBUG_SDFUNC 0 //Vicky050323
  701. #if(!SETTING_FOR_ICE_START)
  702. #undef DEBUG_SDFUNC
  703. #define DEBUG_SDFUNC 0
  704. #endif
  705. //Vicky050411#4
  706. //-----------------------------------------------
  707. // REC_TEST 0: NO Test. 
  708. // REC_TEST 1: Test REC FUNC
  709. //-----------------------------------------------
  710. //Vicky Debug Rec
  711. #define REC_TEST 0
  712. #if(REC_TEST)
  713. #define REC_CNT  500 //(range 1~9999)
  714. #define REC_SEC  4  //(range 0~59 )
  715. #define REC_VALID 0x7FFF
  716. #define REC_END  0x8000
  717. #define REC_TEST_LMIN REC_Q_L2
  718. #define REC_TEST_LMAX REC_Q_L2
  719. #endif
  720. //Chris060606
  721. //-----------------------------------------------
  722. // MeteringDebug
  723. //-----------------------------------------------
  724. #define MTP_SUPPORT_METERING 0 //Chris 060816
  725. #define MTP_SUPPORT_ROUNDTRIP 0 //Chris 061018 #2
  726. #define MTP_DEBUG_METERING 0 //Chris 060721
  727. #define DEBUG_PLAYBACK 0 //Chris 060726
  728. #if (_PM_USB_)
  729. #define MTP_SUPPORT_EVENT 1 //Chris 061222#1 //Crhis070518#4    Chris070521#1
  730. #endif
  731. //vicky050607#3
  732. //-----------------------------------------------
  733. // TAG_LARGE 0 : Tag buffer size 64
  734. // TAG_LARGE 1 : Tag buffer size 256
  735. //-----------------------------------------------
  736. #define TAG_LARGE  1
  737. //Vicky051209#1
  738. //-----------------------------------------------
  739. // ENABLE_FLUSH 0 : Don't Check Flush flag
  740. // ENABLE_FLUSH 1 : Speed up MCU & DSP Clk when got Flush flag 
  741. //-----------------------------------------------
  742. #define ENABLE_FLUSH 1
  743. //End
  744. //-----------------------------------------------
  745. // MULTI_LRC_EN 0 : Don't Support Mulit TIme Stamp LRC
  746. // MULTI_LRC_EN 1 : Support Mulit TIme Stamp LRC
  747. //-----------------------------------------------
  748. //Vicky060222
  749. #define MULTI_LRC_EN 1
  750. #if(_PM_DVR_)
  751. #undef MULTI_LRC_EN
  752. #define MULTI_LRC_EN 0
  753. #endif
  754. //End
  755. //Vicky060301
  756. //-----------------------------------------------
  757. // ENABLE_AMUSE_FUNC 0 : Don't Support Extended Amuse
  758. // ENABLE_AMUSE_FUNC 1 : Support Extended Amuse
  759. //-----------------------------------------------
  760. #define ENABLE_AMUSE_FUNC 0
  761. //End
  762. //Vicky060415 VBR SEEK
  763. //-----------------------------------------------
  764. // VBR_SEEK_EN 0 :  Calcualte as CBR
  765. // VBR_SEEK_EN 1 :  Support VBR TOC SEEK
  766. //-----------------------------------------------
  767. #define  VBR_SEEK_EN 1 //vicky061004#1 debug
  768. #if(VBR_SEEK_EN) //Temporary since out of PM Memory
  769. #define VBR_SEEK_MP3 1
  770. #define VBR_SEEK_WMA 1
  771. #else
  772. #define VBR_SEEK_MP3 0
  773. #define VBR_SEEK_WMA 0
  774. #endif
  775. #if(_PM_DVR_)
  776. #undef  VBR_SEEK_EN
  777. #define  VBR_SEEK_EN  0
  778. #endif
  779. //End
  780. //Vicky060605#1
  781. #define FSCLUINDEX_KEEP 1
  782. #define FSCLUINDEX_NUM 5
  783. #if(!(_PM_PLAY_|_PM_DVR_|_PM_VIDEO_)) //Walace061121#1
  784. #undef FSCLUINDEX_KEEP
  785. #define FSCLUINDEX_KEEP 0
  786. #endif
  787. //vicky070109#1
  788. //-----------------------------------------------
  789. // SPEED_UP_FAT 0 : Original FileSystem
  790. // SPEED_UP_FAT 1 : Speed up FatRead()  (Adj MCU Clk and FatRead())
  791. //-----------------------------------------------
  792. #define SPEED_UP_FAT 1
  793. #define SPEED_UP_CLUSTER_NUM 255
  794. //End
  795. //Nick060629#1
  796. //-----------------------------------------------
  797. // PLAY_SUPPORT_WAV 0 :  Playback not support WAV
  798. // PLAY_SUPPORT_WAV 1 :  Playback support WAV
  799. //-----------------------------------------------
  800. #define PLAY_SUPPORT_WAV 1
  801. /*==========================================================================
  802.  SDK edit(start)
  803. ==========================================================================*/
  804. //Watch Dog //David051123#4
  805. //-----------------------------------------------
  806. // WD_FUNC_TYPE 0: Watch Dog function disable
  807. // 1: Watch Dog function enable (method 1: disable after bootrom)
  808. // 2: Watch Dog function enable (method 2: regular reset watch dog)
  809. //
  810. //----------------------------------------------
  811. #define WD_FUNC_TYPE 0
  812. //tne 2005/08/17 //David051123#2 ,add "Debug version" define and update IC version as A1C/B1A/B1B
  813. //-----------------------------------------------
  814. // Select your IC type:
  815. // IC_5661_TYPE 0: M5638B   (A1C)
  816. // 1: S5638
  817. // 2: M5638C   (B1A)
  818. // 3:  M5638C (B1B)
  819. //----------------------------------------------
  820. #define IC_M5638B_A1C 0
  821. #define IC_S5638 1
  822. #define IC_M5638C_B1A 2
  823. #define IC_M5638C_B1B 3
  824. #define IC_5661_TYPE IC_M5638C_B1A // modify by Rojam 2007-04-23 09:23
  825. //IC Define Job, you do not need to modify here...
  826. #if(IC_5661_TYPE==IC_M5638B_A1C)
  827. #define CDC_FOR_M5638C 0
  828. #define DEBUG_M5638C 0
  829. #define CDC_FOR_S5638 0
  830. #define DEBUG_S5638 0
  831. #elif(IC_5661_TYPE==IC_S5638)
  832. #define CDC_FOR_M5638C 0
  833. #define DEBUG_M5638C 0
  834. #define CDC_FOR_S5638 1
  835. #define DEBUG_S5638 1
  836. #elif(IC_5661_TYPE==IC_M5638C_B1A)
  837. #define CDC_FOR_M5638C 1
  838. #define DEBUG_M5638C 1
  839. #define CDC_FOR_S5638 1
  840. #define DEBUG_S5638 1
  841. #elif(IC_5661_TYPE==IC_M5638C_B1B)
  842.   #define CDC_FOR_M5638C 1
  843. #define DEBUG_M5638C     1
  844. #define CDC_FOR_S5638 1
  845. #define DEBUG_S5638 1
  846. #endif
  847. //-----------------------------------------------
  848. // Select your external codec type:
  849. // EXT_ADC, EXT_DAC, EXT_PA 0 : use internal codec
  850. // EXT_ADC, EXT_DAC, EXT_PA 1 : use external codec
  851. //
  852. // Supported setting now:
  853. // _EXT_CODEC: (EXT_ADC, EXT_DAC, EXT_DAC) = 
  854. // 0 (0, 0, 0) use internal CODEC
  855. // 1 (0, 1, 1) only use internal AD
  856. // 2 (1, 1, 1) use external CODEC
  857. //-----------------------------------------------
  858. #define _EXT_CODEC 0
  859. //Codec Define Job, you do not need modify here...
  860. #if(_EXT_CODEC == 2)
  861. #define EXT_ADC  1
  862. #define EXT_DAC  1
  863. #define EXT_PA  1
  864. #elif(_EXT_CODEC == 1)
  865. #define EXT_ADC  0
  866. #define EXT_DAC  1
  867. #define EXT_PA  1
  868. #elif(_EXT_CODEC == 0)
  869. #define EXT_ADC  0
  870. #define EXT_DAC  0
  871. #define EXT_PA  0
  872. #endif
  873. //-----------------------------------------------
  874. // CIRCUIT_2_PW  0 : 3 power solution DCV setting
  875. // CIRCUIT_2_PW  1 : 2 power solution DCV setting
  876. //----------------------------------------------- //David050719
  877. #define CIRCUIT_2_PW 1
  878. //David051205#2 start
  879. //-----------------------------------------------
  880. // ONE_BATT_MODE  0 : Li-ion batt
  881. // ONE_BATT_MODE  1 : 1 batt 
  882. //-----------------------------------------------
  883. #define ONE_BATT_MODE 0// 1 // modify by Rojam 2007-03-27 16:30
  884. #if(_C_MODE_) //Hi-color OLED default use Li-ion
  885. #undef ONE_BATT_MODE
  886. #define ONE_BATT_MODE 0
  887. #endif
  888. //End
  889. //hsiang VddioCali start
  890. // USE VDDIO CALIBRATION Must have ext. power(1.4V) to Battery
  891. //-----------------------------------------------
  892. // Don't USE_VDDIO_CALIBRATION  0  
  893. // USE_VDDIO_CALIBRATION  1 
  894. //-----------------------------------------------
  895. #if(ONE_BATT_MODE)
  896. #define USE_VDDIO_CALIBRATION 0
  897. #else
  898. #define USE_VDDIO_CALIBRATION 0
  899. #endif
  900. //End
  901. #define COST_DOWN_CIRCUIT  1//0//WHH 070117 // modify by Rojam 2007-03-28 09:27
  902. #if(ONE_BATT_MODE) //WHH 070117
  903. #undef COST_DOWN_CIRCUIT
  904. #define COST_DOWN_CIRCUIT 0
  905. #endif
  906. //-----------------------------------------------
  907. //MAX_VOL_OUTPUT_POWER 0 : Normal Max Volume status
  908. //MAX_VOL_OUTPUT_POWER 1 : Max Volume with a 5mW output power
  909. //-----------------------------------------------
  910. //Walace060301 start
  911. #define MAX_VOL_OUTPUT_POWER  1 // Jeff_051110
  912. // for easy to find the better VDDA value
  913. // Enable this flag,you can use intro menu to change VDDA value, and to find the 
  914. // best performance.
  915. #define MAX_VOL_OUTPUT_POWER_TUNE  0 
  916. // one battery and 3 pw system vdda is default maximum.
  917. #if((ONE_BATT_MODE&&!CIRCUIT_2_PW)|MAX_VOL_OUTPUT_POWER_TUNE)
  918. #undef MAX_VOL_OUTPUT_POWER
  919. #define MAX_VOL_OUTPUT_POWER 0
  920. #endif
  921. //Walace060301 end
  922. //-----------------------------------------------
  923. // USE_LCD_UNICODE  0: Use ASCII for Program Kernel
  924. //     1: Use Unicode for Program Kernel 
  925. // UNICODE_SKIP_D800 0: Not skip Unicode range D800-F8FF
  926. // 1: Skip Unicode range D800-F8FF
  927. // UNICODE_USE_ALL 0: Unicode rage 0x3000-0xFFEF(for most east font)
  928. // 1: Unicode rage 0x0080-0xFFEF(for all unicode)
  929. // USE_SYS_STR_UNICODE 0: System String use ASCII
  930. // 1: System String use Unicode
  931. //-----------------------------------------------
  932. #define USE_LCD_UNICODE   1
  933. #define UNICODE_SKIP_D800   1
  934. #define UNICODE_USE_ALL 1
  935. #define USE_SYS_STR_UNICODE 0
  936. //-----------------------------------------------
  937. // UI_USE_FILE_LIST 0: show all music and no file list
  938. // 1: show one dir file and use file list
  939. //-----------------------------------------------
  940. #define UI_USE_FILE_LIST 1
  941. #if(_PM_SYS_)
  942. #undef UI_USE_FILE_LIST
  943. #define UI_USE_FILE_LIST 1
  944. #endif
  945. //-----------------------------------------------
  946. // UI_USE_CLASS_LIST 0: Use class list function
  947. // 1: Not use class list function
  948. // PS. When UI_USE_FILE_LIST=0, UI_USE_CLASS_LIST should be 0
  949. //-----------------------------------------------
  950. #define UI_USE_CLASS_LIST 1
  951. #if(!UI_USE_FILE_LIST)
  952. #undef UI_USE_CLASS_LIST
  953. #define UI_USE_CLASS_LIST 0
  954. #endif
  955. #define USE_SYS_STR_SCROLL        1           //TONY070314
  956. //1 Oled Usage
  957. #if(_C_MODE_)
  958. #if((LCD_TYPE!=TFT_ORISE)||(LCD_NUM!=ORISE_SPFD54126B))
  959. #undef UI_COLOR_SETTING
  960. #define UI_COLOR_SETTING 0
  961. #endif
  962. //Walace060204#Bright
  963. //=======================================================================
  964. // BACKLIGHT_OFF_TYPE 1: Bightness set 0
  965. // 0: Power down lcd extern DCV
  966. //=======================================================================
  967. #define BACKLIGHT_OFF_TYPE 1//0 // modify by Rojam 2007-04-13 10:9
  968. #define OLED_USE_MASK_DISPLAY 0
  969. //=======================================================================
  970. // OLED_SM_INTERFEACE 0: use LCD Interface to Control LCD
  971. // 1:   use SM Interfeace to Control LCD
  972. //=======================================================================
  973. #define OLED_USE_SM_INTERFEACE  1
  974. //=======================================================================
  975. // OLED_DISPLAY_ROT180 0: Display with normal direction  //for Blue board
  976. // 1:   Display with rotation of 180 degree //for green board
  977. //=======================================================================
  978. #define OLED_DISPLAY_ROT180 0
  979. //==================================================================
  980. // OLED_COLOR_FIELD_TYPE 0: For Univision UG-9664 BGR 565  H: BGR :L
  981. // 1:   For RitDisplay P09901 RGB 565    H: RGB :L
  982. //==================================================================
  983. #define OLED_FIELD_BGR565 0  
  984. #define OLED_FILED_RGB565 1
  985. #define OLED_COLOR_FIELD_TYPE  OLED_FILED_RGB565
  986. //Walace061018#2 bmp dsp decode start
  987. //==================================================================
  988. // Function Enable for PhotoView
  989. // PHOTO_SUPPORT_BMP: Bmp decoded by MCU
  990. // PHOTO_SUPPORT_JPG:  Jpeg decoded by DSP
  991. // PHOTO_BMP_DSP_DECODE: Bmp decoded by DSP
  992. //==================================================================
  993. #define PHOTO_SUPPORT_BMP 1
  994. #define PHOTO_SUPPORT_JPG 1  
  995. #define PHOTO_BMP_DSP_DECODE 1
  996. #if(!PHOTO_SUPPORT_JPG)
  997. #undef PHOTO_BMP_DSP_DECODE
  998. #define PHOTO_BMP_DSP_DECODE 0
  999. #endif
  1000. #if(PHOTO_BMP_DSP_DECODE)
  1001. #undef PHOTO_SUPPORT_BMP
  1002. #define PHOTO_SUPPORT_BMP 0
  1003. #endif
  1004. //Walace061018#2 bmp dsp decode end
  1005. //==================================================================
  1006. // UI_USE_PROGRESS_BAR 0: do not use progress bar
  1007. // 1: use progress bar
  1008. //==================================================================
  1009. #define UI_USE_PROGRESS_BAR  1
  1010. //Walace051130#2
  1011. #define UI_COLOR_TUNE 0
  1012. #endif //#if(_C_MODE_)
  1013. //tne 2007/01/16
  1014. #define TEST_ALARM_DEBUG_MODE 0
  1015. #define TEST_PSAVE_DEBUG_MODE 0
  1016. //-----------------------------------------------
  1017. // UI_USE_SLIDE_SHOW   0: enable playback with slide show
  1018. // 1: disable playback with slide show
  1019. //-----------------------------------------------
  1020. #define UI_USE_SLIDE_SHOW 1
  1021. #if(_PM_DVR_|!_C_MODE_)
  1022. #undef UI_USE_SLIDE_SHOW
  1023. #define UI_USE_SLIDE_SHOW 0
  1024. #endif
  1025. //-----------------------------------------------
  1026. // UI_USE_MODE_KEY 0: press functuion key will enter main menu
  1027. // 1: no main menu, use mode key(key9) to swap module
  1028. // PS.when UI_USE_FILE_LIST=1, UI_USE_MODE_KEY should set to 1
  1029. //-----------------------------------------------
  1030. #define UI_USE_MODE_KEY 1
  1031. //-----------------------------------------------
  1032. // SYS_USE_KEY_HOLD 1 use key hold system
  1033. // SYS_USE_KEY_HOLD 0 not use key hold system
  1034. //-----------------------------------------------
  1035. #define SYS_USE_KEY_HOLD 0// 1 // modify by Rojam 2007-03-27 16:32
  1036. //Walace060216#1
  1037. //-----------------------------------------------
  1038. // Auto power off if key hold be detected at "initaial" target
  1039. // 1 enable
  1040. // 0 disable
  1041. //-----------------------------------------------
  1042. #define INIT_KEY_HOLD_AUTO_POWER_OFF 1 
  1043. //-----------------------------------------------
  1044. // UI_USE_SPECTRUM 0: Not show spectrum
  1045. // 1: Show spectrum
  1046. //-----------------------------------------------
  1047. #define UI_USE_SPECTRUM 1
  1048. //==================================================================
  1049. // USE_LYRIC_DISPLAY=1: Show Lyric
  1050. // USE_LYRIC_DISPLAY=0: Not Show Lyric
  1051. //==================================================================
  1052. #define USE_LYRIC_DISPLAY 1
  1053. //Add by tne 2004/11/13 #1
  1054. //-----------------------------------------------
  1055. // UI_LYRIC_TYPE_CENTER 1 Lyric is showed in page 4,5, if lyric exist
  1056. // UI_LYRIC_TYPE_CENTER 0 Lyric is showed in page 6,7
  1057. // PS.USE_LYRIC_DISPLAY option priority is highter than this option
  1058. //-----------------------------------------------
  1059. #define UI_LYRIC_TYPE_CENTER 0
  1060. //Tne 050312#2
  1061. //-----------------------------------------------
  1062. // UI_USE_LINE_REC_QTY 1 Use Line bar to select rec quality
  1063. // UI_USE_LINE_REC_QTY 0 Use High, Normal, Long time rec quality
  1064. //-----------------------------------------------
  1065. #define UI_USE_LINE_REC_QTY 0
  1066. //==================================================================
  1067. // USE_TAG_SCROLL=1: Display Tag enable
  1068. // USE_TAG_SCROLL=0: Display Tag disable
  1069. //==================================================================
  1070. #define USE_TAG_DISPLAY 1
  1071. //==================================================================
  1072. // USE_ERR_MSG_DISPLAY=1: Show error message when error appear
  1073. // USE_ERR_MSG_DISPLAY=0: Not show error message
  1074. //==================================================================
  1075. #define USE_ERR_MSG_DISPLAY 1
  1076. //==================================================================
  1077. // UI_USE_VOLUME_CTRL=1: Use volume control interface
  1078. // UI_USE_VOLUME_CTRL=0: Not Use volume control interface
  1079. //==================================================================
  1080. #define UI_USE_VOLUME_CTRL 1
  1081. //==================================================================
  1082. // UI_USE_ALARM_DISPLAY=1: Alarm time up will show message
  1083. // UI_USE_ALARM_DISPLAY=0: Alarm time up will not show message
  1084. //==================================================================
  1085. #define UI_USE_ALARM_DISPLAY 1
  1086. #define UI_USE_ALARM_POP_MSG 1 //Walace 050920
  1087. //==================================================================
  1088. // UI_USE_FORCE_POWER_OFF=1: System auto power off when battery low
  1089. // UI_USE_FORCE_POWER_OFF=0: Don't care battery low
  1090. //==================================================================
  1091. #define UI_USE_FORCE_POWER_OFF 1
  1092. //vicky061001#2 Debug Play
  1093. #if(ICE_REAL_MODE)
  1094. #undef UI_USE_FORCE_POWER_OFF
  1095. #define UI_USE_FORCE_POWER_OFF 0 
  1096. #endif
  1097. //==================================================================
  1098. // INIT_USE_FORCE_POWER_OFF=1: Auto power off when battery low in init module
  1099. // INIT_USE_FORCE_POWER_OFF=0: Don't care battery low in init module
  1100. //==================================================================
  1101. #define INIT_USE_FORCE_POWER_OFF 0
  1102. #if(SETTING_FOR_ICE_START)
  1103. #undef INIT_USE_FORCE_POWER_OFF
  1104. #undef UI_USE_FORCE_POWER_OFF
  1105. #define UI_USE_FORCE_POWER_OFF 0
  1106. #define INIT_USE_FORCE_POWER_OFF 0
  1107. #endif
  1108. //add by TNE 2004/11/12
  1109. //==================================================================
  1110. // INIT_USE_BTY_LOW_FLAG=1: Init will check bty low flag to force power off
  1111. // INIT_USE_BTY_LOW_FLAG=0: Don't care bty low flag
  1112. //==================================================================
  1113. #define INIT_USE_BTY_LOW_FLAG 1
  1114. //tne 2005/08/15 //5638C not need
  1115. #if(DEBUG_M5638C)
  1116. #undef INIT_USE_BTY_LOW_FLAG
  1117. #define INIT_USE_BTY_LOW_FLAG 0
  1118. #endif
  1119. //Renshuo050528#G
  1120. //==================================================================
  1121. //SHOW_BATT_VALUE = 1 show absolute value
  1122. //SHOW_BATT_VALUE = 0 show battery icon
  1123. //==================================================================
  1124. #define SHOW_BATT_VALUE 0
  1125. #if(_PM_SLS_|_PM_USB_)
  1126. #undef SHOW_BATT_VALUE
  1127. #define SHOW_BATT_VALUE 0
  1128. #endif
  1129. //Walace060613#1  Refer from Rex Liao report for B1B AUX-IN
  1130. //==================================================================
  1131. //BATT_CHECK_AUXIN 
  1132. // This is only for Li-ion power system with B1B
  1133. // 1: battery check use SOCBAT
  1134. // 0: battery check use SOCAUX
  1135. //==================================================================
  1136. //#if(COST_DOWN_CIRCUIT) // WHH 070117 mark
  1137. #if(IC_5661_TYPE==IC_M5638C_B1B) // WHH 070117 
  1138. #define BATT_CHECK_AUXIN 1
  1139. #else
  1140. #define BATT_CHECK_AUXIN 0
  1141. #endif
  1142. //Ps: Li-ion cost down circuit only  use SADC to detect VBAT
  1143. #if(COST_DOWN_CIRCUIT) // WHH 070117 
  1144. #undef BATT_CHECK_AUXIN
  1145. #define BATT_CHECK_AUXIN 0 //Jeff070127#5
  1146. #endif
  1147. #if(NEW_FLASH)
  1148. //Scott061004 Start
  1149. #if(SETTING_FOR_ISP_START)
  1150. #define MultiBank
  1151. #else
  1152. //#define MultiBank //Enable Multi-plan program? //Scott061011
  1153. #endif
  1154. //Scott061004 End
  1155. #define USE_SPECIAL_REC_PRC 0
  1156. #define USE_FAST_FIND_NAND_LUT 0
  1157. #else
  1158. //-----------------------------------------------
  1159. // #define USE_SPECIAL_REC_PRC  0  
  1160. // #define USE_SPECIAL_REC_PRC  1  
  1161. //-----------------------------------------------
  1162. #define USE_SPECIAL_REC_PRC 1
  1163. #define USE_FAST_FIND_NAND_LUT 1
  1164. #endif
  1165. //Alan 060602 start
  1166. //-----------------------------------------------
  1167. // #define MLC_COPYBACK_DELAY  0  For normal flash
  1168. // #define MLC_COPYBACK_DELAY  1  For MLC flash to keep 3V3SD voltage level
  1169. //-----------------------------------------------
  1170. #if((!_PM_USB_)) //Walace060717#2 start
  1171. #define MLC_COPYBACK_DELAY 1
  1172. #define MLC_COPYBACK_FORCE_DELAY 0 //For Debug and disable in default 
  1173. //3=== Full format Physical Erase  Delay =====================
  1174. #define FULL_FORMAT_ERASE_DELAY 1
  1175. #define FULL_FORMAT_ERASE_DELAY_TIME  0x460 //0x230F //Allen060927: 1/8
  1176. //3=== Build LUT Physical Erase  Delay =====================
  1177. #define  BUILD_LUT_ERASE_DELAY 1
  1178. #define  BUILD_LUT_ERASE_DELAY_TIME 0x83C //0x230F (=5ms) Allen060927: 1/4
  1179. #define  BUILD_LUT_WRITE_PAGE_TIME  0x3AE  //0xEB9 (=2.2ms) Vicky060927: 1/4
  1180. //3=== Nandflash Physical Read/Write Delay =====================
  1181. // Because of without QT strict testing, so not ready. 
  1182. // And defaut with disable.
  1183. #define NAND_PHY_WRITE_DELAY 0
  1184. #define NAND_PHY_WRITE_DELAY_TIME 10
  1185. #define NAND_PHY_READ_DELAY 0
  1186. #define NAND_PHY_READ_DELAY_TIME 10
  1187. #define NAND_PHY_ERASE_DELAY 0
  1188. #define NAND_PHY_ERASE_DELAY_TIME 10
  1189. #else
  1190. #define MLC_COPYBACK_DELAY 0
  1191. #define MLC_COPYBACK_FORCE_DELAY 0 //For Debug and disable in default
  1192. //3=== Full format Physical Erase  Delay =====================
  1193. #define FULL_FORMAT_ERASE_DELAY 0
  1194. #define FULL_FORMAT_ERASE_DELAY_TIME 0x460 //0x230F //Allen060927: 1/8
  1195. //3=== Build LUT Physical Erase  Delay =====================
  1196. #define  BUILD_LUT_ERASE_DELAY 0
  1197. #define  BUILD_LUT_ERASE_DELAY_TIME 0x83C //0x230F Allen060927: 1/4
  1198. #define  BUILD_LUT_WRITE_PAGE_TIME  0x3AE  //0xEB9 Vicky060927: 1/4
  1199. //Vicky060927
  1200. //3=== Nandflash Physical Read/Write Delay =====================
  1201. // Because of without QT strict testing, so not ready. 
  1202. // And defaut with disable.
  1203. #define NAND_PHY_WRITE_DELAY 0
  1204. #define NAND_PHY_WRITE_DELAY_TIME 10
  1205. #define NAND_PHY_READ_DELAY 0
  1206. #define NAND_PHY_READ_DELAY_TIME 10
  1207. #define NAND_PHY_ERASE_DELAY 0
  1208. #define NAND_PHY_ERASE_DELAY_TIME 10
  1209. #endif
  1210. //Walace060717#2 end
  1211. #define VBUS_POWER_DOWN_DCV 0 //Walace060719#1
  1212. #define VBUS_INTERRUPT_EN 0 //Walace060719#1
  1213. #define VBUS_POLLING_EN 0
  1214. #define VBUS_CHECK_AND_SWITCH 0
  1215. //Renshuo050528#G
  1216. //==================================================================
  1217. //TOGGLE_BACK_LIGHT = 1 toggle back light when batt check
  1218. //TOGGLE_BACK_LIGHT = 0 no nothing
  1219. //==================================================================
  1220. #define TOGGLE_BACK_LIGHT 0
  1221. //==================================================================
  1222. // UI_USE_AUTO_POWER_OFF=1: System auto power off when power save time
  1223. // UI_USE_AUTO_POWER_OFF=0: Don't auto power off
  1224. //==================================================================
  1225. #define UI_USE_AUTO_POWER_OFF 1
  1226. //==================================================================
  1227. // UI_USE_CHK_CARD=1: Detect SD card removed
  1228. // UI_USE_CHK_CARD=0: Don't detect SD card removed
  1229. //==================================================================
  1230. #define UI_USE_CHK_CARD 1
  1231. //==================================================================
  1232. //UI_CUSTOM_EQ = 1 : Enable for engeneers to customize each EQ mode's value
  1233. //UI_CUSTOM_EQ = 0 : Disable for engeneers to customize each EQ mode's value
  1234. //==================================================================
  1235. #define UI_EQ_CUSTOM 1
  1236. // Please don't enable this function if you use SDK
  1237.  //Walace060313#2 start
  1238.  //===================================================
  1239.  // UI_CUSTOM_EQ_LOAD_FROM_NAND 
  1240.  // 1: Enable 2:Disable
  1241.  // Load Eq table from nandflash(036ConfigData.bin)
  1242.  // Table would be read from nandflash and write to dsp EQ memory after dsp start.
  1243.  // If using this mode, UI_CUSTOM_EQ must disable.
  1244.  // You could modify eq table to suffice custom request.
  1245.  //====================================================
  1246.  
  1247.  // Please don't enable this function if you use SDK 
  1248. #define UI_CUSTOM_EQ_LOAD_FROM_NAND 0
  1249. #if(UI_CUSTOM_EQ_LOAD_FROM_NAND)
  1250. #undef UI_EQ_CUSTOM
  1251. #define UI_EQ_CUSTOM 0
  1252. #endif
  1253. #if(_PM_PLAY_&CDC_FOR_M5638C) //Jeff_060620
  1254. #define UI_CUSTOM_EQ_WITH_COMP    1
  1255. #define UI_EQ_ALL_USE_PA_COMP 0  //Walace060702#1
  1256. #else
  1257. #define UI_CUSTOM_EQ_WITH_COMP    0
  1258. #define UI_EQ_ALL_USE_PA_COMP 0
  1259. #endif
  1260.  //Walace060313#2 end
  1261.  
  1262. //==================================================================
  1263. // UI_USE_USER_EQ=1: Enable user define EQ
  1264. // UI_USE_USER_EQ=0: Disable user define EQ
  1265. //==================================================================
  1266. #define UI_USE_USER_EQ 1
  1267. #if(_PM_SYS_)
  1268. #undef UI_USE_USER_EQ
  1269. #define UI_USE_USER_EQ 0
  1270. #endif
  1271. //==================================================================
  1272. // UI_PLAY_USER_EQ_EDIT=1: Enable user edit define EQ in play mode
  1273. // UI_PLAY_USER_EQ_EDIT=0: Disable user edit define EQ in play mode
  1274. // In DVR module, it should always set 0
  1275. //==================================================================
  1276. #define UI_PLAY_USER_EQ_EDIT 1
  1277. /* tne 2006/01/16
  1278. #if(_PM_DVR_)
  1279. #undef UI_PLAY_USER_EQ_EDIT
  1280. #define UI_PLAY_USER_EQ_EDIT 0
  1281. #endif
  1282. */
  1283. //Jeff_051116
  1284. //==================================================================
  1285. // UI_USE_FF_PLAY=1: Enable FF&RW play function in play mode
  1286. // UI_USE_FF_PLAY=0: Disable FF&RW play function in play mode
  1287. //==================================================================
  1288. #define UI_USE_FF_PLAY 1
  1289. #if(!(_PM_PLAY_PRC_|_PM_PLAY_MAIN_|_PM_DVR_MAIN_))
  1290. #undef UI_USE_FF_PLAY
  1291. #define UI_USE_FF_PLAY 0
  1292. #endif
  1293. //vicky061001#1
  1294. //==================================================================
  1295. // USE_NEW_FF_PLAY=1: Adapte new  FF&RW Architecture in play mode
  1296. // USE_NEW_FF_PLAY=0: Disable FF&RW play function in play mode
  1297. //==================================================================
  1298. #define USE_NEW_FF_PLAY 1
  1299. #if(!UI_USE_FF_PLAY)
  1300. #undef USE_NEW_FF_PLAY
  1301. #define USE_NEW_FF_PLAY 0
  1302. #endif
  1303. #if(USE_NEW_FF_PLAY)
  1304. #define UI_USE_FB_ACROSS 1
  1305. #define FF_SOUND_EN 1
  1306. #else
  1307. #define UI_USE_FB_ACROSS 0
  1308. #define FF_SOUND_EN 0
  1309. #endif
  1310. //==================================================================
  1311. // PW_ON_USE_ANIMATION=1: Power On will display animation
  1312. // PW_ON_USE_ANIMATION=0: Power On will display 2 pictures
  1313. // Note: 2005/08/15 //Not support this option any more
  1314. //==================================================================
  1315. #define PW_ON_USE_ANIMATION 1
  1316. //add by TNE 2004/11/18 #1
  1317. //==================================================================
  1318. // PW_OFF_USE_ANIMATION=1: Power Off will display animation
  1319. // PW_OFF_USE_ANIMATION=0: Power Off will display 3 pictures
  1320. // Note: 2005/08/15 //Not support this option any more
  1321. //==================================================================
  1322. #define PW_OFF_USE_ANIMATION 1
  1323. //==================================================================
  1324. // USE_TITLE_NUM_DEBUG 0: Compiler LcdShowTitleNum function if necessary
  1325. // 1: Always compile LcdShowTitleNum function 
  1326. //==================================================================
  1327. #define USE_TITLE_NUM_DEBUG 0
  1328. #if(USE_TITLE_NUM_DEBUG)
  1329. #define DEBUG_DELAY 20
  1330. #if(_C_MODE_==1)
  1331. #define DEBUG_PNUM(data)    {gxbLcdLimitCol=MAX_COLNUM;  OledShowNumber((WORD)data,0,(PAGE1*data),1); gxbLcdCounter=0; while(gxbLcdCounter<DEBUG_DELAY){} }
  1332. #define DEBUG_ONUM(data)   { gxbLcdLimitCol=MAX_COLNUM;  OledShowNumber((WORD)data,0,0,5) ; gxbLcdCounter=0; while(gxbLcdCounter<DEBUG_DELAY){}}
  1333. #define DEBUG_NUM(seg,page,data)  {  gxbLcdLimitCol=MAX_COLNUM; OledShowNumber((WORD)data,SEG1*seg,PAGE1*page,5);while(gxbLcdCounter<DEBUG_DELAY){} }
  1334. #define DEBUG_HNUM(data)       { gxbLcdLimitCol=MAX_COLNUM;  OledShowNumber((WORD)data,0,0,5); while(1);}
  1335. #else
  1336. #define DEBUG_PNUM(data)      { gxbLcdLimitCol=MAX_COLNUM; LcdShowTitleNum((WORD)data,0,data,1); gxbLcdCounter=0; while(gxbLcdCounter<DEBUG_DELAY){} }
  1337. #define DEBUG_ONUM(data)      { gxbLcdLimitCol=MAX_COLNUM; LcdShowTitleNum((WORD)data,0,0,5);gxbLcdCounter=0; while(gxbLcdCounter<DEBUG_DELAY){}}
  1338. #define DEBUG_NUM(seg,page,data)    {gxbLcdLimitCol=MAX_COLNUM; LcdShowTitleNum((WORD)data,page,((seg)<<3),5)}
  1339. #define DEBUG_HNUM(data)       {gxbLcdLimitCol=MAX_COLNUM; LcdShowTitleNum((WORD)data,0,0,5); while(1);}
  1340. #endif
  1341. #define DEBUG_STOP(x) {while(x){}}
  1342. #else
  1343. #define DEBUG_PNUM(data)   
  1344. #define DEBUG_ONUM(data)  
  1345. #define DEBUG_NUM(seg,page,data)  
  1346. #define DEBUG_HNUM(data) 
  1347. #define DEBUG_STOP(x) {while(x){}}
  1348. #endif
  1349. #if(SHOW_NOW_TIME&(_PM_USB_|_PM_SAVE_|_PM_SLS_)|PLAY_PROC_DEBUG)
  1350. #undef USE_TITLE_NUM_DEBUG
  1351. #define USE_TITLE_NUM_DEBUG 1
  1352. #endif
  1353. //==================================================================
  1354. // USE_HOST_PROGRESS_MSG 0: Not display copy,del... progress in HOST
  1355. // 1: Display copy,del progress in HOST
  1356. //==================================================================
  1357. #define USE_HOST_PROGRESS_MSG 1
  1358. //==================================================================
  1359. // USE_HOST_ASK_OVERWRITE 0: Alaway overwrite exist files in HOST
  1360. // 1: Ask user to overwrite a exist file in HOST
  1361. //==================================================================
  1362. #define USE_HOST_ASK_OVERWRITE 1
  1363. //==================================================================
  1364. // USE_HOST_DISPLAY_INF 0: Not display disk, file information in HOST
  1365. // 1: Display disk, file information in HOST
  1366. //==================================================================
  1367. #define USE_HOST_DISPLAY_INF 1
  1368. //==================================================================
  1369. // UI_DISP_MUSIC_INF 0: Not display music type, EQ, repeat, 3D mode
  1370. // 1: Display music type, EQ, repeat, 3D mode
  1371. //==================================================================
  1372. #define UI_DISP_MUSIC_INF 1
  1373. //==================================================================
  1374. // UI_FORCE_USE_RTC_ISR 0: Not force use RTC ISR function to count gxdwNowTime
  1375. // 1: Force use RTC ISR function to count gxdwNowTime
  1376. //==================================================================
  1377. #define UI_FORCE_USE_RTC_ISR 0
  1378. //==================================================================
  1379. // READ_SCLOCK_IN_ICE 0: Not read s-clock offset in ICE mode
  1380. // 1: read s-clock offset in ICE mode
  1381. // PS.In normal mode, the define is don't care
  1382. //==================================================================
  1383. #define READ_SCLOCK_IN_ICE 0
  1384. //add by tne 2005/08/10
  1385. //==================================================================
  1386. // UI_DISP_DIR_NAME 0: Display direct name
  1387. // 1: Not display direct name
  1388. //==================================================================
  1389. #define UI_DISP_DIR_NAME 0
  1390. //==================================================================
  1391. // USB_DISP_CHARGING 0: Not display battery charging
  1392. // 1: Display battery charging
  1393. //
  1394. // BATTERY_CHARGE_FULL_COUNT: Battery charge full count.
  1395. //==================================================================
  1396. #define BATTERY_CHARGE_FULL_COUNT 10
  1397. #if(ONE_BATT_MODE)
  1398. #define USB_DISP_CHARGING 0
  1399. #else //Li-ion system
  1400. #define USB_DISP_CHARGING 1
  1401. #endif
  1402. //==================================================================
  1403. // UI_DISP_CDB_HOURGLASS 0: Show only one hourglass
  1404. // 1: Show 5 hourglass when init class data base
  1405. //==================================================================
  1406. #define UI_DISP_CDB_HOURGLASS 0
  1407. //==================================================================
  1408. // UI_DISP_CDB_WORK_INF 0: Display nothing after building cdb data
  1409. // 1: Display chche hit rate and time aftre building cdb data
  1410. //==================================================================
  1411. #define UI_DISP_CDB_WORK_INF 0
  1412. #if(UI_DISP_CDB_WORK_INF & _PM_INIT_CHK_)
  1413. #undef USE_TITLE_NUM_DEBUG
  1414. #define USE_TITLE_NUM_DEBUG 1
  1415. #endif
  1416. //==================================================================
  1417. // NAND_HW_WPJ_EN 0: always write enable, need Gpio force HI, please modify code to fit your hw.
  1418. // 1: support hw wpj function, please modify code to fit your hw.
  1419. //==================================================================
  1420. #define NAND_HW_WPJ_EN 1 //Allen060109#2
  1421. //==================================================================
  1422. // GPIO_POWER_KEY_DETECT 0: Disable GPIOC1 to detect power key
  1423. // 1: Enable GPIOC1 to detect power key
  1424. //=================================================================
  1425. #define GPIO_POWER_KEY_DETECT 1
  1426. #if(IC_5661_TYPE==IC_M5638C_B1B)
  1427.      #undef GPIO_POWER_KEY_DETECT
  1428.      #define GPIO_POWER_KEY_DETECT 0
  1429. #endif
  1430. // WHH 060927 step up converter
  1431. //==================================================================
  1432. // USE_STEP_UP_CONVERTER 0:
  1433. // 1: use step up converter
  1434. //=================================================================
  1435. #if(COST_DOWN_CIRCUIT)
  1436. #define USE_STEP_UP_CONVERTER 1
  1437. #else
  1438. #define USE_STEP_UP_CONVERTER 0
  1439. #endif
  1440. #if(!_C_MODE_)
  1441. #undef USE_STEP_UP_CONVERTER
  1442. #define USE_STEP_UP_CONVERTER 0
  1443. #endif
  1444. //060918Renshuo //Ted 1013
  1445. //==================================================================
  1446. // USE_FW_CHARGER 0:
  1447. // 1: FW will handle charger voltage, current...
  1448. //=================================================================
  1449. #if(COST_DOWN_CIRCUIT)
  1450. #define USE_FW_CHARGER 0// 1 // modify by Rojam 2007-04-12 09:24
  1451. #else
  1452. #define USE_FW_CHARGER 0
  1453. #endif
  1454. #if(ONE_BATT_MODE)
  1455. #undef USE_FW_CHARGER
  1456. #define USE_FW_CHARGER 0
  1457. #endif
  1458. // 060918Renshuo //Ted 1013
  1459. //==================================================================
  1460. // USE_FW_CHARGER 0:
  1461. // 1: Use RTC counter as charger counter
  1462. //=================================================================
  1463. #define USE_RTC_COUNTER  0   //Ted 1013 // Jeff070303#1
  1464. #if(!USE_FW_CHARGER)
  1465. #undef USE_RTC_COUNTER
  1466. #define USE_RTC_COUNTER  0
  1467. #endif
  1468. // WHH 070117 PS: ALI demo board use reset ic to detect low power off, but customer  can use it or SADC
  1469. //==================================================================
  1470. // USE_REST_IC_DETECT_LOW_POWER_OFF 0:
  1471. // 1: Use reset ic detect low power off
  1472. //=================================================================
  1473. #define USE_REST_IC_DETECT_LOW_POWER_OFF 1
  1474. #if(!COST_DOWN_CIRCUIT)
  1475. #undef USE_REST_IC_DETECT_LOW_POWER_OFF 
  1476. #define USE_REST_IC_DETECT_LOW_POWER_OFF 0
  1477. #endif
  1478. // Jeff070205#1 Enable FM TRANSMITTER to send Audio Signal to FM frequency
  1479. //======================================================================
  1480. // USE_FM_TRANSMITTER                             0:
  1481. //                                                1:   Use FM Transmitter
  1482. //=======================================================================
  1483. #define USE_FM_TRANSMITTER     0   
  1484. // tne 2007/02/08#1 Enable Swap Channel for wrong Audio Layout to swap LR channel
  1485. //=======================================================================
  1486. // SWAP_CHANNEL_EN 0: Normal Audio Output
  1487. // 1: Swap L R Channel
  1488. //=======================================================================
  1489. #define SWAP_CHANNEL_EN          0
  1490. // Jason 20070119#1 Enable Device Mode With Adaptor plug in
  1491. //-----------------------------------------------
  1492. // PLAY_IN_ADAPTOR 1 : Keep playing as adaptor plug in
  1493. // PLAY_IN_ADAPTOR 0 : 
  1494. //-----------------------------------------------
  1495. #define PLAY_IN_ADAPTOR 1 //Alan061212#1
  1496. // Jeff070402#1 Enable MP3 Encoder at Record
  1497. //=================================================================
  1498. // USE_MP3_ENCODE 1 : Enable MP3 Encode, IC type can't be as M5661P or M5661R
  1499. // USE_MP3_ENCODE 0 : Disable MP3 Encode
  1500. //=================================================================
  1501. #define USE_MP3_ENCODE   0
  1502. #if(ONE_BATT_MODE)
  1503. #undef PLAY_IN_ADAPTOR
  1504. #define PLAY_IN_ADAPTOR  0
  1505. #endif
  1506. #if(ICE_REAL_MODE)
  1507. #undef  SYS_USE_KEY_HOLD
  1508. #define SYS_USE_KEY_HOLD 0
  1509. #endif
  1510. // add by tne 2004/11/10
  1511. //-----------------------------------------------
  1512. // This is MIN_UI_CODE_SIZE working, you don't need to fix it
  1513. #if(MIN_UI_CODE_SIZE)
  1514. #undef SYS_USE_KEY_HOLD
  1515. #undef UI_USE_SPECTRUM
  1516. #undef USE_LYRIC_DISPLAY
  1517. #undef USE_TAG_DISPLAY
  1518. #undef USE_ERR_MSG_DISPLAY
  1519. #undef UI_USE_VOLUME_CTRL
  1520. #undef UI_USE_ALARM_DISPLAY
  1521. #undef UI_USE_ALARM_POP_MSG     
  1522. #undef UI_USE_FORCE_POWER_OFF
  1523. #undef UI_USE_AUTO_POWER_OFF
  1524. #undef UI_USE_CHK_CARD
  1525. #undef UI_USE_USER_EQ
  1526. #undef UI_USE_PROGRESS_BAR
  1527. #undef UI_PLAY_USER_EQ_EDIT
  1528. #undef UI_USE_FF_PLAY
  1529. #undef USE_HOST_PROGRESS_MSG
  1530. #undef USE_HOST_ASK_OVERWRITE
  1531. #undef USE_HOST_DISPLAY_INF
  1532. #undef UI_DISP_MUSIC_INF
  1533. #undef UI_USE_SLIDE_SHOW
  1534. #undef UI_EQ_CUSTOM
  1535. #define SYS_USE_KEY_HOLD 0
  1536. #define UI_USE_SPECTRUM 0
  1537. #define USE_LYRIC_DISPLAY 0
  1538. #define USE_TAG_DISPLAY 0
  1539. #define USE_ERR_MSG_DISPLAY 0
  1540. #define UI_USE_VOLUME_CTRL 0
  1541. #define UI_USE_ALARM_DISPLAY 0
  1542. #define UI_USE_ALARM_POP_MSG 0
  1543. #define UI_USE_FORCE_POWER_OFF 0
  1544. #define UI_USE_AUTO_POWER_OFF 0
  1545. #define UI_USE_CHK_CARD 0
  1546. #define UI_USE_USER_EQ 0
  1547. #define UI_USE_PROGRESS_BAR     0
  1548. #define UI_PLAY_USER_EQ_EDIT 0
  1549. #define UI_USE_FF_PLAY 0
  1550. #define USE_HOST_PROGRESS_MSG 0
  1551. #define USE_HOST_ASK_OVERWRITE 0
  1552. #define USE_HOST_DISPLAY_INF 0
  1553. #define UI_DISP_MUSIC_INF 0
  1554. #define UI_USE_SLIDE_SHOW 0
  1555. #define UI_EQ_CUSTOM 0
  1556. #endif
  1557. //-----------------------------------------------
  1558. //add by TNE 2004/11/18 #1
  1559. #if(_PM_INIT_)
  1560. #if(!PW_ON_USE_ANIMATION&PW_OFF_USE_ANIMATION)
  1561. #undef PW_OFF_USE_ANIMATION
  1562. #define PW_OFF_USE_ANIMATION 0
  1563. #endif
  1564. #endif
  1565. #if(!_PM_INIT_)
  1566. #if(PW_ON_USE_ANIMATION&!PW_OFF_USE_ANIMATION)
  1567. #undef PW_ON_USE_ANIMATION
  1568. #define PW_ON_USE_ANIMATION 0
  1569. #endif
  1570. #endif
  1571. //allen050720 for host
  1572. #undef _HOST_API_INIT_
  1573. #undef _HOST_API_POWEROFF_
  1574. #undef _HOST_COMMON_
  1575. #undef _USE_FOR_COPY_ENGINE_
  1576. #undef _COPY_ENGINE_DIS_FAT12_
  1577. #undef _NAND_FUNC_ERROR_HANDLE_DIS_
  1578. #if(_PM_FM_|_PM_MTP_|_PM_MTP_INIT_)
  1579. #undef ENABLE_HOST_FUNCTION
  1580. #define ENABLE_HOST_FUNCTION 0
  1581. #endif
  1582. #if(_PM_HST_)
  1583. #undef ENABLE_HOST_FUNCTION
  1584. #define ENABLE_HOST_FUNCTION 1
  1585. #endif
  1586. #if(ENABLE_HOST_FUNCTION)
  1587. #if((_PM_HST_&(!_HOST_COPY_))|(_PM_SYS_))
  1588. #define _HOST_API_INIT_ 1
  1589. #else
  1590. #define _HOST_API_INIT_ 0
  1591. #endif
  1592. #define _HOST_API_POWEROFF_ 1
  1593. #define _HOST_COMMON_ 1
  1594. #else
  1595. #define _HOST_API_POWEROFF_ 0
  1596. #define _HOST_API_INIT_ 0
  1597. #define _HOST_COMMON_ 0
  1598. #endif
  1599. #if(_PM_HST_) //allen050720: use for copy engine
  1600. #define _USE_FOR_COPY_ENGINE_ 1
  1601. #else
  1602. #define _USE_FOR_COPY_ENGINE_ 0
  1603. #endif
  1604. #if((_PM_HST_&_HOST_COPY_)&(SETTING_FOR_ICE_START))
  1605. #undef SETTING_FOR_ICE_START
  1606. #define SETTING_FOR_ICE_START 0
  1607. #undef UI_USE_ALARM_DISPLAY //050816
  1608. #define UI_USE_ALARM_DISPLAY 0
  1609. #define _COPY_ENGINE_DIS_FAT12_  0 // mini code size for debug
  1610. #define _NAND_FUNC_ERROR_HANDLE_DIS_ 1 // mini code size for debug
  1611. #define _COPY_MIN_CODE_SIZE_ 1 //050919
  1612. #undef USE_HOST_ASK_OVERWRITE
  1613. #define USE_HOST_ASK_OVERWRITE 0 //050919
  1614. #undef ENABLE_SD_FUNCTION
  1615. #define ENABLE_SD_FUNCTION 0
  1616. #else
  1617. #define _COPY_ENGINE_DIS_FAT12_  0
  1618. #define _NAND_FUNC_ERROR_HANDLE_DIS_ 0
  1619. #define _COPY_MIN_CODE_SIZE_ 0 //050919
  1620. #endif
  1621. /*==========================================================================
  1622. SDK edit(end)
  1623. ==========================================================================*/
  1624. #if(!ENABLE_SD_FUNCTION)
  1625. #undef UI_USE_CHK_CARD
  1626. #define UI_USE_CHK_CARD 0
  1627. #endif
  1628. /*==========================================================================
  1629. Debug usage
  1630. ==========================================================================*/
  1631. //#ifdef _DEBUG_
  1632. // #undef USE_TITLE_NUM_DEBUG
  1633. // #define USE_TITLE_NUM_DEBUG 1
  1634. // #undef ENABLE_SD_FUNCTION
  1635. // #define ENABLE_SD_FUNCTION 0
  1636. //#endif
  1637. //-----------------------------------------------
  1638. //
  1639. // Default data type (decide by memory model)
  1640. //
  1641. //-----------------------------------------------
  1642. // define variables in internal or external ram(decide by memory model)
  1643. typedef volatile unsigned char  BYTE;
  1644. typedef volatile unsigned int  WORD;
  1645. typedef volatile unsigned long  DWORD;
  1646. typedef volatile char  CHAR;
  1647. typedef volatile int  INT;
  1648. typedef volatile long  LONG;
  1649. // define pointer, points to variable in internal or external ram(decide by memory model)
  1650. typedef volatile unsigned char * PBYTE;
  1651. typedef volatile unsigned int  * PWORD;
  1652. typedef volatile unsigned long * PDWORD;
  1653. typedef volatile char  * PCHAR;
  1654. typedef volatile int   * PINT;
  1655. typedef volatile long  * PLONG;
  1656. //-----------------------------------------------
  1657. //
  1658. // Directly addressable data type
  1659. //
  1660. //-----------------------------------------------
  1661. // define directly addressable variables in internal ram
  1662. typedef volatile unsigned char data DIBYTE;
  1663. typedef volatile unsigned int data DIWORD;
  1664. typedef volatile unsigned long data DIDWORD;
  1665. typedef volatile char data DICHAR;
  1666. typedef volatile int data DIINT;
  1667. typedef volatile long data DILONG;
  1668. // define pointer, points to directly addressable variable in internal ram
  1669. typedef volatile unsigned char data * PDIBYTE;
  1670. typedef volatile unsigned int data * PDIWORD;
  1671. typedef volatile unsigned long data * PDIDWORD;
  1672. typedef volatile char data * PDICHAR;
  1673. typedef volatile int data * PDIINT;
  1674. typedef volatile long data * PDILONG;
  1675. //-----------------------------------------------
  1676. //
  1677. // Indirectly addressable data type
  1678. //
  1679. //-----------------------------------------------
  1680. // define indirectly addressable variables in internal ram
  1681. typedef volatile unsigned char idata IBYTE;
  1682. typedef volatile unsigned int idata IWORD;
  1683. typedef volatile unsigned long idata IDWORD;
  1684. typedef volatile char idata ICHAR;
  1685. typedef volatile int idata IINT;
  1686. typedef volatile long idata ILONG;
  1687. // define pointer, points to indirectly addressable variable in internal ram
  1688. typedef volatile unsigned char idata * PIBYTE;
  1689. typedef volatile unsigned int idata * PIWORD;
  1690. typedef volatile unsigned long idata * PIDWORD;
  1691. typedef volatile char idata * PICHAR;
  1692. typedef volatile int idata * PIINT;
  1693. typedef volatile long idata * PILONG;
  1694. //-----------------------------------------------
  1695. //
  1696. // External ram data type
  1697. //
  1698. //-----------------------------------------------
  1699. // define variables in external ram
  1700. typedef  volatile unsigned char xdata XBYTE;
  1701. typedef  volatile unsigned int xdata XWORD;
  1702. typedef  volatile unsigned long xdata XDWORD;
  1703. typedef  volatile char xdata XCHAR;
  1704. typedef  volatile int xdata XINT;
  1705. typedef  volatile long xdata XLONG;
  1706. // define pointer, point to variable in external ram
  1707. typedef volatile unsigned char xdata * PXBYTE;
  1708. typedef volatile unsigned int xdata * PXWORD;
  1709. typedef volatile unsigned long xdata * PXDWORD;
  1710. typedef volatile char xdata * PXCHAR;
  1711. typedef volatile int xdata * PXINT;
  1712. typedef volatile long xdata * PXLONG;
  1713. //-----------------------------------------------
  1714. //
  1715. // Internal/external ROM
  1716. //
  1717. //-----------------------------------------------
  1718. // define variables(constant) in rom
  1719. typedef volatile unsigned char code CBYTE;
  1720. typedef volatile unsigned int code CWORD;
  1721. typedef volatile unsigned long code CDWORD;
  1722. typedef volatile char code CCHAR;
  1723. typedef volatile int code CINT;
  1724. typedef volatile long code CLONG;
  1725. // define pointer, point to variable(constant) in rom
  1726. typedef volatile unsigned char code * PCBYTE;
  1727. typedef volatile unsigned int code * PCWORD;
  1728. typedef volatile unsigned long code * PCDWORD;
  1729. typedef volatile char code * PCCHAR;
  1730. typedef volatile int code * PCINT;
  1731. typedef volatile long code * PCLONG;
  1732. //-----------------------------------------------
  1733. //
  1734. // Register
  1735. //
  1736. //-----------------------------------------------
  1737. // define io register
  1738. typedef volatile unsigned char xdata IOB;
  1739. typedef volatile unsigned int xdata IOW;
  1740. typedef volatile unsigned long xdata IODW;
  1741. // define pointer, point to io register
  1742. typedef volatile unsigned char xdata * PIOB;
  1743. typedef volatile unsigned int xdata * PIOW;
  1744. typedef volatile unsigned long xdata * PIODW;
  1745. //-----------------------------------------------
  1746. //
  1747. // Flag
  1748. //
  1749. //-----------------------------------------------
  1750. typedef volatile bit  BOOL;
  1751. typedef union { BYTE bData; WORD wData;} UWORD;
  1752. typedef union { BYTE bData; WORD wData; DWORD dwData;} UDWORD;
  1753. #if(_PM_HST_) //050214 host
  1754. typedef struct CpDirInfo
  1755. {
  1756. DWORD DirClu;
  1757. DWORD Offset;
  1758. BYTE Attribute;
  1759. BYTE Valid;
  1760. BYTE ParIndex;
  1761. BYTE DirName[13];
  1762. }CpDirInfo, *pCpDirInfo; 
  1763. typedef struct ParInfo
  1764. {
  1765. BYTE FatType;
  1766. DWORD StartLBA;
  1767. DWORD NoOfSec;
  1768. }ParInfo, *pParInfo;
  1769. typedef struct Par
  1770. {
  1771. BYTE FatKind;
  1772. DWORD FirstLBA;
  1773. }Par, *pPar;
  1774. typedef struct FileEntry
  1775. {
  1776. DWORD Head;
  1777. DWORD Offset;
  1778. // DWORD FirstCluster;
  1779. }FILE_ENTRY,*P_FILE_ENTRY;
  1780. #endif