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

DVD

开发平台:

C/C++

  1. #ifndef __DDX8000_H_
  2. #define __DDX8000_H_
  3. /*****************************************************
  4. Creater: xiongyuyue
  5. Date   : 2003/8/26 
  6. Description: digital amp function using 
  7. *****************************************************/
  8. #ifdef SUPPORT_APOGEE_AMP//xyy 2003-9-24 9:28
  9.  
  10. //BYTE flag = 1;
  11. typedef struct
  12. {
  13. UINT32 b2;
  14. UINT32 b0;
  15. UINT32 a2;
  16. UINT32 a1;
  17. UINT32 b1;
  18. }coef_factor;
  19. #ifdef SUPPORT_SAVE_AMPLIFIER_STATUS
  20. #if defined(AMPVOL_ADJUST_TYPE1)
  21. #define AMPLIFIER_START   (350)//xyy 2004-5-26
  22. #else
  23. #define AMPLIFIER_START   (228)  //huziqin ajusted 2004-4-29
  24. #endif
  25. #define BASS_GAIN_ADDR AMPLIFIER_START+30
  26. #define TREBLE_GAIN_ADDR BASS_GAIN_ADDR+1
  27. #define DDX_EQ_TYPE_ADDR TREBLE_GAIN_ADDR+1
  28. #define DDX_REVB_TYPE_ADDR DDX_EQ_TYPE_ADDR+1
  29. #endif
  30. //configuration register
  31. #define CONFIGREG_A      0x00   //Configuration Register A
  32. #define CONFIGREG_B      0x01   //Configuration Register B
  33. #define CONFIGREG_C      0x02
  34. #define CONFIGREG_D      0x03
  35. #define CONFIGREG_E      0x04
  36. #define CONFIGREG_F      0x05
  37. //volume adjustment
  38. #define MASTER_MUTE_REG  0x06
  39. #define MASTER_VOL_REG   0x07
  40. #define CHANEL_MUTE_REG  0x08
  41. //#define CHANEL_VOL_REG   0x09
  42. #define C1V_REG          0x09
  43. #define C2V_REG          0x0a
  44. #define C3V_REG          0x0b
  45. #define C4V_REG          0x0c
  46. #define C5V_REG          0x0d
  47. #define C6V_REG          0x0e
  48. #define C7V_REG          0x0f
  49. #define C8V_REG          0x10
  50. //channel mapping
  51. #define C12MAP_REG       0x11
  52. #define C34MAP_REG       0x12
  53. #define C56MAP_REG       0x13
  54. #define C78MAP_REG       0x14
  55. //channel limiter selection
  56. #define CLIMITER_SEL0    0x15
  57. #define CLIMITER_SEL1    0x16
  58. //limiter rates and thresholds
  59. #define L1RATE_REG       0x17
  60. #define L1THRESHOLDS_REG 0x18
  61. #define L2RATE_REG       0x19
  62. #define L2THRESHOLDS_REG 0x1a
  63. //tone control register
  64. #define TONE_CTRL_REG    0x1b
  65. //Bass Management(Configuration #1) for 5.1 Channels
  66. #define FL_SCALE_FACTOR     0x16c310
  67. #define FR_SCALE_FACTOR     0x16c310
  68. #define SL_SCALE_FACTOR     0x16c310
  69. #define SR_SCALE_FACTOR     0x16c310
  70. #define CE_SCALE_FACTOR     0x16c310
  71. #define LFE_SCALE_FACTOR    0x47facc
  72. #define HPF_COEF_B2              0x7fa51f
  73. #define HPF_COEF_B0              0x3fd28f
  74. #define HPF_COEF_A2              0x80b581
  75. #define HPF_COEF_A1              0x7fa4ff
  76. #define HPF_COEF_B1              0x805ae1
  77. #define LPF_COEF_B2              0x000020
  78. #define LPF_COEF_B0              0x000010
  79. #define LPF_COEF_A2              0x80b581
  80. #define LPF_COEF_A1              0x7fa4ff
  81. #define LPF_COEF_B1              0x000020
  82. //#define 
  83. #define MV    0
  84. #define FL    1
  85. #define FR    2
  86. #define SL    3
  87. #define SR    4
  88. #define CE    5
  89. #define SW    6
  90. #define Y_07   7
  91. int y_index;
  92. #define AMPBGCOL 10
  93. #ifdef AMP_SUPPORT_EQ  //xyy
  94. BYTE ddx_EQ_sel;
  95. //EQ types define
  96. #define NONE 0
  97. #define ROCK 1
  98. #define POP 2
  99. #define PARTY 3
  100. #define DANCE 4
  101. #define HARD 5
  102. #define CLASSIC 6
  103. #define SOFT 7
  104. #define MAX_EQ_NUM 7 
  105. #endif
  106. #ifdef SUPPORT_REVERBERATION  
  107. BYTE ddx_Revb_sel;
  108. //Reverberation types define
  109. #define OFF 0
  110. #define CONCERT 1
  111. #define LIVING 2
  112. #define HALL 3
  113. #define BATH 4
  114. #define CAVE 5
  115. #define ARENA 6
  116. #define CHURCH 7
  117. #define MAX_REVB_NUM 7 
  118. #endif
  119. #ifdef SUPPORT_BASS_TREBLE
  120. BYTE ddx_Bass_lev;
  121. BYTE ddx_Treble_lev;
  122. #define MAX_BASSCTRL_LEV 15
  123. #define MAX_TREBLECTRL_LEV 15
  124. #endif
  125. void ddx_initialization(void);
  126. void ddx_enableEPAD(void);
  127. void ddx_disableEPAD(void);
  128. void ddx_masterMute(BYTE mute);
  129. BYTE test_ddx8000(void);
  130. void ddx_set_channel_vol(BYTE ch,BYTE vol);
  131. #endif
  132. #endif//#ifdef SUPPORT_APOGEE_AMP