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

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. #define AMPLIFIER_START   228
  21. #define BASS_GAIN_ADDR AMPLIFIER_START+30
  22. #define TREBLE_GAIN_ADDR BASS_GAIN_ADDR+1
  23. #define DDX_EQ_TYPE_ADDR TREBLE_GAIN_ADDR+1
  24. #define DDX_REVB_TYPE_ADDR DDX_EQ_TYPE_ADDR+1
  25. #endif
  26. //configuration register
  27. #define CONFIGREG_A      0x00   //Configuration Register A
  28. #define CONFIGREG_B      0x01   //Configuration Register B
  29. #define CONFIGREG_C      0x02 //Configuration Register C
  30. #define CONFIGREG_D      0x03 //Configuration Register D
  31. #define CONFIGREG_E      0x04 //Configuration Register E
  32. #define CONFIGREG_F      0x05 //Configuration Register F
  33. #define CONFIGREG_G      0x06 //Configuration Register G
  34. #define CONFIGREG_H      0x07 //Configuration Register H
  35. #define CONFIGREG_I      0x08 //Configuration Register I
  36. //volume adjustment
  37. #define MASTER_MUTE_REG  0x09 //Master Mute
  38. #define MASTER_VOL_REG   0x0A //Master Volume
  39. //#define CHANEL_MUTE_REG  0x08 //WZJ 04/05/24
  40. //#define CHANEL_VOL_REG   0x09
  41. #define C1V_REG          0x0B //Channel 1 Volume
  42. #define C2V_REG          0x0C //Channel 2 Volume
  43. #define C3V_REG          0x0D //Channel 3 Volume
  44. #define C4V_REG          0x0E //Channel 4 Volume
  45. #define C5V_REG          0x0F //Channel 5 Volume
  46. #define C6V_REG          0x10 //Channel 6 Volume
  47. #define C7V_REG          0x11 //Channel 7 Volume
  48. #define C8V_REG          0x12 //Channel 8 Volume
  49. //channel controls wzj 04/05/24
  50. #define C1MVT_REG       0x13 //Channel 1 Mute, VolBP, Trim
  51. #define C2MVT_REG       0x14 //Channel 2 Mute, VolBP, Trim
  52. #define C3MVT_REG       0x15 //Channel 3 Mute, VolBP, Trim
  53. #define C4MVT_REG       0x16 //Channel 4 Mute, VolBP, Trim
  54. #define C5MVT_REG       0x17 //Channel 5 Mute, VolBP, Trim
  55. #define C6MVT_REG       0x18 //Channel 6 Mute, VolBP, Trim
  56. #define C7MVT_REG       0x19 //Channel 7 Mute, VolBP, Trim
  57. #define C8MVT_REG       0x1A //Channel 8 Mute, VolBP, Trim
  58. //channel mapping
  59. #define C12MAP_REG       0x1B //Channel 1 & 2 Mapping
  60. #define C34MAP_REG       0x1C //Channel 3 & 4 Mapping
  61. #define C56MAP_REG       0x1D //Channel 5 & 6 Mapping
  62. #define C78MAP_REG       0x1E //Channel 7 & 8 Mapping
  63. //AutoMode Registers WZJ 04/05/24
  64. #define Auto1_REG  0x1F //Auto Mode DM, GC, Volume, EQ
  65. #define Auto2_REG  0x20 //Auto Mode Bass Management
  66. #define Auto3_REG  0x21 //Auto Mode AM
  67. #define PreEQ_REG  0x22 //Preset EQ
  68. //graphic EQ WZJ 04/05/24
  69. #define Ageq_REG  0x23 //Graphic EQ Band A
  70. #define Bgeq_REG  0x24 //Graphic EQ Band B
  71. #define Cgeq_REG  0x25 //Graphic EQ Band C
  72. #define Dgeq_REG  0x26 //Graphic EQ Band D
  73. #define Egeq_REG  0x27 //Graphic EQ Band E
  74. //tone control register
  75. #define TONE_CTRL_REG    0x2B //Channel Tone Control Bypass
  76. #define BT_TONE_CTRL_REG 0x2C //Bass and Treble Tone Control
  77. //channel limiter selection
  78. #define CLIMITER_SEL0    0x2D //Channel 1, 2, 3, 4 Limiter Select
  79. #define CLIMITER_SEL1    0x2E //Channel 5, 6, 7, 8 Limiter Select
  80. //limiter rates and thresholds
  81. #define L1RATE_REG       0x2F //Limiter 1 Attack/Release Rate
  82. #define L1THRESHOLDS_REG 0x30 //Limiter 1 Attack/Release Threshold
  83. #define L2RATE_REG       0x31 //Limiter 2 Attack/Release Rate
  84. #define L2THRESHOLDS_REG 0x32 //Limiter 2 Attack/Release Threshold
  85. //Bass Management(Configuration #1) for 5.1 Channels
  86. #define FL_SCALE_FACTOR     0x16c310
  87. #define FR_SCALE_FACTOR     0x16c310
  88. #define SL_SCALE_FACTOR     0x16c310
  89. #define SR_SCALE_FACTOR     0x16c310
  90. #define CE_SCALE_FACTOR     0x16c310
  91. #define LFE_SCALE_FACTOR    0x47facc
  92. #define HPF_COEF_B2              0x7fa51f
  93. #define HPF_COEF_B0              0x3fd28f
  94. #define HPF_COEF_A2              0x80b581
  95. #define HPF_COEF_A1              0x7fa4ff
  96. #define HPF_COEF_B1              0x805ae1
  97. #define LPF_COEF_B2              0x000020
  98. #define LPF_COEF_B0              0x000010
  99. #define LPF_COEF_A2              0x80b581
  100. #define LPF_COEF_A1              0x7fa4ff
  101. #define LPF_COEF_B1              0x000020
  102. //#define 
  103. #define MV    0
  104. #define FL    1
  105. #define FR    2
  106. #define SL    3
  107. #define SR    4
  108. #define CE    5
  109. #define SW    6
  110. #define Y_07   7
  111. int y_index;
  112. #define AMPBGCOL 10
  113. #ifdef AMP_SUPPORT_EQ  //xyy
  114. BYTE ddx_EQ_sel;
  115. //EQ types define
  116. #define ROCK 0
  117. #define POP 1
  118. #define CLASSIC 2
  119. #define JAZZ 3
  120. #define FLAT 4
  121. #define MAX_EQ_NUM 5 
  122. #endif
  123. #ifdef SUPPORT_REVERBERATION  
  124. BYTE ddx_Revb_sel;
  125. //Reverberation types define
  126. #define OFF 0
  127. #define CONCERT 1
  128. #define LIVING 2
  129. #define HALL 3
  130. #define BATH 4
  131. #define CAVE 5
  132. #define ARENA 6
  133. #define CHURCH 7
  134. #define MAX_REVB_NUM 7 
  135. #endif
  136. #ifdef SUPPORT_BASS_TREBLE
  137. BYTE ddx_Bass_lev;
  138. BYTE ddx_Treble_lev;
  139. #define MAX_BASSCTRL_LEV 15
  140. #define MAX_TREBLECTRL_LEV 15
  141. #endif
  142. void ddx_initialization(void);
  143. void ddx_enableEPAD(void);
  144. void ddx_disableEPAD(void);
  145. void ddx_masterMute(BYTE mute);
  146. BYTE test_ddx8001(void);
  147. void ddx_set_channel_vol(BYTE ch,BYTE vol);
  148. #endif
  149. #endif//#ifdef SUPPORT_APOGEE_AMP