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

压缩解压

开发平台:

C++ Builder

  1. /*==========================================================================
  2. Copyright (c) 2004 ALi Corporation. All Rights Reserved
  3. File: Idma.h
  4. content: Idma Transfer functions defination
  5. History: Created by TNE 2004/5/10
  6. ==========================================================================*/
  7. //Registers Definition
  8. #define IDMA_ACT_EN 0x40
  9. #define IDMA_ACT_DIS 0xbf
  10. #define DSP_W16 0
  11. #define DSP_W24 1
  12. //======================== Select Compiler Module =========================
  13. // mark #define to Unselect this module
  14. //#define TEST_DEBUG
  15. #if(_PM_PLAY_PRC_|_PM_MTP_|_PM_REC_|_PM_PHOTO_|_PM_VIDEO_|_PM_CUSTOM_)
  16. #define USE_IdmaPioPmW
  17. #define USE_IdmaDmyW
  18. #define USE_IdmaPmW
  19. #endif
  20. #define USE_IdmaPioDmxW
  21. #define USE_IdmaPioDmxR
  22. #if(!_PM_FM_)
  23. #define USE_IdmaDmxW
  24. #endif
  25. #if(!_PM_PLAY_PRC_)
  26. #if((_PM_PLAY_|_PM_SLS_)&UI_CUSTOM_EQ_LOAD_FROM_NAND)  //Walace060313#2
  27. #define USE_IdmaPioDmyW
  28. #endif
  29. //#define USE_IdmaPioPmR
  30. //#define USE_IdmaPioDmyR
  31. #define USE_IdmaDmxR
  32. #if(_PM_REC_) //tne 2006/01/27 #1
  33. #define USE_IdmaDmyR
  34. #endif
  35. #endif
  36. //==========================   API Defination   ===========================
  37. #ifdef _IDMA_H_
  38. #define EXTERN
  39. #define _AT_(addr) _at_ addr
  40. #else
  41. #define EXTERN extern
  42. #define _AT_(addr)
  43. #endif
  44. #ifdef USE_IdmaPioPmW
  45. EXTERN API void IdmaPioPmW(void *pbSourceAddr,WORD wTargetAddr,WORD wLen) large;
  46. #endif
  47. #ifdef USE_IdmaPioDmxW
  48. EXTERN API void IdmaPioDmxW(void *pbSourceAddr,WORD wTargetAddr,WORD wLen,BOOL fWidth24) ;  //Walace061228#CodeSize
  49. #endif
  50. #ifdef USE_IdmaPioDmyW
  51. EXTERN API void IdmaPioDmyW(void *pbSourceAddr,WORD wTargetAddr,WORD wLen,BOOL fWidth24) large;
  52. #endif
  53. #ifdef USE_IdmaPioPmR
  54. EXTERN API void IdmaPioPmR(WORD wSourceAddr,void *pbTargetAddr,WORD wLen) large;
  55. #endif
  56. #ifdef USE_IdmaPioDmxR
  57. EXTERN API void IdmaPioDmxR(WORD wSourceAddr,void *pbTargetAddr,WORD wLen,BOOL fWidth24) ; //Walace061228#CodeSize
  58. #endif
  59. #ifdef USE_IdmaPioDmyR
  60. EXTERN API void IdmaPioDmyR(WORD wSourceAddr,void *pbTargetAddr,WORD wLen,BOOL fWidth24) large;
  61. #endif
  62. #ifdef USE_IdmaPmW
  63. EXTERN API void IdmaPmW(WORD wDSPAddr,WORD wLen) large;
  64. #endif
  65. #ifdef USE_IdmaDmxW
  66. EXTERN API void IdmaDmxW(WORD wDSPAddr,WORD wLen,BOOL fWidth24) large;
  67. #endif
  68. #ifdef USE_IdmaDmyW
  69. EXTERN API void IdmaDmyW(WORD wDSPAddr,WORD wLen,BOOL) large;
  70. #endif
  71. #ifdef USE_IdmaDmxR
  72. #if(_PM_PHOTO_|_PM_VIDEO_|_PM_REC_)
  73. EXTERN API void IdmaDmxR(WORD wDSPAddr,WORD wLen) large;
  74. #endif
  75. #endif
  76. #ifdef USE_IdmaDmyR
  77. EXTERN API void IdmaDmyR(WORD wDSPAddr,WORD wLen) large;
  78. #endif
  79. #ifdef TEST_DEBUG
  80. //Only for test!!
  81. #define TEST_NUM 5
  82. #define TEST_DSP_ADDR 0x00
  83. EXTERN API void IdmaPioDebugW(void *pbSourceAddr,WORD wTargetAddr,WORD wLen) large;
  84. EXTERN API void IdmaPioDebugR(WORD wSourceAddr,void *pbTargetAddr,WORD wLen) large;
  85. EXTERN API void piorw_test(void) large;
  86. #endif
  87. #undef EXTERN
  88. #undef _AT_